commit 2fe6ca2f652e0c9a1f09f3fd2459145cbf250284 Author: Vasily Petrov Date: Thu Jun 18 01:18:29 2026 +0300 init diff --git a/gamedata/anims/camera_effects/actor_move/crouch_down.anm b/gamedata/anims/camera_effects/actor_move/crouch_down.anm new file mode 100644 index 0000000..cd1f843 Binary files /dev/null and b/gamedata/anims/camera_effects/actor_move/crouch_down.anm differ diff --git a/gamedata/anims/camera_effects/actor_move/crouch_down_aim.anm b/gamedata/anims/camera_effects/actor_move/crouch_down_aim.anm new file mode 100644 index 0000000..1d805be Binary files /dev/null and b/gamedata/anims/camera_effects/actor_move/crouch_down_aim.anm differ diff --git a/gamedata/anims/camera_effects/actor_move/crouch_up.anm b/gamedata/anims/camera_effects/actor_move/crouch_up.anm new file mode 100644 index 0000000..11c75d1 Binary files /dev/null and b/gamedata/anims/camera_effects/actor_move/crouch_up.anm differ diff --git a/gamedata/anims/camera_effects/actor_move/crouch_up_aim.anm b/gamedata/anims/camera_effects/actor_move/crouch_up_aim.anm new file mode 100644 index 0000000..754ece6 Binary files /dev/null and b/gamedata/anims/camera_effects/actor_move/crouch_up_aim.anm differ diff --git a/gamedata/anims/camera_effects/actor_move/down.anm b/gamedata/anims/camera_effects/actor_move/down.anm new file mode 100644 index 0000000..a1d9d86 Binary files /dev/null and b/gamedata/anims/camera_effects/actor_move/down.anm differ diff --git a/gamedata/anims/camera_effects/actor_move/go_back.anm b/gamedata/anims/camera_effects/actor_move/go_back.anm new file mode 100644 index 0000000..b6a8321 Binary files /dev/null and b/gamedata/anims/camera_effects/actor_move/go_back.anm differ diff --git a/gamedata/anims/camera_effects/actor_move/go_front.anm b/gamedata/anims/camera_effects/actor_move/go_front.anm new file mode 100644 index 0000000..9abf914 Binary files /dev/null and b/gamedata/anims/camera_effects/actor_move/go_front.anm differ diff --git a/gamedata/anims/camera_effects/actor_move/jump.anm b/gamedata/anims/camera_effects/actor_move/jump.anm new file mode 100644 index 0000000..d7de13c Binary files /dev/null and b/gamedata/anims/camera_effects/actor_move/jump.anm differ diff --git a/gamedata/anims/camera_effects/actor_move/landing.anm b/gamedata/anims/camera_effects/actor_move/landing.anm new file mode 100644 index 0000000..d92aa66 Binary files /dev/null and b/gamedata/anims/camera_effects/actor_move/landing.anm differ diff --git a/gamedata/anims/camera_effects/actor_move/landing2.anm b/gamedata/anims/camera_effects/actor_move/landing2.anm new file mode 100644 index 0000000..8fe6925 Binary files /dev/null and b/gamedata/anims/camera_effects/actor_move/landing2.anm differ diff --git a/gamedata/anims/camera_effects/actor_move/landingold.anm b/gamedata/anims/camera_effects/actor_move/landingold.anm new file mode 100644 index 0000000..084bb11 Binary files /dev/null and b/gamedata/anims/camera_effects/actor_move/landingold.anm differ diff --git a/gamedata/anims/camera_effects/actor_move/strafe_left.anm b/gamedata/anims/camera_effects/actor_move/strafe_left.anm new file mode 100644 index 0000000..1970279 Binary files /dev/null and b/gamedata/anims/camera_effects/actor_move/strafe_left.anm differ diff --git a/gamedata/anims/camera_effects/actor_move/strafe_left_aim.anm b/gamedata/anims/camera_effects/actor_move/strafe_left_aim.anm new file mode 100644 index 0000000..d2c6def Binary files /dev/null and b/gamedata/anims/camera_effects/actor_move/strafe_left_aim.anm differ diff --git a/gamedata/anims/camera_effects/actor_move/strafe_right.anm b/gamedata/anims/camera_effects/actor_move/strafe_right.anm new file mode 100644 index 0000000..d2014d0 Binary files /dev/null and b/gamedata/anims/camera_effects/actor_move/strafe_right.anm differ diff --git a/gamedata/anims/camera_effects/actor_move/strafe_right_aim.anm b/gamedata/anims/camera_effects/actor_move/strafe_right_aim.anm new file mode 100644 index 0000000..279c719 Binary files /dev/null and b/gamedata/anims/camera_effects/actor_move/strafe_right_aim.anm differ diff --git a/gamedata/configs/engine_external.ltx b/gamedata/configs/engine_external.ltx new file mode 100644 index 0000000..a8f2bf0 --- /dev/null +++ b/gamedata/configs/engine_external.ltx @@ -0,0 +1,95 @@ +[general] +Platform = cop ; Platform mode. Supported values: cop (Call of Pripyat), cs (Clear Sky) +title = st_ixray_title ; Mod name +SaveImageSize = 128, 128 ; Size of saved thumbnail image + +[shaders_options] +USE_LEGACY_LIGHT = 1 ; 1 - legacy pipeline, 0 - PBR pipeline + +; Hozar: Use brga skycolor format +; USE_BGRA_SKYCOLOR = 1; + +; Hozar: Use original GSC format for sky ToneMapping +; USE_LEGACY_SKY_TONEMAP = 1 + +; CGIM2 compatibility +; USE_CGIM_SKY_TWEAK = 1 +; USE_CGIM_WHITE_TWEAK = 1 +; USE_CGIM_COLOR_TWEAK = 1 +; USE_CGIM_BLOOM_TWEAK = 1 + +; Hozar: Use normal on Hemi calc +; USE_NORMAL_HEMI_DISTRIBUTION = 1 + +; Hozar: For PBS pipeline +; IBL_FAKE_IRRADANCE = 1 +; IBL_REMAP_IRRADANCE = 1 +; IBL_REMAP_REFLECTIONS = 1 +; IBL_REMAP_POSITIVE_Y = 1 +; IBL_MAX_LOD = 10 +; USE_FULL_SKY_SPHERE = 1 + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; Engine features + +[ui] +DisableCharacterInfo = false ; Disable character information +DisableInventoryGrid = false ; Uses ui\ui_grid_alt.dds instead of ui\ui_grid.dds +WeaponIconScale = 0.8 ; Scale factor for static_wpn_icon in maingame.xml. For CoP it's 0.8, for CS - 0.65, for SoC - 0.9 +ShowLoadingStages = false ; Loading stages from CS/SoC +DisableMotionIcon = false ; Disable motion icon +PdaRearrangeTabButtons = false ; for CS style buttons, where their size depends on text +UseSavedGameStatic = true ; Use custom static for save games +DisableHudRenderingOnMaster = false ; Disable HUD on Master difficulty. Gunslinger Mod style + +[physics] +DeadBodyRagdoll = false ; Enable ragdoll body +DisableCameraMagicField = true ; Disable camera magic field + +[gameplay] +EnableThirst = false ; Thirst +EnableSleepiness = false ; Sleepiness +EnableAiDieInAnomaly = false ; Ai Die In Anomaly +EnableNPCLookAtActor = true ; NPC Look at actor +EnableAutoreload = false ; Enable automatic weapon reloading +EnableMonstersInventory = true ; Enable monsters inventory +EnableWeaponInertion = true ; Gunslinger Mod Style +EnableWeaponCollision = false ; Shoker Mod Style +EnableActorStepWallmarks = false ; Actor step wallmarks AIW Style +EnableAlternateZoomFovCalc = false ; Don't turn it on unnecessarily! Breaks the original weapon system. +EnableInventoryPistolSlot = false ; 2nd slot for pistols only (like in CS/SoC) +EnableImproveWeaponMisfire = false ; Gunslinger Mod Style +EnableDelayedWeaponActions = false ; Gunslinger Mod Style +EnableLegacyUpgradeSystem = false ; Use upgrade system from Clear Sky + +; Dialogs +DialogFovScale = 0.75 ; Increasing fov during dialogue +TalkDof = 0.0, 0.5, 5.0, 0.0 ; Degree of background blurring in dialogue +; Sprint +EnableBlockSprintInReload = true ; Enable block sprint in reload +DisableSprintWhileOverweight = false ; Disable Sprint while overweight +SprintFovFactor = 3.0 ; FOV magnification power while running + +[render] +DisableLoadScreenTips = false ; Disable load screen tips +UseDynamicSnowMask = false ; Use dynamic snow mask +FontAtlasSize = 4096 ; Texture atlas size value. Must be in the order of two + +[environment] +ReadSunConfig = false ; Enable sun movement in configurations + +[localization] +PreferedFallbackLanguage = eng + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; Extended sections + +[player_hud] +PlayerHudOmfAdditional = dynamics\weapons\hud_hands_animation\*.omf ; Place your omf file pathes + +; Need [gameplay]:EnableActorStepWallmarks +[step_wallmark] +materials = earth, test1 ; Material names +left_mark = l_foot ; left foot wallmark section +right_mark = r_foot ; right foot wallmark section + diff --git a/gamedata/configs/environment/mod_environment_ixray.ltx b/gamedata/configs/environment/mod_environment_ixray.ltx new file mode 100644 index 0000000..558bb33 --- /dev/null +++ b/gamedata/configs/environment/mod_environment_ixray.ltx @@ -0,0 +1,12 @@ +[rain] + max_desired_items = 2500 + source_offset = 40.0 + drop_angle = 3.0 + drop_max_angle = 10.0 + drop_max_wind_vel = 20.0 + max_particles = 1000 + particles_cache = 400 + particles_time = 0.3 + source_rain_radius_render = 12.5 + add_const_dist_coefficient = 30.0 + add_const_dist_coefficient_render = 40.0 diff --git a/gamedata/configs/fonts.ltx b/gamedata/configs/fonts.ltx new file mode 100644 index 0000000..3419ea2 --- /dev/null +++ b/gamedata/configs/fonts.ltx @@ -0,0 +1,107 @@ +;used +[font_default] +shader = hud\font ;font +size = 14 +name = Arial ;Arial is default font by system + +[font_letterica]:font_default +shader = hud\font +name = Letterica + +[font_graffiti]:font_default +shader = hud\font +name = Graffiti1CTT + +[font_condensed]:font_default +shader = hud\font +name = RobotoCondensed +opentype = true + +[font_condensed_18]:font_condensed +size = 18 +letter_spacing = 0.3 + +[font_condensed_20]:font_condensed +size = 20 +letter_spacing = 0.3 + +[font_statistic]:font_default +size = 13 +interval = 0.75,1 + +[sdk_font_statistic]:font_default +size = 10 + +[stat_font]:font_statistic ;TODO deprecated + +[ui_font_console]:font_default +name = consola +opentype = true + +[hud_font_di]:ui_font_console ;TODO deprecated + +[ui_font_console_2]:ui_font_console +shader = hud\font2 + +[hud_font_di2]:ui_font_console_2 ;TODO deprecated + +[ui_font_hud]:font_default +size = 16 + +[hud_font_medium]:ui_font_hud ;TODO deprecated + +[ui_font_letterica16]:font_condensed +size = 18 +letter_spacing = 0.3 + +[ui_font_letterica16_russian]:ui_font_letterica16 ;TODO deprecated + +[letterica16]:ui_font_letterica16 ;TODO deprecated + +[ui_font_letterica18]:font_condensed +size = 20 +letter_spacing = 0.3 + +[ui_font_letterica18_russian]:ui_font_letterica18 ;TODO deprecated + +[ui_font_letterica25]:font_condensed +size = 28 +letter_spacing = 0.5 + + +[ui_font_letter_25]:ui_font_letterica25 ;TODO deprecated + +[ui_font_graffiti19]:font_graffiti +size = 19 + +[graffiti19]:ui_font_graffiti19 ;TODO deprecated + +[ui_font_graffiti19_russian]:ui_font_graffiti19 ;TODO deprecated + +[ui_font_graffiti22]:font_graffiti +size = 22 + +[ui_font_graff_50]:font_graffiti +size = 50 + +[ui_font_graff_32]:font_graffiti +size = 32 + +[ui_font_graff_40]:font_graffiti +size = 40 + +[ui_font_graffiti22_russian]:ui_font_graffiti22 ;TODO deprecated + +[ui_font_graffiti32]:font_graffiti +size = 32 + +[graffiti22]:font_graffiti +size = 22 + +[graffiti50]:font_graffiti +size = 50 + +[ui_font_arial_14]:font_default ;TODO deprecated +opentype = true + +[arial_14]:ui_font_arial_14 ;TODO deprecated diff --git a/gamedata/configs/game_global.ltx b/gamedata/configs/game_global.ltx new file mode 100644 index 0000000..2553f1d --- /dev/null +++ b/gamedata/configs/game_global.ltx @@ -0,0 +1,69 @@ +[actor_item] +bolt_item = bolt +pda_item = device_pda + +[pda_map] +hand_spot_icon_xml_section = treasure; override engine pda hand spot icon xml section + +[night_vision] +night_vision_section = night_vision_base +night_vision_animator = nvs_animator + +[headlamp] +headlamp_animator = nvs_animator + +[glass_mask] +clearmask_animator = clear_gasmask_animator + +[quick_kick] +quick_kick_animator = knife_kick_animator + +[mutant_kicks] +burer_kick_animator = burer_kick_animator_hud +front_kick_animator = boar_front_kick_animator_hud +back_kick_animator = boar_back_kick_animator_hud + +[render] +default_wallmark = explosion_marks + +[sound_events] +screenshot = device\torch_click + +[callbacks] +; IX-Ray +OnSkipKillActor = xr_effects.enable_ui + +; IX-Ray Clear Sky +;OnStartAttack = sim_combat.start_attack + +; Call of Chernobyl +;OnCanTake = _G.CInventoryBox_CanTake +;OnInvBoxCanTakeItem = _G.CInventoryBox_OnInvBoxCanTakeItem +;OnInvBoxCanPlaceItem = _G.CInventoryBox_OnInvBoxCanPlaceItem +;OnBeforeHit = _G.CActor__BeforeHitCallback +;OnUnregister = _G.CSE_ALifeDynamicObject_on_unregister +;OnInventoryEat = _G.CInventory__eat +;OnBeforeChangeLevel = _G.CALifeUpdateManager__on_before_change_level +;OnItemDropped = actor_menu_inventory.CUIActorMenu_OnItemDropped +;OnItemFocusReceive = actor_menu_inventory.CUIActorMenu_OnItemFocusReceive +;OnItemFocusLost = actor_menu_inventory.CUIActorMenu_OnItemFocusLost +;OnCanMoveToPartner = actor_menu_inventory.CUIActorMenu_CanMoveToPartner +;OnItemAvailableToTrade = actor_menu_inventory.CInventory_ItemAvailableToTrade +;OnPropertyBoxClicked = pda.property_box_clicked +;OnPropertyBoxAddProperties = pda.property_box_add_properties +;OnSetActiveSubdialog = pda.set_active_subdialog +;OnGetRankingsArraySize = pda.get_rankings_array_size +;OnKeyPress = level_input.on_key_press +;OnGetVisibleValue = visual_memory_manager.get_visible_value +;OnUpdateBestWeapon = ai_stalker.update_best_weapon + +; Improved Weapon Pack +;OnZoneTouch = _G.CZone_Touch + +; GUNSLINGER Mod +;OnCanDisassembleItem = inventory_upgrades.gunsl_can_disassemble_item +;OnQuestionDisassembleItem = inventory_upgrades.gunsl_question_disassemble_item +;OnEffectDisassemble = inventory_upgrades.gunsl_effect_disassemble + +; 2055 +; OnSaveStatus = mod_saves.GetStatus diff --git a/gamedata/configs/ixray_settings/default_controls.ltx b/gamedata/configs/ixray_settings/default_controls.ltx new file mode 100644 index 0000000..149a37d --- /dev/null +++ b/gamedata/configs/ixray_settings/default_controls.ltx @@ -0,0 +1,64 @@ +bind accel kLSHIFT +bind active_jobs kP +bind artefact k7 +bind back kS +bind buy_menu kB +bind cam_zoom_in kADD +bind cam_zoom_out kSUBTRACT +bind chat kCOMMA +bind chat_team kPERIOD +bind console kGRAVE +bind crouch kLCONTROL +bind down kDOWN +bind drop kG +bind forward kW +bind inventory kI +bind jump kSPACE +bind left kLEFT +bind llookout kQ +bind lstrafe kA +bind pause kPAUSE +bind quick_use_1 kF1 +bind quick_use_2 kF2 +bind quick_use_3 kF3 +bind quick_use_4 kF4 +bind quit kESCAPE +bind right kRIGHT +bind rlookout kE +bind rstrafe kD +bind scores kTAB +bind screenshot kF12 +bind skin_menu kO +bind speech_menu_0 kC +bind speech_menu_1 kZ +bind sprint_toggle kX +bind quick_save kF5 +bind quick_load kF9 +bind team_menu kU +bind torch kL +bind show_detector kO +bind up kUP +bind use kF +bind vote kF6 +bind vote_begin kF5 +bind vote_no kF8 +bind vote_yes kF7 +bind wpn_1 k1 +bind wpn_2 k2 +bind wpn_3 k3 +bind wpn_4 k4 +bind wpn_5 k5 +bind wpn_6 k6 +bind wpn_fire mouse1 +bind wpn_firemode_next k0 +bind wpn_firemode_prev k9 +bind wpn_func kV +bind wpn_next kY +bind wpn_reload kR +bind wpn_zoom mouse2 +bind night_vision kN +slot_0 medkit +slot_1 bandage +slot_2 antirad +slot_3 conserva +bind cam_2 kF10 \ No newline at end of file diff --git a/gamedata/configs/ixray_settings/default_settings.ltx b/gamedata/configs/ixray_settings/default_settings.ltx new file mode 100644 index 0000000..e69de29 diff --git a/gamedata/configs/ixray_settings/rspec_default.ltx b/gamedata/configs/ixray_settings/rspec_default.ltx new file mode 100644 index 0000000..5a97e7e --- /dev/null +++ b/gamedata/configs/ixray_settings/rspec_default.ltx @@ -0,0 +1,36 @@ +ph_iterations 18 +r1_dlights_clip 30 +r1_glows_per_frame 16 +r2_detail_bump on +r2_dof_enable on +enable_dof_reload 1 +enable_dof_talk 1 +r2_ls_squality 1 +r2_slight_fade 0.5 +r2_soft_particles on +r2_soft_water on +r2_ssao_mode ui_mm_ssao +r2_steep_parallax on +r2_sun_quality st_opt_medium +r2_sun_shafts st_opt_low +r2_volumetric_lights on +r3_dynamic_wet_surfaces on +r3_volumetric_smoke off +r__detail_density 0.4 +r__geometry_lod 0.5 +r2_smap_size 2048 +r__tf_aniso 4 +r__wallmark_ttl 120 +rs_skeleton_update 32 +rs_vis_distance 1 +texture_lod 1 +r_actor_shadow off +r2_sun on +r2_sun_details off +r2_lights_details off +r4_hud_shadows off +r4_hashed_alpha_test off +r4_sslr_water off +r2_cloud_shadows off +r4_enable_tessellation off +r2_aref_quality 110 diff --git a/gamedata/configs/ixray_settings/rspec_extreme.ltx b/gamedata/configs/ixray_settings/rspec_extreme.ltx new file mode 100644 index 0000000..668abef --- /dev/null +++ b/gamedata/configs/ixray_settings/rspec_extreme.ltx @@ -0,0 +1,36 @@ +ph_iterations 18 +r1_dlights_clip 50 +r1_glows_per_frame 16 +r2_detail_bump on +r2_dof_enable on +enable_dof_reload 1 +enable_dof_talk 1 +r2_ls_squality 1 +r2_slight_fade 0.5 +r2_soft_particles on +r2_soft_water on +r2_ssao_mode ui_mm_ssao +r2_steep_parallax on +r2_sun_quality st_opt_high +r2_sun_shafts st_opt_high +r2_volumetric_lights on +r3_dynamic_wet_surfaces on +r3_volumetric_smoke on +r__detail_density 0.2 +r__geometry_lod 1 +r2_smap_size 2048 +r__tf_aniso 16 +r__wallmark_ttl 300 +rs_skeleton_update 32 +rs_vis_distance 1 +texture_lod 0 +r_actor_shadow off +r2_sun on +r2_sun_details off +r2_lights_details off +r4_hud_shadows off +r4_hashed_alpha_test off +r4_sslr_water off +r2_cloud_shadows off +r4_enable_tessellation on +r2_aref_quality 100 diff --git a/gamedata/configs/ixray_settings/rspec_high.ltx b/gamedata/configs/ixray_settings/rspec_high.ltx new file mode 100644 index 0000000..95e9fb8 --- /dev/null +++ b/gamedata/configs/ixray_settings/rspec_high.ltx @@ -0,0 +1,36 @@ +ph_iterations 18 +r1_dlights_clip 40 +r1_glows_per_frame 16 +r2_detail_bump on +r2_dof_enable on +enable_dof_reload 1 +enable_dof_talk 1 +r2_ls_squality 1 +r2_slight_fade 0.5 +r2_soft_particles on +r2_soft_water on +r2_ssao_mode ui_mm_ssao +r2_steep_parallax on +r2_sun_quality st_opt_medium +r2_sun_shafts st_opt_medium +r2_volumetric_lights on +r3_dynamic_wet_surfaces on +r3_volumetric_smoke on +r__detail_density 0.3 +r__geometry_lod 0.75 +r2_smap_size 2048 +r__tf_aniso 8 +r__wallmark_ttl 180 +rs_skeleton_update 32 +rs_vis_distance 1 +texture_lod 0 +r_actor_shadow off +r2_sun on +r2_sun_details off +r2_lights_details off +r4_hud_shadows off +r4_hashed_alpha_test off +r4_sslr_water off +r2_cloud_shadows off +r4_enable_tessellation off +r2_aref_quality 110 diff --git a/gamedata/configs/ixray_settings/rspec_low.ltx b/gamedata/configs/ixray_settings/rspec_low.ltx new file mode 100644 index 0000000..92a136d --- /dev/null +++ b/gamedata/configs/ixray_settings/rspec_low.ltx @@ -0,0 +1,36 @@ +ph_iterations 18 +r1_dlights_clip 30 +r1_glows_per_frame 16 +r2_detail_bump off +r2_dof_enable off +enable_dof_reload 0 +enable_dof_talk 0 +r2_ls_squality 0.75 +r2_slight_fade 0.5 +r2_soft_particles off +r2_soft_water off +r2_ssao_mode st_opt_off +r2_steep_parallax off +r2_sun_quality st_opt_low +r2_sun_shafts st_opt_off +r2_volumetric_lights off +r3_dynamic_wet_surfaces off +r3_volumetric_smoke off +r__detail_density 0.5 +r__geometry_lod 0.5 +r2_smap_size 1024 +r__tf_aniso 1 +r__wallmark_ttl 90 +rs_skeleton_update 32 +rs_vis_distance 0.75 +texture_lod 2 +r_actor_shadow off +r2_sun off +r2_sun_details off +r2_lights_details off +r4_hud_shadows off +r4_hashed_alpha_test off +r4_sslr_water off +r2_cloud_shadows off +r4_enable_tessellation off +r2_aref_quality 160 diff --git a/gamedata/configs/ixray_settings/rspec_minimum.ltx b/gamedata/configs/ixray_settings/rspec_minimum.ltx new file mode 100644 index 0000000..53e1071 --- /dev/null +++ b/gamedata/configs/ixray_settings/rspec_minimum.ltx @@ -0,0 +1,36 @@ +ph_iterations 18 +r1_dlights_clip 20 +r1_glows_per_frame 16 +r2_detail_bump off +r2_dof_enable off +enable_dof_reload 0 +enable_dof_talk 0 +r2_ls_squality 0.5 +r2_slight_fade 0.5 +r2_soft_particles off +r2_soft_water off +r2_ssao_mode st_opt_off +r2_steep_parallax off +r2_sun_quality st_opt_low +r2_sun_shafts st_opt_off +r2_volumetric_lights off +r3_dynamic_wet_surfaces off +r3_volumetric_smoke off +r__detail_density 0.7 +r__geometry_lod 0.5 +r2_smap_size 1024 +r__tf_aniso 1 +r__wallmark_ttl 60 +rs_skeleton_update 32 +rs_vis_distance 0.5 +texture_lod 3 +r_actor_shadow off +r2_sun off +r2_sun_details off +r2_lights_details off +r4_hud_shadows off +r4_hashed_alpha_test off +r4_sslr_water off +r2_cloud_shadows off +r4_enable_tessellation off +r2_aref_quality 180 diff --git a/gamedata/configs/ixray_settings/rspec_ultra.ltx b/gamedata/configs/ixray_settings/rspec_ultra.ltx new file mode 100644 index 0000000..e434827 --- /dev/null +++ b/gamedata/configs/ixray_settings/rspec_ultra.ltx @@ -0,0 +1,36 @@ +ph_iterations 18 +r1_dlights_clip 50 +r1_glows_per_frame 16 +r2_detail_bump on +r2_dof_enable on +enable_dof_reload 1 +enable_dof_talk 1 +r2_ls_squality 1 +r2_slight_fade 0.5 +r2_soft_particles on +r2_soft_water on +r2_ssao_mode ui_mm_gtao +r2_steep_parallax on +r2_sun_quality st_opt_extreme +r2_sun_shafts st_opt_high +r2_volumetric_lights on +r3_dynamic_wet_surfaces on +r3_volumetric_smoke on +r__detail_density 0.2 +r__geometry_lod 1.2 +r2_smap_size 2048 +r__tf_aniso 16 +r__wallmark_ttl 300 +rs_skeleton_update 32 +rs_vis_distance 1 +texture_lod 0 +r_actor_shadow on +r2_sun on +r2_sun_details on +r2_lights_details on +r4_hud_shadows on +r4_hashed_alpha_test on +r4_sslr_water on +r2_cloud_shadows on +r4_enable_tessellation on +r2_aref_quality 100 diff --git a/gamedata/configs/localization.ltx b/gamedata/configs/localization.ltx new file mode 100644 index 0000000..963d807 --- /dev/null +++ b/gamedata/configs/localization.ltx @@ -0,0 +1,4 @@ +[string_table] +language = rus +languages = rus,eng +font_prefix = ;_west ;_cent diff --git a/gamedata/configs/mod_script_ixray.ltx b/gamedata/configs/mod_script_ixray.ltx new file mode 100644 index 0000000..d4fa278 --- /dev/null +++ b/gamedata/configs/mod_script_ixray.ltx @@ -0,0 +1,3 @@ +![common] + >script = ixray_global + >class_registrators = ixray_global.register diff --git a/gamedata/configs/mod_system_ixray.ltx b/gamedata/configs/mod_system_ixray.ltx new file mode 100644 index 0000000..0ee2b02 --- /dev/null +++ b/gamedata/configs/mod_system_ixray.ltx @@ -0,0 +1,349 @@ +; This is due to the fact that GSC has prescribed the sound of a gun being pulled out +; w_knife.ltx +![wpn_knife] +snd_draw = weapons\draw_silent + +![inventory] +slot_persistent_4 = false ;grenades + +slot_persistent_13 = false ;backpack +slot_active_13 = false + +![actor_look_cam_psp] +!offset +!autoaim_speed_y +!autoaim_speed_x + +offset_right = -0.4,0.2,0.0 +offset_left = 0.314,0.2,0.0 +use_inertion = true + +;actor.ltx +![actor] +player_hud_default = actor_hud_05 + +;m_burer.ltx +![m_burer_e] +icon = ui_npc_monster_burer + +;items.ltx +![bread] +use_text = st_eat + +![kolbasa] +use_text = st_eat + +![conserva] +use_text = st_eat + +![vodka] +use_text = st_drink + +![device_torch] +sound_activate = device\torch_click +sound_deactivate = device\torch_click_off + +;device.ltx +;![detector_simple_hud] +;anm_bore = dev_detector_1_idle_bore +;anm_bore_16x9 = dev_detector_1_idle_bore_ws, dev_detector_1_idle_bore +; +;![detector_advanced_hud] +;anm_bore = dev_detector_2_idle_bore +;anm_bore_16x9 = dev_detector_2_idle_bore_ws, dev_detector_1_idle_bore +; +;![detector_elite_hud] +;anm_bore = dev_detector_3_idle_bore +;anm_bore_16x9 = dev_detector_3_idle_bore_ws, dev_detector_1_idle_bore +; +;![detector_scientific_hud] +;anm_bore = dev_detector_3_idle_bore +;anm_bore_16x9 = dev_detector_3_idle_bore_ws, dev_detector_1_idle_bore + +;w_f1.ltx +![grenade_f1] +detonation_threshold_hit= 0.3 +explosion_on_hit = true +explosion_hit_types = 6, 8 +explosive_while_not_activated = true + +;w_rgd5.ltx +![grenade_rgd5] +detonation_threshold_hit = 0.3 +explosion_on_hit = true +explosion_hit_types = 6, 8 +explosive_while_not_activated = true + +;helicopter.ltx +![helicopter] +ssa_dyn_factor = 0.001 +ssa_d_cam = 300.0 + +;prefetch_mp.ltx +; FreeMP mode +[prefetch_objects_fmp]:prefetch_objects_mp +[prefetch_visuals_fmp]:prefetch_visuals_mp + +[prefetch_objects_freemp]:prefetch_objects_mp +[prefetch_visuals_freemp]:prefetch_visuals_mp + +[night_vision_base] +snd_night_vision_on = weapons\nv_start +snd_night_vision_off = weapons\nv_off +snd_night_vision_idle = weapons\nv_loop +snd_night_vision_broken = weapons\nv_off + +night_vision_disabled_maps = ai_test,ai_test2, andy_test_ + +;creatures/monsters.ltx +![monsters_common] +corpse_remove_game_time_interval = 24 ; in hours +stay_after_death_time_interval = 36 ; in hours + +;defines.ltx +![hud_base] ; Gunslinger Style +;наклоны оружия при ходьбе +hud_move_speed_rot = 3 ;скорость доворота до заданного угла +hud_move_speed_pos = 2 ;скорость перемещения до заданной позиции +hud_move_stabilize_factor = 3.5 ;во сколько раз быстрее возвращаемся в нейтральное положение при идле +hud_move_weaponhide_factor = 3.5 ;во сколько раз быстрее возвращаемся в нейтральное положение при убирании оружия +hud_move_unzoom_factor = 2.0 +hud_move_slow_factor = 0.5 ;во сколько раз менять амплитуду при шаге +hud_move_crouch_factor = 0.5 ;во сколько раз менять амплитуду при присяде +hud_move_slow_crouch_factor = 0.3 ;во сколько раз менять амплитуду при полном присяде + +;задаются максимальные отклонения от центрального в разных режимах ходьбы +;Аддитивно! + +;стрейф влево +hud_move_left_offset_pos = -0.03,-0.018,0 +hud_move_left_offset_rot = 0,0,-3.5 + +hud_move_left_offset_pos_16x9 = -0.03,-0.018,0 +hud_move_left_offset_rot_16x9 = 0,0,-3.5 + +;стрейф вправо +hud_move_right_offset_pos = 0.03,-0.005,0 +hud_move_right_offset_rot = 0,0,5 + +hud_move_right_offset_pos_16x9 = 0.03,-0.005,0 +hud_move_right_offset_rot_16x9 = 0,0,5 + +;движение вперед +hud_move_forward_offset_pos = 0,-0.005,-0.035 +hud_move_forward_offset_rot = 0,0,0 + +hud_move_forward_offset_pos_16x9 = 0,-0.005,-0.035 +hud_move_forward_offset_rot_16x9 = 0,0,0 + +;движение назад +hud_move_back_offset_pos = 0,-0.005,0.045 +hud_move_back_offset_rot = 0,0,0 + +hud_move_back_offset_pos_16x9 = 0,-0.005,0.045 +hud_move_back_offset_rot_16x9 = 0,0,0 + +;прыжок +hud_move_jump_offset_pos = 0,0.05,0.03 +hud_move_jump_offset_rot = 0,-10,-10 + +hud_move_jump_offset_pos_16x9 = 0,0.05,0.03 +hud_move_jump_offset_rot_16x9 = 0,-10,-10 + +;падение +hud_move_fall_offset_pos = 0,-0.05,0.06 +hud_move_fall_offset_rot = 0,5,0 + +hud_move_fall_offset_pos_16x9 = 0,-0.05,0.06 +hud_move_fall_offset_rot_16x9 = 0,5,0 + +;приземление - первая фаза +hud_move_landing_offset_pos = 0,-0.2,0.03 +hud_move_landing_offset_rot = 0,-5,10 + +hud_move_landing_offset_pos_16x9 = 0,-0.2,0.03 +hud_move_landing_offset_rot_16x9 = 0,-5,10 + +;приземление - вторая фаза +hud_move_landing2_offset_pos = 0,-0.3,0.03 +hud_move_landing2_offset_rot = 0,-13,20 + +hud_move_landing2_offset_pos_16x9 = 0,-0.3,0.03 +hud_move_landing2_offset_rot_16x9 = 0,-13,20 + +;переход из стойки в присяд +to_crouch_time = 0.15 +hud_move_to_crouch_offset_pos = 0,-0.02, 0 +hud_move_to_crouch_offset_rot = 0,1.5,-4 + +hud_move_to_crouch_offset_pos_16x9 = 0,-0.02, 0 +hud_move_to_crouch_offset_rot_16x9 = 0,1.5,-4 + +;переход из присяда в стойку +from_crouch_time = 0.15 +hud_move_from_crouch_offset_pos = 0,-0.008,0 +hud_move_from_crouch_offset_rot = 0,-0.8,3 + +hud_move_from_crouch_offset_pos_16x9 = 0,-0.008,0 +hud_move_from_crouch_offset_rot_16x9 = 0,-0.8,3 + +;переход из присяда в низкий присяд +to_slow_crouch_time = 0.15 +hud_move_to_slow_crouch_offset_pos = 0,-0.05, 0 +hud_move_to_slow_crouch_offset_rot = 0,1,-2 + +hud_move_to_slow_crouch_offset_pos_16x9 = 0,-0.05, 0 +hud_move_to_slow_crouch_offset_rot_16x9 = 0,1,-2 + +;переход из низкого присяда в присяд +from_slow_crouch_time = 0.15 +hud_move_from_slow_crouch_offset_pos = 0,0.02,0 +hud_move_from_slow_crouch_offset_rot = 0,-1,2 + +hud_move_from_slow_crouch_offset_pos_16x9 = 0,0.02,0 +hud_move_from_slow_crouch_offset_rot_16x9 = 0,-1,2 + +;переход из обычного в наклон влево +to_llookout_time = 0.15 +hud_move_to_llookout_offset_pos = -0.01, 0, 0 +hud_move_to_llookout_offset_rot = 0,0,0 +hud_move_to_llookout_offset_pos_16x9 = -0.01, 0, 0 +hud_move_to_llookout_offset_rot_16x9 = 0,0,0 + +;переход из наклона влево в обычный +from_llookout_time = 0.15 +hud_move_from_llookout_offset_pos = -0.01, 0, 0 +hud_move_from_llookout_offset_rot = 0,0,0 +hud_move_from_llookout_offset_pos_16x9 = -0.01, 0, 0 +hud_move_from_llookout_offset_rot_16x9 = 0,0,0 + + +;переход из обычного в наклон вправо +to_rlookout_time = 0.15 +hud_move_to_rlookout_offset_pos = 0.01, 0, 0 +hud_move_to_rlookout_offset_rot = 0,0,0 +hud_move_to_rlookout_offset_pos_16x9 = 0.01, 0, 0 +hud_move_to_rlookout_offset_rot_16x9 = 0,0,0 + +;переход из наклона вправо в обычный +from_rlookout_time = 0.15 +hud_move_from_rlookout_offset_pos = 0.01, 0, 0 +hud_move_from_rlookout_offset_rot = 0,0,0 +hud_move_from_rlookout_offset_pos_16x9 = 0.01, 0, 0 +hud_move_from_rlookout_offset_rot_16x9 = 0,0,0 + +;наклон влево (постоянная компонента) +hud_move_llookout_offset_speed_factor = 2.8 +hud_move_llookout_offset_pos = -0.045, -0.03, 0 +hud_move_llookout_offset_pos_16x9 = -0.045, -0.03, 0 +hud_move_llookout_offset_rot = 0, 0, -9 +hud_move_llookout_offset_rot_16x9 = 0, 0, -9 + +;наклон вправо (постоянная компонента) +hud_move_rlookout_offset_speed_factor = 2.8 +hud_move_rlookout_offset_pos = 0.04, -0.01, 0 +hud_move_rlookout_offset_pos_16x9 = 0.04, -0.01, 0 +hud_move_rlookout_offset_rot = 0, 0, 10 +hud_move_rlookout_offset_rot_16x9 = 0, 0, 10 + + +;аналогично для прицеливания +;переход из стойки в присяд +hud_aim_move_to_crouch_offset_pos = 0,0.003, 0 +hud_aim_move_to_crouch_offset_rot = 0,0.3,-0.5 + +hud_aim_move_to_crouch_offset_pos_16x9 = 0,0.003, 0 +hud_aim_move_to_crouch_offset_rot_16x9 = 0,0.3,-0.5 + +;переход из присяда в стойку +hud_aim_move_from_crouch_offset_pos = 0,-0.003,0 +hud_aim_move_from_crouch_offset_rot = 0,-0.3,0.5 + +hud_aim_move_from_crouch_offset_pos_16x9 = 0,-0.003,0 +hud_aim_move_from_crouch_offset_rot_16x9 = 0,-0.3,0.5 + +;переход из присяда в низкий присяд +hud_aim_move_to_slow_crouch_offset_pos = 0,0.001, 0 +hud_aim_move_to_slow_crouch_offset_rot = 0,0.3,-0.5 + +hud_aim_move_to_slow_crouch_offset_pos_16x9 = 0,0.002, 0 +hud_aim_move_to_slow_crouch_offset_rot_16x9 = 0,0.3,-0.5 + +;переход из низкого присяда в присяд +hud_aim_move_from_slow_crouch_offset_pos = 0,-0.001,0 +hud_aim_move_from_slow_crouch_offset_rot = 0,-0.3,0.5 + +hud_aim_move_from_slow_crouch_offset_pos_16x9 = 0,-0.001,0 +hud_aim_move_from_slow_crouch_offset_rot_16x9 = 0,-0.3,0.5 + +;переход из обычного в наклон влево +hud_aim_move_to_llookout_offset_pos = -0.003, 0, 0 +hud_aim_move_to_llookout_offset_rot = 0,0,-0.6 +hud_aim_move_to_llookout_offset_pos_16x9 = -0.003, 0, 0 +hud_aim_move_to_llookout_offset_rot_16x9 = 0,0,-0.6 + +;переход из наклона влево в обычный +hud_aim_move_from_llookout_offset_pos = 0, 0, 0 +hud_aim_move_from_llookout_offset_rot = 0,0,-1 +hud_aim_move_from_llookout_offset_pos_16x9 = 0, 0, 0 +hud_aim_move_from_llookout_offset_rot_16x9 = 0,0,-1 + + +;переход из обычного в наклон вправо +hud_aim_move_to_rlookout_offset_pos = 0.003, 0, 0 +hud_aim_move_to_rlookout_offset_rot = 0,0,0.6 +hud_aim_move_to_rlookout_offset_pos_16x9 = 0.003, 0, 0 +hud_aim_move_to_rlookout_offset_rot_16x9 = 0,0,0.6 + +;переход из наклона вправо в обычный +hud_aim_move_from_rlookout_offset_pos = 0, 0, 0 +hud_aim_move_from_rlookout_offset_rot = 0,0,1 +hud_aim_move_from_rlookout_offset_pos_16x9 = 0, 0, 0 +hud_aim_move_from_rlookout_offset_rot_16x9 = 0,0,1 + +hud_collision_enabled = true +hud_collision_offset_pos = 0,-0.5,0 +hud_collision_offset_pos_16x9 = 0,-0.5,0 +hud_collision_offset_rot = -0.8,0,0 +hud_collision_offset_rot_16x9 = -0.8,0,0 + +;effectors.ltx +![bobbing_effector] ; Gunslinger Style + +;спринт +sprint_amplitude = 0.014 +sprint_speed = 10.0 + +;бег +run_amplitude = 0.0075 +run_speed = 10.0 +zoom_run_amplitude = 0.005 +zoom_run_speed = 7.0 + +;замедление/прицеливание +walk_amplitude = 0.005 +walk_speed = 7.0 +zoom_walk_amplitude = 0.005 +zoom_walk_speed = 7.0 + +;присяд +crouch_amplitude = 0.0056 +crouch_speed = 7.5 +zoom_crouch_amplitude = 0.0056 +zoom_crouch_speed = 7.5 + +;присяд+замедление +slow_crouch_amplitude = 0.0042 +slow_crouch_speed = 5.625 +zoom_slow_crouch_amplitude = 0.0042 +zoom_slow_crouch_speed = 5.625 + +;тяжелое дыхание +limp_amplitude = 0.011 +limp_speed = 6.0 +zoom_limp_amplitude = 0.007 +zoom_limp_speed = 6.0 + + +;Скорость изменения амплитуды раскачки при смене режима перемещения +amplitude_delta = 0.01 \ No newline at end of file diff --git a/gamedata/configs/mp/artefacthunt_game.ltx b/gamedata/configs/mp/artefacthunt_game.ltx new file mode 100644 index 0000000..d31493b --- /dev/null +++ b/gamedata/configs/mp/artefacthunt_game.ltx @@ -0,0 +1,154 @@ +[artefacthunt_gamedata] +artefact = mp_af_electra_flash + +artefact_spawn_effect = anomaly2\electra2_blast +artefact_disappear_effect = anomaly2\gravity_blast_01 + +teambase_particle_0 = static\net_base_red +teambase_particle_1 = static\net_base_green +teambase_particle_2 = static\net_base_blue + +spawn_cost = -1500;-2500;-10000 + +[artefacthunt_base_cost]:deathmatch_base_cost + +[artefacthunt_team1] +team_idx = 0 + +pistols = mp_wpn_pm, mp_wpn_fort, mp_wpn_walther, mp_wpn_beretta, mp_wpn_sig220, mp_wpn_usp, mp_wpn_desert_eagle + +shotgun = mp_wpn_bm16, mp_wpn_toz34, mp_wpn_wincheaster1300, mp_wpn_spas12, mp_wpn_protecta +assault = mp_wpn_ak74u, mp_wpn_ak74, mp_wpn_abakan, mp_wpn_groza, mp_wpn_val, mp_wpn_pkm, mp_wpn_fn2000; +sniper_rifles = mp_wpn_vintorez, mp_wpn_svd, mp_wpn_gauss +heavy_weapons = mp_wpn_rpg7, mp_wpn_rg-6 + +granades = mp_grenade_rgd5,mp_grenade_f1, mp_grenade_gd-05, mp_ammo_vog-25, mp_ammo_m209, mp_ammo_og-7b, mp_ammo_9x18_fmj,mp_ammo_9x18_pmm, mp_ammo_9x19_fmj,mp_ammo_9x19_pbp, mp_ammo_9x19_fmj_4mp5, mp_ammo_9x19_pbp_4mp5, mp_ammo_5.45x39_fmj,mp_ammo_5.45x39_ap,mp_ammo_5.56x45_ss190,mp_ammo_5.56x45_ap,mp_ammo_7.62x54_7h1,mp_ammo_9x39_pab9,mp_ammo_9x39_ap,mp_ammo_11.43x23_fmj,mp_ammo_11.43x23_hydro,mp_ammo_12x70_buck,mp_ammo_12x76_zhekan,mp_ammo_gauss,mp_ammo_pkm_100; +outfits = mp_scientific_outfit, mp_military_stalker_outfit, mp_exo_outfit +equipment = mp_medkit, mp_energy_drink, mp_device_torch, mp_bandage, mp_antirad, mp_drug_coagulant, mp_drug_radioprotector, mp_wpn_addon_silencer, mp_wpn_addon_scope, mp_wpn_addon_scope_susat, mp_wpn_addon_silencer, mp_wpn_addon_grenade_launcher, mp_wpn_addon_grenade_launcher_m203; + +skins = mp_team_green_1, mp_team_green_2, mp_team_green_3, mp_team_green_4, mp_team_green_addon_fr, mp_team_green_addon_uk + + +default_items = mp_wpn_knife, mp_wpn_pm, mp_device_torch + +;// +mp_exo_outfit = mp_team_green_armor_exo +mp_scientific_outfit = mp_team_green_armor_sci +mp_military_stalker_outfit = mp_team_green_armor_military + +;//money amounts +money_start = 180 +money_min = 0 + +kill_rival = 300;400 +kill_self = -100 +kill_team = -250 + +target_rival = 750 +target_team = -500 +target_succeed = 1000;850;750;1000 +target_succeed_all = 750;500; +target_failed = 300;250;100; + +round_win = 200 +round_loose = 100 +round_draw = 0 + +round_loose_minor = 100 +round_win_minor = 150 +clear_run_bonus = 350;200;150 + +kill_while_invincible = 0.5 + +mp_wpn_pb_cost = 0 + +;//---- indicator data -------- +indicator_r1 = 0.2 +indicator_r2 = 0.2 + +indicator_x = 0.0 +indicator_y = 0.4 +indicator_z = 0.0 + +indicator_shader = friendly_indicator +indicator_texture = ui\ui_greenteam + +invincible_shader = friendly_indicator +invincible_texture = ui\ui_skull + +[artefacthunt_team2] +team_idx = 1 + +pistols = mp_wpn_pb, mp_wpn_hpsa, mp_wpn_colt1911, mp_wpn_beretta, mp_wpn_sig220, mp_wpn_usp, mp_wpn_desert_eagle + +shotgun = mp_wpn_bm16, mp_wpn_toz34, mp_wpn_wincheaster1300, mp_wpn_spas12, mp_wpn_protecta +assault = mp_wpn_mp5, mp_wpn_l85, mp_wpn_lr300, mp_wpn_sig550, mp_wpn_g36, mp_wpn_pkm, mp_wpn_fn2000; +sniper_rifles = mp_wpn_vintorez, mp_wpn_svu, mp_wpn_gauss +heavy_weapons = mp_wpn_rpg7, mp_wpn_rg-6 + +granades = mp_grenade_rgd5,mp_grenade_f1, mp_grenade_gd-05, mp_ammo_vog-25, mp_ammo_m209, mp_ammo_og-7b, mp_ammo_9x18_fmj,mp_ammo_9x18_pmm, mp_ammo_9x19_fmj,mp_ammo_9x19_pbp, mp_ammo_9x19_fmj_4mp5, mp_ammo_9x19_pbp_4mp5, mp_ammo_5.45x39_fmj,mp_ammo_5.45x39_ap,mp_ammo_5.56x45_ss190,mp_ammo_5.56x45_ap,mp_ammo_7.62x54_7h1,mp_ammo_9x39_pab9,mp_ammo_9x39_ap,mp_ammo_11.43x23_fmj,mp_ammo_11.43x23_hydro,mp_ammo_12x70_buck,mp_ammo_12x76_zhekan,mp_ammo_gauss, mp_ammo_pkm_100; +outfits = mp_scientific_outfit, mp_military_stalker_outfit, mp_exo_outfit +equipment = mp_medkit, mp_energy_drink, mp_device_torch, mp_bandage, mp_antirad, mp_drug_coagulant, mp_drug_radioprotector, mp_wpn_addon_silencer, mp_wpn_addon_scope, mp_wpn_addon_scope_susat, mp_wpn_addon_silencer, mp_wpn_addon_grenade_launcher, mp_wpn_addon_grenade_launcher_m203; + +skins = mp_team_blue_1, mp_team_blue_2, mp_team_blue_3, mp_team_blue_4, mp_team_blue_addon_de, mp_team_blue_addon_us + +default_items = mp_wpn_knife, mp_wpn_pb, mp_device_torch + +;// +mp_exo_outfit = mp_team_blue_armor_exo +mp_military_stalker_outfit = mp_team_blue_armor_military +mp_scientific_outfit = mp_team_blue_armor_sci + +;//money amounts +money_start = 180 +money_min = 0 + +kill_rival = 300;400 +kill_self = -100 +kill_team = -250 + +target_rival = 750 +target_team = -500 +target_succeed = 1000;850;750;1000 +target_succeed_all = 750;500; +target_failed = 300;250;100; + +round_win = 200 +round_loose = 100 +round_draw = 0 + +round_loose_minor = 100 +round_win_minor = 150 +clear_run_bonus = 350;200;150 + +kill_while_invincible = 0.5 + +mp_wpn_pm_cost = 0 + +;//---- indicator data -------- +indicator_r1 = 0.2 +indicator_r2 = 0.2 + +indicator_x = 0.0 +indicator_y = 0.5 +indicator_z = 0.0 + +indicator_shader = friendly_indicator +indicator_texture = ui\ui_blueteam + +invincible_shader = friendly_indicator +invincible_texture = ui\ui_skull + +;------------------------------------------------------------------------------- +[ahunt_messages_menu]:tdm_messages_menu +menu_0 = ahunt_menu_0 +menu_1 = ahunt_menu_1 + +[ahunt_menu_0]:tdm_menu_0 +phrase_5 = speech_guardartifact, keep_ +phrase_6 = speech_takeartifact, take_ + +[ahunt_menu_1]:tdm_menu_1 +phrase_8 = speech_icoverartifact, cover_ +phrase_9 = speech_covermeartifact, artefact_ + diff --git a/gamedata/configs/mp/capturetheartefact_game.ltx b/gamedata/configs/mp/capturetheartefact_game.ltx new file mode 100644 index 0000000..8f72359 --- /dev/null +++ b/gamedata/configs/mp/capturetheartefact_game.ltx @@ -0,0 +1,153 @@ +[capturetheartefact_gamedata] +spawn_cost = -1500;-2500;-10000 +not_free_ammo = mp_ammo_vog-25, mp_ammo_m209, mp_ammo_og-7b + +[capturetheartefact_base_cost]:deathmatch_base_cost + +[capturetheartefact_team1] +artefact = mp_af_cta_green +artefact_spawn_effect = anomaly2\electra2_blast + +team_idx = 0 + +pistols = mp_wpn_pm, mp_wpn_fort, mp_wpn_walther, mp_wpn_beretta, mp_wpn_sig220, mp_wpn_usp, mp_wpn_desert_eagle + +shotgun = mp_wpn_bm16, mp_wpn_toz34, mp_wpn_wincheaster1300, mp_wpn_spas12, mp_wpn_protecta +assault = mp_wpn_ak74u, mp_wpn_ak74, mp_wpn_abakan, mp_wpn_groza, mp_wpn_val, mp_wpn_pkm, mp_wpn_fn2000; +sniper_rifles = mp_wpn_vintorez, mp_wpn_svd, mp_wpn_gauss +heavy_weapons = mp_wpn_rpg7, mp_wpn_rg-6 + +granades = mp_grenade_rgd5,mp_grenade_f1, mp_grenade_gd-05, mp_ammo_vog-25, mp_ammo_m209, mp_ammo_og-7b, mp_ammo_9x18_fmj,mp_ammo_9x18_pmm, mp_ammo_9x19_fmj,mp_ammo_9x19_pbp, mp_ammo_9x19_fmj_4mp5, mp_ammo_9x19_pbp_4mp5, mp_ammo_5.45x39_fmj,mp_ammo_5.45x39_ap,mp_ammo_5.56x45_ss190,mp_ammo_5.56x45_ap,mp_ammo_7.62x54_7h1,mp_ammo_9x39_pab9,mp_ammo_9x39_ap,mp_ammo_11.43x23_fmj,mp_ammo_11.43x23_hydro,mp_ammo_12x70_buck,mp_ammo_12x76_zhekan,mp_ammo_gauss, mp_ammo_pkm_100; +outfits = mp_scientific_outfit, mp_military_stalker_outfit, mp_exo_outfit +equipment = mp_medkit, mp_energy_drink, mp_device_torch, mp_bandage, mp_antirad, mp_drug_coagulant, mp_drug_radioprotector, mp_wpn_addon_silencer, mp_wpn_addon_scope, mp_wpn_addon_scope_susat, mp_wpn_addon_silencer, mp_wpn_addon_grenade_launcher, mp_wpn_addon_grenade_launcher_m203; + + +skins = mp_team_green_1, mp_team_green_2, mp_team_green_3, mp_team_green_4, mp_team_green_addon_fr, mp_team_green_addon_uk + + +default_items = mp_wpn_knife, mp_wpn_pm, mp_device_torch + +;// +mp_exo_outfit = mp_team_green_armor_exo +mp_scientific_outfit = mp_team_green_armor_sci +mp_military_stalker_outfit = mp_team_green_armor_military + +;//money amounts +money_start = 450 +money_min = 0 + +kill_rival = 300;400 +kill_self = -100 +kill_team = -250 + +target_rival = 750 +target_team = -500 +target_succeed = 1000;850;750;1000 +target_succeed_all = 750;500; +target_failed = 300;250;100; + +round_win = 200 +round_loose = 100 +round_draw = 0 + +round_loose_minor = 100 +round_win_minor = 150 +clear_run_bonus = 350;200;150 + +kill_while_invincible = 0.5 + +mp_wpn_pb_cost = 0 + +;//---- indicator data -------- +indicator_r1 = 0.2 +indicator_r2 = 0.2 + +indicator_x = 0.0 +indicator_y = 0.4 +indicator_z = 0.0 + +indicator_shader = friendly_indicator +indicator_texture = ui\ui_greenteam + +invincible_shader = friendly_indicator +invincible_texture = ui\ui_skull + +[capturetheartefact_team2] +team_idx = 1 + +artefact = mp_af_cta_blue +artefact_spawn_effect = anomaly2\electra2_blast + +pistols = mp_wpn_pb, mp_wpn_hpsa, mp_wpn_colt1911, mp_wpn_beretta, mp_wpn_sig220, mp_wpn_usp, mp_wpn_desert_eagle + +shotgun = mp_wpn_bm16, mp_wpn_toz34, mp_wpn_wincheaster1300, mp_wpn_spas12, mp_wpn_protecta +assault = mp_wpn_mp5, mp_wpn_l85, mp_wpn_lr300, mp_wpn_sig550, mp_wpn_g36, mp_wpn_pkm, mp_wpn_fn2000; +sniper_rifles = mp_wpn_vintorez, mp_wpn_svu, mp_wpn_gauss +heavy_weapons = mp_wpn_rpg7, mp_wpn_rg-6 + +granades = mp_grenade_rgd5,mp_grenade_f1, mp_grenade_gd-05, mp_ammo_vog-25, mp_ammo_m209, mp_ammo_og-7b, mp_ammo_9x18_fmj,mp_ammo_9x18_pmm, mp_ammo_9x19_fmj,mp_ammo_9x19_pbp, mp_ammo_9x19_fmj_4mp5, mp_ammo_9x19_pbp_4mp5, mp_ammo_5.45x39_fmj,mp_ammo_5.45x39_ap,mp_ammo_5.56x45_ss190,mp_ammo_5.56x45_ap,mp_ammo_7.62x54_7h1,mp_ammo_9x39_pab9,mp_ammo_9x39_ap,mp_ammo_11.43x23_fmj,mp_ammo_11.43x23_hydro,mp_ammo_12x70_buck,mp_ammo_12x76_zhekan,mp_ammo_gauss, mp_ammo_pkm_100; +outfits = mp_scientific_outfit, mp_military_stalker_outfit, mp_exo_outfit +equipment = mp_medkit, mp_energy_drink, mp_device_torch, mp_bandage, mp_antirad, mp_drug_coagulant, mp_drug_radioprotector, mp_wpn_addon_silencer, mp_wpn_addon_scope, mp_wpn_addon_scope_susat, mp_wpn_addon_silencer, mp_wpn_addon_grenade_launcher, mp_wpn_addon_grenade_launcher_m203; + + +skins = mp_team_blue_1, mp_team_blue_2, mp_team_blue_3, mp_team_blue_4, mp_team_blue_addon_de, mp_team_blue_addon_us + +default_items = mp_wpn_knife, mp_wpn_pb;, mp_device_torch + +;// +mp_exo_outfit = mp_team_blue_armor_exo +mp_military_stalker_outfit = mp_team_blue_armor_military +mp_scientific_outfit = mp_team_blue_armor_sci + +;//money amounts +money_start = 450 +money_min = 0 + +kill_rival = 300;400 +kill_self = -100 +kill_team = -250 + +target_rival = 750 +target_team = -500 +target_succeed = 1000;850;750;1000 +target_succeed_all = 750;500; +target_failed = 300;250;100; + +round_win = 200 +round_loose = 100 +round_draw = 0 + +round_loose_minor = 100 +round_win_minor = 150 +clear_run_bonus = 350;200;150 + +kill_while_invincible = 0.5 + +mp_wpn_pm_cost = 0 + +;//---- indicator data -------- +indicator_r1 = 0.2 +indicator_r2 = 0.2 + +indicator_x = 0.0 +indicator_y = 0.5 +indicator_z = 0.0 + +indicator_shader = friendly_indicator +indicator_texture = ui\ui_blueteam + +invincible_shader = friendly_indicator +invincible_texture = ui\ui_skull + +;------------------------------------------------------------------------------- +[capturetheartefact_messages_menu] +sounds_path = characters_voice\multiplayer\ +team_prefix = team_ + +menu_0 = cta_menu_0 +menu_1 = cta_menu_1 + +[cta_menu_0]:ahunt_menu_0 +phrase_7 = speech_returntheartefact, return_ + +[cta_menu_1]:ahunt_menu_1 \ No newline at end of file diff --git a/gamedata/configs/mp/deathmatch_game.ltx b/gamedata/configs/mp/deathmatch_game.ltx new file mode 100644 index 0000000..fc52eba --- /dev/null +++ b/gamedata/configs/mp/deathmatch_game.ltx @@ -0,0 +1,200 @@ +#include "mp_ranks.ltx" +#include "mp_bonuses.ltx" + +[buy_menu_items_place] + +lst_pistol = mp_wpn_pm, mp_wpn_pb, mp_wpn_fort, mp_wpn_walther, mp_wpn_colt1911, mp_wpn_usp, mp_wpn_sig220, mp_wpn_desert_eagle, mp_wpn_hpsa, mp_wpn_beretta +lst_pistol_ammo = mp_ammo_9x18_fmj, mp_ammo_9x18_pmm, mp_ammo_9x19_fmj, mp_ammo_9x19_pbp, mp_ammo_11.43x23_fmj, mp_ammo_11.43x23_hydro + +lst_rifle = mp_wpn_bm16, mp_wpn_wincheaster1300, mp_wpn_spas12, mp_wpn_protecta, mp_wpn_ak74u, mp_wpn_ak74, mp_wpn_mp5, mp_wpn_l85, mp_wpn_lr300, mp_wpn_abakan, mp_wpn_sig550, mp_wpn_groza, mp_wpn_g36, mp_wpn_fn2000, mp_wpn_val, mp_wpn_vintorez, mp_wpn_svd, mp_wpn_svu,mp_wpn_gauss, mp_wpn_rpg7, mp_wpn_rg-6, mp_wpn_pkm, mp_wpn_toz34 +lst_rifle_ammo = mp_ammo_vog-25, mp_ammo_m209, mp_ammo_og-7b, mp_ammo_gauss, mp_ammo_9x19_fmj_4mp5, mp_ammo_9x19_pbp_4mp5, mp_ammo_5.45x39_fmj, mp_ammo_5.45x39_ap, mp_ammo_5.56x45_ss190, mp_ammo_5.56x45_ap, mp_ammo_7.62x54_7h1, mp_ammo_9x39_pab9, mp_ammo_9x39_ap, mp_ammo_12x70_buck, mp_ammo_12x76_zhekan, mp_ammo_pkm_100 + +lst_outfit = mp_exo_outfit, mp_scientific_outfit, mp_military_stalker_outfit +lst_medkit = mp_medkit, mp_medkit_scientic, mp_medkit_army +lst_granade = mp_grenade_f1, mp_grenade_rgd5, mp_grenade_gd-05 +lst_others = mp_energy_drink, mp_bandage, mp_antirad, mp_drug_coagulant, mp_drug_radioprotector, mp_detector_advanced, mp_device_torch, mp_wpn_addon_scope, mp_wpn_addon_scope_susat, mp_wpn_addon_silencer, mp_wpn_addon_grenade_launcher, mp_wpn_addon_grenade_launcher_m203, mp_wpn_binoc +lst_shop = +lst_player_bag = mp_wpn_knife + + +[deathmatch_gamedata] +;actor spawn effect +;actor_spawn_effect = anomaly2\electra2_blast +not_free_ammo = mp_ammo_vog-25, mp_ammo_m209, mp_ammo_og-7b + +[deathmatch_base_cost] +mp_wpn_knife = 0 + +mp_wpn_pm = 0 +mp_wpn_pb = 0 +mp_wpn_fort = 350,0,0,0,0 +mp_wpn_hpsa = 350,0,0,0,0 +mp_wpn_colt1911 = 500,350,0,0,0; +mp_wpn_walther = 500,350,0,0,0; +mp_wpn_beretta = 600,450,350 +mp_wpn_sig220 = 650,500,400 +mp_wpn_usp = 700,550,450 +mp_wpn_desert_eagle = 800,650,550 + +mp_wpn_bm16 = 250 +mp_wpn_toz34 = 500 ;600 +mp_wpn_wincheaster1300 = 600 ;700; +mp_wpn_spas12 = 700 ;1000; +mp_wpn_protecta = 1200 ;1500 + +mp_wpn_ak74u = 480 ;600; +mp_wpn_pkm = 1300 ;1500; +mp_wpn_mp5 = 480 ;600; +mp_wpn_ak74 = 550 ;600 ;650 +mp_wpn_l85 = 650 ;620 ;700; +mp_wpn_abakan = 750 ;800 +mp_wpn_lr300 = 750 ;850 +mp_wpn_groza = 1000 ;1200 +mp_wpn_sig550 = 950 ;1100 +mp_wpn_val = 1200 ;1300 +mp_wpn_g36 = 1300 ;1400 +mp_wpn_fn2000 = 1500 ;1600; + +mp_wpn_vintorez = 950 ;1100 +mp_wpn_svu = 1300 ;1500 +mp_wpn_svd = 1300 ;1500 +mp_wpn_gauss = 1800 ;2000 + +mp_wpn_rpg7 = 1200 +mp_wpn_rg-6 = 750 + + +mp_grenade_f1 = 250; +mp_grenade_rgd5 = 100; +mp_grenade_gd-05 = 50 ;100 +mp_ammo_vog-25 = 450 ;500; +mp_ammo_m209 = 450 ;500; +mp_ammo_og-7b = 1200 ;1500 + + +mp_ammo_9x18_fmj = 0, 0, 0, 0, 0 +mp_ammo_9x18_pmm = 0, 0, 0, 0, 0 + +mp_ammo_9x19_fmj = 25, 0, 0, 0, 0 +mp_ammo_9x19_pbp = 50, 0, 0, 0, 0 +mp_ammo_9x19_fmj_4mp5 = 35 +mp_ammo_9x19_pbp_4mp5 = 60 + +mp_ammo_11.43x23_fmj = 50, 50, 0, 0, 0 +mp_ammo_11.43x23_hydro = 75, 50, 0, 0, 0 + +;----- + +mp_ammo_5.45x39_fmj = 35;75 +mp_ammo_5.45x39_ap = 60;100 + +mp_ammo_5.56x45_ss190 = 60;100 +mp_ammo_5.56x45_ap = 85;150 + +mp_ammo_7.62x54_7h1 = 200; +;mp_ammo_7.62x54_ap = 165; +;mp_ammo_7.62x54_7h14 = 200; +mp_ammo_pkm_100 = 350; + +mp_ammo_9x39_pab9 = 100;125 +mp_ammo_9x39_ap = 125;175 + +mp_ammo_12x70_buck = 50;100 +mp_ammo_12x76_zhekan = 75 +mp_ammo_gauss = 250;500 + + +mp_exo_outfit = 1250 ;1500;1250;1500 +mp_scientific_outfit = 250;300;350 +mp_military_stalker_outfit = 700 ;750;850 + +mp_medkit = 250 +mp_medkit_scientic = 350 +mp_medkit_army = 500 + +mp_energy_drink = 100 +mp_bandage = 25 +mp_antirad = 50 + +mp_drug_coagulant = 100 +mp_drug_radioprotector = 100 + + +mp_detector_advanced = 50 +mp_device_torch = 0 +mp_wpn_addon_scope = 200 ;250;150 +mp_wpn_addon_scope_susat = 250;150 +mp_wpn_addon_silencer = 250 ;150 +mp_wpn_addon_grenade_launcher = 350;300 +mp_wpn_addon_grenade_launcher_m203 = 350;300 +mp_wpn_binoc = 200 + + +[deathmatch_team0] +team_idx = 1 + +pistols = mp_wpn_pm, mp_wpn_pb, mp_wpn_fort, mp_wpn_hpsa, mp_wpn_walther, mp_wpn_colt1911, mp_wpn_beretta, mp_wpn_sig220, mp_wpn_usp, mp_wpn_desert_eagle + +shotgun = mp_wpn_bm16, mp_wpn_toz34, mp_wpn_wincheaster1300, mp_wpn_spas12, mp_wpn_protecta +assault = mp_wpn_ak74u, mp_wpn_mp5, mp_wpn_l85, mp_wpn_ak74, mp_wpn_abakan, mp_wpn_lr300, mp_wpn_groza, mp_wpn_sig550, mp_wpn_val, mp_wpn_g36, mp_wpn_pkm, mp_wpn_fn2000; +sniper_rifles = mp_wpn_vintorez, mp_wpn_svu, mp_wpn_svd, mp_wpn_gauss +heavy_weapons = mp_wpn_rpg7, mp_wpn_rg-6 + +granades = mp_grenade_rgd5,mp_grenade_f1, mp_grenade_gd-05, mp_ammo_vog-25, mp_ammo_m209, mp_ammo_og-7b, mp_ammo_9x18_fmj,mp_ammo_9x18_pmm, mp_ammo_9x19_fmj,mp_ammo_9x19_pbp, mp_ammo_9x19_fmj_4mp5, mp_ammo_9x19_pbp_4mp5, mp_ammo_5.45x39_fmj,mp_ammo_5.45x39_ap,mp_ammo_5.56x45_ss190,mp_ammo_5.56x45_ap,mp_ammo_7.62x54_7h1,mp_ammo_9x39_pab9,mp_ammo_9x39_ap,mp_ammo_11.43x23_fmj,mp_ammo_11.43x23_hydro,mp_ammo_12x70_buck,mp_ammo_12x76_zhekan,mp_ammo_gauss, mp_ammo_pkm_100 +outfits = mp_scientific_outfit, mp_military_stalker_outfit, mp_exo_outfit +equipment = mp_medkit, mp_energy_drink, mp_bandage, mp_antirad, mp_device_torch, mp_drug_coagulant, mp_drug_radioprotector, mp_wpn_addon_silencer, mp_wpn_addon_scope, mp_wpn_addon_scope_susat, mp_wpn_addon_silencer, mp_wpn_addon_grenade_launcher, mp_wpn_addon_grenade_launcher_m203; + +;// ( ) +gid_exo_outfit = mp_exo_outfit +gid_gauss_rifle = mp_wpn_gauss +gid_double_barred = mp_wpn_bm16, mp_wpn_toz34 +gid_hand_grenades = mp_grenade_rgd5, mp_grenade_f1 +gid_cool_weapons = mp_wpn_fn2000, mp_wpn_g36, mp_wpn_gauss, mp_wpn_groza, mp_wpn_pkm, mp_wpn_rg-6, mp_wpn_rpg7, mp_wpn_sig550, mp_wpn_spas12, mp_wpn_svd, mp_wpn_svu, mp_wpn_val + +skins = mp_team_green_1, mp_team_green_2, mp_team_green_3, mp_team_green_4, mp_team_green_addon_fr, mp_team_green_addon_uk + + + +;// +mp_exo_outfit = mp_team_green_armor_exo +mp_scientific_outfit = mp_team_green_armor_sci +mp_military_stalker_outfit = mp_team_green_armor_military + +;//money amounts +money_start = 300 +money_min = 0 + +kill_rival = 300;400 +kill_self = 0 +kill_team = 0 + +target_rival = 0 +target_team = 0 +target_succeed = 0 +target_succeed_all = 0 + +round_win = 100 +round_loose = 50 +round_draw = 50 + +round_loose_minor = 0 +round_win_minor = 0 + +clear_run_bonus = 200 + +mp_wpn_pm_cost = 0 + +default_items = mp_wpn_knife, mp_wpn_pm, mp_device_torch +;//---- indicator data -------- +indicator_r1 = 0.2 +indicator_r2 = 0.2 + +indicator_x = 0.0 +indicator_y = 0.5 +indicator_z = 0.0 + +indicator_shader = friendly_indicator +indicator_texture = ui\ui_blueteam + +invincible_shader = friendly_indicator +invincible_texture = ui\ui_skull diff --git a/gamedata/configs/mp/teamdeathmatch_game.ltx b/gamedata/configs/mp/teamdeathmatch_game.ltx new file mode 100644 index 0000000..abd9340 --- /dev/null +++ b/gamedata/configs/mp/teamdeathmatch_game.ltx @@ -0,0 +1,159 @@ +[teamdeathmatch_base_cost]:deathmatch_base_cost + +;//Green + +[teamdeathmatch_team1] +team_idx = 0 + +pistols = mp_wpn_pm, mp_wpn_fort, mp_wpn_walther, mp_wpn_beretta, mp_wpn_sig220, mp_wpn_usp, mp_wpn_desert_eagle + +shotgun = mp_wpn_bm16, mp_wpn_toz34, mp_wpn_wincheaster1300, mp_wpn_spas12, mp_wpn_protecta +assault = mp_wpn_ak74u, mp_wpn_ak74, mp_wpn_abakan, mp_wpn_groza, mp_wpn_val, mp_wpn_pkm, mp_wpn_fn2000; +sniper_rifles = mp_wpn_vintorez, mp_wpn_svd, mp_wpn_gauss +heavy_weapons = mp_wpn_rpg7, mp_wpn_rg-6 + +granades = mp_grenade_rgd5,mp_grenade_f1, mp_grenade_gd-05, mp_ammo_vog-25, mp_ammo_m209, mp_ammo_og-7b, mp_ammo_9x18_fmj,mp_ammo_9x18_pmm, mp_ammo_9x19_fmj,mp_ammo_9x19_pbp, mp_ammo_9x19_fmj_4mp5, mp_ammo_9x19_pbp_4mp5, mp_ammo_5.45x39_fmj,mp_ammo_5.45x39_ap,mp_ammo_5.56x45_ss190,mp_ammo_5.56x45_ap,mp_ammo_7.62x54_7h1,mp_ammo_9x39_pab9,mp_ammo_9x39_ap,mp_ammo_11.43x23_fmj,mp_ammo_11.43x23_hydro,mp_ammo_12x70_buck,mp_ammo_12x76_zhekan,mp_ammo_gauss, mp_ammo_pkm_100; +outfits = mp_scientific_outfit, mp_military_stalker_outfit, mp_exo_outfit +equipment = mp_medkit, mp_energy_drink, mp_device_torch, mp_bandage, mp_antirad, mp_drug_coagulant, mp_drug_radioprotector, mp_wpn_addon_silencer, mp_wpn_addon_scope, mp_wpn_addon_scope_susat, mp_wpn_addon_silencer, mp_wpn_addon_grenade_launcher, mp_wpn_addon_grenade_launcher_m203; + +;//mp_medkit_scientic, mp_medkit_army, mp_energy_drink, mp_bandage, mp_antirad, +skins = mp_team_green_1, mp_team_green_2, mp_team_green_3, mp_team_green_4, mp_team_green_addon_fr, mp_team_green_addon_uk + + +default_items = mp_wpn_knife, mp_wpn_pm, mp_device_torch + +;// +mp_exo_outfit = mp_team_green_armor_exo +mp_scientific_outfit = mp_team_green_armor_sci +mp_military_stalker_outfit = mp_team_green_armor_military + +;//money amounts +money_start = 300 +money_min = 0 + +kill_rival = 300;400 +kill_self = 0 +kill_team = -250 + +target_rival = 0 +target_team = 0 +target_succeed = 0 +target_succeed_all = 0 + +round_win = 100 +round_loose = 50 +round_draw = 50 + +round_loose_minor = 0 +round_win_minor = 0 +clear_run_bonus = 200 + +kill_while_invincible = 0.5 + +mp_wpn_pb_cost = 0 + +;//---- indicator data -------- +indicator_r1 = 0.2 +indicator_r2 = 0.2 + +indicator_x = 0.0 +indicator_y = 0.5 +indicator_z = 0.0 + +indicator_shader = friendly_indicator +indicator_texture = ui\ui_greenteam + +invincible_shader = friendly_indicator +invincible_texture = ui\ui_skull + + +;//Blue +[teamdeathmatch_team2] +team_idx = 1 + +pistols = mp_wpn_pb, mp_wpn_hpsa, mp_wpn_colt1911, mp_wpn_beretta, mp_wpn_sig220, mp_wpn_usp, mp_wpn_desert_eagle + +shotgun = mp_wpn_bm16, mp_wpn_toz34, mp_wpn_wincheaster1300, mp_wpn_spas12, mp_wpn_protecta +assault = mp_wpn_mp5, mp_wpn_l85, mp_wpn_lr300, mp_wpn_sig550, mp_wpn_g36, mp_wpn_pkm, mp_wpn_fn2000; +sniper_rifles = mp_wpn_vintorez, mp_wpn_svu, mp_wpn_gauss +heavy_weapons = mp_wpn_rpg7, mp_wpn_rg-6 + +granades = mp_grenade_rgd5,mp_grenade_f1, mp_grenade_gd-05, mp_ammo_vog-25, mp_ammo_m209, mp_ammo_og-7b, mp_ammo_9x18_fmj,mp_ammo_9x18_pmm, mp_ammo_9x19_fmj,mp_ammo_9x19_pbp, mp_ammo_9x19_fmj_4mp5, mp_ammo_9x19_pbp_4mp5, mp_ammo_5.45x39_fmj,mp_ammo_5.45x39_ap,mp_ammo_5.56x45_ss190,mp_ammo_5.56x45_ap,mp_ammo_7.62x54_7h1,mp_ammo_9x39_pab9,mp_ammo_9x39_ap,mp_ammo_11.43x23_fmj,mp_ammo_11.43x23_hydro,mp_ammo_12x70_buck,mp_ammo_12x76_zhekan,mp_ammo_gauss, mp_ammo_pkm_100; +outfits = mp_scientific_outfit, mp_military_stalker_outfit, mp_exo_outfit +equipment = mp_medkit, mp_energy_drink, mp_device_torch, mp_bandage, mp_antirad, mp_drug_coagulant, mp_drug_radioprotector, mp_wpn_addon_silencer, mp_wpn_addon_scope, mp_wpn_addon_scope_susat, mp_wpn_addon_silencer, mp_wpn_addon_grenade_launcher, mp_wpn_addon_grenade_launcher_m203; + +skins = mp_team_blue_1, mp_team_blue_2, mp_team_blue_3, mp_team_blue_4, mp_team_blue_addon_de, mp_team_blue_addon_us + +default_items = mp_wpn_knife, mp_wpn_pb, mp_device_torch + +;// +mp_exo_outfit = mp_team_blue_armor_exo +mp_military_stalker_outfit = mp_team_blue_armor_military +mp_scientific_outfit = mp_team_blue_armor_sci + +;//money amounts +money_start = 300 +money_min = 0 + +kill_rival = 300;400 +kill_self = -100 +kill_team = -250 + +target_rival = 0 +target_team = 0 +target_succeed = 0 +target_succeed_all = 0 + +round_win = 100 +round_loose = 50 +round_draw = 50 + +round_loose_minor = 0 +round_win_minor = 0 +clear_run_bonus = 200 + +kill_while_invincible = 0.5 + +mp_wpn_pm_cost = 0 + +;//---- indicator data -------- +indicator_r1 = 0.2 +indicator_r2 = 0.2 + +indicator_x = 0.0 +indicator_y = 0.5 +indicator_z = 0.0 + +indicator_shader = friendly_indicator +indicator_texture = ui\ui_blueteam + +invincible_shader = friendly_indicator +invincible_texture = ui\ui_skull + +;------------------------------------------------------------------------------- +[tdm_messages_menu] +menu_0 = tdm_menu_0 +menu_1 = tdm_menu_1 +sounds_path = characters_voice\multiplayer\ +team_prefix = team_ + +[tdm_menu_0] +phrase_0 = speech_attack, attack_ +phrase_1 = speech_retreat, retreat_ +phrase_2 = speech_holdpos, hold_ +phrase_3 = speech_report, report_ +phrase_4 = speech_silence, silence_ +;Hold Artefact! +;Take Artefact! + +[tdm_menu_1] +phrase_0 = speech_roger, roger_ +phrase_1 = speech_no, no_ +phrase_2 = speech_needhelp, help_ +phrase_3 = speech_noenemy, clear_ +phrase_4 = speech_holdingpos, camp_ +phrase_5 = speech_sticktogether, together_ +phrase_6 = speech_followme, follow_ +phrase_7 = speech_needmoney, money_ +;Cover you, take artefact! +;Taking artefact, cover me! diff --git a/gamedata/configs/text/cze/st_achievement.xml b/gamedata/configs/text/cze/st_achievement.xml new file mode 100644 index 0000000..fd62d2f --- /dev/null +++ b/gamedata/configs/text/cze/st_achievement.xml @@ -0,0 +1,372 @@ + + + + Tvj neptel se mus ctit opravdu ponen, kdy se nechal u desetkrt po sob zabt, ani by mezitm zabil tebe! Ty to vak nedl z krutosti - chce mu jen dt pleitost k procviovn. + + + Jet mus dozrt + + + Smrt ti kr v patch! Doke zabt dv mouchy jednou ranou... ob je prostelit Gaussovou pukou. + + + pz + + + Tvj klidn a vypotav pstup je zhoubou neptel. Povedlo se ti zashnout dva cle, kad jednou patronou z dvouhlavov brokovnice. A to ve bhem jen nkolika vtein! + + + Dv rny, dv tla + + + V vechno, co mus sprvn stalker umt. Proto jsi taky prvn stalkerovskou legendou! + + + Spoleensk plhoun + + + Dobvat se dovnit exoskeletu noem? Ano, tvm konkem je stanovovat si obtn cle a potom je pekonvat. + + + Otvrk na konzervy + + + Mysleli si, e u t dostali, ale jak eredn se jen mlili! Povedlo se ti oddlat jich pt v ad, pestoe u ti smrt lapala na paty. + + + Nezmar + + + To ale byla adrenalinov jzda! Um zasypat neptele smrt kulek - pt zez v pti vteinch. Neuviteln! + + + Nespoutan hnv + + + No teda! M chvatnou muku! Bez jedinho mrt se to podailo stelit dva neptele do oka. + + + Trefa do blho + + + Jen a se schovvaj za rohy, jen a si nastrauj lky, tebe to nezastav. Doke sundat pohybujc se cl, klidn i bez men! + + + Bleskov reflexy + + + Me si utkat, jak se mu zachce. Tvoje vstely ho nakonec doenou. + + + Zastavte bce + + + Povedlo se ti bez zemen oddlat dvacet ptel v ad! Tomu se k krvav lze! + + + Masakr + + + Ano, byli sice ti, a ano, mli odstelovask puky. Ale ne, tvm schopnostem se vyrovnat nedokzali. + + + Ostrostelec + + + Barbarsk metody jsou dobr leda tak pro neptele. Ty doke s pehledem vyhrt a nevystelit u toho jedinou rnu. + + + Posel mru + + + Skutenmu odstelovai nedl vzdlenost problm. Dovede trefit cl o velikosti mince na 120 metr. + + + Smrtc pesnost + + + Neptel t sice nakonec dostal, ale ten odjitn grant ho pak docela pekvapil! + + + Tu m nco na pamtku + + + Povradili ti kmoe a tvou pomstu si objektivn zaslouili. Mrtvoly t neptel za ti mrtv kamardy - hezky spravedliv. + + + Mstitel + + + Pro svho kamarda jsi jako strn andl! U dvakrt dky tob unikl smrti, kdy nesl artefakt. + + + Cherubn + + + Povedlo se ti pece jenom zskat pr bod a tm zachrnit nejen svou est, ale i est celho vaeho tmu. + + + Zachrnce cti + + + Copak opravdu v, kde a kdy se pt artefakt objev? Tak i onak, povedlo se ti ho zvednout pouhch pr vtein po objeven. + + + Stalkerovsk intuice + + + To byla ale klika - odrovnat neptele posledn kulkou v zsobnku! No hlavn e to se nakonec povedlo. + + + astlivec + + + M na t osm neptel v ad. Laka je nastavena vysoko - te a ukou, co v nich je. + + + ern listina + + + Dky tv opatrnosti a obezetnosti t nikdo nedokzal zabt. Podailo se ti celou hru zstat naivu a zrove zskat pes patnct bod. + + + Paranoik + + + Nestoj o nevydanou pozornost, a tak za vech okolnost pouv tlumi. Pro nepteli prozrazovat, z kter strany piltne smrt? + + + Tich smrt + + + Zn jednoduch zpsob jak zlikvidovat neptele - jednodue jt a zskat dvakrt vc bod ne kdokoliv z nich. + + + Drtiv pevaha + + + Tvj sml pln na neprodlen zskn artefaktu se shledal s spchem! Povedlo se ti zabodovat v prvnch tech minutch hry. + + + Blitzkrieg + + + Vai neptel si k vhe ani nepiichli, vyhrli jste na pln e a oni nezskali ani jedin artefakt. Takhle vypad tmov spoluprce! + + + Kanr + + + Na pice kad kategorie figurovala tat osoba - ty! Nejvc zez, nejvc zskanch artefakt a nejmn mrt. Jen tak dl! + + + Vestrannost + + + Tv zrunosti s noem se nikdo nevyrovn! Vykuchnm t neptel bhem dvaceti vtein se ti podailo dokzat, e sprvn zabijk nepotebuje steln prach. + + + Bs + + + Kad, by sebelep zbroj m nkde skulinku. A ty v, jak tuhle skulinku najt - prost neptele stel do oka! + + + Achillova pata + + + Z neptelskch kulek si nic nedl! Prost jimi bez poskvrnky projde a pak to nepteli spot! + + + Rychlej ne vstel + + + Jsi ochoten zkoumat nejnovj dn v Zn. Posunul jsi nae znalosti o Zn o kus dl tm, e jsi nael nov anomln tvary, kter vda doposud neznala. + + + Przkumnk + + + Stalkei si t te v vce.\nJako ocenn tvch in ti v osobn schrnce ve stanici Janov nechali njakou munici. + + + Nesna se vyhbat nebezpenm mutantm, msto toho je zabj a vede si v tom dobe. Dob lovci se mezi stalkery t velk ct. + + + Lovec mutant + + + Stalkei si t te v vce.\nJako projev uznn ti v osobn schrnce ve Skadovsku zanechali zdravotnick materil. + + + Odhalil jsi zhadu mizejicch stalker ve Skadovsku: na vin tentokrt nebyli mutanti, ale mnohem zkenj neptel lovk. Tv spn honba za pravdou ti vydobyla respekt mezi stalkery. + + + Detektiv + + + Stalkei si t te vc v.\nPodali obchodnka Hejkala, aby ti poskytl slevu.\nFous ti od nynjka nabdne za artefakty tu nejlep monou cenu. + + + Ukzal jsi banditm a jejich veliteli Sultnovi, kdo je tady fem, a ostatn stalkei si t za to oblbili. Ve Skadovsku bude vdy vtn. + + + Jeden z ns + + + Vydobyl sis respekt bandit.\nObchodnk Hejkal ti ze strachu, e by mohl bt tvm dalm terem, poskytl slevu.\nFous ti dle dohody bude odvdt st svho zisku. + + + Pomohl jsi Sultnovi pelstt stalkery a pevzt kontrolu nad Fousovmi obchody. V Zatonu jsi te obvanou a respektovanou osobnost. + + + f + + + Stalkei se rozhodli, e Strakovu koist, kterou zskal dky lm a podvodm, pedaj nkomu, kdo si ji zaslou. Najde ji ve sv osobn schrnce v Janov. + + + Pedal jsi toho bdka spravedlnosti. Strak podvedl a oklamal mnoho stalker a te dostal, co si zaslouil. + + + Posel spravedlnosti + + + Stalkei si t te v vce.\nBanditi se t budou snait dostat, kdykoliv vstoup do Zny. + + + Nael jsi vechny typy artefakt, kter vzkumnci Zny znaj. Tm sis vydobyl respekt stalker a pozornost ze strany bandit. + + + Hleda artefakt + + + Kardan doke provst jedinen pravy, namontovnm hydraulickch servomotorovch posilova ti umon rychl pohyb v exoskeletu. + + + Kardan te m vechny nstroje, kter by mohl potebovat. To mu umon provdt nov a sloitj vylepen. + + + Machr pes zbran + + + Nitrk ovld uniktn pravy taktick pilby: doke pidat infraerven skener schopn detekovat lidsk bytosti ve tvm okol. + + + Nitrk m vechny nstroje, o kterch by technik Zny mohl snt. Nyn me provdt hi-tech pravy. + + + Hi-tech profk + + + Dky sv zkuenosti se ti da nachzet vzcn artefakty astji. + + + Teoreticky ve stedu Zny nezstala dn oblast, kterou bys jet nenavtvil. Byl jsi tm u vech mstnch anomli. + + + Ostlen stalker + + + Tv vdcovsk schopnosti zvyuj ance tmu na peit. + + + Ml jsi na starost tmovou prci, proto jsi poskldal velkou druinu a dokzal ji dobe vst. + + + Vdce + + + Svoboda, Povinnost, voln stalkei a dokonce i banditi ji poznali tv vyjednvac schopnosti a dky tomu si t v. + + + Problmy doke eit bez krve. Kdo potebuje hrubou slu, kdy stejn dobe me poslouit i pr dobe volench slov? Pesto by sis ml dvat pozor na lidi, kte nejdv stlej a a pak se ptaj. + + + Diplomat + + + S vdci jsi strvil tolik asu, e t lid asto povauj za vdeckho pracovnka. V bunkrech vdc t povauj za jednoho ze svch. + + + Vdeck pracovnk + + + Tv vztahy s Povinnost se zlepily. Pokud se dostane do problm, bojovnci Povinnosti se ti pokus pomoci.\nNitrk, technik se vztahy k Povinnosti, ti nabdl slevu.\nTv vztahy se Svobodou upadly.\nHavajan, obchodnk upednostujc Svobodu, te za sv zbo bude chtt vce. + + + Nkolikrt jsi Povinnosti pomohl a dky tomu sis vydobyl uznn bojovnk Povinnosti i jejich ptel. Pamatuj vak na to, e v Zn neij jen pznivci Povinnosti. + + + Ptel Povinnosti + + + \nTv vztaky se Svobodou se zlepily. Pokud se dostane do pot, bojovnci Svobody se ti pokus pomoci.\nHavajan, obchodnk se vztahem ke Svobod, ti nabdl slevu.\nTv vztahy s Povinnost se zhorily.\nNitrk, technik upednostujc Povinnost, te za sv sluby bude chtt vce. + + + Nkolikrt jsi Svobod pomohl a dky tomu sis vydobyl uznn bojovnk Svobody i jejich ptel. Pamatuj vak na to, e v Zn neij jen pznivci Svobody. + + + Ptel Svobody + + + Stalkei v Janov oceuj rovnovhu sil mezi Povinnost a Svobodou, dky emu ti technici i obchodnci poskytli slevu. + + + Nepiklonil ses k dn z frakc a vdy vystupuje jako svobodn stalker. Nenadlal sis dn neptele, ale nem ani ptele. + + + Nezaujat + + + Obchodnci ti nabzej vzcnj a dra zbo. + + + Akoliv v, co znamen bt vorc, v souasn dob si v oblast financ nevede patn. Sp naopak, tvoje bohatstv je znan a obchodnci si zkaznk tvho postaven velice cen. + + + Solventn klient + + + Pot, co jsi zskal poznmky, nael Stelec nov dvod t a doshnout svho cle, a to stoj, co to stoj. + + + Tv prozravost se vyplatila: po nalezen poznmek ve skrch Stelcovch skupin sis je nechal, dokud jsi nenael jejich prvoplatnho majitele. + + + Strce tajemstv + + + Dky uit anabolickch pilulek jsi dokzal pet emisi, ani by ses ped n skryl. inky tto udlosti na tvou psychiku nejsou jasn, ale v hlav m podivn ticho. Zd se, e u nedoke slyet konstantn proud mylenek. + + + Poznamenn Znou + + + Obchodnk Hejkal ti nabdl slevu za to, e jsi jeho nejlepm informtorem a partnerem. + + + Kdykoliv se ti do rukou dostanou njak informace, doke najt jejich sprvnho kupce. Pi prodeji informac tm, kdo je potebuj, samozejm mysl hlavn na sebe. + + + Pekupnk informac + + + Tv vztahy se stalkery se zlepily. Pokud se dostane do pot, stalkei se ti pokus pomoci.\nZdravotnci stalker souhlasili s tm, e ti sv zbo budou prodvat za nkupn ceny. + + + Kdykoliv se stalkei dostanou do problm, jsi pipraven jim pomoci. Akoliv jejich frakce nen pli jednotn, v neoficilnm bratrstvu stalker od nynjka m sv ptele, kte ti pomohou nejen v boji. + + + Ptel stalker + + + Dky ad novch informac dokzali profesoi Hermann a Ozerskij vynalzt nov, experimentln lk na bzi antibiotik. + + + Jsi-li pi zdrav, me pet emisi i bez pouit liv. + + + Profesoru Hermannovi pipad natolik uiten, e ti nabdl zdravotnick poteby a vbavu, kter jsou obvykle ureny jen pro osdku bunkru.\nNovikov si na tebe tak zvykl, e u po tob nechce penze za modifikan prce, sta mu jen penze na soustky. + + diff --git a/gamedata/configs/text/cze/st_characters.xml b/gamedata/configs/text/cze/st_characters.xml new file mode 100644 index 0000000..fdb77ac --- /dev/null +++ b/gamedata/configs/text/cze/st_characters.xml @@ -0,0 +1,336 @@ + + + + Spodek + + + Vo + + + Podplukovnk ulga + + + Loki + + + Havajec + + + Kostihoj + + + Seka + + + Zulu + + + Strejda Jar + + + Topol + + + Palct + + + Duch + + + Had + + + Sup + + + Nitrk + + + Pastik + + + Pazourek + + + Generl Taenko + + + Poruk Bunuk + + + Plukovnk Kosma + + + Poruk Zacharuk + + + pna + + + Duplet + + + Chirurg + + + Lebzna + + + Kolk + + + Kostj + + + Mrtvola + + + Chodec + + + Broa + + + Srp + + + Mro + + + Klias + + + Foma + + + Profesor Ozerskij + + + Novikov + + + Profesor Hermann + + + eta liain + + + Poruk Sergejev + + + eta Valjuok + + + eta Ostrovskij + + + Kapitn Klimenko + + + Poruk Sokolov + + + Kapitn Tarasov + + + Plukovnk Kovalskij + + + Poruk Podoronij + + + Poruk Skelja + + + eta Merkulov + + + Poruk Stecenko + + + eta Jarmouk + + + Poruk Rogovec + + + Poruk Smirnov + + + Stelec + + + Baruk + + + Major Dgtarev + + + Trpaslk + + + ik + + + Grizzly + + + Torba + + + Mitjaj + + + Poruk Gavrilenko + + + Pazourek + + + Gajduk + + + Garik + + + Poruk Kirilov + + + Serbin + + + akal + + + ipera + + + Rejpal + + + Kann + + + Gonta + + + Kladivoun + + + Heben + + + Hejkal + + + Tetev + + + Danila + + + Sultn + + + Morgan + + + Boxer + + + Spartakus + + + Fous + + + Kardan + + + Goblin + + + Dub + + + Pianista + + + Trava + + + Kirza + + + Tank + + + Rypk + + + Sekerk + + + Kapr + + + Noe + + + Navigtor + + + Strak + + + Poruk Drapej + + + Prapork Umerov + + + Pahejl + + + Hk + + + Hrb + + + Majron + + + Brka + + + Petrucha + + + dlo + + + Major epurnij + + + Prapork Valentir + + + Rotmistr Morozov + + + Nadporuk Smoljak + + + Tska + + + Rotn Gazda + + + Kapitn Furtes + + + Rotmistr vejko + + diff --git a/gamedata/configs/text/cze/st_dialog_manager.xml b/gamedata/configs/text/cze/st_dialog_manager.xml new file mode 100644 index 0000000..866d946 --- /dev/null +++ b/gamedata/configs/text/cze/st_dialog_manager.xml @@ -0,0 +1,993 @@ + + + + V Zatonu je jedno msto, kde jsou pod vodou hav anomlie. k se tomu Bojler, protoe ze zem vychz spousta pry. A pokud si mysl, e pra nic nen, tak mysli jet jednou. Zkuen stalkei kaj, e takov vpary t sundaj stejn dobe jako normln rov anomlie, pokud ne h. Teplota je mon kapku men, ale prova t to skrz naskrz do mkka. Co se te artefakt, nali normln, ohnivej typ. + + + V lomu je prej dobr msto, spousta artefakt, i kdy anomli taky dost. Dole je spousta bublin z plynovejch anomli, pl to do o, i kdy m gas masku. + + + Popelit je u starho hbitova kousek od Kopae. Je tam spousta rovejch anomli a obas njak zombice. Lidi se tomu snaej vyhejbat, ale obas se tam daj najt njak artefakty. + + + Na parkoviti se prej naly artefakty. Furt jsou tam auta z prvn havrie v ernobylu - svt z nich radiace, a to ni mky. Navc je tam taky hromada elektrickejch anomli. + + + V Jedovatm lesku, kde jsou stromy ponien kyselinou. Prej je tam spousta plynovejch anomli. V luftu je tolik plynu, e nevid rovn, ale s trochou tst a zkuenost najde artefakty. + + + Pokud hled artefakty, jdi po kyselinovejch. Ty nejsnz najde v Betonovch lznch. Nebude mt moc velkou konkurenci, nikdo tam moc neleze, protoe je to blzko budovy Jupiteru. + + + Kousek od Jupiteru se propadla silnice. k se tam tomu Asfalt, protoe se silnice roztavila. V de je spousta anomli - rov promchan s gravitanma. A jeliko jsou tam dva druhy anomli, budou tam i rzn artefakty. + + + Za cementrnou je malej pstav. Zmnilo se to tam na hroznou smrdc bainu, voda je pln plynovejch anomli. U to ani nen voda, sp nco jako naedn kyselina. Dv se tam daly obas najt artefakty, ale te je to tam samej mutant. + + + Podvej se do star cementrny. Spousta anomli, ale stoj to za to. Jasn, jsou msta, kde se daj artefakty najt snz, ale hled je tam spousta lid. V cementrn ti budou konkurovat akort tarbci, to kdy vleze do podzem. + + + Ml by ses podvat pobl Dubovic. To je ta vc, co roste u kopc, nad plynovejma anomliema. k se tomu tak, protoe njakej vdtor zkoumal kru toho stromu a vychzelo mu, e je to dub i borovice. Pokud tam chce ale hledat artefakty, bude potebovat dobrou chemickou ochranu. A taky si vezmi spoustu munice, v tch kopcch ije spousta psch smeek. + + + Nkdy nemus skkat kvli artefaktu do anomli. Prej se jeden typ d najt normln na oteven ploe. Tenhle stalker ml detektor, kterej zaal blbnout, tak se rozhodl, e vymn baterky. Ale jakmile to udlal, detektor furt nco ukazoval a najednou prsk, artefakt mu spadnul pmo do klna. Ten ml tst, co? Takov je Zna: nkdy t potrest, nkdy odmn. + + + Slyel jsem od zkuench stalker, e se obas artefakty dostanou ven z anomli. Kdy ti zane detektor ppat a ty ho vythne, ale stejn nic nevid. To znamen, e kolem tebe probhnul potulnej artefakt a nem smysl ho honit, protoe jen Zna rozhodne, komu ho nadl. + + + V Pripjati zatm nikdo artefakty nehledal. Vichni stalkei, co znm, tam byli jen chvilku, take si radi dvaj pozor. + + + Nevm, jestli nkdo zn dobr msta. Pripja zatm nen moc dobe prozkouman. + + + J bych se podval do podzem. Pod mstem je prej tuna artefakt. + + + O thle oblasti nikdo nic moc nev. Akort Garik obas nco vyprv. Prej je tady msto, kde z kyselinov anomlie roste popnav vno, vysok jako desetipatrovej bark. Mon si z ns dlal srandu, ale pokud na to naraz, koukni tam po artefaktech. + + + Nejjistj msto je kyselinov baina. Je pln gravitanch anomli, ale ty snadno odhal. Sta koukat na vodn hladinu a neme je minout. Plynov anomlie jsou otravnj, a to doslova. Kdy t njak sejme, nen to sranda, v mi. Pror se to zbroj rychlejc ne koncentrovan kyselina srov. + + + Ve vyplen farm nahoe na kopci je spousta anomli. Obas se tam daj najt ohniv artefakty. Podvej se do bark: v tom, ve kterm je po emisi nejvc anomli, bude nejsp i njakej artefakt. + + + Nejsp je jich spousta v jeskynch pod vyplenou farmou. Kdy jde po kopci s detektorem, furt ve a ve. Dostat se tam je snadn, sta skoit drou dol. Ale dostat se ven u je hor, se vema tma anomliema. Vtinou Vortexy a Kyselina. Prej je v t de i nco jako kometa. Prost plnej pytel pekvapen, ale to znamen, e tam budou i rzn artefakty. + + + Vidl jsi anomlii Cirkus? Velk trampolna, kolem kter ltaj dokola dv komety. Fakt asn podvan, ale nejlp z dlky, protoe cirkus je horkej jako prase, je tam i spousta rovejch anomli. Zas ale je tam taky spousta artefakt, jen je hld hnusnej ohnivej poltergeist, kterej se t pokus osmait, pokud pileze moc blzko. + + + Pokud m zjem o gravitan artefakty, hledej anomlii Pat. Najde to snadno, anomlie oraly tern tak dobe, e plka kopce zmizela. Otevelo se tam i pr jeskyn a hned se v nich usadili snorkov. Natst moc asto ven nelezou. + + + V Zn, vole, v Zn. Jen to nevzdvej. + + + Skvl otzka. ekni mi, a zjist odpov! + + + Kde, kdy, pro... pamatuj: kdy najde nalezit, nech si ho pro sebe. + + + Kde bych mohl najt njak artefakty? + + + U jsem ti to kal. + + + Ne, nic dalho nevm. + + + To je vechno, co vm. Zeptej se nkoho jinho. + + + Jak se vede? + + + Zdravm. + + + Ahoj, stalkere. + + + Ahoj. + + + Co chce? + + + Co je? + + + Tak mluv. + + + Dobr odpoledne, pane majore! + + + Dobr odpoledne! + + + Poslouchm, pane majore! + + + Jo, nazdar. + + + Co je? + + + , n hrdina. + + + Hej, stalkere, kam tak spch? + + + Ahoj + + + Hej + + + Nazdar, vole. + + + Nazdrek + + + Hej! + + + Pomoz mi, brcho... + + + Zachra m, brcho, umrm... + + + Potebuju zdravotnka! + + + Lkrniku!... rychle! + + + Pomoz mi, kmo... sakra to bol! + + + Dej mi lkrniku... rychle, lkrniku... + + + Vole... argh... no tak, pomoz mi! + + + Hej, potebuju lkrniku... rychle... + + + Pomoz mi, stalkere... lkrniku, prosm... + + + Jsem zrannej... pomoc! + + + Potebuju lkrniku! + + + Lkrniku! + + + Slyels nco o t istice vchodn od Skadovska? Prej tam v noci nco divnho svt... Fakt divnho i na Znu. Nevm, co to je, ale podle m m smysl se tam jt podvat. Mohlo by to bt nco cennho, ale zas, m smysl kvli tomu riskovat prdel? To je otzka... + + + Tady jsou jen star rozpadl vraky. Teba ta kolona vozidel u Mostu Peobraenskho - vechno je tam prorezl skrz nasrkz, vetn mostu. Spousta lid by se tam rda podvala, ale je tam spousta snork a anomli... + + + Slyels, e Sultn chtl pevzt Fousv keft? Skadovsk nen pro jeho nenaranou prdel dost velk, tak si chtl ukousnout vt sousto... Ale my ekli: "Nic takovho, frajere!" Fous mu s naima chlapama ukzal, za je toho loket. Sultnovm hrdloezm tady penka nepokvete... + + + No teda, slyels to? Ten mejd Sultn dostal do spr Fouse... nevm, co pesn mu udlal, ale te ho m pod palcem. Co se s tou Znou jen dje? Pokud to takhle pjde dl, bude za chvli ze Skadovsku banditsk zkladna. + + + U jsi slyel o Oze, brcho? Prej je to msto, kter se ned snadno najt, a i kdy v, kde to je, tak dostat se tam je jet hor. Prej tam m bt nkde jezero. Kdy do nj vleze, ze veho t vyl, vechny rny se ti okamit zahoj! Ale, nem smysl o tom jen tak kecat. Vidls, kolik zelenejch stalker sem pichz, sem do centra Zny? Nkter hledaj artefakty, jin jsou zvdav, ale spousta jich chce najt Ozu. Prej je schovan nkde tady pobl.... + + + Zna prej brzo skon... nkdo nael Ozu a sebral z n artefakt, srdce Ozy. Te se Zna pesune do jin dimenze a dnej stalker u se z n nikdy nedostane... dlm si srandu, vole. Ale prej fakt nali njakej novej typ artefaktu. Vdtoi si s nm prv hrajou ve svm bunkru. + + + Slyels o Topolovi? Nael njakou dru a zavedl do n sv chlapy. Jejich dobrodrustv skonilo, kdy jim mozky oblbnul kontrolor. Skonili by v nemocnici, nebejt jednoho stalkera, kterej tam s nima byl. Kdy se Topol probral z ommen, sedl ten stalker hned vedle kontrolora a odezval mu ui. + + + Slyels o vesnici Kopai? Kdy dolo k prvn havrce v ernobylu, schytala to ta ddina tak zle, e se ji rozhodli celou zasypat. Te je tam msto bark jen hromada radioaktivn hlny. I ped havri to prej bylo zlovstn msto, dsm se toho, jak je to tam te. Vichni z toho maj takovej vtr, e se tam nikomu nechce jt a prozkoumat to. Ale co kdy se vichni pletou? Teba je to plnej zlatej dl na artefakty! + + + V, v Janov jsou jen dva stalkei, kter dokou vyctit, e se bl emise. N zdravotnk Kostihoj a Zulus, bejvalej len Povinnosti. To bejvalej plat teprv chvilku... kdy Povinnost pila do Janovsk stanice, u tam byli lidi od Svobody. Jak se dalo ekat, rychle to zaalo bejt zl. Ob frakce utrply velk ztrty, dokonce i pr svobodnejch stalker to schytalo od zatoulanejch kulku. Tehdy jim Zulus ekl, e se bl emise. Jeliko nemla Povinnost ani Svoboda na vbr, vyhlsili pm a zakopali se ve stanici. Kdy to vechno skonilo, odeel Zulus z Povinnosti a usadil se u ve pobl stanice. + + + Slyel jsem spoustu divnejch historek... neml bys vit kadmu vstu. Vyprav je v Zn v posledn dob vc ne mutant. Ale co je divn, pr stalker z Janova tvrd, e vidli UFO. Prej to vypadalo jako ernej tal, tak pt metr v prmru. Jin tvrdj, e to na dlku vypadalo jako letadlo a e to teda asi letadlo bylo. Co je ale zajmav, jeden z oitejch svdk je bejvalej pilot a ten tvrd, e nikdy v ivot nic takovho nevidl. + + + V posledn dob jsem slyel akort patn zprvy. Dob chlapi mizej jeden za druhm, a kdy najdem jejich mrtvoly, nen v nich ani kapka krve. To musej bejt ti zasran upi, kdo jinej? Fakt rd bych nael jejich hnzdo a osolil ty svin olovem! Brzo budem muset chodit s ochrankou i na hajzl, v? Osaml stalkei to nedaj. + + + Slyel jsem novou historku. Chlapi ze svobody prej sehnali PDA legendrnho zakladatele Povinnosti. A v co? Ukzalo se, e sv chlapy podvedl, tvrdil jim, e je armda v Zn opustila. Vymyslel si to, aby si z nich mohl udlat vlastn frakci! Ale takov vci v Zn nevydrej. Chvli po tom se ten hrdina dostal do prostorov bubliny a skonil. Tak u to chod.. a to jsem pemlel, e se k Povinnosti pidm! Pche, a si ty svoje rdoby vlasteneck kecy hlsaj sami. + + + Ten novej oddl Povinnosti, vak v... zjevili se jako kouzlem, z nieho nic. Uvauj o tom: skupina Povinnosti odejde z Janova a kdy se vrtj, je jich tikrt tolik. To se klonujou nebo co? I kdy od Povinnosti by se to dalo ekat. Rozezn je od sebe akort podle vloek! + + + Ten novej oddl Svobody, vak v... zjevili se jako kouzlem, z nieho nic. Uvauj o tom: skupina Povinnosti odejde z Janova a kdy se vrtj, je jich tikrt tolik. Napadlo m, e se mnoej dlenm! Co mysl? To maj z t trvy, kterou hulej, za chvli zakoenj a pak se budou rozmnoovat vegetativn! + + + Zn Gontu a jeho partu? Njakou dobu je celkem pronsledovala smla, po tom co zmizel Danila a Rejpal byl zrannej. Ale te se jim zas da. Dlaj pro vdtory, mej pro n nco. Dobr, ne? Pohodov prce a navc tak mon asem zskaj oficiln povolen. + + + Slyels o stalkerech, kterm se k Ma, Torba a Grizzly? Prej maj keft pro vdtory, dlaj za n njak men. Co je to za blbost? Podle m ti vdtoi jedou v njak pn. Ale aspo maj chlapi teka chvilku klid. Mon dokonce i seenou oficiln povolenky. + + + Zn Spartaka a jeho partu? Tak ty u ve Skadovsku nepotk, te hldaj vdtorskej bunkr. A pro ne, o mutanty se dokou postarat a vdj, jak zahnat bandity. Vda je dleit vc, ale potebuje trochu klidu a mru. + + + Vidls ty oldky, co se flkaj kolem istiky? V posledn dob urit ne. Vyrazili do Jupiteru hldat vdtorskej bunkr. Ped tm to tam hldali njac jin oldci, ale nco se jim prej stalo. A to podle m nen nic patnho! Kdy zmizej njac oldci, pijdou msto nich jin a taky zmizej... jet prkrt do kola a zbavme se vech oldk ze Zatonu. + + + Vdtorskej bunkr te prej hldaj odvn bojovnci Povinnosti... co z toho asi maj? Opravdu vej, e se jim ti vdtoi oplatj plasmovou bouchakou, aby mohli jt na lov tarbk? Prd hldaj, bude v tom njak pna... + + + Vdtorskej bunkr te prej hld Svoboda. Copak nemaj vdtoi strach, e jim nkdo vykou labinu? A myslm to doslova, haha. Ale m to jednu vhodu. Pokud si nkdo zkus zatoit na bunkr, budou se muset nejdv prodrat kouovou clonou a neusmt se k smrti! + + + U jsi byl v Jupiteru, tovrn na elektroniku? Pkn nepjemn msto. Nikdo nev, co se tam vlastn dje. Mutanti a anomlie jsou tam jako vude jinde... ale furt mm pocit, e se tam dje nco hnusnho. Instinkt mi k, tam bude njakej prser. + + + Hele, nejse ty ten, kdo odhalil skadovskho zdravotnka? Jsem ti za to vdnej. Taky jsem mohl skonit jako jeho dal pacient... vichni jsme si mysleli, e to byli mutanti, ale zjevn dokou bejt lidi stejn svin. Holt, v Zn se vichni erem navzjem, co? + + + Na to bych se t ml ptt j. Po tom, co jsi vlezl do tch tunel pod Jupiterem, jsem slyel, e ses dostal a do stedu Zny. Byl z toho podnej poprask. Tak tucet lid ml sto chut vyrazit za tebou. Nitrk je ale uklidnil - ekl jim, e jsou brny v tunelu zaven a e on je nedoke otevt. Jasn, bylo tady pr magor, kte chtli ty brny vyhodit do luftu, ale jet pod nesehnali dost dynamitu. A ani nevymysleli, jak tam dole budou dejchat. + + + Slyel jsi tu novinku o Garikovi? To je stalker, kterej dv makal pro vdtory. U nen naruitel, dostal oficiln povolenku pro prci v Zn, v tomu nebo ne! No, mysl si asi, e ml sebrat koist a vrtit se dom, co? No msto toho se ten magor vydal do Pripjati. Vichni si mysleli, e u je po nm, ale ne. Zvldnul to, i kdy stalkerm to k niemu nebude. Narazil na njak vojky. Te je s nima za dobe, kdy m povolenku, ale normln stalkei tam stejn nesm. + + + No... Svoboda a Povinnost spolu zas bojujou, tentokrt o njakou velkou skr. Prej je tam dost vybaven pro ti pchotn divize. ert v, kdo to tam schoval, ale ta bitka, to je nco. Vydrdilo to vechny stalkery v Janov, ale natst se do boje nepidali, jinak by to byl masakr. ekl bych, e Povinnost prohrla, protoe to tam te hldaj oddly Svobody. + + + No... Svoboda a Povinnost spolu zas bojujou, tentokrt o njakou velkou skr. Prej je tam dost vybaven pro ti pchotn divize. ert v, kdo to tam schoval, ale ta bitka, to je nco. Vydrdilo to vechny stalkery v Janov, ale natst se do boje nepidali, jinak by to byl masakr. ekl bych, e Svoboda prohrla, protoe to tam te hldaj oddly Povinnosti. + + + V posledn dob se nco stalo. Parta stalker zkoumala tunely pod Jupiterem a na nco narazila. Nebo sp na nkoho. Nejdv jim bouchaky samy vyletly z rukou a pak na n zaalo ltat vechno svinstvo v okol. Nemli tuen, co se tam sakra stalo, ale pili tam o dva chlapy. + + + V tunelech severn od Jupiteru byl prej njakej nebezpenej zmutovanej mejd. Pastik tam poslal na przkum jednoho stalkera. Ukzalo se, e tam mli hnzdo bjurei. Pro mli? Protoe ten stalker vechny bjurery vyhubil. Sm samojedinej... dokonce vypadal tak trochu jako ty, podle popisu, akort e byl o hlavu vt a nosil sebou nkolik grantomet. + + + Stalkei skonili... z bain vylzaj pery. Stalkei u cementrny vidli, jak s sebou potvory thnou jednoho z naich. Bylo jich nejm tucet, obrovsk hnusn svin. Vypadali jako upi, akort byli dvakrt vt a mnohem rychlej. Modlme se, aby Pastik vymyslel, jak si s tma svinma poradit... + + + U jsi slyel o bainnejch uprech? Tch z bain? No, je po nich. Pastik se o n postaral. Ne osobn, najal na to njak stalkery. Prej dali dohromady partu tak deseti lid, proesali bainu a co vyskoilo, dostalo dvku pmo do palice. Te u tam prej neijou ani by. + + + Sotva se zaalo povdat, e tady d chimra, tak ji nkdo oddlal. Mutanti dv zabjeli stalkery po tuctech, ale vypad to, e se karta obrac, konen. Taky jsem slyel, e tu chimru oddlal zkuenej lovec, kterej zabil dohromady vc mutant ne ty a j komr. + + + U jsi slyel, jak lidi te verbuje Svoboda? Teba ten tpek jmnem Pazourek, stranej frajer, furt se chlubil vm monm... no a ukzalo se, e je to pkn hnusnej mejd. Nechal svho kmoe zdechnout v anomlii, sebral jeho koist a odeel. Pozdjc se zjistilo, e v Zatonu ta svin nakrmila chimru celou partou lovc. Myslel jsem si o Svobod dobr vci... sakra, radi zstanu na vlastn pst, ne mt takov "kmoe". + + + No, prej sundali tu chimru v Zatonu. Gontova parta s njakm stalkerem. Hele, nebyl jsi to nhodou ty? Mon bys mi to mohl popsat z prvn ruky? Jo a mimochodem, fakt dk, o jednu lidoravou bestii m! + + + Nevm, jestli t to zajm, ale mme tady Noa, nejvtho magora, jakho jsi kdy potkal. M pkn hnusnou lo... teda prej mu ji za tejden postavila parta ilegl. Dvej si na nj bacha, nejdv stl a pak se ani neobtuje ptt se. Do prdele s tm debilem, to km j. + + + Zn toho frajera Hnitho? Pkn prskanej tpek. Prodv ty nejlep bouchaky iroko daleko. By m fakt zajmalo, jak je sem dostv. Chci ct, jak sebou me thnout Vintara, aby si toho nkdo nevimnul? Kam si ho narve? To je skoro jak njak kouzlo, vole. + + + Povd se, e Sultn lpnul do pkn hlubokho hovna. Chtl sundat Fouse a ovldnout jeho keft, ale ukousl si vc, ne dokzal sevejkat. Msto toho dostal pkn do rypku. ekaj ho tk asy, jeho vlastn parta se na nj kouk pkn hladov. U nen takov tk vha, jako kdysi. + + + Povd se, e Sultn njak ovldnul Fouse a fuje jeho keftu. To je dobe, Sultn m te vt moc, ale nejlep na tom je, e brzo budeme fovat Skadovsku podle sebe. To bude krsa. Chce se schovat ped emis? Nima problema, tavary, ale naval poplatek! + + + Hele, u jsi slyel o Oze? Si to pedstav, msto, kter t okamit vyl ze vech zrann a nemoc. To mus bejt njakej trik... nebo kouzlo. Ale m napadlo jet i nco jinho. Povd se te hodn o Oze, ale u ani slovo o Plnii pn jak kdysi. Mon je Oza n pn, kter se naplnilo? + + + Mezi vdtorama se povd o njakm artefaktu, kterej nkdo pithnul z Ozy. Ale tohle je zajmav, jakmile to prostudujou, budou mt lk na rakovinu! To je nco! + + + Stejn sraky, jen novej den... vichni vyprvj ty star historky o stedu Zny. Jako teba tu o Oze, co m bejt msto, kter t okamit vyl ze vechno monho a dopln ti energii. To je naprosto idiotskej kec, ale dobe se to poslouch. Zvl᚝ kdy nkdo mluv o tom, kde to je. Jo, pl bych si, aby takov msto fakt existovalo... zachrnili bysme spoustu naich chlap. + + + Slyel jsem, e prej nkdo fakt nael Ozu. Nikdy by m nenapadlo, e opravdu existuje, ale fakta jsou svin. Nali tam njakej artefakt. Vdtoi ho prv studujou. Mon podle nj udlaj njak super lebn zazen... naim chlapm by se nco takovho fakt hodilo. + + + Kopai. Nic novho v Zn, ale pro m to nov je. Jen si to pedstav, cel ddina s barkama zasypanma a po stechy do hlny... Thne se to a od 1986... barky byly tak naskl radiac, e je radi zahrabali. Nepjemn pedstava... + + + Zn tu historku o tom, jak jsme s Povinnost skonili spolen v Janov? Me za to Zulus. Tenkrt patil k Povinnosti a dokzal vyenichat blc se emisi jako nikdo druhej... Ale my do Janova pili jako prvn, teda hned po stalkerech. Sotva jsme mli as zaplit si pr joint, kdy se objevili ti debiln vojci a zaali na ns mvat bouchakama. Naposled jsem takovej masakr vidl na Smeku tak ped rokem. Hromada mrtvejch na obou stranch. A n specialista na emise mezi nima, a je mu zem lehk. A nejednou zaal Zulus vt: "Emise! Bl se emise, krejte se!" No co jsme mli dlat, vykopnout je a nechat je zdechnout? Povinnost nebo ne, furt jsou to lidi. A tak tady te ijem: kdy je ticho, hdme se, ale kdy pijde emise, sedme bok po boku. Zulus nakonec z Povinnosti odeel. Te prej ije jako poustevnk pobl Janova. + + + Nen to nic novho ani tajnho, ale technik Kardan se brzo uchlast k smrti. Prej kdy piel do Skadovsku, byl celkem v klidu, chlastal jen obas, nebo kvli radiaci. Ale pozdjc zaal hltat koalku jako vzteklej, zniil ho smutek, kdy mu chcpli dva kamardi. Asi si byli fakt blzc. + + + No, znm jednu zbavnou historku. Jeden tpek vyprvl, e nad Janovem ltalo Ufo. Zna fakt doke dohnat lidi k lenstv, co? Jakoby jim nestaili poltergeisti a kontroloi, ne, oni prost bez starejch historek o ufounech nevydrej. No aspo e tady nemme dn len psioniky, co by zakvali bla z vodky. Pedstav si takovho: "Mocnej Etanole, vye z koaly zlo! Zachovej jen istej chlast!! Haha. + + + Slyel jsi o vesnici Kopai? Kdy dolo k prvnmu prseru v ernobylu, schytala to ta ddina tak hodn, e ji radi celou zasypali. Te jsou tam msto bark jen hromady radioaktivn hlny. Prej to bylo i ped havrkou straideln msto, ert v, jak je to tam te. Nikdo si netrouf to tam jt zkontrolovat. + + + Nen to nic novho, ale mon jsi to jet neslyel. Nevlezli jsme do postele se Svobodou, protoe bysme se chtli zaht. Mou za to okolnosti. Kdy jsme sem dorazili, vyskoila na ns odevad Svoboda. Ztrty byly tk na obou stranch, ale pomalu jsme nad tma mizernejma anarchistama zskvali navrch... ale uprosted nejvtho boje Zulus uctil, e se bl emise. Nikdy se neplete, v... Nemli jsme na vybranou, museli jsme vyhlsit pm. Co ale nechpu, pro Zulus po tom incidentu odeel z Povinnosti... + + + Nai przkumnci nedvno ohlsili, e vidli nad Janovskou stanic neidentifikovan ltajc objekt. Prost UFO. Ne se zept na njakou blbost, UFO nejni jen ltajc tal s maranama. Me to bt cokoli ltajcho, od kusu lepenky po meteorologickou sondu, prost to akort svdci nedokzali identifikovat. Je ti to jasn? + + + Ty jsi pinesl Lokimu to PDA, co? Ty vole, to byl prser. Legendrn zakladatel Povinnosti generl Taenko podvedl sv vojky, udlal z nich pln debily. Rozbil rdio, aby se jim nikdo z venku nedovolal, a zaloil si vlastn partu... jen aby chcpnul jako plnej retard v blb prostorov bublin! Takovou blbost by si nikdo nedokzal vymyslet! + + + Vidls ten novej oddl tch blbejch vojcl? Nemou to bejt posily z jejich zkladny - ideologie jim jet nevyplila zbytek mozku. Ale jsou moc dobe cvien, aby to byli obyejn stalkei. ert v. Nemohli by bt od Monolitu? J vm, zn to blzniv! + + + Vidls nae nov bojovnky? Jo, ty jsi je sem vlastn pived, co? Se dobrej. A ti chlapi jsou celkem v pohod, akort kapku nervzn. Za pr msc se ale jejich mozky osvobodj. Zanou brt n zpsob ivota vn a brzo budou jako my. + + + Mme skvl nov rekruty, oddl dvjch monolik. A nejsou to dn zeleni, naopak, zkuen bojovnci. Samozejm maj v hlavch jet kapku vymeteno, ale to je v pohod. Mme na n pipravenej zkladn kurz ideologie, to jim ty blbosti Monolitu z palic vyene. + + + Svoboda prej naverbovala dvj partu z Monolitu. Tko tomu uvit, ale fakt maj novej oddl a ten rozhodn nepiel z venku. Asi jsou dost zoufal... nebo jim ty drogy pln vyplily mozky. Co naverbujou pt, brigdu zombk? Prapor bjurer? + + + V thle oblasti bude brzo zase zkon a podek. Povinnost pevzala kontrolu nad klovejma lokacema. Zabezpeili jsme silnou pozici v Janov a u vdeckho bunkru mme non stop strn oddl. Je na ase, aby se Svoboda sbalila a vypadla - anarchisty tady nevidme rdi. + + + Nejnovj div svta - stzlivej Kardan. Doke tomu uvit, e pestal chlastat? Lidi ze Skadovsku se ho ptali, jestli se dostal k slu hork linky anonymnch alkoholik a on jim na to ek: "Poteboval jsem jedin slo, edest dva." + + + Myslm, e to ty jsi pomohl naim chlapm sehnat prci pro vdtory, co? Dky. Je fajn vidt u bunkru nae chlapy msto tch mizernejch oldk. Jen tak dl! + + + No hele... napakovali jsme se na skri Povinnosti. Te tu skr pouvme na nco lepho, jako vzen pro povinnosck mejdy, makme z nich vechna tajemstv. Hehe. Jo a dk za ten tip na poplanej systm, bez posil bysme nemli anci. + + + Dal vtzstv pro Povinnost! Ti anarchisti si ukousli moc velk sousto... vplazili se do naeho tajnho skladit a mysleli si, e jim to projde. Ale prd! Pekvapili jsme je a postleli jako vztekl psy. + + + Nen nic novho, e je Svoboda banda mizer, ale odhalili jsme nco zajmavho o jednom z jejich nejdleitjch magor. Ten hajzlk si v Povinnosti kal Pazourek, ale pedtm byl stalker Strak. Aspo tak si kal, kdy piel do Zatonu a mlem zaved partu lovc mutantm pmo do tlamy. Navlkl to tak, e je chimra mlem serala, zatmco ta svin posbrala jejich vybaven a la do Janova. Kdy se pidal k Povinnosti, hodil svho parka do anomlie, aby mu mohl sebrat artefakt. No prost typickej Svobok. + + + Noe vede novej projekt stavby lod. Nejnovj atrakce v Zatonu - stalker jmnem Noe. Zkuenej, motivovanej a naprostej magor. Jeho posledn lenej npad je zachrnit vechny stalkery ped Apokalypsou. A tak pedlv starou brku na "Archu". Fakt totln magor. Pokud se za nm bude chtt stavit, dej si bacha, a ho nenatve. Jinak je celkem nekodnej. + + + U jsi byl u ipery? Te je ve Skadovsku. Fakt profk obchodnk. Me ti sehnat pln vechno. Teda, skoro vechno. V posledn dob se sousteuje na bouchaky a obleky, ale jen ty nejlep! Speciln kousky, experimentln typy, run vyrbn zbo... nen to levn, ale pro by taky mlo? Exkluzivita za to stoj! + + + Vdls, e Navigtor pouv novou trasu mezi Zatonem a Jupiterem? Dv to trvalo docela dlouho, musels vyplhat na kopec, vyhnout se anomlim a tak dl. Te je to pln pohoda. Nen to dn vprava, sp prochzka parkem, navc to trv sotva polovinu asu. Ale Navigtor se nechlub, e by to nael sm, njakej stalker mu to prej ukzal na map. Ne zadarmo, samozejm, ale moc za to nechtl. + + + Abych pravdu ekl, celkem nic. + + + V Zn je vdycky nco novho, sta koukat kolem sebe. + + + No, ty se tady novej. A to bude asi tak vechno. + + + Co je v Zn novho? + + + Nevm o niem dalm, co by t mohlo zajmat. + + + Rd bych ti jet nco ekl, ale nic jinho se ke mn nedoneslo. + + + ekl jsem ti vechno, co vm. + + + Hrm... Mon by ses ml zeptat Teteva ve Skadovsku. Hledal nkoho, kdo by mu pchnul s jednm problmem. Stalkei mizej beze stop. Vichni z toho vinj upry, protoe kdy u pak nkdo najde tlo, je bez kapiky krve. Ale tohle je njak divn... sbraj lidi skoro kadej den. A to upi normln nedlaj... Tetev dokonce na ty upry najal zkuenho lovce. + + + V, kdy stalker potebuje prachy, m dv monosti: najt artefakty a prodat je pekupnkm za 30 kopjek z rublu, nebo makat pro vdtory. Vdycky vymlej nco, co by pro n mohl njakej stalker udlat, a u je teba donst njakej vzcnej artefakt, nebo zdechlinu mutanta. Ale hlavn kdy se s tebou zkamardj, mou ti vydat oficiln povolenku pro pobyt v Zn, fakt pravou. Pedstav si, jak jde kolem vojensk pozice, s bglem plnm koisti, a ti blbov ti jet musej salutovat! Krsn pedstava. Bunkr vdtor je zpadn od Janovsk stanice. U pro n jeden stalker mak, ale mon najmou dalho. + + + Jak spnj se, to zle na tom, co dl. Pokud ti nevad lovit mutanty, bude mt spoustu monost. Stav se v podzem Janova a ptej se na Pastike - dv slun prachy za likvidovn mutant, ale neme jt odstelit prvnho okla, kterho potk, a ekat odmnu. Pastik ti d zakzku na urit potvory, kter dlaj problmy pi sbrn artefakt, nebo lezou na msta, kam se stalkei schovvaj ped emisema. + + + Chlapi jako ty chodj do Skadovska za Fousem. Nabz celkem slun prachy za artefakty... ale nco ti eknu, smysl pro keft m nulovej. Nechce se o sv zisky podlit s mocnejma lidma... a to se mu brzo hnusn vymst. Chpe? + + + Pokud potebuje prachy, stav se za Hejkalem. Keftuje se vm, co chlap ve Skadovsku potebuje - informace, bouchaky, co t napadne. Jestli m nco horkho a cennho, jako je dokument nebo PDA njakho stalkera, dothni to Hejkalovi a dostane prachy. Taky me vydlat slun prachy, kdy bude plnit jeho osobn zakzky. Prost se ho zeptej, co je poteba udlat. + + + Ml by ses stavit za Gontou. Se svou partou vyprv zajmavej pbh. Nedvno se u Zatonu objevila chimra, tak Gonta se svejma lidma vyrazil za n. Rozdlili se do dvou tm, aby tu bestii vystopovali a poslali jednoho lovce hledat hnzdo upr. Kdy chimru konen vymuchali, bylo jich celkem mlo, tak pibrali dalho stalkera Strake. Nevm, co se tam podlalo, ale vtina lid tvrd, e Strak prsknul do bot, jakmile chimru zahldnul. Gonta se odtamtud sotva dostal, jeden z jeho chlap je vn zrannej. Ale chimra tam furt pobh, take Gonta hled chlapy, kte by mu s tm pchli. + + + To je snadn, pokud chce podn prachy, mus za Sultnem. To je mstn boss, take pokud nejse ostchavej, nco ti dohod. + + + Pokud se dobrej stalker, teda jestli um hledat artefakty, pokecej s Fousem. Je tady celkem uznvanej. Jedinej chlap ve Skadovsku, kterej ti d za artefakty dobrou cenu. M kontakty na paerky, kter je vynesou ven ze Zny. Krom toho je to dobrej chlap... vdycky ochotnej poradit, nebo dohodit njakou fuku. + + + Ve Skadovsku je pekupnk jmnem Hejkal. Nen to moc fajn chlap. Furt si stuje, jak vechny artefakty konej u Fouse a ne u nj, ale pokud potebuje prachy, stav se za nm, teba ti nco nabdne. Ten hajzlk nekeftuje jen s munic. Taky ti me nco prozradit, prodat, koupit od tebe, nebo ti zaplatit za vci, kter ho zajmaj. Najde ho na druh pedn palub. Urit se njak domluvte. + + + Me se zeptat Vana, poflakuje se v janovskm baru. Nechal se chytnout od bandit, od t doby se u tikrt zkouel vyplatit z dluh. Je zkuenej, doke najt anomlii se zavenejma oima... ale furt se dostv do njakho prseru. Pr lid mu u radilo, aby se sbalil a zmizel. Zna je moc velk, banditi ho nenajdou, ale ten vl je a moc pynej a nechce zdrhat. A lid, kter by mu byli ochotn pomoct s banditama, tady moc nenajde. + + + Vykali se na prci... Banditi jsou v posledn dob jak urvan z etzu. Uvznili Mu a chtj za nj vkupn. Ma je jeden z prvnch stalker, co se v Janov objevili, vybudoval to tady, aby se mli lidi kde schovvat ped emisema, a te, kdy potebuje pomoc, na nj vichni serou. Nem smysl ptt se Svobody nebo Povinnosti, ty maj spoustu prce se stlenm se navzjem... ale ostatn, ti by sakra mli nco udlat! Ale co se nervuju... Mova vlastn parta nev, jak ho osvobodit. Pokud jim chce pomoct, stav se za Grizzlym, najde ho v baru stanice. + + + Nitrk, janovskej technik, potebuje pracovn materily. Je dobrej s bouchakama i elektronikou, pokud to nev. Ale nkdy mu ruce nesta, potebuje sprvn materily a tak se vyptv, kdo by mu je dones. Problm je v tom, e bezpen msta u jsou vybran a zbytek je moc nebezpenej. Nitrk douf, e najde nkoho ochotnho riskovat, ale urit za to dobe zaplat. + + + Strejda Jar v janovsk stanici prej hled mlo zvdavho stalkera, kterej by mu s nm pomohl. Nevm, pro se nezept svejch kmo z Povinnosti... ale je to pohodovej stak, zkus si s nm pokecat, teba se njak domluvte. + + + Hrm... Nikoho takovho neznm. + + + To bych taky rd vdl. + + + Jak to mm sakra vdt? + + + Nev o nkom, kdo by pro m mohl mt prci? + + + Na to u ses m ptal. + + + Nic novho nevm. + + + Na to u jsem ti odpovdal. + + + Dobr, dk. + + + Poteboval bych poradit. + + + Povdej. + + + Tak se vymkni. + + + Mluv. + + + Poslouchm. + + + Pomoc! + + + Vem si tuhle lkrniku. + + + Sorry, nic nemm. + + + Chpu. + + + Kam se chyst? + + + Mu jt s tebou? + + + Jasn. Vc lid, vc srandy. + + + Ne, promi. Jdu svou vlastn cestou. + + + Tak jdeme. + + + Potebuju se nkam dostat. Me m tam za njakou odmnu dostat? + + + Klidn. Kam bys chtl jt? Sta ct. + + + Souhlasm. Jdeme. + + + Zmnil jsem nzor. + + + Ne, zrovna te mm rozdlanou njakou jinou prci. + + + Jen se tak poflakuju. + + + Vlastn nikam, jen odpovm. + + + Vypadm snad, e se nkam chystm? Neekl bych... + + + Stopuju mutanty. + + + Sleduju pr sr. Svin zasran... + + + Snam se najt pr oldk. Jsou to fakt svin... + + + Povsil jsem se na partu fanatik. Bojovnci Monolitu, mon je zn... + + + Snam se dostat pr zombi. Je jich tu jako krys... + + + OK. Bude to stt + + + Vak to zn, zmnil jsem nzor. + + + Tolik nemm. + + + Ou, asi nic. + + + Sleduju nkolik mutant. Nkdo jim mus ukzat, kam pat. + + + Pronsleduju nkolik mstnch zloinc. + + + Vyel jsem si na lov oldk. Mus splatit sv dluhy. + + + Chci dostat ty lence z Monolitu. + + + Chci najt pr lid, kte mi dlu. + + + Prv te nedlm nic. + + + Lovm mutanty, snam se to tady od nich vyistit. + + + Mm prci, sleduju skupinku bandit. + + + Mm clem jsou oldci. Jdu po jejich stopch. + + + Jdu po band z Monolitu. + + + Pronsleduju ty svin ze Svobody, u te jsou z nich mrtvoly... + + + Ptrm po artefaktech. + + + Nesbrm tady houby... sp artefakty. + + + Hledm artefakty. + + + Mm nameno k anomlii Hok, k t vedle leska. + + + Vyrm k severnmu jezeru... na chvli zmizm z poloostrova. + + + Mm za severn jezero le tam slun tboit. + + + Mm do les za severnm jezerem. + + + Mm nameno do leska zpadn od pily. + + + Mm nameno ke kopci zpadn od bainy. dn z bahennch pn se tam ke mn nedostane. + + + Mm k vyslac stanici. Na zpad od n le pkn msteko. + + + Mm nameno do les zpadn od Dubovic... klidn poj se mnou, spolenost mi nevad. + + + Do leska mezi eleznm lesem a dlnami + + + Smrem k velkmu mostu... vchodn od nj pr le bezpen a klidn msto. + + + K parkoviti jin od starho lunu + + + Nic zvltnho, jen prochzm. Chystm se utboit na kopci vchodn od Skadovska. + + + K lesku mezi Izumrodnojem a erpac stanic. + + + Ke kiovatce nedaleko tovrny na zpracovn odpadu. + + + K anomlii Hok. + + + K loveck stanici. Nachz se tam nkolik budov, asi jsi je u vidl. V jedn z nich jsou i pece zajmalo by m, co se tam vlastn dlo. + + + K lesku zpadn od vyplenho statku + + + K lesku vchodn od anomlie Hok + + + K pahorku jin od vyplenho statku + + + K malmu lesku jin od vyplenho statku + + + Mm nameno na zpad od Skadovska... tam, kde kon potrub. + + + Mm nameno na msto asi uprosted cesty mezi Skadovskem a rpac stanic. + + + K bainm nedaleko starho lunu + + + K potoku nedaleko anomlie Jizva + + + K erpac stanici. + + + K rokli Dubovice + + + Chci hledat artefakty v anomlii Pat. + + + Mm ke kopci zpadn od anomlie Hok. + + + K anomlii elezn les + + + Jdu hledat artefakty do anomlie elezn les. + + + Jdu do bain. Jasn, v tch vparech se nebude dchat nejlp, ale artefakty za to stoj. + + + Jdu do dlen rozvodny. Nkdo mi kal, e se tam d dobe skrt ped emis, take to vyzkoum. + + + Asi zn nedalekou pilu a pesn tam mm nameno. Chci se podvat, jestli tam nenajdu nco zajmavho. + + + Myslel jsem, e bych si na chvli odpoinul tady v letovisku Izumrudnoj. Urit je to krsn msto... pro masorav divoky! Ha Ha! Stejn si myslm, e se tam na chvli utbom. + + + K mostu. Myslm, e na map se jmenuje Most Peobraenskho. + + + K rpac stanici. Vsadm se, e se tam jet d najit pr cennost. + + + Ke starmu lunu. + + + Chci se porozhldnout na vyplenm statku, mon by se tam mohlo objevit pr artefakt. + + + K jin ploin + + + K de u erpac stanice + + + Mm nameno k vyslac stanici Krug musm najt bezpen msto, na kterm bych se mohl skrt ped emis. Bohuel tam ale nejsp narazm na spoustu per. + + + Mm nameno k vyslac stanici Krug musm najt bezpen msto, na kterm bych se mohl skrt ped emis. Bohuel tam ale nejsp narazm na spoustu per. + + + Chci se podvat za artefakty blzko Dubovic. Doufm, e okli se zdr v ztoce. + + + K ump... vak v, tovrn na zpracovn odpadu. Ped emis jsi tam v bezpe jako nikde jinde. + + + Mm nameno k lodnmu molu na severnm jezee. Jakmile se tam dostanu, uvidm, co dl. + + + Chci se dostat k dokm s jeby. Pr je to pkn msto k tboen. + + + Chystm se hledat artefakty v anomlii Hok. Doufm, e mj oblek tuhle krtkou tropickou dovolenou peije. + + + K anomlii Jizva + + + Chci si vyzkouet, jak moje vybaven doke vzdorovat ohni a navc se porozhldnout po artefaktech. Proto mm k anomlii Cirkus. + + + K loveck stanici + + + Chystm se utboit u evenka. Je tam klid od emis a mutanti to tam s toky maj sloitj. + + + Chystm se utboit u evenka. Je tam klid od emis a mutanti to tam s toky maj sloitj. + + + Chci se dostat k dokm s jeby. Pkn msto na tboen. + + + Chci se zbavit sv koisti a dt si pr piv. Proto mm do Skadovsku. + + + Mm k vojenskmu kontrolnmu bodu vedle tovrny Jupiter. + + + Ke skladiti kontejnr + + + Mm nameno na nenpadn msto mezi skladitm kontejnr a jinm tunelem. + + + Do stanice Janov. Konen si odpoinu. + + + K tunelu severn od vesnice Kopai. + + + Mm na opravdu stran msto, do vesnice Kopai. Nebo sp k tomu, co z n zbylo. Pro jistotu jsem pibral nkolik antiradianch ppravk a munice navc, asi je budu potebovat. + + + K cementrn. Ml bych tam mt dobr rozhled a nikdo se ke mn neme piplit. + + + K cementrn. Porozhldnu se v suternu. + + + K rozvodn nedaleko Janova + + + Mm na jedno msto nedaleko jinho elezninho tunelu. + + + Mm k chladicmu zazen nedaleko tovrny Jupiter. + + + Mm ke komplexu Volkhov, ulovm si pr zombie. + + + Do bunkru, toho v komplexu Volkhov. + + + K anomlnmu lesku nedaleko lomu. Mon tam najdu pr artefakt. + + + Jdu k lomu, zstalo tam pr dodvek stavebnch dlnk. + + + Mezi lomem a stanic Janov je jedno takov msteko, na kterm bych se na chvilku ukryl. + + + Mm k vchodnmu tunelu, prochzejcmu pod tovrnou Jupiter. + + + K anomlii Asfalt. Aspo zjistm, jestli je mj oblek ruvzdorn. + + + Jdu hledat artefakty k anomlii Blata. Sehnal jsem si njak protijedy, bohuel m asi nemine setkn s perami. + + + K ventilanmu zazen mezi tovrnou a skladitm kontejner. Pro? To kdybych vdl... + + + Mm do dlen v Jupiteru. Mon tam zjistm, pro m to msto tak patnou povst. + + + Jdu na sam dno lomu. Stalkei kaj, e se tam d najt mnoho artefakt. + + + Na parkovit, na kterm stoj spousta starch aut. Snad v elektrickch anomlich najdu njak artefakty. + + + Mezi komplexem Volkhov a skladitm kontejner je jedno pkn msteko a pesn tam mm nameno. + + + Do bunkru vdc + + + K chladic vi severozpadn od stanice Janov. + + + Smrem k tovrn Jupiter, ale nemm v plnu jt dovnit. Porozhldnu se po administrativnch budovch a pak se uvid. + + + Jdu k anomlii Popelit, nachz se za vesnic Kopai. + + + Mm do dlen Jupiteru. dajn v t oblasti spadl vrtulnk, tak bych ho rd prozkoumal. + + + Mm k polorozpadlmu vlaku stojcmu mezi komplexem Volkhov a parkovitm. + + + Mm k jinmu tunelu, abych byl v bezpe, kdyby pila emise. + + + Mm k jednomu mstu mezi Janovem a vesnic Kopai. + + + Mm k jednomu mstu nedaleko kanlu, jin od cementrny. + + + Mm na jedno msto blzko kanlu, severn od tovrny Jupiter. + + + Chystm se prohldnout si lom. + + + Chystm se prohldnout si lom. + + + Chystm se prohldnout si oblast severn od Janova. + + + Smrem ke komplexu Volkhov. Mezi komplexem a vesnic Kopai je jedno pkn msto pro rozloen tbora. + + + Ale, jen tak prochzm... Jdu smrem ke skladiti kontejner. + + + Snam se zmapovat oblast. Zrovna se chystm zjistit, co se nachz jin od vojenskho kontrolnho stanovit. + + + K heliportu, tomu mezi tovrnou a skladitm kontejner. + + + Jdu na jedno msto u eleznice, jin od stanice Janov. + + + Na msto severn od stanice Janov + + + Do anomlnho lesku + + + Na jedno msto jin od AA komplexu + + + K chladicmu baznu hned u betonovch lzn + + + Chystm se prozkoumat okol tovrny. + + + Chystm se prozkoumat okol tovrny. + + + Na dvr za prdelnou + + + Do prdelny, nejbezpenjho msta v okol. + + + Do nemocnice. Doufm, e po cest nenarazm na ty lence z Monolitu... + + + Do knihkupectv... Slyel jsem, e se v nm d dobe schovat ped emis. + + + Chci se podvat na mstn atrakci symbol Ptelstv nrod. Nachz se nedaleko knihkupectv. + + + Do starho obchodu s potravinami. Sice u tam neprodvaj erstv chleba, ale jako kryt ped emis poslou dobe. + + + Do Beryozky + + + Ke star matesk kolce + + + Na nmst ped kinem, pobl Promteova monumentu + + + Mm ke koln budov. Slyel jsem, e se hem monstry, ale pome v ppad, e se objev emise. + + + Mm ke starmu servisu. V prvnm pate by mla bt anomlie a snad i njak artefakty. + + + Rozhlm se tady. Zrovna mm nameno do starho potravinstv. + + + Rozhlm se tady. Zrovna mm nameno do starho potravinstv. + + + Prozkoumvm oblast. Zrovna se chystm projt tu budovu za ubytovnou. + + + Chci se porozhldnout po centru veejnch slueb. Myslm, e se tomu kalo Jubilejnyj. + + + Hledm tady njak anomlie. Slyel jsem, e na dvoe, na zpad od kolky, je ohniv anomlie. + + + le, jen prochzm mstem. Zrovna mm nameno k ubytovn. + + + le, jen prochzm mstem. Zrovna mm nameno k ubytovn. + + + le, jen prochzm mstem. Zrovna mm nameno k ubytovn. + + + Jenom se tak potuluju, zrovna mm nameno k pstavu u eky. Doufm, e nenarazm na ty fanatiky z Monolitu. + + + Hledm njak msto v Pripjati s frou artefakt, kde nenarazm na monstra a bojovnky Monolitu... Hehe... Te vn, jdu se podvat na jednu anomlii jin od pstavu, o kter jsem slyel. + + + Smrem ke kinu Promteus. + + + Na nmst ped kinem, pobl Promteova monumentu. + + + Chci se jen na chvli ukrt a popadnout dech. Severn od kolky je jedno klidn msteko, kter by k tomu mlo bt ideln. + + + Jin od ubytovny. + + + Mm na jedno msto mezi kolkou a ubytovnou. + + + Existuje takov msto - lidi mu kaj Jizva - na kterm zem vypad, jako by do n nkdo zasekl sekeru. Lid tam nali artefakty, ale jakmile tam vstoup, zanou se dt divn vci. Ta vc ti vleze hluboko do mozku a skoro zapomn, e m dchat, nato odtamtud rychle vypadnout. + + + V, kde je erpac stanice? Je napjena gravitanmi anomliemi, pro zkuenho stalkera to ale nebude problm. Sta, kdy bude hzet rouby jako obvykle. Naraz tam i na radiaci, venku i uvnit jako bys prochzel kolem obrovsk kupy obohacenho uranu. + + + Mme tady starou rozvodnu, kter se nkdy k elezn les. Pochop, a to msto uvid. Mstn kaj, e po pchodu emise tam nali hromadu artefakt. Nen to zas tak nebezpen, jen trochu radiace a hlavn elektrick anomlie... Pohybuje se tam i nkolik pzrak, a pokud se ped nimi okamit neukryje, je po tob. + + + Prce? Abych byl upmn, o dn nevm. Ale pokud chce vypomoci Svobod, zajdi za nam fem do Janova. Jdi do vchodnho kdla a ptej se po Lokim to je on. Pamatuj, e pokud v v pokrok lidstva, ve vt uvdomn a vznam dar Zny, rozhodn nebude zklamn. + + + Netum. Ale pokud najde nco, co nm pome v naem boji proti Zn a tm, kte se domnvaj, e je to spe dar ne proklet, zajdi za velitelem expedinch jednotek Povinnosti, jmenuje se podplukovnk ulga. M na starost stanici Janov a najde ho v severnm kdle. Jedno vm jist dnho civilistu, kter pome Povinnosti, nemine slun odmna. + + + Vichni mluv o njakch divnch vcech, kter se dj ve star chladic vi. Pokud si nalad bnou frekvenci, me zaslechnout trky voln o pomoc, zn to jako by se njak mrzk snail dostat z anomlie. Pokud se zept na souadnice, nikdo se neozve. Nejdivnj na tom vem je ten zvuk. To ruen snad ani nejde popsat... + + + K mstu na pl cesty mezi Skadovskem a evenkem. + + + Do Jupiteru. Nejsp ale nepjdu moc hluboko dovnit. + + diff --git a/gamedata/configs/text/cze/st_dialogs.xml b/gamedata/configs/text/cze/st_dialogs.xml new file mode 100644 index 0000000..7b0fed8 --- /dev/null +++ b/gamedata/configs/text/cze/st_dialogs.xml @@ -0,0 +1,978 @@ + + + + Hele, ml bych dotaz... + + + Tak to vybal. + + + Co si mysl o iperovi? + + + O iperovi? Jednoho krsnho dne si toho kokota odchytme i se zbom, odvedeme si ho na k tich msto a pkn mu zvalchujeme zda! + + + Nev nco o Oze? + + + J, to je poveden historka. V zsad jde o to, e borci ze Smeku si vymysleli pbh o Oze a dali si sakra zleet, aby byl uvitelnej a aby obsahoval i popis cesty. Pak se posadili na zadky a hezky ekali. No a co se nestalo? Napochodovalo jim tam tolik dvivejch mamlas, e kdy je vechny vokubali, byli v balku a odeli ze Zny. Kdo by se jim divil? Jsou na celej ivot zajitn. Zstal tu jenom jeden z nich, jakejsi Jogn. + + + e kdy tam pijde, doista se uzdrav ze veho. Zn to celkem slibn - kdybych u neml kocoviny ani hemoroidy, to bych si nechal lbit! Najdi Ozu, zai si tam lzn a jsi vysmtej. + + + Pro bych o n ml nco vdt? Jsou to jenom vsty pro debily. Pravej chlap takov povin nev. Si to pedstav... sed si takhle v hospod s pkn vychlazenm kouskem, kolem tebe se vanj stalkei a dohadujou se, kde ta Oza vlastn je. Kadej z nich psah na vlastn babiku, e na tom mst byl... ale kde pesn to m bejt, to se z njakho dvodu neshodnou. + + + Nezn njakho Strake? + + + Ale jo... stail mi jeden pohled, abych poznal, e je to totln vl. I mezi stalkerama se o nm povd, e je totln vl. Ale kde ho najt, to fakt nevm. Jestli t tak zajm, bude si ho muset najt sm. + + + Ne... jsi prvn, od koho to jmno slym. + + + Nev, kdo mi mohl ukrst vci z osobn skky? + + + Leda krysa. Ml by ses optat papal na Janov, ty jsou v loven krys fakt dobr. + + + Kdo by dokzal deifrovat njak data? + + + No, prej e Nitrk z Janova je dobrej. Kdy jet nepracoval pro Povinnost, nai chlapi si u nj prkrt nechali hacknout PDA cizch stalker... J, star zlat asy. + + + M se na tyhle vdeck sraiky neptej, fiku. Radi si see hackera. Pr let jsem el sedl a jednoho jsem potkal v lochu, ale krom nj dnho neznm. Kdy m pustili ven, jemu pod jet zbejval br... + + + Mm PDA toho obchodnka z Povinnosti. Kdo by o nj mohl mt zjem? + + + Na Skadovsku bydl obchodnk, kaj mu Hejkal. Plat fakt slun a chlapi mu as od asu stelej i njak to PDA. Nem dn vlezl otzky, to se taky cen. + + + Prakticky kdokoliv, kmo. Vdy si to vem: lidi z jeho vlastn frakce by toho sre pohbili zaiva, ostatn frakce by spustily solidn rotyku, akort Hejkal na Zatonu doke zadit, aby to PDA zmizelo. S tim rozdlem, e jenom Hejkal bude vdt, kde se to PDA zase objev... volba je na tob. + + + Kde se tu d sehnat nad? + + + Jestli potebuje chirurgick nin, prolezl bych nemocnice a zchranky. Jestli potebuje stavask nad, mrkni se do lomu u Jupitera. No a jestli potebuje klet, kladiva a tak, prohledej njakou dlnu. + + + Pro bych to jako ml vdt? Doku ze stalker vytskat prachy i bez nad, sleduj... Kldek, jenom si dlm prdel. + + + Kdo um odblokovat pamov modul? + + + Dobr otzka! J jsem toti mstn specialista, e jo? Ha! Jse blbej, vole? Poptej se u njakejch vdc nebo technik... pece vn nev, e bych se v takovch vcech vyznal. + + + eknu ti to takhle: naposledy, co jsem odemykal pamovej modul, byl jsem jet na zkladce a ten pamovej modul byla taplpalcov disketa. S timhle b votravovat jin experty. + + + Kdo by se dokzal vloupat do ocelovho kontejneru? + + + Zn Kardana ze Skadovsku? No tak ten se onehd ztskal, popadl pidlo a zaal po cel lodi honit jednoho magora. Jak ale znm Kardana, dokzal by to pidlo pout i k uitenjm elm. Teba by i vylomil sejf. + + + Se sprvnm vybavenkem bych to zmknul teba i j, ale kdo m sebou do Zny tahat nad? Zajdi za technikama, vole, ty jsou v takovch vcech dobr. + + + Shnm jistho Pahejla. Nev, kde bych ho mohl najt? + + + Co j vim. Optej se na Skadovsku u Sultna. Takovej boss bude vdt, kde m sv potlouky. + + + Jo, o tomhle hovadu u jsem slyel. Normln se vomet kolem Zatonu, take tady ho nehledej. + + + Nev nic o tch zcench vrtulncch? + + + Koho by mohly zajmat informace o zakladateli Povinnosti? + + + A koho by takov echo nezajmalo? M vzntliv informace, kamarde, nejrozumnj bude obrtit se na Hejkala ze Skadovsku. Tak si vydl pkn prachy, ale zrove si nenadl neptele. + + + Ne. Vij se do m ke: nalevo mm Povinnost, napravo Svobodu, za prdel stalkery. A ty ek, e budu sledovat oblohu? + + + Hoi kali, e njakej vrtulnk se zamotal do drt v eleznm lese. Jenome tam naraz i na kopu jinch vc... dv nebo pozdjc vleze do anomlie nebo ti poltergeist rozmzne lebku. + + + Jo, pr chlap vidlo, jak se jeden vrtulnk ztil na ploinu. Vtip je ale v tom, e tam nevede dn cesta. Ten vrtulnk prej letl divn ejdrem, skoro jako kdyby si pilot nco lehnul. + + + Slyel jsem, e jeden vrtulnk si chtl hrt na ponorku a vihnul to sebou do bain. Jak se dalo ekat, daleko nedoplul. A voda z bain taky nen zrovna dobr na zdrav - jedy, chemiklie a dal sraky. + + + Nepohybuje se tu armda? + + + Kdo by mohl mt zjem o mapu mst mezi Zatonem a Jupiterem? + + + Navigtor, si myslim... je to tady v okol hlavn prvodce. Bylo by fajn, kdyby ml i njak mapy a nedil se pod jenom hvzdama jako te. + + + Chlapi prej vidli drustvo vojk, jak si to ine z jin ploiny pmo smrem k oldckmu tboru. Bylo jim jasno, e tam se zanou vci srt, a tak radi vypadli pry. + + + Nkdo mi vyprvl, jak se banda vojenskch dutohlav snaila vytahat svj vercajk z vrtulnku, co se jim zaboil do bain. Si to pedstav: pt hoan v uniformch poskakuje v mole a sna se neupinit... ti museli nadval tak, e by se i nmonk stydl. + + + Jeden borec mi povdal, jak sledoval jistho stalkera, aby ho potom mohl okubat. Najednou zaslechl vstely a tak. Ukzalo se, e armda tam bojuje se oldkama. Borec zalehl a pekal pestelku, jenome ten stalker mu mezitim vzal roha. Smla, co? + + + No, jeden kmo zail docela srandovn scnu. Pedstav si tu lo, co m na palub mlejn, a ped n si to rzuje Noe, celej rozplenej, na plnou hubu nadv. Deset vojcl couv a sna se uklidit co nejdl od nj. Kmo se tenkrt pkn zasml, pak je zas nechal svmu osudu a odeel. + + + Ne, tady to bejv dost oemetn. Vude chlapi s nabitma pukama a dal srandy... nemm as zkoumat, kdo z nich pat k armd nebo kdo pro zmnu k Povinnosti. + + + V, jak se d dostat do Pripjati? + + + Koho bych si mohl najmout na ochranu vdc? + + + He he, j a chlapi ti rdi posloume! Zadme tm vdcm takovou ochranu, jakou jet nezaili! Stalkei a mutanti budou posran a za uima, vichni se vdcm budou vyhejbat obloukem! Zacluje kadej tejden na ruku a jsme dohodnut. Nezapome na vnon pplatek! + + + Pky, kmo. Hezky se projdi do Jupiteru a zeptej se tam, protoe ze Zatonu do Pripjati dn pm cesta nevede. To je vdecky dokzno. + + + Hele, vole, vypadm snad jako njakej zasranej prvodce? Mm na ele vytetovno Zde se mete ptt na kokotiny, nebo co? B se optat Navigtor, ten je za takov odpovdi placenej. + + + Ne... beztak bych tam neml co dlat. Nejsou tam stalkei, co by se dali okubat! + + + Me mi doporuit nkoho, kdo tady nem pli zvazk a chtl by vyrazit do Pripjati? + + + Pripja neni msto pro lidi, jako jsme my. Vdy si to vem, sam mutanti a anomlie... teda stejn jako ve zbytku Zny, s tm rozdlem, e tam nen koho okrst. A se do Pripjati naskujou stalkei, dej nm echo a my tam dorazme, abysme zachovali pirozenou rovnovhu. + + + Nemm tuen, kmo. Sorry. + + + Nael jsem divnou puku. Nev, kdo by o n mohl nco vdt? + + + Bejt tebou, zeptm se technik. Je to jejich prce, vyznat se v takovch vcech, ne? + + + Co j vm. Na Skadovsku maj njakho Cardana, prej je to technickej gnius a kdesi cosi. Zeptej se teba jeho... i kdy podle m je to jen starej orala. + + + Kde by se dal najmout nkdo, kdo by vdcm pomohl s menm? + + + To je snadn - sv to naim chlapm. Teda ne e by vystudovali njakou kolu ani nic takovho, ale dej jim libovolnho chlapa a oni mu vezmou mry odshora a dol. A si ho namej, u sta jenom vykopat pknej hrobeek, a to taky zvldneme! + + + Nael jsem zvltn artefakt. Doporuil bys mi kupce? + + + Tak zvltn artefakt, povd? To se na to podvejme... Podej mi ho, a si ho mu prohldnout... Ha, kldek! Dlm si prdel. Ale bejt tebou, tak to moc neukazuju. Ne kadej m takovej smysl pro humor jak j. + + + Ty si v, kdy tady tak mv artefaktem. Respekt. Take ti poradm: chlap, kterho potebuje, se jmenuje Fous a sdl na Skadovsku. Nikdo nev, jak pauje artefakty ze Zny, ale koup od tebe prakticky cokoliv. + + + Nedaleko odsud jsem nael hnzdo upr. Co budeme dlat? + + + Ech, mme snad na vbr? Vypadneme odsud, to udlme! + + + Zapome, e jsem nco ekl. + + + Ml bych jednu otzeku... + + + Ptej se. + + + Co si mysl o iperovi? + + + O iperovi? Toho neznm. Mon je v jinm drustvu, ne? + + + Neslyel jsi nco o Oze? + + + Stalkerovsk pohdka. To jsou cel stalkei: vymlej si poviny, potom jim sami uvej a zanou je hledat! Bejt tebou, prost to pehlm. Tyhlety bchorky jsou nakaliv: uv jedn a zanedlouho bude vit, e Plni pn doopravdy existoval. + + + Mysl to msto, kde se vechny rny zzran hoj a kde se ti magicky obnov veker energie? Mm pro tebe novinku, kamarde: nic takovho neexistuje. Stalkei si to vymysleli, aby Zna nepsobila tak nebezpen. Krut realita se m tak, e v Zn dn bezpen msto nenajde. Dvej si pozor a za kadch okolnost zsta pi zemi - snlci tady v Zn dlouho nepeijou. + + + Jasn. Nachzej se tam hromady artefakt, kter se vyvaujou zlatem, a navc ti ltaj prakticky samy do huby, zatmco ty se vl v bahn a nech se masrovat... to byl vtip, mimochodem. J na Ozu nevm, i kdy by to bylo pkn msto. Dala by se tam postavit nemocnice, kde by nemuseli bejt dn doktoi. Lidi by prost pili a automaticky se uzdravili. Ty vole, to je let. + + + Nepotkal jsi stalkera jmnem Strak? + + + Mm co dlat, abych si zapamatoval jmna lid z Povinnosti, a ty se m pt jet na stalkery? Maj zkladnu na Skadovsku, zeptej se tam. + + + Nepotkal. + + + Nev, kdo mi mohl ukrst vci z osobn skky? + + + Ha, vid? Na zkladn Povinnosti by se nic takovho stt nemohlo, ale tady se to hem hovadama ze Svobody. Ptrej mezi nima. + + + Kdo by mi mohl pomoct s deifrovnm dat? + + + Na janovskm ndra maj technika, jmenuje se Nitrk. S elektronikou je fakt dobrej. Kdysi jsem zapomnl heslo od svho PDA a on ho hacknul bhem pti vtein! + + + Zajdi si do Janova. Tam se poptej po Nitrkovi, ten je na tohle machr. + + + Mm PDA toho obchodnka z Povinnosti. Kdo by o nj mohl mt zjem? + + + Obchodnka z Povinnosti? To nen mon! No ale jestli pece jenom m njak info, ml bys ho pedat podplukovnku ulgovi. Ten u si s tm porad. + + + Kde se tu d sehnat nad? + + + Kousek odsud je cel tovrna. Te u samozejm bude dost vybrakovan, ale stejn by ses mohl podvat do jejch sklad. + + + Bejt tebou, zanu u oputnch dlen. Nco by se taky mohlo najt v obchodech. + + + Tady nemme nic ne anomlie a mutanty. Cha! Do anomli bych se radi nedval a bjurei s kontrolorama ti taky dn nad neprodaj! + + + Te jsi mn pipomnl, e tady kousek pod mostem stoj vlak. Takov vlaky jsem vdal u dv, cestujou v nich technick specialisti. Teba najde njak nad tam. + + + Kdo by zvldl odblokovat pamov modul? + + + Nitrk - to je jedinej chlap na janovskm ndra, kterej se v takovch vcech vyzn. + + + To se bude muset optat technika. A jedinej uchzejc technik iroko daleko je Nitrk z Janova. + + + Kdo by se mohl vloupat do ocelovho kontejneru? + + + Prej e stalkei maj njakho technika. Chlast jako Dn, ale ve sv prci se vyzn. Zkus to u nj. + + + Cha, to je jako kdybys to na m zkusil s trezorem. S ocelovou srandou si neporad urit ani Nitrk... leda by mla elektronickej zmek, to by pak byla jin. + + + Hledm jistho Pahejla, pat ke stalkerm. Nev, kde by byl k nalezen? + + + Pro se nezept stalker? Vechny svoje lidi znaj. O Hejlovi, nebo jak se to jmenuje, jsem nikdy neslyel. + + + V nco o tch ztroskotanch vrtulncch? + + + Kdo by ml zjem o informace tkajc se zakladatele Povinnosti? + + + Urit n velitel. Nahlas vechno, co v, ulgovi a vyslou si vdk cel Povinnosti. + + + Jo, nai przkumnci zahldli vojenskou helikoptru, jak se sna pistt na ploe za Jupiterem. Prej se jim snaili signalizovat, aby zmnili kurs, ale pilot ml asi pln ruce prce s nim jinm. Doufm, e se ti bagouni v pohod dostali pes to minov pole. + + + Tady nic nevme. Mme celkem omezen zprvy... zkus se zeptat naich lid u Janova. + + + Jedna nae hldka nahlsila, e jaksi vojensk helikoptra se pokouela nouzov pistt na ploe u Jupiteru. Bohuel se nepovedlo a vrtulnk proltl stechou pmo do tovrn haly. Nemohl to nikdo pet - a nae hldka po nehod nezachytila dn nouzov voln. + + + Nevidli jste tu njak vojky? + + + Kdo by mohl mt zjem o mapu mst mezi Zatonem a Jupiterem? + + + Nkdo, komu by se hodila. A te narm na Navigtora - dl tu prvodce na cest mezi Janovem a Skadovskem. Ty mapy by mu urit pily vhod. + + + Vojky? Tady jsem dn nevidl. Je ale pravda, e v thle mstech moc asu netrvme. + + + Nedvno jsme vidli mrtvolu vojka v minovm poli. Nejsp patil k tm tpkm, co se ztili v tom vrtulnku. Do mainy se vejde a osm lid plus posdka a ti se logicky museli njak dostat pry. Nikdo si ale neviml, kam li. + + + Jeden cpek v uniform vyizoval cosi s vdci v bunkru. Piel teprv nedvno. Vc nevm. + + + Nedvno jsme vidli njakho vojka, jak vchz do budovy pobl protiletadlovho komplexu Volchov. Je ale celkem mon, e to byl jenom zombk v uniform. + + + Stalkei se s jednou vojenskou jednotkou potkali u Jupiteru. Podle popisu to vypadalo na vsadke. Doprovzel je neznmej stalker a mli nameno k Pripjati. Popis zn celkem spolehliv, ale z vlastnch zkuenost vm, e podobnm historkm se ned moc vit. + + + V, kudy se d dojt do Pripjati? + + + Koho si mu najmout na ochranu vdc? + + + Nikdo neposkytne lep ochranu ne Povinnost. B se do Janova domluvit s podplukovnkem ulgou. Urit to njak vymyslte. + + + Kdepak. Sice pro n pracujou lidi ze Svobody, ale mi se do toho nehodlme plst. Celej den poslouchat, jak ti idioti melou jednu hovadinu za druhou... to u je lep umt. + + + Povinnost nem zatm dn dvod, pro hledat cestu do Pripjati. Ale stejn hromadme informace. Mme teba nepotvrzen zprvy, e zpod Jupitera vedou pmo do Pripjati podzemn chodby. Jenome ovit tyhle informace, to by vyadovalo dkladn prozkoumat kadou p tovrny. + + + Ne. Jestli shn podobn informace, bude si muset promluvit s civilnm prvodcem. Nai przkumnci maj sv prce a po hlavu. + + + Nai przkumnci prbn hledaj bezpen cesty do Pripjati, ale zatm bezvsledn. + + + Mohl bys mi doporuit nkoho, koho tady nic nedr a kdo by chtl vyrazit do Pripjati? + + + Povinnost m v thle oblasti omezen monosti. Zeptej se naich na Janov. + + + uk se, e u vdc v bunkru bydl i njakej typan od armdy. Zkejsnul tam a nem se jak dostat pry. Vdci toti slou termny na dvanct a osmnct msc, ti s nim nepjdou, a on se nezvedne a nepjde pky sm a na okraj Zny. Zeptej se ho, teba by el s tebou . + + + Zkus se poptat mezi lidma, co touej po dobrodrustv. Napklad na janovskm ndra ije jeden stalker, jakejsi Vo. Je mu jedno, do jakho prseru se zase dostane, a teba by mohl bejt i uitenej - je to frajer, doke najt cestu skrz anomlii klidn i se zavenma oima. + + + Uspodej nborovou kampa v stavu pro duevn chor... A nebo bych pro tebe ml lep alternativu - bojovnci Monolitu. Co mi pipomn, nedvno jsme jedno jejich drustvo zahldli pobl protileteck zkladny. Ti nejsp budou znt cestu do Pripjati... Hele, vole, doufm, e m nebere vn. + + + Poptej se po dobrovolncch u ns v Povinnosti. Co teba Tulk? Tomu jet nepidlili misi, tak by ho podplukovnk mon mohl poslat s tebou. + + + Oba dva vme, e nejlep bojovnky najde u Povinnosti. Bohuel, v tuhle chvli mme jin starosti. + + + Nael jsem zvltn puku. Nezn nkoho, kdo by o n mohl cokoliv vdt? + + + No maucta! To je podn dlo! To sis vyrbl sm, nebo jsi to vn nael? Nic podobnho jsem jaktiv nevidl... no, zeptej se u technik. + + + Koho bych si mohl najmout, aby provdl men pro vdce? + + + To je blb otzka - Povinnost, jak jinak. Mme spoustu zkuench chlap a s vdcema jsme spolupracovali u dv. Zajdi za podplukovnkem ulgou. Urit pro tu prci spla njak voln drustvo. + + + Kdo by se tam chtl motat, kdy bunkr str Svoboda? Tihle zasran pacifisti jsou vtinu asu tak zhulen, e je ance tak fifty, fifty, jestli odbouchnou neptele nebo nkoho z vlastnch. + + + Nael jsem podivn artefakt. Doporu mi kupce? + + + Artefakty jsou vechny podivn. A nedoporuuju ti tahat tenhle kousek jen tak s sebou. Pedej ho znalcm a pus ho z hlavy. + + + Ml bys ho ukzat stalkerm ti se v thle hovadinkch vyznaj. A nebo jet lp, uka ho tomu lovku, komu stalkei sami prodvaj artefakty. + + + Kousek odsud jsem nael hnzdo upr. Co budeme dlat? + + + Drustva Povinnosti se momentln nevnuj klidovm akcm v thle oblasti. Hnzda budou muset pokat. + + + Jako kdybych nic neekl. + + + Posly, ml bych dotaz... + + + Vyval to. + + + Co si mysl o iperovi? + + + O tom jsem toho moc neslyel. Radi se poptej u stalker... k tm pat, nebo ne? + + + Neslyel jsi nic o Oze? + + + Ledacos... musim uznat, e historka je to pkn. Palc v pustinch, ostrov v mlze, zmek v oblacch... ambala, Eden... Oza. Kadej svobodnej lovk m nco, o em s n. Tak u to hold chod. + + + No, jeden stalker mi kdysi vyprvl zajmavej pbh. To byl myslm prvn lovk, od kterho jsem slyel o Oze. kal mi, e podle legendy se ti tam uzdrav vechny zrann, uklidn se a uvoln se, skoro jako kdybys u nebyl v Zn. Od t doby jsem ho nevidl... teprv po nkolika dnech jsem si vzpomnl, e kdysi kulhal, ale kdy ode m odchzel, tak el zpma. Jo, a taky vypadal o pknou dku let mlad. + + + Jo, stalkei mi od n dokonce dali souadnice... desatery rzn souadnice. Kdy si je zakreslm na mapu, vznikne okruh sahajc od Vypalovae a k elektrrn, zhruba uprosted pak je Janov. Je dost mon, e v Oze stojme pmo tady a te, tak si to uij! + + + Nezn stalkera jmnem Strak? + + + Kdepak. J moc svobodnch stalker neznm. + + + Strak? Ne, ale m suprov jmno. + + + Nev, kdo mi mohl ukrst vci z osobn skky? + + + Ne, takov lidi u ns nemme. Jsou tu tpci, co si z tvho chleba ukrojej krajc, kdy se nedv, nebo ti upijou trochu koalky, ale vyloen zlodje fakt ne... + + + Kdo mi me pomoct s deifrovnm dat? + + + k se, e Nitrk z Janova je machr pes rzn kombinace a algoritmy. Nejsem si ale jistej, nikdy jsem s nm nemluvil. Pracuje pro Povinnost, a tak si na ns svobodn moc asu neudl. + + + Nejsem expert pes mstn experty... A pt pjde do Janova, zeptej se tam naich. Urit ti poradj. + + + Mm PDA toho obchodnka z Povinnosti. Kdo by o nj mohl mt zjem? + + + To zn lkav! Ukzal bych ho Lokimu, to je n f. Bydl v Janov. Vak on u zad, aby se svobodn lidi dozvdli, jakou pak do svch ad pijm Povinnost. + + + Kde se tady d sehnat nad? + + + V tovrn, vole, kde jinde? Nen tam zrovna moc ivo, ale a uvid sklady, sprav se ti nlada. Je v nich trochu bezpenjc a d se tam najt solidn vercajck. + + + To je dobr otzka, e. Zkusme se nad n zamyslet... Kde bys shnl nad, kdybys nebyl v Zn? No jestli nejsi pln vymatlanej, zael bys ho koupit do obchodu. Jestli si, vleze do njak dlny. Nemm pravdu? V Zn je to pln stejn - mus se jt nkam podvat. Jednodu u to bejt neme, stalkere! + + + Nad? Ty vole, to je njak kryc slovo? Hele, tady nemme dn chlupat, me mluvit oteven. Pokat... tys to myslel vn? Tak v tom ppad fakt nevim. + + + Slyel jsem, e jeden z naich chlap kdysi hledal nad a vlezl do toho vagnu pod mostem. Nael tam starou Teslu... jo a taky povdal, e to tam nen dn prdel... Pro ti tohle vlastn povdm? Jo, protoe tam zahldl njak nad na podlaze, ale nakonec ho tam nechal. Bylo to moc nebezpen. + + + Kdo um odblokovat pamov modul? + + + To by ml zvldnout Novikov, ten z vdeckho bunkru. Je rychlej, dobrej a zdvoilej. Pak jet v Janov sdl Nitrk, ten nohsled Povinnosti. Je levnej a neikovnej, i kdy tohle by mohl zvldnout. + + + Asi njakej zkuenej technik. Ten mstn dl sp do hejbltek a mechanism, take jestli tomu pamovmu modulu nepotebuje vymnit hlave, zkus to radi v Jupiteru. + + + Kdo by se dokzal vloupat do ocelovho kontejneru? + + + Kdosi mi kdysi doporuoval Kardana, toho ze Skadovsku. Prej e ten se ve sv prci vyzn, i kdy je vtinu asu totln narot. Teba ti s tou vloupvakou pome. + + + Mysl nkoho, kdo se vylamovnm ocelovch dve iv? V tom ppad ti mstn technik Nitrk nepome. Ten se vlamuje sp do ciz elektroniky. + + + Hledm stalkera jmnem Pahejl. Nev, kde bych ho nael? + + + To mi nic nek... bejt tebou, zeptm se jinch stalker. + + + Nev nic o tch ztroskotanch vrtulncch? + + + Koho by mohly zajmat informace o zakladateli Povinnosti? + + + Rozhodn Likoho. To je n velitel, sdl v Janov. I kdyby nevdl, co s tma informacema m dlat, pod mu je dej - hlavn je, aby se k nim nedostala Povinnost. Doke si pedstavit, jak mnostv propagandy by z toho uvaili? Bol m hlava, jen co na to pomyslm. + + + Jo. Zn tu historku o vrtulnku uprosted minovho pole? Ve strunosti jde o to, e zelen mozky sebou vihly pmo na rezervn pistvac plochu, kterou jin zelen mozky ped esti jrama podminovaly. Nkdo si mysl, e ztroskotali z ist hlouposti, ale j bych za tm hledal nco jinho. Peber si to takhle: te maj hoi v baganatch jistotu, e jim do vrtulnku nikdo nepoleze. Splnj si svou misi, jednodue se k nmu vrtj, trochu ho zaltaj a trad! Mou lett. To by m zajmalo, o co v t jejich misi jde... + + + Nejsem zdej, vm leda velk hovno. Poptej se radi v Janov - nai lidi ti povyprvj vechno, co potebuje vdt, a ndavkem ti pihodj jet vechno, co vdt nepotebuje. + + + Jo, pr chlap onehd zahldlo vrtulnk, co letl tak jako fakt divn. A pistn neml taky zrovna hladk - plcnul s sebou pmo na stechu jedn haly v Jupiteru. Prej se tou stechou proboil pmo dovnit a pak ho zasypala podn hromada bordelu. + + + Nevidli jste tu armdu? + + + Koho by mohla zajmat mapa mst mezi Zatonem a Jupiterem? + + + Kadopdn Navigtora. Dl tady stalkerm hlavnho prvodce. Jestli chce hodit e o mapch, hled jeho. + + + To chce klid, vole. Nemme tu fzly, ani bagouny, ani lidov milice a nic takovho. V Zn jse v naprostm bezpe. + + + Ne, ale chlapi mi kali, e zahldli njakou vojenskou jednotku, jak klikuje minovm polem za pistvac plochou. Nejdv jim chtli pchnout, ale pak se na n vysrali. Vojclm se ned vit, ani co by se za nehet velo. Nikdy nev, kdy jim rupne v bedn a oni t stelej do zad. + + + Sm jsem nikoho nepotkal, ale proslejch se, e jednoho zoldta maj vdci v tom svm bunkru. Ozerskij, ten biolog, povdal, e k nim piel od toho vrtulnku, co spadnul do tovrny... koluje takovej vtip, e prej si vdci konen nali pokusnho krlka. + + + Osobn ne, ale nco se povd mezi svobodnma stalkerama. Prej e zahldli jednoho vojcla u protileteck zkladny Volchov. Stopro jde o zombka nebo njakho probuzenho ducha... co mysl? + + + Ne. Jeden borec si navymejlel, e vidl sedm vojk a jednoho svobodnho stalkera, kterej je vedl houtm za rdiozvodem smrem na Pripja. Trvu u jsme v Zn nemli ani nepamatuju, take to musely bejt ist li. + + + V, jak se dostat do Pripjati? + + + Koho bych si mohl najmout na ochranu vdc? + + + Svobodu. Jinmi slovy ns. S vdcama spolupracujeme neustle, take pohldat je by pro ns byla hraka. Zeptej se v Janov naeho fa Lokiho. Urit nebude mt nic proti. + + + No nevim, e. Ke mn se doneslo, e vdtoi si najali drustvo Povinnosti, kter pro n te mak. Rdi bysme ty obrejlence pohldali, ale umt od rna do veera na ty nafoukl ksichty z Povinnosti? To nm za to nestoj. + + + Prej se tam d projt z Jupitera... jakoe z t tovrny, ne z planety! Ha ha ha! Ten se povedl, to mus uznat! + + + Nemm sebemen potuchy. Furt nemm as, abych se tam podval. Zkusil bych to v tboe u Navigtora. Je to svobodnej stalker a v thle mstech se vyzn jak nikdo jinej. + + + Brcho, kdybych to vdl, u bych tam dvno byl. Zdrhnout ped Povinnost, vojenskma a vm tm stlenm, to by bylo bjo. + + + Doporu mi nkoho, kdo tu nem moc zvazk a kdo by se chtl vydat do Pripjati? + + + Sorry, kmo. V Zatonu nikoho takovho neznm. Poradil bych ti, aby ses zeptal naich v Janov. + + + V, kde maj vdci bunkr, e jo? No, tak nedvno se jim to tam zaalo vymykat z rukou. Nejdv se Garik, ten stalker, rozhodl odejt do Pripjati a te se o tot pokou ten vojek. Garik je samot a zakld si na tom, ale ten vojk... to je pesn ten, koho hled. + + + Pro m za m zkus teba Vana z Janova. Je to fajnovej chlap a kdyby chtl, mohl by se u dvno pidat ke Svobod. Ale asi se nechce motat do rubaek s Povinnost... nebo jakejchkoli jinejch rubaek. Je to ale jeho nzor a my ho respektujeme! + + + No jasn. Pr naich chlap zahldlo dole u vyschlho jezera jakousi partu - pesn takov lidi, jak hled. Urit znaj Pripja jako vlastn boty a navc se zd, e pro nikoho nepracujou. A urit budou pkn nebojcn, jsou to toti kretni z Monolitu! + + + Jo. Tulk, velitel naich novk... pestv se mu mezi nma lbit. Jeho hoi se pizpsobili jedna bse, ale on se furt tv jak zaraenej prd. Zeptej se ho. Nerad vidm, kdy mus frovej chlap tvrdnout nkde, kde ho to neba. + + + Nemm tucha. + + + Nael jsem zvltn puku. Nezn nkoho, kdo by o n mohl nco vdt? + + + Manul u n asi pibalenej nebyl, co? Nebyl? Tak v tom ppad nevm. + + + Vdci potebuj provst pr men. Kdo by se na to dal najmout? + + + Nai hoi by to mli zmknout. Ve Svobod mme dost chytrch mozk a kdy nco nevme, zeptme se v bunkru. Milerdi posloume pro prospch vdy! Zeptej se v Janov Lokiho, urit ti ekne to sam. + + + J bych to s chlapama celkem rd namil, ale ped bunkrem te hldkuje Povinnost. Nezcvoknout z vdtor je husarskej kousek sm o sob, ale tvrdnout tam kadej den celej den, to rozhodn neme bejt zdrav. + + + Nael jsem zvltn artefakt. Nedoporuil bys mi kupce? + + + Poptej se po sbratelch, kmo. V Janov dnho nenajde, vdy sem se boj chodit i lecjakej stalker. Nejlep bude zeptat se v Zatonu, tam bejv trochu vt klid. + + + Zn Fouse, toho barmana z tbora svobodnejch stalker? Skupuje artefakty a ani t pitom tolik neokube. Milej chlap, a se na nj dv z jakhokoliv hlu. Je vn koda, e nepracuje pro ns. + + + Kousek odsud jsem nael hnzdo upr. Co budeme dlat? + + + Ty vole, mus varovat svobodn stalkery! Nkde v tch koninch maj svj tbor. iv bytosti ze Zny se sice musej ochraovat, ale tady u bych ml sp obavy o ivoty lid. + + + OK, kali na to. + + + Mm pr otzek... + + + Ptej se. + + + Co si mysl o iperovi? + + + S tm jsem jet neml tu est. Zeptej se borc ze Skadovsku. + + + Neslyel jsi nic o Oze? + + + O Oze jsem slyel pln vechno! Je to bchorka, povdaka! Kadej stalker si od n slibuje nco pln jinho a kadej zrove tvrd, e zn jej pesn souadnice. koda, e jedin vc, kterou maj vechny ty msta spolenho, je mizern pstupnost. + + + No, povd se, e se ti tam okamit zahojej vechny zrann a e bude do nkolika minut zas plnej elnu. V Oze prej zmiz kad nemoc nebo choroba, a dokonce i otrava zenm! Jedin vc, kterou si nikdo nen jist, je, kde to vlastn je. Mm ti to prozradit? Uprosted Zny! Ale tahle informace mus zstat mezi nma dvma! Nikomu ani muk! + + + Slyel jsem, e vichni mutanti, kter tam potk, kolem tebe jen nekodn projdou. Taky se tam prej nachz artefakt, ktermu se k srdce Ozy. Nikdo nev, co pesn dl, ale jedno je jist: neml by ses ho dotknout. Kdo by ho ukradnul, ten u by v Zn nikdy nenael klidu... A kde ta Oza vlastn je? Kadej pece v, e pod ruskm kolem v Pripjati! Vdy to je jasn jako facka! + + + Nezn stalkera jmnem Strak? + + + Jasn, e znm... ale kde je te, to nevm. + + + Hmm... to mi nic nek. + + + Nev, kdo mi mohl ukrst vci z osobn skky? + + + Ehm... ne? Zeptej se vetern z Janova, ti by ti teba mohli pomoct. + + + Kdo mi me pomoct s deifrovnm dat? + + + Janovskej Nitrk! Kdo jinej? Ten tyhle komplikovan technick sraiky miluje... hrabe se v nich mnohem radi ne ve zbranch. + + + Nikoho takovho neznm. Poptej se v Janov - maj tam jakhosi experta. + + + Mm PDA toho obchodnka z Povinnosti. Kdo by o nj mohl mt zjem? + + + Zn Hejkala ze Skadovsku? Ten by se na nj urit moc rd podval. Rd se sere do citlivch zleitost... + + + Na Skadovsku za Zatonem bejval tpek jmnem Hejkal. Keftoval s informacema... teba by o tv PDA ml zjem. + + + Kde se tu d sehnat nad? + + + Jeden stalker mi vyprvl, e jeho dda pracoval ped estaosmdestm na rozvodn. Prej tam mvali velijak vybaven, take bych si tipnul, e se tam d najt i nad. Dneska u nejsp bude zrezl jak prdel, ale stejn bys to tam mohl zkusit. + + + Zn tu pilu v lese na kopci? Mlo by tam bejt i njak nad, leda by ho nkdo zroval jet ped tebou. O tom ale siln pochybuju - m vc se k tomu mstu pibl, tm vt chu m nasrat si do kalhot a vzt nohy na ramena. A mus se nechat, e tam jsou i daleko dsivj vci ne jenom zen... + + + Tak Jupiter m kousek za prdel, tam urit njak nad bude. K hlavn tovrn hale bych se ale osobn moc nepiblioval... naskakuje mi z n husina. Radi to zkus ve skladech, v tch pln na kraji tovrny. + + + V Pripjati dajn existuje nkolik mst, kde se daj najt vemon technick srandy. Jednm z nich je ten starej sovtskej kolonil. Jedin msto, kde se za starejch as dalo sehnat nco uitenho. + + + Jak to jako mm vdt? Prohledej star dlny nebo obchody, tam by mohlo bejt nco pouitelnho. + + + Upmn eeno, posledn msto, kde jsem vidl solidn nad, byl Sidoroviv bunkr v Kordonu. Jasn, muselo se za nj platit, ale bylo nov a nijak zvl᚝ drah. + + + eknu ti to takhle, kmo. Nepiel jsem do Zny hledat nad. Zapoj mozek, k emu ti bude dobr radioaktivn kladivo? + + + Povd se, e rzn hejblata a srandiky se daj posbrat ve starm dom slueb. Teba tam najde i nad. Ale m to jako se vm ostatnm: jedinej zpsob, jak se dostat k tm libovm vcem, je pijt prvn. + + + Dobr otzka... bejt tebou, mrknu se do toho starho vlaku pod mostem. Neptej se pro. Ctm v kostech, e by tam mohlo nco bejt. + + + Kdo doke odemknout pamov modul? + + + Okamek... Hmm... Nitrk z Janova by to urit ml zvldnout. Krom nho u m napad jenom Novikov, ten technik od vdc. Celkem profk. Mus si ale v hlav srovnat priority, protoe Nitrk je o mnohem levnj. + + + No, potebuje technika, ale tady nemme nikoho jinho ne Kardana. Problm je v tom, e ten si po nkolika letech s flakou u huby pli nerozum se sloitou elektronikou. Bejt tebou, optm se v Jupiteru - tam na to maj odbornky. + + + Kdo by se dokzal dostat do ocelovho kontejneru? + + + Kardan ze Skadovsku. Tipoval bych. Ml bys vidt, jak se doke proezat zmkem. Radost pohledt. + + + Nejsp njakej technik, ne? Nitrk to ale nejsp nezvldne, ten je sp na jemnj prci. + + + Ha, na tohle se pt v Pripjati? Nech si poradit a zkus tst radi nkde dl od stedu Zny. + + + Hledm stalkera jmnem Pahejl. Nev, kde by se dal najt? + + + Zeptej se Fouse, toho barmana ze Skadovsku. Ten m o stalkerech pehled. + + + Pahejl? Co j vim, kudy camr. Zeptej se v Zatonu, tam trv vtinu asu. + + + Nev nco o tch zcench vrtulncch? + + + Koho by mohly zajmat informace o zakladateli Povinnosti? + + + Hodil bych e s Hejkalem ze Skadovsku, ten keftuje s informacema. Dal bych ruku do ohn za to, e spolehliv echo o takovhle legend hu zaujme. + + + Jeden z nich jsem sm vidl... ne e by se zrovna til, ale zrovna nejlp taky neletl. Mltil sebou ze strany na stranu, a nakonec pistl na t nhorn ploin za Zatonem. Mohla by bejt sranda skoit se podvat, jestli nkdo nepeil... kdybych ale vdl, jak se tam nahoru dostat. I kdy, mon by to vdl Noe z brky psychotik... + + + Slyel jsem, e pr armdnch vrtulnk sebou seklo nedaleko odsud... Lidi kali rzn vci, ale tohleto si pamatuju jasn - prej e ten vrtulnk pistl na rezervn pistvac ploe, kterou vojensk sami ped pr lety podminovali. Tomu se k ironie osudu. Kdo jinmu jmu kop, sm do n pad. Tady to m na vlastn oi. + + + Kmo mi vyprvl jednu historku... vyrazil do eleznho lesa na lov artefakt a jakmile se zanoil pod stromy, uslyel za sebou dsnou achu. Otoil se, aby zjistil, co se dje, a uvidl vrtulnk, jak se plnou rychlost t pmo na nj a cestou por story, a tak dle. Kmo to stelil kolmo do hout... se divm, e nenabhl pmo do njak anomlky. eleznej les najde bez problm, je vidt na mle daleko. Jenome se to v nm hem poltergeistema, tak si dvej podnho bacha. + + + Jeden prej pistl na jin ploin, jenome dostat se tam nahoru nen dn prdel. Ale taky jsem slyel, e kdosi nahoe na ploin zahldl Noema, co znamen, e ten starej psychou tam zn cestu. + + + J sm jsem dnej nevidl, ale prej e jeden sebou prsknul pmo do fabriky... nikdo to ale neel omrknout. Je to tam moc nebezpen. + + + Jeden stalker mi povdal, e vidl nkolik vojenskej vrtulnk, co se dostaly do njakho prseru. Jednomu vylehly plameny z motoru a ten stroj pak zahuel do bainy pln anomli. Odsud se tam d dostat snadno, akort e bainy jsou ztlesnnej zlej sen. To nen msto pro soudnho lovka. + + + Nezahldli jste tu vojky? + + + Kdo by mohl mt zjem o mapu mst mezi Zatonem a Jupiterem? + + + Navigtor, kdo jinej? Vak v, mstn prvodce. Neustle pendluje mezi Skadovskem a Janovem, take tu tvoj mapu rozhodn uije. + + + Tady nejsme v Zatonu ani v Jupiteru, take ta mapa ti je na dv vci. Zeptej se pmo na tch dvou mstech a teba pochod lp. + + + Sm jsem nic nevidl, ale povd se o tom, e parta vojk slezla z jinho svahu nhorn ploiny - z t strany od istiky. Prej to nejdv zkoueli hezky podle pruky a chtli se slaovat, nebo cosi. Ale nakonec to hezky sjeli po prdeli! Haha! Novej sport!Bobovn v Zn! + + + Ve Skadovsku jsem zaslechl historku, jak nkdo zahldl si tak pt vojcl, kterak vylejzaj z kanalizanho tunelu v bainch. Byli prej doslova zasran od hlavy a k pat a jeden z nich vypadal k nerozeznn od bainnho upra. Odshora dol pokrytej zelenm blivajzem. + + + Osobn ne, ale mj kmo vidl u zpracovac fabriky jednu vojenskou jednotku bojovat se oldkama. Ne si stihl najt flek s pknm vhledem, bylo u po srand, protoe zelen mozky ustoupily. Na dn stran ani jeden mrtvej... kurva klika, co? + + + Nkdo vidl skupinku plus mnus deseti vojk, jak se mot kolem Noemovy brky. Soud podle toho, e ten psychou byl u toho a dejchal, museli se s nim na nem dohodnout... jak typick. Samozejm e Noema se nikdo neptal, co po nm chtli. lovk nikdy neme vdt, jak se ten starej zkurvysyn zachov. + + + Ped pr nocema jsem slyel podnej vbuch a pak mi chlapi v Janov povdli, e v minovm poli zahldli tuhho vojka a za nim przdnou vojenskou helikoptru. Nejsp v t tm nepoznali, do eho to pistli, a nakreli si to pmo do min. Nikdo nev, kolik jich od tama vyvzlo naivu, ale ten borec urit nepiletl sm. + + + dn vojky jsem nevidl... ale uk se, e nkdo ve vojenskym mundru te bydl u vdc. Prej e ho nael Garik, ten stalker, kdy se vydal do raketov zkladny hledat ztracen kmoe. Oba dva vme, e zkladna je doslova napchovan zombkama, kter nemaj lidsk nvtvy zrovna v lsce, take Garik ho prakticky zachrnil ped jistou smrt. + + + Ne, ale slyel jsem, e nkdo zahldl vojka pobl protileteck zkladny Volchov. Ne e bych tomu sm vil... ten lovk mohl lht, nebo teba nedoke rozeznat vojka od zombka. + + + Vojky? No, mezi lidmi se povd, e cel vojensk jednotka veden stalkerem si to rzovala smrem k Jupiteru. Ale pece bys nevnoval pozornost takovm drbm. + + + V, jak se dostat do Pripjati? + + + Koho bych si mohl najmout na ochranu vdc? + + + Zn Spartaka a jeho partu? Vdy v, ty stalkery ze Zatonu? Jsou to fajn lidi a v boji se taky neztratj. Tko bys hledal ostlenj bry. Mm pocit, e hldn vdc by se jim mohlo lbit. + + + Nepotkal jsi v dlnch u rozvodny Sekerkovy chlapy? Maj sice sv mouchy, ostatn jako vichni oldci, ale aspo se nejdv ptaj a teprv potom stlej. Tipuju, e kdybys je pro tuhle prci ukecal, vdci by konen mli lehk span a dokonce i stalkei by si vydechli. Vichni budou astn, idylka. + + + Ehm... nikdo m nenapad. Sor. + + + Jedin, co vim jist, je, e odsud ze Zatonu tam dn cesta nevede. Kadej, kdo se pakoval do Pripjati, to nejdv vzal pes Jupiter. Tam by ses ml poptat. + + + No, uk se, e do Pripjati vedou tajn podzemn chodby z Jupiteru. Problm je tak trochu v tom, e tyhle povdaky se zanaj vynoovat a tak po druh rund, a v takovm stdiu u se Jupiter zd pkn dsivej a nikomu se tam nechce. + + + Jak to mm vdt, vole? Neml bych njak snaz otzky? J ti leda tak doporum, aby ses zael zeptat Navigrora - jestli ti nkdo doke poradit, tak je to on. + + + Ha! Kdybych znal cestu do Pripjati, dvno u bych tady netvrdnul! Pro mysl, e jsem se vydal ke stedu Zny? Ty vole, Pripja je jeden artefakt vedle druhho! Kdo se tam dostane prvn, je vysmtej na celej ivot! + + + Neme mi doporuit nkoho, kdo tu nem moc zvazk a chtl by vyrazit do Pripjati? + + + Tady u ns nikoho takovho nespla. Vichni, kdo chtli vyrazit bl ke stedu Zny, u dvno odeli do Jupiteru. Bejt tebou, zkusm to tam. + + + U jsi slyel o tom vojkovi, co se naskoval k vdcm? Podle m by s tebou klidn el, nem tm co ztratit. Vdci jet njakou dobu dom nepjdou a sm se do Kordonu nedostane, take mon mu doista hrbne a nech se od tebe ukecat na Pripja! + + + Zn Vana, toho z janovskho ndra? Je to frovej chlap, dobrej stalker a nech si nabulkovat cokoliv. Je to taky blzen, co se vc vyzn v anomlich ne v lidech... pod ho jenom nkdo vyuv, a to se nezmn, dokud neodejde. + + + Hele, vole, chlapi nedvno zahldli jaksi drustvo u protiletadlov zkladny, na jih od vyschlho jezera. Patrn nelo o obyejn stalkery, ani Povinnost, ani svobodu - byli to feci z Monolitu! Take jestli potebuje svzt do Pripjati, zkus to u nich! Haha! Neber m vn, dlm si prdel. + + + Zn Chodce, myslm toho velitele novho drustva Svobody? Kdybys vidl ten jeho kyselej ksicht, trklo by ti, e Janov nen msto pro nj. B s nim hodit pokec. Teba se nech ukecat. + + + Zn Chodce, myslm toho velitele novho drustva Povinnosti? Kdybys vidl ten jeho kyselej ksicht, trklo by ti, e Janov nen msto pro nj. B s nim hodit pokec. Teba se nech ukecat. + + + Hmm... nikdo m nenapad. + + + Nael jsem zvltn puku. Nezn nkoho, kdo by toho o n vdl vc? + + + Co j vim? Zeptej se profk... jako e technik nebo tak... + + + Zeptej se ve Skadovsku Kardana, za to nic ned. Vnuje je zbranm a je to fakt machr... a mon mu i po tom vem chlastn peilo pr mozkovch bunk. + + + Vdci potebuj provst pr men. Kdo by se na to dal najmout? + + + Zn Gontu, toho lovce? Hdm, e jemu a jeho chlapm by nevadilo makat pro vdce. A kdyby se do vci nhodou zaali srt mutanti, tak tihle chlapi jsou pesn to, co potebuje. + + + Zn Grizzlyho, Torbu a Mitjaje? Vichni jsou to stalkei z Janova. Pracujou jako trojka a jsou fest dobr! Na takovouhle prci by byli jako stvoen... jen jestli se Mitjaj zase nezapletl do njakho prseru. + + + Netum, vole. Mme tady a po ui vlastnch starost. + + + Nael jsem zvltn artefakt. Nedoporuil bys mi kupce? + + + To asi ne. Nainci kupujou jen znm a oven vci. Zeptej se v Zatonu, ten je bl k okraji Zny a tak velijak. + + + Ukzal bych ho Fousovi, tomu hospodskmu ze Skadovsku. Ten prej spolupracuje se sbrateli z venkovnho svta, kter se mou po divnejch vcech utlouct. + + + Kousek odsud jsem nael doup upr. Co budeme dlat? + + + Ty vole, mus bet do Skadovsku a povdt to Fousovi! Protoe bu je vykosme, nebo nm natrhaj nov dry do prdel. + + + U nic. + + + Kde je tu nejbli tbor stalker? + + + Jse debil, nebo co? J se v tborech stalker nevyznm... ale nejbli tbor odsud je Skadovsk. Dm ti k nmu souadnice a dokonce za n nebudu nic chtt. Super, e jo? + + + Kde je tu nejbli tbor stalker? + + + Polu ti souadnice do PDA... jedinej podstatnej tbor v okol je Skadovsk. + + + Zatm se mj. + + + O njakch havrkch jsem slyel... Ale vc o tom nevm, na klepy nejsem. Sorry, pokud jsem ti nepomohl. + + + Chlape, i bez tvch vrtulnk mm co dlat... Hele, vybourat s helikoptrou asi nebude zrovna pjemn, ale to je tak vechno, co ti k tomu mu ct. + + + O em to mluv, vole? Asi hul nco fakt hodn tvrdho, pokud jsi tady vidl vrtulnky, protoe na tomhle mst nemaj co dlat. + + + Huh? Ne, chlape, takov kraviny m nezajmaj. M prci roziovn informac nijak neme. Vak v, co myslm. + + + Nae hldka vidla njak klesajc helikoptry, ale bli podrobnosti byly hleny pmo podplukovnkovi. Jde o njak tajn vci a radi o tom nechci nic vdt. + + + Kde bych nael oblek s uzavenm dchacm modulem? + + + Nejsem si jist, ale dostatek prach doke zzraky samozejm pokud v, jak je investovat. Promluv si s iperou... Pokud se s nm dohodne, doke sehnat cokoliv. A j doufm, e se ti to poda... tch pr dn bez nj by Skadovsku urit prosplo... + + + Jak bych to sakra ml vdt? Ani j tady nejsem dlouho... Radi se zeptej v Zatonu, nai kmoi tam maj rozhozeny vlastn st. + + + Nemm pru. Pro, chce snad do t anomlie strkat svj nos? Koukni, pokud naraz na njak artefakt, dej nm vdt. Budem tam dv, ne ekne vec... Abysme ti pogratulovali k dobr prci! Ha ha ha! + + + Kde bych nael oblek s uzavenm dchacm modulem? + + + Jak bych to ml vdt? Pokat... tady v Skadovsku ije jeden chlpek, kter pr me sehnat vechno, co chce. Sed na hornm poschod, kaj mu ipera. + + + Ne, v takovm divnm obleku tady rozhodn nikdo nechod.. Mon by ses mohl zeptat v Zatonu, je troku bl civilizaci. + + + Netum, kde bys nco takovho mohl najt.. Takov obleky jsou vzcn i mezi leny Povinnosti. Vydvaj je jen kvli odlien v boji nebo pi operacch probhajcch v anomlnch oblastech. + + + Kde bych nael oblek s uzavenm dchacm modulem? + + + Zaslechl jsem, jak se stalkei o takovm lovku s konexemi bav, kali mu ipera nebo njak tak. Doke sehnat skoro vechno. Vak v: vbavu, stelce a podobn kraviny... ale drogy ne. Vysedv ve Skadovsku, pokud bys za nm chtl zajt. + + + Dobr otzka, chlape... Tady ve Svobod nic takovho nenosme... Bt tebou, zeptal bych se stalker v Zatonu. Tam bys mohl najt nkoho, kdo se tmihle vcmi zabv. + + + Heh, na co takov krm potebuje? Je to k niemu. I kdy... Mon by se mohl hodit. Lp se s nm dch a slunce tak nesvt do o... Mon bych si ho taky mohl podit. Hej, nev, kde bych ho sehnal? + + + Kde bych nael oblek s uzavenm dchacm modulem? + + + No, tipnul bych to na iperu. Tet poschod ve Skadovsku. Ten chlpek doke sehnat snh i na posran pouti... Jeho sluby ale nco stojej. + + + Pokej... V Zatonu kdysi takov chlpek bejval, pracoval s iperou. Zkus se podvat, jestli tam pod je. Slyel jsem, e se zamuje na vt vci. + + + Kmo, ty o tom mluv, jako by to byly njak tuky do kancele... Nikdo ti to neekne jist. Takov vci se objev jen tu a tam... Pokud to najde, bude mt fakt tst. + + + Mj se. + + + Zatm. + + + aues. + + diff --git a/gamedata/configs/text/cze/st_dialogs_jupiter.xml b/gamedata/configs/text/cze/st_dialogs_jupiter.xml new file mode 100644 index 0000000..bcb3c3b --- /dev/null +++ b/gamedata/configs/text/cze/st_dialogs_jupiter.xml @@ -0,0 +1,3885 @@ + + + + Co chce? + + + Potebuju mluvit se Spodkem. Jde o Vv dluh. + + + Tak b dl. + + + Dobe. + + + Jen se tak prochzm. + + + Tohle nen dn promenda, vole. Vypadni do prody. + + + Nev, kdo mi mohl ukrst vci z osobn skky? + + + Ne, ale j mm te jin starosti. Tys piel o pr hmotnch statk, ale j bych mohl pijt o ivot... + + + Krdee, fale... Ty vole, kam to ten svt spje? Nikoho jsem nezahldl, ale a u do udlal kdokoliv, touhle dobou bude dvno za humnama. + + + Pojme za Zulusem. + + + Jasan. Cestou bysme se mli stavit u Havajce a vykoupit od nj moji zbroj. + + + Pojme. + + + J bych moc rd, ale nerad bych prakticky nahatej napochodoval do emise. Pokme jet chvli. + + + Jestli se chceme dostat do Pripjati, potebujeme obleky s uzavenm rozvodem kyslku. + + + Ty vole, to je jak naschvl! Pesn takovej oblek jsem ml... ty si me zavt ksicht do t sv pece a bude dejchat v pohod, jene j ten oblek stelil Havajcovi. Te u ho zptky nekoupm, poteboval bych pt litr a jsem vorc. + + + Meme ho koupit z mch penz. + + + Jako e jen tak? Dl si prdel? + + + Na, tady m pt tisc. + + + Te jsi mi vn zachrnil kejhk, kamarde! Te s tebou pjdu klidn i do pekel! + + + Rd bych za nj zaplatil, ale pt tisc nemm. + + + Moc si to nevytej, to se stane kadmu. V mi, j to znm. + + + Budu nad tm uvaovat. + + + No jasn... vdy jsou to tvoje prachy. + + + A ty mi ty prachy d? + + + Organizuju vpravu do Pripjati. Pjde se mnou? + + + Tys mi pomohl, kamarde, tak te j pomu tob. + + + Rd bych, brcho, ale nemu voca odejt, kdy mm na krku ten dluh. Nebylo by to sprvn, nehled na to, e kdybysme je pak cestou potkali, odstelili by m jak praivho psa. Tm hadm je jedno, koho zabijou... + + + Tak co, pipraven vyrazit do Pripjati? + + + Pipraven, nahaven a tak dle! + + + Poj dl. Co mi chce? + + + Dluh jsi zaplatil, te mi zmiz z o. + + + Byli to namylen hazjlov. Zaslouili si umt. + + + Ty penze jsem zaplatil, take te u nic nedlu. + + + Ty vole, fakt dk! To ti nikdy nezapomenu. + + + Zrovna slavn ne, musel jsem jim splatit i roky. + + + To je zl... ale po mn by chtli jet vc, to mi v. Kadopdn dky za pomoc! Tohle ti nikdy nezapomenu. + + + Zatm jsem tam nebyl. + + + Posp si, ne zanou chtt jet vc. + + + Stavil jsem se za nimi, ale chtj krom dluhu splatit i roky. + + + To se jako posrali, nebo co? Vdy jsem sotva dal dohromady tu pvodn sumu... co kdybys je pesvdil, aby ty roky smazali? Bude k tomu potebovat podnou zbra. Nsil je to jedin, co respektujou. + + + Jak to bylo s tm dluhem? + + + N... ml jsem starej oblek, kterej u se zanal prooupvat, tak jsem si ekl, e si koupm novej. A jako na potvoru nkdo zrovinka prodval zbrusu novou ndheru. Mla uzavenej rozvod kyslku a tak vechno... jenome a jsem potal sv prachy zleva, zprava, pod jsem jich ml mlo. V tu chvli se ke mn Spodek, to je ten prodava, naklon a k: Klid, Vo. Zbytek mi zaplat pozdj. A j si km: To je ale milej chlap. A pak v. + + + A pak co? + + + Prodal jsem mu svj oblek, pobral jsem vechny prachy a jdu za nim. Spodek na to: Parda, Vo, ale co bude s rokama? kam si: Jo, dyk m pravdu... jet mu musim splatit roky... Nkde jsem splail jet dal prachy a donesl jsem mu je. Sotva mu je dm, povd: Zatmco jsi byl pry, nahromadily se tu dal roky, Vo. Jenome ty roky rostou rak rychle, e je nesthm dohnat! Novej oblek jsem musel zastavit a zbran taky... + + + Tak co te? + + + Chci mu zaplatit tma prachama, co jsem si vydlal. Spodek si potrp na svoj povst... jene se bojm. Nemohl bys za nim zajt radi ty a dt mu ty prachy za m? + + + S radost. + + + Ale jedna takov drobnost... A za nim pjde, piprav si na oi podnej kvr, nebo tak nco. Uka jim, e s tebou by si nemli zahrvat, a mon k tob budou mt i respekt. + + + J to njak zvldnu. + + + Te na to nemm as. + + + To by stailo. + + + Take... mohl bys skoit za Spodkem a splatit mj dluh? + + + Dobe, dobe, nestlej! Hned ti zaplatm... ech, promi. Myslel jsem, e jsi nkdo jinej. + + + Jak jsi dopadl u bandit? + + + Nazdar, e. Jsem rd, e ses vrtil! + + + Hej! + + + Mme nvtvu... kej stalker chce hodit pokec se ikem. Copak, pin dary, nebo jsi tu kvli keftm? up, up, vymkni se, kamarde. + + + Neekal bych, e se vrt... tak co mi nese? + + + Co jet chce probrat, stalkere? + + + Co potebuje? U t nebav pobhat po Zn s napakovanma kapsama? Tak od toho ti meme odpomoct. + + + Chci mluvit s tvm fem. + + + Hele, vole, na tyhle povinky nemm as. Zmiz mi z o, pronto! Padej, nebo t trochu popoenu brokovnic. + + + Dobe, dobe, u jdu. + + + Jde mi o toho stalkera, co jste zajali. Chci mluvit s vam fem. + + + Hmm... tak to b dl. Ale ne abys na ns nco zkouel, nebo si t zpacifikujeme. Jdi pmo za nosem a pak projdi tou mezerou mezi kontajnerama. Pobrals to? + + + Jo. + + + Jen jsem tak el kolem. U zas mizm. + + + Jde mi o toho stalkera, co jste zajali. Chci mluvit s vam fem. + + + Co jet chce? Odprejskni! + + + OK... + + + Hele, ty hazlku, sna se m urazit, nebo co? Pinesl sis pytel penz, abys mohl zacvakat za svho kmoe, a mn ned ani rubl za bezpenej prchod? To je od tebe ale okliv. Rozumme si? + + + O jak stce mluvme? Nezapome, e se jet potebuju dostat na zkladnu. + + + Ha, ty jsi vn vtipnej! Tady nejsme v dnm bordelu, vole, nemme rozepsanej cenk slueb... Vobra kapsy, debile! + + + Dobe, ber. + + + U odchzm. + + + Coe? To mi jako chce sebrat vechen lup? Ani npad! + + + Vkupn jsem zaplatil. Dl nen o em se bavit. + + + Fajn, stalkere, my mme odpracovno. Zas abysme li. + + + Dky, chlapi! Zatm se mjte. + + + Pokejte! Mou se tu skrvat jet dal banditi. + + + To abychom li, ne? Pprda to nepeil, ale neme ct, e bychom se nesnaili... + + + Pokejte, jet nen po vem! + + + Pochopil! + + + Poj se mnou do Pripjati. + + + Ne, radi bych tu ml zstat a dohldnout, aby se Mitjaj nedostal do dnho prseru. + + + Hej, stalkere! Tiscer dky za to, jaks vysekal Mitjaje ven! U jsme zaali sestavovat vlastn drustvo... Tu m, vezmi si tohle jako vraz naich dk. + + + Hej, stalkere! Tiscer dky za to, jaks vysekal Mitjaje ven! Jsi fakt zve, takhle odrovnat vechny bandity bez ciz pomoci... Tu m, vezmi si tohle jako vraz naich dk. + + + Hej, stalkere! Tiscer dky za to, jaks vysekal Mitjaje ven! Osobn jsem neekal, e zaplacen vkupnho fakt zabere... Urit by se ti te hodily prachy, tak si vezmi tyhle. Jako vraz dk. + + + Hej, stalkere! Tiscer dky za to, jaks vysekal Mitjaje ven! Ml jsem naprostou pravdu, banditm lovk nesm ustoupit ani o p! Mus si na n podn dupnout... a na to jsi ty jako stvoenej. Na, vezmi si tohle. Kadej dostal svj podl, take toho moc nezbylo, ale jsme ti fakt vdn. + + + Jak to dopadlo s tm vkupnm? + + + Pod na tom pracuju. + + + Tak jak je? Kdy si konen dolpne na ty bandity? + + + U brzo. + + + To sis to rozmyslel, nebo jsou ti banditi pli tvrdej oek? Nenech se vystresovat, pracuj si klidn svm tempem, ale moc to neprotahuj. Nechceme, aby jim dola trplivost a oni Mitjaje popravili. + + + J to njak vymyslm. Vechno bude fajn. + + + S profkem tvho kalibru je radost spolupracovat, stalkere! + + + Kurva, pili jsme o dobrho chlapa... Chudk Mitjaj... Nedokzali jsme ho zachrnit, to jsme teda kmoi! + + + Co nadl? + + + Poj se mnou do Pripjati. + + + Jedin dvod, pro jsem se chodil, bylo, aby si kluci mli s km pokecat. Radi zstanu s nimi. + + + Hele, dky za Mitjaje... Prv jsme se tam chystali zanst vkupn. Nakonec to ale dopadlo fakt dobe, to se ti ned upt... + + + Hele, dky za Mitjaje... Jak se ti je povedlo pesvdit? love, od tebe bych se mohl uit. + + + Hele, dky za Mitjaje... No neml jsem pravdu? Vyjednvn je klem k spchu. + + + Hele, dky za Mitjaje... pod si myslm, e vyjednvn by bylo lep, ale takhle to nakonec taky nedopadlo patn. A to je hlavn. + + + Vypadni. Te na tebe nemm nladu. + + + Dobe, hlavn klid. + + + Nazdar, profku! + + + Neboh Mitjaj... byl pod jet mlad tele... celej ivot ml ped sebou. + + + Co nadl? + + + Parda, tak jsme tu vichni. Grizzly u mi o tob povdl. Pln je jednoduchej - hoi se rozestoupj na stanovitch v oblouku kolem cle a j ze sv pozice odstelm hldae. To je signl k zahjen toku. Nezapome, kde m ostatn, a pak u jen dlej, co uzn za vhodn. Na mst u si urit vymysl vlastn postup... Pipraven? + + + Budu na to myslet. Pojme. + + + Jet si to rozmyslm. + + + Nechtl by ses se mnou projt do Pripjati, Mitjaji? + + + Vdci verbuj pr novch lid. Jak by se ti lbilo pro n pracovat? + + + O jakou prci jde? + + + Hldn jejich bunkru. + + + love, radi ne. To dobrodro s banditama mi stailo. Te se chvli budu vlet na prdeli a vydejchvat to. + + + Chodil bys k anomlim a dlal men. + + + Hmm... to zn zajmav. Pro vdce u jsem prkrt dlal... a e jse to ty, tak jo. Jdu do toho. Vezmu Grizzlyho a Torbu a vyrazme k bunkru. + + + Povz mi, jak t zajali. + + + Ani se neptej! Moje vlastn blbost. Banditi m pedtm varovali, jene j na n kalal... Zaali po mn chtt vpaln, jakoe podl na koisti, ale j si ekl: Vdy Zna nikomu nepat, tak co bych jim platil? + + + ekli jsme jim s klukama, a si vylou, v co, a skoro u se zdlo, e nm to prolo. Ale banditi jsou kurvy vynalzav, a tak si na ns pohali. Nevm, co m to napadlo za kokotinu jt hledat artefakty na vlastn pst, kadopdn na m vyskoili a svzali mi ruce dv, ne jsem stihl vbec shnout po bouchace. Tak njak se to stalo. + + + Dky, es za m zaplatil vkupn! To ti nezapomenu. + + + Dky za zchranu, stalkere. To ti nezapomenu. + + + Dky, es mi pomohl splatit vkupn! + + + Dky, es m pomohl vysvobodit! + + + Dky za pomoc, stalkere... A se vrt, m kamardi se ti urit njak odvdej. Co kdybysme li na zkladnu spolu? Bude to tak rychlej. + + + Tak poj. + + + B naped, j se stavm pozdji. Jet si tu potebuju nco vydit. + + + Ty vole, u jsem se bl, e tam zavu... Fakt Grizzly s Tobrou najali tolik lid? Svat krvo! Takovou megapestelku jsem jaktiv nevidl! Nemohli bysme u radi jt pry? + + + Pokej jet. Mou se tu potulovat dal bandit. + + + Jasn, jdeme. + + + Ty vole, u jsem myslel, e moje dny jsou seten... J zrm, takhle pokosit vechny bandity pln sm! Jsi fakt hustej! Tohle mi nikdo nikdy neuv... Tak co, pjdeme u pry? + + + Pokej jet. Pod tu mohl nkdo zstat. + + + Jo. Mizme odsud. + + + Dky, stalkere! Pojme rychle pry, ne si to banditi rozmyslej. + + + Jdeme. + + + Musme odsud vypadnout! Rychle! + + + Nesmme pistoupit na poadavky bandit. Problm si d nsiln een! + + + Moje slova! Znm pr tpk, co nm ochotn pomou... a tob taky zaplatme, jestli nem nic proti tmov akci. + + + Mu jt s vmi. + + + Bezva! Znm partiku stalker, kter slouili v policejn zsahov jednotce. Setk se s nimi na dohodnutm mst v jednu hodinu v noci. Budou na tebe ekat. + + + OK. + + + Torba m pravdu. Nem smysl vyprovokovat jatka, kdy maj zajatce. Musme vyjednvat. + + + Hmm, mon e mte pravdu. Prser je v tom, e kdy se tam uku j s Torbou, banditi ns nebudou chtt nechat odejt, protoe nepistoupili na jejich hru. kali, e a ns pt uvidj, rozpou ns jak prasata. Ale kdybys nm dlal prostednka... + + + S radost posloum. Dejte mi ten artefakt. + + + Bu opatrnej. + + + J to zvldnu. + + + Takhle bysme se mohli hdat donekonena. spch zvis na tom, kdo bude udvat tn. J to s tma hajzlama vydm sm. + + + Fha, tak to jsem neekal. Peju hodn tst. + + + Co nevidt se vrtm. + + + Souhlas. Ale potebuju se pedem pipravit. + + + Stalkere, nechtl bys naeho kmoe Mitjaje vysekat z prseru? + + + Co se stalo? + + + Mitjaj si to pkn zavail. Banditi si na ns zaali vyskakoval a doadovali se, abysme jim dvali podl ze vech artefakt, co najdeme. ekli jsme jim, a si kubnou, protoe stalkei pece nejsou ni kurvy... Jene oni pak toho chudka pepadli, kdy vyrazil lovit na vlastn pst. Te ho drej a chtj za nj vkupn. + + + Co budete dlat? + + + Torba navrhuje, abysme jim jako vkupn dali njakej artefakt... ale j km, a si naserou! Pece nebudou stalkei posluhovat banditm... ten artefakt bychom mli prodat, za ty prachy najmout podnou bandu a vzt bandity tokem. + + + Jet se k tomu vrtme pozdji. + + + Tak co, pjde s nma zachrnit Mitjaje? Torba si furt mysl, e bysme tm banditm mli zaplatit artefaktem. A j pod trvm na to, abychom je pomltili. Jene k tomu bychom museli artefakt prodat a najmout za nj pr chlap... zatm jsme se jet nerozhodli. + + + Pipraven? Dme ti artefakt, ty pjde a vykoup s nim Mitjaje. Potkme se pak v baru. + + + U jsi byl u tch bandit? + + + Jet ne, zatm se rozehvm. + + + Jo, ale nijak to nedopadlo. Stavm se, a budu vdt, na em jsme. + + + Nedvno jsem byl v Oze a nael jsem tam artefakt. Neml bys o nj zjem? + + + Ha. Tahej si za nos nkoho jinho, mladej! O Oze jsem toho slyel leccos, ale zatim jsem nepotkal NIKOHO, kdo tam doopravdy byl. Nic ve zlm, ale njak ti to nebatm. + + + Mm dokumenty z Jupiteru. + + + Jo, vezmi si je vechny. + + + Jo, vezmi si ten pkaz k evakuaci. + + + Jo, vezmi si zpisy ze schz. + + + Jo, vezmi si rozpis zsilek. + + + Jo, vezmi si tu zprvu ze star opravny. + + + Snad jindy. + + + Nev, kdo mi mohl ukrst vci z osobn skky? + + + Moji lidi ne, o tom nepochybuju. Teba to byl nkdo ze Svobody. Kdybysme celej Janov dili my, nic takovho by se tu stt nemohlo. + + + ekni mi nco o Povinnosti. + + + A co pesn t zajm? + + + Co tu vlastn dlte? + + + To sam, co vude jinde. Chrnme stalkery ped vemonou havt. Sm si vidl, kolik se tady mot mutant. A nejsou to dn roztomil tata jako ty z Kordonu, kdepak! Tak napklad j jsem vera v noci na vlastn oi vidl chimru. U se stmvalo, tak jsem se za n nehnal... A to vet problm u mutant nekon. Musme taky prozkoumat oputn laboratoe a posbrat tam rzn dkazy dv, ne se k nim dostanou ty magoi ze Svobody. + + + Co t pivd do stedu Zny? + + + Dl si prdel? Co sem pivd tebe? Kdy budu hdat, tak bych ekl, e jsme tu oba ze stejnch dvod. Sted Zny byl vdycky zhadnm a nedostupnm mstem. Doufali jsme, e tu najdeme odpovdi na vechny sv otzky. Oba jsme chtli zjistit, jak Zna vznikla a jak se naopak d zniit. A proto jakmile jsme se doslechli, e nkdo zruil Vypalova mozk, sbalili jsme se a vyrazili ke stedu. + + + A co jsi zjistil? + + + Hromadu vc, ale jsou tajn. Mu ti leda naznait, e Zna skrv vc, ne se na prvn pohled zd. Pr nainc m za to, e Zna je jako rakovinnej ndor a e se mus za kadou cenu zniit. J jsem ale leccos vidl a jsem toho nzoru, e Zna je veliknskej ivej organismus a my jsme takov bakterie, co se na nm piivujou. Ani kdybysme dali dohromady armdy vech stt z cel planety, nedokzali bychom Znu zniit. Proto musme bejt chytej, najt pinu, pro Zna existuje, a odstranit tu. + + + Co kdy pinu Zny odstranit nedokete? + + + No, tak v takovm ppad budeme muset vymyslet nco jinho. Ale pod mme nadji. Musme se soustedit na sv povinnosti a zstat optimistit. + + + Jak ses dostal k Povinnosti? + + + To je nudnej pbh, ve kterm nefiguruje dn hrdinstv. Jakmile se Zna objevila, ekli jsme si spolu s mm kmoem Leou, e se na ni zajdeme podvat. V t dob jsem dlal armdnho dstojnka a Lea pracoval pro tajnou slubu. Mlko u huby nm teda rozhodn neteklo, ale i tak jsme se nechali pkn zdit. Nkolik hodin jsme se plahoili pnou a vlastn krv, ne ns nala Povinnost. J peil, Lea ne. V Zn jsem neml dn kamardy, a tak u jsem zstal u Povinnosti. U od zatku mm proti Zn jist vhrady. + + + Jak vychzte se Svobodou? + + + Oficiln spolu vlme, nicmn ivot ve stedu Zny se d vlastnmi pravidly. Tady je jenom mlo bezpench mst a ani Svoboda, ani Povinnost nem k dispozici dost mu. Jakej teda m smysl se mezi sebou zabjet? Proto tu plat nevyen pravidlo, e se navzjem nebudeme plst do cesty. Mimo Janov ale tohle pravidlo neplat: tam zu skuten vlka. + + + Jako bych nic neekl. + + + Ehm... dobe. + + + Chtl bych prohodit pr slov o Pazourkovi. Je ze Svobody. + + + Lidi ze Svobody jsou mi ukraden. Hlavn kdy se nm nemotaj do cesty. + + + Pazourek, rovn znm jako Strak, vypekl pr stalker ze Zatonu, tpl jim koist a vytratil se. + + + No a? Vbec m to nepekvapuje, tihle hajzlov ze Svobody jsou schopn veho. + + + Jet nco - v lomu jsem potkal jednoho stalkera. Jet ne umel, stihl mi ct, e ho Pazourek nechal vzet v anomlii, sebral jeho vci a zdrhnul. + + + , tak takovhle svinstvo mu stalkei jen tak nezapomenou... ani ve Svobod ne. Dky za echo. Vak mi u ho vhodn vyuijeme. + + + U na nj mm dost pny. Vdy ten kretn je tak vymatlanej, e se tm dokonce oteven chlub! + + + Tmhle Svobod pkn podryjeme povst. Dky za info. Vak mi u ho vhodn vyuijeme. + + + Kali na to. + + + No jak mysl. + + + Mm PDA vaeho zsobovacho dstojnka Morgana. + + + Souhlas. + + + Budu nad tm uvaovat. + + + Souhlasm. + + + Jasn + + + Tak se na nj podvejme... take ten parchant ns ulil a zasteoval se nam jmnem, hmm? Kdyby se to dostalo ven, nae dobr povst je v hajzlu. Co bys ekl na to, e od tebe to PDA vykoupm? Nebudu kudlit, co bys ekl na 4 000? + + + To je ovem vn obvinn. Uka mi to PDA. + + + Tady je. + + + Lhal bych, kdybych tvrdil, e jsem ho nepodezral... te mu to ale mu ct do o. Dky, stalkere! Doufm, e o tomto rozhovoru se nikdo nikdy nedoslechne. Mm pro tebe drobnou odmnu - koneckonc jsi Povinnosti zachrnil povst. + + + Zatm bych si ho rd nechal. + + + A dal... velmi zajmav... pidm si to do sloek. + + + Tu m. + + + Dky! Drobn odmna za tvoje starosti... + + + Rd bych si ho nechal na pamtku. + + + Potkal jsem pr chlap, co by se chtli pidat k Povinnosti. + + + Schopn mui jsou u ns vdycky vtni. ekni jim, a se stav za mnou. Njak se domluvme. + + + Akort takov drobnost... jsou to bval lenov Monolitu. + + + Jak to mysl, bval lenov? Podle mch zkuenost se lidi z Monolitu dl jenom do dvou skupin: aktivn lenov a mrtv lenov. O bvalch slym poprv. + + + Patrn je nkdo mylenkov ovldal. Nepamatuj si toti nic, co se jim pihodilo od chvle, kdy vyrazili smr elektrrna ernobyl. Te u vbec nejsou neptelt, akort pod nevd, co si pot. + + + Tak jestli u nejsou neptelt, to rd slym. Mohl bych jim sehnat njakou jednoduchou prci, kterou zvldne i pouk, a pokat, ne si to daj v hlav do podku. Jene jsem pod trochu na vkch... zaru se mi za n? + + + Jist, dvuju jim. + + + Hmm... jenome j nedvuju tob... zatm. Nezlob se. + + + Dobe, ale pamatuj, e jestli nco poserou, zodpovd se mi za n. V prvn ad si ale piznejme, e sami se do Janova nedostanou. Vezme si teda partu mch chlap a zavede je k tm Monolikm. Oni si je proklepnou a jestli bude vechno v cajku, pijmeme je do Povinnosti. Dej vdt, a bude chtt vyrazit. + + + Ne, pli jim nevm. + + + Do na frakce nepijmme jen tak kohokoliv. + + + J mu jt. Zavedu vae lidi k tomu drustvu Monolitu. + + + Dobr. Polu s tebou dva chlapy. + + + Fajn. + + + Nechme to na pozdji. Jet nco mm. + + + Pokej! Ty si dlej, co chce, ale j nehodlm sv chlapce vystavovat emisi. + + + Nael jsem PDA zakladatele Povinnosti. M o nj zjem? + + + To se na to povdejme... tak takhle se to odehrlo... ostatn by to ale vdt nemuseli. Bude nejlp, kdy tohle PDA u nikdo nikdy neuvid. Jen a legenda o zakladateli Povinnosti zstane hezky takov, jak je. Prod mi to PDA? + + + Vezmi si ho. + + + Dky. Tady m odmnu. + + + Zvm tvou nabdku. + + + Vezmi si to zakladatelovo PDA. + + + Dky! Hodn jsi mi tm pomohl. Tady m odmnu. + + + Potebuju pr bojovnk, co by byli ochotni pracovat pro vdce. Nem njak? + + + Vdcm vdycky rdi pomeme. Co potebuj? + + + Shn nkoho, kdo by jim brnil bunkr. + + + Dobr, polu tam pr kluk. + + + Dobr, polu tam pr kluk. + + + Rd bych pomohl, ale vdci u zamstnvaj Svobodu. Kdybychom tam poslali nae drustvo, jenom bychom dl pilvali olej do ji tak divokho ohn. + + + Chtl bych vyrazit do Pripjati. Nedal bys mi pro tuhle misi pr stelc? + + + Mme nedostatek lid i na vlastn mise! Promluv si s Chodcem - vypad, jako kdyby se v Povinnosti nectil dvakrt nejlp, take se od tebe mon nech ukecat. + + + Mme nedostatek lid i na vlastn mise! Pece nikoho nepolu na beznadjnou vpravu. + + + Mluv rychle, vypadni jet rychleji. Co chce? + + + Poslouchm. + + + Rd t vidm ivho. + + + Mm dokumenty z Jupiteru. + + + Pochybuju, e by v nich bylo nco zajmavho. Fabrika byla vykraden dvno pedtm, ne se k n dostali stalkei. I kdy... hmm, tohle jsou uchzejc data. Posly, rd bych to nkomu ukzal. Prodal bys mi to? + + + Jo, vezmi si je vechny. + + + Jo, vezmi si ten pkaz k evakuaci. + + + Jo, vezmi si zpisy ze schz. + + + Jo, vezmi si rozpis zsilek. + + + Jo, vezmi si tu zprvu ze star opravny. + + + Snad jindy. + + + Nev, kdo mi mohl ukrst vci z osobn skky? + + + Nejsem dnej hlda, co by ti ml hldat skku! M chlapi ti urit nic netpli. Tak nzko by se nesnili. + + + Povz mi nco o Svobod. + + + To by bylo dlouh vyprvn. Co chce slyet? + + + Co tu vlastn dlte? + + + Dvme pozor, aby rzn papali netutlali dn informace ped poctivm lidem. V, jak vci chodj - jakmile se objev njak nov laborato nebo tajn dokumenty, kter by mohly osvtlit taje Zny, okamit se zorganizuje vojenskej vsadek, kterej vechno do poslednho smtka vyluxuje. Existuje jedinej zpsob, jak nco zjistit - bejt tam prvn. + + + Co t pivedlo do stedu Zny? + + + No, kluci si to tady chtli trochu prohldnout. Ha, dlm si srandu. Tady se otevr pleitost najt vci, kter svt jet nikdy nevidl. Nepchla jsem zatm ani armda ani stalkei, take na kadm rohu se d potkat nco novho. + + + Nali u jste nco? + + + Pr zamench dve a nkolik divnejch novejch artefakt. + + + Jak ses dostal ke Svobod? + + + Kamardil jsem se s vdcema Svobody jet v dobch, kdy dn Zna neexistovala. Tenkrt to jet nebejvali vdci, ale regulrn hipci! Kdy jsem se pak vypravil do Zny na lov artefakt a narazil jsem na znm tve, ekl jsem si, pro se nepidat k nkomu, koho aspo znm. + + + Co si mysl o Povinnosti? + + + Jsou to hovada, to si myslm. Co jim to peltlo pes nos, e chtj Znu zniit? Vdy neere dn neobnoviteln suroviny, nerozrst se, nic... Mohli bysme se tu v klidu vyvalit a studovat Znu a do skonn vk. Pomysli na to, kolik asnch vdeckch prlom tady jet ek. Napklad po celou historii lidstva jsme nedokzali pochopit, jak me fungovat nco jako antigravitace. A v Zn se ti antigravitan pstroje povalujou jen tak po zemi! Vykouit odsud Povinnost nadobro by bylo super, ale k by to bylo tak jednoduch. Mimochodem, nenech se zmst tm, jak spolu tady v Janov vychzme. Ve skutenosti jsme ve vlce... akort, e Janov jsme prohlsili za neutrln zem. V, jak to funguje. + + + No nic, kali na to. + + + Nic se nestalo. + + + Chtl jsem se poptat na jednoho z tvch stalker. + + + Fakt? Tak si poslu. Doufm, e nechce na nikoho bonzovat. + + + Tvj stalker Pazourek vystupuje v Zatonu pod jmnem Strak. Shnj se po nm stalkei za to, e je vypekl a okubal o tvrd vyden lup. + + + A to ek, e ti to zbatm? + + + Jenom si poslechni, co se vykld v baru. Nejdv podvedl ty stalkery a te vm le do o. + + + Hele, klid. Zavolm Fousovi a uvidm, co a jak. Jestli mi nekec, vydm si to s Pazourkem po Svobodovsku. + + + Hmm... j jsem se divil, kde ten artefakt splail tak rychle. To znamen, e plka jeho historky byly totln blboly. Hodm e s klukama. Jestli mi nekec, vydme si to s Pazourkem po Svobodovsku. + + + Tak dk. + + + Dobe. + + + Souhlas. + + + Budu o tom uvaovat. + + + Ber. + + + Dobr. + + + Potkal jsem skupinu bojovnk, kte se chtj pidat ke Svobod. + + + Vborn, nov tve vdycky vtme. Jestli jsou dost dobr, mou se pidat. + + + Je v tom ale drobn hek - dv patili k Monolitu. + + + Drobnej hek? Na leny Monolitu se nejradi dvm skrz pukohled. Jinej kontakt nepipad v vahu. + + + Tihle jsou nekodn. Ukzalo se, e jim asi nkdo ovldal mylenky. Nemapatuj si nic, co se jim pihodilo od chvle, kdy odeli do ernobylu. A netu, co te maj dlat. + + + Sorry, ale tomu se mi nechce vit. Co kdy mi zmrn le? + + + No, mon by nekodilo si s nima promluvit a zjistit, co jsou za. Polu s tebou pr mch kluk. Omrknou je a jestli vechno dopadne oukej, nabereme ty tv Monoliky do Svobody. + + + Co kdyby sis nasral? Vn se mi sna nakukat, abysme do Svobody pijmali takovou verbe? + + + Piel jsem ohledn tch len Monolitu, co je mte naverbovat. + + + Chlapi mou vrazit. + + + Dobe, tak a jdou za mnou. + + + A za chvli. + + + Pokme chvilku. Emise nejsou zdrav. + + + Nael jsem PDA zakladatele Povinnosti. Ml bys zjem? + + + No, pokud na nm je nco uitenho... No ty vole, to mi poser zda! Pod Znu zaplavujou tou svoj praivou propagandou, ale jak se zd, jejich minulost je ve skutenosti pln sraek. Posly, moc rd bych si tohle PDA dkladn proetl. Dobe ti za nj zaplatm. + + + Vezmi si ho. + + + Dkes. Tady m prachy. + + + Nechm si to projt hlavou. + + + Vezmi si to PDA zakladatele Povinnosti. + + + Dkes. Tady m prachy. + + + Vdci potebuj naverbovat pr lid. Nemohl bys jim nkoho poslat? + + + To zle, o jakou prci jde. + + + Potebujou, aby jim nkdo hldal bunkr. + + + Jasn, polu tam pr kluk. + + + Jasn, polu tam pr kluk. + + + Milerd bych pomohl, ale pro vdce u fach Povinnost. Mme jich pln zuby u tady z Janova, take zdvoile odmtneme. Dky. + + + Jdu do Pripjati. Nedal bys mi s sebou njak drustvo? + + + Zeptej se toho novho rekruta - Chodce. Nect se tu spokojen, take mon lp pochod s tebou. + + + Mt nkoho, koho bych mohl postrdat, tak klidn. Ale nemm, sorry. Mme tu dost vlastnch starost. + + + Tak co mi pov? + + + Kvli emu jsi piel? + + + Rd t vidm, e! Ve Svobod se o tob povdaj sam dobr vci. Co pro tebe mu udlat? + + + V elezninm tunelu jsem nael divn pedmt. Nem o nj zjem? + + + Hmm, ne. Je to mejd. Vypad to jak artefakt, ale nem to dn inky. Obvykle tyhle hebly penechvme vdcm. + + + V Zatonu jsem nael divn pedmt. Nem o nj zjem? + + + Co si s tm jako mm pot? J se prakticky nezajmm ani o normln artefakty, rozum... Uka to vdcm, ty za podobn nesmysly dobe platj. + + + Shnm lidi, co by byli ochotn hldat vdcm bunkr. Nev o nkom? + + + Neseene nikoho lepho ne Svobodu. Ppadn by ses mohl zkusit dohodnout se stalkerama, ale tm se asto ned vit, ani co by se za nehet velo. Kdy t podrazej, kde je potom najde? A rozhodn bych nedoporuoval obrtit na Povinnost. Ti fanatici jsou dobr leda tak na kosen mutant a tm to hasne. + + + Shnm lidi, kte by provdli men pro vdce. Zn nkoho? + + + Jasaka! Sko za Lokim, ten ti urit pome. Tady by ses mohl domluvit s nkym z ad stalker, ale tm se obas ned moc vit. + + + Nkdo mi vykradl skku. Nev, kdo to mohl bt? + + + Ty vole, kam tohle msto spje? Pochybuju, e to byl nkdo z Povinnosti, protoe ta m se svch adch zjednanej psnej podek. Moc psnej na mj vkus. Ve Svobod tvoj vete zas nikdo nepotebuje, tud vina pad na stalkery. + + + Nedvno jsem potkal drustvo Monolitu. + + + Fha, j na vlastn oi dn nevidl! I kdy chlapi mi zas vyprvli nejeden pbh, ze kterho stydla krev v ilch. Ty Monolici jsou prej totln magoi. Nedali se asi snadno, co? + + + J jsem s nimi nebojoval, jsou pln mrumilovn. Povdali mi, e se ct, jako kdyby jim nkdo sthl psku z o a oni konen mohli ovldat sv konetiny. Vbec netu, co te maj dlat, tak se jim snam najt msto v njak frakci nebo jin uplatnn. + + + Teda, to je mi novina. No, stalkei nepichzej v vahu, protoe ti by je po pedchozch zkuenostech s Monolitem asi rovnou odprskli... Zkus se zeptat Lokiho. Kdy se navleou do uniforem Svobody, nikdo jim nezkiv ani vlsek. + + + Koho by mohly zajmat pravdiv informace o zakladateli Povinnosti? + + + To vn nevm. Hodn zle, nakolik se tyhle pravdiv informace liej od oficilnho postoje Povinnosti. Uka je Lokimu, ten ti to pov na rovinu. + + + Mm u sebe PDA zsobovacho dstojnka Povinnosti. Co ty na to? + + + Ani za zlat prase. Vechen jeho sortiment si doku obstarat odjinud za mnohem men ceny. A tko tam bude nco jinho, co by m zaujalo. + + + Kdo by se mnou chtl vyrazit do Pripjati? + + + Do Pripjati? No pni! Mm chu vechno tu zabalit a zvednout plachty, ale fakt mm fru prce... + + + Do Pripjati? No pni! Popros Lokiho o pr lid. Frovho chlapa jako ty urit neodmtne. + + + Piel sis odfrknout? Pit nemm nic extra, ale msto je to tu pjemn a ptelsk! + + + Mm tu veciko, co si kdy me pt! Co shn? Dal by sis nco na zub, potebuje svlait hrdlo, chtl by sis trochu zastlet? + + + Shnm lidi, co by byli ochotn hldat vdcm bunkr. Nev o nkom? + + + Zeptej se stalker. Urit jsou cel hav, a zase budou moct udlat nco pro vdtory. Tm by vlastn zskali oficiln povolen k pobytu v Zn. + + + Shnm lidi, kte by provdli men pro vdce. Zn nkoho? + + + Radil bych ti, abys to nesvoval nezkuenm stalkerm. Za prv nic nenajdou a za druh by se jim taky mohlo nco ztratit... jestli mi rozum. + + + Potkal jsem jedno drustvo Monolitu a rd bych se t na nco zeptal. + + + Abych pravdu ekl, kdykoliv potkm nkoho, kdo narazil na bojovnky Monolitu, v polovin ppad m skvl odvtrvac systm a dn puls. Ty oproti tomu vypad celkem iv. Na co e ses to chtl zeptat? + + + Tohle drustvo je pln jin. Mluvili se mnou, nemusel jsem s nimi bojovat. + + + Nekecej! + + + Nekecm. Lili mi, e se ct, jako kdyby jim prv spadla pska z o. Nevdli, co maj dlat, a ptali se m na radu. + + + V tom ppad bych jim radil, aby se vyhbali stalkerm, protoe ti maj moc dobrou pam a rozhodn je nenechaj jen tak t. Mon by jim pomohlo, kdybys jim sehnal msto v jedn z frakc. Ovem nevm, jestli od toho Svoboda s Povinnost nedaj ruce pry. + + + Mm PDA s informacemi o zakladateli Povinnosti. Neml bys o nj zjem? + + + V drbech j nejedu, a to si pamatuj. Jestli chce prodvat informace, obra se na Hejkala. Ten se v nich doslova rochn. Ale pihldneme-li k tomu, o jak informace jde, mon by o n mli zjem i Loki nebo ulga. + + + Sehnal jsem PDA zsobovacho dstojnka Povinnosti. Chce ho? + + + Cosi mi k, e to PDA by mi mohlo zadit pote s Povinnost, a o ty nestojm. Zkus to radi u Hejkala. + + + Potebuju zdravotnka. + + + Tak se na to podvejme... + + + Hned je to lep. + + + Kdo by chtl vyrazit do Pripjati? + + + Promluv si s tm stalkerem Vanem. Je to rovnej a frovej chlap a to mu zadlv na nejeden problm. + + + U ns dn lence nemme, kamarde, bude se muset poptat jinde. + + + Shn liva, nebo sis jen piel pokecat? + + + Nkdo mi ukradl vci ze skky. Nev, kdo to mohl bt? + + + V, jak se ten stalker jmenuje? + + + Je tady relativn nov... Jak se jen krucinl jmenoval? e by Hejl? Ne, pokat, zanalo to na P... Bylo to nco mrtvho... Pahejl! To je ono! Jmenuje se Pahejl! + + + Jak vl, kmo? + + + Zdar. Potebuju s tebou projednat cosi dleitho. + + + Parda. Tak to se nejdv napijeme! Pece musme k dleitm vcem pistupovat serizn! + + + Dobe, nalej mi. + + + Ne, na chlast njak nemm chu. + + + Tak voeme sis to chtl pokecat? + + + Chystm se vyrazit do Prijpati podzemnm tunelem, co vede zpod Jupiteru. Nitrk mi pr doke otevt vchod. + + + Hmm... jt do Pripjati podzemm. Pardn npad. To si zaslou zapt! + + + Na zdrav. + + + Kurva, ta pe. Doufm, e na tu vpravu nechce jt sm, e ne? Kdepak, to by nelo... Pjdu tam s tebou... a budeme potebovat dal spolenost! lovk nikdy nev, kdy se mu bude hodit pr dvryhodnejch kmo. + + + Nitrk mi doporuil, abych si sestavil drustvo... + + + Jo, to je suprovej npad... To abysme si pipili na zdar mise! + + + A do dna! + + + Hele, ale zvldnul bych i to sm, abys vdl... tak teba v Zatonu jsem pln bez pomoci vyistil hnzdo upr... stailo pr vhodn narafiench kanystr. + + + Pni. Respekt, vole. Pipijeme si na to, abysme pod mli po ruce kej ten kanystr! + + + men! + + + Dvryhodnch, jo? Tady je tolik mejd, a to bol. V Zatonu jsem potkal obchodnka, ale ukzalo se, e je od Povinnosti... + + + No neke? Tak Povinnost nm hnije zevnit, jo? Kam to ten svt dospl? Hele, radi to splchneme, abys to pustil z hlavy. + + + Moudr slova. Na zdrav! + + + Hmm... dobr, e jo? Drustvo je fajnovej npad, ale k tomu musme bejt jet aspo ti. Napad t jet nkdo? + + + Seenu jet pr lid... Taky nesmme zapomenout na obleky s uzavenm rozvodem kyslku. + + + Jasn, bezpenost pedevm... Co mi pipomn: o m nemj pi... protoe oblek mm pardn. Musme je ale obstarat ostatnm a to nebude prdel. Takov obleky lovk nevid zrovna denn. Tak na zdrn hledn! + + + Na hledn! + + + Zn toho podivna, co si k Noe? Zamknul se na n brce se spoustou vbavy... Uvtn si pedstavuje tak, e po tob zane plit z brokovnice. + + + Jo, toho jsem u kou dobu nevidl. Kdysi jsme dlali spolu. Byl to skvlej stelec... je fakt ostuda, e to s nim lo takhle z kopce. Pipijeme si na nj a jeho duevn zdrav! + + + Na Noema! + + + Onehd jsem v Janov potkal Vana. Zadluil se banditm a nedokzal to splatit... No tak jsem mu vypomohl. + + + Super, kdy se k nm pid, cesta nm urit utee rychlejc! A navc nm me dlat mezka! Na Vana! + + + Mluv mi z due, kamarde. + + + U vdc v bunkru pebv njak vojk... nem nic lepho na prci, tak by teba souhlasil. + + + Jo, zoldt by se hodil. Pipijeme si na to, aby se k nm pidal! + + + Tak. + + + Te nebude vit vlastnm um. Nedvno jsem pomohl lidem z Monolitu... Konen jim toti vypadly ty klny z hlavy a oni najednou nevdli, co si maj sami pot. Tak jsem jim pomohl a te si vlej unky v Janov. + + + Hmm... ta vodka ti njak rychle nalezla do hlavy, ha ha! Ale co, alkohol v malch dvkch nekod v libovolnm mnostv. + + + Svat pravda. + + + Tak. To by mli bejt vichni. Te je hlavn, abysme v tom podzem nezabloudili. + + + Bez obav, sehnal jsem plny. + + + Parda. Pipijeme si znova na zdar na vpravy. + + + Nazdar! + + + Bez obav, kamarde... Onehd jsem nael Ozu. Sprvn, tu Ozu, do kter se nikdo nemohl dostat. + + + Kurva, ty si teda zlesk. S tebou se dostaneme do Pripjati, ani se nestihneme rozkoukat. Na zdrav! + + + Na zdrav! + + + Zdravko. + + + Myslm, e u mme dost lid. Meme jt. + + + Fakticky? Dal pr rukou by neukodil. + + + Fakticky. Jdeme. + + + M pravdu. Zkusm najt pr dalch lid. + + + Slva! Vyrme, panstvo! + + + Pojte! + + + Stelci jsou jakoe fajn, ale nezapomnl jsi na ochranu? Hehe, tak jsem to nemyslel... Chci ct, e potebuje oblek s uzavenm rozvodem kyslku. Tvoj mrtvolu nikam tahat nehodlm - u tak se s kvrem a munic du jako mezek. + + + Jasn, zbroj mm. + + + Pekme to tady. Emise kod zdrav! + + + Kde by se dali najt bojovnci do party? + + + Poptej se kolem Jupitera... Chlapm, co zstali na Zatonu, se do Pripjati urit chtt nebude. Potebujeme borce, kter tady nic nedr... Musej se ochotn pidat k nemu, co je - piznejme si to - dost zoufal akce. Nepamatuje se, e bys nkoho takovho potkal? Teba je ti kdosi dlunej nebo zn nkoho, kdo se jet neusadil... + + + U mme dost lid. Zas to nemusme pehnt a sestavovat cel batalion. Taktika malch drustev, zn to. + + + Co si mysl o Chodci? + + + Typov z Monolitu bejvaj dost fanatick, ukrutn bojovnci... Ale v bejvalejch lenech se u tak nevyznm. Tulk vypad zven klidn, ale zdn me klamat. + + + Supr! Zbroj Monolitu. Kdes ji proboha splail? + + + Mli akci dva v jednom. Tohle je Tulk, bval len Monolitu. + + + To jsem netuil, e existujou bejval Monolici. No, co u. Uvidme, jak se bude tvit, a pjde do tuhho. + + + Jak ti pipad Sokolov? + + + Ten borec nos interesantn oblek, jakoe vdeckej a tak. Podobnej kousek jsem nevidl aspo nkolik let. + + + To je Sokolov, kopilot z havarovanho vojenskho vrtulnku. + + + Podle toho, jak se nese, jsem poznal, e nebude dnej vdec. Dobrej vojk se vdycky hod. + + + Jak dlouho se zn s Vanem? + + + Prkrt jsme zakalili v baru. Je to prej estnej, optimistickej a vbec dobrej stalker... Ale nech si cokoliv nabulkovat a to je v Zn fatln chyba. + + + Take Vo do toho jde s nma, jo? Bezva, aspo mme nkoho, kdo pothne bgly. Haha, neboj, kmo. To jsem ekl jenom z prdele. + + + Nev, kdo mi mohl ukrst vci z osobn skky? + + + Tebe nkdo okradl? To nasere. Nevm, co ti na to mm ct. Nikoho podezelho jsem tu nezahldl... ale kdybych nco zjistil, urit ti dm vdt. Nikdo na zkladn nestojme o hady. + + + Slyel jsem, e se tu nedvno stlelo. + + + Jo, to jsem byl j. Nkolik idiot si eklo, e zachlastaj na vi. Jenome se tam pohdali, nebo j nevm co, zaali po sob hulkat a vbec. Vystelil jsem do vzduchu pr ran ze starho dobrho kulometu a oni odthli k rozvodn. Tak skonilo setkn dement, hehe. + + + Rozhodl jsem se, e vm dm ten artefakt z Ozy. + + + Moudr volba. Podej mi ho, prosm. + + + Tady je. + + + chvatn! Musme ten div okamit prostudovat... A mimochodem, dkuji ti za tv sluby. Tady m mzdu. + + + Nepotebujete s nm pomoct? + + + Ne, dkuji. U pro ns pracuje jedno drustvo stalker. Akoliv... existuje takov teorie, pesnji eeno sp legenda... slyel jsi nkdy o Oze? + + + Zkusm tu Ozu najt. + + + Nezlobte se, ale te mm kopu jinch starost. + + + Ne, neslyel. + + + Pak tedy poslouchej. Mluv o n mnoho lid, ovem zejm nikdo ji doopravdy nevidl. Funguje podobn jako liv prameny. Kdy do n vejde, zacel se ti rny a znovu nabude energii. Mezi stalkery koluje spousta historek, jedna neuvitelnj ne druh... Nkdo tvrd, e Ozu spatil ve snu, avak j se jako vdec musm ptt: Jak jsi poznal, e to byla Oza? Jestli t to zaujalo, zkus ji najt... Nemu ti sice slbit dnou tunou odmnu, nicmn jestli Oza opravdu existuje, jej objev by popohnal nae vzkumy mlovmi kroky vped. + + + Nael jsem Ozu. + + + Skuten? Ona vn existuje? Nemj m prosm za skeptika, ale pinesl jsi s sebou njak dkaz? + + + Ano. Nael jsem cosi, co pipomn artefakt. + + + Podej mi to, rychle! + + + Tu mte. + + + chvatn! Musme ten div okamit prostudovat... A mimochodem, dkuji ti za tv sluby. Tady m mzdu. + + + Kdepak. Me se mi to jet hodit. + + + To je od tebe ale nadmru sobeck. Navc i nebezpen. Neznme pesn vlastnosti tohoto artefaktu. Co si pone, kdy po probuzen zjist, e jsi pestal ctit nohy? Nebo e ti zelen ke? Ujiuji t, e nejlep msto pro takovto objekty je v rukou vdc. Alespo se sname chrnit ped jejich inky. + + + Na m tyhle vhrky nezaberou. Artefakt si nechvm. + + + No dobe, vezmte si ho. + + + Nepinesl. + + + Vbec nic? A co mm podle tebe zkoumat? V, m se vdci li od ostatnch lid? Pece tm, e my trvme na tom, aby byla kad teorie podloena fakty! Potebuji dkaz! + + + Dobe, vrtm se tam. + + + Tahle prce m u tak stla dost asu. Te se nemu vracet. + + + Jestli t nezajm nabzen plat, tak pomysli na vechny ty monosti, kter by Oza otevela medicn! Pokud se nepletu, sam podstava Ozy je anomln... je jednm z mnoha projev Zny. Je-li tomu tak doopravdy, jde o vbec prvn anomlii s livmi inky! + + + Co t sem pivd? + + + Potkal jsi ty oldky, kte ns brn? + + + Je pjemn opt se shledat s jinou inteligentn bytost. Jak ti mohu pomoci? + + + Vil bys tomu? Nkdo pmo ped nam bunkrem pozabjel oldky, kte ns mli hldat! + + + Hermanne, v nco o Oze? + + + Oze? Che! To je ist a needn le! Lidi rdi v v univerzln velk, a tak si vymlej takovto pohdky. Vte mi, Oza nen nic jinho ne vplod n nevybouen fantasie. + + + Mluv o n hodn lid. + + + Podezele hodn. Ale nikdo z nich tam osobn nebyl. J se drm vdeckho pstupu: dokud se o nem nedoke, e to existuje, neexistuje to. + + + Take vmysl... chpu. + + + Dobr, jdeme. + + + Bezva. Vrtme se dv, ne bys ekl upr. Ha! + + + To se uvid. + + + Bezva... pokme, ne pejde ta emise, a potom vyrazme. + + + Peju pknej den, stalkere. Jsem njakej Strejda Jar... Asi bude zmoenej z cesty, co? Kdy u jsi tady, dej si nco k zakousnut. Ukzal ses tu v pravou chvli - poteboval bych s nm pchnout. Ve svm vku u si nco sm neobstarm. J, to za mlada... + + + Co, u jsi sv? Nem chu na prochzku? Pece pome starmu ddkovi... + + + Jak jde ivot? Den ode dne vypad lp. + + + O jakou prci jde? + + + Je to jednoduch jako facka. Stavme se spolu v Kopai, to je kousek voca. Zbytek pochop, a tam budeme. + + + Pro ti nepomou kmoi ze Svobody? + + + Nechci je s tm zatovat. Tohle zvldneme sami ve dvou, no problemo. + + + Neel bys se mnou do Pripjati? + + + Kdepak... j, bejt tak mlad... pamatuju, e jsem chodval na Sibi a zptky. Dneska podnikm jen krat vlety. Asi u na m leze st. + + + Mj se. + + + Pokej. Jestli m nameno do Janova, co kdybychom li spolu? Kdy m lovk spolenost, cesta lp utk... + + + Dky, ale radi pjdu sm. + + + Tak na Janov! + + + Dk, es pomohl starmu ddkovi. Vezmi si tohle. A jestli m njakej dotaz, ptej se. Pokusim se odpovdt. + + + Pro sis nenechal pomoct od Svobody? + + + Jakej m smysl zneptelit oldky a Svobodu? Jednu vlku u na krku mme a ta nm sta. Jde o moj osobn zleitost, tak pro je do toho tahat, ne? + + + Co se tu vlastn stalo? + + + Pr kluin m pilo zabt... Byl jsem zrovna zalezlej v kov a vnoval jsem se bohulib innosti, kdy se objevila partika oldk. Jejich velitel vanil do svho PDA cosi o stedn laboratoi v Pripjati, nalhavej rozkaz, a kdesi cosi... J debil pak lpl na vtviku a upozornil jsem je na sebe. Popadl jsem puku a vzal jsem nohy na ramena, ale od t doby m pronsleduje pocit, e si pro m nakonec pijdou. Takov cena se dneska plat za odposlouchvn. + + + Hlavn je, aby ses nim nenechal vyvst z mry. Bu tie a poj za mnou... Kdy budeme jako myky a nebudeme se hejbat, vechno pjde jako po msle. + + + Chpu. + + + Musme odsud vypadnout. Vysvtlm pozdji. + + + Jasn. + + + Sestavuju partu, kter se mnou pjde do Pripjati. Nechce se pidat? + + + Zn to lkav, ale ne, dky. Vdci slbili, e mi seenou povolenku k pobytu v Zn a navc neplatj patn. Nezlob se, ale radi zstanu tady. + + + Meme vyrazit na men anomli? + + + My meme kdykoliv, hlavn kdy ns bude krejt. K jak anomlii jdeme? + + + Pjdeme na Blata. + + + Vezmeme to kolem Kopai k Popeliti. + + + Pokej, zistajasna jsem si to rozmyslel. + + + Co o to, my jsme pipraven. Ale radi bysme mli pokat,ne pejde ta emise. + + + Dobe. + + + Mme nameno, pojte pry. + + + Mn se to tu taky nezamlouv. Kam dl? + + + Na Blata. + + + Vezmeme to kolem Kopai k Popeliti. + + + K vdcm do bunkru + + + Pokejte, pemlm. + + + Meme se u vrtit k bunkru? + + + Sta jenom ct. + + + V tom ppad jdeme. + + + Dobe, jenom mi dej jet vteinku. + + + Ml bych pr otzek. + + + Ptej se. Jsem jedno velk ucho. + + + To je zatm vechno. + + + Jak pokraujete s mis pro vdce? + + + Aha, ty mysl ten tunel... Je v nm cosi divnho, njakej ciz artefakt nebo tak nco. Cel to msto je stran divn. Nejdv jsem byl pln v klidu a najednou slym hlasy v hlav... Navc se to tam hemilo tarbkama, ale o ty nemj obavy. S tma si snadno poradme. + + + Vy u jste tam byli? + + + Jo, ale neli jsme daleko. Chtli jsme namit nco pro Hermanna, kdy najednou se odkudsi vyvalilo stdo tarbk. Vrtili jsme je zptky a vdci se zaali nad naima menma tak rozplvat, a jsem myslel, e se pln rozteou. Te po ns chtj, abysme prohledali celej tunel odshora a dol, ale j dovnit nelezu! B si tam sm, my t akort budeme krejt. + + + No jasn. + + + Njak si poradme, s menm u mme zkuenosti. + + + Odkud mte zkuenosti s menm? + + + Upmn - men je jenom honosn slovo pro obyejnej kuinec. Mili jsme akort jednou - anomln pole ps-energie v tom zasranm tunelu. Jakmile jsme tenkrt zapnuli pstroje, z kad dry se na ns vyvalili tarbci. Palct od tama jen tak tak vyvznul v jednom kuse. + + + Nepilo vm to zvltn? + + + Ne, pro by mlo? Zna nem rda hluk, take tohle je pln normln. Jednou mi to vysvtloval Ozerskij, me si to u nj sm ovit. Zeptej se ho na vechno, teba v nco dalho, ale ped nma to taj. + + + Rozumm. + + + Aha. + + + Co k na ty lidi, kte ij v tom bunkru? + + + Povm ti, to je teda poveden partika. Dva vdci - Hermann, to je tam hlavn kpo, a Ozerskij. Zamstnvaj Novikova, kterej se star o techniku, a Garika jako prvodce. No a pak jet ns - najali si ns teprv nedvno, abysme pro n provdli men a dlali jin vdtorsk nesmysle. Jo a Garik do bunkru ped pr dnama pivlekl nkoho od armdy. To u budou vichni. + + + Povz mi nco o Hermannovi. + + + Hermann tomu vemu fuje. Dlval profesora v njakm institutu, nejsp tajnm... Expedici zorganizoval prv on a nechal si sem dopravit bunkr jen krtce po tom, co nkdo vypnul Vypalova mozk. To on taky naverboval ns a Garika. Plat dobe a dokonce slbil, e nm seene oficiln povolen ke vstupu do Zny. + + + Chci se zeptat jet na nco dalho. + + + Povz mi nco o Ozerskm. + + + Solidn, pjemnej chlap a zrove prav ruka velkho papale. as od asu si od nj Hermann nechv radit. Nic vc o nm ale nevm. My se vtinou domlouvme s Hermannem. + + + Povz mi nco o Novikovi. + + + Ty vole, to je snad Einstein na dovolen. Kdykoliv je poteba nainstalovat njakou serepetiku, v pesn, co dlat. Sotva bys nael nkoho lepho ne jeho. Nevm, odkud se tady vzal, ale pozn na nm, e v Zn nen dn mslo. V o n vc ne kdokoliv z ns. + + + Povz mi nco o Garikovi. + + + Garik je skvlej chlap. Byl jeden z vbec prvnch lid, co sem pili. Vykldal mi, e piel pln ve stejnou chvli, kdy tady vysazovali vdce, a tak se k nim rovnou pidal. Posledn dobou se zan nudit, protoe vysedvn na prdeli u ho nebere. Jenome neme odejt, dokud mu neskon smlouva. Jestli t zajmaj podrobnosti, stav se za nm. + + + Povz mi o tom vojkovi. + + + Che. Garik ho nael, jak utkal ped tlupou zombk. Ml kliku, e natrefil zrovna na Garika, protoe kdokoliv jinej by ho od pohledu oddlal. Od t doby nevychz u bunkru a j se mu vbec nevidm. + + + Co tu dlaj ti oldci? + + + Ti zaviven hrdloezov tu hldaj bunkr. Ukzali se tu ped pr dnama, prohodili pr slov s Hermannem a u tu zstali. Z Hermanna mm dojem, e z nich taky nem velkou radost... Jejich velitel si k pna a je to neopakovateln osobnost. + + + Povz mi nco o tchto koninch. + + + No, nedaleko odsud je oputn vojensk zkladna... severn od n najde vesniku Kopai. Kdy od n pjde na vchod, dojde na vlakov ndra, kde se usadili stalkei. Jo a na trati zstal vzet starej vlak... ale v mi, k nmu nen radno se pibliovat. + + + ekni mi nco o t vojensk zkladn. + + + Ale co bych ti povdal... veker cennosti u jsou dvno rozkraden, take dneska tam nezbv snad nic s vjimkou mutant a zombk. Taky tam mvali malej bunkr - akort dost velkej na to, abys v nm pekal emisi. + + + ekni mi nco o t vesnici. + + + No, vesnice je trochu siln slovo - zstalo tam jen pr hald. V estaosmdestm zavalili domy zem, aby z nich neutkalo zen. Dneska tam nikdo nechod, protoe to msto je nezdrav a navc tam nen nic cennho. + + + ekni mi nco o tom ndra. + + + Nemohl bys mi ct nco bliho o tom vlaku? + + + No, jestli jsi na janovskm ndra jet nebyl, rozhodn stoj za nvtvu. Me tam do sebe kopnout pr kousk, pokecat se stalkerama... plus je to jedin bezpen msto iroko daleko, kdy pominu n bunkr. + + + Koukm, e m novou vzbroj. + + + A jakou! Ode dneka jsme oficiln znm jako vdeckej vzkumnej tm Jiskra! Ale nemysli si, e te kdy se z ns stali vdci, jsme na tebe zapomnli. Haha! Obrtil jsem se na kolegy , dlouze jsme o tob diskutovali a dospli jsme k zvru... e sis zaslouil tuhle srandu, kamarde! A nkdy nabhne do anomlie nebo a t zasko emise, chra Bh, vzpome si na ns a poli nm dkovn psan. Rdi si ho peteme, to mi v! + + + Nazdar. + + + Zdravm. + + + Meme vyrazit, nebo mm jet chvli pokat? + + + U jsem myslel, e v tch tunelech zstanu jako tup zombie! Jak se mu svmu zachrnci odvdit? + + + Nechtl by sis trochu prothnout nohy? + + + Zdar, brcho. + + + To ti nezapomeneme. M to u ns. + + + Cosi mi k, e tady jsme skonili a e bysme mli co nejrychlejc vypadnout. + + + Tak co mi o tom tunelu pov? + + + Nen tu vbec dnej prach, ani jedin smtko. Hermann tvrd, e je to kvli t Tesle, ale mn se tomu nechce vit. + + + Zeptej se fa. J nevim, co ti smm ct a co si mm naopak nechat pro sebe. + + + Co jste nali, kdy jste mili to ps pole? + + + Viml jsem si, e na zemi byly stopy. Vypadaly jako lidsk, ale jakej magor by se tady promendoval bos? + + + Nejdv se ti zamot hlava a pak se vechno kolem tebe zane tak podivn kroutit. To dl to zasran psi pole. Doke si to pedstavit? + + + Tak co jsi nael pod zem? + + + Nic moc, jenom pr mrtvch tarbk. + + + Cha... ne e by jich kdekoliv jinde v Zn byl nedostatek. + + + Nen ti nic? + + + Jsem v podku, ale jen dky tob! Jako podkovn ti polu jedny souadnice. Najde na nich pr vci, klidn si je vechny vezmi. Nen toho moc, ale dvm ti to od srdce. + + + Jak ti je? + + + Ty vole, fakt dk! Dky tob jsem... nevm, co na to ct. Tady m souadnice od na skre. Abys vdl, e nejsem nevdnk. + + + ije? + + + Dky, tohle ti nezapomenu. Na, tohle jsou souadnice od na skre. Zaslou si je. + + + Mozek funguje? + + + Ty vole, co j vidl, kdy jsem byl... Celej ivot si to ponesu s sebou. + + + Take zptky do bunkru? + + + Si pi! + + + Tak pojte. + + + Jdi naped, j t doenu. + + + Jsou tv lidi pipraveni? Meme vyrazit k tunelu? + + + Sta ct. + + + km. Tak jdeme. + + + Pokejte jet chvli. + + + Pjdu sm. Potkme se na mst. + + + Pjdu sm. Potkme se na mst. + + + Ne. Nevme ti a as jsou penze. Bu pjde s nma, nebo zstvme tady. + + + V tom ppad pjdeme spolen. + + + V tom ppad si jet pokejte. + + + Ani npad... bhem emise ven nelezu. + + + Tak jsme tady. + + + Dme se do toho? + + + No rozhodn. + + + Dej mi chvli, ne se rozkoukm. + + + Co po m kurva chce? + + + Nic, jenom tak prochzm. + + + Tak pokrauj. + + + Dobe. + + + Zklidni hormon, debile. + + + Do toho ti nic nen! + + + Ech...ahoj... + + + ipera mi vylil, jak jsi lisn svin. Musel u jsi obrat nejednoho stalkera... + + + Co to mele? Nikd jsem nic takovho neprovedl! ipera to nem v hlav v podku! + + + Co jsi o m povdl banditm? Jak to, e na m ekali v pstavu pod jebem? + + + Musel sis m s nkm splst. S banditama j se nepaktuju! + + + ipera mi o tob povdal... radm ti, abys mi tu bouchaku dal dobrovoln. Obma nm to usnadn. + + + Co ti to nakecal? Nemm u sebe nic cizho! + + + B se vyvtrat, kamarde... + + + Pomoz mi, brcho. Potebuju lkrniku! + + + Nejdv mi prozra, kam jsi schoval moje vci! + + + Je mi to fakt lto, ale poteboval jsem prachy... Vechno ti povm, hlavn mi pomoz! Slibuju, e u se to nebude opakovat! Polepil jsem se! + + + Tak dobe. + + + Dky, kmo! Ty krmy jsem ukryl do sv skre ve stokch. Kus za rozvodnou. + + + Aha. + + + Nevm ti. dnou lkrniku nedostane. + + + Tu m. + + + Nic nebude. + + + Dkes. Neekal jsem, e mi pome... + + + Koho bych mohl najmout na ochranu vdc? + + + Povinnost, koho jinho? Koneckonc, prv Povinnost m nejlep bojovnky v cel Zn! Stre s tkma zbranma - hmm? + + + Nezamstnvaj u nhodou Svobodu? V tom ppad fakt nevm. Chtl jsem ti navrhnout Povinnost, ale ta s nima zrovna nevychz. + + + Vdci potebuj provst pr men. Kdo by se na to dal najmout? + + + Zeptej se ulgy. Ne e by jeho chlapi byli zrovna vkvt inteligence, ale pr rozumnch hoch se tam najde. + + + Pod jet plat Svobod za ochranu? Jestli jo, ani se nepokouej najmat Povinnost... A tm jsem prakticky vyerpal vechny rady. + + + Sotva jsme se dostali k podchodu, vtah pestal fungovat. + + + Ha, jeli jste toti na posledn fungujc genertor. A ten byl navc zlon. Bylo tst, e jsem ho vbec nahodil. Pak odvedl svou prci a chcpnul. Ml bys bejt rd, e vm to nevypnulo v plce cesty. Ten vtah neml dnej nouzovej vchod! + + + Nev, kdo mi mohl ukrst vci z osobn skky? + + + Co j vm, sakra! K tomu ti mu akort ct, e kdyby v Janov foval ulga, nikdy by se to stt nemohlo. + + + Doke se vlmat do ocelovho kontejneru? + + + Hele, nejsem dnej kasa. Na kovy m neuije... Ale a t bude trpit elektronika, sta zavolat. + + + Skupinka bezproblmovch len Monolitu hled nov domov. Kdo by jim mohl pomoct? + + + Dl si srandu? Ti lidi jsou prej zvata... No, stalkei je rozhodn neuvtaj s otevenou nru. Nejsp by ses ml obrtit na ulgu. Kdy podplukovnk rozhodne, e se mou pidat k Povinnosti, nikdo se jich ani nedotkne. Mon by se pro n nala i njak prce. + + + Doke rozifrovat ernou skku? + + + Mrknu se na to... tak tohle bude fuka. Potrv mi to odhadem ti hodiny a pijde t to draho. Nejdv to vyem a pak se domluvme na podrobnostech. B zatm nkam pry, a se mu soustedit. + + + Mrknu se na to... tak tohle bude fuka. Potrv mi to odhadem ti hodiny a pijde t to draho. Nejdv to vyem a pak se domluvme na podrobnostech. Mohl bys mi mezitm sehnat potebn soustky? Vydl si pr babek a navc ti dm slevu. + + + Co zas? Jet pod na tom dlm. Krucinl, ta ern skka je zlej sen... + + + U jsem si s tou skkou poradil. Ale byla to svisk prce, to mi v... + + + Co jsem dluen? + + + Minimln ti tcy. + + + Tu m. + + + Tolik nemm. + + + No, kdybys mi sehnal pr soustek, dm ti slevu. + + + Dkuji, pijte zas. + + + To mi pipad dost drah. Jet si to rozmyslm. + + + Dm ti slevu. Sta mi 2850,-. + + + Dm ti slevu. Sta mi 2700,-. + + + Dm ti slevu. Sta mi 2550,-. + + + Dm ti slevu. Sta mi 2400,-. + + + Dm ti slevu. Sta mi 2250,-. + + + Dm ti velkou slevu. Sta mi 2100,-. + + + Dm ti slevu. Sta mi 1950,-. + + + Dm ti slevu. Sta mi 1800,-. + + + Udlm ti jedinenou cenu. Pouhch 1650,-. + + + He he, samozejm nevm, co s tou nahrvkou hodl dlat, ale doufm, e ti to za takovou plku stoj. + + + To nech na mn. + + + Pod na t ern skce makm... Co kdybys byl uitenej a pinesl mi ty soustky? + + + Mysl Seka? Kdy jsem se jednou vracel pes Zaton, naskoval se ke mn a u se mnou zstal... Je to profesionln orala s letitma zkuenostma... cha! Pleitostn mi dl poslka. + + + Koho by mohly zajmat informace o zakladateli Povinnosti? + + + ulgu, jak jinak... Povinnost si na sv djiny potrp. V, co se k: peliv studuj historii, protoe se opakuje v kruzch. Nejdleitj je, aby se tyhle informace nedostaly do pracek Svobody, protoe ta by je bezpochyby pekroutila k obrazu svmu. Ne kvli nepejcnosti, ale kvli slab pamti... + + + Pinesl jsem ti to nad. + + + Supr... a kter pro m m? + + + To na zkladn prce. + + + Parda! Te u potebuju jenom nad na jemnou prci a kalibrovn. + + + To na jemnou prci. + + + Parda! Te u potebuju jenom nad na zkladn prce a kalibrovn. + + + To na kalibrovn. + + + Parda! Te u potebuju jenom nad na zkladn prce a taky nco na jemnj prciky. + + + Zatm dn. + + + Bezva! U jenom kalibran nad a mm vystarno. + + + Bezva! U jenom nad na jemnou prci a mm vystarno. + + + Bezva! U jenom nad na zkladn prce a mm vystarno. + + + No sakra! Kdes to vechno splail? + + + Kdybys poteboval nad, mu ti ho sehnat. + + + To bys byl moc hodnej. V tuhle chvli si pipadm jak v dob kamenn. Jedinej rozdl je v tom, e msto amansk hole mm pjeku... kdybych ml podn nad, mohl bych se pustit i do kvalitnch vylepen. A pro tebe by z toho urit taky nco kplo. + + + Dobe, podvm se po nm. + + + Rozmyslel jsem si to. + + + Dobrej npad. J budu moct dlat vylepen a ty si pivydl. + + + Mm PDA toho obchodnka z Povinnosti. Kdo by o nj mohl mt zjem? + + + Obchodnka z Povinnosti? Nekecej... Dej to PDA ulgovi, on u si to njak poe. Ale Svobod ani muk, kapito? Sta, kdy se dozvdj o jedinm kretnovi, a zneuijou to k popinn cel frakce. + + + Nael jsem pr dokument. Popisuje se v nich cesta do Pripjati. + + + Tak uka... jo, jo, aha... Take kdy to shrnu, existuje podzemn prchod nadepsanej Pripja 1, kterej se thne pod celou Pripjat. Z jednoho konce vysuje zamenou pepkou v pepravnm oddlen Jupiteru. No to m poser! Podle textu se zd, e ten podchod uzamkli, napustili plynem a odstihli od nj proud. Mohl bych se pokusit nahodit starej genertor a deaktivovat zmek. Jenome... + + + Jenome j do Jupiteru nevlezu bez ochrannho odvu. Tob bych doporuoval, abys ani nepomyslel na to, e bys do toho podzem mohl jt sm. Bude si s sebou muset vzt aspo pr kmo. Vichni budete potebovat obleky s uzavenmi rozvody kyslku, protoe jinak tam dole nepeijete ani pr vtein... Poslouchej, ve vi nedaleko odsud bydl tpek jmnem Zulus. Zkus se s nm domluvit. Jestli mu padne do oka, mohl by ti pomoct se sestavovnm drustva. + + + Mluvil jsi o materilech... + + + Jo, jasn. Tady je skoro nemon sehnat materily, kter potebuju k prci s rdiovou technikou. Spoteboval u jsem vechno, co jsem dokzal vyhrabat, a dal zsoby tady nikdo nerozv, protoe vc penz se d vydlat prodejem zbran... Slyel jsem ale, e mon nco zstalo na cementrn. + + + Mm ty materily, vezmi si je. Prohledal jsem celou cementrnu odshora dol! + + + No teda, ty m udivuje! Povsm si sem lsteek: odte mi, coby mj oblbenec, neplat za prci na opravch ani vylepench! + + + Povedlo se mi najt pr tch materil. Tady je m. + + + Pni! Prv sis zaslouil tunu slev, kamarde! + + + Zkusm ti ty materily sehnat. + + + To by bylo skvl! Kdybys nael nco jako kalafunu nebo kondenztory, pines mi to... byl bych sakra vdnej i za trochu textolitu. Nemu ti naslibovat hory penz, ale rozhodn u m dostane slevu. + + + K emu ty materily potebuje? + + + Pracuju sice s bouchakama a jinou vstroj... lovk si mus njak vydlvat na chleba, he he... Ale v srdci jsem radioamatr. Zn ten pocit, kdy seskld rzn soustky dohromady a ono to zane fungovat? Vzpomnm si, jak jsem jednou smontoval ruiku. Byla vn uiten, zapnal jsem j vdycky, kdy jsem nemohl usnout kvli hlenm z baru. + + + Co by dlaly soustky k rdiu v cementrn? + + + Cementrna je jenom takov pezdvka... cement se tam pestal vyrbt dvno ped havri ernobylu. Vyhzeli odtamtud, co se dalo, a ve vyklizench halch zaali montovat elektrick spotebie. + + + V Jupiteru jsem nael pr dokument. Chce se na n mrknout? + + + Tak... nevidm nic zajmavho. Sam ednick blboly. + + + Hmm... sem tam se najde njak zajmavost, ale nedoku z toho nic vyst. Potebovali bychom kompletn informace. Zajdi se podvat na msta, o kterch se tam pe. + + + U bych fakt poteboval k materily. Vdy takhle se ned pracovat! ... , nazdar. Co si peje? + + + Zdravm! Shn se po technikovi? Nemm tady sice skoro dn materily, ale pod ti dovedu spravit vybaven a provst pr zkladnch vylepen. + + + Tak hele, poslouchej. Napadlo m, e... vechny materily, kter bych poteboval, jsou urit v cementrn a akort tam chytaj prach. Kdykoliv na to pomyslm, mm chu vyskoit z ke. + + + Zdar! Rozbilo se ti nco, nebo sis naetil pr chechtk na vylepen? Nezapome, e u m m doivotn slevu! + + + Zdravko, kamarde. Jak ti mu pomoct? Nezapome, e ti vdycky udlm krsnou cenu. + + + Uml bys odblokovat pamov modul? + + + Snad jo... jet nikdy jsem to nezkouel, take budu potebovat aspo ti hoky. Ale milerd se o to pokusm. Kdy to vezmu kol a kolem, udlm ti dobrou cenu. Pouhou tiscovku. + + + Rd si pokm, take si plcneme! + + + Super! Hned se dm to prce a ty si zatm odpoi. Dm ti vdt, a skonm. + + + Tolik u sebe nemm. + + + No kdyby sis to rozmyslel, tak se vra. Ale za m penz ti to neudlm. + + + Jet si to rozmyslm. + + + kal jsem ti, e na to budu potebovat tak ti hodiny. Tiscovka je dobr cena. Bejt tebou, tak to beru. + + + Povedlo se odblokovat ten modul? + + + Ne, pod na tom dlm. Nemj strach, jakmile skonm, dm ti vdt. + + + Copak? Tys ten modul nedostal? Poslal jsem Seku, aby ti ho donesl - asi jste se museli minout cestou. Ale o nic jsi nepiel. Kdy pominu daje o hloubce zeminy a hustot vegetanho pokryvu, byly tam u jenom souadnice t vysla. Pepolu ti je na PDA. + + + Zkouel jsi ty chimry najt? + + + Ta zrann vyrazila k Zatonu. Gontova skupinka j je v patch... ale prej e by jim neukodilo, kdyby s nima el i zkuenej lovec. Kdybys jim skoil pchnout, urit bych se ti njak odvdil... Ta druh, teda ta, co zabila Lika... no, tak tu jsem ztratil. Doista se vypaila. Chudk Lik, byl to dobrej chlap... Asi u se na nm ale podepisovalo st. + + + No, s tou zrannou ses vypodal ty. Ta druh, teda ta, co zabila Lika... no, tak tu jsem ztratil. Doista se vypaila. Chudk Lik, byl to dobrej chlap... Asi u se na nm ale podepisovalo st. + + + m se iv? + + + Jsem lovec a donedvna jsem jet lovil mutanty, kte by mohli ohroovat stalkery. Dneska u jenom pijmm rozkazy a pedvm je mladm lovcm. Taky je cvim a um je taktiky lovu. + + + Povz mi nco o lovu mutant. + + + Na kadho mutanta se mus trochu jinak. Jedna taktika plat na bjurery a poltergeisty, pln jin plat na kontrolory. A chimry jsou pln speciln pklad. + + + Povz mi nco o bjurerech. + + + Takovej bjurer to pomoc gravitace... kdy se k nim pibl, odplkuje t a kdy jsi od nho dost daleko, zane po tob hzet vci. Ideln je dret si ho tak na stedn vzdlenost a hlavn nezastavovat, leda bys ml abnormln touhu dostat nm tkm po palici. Dvej si pozor a zbyten se neue! Bjurei dokou soustedit gravitan impulsy a s jejich pomoc ti zkus vyrvat zbra z ruky. Kdy bude zeslblej, nemusel bys ji udret. + + + Povz mi nco o poltergeistech. + + + Existujou dva typy poltergeist. Ten prvn po nepteli vrh pomoc gravitace pedmty,oproti tomu ten druhej pracuje s ohnm a sna se sv obti uplit zaiva. Nezkuen lovci se kolem nich snaej klikovat a vyhejbat se jejich tokm... Fgl ale spov v tom, e poltergeisti vid a sly trochu jinak, ne jsme zvykl. Oni se toti orientujou pomoc gravitanho pole a ct, kdykoliv se v nm njak vc pohybuje. Kdy tohle v, me to vyut ve svj prospch. Zkuenej lovec, jakmile uvid poltergeista, okamit ztuhne. Vystel a zase ztuhne. Vystel, ztuhne... a tak dl a do haleluja. + + + Povz mi nco o kontrolorech. + + + Kontroloi proti tob pouijou tvoj vlastn hlavu. A bude njakho lovit, je podstatn neustle se krt. Kdy t nevid, nedoke ti toti napadnout mylenky. Navc jsou celkem pomal, take a pjde do tuhho, nasa granty. + + + Povz mi nco o chimrch. + + + To jsou velmi nebezpen non dravci. Pod roukou temnoty se t pokus dostat za prdel a potom na tebe hupsnou zezadu. Proto kdy v, e po vs jde chimra, neustle se otej a krej zda svm kmom. + + + Povz mi nco o pseudoobrech. + + + Nejt잚 vc na lovu pseudoobr je prost je zabt. Ty bestie dokou schytat nehorzn mnostv ran, ani by je to jakkoliv rozhodilo! Napad m snad jen to, e na blzko se proti nim vyplat brokovnice. Hlavn pamatuj, e pseudoobr doke jedinou ranou urvat ze zem cokoliv, co nen zalit betonem. to vdycky z vrchu... a pohldej si, abys stl na nem, co se ned tak snadno rozbt. + + + Ale nic, kali na to. + + + Pro u nechod lovit? + + + U strnu, love. Pesn kvli tomu umel i Lik... to byl mj park a kmo. Spolen jsme skolili nejednu potvoru, bok po boku. Pak jsme jednou v Zatonu narazili na dv chimry, co je zve, kter v Zn u osmnct msc nikdo nevidl. Jedna strhla Lika k zemi dv, ne jsem vbec stihl vytasit brokovnici. Kdy jsem pak tu druhou zranil, ob utekly... doufm, e za tohle pijdou do pekla! + + + Nev, kdo mi mohl ukrst vci z osobn skky? + + + Hmm... to fakt netum... Mezi lovcema se nm takov vci nestvaj. Zato kdy nkoho podn nasere, me zjistit, e zan etit munic zrovna ve chvli, kdy ti na zda dejch krveiznivej upr. + + + Zoufal doba si d zoufal opaten... Soud podle toho, co vm o uprech, ekl bych, e nkolik z nich nebylo doma, protoe zrovna lovili. Ale kdy te nemaj dnej bezpenej pelech, kam by se mohli vrtit, u by stalkery nemli otravovat. + + + Neml bys jet njakou prci? + + + Jist. Ped pr dny se skupinka stalker vydala do tunel severn od fabriky a narazila tam na doup mutant. Vichni mli tak nahnno, e mi ani nedokzali popsat, co za mutanty to bylo. Pravda ale je, e dva stalkei se odtamtud u iv nedostali. Kdy se vrtili zptky do Janova, vichni zaali vyilovat a vyhlsili odmnu 5000 rubl pro kohokoliv, kdo se sebere a to doup vyist. Je to ale nebezpen prce, tak se rozhodni sm. Pjde do toho? + + + Pjdu. + + + Jsi statenej chlap. Hodn tst, bude ho potebovat. + + + Zatm ne. + + + Nedivm se ti. Pochybuju, e by si vbec nkdo troufl na cel hnzdo mutant. + + + Tu samou, co pedtm. Ble nespecifikovan mutanti v tunelech severn od Jupiteru. Odmna 5000. Tak nakonec do toho pjde? + + + Stalkei se momentln obvaj tch mutant, co se uhnzdili v tunelech. + + + Ti mutanti z tunel byli zmutovan trpaslci. Te jsou to mrtv zmutovan trpaslci. + + + Hdal bych, e lo o bjurery. To by vysvtlovalo, pro si z toho v Janov vichni nasrali do gat... No ale jestli u je stejn po nich, zaslou si odmnu. + + + Hdal bych, e lo o bjurery. Ty, co nedvno odrovnali dva stalkery. To by vysvtlovalo, pro na jejich hlavy lidi z Janova vypsali odmnu... No ale jestli u je stejn po nich, zaslou si odmnu. + + + Mu se pustit do t chimry. + + + Vborn. Ten lovec, co tu sviu zahldl, se s n potkal za setmn. Mla nameno k ventilanmu komplexu. Chimry jsou non, teritoriln dravci, take je pravdpodobn, e zrovna la na sv lovit... Doporuoval bych ti pokat, ne padne tma, a pak j hledat prv tam. Na druhou stranu je pravda, e ve tm jsou chimry aktivnj. Dvej si bacha a lovu zdar! + + + Chimra to m za sebou. + + + Dkuju... dkuju! Pomstil jsi Lika a j si konen mu spokojen vydechnout. Vezmi si tyhle prachy, zaslou si je. Jo a jet nco... tady m moj brokovnici. Tys mi daroval nco mnohem dleitjho - po dlouh dob klid. + + + Jsem Pastik. Ty se mi pedstavovat nemus. + + + Co t sem pivd? + + + Dk, e ses stavil. Shnm spolehlivho, zkuenho lovce a v Janov sotva seenu nkoho lepho ne tebe. Nemu tu chimru nechat znovu utct. Ne po tom vem, co se stalo... Dm ti za to vechny sv spory: 10 000 rubl. Chci ale, aby sis dl podn zleet. Musme pomstt Lika! + + + Na kolenou t prosm, abys tu chimru oddlal. Jestli ti je jedno, e ta bestie suuje Janov, udlej to aspo pro penze... 10 000 je solidn mn. + + + Jak to vypad s tou chimrou? as hraje proti nm, kdykoliv se me sebrat a odejt do novch lovi. + + + Rd t vidm! Co novho? + + + Nem pro m njakou prci? + + + Ale jasn... Na Blatech za cementrnou byla spatena skupina bainnch upr. Prozatm se zd, e nevychzej z bainy. Ale mstn stalkei by se chtli ujistit, e odtama u nikdy nevylezou... jestli mi rozum. Odmna za celou skupinu jsou 3 000. Co na to k? + + + Jdu do toho. + + + Super. astnej lov. + + + Te ne. + + + Tvoje volba... Dokud si tu prci nevezmou jin lovci, pod si to jet me rozmyslet. + + + Pod tu samou... myslm tu skupinu upr na Blatech za cementrnou. Odmna 3000. Jde do toho? + + + V tuhle chvli nemm nic jinho ne ty upry na Blatech. + + + Pobil jsem ty upry z bain. + + + Konen si stalkei trochu vydechnou. Tady m dohodnutou odmnu. + + + Bezva. Zdej stalkei budou mt radost, e se zbavili nedoucch soused. Dokonce se pro tebe sloili na odmnu, pesn to jsou 3000. Tu m, vezmi si je. + + + Zabili jsme s Gontou tu zatonskou chimru. + + + Tiscer dky. m m se tu tch besti toul, tm lp pro ns pro vechny. Kdybys tak jet mohl vystopovat tu druhou... + + + Dky, es vydil i tu druhou potvoru. Je uklidujc vdt, e u chimry nemou pipravit o ivot dalho stalkera. + + + Vysvtli mi, jak jsi zabil toho kontrolora. + + + Poslouchej a u se, kamarde, poslouchej a u se... jdu si takhle do sv skre, abych si vyzvedl pr vc, a najednou zmerm, e pmo na n si vysedv kontrolor. Popadnu teda kovovej poklop, kterej se vlel na zemi, a kryju si s nm hlavu, zatmco se plm k t potvoe. Ne se stihl probrat a rozkoukat, u jsem mu do hlavy vyprzdnil poloviku zsobnku. On se nasere a pokus se mi ovldnout mylenky, ale j ho pethnu pabou puky a tm ho konen dorazm. + + + Vyprvj mi o tch artefaktech v lomu. + + + Cha! Nevm, co bych ti povdal, protoe te v lomu zstalo leda tak velk hovno. Nem smysl hledat anomlie tam, kam u se dval Pazourek, to pece kadej v. + + + Take jsi to byl ty, kdo nechal v lomu kmoe umt v anomlii? + + + Coe? + + + Nic mi nedoke. A hlavn mele poviny... tvoje slovo proti slovu lena Svobody. Tady nepochod. + + + To se jet uvid. + + + Ne, nic. + + + Dky, mj se. + + + Vyprvj mi o tch uprech ze Zatonu. + + + Kdy jsem byl v Zatonu, upi tam stalkerm pekeln znepjemovali ivot. Stalkei je rubali ve dne v noci, ale k niemu to nevedlo. Rozhodl jsem se, e jim taky pchnu, a tak jsem popadl svoj broknu a nabhl jsem pmo do hnzda tch svin. Staila krtk veselka a zatonskej problm s uprama byl vyeen. + + + Vsadil bych se, e ani nev, kde to hnzdo bylo. + + + Vodpal. + + + Co tu zas chce! B si valit sraky do hlavy nkomu jinmu! + + + Ml by ses jt provtrat, kmo. Tvoje slovo proti slovu lena Svobody. Tady nepochod. + + + To se jet uvid. + + + Dky, mj se. + + + Me mi povdt ten pbh o zkratce do Jupiteru? + + + Asi takhle... prvodce dv chodil ze Zatonu pernou zachzkou. J jsem si ekl, e pjdu rovn... a tak jsem el. Voekoval jsem pr mst a ne bys ekl vec, ml jsem najitou cestu mezi anomliema. Sv info jsem pak prodal prvodci a on te vechny vod mou cestou. + + + Co kdybysme se Navigtora zeptali, od koho ty mapy koupil? + + + Vodpal. + + + Co tu zas chce! B si valit sraky do hlavy nkomu jinmu! + + + Doke mi velk kulov! Tvoje slovo proti slovu lena Svobody. Tady nepochod. + + + To se jet uvid. + + + Dky, mj se. + + + Povz mi o tom vletu do Ozy. + + + Byl jsem prvn lovk, co kdy vidl Ozu. Neni tam jedinej mutant ani anomlka - jenom kldeek a pohodika, totln relax. Artefakt jak nasrno, sta si jenom napchovat kapsy a vyrazit k domovu. + + + To jsou vsty! J jsem v Oze byl a vypad to tam pln jinak! + + + Vodpal. + + + Co tu zas chce! B si valit sraky do hlavy nkomu jinmu! + + + Hele, nepiuj. Tvoje slovo proti slovu lena Svobody. Tady nepochod. + + + To se jet uvid. + + + Dky, mj se. + + + Povdej mi, jak jsi pracoval pro vdce. + + + To jsem se takhle jednou zastavil v bunkru. Byli ze m radost bez sebe a povdaj: Pazourku, tebe nm pin samo nebe! Nakonec z nich vylezlo, e jenom potebujou nastrkat pstroje do nkolika anomli. J na to: Simvs, to je hraka! Udlal jsem vechno, pesn jak si pli. Nejt잚 na tom bylo vymltit z tch brejloun slben prachy. + + + Pesta si pisvojovat ciz zsluhy! To jsem byl j, ne ty! + + + Vodpal. + + + Co tu zas chce! B si valit sraky do hlavy nkomu jinmu! + + + Kecy... neme nic dokzat. Tvoje slovo proti slovu lena Svobody. Tady nepochod. + + + To se jet uvid. + + + Dky, mj se. + + + Zdrves. Taky sis piel poslechnout o mejch zitkch? + + + Chce se na nco zeptat? + + + Co chce? + + + Ty vole... kurva... j umrm... + + + Tady m lkrniku. + + + Dky, kmo... ale to nepome... Poslouchej... Piel jsem s chlapem se Svobody... nali jsme artefakt... cestou zptky jsem vlezl do plynov anomlie... Kdyby mi pomohl, mohl jsem to pet... ale... on sebral artefakt a m nechal leet... Tvrdil, e b pro pomoc... Najdi ho... Chci, aby vichni vdli... e se mu ned vit... + + + Najdu ho. + + + Pochybuju, e bych mu nco mohl dokzat. + + + Chytni m kolem ramen, odvedu t k doktorovi. + + + Stane se. Sbohem. + + + Nco tu pro tebe mm... + + + Mm masovou kuliku. Tady je. + + + Dky. Vdci plat dobe, ale m vc zajm povolenka. + + + Tiscer dky, kamarde! Te konen mu vyrazit do Pripjati. Te u jenom vymyslet, kudy se tam dostanu. + + + Koblek. Tady ho m. + + + Dky. Vdci plat dobe, ale m vc zajm povolenka. + + + Tiscer dky, kamarde! Te konen mu vyrazit do Pripjati. Te u jenom vymyslet, kudy se tam dostanu. + + + Tady m masovou kuliku a koblek. Ber. + + + Tiscer dky, kamarde! Te konen mu vyrazit do Pripjati. Te u jenom vymyslet, kudy se tam dostanu. + + + Nic. + + + Nenud se tady? + + + Zmnil ses o sv smlouv... + + + No, upsal jsem se, e budu pro vdce dlat velijak prce, v domnn, e to bude snadn. Bohuel jsem si u neviml, e smlouva vypr teprve ve chvli, kdy bude vechna prce hotov. Vdci mi slbili, e mi na konci daj oficiln povolen k pobytu v Zn. + + + Splnil jsem kadikou zasranou poloku smlouvy a na jedinou drobnost. Musm najt vechny existujc chemick anomlie. Kdo ml tuit, e se tady v okol nedaj sehnat Flky masa ani Koblky? Mt tak tyhle dva artefakty, u dvno jsem mohl marovat na Pripja. Ale j je nemm! + + + Teba bych ti s tmi artefakty mohl pomoct. + + + koda. + + + Jasn... Masov kulika a Koblek. Pripja vol! + + + Co je na Pripjati tak zvltnho? + + + Nikdo nev, jak se tam dostat. Mysli na to, e jsme v Zn, take to neme jen tak stihnout vzdunou arou. Povd se, e je to hotov studnice poklad. Vbec kolem Pripjati koluje tolik historek, e se tam chci podvat u jenom kvli tomu. + + + Dvm dohromady lidi, co se mnou pjdou do Pripjati. Pid se k nm? + + + Abych pravdu ekl, taky u jsem uvaoval, e bych tam vyrazil. Ale chtl bych jt sm. Nic ve zlm... jsem prost zvyklej pracovat na vlastn pst. + + + Cha! Shodou okolnost se tam taky co nevidt chystm... Ale chtl bych jt sm. Nic ve zlm... jsem prost zvyklej pracovat na vlastn pst. + + + Vtej v palci nudy. + + + Ty vole, jak j bych chtl do Pripjati! + + + Sta jenom vymyslet, kudy se do Pripjati dostanu, a budu tam rychle jako vtr! + + + Tady je fajn. Pesn takhle se m ivot t! + + + Je tu bezpeno, to se ned upt. Ale k by tu nebyla takov nuda! + + + S tmi artefakty bych ti mohl pomoct. + + + Opravdu zn cestu do Pripjati? + + + Neznm. Ale to msto je pln artefakt a j u tam njakou cestu najdu. Jsem pece przkumnk jako dnej jinej... Byl jsem jeden z prvnch, co nali cestu k Jupiteru. Ale ze zsady pracuju slo. Nemm as krejt zda nkomu dalmu. + + + Zavede m do Jupiteru? + + + Jasan. Meme vyrazit? + + + Jo. + + + Jet ne. + + + Ne bhem emise. + + + Zavede m do Pripjati? + + + Za 5000 bych si dal ct. Mm to tam rd! + + + Dohodnuto. + + + Ne, dky. + + + Jak mysl, tvoje volba. + + + Nemm u sebe dost hotovosti. + + + Za 5000 bych si dal ct. Jenom pokej, ne se peene ta emise. + + + Me m zavst do Zatonu? + + + Kdepak - tam je dsn nuda. Zeptej se tmhle Navigtora, ten se star o bezpen, ale navn zakzky. + + + No... j t mu zavst do Janova a za 3000 navc domluvm s Navigtorem, aby t vzal do Zatonu. Co ty na to? + + + Souhlas. + + + Ne. + + + Tvoje rozhodnut. + + + Nemm dost hotovosti. + + + No... j t mu zavst do Janova a za 1000 navc domluvm s Navigtorem, aby t vzal do Zatonu. Co ty na to? + + + Kdepak - tam je dsn nuda. Ale tmhleten chlpek, to je Navigtor, ten se star o bezpen, navn zakzky. A se peene emise, zeptej se ho. + + + No... j t mu zavst do Janova a za 3000 navc domluvm s Navigtorem, aby t vzal do Zatonu. Jen co se peene emise, samozejm. + + + No... j t mu zavst do Janova a za 1000 navc domluvm s Navigtorem, aby t vzal do Zatonu. Jen co se peene emise, samozejm. + + + Prej e jsi piel tunelama? J taky pichzm od Jupiteru - nael jsem tam podzemn cestu. Kdybys poteboval, mu t vzt zptky zadarmo. Ochotn udlm vechno, co je v mch silch, abych pomohl... ehm... adm. + + + Nazdar, kamarde! Slyel jsem, e jsi piel tunelama? J taky nael podzemn cestu. Kdybys poteboval, mu t vzt zptky zadarmo. Ochotn udlm vechno, co je v mch silm, abych pomohl... ehm... adm. + + + Zdravko, kamarde! Slyel jsem, e jsi piel tunelama? Nebude tomu vit, ale mn se povedlo vyvlct se ze smlouvy a zrove dostat to povolen... Jakmile jsem byl volnej, vyrazil jsem semka a nael tu podzemn cestu. Kdybys poteboval, mu t vzt zptky zadarmo. Ochotn udlm vechno, co je v mch silm, abych pomohl... ehm... adm. + + + Nazdar, kamarde! Slyel jsem, e jsi piel tunelama? J taky nael podzemn cestu. Kdybys poteboval, mu t vzt zptky zadarmo. Ochotn udlm vechno, co je v mch silm, abych pomohl... ehm... adm. Mimochodem, dk, es mi pomohl dokonit tu dohodu s vdcema. Trochu jsem pohledal a nael jsem tohle tu m. Vak ty u to njak vyuije. + + + Topole, pro vdeck bunkr nebrnte vy? + + + Na prac je pece mit anomlie a nabrat vzorky. Te u jsou z ns prakticky vdci. A navc... ne e bych ml nco proti t prci jako takov, ale rozhodn se nechci zaplst s tma novma neptelema armdy. Byl bych nerad, kdyby mi njakej oldk prohnal hlavou kulku. + + + Vlezl jsi na patn msto, kamarde! Vypadni dv, ne zane bejt i patnej as! + + + Chce ns nasrat, nebo co? Thni voca, ne jednu schyt. + + + Kli se, vole. Jestli nechce, abysme byli zl. + + + Co budete dlat te? + + + Co nevidt se vracme do Janova. Poj s nma, jestli chce. + + + Mm to po cest. Pidm se k vm. + + + Ne, to by byla zachzka. + + + Jet e jsi je k nm pivedl. Sami od sebe by dlouho nepeili. + + + Dky, e pomh nm v Povinnosti. + + + Co budete dlat te? + + + Co nevidt se vracme do Janova. Poj s nma, jestli chce. + + + Mm to po cest. Pidm se k vm. + + + Ne, to by byla zachzka. + + + love, udlal jsi sprvnou vc. Ty chlapy jsi dostal z prseru a nm si sehnal novou krev. Respekt. + + + Dky, e pomh nm ve Svobod. + + + Nev, kdo mi mohl ukrst vci z osobn skky? + + + To netum - tady se mot spousta lid. Mohl by ses optat Kostihoje, ten tu zn skoro kadho. + + + Pjdeme za Zulusem. + + + Dobe. Doufm, e nezane stlet, a uvid moji starou zbroj! Musme ji po cest vyzvednout... a vrtit tu, kterou mm zrovna na sob. + + + Jdeme. + + + Pokej. Emise neprospvaj zdrav... chvilku pokme. + + + Co se stalo? + + + No... nepamatujeme si, odkud jsme se tu vzali. Vm jenom, e jsme patili k Monolitu... Ctili jsme palivou touhu jt a do samotnho stedu Zny. Tam se toti nachz Monolit - meteorit z ciz planety, kterej na Zemi pinesl zrodky cizho ivota... Pamatuju si, jak jsme spolen dorazili k ernobylu... A pak u je to jedno velk okno... Vybavuju si jenom jasn svtlo... mrz a v morku kost... a istej hlas... Vechno bylo tak dokonal. Nevzpomnm si ale, co mi ten hlas pikzal... Nkolik let ivota, a jen tak se mi vypaily. S klukama je to pln stejn... Te nevme, co mme dlat. Minimln potebujeme msto, kde se meme schovat ped emisema a mutantama. Nenapad t, kde bychom byli v bezpe? + + + Kousek odsud maj stalkei zkladnu. Mu vm to ukzat na map. + + + To nebude dobrej npad... U kdy jsme li k ernobylu, lidi se na ns dvali skrz prsty... a cosi mi k, e potom jsme dokonce zabjeli stalkery. V, jak te vichni nesnej nai frakci? Urit zanou od pohledu stlet... Nemohl bys nm pomoct? Nemohl bys vem stalkerm v tboe vydit, e u nejsme dn zabijci? Nemohl bys s nimi promluvit a zadit, aby ns pijali? + + + S radost. Promluvm si s nimi, a zase pijdu na zkladnu. + + + Je mi lto, s tm vm nepomu. + + + S m byste potebovali pomoct? + + + Potebujeme msto, kde se meme schovat ped emisema a mutantama. Nenapad t, kde bychom byli v bezpe? + + + Zeptm se lid v Janov. + + + Je mi lto, s tm vm nepomu. + + + Jestli se chce dostat a do Pripjati, potebuje oblek s uzavenm rozvodem kyslku. + + + To nen problm. Schoval jsem si svoji starou zbroj z Monolitu a ta m pesn tohle. Problm je, e se v n nesmm v Janov moc ukazovat. + + + Dvm dohromady lidi, co se mnou pjdou do Pripjati. Pid se k nm? + + + Rd bych... fakt dsn rd bych zjistil, co se nm tam tenkrt pihodilo. Ale te nemu. Nemu tu pece nechat sv kluky samotn a oni s nma nepjdou. U tam si proli peklem. + + + Ano, pjdu s tebou. Chci konen zjistit, co se nm to pihodilo. Doufm, e v Pripjati na tu otzku najdu i odpov. Jenom musm dt vdt Lokimu, snad nebude mt nic proti. + + + Ano, pjdu s tebou. Chci konen zjistit, co se nm to pihodilo. Doufm, e v Pripjati na tu otzku najdu i odpov. Jenom musm dt vdt ulgovi, snad nebude mt nic proti. + + + Meme jt? + + + Meme. + + + Ahoj, stalkere. Me nm pchnout? + + + Ahoj. U jsi zjistil, jestli se meme ukzat na t zkladn? + + + Ne, pracuje se na tom. + + + Posp si. Nikdy nev, co se tu me stt. + + + Ahoj. Dky za pomoc. + + + Ahoj. + + + Jak se vede? + + + Vede se fajn, drustvo je v podku. Jen bych opravdu rd vdl, co se nm to pihodilo. + + + Co tu vyvdj oldci? + + + Na to se b zeptat Hermanna. O sprvn zleitosti laboratoe se star on. Pokud se nepletu, Hermann se s tmi oldky dohodl, e nm budou hldat laborato. Pesnj podrobnosti t dohody ale neznm. Musm vak podotknout, e se ji pi nkolika pleitostech projevili bt schopnmi bojovnky. + + + Co tu dlte? + + + To mla bt enick otzka? Provdme vzkumy. Zajm t snad nco konkrtnho? + + + Co je clem tch vaich vzkum? + + + Nemme dn jasn stanoven cl. Dalo by se ct, e jsme takov vdeck pedvoj. Sname se odhalit korelaci mezi jistmi jevy, formulujeme hypotzy a pot se je pokoume potvrdit i vyvrtit. Nkter nae hypotzy nemaj dn praktick vyuit. + + + Co v o Zn? + + + V tomto stdiu se mohu jedin dohadovat... Osobn vm, e Zna vznikla dsledkem psoben jaksi nov sly. Elektromagnetick pole, fyzick sla ani emise by nedokzaly pozmnit biosfru tak rychle. Samozejm e st mutac lze vysvtlit radioaktivnm zen... ale pozor! Aby bn prase zmutovalo ve flaksu, potebovalo by stovky, ne-li tisce let! V Zn dolo k rozshlm mutacm v du pouhch rok. Skoro jako kdyby nkdo pmm zsahem mnil genetickou informaci jednotlivch zvat. Sotva na to pomyslm, zan mi bhat mrz po zdech. + + + Jak dlouho jste v Zn? + + + Ani ne tden. Stlo ns to obrovskou nmahu, ne jsme pekonali byrokratick obstrukce a zorganizovali expedici. Nebt Hermanna, mohli jsme jet stle postvat na hranicch Zny, zatmco stalkei by z n drancovaly nedoceniteln pedmty. + + + To mi prozatm sta. + + + Ozerskij, pro si m Hermann najal, abych hldal vae misk drustvo? + + + Byl to mj npad. Hermann nechpal, k emu je to dobr, ale j ho pesvdil. Bhem vzkumu jsem piel na to, e nae vysokofrekvenn mc pstroje, kter pouvme v anomlnch polch, vyvolvaj ve zmutovanch tvorech zvenou agresivitu a zrove je provokuj k vy aktivit. Jednodue eeno, mutanti zanou hledat koist. + + + Ozerskij, mm pro tebe pr novinek. + + + Ano? Poslouchm. + + + Ml jsi pravdu. Zatmco jsme provdli men, mutanti nm nedali ani na chviliku pokoj. Jakmile jsme ale vypnuli pstroje, uklidnili se. + + + Coe? Jestli... jestli je m hypotza pravdiv, je vysoce pravdpodobn, e zmutovan zvata, kter zskala schopnost napojit se na informan kanly, mohou telepaticky pijmat signly z vnjho prosted... uml signly... V takovm ppad... nejsou ty abnormln podobnosti mezi mutacemi a charakteristickmi zmnami v bunn struktue... vbec nhodn! + + + Nemohl bys to trochu rozvst? A snait se tentokrt mluvit srozumiteln? + + + Ne! To byly ist jen domnnky. Ach, jsem tak nevychovan! Upmn dkuji za to, jak jsi nm pomohl ve vzkumu. + + + Co mm udlat, abys Hermannovi ekl o ten oblek? + + + Na hranicch lomu se objevila oblast, ve kter se uchytila doposud neznm anomln rostlina. Vzorek tto rostliny bych opravdu moc rd zskal do rukou, ovem stalkei se k tomu mstu odmtaj by piblit. Mt tak jednu z tch rostlin, mohl bych profesoru Hermannovi nabdnout, aby t odmnil jednm rezervnm oblekem. + + + Tak j ti tu kytku najdu. + + + Vborn. Poslm ti do PDA souadnice t anomlie. + + + Snad jindy. + + + Stav se, a si to rozmysl. + + + Tady je ta kytka, co jste ji chtl. Mu u dostat ten oblek? + + + Skvl. Sokolov se mezi e zmnil, e ten oblek m bt pro nj. Ale to nevad. Uku Hermannovi tu rostlinu a on urit bude souhlasit, abychom vm ten oblek dali. Vyid Sokolovovi, a si ho tu vyzvedne. + + + Mohl bych vm sehnat nov stre. + + + To by od tebe bylo velmi laskav. Domluv se prosm jet s Hermannem. Spad do do jeho pole psobnosti. + + + Chtl bych si nechat pemit svou odolnosti proti ps-zen. + + + Che, a to t Hermann posl za mnou? Dobr, vysvtlm to pokud mono polopat. Mm-li sprvn zmit tvou odolnosti ped ps-zenm, poteboval bych kvalitn vzkumnou laborato a lta bdn. Vybaven, kter mm po ruce tady, by se dalo popsat jako pr zaprasench zkumavek. + + + Take to nepjde? + + + Ne tak rychle. Tady nehovome o pln analze. Pro nae ely posta, kdy njakm zpsobem zmme odolnost tvch neuron ped vlnami ps. To zvldneme i zkladn zkoukou. Take... zd se, e hlavu m v podku. Tm chci ct, e se doke pohybovat i v relativn vysokch hladinch ps- zen, ani bys ztratil vdom. + + + Jak znla ta hypotza o zven agresivit mutant? + + + Na to mm dv teorie. Podle t prvn me bt zven agresivita mutant zpsobena vniknutm vt skupiny lid na jejich zem a v takovm ppad jde o chovn zcela bn se vyskytujc u nezmutovanch druh vetn lid. Druh teorie tvrd, e mutanti dokou njakm zpsobem zachytit aktivn zen vydvan naimi pstroji. Ta druh teorie je samozejm mnohem zajmavj. + + + Jak by se to dalo ovit? + + + Mohli bychom aktivovat mc pstroje v oblasti, kde dosud nebyla zaznamenna dn aktivita mutant. A abychom navc minimalizovali efekt mnoha naruitel, ml by experiment provdt maximln jeden lovk. + + + Pinesl jsem ten skener. + + + Jak namil vsledky? + + + Nevm, co z t mainky dostanete, ale vm, e to potvrd vai hypotzu. Jakmile jsem skener aktivoval, neuplynulo ani pt minut a u se po mn spali snorkov. + + + Pesn, jak jsem si myslel. Z njakho dvodu se vdycky potvrzuj zejmna ty nepzniv teorie. Tak i onak, hlavn je, e jsi to vyzkouel. Te musme dbt na to, aby kad drustvo, kter poleme nco namit, bylo vyzbrojeno a pipraveno na tuh boj. + + + Zkusm potvrdit nebo vyvrtit tu vai hypotzu. + + + T m, e na svt stle jet ij lid, kte jsou ochotn podstoupit velk obti ve jmnu vdy. Nejlep msto k proveden experimentu bude ten zval na jinm konci lomu. Ta oblast je pln gravitanch anomli, jim se mutanti bn sna vyhnout. Dm ti zazen, kter v sob m zabudovan detektor mutant. A experiment vykon a to zazen mi vrt, budu si moci snadno prohldnout, jak dopady mlo zen na agresivitu mutant. Jsi pipraven? + + + Jo, jdu na to. + + + Zatm jet ne. + + + Nedal by se u vs sehnat vdeck oblek? + + + To by bylo proti pedpism. Musme si vst podrobn rozpis vekerho invente. Ale jak znm Hermanna, urit objednal vc kus, ne kolik vyuijeme. Myslm, e za jistch okolnost by se nechal pesvdit, aby se s jenm oblekem rozlouil. + + + Nepotebujete najt njak artefakty? + + + Ne, je mi lto. U jsme pestali poslat nhodn lidi na lov artefakt. Podepsali jsme smlouvu se zkuenm lovcem artefakt. Ten nm vdycky obstar ve, co potebujeme. + + + Mohl bych vm sehnat nov strn. + + + To by bylo vten. V Zn nikdy nen klid... Promluv si o tom s Hermannem, on je tady f. + + + M mi vydat skener pro przkum anomli. + + + Tu m. Ti, pesn jak ekl Hermann. + + + Tu m. Jet ti dm dva, pesn jak Hermann chtl. + + + Jak si mu obstarat vdeck oblek? + + + O n invent se star Hermann. Ale nemus se ani chodit ptt, nic z nj nevymm. Zkus si msto toho promluvit s Ozerskm. Ten je na jednu stranu vc laxn, na druhou stranu doke Hermannovi promluvit do due. + + + Co t sem pivd? + + + Posly, kam se podli ti oldci? Myslm ty, kte vs brnili. + + + Jak jde ivot? + + + Hele, nkdo vm postlel ty oldky, co vs mli hldat. Sm jsem je sice neml zrovna v lsce, ale tohle zachz pli daleko... + + + CS-3a, parda! Moc dobr zbroj. Pipomn mi star zlat asy... + + + Doke odblokovat pamov modul? + + + Mrknu se na to... bez problmu. Tohle u jsem prkrt dlal. Nepotrv to dle ne hodinku. Budu za to chtt... hmm... 2000. Plat? + + + Plat. + + + Dobr. Dm ti vdt, a to odblokuji. + + + Tolik penz nemm. + + + Hmm... no, kdy tak v, kde m najt. Pochybuji, e nkdo odvede lep prci ne j. + + + Jet si to rozmyslm. + + + Jak jsem kal. Udlm ti to do hodinky za 2000. + + + Tak co, odemkl jsi ten pamov modul? + + + To jet nebyla hodina. kal jsem, e a skonm, tak se ti ozvu. + + + Ano, tady je. Me si z nho vythnout informace. + + + Nael jsem zvltn poloartefakt. Chce se na nj podvat? + + + Zajist. Kde jsi k nmu piel? + + + V Zatonu, na oputnm nm rypadle. + + + Plat. + + + Ne, dky. Seenu si jinho kupce. + + + Co tu vyvdj ti oldci? + + + Uzaveli jsme s nimi smlouvu o obran na mobiln laboratoe. Abych pedeel dalm otzkm, dodm, e jsme nemli jinou monost ne najmout je. Kvli jist psn tajn vojensk operaci nemohlo veden pidlit na akci dostatenou ochranku. Kdy se k tomu pite skutenost, e stalkei zaali znenadn hromadn let kvli artefaktm, nemli jsme na vbr a museli jsme najmout oldky, aby laborato byla v bezpe. + + + m se tu zabvte? + + + Zkoumme rozlin jevy. + + + Co je clem toho vaeho vzkumu? + + + Provdme zkladn vzkum. Jinmi slovy, nepili jsme zkouet nov modely kombinz, testovat nov lky ani nic takovho. Pokoume se najt logick vysvtlen jev, s nimi se v Zn setkvme. Kdyby se nm podailo zjistit pravdu o alespo deseti procentech zdejch jev, otslo by to celosvtovou scnou vdy a vzkumu. + + + Co v o Zn? + + + Abych byl upmn, jen mloco. Zanme teprv chpat mechanismy pohnjc jevy, s nimi se setkvme. Od pochopen Zny jako celku ns bohuel stle dl nekonen propast. Ve se navc jet komplikuje tm, e Zna se prbn mn. Te nemm na mysli, kdy se sem tam objev nov anomlie, kdepak. Mluvm o zvanjch zmnch, takovch, kter lidsk oko nevid. Jednm z pklad je slbnut magnetickho pole. Nejsmutnj na tom vem je, e vbec netume, k emu to vechno smuje. Nezbv nm nic jinho ne sedt a ekat. + + + Jak dlouho u jste v Zn? + + + Dlouho ne, zhruba tden. Ale musm zmnit, e u dv jsem prkrt navtvil Sacharovu laborato. Dodnes lituju, e se nm nepodailo odstartovat tuto expedici dve. Vysvtloval jsem lidem na ministerstvu kolstv, e musme mt neustle pipraveny dv mobiln laboratoe k okamitmu nasazen... oni jen tak kvali tmi svmi sdelnatmi bradami a tm to haslo! Kvli nim jsme tm propsli nejvt pleitost, jakou nm Zna dosud nabdla! + + + Aha. + + + Hlsily ty skenery, kter jsem poloil do anomli, njak daje? + + + Jak anomlie t konkrtn zajm? + + + Ta u parkovit. + + + Ano, pstroje hls, e v t anomlii se nachzej artefakty. + + + V t anomlii bohuel dn artefakty nejsou. + + + Betonov vana + + + Asfalt + + + Blata + + + Popelit + + + To zatm ve. + + + Jsem jedno velk ucho. + + + Nedvn udlosti ns jasn varovaly, e n vzkumn tm stle nen dostaten pipraven na prci v ternu. Oproti tomu tob se povedlo zlikvidovat toho kontrolora i bez ciz pomoci! Docela m udivuje. + + + Kam tm m? + + + Mm k tomu, e je od ns naprosto logick, kdy se takovho schopnho experta, jako jsi ty, pokusme najmout. Nae vzkumn skupina by tvou pomoc bezpochyby uila. Potebujeme provst rzn men, rozmstit skenery... + + + Pokrauj... + + + Snam se hledat korelace mezi emisemi a utvenm novch anomli i artefakt. Mm takovou teorii, e podle mnostv a kvality vytvoench artefakt se d spolehliv pedpovdt pt emise. Abych vak mohl provst potebn vpoty, potebuji nasbrat statistick daje. Stailo by jenom rozmstit skenery do nkolika anomli rznho typu. + + + Je mi lto, nemm zjem. + + + To je koda. Pomohlo by to vd. + + + Dobr, tak j vm pomu. + + + Vten! Skenery si vyzvedni u Novikova a pak je rozmsti do anomli, kter jsem ti vyznail ve tvm PDA. A bude hotov, vra se zptky za mnou. Chci s tebou prodiskutovat jet jinou zleitost, je se tk men a skener. + + + Nechm si to projt hlavou a pak se vrtm. + + + Rozmstil jsem ty skenery do anomli. + + + Vborn! U mi pichzej prvn vsledky. Nemu se dokat na dal emisi. Poskytne nm potebn statistick vzorky... + + + To zn velmi zajmav! + + + Kdy jsem piel bl a vythl jsem v detektor, vci kolem m se zaaly divn kroutit, skoro jako kdyby se ve stlaovalo. Po krtk prodlev se ve vzduchu zhmotnila tla mrtvch stalker! A pak to pestalo. + + + To je k neve! Je zejm, e tyto daje jsou k uzoufn spor a e se z nich ned nic odvodit na jistotu, ale pesto tvoje vyprvn zapu do zznam. Budeme t anomlii kat prostorov bublina! + + + Koukm, e mte nov strn. + + + Ano, jsou velmi mil. Ctme se pod jejich ochranou velmi bezpen. Dky za pomoc, tady m odmnu. + + + Podvej se na tyhle dokumenty. + + + Hned se mrknu... Nebudu se ptt, kde jsi k nim piel, ale jsou k neuven! Hned si je zkopruji. A mimochodem, vezmi si tuto skromnou odmnu. + + + Kam se podli strn? + + + J nevm, prost zmizeli! + + + Mm v Zn dost znmch. Teba bych vm mohl najt nhradu. + + + To by bylo bjen! Vmnou za prci jim poskytneme plnou vdeckou podporu a nejnovj technologick vdobytky! A ani vy nepijdete zkrtka! + + + Dohodnuto. + + + U se nemu dokat! + + + Rozmyslel jsem si to. + + + To m mrz. + + + Stane se. + + + Jet nco? + + + Zabili nm stre! Zastelili je pmo ped nam bunkrem! + + + V Jupiteru jsem nael pr dokument. Chtl by ses na n podvat? + + + Jsou zajmav, ale nic uitenho. I tak ale dky za snahu. Kdybys nael jet nco dalho, pines mi to. + + + Kdy jsem se shnl po dokumentech, pepadli m oldci. Tohle je PDA jejich velitele. + + + Pni a j myslel, e ns tu mli chrnit! Tohle budu muset oznmit nadzenm. Mockrt ti dkuji, mladku. + + + Bohuel neobsahuj dn uiten informace. + + + Jedna vc by tu byla: potebujeme se dozvdt, jak technologie se v Jupiteru vyvjely naposledy. Nutn shnm technickou dokumentaci prv k tmto technologim. Mly by se dt najt v administrativn sti tovrny... pravdpodobn. + + + Podvm se po nic a pinesu ve, co najdu. + + + Ne, s tmhle vm nemu pomoct. + + + Pinesl jsem z Jupiteru ty dokumenty. + + + Jsou zajmav, ale nic uitenho. I tak ale dky za snahu. Kdybys nael jet nco dalho, pines mi to. + + + Kdy jsem se shnl po dokumentech, pepadli m oldci. Tohle je PDA jejich velitele. + + + Pni a j myslel, e ns tu mli chrnit! Tohle budu muset oznmit nadzenm. Mockrt ti dkuji, mladku. + + + Zkusm tu anomlii najt. + + + Neml jsem as. + + + Piel jsem si promluvit o sv spoluasti na vzkumu. + + + Vm, e budu mluvit za vechny, kdy eknu, e by ns ohromn potilo, kdyby ses opt propjil do slueb vdy. O co bys ml zjem? + + + Rd bych vm pomohl s menmi. + + + Opravdu si nm peje pomhat pi ostrm ternnm men? + + + Jist, rd pomu. Co mm udlat? + + + Ne, jet si to musm rozmyslet. + + + kal jsi nco o rozmsovn skener. + + + Snam se hledat korelace mezi emisemi a utvenm novch anomli i artefakt. Mm takovou teorii, e podle mnostv a kvality vytvoench artefakt se d spolehliv pedpovdt pt emise. Abych vak mohl provst potebn vpoty, potebuji nasbrat statistick daje. Stailo by jenom rozmstit skenery doprosted nkolika anomli rznho typu. + + + Dobr, pomu vm. + + + Vten! Skenery si vyzvedni u Novikova a pak je rozmsti do anomli, kter jsem ti vyznail ve tvm PDA. + + + Rozmyslm si to a jet se vrtm. + + + Skenery u nm poslaj informace z anomli. Nezbv ne si hezky pokat na vsledky. Mezitm bys mohl rozmstit jet pr skener, jestli se ti chce. Dodaten informace se nikdy neztrat. Za odmnu bychom t mohli informovat, kdy se v t kter anomlii objev nov artefakt. + + + Souhlasm. + + + Vten! Skenery si vyzvedni u Novikova a pak je rozmsti do anomli, kter jsem ti vyznail ve tvm PDA. + + + Rozmyslm si to a jet se vrtm. + + + Bohuel mme pravidlo, kter nm zakazuje pidlovat te osob vce ne jednu prci najednou. Nezlob se, ale musme jej dodrovat. + + + Vyla vm ta men, kter provedlo vae ternn drustvo, zatmco j jsem ho brnil? + + + Chtl jsem jet dodat, e jste pi men pilkali pozornost nemla mutant a zombi. Vechny je odrazit, to muselo stt spoustu asu a energie. + + + Hmm, a ty mysl, e je pilkaly ty skenery? Zajmav. No v tom ppad jsi nm i ty potvrdil Ozerskho hypotzu, e mutanti se dok telepaticky napojit na rzn pole. Mon by stlo za to zeptat se ho na podrobnosti. Tady m platbu za odvedenou prci. Zaslou si to! + + + Hmm, a ty mysl, e je pilkaly ty skenery? Zajmav. No v tom ppad jsi nm i ty potvrdil Ozerskho hypotzu, e mutanti se dok telepaticky napojit na rzn pole. Ml bys mu o tom povdt... S tmi stalkery m to mrz. Vyhradme st svch skrovnch zdroj, abychom mohli jejich rodinm zaplatil njak odkodn. Zbytek si vezmi ty jako platbu za odvedenou prci. Dkuji! + + + Je ance, e bych mohl dostat vdeck oblek? + + + Ne! Mme psn omezen poet kombinz a j je nemu jen tak rozdvat! + + + Co jste mi chtl ct? + + + Nevidl jsi nhodou ty lidi, kte maj na starost steen naeho bunkru? + + + Pokrauj. + + + Nebude tomu vit, ale nkdo nm pozabjel strn, a to pmo ped bunkrem! + + + Potebujete pomoc? + + + Momentln bychom potebovali nasbrat nov typ vzork. Samy o sob nemaj dn anomln inky, ale kdy na nich provedeme vhodn experimenty, mohli bychom dospt k fascinujcm vsledkm! + + + Pokrauj... + + + Zestruni to a ekni, co mm udlat. + + + Dobe... Stalkei, co nali to ps-pole, se domnvaj, e se v nm nachz hnzdo mutant. J jim to tak docela nevm... vdy v souvislm ps-poli nedoke pet dn mutant s vjimkou kontrolora! Nicmn nemj strach, o mutanty se postaraj nai hoi. Tebe potebujeme, protoe pravideln kontakt s ps-poli otupil tvou nchylnost k jejich inkm. + + + Take si to shrme: chce po mn, abych vlezl do neprozkoumanho ps-pole a pinesl odtamtud vzorek neho, co tam vbec nemus bt, a jestli to tam vbec je, tak nikdo nev, jak to vypad? + + + Pesn tak! Tato mise je klov pro celou vdu a zejmna pro n tm. Tv pomoc by byla k nezaplacen. Jestli jsi na pochybch, zastav se u Ozerskho. Provede na tob potebn analzy a ur, nakolik jsi odoln vi ps-zen. Mohl by ses taky poptat naich stalker a ti u ti vechno vysvtl. Tak co, pod pomocnou ruku vd? + + + Ano. + + + Ty to jet nev? Vai stalkei jsou mrtv. + + + Vzhledem k tomu, e jsi se minule v tom tunelu vbec neukzal, bude velmi tk pesvdit tm, aby s tebou znovu spolupracoval. + + + To byl omyl. + + + J ti vm, ale n tm pro sbr vzork se skld z pozoruhodnch lid - neml bys je takhle vypkat. Jet jednou si s nimi promluvm a snad je i pesvdm, aby ti dali druhou anci. Ale tentokrt m nezklamej, na ty vzorky ekm. + + + Odpus, ale musm t odmtnout. Tvoje vbava je naprosto nevhodn pro pobyt v souvislm ps-poli. ekala by t tam rychl a bolestiv smrt, j nehodlm mt na svdom. + + + Mm ten vzorek. + + + Opravdu? Uka mi ho, u se nemu dokat! + + + Mm ten vzorek. Taky se ukzalo, e v tunelu il kontrolor. Pokusil se ovldnout vae drustvo a mlem se mu to povedlo. Natst jsem ho stihl vas zabt. + + + Jsi neuviteln! Zabil jsi kontrolora a zachrnil jsi stalkery ped psychickm tokem. Kdybych to neml potvrzeno, nechtlo by se mi tomu vit! Tohle je neopakovateln zkuenost a fantastick vzorek. Tvj pnos vd je vskutku obdivuhodn. Dkuji ti sm za sebe, za cel n tm i za vdce z celho svta! + + + Bohuel ns pepadl kontrolor a musel jsem brnit v prvn ad sebe. Kontrolor to nepeil, ale stalkei taky ne. + + + Tak kontrolor, povd? Jak hrozn, kdo by to byl tuil? Ztrta tch statench hoch m rmout... Byli to oddan sluebnci vdy. I kdy to technicky nebyli vdci, udlali toho pro vdu vc ne lecjak vysokokolsk profesor! Dkuji ti a prosm pijmi tuto skromnou odmnu. + + + Bohuel ns pepadl kontrolor. Sotva jsem vyvzl s holou k. + + + Co tu vyvdj ti oldci? + + + Pletou se pod nohy. Ale to je jen mj osobn nzor. Ze zatku se jen nabzeli, e sem tam nco oprav nebo pipevn... Vera vak prolomili posledn zbrany studu a zaali se ns vyptvat, jak funguj nae pstroje. Nedoku pochopit, jak jim to pome pi obran bunkru. + + + Jak vybaven doke zlepovat? + + + Jak jist vid, toto je vdeck laborato... nemme tu dn kevlar ani nhradn dly zbran. Co ovem mu, to je opravit ti zbroj nebo ji vylepit jednm ze svch osobnch vynlez. Jak bys asi ekal, mm tu spoustu pebytenho vdeckho nin. + + + Dky tob a tomu vzorku, kter jsi nm pinesl z ps-pole, dokzal Ozerskij sestrojit zazen, kter lidi uchrn ped emisemi. J jsem pak jeho vynlezu dal praktickou podobu. Mu ti jej namontovat do obleku, jestli chce. + + + Nue, krom obvyklch vylepen ti mu nabdnout pravy pro filtrovn kyslku a ochranu ped ps-zenm. Koneckonc, prv ty jsi nm tuhle technologii pomohl vytvoit... Ozerskij a Hermann jsou astn jako blechy. + + + Nue, krom obvyklch vylepen ti mu nabdnout pravy pro izolaci a ochranu ped ps-zenm. Koneckonc, prv ty jsi nm tuhle technologii pomohl vytvoit... Ozerskij a Hermann jsou tastn jako blechy. + + + Nabzm plnou klu modifikac: izolaci, filtrovn a ochranu ped ps-zenm. V obleku, kter bude mt vechny ti tyto modifikace, me vejt do jakkoliv anomlie... a s trochou tst na druh stran opt vyjt. Mimochodem, dky, es Hermannovi pomohl s vzkumem. Nebt toho, ani jedno z tchto vylepen bych ti te nenabzel. + + + Povz mi nco o bunkru. + + + Hmm. A co bys rd slyel? + + + emu se laborato vnuje? + + + Vsadm se, e na to by ti neodpovdli ani Hermann s Ozerskm. Nevykldej si to tak, e by nic nezkoumali... to oni zas jo. Ale vsledky jsou zatm miziv. Na druhou stranu, pro si nezajde promluvit s Ozerskm? Na zklad jeho teori se mi povedlo vymyslet pr ctyhodnch vylepen pro obleky. + + + Co v o Zn? + + + Nic vdckho, ale zato s n mm spoustu praktickch zkuenost. Jedin vci, kter tu maj relnou cenu, jsou ty, kter zvyuj anci na peit. Zn je ukraden, jestli jsi bandita nebo stalker, co sbr artefakty, aby doma nakrmil sedm hladovch krk. V Zn peije jen ten, kdo se nejlp pizpsob zdejm podmnkm. + + + Jak dlouho u jsi v Zn? + + + U to bude njak ptek. Nejdv jsem lovil artefakty jako vichni ostatn, ale postupn se mi zhorovalo zdrav, a jsem si uvdomil, e u tak dl nemu. Natst mm trochu pod epic, take najt prci nebyl problm. Asi tak rok jsem strvil ve frakci tvoen bvalmi vdci. Byli to mil lid. koda, e pomeli ve slep honice za mlhavmi cli... Potom jsem se njakou dobu potuloval Znou a nakonec jsem zaal pracovat pro vdce. Zatm nieho nelituju. + + + Nic vc vdt nepotebuju. + + + Chystm se vyrazit do souvislho ps-pole. Neml bys pro m njak rady? + + + Co bych ti ekl? O teorii pol informan energie jsi urit jet neslyel, co? Mu t ujistit, e krtkodob vystaven ps-poli nen nebezpen... alespo ne pro zdrav. Ale a tam bude, ml by sis pesto dvat dobr pozor. Kdo ps-pole podcen, skon jako zombie. + + + Doke se vlmat do ocelovho kontejneru? + + + To nen nic pro m. Nemm na to sprvn vybaven. A navc je to v rozporu se zdravotnmi a bezpenostnmi pedpisy. + + + Doke rozifrovat ernou skku? + + + Doku, ale neudlm to. Takov vci jsem dlval dv... a nelbilo se mi to. Zbyten opruz. Vdci mi dvaj prce vc ne dost. + + + Co je na CS-3a tak zvltnho? + + + Krom toho, e jsem ho navrhoval j? Je to jeden z nejlepch oblek v Zn. Proto ho m te na sob, nebo ne? Je lehk, mobiln a jeho zkladem je kvalitn vojensk neprsteln vesta. Ochranu ped anomliemi jsem si tam pidal sm... Je koda, e jsme tenkrt mli nedostatek materil... Ale co jinho bys ekal uprosted bainy... Staila by ale sem tam njak ta zplata a m z toho podn, modern oblek... Te mm po ruce spoustu kvalitnho vybaven, take by s tm neml bt dn problm. + + + Pracuje pro Hejkala? + + + Ne. Jen onehd mi pomhal cosi sehnat... slubika za protislubu. + + + Hejkal chtl, abych ti donesl detektory. Tak tady je m. + + + Vborn. Provedu s nimi pr men a pak je Hejkalovi polu zptky po prvodcch... cokoliv jinho si mezi sebou vyete sami. + + + Aha! Tak to ty jsi prodval zbran banditm ze Zatonu! + + + Psst... jsi blbej, mluvit o tom tady? Nikdy jsme se nevidli, jasn? + + + Jasn. + + + Co kdybych o tom tvm vedlejku povdl veliteli? + + + A co mu jako ekne? Vdy na m nic nem. Sm si mi pomhal zbavit se svdk. Nem ani jedinej dkaz a kdy m nepodloen obvin ze pinavosti, jenom ze sebe udl idiota. + + + U jednoho mrtvho oldka jsem nael PDA s objednvkou na moji hlavu. Ty jsi byl zkaznk. + + + U t mm pln zuby... Hele, dej mi to PDA a j ti za nj dm vynikajc zbra, kterou pouvaj vhradn elitn jednotky Povinnosti. Co k? + + + Fajn, dej mi tu bouchaku. + + + Nech si ji. Nestojm o cetky od zrdn krysy! + + + Mm dal PDA se smlouvou na moji hlavu. A opt jsi zkaznkem ty. + + + Krucinl... oldci zasran... ned se jim vit, ani co by se za nehet velo. Poslouchej, musme s tm skoncovat. Udlme to takhle. oldci se o tebe pestanou zajmat a ty u mi d pokoj. Abych ti vynahradil ztrty, zavedu t do tajnho skladit Povinnosti, kde si me nabrat tolik zbran, kolik jen unese. + + + Fajn, to se mi lb. + + + Dobr, sejdeme se tam. Skr je kousek od lomu. + + + Nikam nejdu. Mus mi to zbo vysolit hezky tady na mst. + + + Ale j u sebe nic nemm! Tak blbej zase nejsem! Bu se sejdeme u skre, nebo dostane kulov. + + + Ne, dky. + + + Nestojm o cetky od zrdn krysy! + + + Chci opustit Znu. + + + Opravdu? Nen cesty zpt. + + + Urit. Jdeme. + + + I kdy... Zatm zstanu. + + + Podvm se na to... No, tvoje jtra jsou vt, ne bych ekal, ale to je riziko povoln, e? Ale jinak jsi zdrav jako pa. + + + Kdyby to nevzpllo, vechno by bylo v podku. Te to ale nahn strach. B se podvat sm... Ale pochybuju, e se ti to bude lbit. + + + OK, tvoje volba. + + + "Bval" bojovnci Monolitu? No, je to na tob... Me se za n zaruit? + + + "Bval" bojovnci Monolitu? Ne, dky. To posledn, co te potebuju, je natvan banda fanatik. + + + Ha, hodn chlapec. + + + Pinesl jsem artefakt. + + + Jasn, kter? + + + Nemm artefakt takov ceny. + + + Plamen + + + Zlat rybka + + + Svtluka + + + Vloka + + + Hm... Zatm nic. + + + No, j u jsem vechno ekl. Te je ada na tob. + + + Mj se. + + + Samozejm! Stdav ps-pole jet musme prozkoumat a m dve to udlme, tm lpe. Nco by m ale zajmalo. Jsi si jist, e je tenhle pokus bezpen? Opravdu t potebujeme, abychom zskali testovac vzorek. Tak co, chce pomoci vd? + + + Mon se mi poda najt pr odbornk, kte by se mohli pipojit ke tv vzkumn skupin. + + + Opravdu? Takovou pomoc bych urit pivtal a ekl bych, e by byla odmnna. + + + Dobe. Seenu pr kvalitnch lid. + + + Jet o tom popemlm. + + + Tady m. V tom tunelu jsem narazil na dozorce. Pak jsem ho zabil. + + + ڞasn! Zabil jsi dozorce a zskal to, co potebujeme... Kdybych to nevidl na vlastn ki, neuvil bych ti! Skvl zkuenost a fantastick vzorek. Tv pispn vd jist nebude zapomenuto. Rd bych ti za sebe i za vechny ostatn vdce podkoval, jsme ti opravdu vdn! + + + Tady m. V tom tunelu jsem narazil na dozorce. Ven jsem se dostal jen o vlsek. + + + Dozorce? To je otesn, ale kdo to mohl tuit? Dleit je, e jsi nm pinesl ten vzorek a pozoruhodnm zpsobem tak pispl vd. Dkuji a pijmi prosm tuto malou odmnu. + + + Jak se ti lb nov vzkumn skupina? + + + Jo, jde to. Zd se, e jde o schopn mlad lidi. Pijmi tuto odmnu, prosm. Oceujeme tv schopnosti v oblasti, ehm, lidskch zdroj. + + + Jak to jde, kmo? Jasn, jsem rd, e t vidm, ale nevadilo by mi, kdybych jet chvilku zstal sm. + + + Piel jsem kvli zajatmu stalkerovi. Chci ho vykoupit. + + + A j chci respekt pro bandity a nae pravidla, ale zrove nechci dlat dal zbyten problmy... 15 000 nebo vhodn artefakt bude pro tentokrt stait... Nejsem kivk, nevezmu si vc, ne mi dlu. + + + Tady jsou penze. + + + OK... Vm si toho, co dl. Vem si toho bdka a stalkerm vyi, e pt to bude hor. + + + Tolik penz sebou nemm. + + + Jasn, nem na to. Chce jet nco? + + + Momentln nic vhodnho nemm. Vrtm se pozdji. + + + Podvm se na to... No, nejde o nic strategicky dleitho, ale mohlo by se to hodit. Koupm vechno, dm ti 500 za dokument. Plat? + + + Podvm se na to... Svat prostoto... Tyhle informace by pokodily povst Povinnosti... a hodn! Koupm je za 4000. + + + Zajmav. No, koupil bych je od tebe za 2000. + + + Jo, ale cena je pod stejn: 2000. + + + OK, mj se. + + + To je stran! Co se jim proboha mohlo stt? Hmm... Mon mutanti. Musm se zeptat Ozerskho, jak monstra by to mohla bt... Hmm. Pod ale musme prozkoumat ps-pole. Tento kol je pro vdu i pro n tm zcela zsadn. Opravdu potebujeme, abys nm pomohl zskat vzorek. Pokud m njak pochyby, zajdi za Ozerskm. Provede potebn analzy, pomoc kterch zjist tvou odolnost vi ps-zen. Tak co, chce pomoci vd? + + + Budu o tom uvaovat. + + + N vzkumn tm, sloen z mstnch stalker, nedvno objevil opravdu neobvykl psionick pole. Podle naich teori a provedench men m toto pole peruovanou povahu, ps paprsky nevyzauje stle. + + + N vzkumn tm je bohuel mrtv a dokud nenajdeme nhradu, nememe provdt dn men. + + + Vydr... Byl bys tak hodn a na chvli mi vnoval pozornost? + + + Jak jsou vsledky przkumu anomli? + + + M pro m njakou prci? + + + Slyel jsem o tom. + + + Bohuel jsem Hermanna zatm nedokzal pesvdit, aby vybavil ptrac tm... Uznvm, e ei o tomhle zjeven si vzjemn odporuj, ale nco mi k, e Oza existuje. Jen mlokdy m moje intuice zrad, take pokud ji doke najt a pinst mi o n dkaz, budu ti opravdu vdn. + + + Poohldl bych se po tom, ale v Oze u jsem byl. + + + Hm... Ehm... Myslm, e jsem vs peslechl. Co jste to kal? + + + Pichzm splatit Vv dluh. + + + Jo, vzpomnm si na nj, pjoval jsem mu solidn balk. I s rokama to dl sedm litr. + + + Tady to je. + + + Vyi Vovi, e jsme si kvit. + + + Dobe. + + + Tolik u sebe nemm. + + + Tak se vra, a bude mt. + + + O rocch nepadlo ani slovo. + + + O co se to sna? Copak jsem debil, abych pjoval prachy bez rok? Chci sedm litr a pes to vlak nejede. + + + Neunhluj se. Hele, tady mm bouchaku a nebojm se ji pout... k emu ti budou roky, kdy bude pod zem? + + + Fajn, fajn, uklidni se, fe! Urit se njak dohodneme. Zapla mi pt litr a meme ten dluh smazat. + + + Ha... pro m za m si tu vzduchovku teba narvi do prdele. km sedm litr i s rokama. mytec. + + + Nezapomn na nco? Mm tu bouchaku. + + + Zastelm t klidn i zadarmo. + + + Budu nad tm uvaovat. + + + Sedm litr i s rokama. + + + Te se nechci poutt do dnch velkch keft. Potebuju se dt do kupy... Mon se dokonce vrtm dom... vyseru se na artefakty a najdu si prci... Akort se mi nechce opoutt Grizzlyho... ani Torbu. Docela jsme se sblili, jeden druhmu pomhme a tak... No nevim, teba bude stait, kdy si na chvli vydechnu a srovnm si vci v hlav... + + + Te se nechci poutt do dnch velkch keft. Budu tu pomhat vdcm a mezitm se dm do kupy. Mon se dokonce vrtm dom... najdu si prci nkde venku... No, j nevm. Teba se jenom potebuju uklidnit a srovnat si vci v hlav. + + + Tak co, jdeme zachrnit Mitjaje? Nebude ti vadit, kdy sebou vezmu pr najatch chlap, e ne? + + + Mm u sebe PDA toho kupce z Povinnosti - Morgana. M zjem? + + + Dostal jsem se k PDA, kter dokazuje Morganovo spolen se oldky. + + + Mon si ho nakonec nechm. + + + J vdl, e v tob nakonec pevldne touha pomoci vd a vykonat nco dobrho pro svt! Tak poslouchej, pln zn takhle. O men se postar vzkumn skupina stalker. Tvm kolem bude dlat jim doprovod, to znamen chrnit je a provdt je pes obtn tern. Hodn tst. Stalkei na tebe u ekaj venku. + + + Zdravko, stalkere. Udivuje t, e tady potkv takovho staka? He, he. Piel jsem, protoe u jsem poteboval zmnit prosted. Te opravuju techniku a sem tam i lidi... + + + Tak mi povz: mu pro tebe nco udlat? + + + Jak ses dostal do Pripjati? + + + Garik m sem zavedl. Stalkei se sem plnovali vydat u drahnou dobu, jenom se nechtli poutt do opltaek s armdou. Jakmile ale Garik nahlsil, e armda se zdekovala, nevhal jsem. Aneb jak strejda Jar vyrazil do svta! Ha ha! + + + Potebuji oetit. + + + Podvm se ti na to... + + + Hotovo, ml bys to pet. Kdyby se ti rna zantila, a ti ji nkdo pochije. Prej to pomh. + + + Vdy si zdravej jako rybka! Netahej m za nos... + + + Vtej v m skromn chi pozemskch radost. Hled zbavu, potchu, nebo oboj? + + + Chlapi o m pod kaj, e jsem pli hodnej, nco jako pohdkovej ddeek. Take si va thle situace... pt u tak mrnej nebudu. A te koukej vypadnout, hajzle! + + + Tady u jsem byl. Banditi jsou dvno mrtv. + + + Pni, ty jse hustej! Fakt e dk! Na, vem si tyhle prachy. Pvodn jsem s nima ml splatit dluhy, ale takhle je aspo dostane nkdo, kdo si je zaslou. + + + Pni, ty jse hustej! Fakt e dk! Na, vem si tyhle prachy. Pvodn jsem s nima ml splatit dluhy, ale takhle je aspo dostane nkdo, kdo si je zaslou. + + + Nae skenery zaznamenaly podivnou aktivitu severn odsud. Podle namench dat soudme, e tamj anomln formace zan bt nestabiln. Vc u vm toho bohuel nedoku povdt. Potebovali bychom provst men pmo v ternu... Pedem ale mu ct, e bnmi stalkerskmi detektory tu anomlii nezaznamente. Budete potebovat n vynlez Svarog. + + + Skenery stle hls nestabiln anomln aktivitu severn odsud. Jestli m nco kvalitnjho ne bn stalkerovsk skener - teba Svarog - mohl bys skoit provst pr ternnch men. + + + Zatm jenom z anomln oblasti v bainch. Nicmn i pesto pro n u Novikov nael praktick vyuit. Dky za spoluprci. Tme se na dal vrku vsledk. + + + Zatm jenom z anomln oblasti za Kopai. Nicmn i pesto pro n u Novikov nael praktick vyuit. Dky za spoluprci. Tme se na dal vrku vsledk. + + + Jiste, dostal jsem kompletn vsledky. Abych pravdu ekl, objem tch dat byl tak ohromn, e nm potrv cel tdny, ne-li msce, ne je vechny zpracujeme. Nicmn i pesto pro tu anomlii u Novikov nael praktick vyuit. Dky za spoluprci. Tme se na dal vrku vsledk. + + + Ne, nic takovho se tady nestalo. I kdy... hmm, nedvno jsem vlastn jednoho podezelho chlapka zahldl. el jsem se ven projt a na zpten cest jsem potkal stalkera, kter pichzel od Janova. Jakmile se dostal na doslech, zaal se na m bezdvodn utrhovat. kal, e v, kde bydlm, a tak dle. Jednodue jsem ho ignoroval, myslel jsem, e je prost jen opil. Ale kdy tak nad tm uvauji, zd se mi to takov podezel. + + + Kam odeel? + + + Na severovchod. Pozdji jsem z toho smru zaslechl vstely, ale to je v tchto koninch normln. Zeptej se Zuluse, ten cel dny vysedv na vi, tak teba nco zahldl. + + + Severovchodn. Asi el na zastvku. + + + Jasn. + + + Jak je, kmo? + + + Jak to jde? + + + Nen to zl. Ne e by to bylo vyloen snadn, ale my se odsud dostaneme. Spolen dokeme cokoliv! + + + Jak se vede? + + + J ti nevm... nectm se tu dobe. Jako kdyby m nco pouchovalo o dm dl. Mon brzo odejdu... a neprotestuj. + + + Vyistil jsem up pelech v Zatonu. Dkladn. + + + [pokraovat...] + + + [pokraovat...] + + + [pokraovat...] + + + [pokraovat...] + + + Shnm lidi, co by provdli men anomli. + + + Poteboval bych udlat pr men okolo anomli. + + + Kdo je ten spc fek? + + + U jsi nael ten artefakt? + + + Jasn pka! Tady beztak nen nic na prci... a dma se ned hrt donekonena. Tohle nen Pripja... ty vole, k u bych tu zasranou smlouvu ml odmakanou, hned bych tam el. + + + [pokraovat...] + + + Me se podvat do lomu - tam zaval Tska. Jeho posledn slova byla, e mu Pazourek zroval koist a nechal ho chcpnout v anomlii. + + + Jmenoval se Tska. Vbhnul do plynov anomlie a popadnul tam artefakt. Jet ne umel, stihl mi to vechno popsat. + + + Nehodlm se t vyptvat, odkud to m. Vezmu to pmoae: to PDA od tebe vykoupm za tyi tisce. U dlouho jsem se chtl dozvdt, co n zsobovac dstojnk vyvd, kdy nen ve slub... + + + Tak se na to podvme... ten hajzl zasranej! Nejene jim prodv nae zbran, on dokonce Svobod pedal i celej sklad! Krucinl. Budu muset sestavit uvtac vbor a zaskoit za nm na nvtvu. + + + Tak se na to podvme... j nevm vlastnm om! O skladiti u jsme vdli, a dokonce jsme se tam chtli skoit podvat, ale o tom poplachu jsem fakt netuil. Pro? Protoe ten urk mi neekl ani pl slova. Pokej chvli, pjdu varovat chlapy. + + + Z ist zvdavosti ti dm tyi tisce. + + + No, dnej ostrostelec sice nen, ale s pukou trochu zachzet um. Nikdy se ale nepestane klebit, jako kdyby neral nic jinho ne citrony. + + + U star chladc ve jsem nael divnou anomlii. + + diff --git a/gamedata/configs/text/cze/st_dialogs_pripyat.xml b/gamedata/configs/text/cze/st_dialogs_pripyat.xml new file mode 100644 index 0000000..5eba697 --- /dev/null +++ b/gamedata/configs/text/cze/st_dialogs_pripyat.xml @@ -0,0 +1,906 @@ + + + + Ha! To je nau! Dky za pomoc, brcho. Nebejt tebe, ty hazlov by si m po chvilce podali jak malou holiku. Tak nakonec jsi pece jenom dobrej stalker... Sorry, e jsem se pedtm tak rozplil. Ml jsi mi ct rovnou, e jsi od Sluby bezpenosti. + + + Nic se nestalo. Vrtme se do vojenskho tbora, tam bude bezpenji. + + + Jo. Pod to bude lep, ne se toulat sami kolem Pripjati. + + + Tak jdeme. + + + Musm si tu jet nco zadit, take b naped. Tbor je v budov prdelny. + + + Ml bych u jt. + + + Pokej... vezmi si tohle. Nejspolehlivj kulomet v Zn. + + + Pro, ty u ho nepotebuje? + + + Pod mm u sebe nco, m se d odehnat pr mutant. Navc jsem se rozhodl, e se vrtm. Garik m doprovod do Jupitera. Tob se prost bude hodit vc. Ber a uvej moude. + + + Hodn tst. + + + Dky, je to skvl zbra. + + + Ha! Nen skvl, je nejlep v Zn! Nechal jsem si ji upravit, take je te troku tk, ale vezmi si to takhle - s takovm kannem v nru nepotebuje ped nikm utkat. A se probhne neptel! + + + Mj se. + + + Supr! + + + Nev, kam el Zulu? + + + Pry. Chtl po mn, abych ho zavedl k Jupiteru. Nedaleko tovrny jsme se rozdlili. Neekl mi, kam ml nameno dl. + + + Pokej... chci se s tebou podlit o jeden nepjemnej zitek... Pr oldk m poprosilo, abych je zavedl do Pripjati. Nejdv si m zskali tunou sumikou, ale brzo jsem si uvdomil, e jsem se dostal do sraek... Ani na vteinu m nepustili z o a dokonce mi hrozili zbranma. Nakonec se mi povedlo utct, kdy jsme byli tsn ped Pripjat, ale oni se urit jen tak nevypaili. Nkde tam budou, dvej si bacha. + + + Neslyel jsi nhodou, o em si ti oldci povdali? + + + trky, jo. Urit neplnovali, e m nechaj naivu, a tak se svmi plny vbec netajili. Bavili se hlavn o tom, jak se sejdou se zstupcema svho klienta, kte jim pak mli ukzat njakou vc a vysvtlit, co bude jejich kolem. + + + Kde se m ta schzka konat? + + + Kousek odsud, na dvoe ped bytovkama. + + + Dky za informaci. + + + Mluvil jsi o oldcch. Neslyel jsi, o em si povdali? + + + trky, jo. Urit neplnovali, e m nechaj naivu, a tak se svmi plny vbec netajili. Bavili se hlavn o zstupcch svho klienta, kte jim pak mli ukzat njakou vc a vysvtlit, co bude jejich kolem. + + + Kde se m ta schzka konat? + + + Kousek odsud, na dvoe ped bytovkama. + + + Zadil jsem ti u vdc oblek. Zastav se kvli nmu za Hermannem. + + + Dobr... kde se potom sejdeme? + + + U Zuluse doma, pobl Janova. + + + Tam je ale plno stalker! Co kdybys m tam radi zavedl? Protoe kdy tam pijdu sm, mm zadlno na prser. Kdy se mnou pjde ty, nebudou stlet, protoe tebe znaj. + + + Ke ktermu evakuanmu bodu jsi el? + + + Promi, ale to je tajn informace, kterou ti nemu ct. + + + Pojme za tm Zulusem. + + + Dobe. Ale nejdv se stavme u Hermanna pro ten vdeck oblek. + + + Jdeme. + + + el bych rd, ale venku zrovna zu emise. Nepokme chvli? + + + Jak ses sem dostal? + + + N vrtulnk se ztil pmo na Jupiter a propadl stechou do montn haly. Peil jsem jenom j - podailo se mi utct z Jupiteru a odejt k nejblimu evakuanmu bodu, jenome tam nikdo nebyl. Pak jsem potkal Garika a ten m zavedl do bunkru. + + + Jestli chce do Pripjati, bude potebovat oblek s uzavenm rozvodem kyslku. + + + Co tady dl? + + + Mm rozkaz pokraovat v evakuanmu bodu, jenome Zna je pli nebezpen. Jsem pilot, ne vsadk! Proto ekm tady v marn nadji, e si m tu po skonen operace vyzvednou. + + + Dvm dohromady lidi, co se mnou pjdou do Pripjati. Pid se k nm? + + + Do Pripjati? A v ty co, mon e i jo... Teba pr naich chlap peilo a dostalo se a tam. Navc jeden evakuan bod je i v Pripjati, take to mm vlastn pi cest. Sm bych se tam nikdy nedostal, ale s tvm drustvem jsem ochoten se o to pokusit. + + + Meme vyrazit? + + + D se to tak ct. + + + Ahoj, stalkere. + + + Zdravm. + + + Ahoj. + + + Zdravm, majore. + + + Kde jsi piel k t vojensk uniform? + + + Haha... no, te u asi mu prozradit, e popadaly vojensk vrtulnky, protoe to stejn kadej v. Jsem poruk Sokolov, kopilot prv jednoho z tch vrtulnk. + + + Ohledn t hldky... + + + Jeho signl pichz ze starho obchodu s potravinami, ale nehls se... Mon jen ztratil vyslaku... Nikdo si te neme bt jist. Musme ho najt... + + + Dky, plukovnku! Myslm, e to zvldnu. + + + Ohledn t hldky... + + + No... Za vechno me ten kontrolor... On je hlavnm dvodem toho, co se stalo przkumnmu tmu. Postaral se o to, aby se chlapi navzjem postleli... Tyhle nestvry pat v rmci Zny k tm horm a navc jsme nebyli trnovni na boj s nimi. Kontrolor ns naprosto pekvapil a u zase jsme ztratili mue... + + + Alespo, e ten kontrolor u to m za sebou. + + + Doufm, e se te situace trochu uklidn... Jsem vdn za vai pomoc, majore. Myslm, e bhem mise jste ztratil spoustu munice... Zajdte za porukem Kirilovem a podejte ho, aby vm vydal potebn vybaven. + + + Dky, plukovnku! + + + Bez obav, plukovnku... S tm mutantem si poradm. + + + Mu znt vce informac o tto misi? + + + Kdo je to? + + + Pokud brzy nenajdeme zdroj ruen, nezbyde nm nic jinho ne zemt. Prvn vt tok Monolitu nai armdu rozdrt... A z operace se stane naprost fiasko... + + + Pokusm se najt ten zdroj co nejdve. + + + Tak co, majore? Nael jste ten zdroj ruen? + + + Ne, pod na tom dlm... + + + Garik mi ekl o incidentu se oldky... + + + Jo, taky mi o tom kal... Po svm tku Garik piel sem, protoe se bl, e za nm jdou. Natst pro nj i pro ns ho oldci nesledovali... Sledujeme msto, na kterm se oldci a zkaznkovi lidi maj setkat, ale nic se nedje... Zajmalo by m, co maj oldci v plnu... + + + Zjistil jsem, e oldci ptraj po tajn laboratai v Pripjati. + + + Tajn laborato tady v Pripjati? Jak jste na to piel? + + + Dky zpisnku jednoho oldka ze Zatonu. Potvrzuje to i pbh, kter mi vyprvl Strejda Jar. + + + Hm... Vte jet nco? + + + Hledaj hlavn laborato. Bhem mho ptrn jsem nael jej souadnice. + + + Pokud je to opravdu tak, znamen to, e krom zombi a fanatik mme dalho protivnka... Musme se rozhodnout, co te budeme dlat. + + + Musm setkn pozorovat, a pokud to bude mon, zlikvidovat zstupce klienta. Tm se postarme o to, e na chvli se do laboratoe X8 nikdo nedostane. + + + Zn to jako slun pln, ale takhle se nikdy nedozvme, kdo vechno o laboratoi v. Alespo se postarme o to, e se do n nedostanou oldci. oldci vak zareagujou rychle a budou nebezpen. Pokud to pjde, zkuste vydit ob strany. eknu poruku Kirilovi, aby el s vmi. + + + OK. + + + Pokejte, mon bychom si mli vybrat jin cl. + + + Vyberte si, kter z cl bude tm hlavnm. + + + Musme zlikvidovat velitele oldk. Pokud se nm to poda, jednotka bez velitele u pro ns nebude pedstavovat takov problm. + + + Vypad to jako dobr een, ale poslek pravdpodobn utee a ped informace o laboratoch nkomu jinmu, take se do n oldci nakonec stejn dostanou. Pokuste se znekodnit ob osoby. eknu poruku Kirilovi, aby el s vmi. + + + Na tohle nemm as. + + + Dky zpisnku jednoho oldka ze Zatonu. + + + Dky pbhu, kter mi vyprvl Strejda Jar, stalker ze stanice Janov. + + + Ohledn oldk... + + + Skvl prce, oba cle byly zlikvidovny. Te u se nm oldci nebudou plst do cesty a v laboratoch snad budeme mt klid. Zbra si mete nechat a tady pro ni mte i njakou tu munici. + + + Te, kdy je velitel mrtv, nm oldci nebudou dlat pote. Ale zkaznkovi lid se z toho dostali a mohli by se objevit v laboratoch, take bute na pozoru... Mete si nechat zbra a tady pro ni mte i njakou munici. + + + Dobe. Te, kdy jste zabil osobu, kter vdla o umstn laboratoe, by ji oldci nemli najt. Ale pochybuju o tom, e te opust Pripja, take pro ns budou pod pedstavovat hrozbu. Bute opatrn... Mete si nechat zbra a tady pro ni mte i njakou munici. + + + Take jste si na posledn chvli vybral jin cl? No, mon to bylo dobr rozhodnut. Te, kdy je velitel mrtv, nm oldci nebudou dlat pote. Ale zkaznkovi lid se z toho dostali a mohli by se objevit v laboratoch, take bute na pozoru... Mete si nechat zbra a tady pro ni mte i njakou munici. + + + Take jste si na posledn chvli vybral jin cl? No, mon to bylo dobr rozhodnut. Te, kdy jste zabil osobu, kter vdla o umstn laboratoe, by ji oldci nemli najt. Ale pochybuju o tom, e te opust Pripja, take pro ns budou pod pedstavovat hrozbu. Bute opatrn... Mete si nechat zbra a tady pro ni mte i njakou munici. + + + Tak tohle moc nevylo. Velitel oldk je naivu, stejn jako zkaznkv lovk. Te o ns oldci v a budou nm hrozit stejn jako jednotky Monolitu. Navc u znaj polohu laboratoe, take je jen otzkou asu, ne se tam objev. Bute opatrn... Mete si nechat zbra a tady pro ni mte i njakou munici. + + + Pipravte sv vojky, plukovnku. Jsem pipraven vyrazit. + + + OK. Kryjte Stelce, majore. My se o sebe dokeme postarat. + + + Take... Mezi nmi, vy se Stelcem mte nejvt zkuenosti v Zn. Rozdl je v tom, e zatmco o Stelcovch zkuenostech se jenom povd, o tch vaich u jsme se dvno pesvdili. Tm chci ct, e na vs spolhm, majore. Dvejte na Stelce pozor u ns moc nezbv. + + + Jednotka je pipravena vyrazit. ekme jen na vs, majore. + + + Zd se, e vichni ti lenci jsou mrtv. Seber tu zbra, a odsud mem co nejdv zmizet. + + + To dv smysl. + + + Jsem pipraven, jdeme. + + + OK. Tm je pipraven. + + + Jdeme. + + + Musme pokat. Nechci, aby mi emise vzala chlapy. + + + Jsem kapitn Tarasov. Vy jste mon major, ale velitelem jsem tady j, a to znamen, e o mch rozkazech se nediskutuje. Zvis na tom ivot kadho chlapa v tmu. Pln je nsledujc: dostaneme se na pozici v zpadn oblasti nemocnice a pokme, a se objev jednotky Monolitu. Musme pracovat rychle, abychom na sebe nepithli zbytenou pozornost. + + + Rozumm, jdeme. + + + OK. Tm je pipraven. + + + Jdeme. + + + Musme pokat. Nechci, aby mi emise vzala chlapy. + + + Pokejte, kapitne. Jet nejsem pipraven. + + + Nco novho v oblasti ruen? + + + Identifikoval jsem nkolik zdroj, z nich jeden je docela blzko. Pokud ho znime, mon se budeme moci spojit s velitelstvm. + + + Vyptral jsem souadnice zdroje ruen. Mus to bt njak druh specilnho vysokofrekvennho nebo dokonce mikrovlnnho vyslae. + + + Zazen, kter jsi zniil, opravdu bylo zdrojem ruen. Pravdpodobn je jich vce, ale spojen s velitelstvm u jsme navzali. + + + ekni mi o signlu. + + + Signl se neustle objevuje a zase miz, ale pokad je bl zkladn. + + + To je ono? + + + Ne tak docela. Zajmav je to, e signl je penen na frekvencch, kter se pro rdiovou komunikaci prakticky nepouvaj. + + + Aha. + + + Vezmi si tuhle zbra a munici. Te si me odpoinout. Budu sledovat situaci z druh strany a jakmile se nkdo objev, dm ti vdt. + + + OK. + + + Zdravm. Jsem poruk Kirillov. Jsem zodpovdn za drbu zbran a munin sklad. + + + M njak nboje? + + + Jo, nedvno jsme se vkradli do skladit Monolitu, kter bylo pln munice pro vechny typy zbran, kter me sehnat v Zn... Zajmalo by m, jak tam vechny ty zbran dostali... Myslm, e jim je mus prodvat nkdo z pohranin stre... + + + Take me taky opravovat m zbran? + + + Jasn. Jsme vykolen k opravovn vech typ zbran. + + + Aha. + + + Zdravm. + + + Pro m tak bol hlava? + + + Tak, je tady okamik pravdy. Jsem zvdav, jestli se odsud dostaneme nebo ne... + + + Potebuju munici. + + + dn problm. Co pesn potebuje? + + + Nboje pro pistoli 9x18... + + + Tady m... Jet nco? + + + Tady m... + + + Nboje pro pistoli 9x19... + + + Nboje pro pistoli .45... + + + Nboje do brokovnice... + + + Nboje pro tonou puku 5.45x39... + + + Nboje pro tonou puku 5.56x45... + + + Nboje pro tonou puku 9x39... + + + Nboje pro odstelovac puku... + + + Nboje do kulometu 7.52x64... + + + Vc nemu vydat, majore... Plukovnk vydal rozkaz k eten munic. + + + OK, to je dobr. + + + Potebuju granty. + + + dn problm. Jakho typu? + + + Run granty... + + + Tady m... + + + Munici do odpalovae VOG-25. + + + Munici do odpalovae M209. + + + V co? J u pjdu. + + + Vc nemu vydat, majore... Plukovnk vydal rozkaz k ponechn munice. + + + Potebuju lkaskou pomoc. + + + Vdy jsem pipraven pomoci. Podvm se na to... + + + Jsi zdrav jako pa. + + + Jak se ct po tom, co se stalo? + + + U jsem v podku... Po udlostech v matesk kolce jsem byl v oku, ale jakmile se objevila emise, docela rychle jsem se z nj probral... + + + Zdravm. + + + Nejdleitj je dostat se k vrtulnkm. + + + Potebuju lkask vybaven. + + + Podvme se, co bych tady pro tebe ml. Tady, vezmi si tohle... + + + Promi, ale u mi toho moc nezbylo, vc ti dt nemu... + + + Sledovali jsme rdiov signl. + + + Jo. Kontaktoval jsem stalkera zvanho Prvodce. ekl, jak se na toto msto dostat podzemnmi tunely. + + + Kdo je Prvodce? + + + Je to ijc legenda, o kter se k, e t v rmci Zny me dovst kamkoliv... Ti chlapi z armdy mli tst, e ho potkali, protoe bez nj by neili dlouho. + + + Jak v, e tady byla armda? + + + Prvodce mi o tom ekl. Je jeden z tch, kte sem pivedli Kovalskho a jeho jednotku. + + + Aha. + + + Jak informace chce vld pedat? + + + Je toho hodn... Jsem si jist, e moje informace by mohly bt zneuity ke znien Zny. Myslel jsem, e to udlm sm... Ale ukzalo se, e to nen tak jednoduch. Lid, kte s tm zaali, u nejsou u moci... A se odsud dostaneme, vechno ti vysvtlm. + + + Co jsi v Sarkofgu vidl? + + + Vechno je to podvod... Kmen splnnch pn je pouh podvod, zazen, kter zastiuje tvou mysl. A lidi, kte za tm stoj, se skrvaj nkde jinde... + + + V, kdo za tm je? + + + Mon jo, mon ne... U nevm, emu mm vit... Navc jsem zjistil vc, ne po mn vbec chtli. + + + Dobr, nechme toho. + + + eknu vechno, co vm. Ovem jen v ppad, e se moje informace dostanou ke sprvnm lidem. + + + Na cest sem jsem nael skr tvho tmu... + + + Zajmalo by m, jak jsi to dokzal... Uvnit by mly bt njak zznamy, nael jsi je? + + + Jo, nael jsem ti poznmky. + + + Dky... Duch a Tesk byli mmi kamardy... Spolen jsme se dostali pes Vypalovae a dostali se do CNPP. Oba bohuel zemeli. Po naem nvratu jsme se rozdlili j jsem byl zrann a zstal s Doktorem v bainch. Pak u jsem je nevidl... O nco pozdji jsem zjistil, e Teska zabili oldci a Duch zemel, protoe dvoval vdcm... Ale to je minulost... Te u vm, co musm udlat, aby ptel neumrali zbyten. + + + Jo, tady je tv zprva pro Ducha. + + + Dky... Duch byl mm kamardem... Spolen s Duchem a Teskem jsme se dostali pes Vypalovae a dostali se do CNPP. Oba bohuel zemeli. Po naem nvratu jsme se rozdlili j jsem byl zrann a zstal s Doktorem v bainch. Pak u jsem je nevidl... O nco pozdji jsem zjistil, e Teska zabili oldci a Duch zemel, protoe dvoval vdcm... + + + Jo, tady je zprva Teska uren pro tebe. + + + Dky... Tesk byl mm kamardem... Spolen s Duchem a Teskem jsme se dostali pes Vypalovae a dostali se do CNPP. Oba bohuel zemeli. Po naem nvratu jsme se rozdlili j jsem byl zrann a zstal s Doktorem v bainch. Pak u jsem je nevidl... O nco pozdji jsem zjistil, e Teska zabili oldci a Duch zemel, protoe dvoval vdcm... + + + Jo, tady je tv zprva pro Fanga. + + + Dky... Tesk byl mm kamardem... Spolen s Duchem a Teskem jsme se dostali pes Vypalovae a dostali se do CNPP. Oba bohuel zemeli. Po naem nvratu jsme se rozdlili j jsem byl zrann a zstal s Doktorem v bainch. Pak u jsem je nevidl... O nco pozdji jsem zjistil, e Teska zabili oldci a Duch zemel, protoe dvoval vdcm... + + + Jo, tady je tv zprva pro Ducha a Teskova zprva pro tebe. + + + Dky... Duch a Tesk byli mmi kamardy... Spolen jsme se dostali pes Vypalovae a dostali se do CNPP. Oba bohuel zemeli. Po naem nvratu jsme se rozdlili j jsem byl zrann a zstal s Doktorem v bainch. Pak u jsem je nevidl... O nco pozdji jsem zjistil, e Teska zabili oldci a Duch zemel, protoe dvoval vdcm... + + + Jo, tady je tv zprva pro Ducha a dal pro Teska. + + + Dky... Duch a Tesk byli mmi kamardy... Spolen jsme se dostali pes Vypalovae a dostali se do CNPP. Oba bohuel zemeli. Po naem nvratu jsme se rozdlili j jsem byl zrann a zstal s Doktorem v bainch. Pak u jsem je nevidl... O nco pozdji jsem zjistil, e Teska zabili oldci a Duch zemel, protoe dvoval vdcm... + + + Jo, tady je tv zprva pro Teska a jeho zprva pro tebe. + + + Dky... Tesk byl mm kamardem... Spolen s Duchem a Teskem jsme se dostali pes Vypalovae a dostali se do CNPP. Oba bohuel zemeli. Po naem nvratu jsme se rozdlili j jsem byl zrann a zstal s Doktorem v bainch. Pak u jsem je nevidl... O nco pozdji jsem zjistil, e Teska zabili oldci a Duch zemel, protoe dvoval vdcm... + + + Ano, ale bohuel je sebou nemm. + + + Podvm se na to... To je hrza, majore... Hele, lkaskmi testy pro vesmrn program bys asi proel, ale kondici m jinak pernou! Hehe! + + + Pojte, majore. Lidi z Monolitu nebudou ekat. + + + Majore, ztratil se nm jeden hlda - nen na svm mst. Podle signlu se te nachz v obchodu, ale na voln neodpovd. Kdo v, co se tam semlelo, teba se zhroutil. Pod jet tak pln nevydejchal ten pd vrtulnku. Mohl byste to tam skoit provit? + + + S radost. + + + Nemu nic slbit. + + + Majore, musme najt nae przkumnky. + + + Vezmete si ton drustvo a vyrazte k objektu A17 - kapitn Tarasov vs tam zavede. Vam clem budou dv nemocnin kdla propojen chodbou. Zpadn kdlo momentln dr bojovnci Monolitu. Vy pjdete do druhho kdla a nastrate na n lku. Puku budou mt nejsp u sebe, urit s n bude bojovat ten nejvt pouk. + + + To bude nejsp velitel. Chlapi ho vidli, jak ostatnm bojovnkm dv kzn. Doslova! Dvejte si pozor, nevme, co od nj meme oekvat. + + + Rozumm, plukovnku. + + + Dobr den. J jsem plukovnk Kovalskij, velitel tto jednotky. + + + Major Dgtarev, SBU. Mm proetit okolnosti, za jakch dolo k selhn Operace Prplav. + + + Aha. V tom ppad poslouchejte, Majore. Operace Prplav la do kytek, a stejn tak i nae vrtulnky. Plka mch chlap zavala a navc se nememe spojit s velitelstvm. I j bych moc rd vdl, pro se operace posrala. + + + Npady? + + + Napad m jedin to, e nm nkdo ty vrtulnky sestelil. A to pomoc extrmn vkonnch zbran, o kterch prakticky nic nevme. Jednu takovou zbra pouval Monolit pi prvnm toku na ernobyl. Rd bych jeden kousek dostal do rukou, abych se na nj mohl podvat. Jestli nm chcete pomoct, pjdeme pepadnout drustvo Monolitu, kter jednu takovou zbra m. Nae ton skupina u jen ek na povel k zahjen operace. Co kte? + + + Souhlasm, ale jen za podmnky, e mi sdlte vechny zjitn informace. A e mi ponechte naprostou svobodu jednn. + + + Mm informace o t zhadn zbrani, t Gaussov puce. + + + J zrm! Jak funguje? Daj se s n sestelovat vrtulnky? + + + Teoreticky ano, ale po kulkch by ve vrtulnku zstaly prstely. Jenome dn tam nebyly. + + + Krucinl... to jsme tedy v koncch. Nic jinho m nenapad. Te nm nezbv ne sedt na zadku uprosted thle zpropaden Zny a ekat, ne si ns pijdou vyzvednout. No... dost u bylo nakn. Sousteme se na vci, kter te dokeme ovlivnit. Dky vm vme, e vykvn v krytu ns ped urychlenmi kulkami neuchrn, a to se cen. Musm vm podkovat, majore. Kdyby se objevilo nco novho, ozvu se vm. + + + Teoreticky ano, ale Rejnoci 4 a 5 se ztili kvli selhn elektroniky. To urychlen stely nedokou. + + + Jak pokrauje operace? + + + Zabili rotnho Morozova. Bojovnci Monolitu ns nalkali do pasti tm, e obtovali pr vlastnch lid. + + + Hajzlov! O naem plnu ale vdt nemohli... Take jsme pili o odstelovae. Povedl se aspo cl operace? + + + Mme pr ztrt. Bojovnci Monolitu ns nalkali do pasti tm, e obtovali pr vlastnch lid. + + + Hajzlov! O naem plnu ale vdt nemohli... Take jsme pili o pr chlap. Povedl se aspo cl operace? + + + Cel drustvo zavalo. Bojovnci Monolitu ns nalkali do pasti tm, e obtovali pr vlastnch lid. + + + Hajzlov! O naem plnu ale vdt nemohli... Take jsme pili o Tarasova a jeho chlapy. Povedl se aspo cl operace? + + + Zbra mm u sebe. Bohuel byla v boji pokozena. + + + Nememe tedy urit, zda s jej pomoc sestelili ty vrtulnky, nebo ne. Poslouchejte, Majore: vm, e mte mezi stalkery dobr kontakty. Je mon, e s touto zbran se u nkdo setkal. Urit se mezi nimi najde i njak technik. Co kdybyste si s nm promluvil? + + + Fajn. + + + Dobr... a mimochodem. Z Jupiteru k nm piel dal stalker. Jestli chcete, stavte se za nm na slovko. + + + Pracuje se na tom. + + + Aha. Majore, my tu zbra potebujeme. Urit chpete, jak je to dleit. + + + Hmm. + + + Tu tvoj zprvu jsem nael na Volchov. Tu m. + + + Poslouchej... nebo radi nic. Stejn by nakonec nikdo z vs nedorazil. Kdybys tu v okol nhodou spatil njak vojky, dej mi vdt, jasn? Pedem dk. + + + Majore... dky bohu! Jsem zachrnn! + + + Jak jste se sem dostal? + + + Ehm... moc si toho nepamatuju. Ml jsem tak nahnno, e jsem nedokzal podn pemlet. Ani nevm, co m tak vydsilo. Prost jsem ctil potebu se schovat, tak jsem vzal nohy na ramena. Pamatuju si ulice, zatky... skonil jsem tady. Dvee byly zamen zvenku, myslel jsem, e tu umu. Jak jste m nael? A nebo vte co... pojme nejdv pry, vrtme se na zkladnu. Bh mi tady mrz po zdech. + + + Jdeme. + + + Zdravm. Potebujete oetit? Nejsem sice doktor, ale kdy je nejh, doku vytahovat kulky i zavat rny. + + + Shnm informace. + + + Ptejte se. + + + Jet k Operaci Prplav... + + + Co je s n? + + + Nestalo se nco podivuhodnho, kdy jet vrtulnky byly ve vzduchu? + + + Dokud jet spodan letly, tak nic. Dreli jsme se plnu mise - odstartovali jsme 90 minut ped emis, aktivovali jsme ochrann systmy a pustili jsme autopilota. Letli jsme nejkrat bezpenou trasou, kterou jsme vypotali podle mapy anomli. Sice jsme nevidli ani metr ped sebe, ale to nemlo niemu vadit, protoe jsme vybrali dost irok koridor. Podle plnu jsme k elektrrn mli dolett pesn za dvanct a pl minuty. Po devti minutch jsme ale ztratili spojen s Rejnokem 4, nae zaaly ostatn vrtulnky padat jako hruky. + + + Ml bych jet pr otzek ohledn t operace... + + + Co vechno vte o tch vrtulncch? + + + Nic moc. Rejnok 2 a 4 jsou plnou zhadou. Nemm pont, kam spadly ani co se stalo s chlapama na palub. Informace o ostatnch vrtulncch mme jen od chlap, co to peili, take neekejte, e si z nich sestavte objektivn pedstavu. Mli jsme dleitj vci na prci. + + + Povzte mi o Rejnoku 1. + + + Jak jste se dostali a sem? + + + Kousek od minovho pole jsme potkali jednoho stalkera. Asi slyel, jak vybuchuj miny. Divnej typ... kal si Prvodce. Na nic se neptal a rovnou se nabdl, e ns zavede do Pripjati. To odpovdalo naim plnm, take jsme souhlasili. Pro jistotu jsme si na nj dvali bacha, ale vechno lo hladce. A do msta nepronesl ani slovo a jakmile jsme dorazili na msto, prost bez varovn zmizel. Rozkzal jsem chlapm, aby ho nehledali. + + + Povzte mi o Rejnoku 3. + + + Kapitn Tarasov tvrd, e selhaly oba rotory. Museli pak pistt na kopci nedaleko pozice B2. Mli tst a pistli celkem mkce, ale technik neml as podn se podvat po pin zvady, protoe na n zatoili snorkov. Zavali tam ti chlapi. Ostatn si ekli, e se tam radi nebudou zdrovat, spojili se s Rejnokem 5 a vydali se za jeho posdkou. Cestou se zapletli do pestelky s po zuby ozbrojenm neptelskm drustvem, ale nakonec z n vyvzli bez dalch ztrt. + + + Jak se dostali do Pripjati? + + + Posdky Rejnok 3 a 5 se setkaly nedaleko mst dopadu pobl jaksi n brky. V hlen mi pak uvedli, e tam il njak totln pouk: kdy se ho m mui pokusili zadret, on se pokusil zadret je! Vbec mu nevadilo, e el sm proti jedencti chlapm. Kdy se to urovnalo, ukzalo se, e jim ho poslala prozetelnost sama, protoe se s nm dohodli a on pak cel drustvo zavedl tm nezrann a do Pripjati. Jedin nehoda se pihodila poruku Stecenkovi, kter cestou piel v gravitan anomlii o nkolik prst na noze. + + + Povzte mi o Rejnoku 5. + + + Rejnoku 5 vypadla elektronika, a tak se zaboil rovnou do bainy. Nraz peilo jen pr mu. Ti si z vrtulnku vytahali vlastn vstroj a pi t pleitost se spojili s Rejnokem 3. Jejich velic dstojnk, major Neborskij, zemel cestou na msto setkn. Chudk, kousek od radarov stanice ho dostal snork... Ostatn vyvzli bez vtch problm. Dalho chlapa, rotmistra Batjaje - ten patil k odstelovam - ztratili, kdy dorazili do Pripjati a zapletli se do pestelky s vojky Monolitu. + + + Jak se do t Pripjati dostali? + + + Posdky Rejnok 3 a 5 se setkaly nedaleko mst dopadu pobl jaksi n brky. V hlen mi pak uvedli, e tam il njak totln pouk: kdy se ho m mui pokusili zadret, on se pokusil zadret je! Vbec mu nevadilo, e el sm proti jedencti chlapm. Kdy se to urovnalo, ukzalo se, e jim ho poslala prozetelnost sama, protoe se s nm dohodli a on pak cel drustvo zavedl tm nezrann a do Pripjati. Jedin nehoda se pihodila poruku Stecenkovi, kter cestou piel v gravitan anomlii o nkolik prst na noze. + + + Nic moc. Rejnok 2 je pro m plnou zhadou. Nemm pont, kam spadl ani co se stalo s chlapama na palub. O Rejnoku 4 byste toho dokonce ml vdt vc ne j. Z toho vrtulnku peil jenom poruk Sokolov - sm jste sem s nm piel. Informace o ostatnch vrtulncch mme jen od chlap, co to peili, take neekejte, e si z nich sestavte objektivn pedstavu. Mli jsme dleitj vci na prci. + + + Nic moc. Rejnok 2 je pro m plnou zhadou. Nemm pont, kam spadl ani co se stalo s chlapama na palub. Na Rejnoka 4 se mete osobn poptat u poruka Sokolova. Je jedin z cel posdky, kdo vyvzl a dostal se a do Pripjati. Informace o ostatnch vrtulncch mme jen od chlap, co to peili, take neekejte, e si z nich sestavte objektivn pedstavu. Mli jsme dleitj vci na prci. + + + Zajm m jet pr dalch informac. + + + Nemm dalch otzek. + + + Jak vypad situace v Pripjati? + + + Na hovno jako vdycky. Pripja je zamoen smsic fanatik z Monolitu a zombk. Emise pichzej jedna po druh a lovk se mus pod mt na pozoru ped mutanty a anomliemi... vtejte v pekle. + + + Kde berete vzbroj a zsoby? + + + Povdejte mi o Monolitu. + + + Jsou to prav a nefalovan fanatici. Nevm, co je tak ere, ale ze veho nejradi by se pod s nkm stleli. Navc nikdy neustoup, ani kdyby stli proti ohromn pesile a silnjm zbranm. Takov kur se tady asto nevid. Mm dojem, e jim z ernobylu prbn chod nov a nov posily. Svin zasran, u jsem kvli nim piel o spoustu dobrch chlap... + + + Zkoueli jste nkter vyslchat? + + + dn efekt. Prvn problm je, e bojuj a do smrti. Nakonec se chlapcm podailo jednoho omrit grantem a zajmout ho ivho, ale stejn to nebylo k niemu. Na chvilku jsme z nj spustili oi a on zaal buit hlavou do zdi, a mu nakonec lebka praskla jako vajko. + + + Co budete dlat te? + + + ekl bych, e Operaci Prplav budeme muset odvolat. e sem poslali vs, tm se to jenom potvrzuje. Mm v myslu brnit zkladnu, dokud pro ns nepolou vrtulnky. Piel jsem s nkolika potencilnmi daty evakuace. + + + Nepolou dn vrtulnky, dokud nezjistme, pro se ztili vichni Rejnoci. + + + Take tak je to... no, pky se odsud beztak nedostaneme. Tohle peklo se thne od nevidm do nevidm a Zna je navc pln stalker, kte ns nemaj zrovna v lsce. Co znamen, e nejlepm eenm bude zahjit vlastn vyetovn, a pokud mono pi nm nenathnout brka. Majore, mme spolen cl. + + + Te ne. + + + Poslouchm, majore. + + + Jedin nae vzbroj je ta, kterou jsme si sami pinesli. No, vlastn se nm i povedlo pobrat trochu vc po Monolitu, pevn munici. Pesto toho mme mlo, a tak radi vechno vydvm na pdl. To plat i pro jdlo - mme jenom vlastn zsoby a pr konzerv ze skladit Monolitu. + + + Jedin nae vzbroj je ta, kterou jsme si sami pinesli. No, vlastn se nm i povedlo pobrat trochu vc po Monolitu, pevn munici. Pesto toho mme mlo, a tak radi vechno vydvm na pdl. Co se potravin te, tam je situace prakticky stejn, jen s tm rozdlem, e jsem uzavel dohodu s Garikem. Od nm nos konzervy, j ho nechvm pespvat na zkladn a pivrm oi, kdy vyr hledat artefakty. Stejn nemme moc na vbr. + + + Pomstili jsme nae chlapy... Zai si, co potebuje, a padme vodsa. Nechci se tu zdrovat. + + + Nebudeme tady vysedvat, e ne? Chci se co nejdv vrtit na zkladnu. + + + Dobe. + + + To je ta divn vc! K emu jim je asi dobr? No nic, kalem na to. Zai si, co potebuje, a padme zptky na zkladnu. + + + Hotovej? Navrhuju vrtit se zptky na zkladnu a podn si nacpat ncka... + + + Dobe. + + + Jak se vede? + + + Na hovno. Je sice super bejt zase mezi vlastnma, ale makat se s bandou lid v jedn de nen vbec dn o. + + + Vs jsem tu jet nevidl. Jste tu nov? + + + Jo. Poruk Sokolov, druh pilot Rejnoka 4. + + + Jak jste se sem dostal? + + + Pivedl m stalker jmnem Garik. Hledal cestu do Pripjati, tak jsem se ho zeptal, jestli bych nemohl jt s nm. Na mou dui, byla to podn treka! atnou nhodou jsme hned za pedmst Pripjati narazili na nae przkumnky. + + + Co se stalo s Rejnokem 4? + + + Co j vim? Mm z t vci takovej divnej pocit. To si tak letme spokojen na autopilota, vechny pstroje v podku... a najednou se sname pilotovat ltajc kus rotu, ktermu odela vechna elektronika. S kolegou pilotem jsme se snaili pistt na rovn ploe, ale nevylo to. Sekli jsme sebou pmo do hlavn tovrn linky v Jupiteru, hezky stechou dovnit... peil jsem jenom j. + + + Potebuju zbroj. + + + Dobe. Nejdv si vezmi tuhle helmu... tak a te vestu. Doufm, e je to tvoje velikost, protoe dnou jinou momentln nemm. Je zplatovan, ale mla by vydret. + + + Zajist, majore. V tto situaci stejn nemm pli na vbr. A mimochodem, stavte se u poruka Kirilova. Vyd vm njakou vzbroj. + + + Jet k tm vrtulnkm... + + + Poslouchm + + + Ty vole, to je hust... U vidm, jak u m Kirilov kemr o aspirin. + + + ekn je vdycky to nejhor. lovka ubj vc ne cokoliv jinho. + + + Dobr, majore, chlapi jsou pipraveni. Jestli potebujete doplnit vzbroj, skote za Rogovcem a Kirilovem. A budete pipraven, dejte vdt. + + + Dobe. + + + Pohyb. + + + No tak v tom ppad budu potebovat prvotdn ochrannej oblek, nco jako maj vdci. Jenome pemluvit Hermanna, aby mi jeden vydal, nebude snadn. Cosi mi k, e by m radi vidl bhat nahatho po okrajch Zny, ne aby m trpl ve vlastnm bunkru... Co kdyby ses ale zeptal Ozerskeho? Ten je pjemnj a mon by mi jednu kombinzu penechal. + + + Nue, majore? + + + [pokraovat...] + + + [pokraovat...] + + + Byl jsem na palub. Jakmile se ztil Rejnok 4, rozeslal jsem ostatnm souadnice evakuanho bodu v Pripjati - myslel jsem, e k elektrrn snadno dojdeme pky. Hned v zpt n vrtulnk schytal zsah a j uctil, jak se nco pl - vzntil se nm motor. Pilotm se ns podailo navst na pistvac plochu u Jupiteru, ale pi nrazu oba zahynuli. Potom rotn Sliain vyltl do luftu, a tak jsme zjistili, e pchodov cesty k pistvacm plochm jsou dkladn zaminovan. Dalho mue, byl to nadporuk, jsme ztratili v Pripjati, kdy jsme s Monolitem bojovali o tuhle budovu. + + diff --git a/gamedata/configs/text/cze/st_dialogs_zaton.xml b/gamedata/configs/text/cze/st_dialogs_zaton.xml new file mode 100644 index 0000000..f264d17 --- /dev/null +++ b/gamedata/configs/text/cze/st_dialogs_zaton.xml @@ -0,0 +1,3117 @@ + + + + V rpac stanici se nachzel zvltn artefakt. Tady je. + + + Zajmav, poloartefakt... Tady jsou tvoje penze. Za dobe vykonanou prci dobe platm... Zd se, e ses toho dost nauil. A bude potebovat prci, pij za mnou. asto dostvm objednvky na urit artefakty a odmna je opravdu lkav. + + + M pro m njakou prci? + + + Nco bych tady ml... Stalkei minulou noc zpozorovali v rpac stanici zvltn druh ze... I na tuhle oblast byla moc divn. Nechtl by ses tam porozhldnout? + + + Urit. + + + Dvej tam na sebe pozor. To msto je zamoeno radiac. Nezapome na svoje lky, pozdji mi za n podkuje. + + + Te ne. + + + Veker koly, kter jsem si na dnen den naplnoval, jsem zvldl. + + + Vezmi tento poloartefakt. + + + Tady je tvoje odmna. Za dobe vykonanou prci dobe platm... Zd se, e ses toho dost nauil. A bude potebovat prci, pij za mnou. asto dostvm objednvky na urit artefakty a odmna je opravdu lkav. + + + V rpac stanici jsem nael zvltn artefakt. Chce se podvat? + + + Zajmav, poloartefakt... Dovol mi ulehit ti od nj. 3000 se mi zd jako dobr cena. + + + Viml jsem si, e ti nkdo pinesl artefakt, kter jsem nael. + + + Promi, ale do toho se nenechm zathnout. Moje pravidla jsou jednoduch dodej zbo a dostane penze. Dobe v, jak to v Zn funguje mj oi oteven, jednej rychle a nev nikomu. Ale pokud hled stlou prci, jsi na sprvnm mst. asto dostvm objednvky na urit artefakty a odmna je opravdu lkav. + + + Kter artefakty potebuje? + + + Seenu Gravi. + + + Skvl! To byla rychlost! Tady m svou odmnu. + + + Seenu Oko. + + + Seenu Bublinu. + + + Seenu Skopku. + + + Seenu Zlatou rybku. + + + Seenu Plamen. + + + Seenu Svtluku. + + + Seenu Vloku. + + + Mu ti prodat Gravi. + + + Dje se nco divnho. Chlapi pijmou zakzku a pak zmiz... Zanm mt problmy, asi budu muset zavt krm. + + + Mu ti prodat Oko. + + + Mu ti prodat Bublinu. + + + Mu ti prodat Skopku. + + + Mu ti prodat Zlatou rybku. + + + Mu ti prodat Plamen. + + + Mu ti prodat Svtluku. + + + Mu ti prodat Vloku. + + + Jasn. Vrtm se o nco pozdji. + + + Oba tmy, kter pro m pracovaly, zmizely... Rozhodl jsem se, e od nynjka nebudu pijmat dn dal objednvky. + + + Prce je hotov. + + + Skvle! Tady m svou odmnu. + + + Tady m. Nen to mnoho, ale lep ne nic. + + + ekni mi o objednvkch artefakt. + + + Koho bych mohl najmout na ochranu vdc? + + + Moje chlapy Spartaka a jeho tm. Nco u maj za sebou. Nkte ped pchodem do Zny pracovali jako hldai a v tomu nebo ne, nkte dokonce patili ke specilnm policejnm tvarm. Ti chlapi v, jak se zachz se spout... Pokud budou k dispozici, poskytnou ti dobrou ochranu. + + + Jindy bych pro tebe ml jeden tip, ale vzhledem k poslednm udlostem... Spartakus a jeho tmu u zkrtka nen, a odpovaj v pokoji. + + + Koho bych mohl najmout kvli proveden nkolika men pro vdce? + + + Zn Gontu a jeho chlapy? Mimo loveckou seznu jsou ehm jsou rdi za jakoukoliv prci. Zvl᚝ kdy kvli n nemus stlet. Jejich mylen by se dalo popsat slovy "kdy ctm, e m zanaj svrbt prsty, jdu lovit. + + + V tomhle ti nepomu. Doporuil bych ti Gontv tm, ale u dlouho jsem o nich neslyel. + + + ekni mi, jak se tady ije. + + + To je na dlouho. Zkus se zeptat na nco konkrtnho a mon ti na to odpovm. + + + Co tady stalkei dlaj? + + + Ptej se sm sebe, kmo. Vychzej ze Skadovsku, aby prozkoumali tern, hledali artefakty a zastleli si na vechno a na vechny, kdo je pi tom ru. Pichzej zptky do Skadovsku, aby se opili a pobili... a odpoinuli si ped dalmi njezdy. Ale kdy se objev emise, vechno je jinak. Pak si vichni spolen sedneme a vzpomnme na ty, kte se nestihli ukrt... + + + Co ene stalkery dovnit Zny? + + + Vtipn otzka. Nkte se tam snaili najt dal Klondike artefakt. Nkte byli pivbeni legendami o Oze. Jin hledali Plni pn. A pak tady mme klasick lidsk poteby jako chamtivost a zvdavost... Kad m svj dvod. Jsem si jist, e ty taky... + + + Jak to, e jsi zrovna tady? + + + Piel jsem s Tetevem, jakmile byl vypnut Vypalova. Ale tohle asi poslouchat nechce, e? Jedu hlavn v artefaktech. Tretek u je venku dost a bohat zkaznci poaduj vzcnj vci. Proto jsem se rozhodl zakotvit v tboe stalker, kde se daj najt opravdu cenn vciky. Hele, kdy se stalker vrt se svou koist, co opravdu potebuje? Chladiv kov v rukou a trochu toho lidskho kontaktu. A to vechno Skadovsk me nabdnout. + + + Co si mysl o banditech? + + + No, vc se m takhle. Na palub Skadovsku proti nim nic nemm, pokud se ovem chovaj jako lidi. Nakonec, vtinou tady nepotkv pln pitomce. Nkte z nich jsou vlastn bval stalkei. Kdo v, nkte z tch bdk se mon rozhodnou, e bude lep nechat sv kivck prce ne chytnout kulku do hlavy... ivot je pln pekvapen. + + + Ne, v pohod. Kali na to. + + + Kdy k... + + + ekni mi, objevila se tady armda? + + + Zamysli se. Co by marici dlali v naem tboe? V mi, kdy ti eknu, e se tomuhle mstu radi vyhbaj. Pli mnoho mstnch si jet iv pamatuje, jak se v Kordonu plazili bltem, zatmco na n vojci plili ze svch kulomet... + + + Povz mi nco o Kompasu. + + + Tenhle artefakt je opravdov legenda. k se, e nem dn kodliv vedlej inky, a pokud ho um vyut, me t vyvst z anomlie. Te ti je asi jasn, pro o nj zkaznci maj takov zjem. Ped pr dny mi nkdo kal, e Noe o tom nco v. Je to stalker, kter bydl na jih odsud. + + + Dobr, zajdu za Noem. + + + Budu nad tm uvaovat. + + + Legendrn artefakt, jak u jsem ti dv ekl. k se, e stalker zvan Noe by o nm mohl nco vdt. Bydl jin odsud. + + + Nedaleko Janova jsem narazil na zvltn artefakt. M o nj zjem? + + + Uka to... Rozhodn to je zajmav vcika, ale nemyslm si, e bych to nkomu prodal. Doporuuju, abys zamil zptky do Janova a ukzal to vdcm. Tyhle divn hovadiny jim dokou rozproudit krev v ilch. + + + Hejkal k, e nepln svou st dohody. + + + Mli jsme naprosto jasnou dohodu: j dostanu detektory, vyuiju je pro men pole a on dostane st zisk. U jsem mu zaplatil za dva detektory, take ty podmnky dodruju. To je vechno, co nae dohoda s Hejkalem obsahuje. Pokud pro nj pracuje, me mu vzt tet detektor nekoupm ho. + + + Take co bych ml ct Hejkalovi? + + + Budi. + + + Kdybych byl tebou, s Hejkalem bych nejednal. Pokud si chce slun vydlat, mu ti pro zatek dt pr rad ohledn hledn artefakt. Dv, ti nebo tyi hodiny dost na to, abys vdl vc ne ostatn. A pokud bude mt zjem, ml bych tady navc jednu speciln objednvku. Co nejdv potebuju sehnat artefakt jmnem Kompas. + + + Sultn dokzal sebrat Kompas. + + + Ten hajzl se s tm nepr... dobr, nevad. Zkus si zase promluvit s Noem. Zan se mluvit o tom, e ta vcika by mohla bt... uiten. + + + Nael jsem Kompas. Tady je. + + + Kmo, zachrnil jsi mi ivot! Konen mm tuhle danou vciku u sebe. k se, e Sultn chtl pevzt nadvldu nad mm obchodem. Asi bude natvan, ale dobe mu tak, zaslou si to. Tady m rozhodn sis to zaslouil. + + + Odmtm pro tebe hledat Kompas. + + + koda. Jak chce. + + + Sultn t pozdravuje. Mimochodem, vechny tvoje obchodn zdroje byly odznuty. + + + Te u je jasn, kdo za tm vm stoj... No, Skadovsk neopustm. Take asi nemm jinou monost ne pracovat pro tebe a Sultna. Dostane svou st zisk a ty si bude kad den chodit pro tu svou. Penze tady budou ekat. + + + Dej mi mj podl. + + + Tady m. + + + Jde brzy. Jet dn prachy nemm. + + + Mysl, e by ipera mohl jet v kradenm zbo? + + + O tom pochybuju... Podle toho, co o nm vm, tyhle ern obchody nechv na ostatnch. Poctiv obchodnci si jeho jmna a povsti v. Abych to shrnul, nikdy jsem neslyel, e by o nm nkdo ekl nco patnho. + + + Hledm Pahejla. Nev, kde bych ho nael? + + + Kdy jsem ho vidl naposled, vychzel z baru. Pokud si dobe vzpomnm, v baru se bavil o tom, e pjde k jebm v docch. Tam by ses po nm mohl podvat. + + + Nkdo se chyst okrst skupinu stalker. Vetn naich chlap. + + + Pni. Nesta, e bandit pibv jako krlk, to se jet budeme mltit mezi sebou? + + + Chtli po mn, abych v noci zatoil na tbor u evenka. + + + Svin... Vlastn by bylo hezk, kdybys jejich nabdku pijal. V, kam mm? Pak bych mohl ct svm chlapcm, aby naim hostm pichystali pjemn pivtn. + + + Souhlasm. + + + OK, zajdi za tmi blbci a j o tom zatm eknu chlapm. + + + Promi, jsi v tom sm. + + + Mm tady artefakt z Ozy. M o nj zjem? + + + Srdce Ozy? Ne, myslm, e ti ho nechm. Lidi kaj rzn vci... Mou to bt jen povry, ale radi se od toho budu dret dl. Myslm, e neudl chybu, kdy ho ped vdcm. Ti artefakt prostuduj a pomohou nm pochopit, jak ovlivuje lidi. + + + Jsi tady nov? To je v podku, brzy zapadne... V, Zna je tvrd uitel. Jsem Fous, mstn barman. Pokud bude mt njak otzky, zastav se. + + + Do toho. + + + Co bys ekl na to, vydlat si njak penze hlednm artefakt? + + + Jak si stoj stav m objednvky? Pamatuj: rychlej stalker si vydl vc... + + + Jde pozd, ten artefakt u mi nkdo pinesl. Ale pokud jsi kol dokonil, pod ti za to zaplatm. Jen ne tolik. + + + Nco se zrovna objevilo. k se, e banditi se chystaj nakoupit spoustu zbran. Nai chlapi je chtj sledovat a transakci pekazit. Ocenili bychom jakoukoliv pomoc. + + + Tak co? + + + Co oldci pohledvaj v tovrn na zpracovn odpadu? + + + Radi se od toho msta dr dl. Nen to tvoje starost. + + + Bav t pracovat pro vdce? + + + Docela jo. Jsem rd, e sis ze vech lid vybral ns. Jsme ta nejlep mon ochrana, jakou vdci mohli dostat. + + + Dvm dohromady tm na cestu do Pripjati. Pipoj se k nm? + + + Ne. Musm dvat pozor na vdce... Ale me si promluvit se Sokolovem myslm, e do Pripjati chtl jt. + + + Ne. Musm dvat pozor na vdce... Proto tady vlastn jsme. + + + Ehm... Ne, moje msto je te tady. + + + Chtl bys pracovat pro vdce? + + + To zle... Co je to za prci? + + + Hldn jejich bunkru. + + + Jasn, a dky za nabdku. + + + Provdn men v anomlich. + + + Tenhle typ prce nen nic pro ns. Radi se zeptej stalker. + + + Poslouchej, stalkere. U te m mj przdn aludek ubj a tvoje remcn to jet zhoruje... + + + Mohl bych ti pinst nco k jdlu. + + + Hah! Dobr, udlej to. Maso v plechovce, klobsy a chleba... est kus z kadho. Pines toho dost, protoe jsme hladov jako vlci. + + + Slyel jsem, e by tady mohlo bt njak nad. + + + Jak to mm sakra vdt? Ale byl bych rd, kdybys tady pestal pobhat jak splaen. U tak tady mme tolik prce, e nemme koho poslat pro jdlo. + + + Jak to mm sakra vdt? Ale klidn se v tomhle harampd hrabej. Mon najde, co potebuje. + + + Tady je to jdlo. + + + Wow, u jsem ztrcel nadji... Dky. Te si s chlapy udlme dobr obd. Tak cos chtl? Pohrabat se v harampd? Klidn se do toho pus. Mon najde, co potebuje. Ale pesta tady mvat tou svou pistolkou! + + + Wow, u jsem ztrcel nadji... Dky. Te si s chlapy udlme dobr obd. Posly, pokud si to tady chce prohldnout... Jen do toho. Ale pesta tady mvat tou svou pistolkou. + + + Tady nejsi vtn. Tenhle tbor pat nm a ty tady nem co pohledvat. Moji chlapi jsou i bez tebe a pli hladov a nervzn... + + + Vypadni, protoe moji chlapi jsou tak hladov, e u neovldaj prsty na spoutch. + + + Hele, stalkere... Jde o nco dleitho? Pokud ne, prce mm dost. + + + Jsem pipraven na lov. + + + Dobr. Jdeme. + + + Jdeme. + + + Jet nenadeel sprvn as. Vra se ve ti rno. + + + Aha. + + + My taky... Ale dky t emisi te chimra rozhodn nebude spt. Myslm, e to musme zkusit jindy. + + + Gonta je mrtv. Jak se to jen mohlo stt... Nejde nhodou do Janova? Ml by tam bt Pastik, Gontv ptel. Mohl bys mu vydit, e chimra je mrtv? J te asi pjdu dom. + + + Mj se. + + + Vypadni odsud. Gonta zemel i kvli tob... Co te budeme dlat? + + + Mj se. + + + ekni mi nco o sob. + + + kaj mi Gonta a jsem velitel loveckho tmu. Likvidujeme mutanty za penze. Meme je chytat i iv, bu pro vdeck ely nebo pro lidi, kte si chtj podit exotickho mazlka... jak kval Pastik: "Kad iv potvora si zaslou svou vlastn kulku..." + + + Povz mi nco o loven mutant. + + + Hele, nejsem nejzkuenjm lovcem, ale vm toho docela dost o zvatech pohybujcch se ve skupinch. O flaksch, kancch, slepch psech, pseudopsech, snorcch, tarbcch... Dokonce vm nco mlo i o uprech. + + + ekni mi o flaksch a kancch. + + + Dobr. Flaksy jsou nejnekodnj ze vech mutant. Sna se stalkerm vyhbat, ale pokud na n zato, brn se. Pokud ale mezi flaksami pobh kanec, smrd z toho prser. Ti metrky vzteku nejsou nic, s m by sis chtl zahrvat. Pokud na tebe zato, sna se uhnout... Vyuij jejich setrvanosti. Takov hromada masa asi nebude dn baletka, e? Usko do strany a pak tu potvoru zasypej sprkou stel. + + + ekni mi nco o slepch psech a pseudopsech. + + + Samotn psovit elmy nejsou tak nebezpen, ale pokud jsou v tlup, nen to dn sranda. to, jen pokud jsou hladov... problm je v tom, e jsou hladov skoro pod. Pokud proti tob stoj cel smeka, zkus si s nimi poradit z njakho vyvenho msta, jinak t prost pevlcujou. Zvl᚝ pokud mezi nimi jsou dospl pseudopsi. Nejsou o moc nsilnj ne slep psi, ale jsou mnohem mazanj a nebezpenj... Pokud se ocitne uprosted smeky, pak si pamatuj, e na tebe to slep psi. Pseudopes vtinou stoj stranou a to jen obas... Sna se ho najt, protoe jakmile ho zabije, slep psi uteou. + + + ekni mi nco o snorcch. + + + Pozstatky lid... Samotsk snork pro zkuenho lovce nepedstavuje takov problm. Pok, a na tebe sko a ve vzduchu ho zasype sprkou stel. Ale kdy jich je vc... Jakmile uhb jejich skokm, nezbv ti ne do nich sypat jednu stelu za druhou. Moc dobe to v a proto to spolen. + + + ekni mi o tarbcch. + + + Non mra kadho lovce... To nejhor, co me udlat, je dt na jejich velikost a podcenit je. Jsou neuviteln rychl, pohotov a vdy se pohybujou ve skupinch. A uct, jak do tebe bodaj destky malch tesk, je na ase pestat je ignorovat a zat stlet... A to je prv problm zashnout je nen jen tak. Proto vem lovcm radm, aby u sebe pod mli nabitou brokovnici. + + + ekni mi nco o uprech. + + + Upi jsou sami o sob zkuenmi lovci v perfektnm pestrojen. Kdy se maskuj, jsou skoro neviditeln. Pokud chce ulovit upra, mus ho pekvapit. Lpe ho spat, kdy se pohybuje... Pamatuj na to, e upr se bude snait pikrst za tebe a omotat ti chapadla kolem krku. Fakt to nen nic pjemnho, chlape... Pokud bude mt smlu a vbhne do skupinky upr, dvej si pozor na zda. + + + OK, nech to bt. + + + Pokud Strake uvidm, urit ti dm vdt. + + + Postarm se, aby to stlo za to... Servu z nj vechnu ki. + + + Co ti Strak vlastn provedl? + + + Jednou ke mn piel a kal, e kvli kontrolorovi neme zskat svou koist. Mmu tmu tenkrt chybl jeden chlap. N stopa Danila byl pry, protoe se snail stopovat upry a k jejich hnzdu. Tak jsme se rozhodli, e Strakovi pomeme zskat jeho koist a vzali jsme ho na lov. Jeho jedinm kolem bylo hldat v okol doupte, jestli se neobjev chimra... + + + A co se stalo? + + + Co se stalo? Ta svin utekla se svou i s na koist. Kdy se chimra objevila, nebylo to pjemn pekvapen. Napklad Garmata vbec neml as zareagovat. Ale kdo by ml? Msto toho, abych si dobe zalovil, jsem jen brnil sv chlapy. Nakonec jsem tu chimru zranil, ale stejn dokzala dt Rejpalovi slunou rnu a vypaila se. Ztratili jsme cel tden pprav. + + + Lov m v krvi, chlape! Tady m trofej, pmo ode m... Jak Pastik kval: "Tou hlavn zbran jsou nae schopnosti..." Mimochodem, nechyst se do Janova? Bylo by dobr vydit Pastiki, e chimra je mrtv. J zatm zstanu tady ve Skadovsku a pokm, a se d Rejpal do podku. Jde s nmi? + + + Jo. Jdeme. + + + Ne. Jet se tady porozhldnu. + + + Dokzali jsme to. Tady ode m m takovou malou trofej... Mohlo to probhnout trochu klidnji, ale na tom u nezle. Jak kval Pastik: "Kdo potebuje pasti, kdy m zkuenosti?..." Mimochodem, nechyst se do Janova? Bylo by dobr vydit Pastiki, e chimra je mrtv. J zatm zstanu tady ve Skadovsku a pokm, a se d Rejpal do podku. Jde s nmi? + + + Garmata je po smrti... Ta chimra ns vyla draho. Nem nhodou do Janova? Bylo by dobr vydit Pastiki, e chimra je mrtv. J zatm zstanu tady ve Skadovsku a pokm, a se d Rejpal do podku. Jde taky? + + + Nael jsem Danilu. Je mrtv. Zabil ho Strak. + + + To ne! Pro vdycky odchzej ti nejlep z ns? Ten hajzl Strak! Zabt Danilu... Byl to skvl lovk! + + + Mysl, e by ipera mohl jet v kradenm zbo? + + + Kraden zbo? Jak jsi na nco takovho piel? iperu znm u dlouho, pravideln u nj objednvm zbran. Skvl zbo za dobr ceny. Tohle slym poprv. ekl bych, e m nov protivnky, kte u jsou tak zoufal, e roziujou tyhle povsti... + + + Dvm dohromady tm na cestu do Pripjati. Pipoj se k nm? + + + Mm s vdci dohodu, kterou musm dodret. Navc se na takovou cestu nectm. Ml by sis promluvit se Sokolovem. Pod mi pipomn, jak moc se potebuje dostat do Pripjati, ale samotn se boj. Skuten vojk, tenhle chlap. + + + Mm s vdci dohodu, kterou musm dodret. Navc se na takovou cestu nectm. Sorry, chlape. + + + Ne, nectm se na to. h tam smrt. Sm dobe v, e se v tch koninch prohn spousta mutant dost na to, aby ukonili ivot nejednoho zkuenho lovce. + + + Chtl bys pracovat pro vdce? + + + Co je to za prci? + + + Hldat jejich bunkr. + + + Ne, dky. Jsem lovec, zabvm se mutantama. A mutanti bunkr neohroujou. Jo, lidi, to je nco jinho. + + + Provst men v anomlich. + + + Pro ne? To zvldnem. Oficiln vyhlauju konec loveck sezny! Bude to fajn zmna oproti rutin, vak v, ty nervy, kter chyt, vdycky kdy tam vyraz... + + + Ne, te prv ne. Jde o lov, chpe. Musm si to nejdv vydit s tou chimrou. Nememe nechat krveznivou bestii pobhat po Zn a rt stalkery hlava nehlava, noha nenoha. + + + Te prv chci chytnout Strake hezky pod krkem. A pak budu naprosto klidnej a budu s tebou moct probrat prci. + + + Pozdjc. U te toho mme na tali a moc. Potebujeme oddlat chimru a vystopovat Strake. Na jin kefty nen as. + + + Nael jsem Strake. Je v Janovsk stanici, k si 'Pazourek'. + + + Ten zkurvysyn jet ije? No, dlouho mu to nevydr... vezmi si tohle, dky za tip. U se nemu dokat, a si s tm hajzlem popovdm. Take Pazourek, jo... + + + Jo. Dky. + + + Vole, nevidls nhodou nkde chlpka jmnem Strak? Nezn ho? Ne... No kdybys na toho mejda nkde narazil, udlej mi radost a provtrej mu palici dvkou. Nebo mi ekni, kde ho najdu, a j se postarm, abys nelitoval. + + + No nazdrek. + + + Pokej! Vystopovali jsme chimru, take nememe ztrcet as. Rejpal je furt mimo, Danila se jet nevrtil a honit tu bestii jen ve dvou by byla pkn blbost. Potebujeme tetho. Ty se celkem schopnej. Naels Strake. Co kdybys el s nma ulovit tu zasranou chimru? + + + Pokej! Vystopovali jsme chimru, take nememe ztrcet as. Rejpal je furt mimo, a Danila... honit tu bestii jen ve dvou by byla pkn blbost. Potebujeme tetho. Ty vypad celkem schopn. Co kdybys el s nma ulovit tu zasranou chimru? + + + S potenm. + + + Jak kal Pastik: "Kdy jde na lov, loven je jen plka prce..." Hele, poslouchej: po nonm lovu se chimra vrac do svho hnzda nkdy nad rnem. Kdy u je venku skoro svtlo. A v tu chvli na ni udeme... A bude pipravenej, stav se tady ve ti rno a pjdeme na to. Pokme na tebe v baru. + + + Promyslm si to. + + + No, a se rozmysl, stav se v baru kolem tet rno. Nkdy tou dobou se chimra plaz zptky do nory, vychrpat se. + + + Nazdar. Jak se vede? Vypad odpoat. + + + Pohoda. Svt je malej, co? + + + Take? Je prv tak as jt odstelit njakou chimru... + + + Jse ped lovem nervzn? + + + Pastik m podal, abych vm pomohl ulovit chimru. + + + Aha, furt se na to necejt. No jde o to, e jsme tu blbou chimru konen vystopovali. Nanetst je Rejpal furt mimo a Danila se taky jet nevrtil... take budem jen ti. Ale pokud t Pastik vybral, mus bejt dobrej lovec. Hele, chimra pes noc lov a nad rnem, tak kolem tet rno, se vrac do svho hnzda. To u je venku skoro svtlo. A v tu chvli na ni vltnem. A bude pipravenej, stav se tady kolem tet rno a pjdeme do toho. Budeme v baru. + + + Sna se ze m udlat blbce? + + + To u jse. A blbce je teba pouit. + + + Na tom nezle. Svt je malej a Zna je jet men. Jet se potkme. + + + B... vypadni odsud. Ve Skadovsku nejsou bitky povolen. + + + Jo, jasn. + + + Uznvm, udlal jsem chybu. Ale ty jsi poruil pravidla. + + + Jo, to je prost Zna. Tak dobe, dost kec. + + + Asi je to fakt debil, kdy si nechal artefakt uniknout. + + + Fajn, hlavn nezani bulit. Chybama se lovk u. A si to zapamatuje, dej si na mn pivo, to t rozvesel. + + + Vezmu si, co dostanu. + + + Ne, dk, pit si platm sm. + + + Co si mysl, e jse? Zavi hubu a ani se nehni! A naval artefakt, debile! + + + Kretne. Nech si ten artefakt... doufm, e se s nm udv. + + + Jdi do hajzlu. + + + Brcho! Poslouchej, existuje jeden artefakt, co m livou moc... a j ho fakt nutn potebuju. Jeden mj kmo asi brzo zdechne na kou divnou nemoc, nae lky vbec nefungujou... snail jsem se ten artefakt sebrat, ale spadnul jsem do plynov anomlie. Nenarazil jsi na nj nhodou, na ten artefakt? + + + Kdy jde o tolik, tak tady m. + + + Dky, brcho! Nezapomenu na to. + + + Opatruj se. + + + Jeden mm. Ale potebuju ho pro sebe. + + + Ale no tak! Mj kmo... on fakt umr! + + + V Zn jede kadej sm za sebe. Dvej na sebe bacha. + + + Ne, nevidl jsem ho. Dvej na sebe bacha. + + + Ten artefakt ti nakonec vbec nepome. Pamatuj na m slova. + + + Kdy ho potebuje tak nutn, tak na, tady m. + + + Dky, brcho! Nezapomenu ti to. + + + Dvej na sebe bacha. + + + Uvidme. + + + Nemm s tebou o em mluvit. + + + Pro ije v t popelnici? + + + Je to archa! Pamatuj na to... pamatuj, pokud chce t! Kdy zane Vlna, dr se pobl. Tady m anci pet. dnej mutant se sem nikdy nedostane. + + + kals nco o Vln... + + + Jo, vlna mutant, kter vechny pozabj nebo vyene ze Zny! A pokud by nhodou njakej chudk pece jen peil, sund ho obrovsk emise!!! Zlikviduje to vechno iv v Zn! Krom tch, co jsou pipraven. + + + Kde jsi sehnal toho psa? + + + To je Lassie. Roztomil mal ubka... nebt j, u by m dvno ve spnku nco seralo. Zatracen mutanti... nenvidm je! Jakmile zave oi, zanou kolem muchat, krbat tma svma hnusnma drpama, cvakat teskama, ustit chapadlama.... + + + Potebuju artefakt Kompas. Nev, kde bych ho mohl sehnat? + + + Ten nesmysl t nezachrn, a z lesa vybhnou mutanti! Na, vem si tohle a vypadni. + + + Dky. + + + Nev nco o zzenm vrtulnku? + + + O jednom nco vm... vm, e je na nhorn ploin a vude kolem nj je plno snork. Kadejch pr dn si na n jdu zastlet... pro se na m tak divn kouk? Cel hnzdo na jeden ztah nevyhub. + + + Jak se mu dostat na tu nhorn ploinu? + + + Chce si taky odprsknout pr snork, co? No... mu t tam zavst. + + + Tak pjdeme. + + + Nkdy jindy. + + + Stalker. + + + Aha. O co ti jde? + + + Po tom ti nic nen. + + + Zavedu t tam. Zatm zsta tady. Bude emise. Chpe? Emise!!! + + + V tom hnzd jsem byl. + + + Jo? Na tom nesejde... mutant je furt m dl vc. A jednoho dne zatoej! Jejich vlna oist Znu od vech, co nebudou pipraven! + + + Hele, nem u sebe nhodou Kompas? + + + Mysl, e t to ped emis ochrn? Pche... na, ber a vypadni! + + + Dkuju. + + + Co jse za? + + + Stalker. U jsme se jednou setkali. + + + Nepamatuju si to. No jo, co potebuje? + + + Stalker. Prost stalker. + + + Aha. Hled toit v Are? Jako doma, jako doma. + + + Po tom ti nic nen. + + + Aha, to jse ty. Co chce? + + + Nem u sebe nhodou jeden Kompas navc? + + + ekni mi nco o anomlich. + + + Kdy se dostane k anomlii, mus pamatovat na to, e bu bude hodn hav, nebo bude luft plnej toxickho svinstva, nebo stran siln radiace. Taky tam mou bt psionick vlny, ale o tch teka mluvit nebudu. Prost zle na tom, jak je to anomlie... jestli r, plyn nebo elektina... nebo gravitace, ale doufej, e na ty zatm nenaraz. Taky existujou pohybliv anomlie, ale to je zas nco pln jinho. + + + ekni mi nco o rovch anomlich. + + + Pokud uvid takov divn chvn jako vzduch, kterej se tepe nad rozplenm chodnkem, tak to bude rov anomlie. Kdy se do n nco dostane, tak z n vylehne extrmn horkej plamen. Lidi si nejdv mysleli, e to vyvr metan nebo tak nco, ale asem pochopili, e to tak asi nen. + + + ekni mi nco o plynovch anomlich. + + + Tmhle se tak k, protoe v nich furt probhaj divn chemick procesy. Vytvej kyselinu, kter t bhem pr sekund proere skrz naskrz, a taky toxick plyny, kter ti vyplej plce jet rychlejc. Natst se daj venku plynov anomlie snadno poznat. Ale kdy do njak vleze v temnm tunelu, je to hodn blb. + + + ekni mi nco o elektrickch anomlich. + + + To jsou fakt zajmav anomlie, kter v sob akumulujou velkej nboj statick elektiny. Stalkei vtinou vyuvaj to, e se tyhle anomlie daj vybt nm kovovm. Hod tam roub a rychle probhne, ne se sta zase nabt. J je teda radi obchzm, na mj vkus se dobjej a moc rychle. + + + ekni mi nco o gravitanch anomlich. + + + Ty se vtinou nehejbou. Kdy se podv na njak msto a vimne si, e vci za nm jsou njak pokroucen, to je gravitan anomlie. A radi se k n nepibliuj. Vechny ti znm varianty reagujou okamit, jakmile se jich nco dotkne. Trampolna odhod vechno, co je pobl, na velk vzdlenosti. Vortex udl pesnej opak, nasaje vci do sebe, rozdrt je brutlnm tlakem a pak kousky rozhod kolem. Vr zvedne ob do vzduchu, rozto ji a rozerve na kusy... fakt nepjemnej konec. + + + ekni mi nco o pohyblivch anomlich. + + + Osobn jsem narazil akort na Kometu a Teslu. Kometa je ohniv koule, asi metr v prmru. Ale me si bejt jistej, e horko uct na vt vzdlenost. To druh se d jen tko popsat, nejpesnj je asi nco jako kulovej blesk. Je to kulat a je to elektrick, nic moc vc se o tom nev. Ob tyhle anomlie se furt pohybujou, vtinou na uzaven trase. Opatrnej stalker by je ml dokzat snadno obejt... ale nesm ztratit soustedn. + + + Fajn, tak jo. + + + ekni mi nco o sob. + + + Nekaj mi Navigtor jen tak. Pouvm jen bezpen trasy. Nemm nervy na sbrn artefakt nebo bitky s banditama, take... kadej by ml pouvat svj talent a poskytovat ho ostatnm. A samozejm e kadej talent m svou cenu. + + + ekni mi nco o emisch. + + + Mm njak mapy oblasti mezi Zatonem a Jupiterem. Chce se kouknout? + + + Uka... dobr, spousta detail. V naem byznysu jsou detaily rozdl mezi ivotem a smrt. Jo! Tyhle mapy ukazujou bezpenou cestu pmo mezi Skadovskem a Janovem. Zkopruju si to do PDA, pokud ti to nevad. A odte m u m slevu. + + + Mon potebuje prvodce? Kterej by ti ukzal cestu kolem anomli, udrel t v bezpe ped emisema? Navigtor, k tvejm slubm. + + + Potebuje prvodce? + + + Rd t vidm. Co pro tebe me Navigtor udlat? + + + Zase vyr. + + + Mj se. Nedoke zstat na jednom mst moc dlouho, co? Jsem ti k slubm. + + + Nazdar. Pokud potebuje prvodce, jsem tvj lovk. Jakmile emise skon. Mezitm mem zabt as a pokecat o anomlich... + + + Obvm se, e te ti jako prvodce moc nepomu... emise jede na pln pecky. + + + Za kolik m dovede do Janovsk stanice? + + + Bohuel je to podn treka, take to bude za 3000. + + + Fajn, pjdeme. + + + Tolik u sebe nemm. + + + Jet nechci odejt. + + + S tvejma mapama jen za 1000. + + + Fajn, pjdeme. + + + Tolik u sebe nemm. + + + Jet nechci odejt. + + + Je to odsud kus cesty, take to bude za 3000. Jakmile se emise uklidn, meme vyrazit. + + + S tvejma mapama jen za 1000. Akort musme pokat, a se emise zklidn. + + + Me m zavst do Pripjati? + + + Ne. Kadej m svou specialitu. Vid tmhle Garika? Myslm, e ten by ti mohl pomoct. + + + Osobn ne. Ale za 6000 t mu vzt k Janovsk stanici a domluvit se s Garikem. On t odtamtud zavede do Pripjati. Co ty na to? + + + Fajn, pjdeme. + + + Tolik u sebe nemm. + + + Jet nechci odejt. + + + Osobn ne. Ale jen za 4000 t mu vzt k Janovsk stanici a domluvit se s Garikem. On t odtamtud zavede do Pripjati. Co ty na to? + + + Fajn, pjdeme. + + + Tolik u sebe nemm. + + + Jet nechci odejt. + + + Ne. Kadej m svou specialitu. Vid tmhle Garika? Myslm, e ten by ti mohl pomoct. A teda emise skon. + + + Osobn ne. Ale za 6000 t mu vzt k Janovsk stanici a domluvit se s Garikem. On t odtamtud zavede do Pripjati. Teda a emise skon pochopiteln + + + Osobn ne. Ale jen za 4000 t mu vzt k Janovsk stanici a domluvit se s Garikem. On t odtamtud zavede do Pripjati. Teda a emise skon pochopiteln. + + + Me m zavst do Pripjati? + + + Do Pripjati? Ne. O mou obvyklou trasu je velkej zjem, take nemusm hledat dal. Ale mm dobrho kmoe, kterej dv pracoval v Jupiteru. kal, e jsou tam podzemn tunely, kter vedou do Pripjati. Neekl kde pesn, jen e je teba zat hledat v administrativn sti. + + + Ne. Pokud se tam chce dostat, zkus najt ty tunely pod tovrnou Jupiter. + + + Za kolik m zavede do Skadovska? + + + Jeliko to budeme muset vzt oklikou, bude to za 3000. + + + Fajn, pjdeme. + + + Nemm u sebe te tolik. + + + Jet nechci odejt. + + + Dky t nov trase je to jen za 1000. + + + Fajn, pjdeme. + + + Nemm u sebe te tolik. + + + Jet nechci odejt. + + + Jeliko to budeme muset vzt oklikou, bude to za 3000. Jakmile se emise uklidn, meme vyrazit. + + + Dky t nov trase je to jen za 1000. Akort musme pokat, a se emise zklidn. + + + Kam m me zavst? + + + K Janovsk stanici, kousek od tovrny Jupiter. A odtamtud zptky do Skadovsku. Radi znm jednu trasu fakt dobe, ne abych se chlubil, e jich znm hodn. + + + Pekazil jsem banditm pedvku zbran. + + + Dky za pomoc. Vdycky si vzpomenu na devadest lta, vidm ty mizery s raketometama a pln to se mnou zatese. Na, vem si tohle. Prachy se hod vdycky. + + + Hledm Teteva. Mli jsme se tady setkat. + + + Tetev ti tady nechal zprvu. kal, e vyraz k jebm v doku. A e se dozvdl nco novho o tch ztracenejch stalkerech. + + + Tetev je mrtvej. Strak ho zabil, stejn jako ostatn stalkery... Strak je taky mrtvej. + + + Strak? Sakra. Mli jsme tu svini pmo pod nosem... mohl to bejt kdokoli z ns... Chci ct, kdy zrovna Tetev... Dky, kmo. Zachrnil jsi celej tbor. Na. + + + Strak?!... Je mi lto, kmo, ale tohle neberu. Kdybys ml njakej dkaz, tak mon... chudk Tetev. + + + Tady je Strakaovo PDA. Obsahuje dkazy potvrzujc, e v tom byl zapleten. + + + Sakra. Mli jsme tu svini pmo pod nosem... mohl to bejt kdokoli z ns... Chci ct, kdy zrovna Tetev... Dky, kmo. Zachrnil jsi celej tbor. Na. + + + Pomu ti postarat se o bandity. + + + Super. Jdi k stanici lovc - tam jsou nai chlapi. eknou ti, co potebuje vdt. + + + Co v o iperovi? Nemohl by keftovat s ukradenma zbranma? + + + Moc ho neznm. Ale pochybuju, e by v tom jel. Pokud jede v horkm zbo, nebere na n objednvky... + + + Vdl jsem, e m dv nebo pozdjc nkdo odhal. Byla to jen otzka asu... + + + Strak?!... Nechce mi vysvtlit, co se dje? + + + U se nehodlm schovvat. Nem to smysl. U v, e Teteva jsem zabil j... stejn tak Danilu a dal chybjc stalkery. + + + Fajn, chpu. Dost kec. + + + Nic nechpe. M nikdy nikdo nedostane... + + + Pro jsi to udlal? + + + Zvislost na hemoglobinu... nepl bych to ani nejhormu nepteli... ned se toho zbavit. Nkdy m pocit, e vydr celej msc bez kapky krve, to se mi obas povedlo, ale pak... uvnit tebe to prost vybuchne a zane jak lenej shnt krev. + + + Jak se ti to podailo uchovat v tajnosti? + + + Kdy jsem makal na klinice, dalo se to snadno zamaskovat. Vdycky byla trocha krve od drc navc. Ale v Zn... v Zn to bylo jin... myslel jsem si, e tohle tvrd prosted ty moje chut potla. Ale spletl jsem se. Zail jsem tu nejsilnj explozi a prost jsem nedokzal myslet na nic jinho. Rozhodl jsem se to maskovat, jakoby to byly toky upra. Vtinou jsem si vybral u zrann cle. + + + A co Danila a Tetev? + + + Danila za mnou piel pro pomoc po tom toku upr. Byl zrannej. Kdy se s Tetevem rozhodli vyrazit na lov upr spolen, uvdomil jsem si, e u se dlouho neudrm. Snail jsem se zachovat sv tajemstv, ale moje odhodln dlouho nevydrelo... pak se objevil Tetev. Pochopil, o co jde, a zkusil m zabt. A tak jsme te tady. Je mi jich vech lto, ale moje ltost je zptky nevrt. + + + Fajn, chpu. Dost kec. + + + Nic nechpe. M nikdy nikdo nedostane... + + + Poslouchm. + + + Hej, potebuje pomoc? + + + Nazdar. + + + Potebuju zdravotnka. + + + Uka mi to... + + + No, to by bylo. Me jt. + + + Nazdar! Taky hled artefakty? + + + Hej! Jde na artefakty, co? No, mlo by jich bt dost pro vechny. + + + Oh, hej! Taky se sna najt njakej artefakt? + + + Nazdar. Nese ten artefakt k Fousovi? + + + Mon jo, mon ne. Co je ti potom? + + + Potebuju ho. + + + J taky... ale mon bych ho vymnil za novou bouchaku. Njakou sakra dobrou. + + + Mm dobrou zbra. Udlme keft... + + + Dobe. + + + Ne, tohle nen ono. + + + Tak sakra thni odkud jsi piel. + + + Dobe. + + + No, vlastn dn. + + + Co v o iperovi? + + + Ale nic moc... nekeftujem spolu. Zatmco on prohledv Znu a sna se sehnat njakou nabuenou krochnu, j mezitm prodm stovku normlnch bouchaek. Taky je pkn namylenej, odmt keftovat s mstnma mizerama. Take je to mizernej obchodnk, co je pro mne vlastn dobr. + + + Fous mi ekl, e jste se dohodli jinak. + + + Hovno jinak! To fousat prase si zan ze svho chlvu njak vyskakovat! Nkdo by mu ml pipomenout, kdo je tady f... Hele, v Zatonu se poflakuje jeden dleitej tpek, k si Sultan. Navtiv ho - ekne ti, co je poteba udlat. + + + Pjdu si promluvit se Sultnem. + + + dn takov. Hned te mi naval mj podl! + + + Uhh... dobe. Tady m prachy... ale pamatuj, Fous z tebe dl blba. + + + Potebuju informace. + + + Co potebuje vdt? + + + Potebuju jedovatej plyn. Prej bych se ml zeptat tebe. + + + Sprvn. eknu ti to za dva tcy. + + + Na. + + + Hele. Kdysi tudma projdla vojensk kolona s plynem, kter to nezvldla. Nikdo nev, co se stalo, ale ndre s plynem by tam furt mohly bejt. Je ti to jasn? Jo, taky by tam mohly bejt njak dokumenty. Pokud je najde, pines mi je a jet na tom mon vydl. + + + To je na m moc drah. + + + Jak chce. + + + Kde bych nael stalkera, co si k Strak? + + + Mu ti dt radu... za litr. + + + Na. + + + Tady ho nenajde, ale jeden malej ptek povdal, e by mohl bejt nkde u Jupiteru, mon v Janovsk stanici. Pamatuj, e kdy nkdo jednou nkde udl bordel, tak si pak asto zmn jmno, kdy jde jinam. Nejsp se i njak zamaskoval, urit ek, e ho budou lidi mezi stalkerama hledat. + + + Hledm Pahejla. Nev, kde bych ho nael? + + + Za tiscovku ti to eknu. + + + Tady m. + + + Pahejl je chamtivej idiot, kterej se zapletl s nebezpenejma lidma. Splil za sebou vechny mosty, ml bys ho hledat nkde kolem Jupiteru. Nem kam jinam jt. Nejse jedinej, kdo ho hled. + + + V nco o havarovanch vrtulncch? + + + Hrm... Vichni tady v, kde padaj. Jeden skonil na jin nhorn ploin, druhej v bain, tet sebou prsknul pmo na nosnky stanice. Na kter msto se pt? + + + Ploina. + + + Stanice. + + + Baina. + + + To je o vrtulncch vechno, co m zajmalo. + + + A te zapla, dlu mi dv stovky. + + + Tady m. + + + Take ten vrtulnk sebou prsknul hned vedle hnzda snork. Co vm, tak se odtamtud vojclov dostali, ne vichni, ale vtina. Postleli mutanty a seplhali dol. Mimochodem, pokud tam zam, mu ti prodat fajnovou brokovnici a njak broky, to ti na ty bestie pome. Akort nikdo krom Noa, toho magora, nev, jak se na tu ploinu dostat. + + + To je na m moc drah. + + + Jak chce. + + + eknu ti to za 200. + + + Tady m. + + + eknu ti to za 200. + + + Tady m. + + + Te zrovna nic. + + + M pro m prci? + + + No je tady jeden malej keft pro vdtory. Pak potebujem informace o oldckm tboe. A do tetice pekupnk furt potebuje ochranku. Dje se tady spousta vc, take si vyber. + + + ekni mi o t fuce pro vdtory. + + + Mus najt ti detektory Veles a pinst je vdtorm do bunkru u Jupitera. A tam bude, najdi si Novikova, kal, e si s nima chce pohrt... kdy z tch detektor bude zisk, rozdlme se pl na pl. Je to jasn? Tak padej, tohle bude brnkaka. + + + Dohodnuto. + + + Mon nkdy jindy. + + + ekni mi o tom oldckm tboe. + + + U istiky se objevili njac oldci a m by fakt zajmalo, co tam peou... proplaz se jim do tbora a vyhrabej jakkoli informace, nco o jejich plnech. PDA, paprov dokumenty, dones mi, co najde. Jasn? Tak b. Kdy bude dvat bacha, bude to hraka jak pro malho pionra. + + + Souhlasm. + + + Te ne. + + + ekni mi o ochrance pro pekupnka. + + + Pekupnk potebuje ochranku pi jednom keft. Nebude muset skoro nic dlat, prost tam jen stt, aby to vypadalo dobe. Jasn? Pekupnk na tebe pok u loveck stanice. ekne ti detaily. + + + Dobe. + + + Pokej. + + + Nkdy jindy. + + + No je tady jeden malej keft pro vdtory, pak jet potebuju informace o oldckm tboe. Vyber si... + + + No je tady jeden malej keft pro vdtory a jeden pekupnk potebuje ochranku. Vyber si, co chce. + + + Potebuju njak informace o oldckm tboe, to je jeden keft, druhej je ochranka pro jednoho pekupnka. Je to na tob, co si vybere. + + + Byla by tu mal fuka pro vdtory. Pohodika, jen jim nco seene a pinese. + + + Pekupnk potebuje ochranku pi jednom keft. Siln na pohodu, nic to nebude. + + + Dal kefty u nemm. + + + Myslm, e by t to mohlo zajmat. + + + Co m? + + + Noeovo PDA. + + + Toho magora z lod? Dm ti za nj litr. + + + Dohodnuto. + + + Dky, ale ne. Jet si ho nechm. + + + No aby ti neproplilo dru v kapse... + + + PDA oldka jmnem Hk. Nael jsem ho v istice. + + + Dm ti 1000. + + + Dohodnuto. + + + Zajmav... dobr prce. + + + PDA oldka jmnem Hrb. Nael jsem ho v istice. + + + Dm ti 1000. + + + Dohodnuto. + + + PDA s informacemi o zsobrnch Monolitu. + + + Dm ti 5000. + + + Dohodnuto. + + + PDA chlapa napojenho na klienta oldk. + + + Dm ti 4000. + + + Dohodnuto. + + + PDA jednoho ze zakladatel Povinnosti, generla Taenka. + + + Za to ti zaplatm dobe - 2500. + + + Dohodnuto. + + + oldkovo PDA. + + + Dm ti 1000. + + + Dohodnuto. + + + Morganovo PDA. + + + Informace o pekupnkovi Povinnosti, kter prodv zbran, jakoby mla nastat tet svtov. Mohlo by to bt uiten. Dm ti 4000. + + + Dohodnuto. + + + Vzkaz ze skre Stelcovy skupiny. Adresovan Duchovi. + + + Dm ti 500. + + + Dohodnuto. + + + Vzkaz ze skre Stelcovy skupiny. Adresovan Stelci. + + + Dm ti 500. + + + Dohodnuto. + + + Vzkaz ze skre Stelcovy skupiny. Adresovan Teskovi. + + + Dm ti 500. + + + Dohodnuto. + + + Dokumenty z tovrny Jupiter, sloka s evakuanmi pkazy. + + + Dm ti 750. + + + Dohodnuto. + + + Dokumenty z tovrny Jupiter, zznam v zpisnku. + + + Dm ti 750. + + + Dohodnuto. + + + Dokumenty z tovrny Jupiter, rozpis dodvek. + + + Dm ti 750. + + + Dohodnuto. + + + Dokumenty z tovrny Jupiter, dopis s pkazem transportovat pedmt 62 jen podjezdem. + + + Dm ti 750. + + + Dohodnuto. + + + U ne. Kdy je v tom Sultn, radi se do toho nebudu zapltat. + + + Tak uka... jo, to je dobr. Prod mi to? + + + Jasn, mn to k niemu nen. + + + Notebook z oldckho tbora u istiky. + + + Nabzm ti 2000. + + + Dohodnuto. + + + Heh... no, vezmi to Fousovi nebo vdtorm. J o podezel kousky zjem nemm... nerad bych se jednou v noci probudil s nemoc z ozen. + + + A tam to taky m zstat. Nerad zbyten riskuju. Kdo v, mon kolem sebe ten krm v noci udl anomlii... Radi to odnes vdtorm, a si to prostudujou, nebo tak nco. + + + A j mm ve spi atomovou hlavici! Ale vdtory to mon pobav - ty takov blbosti erou. + + + Pahejlovo PDA. + + + Uka. Hm... nic zajmavho. Skr u jsi bez tak vyistil, take ti dm akort dv kila. + + + Souhlasm. + + + PDA jednoho ze Sultnovch chlap. + + + Zajmav... mohlo by se hodit. Dm ti 1000. + + + Souhlasm. + + + Pamov modul z bezpilotnho letadla. + + + Hodn zajmavej kousek... ale na tom nezbohatne. Kdo v, jestli jsem prvn, kdo to vid? Dm ti ptistovku. + + + Dobe. + + + Te zrovna nic. + + + Ohledn tch detektor... + + + Jo? + + + Kde je najdu? + + + Nemm tuen. Prost je najdi. + + + Mm ty detektory. + + + Tak pro tady jet stoj? Vezmi je Novikovovi do bunkru vdtor u Jupiteru. + + + Odnesl jsem detektory Novikovovi. + + + Super. Te pokme, a si s nima pohraje. Novikov mi slbil, e je sem pole po njakm dvryhodnm chlapovi, jakmile s nima bude hotovej. + + + Mme problm. Ten n keft te vis v luftu. Novikov na tch detektorech odvedl sakra dobrou prci - zlepil dosah, upravil citlivost a pr dalch vc... s takovm detektorem peveze kadho lovce artefakt, kterej takovej nem. Dohodnul jsem se s Fousem, e budou stalkei, kter najm, te pouvat tyhle nov detektory... + + + A? + + + Dohodli jsme se, e se o koist podlme pl na pl, ale stalkei odmtaj navalit tu plku. Zajdi za Fousem a pesvd ho, e dohody se maj dret. No tak, chce snad svj podl, ne? + + + Potebuju novej detektor. + + + Ha. A j potebuju podnou bouchaku. Jestli m njakou dobrou drahou krochnu, vymnme. + + + Dohodnuto. + + + Ne, dky. + + + Potebuju tvj novej detektor. + + + Sna se mi vyhroovat? J ho toti taky potebuju. + + + Ty to nechpe, co? Tvj je posledn. Neml jsem moc prce zbavit se ostatnch majitel... + + + Coe? Tys je oddlal? Tak si ho vezmi a dej mi pokoj. + + + Co kdybys el do hajzlu? + + + Budu o tom uvaovat. A te t slun dm, naval ten detektor. + + + A j t slun dm, jdi do hajzlu a nevracej se. + + + Stalkere, chce dostat zaplaceno? + + + O co jde? + + + V, schoval jsem njakou koist ve star ke, v Zporoci. Ale pak pilo zemtesen a kra spadla do podzem. Byl jsem se tam kouknout a vypad to, e by se do toho auta dalo dostat... Akort jsou tam mutanti, vak v, snorkov. V mi nebo ne, j se nebojm ani kontrolor, ale ti zatracen snorkov... ti mi nahnj hus ki, jsou stran nechutn. Pokud se ti poda dostat ke kontejneru s bezpenostnm zmkem, podlme se o koist, spravedliv. + + + Dohodnuto. + + + Dkuju, stalkere. + + + Je tohle tvj kontejner? + + + Jo, to je on! Sakra ty se dobrej! + + + Mon nkdy jindy. + + + koda. + + + Ne, te nemm zrovna moc asu. + + + Fajn, jak chce. + + + Tak co? Nco novho? + + + Co chce? Nevid, e mm prci? + + + Hej, to je moje bouchaka! Kdes ji sebral, ty zlodji?! Nedvno mi ji njak svin lohnula. + + + O em to mluv? Jsem ji nedvno koupil. + + + Nevm, jak se ti dostala do pracek, ale tuhle mi nkdo ukradnul. Take hele, nechce m nasrat, fakt ne, take naval bouchaku a zstanem kamardi. + + + Fajn, tady m. O problmy nestojm. + + + Naval. + + + To je moje bouchaka. + + + Jo takhle, jo?! Varuju t, mm kontakty! Vichni tady m znaj! Mysl si, e vydr v Zn s mizernou povst, stalkere? Fakt si to mysl?! Neekej tady od nikoho pomoc, vichni t polou ke vem ertm! + + + Thni! + + + Se si jistej, e je to tvoje zbra? + + + Samozejm, e jsem si jistej. Nen to zrovna bnej kousek ze Zny, ne? A tahle je urit moje. + + + Spletl ses. Zklidni se a nikomu se nic nestane. + + + Coe? Tak j jsem se spletl?! To si jet sakra rozmysli, debile! Pokud si tady nco zkus, vichni budou na m stran. Naval bouchaku a vechno bude v pohod. Dokonce budu tak hodnej a nikomu o tom neeknu. + + + Coe?! Napadlo t, e ti s tou mizernou bouchakou mu prv te navrtat do palice pr dr? + + + Hej, zklidni, vole. Trochu se nm to vymklo z rukou, ale j u jsem v pohod. V klidu. Asi jsem se spletl. + + + Ohledn toho kontejneru... + + + Naels ho? + + + Jet na tom pracuju. + + + Rozhodl jsem se, e u na to kalu. + + + koda. + + + Fajn, uka... + + + Jasn. Chviliku... + + + Rozhodl jsem se, e si ho nechm. + + + Ty malej... nemysli si, e ti tohle zapomenu! + + + Tady je ten kontejner. + + + Fajn, tak se podlme, jo? + + + Jen do toho. + + + Tak se podvme, co je tady... moje star, ale smrtonosn Fora. Kdysi dvno ji upravil mj vlastn strejda. Je to skoro jako rodinn ddictv, to jo... tohle si nechm. + + + Ne, dej ji mn! + + + No, dobe. + + + Copak je tady dl. + + + Ne, u m dost vc. + + + Uka, co je dal. + + + Fajn, vem si to. Co je tam jet? + + + Fajn... vborn lkrnika. Dost dobr, kdy t pocuch medvd nebo dokonce kontrolor. Ta bude moje. + + + Hej, mn by se lkrnika hodila. + + + Hmm... okay. + + + Uka, co je tam dl. + + + Ne, u m dost. + + + Uka, co je tam dl. + + + To si nech. Co je tam jet? + + + Okay... Hele... pochybuju, es takovou bouchaku ml nkdy v ruce. Vylepen AKM-74/2U. Za tuhle krsku jsem dal jednomu tpkovi z Povinnosti tunu lkrniek. Bylo to v dob, kdy Svoboda dala Povinnosti tak na drku, e jim doly lky. Od t doby mi tohle bejby tikrt zachrnilo ivot... tu si rozhodn nechm. + + + Mon bych si ji mohl nechat j, co ty na to? + + + Hmm... lme mi to srdce. Ale dohoda je dohoda. Vem si to. + + + Uka, co je tam dl. + + + Ne, u m dost. + + + Uka, co je tam dl. + + + Fajn, nech si ji. Co je tam dalho? + + + Oh-h-h... Krsnej a cennej kousek. Tenhle artefakt m cenu hromady zlata! Sm jsem ho vythl z anomlie. Posral jsem si pitom gat. Je to moje trofej, zaslouil jsem si ji vlastn krv a slzami. + + + Myslm, e ho potebuju vc ne ty. + + + Ty m ni... na, vem si ho, m tdrosti urit litovat nebude. + + + Uka, co je tam dl. + + + U m dost vc. + + + Uka, co je tam dl. + + + Nech si ho. Co je tam dl. + + + A naposled, ale zdaleka ne nejhor... vynikajc helma, run dlan. Ped asem se u Kordnu objevil novej stalker, fakt ikula. Ne zakalil, udlal spoustu ikovnejch vc. Tahle helma je jedna z nich. Dal takovou nenajde! Tu si nechm. + + + Hele, j jsem riskoval ivot v boji proti hord snork... tu helmu si zasloum. + + + No... tak jo. Uij si to. + + + Uka, co je tam dl. + + + U m dost vc. Snad si taky mu nco nechat, ne?! + + + Uka, co je tam dl. + + + Fajn, nech si to. + + + To je vechno, vc koisti tam nebylo. + + + No tak jo, mj se. + + + A je to. Ale nenechm t odejt s przdnejma rukama... Na, vem si moji pistoli! + + + Hodn tst? + + + Co dl? + + + Sloum a chrnm. Dv jsem bval policejn detektiv a te jsem nco jako mstn erif. Piel jsem sem s Fousem, kterej se rozhodl usadit tady. Pro jt dl, kdy nikdo stejn nezn cestu do Pripjati? I tady je dost artefakt. A tak jsme zstali tady. + + + Koho bych mohl najmout na ochranu vdc? + + + Je tady pr dobrejch chlap. Teba Spartakova grupa. Fakt profci, maj na to, spousta z nich byla dv u policie. Pokud maj as, myslm e lep ochranku jen tak nkde neseene. + + + Dv bych ti mohl pr jmen poradit, ale te u ne. dnej z mstnch stalker se na to nenech upsat. + + + Koho bych mohl najmout na men pro vdtory? + + + Jednu partu stalker, kterou vede Gonta. Zeptej se ho, mon do toho pjde... urit to pro nj bude vtan zmna od stlen mutant. + + + Kdyby tady byl Gonta se svou partou, poslal bych t za nm. Ale jeliko tady nen... nikdo jinej vhodnej m nenapad. + + + Koupil jsi zbran od ipery? Nev, jestli jede v kradenm zbo? + + + Mysl, e je dost odvnej, aby si troufnul dlat nco takovho mn pod nosem? Houby. Ani nhodou. Jsem si celkem jistej, e ipera pekupnk nen. + + + Hledm Pahejla. Nev, kde bych ho nael? + + + Pahejla? Jasn, znm ho. Podnej pitomec. Nkdo ho vidl nedvno u jeb v docch. Nejsp jeho nov schovvaka. Zkus se tam podvat. + + + Nazdar, stalkere. Nechce si vydlat pr drobnejch a pi tom i pomoct naemu tboru? + + + Nazdar, stalkere. Se pod tady? Pokud nezane nco dlat, tak ns ti upi brzo seerou. + + + Pokecme pak. Musm se na nco podvat. + + + Jakou prci mi nabz? + + + Jde o tohle: zmizelo pr stalker. Nikdo o nich nic nev, ale nedvno jsme nali jedno tlo. dn znmky nsil, ale byl vystej do sucha, do posledn kapky krve. Strak nael tlo, me ti ct vc... podle m to mus bt upi! Bavil jsem se o tom s lovcem Danilou a ten pak vyrazil hledat jejich hnzdo. Ale od t doby po nm nen ani stopa. + + + Co mm udlat? + + + Mus najt jejich hnzdo a s trochou tst i Danilu. Nen to snadn prce, ale vyplat se ti to. Co ty na to? + + + Souhlasm. + + + OK, oznail jsem ti dv msta, kam by ses ml podvat. Nahrl jsem ti souadnice. Musm se podvat na pr vc, pak se podvm na to druh. Dm ti vdt, co najdu. + + + Dohodnuto. + + + Myslm, e se obejdu. + + + Pokud si to rozmysl, vra se. + + + Nemm zjem. + + + Furt to sam... dokud je tady nkde uprsk hnzdo, vichni riskujeme kejhky. A lovec Danila se furt neobjevil. Nechce nm s tm pomoct? + + + Tetev mi ekl, e jsi prohledval tlo jednoho ze ztracench stalker. Mysl, e ho mohl zabt upr? + + + Jo, to jo... stejn jako ostatn mrtvoly... to nedoke dn jin potvora, vyst chlapovi z tla vechny krev a do posledn kapky. Vechno ukazuje na upra... co jinho si o tom myslet? + + + ekni mi nco o sob. + + + Jsem lka. Vystudovan neurochirurg. Co jet chce vdt? Doku otevt hypothalamus s naprostou pesnost, ale o nco takovho nem v Zn nikdo zjem. Zatm. Tady funguju jako obyejn doktor, jeden z mnoha, ale znm svou prci dobe. + + + Poslouchm. + + + Dokzal bys deifrovat ernou sknku? + + + No... na to nejsem zrovna specialista. Vechny ty mapy a algoritmy... to nen nic pro m. Dones mi nco, co je zaloen na obyejn fyzice a hned je mi jasn, co to je... poourm se tady, tmhle a hned to jede jako z praku. + + + Mysl, e by mohl ipera jet v kradenm zbo? + + + Hej, pokej, ipera a kraden krmy? Tomu nevm. Kdy jsem si stavl dlnu, pomhal mi zrovna ipera. A ani za to nic nechtl... a ti kdo chce, k, co chce, ipera je fajn chlap. + + + Nem pro m njakou prci? + + + Ale jo, jasn. Potebuju pr nstroj, ale nemm as je shnt. Vybaven u je takov, seere ti vekerej as. Pokud mi donese pr uitenejch hraek, uku ti, jak se vci vylepujou. A taky si vydl pr drobnejch. + + + Fajn, mrknu na to. + + + Ne. Mon pozdji. + + + Jo, jasn. Potebuju nstroje, pamatuje? Kdy mi pome, pomu j tob a pihodm pr babek navc. + + + Doke odblokovat pamovej modul? + + + Nee, tak tady ti nepomu. Tyhle modern elektronick a potaov krmy... to nen nic pro m. Najdi si nkoho mladho, ti tyhle nesmysly nasvaj u s mateskm mlkem. + + + Doke otevt ocelovej kontejner? + + + V pohod. Kvalitn sluba, jen za 500. + + + Tady. + + + Fajn, tak uka... zvedni tohle, zatla tady... a bum! Hotovo! Zatm nikdo nevynalezl nic, co bych nedokzal otevt pidlem a kladivem. + + + Tolik nemm. + + + Tak pij, a bude mt. J nikam nepjdu, neboj se! + + + Promyslm si to. + + + Mm trochu chlastu. Chce panka? + + + Nee, j u nepiju. Kdy jsem vidl pedmt 62, kal jsem si, to je ono, u jsem v deliriu.... Chlast ti akort rozdrbe mozek. Nen to zdrav. A kdy bude po mn, kdo bude dlat nboje pro tvoji gausovku? + + + Tady m dal flaku. + + + Mm tet flaku, jestli chce jet. + + + Pinesl jsem ti nad. + + + Fajn. Jak? + + + Pro zkladn prci. + + + Super! Te u jen potebuju nad pro jemnou prci a na kalibraci. + + + Pro jemnou prci. + + + Super! Te u jen potebuju nad pro zkladn prci a na kalibraci. + + + Kalibran nstroje. + + + Super! Te u jen potebuju nad pro zkladn a jemnou prci. + + + Zatm dn. + + + Super! Te u jen potebuju nad pro kalibraci a mm vechno. + + + Super! Te u jen potebuju nad pro jemnou prci a mm vechno. + + + Super! Te u jen potebuju nad pro zkladn prci a mm vechno. + + + Super! Vborn! Jak to dl, chlape? Te mm vechno, co potebuju na podn modifikace! Jen koukej, udlm kulomet ze zapalovae! + + + Pinesl jsem ti schma a dokumentaci k pedmtu 62. + + + Tys to dokzal! Super duper! Vdl jsem, e ty svin nebudou mt as vechno zniit. Uka... Hm.... Tak o tohle tm svinm lo. Fajn! Budu si s tm muset pr hodin pohrt. Nech mi tady gausku, zkusm ji opravit. Jen chvilku pokej, za pr minut bude bejby zase zpvat! + + + Potebuju baterky do gaus puky. + + + Cena pro oblben zkaznky: 2000. + + + Tady m. + + + Promyslm si to. + + + Tolik u sebe te nemm. + + + U jsi skonil s tou gaussovkou? + + + Pohodika. Energetickej systm je vyitnej, jako bys ho omyl svcenou vodou. Jestli zane blbnout, tak se s n stav, poladme to. + + + Jet na tom makm. Miluju svou prci... + + + Mm tady neznm druh zbran. + + + Co to mele, jakej neznmej druh? Uka, podvm se... + + + Hele... vidls nkdy nco takovho? + + + Ah, to se ty... sakra jsme si uili. Ml jsem sen, ve kterm jsi mi pines nco z minulosti... dobr chlastaka, fakt jo... + + + Nen tohle zbra z tvho snu? + + + Sakra, ty vole... tak to asi nebyl sen. Tohle je Gaussova puka, oficiln teda pedmt 62. Pche... kdysi jsem dlal na kontrakt pro tovrnu Jupiter, navrhoval jsem zbran, pokud si dobe pamatuju, "zaloen na principu akcelerace projektilu pomoc elektromagnetickho pole". Vid ty cvky? Ty jsem dlal j... koda, e se ten projekt v roce 2004 zruil. Nikdy jsme nenali dost kompaktn zdroj energie. + + + Z thle zbran nkdo stlel. Co se mohlo zmnit? + + + Jak to mm sakra vdt? Abych pravdu ekl, j bych si do t baterky netroufnul ourat roubovkem. A taky je tady njak mechanick pokozen, v energetickm okruhu. Te by se mi fakt hodily plny. V testovac dln, kde jsem makal, byla veker projektov dokumentace. Mon tam plny a dokumenty ke gaussce jet jsou... A v, co je sranda? Pod mm magnetickou klovou kartu k dln... + + + D mi tu kartu? + + + Jo, jasn... asi jo. Hlavn ji neztra. Pokud mi ty dokumenty donese, mon tu bouchaku doku opravit. + + + Tady m zptky svou pstupovou kartu. + + + Dky. Pipomn mi star dobr asy. + + + Take? Noo... klidn mi dones ky rozbit bouchaky, prostlen, prorezl i olezl... stzlivej moc dobrej nejsem, ale mu to zkusit.... + + + Kde jsi byl? U jsem ml strach, vude jsem t hledal. Kde je ten stalker, ptal jsem se.... na zdrav, co k? + + + Nazdrek. Fajn, e ses stavil. Jako doma, jako doma... pinesls mi nco na opraven, nebo nco k pit? + + + Haaa! Dobr! Ruce se mi tepou, ale hlava chce vc... nalej mi jet jednu, mladku! + + + Kdo ti zakzal nalejvat? Otevi dal flaku! Pipijem si na nco. Jo. Vodka ve mn probouz mechanickho gnia, fakt nekecm. + + + koda, e tady nen Vtipo, mohli jsme si pipt spolen na Brku.... no, a odpov v pokoji. Byl to dobrej chlap, fakt tvrk. Tvrdej jako skla. + + + koda e tady nen Brka, mohli jsme si pipt spolen na Vtipon.... no, a odpov v pokoji. Byl to dobrej chlap, fakt tvrk. Tvrdej jako skla. + + + Uhh... Brka... Vtipo... Jak se to jen mohlo stt... jedna vc vede k druh.... + + + Mmm? Copak to tady mme? O ty pancovan samopaly se postarm ztra... neboj se, nic to nen. ek na mne flaka. + + + To je slo edest dva... fakt bych se rd podval na schma obvod. + + + Moudrej vbr, kamarde. Bouchaku je teba udrovat ve stoprocentnm stavu. A jestli u sebe m flaku nebo dv, rovnou ti ji mu i vylepit. Chce k brokrn pidlat padk? I to doku, hehe. + + + No koukej na to! Narvali do baterky elektrostatickej artefakt! Ha! Vdl jsem, e to bude njak anomln sraka! Princip je jasnej, te mu dlat baterky sm. + + + Potebuje nco seroubovat? + + + Vbec tomu nerozumm, jakoby to bylo hotentotsky. U jsem dlouho dn technick dokumenty neetl. + + + Jo, piel jsem do Zatonu se dvma kamardama, Brkou a Vtiponm... mlad kluci, pln adrenalinu a testosteronu. Stran chtli nahrabat spoustu artefakt, bejt nejlep, nejrychlej... A j se na n podval svejma pisleplejma oima a ekl jsem si, to jim nic dobrho nepinese. Koist je fajn, jasn, ale nem smysl kvli n skoit mutantovi pmo do oteven tlamy. + + + Co se stalo? + + + No... jednu noc jsme sedli, pochlastvali a hdali se, co bude dl. Jestli bychom mli pokraovat, nebo zstat, a pokud pokraovat, tak kam. Kadej v ruce bouchaku, ermovali jsme s nima kolem sebe i na sebe, kapku jsme se rozehli. A kdy jsme se dohdali, li jsme vichni vlastn cestou, j taky. ekl jsem jim, e jet neznaj ivot... a hlavn ty jeho nepjemnj kousky. Ty vole... kdybych je tak mohl znova vidt, chtl bych se jim omluvit za to, co jsem na n val... zas bychom to thli chvli spolu a vzpomnali na star dobr asy.... + + + Pokud na Brku narazm, vydm mu tvoji omluvu. + + + To by bylo fajn. + + + Pokud na tv kamardy narazm, vydm jim tvoji omluvu. + + + To by bylo fajn. + + + Pokud na Vtipon narazm, vydm mu tvoji omluvu. + + + To by bylo fajn. + + + Nael jsem tohle PDA, podvej se. + + + K emu by mi ten krm byl? to bylo? + + + Brka je mrtvej?!... Tomu nemu uvit!... Ty vole! Ten byl tak tvrdej, jak to jen lo... Oh, Brko... Odpovej v pokoji. Doufm, e aspo Vtipo je v pohod. + + + Brka je mrtvej?!... Tomu nemu uvit!... Ty vole! Ten byl tak tvrdej, jak to jen lo... Oh, Brko... a Vtiponi... Odpovejte v pokoji, kluci. Jak se to jen mohlo stt... + + + Jsou mrtv!?... Tomu nemu uvit!... Ty vole! Brka byl tak tvrdej, jak to jen lo... a Vtipo... Vtiponi... U se tvejm vtpkm nikdo nezasmje. Odpovejte v pokoji, kluci. Jak se to jen mohlo stt... + + + Me mi odpovdt na pr otzek? + + + Jasn. + + + Jak dlouho ti bude trvat, ne spln moji objednvku? + + + To zle na tom, jak tk to bude. Vtinou mi to trv tak den, nkdy m. + + + ekni mi nco o sob. + + + Nen moc co ct. Mm za sebou dobr asy i zl jako vtina lid. Vlezl jsem do pr anomli, unesli m banditi... do Zny jsem piel jako mladej smrad, u kdysi dvno. Ze zatku jsem dlal poslka - antirady, prrazn munice, takov vci. Pak jsem chvli del na Sidorovie... splcel jsem mu, e mi zachrnil prdel. Zatmco jsem za nj tahal z ohn hork brambory, udlal jsem si pr kontakt a nakonec jsem se pustil na vlastn pst, jakmile jsem si na to troufnul. Zatm se mi podailo uhnout ped vm, co po m ivot hodil, ale mm pocit, e u mi dochz tst. Ale na druhou stranu si u nehodlm sedt prdel do krve kvli hromdce drobnejch. + + + Dky. + + + Rd jsem pomohl. + + + Prodal jsi mi kradenou bouchaku! + + + O em to mluv? V orkch j nejedu. Dlm jen rovn kefty. Pokud mi nev, zeptej se, koho chce, na zkladn, vichni ti eknou, e jsem poctivej pekupnk, kterej nikdy s nikm nevyjebal. + + + Narazil jsem na stalkera, kterej tvrdil, e je to jeho zbra. + + + A jak se jmenoval? + + + Pahejl. + + + Co je ti po tom? + + + Zle na tom. Nkdo t toti tah za nohu, stalkere. + + + No to se jet uvid. + + + Nkdo t toti tah za nohu, stalkere. + + + Jdu si vyzvednout svou objednvku. + + + Tady m svho stepnho orlka. Byla to nakonec vt fuka, ne jsem si myslel. Njakej magor do pistol o ni ml fakt zjem, ale sbalil jsem ji vas. Jen se podvej - run udlan pistole, komponenty jsou sladn s totln pesnost. Zajmalo t nkdy, jak by vypadala odstelovask pistole? Tak pesn takhle njak. Dlu mi o dva tisce osmset vc. + + + Okay, tady m. + + + Tady m. Radost s tebou obchodovat, kmo. + + + Tolik u sebe nemm. + + + Fajn, zatm si ji u sebe nechm. Doufm, e brzo seene prachy. + + + Tohle koupit nechci. + + + Pokud si odmtne vyzvednout objednvku, pt u ti nebudu vit. Budu muset potat s rizikem v cen a budu chtt vt zlohu. + + + Stejn tohle nechci. + + + Fajn, jak chce. + + + Promyslm si to. + + + Jasn, jak chce. Zatm si tu bouchaku nechm. + + + Tady m svho ultra pesnho stepnho orlka. Dlu mi 2800 navrch. + + + Zrej na Alpine - opravdov krska. Me si bejt jistej, e je jedin svho druhu v cel Zn. Uniktn kousek, z hrozn omezen srie pro speciln jednotku. Nebylo snadn ji sehnat, dokonce jsem musel pout njak sv zmosk kontakty. Rozenej zsobnk, extra tvrzen hlave, zvr ze specilnch polymer. Piho 2800 navrch a je tvoje. + + + Tady m svou pistoli Alpine se zvtenm zsobnkem. Piho zbvajcch 2800 a bejby je tvoje. + + + Hele, todle je March. Tahle pistolka kdysi patila oldkovi, ktermu se kalo Oha. Je to kompaktn velkokalibern bouchaka s malm zptnm rzem a odlehenou spout. Oha byl stoprocentn mejd, ale ve zbranch se vyznal, to mu mus uznat. Prej ml v oblib ustelit obti vechny tyi konetiny a a pak poslat posledn kulku do palice jet ped tm, ne dopadla ob na zem. Dlu mi 2800. + + + Tady m rychlopalnou pistoli March. Dlu mi 2800. + + + Tady m - samopal Cutter. eknu ti to na rovinu, nevmej si, jak vypad. Je to fungl novej model, jet ani nen v sriov vrob. Prototyp, pmo ze zbrojovky. Snaili se udlat bouchaku nov generace: kombinace velkho kalibru, vysok kadence a pitom to mlo mt slunou pesnost. Pihod mi jet 8000 navrch. + + + Jo, tady m rychlopalnej samopal Cutter. Dlu mi jet 8000. + + + Tohle je fajn krm - Carabineer. Podn vojensk brokrna. Doke jet v pln automatickm reimu, ale pitom m dky specilnm pravm slunej zptnej rz. Piho 8000 a je tvoje. + + + Tady m automatickou brokovnici Carabineer. Dej mi 8000 a je tvoje. + + + Myslm, e tohle pesn potebuje. Eliminator, nejnovj kousek. Cel zsilka mla skonit v centrln Africe, ale kamardi mi jako laskavost pedali jeden vzorek. Automatick brokovnice s velkm zsobnkem a vynikajc kadenc. Me bejt tvoje jen za 8000. + + + Jasn. Automatick brokovnice Eliminator s velkm zsobnkem. Za 8000. + + + Jasn. Tohle je Storm, samopal s integrovanm grantometem. Tenhle prototyp je modifikovan verze konvennho samopalu pro speciln jednotky v Zn. Velk technick vylepen, navc je to vlasteneck bouchaka, protoe ji udlali Slovani... pidej mi 16000 a je tvoje. + + + Jasn, tohle je Storm, samopal s integrovanm grantometem, za 16000 navc. + + + Tady to je, GP37, ton puka nov generace. Pesn, spolehliv a se zabudovanou optikou. Pvodn patila pozorovateli OSN z party, kterou poslali na przkum Zny. Ale njak se jim nezadailo... 16000 a puka je tvoje. + + + Tady to je, GP37, ton puka nov generace. Bude t stt 16000. + + + Hned to bude. Tohle je modulrn puka FT-200M, dtko belgickch puka. Pesn univerzln, vhodn pro levky i pravky, m vlastn optiku a grantomet. Dostal jsem ji od jednoho neastnho pozorovatele OSN... Bude t stt 16000 navc. + + + Tady je modulrn puka FT-200M. Dostanu navc 16000. + + + Tohle je Tide. Jej design je zaloen na tich odstelovace, speciln upraven pro vojky v Zn na likvidaci zombk. Dv ped kadenc pednost zastavovac sle, take me snajpr sundvat zombice jednu po druh, ani by se prozradil. Ale kdy se ukzalo, e stalkei na likvidaci zombk u Bariry budou stait sami, tak se objednvka na sriovou produkci zruila. Tohle dtko me dostat za 16000. + + + Tohle je Tide, tich odstelovaka se zvenou silou. Pidej mi 16000 a me si ji hned vyzkouet. + + + Tady tohle je SVU2-A, zkrcen odstelovaka se zvenou kadenc. Koupil jsem ji od Maca, legendrnho lena Svobody. Psahal, e v Zn druh takov nen. Je to exkluzivn kousek, alespo v thle oblasti. Bude t stt dalch 16000. + + + Jo, SVU2-A, zkrcen odstelovaka se zvenou kadenc. Me bejt tvoje za 16000. + + + Jasn, jen koukni tady na Lynxe. Run udlanej jednm mstnm expertem. Ten u je mrtvej, take dal u asi neudl. Lynx vypad jako kad jin bouchaka, ale sta z n prkrt vystelit a pochop, v em je rozdl. Vynikajc kombinace pesnosti a sly. Piho mi 16000 a me ji kat milku. + + + Jo, Lynx - odstelovaka se zvenou pesnost a silou. Piho 16000 a je tvoje. + + + Hele, podailo se mi sehnat tohle - CS-3a s helmou. Ta helma sama o sob nen nic extra, ale umouje instalovat mobiln taktickej systm, do kterho pat kvalitn systm nonho vidn a aktivn infraervenej senzor. CS-3a je fakt krsnej kus zbroje. Vynikajc ochrana ped kulkama i anomliema, to v tak lehk zbroji normln nenajde. Cel t to bude stt 32000. + + + Jo. Zbroj CS-3a s taktickou helmou. 32000 dohromady. + + + Speciln pro tebe tady mm oblek SEVA. Pesn, jak sis objednal - uzavenej respiran systm, odoln vi ru, chrn ped elektinou, vnj povrch pokrytej antikorozivnma materilama. Plus nkolik zabudovanejch kontejner na artefakty jako malej bonus. Kadej stalker by takovou chtl. Piho mi 24000, jak jsme se dohodli, a je to tvoje. + + + Tady, oblek Seva. Jak jsme se dohodli, dlu mi 24000. + + + Tady to mme, bojovej exoskeleton, skoro jak z njakho filmu. Nejlep ochrana v Zn proti kulkm, patm nebo stepinm, akort na tanky si bude muset dvat bacha. Navc ti pidv podnou slu, ale tank neunese, na ty si fakt dvej bacha. 48000 a je tvoje se vm vudy, i s baterkama a servama. + + + Tady to je, bojovej exoskeleton jak z njakho filmu. 48000 a je tvj. + + + Chci si u tebe nco objednat. + + + V pohod. Co potebuje? + + + Pistoli. + + + Jasn. Bude stt 3500 a chci zlohu sedm stovek. + + + Okay, tady m. + + + Dm ti vdt, jakmile objednvka doraz. + + + Nemm u sebe penze. + + + No tak se stav, a bude mt. + + + V co, rozmyslel jsem si to. + + + Fajn. A se rozhodne si nco objednat, j budu tady. + + + Nejse moc spolehlivej zkaznk, take t bude pistole stt 4200. A chci zlohu 1400. + + + Obvm se, e nejlep pistole u jsou prodan. Jestli chce njakou normln, stav se za Hejkalem. + + + Zbra pro uzaven prostory + + + Jasn. Bude t stt 10000 a chci zlohu 2000. + + + Jednu objednvku u sis odmtnul pevzt. Take t bude stt 12000, z toho 4000 zloha. + + + Hrm... v, asi ti moc nepomu. O ty je moc velkej zjem. + + + tonou puku. + + + Take nco s velkm kalibrem a podnou kadenc, jasn... cena je 20000, z toho 4000 zloha. Co ty na to? + + + Nejse moc dobrej zkaznk, take ti natuju 24000 a 8000 chci pedem. Dohodnuto? + + + Te se mi to moc nehod... armda dl u Kordnu pote. Nkdo jim nedvno zatoil na zkladnu, take jsou pkn nasran a ned se s nima moc domluvit. + + + Odstelovaku + + + Pro tebe mu sehnat to nejlep jen za 20000, ale bude mi muset dt 4000 jako zlohu. + + + Tvoje objednvky nejsou moc spolehliv... mu ti zkusit sehnat nco za 24000, ale bude mi muset dt zlohu 8000. + + + Je mi lto, ale takov bouchaky te moc nejsou dostupn. Mj kontakt na odstelovaky je... eknme e indisponovanej. + + + Pancovan oblek. + + + Jo, vymyslm nco... vhodnho. Ale bude t stt 40000, z toho 8000 pedem. + + + Jo, vymyslm nco... vhodnho. Akort minulou objednvku sis nepevzal, take ti pirazm, bude to stt 48000 a z toho chci zlohu 16000. + + + Lep ne ten, co u jsem ti prodal, asi neseenu. Byl to uniktn kousek, nejlep dostupnej. + + + Oblek s uzavenm dchacm systmem + + + To je velk objednvka... nebude snadn to sehnat, to ani nhodou. Mu zkusit jeden sehnat, pro tebe za 30000, ale chci zlohu 6000. + + + U posledn objednvky ses na m vykalal, take nevm, nevm. No, mu ti zkusit njakej sehnat, ale bude to za 36000 a chci zlohu 12000. + + + Na posledn objednvce jsem kvli tob prodlal. Po druh to riskovat to nebudu. + + + Exoskeleton. + + + Nejsp sis to podn promlel. Mon se mi poda sehnat bojovou verzi, bude to stt 60000. J vm, drah, ale vyplat se. A nezapome, e 12000 chci jako zlohu. + + + Pi minul objednvce jsi m celkem nasral, take tohle bude mt za 72000. A z toho chci 24000 te hned. + + + Ani nhodou. Co zaveli tovrnu, me sehnat nepouvanej exoskeleton akort u njak mrtvoly... a do toho j nejdu. + + + Te zrovna nic. + + + Je mi lto, mm te krm zavenej... Doasn problmy s dodvkama. + + + Nazdar. Mn kaj ipera. Lidi za mnou chod pro uniktn bouchaky. Vzcn modely, prototypy, uniktn kousky, takovhle vci. Plus nejlep mon vybaven, modifikovan ochrann a bojov obleky. Kadej kousek osobn testuju, take za kvalitu rum. + + + Nazdar, chce si nco objednat? + + + Nazdar + + + Brzo bude mt objednvku tady. + + + Objednvka je tady. Stav se pro ni. + + + Hej! Ty se Pahejlv kmo? + + + No, znm ho. + + + ekl mi, e nm pinese njakou koist. + + + Nepamatuju si, e bych se takhle dohodnul. + + + Jo, jasn. Tak to ti asi budem muset osvit pam. + + + Sbohem. + + + Nic takovho! + + + Te dobe rozmlej. Jestli m plku mozku, tak snad pochop, e s pesilou houby nadl a je lep bejt hodnej. + + + ek jsem ne! + + + Ne. Neznm ho. + + + Ahh... sakra... jsem fakt tce zrannej... pomoz mi, kmo, potebuju lkrniku... u dlouho nevydrm... + + + Vezmi si tuhle lkrniku. + + + Uf. Dkuju, kmo. U jsem byl fakt jen kousek od toho, abych v Bojleru zdechnul. Zmutovan okli by si to uili. Na, vem si aspo mj detektor, mon se ti bude nkdy hodit. A fakt dk, es m zachrnil. J si te pjdu odpoinout na zkladnu. + + + Hodn tst. + + + Uf. Dkuju, kmo. U jsem byl fakt jen kousek od toho, abych zdechnul. Zmutovan okli by si to uili. Na, vem si tenhle artefakt, mon se ti bude nkdy hodit. A fakt dk, es m zachrnil. J si te pjdu odpoinout na zkladnu. + + + Potebuju je sm.. + + + Nemm lkrniku. + + + Jet jednou dky! Nebejt tebe, prdl bych te do hlny... + + + Stalkere! Poj rychle pomoct Petruovi! Tmhle, na okraji stre! Chytla ho anomlie! Oblek mu vbec nepomohl! A j dokonce ani dnej nemm. Sloili jsme se spolen s Petruou na jeden... pokud udlm jet krok, je po mn! Pomoz nm, prosm! + + + OK, zsta, kde jse. Zkusm to. + + + To je tvj problm. + + + Dkuju ti, es zachrnil Petruu. Sakra, e jsme si nenaetili na lep oblek! + + + Thni mi z o, hajzle. Nechal jsi Petruu chcpnout... oproti nmu jse plnej posera! + + + Na vidnou. + + + Zlikvidoval jsem hnzdo upr. + + + Dobe. Pomstil jsi nae mrtv bratry, a je jim zem lehk... Tuhle odmnu sis zaslouil. + + + Pod komplexem antn jsem nael cel hnzdo upr. + + + Fajn. To hnzdo je teba zlikvidovat. Nech m chvilku pemlet... ert v, kolik v tch tunelech upr bude. Mon bysme je mli zaplynovat. Mm pocit, e Hejkal kal nco o ndrch s plynem. Stav se za nm - j s nm te nejsem moc zadobe. Pokud by se ti podailo sehnat ndr s plynem, stailo by ji pipojit na ventilan systm komplexu a za pr minut bude klid. + + + Fajn, udlm to. + + + Promyslm si to. + + + Ndr s plynem u mm. + + + No teda, se dobrej, brcho. + + + A hele, tady je stalker, na kterho ekme. + + + Co je v plnu? + + + Pjdeme na setkn. Nebude muset skoro nic dlat, aspo doufm. Prost stj pobl a tva se vhrn. + + + Ok. + + + Heh. Rozhodn budou litovat, e si s nma zanali. S bouchakou se dobrej, stalkere. Na, vezmi si tohle. + + + Hodn tst. + + + Ty zatracenej posero. Podlals to, tak te thni. + + + Sbohem. + + + Pro ten spch? + + + Nic. + + + Poslal t Hejkal? + + + Jo. ekl, e potebuje pomoc. + + + Potebuju pomoc, to je pravda. No, ml bys to zvldnout, jak se na tebe tak koukm. + + + Fajn. O co jde? + + + Bude dlat ochranku bhem obchodu. Nic vc. + + + To zvldnu. + + + Dr se pobl a krej m. + + + Jasn. + + + Budu mluvit jen se fem. + + + Jak chce. + + + Dkuju, stalkere. Moc jsi mi pomohl. Ml jsem pocit, e se mnou ti debilov zkus njak vybhnout. Sledovali ns celou dobu! Tohle m za nmahu. + + + Hodn tst. + + + Jako lenoch se dobrej, jako ochranka nic moc. Ale slbil jsem ti zaplatit, tak tady m. + + + Hodn tst. + + + Jako lenoch se dobrej, jako ochranka nic moc. Ale slbil jsem ti zaplatit, tak tady m. + + + Hodn tst. + + + Co chce? Nic ti nedlum, sotva jsem to zvldnul.... thni! + + + Hodn tst. + + + Dk, es piel. Chceme se piplit k banditm a poslechnout si, co kecaj. Pak se uvid. + + + Aha. + + + Dkuju, stalkere. Vezmi si od ns tohle... Barman ti d hlavn odmnu. + + + Aha. + + + ekni mi o tom, jak tady ije. + + + No nen to prochzka parkem, to je jasn... co pesn t zajm? + + + Co tady dlte? + + + Hldme stalkery. Mus piznat, e tak plka z vs jsou jet mal dti. Pijdete si do Zny s hloupoukma snama, nebo si hrt na hrdiny, nebo jen proto, e venku je na vs nkdo zlej. Neuvdomujete si, co tady na vs ek - a vtinou je to smrtka. Na takovhle dvme pozor. Kdy najdem njakho na Smeku, seberem mu vci a polem ho zptky ke Kordnu. Nkter dostanou rozum a vrtj se ven. Ti, kte maj vc koul ne mozku a tak se vrtj - ty pak chrnme, ale platj nm za to dan. km ti, na nae zem si nikdo netrouf. Ani armda, ani oldci, dokonce ani mutanti. + + + Co vs pivedlo do centra Zny? + + + Nae nohy. Pili jsme sem za stalkery, jak jinak? Bez ns, kte udrujem podek, by tady byl totln chaos. Co najde, to je tvoje, jasn, ale kdo bude platit dan? Vak v, mrov a bezpenostn dan. Jakoe zatmco jeden z vs doj anomlii, jeden z ns hld, aby ho nco neseralo. Kdy se pak vrt, tak si vezmem podl... za dodrovn bezpenosti, vak chpe. + + + Jak ses stal fem? + + + No kde zat... asi se to se mnou thne u od stedn. Ml jsem dobrho kmoe, dalo by se ct nejlepho. Thli jsme to spolu, kouili, chlastali a tak. Akort on chtl furt vc a vc vzra. Pustil se do drog: nejdv trvu, pak hko a koks, kdy zaal vydlvat prachy. kal jsem mu: "Vyser se na to svinstvo, Toljo, ne bude pozd." Ale neposlouchal. Jednou si prsknul nco znutho a nedal to. Nael jsem jeho dealera a vyrovnal ty... akort m pi tom nkdo vyfotil a nastalo peklo - skonil jsem v lapku, zapletl se do bitek, dostal kudlou do bicha. Kdy jsem vylezl ven, pustil jsem se do keftovn a zaveli m zas. No a kdy jsem vylez z dry po druh, na vechno jsem se vykalal a zamil k Zn. Pr msc jsem si budoval pozici, pak m povili. A tak tomu te tady fuju a prosazuju mstn zkony. + + + Co si mysl o stalkerech? + + + Kadej je njakej. Najde blbce, kte nevydr ani tejden, jin tvrd makaj... a jin jsou fajn chlapi, se kterma ivot mlt na obou stranch Kordnu, a tak se s tm nauili vychzet. Ten prvn typ sdrme dohola, druhej zdaujem. A ten druhej... no, s tma si prost navzjem nelezem do cesty. koda, e je od sebe nedoke rozeznat na prvn pohled. + + + Ale to nic, zapome na to. + + + Jak chce. + + + A te Fous pracuje pro ns. + + + V, co se k: "Krva je nae, jdem ji podojit." Obas se za nm stav a pipome mu, e m navalit poplatek. + + + Fous m dleitou objednvku na artefakt, ktermu se k Kompas. + + + Musme ten Kompas sebrat. Fous by se pro njakou malou rybu takhle nenervoval. Mm tuen, e si tak chce zachrnit prdel... a zstat v byznysu. Dones mi ten Kompas, jakmile ho najde. + + + Nael jsem Kompas. Tady m. + + + Nechce se mi hledat ti ten Kompas. + + + Hele, debile, pochop jednu vc. Pokud ti nco eknu a ty m zklame, tak u se mi moc lbit nebude. A lidi, kter se mi nelbj, vtinou brzo smrdj nkde v pkop. Je ti to jasn? + + + Budu na to pamatovat. + + + Seenu od stalker ty detektory. + + + Fajn. J se mezitm postarm o zablokovn dalch cestiek. + + + Jeden malej ptek mi vyzvonil, e jsi dal Kompas Fousovi. Tak te m pozorn poslouchej, debile. Kdy m nkdo zklame, jsem na nj vtinou nasranej. Nerad jsem na nkoho nasranej a tak to vtinou vyem pkn rychle. Rozum mi? + + + Budu na to pamatovat. + + + Fousovi u doly vylepen detektory. + + + Vborn. Zatmco jsi byl pry, odznul jsem mu pr dalch kanl. Te je klient n, celej n. Stav se za Fousem a ekni mu, e ho pozdravuje Sultn. + + + Fous mi dlu prachy. Hejkal kal, e bys mi mohl pomoct. + + + Asi jo... vidm to takhle, doeneme Fouse k bankrotu a pevezmem mu ten jeho keft. Ty dostane zptky sv prachy a podl na keftu. Dohodnuto? + + + Dohodnuto. + + + Te mus zjistit, s m m Fous takov prce. Kdy mu odznem zsobovac kanly, pjde to snadno. + + + Promyslm si to. + + + Ale nezapome, e pemejlen kod zdrav. + + + Mysl, e by mohl ipera jet v kradench zbranch? + + + ipera? Houby, ten na to nem aludek. Hork vci m pod palcem Hejkal. Co prod, on koup a na nic se nept. + + + Hledm Pahejla. Nev, kde bych ho nael? + + + Vm. Chlapi ho vidli ped pr dny u jeb v doku. Ml bych toho blba zmknout a dostat z nj prachy, kter mi dlu, ale furt na to zapomnm, + + + Mm pro tebe prci. Chlapi jdou na setkn s pekupnkem... jde o keft, vak v. V posledn dob je v Zn njak horko, tak si km, dal stelec navc vadit nebude. Hlavn je teba, aby to lo vechno hladce. + + + OK. + + + Dobe. Chlapi na tebe pokaj u loveck stanice. Souadnice jsem ti nahrl do PDA. + + + Aha. + + + Nemm zjem. + + + Co tady sakra jet dl? Padej k loveck stanici. + + + Uh-huh. + + + Tak co, u ses rozmyslel? Se s nma, nebo jak? + + + Jsem s vma. + + + Zstanu na vlastn pst. + + + Pamatuj. Jsem Sultn. Vechno, co se tady dje, bu pmo dm, nebo budu. Pokud si chce spokojen t, bude makat pro m. Pokud ne, bude to mt sakra blb. Tak to tady funguje, brcho. + + + Co potebuje? + + + Co t sem pivd? + + + No? + + + Pozabjel jsem ty stalkery sm. + + + No ty vole, ty se s tm nesere. Prost nabhne a hotovo, ty vole. Pro jsem t jen verboval, do prdele... nic jsi nm nevydlal, jen te budem mt problmy. Zklidni se sakra, chlape, takhle to nejde.... + + + Lb se ti makat pro vdtory? + + + Nen to patn. Zatm dn problmy, vechno vypad v pohod. Vdtoi nm dali njak vybaven, take se nm celkem da. + + + Je to skvl. Jednoduch, ale dobe placen prce. Co jsme tady, zatm nikdo po vdtorech neel. Dokonce ani mutanti. + + + Dvm dohromady oddl, se kterm bych vyrazil do Pripjati. Nechce se pidat? + + + Nee... na rozdl od jinejch se mi nepostav, sotva slym slovo Pripjat. Navc tady mme prci, musme chrnit vdtory... Mon bys sebou mohl vzt toho vojcla. Bude mt anci podvat se po svejch kmoch z armdy a my tady budeme mt chvilku klidu. Je celkem v pohod, ale tohle pro nj nen vhodn msto. + + + Nee... na rozdl od jinejch se mi nepostav, sotva slym slovo Pripjat. Navc tady mme prci, musme chrnit vdtory... + + + Nechce pracovat pro vdtory? + + + O co jde? + + + Hldat jejich bunkr. + + + Heh, hldat... nebylo by to po prv. Dobe. Jakmile budem pipraven, zanem hldat bunkr. + + + Provdt men v anomlich. + + + Men, jo? Vypadm snad jako njakej laborant? To nen nic pro mne. + + + Promluvme si o tom pak. Pobh tady a moc novejch ksicht, je teba ukzat jim, kde je jejich msto, pak zanu uvaovat o prci. + + + Fajn, tak do toho. Podn jim natrhnem! + + + Dobe. + + + Radi bysme si ale mli nkam zalzt, jde na ns zatracen emise! + + + Fajn, tak do toho. Podn jim natrhnem! Zsta v pohod, bude to v klidu. + + + Pkn jsme jim dali, co? Tady m prachy, kmo. Pokud budem mt njakej dal 'keft', zavu na tebe. + + + No ty vole, ty se s tm nesere. Prost nabhne a hotovo, ty vole. Pro jsem t jen verboval, do prdele... nic jsi nm nevydlal, jen te budem mt problmy. Zklidni se sakra, chlape, takhle to nejde.... + + + Ses posral, co? Kde jsou stalkei, co?! Co je to za sraky? Tys ns prsknul, co? Nikdo jinej to bejt nemohl! Vichni m brchov byli se mnou celou dobu... a te, debile, vyraz a pjde ty stalkery obrat sm! Na co sakra um, jdi jim vyprzdnit kapsy, blbe! + + + Mli bysme jt... za Brkou. + + + Hej, nelnku. Sorry, ale te nemm chu na kecy. + + + Pomu ti. + + + Skvl. Zadme schzku a ty pak s nima vyraz. A pilezou, oupneme to na n ze vech stran. Dvej si bacha, a nejse moc blzko, mohl bys taky njakou koupit. + + + OK. + + + Nee. To se mi nelb. + + + Nazdar, stalkere. Nemm teka as. Pokecme pozdjc, jo? + + + Dk za varovn. Mon bys mohl jt s nma? Bude to hezk ance stelit ty svin do zad. + + + Pepadneme je. A to udlme, ty je zane stlet do zad. + + + Ti kretni jsou u teka mrtv. Dk za varovn, + + + Dk za pomoc. + + + Nazdar. Hele, pokud to nen nalhav, stav se pozdjc, jo? + + + Nazdar. + + + Nael jsem Strake. Byl ve stanici Janov, vystupoval pod jmnem Pazourek. Postaral jsem se o nho. + + + Postaral? koda. Moc rd bych z toho kivka vymltil dui sm... Nevad, i tak to slym rd. Tady m moje slovo plat. + + + Dky. + + + Chci opustit Znu. + + + Opravdu? Nen cesty zpt. + + + Urit. Jdeme. + + + I kdy... Zatm zstanu. + + + OK, vem si prachy. Nechci bojovat. + + + Huh? Dej mi vechno, co m, hajzle! Pak se ztra a nevracej se! + + + Odchzm. + + + Ani npad! + + + Podvm se na to... Vdy jsi pln v podku. No, pokud se tob vede patn, pak j u musm bt mrtv... + + + Posly, mm tady takovou urgentn prciku. Jeden mj znm chce dojednat njak obchod. Problm je v tom, e jeho zkaznci jsou docela otravn, take pro jistotu si chce najmout ochranku. M zjem? + + + Urit. + + + OK. Bude na tebe ekat u erifa, pak ti ekne podrobnosti. + + + Ani ne. + + + Jak chce. Pokud bys jet zmnil nzor, nabdka mon bude pod platit. + + + Jakou prci pro m m? + + + Takovou, na kter se d vydlat. Zamysli se: pro se ptm tebe? Jsi novek bez vraznjch konex, ale pokud bude rozumn, mohl bys rychle zskat respekt mstnch. Mm pokraovat? + + + Jo, pokrauj. + + + Dobr, poslouchej. Chtli bysme obrat pr Fousovch stalker. Je to tutovka. V noci pijde s naimi chlapy k evenkovi a ne ti turisti zjist, co se dje, projede se s nimi. My dostanem prachy, ty respekt... Chpe? Dobe. Vid tmhle Boxera? Ten ti ekne vc. + + + Ani ne. + + + koda. Jet o tom pouvauj... A zjist, co je pro tebe dobr, vra se. + + + Takovou, kterou ocen, pokud chce zskat respekt... Chce vdt, co mm na mysli? + + + Brkovo PDA. Jeho mrtv tlo jsem nael v jeskynch pod vyhoelm statkem. + + + Nael jsem to u kost nedaleko Dubovic. Je to Vtipoovo PDA. + + + Vtipoovo?! To nen mon! Pni, te jsi m dostal... Vtipo je po smrti... Chudk Vtipo, te u se jeho vtpkm nezasmjeme... Odpovej v pokoji... Doufm, e aspo Brka je v podku... + + + Vtipoovo?! To nen mon! Pni, te jsi m dostal... Take Vtipo je taky po smrti... Chudk Vtipo, te u se jeho vtpkm nezasmjeme... Odpovej v pokoji... A ty taky, Brko... Jak se to jen mohlo stt... + + + Brkovo a Vtipon. Jedno jsem nael u kostry pobl Dubovic, druh leelo na mrtvole v jeskynch pod vyplenm statkem. + + + Abych byl upmn, moc toho nen. Emise jsou velice nebezpen a tm vdy smrteln. Jejich pchod me poznat podle postupn zmny poas, ale brzy po svm vrcholu odeznvaj. Pi prvnch nznacch pichzejc emise okamit vyhledej dobr kryt jeskyni, nco z betonu, cihel nebo oceli... J, stejn jako pr dalch lid, poznm pichzejc emisi tak, e m zanou bolet zda. Co se vlastnost emise te, k tomu ti nic nepovm, protoe zkrtka nic nevm. + + + Potebuje zbo? Informace? Nebo snad chce informace prodat? + + + Sultn k, e m v plnu obrat stalkery. Potej se mnou. + + + Skvle. Po plnoci dothni svj zadek k evenkovi, budem tam na tebe ekat. Ale nenechvej to a na rno. + + + Aha, to jsi ty, kmo. Tak na em jste se se Sultnem dohodli? + + + Take... Nkdy mezi plnoc a svitem pij ke lunu, budem tam na tebe ekat. + + + Myslm, e radi zstanu s tebou. Pokme do plnoci a pak m me dovst k evenkovi. + + + To nebude problm, bu pobl. Klidn t tam zavedu. + + + Vlastn... Musm jet nco zadit. + + + Mimo Znu mm dleit zkaznky, kte si pravideln objednvaj urit artefakty s pevn danou dodac lhtou. Ty mi pinese, co potebuju, a j ti za to dobe zaplatm. Zapamatuj si, e tyhle obchody jsou pro m fakt dleit a taky proto se snam vyslat vce agent najednou... Celou stku ti zaplatm jen v ppad, e kol spln jako prvn. + + + Pes vyplen statek. Ehm... Kdo vlastn jsi? + + + Lid to msto nazvaj eleznm lesem. Vrtulnk to naplil pmo do stor elektrickho veden. dn z tch marik nepeil... A i kdyby nkdo peil, nedostal by se z toho ivej. Tyhle pzraky zkrtka miluj nahnn lid do elektrickch anomli... Ti zvrhlci reaguj na sebemen pohyb, to ale asi v. + + + Posly... Kdy se vrtulnk ztil, pobhalo tam pt ozbrojenejch chlpk. Dokonce se dokzali dostat z bain... Dojt tam nen nic tkho, jen se dr co nejdl od vody a dvej pozor, abys ml pevnou pdu pod nohama. Taky bude potebovat obranu proti chemiklim. Take pokud se tam chce fakt vydat, poi si u doktora njak protiltky. + + + koda, e tady m kmoi Vtipo a Brka nejsou s nmi... Mli bychom spoustu asu. Byli jsme jako brati, dvali jsme na sebe pozor... Jak se to mohlo stt? J jsem pod tady, ale ale oni jsou bhv kde. + + + ekni mi o Vtipoovi a Brkovi. + + + Nco jsem si odtamtud pinesl. + + + Tak povdej... pinesl jsi nco i m? + + + Tm se vechno vysvtluje, toho kluka znm. Bval to vdycky tak trochu grzl, ale posledn dobou u to fakt pehn. Takhle obrat stalkery... nkdo by ho ml umravnit. + + + Potebuju pr informac z tbora oldk. Nen to tak hrozn, jak se zd. + + + Dobe, pokm... ale nezapome, e to fakt pospch. Potebuju to mt do dvou dn. + + + PDA Sultnova posla + + + Nijak zvl᚝ zajmav to nen. Dm ti za to pt stovek. + + + Plat. + + + Prototypy detektor. Nechce je vykoupit? + + + Tajn dokumenty. Nael jsem je na most u jednoho sloupu. Chce se na n mrknout? + + + Divn artefakt. Nael jsem ho u nho bagru. + + + Divn artefakt. Nael jsem ho u janovskho ndra. + + + Artefakt Srdce Ozy + + + Jdeme na to. + + + Pokejte. + + + Partika stalker t chce okubat. Dvej si bacha. + + + Svin jedny... dobe, dopejeme jim velho uvtn. Co kdyby ses mezi n vetel a nalhal jim, e jsi na jejich stran? Pak bys nm je pomohl odehnat. Bohat se ti odvdme. + + + Mn je jedno, na em jste se dohodli. Davaj! + + + Dobe, tu m. + + + Neznaje? Ale to ns vbec nezajm. Naval prachy, magore! + + + Hlavn kldek... vezmte si je. + + + Svin jedny... dobe, dopejeme jim velho uvtn. Co kdybys nm je pomohl odehnat? Bohat se ti odvdme. + + + Pkn jsme je rozjebali! Ale ty ses nijak nezapojil, tak nic nedostane. Ozvu se ti, a zas seeneme njakej keft. + + + Byls nm k niemu... neekej dnou odmnu. No ale aspo, e ses stavil na kus ei. Snaha se cen. + + + Mj se. + + + Pak! Te meme klienta troiku skpnout. Doneslo se mi, e Fous svm stalkerm rozdv vkonn detektory, se kterma pak hledaj vzcn artefakty. Od tebe potebuju, aby ses k nim pidal a ty detektory jeden po druhm tpnul. Rozumme si? + + + S nm jen tak nehneme. Chtl jsem mu vltnout na zsobovac trasy, ale tomu vousatmu kretnovi se stejn povedlo dostat Kompas. M se jako prase v it... prozatm. + + + [pokraovat...] + + + [pokraovat...] + + + [pokraovat...] + + + Tetev zaval. Nejsp ho sejmul Strak... ale ten u je taky tuhej. + + diff --git a/gamedata/configs/text/cze/st_generate_fnames.xml b/gamedata/configs/text/cze/st_generate_fnames.xml new file mode 100644 index 0000000..322240b --- /dev/null +++ b/gamedata/configs/text/cze/st_generate_fnames.xml @@ -0,0 +1,492 @@ + + + + Sanek + + + urik + + + Va + + + Vajan + + + Vasek + + + Viucha + + + Vetal + + + Vovan + + + orka + + + Grika + + + Griko + + + Dimon + + + Lecha + + + Dimucha + + + eka + + + Fimka + + + Iljua + + + Kosan + + + Mitka + + + Michal + + + Micha + + + Michas + + + Koljn + + + Toljan + + + Pavlucha + + + Saok + + + Stpka + + + Stpucha + + + Timocha + + + Felka + + + Juras + + + Jaka + + + Andrjucha + + + Tocha + + + Arkaa + + + Temka + + + Borjan + + + Boa + + + Kapitn + + + Poruk + + + Vojn + + + Andrej + + + Anton + + + Oleg + + + Roman + + + Alexandr + + + Sergej + + + Anatolij + + + Juri + + + Bohdan + + + Veamin + + + Vitalij + + + Vladimir + + + Dmitrij + + + Ivan + + + Konstantin + + + Alexej + + + Sanja + + + Sanek + + + Arthur + + + Jaka + + + Jarik + + + Jara + + + Slava + + + Borja + + + Borka + + + Bohdan + + + Slavik + + + Vadim + + + Vaa + + + Vadik + + + Valik + + + Valera + + + urik + + + Vasja + + + Vaska + + + Vasko + + + Venja + + + Vitja + + + Vitka + + + Vitalik + + + Vlad + + + Vova + + + Vovka + + + Lenja + + + Seva + + + Sevka + + + Gena + + + Genka + + + George + + + Gosha + + + ora + + + Mark + + + Gleb + + + Gra + + + Alex + + + Grika + + + Griko + + + Danja + + + Kirjucha + + + Danko + + + Dennis + + + Dima + + + Dimka + + + Dmitro + + + enja + + + Leka + + + enka + + + Egor + + + Egorka + + + Fima + + + Vanja + + + Vanka + + + Igorek + + + Ilja + + + Kosa + + + Kostik + + + Tolik + + + Leva + + + Lenja + + + Ljonka + + + Max + + + Matvej + + + Ma + + + Mia + + + Mika + + + Nikita + + + Nik + + + Anton + + + Kolja + + + Oleg + + + Paa + + + Paka + + + Petro + + + Petja + + + Petka + + + Roma + + + Romka + + + Rostik + + + Toka + + + Rus + + + Savva + + + Semjon + + + Sema + + + Serega + + + Rusik + + + Stpan + + + Stpa + + + Tima + + + Timka + + + Artem + + + Fedor + + + Fedja + + + Fedka + + + Filja + + + Filka + + + Edik + + + Jurka + + + Jurik + + + Jurko + + + Jaa + + + Nadrotmistr + + + Rotn + + diff --git a/gamedata/configs/text/cze/st_generate_snames.xml b/gamedata/configs/text/cze/st_generate_snames.xml new file mode 100644 index 0000000..c5bc101 --- /dev/null +++ b/gamedata/configs/text/cze/st_generate_snames.xml @@ -0,0 +1,4836 @@ + + + + edivk + + + Berserk + + + Shnilej + + + Patty + + + pehoun + + + Bison + + + Bobr + + + Bulldog + + + Bejk + + + Vlatovka + + + Datel + + + Bestie + + + arodj + + + Tahoun + + + Kanec + + + Kruas + + + Kanr + + + Brouk + + + Nark + + + Los + + + Krysa + + + Hrozn + + + Bochnk + + + Zlomenej + + + Dlouhej John + + + Masakr + + + roub + + + Bitva + + + Buben + + + mejd + + + Vvrtka + + + Dynamit + + + Trumf + + + Lopata + + + Joint + + + Mrtvej kaer + + + K + + + Tar + + + Ponoka + + + Pidlo + + + Panadol + + + Kudla + + + Piston + + + Niklk + + + Ocas + + + Smrtka + + + Hnzdi + + + Brousek + + + Eso + + + Dlto + + + Strak + + + Zastvka + + + Kravata + + + Kaour + + + Klepka + + + Pst + + + Monokl + + + Treska + + + Hacker + + + Chn + + + Kostj + + + Rambo + + + Prvodce + + + Terminator + + + Chapai + + + ingiz + + + Bann + + + Bochnk + + + Mastnej prst + + + Papa + + + Kln + + + Frajer + + + Gangrna + + + Cuk + + + Stupe + + + Antilopa + + + Fubar + + + Pariah + + + Aspik + + + Uhl + + + Trumf + + + Joint + + + Ponoka + + + Goblin + + + Maor + + + Trva + + + Flop + + + Ravioli + + + Chili + + + Struhadlo + + + pekoun + + + Suenka + + + Ghl + + + Lakomec + + + Zlomenej + + + Skrblk + + + Mrk + + + Pekelnk + + + Kripl + + + Kop + + + Kroua + + + Prohnanej + + + iftr + + + Paruka + + + Zuivk + + + Podlzka + + + Lokl + + + Slizoun + + + ampin + + + Brejle + + + Mizera + + + Flka + + + Tvrk + + + Houba + + + Pomatenec + + + Psycho + + + Uvan + + + Rozervanej + + + Lapa + + + Slepej + + + Snopl + + + Dezk + + + Met + + + Mrtvola + + + Sekek + + + Uk + + + Vtiplek + + + Oha + + + Chromajzl + + + Tvras + + + Pecvaklej + + + Labunk + + + utrk + + + Pe + + + Pijavice + + + Umlec + + + Podfuk + + + Bank + + + Bezk + + + Baron + + + Prodava + + + Neortodoxn + + + Tramp + + + Navigtor + + + Trpajzl + + + Bourbon + + + Buroust + + + ofr + + + Zlodj + + + Oholenej + + + Gangster + + + Posel + + + Hrab + + + Tyran + + + Divoch + + + krti + + + Rdce + + + Hr + + + Podvodnk + + + Kmotr + + + Vetern + + + Trenr + + + Bling-bling + + + Maniak + + + Hrobnk + + + eznk + + + Ninja + + + Poprav + + + Punk + + + Partyzn + + + Pacifista + + + Balvan + + + Pirt + + + h + + + Princ + + + Brigand + + + Kamikaze + + + Pask + + + Tyran + + + Hitman + + + Trombn + + + Chemik + + + Abdurachmanov + + + Altynnik + + + Barsak + + + Kirjev + + + erbin + + + Kovaluk + + + Kojev + + + Kozlov + + + Kolontarev + + + Kolontar + + + Kondratnko + + + Korkin + + + Kornv + + + Baul + + + Kravenko + + + Krivda + + + Krivoacky + + + Kuzncov + + + Kuzmi + + + Kuzjakin + + + Kulick + + + Kunev + + + Kurvitz + + + Kueruk + + + Baakov + + + Kunarev + + + Chaladze + + + Lavrik + + + Lavrov + + + Livits + + + Lisiansky + + + Litvin + + + Lymarenko + + + Mazepa + + + Makarenko + + + Bamakov + + + Maltsev + + + Mamajev + + + Merzlajev + + + Milenko + + + Mironjuk + + + Mohrer + + + Kryga + + + Mostovoj + + + Muntjan + + + Muchamedov + + + Beevlij + + + Myskov + + + Navrocky + + + Nepritsky + + + Nikanorov + + + Nikein + + + Nikulin + + + Fucin + + + Nordv + + + Nosan + + + Opoljev + + + Binojev + + + Orljevi + + + Orlov + + + Petkevi + + + Petrenko + + + Petrov + + + Plochenko + + + Podjachev + + + Poljanin + + + Poplavskij + + + Popov + + + Blinov + + + Portnych + + + Prasolov + + + Prokopenko + + + Proskurin + + + Procenko + + + Prudov + + + Pustovar + + + Puek + + + Rabinovi + + + Radkevi + + + Bobrov + + + Rezun + + + Rogoza + + + Rodansk + + + Rotan + + + Rubljev + + + Rudik + + + Rusanov + + + Rychagirskij + + + Savenko + + + Savuk + + + Bogdanov + + + Sagitov + + + Sviridov + + + Seych + + + Sereda + + + Sidorenko + + + Sidorov + + + Sinij + + + Sinicyn + + + Skamejka + + + Slutsky + + + Boiko + + + Smelov + + + Smoly + + + Sorokin + + + Stacura + + + Stepin + + + Styinsky + + + Sykula + + + Tarnavskij + + + Tataruk + + + Timuk + + + Andrejuk + + + Bojenko + + + Boldeskul + + + Bondarev + + + Borisov + + + Brich + + + Brontein + + + Burjak + + + Buturin + + + Bjalo + + + Valentinov + + + Andruenko + + + Vasiljev + + + Veselov + + + Vinogradov + + + Vovnenko + + + Volanuk + + + Volodar + + + Voloin + + + Voroncov + + + Vorochajev + + + Vjuinsky + + + Anisjev + + + Galkin + + + Ganzjuk + + + Garkovenko + + + Garkua + + + Georgov + + + Glebovskij + + + Gnatjuk + + + Gonarenko + + + Gordnko + + + Gorljevoj + + + Ardaev + + + Gorochin + + + Gorjunov + + + Grebenko + + + Gricajenko + + + Gricaj + + + Gricenkov + + + Griaev + + + Grisuk + + + Gubar + + + Gunko + + + Babi + + + Gurevi + + + Denisenko + + + Dovgaljuk + + + Dombrik + + + Docenko + + + Drozdu + + + Dubenuk + + + Dudorov + + + Duka + + + Dumko + + + Balan + + + Dunajev + + + Dyklov + + + Erofjejev + + + Efremov + + + abenko + + + myjev + + + urakovskij + + + Zabjagoda + + + Zagoroduk + + + Zamosenuk + + + Baranov + + + Zarubin + + + Zacharin + + + Zvonnicky + + + Zinovjev + + + Zozo + + + Zolotar + + + Zubarev + + + Zubkov + + + Ivanov + + + Ignatnko + + + Baranovskij + + + Ienko + + + Isuk + + + Kazakov + + + Kazancev + + + Kandybabko + + + Kapuka + + + Kapusanko + + + Kac + + + Kikabidze + + + Gacula + + + Abdurachmanov + + + Altynjik + + + Barsak + + + Kirjejev + + + erbin + + + Kovaluk + + + Kojev + + + Kozlov + + + Kolontarev + + + Kolontar + + + Kondratnko + + + Korkin + + + Kornjejev + + + Baul + + + Kravenko + + + Krivda + + + Krivochacky + + + Kuzncov + + + Kuzmi + + + Kuzjakin + + + Kulchistky + + + Kuncev + + + Kurvic + + + Kueruk + + + Baakov + + + Kunarev + + + Chaladze + + + Lavrik + + + Lavrov + + + Livic + + + Lisiansky + + + Litvin + + + Lymarenko + + + Mazepa + + + Makarenko + + + Bamakov + + + Maltsev + + + Mamajev + + + Merzlajev + + + Milenko + + + Mirouk + + + Mohrer + + + Kryga + + + Mostovoj + + + Munan + + + Muchamedov + + + Beevlij + + + Myskov + + + Navrocky + + + Nepricky + + + Nikanorov + + + Nikein + + + Nikulin + + + Fucin + + + Nordv + + + Nosan + + + Opoljev + + + Binojev + + + Orljevi + + + Orlov + + + Petkevi + + + Petrenko + + + Petrov + + + Plochenko + + + Podjaev + + + Poljanin + + + Poplavskij + + + Popov + + + Blinov + + + Portnych + + + Prasolov + + + Prokopenko + + + Proskurin + + + Procenko + + + Prudov + + + Pustovar + + + Puek + + + Rabinovi + + + Radkevi + + + Bobrov + + + Rezun + + + Rogoza + + + Rodansk + + + Rotan + + + Rubljev + + + Rudik + + + Rusanov + + + Rychagirskij + + + Savenko + + + Savuk + + + Bogdanov + + + Sagitov + + + Sviridov + + + Seych + + + Sereda + + + Sidorenko + + + Sidorov + + + Sinij + + + Sinicyn + + + Skamejka + + + Sluckyj + + + Bojko + + + Smelov + + + Smoly + + + Sorokin + + + Stacura + + + Stepin + + + Styinsky + + + Sykula + + + Tarnavskij + + + Tataruk + + + Timuk + + + Andrejuk + + + Bojenko + + + Boldeskul + + + Bondarev + + + Borisov + + + Brich + + + Bronshtein + + + Burjak + + + Buturin + + + Bjalo + + + Valentinov + + + Andruenko + + + Vasiljev + + + Veselov + + + Vinogradov + + + Vovnenko + + + Volanuk + + + Volodar + + + Voloin + + + Voroncov + + + Vorochajev + + + Vjuinsky + + + Anisjev + + + Galkin + + + Ganzjuk + + + Garkovenko + + + Garkua + + + Georgov + + + Glebovskij + + + Gnatjuk + + + Gonarenko + + + Gordnko + + + Gorljevoj + + + Ardaev + + + Gorochin + + + Gorjunov + + + Grebenko + + + Gricajenko + + + Gricaj + + + Gricenkov + + + Griaev + + + Grisuk + + + Gubar + + + Gunko + + + Babi + + + Gurevi + + + Denisenko + + + Dovgaljuk + + + Dombrik + + + Docenko + + + Drozdu + + + Dubenuk + + + Dudorov + + + Duka + + + Dumko + + + Balan + + + Dunajev + + + Dyklov + + + Erofjejev + + + Efremov + + + abenko + + + myjev + + + urakovskij + + + Zabjagoda + + + Zagoroduk + + + Zamosenuk + + + Baranov + + + Zarubin + + + Zacharin + + + Zvonnicky + + + Zinovjev + + + Zozo + + + Zolotar + + + Zubarev + + + Zubkov + + + Ivanov + + + Ignatnko + + + Baranovskij + + + Ienko + + + Isuk + + + Kazakov + + + Kazancev + + + Kandybabko + + + Kapuka + + + Kapusanko + + + Kac + + + Kikabidze + + + Gacula + + + Abdurachmanov + + + Altynjik + + + Barsak + + + Kirjejev + + + erbin + + + Kovaluk + + + Kojev + + + Kozlov + + + Kolontarev + + + Kolontar + + + Kondratnko + + + Korkin + + + Kornjejev + + + Baul + + + Kravenko + + + Krivda + + + Krivochacky + + + Kuzncov + + + Kuzmi + + + Kuzjakin + + + Kulchistky + + + Kuncev + + + Kurvic + + + Kueruk + + + Baakov + + + Kunarev + + + Chaladze + + + Lavrik + + + Lavrov + + + Livic + + + Lisiansky + + + Litvin + + + Lymarenko + + + Mazepa + + + Makarenko + + + Bamakov + + + Maltsev + + + Mamajev + + + Merzlajev + + + Milenko + + + Mirouk + + + Mohrer + + + Kryga + + + Mostovoj + + + Munan + + + Muchamedov + + + Beevlij + + + Myskov + + + Navrocky + + + Nepricky + + + Nikanorov + + + Nikein + + + Nikulin + + + Fucin + + + Nordv + + + Nosan + + + Opoljev + + + Binojev + + + Orljevi + + + Orlov + + + Petkevi + + + Petrenko + + + Petrov + + + Plochenko + + + Podjaev + + + Poljanin + + + Poplavskij + + + Popov + + + Blinov + + + Portnych + + + Prasolov + + + Prokopenko + + + Proskurin + + + Procenko + + + Prudov + + + Pustovar + + + Puek + + + Rabinovi + + + Radkevi + + + Bobrov + + + Rezun + + + Rogoza + + + Rodansk + + + Rotan + + + Rubljev + + + Rudik + + + Rusanov + + + Rychagirskij + + + Savenko + + + Savuk + + + Bogdanov + + + Sagitov + + + Sviridov + + + Seych + + + Sereda + + + Sidorenko + + + Sidorov + + + Sinij + + + Sinicyn + + + Skamejka + + + Sluckyj + + + Bojko + + + Smelov + + + Smoly + + + Sorokin + + + Stacura + + + Stepin + + + Styinsky + + + Sykula + + + Tarnavskij + + + Tataruk + + + Timuk + + + Andrejuk + + + Bojenko + + + Boldeskul + + + Bondarev + + + Borisov + + + Brich + + + Bronshtein + + + Burjak + + + Buturin + + + Bjalo + + + Valentinov + + + Andruenko + + + Vasiljev + + + Veselov + + + Vinogradov + + + Vovnenko + + + Volanuk + + + Volodar + + + Voloin + + + Voroncov + + + Vorochajev + + + Vjuinsky + + + Anisjev + + + Galkin + + + Ganzjuk + + + Garkovenko + + + Garkua + + + Georgov + + + Glebovskij + + + Gnatjuk + + + Gonarenko + + + Gordnko + + + Gorljevoj + + + Ardaev + + + Gorochin + + + Gorjunov + + + Grebenko + + + Gricajenko + + + Gricaj + + + Gricenkov + + + Griaev + + + Grisuk + + + Gubar + + + Gunko + + + Babi + + + Gurevi + + + Denisenko + + + Dovgaljuk + + + Dombrik + + + Docenko + + + Drozdu + + + Dubenuk + + + Dudorov + + + Duka + + + Dumko + + + Balan + + + Dunajev + + + Dyklov + + + Erofjejev + + + Efremov + + + abenko + + + myjev + + + urakovskij + + + Zabjagoda + + + Zagoroduk + + + Zamosenuk + + + Baranov + + + Zarubin + + + Zacharin + + + Zvonnicky + + + Zinovjev + + + Zozo + + + Zolotar + + + Zubarev + + + Zubkov + + + Ivanov + + + Ignatnko + + + Baranovskij + + + Ienko + + + Isuk + + + Kazakov + + + Kazancev + + + Kandybabko + + + Kapuka + + + Kapusanko + + + Kac + + + Kikabidze + + + Gacula + + + Sinajev + + + Feigelman + + + Ledencov + + + Alferov + + + Antipin + + + Blinov + + + Bogomolov + + + Vasiljevi + + + Gekenbein + + + Djakonov + + + Erochin + + + Zaikin + + + Zacharov + + + Ivenko + + + Kabanov + + + Larin + + + Manko + + + Mironov + + + Stepanenko + + + Oganesjan + + + Chernodub + + + Shilov + + + Chirikov + + + Beljavin + + + Fadjejev + + + Steklov + + + Andrjejev + + + Spirin + + + Balicky + + + Abdurachmanov + + + Altynjik + + + Barsak + + + Kirjejev + + + erbin + + + Kovaluk + + + Kojev + + + Kozlov + + + Kolontarev + + + Kolontar + + + Kondratnko + + + Korkin + + + Kornjejev + + + Baul + + + Kravenko + + + Krivda + + + Krivochacky + + + Kuzncov + + + Kuzmi + + + Kuzjakin + + + Kulchistky + + + Kuncev + + + Kurvic + + + Kueruk + + + Baakov + + + Kunarev + + + chaladze + + + Lavrik + + + Lavrov + + + Livic + + + Lisiansky + + + Litvin + + + Lymarenko + + + Mazepa + + + Makarenko + + + Bamakov + + + Maltsev + + + Mamajev + + + Merzlajev + + + Milenko + + + Mirouk + + + Mohrer + + + Kryga + + + Mostovoj + + + Munan + + + Muchamedov + + + Beevlij + + + Myskov + + + Navrocky + + + Nepricky + + + Nikanorov + + + Nikein + + + Nikulin + + + Fucin + + + Nordv + + + Nosan + + + Opoljev + + + Binojev + + + Orljevi + + + Orlov + + + Petkevi + + + Petrenko + + + Petrov + + + Plochenko + + + Podjaev + + + Poljanin + + + Poplavskij + + + Popov + + + Blinov + + + Portnych + + + Prasolov + + + Prokopenko + + + Proskurin + + + Procenko + + + Prudov + + + Pustovar + + + Puek + + + Rabinovi + + + Radkevi + + + Bobrov + + + Rezun + + + Rogoza + + + Rodansk + + + Rotan + + + Rubljev + + + Rudik + + + Rusanov + + + Rychagirskij + + + Savenko + + + Savuk + + + Bogdanov + + + Sagitov + + + Sviridov + + + Seych + + + Sereda + + + Sidorenko + + + Sidorov + + + Sinij + + + Sinicyn + + + Skamejka + + + Sluckyj + + + Bojko + + + Smelov + + + Smoly + + + Sorokin + + + Stacura + + + Stepin + + + Styinsky + + + Sykula + + + Tarnavskij + + + Tataruk + + + Timuk + + + Andrejuk + + + Bojenko + + + Boldeskul + + + Bondarev + + + Borisov + + + Brich + + + Bronshtein + + + Burjak + + + Buturin + + + Bjalo + + + Valentinov + + + Andruenko + + + Vasiljev + + + Veselov + + + Vinogradov + + + Vovnenko + + + Volanuk + + + Volodar + + + Voloin + + + Voroncov + + + Vorochajev + + + Vjuinsky + + + Anisjev + + + Galkin + + + Ganzjuk + + + Garkovenko + + + Garkua + + + Georgov + + + Glebovskij + + + Gnatjuk + + + Gonarenko + + + Gordnko + + + Gorljevoj + + + Ardaev + + + Gorochin + + + Gorjunov + + + Grebenko + + + Gricajenko + + + Gricaj + + + Gricenkov + + + Griaev + + + Grisuk + + + Gubar + + + Gunko + + + Babi + + + Gurevi + + + Denisenko + + + Dovgaljuk + + + Dombrik + + + Docenko + + + Drozdu + + + Dubenuk + + + Dudorov + + + Duka + + + Dumko + + + Balan + + + Dunajev + + + Dyklov + + + Erofjejev + + + Efremov + + + abenko + + + myjev + + + urakovskij + + + Zabjagoda + + + Zagoroduk + + + Zamosenuk + + + Baranov + + + Zarubin + + + Zacharin + + + Zvonnicky + + + Zinovjev + + + Zozo + + + Zolotar + + + Zubarev + + + Zubkov + + + Ivanov + + + Ignatnko + + + Baranovskij + + + Ienko + + + Isuk + + + Kazakov + + + Kazancev + + + Kandybabko + + + Kapuka + + + Kapusanko + + + Kac + + + Kikabidze + + + Gacula + + + Blej + + + Zelenej + + + Nesmrtelnej + + + Rezavej + + + Romantik + + + Masakrtor + + + Svalnatec + + + Vyprav + + + Slepej + + + Odvnej + + + Snopl + + + Hda + + + Stak + + + Berserk + + + Dezk + + + Met + + + Pochmura + + + Lenoch + + + Vyschlej + + + Z prdele klika + + + Pihovatej + + + pekoun + + + Bachor + + + Mrtvola + + + Zlomenej + + + Chytrek + + + Sekek + + + Uk + + + Maznek + + + Vtiplek + + + Chromajzl + + + Tvras + + + Kost + + + Cynik + + + Tyvole + + + Lehkovha + + + Pecvaklej + + + Alarm + + + Labunk + + + utrk + + + Studentk + + + Domorodec + + + Letec + + + Agent + + + Pe + + + Pijavice + + + Podlzka + + + Uednk + + + Umlec + + + Asketa + + + Podfuk + + + Bank + + + Bard + + + Baron + + + Prodava + + + Neortodoxn + + + Bec + + + Atlet + + + Bitk + + + Tramp + + + Navigtor + + + Trpajzl + + + Bourbon + + + Buroust + + + Byrokrat + + + Vandal + + + Barbar + + + drb + + + Sek + + + Zaklna + + + Nvtvnk + + + Viking + + + ofr + + + Potap + + + Nelnk + + + Zlodj + + + Cestovatel + + + Psychiatr + + + Kok + + + Uvan + + + Gangster + + + Geolog + + + Gladitor + + + Posel + + + Host + + + Hrab + + + Porter + + + Dda + + + Uprchlk + + + Prodava + + + Oha + + + vihk + + + Zstupce + + + Tyran + + + Divoch + + + Diplomat + + + Doc + + + Doktor + + + Profesor + + + krti + + + Hlda + + + Bezk + + + Rdce + + + Ack-ack + + + Kvko + + + Hr + + + Indin + + + Irokz + + + Kapitn + + + Podvodnk + + + Klaun + + + Vvoda + + + Zrzek + + + Oholenej + + + Kozk + + + Kucha + + + arodj + + + Koman + + + Krl + + + Kmotr + + + Obchodnk + + + Kuk + + + Kurr + + + Trenr + + + Vetern + + + Legion + + + Felar + + + Lesk + + + Lord + + + Magnt + + + Bling-bling + + + Maniak + + + Maran + + + Zednk + + + Mechanik + + + Vazba + + + Hrobnk + + + Modertor + + + Mlka + + + eznk + + + oldk + + + Ladi + + + f + + + Ninja + + + Opertor + + + Puka + + + tstko + + + ach + + + Poprav + + + Polkan + + + Punk + + + Tatk + + + Partyzn + + + Pastor + + + Past + + + Starina + + + Or + + + astlivej + + + Pacifista + + + Transportr + + + P횝alka + + + Pilot + + + Rychlonoka + + + Pirt + + + Tesa + + + h + + + Pornk + + + Pantofle + + + Kolohnt + + + Subzero + + + Vyslanec + + + Pok + + + Bsnk + + + Princ + + + Prorok + + + Profesor + + + Skokan + + + Vela + + + D + + + Loajln + + + Rabn + + + Jiskra + + + Brigand + + + Rasta + + + Hlda + + + Rocker + + + Hornk + + + Samuraj + + + Minohleda + + + Posluha + + + Bugo + + + Knour + + + Sekret + + + Gigolo + + + Podfuk + + + Skyta + + + Stopa + + + Mainista + + + Kamikaze + + + Pstitel + + + Zachrnce + + + Balvan + + + Sportsman + + + Cizk + + + Bosna + + + Soudce + + + Muchomrka + + + Pask + + + etn + + + Vojcl + + + Tanenk + + + Tyran + + + Hniloba + + + Smlouva + + + Uklze + + + Ometk + + + Etnik + + + Turista + + + Hitman + + + Trombn + + + Zadk + + + Snajpr + + + Chemik + + + Rezava + + + Verbl + + + Pa + + + Mal + + + Ovcorout + + + aman + + + Drk + + + Uhlk + + + erif + + + Nelnk + + + Uenec + + + Kapusta + + + Hrb + + + pehoun + + + Elektrik + + + Kadet + + + Pohan + + + Aligtor + + + Anakonda + + + Pavin + + + Bizon + + + Bobr + + + Kudlanka + + + Pcha + + + Buldok + + + Veverka + + + Volek + + + Gricin + + + Vrabec + + + Havran + + + Ondatra + + + Plantnk + + + Mrchorout + + + Vrna + + + Hok + + + Manul + + + Husa + + + Delfn + + + Dinosaur + + + Drozd + + + Datel + + + Jeek + + + Brouk + + + Zajc + + + Bestie + + + Hrom + + + ernoknnk + + + Aurora + + + Krocan + + + Kanec + + + Krucin + + + Kanr + + + tnice + + + Kobra + + + Moskyt + + + Hebec + + + Nsilnk + + + Kocour + + + Krok + + + Kobylka + + + Nark + + + Los + + + Mamut + + + Slon + + + Bacil + + + Ovd + + + Mravenec + + + Dlouhej John + + + Steek + + + Pavouk + + + Krysa + + + Poutnk + + + Piraa + + + krti + + + Krlk + + + Hejkal + + + Sokol + + + Svi + + + Mkej + + + Sysel + + + Stevle + + + vb + + + Tarantule + + + Tarbk + + + Hrozn + + + Hejkal + + + Fretka + + + erv + + + Drk + + + Mrtvej kaer + + + Absolutn + + + Anomlie + + + Nraznk + + + Bochnk + + + Zlomenej + + + Masakr + + + Ohnivk + + + roub + + + Bitva + + + Buben + + + Hnzdi + + + Kobliha + + + Vakuum + + + mejd + + + Oblzek + + + Vtrk + + + Sek + + + Vtr + + + Vvrtka + + + Lmec + + + Hebk + + + Zrzek + + + Treska + + + Patrona + + + Glb + + + Balvan + + + Grant + + + Mlha + + + Rakev + + + Letk + + + Motor + + + Dynamit + + + Holej + + + Mastnej prst + + + Prvnk + + + Zmek + + + Zv + + + Izotop + + + Skla + + + Past + + + Kouzelnk + + + Karma + + + Cihla + + + Lepidlo + + + Zlej + + + Kl + + + Bi + + + Trumf + + + epice + + + tpa + + + Vizour + + + Koen + + + Kosa + + + Kosmonaut + + + Lopata + + + Kov + + + Joint + + + K + + + Ter + + + Spou + + + Ponoka + + + Pidlo + + + Maina + + + Cl + + + Motor + + + Pumpa + + + elezo + + + Nokturno + + + Brokrna + + + Panadol + + + Paragn + + + Koleko + + + Ptka + + + Kudla + + + Pst + + + Plastelna + + + Stelk + + + Porichtung + + + Niklk + + + Raketa + + + ada + + + Reaktor + + + Sekerk + + + Siva + + + Ocas + + + Robot + + + Jelen + + + Lopata + + + Uhl + + + Koala + + + Bota + + + Jabk + + + Smrtka + + + Chlaston + + + Re + + + Hlave + + + Bedna + + + Sekera + + + Zadek + + + ikula + + + Brousek + + + Eso + + + Uzel + + + Faktor + + + Lampa + + + Dlto + + + erven + + + esnek + + + Strak + + + ance + + + pekoun + + + Zastvka + + + Trn + + + Kloset + + + Kravata + + + Brouk + + + Drka + + + Tyka + + + Kaour + + + Vvrtka + + + Klepka + + + Lakomec + + + Mozkolap + + + Tesk + + + Pat + + + Kostra + + + Pst + + + Nerv + + + Kostlivec + + + Ocas + + + Heben + + + Monokl + + + edivk + + + Skrblk + + + Hacker + + + Chn + + + Atlet + + + Pinokio + + + Zaklna + + + Voldemort + + + Homer + + + Drak + + + Hrom + + + Gioconda + + + Mrk + + + Nudle + + + Plechovka + + + Ikaros + + + Kasanova + + + Kostj + + + Czar + + + Kolobok + + + Kutuzov + + + Lulk + + + Bonaparte + + + Myslitel + + + Nelson + + + Neptun + + + Oskar + + + Promteus + + + Pukin + + + Ptek + + + Rambo + + + Roquefort + + + Prvodce + + + Terminator + + + Blboun + + + Inkoust + + + Czar + + + apajev + + + apaj + + + Chebur + + + Cheburaka + + + ingaook + + + ingiz + + + Stierlitz + + + Bann + + + Sokol + + + Suenka + + + Bochnk + + + Papa + + + Kln + + + Frajer + + + Bulkin + + + Buldozer + + + Bufr + + + Knedlk + + + Pskot + + + avle + + + Gangrna + + + Hybrid + + + Cuk + + + Bubenk + + + Horal + + + Stupe + + + Gremlin + + + Antilopa + + + Strejda + + + Fubar + + + Ledovka + + + Pariah + + + Kagor + + + Zel + + + Karbid + + + Aspik + + + Trumf + + + Komodor + + + Krl + + + Joint + + + Ponoka + + + Pekelnk + + + Led + + + Goblin + + + Maor + + + Madera + + + pageta + + + Master + + + Mutant + + + Trva + + + Peho + + + Rybnk + + + Kripl + + + P.I. + + + Ravioli + + + ili + + + Psek + + + Blou + + + Bublina + + + Struhadlo + + + Burr + + + Rjazansky + + + Koala + + + Kripl + + + Morel + + + Suenka + + + Tabk + + + asova + + + Eso + + + Cukna + + + Ghl + + + Trombn + + + Fantm + + + Kaskadr + + + edivk + + + Kop + + + Koma + + + Kroua + + + Neohrabanej + + + Pte + + + Prohnanej + + + Duha + + + iftr + + + Bu + + + Paruka + + + edivej + + + Hndej nos + + + Zuivk + + + Lulk + + + Mrtvol + + + Nekro + + + Lokl + + + Hrob + + + Slizoun + + + ampin + + + Narcis + + + pna + + + Laxa + + + Podltor + + + Nfuka + + + Otrava + + + Ubreenec + + + Brejle + + + Mizera + + + Flka + + + Paranoia + + + Tvrk + + + Teflon + + + Lump + + + Houba + + + Pomatenec + + + Spravedlivej + + + Prosek + + + Psycho + + + D + + + Rozervanej + + + Lapa + + + Drso + + diff --git a/gamedata/configs/text/cze/st_items_artefacts.xml b/gamedata/configs/text/cze/st_items_artefacts.xml new file mode 100644 index 0000000..15390a2 --- /dev/null +++ b/gamedata/configs/text/cze/st_items_artefacts.xml @@ -0,0 +1,153 @@ + + + + Tento artefakt je sloen z nkolika dutch organickch formac a vypout chemickou ltku schopnou neutralizovat radioaktivn stice v tle, ani by zpsobily kody na zdrav. S ohledem na velkou efektivitu je tento artefakt velmi dan. + + + Bublina + + + Zarudl formace zkompresovanch a fosilizovanch rostlin, hlny a zvecch pozstatk. Doke sten neutralizovat chemick jedy. Vyzauje radiaci. + + + Kamenn krev + + + Tento artefakt vznik v anomlnch znch s vysokou termln aktivitou. Aktivn pohlcuje r a pitom zstv chladn na dotek. Vyzauje radiaci. + + + Tento artefakt je vytvoen z kamene podobnho ule, deformovanmu extrmn gravitan silou. Vsledn krystalick formace nebyla dodnes vdou objasnna. Doke poskytnout stenou ochranu ped psionickmi vlnami a je radioaktivn. + + + Kamenn kvt + + + Krystal + + + Tento artefakt obsahuje elektrostatick elementy, ale vdci prozatm nedokzali identifikovat pesn fyzick podmnky potebn pro jeho vznik. Artefakt je v Zn populrn a cenn nvtvnky i trvalmi obyvateli pro svj posilovac inek, akoli pi prodlouenm pouvn me tlo znan oslabit. Vyzauje radiaci. + + + Baterka + + + Tento artefakt byl dv povaovn za odpad bez jakchkoli uitench vlastnost. Vdci ale nedvno zjistili, e pokud je dren v kontaktu s tlem, m stimulan inky na nervov systm. Vyzauje radiaci. + + + Skopka + + + Tento artefakt zstv pro vdce velkou zhadou. Nicmn je znmo, e emise vytven pulsy uvnit silnjch st artefaktu zpsobuj rychlej sren krve a vytvej ochrann vrstvy ztvrdl krve. Tento artefakt tedy znan zvyuje rychlost hojen zrann. Vyzauje radiaci. + + + Mminy korlky + + + Tento elektrostatick artefakt doke pohlcovat elektinu a pozdji ji vypustit jako vboj. Blesk doke chrnit svho nositele ped elektrickmi oky a do ve 5000 volt. Vyzauje radiaci. + + + Blesk + + + Tento uniktn elektrostatick artefakt pod vlivem psionickch vln rezonuje. Stalkei se nauili artefakt vyladit tak, e rezonuje v opan fzi oproti zdroji emis a tak ve vsledku jejich inky neutralizuje. Vyzauje radiaci. + + + Msn svtlo + + + Nejzivj pedstavitel elektrostatickho typu artefakt doke vyrovnvat fluktuace v elektrickm poli. Vyzauje radiaci. + + + Jiski + + + Tento artefakt pipomnajc lidsk oko zvyuje rychlost lidskho metabolismu a urychluje hojen zrann. Zkuen stalkei tvrd, e oko tak pin tst. Vyzauje radiaci. + + + Oko + + + Tento artefakt vznik v oblastech s velkou termln aktivitou. Vyzauje siln infraerven zen, kter zrychluje metabolick procesy a hoj rny pmo ped oima. Jeliko je tento artefakt velmi vzcn, je tak velmi drah. Vyzauje radiaci. + + + Plamen + + + Akoli je Ohnivk termln artefakt, je mon pouvat ho bez obav z poplenin. Artefakt je cenn pro svou schopnost zachovvat kolem sebe teplotu 25 stup Celsia prakticky bez ohledu na okol. Vyzauje radiaci. + + + Ohnivk + + + Relativn vzcn artefakt vznikajc v oblastech kontaminovanch chemikliemi je cenn pro svou schopnost zhojit tm jakkoli zrann bhem nkolika minut. Z neznmho dvodu vdci mezi stalkery tvrzen, e artefakt naruuje genetick kd svho nositele. Vyzauje radiaci. + + + Koblek + + + Svtluka + + + Zlat rybka vznik nsledkem interakce mezi vtm potem gravitanch anomli a sama o sob vytv siln intern gravitan pole, dky ktermu zanik tha pedmt v jeho okol. Artefakt je velmi vhodn pro zvyovn nosnosti, proto je po nm vysok poptvka. Vyzauje radiaci. + + + Zlat rybka + + + Gravi vznik z kovovch substanc vystavench delmu psoben gravitanch anomli. Dky tomu doke vytvet antigravitan pole a mnoz stalkei ho pouvaj na snen thy svch batoh. Vyzauje radiaci. + + + Gravi + + + Tento artefakt na prvn pohled pipomn koblek. Obas se tvrd, e jde o koblek, jeho vlastnosti byly posleny vystavenm psoben silnho elektrickho pole. Dky svm uniktnm vlastnostem doke tento artefakt zvyovat svalov tonus svho nositele. Vyzauje radiaci. + + + Snhov vloka + + + Tento gravitan artefakt pitahuje a absorbuje radioaktivn stice a sniuje inek ozen na lidsk tlo. V Zn je bn a neoficiln se mimo Znu pouv k len nemoci z ozen. + + + Medza + + + Tento organick artefakt tvo deformovan mutovan zvec tk. Pokud se artefakt nachz v chemicky kontaminovan zn, koncentruje chemiklie ve vzduchu na slizkou tekutinu. Vyzauje radiaci. + + + Masov kulika + + + Tento zc artefakt doke vytvet lokln smrovan gravitan pole. Stalkei ho spolu s podobnm artefaktem gravi asto pouvaj k zven sv nosnosti. Vyzauje radiaci. + + + Non hvzda + + + Uniktn organick artefakt s uniktnmi vlastnostmi. Njak doke zvyovat schopnost tla vyrovnvat se se zrannm a pokozenm, ani by pitom zvyoval rychlost ukldn toxin v tkni. Dky svm inkm a atraktivnmu vzhledu jde o velmi cenn kousek. Vyzauje radiaci. + + + Due + + + Tento bizarn vytvarovan artefakt vznik v mstech se zvenou gravitan aktivitou. Chov se jako houba nasvajc radioaktivn stice a poskytuje tak ochranu ped vnj radiac i ped radioaktivnmi sticemi, kter u pronikly do tla. + + + Kivk + + + Kompas + + + Vzcn artefakt, naposledy nalezen ped nkolika lety. Doke identifikovat mezery mezi anomlnmi poli. V se, e umouje prochzet mezi komplexnmi systmy anomli, ani by byl jeho nositel ohroen. Jen mlokdo ale v, jak ho sprvn pouvat. + + + Srdce Ozy + + + Tento artefakt byl nalezen v centru legendrn Ozy. Jde zejm o krystalizovanou rostlinu, kter zskala liv vlastnosti Ozy. Na rozdl od Ozy je vak artefakt extrmn radioaktivn. + + + Svtluka, vyskytujc se v dosud neprozkoumanch polch, vrazn zrychluje regeneraci tkn a orgn ivch organism a normalizuje metabolick procesy. Tento artefakt me tce zrannho stalkera dostat bhem pr vtein zptky na nohy. Svtluka je vak velice vzcn a radioaktivn. + + diff --git a/gamedata/configs/text/cze/st_items_equipment.xml b/gamedata/configs/text/cze/st_items_equipment.xml new file mode 100644 index 0000000..ebf9946 --- /dev/null +++ b/gamedata/configs/text/cze/st_items_equipment.xml @@ -0,0 +1,156 @@ + + + + Protiradian lky + + + Mexaminov lky pro ochranu ped radiac jsou v Zn bn. Pi pouit lk zpsobuje staen vlsenic a kyslkovou deprivaci, co napomh v len a zabrauje dalmu nrstu radian expozice. Lk nem dn siln vedlej inky, akoli jsou hleny dk ppady nevolnosti, ke a bolest aludku. + + + Obvaz + + + Bn elastick obvaz pouvan k zastaven krvcen a k ochran zrann ped infekc. Pro bn krvcen opatrn zakryjte rnu obvazem. Pi krvcen z tepny rychle uvzejte obvaz kolem zasaen oblasti a siln uthnte. + + + Standardn vojensk dalekohled s maximlnm piblenm x7.5. V Zn je uiten, jeliko svmu majiteli umouje pozorovat okol z dlky. + + + Dalekohled + + + Chlb + + + V Zn se nikdy neobjevil dn peka, nicmn tento chlb nen ani kontaminovan, ani radioaktivn. Je erstv a celkem jedl. Alespo si prozatm nikdo nestoval. + + + Konzerva "Turistovy sndan" + + + Tyto konzervy byly pravdpodobn ukradeny stalkery z vojenskho skladit. Na konzerv nen dn identifikan ttek, take to nen jist. Pesto je stle jedl, pokud se d tedy vit datu minimln trvanlivosti vyraenmu na vku. + + + Detektor Echo + + + Tento zastaral detektor anomln aktivity aktivuje poplan signl, pokud se pi piblen se k anomlii dostanou do intern detekn komory anomln stice. Vzdlenost k anomlii naznauje frekvence zvuku vydvan zazenm. Pro pepnut do reimu hledn artefakt je teba otevt pedn kryt zazen. S ohledem na jednoduch princip pouit v detektoru je mon pouvat ho pouze k hledn nejbnjch artefakt. + + + Detektor Medvd + + + Detektor Veles + + + Vdeck skener nov generace. Dky tem modernizovanm deteknm komnatm je na specilnm displeji zazen ukazovna piblin pozice artefaktu. Pokud je pedn kryt uzaven, registruje detektor pouze radiaci a anomlie. Pro pepnut do reimu hledn artefakt je teba otevt pedn kryt. V reimu hledn doke detektor objevit vechny znm artefakty. + + + Prototyp detektoru Svarog + + + Prototyp vylepenho detektoru anomlnch frekvenc. Toto zazen je vybaveno programem schopnm identifikovat statick oblasti anomln aktivity v zvislosti na sv intern databzi, piem stle doke lokalizovat artefakty. Pozice anomlnch oblasti a artefakt se zobrazuj na speciln obrazovce. Reim hledn artefakt, aktivovan otevenm pednho krytu, byl modifikovn k detekci anomlnch formac, kter jsou znm. + + + Standardn elov baterka. Uiten pro stalkery, kte se nestihnou do tmy vrtit do bezpe, nicmn me snadno pilkat nevtanou pozornost. + + + Baterka + + + Antibiotika + + + Protijed + + + Antitoxin IP2 je komplexn lebn systm sloen z nkolika antibiotik vetn metoclopramidu, pyridoxinu, thiaminu, riboxinu a dalch liv. Lk po vstknut do krevnho obhu doke neutralizovat velk mnostv prodnch toxin, navc obsahuje absorbenty syntetickch jed. IP2 v Zn nen pli populrn, jeliko se vtina stalker spolh na plynovou masku a ochrann oblek, pesto si ale nkte stalkei dlaj zsoby tohoto liva. Lk m dlouhodob inky. + + + Herkules + + + Vinca + + + Ukrajinsk vikasolum - uml ekvivalent vitaminu K. Hlavnm clem tohoto lku je zrychlit sren krve. Mezi stalkery je po nm vysok poptvka, jeliko umouje rychlej hojen drobnch zrann, sench a trnch ran zpsobench mutanty. Lk m dlouhotrvajc inky. + + + Psionick blok + + + Tato droga blokuje siln nervov impulsy. Konzumace lku zpsobuje krtkodob potlaen vekerch emoc. Pouv se pouze v Zn jako ochrana ped inky anomlnch psionickch pol. Lk m dlouhotrvajc inky. + + + Radioochrana + + + Stalkersk energy drink + + + Stalkei na dlouhch vpravch, kdy si nemohou dovolit odpoinek, asto pij ve velkm tento energetick npoj. Drink obsahuje snadno straviteln uhlovodky a tak lky, kter stimuluj uvolovn adrenalinu do krevnho obhu. + + + Vrn kytara + + + Kytara + + + Dietn klobsa + + + Tato klobsa, vyroben ze smsi kuete a sojov nhraky, asto tvo stalkerskou sndani, obd i veei. Dky vysokm obsahm konzervant je mon ji skladovat dlouhodob. + + + Lkrnika + + + Armdn lkrnika + + + Specializovan lkrnika pro poskytovan prvn pomoci v boji. V lkrnice jsou obsaeny krevn koagulanty zaloen na menadionu, analgetika, antibiotika a imunostimulanty, tak zkladn vbava pro odstraovn kulek a stepin z tla. Lkrnika je standardn vydvna vojenskmu personlu a obas ji pouvaj stalkei frakce Povinnost. + + + Obecn lkrnika na jedno pouit. Hod se pro oeten rznch zrann - trnch ran, otok, obyejnch i chemickch splenin a tak nkterch otrav. Mezi stalkery je po n velk poptvka. + + + Vdeck lkrnika + + + Lkrnika navren specificky pro pouit v Zn. Obsahuje lky a vbavu pro len zrann, zablokovn ink radiace a dekontaminaci tla od radioaktivnch stic. Na rozdl od jinch lkrniek je v n i Vikasolum, Batilolum a Naphazoline. + + + dn data neuloena. + + + PDA + + + Kozck vodka + + + Vrobek GSC. Je celkem jemn a pomh sniovat inky radiace. Je vhodn konzumaci omezovat. + + + Tento detektor anomli posledn generace me bt vyuit k lokalizaci anomlnch tvar. Disponuje panelem s barevnmi diodami, kter nenaznauje jen smr pozice artefaktu, ale i jeho vzdlenost. Pro pepnut do reimu vyhledvn artefakt otevi pedn kryt pstroje. V pstroji je bohuel naprogramovn ponkud zastaral seznam detekovatelnch artefakt. + + + Experimentln droga vyvinut profesorem Ozerskm uren pro vdeckovzkumn tmy pracujc v Zn. Samotn droga obsahuje tetrodotoxin, znm pod oznaenm prek zombi, kter zpsobuje pln zastaven innosti centrlnho nervovho systmu a umouje tak pet emisi mimo kryt. Droga neprola klinickmi ani praktickmi zkoukami, co vyvolv otzky tkajc se jej efektivity a monch vedlejch ink. + + + roub + + + Hlavn slokou tohoto vrobku je anabolick androgen, syntetick steroid, kter svm chemickm sloenm pipomn testosteron. Stalkei jej asto uvaj bhem dlouhch boj, aby ulevili svm svalm. Steroid znan zvyuje nosnost a m dlouhotrvajc inky. + + + Protiradioaktivn ppraven Indralin B190 je bnou soust lkrniek pouvanch v jadernch elektrrnch. V Zn se pouv namsto vysoce toxickho hydrochloridu cysteaminnho PC1, jeho ast uvn zpsobuje smrt. Zmruje dopady paprsk gamma na lidskou tk. Doporuuje se spolknout ped vystavenm zen, jeliko efekt se nedostavuje okamit. inky trvaj dlouhodob. + + + Foukac harmonika + + + Pro milovnky blues a psn zhrzench vz. + + diff --git a/gamedata/configs/text/cze/st_items_outfit.xml b/gamedata/configs/text/cze/st_items_outfit.xml new file mode 100644 index 0000000..4d53896 --- /dev/null +++ b/gamedata/configs/text/cze/st_items_outfit.xml @@ -0,0 +1,117 @@ + + + + Osobn zbroj CS-3a + + + Zbroj Povinnosti PSZ-9d + + + Univerzln ochrana PS5-M + + + Exoskeleton + + + Obrnn oblek Bulat + + + Tento exoskeleton poskytuje vynikajc ochranu ped kulkami a stepinami, nicmn omezuje pohyblivost. Je snadno prosteliteln prraznou munic. + + + Exoskeleton + + + Vojensk obrnn oblek pro ton operace. Poskytuje vynikajc ochranu ped celopl᚝ovmi stelami a stepinami, ani by negativn ovlivoval pohyblivost nositele. Zraniteln prraznm stelivem. + + + Vojensk obrnn oblek + + + Bn pl᚝ z ern ke. Nem jin el ne uchovat svho nositele v teple a chrnit ho ped kousnutm slepm psem. Akoli nen kabt pli pohodln, asto ho v Zn pouvaj banditi - bu proto, e se v nm mohou snze schovat ve tm, nebo prost proto, e vypad "cool". + + + Koen pl᚝ + + + Oblek SEVA + + + Obrnn oblek Berill-5M + + + Helma Sphere M12 + + + Hlinkovo titanov helma s ltkovm pokrytm, ve kterm jsou kapsy pro dal ochrann kovov plty, a s pancovanou obliejovou maskou. Sphere M12 se bn pouv v kombinaci s osobn zbroj Speznas srie PSZ. V Zn je celkem populrn dky respirtoru a zabudovanmu systmu nonho vidn prvn generace, navc poskytuje maximln monou ochranu hlavy. Je vybaven sloty na elektroniku. + + + Ocelov helma + + + Zoufale zastaral ocelov armdn helma bez dalch modifikac. Neposkytuje dnou ochranu ped anomliemi nebo radiac, ale doke odret kulky. Tato helma v Zn nikdy nebyla moc populrn, pouvala se vce pouze bhem krtkch ozbrojench konflikt mezi frakcemi. + + + Zakrytovan helma + + + Lehk helma s neprodynm vizorem, uren pro ochranu ped anomliemi. Podle designu se d usuzovat, e helmu navrhl stejn vzkumn institut obrany, kter m na svdom oblek SEVA. Zamlen pouit je v kombinaci s vojenskmi obleky pro operaci v oblastech s velkm vskytem anomli. + + + Plynov maska + + + Bn plastov a gumov plynov maska, schopn filtrovat ze vzduchu radioaktivn stice a jedovat plyny. Bn pouvan zeleni i veterny vech frakc s ohledem na univerzln funknost. Neposkytuje dnou fyzickou ochranu. + + + Taktick helma + + + Zpadn model taktick helmy bez kamufle. Nen znmo, jak se tato helma do Zny dostala. Je urena pro velitele drustva, ktermu poskytuje prostednictvm skener a satelitnch komuniktor strategickou vhodu nad neptelem. Nicmn v tto helm komunikan zazen chyb. Helma je chrnna nkolika vrstvami kevlaru a pancovch vloek, kter maj chrnit elektronick komponenty. V helm je zabudovn respirtor a non vidn prvn generace + + + Oblek svit + + + Oblek str Svobody + + + Tento lehk stalkersk oblek vyrb emeslnci Svobody. Ltka obleku je naputna Horizonem, specilnm roztokem vyvinutm frakc metodou pokus a omyl k zven ochrany ped anomliemi. Stejn jako oblek svit je i Vtr svobody vybaven pancovou vlokou a kontejnery na artefakty. + + + Oblek Vtr svobody + + + Tato modern varianta neprsteln vesty Povinnosti je lpe uzpsobena potebm zanajcch stalker, kte jsou zvykl na lehk zbroje. Na rozdl od ady PSZ doke nejen zastavit vstel z pistole, ale poskytuje dobrou ochranu i proti anomlim. Do vesty nen mon zabudovat kapsu na artefakt, nicmn je mon ji msto toho vylepit podprnm bojovm systmem. + + + Tato modern armdn zbroj je urena k bojovm akcm v anomlnch oblastech. Skld se ze znan modifikovan neprsteln vesty PSZ-12p se zabudovanm kompenztorem a kombinzy na ochranu ped anomliemi. Zbroj vten chrn ped kulkami a rapnely, ani by nositele vraznji omezovala v pohybu. Pat k n i kapsa na artefakty. + + + Tento oblek je uren k provdn vzkumu v Zn. Jeho soust je i dchac systm s uzavenm cyklem a vnj izolan vrstva, co v kombinaci vede k vborn ochran ped anomliemi. Oblek vak jen mlo chrn ped fyzickmi nrazy, a proto nen vhodn jako obrana ped kulkami a rapnely. M s sob zabudovnu schrnku na penos artefakt. + + + Tento oblek, vyrbn jistm vojenskm vzkumnm institutem, je skvlou alternativou k oblekm itm na koleni. Pestoe jeho zabudovan vesta doke zastavit pouze vstel z pistole, systmy na ochranu ped anomliemi a radiac pat ke pice. Pitte si k tomu snadnou modifikovatelnost a dv schrnky na artefakty a pochopte, pro je tento oblek tak populrn. + + + Tento oblek sestv z neprsteln vesty ady PS5 poten - pro ely pobytu v Zn - vrstvou berylia. Byl navren pro bojov operace ve znan radioaktivnch oblastech, ale v mstech s astm vskytem anomli pli neobstoj. Tyto obleky se ke stalkerm dostvaj od vojk, kte je vymuj za koist. Neobsahuj schrnku na artefakty. + + + Stalkersk oblek vyroben nkm z mstnch. Efektivn kombinace lehk vojensk neprsteln vesty a pogumovanho ltkovho obleku. Akoli nedoke ochrnit nositele ani ped stelami z pistole, je dky sv nzk cen a modifikanm monostem velmi populrn. Obsahuje kapsy, do kterch je mon vloit dva artefakty. + + + Tento zeslen stalkersk oblek vyrbn emeslnky ze Svobody pedstavuje kompromis mezi bojovou efektivitou a ochranou ped anomliemi. Zabudovan neprsteln vesta se skld z pancovch destiek a deseti vrstev kevlaru, kter dok zastavit vstel z pistole. K ochran ped anomliemi pouv oblek relativn drah ppraven Suvern. Obsahuje kapsu na artefakty. + + + Ran model sluebn zbroje Povinnosti. Jde prakticky jen o neprstelnou vestu PSD-9, kter byla petvoena pro ely Zny. Doke sice zastavit i vstel z puky, to je vak vyveno vysokou hmotnost, neohrabanost a prakticky nulovou ochranou ped anomliemi. Do vesty nen mon zabudovat kapsu na artefakty, nicmn je mon ji vylepit podprnm bojovm systmem. + + + Tato zbroj kdysi slouila lenm Jasnho nebe, ovem po znien tto frakce funguje pedevm jako pipomnka, e ani sebelep obrann oblek vm v poli nezajist stoprocentn bezpe. Doke zastavit vstel z pistole a zrove dobe chrn ped anomliemi. M zabudovanou kapsu na artefakty. + + + Prototyp vojenskho exoskeletonu. Do sriov produkce se kvli obrovsk cen a nkolika technickm chybm nikdy nedostal, pesto se ale v malm mnostv vyrb v ileglnch tovrnch mimo Ukrajinu. Za svou popularitu vd schopnosti pojmout thu vekerho nesenho vybaven. M rovn zabudovanou kapsu na artefakty. + + + Kombinza SEVA + + diff --git a/gamedata/configs/text/cze/st_items_quest.xml b/gamedata/configs/text/cze/st_items_quest.xml new file mode 100644 index 0000000..bedc073 --- /dev/null +++ b/gamedata/configs/text/cze/st_items_quest.xml @@ -0,0 +1,369 @@ + + + + Dokumenty s poznmkami + + + V dokumentech je zmnka o pkazu Oddlen 1. Po zapeetn transportan komory byl podzemn prchod zaplnn oxidem uhliitm obohacenm o njakou chemickou pms. Veker personl obdrel pkaz nosit v oblasti chemick ochrann obleky s uzavenmi dchacmi okruhy. + + + Dopis ohledn dodvky pedmtu 62 + + + S ohledem na anomln aktivitu nen peprava pedmtu 62 pes oteven prostranstv vhodn. Pro pepravu pouijte podzemn prchod Pripjat 1. Pln dodvky a nsledujcho zapeetn prchodu byl pedn oddlen 1. + + + Sloka s pkazem + + + Dokument zmiuje evakuaci produknho komplexu z tovrny Jupiter do podzemn laboratoe. Evakuace mla bt projednvna v laboratorn sekci. + + + Pln dodvky + + + Pln pro dodvky pedmtu 62: 07/14 - 20 jednotek (jedna pokozen); 07/21 - 32 jednotek (2 pokozeny); 07/28 - 26 jednotek (jedna pokozena). Vyjden ohledn ztrt bhem pepravy bylo odeslno administrativ tovrny, kopie odeslna do opravrensk dlny. + + + List ze zpisnku + + + Na schzi padlo nsledujc rozhodnut: dodvkov sluba se m soustedit na evakuaci produknho komplexu pedmtu 62. + + + Zznam smny Povinnosti + + + ...18:30 - vzduchotsn zabezpeen vech sekc podchodu P1 dokoneno. 19:00 - vzduchotsn zabezpeen eleznin komory dokoneno. Dvee byly zapeetny zavaenm. 19:45 - transportn dvee uzaveny. Pouit mechanismu dve vyadovalo aktivaci zlonho genertoru, protoe v podchodu ji byla odznuta energie. 20:00 - chemick dlna zahjila napoutn podchodu plynem. 22:00 - dokoneno zapeetn podchodu, dokumentace odeslna oddlen 1. + + + Schma podchodu + + + Schma podchodu Pripjat 1, ukazujc podchod pod mstem Pripja. V dokumentu je nkolik poznmek: 1. Zapeetn dvee pechodov komory. 2. Pouit plynu z chemick dlny k zabezpeen podchodu. + + + Upraven izoltor + + + Toto byl kdysi izoltor. Te je ji tm pln promnn na nestabiln artefakt. Pravdpodobn je to zdroj psionickch emis. + + + Plechovka kalafuny + + + Plechovka kalafuny pouvan pi pjen. V Zn celkem vzcn, co vysvtluje, pro mstn technici k opravm zazen pouvaj izolaku. + + + Balek kondenztor + + + Balek kondenztor, zkladnch elektrickch soustek. V Zn nejsou zas tak vzcn, jeliko se pouvaj pro technick vylepen, ale takhle velk kapacity se normln nepouvaj. + + + Cuprextit + + + Cuprextit tvo zklad titnch elektronickch okruh. Pocity, kter m amatrsk elektronik pi doteku nepouitho cuprextitu se daj pirovnat k tomu, co ct spisovatel pi pohledu na przdn kus papru. + + + Krabice tranzistor + + + Krabice tranzistor - zesilovacch polovodi s mnoha rznmi pouitmi. Po tranzistorech tou kad radiov technik v Zn. + + + Role mdnho drtu + + + Role mdnho drtu, vynikajcho vodie, slou zrove i jako zdroj kovu. Proto je takov drt v Zn celkem drah. Vechny nalezen velk rezervy mdnch drt u byly dvno, jet ped katastrofou, roztaveny a prodny do sbru. + + + Detekn skener mutac + + + Toto zazen je zaloeno na normlnm skeneru anomln aktivity. Je vybaveno detektorem mutant s krtkm dosahem a zznamovm zazenm pro ukldn namench vsledk. Zazen obsahuje automatick vypna, kter se pouije po nahrn dostatku dat. + + + Administrativn dokumenty + + + Sloka dokument plnch administrativnch informac. Podle dokument byly na pkaz z centrln laboratoe vechny technick dokumenty o pedmtu 62 pedny testovac dln. + + + pnovo PDA + + + Mezi zprvami se nachz jedna zajmav. Odeslal ji akal a zn: "Mj chlap ve vzkumnm institutu doporu, abys vedl expedici. Bude muset najmout tvou partu na ochranu bunkru. Tm to bude mt snaz. Pamatuj, klient chce, aby se k vdcm nedostaly DN informace o oznaench objektech. Pokud se to stane, nebudeme moci opustit Znu. Nezklam m, pno." + + + ern sknka + + + ern sknka Rejnoka 1, kter peila havrii. Mla by obsahovat informace o poslednch chvlch letu, akoli budou pravdpodobn zaifrovan. + + + Vojensk plastick vbuniny s ptisekundovm asovaem + + + Vbuniny s asovaem + + + Upraven kolo + + + Snagovo PDA + + + PDA obsahuje mapu se znakou u stanice, urujc skladit, a tak nkolik erotickch fotografi. Nic zvltnho. + + + Banditovo PDA + + + Posledn zprva v PDA zn: "Chy tu svini Pahejla a pive mi ho, musm si s nm pokecat. Je mi fuk, kde je, prost ho najdi. Pokud se bude chtt rvt, dej mu lekci. Sultn." + + + V tomto PDA jsou uloeny informace o Morganovch klientech a tak souadnice tajnho skladit Povinnosti, odkud bere zbran. Morgan prodv zbran oldkm a tak si zdil kontakt s nkm jmnem Sultn. Aby Morgan zamaskoval sv stopy, rozhodl se prozradit pozici skladit Povinnosti. Jeho komplic Sup ml tyto informace pedat. PDA tak zmiuje senzor, kter doke deaktivovat pouze Morgan. Senzor upozorn Povinnost, pokud sklad nkdo oteve. Tahle informace bude zajmav pro Povinnost i Svobodu. + + + Morganovo PDA + + + Poznmka na zadn stran starho dokumentu: "Duchu, beru si sv vci. Dky za tu puku, budu ji potebovat. Na vmnu tady nechvm njak Doktorovy lky. Podailo se mi zavst oldky, kte m sledovali, do pasti, take ty lky nebudu potebovat... aspo doufm. Pjdu za Teskem, u dal dohromady dekodr. Setkme se na obvyklm mst, pokud to zvldne. Stelec." + + + Vzkaz Duchovi + + + Vzkaz na tverekovanm pape: "Stele, nechal jsem pro vechny ppady v Pripajatsk skri druh dekodr. Zamme s Duchem do Agropromu, take tady nechme njakou munici. Vezmi si, co potebuje. astn lov. Tesk." + + + Vzkaz Stelci + + + Vzkaz na zadn stran starho dokumentu: "Tesku, u nemu ekat, jde mi v patch cel oddl. Zamm k Sarkofgu sm. Nechm tady svou astnou bouchaku, u pro ni stejn nemm munici. Pokud se nedoku vrtit, dej ji Duchovi. Pokud se o tu bouchaku dobe postar, postar se ona o nj. Dvej na sebe bacha. Stelec." + + + Vzkaz Teskovi + + + Pamov modul z UAV. Novikov modul odblokoval, take m pstup k informacm zskanm UAV. Mezi jinmi jsou tam i souadnice t rdiovch majk. + + + Pamov modul (odblokovan) + + + Pamov modul z UAV. Navzdory havrii je modul funkn, ale nanetst je zablokovan. + + + Pamov modul (blokovan) + + + Star rozpis strnch slueb, s slem 1421 uvedenm dole. Pes star text je fixou napsno: "Poruk V. I. Sokolov. Po havrii vrtulnku jsem pokraoval k evakuanmu bodu B205. Po dobu dvou dn nedolo k dnmu pokusu o evakuaci, zstvat na tto pozici je pli riskantn. Rozhodl jsem se proto opustit B205 a pokraovat k mobiln laboratoi vdeck expedice. Laborato se nachz severovchodn od evakuanho bodu." + + + Sokolovv vzkaz + + + Rostlina, dvj soust hje, kter byla sten zmnna anomln aktivitou. Hjek na tok reagoval agresivn, ale rostlina samotn se zatm nezd nebezpen. + + + Anomln rostlina + + + Posledn zprva na PDA je od Morgana. Jde o kontrakt na vradu stalkera jmnem Degtjarev. Ke zprv je piloeno nkolik fotografi. Morganovy posledn instrukce zn: po peten zprvu smazat. + + + oldkovo PDA + + + Zazen kombinuje detektor artefakt, elektrick zdroj a silnou vyslaku. Zazen skenuje anomlie a uruje typ a poet artefakt, kter se objev. Vechny tyto informace se automaticky poslaj do vdeckho bunkru. + + + Skener anomln aktivity + + + Posledn poloka v PDA je audio zznam: \n"...A jdem kamkoli, vdycky skonme na tom samm mst. Pod si nemu na tu mlhu zvyknout. Je divn, e epurny zmizel beze stopy. Mon nael cestu ven?... \nest den... dola nm voda... plukovnkovi peskoilo, odprsknul dva lidi a pak sm sebe... te jsem v t zatracen anomlii sm... kdybych se nepostaral, aby se nm velitelstv nemohlo dovolat, teba by ns zachrnili... a Povinnost by neexistovala. Ale co u. Ten kapitn Taenko zemel u dvno... A tenhle generl Taenko z Povinnosti ho bude nsledovat... spravedlnost m dohnala..."\nZznam je peruen vstelem. + + + PDA generla Taenka + + + Manul popisuje, jak pouvat pedmt 62. Instrukce zdrazuj, e nen teba potat pi stelb s trajektori stely nebo vtrem, jeliko v efektivnm dostelu zbran nemaj tyto podmnky dn vliv.\n\nTyto dokumenty se nesm dostat do rukou jen tak nkomu. Analytiky z USS by velmi zajmaly. + + + Manul pro pedmt 62 + + + V zpisnku jsou detailn popisy experimentu zkoumajcho inky psionickho pole na objekt na druh stran svta. Skupina vdc v Karibiku signl zachytila, ale naruen. Signl byl podivn promnn, jakoby na nm nkdo provedl korekci. Mon vysvtlen by bylo, e je teorie noosfry sprvn a zmny provedla noosfra.\n\nTyto dokumenty se nesm dostat do rukou jen tak nkomu, protoe by o n mli velk zjem analytici USS. + + + Zpisnk s popisem experimentu + + + Dokument popisuje technick charakteristiky antny a jak se odliuje od pvodn plnovanch hodnot. Na zadn stran je poznmka naznaujc, e dokument vznikl v laboratoi X10.\n\nTyto dokumenty se nesm dostat do rukou jen tak nkomu, protoe by o n mli velk zjem analytici USS. + + + Duhov emitr, hlavn parametry + + + Dokument se tk vedlejho vsledku vzkumu, konkrtn objevu, e ijc stvoen dok vytvet smrovan psionick emise. V rmci vzkumu byl v laboratoi X16 vypstovn biologick vysla, v podstat obrovsk mozek.\n\nTyto dokumenty se nesm dostat do rukou jen tak nkomu, protoe by o n mli velk zjem analytici USS. + + + Vzkumn dokumenty + + + Hlen popisuje biologick vzorky odeslan z laboratoe X18. Vzorky byly vystaveny informanmu poli rzn intenzity. Hlen detailn popisuje mutace ivch bytost vystavench emism.\n\nTyto dokumenty se nesm dostat do rukou jen tak nkomu, protoe by o n mli velk zjem analytici USS. + + + Hlen o vzorcch + + + Dokumenty popisuj peveden vzkumnho tmu a vekerch materil do dal laboratoe oznaovan jako X7, kde se budou zkoumat inky noosfry. Vzkumn tm se skld z: N.A. Lebedv, E.F. Kalana a V.I. Suslov.\n\nTyto dokumenty se nesm dostat do rukou jen tak nkomu, protoe by o n mli velk zjem analytici USS. + + + Pkaz k pesunu + + + Posledn poznmka v PDA zn: "Nael jsem na estm, technickm pate nouzov genertor. Trvalo mi dv hodiny, ne jsem ho zprovoznil. Rd bych ho zapnul, ale Serbin mi pikzal sedt a nic nedlat, dokud nepivede pr dalch lid." + + + Barukovo PDA + + + erven magnetick karta oznaen jako X8. + + + erven klov karta X8 + + + PDA obsahuje mnoho nesmyslnch zznam, ale jeden je zajmav: "Monolit komunikuje s pjemcem zprvy a pikazuje mu sesbrat zsoby munice a uloit je na lokacch, o kterch nevc nevd. Tyto lokace maj bt oznaeny znakem Monolitu. A pijdou tk asy, ti, kdo sly Monolit, budou tit z jeho moudrosti... pedal jsem vli Monolitu svm bratrm a ekl jim, kam maj umstit munici..." + + + PDA bojovnka Monolitu + + + Dtsk sada nad. K jemn prci nevhodn, ale s ohledem na nedostatek nstroj v Zn by se mohla hodit kadmu technikovi. + + + Nad pro zkladn prci + + + Slun sada nad. Zjevn ji dal dohromady pro sv vlastn pouit njak zkuen technik. Navzdory svmu st jsou nstroje v dobrm stavu. + + + Nad pro jemnou prci + + + Profesionln sada nad pro jemn ladn. Na sknce je npis oznamujc, e bylo nad vyrobeno v Nmecku. Sada obsahuje tm ve potebn k jemnmu ladn a kalibraci. + + + Kalibran nad + + + Star magnetick karta + + + Kardanova magnetick klov karta. Pouvala se pro pstup do testovac dlny pedmtu 62. + + + Dokumenty o pedmtu 62 + + + Dokumenty, kter popisuj operan mechanismus a technick charakteristiky elektromagnetickho zazen.\nV poznmce je uvedeno: "Dokumenty mus bt navrceny do centrln laboratoe X8. Budu mt spoustu prce, take je pedej sm. Pouij magnetickou klovou kartu v pripjatskm servisnm centru, a se dostane do druhho podzemnho patra. Tam u to najde. Pstupovou kartu pikldm.\nN. Lebedev"\n\nTyto dokumenty se nesm dostat do rukou jen tak nkomu, protoe by o n mli velk zjem analytici USS. + + + lut klov karta X8 + + + Pkaz slo 562 + + + Intern pkaz . 423 + + + Kl A + + + Normln kl oznaen psmenem "A". + + + Kl B + + + Normln kl oznaen psmenem "B". + + + Jeden z audio zznam zn jako namluven lencem: "Tak kde jsou ti zatracen mutanti?! Mizern svin se vyplhaly nahoru na ploinu a mysl si, e se k nim Noe nedostane... vsadm se, e nev o m osobn cest nahoru, kolem severn farmy... ek vs kopa srandy, hovada!!" + + + Noeovo PDA + + + Mezi hromadami spamu je jedna zprva oznaen jako dleit:\n"Vybuduj tbor pobl istiky odpad, vichni astnci thle prce se k tob pozdji pidaj. Neekej na pnu, protoe ten je se svmi lidmi v Jupiteru, na jin misi. Armda peruila vechny lety do Zny, take ani z thle strany nen teba oekvat problmy. A stalkei najdou cestu do Pripjati, poleme prvodce a pokme tam na klientovy lidi - ukou nm, kde ta laborato je.\nakal." + + + oldkv notebook + + + Posledn pchoz zprva zn:\n"ekme u njak star dlny. Poslal jsem naped dva chlapy prozkoumat ti cestu. Budeme tady ekat, dokud se neobjev klientv kurr, vzduch je tady mnohem istj.\nTesak" + + + PDA oldka Hka + + + PDA oldka Hrbe + + + Kanystr nebezpenho nervovho plynu + + + Kanystr plynu Perin B3 + + + Krabice je uzamena kvalitnm zmkem. Podle thy a zvuk, kter vydv krabice pi potesen, uvnit nco je. + + + Ocelov krabice + + + Poznmka v PDA: "Artefakt je urit na strom. Odsud vidm, e bych na strom mohl z kopce vyplhat. Jen doufm, e tam nejsou dn mutanti. Je blb, e jsem sem po hdce s Kardanem a Brkou musel jt sm, ale kdy jim pinesu ten artefakt, pochop, e jsem ml celou dobu pravdu..." + + + Vtipoovo PDA + + + Posledn poznmka v PDA naznauje, e byl majitel PDA pkn natvan, kdy ji psal: "Kardan, ten star orala. Nejen e je to mizern lenoch, jakmile se napije - "tady je to lep, je teba bejt v pohod" - ale pak si ned pokoj a mus do m a do Vtipon rejt, kat nm, jak jsme mlad a blb... pravda, Vtipo je taky pknej pitomec, nasral se, popadl sv krmy a zmizel. Zatmco jsem se snail Kardana zklidnit, Vtipo zmizel a j sakra nevm kam. A co mm teka dlat? Chlastat dl s tm senilnm kretnem? Kalu na nj, navc je ta jeho vodka pkn svinstvo. Bleh..." + + + Brkovo PDA + + + Strak si ve svm PDA vedl denk a jeho posledn zznamy jsou velice zajmav: Zznam slo 12. Mj vzkum brzy skon... Lid v tboe zanaj nco tuit. Tetev a Danila se chystaj na lov upr... Netum, kdy to zjist... Musm pebrat vechny ndoby s krv, abych zjistil, kter z nich jsou kontaminovny a zbytek schovat... [rychle:] Nkdo pichz. [zvuk vypnajcho se zznamnku nsledovan jeho optovnm zapnutm]. Zznam slo 13... mon mj posledn. Nejdv ten sldc stalker a te i Tetev... To neme dopadnout dobe... Pijdou si pro m, vm to. Ale na tom nezle ta zvislost na hemoglobinu m stejn brzy zabije. A radi umu kulkou do hlavy ne na lku... + + + Strkovo PDA + + + Psn tajn. Rozkaz # 562 velitele centrly zodpovdnho za bezpenost objektu # 1 R. Yu. Didenka.\nJednotka chemick ochrany # 423 se pemst ze sektoru B103 do sektoru A13 k proveden test chemickho roztoku Perin B3 v podmnkch boje zblzka. Plukovnk P.P. Slavin, velitel jednotky, je zodpovdn za proveden test. Nadporuk K.S. Valov, zstupce velitele jednotky, je zodpovdn za dopravu a bezpenost. + + + Psn tajn. Rozkaz plukovnka P.P. Slavina.\nV souladu s tmto rozkazem budou lenov protichemick jednotky # 423 seznmen s nsledujcmi informacemi:\n1. Kle k ndob s chemickm roztokem Perin B3 m plukovnk P.P. Slavin (kl A) a podplukovnk K.S. Vlasov (kl B).\n2. azen konvoje odpedu: vozidlo zstupce velitele jednotky, doprovodn vozidlo #8, APC #1, transportn vozidlo #1, APC #3, doprovodn vozidlo #2, vozidlo velitele jednotky (P.P. Slavin).\nKopie rozkazu bude pedna podplukovnku K.S. Vlasovovi a vrchnmu nadporuku R.B. Nazarenkovi. + + + lut magnetick karta nadepsan X8.\n\nZa dnou cenu nesm padnout do nepovolanch rukou, odemyk toti dvee k tajn laboratoi. + + + PDA Sultnova posla + + + Posledn zprva, kter byla z tohoto PDA odeslna, ze zvukov zznam: Sultne, pkn jsem s tm srem vyjebal! Te u se do ns srt nebude! + + + Tohle kdysi bvalo kormidlo nho bagru. Postupem asu se zpola petvoilo na podivn artefakt. Nem dn vrazn vlastnosti, jenom vydv svit a trochu radioaktivity. + + + Obdrena nov zprva:\nPovedlo se mi tu lakomou svini ukecat, take nm prod zbran od sv frakce. Nebude ns to stt zas tak moc, sta, kdy se dopravme do Jupiteru.\n-Sup. + + diff --git a/gamedata/configs/text/cze/st_items_weapons.xml b/gamedata/configs/text/cze/st_items_weapons.xml new file mode 100644 index 0000000..f54840f --- /dev/null +++ b/gamedata/configs/text/cze/st_items_weapons.xml @@ -0,0 +1,567 @@ + + + + Stelivo .45 ACP + + + Celopl᚝ov munice re .45 je dky sv tk kulce a relativn mal prachov nloi populrn u pes sto let. Stela je sice relativn pomal, ale velmi pesn a m slunou zastavovac slu. + + + .45 ACP + + + Stelivo .45 ACP Hydrashock + + + Toto nezvykl stelivo re .45 ACP tvo pl᚝ovan kulka s expanzn dutou pikou a ocelovm jdrem. Ve vsledku jde v podstat o kombinaci prrazn a expanzn stely, kter m vhody obou typ steliva, ale tak jejich nevhody. + + + .45 Hydro + + + Stelivo 12x70 broky + + + Standardn nboje pro brokovnici dvanctku naplnn 6 mm broky. Na krtkou vzdlenost smrtc. Vhodn pouze pro zbran bez vvrtu hlavn. + + + 12x70 brok + + + Stelivo 12x76 kulobrok + + + Tato tk kulov stela pro brokovnice dvanctky se normln pouv pro lov velk zve, ale hod se i na jin pouit. Tk kula ppadnou zbroj neproraz, ale prost ji rozdrt. + + + 12x76 kulobrok + + + Stelivo 5.45x39 mm AP + + + Vojensk stelivo 7H22 re 5.45x39, prrazn munice pro automatick puky zem Varavsk smlouvy. Stela obsahuje penetrtor z tvrzen slitiny. Efektivn proti pancovn. + + + 5.45x39 AP + + + Stelivo 5.45x39 mm + + + Vojensk stelivo 7H10 re 5.45x39, vylepen prrazn munice pro automatick puky zem Varavsk smlouvy. Je pesnj ne stely re 7.62 dky snenmu zptnmu rzu. M i o cca 100 metr del dosah. + + + 5.45x39 + + + Stelivo 5.56x45 mm AP + + + Bn prrazn vojensk NATO stelivo re 5.56x45, oznaovan jako SS190/M855. Bn pouvan zpadnmi bezpenostnmi agenturami a zvltnmi slubami. Velmi efektivn proti osobnm zbrojm. + + + 5.56x45 mm AP + + + Stelivo 5.45x45 mm + + + Standardn munice NATO re 5.56x45, uren pro pesnou automatickou stelbu. Zaloeno na loveck munici, m dobrou balistickou charakteristiku. Bn oznaovno indexem SS109. + + + 5.56x45 + + + Stelivo 7.62x54 mm 7H1 + + + Odstelovask munice re 7.62 s ocelovm penetrtorem, speciln navren pro SVD. Na rozdl od steliva urenho pro kulomety m 7H1 lep soustel a vynikajc prraznost. + + + 7.62 7H1 + + + Stelivo 7.62x54 mm PP + + + Lacin stelivo re 7.62 uren pro kulomety. Nen vhodn pro odstelovask puky, pouv se pouze u kulomet RP-74. + + + 7.62x54 PP + + + Stelivo 9x18 mm + + + Celopl᚝ov stela s ocelovm penetrtorem a olovnm jdrem. Dobr zastavovac sla, neefektivn proti neprstelnm vestm. + + + 9x18 + + + Stelivo 9x18 mm +P+ + + + Toto stelivo pouv kulky s vylepenou zastavovac silou. Evropsk oznaen +P+ uruje, e jde o "petlakovou munici" s 30% zvenm sov rychlosti. Neefektivn na neprsteln vesty a osobn pancovn. + + + 9x18 +P+ + + + Stelivo 9x19 mm FMJ + + + Zkladn stelivo re 9x19 s celopl᚝ovou kulkou m dobr charakteristiky a jeho vroba je lacin. Stelivo je populrn s ohledem na fakt, e mezinrodn konvence zakazuj pouvn expanzn munice v boji. Neefektivn na neprsteln vesty a osobn pancovn. + + + 9x19 FMJ + + + Stelivo 9x19 mm JHP + + + Stelivo re 9x19 s celopl᚝ovm kulkami s dutou pikou m vysokou zastavovac slu a mal sklony k odrazm. Pouv se pro osobn ochranu a pro policejn ely. Neefektivn na neprsteln vesty a osobn pancovn s ohledem na nzkou prraznost. + + + 9x19 JHP + + + Stelivo 9x39 mm SP-6 + + + SP-6 je podzvukov munice pro ton puky s mkkou celopl᚝ovou stelou a tvrdm ocelovm jdrem. Pro tichou stelbu vyaduje tlumi. Munici pouvaj speciln sluby zem Varavsk smlouvy. Efektivn pi stelb na neprsteln vesty. + + + 9x39 SP-6 + + + Stelivo 9x39 mm SP-5 + + + SP-5 je podzvukov odstelovask munice s bimetalickm pltm. Stela obsahuje ocelov jdro obalen olovem. Pro tichou stelbu vyaduje tlumi. Munici pouvaj speciln sluby zem Varavsk smlouvy. + + + 9x39 mm SP-5 + + + Baterie + + + Grant M203 + + + Grant re 40 mm pro podvsn grantomet M203. Grant m znu inku o prmru pt metr. Je tak vhodn pro pouit v integrovanm grantometu FT-200M. + + + M203 + + + Hlavice OG-7V + + + Ttiv hlavice pro protipchotn boj pouvan raketometem RPG-7u. Hlavice se pouv pro likvidaci neptel v krytu, kte jsou mimo dosah runch grant. + + + OG-7V + + + Grant VOG-25 + + + Bn ttiv grant pro podvsn grantomet GP-25 Koster. Zna inku je pt metr. Grant se tak pouv v revolverovm grantometu Bulldog 6 a v komplexu Tunder S14. + + + VOG-25 + + + Optika PSO-1m + + + Bn sovtsk fixn optika se zvtenm 5x. Pipojuje se ke standardn montn lit zbran zem Varavsk smlouvy. + + + Optika PSS-2x + + + Optika s fixnm zvtenm 5.0x se zabudovanou termoviz pouvanou k identifikaci tepelnch zdroj typickch pro lidsk tlo. Uren pro pouit specilnmi jednotkami. Pipojuje se ke standardn montn lit zbran zem Varavsk smlouvy. + + + Optika NSPU-3 + + + Fixn optika se zvtenm 5.0x s optickm nsobiem pro boj v temnot. Pipojuje se ke standardn montn lit zbran zem Varavsk smlouvy. + + + Optika SUSAT 4x + + + Nastaviteln optika 1.6-4x s automatickou pravou obrazu pro lep palebnou efektivitu. Pipojuje se ke standardn montn lit Picatinny zbran NATO. + + + Fixn optika 4x vyrbn v zpadnch zemch. Pipojuje se ke standardn montn lit Picatinny zbran NATO. asto pouvan pro veden pesn palby runmi zbranmi na stedn a velk vzdlenosti. + + + Optika SUSAT Twilight x1.6 + + + Pukohled SUSAT 1.6x s vysokm kontrastem pro boj ve zhorench svtelnch podmnkch. Pipojuje se ke standardn montn lit Picatinny zbran NATO. + + + Optika SUSAT Night x4 + + + Fixn optika 4.0x se systmem nonho vidn pro veden palby na velkou vzdlenost za nonch podmnek. Pipojuje se ke standardn montn lit Picatinny zbran NATO. + + + Optika SUSAT 1.6x + + + Optika SUSAT 1.6x pro boj na krtk a stedn vzdlenosti. Pipojuje se ke standardn montn lit Picatinny zbran NATO. + + + Optika PSU-1 + + + Optika 2.7x pro boj ve mstech na stedn vzdlenosti. Pipojuje se ke standardn montn lit zbran zem Varavsk smlouvy. + + + Tlumi + + + Efektivn tlumi, kter je mon snadno modifikovat podle poadavk. Tlo tlumie obsahuje jemnou kovovou s pohlcujc unikajc plyny. Sada obsahuje adaptry a tsnn pro vtinu typ zbran. Bn se pouv ke zmenen potu neptel, ani by k sob stelec pilkal nedouc pozornost. + + + Grant F1 + + + Obrann run grant, jeho stepiny jsou schopn prorazit prmrn siln neprsteln vesty. Exploze m efektivn dosah 7 metr. Stalkei zskvaj granty F1 dky obchodu s armdou, vojci je odepisuj jako pouit v boji s mutanty. + + + GP-25 Koster + + + Jednorann zpedu nabjen podvsn grantomet pro ton puky vyrbn v zemch Varavsk smlouvy. Palebn mechanismus je samonabjec, s manuln pojistkou a automatickou zbranou vstelu pi nesprvn instalaci. Pouv granty VOG-25. + + + M203 + + + Modifikovan grantomet M203, zkrcen o sedm centimetr a pipojen ke zbrani na montn litu Picatinny. Dky monosti snadn instalace je tento grantomet iroce pouvan v celm svt. + + + Grant RGD-5 + + + ton run grant s exploz s krtkm dosahem pti metr. Stalkei ho kvli relativn nzk cen asto pouvaj pi lovu mutant. + + + Kouov grant + + + Run kouov grant. Pouv se k vytven kouov clony. Po vren grantu trv deset sekund, ne se kouov clona vytvo. + + + N + + + AC-96/2 + + + AKM-74/2 + + + AKM-74/2U + + + Martha + + + Upilovan brokovnice + + + Upilovan loveck brokovnice dvojka, dky zkrcen hlavn je leh a kompaktnj ne pvodn zbra. Jedna z nejpopulrnjch zbran mezi bandity, s ohledem na monost snadnho ukryt zbran a extrmn efektivit pi boji zblzka. + + + Kora-919 + + + Steppe Eagle + + + Run vyroben pistole zaloen na typu Black Kite. Komponenty zbran jsou peliv upraven, take je pistole nezvykle pesn. + + + Black Kite + + + FT-200M + + + Fora-12 + + + GP37 + + + Gaussova puka + + + Tunder S14 + + + Tato ton puka kombinovan s grantometem, zaloen na srii AKM, byla vyvinuta pro jednotky rychlho nasazen. Hlavnm rozdlem oproti pvodnmu typu je pouit munice re 9x39, bullpup design a znan monosti konfigurace. Mezi vojenskmi stalkery je to velmi cenn zbra, pedevm kvli monosti zabt neptele v neprstelnch vestch nebo za improvizovanmi kryty i na vt vzdlenosti, tak dky skvl zastavovac sle. + + + Storm + + + Experimentln verze ton puky s grantometem, rusk modifikace standardnho Tunder S14. Zbra byla speciln navrena pro jednotky operujc v Zn. Zajmav je mimo jin i zvten zsobnk. + + + HPSS-1m + + + Modifikovan verze pistole pvodn vyrbn v prvn polovin dvactho stolet, kter je stejn spolehliv, siln a pesn jako originl. Pistole z tto srie si zaslou svou povst zbran patc mezi nejlep pistole dvactho stolet, v Zn je o n velk zjem. + + + IL 86 + + + TRs 301 + + + Viper 5 + + + Tento samopal si zskal ve svt popularitu dky sv spolehlivosti, snadnmu pouit a pesnosti. Za poslednch nkolik desetilet se Viper 5 dostal do slueb specilnch armdnch jednotek i policejnch sil na celm svt. Nen nijak pekvapiv, e se z ernho trhu dostal nakonec i do Zny. + + + Frasier + + + Prototyp samopalu zaloenho na vynikajcm modelu Viper 5. Uren pro pouit jako zbra dal generace v uzavench prostorch, m vysokou kadenci, pesnost a pouv siln stelivo. + + + PB-1s + + + Zulusova RP-74 + + + Tuto zbra dve vlastnil Zulus. Mezi modifikace pat zvten nbojov schrnka a vjimen spolehliv systm zvru. Modifikace znamenaly naven hmotnosti zbran, co pedchozmu majiteli vbec nevadilo. + + + PMm + + + Veleben PMm + + + Pradvn PMm, kterou obdrel Dgtarjev jako odmnu za spn proveden velmi nebezpench rozkaz a za odvahu a est prokzanou bhem vykonvn sluby". + + + Eliminator + + + Bulldog-6 + + + Tento revolverov grantomet pouv est zepedu nabjench hlavn s vvrtem, obdobnch jak maj podvsn grantomety. Buben se tak nabj zepedu. Pouv se k rychlmu potlaen neptelskch palebnch pozic a na otevenm prostranstv k toku na fixn cle, ppadn k likvidaci vjimen silnch monster. + + + RP-74 + + + Psem nabjen kulomet, penosn modifikace s komplexnm dvoustupovm nabjecm systmem. Navzdory sv tze a nzk pesnosti si v Zn nael sv obdivovatele. Vtinou se pouv v boji s neptelskou pesilou v konfliktech mezi frakcemi, nebo pro itn hnzd mutant. + + + RPG-7u + + + SIP-t M200 + + + Alpine + + + Uniktn model pistole SIP-t M200. st z omezen srie uren pro neidentifikovanou speciln jednotku. Tento model m zvenou kapacitu zsobnku, vysoce odolnou ocelovou hlave a neuviteln odoln polymerov zvr. + + + SGI-5k + + + Relativn nov ton puka, kter si v celm svt rychle nala sv obdivovatele, akoli jej design nen pli "trendy". Zbran tto srie pat mezi nejlep ve sv td, jsou znm svou spolehlivost, pesnost a snadnm pouvnm. Akoli se v Zn ned snadno sehnat, zkuen stalkei si ji za velk penze poizuj na objednvku. + + + Stelcova SGI-5k + + + vcarsk ton puka SGI-5k. Akoli jde o relativn nov model, je zjevn, e se o ni pedchoz majitel dobe staral. Zbra byla rozebrna a sloena znovu, po detailnm vyladn vech komponent, aby bylo dosaeno maximlnho vkonu a zven zastavovac sly. Do paby je vyezno psmeno S, a tak estnct malch zez. + + + SPSA-14 + + + SPSA-AUT + + + Samonabjec brokovnice SPSA-AUT se vyrb v dlnch Povinnosti. Tato zbra je uren pro boj s velkmi skupinami mutant. Vylepen nabjec systm zajiuje vysokou kadenci, kapacita zsobnku byla zvtena na 10 nboj. Pouv munici typu 12x70. + + + Carabineer + + + Armdn brokovnice navren speciln pro ton jednotky, zaloen na zklad SPSA-14. Stejn jako jej pedchdce umouje pln automatickou palbu, ale dky vyvenmu systmu pohlcovn nraz m lep zptn rz. + + + SVDm-2 + + + Armdn odstelovask puka, kter je na trhu u vce ne padest let, bhem kterch si vyslouila povst vjimen pesn zbran, navc snadno pouiteln. SVDm-2 bn pouv armda k zvten efektivnho dostelu jednotlivch oddl, ale stalkei si j cen kvli jej prraznosti, protoe jej stely dok provrtat tlustou ki mutant i armdn neprsteln vesty. + + + Lynx + + + Run sestaven verze odstelovask puky SVDm-2. Vzhledem se nijak neli, ale poskytuje stelci ideln kombinaci pesnosti a zastavovac sly. + + + SVUmk-2 + + + SVU2-A + + + Zkrcen odstelovac puka se zvenou kadenc, dal evolun stupe v srii zbran SVUmk-2. Tato zbra patila Maxovi, legendrnmu ochrnci Svobody. + + + Loveck brokovnice + + + Velmi bn loveck brokovnice nabz svmu majiteli lep ochranu ped mutanty ne normln pistole, to dky sv pesnosti a zastavovac sle. asto pouvan novky na okrajch Zny. + + + Neidentifikovan zbra + + + Neznm zbra, jej zkladn princip nen identifikovn. Vypad to, e je zbra vadn, stisknut spout nic nedl. + + + UDP Compact + + + Neochvjn spolehlivost a odolnost kombinovan s vynikajc pesnost, to jsou hlavn charakteristiky tto zbran. Mezi drobn nevhody pat jej nezvykl velikost, relativn vysoko postaven tit a masivn zvr, kvli ktermu se zbra patn skrv, nicmn jej vhody to nepev. Jde o velmi populrn zbra mezi veterny Zny. + + + March + + + Kompaktn velkokalibern pistole s krtkm pohybem zvru vyroben z lehkch materil. Dve patila oldkovi Ohaovi. Zejm jde o modifikaci pistole UDP Compact. + + + SA Avalanche + + + Vintar BC + + + Speciln vojensk odstelovask puka vyroben pro tich neodhaliteln odstelovn bhem vojenskch operac, ve kterch nesm dojt k odhalen stelce. Vintar BC pouv stelivo s vysokou prraznost a velkou zastavovac silou, navc je vybaven integrovanou optikou. Navzdory malmu zsobnky je stalkery vysoce cenn. + + + Tide + + + Zbra uren pro vojensk jednotky, zaloen na tlumen odstelovac puce. Zbra m vt zastavovac slu ne jej pedchdce Vintar BC na kor kadence. Majiteli m umoovat eliminaci neptel jednoho za druhm, ani by byla odhalena jeho pozice. + + + Walker P9m + + + Chaser 13 + + + Brokovnice populrn po celm svt dky sv asn spolehlivosti a rychlmu pebjen. V Zn si j cen pedevm lovci. Vechny sousti jsou pokryty antikorozivnm ntrem. + + + Predator + + + Upraven pumpovac brokovnice, kter dve patila Pastiki. Ten od sv zbran d pedevm schopnost zabt predtora jedinm vstelem. Tato filozofie je zaloena na ve, e bez ohledu na to, kolik lid zve zabilo, stle je to zve, a tak by nemlo trpt. + + + Podomcku vyroben baterie + + + SUSAT zamova "Mera" + + + Modern ton puka vyvinut jako nhrada za strnouc AKM 74/2. Hlavn zmnou je vysokorychlostn reim stelby po malch dvkch dvou kulek, kter doke s oslujc pesnost poslat dv stely do stejnho msta, a to na vzdlenost a 100 metr. V porovnn s jednoduchou palbou roste ance na zsah cle dvojnsobn. Zbra je tak nebezpenj, efektivnj a snze proraz zbroj. + + + Tato zbra, navren v roce 1974, pedznamenala pechod vojsk Varavsk smlouvy na munici s ni r a slab dopadovou energi. AKM-74/2, nstupce nejpopulrnj ton puky svta, m jet vt sovou brzdu ne jeho pedchdce, dky emu se podailo dle snit ji tak uchzejc zptn rz. V boji se to projevuje lep pesnost, zejmna pi stelb krtkmi dvkami. Jako dvj modely, i tento je velmi jednoduch a spolehliv. + + + Pestoe se tato zbra velikost, hmotnost i taktickm elem podob spe samopalm, bn se ad mezi ton puky - to proto, e m toton vnitn mechanismus s AKM 74/2. Tato puka vynik vysokou manipulovatelnost ve stsnnch prostorch a dobrou prraznost, k jejm nevhodm naopak pat krtk inn dostel (pestoe kulky ltaj relativn daleko) a sklony k pehvn. Navc jej odraen stely mvaj nebezpen sklon. + + + Vylepen varianta klasick automatick pistole, kter s hrd vztyenou bradou prola vemi hlavnmi ozbrojenmi konflikty 20. stolet a s nezmenenou jistotou vkroila i do novho tiscilet. Vyrb ji stovky, ne-li tisce zbrojovek po celm svt - jak ve standardnm, tak v modifikovanm proveden. Jej jedinou nevhodou je nevelik kapacita zsobnku, j alespo sten kompenzuje efektivn munice. + + + Doslova run kann - tk, neskladn a smrtc. Tato pistole byla navrena ke specializovanm elm, zejmna pro lov vysok zve a rovn steleck soute, pi nich se na vzdlenosti vt ne 50 metr stlelo do ocelovch ter. V Zn se vyskytuje jen vzcn, co meme pipsat jej cen, velikosti i vze. Kad z tchto faktor je v porovnn s jinmi pistolemi zhruba dvojnsobn. + + + Tato futuristicky vyhlejc puka vyuvajc uspodn bullpup je ve skutenosti sriov vyrbnm modulrnm systmem, kter se skld z puky, 40 mm grantometu a elektronickho modulu zen stelby. Pestoe vypad neohraban, je znan ergonomick, snadno se pouv a pyn se dobrmi technickmi parametry. + + + Ukrajinsk pistole pouvan pedevm policejnmi sbory. Poskytuje vy pesnost, lep ergonomiku a vt zsobnk ne PMM. Tyto pistole se dostvaj do Zny ve velkm potech, protoe na ernm trhu se prodvaj vadn kusy, nebo ran modely, kter trply technickmi nedotaenostmi. Pes to vechno si stalkei pistoli pochvaluj pro jej dobr bojov vlastnosti. + + + Tento nov prstek do rodiny zpadnch tonch puek, kter se znan li od ostatnch model sv srie, je postaven na automatick konstrukci s polootevenm zvrem. Svm systmem nabjen pomoc odbru plyn z hlavn a krtkmi psty pipomn spe americk ton puky. Dky uvedenm zmnm je stroj prvotdn ukzkou modern zbran - lehk, spolehliv a ergonomick. + + + Tato puka mla tolik nevhod, e vtina vyrobench kus ji byla modernizovna a pevaj jen vyazen kusy, kter pronikly na ern trh a skrz nj a do Zny. Jej hlavnmi pednostmi jsou zabudovan pukohled se tynsobnm zvtenm, vysok pesnost pi stelb jednou ranou a monost spolehlivch vylepen. Pokud se z n stl v dvkch, pesnost vrazn kles a vnitn mechanismy puky zanaj bt ponkud nespolehliv. + + + Nov krok ve vvoji tto slovutn rodiny zbran. Zmn se dokala pedevm horn st ocelov konstrukce, tj. hlave, plynov trubice a zvr. Dolo ke snen hmotnosti, naven ergonomiky a zlepen plynovho nabjen. Tato zbra je velmi pesn, nicmn do obtnch podmnek Zny se pli nehod kvli svmu zlozvyku nechat se vykolejit neistotami. + + + Tato pistole byla vyvinuta ve druh polovin 20. stolet na konstrukci PMM. Je urena specilnm jednotkm a przkumnkm. K hlavni je napevno zabudovn tlumi a mechanismus zvru je velmi krtk, co znamen, e hlavn pruina musela bt umstna do rukojeti. Pestoe je tato zbra ve vech ohledech zastaral, ve sprvnch rukou doke stle nadlat paseku. + + + Tato pamtka na ru Sovtskho svazu je nejbnj pistol v Zn, jeliko stle pat k tm nejlepm kompaktnm zbranm urenm pro sebeobranu. Je mal, vysoce spolehliv, snadno se pouv a mlokdy se porouch. M rovn adu nevhod, zejmna krtk dostel, nzkou pesnost stelby a slabou slu. V porovnn s modernmi pistolemi prohrv i na kolbiti vhy a velikosti zsobnku. + + + Bojov brokovnice revolverovho typu s hladkou hlavn, uren policejnm jednotkm toucch po extrmn palebn sle. Jejmi vhodami jsou zejmna velk zsobnk a vysok kadence, ty vak vce ne kompenzuj tkopdnost, nezanedbateln hmotnost a dlouh doba nabjen. V Zn je vzcn a nejastji se pouv pi itn uzavench prostor zamoench mutanty. + + + Tento grantomet ze 60. let si nael cestu i do armdnch skladi v Zn. Jde o bezzkluzovou zbra na jeden vstel, s hladkou, vzadu otevenou hlavn. M napevno pimontovan optick hled PGO-7 x2.7. Pestoe se j vtina stalker vyhb pro obrovitost a vhu, jej zvratn niiv sla si v Zn nala nejednoho obdivovatele. + + + Posledn masov vyrbn model celosvtov znm pistole. Vydobyl si dobrou povst za svou vtenou ergonomiku a pesnost. Pestoe m relativn mal zsobnk, pouv silnou munici a m mechanismus, kter funguje jako vcarsk hodinky. Najdou se i lid, podle nich je SIP-t M200 bezkonkurenn nejlep pistole kalibru .45ACP. Mezi stalkery a oldky m kadopdn mnoho fanouk. + + + Tato specializovan automatick brokovnice s hladkou hlavn byla navrena ve druh polovin 20. stolet. Disponuje reimy poloautomatick a pumpovac stelby. Jde o univerzln zbra pouvanou policejnmi sbory i specilnmi jednotkami. Vyznauje se spolehlivost a flexibilitou. I pes vysokou hmotnost, komplexn mechanismy a nezanedbatelnou cenu je po n v Zn poptvka, jeliko skvle pomh v boji s mutanty. + + + Tato modernizovan verze odstelovask puky SVDm-2 se na zakzku zsahovch jednotek dokala tzv. bullpupov kontrukce. Nejene se tm snila vha, ale navc narostla pesnost pi palb v rychlm sledu. Pesnost pi stelb jednotlivmi ranami na krtk i stedn vzdlenosti zstala v porovnn s pedchdcem prakticky nezmnna. Pesto si vak nov pednosti zskaly srdce nespotu stalket. + + + Tato ton puka, ve skutenosti modifikovan verze tlumen odstelovac puky Vintar VC, byla navrena pro pouit specilnmi jednotkami. Jejm hlavnm clem je efektivn a neprozrazen palba proti neptelm, kte pouvaj modern neprsteln vesty. Integrovan tlumi a nboj re 9x39 s podzvukovou kulkou snily zblesky a hluk vnikajc pi vstelu na naprost minimum. + + + Extrmn pesn, supermodern zbra znm pod oznaenm pedmt 62. Byla vyvinuta v tajnch laboratoch umstnch v Zn. Funguje na principu urychlovn projektil pomoc elektromagnetickho pole. Vsledkem je zvratn sla a prakticky dn zptn rz. Zbra je pohnna bateriemi, kter se vyrbj z lomk artefakt. + + + Pistole Marta si po celm svt vybudovala povst relativn spolehliv, by ponkud tkopdn zbran. Pouvaj ji armdy i vojensk sbory za ocenem a mimoto i jin vojensk a policejn organizace po celm svt. Stejn popularity se pistole t i v podsvt, tentokrt dky sv siln nbojnici a kapacit zsobnku. Marty, kter se dostanou do Zny, bvaj zpravidla opotebovan a zejm pochz z vyazench zsob. + + + Vynikajc zpadn pistole znm pro svou spolehlivost, vysokou kapacitu zsobnku a dobrou pesnost. Nezapomete zmnit i pikovou ergonomii. Jde o jednu z nejpouvanjch pistol Zny, pouvanou jak profky, tak i novky, kte nemaj hluboko do kapsy. + + + Baterie, kter erpaj energii z lomk artefaktu Blesk. Vyrobeny pomoc nejmodernj techniky. + + + Tyto nzkokapacitn baterie erpaj energii z lomk artefaktu Blesk. Nzkou kapacitu maj kvli improvizovanm vrobnm podmnkm a nedostatku specilnho vybaven. + + diff --git a/gamedata/configs/text/cze/st_items_weapons_upgrades.xml b/gamedata/configs/text/cze/st_items_weapons_upgrades.xml new file mode 100644 index 0000000..8be1b4d --- /dev/null +++ b/gamedata/configs/text/cze/st_items_weapons_upgrades.xml @@ -0,0 +1,2022 @@ + + + + Plochost + + + Kalibr + + + Zptn rz + + + Spolehlivost + + + Reflexivn optika 1.6x + + + Optika 4x + + + Tlumi + + + Podvsn systm + + + Hm. + + + Extern vvrty umouj instalaci tlumie. + + + Extern vvrty hlavn + + + Instalan lita pro optiku. + + + Optick lita + + + Instalan lita pro podvsn grantomet. + + + Podvsn lita + + + Nahrazuje standardn zsobnk vtm. + + + Zven kapacita zsobnku + + + Komplexn zmna mechanickch st zbran, kter umouje zmnit pvodn kalibr, nicmn cenou za modifikaci je snen spolehlivost. + + + Zmnit kalibr na 5x45 + + + Komplexn zmna mechanickch st zbran, kter umouje zmnit pvodn kalibr, nicmn cenou za modifikaci je snen spolehlivost. + + + Zmnit kalibr na 5x56 + + + Komplexn zmna mechanickch st zbran, kter umouje zmnit pvodn kalibr, nicmn cenou za modifikaci je snen spolehlivost. + + + Zmnit kalibr na 9x18 + + + Komplexn zmna mechanickch st zbran, kter umouje zmnit pvodn kalibr, nicmn cenou za modifikaci je snen spolehlivost. + + + Zmnit kalibr na 9x19 + + + Zven kapacity zsobnku, ani by byla zvtena dlka zbran + + + Zven kapacity zsobnku + + + Nbojov sknka s vt kapacitou vyroben z lehkch polykarbont, co trochu vyvauje nrst vhy. + + + Zven kapacita zsobnku + + + Dal titanov plty znan zvyuj odolnost osobn zbroje. + + + Dal hlinkov/titanov plty + + + Poslen plty, kter vydr dle, akoli nejsou tak odoln. + + + Kevlarov plty + + + Slitina hlinku a titanu umouje snen thy titanovch plt pouvanch pro vylepen osobnch zbroj. + + + Hlinkovo-titanov plty + + + Titan je normln pli tk, ne aby ho bylo mon pouvat v osobnch zbrojch, ale nkdy se pouv na exoskeletonech. + + + Pevn titanov komponenty + + + Nahrazen kovu uhlkovmi vlkny umouje snit hmotnost osobn zbroje, ani by se redukovala innost. + + + Nahrazen kovovch st uhlkovmi vlkny + + + Kevlar pat mezi nejbnji pouvan materily pro neprsteln vesty. + + + Kevlarov plty + + + Polykarbont doke zastavit kulku z pistole, akoli je lehk jako plast. + + + Polykarbontov plty + + + Keramick plty dlouho nevydr, ale jsou odolnj ne kevlar a nabz lep ochranu. + + + Instalace keramickch plt + + + Jednoduch ocelov plty zait do kabtu. + + + Ocelov plty + + + Keramick vnj vrstva doke odrazit prrazn kulky, kter nezashnou pancovn pod pmm hlem. Kulky pmch zsah se nrazem do vrstvy rozpadnou. + + + Vnj keramick vrstva + + + Dal intern pancovn pro ppad, e by byla proraena vnj ochrana. + + + Zdvojen ochrann vrstva + + + Zbroj s vnitnm pancovnm, kter rozptyluje nraz na vt oblasti. + + + Kompenzan element + + + Kostra doke zastavit stelu z pistole i v ppad, e je hlavn pancovn pokozen. + + + Obrnn kostra + + + Tenk vrstvy pancovn jsou peloeny nkolikrt pes sebe, aby se zvila odolnost zbroje. + + + Segmentovan ochrana + + + Akoli vce plt neznamen lep ochranu, zaruuj vt trvanlivost + + + Druh zlon vrstva + + + Mobiln plty chrn klouby ped zrannm. + + + Instalace mobilnch plt pro klouby + + + Leh hlinkov kostra nahrazuje ocelovou. + + + Leh hlinkov kostra + + + Zeslen vloky sniuj inky nraz stel na tlo. + + + Zeslen koen vloky + + + Dal keramick vrstvy se silikonovou amortizac. + + + Poslen keramick plty + + + Pouit lehch materil sniuje hmotnost zbroje. + + + Instalace lehch syntetickch a plastovch komponent + + + Akoli jsou titanov plty pli tk, ne aby je mohl nosit normln vojk, exoskeleton a jeho mocn servomotory thu snadno zvldnou. + + + Titanov pancovn + + + SBK-RKhZ.m.II - speciln radiochemick ochrann bojov oblek verze dv. + + + Neprodyn antiradian ochrann oblek SBK-RKhZ.m.II + + + Toto vylepen nron na prci i as nen pli populrn, akoli u mnoha lidem zachrnilo ivot. + + + Vit kroukov koile + + + upinov systm sloen z pekrvajcch se keramickch plt, kter znemouj, aby byl nositel zasaen na stejn msto. + + + Ochrann keramick upiny + + + Oblek poslen ltkou Sovereign se stv tm nepokoditeln mechanickm namhnm. + + + Nnos ltky Sovereign + + + Keramika znan oslabuje nrazy kulek zachycenm jejich kinetick energie. + + + Aplikace keramick vrstvy na plty + + + Poslen matrice s beryliem msto hlinku pat k nejspolehlivjm zpsobm, jak ochrnit vojky v boji. + + + Keramika znan oslabuje nrazy kulek zachycenm jejich kinetick energie. + + + Keramick vrstva na pltech + + + Uhlkov vlkna pat mezi nejodolnj materily, kter se pouvaj na konstrukci letadel. + + + Kombinace vrstev polymeru a keramickho povlaku + + + Kombinovan potaen plt + + + Domc technologie, kter pat mezi nejnovj vynlezy v oblasti osobn ochrany - pokryt povrchu umlm safrem. + + + Nastaven komponent sniuje pravdpodobnost zaseknut zbran. + + + Nastaven komponent + + + Plastick komponenty jsou te v md, staly se velmi populrnm vylepenm + + + Polymaterilov komponenty + + + Nzkoimpulsov palebn mechanismus zajiuje men zptn rz ne u starch verz. + + + Nzkoimpulsov palebn mechanismus + + + Dky pesnmu umstn stely v komoe ped vstelem kulka let rovnji a lpe zasahuje cl. + + + Instalace pozinho systmu stely + + + Upraven posuvn zvr sniuje zptn rz a zlepuje soustel. + + + Polovoln posuvn zvr + + + Instalace dalho plynovho vlce sniuje zt na zvr a umouje tak znan zven kadence. + + + Instalace dalho plynovho vlce + + + Run natahovan brokovnice je vybavena systmem nabjen zptnm rzem, take me stlet poloautomaticky. + + + Poloautomatick nabjen + + + Komponenty chrnn specilnm postikem sniuj pravdpodobnost selhn zbran. + + + Ochrann postik komponent + + + Pi vstelu otevou soustky hlave a umon kulce vylett, pak se pohybem pedpab zase uzave. + + + Systm uzavrn hlavn + + + Inerciln automatick systm umouje konverzi pumpovacho mechanismu brokovnic na samonabjec. + + + Instalace inercilnho automatickho systmu + + + Unifikovan modul zptnho rzu pat mezi nejlep technologick een problmu sniovn zptnho rzu. + + + Unifikovan modul zptnho rzu + + + Automatick usmrova kulek zvyuje pesnost zbran. + + + Instalace automatickho usmrovae + + + Na zvru se pohybuje aktivn protivha a sten kompenzuje zptn rz. + + + Pidn aktivn protivhy + + + Instalace kompenzanho systmu sniuje zptn rz zbran. + + + Instalace kompenzanho systmu + + + Nahrazen zvru zbran vhodnjm designem s vy kadenc. + + + Oteven zvr + + + Pi vstelu se protivha pohybuje proti smru pohybu zvrtu a umouje tak pohodlnj stelbu kulometem. + + + Instalace samoregulovan protivhy + + + Do zvru je pidna aktivn protivha, kter sniuje zptn rz. + + + Instalace mobiln protivhy + + + Plastick komponenty jsou te v md, staly se velmi populrnm vylepenm + + + Nrazuvzdorn polymerov komponenty pro pohybliv sti + + + Instalace specilnho mechanismu, kter chrn zbra ped zneitnm. + + + Automatick dvoupozin plynov regultor + + + Speciln soust neprodyn uzavr hlave a zvyuje tak tlak pi vstelu. + + + Instalace uzvru hlavn + + + Synchronizan soust zlepujc plochost letu stely. + + + Synchronizan systm + + + Soustka instalovan do zadn sti podavae sniuje rychlost zvru. Zlepuje efektivitu men stelby. + + + Mechanismus setrvanho zpodn + + + Speciln soust nainstalovan v zvru zmkuje pohyb zvru a sniuje zptn rz. + + + Instalace zvrov brzdy + + + Integrovan vylepen normln pouvan pro odstelovask puky, jeliko znan zvyuje hmotnost zbran. + + + Zamontovan amortizan systm zptnho rzu + + + Instalace mechanismu s pohyblivmi soustmi, kter zvyuj rychlost nabjen zbran. + + + Automatick nabjen + + + Vylepen pohyblivch st zbran, kter vyaduje nahrazen velkho mnostv soustek. Zlepuje pesnost. + + + Vyven protinrazov systm + + + Syntentick komponent umstn ped zvrem psob proti pohybu zvru a vylepuje pesnost stelby. + + + Brzdc systm zvru + + + Spojka napojen na hlave, kter pi pohybu hlavn automaticky otvr dal kompenzan otvory. + + + Instalace systmu chytr kompenzace + + + Modernizace umoujc hlad chod spout, co je dleit pro odstelovae. + + + Instalace regultoru spout + + + Tato soust umouje stelci lpe ctit pohyb pi vstelu a zvyuje tak pesnost zbran. + + + Instalace zptn vazby ve spouti + + + Pohybliv zvr asto pouvan v zpadnch zbranch sniuje zptn rz a zlepuje soustel. + + + Polovoln pohybliv zvr + + + Speciln mechanismus, kter pi vstelu pohlt st zptnho rzu, take je stelba pohodlnj. + + + Palebn amortizan systm + + + Jeliko jsou odstelovask puky nronj na drbu ne bn zbran, je mon vybavit je tpozinm regultorem plynoventilanho systmu. + + + Instalace automatickho tpozinho plynoventilanho systmu + + + Nanesen vrstva zabrauje niku energie a zvyuje slu udlenou kulce. + + + Povrchov prava pohyblivch soust + + + prava nabjecho mechanismu umouje veden automatick stelby z odstelovask puky. + + + Modifikace samonabjecho systmu + + + Zvrov brzda zpouje pohyb zvru a zvyuje pesnost stelby. + + + Instalace zvrov brzdy + + + Nahrazen hlavn prodlouenou variantou, kter umouje plo drhu letu kulek. + + + Del hlave + + + Eliminace expanzn komory a lep pedpab umouje zlepit pesnost stelby. + + + Instalace "plovouc" hlavn + + + Tato modifikace sniuje navu materilu hlavn pi dlouh stelb. + + + Instalace hlavn s chladiem + + + Nahrazen zastaral sousti modernj, kter lpe sniuje zptn rz + + + Optimalizovan kompenzan sov brzda + + + Instalace hlavn s dalmi vybrouenmi kanlky, zvyujc rychlost stely a pesnost zbran, nicmn nsledkem modifikace se siln zvyuje zptn rz. + + + Dal kanlky v hlavni + + + Tato hlave m zvit plochu inku pi boji zblzka a nen tedy vhodn pro veden pesn palby. Dky zjednoduenmu vvrtu hlavn je mon palba vy kadenc. + + + Instalace hlavn se zjednoduenou vrtanou st + + + Polygonln vvrt vtinou zvyuje pesnost + + + Instalace hlavn s polygonlnm vvrtem + + + Umouje snen tepelnho namhn hlavn a zven kadence. + + + Sinusoidn vvrt hlavn + + + Zvltn nhradn hlave pro zbran s dobrou balistickou charakteristikou, zvyuje jejich pesnost. + + + Vrtan odstelovask kanlky + + + Velmi odoln materily s men navou materilu, hlave vydr del pouvn. + + + Hlave z odolnch slitin + + + Ochrann povlak chrn vnitek hlavn ped mechanickm pokozenm. + + + Ochrann povlak vnitku hlavn + + + Syntetick povlak vnitku hlavn zlepuje soustel. + + + Syntetick povlak hlavn + + + Nahrazen hlavn prodlouenou variantou, kter umouje plo drhu letu kulek. + + + Del hlave + + + Pouit plynoventilanch kanlk v hlavni zabrauje usazovn neistot a tak sniuje zptn rz. + + + Plynoventilan kanly + + + Nahrazen hlavn prodlouenou variantou, kter umouje plo drhu letu kulek. + + + Prodlouen hlave + + + Napren vrstva zabrauje pehvn hlavn, maskuje materilov defekty a znan zvyuje ivotnost hlavn. + + + Aplikace ochrannho nnosu na vnitek hlavn + + + Systm vyven hlavn obsahuje nkolik pohyblivch pst, kter zvyuj stabilitu zbran. + + + Systm vyven hlavn + + + Vvrt v hlavni znemouje stelbu broky, ale zskan pesnost tuto nevhodu vyvauje. + + + Hlave s vvrtem + + + Zen hlavn polymaterily umouje zven tlaku v hlavni a zvyuje tak rychlost kulky. + + + Dynamick zetihlova hlavn + + + Cylindrick vvrt hlavn napomh zven kadence, ani by se ovlivnila pesnost. + + + Cylindrick vvrt hlavn + + + Pi vstelu se aktivn protivha automaticky pohybuje, aby vyrovnala st zptnho rzu. + + + Pidn protivhy k hlavni + + + Nahrazen bn hlavn del, kter poskytuje lep pesnost a soustel, ale sniuje kadenci. + + + Dlouh hlave + + + Perforace hlavn sniuje zptn rz, jeliko spaliny mohou snze unikat ven. + + + Drovan hlave + + + Zkrcen hlave zvyuje kadenci zbran, ani by trpla pmoarost a pesnost stelby. + + + Zkrcen hlave + + + Chromovn zvyuje ivotnost hlavn. + + + Chromovn vnitn plochy hlavn + + + Separtor absorbuje st zptnho rzu. + + + Pidn gumovho separtoru + + + Zjednoduen drkovn je uiten v boji zblzka, kdy je kadence dleitj ne pesnost. + + + Mont hlavn se zjednoduenm drkovnm + + + Mont hlavn s doplkovou zvitovou trubic zvyuje rychlost stely a pesnost zbran na kor silnjho zptnho rzu. + + + Doplkov zvitov trubice v hlavni + + + Snen hmotnosti hlavn m za nsledek znateln zmenen zptnho rzu. + + + Pemstn kompenztoru/tlumie ohn na rm zbran + + + Umouje snen tepelnho zaten hlavn a zvyuje kadenci, ani by dolo ke zhoren pmoarosti stelby. + + + Sinusiodov drkovn hlavn + + + Polygonln drkovn obvykle vede ke zven pesnosti odstelovacch puek. + + + Mont hlavn s polygonlnm drkovnm + + + Vzduchov posilova umouje vyut energie zptnho rzu k vytvoen vyho tlaku v hlavni, m dochz ke zven sov rychlosti. + + + Mont vzduchovho posilovae + + + Zazen s pdavnmi servomotory umouj zvit nosnost. + + + Pdavn servomotory + + + Vsledek vvoje technik Svobody, kte jako prvn pili s nhradou kovu karbonovmi vlkny za elem snen hmotnosti exoskeletu. + + + Nhrada kovovch st karbonovmi vlkny + + + Pancovn chrn kritick sti exoskeletu ped pokozenm pesnmi zsahy. + + + Pancovn pohonovch soustav + + + Systm pro usnadnn pohybu vyuv vratnch pruin a kloub, kter pro zven efektivity motor vyuvaj vlastn thu exoskeletu. + + + Systm pro usnadnn pohybu "Chodec" + + + Mont hydraulickch posilova je prava, kter dl exoskelet tet a tvrt generace. Umouje bhn v exoskeletu. + + + Mont hydraulickch posilova k pohonovm soustavm + + + Vloky z tkaniny chrn tk v ppad nrazu do zbroje. + + + Vnj vrstva z tkaniny + + + Silikonov vztuhy jsou efektivnj ne jejich gumov verze, nebo lpe absorbuj rzy. + + + Silikonov vztuhy + + + Tkanina, spony a vztuhy jsou kvli snen hmotnosti zbroje nahrazeny lehmi syntetickmi materily. + + + Leh syntetick a polymern materily + + + Pogumovn zabrauje pokozen vaziva v ppad deru do zbroje. + + + Pogumovan ochrann vrstva + + + Vnitn vrstva pome v ppad, e dojde k poruen vnj vrstvy. + + + Vcevrstv polykarbonov, silikonov a karbonov vloky pro ppad proniknut cizho tlesa zbroj. + + + Ochrann polymern vloky + + + Vzduchotsn oblek Svobody uren k hledn artefakt v oblastech anomli. + + + Ochrann oblek pro hledn anomli + + + Vzduchotsn vrstva ze syntetickho materilu pro ppad pokozen vnj vrstvy. + + + Syntetick vrstva + + + Nkolik ergonomickch prav vyuvajcch gumov konstrukce, kter umouj zachovn pohyblivosti i pi noen mohutn zbroje. + + + Gumov oblek + + + Konstantan poskytuje elektrickou izolaci a m velice vysok bod taven. + + + Konstantanov termoizolan vloky + + + Olovo poskytuje spolehlivou ochranu ped radiac, nebo absorbuje vechny jej druhy. + + + Pidn olova do obleku + + + Zkladn ochrana pokoky ped detm a ravinami. + + + Pltn oblek + + + Tkanina ze ruvzdornho materilu je oblben mezi stalkery ptrajcmi po ohnivch artefaktech. + + + Tkanina ze ruvzdornho materilu + + + Magnesiov vloky poskytuj ochranu ped tepelnm zrannm. + + + Magnesiov vloky + + + Dokonce i jednoduch vnitn vrstva z plastu me chrnit ped chemikliemi a elektinou. + + + Vzduchotsn vnitn vrstva z plastu + + + Tkanina, spony a vztuhy jsou nahrazeny lehmi syntetickmi materily, dky kterm je zbroj leh. + + + Nhrada tkaniny syntetickmi materily + + + Plexisklo absorbuje dva druhy zen a je leh ne olovo. + + + Vnitn vrstva z plexiskla pro ochranu ped zenm + + + Spolehliv ochrana ped chemikliemi a elektinou + + + Vzduchotsn vnitn vrstva z prunho plastu + + + Tenk vrstva konstantanu poskytuje izolaci proti elektin. + + + Vnitn izolan vrstva s pms konstantanu + + + Sklenn vlkno se vyuv v oblecch pouvanch tmy urenmi pro boj s prodnmi katastrofami. + + + Tepeln ochrana ze sklennho vlkna + + + Impregnovan tkanina m za kol chrnit ped otravou chemikliemi. + + + Odv z impregnovan tkaniny + + + Guma poskytuje zkladn ochranu pi pmm vystaven radiaci + + + Odv z pogumovan tkaniny + + + Pouvn v oblecch pro zven ivotnosti + + + Vysoce odoln ochrann rm + + + Nikl je pro vyuit ve vlokch zbroje dostaten ruvzdorn + + + ruvzdorn oblek s niklovmi vlokami + + + Slitina niklu a hoku se pouv v oblecch chrncch ped razy elektrickm okem. + + + Izolan oblek s manganovou vlokou + + + Vzduchotsn oblek s antikorozn vrstvou a kevlarovm pltovnm. + + + Obrnn oblek "Druh ke + + + Oblek z nejmodernjch polymer, dve uvanch vzkumnm institutem v Kyjev za elem vvoje obleku Ekolog s dutinami naplnnmi bizmutem. + + + Oblek Ekolog z polymeru s bizmutovmi vlokami + + + Olovn sovina poskytuje neproniknutelnou ochranu ped radiac a chemikliemi bez omezen pohyblivosti. + + + Ochrann oblek z plexiskla s ohebnou olovnou sovinou + + + Vsledek tuzemskho vvoje po katastrof v ernobylu. Vyuv se v exoskeletech proti selhn elektroniky. + + + Evakuan oblek s olovnmi vlokami + + + Mont tonho zamovae pro boj zblzka + + + Reflexn midlo 1.6x + + + Mont optickho zamovae pro boj na stedn a velk vzdlenosti + + + Optick zamova 4.0x + + + Mont optickho zamovae pro boj na velk vzdlenosti + + + Optick zamova 5.0x + + + Mont optickho zamovae pro boj na velk vzdlenosti + + + Optick zamova 6.0x + + + prava tonch zbran s reflexnm midlem spovajc ve zvten kontrastu midla ve lut oblasti svtelnho spektra. Dleit pi boji ve patnch svtelnch podmnkch a zatemnlch budovch. + + + Zven kontrastu midla + + + Termohled uivateli umouje detekovat a identifikovat zdroje tepelnho zen. + + + Optick rozpoznvn cl + + + Zazen pro non vidn od svho vzniku zachrnilo mnoho sniper. + + + Mont zazen pro non vidn + + + Modifikace umouje snadnou pravu midla podle palebn vzdlenosti. + + + Nastaviteln dlkomr midla + + + Pneumatick paba umouje zmenit zptn rz pi dvkov stelb + + + Pneumatick paba + + + Penosn bedern podpra znan sniuje vliv zptnho rzu na tlo. + + + Mont bedern podpry + + + Modernj paba, kter bere v vahu specifickou fyziologii lidskho tla. + + + Ergonomick paba + + + Pi vyplen stely se st prachovho plynu odvd z hlavn do dutiny za zvrem, kter se tak pi pohybu zptky plynule zastav. + + + Mont zsobnku plynu k zvrnmu mechanismu + + + sten prodlouen tla zvru do paby zv pmoarost stelby za cenu vtho zptnho rzu. + + + Prodlouen tla zvru do paby + + + Mont penosnho dlu do paby, kter pi stelb psob proti rzu. + + + Penosn protizva + + + Vt podpra umouje pesnj stelbu. + + + Zvten podpra + + + Zeslen pruinov tlumi rz sniuje efekt zptnho rzu pi stelb ze zbran. + + + Integrovan pruinov tlumi rz + + + Jmka plynu ze zvrn komory umstn v pab zbran znan sniuje intenzitu zptnho rzu. + + + Pdavn zsobnk plynu zvrn komory + + + Pogumovan soust sniujc intenzitu zptnho rzu se asto vyuv v sriov vyrbnch pabch pro odstelovac puky vtch kalibr. + + + Zeslen paba + + + Nastaviteln paba s lcn podlokou je uiten pi stelb z pohodlnch i nepohodlnch pozic. + + + Nastaviteln paba s lcn podlokou + + + Tlumi pro zbran velkho kalibru siln tlumc zptn rzy uloen v pab. + + + Hydraulick tlumi rz v pab + + + Aktivn filtry dokou odolat i agresivnm chemiklim. + + + Aktivn filtry + + + Zapnut ps pi testech poskytoval stenou ochranu ped pmmi inky ps-zen. + + + Ochrann ps z dvojice ocelovch mek proti ps-zen + + + Maska pro pohyb v kontaminovanm prosted nebo v podmnkch kritickch teplot, a u pli vysokch i nzkch. + + + Pouit stnnho plt. + + + Pouit stnnho plt. + + + Filtr s vyztuenm antikoroznm pltm s pdavnou vrstvou odpuzujc jedy. + + + Filtr pro prci v zamoench prostedch + + + Maska z plexiskla poskytuje stenou ochranu ped zenm. + + + Maska z plexiskla + + + Maska z plexiskla poskytuje stenou ochranu ped zenm. + + + Dchac maska z plexiskla + + + Dchac pstroj pro pln zamezen pstupu jed. + + + Impregnovan dchac maska + + + Mka z berylia a hlinku poskytuje skvlou ochranu bez vraznho zven hmotnosti pilby. + + + Plechy z berylia a hlinku + + + Mka z berylia a titanu poskytuje efektivnj ochranu bez vraznho zven hmotnosti. + + + Plechy z berylia a titanu + + + Vylepen filtry udruj stlou rove dodvky kyslku bez ohledu na stupe zamoen okol. + + + Mont vylepench filtr pro vdeckou prci + + + Hi-tech ochrana proti ps-zen, kterou dajn vynalezl vdec jmnem Sacharov. + + + Mont psu Psi-Dome + + + Ochrann slitinov rm proti pokozen teplem a elektrickm proudem. + + + Konstantanov eln zbroj "Boulivk" + + + Dodaten zbroj pro zven ivotnosti pilby + + + Vyztuen tlo pilby + + + Filtr s dodatenm istcm povlakem a systmem pro odpuzovn jed + + + Vylepen dchac pstroj pro nron podmnky + + + Mont zazen pro non vidn pro operace v noci nebo za zhorench svtelnch podmnek + + + Zazen pro non vidn prvn generace + + + Systm schopn pejt na uzaven dchac okruh v ppad kritickho zamoen vzduchu radioaktivnmi nebo chemickmi sticemi + + + Systm pro pedchzen radioaktivnm a chemickm hrozbm + + + istc a dchac maska "Pra" + + + Mont pokroilejho zazen pro non vidn pro operace v naprost tm + + + Zazen pro non vidn druh generace + + + Termohled umouje najt a rozpoznat zdroje tepelnho zen. + + + Automatick optick rozpoznvn cl + + + Vdeck vlnov zazen vytvoen za elem prce v anomlnch oblastech se zenm ps. + + + Ps-stimultor "Vtec" + + + Mont pokroilejho zazen pro non vidn pro operace v naprost tm + + + Zazen pro non vidn tet generace + + + Ionizovan stice vzduchu se dky elektin pohybuj mezi elektrodami systmu opanm smrem ne elektrony, m vznik iontov vtr. + + + Chladc systm "Iontov vtr" + + + Infraerven skener umouje odhalit blzk lidsk bytosti. + + + Infraerven skener + + + SPB VPZ.v.IV, psychologick bezpenostn vlnov systm na ochranu ped psionickm zenm, tvrt verze. + + + Bojov systm SPB VPZ.v.IV + + + Vyztuen pruina zvyuje rychlost stely. + + + Vyztuen pruina dernku + + + Mont vztuh na pohybliv sti mechanismu zpsobuje, e pi stelb se hlave mn odchyluje od cle. + + + Zpevnn vratnho mechanismu + + + Mont dal pruiny s opanm vinutm pro zmenen zptnho rzu bez ztrty pmoarosti stelby. + + + Pdavn vratn pruina + + + Ochrann pl᚝ zvyuje spolehlivost a pedevm zajiuje vzduchotsnost vratnho mechanismu, co sniuje energetick ztrty. + + + Ochrann pl᚝ vratnho mechanismu + + + Titanov tye jsou schopny snst mnohem vy kadenci ne klasick tye. + + + Titanov tye vratnho mechanismu + + + Uml dl pipevnn k hlavni zajiuje, e se soustky pohybuj poadovanm zpsobem, co zvyuje pesnost. + + + Pidn rovnovnho elementu + + + Vyztuen objmky umouje pouit vyho tlaku v hlavni, m se zvyuje rychlost stely. + + + Vyztuen objmky vratnho mechanismu + + + Zvornk, kter je otevrn plyny a zavrn vratnm mechanismem, umouje, aby byla st energie plynu vyuita k obsluze vratnho mechanismu. + + + Mont rozvodnho zvornku + + + Nhrada vratnho mechanismu mnohem vkonnj verz sestvajc z dvou vodcch ty a vratnch pruin. Zvyuje kadenci zbran. + + + Pechod na dvoutyov systm + + + Speciln nikov kanlky pro plyn kolem bubnovho zsobnku sniuj zptn rz zbran. + + + Vyuit energie plynu + + + Pidn ikmch drek do bubnovho zsobnku zrychluje oten mechanismu vyuvajcho energie plynu. + + + Pidn ikmch drek do bubnovho zsobnku + + + Vhodou tto standardn evropsk modifikace je snen hmotnost bez omezen spolehlivosti. + + + Paba z nrazuvzdornho polymeru + + + Dky vysoce odolnmu pouzdru zvru vydr ton puky i kadodenn pouvn v nronch podmnkch boje. + + + Vysoce odoln slitinov zsobnk + + + Pidn hmotnosti na pedn stranu pouzdra zvru pomh redukovat zptn rz. + + + Pidn protizva na ocelov tlo + + + Instalace chladcho plt pomh kompenzovat teplo vznikajc dky zven kadenci zbran. + + + Pdavn chladc pl᚝ + + + Pohodlnj tvar rukojeti umouje lep dren zbran v ppad stelby na pohybujc se cl. + + + Ergonomick tvar zsobnku + + + Modifikace vyuvan pouze u zbran s bull-pup konfigurac usnadujc drbu zbran + + + Modulov pouzdro zvru + + + Tento postik chrn hlave ped pehtm, odstrauje vrobn vady a vrazn zvyuje ivotnost hlavn. + + + Postik pouzdra zvru vyhlazujc rhy a nerovnosti + + + V ikm rukojeti je zabudovn lehk penosn element, kter zbra stabilizuje pi stelb vytvoenm sly psobc proti zptnmu rzu. + + + ikm rukoje + + + Dutina v rukojeti m za nsledek snen hmotnosti zbran. + + + Dut rukoje + + + Odlehen verze standardn paby + + + Leh paba + + + Pouit lehch polymernch materil umouje snen hmotnosti zbran. + + + Nrazuvzdorn paba z polymer + + + Pidn hmoty ke zbrani za elem zmenen zptnho rzu + + + Pidn protizva + + + Modernj a pohodlnj rukoje usnaduje dren zbran. + + + Ergonomick rukoje + + + Tlumen rukoje sniuje intenzitu zptnho rzu. + + + Tlumen rukoje + + + Modernj a pohodlnj paba usnaduje dren zbran. + + + Ergonomick paba + + + Speciln ntr chrn zbra ped inky kodlivch ltek. + + + Ochrann ntr + + + Rtuov pohlcova rz se nachz v pab zbran a sten sniuje zptn rz pi stelb. + + + Rtuov pohlcova rz + + + Voln pohybliv protirzov zva, kter se pi vstelu pohybuje smrem od zvru a absorbuje st zptnho rzu. + + + Pidn protirzovho zva + + + Zmna materilu sniuje opoteben hlavn vlivem nekonstantnho rozloen teploty bhem vstelu, dky emu je mon zvit kadenci zbran. + + + Vysoce odoln ruvzdorn slitiny + + + Dleit prava, kter bhem stelby chrn zbra ped vlivy teploty vzduchu. + + + Pidn termoregulanho plt + + + Technologick vylepen vyadujc extrmn zrunost, aby na hlavni nedochzelo k tvorb pehtch mst. + + + Vnj ebrovn hlavn + + + Nhrada hlavn modernj verz umouje vrazn zven pesnosti. + + + Zmna geometrie hlavn + + + Drah tlo zbran, kter nco vydr + + + Titanov tlo + + + Toto tlo je spolehlivj ne tlo z kompozitnch materil. + + + Pevn ocelov tlo + + + Technick nhrada tla pistole lehm materilem nijak neovlivuje spolehlivost zbran. + + + Tlo pistole z polymer + + + Modernj a pohodlnj rukoje usnaduje dren zbran. + + + Ergonomick rukoje + + + Tlumen rukoje sniuje intenzitu zptnho rzu. + + + Tlumen rukoje + + + Ochrann vyztuen by mlo ochrnit zbra ped neistotami a pokozenm nrazy. + + + Ochrann vyztuen tla + + + Dky zmnm v zadn sti m rukoje ergonomitj tvar. + + + Vmna rukojeti s rovnou zadn stranou + + + Monost volby vhodn dlky rukojeti zvyuje jej ergonomii. + + + Nastaviteln rukoje + + + Tato prava je mon jen v ppad, e do rukojeti byla vmontovna zptn pruina. + + + Mont tlumicho elementu vratn pruiny + + + Monost vbru vhodnho krytu zvyuje ergonomii rukojeti. + + + Tvarov upraven rukoje s vymnitelnmi kryty + + + Ureno pro asto pouvan zbran, chrn pl᚝ ped opotebenm. + + + Mont drovanho ocelovho plt + + + Technologicky sloitj komponent s vraznjm tlumenm zptnch rz ne u bnch automatickch zbran. + + + Efektivn sov brzda + + + Modernj hlave vhodn pro odstelovac puky uren pro velmi velk vzdlenosti. + + + Mont tk hlavn s polygonlnm drkovnm + + + Podln kovn hlavn ji chrn ped pehtm a zanesenm neistotami. + + + Podln kovn hlavn + + + Integrovan tlumi a tlumi ohn, nutn pro tich boj + + + Mont integrovanho tlumie + + + Sinusoidn drkovn komory hlavn se obvykle pouv v tonch zbranch pro zven kadence. + + + Sinusoidn drkovn komory hlavn + + + Vstikova generace A, vyvinut vzkumnm institutem v Kyjev, do krevnho obhu pravideln vstikuje mal mnostv adrenalinu, co me bt nebezpen, ale v ppad nouze me zachrnit ivot. + + + Vstikova adrenalinu + + + Systm pro odstrann kapalin s jedy z isticho filtru + + + Systm pro odstrann jed + + + Vsledek vvoje vdeck skupiny ist nebe. Vlnov vysla malch rozmr pipevnn na zdech, kter pi stlm noen efektivn zvyuje rychlost sren krve. + + + Hemostimultor "Paprsek" + + + Systm, kter napj vnj povrch obleku elektinou a odpuzuje tak radioaktivn a chemick stice. + + + Integrovan protisticov systm + + + Vstikova generace B, kter do krevnho obhu dodv koagulan prostedek v ppad, e znateln poklesne krevn tlak. + + + Vstikova hemoglobinu "Hydra" + + + Tento systm pedchz vyerpn organismu tm, e neustle udruje optimln teplotu tla. + + + Mont termoregulanho systmu + + + Tento vlnov vysla je pipevnn k hrudi a v ppad stlho pouvn znateln zvyuje rychlost hojen ran, slu imunnho systmu a prh bolesti. + + + Biostimultor "Slunce" + + + Vdeck vlnov zazen vyvinut pro prci v oblastech anomli s ps-zenm. + + + Ps-stimultor "Oracle" + + + Vstikova generace C dodv do krevnho obhu neuritou bojovou sms, kter posiluje regeneraci a tlum bolest. + + + Regeneran systm "Fnix" + + + Integrovan systm, kter monitoruje zdravotn stav nositele a v ppad poteby mu dodv vitamny, adrenalin a anabolick ltky. + + + Mont podprnho ivotnho systmu + + + Tento vlnov vysla je pipevnn ke krku a pestoe jsou je jeho mechanismus a princip innosti neznm, m velice uklidujc inky. + + + Neurostimultor "Lesk" + + + kolem kompenztoru dernku je pohltit st zptnho rzu, m se zlep pesnost dvkov stelby. + + + Kompenztor dernku + + + Jedna z nejjednoduch a nejoblbenjch modifikac, kter umouje snen odporu spout. Jednoduch a uiten. + + + Mkk spou + + + Speciln volba komponent rznch materil dle modelu zbran. Tyto komponenty nejsou nejlevnj, ale zvyuj ivotnost zbran. + + + Kompozitov sti spouovho mechanismu + + + Umouje zvit kadenci na kor pesnosti a spolehlivosti. + + + Urychlova spout + + + Odstrann pruiny dovoluje, aby byla prvn stela vyplena o pl vteiny dve. Nen to mnoho, pesto to me zachrnit ivot. + + + Bezpruinov samospou + + + Ochrann pl᚝ znemouje selhn zbran vlivem poruchy spoutcho mechanismu. + + + Ochrann pl᚝ spoutcho mechanismu + + + Bezepov upevnn umouje rychlej doplovn nbojov komory, co vrazn zvyuje kadenci. + + + Bezepov upevnn spoutcho mechanismu + + + V bezrzovm systmu dernk do nboje neude, ale pronik jm, m je cel prbh vstelu mk. + + + Mont systmu bezrzovho spoutcho mechanismu + + + Prvnm stlaenm spout dojde k odjitn zbran, pi dalch stlaench ji dochz k vstelm. + + + Dvojit spou + + + Jedna z nejjednoduch a nejoblbenjch modifikac, kter umouje snen odporu spout. Jednoduch a uiten. + + + Mkk spou + + + sten odjitn umouje zvit pesnost stelby. + + + Spoutc mechanismus s stenm odjitnm + + + Od prvn a po posledn stelu je poteba vyvinout stejn tlak na spou, co se odr ve snadnj manipulaci se zbran. + + + Bezpen spou + + + Modern prava, kter pedchz oddlen zvrov sti od tla zbran. + + + Zvten hlavn ep spout + + + Modulov spouov mechanismus umouje snadnj drbu a vmnu jednotlivch st, navc se zbra lpe pouv. + + + Modulov spouov mechanismus + + + Odjiovac element znan sniuje slu potebnou na stlaen spout, co zvyuje pesnost stelby. + + + Mont odjiovacho elementu + + + Vsledek nejnovjho technologickho vvoje, dky ktermu lze jednoduchou pravou doclit zmny reimu spoutcho mechanismu. Jde o dal krok k lep ergonomii a snadnmu pizpsoben zbran. + + + Reim dvojit stelby + + + Jakmile je vyplena prvn stela, k vyplen dalch stel je nutn jen polovin drha pohybu spout. + + + Spoutc mechanismus s krtkou drhou + + + Zazen s pdavnmi servomotory umouje zvit nosnost. + + + Pdavn servomotory + + + Systm obsahuje ltky proti tetanu, zntm a streptokokm. + + + Integrovan systm "Poln lka" + + + Vtrac systm obleku s ochrannm filtrem pro prci v zamoench oblastech. + + + Vnitn termoregulan systm + + + Ergonomick vylepen: speciln chyty pipevnn k obleku zpsobuj, e se nesen nklad zd leh. + + + Vesta pro rozloen zte + + + Ndr s kyslkem je nutn pro prci v oblastech se vzduchem kontaminovanm chemikliemi nebo radioaktivnmi sticemi. + + + Mont ndrky s kyslkem + + + Mont pdavn schrnky na artefakt + + + Pdavn pepravn box na artefakty + + + Systm chyt umouje rovnomrn rozloen zte na cel tlo. + + + Systm chyt pro rozloen zte + + + Zdov systm ulevuje ramenm, nebo rozkld zt na cel tlo a maximln nosnost je vy + + + Zdov systm pro rozloen zte + + + Systm obsahujc dezinfekn, protitetanov a povzbuzujc ltky. Vyroben na kolen, pesto bezpen. + + + Zabudovan ochrana + + + Systm obsahuje speciln mku nabitou nbojem vyrovnvajcm energii anomlie, co sniuje jej nebezpenost. + + + Systm proti psoben statick elektiny "Rejnok" + + + Impregnovan vnitn vrstva by mla zabrnit otrav chemikliemi. + + + Impregnovan vnitn vrstva pro ochranu ped chemikliemi + + + Experimentln model systmu urenho pro dlkov bh, kter vzhledem ke sv vysok cen a nejistmu pouit nen mimo Znu pouvn. + + + Integrovan systm "Atlet" + + + Tento systm slou k odstraovn jed a usazenin z dutin respirtor. + + + Systm pro odstraovn jed + + + Mont pdavn schrnky na artefakt + + + Pdavn schrnka na artefakty se dvma kapsami + + + Vojensk podprn systm integrovan do obleku, vyuvan pedevm jednotkami Specnaz. Zahrnuje systmy pro vstikovn adrenalinu a sren krve. + + + Poln podprn systm "Varyag + + + V tomto prototypu vojenskho podprnho systmu konstrukti ped nebezpenm vstikovnm adrenalinu upednostnili zahrnut hojivch ltek do systmu na sren krve. + + + Poln podprn systm "Skif + + + Tato relativn nkladn modifikace je bn v novch generacch zbran. + + + Mont pevnho zvru + + + Vyztuen zvrn oblasti zbran brn nechtnmu rozptlen energie pi stelb, co zlepuje pmoarost stely. + + + Vyztuen zvrn oblasti umlmi vlokami + + + Akoliv tomu nzev nenapovd, prava se tk zvru, nebo prv on mus vydret nsledky zven kadence. + + + Zrychlen samospou + + + Plynov ventil s elementem, kter se pohybuje stejnou rychlost, pejm st zptnho rzu. + + + Mont plynovho ventilu s pohyblivm elementem + + + Druh pst pohybuje protizvam, m dochz ke kompenzaci pohybovho momentu zvrnho mechanismu. + + + Mont pdavnho plynovho pstu + + + Ochrann pl᚝ zvyuje spolehlivost a pedevm zajiuje vzduchotsnost, kter brn nadmrnm ztrtm energie. + + + Ochrann pl᚝ oblasti zvru + + + elem ikmho drkovn v pouzdru zvru je snen ten a zachycen malch steek, kter by jinak mohly ucpat oblast zvru. + + + Pidn podlnho drkovn + + + Zmenen prmru plynov komory pomoc syntetickch element znan zvyuje rychlost stely. + + + zen toku energie plynu + + + Pi svm nvratu do poten polohy zvr usmruje proud vzduchu do komory hlavn, m ji chlad. + + + Nucen chlazen + + + Zvr zbran se pohybuje podl hlavn a brn tak pohybu st hornm smrem. + + + Mont klouzavho zvru + + + Mont plynovho pstu brn plynm v roziovn do oblasti zvru, co vrazn zvyuje istotu zbran. + + + Mont plynovho pstu + + + Tento systm v oblasti zvru jm st plyn, co vede ke zlepen pohybu zvru. + + + Systm pro jmn plynov energie + + + Toto nahrazen mechanismu vzduchovho pstu je spe optimalizac, ne vylepenm. Vsledkem je znateln zven kadence zbran. + + + Plynov pst s krtkm chodem + + + Posuvn zvrn systm, asto pouvan v modernch zbranch, zmenuje zptn rz a zvyuje pesnost. + + + Zmna na posuvn systm s uvolnnm zvrem + + + Absorbc sti tepeln energie tato komponenta sniuj teplotn zmny bhem stelby. + + + Komponenta pohlcujc teplo + + + Del chod plynovho pstu mrn zvtuje dlku zbran, ale razantn zvyuje pmoarost stelby. + + + Plynov pst s dlouhm chodem + + + Tlumi pohyblivch st zptn rz rovnomrn po tle zbran a dky tomu jsou jeho inky men. + + + Mont tlumie pohyblivch st + + + Symetrick nucen chlazen hlavn vyuitm innosti vytahovae brn peht zbran. + + + Systm symetrickho nucenho chlazen + + + Umouje zvit kadenci pomoc pdavnho zptnho rzu bez peten ostatnch st zbran. + + + Pohybliv zvr + + + Dky vylepenmu penosu impulsu na kulku je trajektorie stely pmj. + + + Systm uzaven hlavn v oblasti zvru + + + Zmenuje intenzitu zptnho rzu zpomalenm pohybu zvru. + + + Systm pro zpomalen zptnho chodu zvru + + + Pl᚝ chrn zbra ped pedasnm opotebenm. + + + Ochrann pl᚝ zvrnho mechanismu + + + Dky lepmu penosu hybnosti na kulku se zvyuje pmoarost stely. + + + Systm naklpn hlavn + + + T잚 uzaven zvr chrn zvrn mechanismus pistole ped selhnm. + + + Vyztuen a pln uzaven zvr + + + Mal doraz, kter absorbuje st zptnho rzu + + + Polymerov doraz + + + Mont ocelovch vloek pomh snit intenzitu zptnho rzu. + + + Mont vloek se spirlovitm rhovnm + + + Zvtenm chodu zvru a pimenm vyztuenm vratnho mechanismu lze zlepit pmoarost stelby. + + + Zvten dlka chodu zvru + + + Krtk chod znateln zvyuje kadenci zbran, ani by dolo ke zhoren pmoarosti. + + + Mont zvrnho systmu s krtkm chodem + + + Del chod zvru stele dodv vy hybnou energii. + + + Mont zvrnho systmu s dlouhm chodem + + + Toto nahrazen mechanismu vzduchovho pstu je spe optimalizac, ne vylepenm. Vsledkem je znateln zven kadence zbran. + + + Mont systmu pro vyuit energie krtkho chodu + + + Mont tohoto modulu znan zvyuje pesnost stelby, ani by trpla rychlost stely. + + + Kombinovan vratn systm se dvma pruinami + + + Pidn kompenzanch otvor znateln sniuje intenzitu zptnho rzu. + + + Integrovan kompenztor pohybu hlavn + + + Modernizace automatickch komponent pistole vhodn pro automatick reim stelby. + + + Pln automatick reim stelby + + + Vylepen automatickch komponent pistole vhodn pro trann dvkov reim. + + + Trann dvkov reim + + + Cena + + + Nelze namontovat + + + Namontovno + + + Opravdu chce provst tuto modifikaci? + + + Systm rozpoznvn cl + + + Systm rozpoznvn cl + + + x5 optick zamova + + + x6 optick zamova + + + Infraerven skener + + + Hmotnost zbroje + + + Non vidn 2. generace + + + Non vidn 3. generace + + + Drk opt. zamovae + + + Integrovan tlumi + + + Podven grantomet + + + Lba zrann + + + Obnova zdrav + + + Noktovizor 1. generace + + + Nastaviteln midla + + + Vysoce kontrastn midlo + + + Servoposilovae + + + Odolnost obleku + + + Nikdo podn nev, jak tato zbra funguje. Dokud o n nezjist vc, nebude mon ji opravit. + + + Tuto modifikaci nedoke technik provst + + + Tato soustka je ji modifikovan + + + Nem dost penz + + + Nepouv munici + + + Reim automatick palby + + + Reim dvky t vstel + + + Poet kontejner + + + technik potebuje vodku + + + technik potebuje nad na zkladn prci + + + technik potebuje nad na jemnou prci + + + technik potebuje nad na kalibraci + + + technik potebuje podrobnj informace + + + vyaduje pedchoz modifikace + + + Ochrann ntr Psovec na bzi safrovch krystalk + + + Vyztuen titanov a beryliov struktura + + + Potah z uhlkovch vlken + + + Pogumovan podklad + + diff --git a/gamedata/configs/text/cze/st_land_names.xml b/gamedata/configs/text/cze/st_land_names.xml new file mode 100644 index 0000000..eb1ba4c --- /dev/null +++ b/gamedata/configs/text/cze/st_land_names.xml @@ -0,0 +1,171 @@ + + + + Anomlie Pat + + + Anomlie elezn les + + + Pila + + + Vyslac stanice Krug + + + Tovrna na zpracovn odpadu + + + Anomlie Cirkus + + + Loveck stanice + + + Skadovsk + + + Vyplen statek + + + Anomlie Hok + + + Baina + + + Izumrodnoj + + + evenko + + + Rpac stanice + + + Jeby v docch + + + Anomlie v Dubovicch + + + erpac stanice + + + Star lun + + + Anomlie Jizva + + + Most Peobenskho + + + Jin ploina + + + Dlny rozvodny + + + Anomlie Popelit + + + Chladic v + + + Rozvodna + + + Anomlie Blata + + + Cementrna + + + Kopai + + + Janov + + + Lom + + + Bunkr vdc + + + Komplex Volkhov AA + + + Jedovat lesk + + + Parkovit + + + Kontroln stanovit + + + Anomlie Asfalt + + + Vchodn tunel + + + Skladit kontejner + + + Ventilan zazen + + + Heliport + + + Anomlie Betonov lze + + + Tovrna Jupiter + + + Kino Promteus + + + Pstav + + + Star servisn stedisko + + + kola + + + Nemocnice + + + Centrum slueb Jubilejnyj + + + Prdelna + + + kolka + + + Ubytovna + + + Potraviny + + + Obchodn dm + + + Knihkupectv + + + Anomlie Sopka + + + Anomlie Rva + + diff --git a/gamedata/configs/text/cze/st_mp_mapdesc.xml b/gamedata/configs/text/cze/st_mp_mapdesc.xml new file mode 100644 index 0000000..469dd0e --- /dev/null +++ b/gamedata/configs/text/cze/st_mp_mapdesc.xml @@ -0,0 +1,126 @@ + + + + Vozovna + + + Zvltn msto. Tato mlenliv budova nejsp ukrv nejedno tajemstv, ale stalkei sem pichzej z prozaitjch dvod - nachz se zde spousty artefakt. Rizika jsou velk, ale vnosy rovn. Bude-li uvaovat a jednat pohotov, urit se k tob piklon tst. + + + Zvltn msto. Tato mlenliv budova nejsp ukrv nejedno tajemstv, ale stalkei sem pichzej z prozaitjch dvod - nachz se zde spousty artefakt. + + + Parkovit nachzejc se u vstupu do Zny. Zdej traktory, autobusy a nklaky ji nadobro dojezdily. Artefakty tu nikdo dn nenael, ovem msto si oblbili bandit, kte zde lov novky a obraj je o vechno, vetn ivot. Kryj se v budovch i za vozidly a nezapome dvat pozor na stelce na stechch! + + + Parkovit nachzejc se u vstupu do Zny. Zdej traktory, autobusy a nklaky ji nadobro dojezdily. + + + Oputn stanice a pilehl prostory. D se tu najt rozlin vybaven a potraviny - sta jen podn hledat. Mj se vak na pozoru ped silnmi anomliemi a odstelovai na stee hlavn budovy. Z n je skvl vhled na prakticky vechny pstupov cesty. + + + Uputn stanice a pilehl prostory. Mj se na pozoru ped silnmi anomliemi a odstelovai. + + + Nevyzpytateln a fascinujc msto. Tento bazn pvodn slouil k provdn jakchsi experiment, jeho skuten el vak u navky zstane zhadou. Artefakty se zde prakticky nevyskytuj, a tak jedin, co by sem mohlo lkat stalkery, jsou zbytky bizarnch pstroj a mechanism. Nespoutj oi z okolnch stech a dvej pozor na extrmn vysok rovn zen. + + + Nevyzpytateln a fascinujc msto. Tento bazn pvodn slouil k provdn jakchsi experiment, jeho skuten el vak u navky zstane zhadou. + + + Toto nebezpen zkout Temnho dol je tvoena dlouhou silnic a oputnm institutem. Kdo v, co se v mstnch budovch kdysi vyuovalo? Dnes se zde nau leda tak umn pet. Ach, a nezapome sledovat pohyb na stechch... + + + Toto nebezpen zkout Temnho dol je tvoena dlouhou silnic a oputnm institutem. + + + V tto beztn, dezoltn tovrn poloil ivot u nejeden stalker. lovka na kadm kroku vtaj zstupy anomli, pesto se sem nvtvnci hrnou po tuctech, lkni osudovou pitalivost cennch artefakt. Pozor na radiaci! + + + V tto beztn, dezoltn tovrn poloil ivot u nejeden stalker. + + + Pornick stanice, jej veker osazenstvo spchalo v dubnu 1986 hasit ernobyl. Z ve je skvl vhled do blzkho i dalekho okol. Jen mlokdo se vak odv do sklepa a hornch pater budov, snad ve strachu o vlastn kabt. O toto msto ji del dobu soupe jednotliv frakce Zny kvli jeho strategick pozici. + + + Pornick stanice, jej veker osazenstvo spchalo v dubnu 1986 hasit ernobyl. Nachz se na velmi strategickm mst. + + + st rozlehlho smetit, kam byly po havrii v roce 1986 vyveny tuny radioaktivnho odpadu. Na kadm kroku lze narazit na zchtral jeby a vyazenou techniku. Mezi dal pamtihodnosti pat polorozpadl budovy a obrovit hangr. Blzkost Kordonu a relativn hojnost artefakt sem pitahuj stalkery, kte vyhledvaj snadnou koist. + + + st rozlehlho smetit, kam byly po havrii v roce 1986 vyveny tuny radioaktivnho odpadu. + + + Men tvr zhadnho msta Limansku. Oputn bytovky a mezi jimi jedna zpola dostaven budova. Kdy zde bylo nalezeno nkolik drahocennch artefakt, novinky se po Zn roznesly nebezpen rychle. Do Limansku vede jen mlo cest, a o ty se dodnes ani na minutu nepestalo bojovat. + + + Men tvr zhadnho msta Limansku. Oputn bytovky a mezi jimi jedna zpola dostaven budova. + + + Oputn, zapadl vesnika v hloubi Zny. Pohled na zdej mal, mlk rybnek, v nm dnes plavou snad jen destky rezavjcch vrak, lovka napln podvdomm pocitem beztnosti. Dvej pozor na ostelovae a pamatuj: odvnmu Zna peje. + + + Oputn, zapadl vesnika v hloubi Zny. Pohled na zdej mal, mlk rybnek, v nm dnes plavou snad jen destky rezavjcch vrak, lovka napln podvdomm pocitem beztnosti. + + + Star armdn zkladna pync se nepojzdnmi nklaky, obrnnmi transportry, zchtralm velitelstvm a kasrnami. Oputn vak je pouze na prvn pohled: jde toti doslova o zlat dl artefakt, co znamen, e neptel me hat za kadm rohem. + + + Star armdn zkladna pync se nepojzdnmi nklaky, obrnnmi transportry, zchtralm velitelstvm a kasrnami. + + + Tko najt zlovstnj msto ne tuto starou ves. Pokud se sem pece jen odv vydat, piprav se na vel uvtn v podob smrti kulek. Neexistuje zde bezpenho msta - nejlepm spolenkem ti budou tlumi a pukohled. + + + Tko najt zlovstnj msto ne tuto starou ves. Dojt a sem je mon snadn, ale tm zbava zdaleka nekon. + + + Tohle nen bazn, ale sp krvav lzn. Vykachlikovanmi chodbami se rozlhaj ozvny vstel, vbuch a smrtelnch skek. Mlokter stalker dojde a sem a jet mn jich odsud odejde. + + + Tohle nen bazn, ale sp krvav lzn. Vykachlikovanmi chodbami se rozlhaj ozvny vstel a vbuch. + + + Mal ndra u rostock tovrny + + + Mal ndra u rostock tovrny, peplnn rezavmi vagny a lokomotivami, kter osud navky pibil ke kolejm. Pehrle artefakt sem pitahuj nebojcn stalkery ze vech kout Zny. + + + Opravna nedaleko od mal vesnice. Vechna provozuschopn vozidla byla zrekvrovna pi nprav kod po nehod v ernobylu. Zbyl vozidla byla postupem asu rozebrna na nhradn dly. Oblast je pln nebezpe, napklad mol a zamoenho rkos, ve kterm bys bude-li mt tst mohl najt nco velmi cennho. + + + Opravna nedaleko od mal vesnice. Oblast je pln nebezpe, napklad mol a zamoenho rkos. + + + Za betonovmi ploty ln rezav hromady kov. Na sklonku stolet zavala tato tovrna nepetrit provoz, doprovzen socialistickmi slogany, kter se linuly z amplin mstnho rozhlasu. Dnes zde vak u jen sed prach. + + + Star oputn tovrna: nezstalo tu nic ne tich haldy kov za betonovmi zdmi. + + + Sportovn stedisko v Pripjati le nedaleko oputn koly. kla zde provozovanch sport se od roku 1986 radikln zmnila, stejn jako poet nadench sportovc. Stalkery sem pitahuje touha po pomjiv slv, koisti a artefaktech... nkte zde zstvaj u navky. + + + Sportovn stedisko v Pripjati lec nedaleko oputn koly. + + + Vru podivn msto. Stalkerm, kte tvrd, e jej navtvili, se lid asto posmvaj, pesto vak nejde o bchorku. Gravitan anomlie zde rozervaly samotnou zem a utvoily bizarn krajinu. Mstu vvod ti vysok ve, pozstatky vojensk techniky a levitujc ostrvky pdy vyrvan ze zem. + + + Vru podivn msto. Gravitan anomlie zde rozervaly samotnou sem a utvoily bizarn krajinu. + + + Tyto okrajov oblasti velkotovrny Rostok si Svoboda zvolila za sv sdlo. Jde o msto straideln, le bohat na artefakty. Kad przdn hangr i skladit jsou pln smrtcch nstrah. Dvej si opravdov pozor a nespoutj zrak z bl ve... + + + Tyto okrajov oblasti velkotovrny Rostok si Svoboda zvolila za sv sdlo. Jde o msto straideln, le bohat na artefakty. + + + Do oputnho msta Pripjati, kde dve bydleli zamstnanci jadern elektrrny ernobyl, se dnes odv jen mlokdo. Pesto vak lze posledn dobou zaslechnout, jak se blzkm okolm kina Promteus, lodnho pstavit a Kurchatovovy ulice nesou ozvny vstel. + + + Tato nevelik st Pripjati rozkldajc se mezi kinem Promteus, pstavitm lod a Kurchatovovou ulic zav posledn dobou lt pestelky mezi hrstkou odvlivc, kte se vypravili do msta. + + diff --git a/gamedata/configs/text/cze/st_mp_speechmenu.xml b/gamedata/configs/text/cze/st_mp_speechmenu.xml new file mode 100644 index 0000000..fb36535 --- /dev/null +++ b/gamedata/configs/text/cze/st_mp_speechmenu.xml @@ -0,0 +1,57 @@ + + + + Vichni do toku! + + + Jdu pro ten artefakt! Kryjte m! + + + Za mnou! + + + Zatm ten artefakt hldejte. Ne abyste ho brali! + + + Brnm pozici! + + + Zstate na mstech! + + + Berte artefakt! Budu vs krt! + + + Pomoc! + + + Nemm prachy, kup mi lep vbavu! + + + Ne. + + + Nikde nikdo! + + + Nahlaste se! + + + stup! + + + Vezmte jim ten artefakt! + + + Rozumm. + + + Dr hubu! + + + Zstate pohromad. + + + Berte artefakt! + + diff --git a/gamedata/configs/text/cze/st_mp_teamdesc.xml b/gamedata/configs/text/cze/st_mp_teamdesc.xml new file mode 100644 index 0000000..b5edec3 --- /dev/null +++ b/gamedata/configs/text/cze/st_mp_teamdesc.xml @@ -0,0 +1,15 @@ + + + + Mstn anarchist. Znu berou jako ozu svobody a jsou pesvdeni, e veker zkony, pravidla a zvyky vnjho svta zde neplat. Jejich motto zn: Dlej si, co uzn za vhodn, a starej se jen o sv. Svoboda se stav proti vldnm snahm o ovldnut Zny a zrove vl se oldky. Jej lenov pouvaj pedevm sovtsk a rusk zbran. + + + Frakce Svoboda (Svobodn stalkei) + + + Tito dobrodrun hrdloezov pichzej z celho svta a s radost vtaj i tu nejpinavj prci. Jak by se dalo st, jejich motto zn: Penze nesmrd. Dokud bude po artefaktech poptvka, budou bojovat o nadvldu nad kadm nalezitm. oldci jsou vyzbrojeni zejmna zpadnmi zbranmi. + + + Frakce oldci (Hrdloezov) + + diff --git a/gamedata/configs/text/cze/st_quests_general.xml b/gamedata/configs/text/cze/st_quests_general.xml new file mode 100644 index 0000000..64c3f9a --- /dev/null +++ b/gamedata/configs/text/cze/st_quests_general.xml @@ -0,0 +1,18 @@ + + + + Pozor! Emise nastane za: + + + Okamit mus bet k nejblimu krytu a skrt se ped emis. + + + Bhem emise nesm opoutt svj kryt. + + + Emise: ukryj se + + + Emise: pokej v krytu + + diff --git a/gamedata/configs/text/cze/st_quests_jupiter.xml b/gamedata/configs/text/cze/st_quests_jupiter.xml new file mode 100644 index 0000000..6be11c0 --- /dev/null +++ b/gamedata/configs/text/cze/st_quests_jupiter.xml @@ -0,0 +1,687 @@ + + + + Dluhy: odnes penze banditm + + + Vo dlu banditm penze za oblek a neme je splatit, nebo roky narstaj pli rychle. Podal t, abys za nj problm vyeil. + + + Dluhy: vra se k Vovi + + + ekni Vovi, e splcen dluhu u nen nutn + + + Dluhy: pora si s bandity + + + Splcen Vovch dluh se zkomplikovalo. Vyi bandity. + + + Rukojm: vyzvedni si odmnu u Mitjajovch ptel + + + Mitjaj byl osvobozen. Setkej se v baru s jeho pteli, aby sis vyzvedl svou odmnu. + + + Rukojm: osvobo Mitjaje + + + Rukojm: promluv si s Grizzlym a ujisti se, e je pipraven + + + Ped pokusem o osvobozen rukojmho si mus promluvit s Grizzlym + + + Rukojm: osvobo Mitjaje silou + + + Mus zlikvidovat bandity a osvobodit stalkera jmnem Mitjaj. + + + Rukojm: setkej se se stalkery + + + Stalkei ti pomohou osvobodit rukojm. V noci se s nimi mus setkat a spolen zatoit na bandity. + + + Rukojm: domluv platbu vkupnho za proputn Mitjaje + + + Domluv s vdcem bandit platbu vkupnho za proputn stalkera zvanho Mitjaj. + + + Osvobo stalkera zvanho Mitjaj, kterho dr banditi jako rukojmho. + + + Rukojm: vyve Mitjaje z tbora bandit + + + Prochzen tborem bandit je pli nebezpen. Mus z nj Mitjaje vyvst. + + + Rukojm: promluvsi s Mitjajem + + + Mitjaj je v relativnm bezpe. Promluv si s nm o jeho dalch krocch. + + + Cesta do Pripjati: promluv si s technikem o podjezdu + + + Nalezen dokumenty se jasn zmiuj o podzemnm podjezdu nachzejcm se pod tovrnou Jupiter, kter vede do Pripjati. Podjezd je bez proudu, je naplnn plynem a vstup do nj byl zablokovn. Mus najt technika, kter doke nahodit genertor a odemknout vchod do podjezdu. + + + Pamov modul je v rukou odbornk. Mus pokat, a bude odblokovn. + + + UAV: odblokuj pamov modul + + + UAV: vyzvedni si u Nitrka pamov modul + + + UAV: vyzvedni si u Novikova pamov modul + + + Nitrk odblokoval pamov modul. Ml by sis ho vyzvednout a zjistit, jak informace obsahuje. + + + Novikov odblokoval pamov modul. Ml by sis ho vyzvednout a zjistit, jak informace obsahuje. + + + Z UAV jsi dokzal zachrnit pamov modul. Aby ses dostal k informacm, kter obsahuje, mus jej odblokovat. + + + UAV: pokej, a bude pamov modul odblokovn + + + Oza: najdi dkaz + + + Oza byla nalezena a opravdu m lebn vlastnosti. Mus najt dkaz o jej existenci, kter bude moci pinst vdcm. + + + Oza: pines dkaz vdcm + + + Oza byla nalezena a opravdu m lebn vlastnosti. Mus vzt artefakt, kter jsi v n nalezl a donst ho vdcm. + + + Oza: zjisti, zda je legenda pravdiv + + + Ozersky, vdec z bunkru, t podal, aby ses pokusil nalzt legendrn oblast Zny zvanou Oza. Podle povst by se v n mla nachzet liv voda, ale nikdo s uritost nev, zda Oza existuje i nikoliv. + + + Kopai: jsi se Strejdou Jarem + + + Strejda Jar s nm potebuje pomoct. Zajdi za nm do vesnice Kopai. + + + Kopai: zlikviduj oldky + + + Zd se, e Strejda Jar oekv pchod oldk. Mus je zlikvidovat. + + + Kopai: zsta pobl Strejdy Jara + + + Kopai: promluv si se Strejdou Jarem + + + Kopai: promluv si se Strejdou Jarem + + + oldci jsou mrtv. Ml by sis promluvit se Strejdou Jarem a zjistit, co se vlastn stalo. + + + Promnliv ps-zen: odnes anomln tvar vdcm + + + Dones nalezen vzorek Hermanovi. Zd se, e jde o vzorek promnlivho ps-zen sten petvoen vlivem vystaven inkm anomlie. + + + Stdav ps-zen: prozkoumej zdroj + + + Zjisti, zda se v tunelu nenachz njak druh anomlnho tvaru. Vdci se domnvaj, e stdav ps-zen vychz ze zdroje podobnho artefaktu. + + + Stdav ps-zen: setkej se s Topolovmi lidmi + + + Topolova jednotka vstoupila do tunelu se stdavm ps-zenm, mus se tam s n sejt. + + + Stdav ps-zen: promluv si s Topolem + + + Pipoj se k Topolov jednotce, abys s n vstoupil do tunelu s vskytem stdavho ps-zen. Bylo dohodnuto, e zatmco bude hledat nco, co bys mohl donst vdcm, stalkei budou hldat vstup do tunelu. + + + Ml bys donst vechny soustky k rdiu, kter jsi nael, Nitrkovi. + + + Nitrk potebuje soustky k rdiu. Me mu dt ty, kter u jsi zskal, nebo se pokusit najt dal. + + + Rdio: najdi soustky pro Nitrka + + + Nitrk potebuje soustky k rdiu. k, e by ses po nich ml podvat v cementrn. + + + Krde: zjisti, kdo je za krde zodpovdn + + + Zeptej se stalker v Janov, zda nevidli nkoho podezelho, kdo by mohl stt za ukradenmi vcmi z osobn schrnky. + + + Krde: prozkoumej rozvodnu + + + Mus prozkoumat rozvodnu, nebo prv tam mil podezel stalker, kter by mohl bt zodpovdn za krde. + + + Krde: vem si sv vci + + + Vechny vci, kter Pahejl ukradl, by mly bt v jeho skri ve stoce za rozvodnou. + + + Podivn rostlina: see vzorek rostliny + + + Pobl okraje lomu se objevila oblast pln podivnch rostlin. Ozersky t podal, abys sehnal vzorek rostliny pro jeho vzkum. + + + Podivn rostlina: pedej vzorek Ozerskmu + + + Mus odnst vzorek rostliny Ozerskmu. Ozersky na opltku pesvd Hermana, aby ti pedal vdeck oblek. + + + Lov: zlikviduj neznm mutanty + + + Skupina stalker narazila v tunelech severn od tovrny Jupiter na neznm druh mutant. Prozkoumej oblast a zlikviduj mutanty. + + + Lov: vyzvedni si u Pastike odmnu za zabit mutant v tunelu + + + Mutanti v tunelech severn od tovrny Jupiter byli zlikvidovni. Ml bys to ct Pastiki a vyzvednout si svou odmnu. + + + Domnnka: polo skener do stedu sesuvu + + + Polo skener do stedu sesuvu, abys otestoval Ozerskho domnnku. + + + Domnnka: pokej, a experiment skon + + + Skener se v souasn dob nachz v aktivnm reimu a zaal zaznamenvat ptomnost mutant. Nyn mus ekat, dokud nebude zskno dostaten mnostv dat pro potvrzen nebo vyvrcen domnnky. + + + Domnnka: seber skener + + + Bylo shromdno dostaten mnostv dat pro potvrzen Ozerskho hypotzy. Seber skener. + + + Domnnka: dej skener Ozerskmu + + + Mus pedat skener Ozerskmu. Na zklad shromdnch dat by ml bt schopen potvrdit svou hypotzu. + + + Lov: zabij upry v bainch + + + V bain, za cementrnou, byla spatena skupina upr. Mstn stalkei t podali, abys je zlikvidoval. + + + Lov: vyzvedni si u Pastike svou odmnu za zabit upr + + + Upi jsou mrtv. Ml by sis u Pastike vyzvednout odmnu, kterou za jejich zabit vypsali mstn stalkei. + + + Non lov: zabij chimru + + + Chimry jsou non predtoi a nikdo netu, kde le jejich hnzdo. Mus si na ni pohat v noci, kdy pes vtrac potrub vychz na lov. + + + Non lov: ekni Pastiki, e chimra je mrtv + + + Zabijck chimra je mrtv a lovec Lik tak byl pomstn. ekni o tom Pastiki. + + + Nad: pines Nitrkovi nad + + + Nitrk t podal, abys mu sehnal dv sady nad: jednu pro zkladn kony a druhou pro jemnou prci. Technik ti za nad zaplat a bude s nm schopen provdt pokroilej pravy zbran a zbroje. + + + Nad: pines Nitrkovi nad + + + Nitrk t podal, abys mu sehnal dv sady nad: jednu pro zkladn kony a druhou pro kalibraci. Technik ti za nad zaplat a bude s nm schopen provdt pokroilej pravy zbran a zbroje. + + + Nad: pines Nitrkovi nad + + + Nitrk t podal, abys mu sehnal sadu nad pro zkladn pracovn kony. Technik ti za nad zaplat a bude s nm schopen provdt pokroilej pravy zbran a zbroje. + + + Nad: pines Nitrkovi nad + + + Nitrk t podal, abys mu sehnal dv sady nad: jednu pro jemnou prci a druhou pro kalibraci. Technik ti za nad zaplat a bude s nm schopen provdt pokroilej pravy zbran a zbroje. + + + Nad: pines Nitrkovi nad + + + Nitrk t podal, abys mu sehnal sadu nad pro jemn pracovn kony. Technik ti za nad zaplat a bude s nm schopen provdt pokroilej pravy zbran a zbroje. + + + Nad: pines Nitrkovi nad + + + Nitrk t podal, abys mu sehnal sadu nad pro kalibraci. Technik ti za nad zaplat a bude s nm schopen provdt pokroilej pravy zbran a zbroje. + + + Nad: pines Nitrkovi nad + + + Nitrk t podal, abys mu sehnal ti sady nad: jednu pro zkladn pracovn kony, druhou pro jemnou prci a tet pro kalibraci. Technik ti za nad zaplat a bude s nm schopen provdt pokroilej pravy zbran a zbroje. + + + Pripja 1: najdi oblek s uzavenm dchacm okruhem + + + Aby ses dostal pes podjezd Pripja 1, mus sehnat oblek s uzavenm dchacm okruhem. Podjezd je toti pln sloueniny oxidu uhliitho s neznmou ltkou. + + + Pripja 1: dove Tulka k Zulusovi. + + + Mus dovst Tulka k Zulusovi a pedstavit ho jako novho lena jednotky. Zulus by nebyl naden, kdyby se u nj objevil osaml bojovnk v obleku Monolitu. + + + Pripja 1: promluv si s Tulkem ohledn ochrannho obleku + + + Podjezd Pripja 1 je pln sloueniny oxidu uhliitho a neznm ltky. Mus ct Tulkovi, e pokud chce podjezdem projt, bude potebovat oblek s uzavenm dchacm obvodem. + + + Pripja 1: sestav jednotku, se kterou se vyd do Pripjati + + + Nitrk dokzal pekonat zmek na vchodu do podjezdu Pripja 1, ale bez ochrany s tebou odmt pokraovat do tovrny Jupiter. Doporuuje, abys sehnal pr lid na cestu podjezdem. Zulus, kter u je s tebou, navrhuje, abys nov rekruty poslal za nm. + + + Pripja 1: promluv si se Zulusem o cest do Pripjati + + + Nitrk dokzal pekonat zmek na vchodu do podjezdu Pripja 1, ale bez ochrany s tebou odmt pokraovat do tovrny Jupiter. Doporuuje, abys sehnal pr lid na cestu podjezdem a navrhuje, aby sis promluvil se Zulusem, kter by ti mohl pomoci se sloenm jednotky. + + + Pripja 1: dove Sokolova k Zulusovi + + + Sokolov souhlasil s cestou do Pripjati a z bunkru by si mohl vzt vdeck oblek. Ml bys ho zavst k Zulusovi a pedstavit ho jako novho lena tmu. + + + Pripja 1: promluv si se Sokolovem o ochrannm obleku + + + Pripja 1: promluv si s Ozerskm o obleku pro Sokolova + + + Sokolov si chce kvli sv ochran chce vzt vdeck oblek, ale Herman pravdpodobn nedovol, aby s nm opustil bunkr. Ml by sis promluvit s Ozerskm je pjemnj a lpe se s nm vyjednv. + + + Pripja 1: ekni Sokolovi o vdeckm obleku + + + Ozersky je naden vzorkem rostliny. Podal t, abys Sokolovovi vydil, e si u Hermana me vyzvednout svj vdeck oblek. + + + Podjezd Pripja 1 je pln sloueniny oxidu uhliitho a neznm ltky. Mus ct Sokolovovi, e pokud chce podjezdem projt, bude potebovat oblek s uzavenm dchacm obvodem. + + + Pripja 1: see Vovi penze na oblek + + + Oblek, za kter Vo dluil penze banditm, disponoval uzavenm dchacm okruhem. Vo ho vak musel zastavit, aby splatil sv dluhy. Pro jeho zptn odkup potebuje 3000. + + + Pripja 1: dove Va k Zulusovi + + + Vo je ochoten jt do Pripjati. Mus ho dovst k Zulusovi a pedstavit jej jako novho lena tmu. Cestou si Vo me koupit nazpt svj oblek. + + + Pripja 1: promluv si s Vnm o ochrannm obleku + + + Podjezd Pripja 1 je pln sloueniny oxidu uhliitho a neznm ltky. Mus ct Vovi, e pokud chce podjezdem projt, bude potebovat oblek s uzavenm dchacm obvodem. + + + Pazourek alias Strak je pkn podl svin. Ml bys o nm ct ostatnm stalkerm v Zatonu nebo z ostatnch frakc a dt mu tak podnou lekci. + + + Pazourek se vyloen chvst a mluv o vcech, kter nikdy nevidl. Bylo by dobr, aby jeho li vyly na povrch. + + + Vmysly: pora si s Pazourkem + + + Pazourek si sprost pivlastuje zsluhy druhch. Ml by se nauit vit slova. + + + Pazourkovo vychloubn ji peshlo hranice ml by sis s nm promluvit a drazn mu sdlit svj nzor. + + + Pazourek alias Strak je pkn podl svin. Ml bys o nm ct ostatnm stalkerm v Zatonu nebo ostatnch frakcch a podn se mu tak pomstt. + + + Vzkum anomlie: vyzvedni si skenery u technika + + + See skenery od Novikova. Herman chce shromdit statistick data o artefaktu, z toho dvodu je poteba umstit skenery do sted nkolika artefakt. + + + Vzkum anomlie: polo skener do anomlie + + + Vzkum anomlie: vyzvedni si svou odmnu + + + Vyzvedni si odmnu slbenou za umstn skener do anomli. Te, kdy jsou skenery na svch mstech, Herman me zahjit sbr dat z tchto tvar. + + + Polo skener do stedu anomlie. Herman chce shromdit potebn data z anomlie a skenery proto mus bt poloeny do sted nkolika anomli. + + + Smlouva s vdci: pines Garikovi artefakt Koblek + + + Aby Garik splnil svou st dohody s vdci, mus zskat artefakt Koblek. Pines mu jej. + + + Smlouva s vdci: pines Garikovi artefakt Masov kulika + + + Aby Garik splnil svou st dohody s vdci, mus zskat artefakt Masov kulika. Pines mu jej. + + + Smlouva s vdci: pines Garikovi artefakty Masov kulika a Koblek + + + Aby Garik splnil svou st dohody s vdci, mus zskat artefakty Masov kulika a Koblek. Pines mu je. + + + Smlouva s vdci: artefakt doruen + + + Gary zskal oba artefakty a splnil svou st dohody + + + Historie Povinnosti: pedej zjemcm PDA zakladatele Povinnosti + + + Nael jsi osobn PDA zakladatele Povinnosti, kter zemel v anomlii. Ml bys toto PDA dt nkomu, koho by mohly zajmat posledn okamiky otce frakce. + + + Anomln aktivita: prozkoumej oblast pomoc vylepenho detektoru + + + Skenery vdc zaregistrovaly anomln aktivitu severn od bunkru. Pomoc vylepenho detektoru oblast prozkoumej. + + + Ochrana vdc: najdi spolehliv lidi + + + Bunkr vdc nen nijak chrnn. Mus najt spolehliv lidi, kte by jej hldali. + + + Ochrana vdc: vra se k Hermanovi pro svou odmnu + + + Nael jsi stre pro bunkr vdc. Ml by ses vrtit k Hermanovi a vyzvednout si svou zaslouenou odmnu. + + + Posledn vvoj: najdi dokumenty v tovrn Jupiter + + + Hermana zajm posledn vvoj v tovrn Jupiter. Prozkoumej administrativn oblast tovrny a najdi dokumenty. + + + Posledn vvoj: dones dokumenty Hermanovi + + + Nalezen dokumenty naznauj, e veker technick dokumentace byla pemstna mimo tovrnu. Nezjistil jsi mnoho, pesto bys ml informovat Hermana. + + + Posledn vvoj: dones Hermanovi dokumenty a pnovo PDA + + + Pi hledn dokument na tebe zatoili oldci. Podle PDA, kter jsi nael u jejich velitele pny, dostali rozkaz zabrnit vdcm v hledn dokument. Navc jsi zjistil, e veker technick dokumentace byla pemstna mimo tovrnu. Ml bys o tom ct Hermanovi a ukzat mu pnovo PDA. + + + Pozstal Monolitu: promluv si s obyvateli Janova o krytu + + + Skupina bojovnk Monolitu se vymanila ze spr sil, kter je uvznily. Hledaj kryt ped emis a mutanty. Mus si promluvit s obyvateli stanice Janov, aby jednotce Monolitu umonili zstat s nimi. + + + Dove nborov dstojnky Povinnosti k bval jednotce Monolitu. Pokud se bojovnci Monolitu pipoj k Povinnosti, budou se moci ukrt ped emis a mutanty ve stanici Janov. + + + Dove nborov dstojnky Svobody k bval jednotce Monolitu. Pokud se bojovnci Monolitu pipoj ke Svobod, budou se moci ukrt ped emis a mutanty ve stanici Janov. + + + Pozstal Monolitu: dove nborov dstojnky k bval jednotce Monolitu + + + Vzkum anomlie: kryj stalkery + + + Zd se, e provdn men v anomlii pilkalo mutanty. Mus chrnit stalkery, aby mohli sesbrat vechna potebn data. + + + Vzkum anomlie: kryj stalkery + + + Zd se, e provdn men v anomlii pilkalo zombie. Mus chrnit stalkery, aby mohli sesbrat vechna potebn data. + + + Vzkum anomlie: promluv si s Hermanem + + + Men anomli bylo dokoneno informuj o tom vdce a vyzvedni si svou odmnu. + + + Vzkum anomlie: promluv si se stalkery + + + Promluv si s jednotkou stalker zodpovdnou za proveden men. Mus vybrat, o kterou anomlii se maj zajmat. + + + Vzkum anomlie: promluv si se stalkery + + + Vechna potebn men byla provedena, take me zamit s jednotkou zpt do bunkru vdc. + + + Vzkum anomlie: promluv si se stalkery + + + Men anomlie bylo provedeno, promluv si s tmem o dalm postupu. + + + Vzkum anomlie: kryj stalkery + + + Herman ti nabdl prci spovajc v ochran stalker v prbhu provdn men anomli. + + + Rejnok 4: prozkoumej msto havrie + + + Rejnok 4: odhal pinu splen elektroniky + + + Prozkoumej msto havrie Rejnoka 4. + + + Mus odhalit zdroj silnho elektrickho vboje, kter zashl vrtulnk Rejnok 4. + + + Rejnok 1: pedej ernou skku technikovi, aby ji dekdoval + + + ern skka Rejnoka 1 peila havrii. Mus ji vzt k technikovi, aby ji dekdoval a zpstupnil tak data, kter obsahuje. + + + Rejnok 1: pokej, a bude ern skka dekdovna + + + Nitrk souhlasil, e dekduje ernou skku. Mlo by mu to trvat asi ti hodiny, mus na nj pokat. + + + Rejnok 1: vra se k Nitrkovi pro zjitn informac z ern skky + + + Nitrk u by ml bt hotov s procesem dekdovn. Zajdi za nm, aby ses dozvdl, co ern skka skrv. + + + Rejnok 1: prozkoumej msto havrie + + + Prozkoumej msto havrie Rejnoka 1. + + + Pripja 1: dosta se do Pripjati + + + Mus projt podjezdem Pripja 1 a dojt k vojenskmu evakuanmu mstu v Pripjati. + + + Cesta do Pripjati: prozkoumej laborato chemickch slouenin v tovrn Jupiter + + + Laborato chemickch slouenin by mohla obsahovat informace o kontaminaci podjezdu Pripja 1 neznmm plynem. + + + Cesta do Pripjati: prozkoumej administrativn oblast tovrny Jupiter + + + Prvodce o dn bezpen cest do Pripjati nev, ale navrhl nkolik mst, na kterch bys mohl najt informace o podzemnch tunelech vedoucch z tovrny Jupiter do msta. Ml bys zat s administrativn oblast. + + + Cesta do Pripjati: prozkoumej laboratoe tovrny Jupiter + + + Dokumenty nalezen v administrativn sti se zmiuj o evakuaci vrobnho komplexu tovrny Jupiter. Vce informac o plnech tto akce bys mohl najt v laboratoch. + + + Cesta do Pripjati: prozkoumej brnu podjezdu v Oddlen 1 + + + Vstupem do podzemnho podjezdu je pepravn brna. Prozkoumej tuto oblast a najdi cokoliv, co se podjezdu tk. + + + Cesta do Pripjati: prozkoumej oddlen 1 tovrny Jupiter + + + V oddlen 1 by se mly nachzet informace tkajc se podjezdu Pripja 1. Mohly by bt velice dleit, proto je nutn toto msto prozkoumat. + + + Cesta do Pripjati: prozkoumej dodac oddlen tovrny Jupiter + + + Podle poznmek v laboratoch mlo evakuaci na starost dodac oddlen, take by ses tam ml tak porozhldnout. + + + Cesta do Pripjati: prozkoumej opravrensk dlny tovrny Jupiter + + + Dodac oddlen dajn bylo informovno o ztrtch bhem pepravy neho, co bylo oznaovno jako poloka 62. Podle zznam se o tuto zleitost staraly opravrensk dlny, proto by ses do nich ml podvat. + + + Cesta do Pripjati: promluv si s prvodcem + + + Podle zznam ern skky jednoho z vrtulnk se jednotka mla sejt na evakuanm mst B28. Podle map nalezench v jinm vrtulnk, kter se astnil stejn mise, by se toto msto mlo nachzet v Pripjati. Mus najt zpsob, jak se tam dostat a prvodce by ti v tom mohl pomoci. + + + Skladit Povinnosti: vem si, co ti pat + + + Skladit Povinnosti: setkej se s Morganem + + + Obchodnk Morgan ti jako odmnu za tv mlen ve vci jeho obchod poskytl pstup do skladit Povinnosti. Setkej se s nm blzko lomu, jak jste se dohodli. + + + Pro pokraovn mus otevt brnu. + + + Pro pokraovn mus otevt dvee. + + + Pro pokraovn mus obnovit dodvku proudu do brny. + + + Pro pokraovn mus odemknout brnu. Pravdpodobn se ti to poda z velna. + + + Vzkumn skupina: Najmi kvalitn pracovnky + + + Vzkumn skupina pracujc pro vdce zahynula. Aby mohl vzkum pokraovat, mus poskldat novou skupinu. + + + Vzkumn skupina: Vra se k Hermannovi pro odmnu + + + Nael jsi ty sprvn lidi pro vytvoen nov vzkumn skupiny. Nyn se me vrtit k Hermannovi pro svou odmnu. + + + Pripja 1: dokoni Ozerskho misi + + + Dokoni Ozerskho kol tkajc se anomli v tovrn a zskej ochrann oblek pro Sokolova. + + + Nitrk potebuje technick podklady k vyslace. Najde je v cementrn. + + + Tska umel v anomlii kvli Pazourkovi, ten ho tam nechal. B se ho zeptat, pro to udlal. + + + Odplata: pomsti Tsku + + + Zjisti, kdo nechal Tsku zemt v anomlii, ukradl jeho artefakt a utekl. Tska bohuel neekl, jak se onen padouch jmenoval. Jedin, co se o nm v, je, e patil ke Svobod. + + + Podplukovnk ulga ti dovolil vzt si ze skladit Povinnosti libovolnou vzbroj. Sta se k n jen prostlet. + + + Loki ti povolil vzt si ze skladit Povinnosti libovolnou vzbroj. Ale pod jednou podmnkou: sklad mus patit Svobod. + + diff --git a/gamedata/configs/text/cze/st_quests_pripyat.xml b/gamedata/configs/text/cze/st_quests_pripyat.xml new file mode 100644 index 0000000..e7bea19 --- /dev/null +++ b/gamedata/configs/text/cze/st_quests_pripyat.xml @@ -0,0 +1,345 @@ + + + + Poloka 62: najdi dokumenty ve zkuebn dln + + + Mus najt dokumenty tkajc se poloky 62. Dokumenty by mly objasnit, zda zbra mohla bt pouita k sestelen vrtulnk. + + + Neznm zbra: skryj se v budov + + + Mus se skrt v budov a odrazit tok Monolitu. + + + Neznm zbra: najdi informace + + + Zbra nen v provozu a nen znmo, jak funguje. Mus najt technika, kter by celou zleitost s neznmou zbran mohl objasnit. + + + Neznm zbra: zabij velitele jednotky Monolitu + + + Mus zabt velitele bojovnk Monolitu pouvajcho neznmou zbra. + + + Neznm zbra: prohledej mrtv tla bojovnk Monolitu + + + Bojovnci Monolitu sebou mli mt neznmou zbra najdi ji. + + + Neznm zbra: promluv si s Kardanem + + + Kardan se konen zbavil kocoviny, ml by sis s nm promluvit o neznm zbrani. + + + Neznm zbra: pokej, a Kardan pijde k sob + + + Kardan zbra pravdpodobn zn a a se probud, mus si s nm promluvit. + + + Gaussova puka: ekni o zbrani Kovalskmu + + + Mus ct Kovalskmu vechno, co ses dozvdl o poloce 62. + + + Neznm zbra: pipoj se k tmu + + + Mus se pipojit ke speciln jednotce, se kterou bude moci ukoistit zbra. + + + Neznm zbra: seber zbra + + + Mus sebrat zbra velitele jednotky Monolitu. + + + Neidentifikovan zbra: odnes zbra Kovalskmu + + + Zskal jsi zbra te bys ji ml ukzat Kovalskmu a zjistit, zda tato zbra mohla zpsobit pd vrtulnk. + + + Neidentifikovan zbra: zastni se lky na Monolit + + + Przkumn vojensk jednotka pipravuje tok na skupinu Monolitu. Ml by ses tto operace zastnit. + + + Armda Monolitu: setkej se s posilami + + + Kovalsk poslal posily, kter ti pomohou zniit jednotku Monolitu schovvajc se v knihkupectv. + + + Armda Monolitu: vyisti knihkupectv + + + Mus zniit vechny bojovnky Monolitu v budov. Velk jednotky Monolitu pedstavuj nebezpe pro vojensk tbory. + + + Armda Monolitu: prozkoumej zvltn vtvor + + + V budov se nachzelo velice zvltn zazen. Prozkoumej ho. + + + Laborato X8: najdi dokumenty tkajc se experiment + + + Nalezen informace se vztahuj k centrln laboratoi zvan X8. Mohla by obsahovat informace o tajnch experimentech provdnch v Zn. + + + Nezvstn przkumn jednotka: najdi jednotku + + + Przkumn jednotka vyslan Kovalskm zmizela po ukonen podivn komunikace. Mus ji najt a zjistit, co se stalo. + + + Nezvstn hldka: prozkoumej oblast, ve kter hldka zahynula. + + + Hldka se chovala podivn, proto bys ml najt a vyetit dvod tohoto chovn. + + + Nezvstn hldka: najdi hldku + + + Jeden z vojk se bhem sv sluby ztratil mus ho najt a zjistit, pro zmizel. + + + Nezvstn hldka: zabij dozorce + + + Nedaleko ztracen hldky se objevil dozorce mus ho zlikvidovat. + + + Rdiov ruen: najdi poheovanou jednotku + + + Jednotka, kter ptrala po zdroji ruen rdiovho vysln, se ztratila mus ji najt. + + + Rdiov ruen: prozkoumej tla + + + Prozkoumej tla mon tak zjist, pro zemeli. + + + Rdiov ruen: prozkoumej tla + + + Prozkoumej tla mon tak zjist, pro zemeli. + + + Rdiov ruen: vyho dvee do povt + + + Pomoc vbunin mus odstranit dvee a dostat se do budovy. + + + Rdiov ruen: proeti zvuky + + + Z chladniky vychz zvltn zvuky vypad to, jako by byl nkdo zamen uvnit. Zjisti, co se dje. + + + Rdiov ruen: odstra zdroj ruen + + + Nael jsi zdroj ruen rdiovho vysln mus ho zniit. + + + Rdiov ruen: najdi zdroj ruen + + + V budov se nachz zdroj rdiovho ruen najdi jej. + + + Rdiov ruen: najdi vbuniny + + + Jednotka vyslan za elem nalezen zdroje ruen u sebe mla vbuniny. Najdi je, abys mohl odstranit vchod do budovy. + + + Rdiov ruen: dosta se do budovy kolky + + + Zdroj signlu je nkde v budov kolky, take se mus dostat dovnit. + + + Evakuace: kryj armdu + + + Stelec mon umel, ale armda se bez tebe k vrtulnkm stle nedostane. + + + Evakuace: kryj Stelce + + + Velitelstv se zajm o informace, kter by Stelec mohl nabdnout. Mus ho dostat k vrtulnkm. + + + Evakuace: dosta se k vrtulnkm + + + Vichni jsou mrtv mus se k vrtulnkm dostat sm + + + Evakuace: ped evakuac si promluv s Kovalskm + + + Jet ped zahjenm evakuace si mus promluvit s Kovalskm. + + + Evakuace: ekni Kovalskmu, e jsi pipraven + + + Ml bys informovat Kovalskho, e u jsi pipraven k zahjen evakuace. + + + Evakuace: pokej, a emise pejde + + + Mus pokat, a pejde souasn vlna emise. + + + Zhada: najdi zdroj signlu + + + Nedaleko zkladny Kirillov identifikoval zvltn neznm signl. Mus najt jeho zdroj. + + + Zhada: sleduj signl + + + Souadnice signlu jsou opt k dispozici, take je sleduj. + + + Zhada: zjisti posledn znm vskyt signlu + + + Signl zmizel na dvoe ped budovou, proto najdi posledn znmou pozici signlu. + + + Zhada: piprav se na tok na zkladnu + + + Vra se na vojenskou zkladnu a piprav se na pravdpodobn tok. + + + Rdiov ruen: promluv si s Kovalskm + + + Ptal se po tob plukovnk Kovalsky. + + + Laborato X8: dosta se do vtahov achty + + + Vstup do podzemn laboratoe se nachz pod centrem slueb Jubilejnyj a jedinm zpsobem, jak se do n dostat, je vyut vtahov achty. + + + Laborato X8: najdi genertor + + + Napjen dve vtahov achty bylo perueno. Pro oteven dve mus najt a zapnout zlon genertor. + + + Laborato X8: sestup do laboratoe + + + Aby ses dostal do laboratoe X8, mus vyut vtahu, kter se nachz pod centrem slueb Jubilejnyj. + + + Jedin vstel: zlikviduj poslka + + + Mus zlikvidovat poslka. Bez jeho informac oldci nebudou schopn najt laborato. + + + Jedin vstel: pokej na zkaznkovy lidi + + + Pokej, a se ukou zkaznkovi lidi a zabij jejich velitele. Bez nj oldci nebudou schopni najt cestu do laboratoe. + + + Jedin vstel: zabij velitele jednotky oldk + + + Mus zabt velitele jednotky oldk. Bez nj budou oldci neorganizovan a nebudou pedstavovat takovou hrozbu. + + + Jedin vstel: pokej, a se objev oldci + + + Mus pokat, a se objev oldci a zabt jejich velitele. Bez nj se oldci nedokou dohodnout a nebudou pedstavovat takovou hrozbu. + + + Jedin vstel: promluv si s Kovalskm + + + Nahla vsledky mise Kovalskmu + + + Laborato X8: odejdi z komplexu, nebo pokrauj v hledn dokument. + + + Nael jsi dokumenty a nyn me odejt z laboratoe. Je vak mon, e v komplexu se nachzej i dal dokumenty. + + + Laborato X8: bu odejdi z podzemnho komplexu, nebo pokrauj v hledn dokument. + + + Nael jsi dokumenty a nyn me odejt z laboratoe. Je vak mon, e v komplexu se nachzej i dal dokumenty. + + + Laborato X8: odejdi z podzemnho komplexu + + + Patrn jsi nael u vechny dokumenty, kter v laboratoi byly. Konen me z tohoto podzemnho komplexu odejt. + + + Vojci Monolitu: pokej na posily + + + Kovalskij za tebou vyslal posily. Pokej na n a potom zabijte vojky Monolitu, co se udadili v knihkupectv. + + + Tich svt: promluv si s Kovalskm + + + B si promluvit s Kovalskim. Patrn ti chce sdlit cosi dleitho. + + + Evakuace: bra vrtulnky + + + Mus brnit vrtulnky ped neptelem, dokud nebudou moci odstartovat. + + + Evakuace: prober zdravotnka + + + Zd se, e zdravotnka opt zashly neznm tonci. Co nejrychleji ho opt pive k vdom. + + + Evakuace: vra se k vrtulnkm + + + Mus se rychle vrtit k vrtulnkm, kadou chvli mou startovat. + + + Evakuace: okamit se vra k vrtulnkm + + + Vrtulnky jsou pipraveny ke startu. Mus okamit do jednoho nastoupit. Piloti nemohou dlouho ekat! + + diff --git a/gamedata/configs/text/cze/st_quests_zaton.xml b/gamedata/configs/text/cze/st_quests_zaton.xml new file mode 100644 index 0000000..701bf50 --- /dev/null +++ b/gamedata/configs/text/cze/st_quests_zaton.xml @@ -0,0 +1,780 @@ + + + + Bezpe: dojdi do Skadovsku + + + Jedinm relativn bezpenm mstem v Zn jsou velk tbory. Ten nejbli se jmenuje Skadovsk ml by ses tam podvat. + + + Mapy oblast: najdi nkoho, kdo bude mt zjem o mapy + + + Mapy oblast: nabdni mapy Pilotovi + + + Je mon, e mstn prvodce zvan Pilot bude mt zjem o mapy oblasti mezi Zatonem a Jupiterem. + + + Rejnok 2: prozkoumej msto havrie + + + Prozkoumej msto havrie Rejnoka 2. + + + Rejnok 5: prozkoumej msto havrie + + + Rejnok 5: zjisti, pro elektronika vyhoela. + + + Posdka Rejnoka: najdi zdroj vboje, kter zashl dva z vrtulnk + + + Prozkoumej msto havrie Rejnoka 5. + + + Mus najt zdroj silnho elektrickho vboje, kter zashl helikoptru Rejnok 5. + + + Mus zjistit pinu splen elektroniky v Rejnokovi 4 a 5. Zd se, e dolo k zsahu silnm elektrickm vbojem. + + + Jdlo: see jdlo pro oldky + + + Skupina oldk v dlnch rozvodny t podala, abys jim pinesl est plechovek masa, klobsy nebo chleba. + + + Jdlo: zanes jdlo oldkm + + + Jdlo, kter jsi sehnal, mus zanst oldkm do dlen rozvodny. + + + Nstroje: prozkoumej dlny rozvodny + + + V dlnch rozvodny by dajn mly bt njak nstroje. Mon najde i nad, kter hledaj technici. + + + Lov chimry: najdi spcho mutanta + + + Mus najt chimru jet ped tm, ne se probud. + + + Hledn Strake: informuj Gontu + + + Zd se, e Strak stalker, kter zaloil Gontovu jednotku se nael. Pipojil se ke Svobod a k si Pazourek. + + + Lov chimry: zabij mutanta + + + Chimra se probudila a ml bys j zabt, ne bude pozd. + + + Lov chimry: ve 3 hodiny rno se v baru setkej s Gontou + + + Ml by ses jet ped svitem setkat s Gontou a pipojit se k jeho jednotce vyrejc na lov chimry. + + + Lov chimry: informuj Pastike + + + Ml bys ct stalkerovi jmnem Pastik, e lov chimry probhl spn. Ml by t odmnit. + + + Hledn Strake: najdi stalkera + + + Stalker jmnem Strak zadil, aby na Gontovu jednotku zatoila chimra. Byl jsi podn, abys toho parchanta nael. + + + Evakuan msta: prozkoumej pozici B205 + + + Na map, kterou jsi nael v jednom z vrtulnk, byla vyznaena evakuan msta. Ml bys zjistit, zda vojci li na pozici B205. + + + Evakuan msta: prozkoumej pozici B28 + + + Na map, kterou jsi nael v jednom z vrtulnk, byla vyznaena evakuan msta. Ml bys zjistit, zda vojci li na pozici B28. + + + Evakuan msto: zjisti souadnice pozice B28 + + + ern skka jednoho z vrtulnk Rejnok obsahovala nahrvku, na kter velitel uril pozici pro shromdn jednotky. Touto pozic je evakuan msto B28 a tvm kolem je zjistit jeho souadnice. + + + Evakuan msto: dojdi na pozici B28 + + + Msto, na kterm se vojci maj sejt, je v Pripjati. Najdi zpsob, jak se tam dostat. + + + Evakuan msta: prozkoumej pozici B2 + + + Na map, kterou jsi nael v jednom z vrtulnk, byla vyznaena evakuan msta. Ml bys zjistit, zda vojci li na pozici B2. + + + Zvltn kaz: odnes artefakt Fousovi + + + Zdrojem tohoto zvltnho ru byl podobn zvltn artefakt. Fouse by to mohlo zajmat. + + + Zvltn kaz: zeptej se stalker na artefakt + + + Stalkei by o tomto zvltnm artefaktu mohli nco vdt nebo by alespo mohli vdt o nkom, kdo se v artefaktech vyzn. Ml by sis s nimi promluvit. + + + Zvltn kaz: najdi zdroj ze v rpac stanici. + + + V rpac stanici byla spatena podivn z. Fous t podal, abys nael jeho zdroj. + + + Zvltn kaz: vezmi artefakt + + + Zdrojem tohoto zvltnho ru byl podobn zvltn artefakt. Ml bys ho vzt. + + + Zvltn kaz: ekni Fousovi o artefaktu + + + Zdrojem tohoto zvltnho ru byl podobn zvltn artefakt. Pestoe tento artefakt nem, ml bys o nm ct Fousovi. + + + Cesta na ploinu: sko do anomlie + + + Zd se, e cesta na ploinu vede skrz anomlii. Mus do n skoit. + + + Cesta na ploinu: najdi Noemovu tajnou cestu + + + V Noemov PDA byla zmnka o jeho "tajn cest" na ploinu. Mus ji najt. + + + Cesta na ploinu: zjisti od Noema, jak se tam dostat + + + k se, e stalker zvan Noe zn cestu na ploinu. Mus od nj zjistit, jak se tam dostat. + + + Nezvstn stalkei: pines dkaz o tom, e za vm stoj Strak + + + Mus odnst PDA se Strakovmi zznamy do Skadovsku a ukzat ho Fousovi. Zznamy jasn dokazuj, e za mizenm stalker stoj prv tento zdravotnk. + + + Nezvstn stalkei: najdi dkaz o zapojen Straka + + + Mus zjistit, zda Strak nezanechal njak dkaz o svm spojen s mizenm stalker. + + + Rejnok 3: prozkoumej msto havrie + + + Prozkoumej msto havrie Rejnoka 3. + + + Mus pinst artefakt Fousovi, ale doba hjen u uplynula. Nyn budou po artefaktu ptrat i tv protivnci. + + + Mus pinst artefakt Fousovi. Nezapome, e po nm ptraj i tv protivnci. + + + Mus pinst artefakt Fousovi, ale povd se, e jin skupina u jeden nala. Ml bys sledovat signl a snait se dokonit kol dv, ne tv soupei. + + + Mus pinst artefakt Fousovi, ale jin skupina to u dokzala. Za artefakt tak nyn dostane jen polovin stku. + + + Mus pinst artefakt Fousovi. + + + Artefakt na zakzku: pines Gravi + + + Artefakt na zakzku: pines Oko + + + Artefakt na zakzku: pines Bublinu + + + Artefakt na zakzku: pines Skopku + + + Artefakt na zakzku: pines Zlatou rybku + + + Artefakt na zakzku: pines Plamen + + + Artefakt na zakzku: pines Svtluku + + + Artefakt na zakzku: pines Vloku + + + Mus najt artefakt pro Fouse, ale doba hjen u uplynula. Nyn budou po artefaktu ptrat i tv protivnci. + + + Mus najt artefakt pro Fouse. Nezapome, e po nm ptraj i tv protivnci. + + + Mus najt artefakt pro Fouse, ale povd se, e jin skupina u jeden nala. Ml bys sledovat signl a snait se dokonit kol dv, ne tv protivnci. + + + Mus najt artefakt pro Fouse, ale jin skupina to u dokzala. Za artefakt tak nyn dostane jen polovin stku. + + + Mus najt artefakt pro Fouse. + + + Artefakt na zakzku: najdi Gravi + + + Artefakt na zakzku: najdi Oko + + + Artefakt na zakzku: najdi Bublinu + + + Artefakt na zakzku: najdi Skopku + + + Artefakt na zakzku: najdi Zlatou rybku + + + Artefakt na zakzku: najdi Plamen + + + Artefakt na zakzku: najdi Svtluku + + + Artefakt na zakzku: najdi Vloku + + + Kompas: najdi Noema a zjisti, kde me najt vzcn artefakt + + + Na starm lunu mus najt Noema a zjistit, kde bys mohl zskat vzcn artefakt Kompas. Fous jej shn u dlouho a je proto ochoten za nj dobe zaplatit. + + + Kompas: pines artefakt Fousovi + + + Kompas: zjisti od Noema, kde me zskat vzcn artefakt + + + Sultn se chce zmocnit artefaktu, po kterm se Fous shn. Na starm lunu mus najt Noema a zjistit, kde se artefakt d sehnat. + + + Kompas: pines artefakt Sultnovi + + + Ten artefakt, kter ti Noe dal, je prv Kompas, po kterm se shn Sultn. + + + ern obchod: vyzvedni si u Fouse svj podl + + + Ml by sis u Fouse vyzvednout podl z jeho zisk. + + + Lkav nabdka: promluv si se Sultnem + + + Obchodnk Hejkal se domnv, e Fous nepln svou st dohody a navrhuje, aby ses s pomoc obrtil na Sultna, mstnho fa podsvt. + + + ern obchod: vem stalkerm detektory + + + Mus udlat ve pro to, abys stalkerm hledajcm artefakty pro Fouse vzal prototypy detektoru. Pokud Fous nebude mt detektory, bude muset souhlasit se Sultnovmi podmnkami. + + + ern obchod: promluv si se Sultnem + + + Fous u nem detektory, a proto bys sis ml promluvit se Sultnem, zda je problm s ostatnmi dodavateli Fouse vyeen. + + + ern obchod: pinu Vlase, aby pracoval pro Sultna + + + Fous u nem dn dodavatele ani detektory, take si sm nekrtne. Pinu ho pracovat pro Sultna. + + + ern obchod: zjisti nco o aktulnch obchodech Fouse + + + Mus zjistit, s m zrovna Fous obchoduje. To by nm mohlo pomoci odznout jeho zsobovn. + + + ern obchod: odeber stalkerm druh detektory + + + Mus udlat ve pro to, abys stalkerm hledajcm artefakty pro Fouse vzal prototypy detektoru. Pokud nebude mt detektory, bude muset souhlasit se Sultnovmi podmnkami. + + + Lkav nabdka: pines Novikovi ti detektory Veles + + + Obchodnk Hejkal ti nabdl ast v lukrativnm podniku. Tvm kolem je najt ti detektory Veles a odnst je Novikovi do bunkru vdc. + + + Lkav nabdka: pokej, a Hejkal dostane detektory + + + Novikov pijal detektory a slbil, e je nazpt Hejkalovi pole sm. Mus pokat, a skon s prac na dektorech, a pak od nj zjisti vsledek. + + + Lkav nabdka: promluv si s Hejkalem + + + Obchodnk Hejkal ti prostednictvm rdia ekl, e m pote a chtl by s tebou mluvit. + + + Lkav nabdka: pesvd Fouse, aby se drel dohody + + + Obchodnk Hejkal se domnv, e Fous se nedr dohody. Mus si s nm promluvit a pesvdit ho, aby s poruovnm dohody pestal. + + + Lkav nabdka: vydej si podl od Hejkala + + + Fous je pesvden, e Hejkalovi nic nedlu. Mus zjistit, kdo m pravdu a vydat si od nj svj podl. + + + Pahejl t podal, abys mu pinesl jeho krabici. Ukryl ji ve starm Zaporoci, kter po zemtesen spadl do trhliny. Pahejl se do n boj sestoupit, protoe je pln per. + + + Zskal jsi Pahejlovu krabici a nyn bys ji ml zanst jejmu majiteli, aby mohl spravedliv rozdlit jej obsah. + + + Doup upr: informuj stalkery + + + Mus ct stalkerm o doupti upr pod vyslac stanic Krug. + + + Doup upr: informuj Fouse + + + Mus ct Fousovi o doupti upr pod vyslac stanic Krug, aby se mohl rozhodnout, jak ochrnit stalkery. + + + Nezvstn stalkei: jdi za Tetevem + + + Tetev t podal, abys s nm prozkoumal oputnou vyslac stanici. Viml si upr a chce zjistit, jestli tam nkde nen i onen lovec. + + + Nezvstn stalkei: zjisti, co se stalo + + + Zd se, e Strak nen tak nevinn, jak se zdlo. Mus zjistit, co se stalo. + + + Nezvstn stalkei: najdi Teteva + + + Tetev z njakho dvodu odeel smrem k jebm v docch. Mon zjistil nco o nezvstnch stalkerech, take by ses za nm ml podvat. + + + Nezvstn stalkei: zjisti, kde je Tetev + + + Tetev nen na dnm ze svch obvyklch mst. Ml by ses zeptat Fouse, kam el. + + + Nezvstn stalkei: najdi ztracenho lovce + + + Tetev t podal, abys mu pomohl najt ztracenho lovce, kter se pr pokouel nalzt doup upr. Podle aktulnch informac mou za nedvn mizen stalker prv upi. + + + Nezvstn stalkei: dosta se z doupte upr + + + V suternu jsi objevil doup upr a zjistil jsi, e jeho obyvatel jsou jako ommen. Ml bys odsud odejt, a to co nejtieji. + + + Nezvstn stalkei: setkej se s Tetevem + + + Asi bys ml vyhledat Teteva a promluvit si s nm o hledn ztracenho lovce. + + + Nezvstn stalkei: pozdji se setkej s Tetevem + + + Ve vyslac stanici nebyla po lovci Danilovi ani stopa. Tetev se ale tm, co jsi uvnit zjistil, zd bt zmaten a podal t, aby ses s nm pozdji seel a celou zleitost s nm podrobn probral. + + + Nezvstn stalkei: setkej se s Tetevem + + + Na mst, o kterm Tetev mluvil, byla jen mrtv upr, po lovci Danilovi vak ani stopa. Ale zd se, e Tetev zjistil nco zajmavho a chtl by t podat, aby ses k nmu pidal. + + + Vechno nasvduje tomu, e upi nemaj s mizejcmi stalkery nic spolenho. Za vm je Strak, zdravotnk ze Skadovsku. + + + Nad: pines Kardanovi nad + + + Kardan t podal, abys mu sehnal dv sady nad: jednu pro zkladn kony a druhou pro jemnou prci. Technik ti za nad zaplat a bude s nm schopen provdt pokroilej pravy zbran a zbroje. + + + Nad: pines Kardanovi nad + + + Kardan t podal, abys mu sehnal dv sady nad: jednu pro zkladn kony a druhou pro kalibraci. Technik ti za nad zaplat a bude s nm schopen provdt pokroilej pravy zbran a zbroje. + + + Nad: pines Kardanovi nad + + + Kardan t podal, abys mu sehnal sadu nad pro zkladn pracovn kony. Technik ti za nad zaplat a bude s nm schopen provdt pokroilej pravy zbran a zbroje. + + + Nad: pines Kardanovi nad + + + Kardan t podal, abys mu sehnal dv sady nad: jednu pro jemnou prci a druhou pro kalibraci. Technik ti za nad zaplat a bude s nm schopen provdt pokroilej pravy zbran a zbroje. + + + Nad: pines Kardanovi nad + + + Kardan t podal, abys mu sehnal sadu nad pro jemn pracovn kony. Technik ti za nad zaplat a bude s nm schopen provdt pokroilej pravy zbran a zbroje. + + + Nad: pines Kardanovi nad + + + Kardan t podal, abys mu sehnal sadu nad pro kalibraci. Technik ti za nad zaplat a bude s nm schopen provdt pokroilej pravy zbran a zbroje. + + + Nad: pines Kardanovi nad + + + Kardan t podal, abys mu sehnal ti sady nad: jednu pro zkladn pracovn kony, druhou pro jemnou prci a tet pro kalibraci. Technik ti za nad zaplat a bude s nm schopen provdt pokroilej pravy zbran a zbroje. + + + Tbor oldk: seber vechny informace, na kter naraz + + + Obchodnk Hejkal slbil, e za kadou informaci, na kterou v tboe oldk v tovrn na zpracovn odpadu naraz, dobe zaplat. Zajmaj ho plny oldk. + + + Tbor oldk: seber vechny informace, na kter naraz + + + Obchodnk Hejkal slbil, e za kadou informaci, na kterou v tboe oldk v tovrn na zpracovn odpadu naraz, dobe zaplat. Zajmaj ho plny oldk. + + + Ti kamardi: zjisti, co se stalo s Brkou + + + Kardan t podal, abys vydil omluvu jeho kamardovi, stalkerovi zvanmu Brka. Pohdali se, Brka se natval a odeel neznmo kam. + + + Ti kamardi: zjisti, co se stalo Brkovi a Vtipoovi + + + Kardan t podal, abys vydil omluvy jeho kamardm, stalkerm zvanm Brka a Vtipo. Pohdali se, oba kamardi se natvali a odeli neznmo kam. + + + Ti kamardi: zjisti, co se stalo s Vtiponm + + + Kardan t podal, abys vydil omluvu jeho kamardovi, stalkerovi zvanmu Vtipo. Pohdali se, Vtipo se natval a odeel neznmo kam. + + + Speciln objednvka: vyzvedni zbo + + + Zbo bylo dorueno, ml bys ho pevzt od ipery. + + + Speciln objednvka: ekej na doruen + + + Objednvka byla provedena, nyn bys ml pokat, a bude zbo dorueno iperovi. + + + Reputace: najdi Pahejla + + + Mus najt Pahejla a pinutit ho, aby drel jazyk za zuby. ipera nikdy nedlal do kradench vc, zatmco Pahejl nen dn andlek. Naposled byl vidn u jeb v docch, mon tam pod bude. + + + Mus najt Pahejla a pinutit ho, aby drel jazyk za zuby. Pahejl nen u jeb v docch, bandit by ale mohli vdt, kde ho hledat. + + + Mus najt Pahejla a pinutit ho, aby drel jazyk za zuby. Zd se, e v tom jedou i bandit, take by mohli vdt, kde ho hledat. + + + Mus najt Pahejla a pinutit ho, aby drel jazyk za zuby. Momentln se zd, e se po nm slehla zem. + + + Mus najt Pahejla a pinutit ho, aby drel jazyk za zuby. Podle PDA nalezenho u jednoho z bandit se zd, e Pahejla hledaj Sultnovi lidi. Bohuel v nm nen ani zmnka o tom, kde by mohl bt. + + + Reputace: zjisti, kam zmizel Pahejl + + + Pahejl nen na dnm ze svch obvyklch mst, take by ses ml zeptat mstnch, jestli ho nhodou nevidli. + + + Mus najt Pahejla a pinutit ho, aby drel jazyk za zuby. Na obvyklm mst nen, ale Sultn by o nm mohl vdt vc. + + + Mus najt Pahejla a pinutit ho, aby drel jazyk za zuby. Na obvyklm mst nen, ale Fous by o nm mohl vdt vc. + + + Reputace: promluv si s Pahejlem + + + Mus najt Pahejla a pinutit ho, aby drel jazyk za zuby. ipera nikdy nedlal do kradench vc, zatmco Pahejl nen dn andlek. + + + Doup upr: najdi vtrac achtu + + + Najdi vtrac achtu a ve do doupte upr jedovat plyn + + + Doup upr: najdi jedovat plyn + + + Ke znien doupte upr bude potebovat jedovat plyn. Hejkal by mohl vdt, kde se d sehnat. + + + Ke znien doupte upr bude potebovat jedovat plyn. Hejkal tvrd, e kanystry s plynem bys mohl najt u oputnho vojenskho konvoje. + + + Doup upr: najdi kle ke schrnce + + + V dokumentech, kter jsi nalezl, se nachz zmnka o klch ke schrnce s kanystry s plynem. Mus je najt. + + + Doup upr: najdi zpsob, jak odemknout schrnku s kanystrem plynu + + + Schrnka s kanystrem plynu je zamen. Mus najt zpsob, jak ji otevt. + + + Doup upr: umsti kanystr s plynem + + + Vlo kanystr s plynem do vtrac achty suternu vyslac stanice. Plyn by se ml rozit ve vtrac acht, nasytit sutern a zabt upry. + + + Doup upr: sdl Fousovi, e doup bylo znieno + + + Informuj Fouse, e jsi zniil doup upr a zajistil tak bezpenost stalker ve Skadovsku. + + + Doup upr: oto ventilem + + + Oto ventilem, aby se jedovat plyn mohl vtrac achtou rozptlit v suternu s douptem upr. + + + Doup upr: pokej, dokud plyn nezapsob + + + Mus se ujistit, e se plyn rozptlil v doupti a e upi jsou mrtv. + + + Transakce: setkej se s bandity v loveck stanici + + + Sultn t podal, aby ses zastnil jednn s obchodnkem. Mus doprovodit jeho lidi a krt je v ppad, e se nco pihod. + + + Transakce: setkej se s obchodnkem + + + Hejkal ti nabdl prci ochranu obchodnka pi obchodnm jednn. Obchod samozejm nen pln nejist a me se stt, e neprobhne hladce. + + + Transakce: setkej se se stalkery v loveck stanici + + + Setkej se se stalkery v loveck stanici a pomoz jim peruit obchod mezi bandity a obchodnkem se zbranmi. + + + Transakce: chra obchodnka + + + Obchodnk ti vysvtlil tvj kol chrnit jej bhem transakce. + + + Transakce: naslouchej konverzaci + + + Stalkei chtj, abys vyslechl konverzaci mezi bandity a obchodnkem se zbranmi. + + + Transakce: naru prodej zbran + + + Udlej ve, co bude nutn, abys naruil obchod mezi bandity a obchodnkem. + + + Transakce: odstra svdky + + + Prbh transakce se obchodnkovi vymkl z rukou, take se mus postarat o vechny svdky. + + + Transakce: ochra obchodnka + + + Mus ochrnit obchodnka. Navc ti pikzal, aby ses postaral o vechny svdky obchodu, vetn jeho klient. + + + Transakce: najdi obchodnka + + + Obchodnk me mt dleit informace, kter by se pozdji mohly hodit. Dojdi si pro n. + + + Transakce: kryj bandity bhem jednn + + + Zsta ostrait a kryj bandity pi jednnch s obchodnkem. + + + Transakce: promluv si s obchodnkem + + + Obchod s bandity byl dokonen, ml by sis vyzvednout svou odmnu. + + + Transakce: vyzvedni si u Fouse odmnu + + + Fous ti slbil odmnu, pokud se ti poda naruit transakci mezi bandity a obchodnkem. To se ti podailo dokonale, take si me dojt pro svou odmnu. + + + Transakce: promluv si s vdcem bandit + + + Mus informovat vdce bandit, e jsi pipraven zastnit se transakce. + + + Zsah: rozhodni se, co udl + + + Zsah: zato na stalkery + + + Zsah: vyzvedni si odmnu + + + tok na tbor byl odraen, take si me promluvit se stalkery ohledn sv odmny. Kdybys je o toku neinformoval, pravdpodobn by mli velice tkou pozici. + + + Skupina stalker se pidala k banditm a okrd svou bvalou rodinu. Mus se rozhodnout, zda se zastn pepaden, varuje stalkery, nebo se do nieho nebude mchat. + + + Zsah: pokej na dohodnut as + + + der: Pokej si na sprvn okamik + + + Nepstupn skr: dones schrnku Pahejlovi + + + Obchod: promluv si s velitelem stalker. + + + Obchod byl peruen, pekupnk zbran je mrtev. Promluv si s velitelem stalker. + + + Ztracen stalkei: ekni lidem na Skadovsku, co se stalo + + + Mus vzt nalezen kle, odemknout jimi kontejner a vyndat bombu s jedovatm plynem. + + + Pelech upr: vyndej z kontejneru plynovou bombu + + + Njezd: pepadni bandity + + + Kdy banditm vpadne do zad, znan tm pome brncm se stalkerm. + + + Njezd: setkej se s bandity + + + Pipoj se k banditm v njezdu na tbor stalker. + + + Njezd: pipoj se k banditm + + + Stalkei t podali o pomoc pi obran ped bandity. M se nejprv pidat k banditm. A se vrhnou do toku, jednodue jim zane stlet do zad. + + + Banditi ekaj u evenka. Jestli se k nim chce pipojit v toku na stalkery, bude za nimi muset dojt. + + + Pokej na setkn s bandity. Chtj na stalkery zatoit po plnoci, a bude podn tma. Dohodnut msto srazu je u evenka. + + + Njezd: zajdi si pro podl + + + tok na stalkery se vydail. Zajdi si vyzvednout svj podl na koisti. + + + Pokej na sprvn okamik, kdy budou banditi pln zabran do toku. Potom jim me zat plit do zad a tak pomoc evenkovm stalkerm. + + + Temn byznys: zani pracovat pro Fouse + + + Abys mohl stalkerm pracujcm pro Fouse ukrst prototypy detektor, mus se mezi n vett. Teprv pak zjist, kde se skrvaj tv konkurenci. + + + Vezmi kontejner a odnes ho k jeho majiteli. + + + V palubnm potai Rejnoka 2 byly uloeny mapy oblasti mezi Zatonem a Jupiterem. Teba najde nkoho, komu se budou hodit. + + + Cesta na nhorn ploinu: promluv si se stalkery + + + Na nhorn ploinu patrn nevede dn pm cesta. Zeptej se mstnch stalker, zda se tam ned dostat njak jinak. + + + Ten artefakt, kterej ti dal Noe, nen nic jinho ne Kompas, co po nm tak tou Fous. + + diff --git a/gamedata/configs/text/cze/st_subtitles.xml b/gamedata/configs/text/cze/st_subtitles.xml new file mode 100644 index 0000000..98dff16 --- /dev/null +++ b/gamedata/configs/text/cze/st_subtitles.xml @@ -0,0 +1,156 @@ + + + + V brzkch hodinch 26. dubna 1986 se pehv a nsledn katastroficky vybuchuje tvrt reaktor ernobylsk jadern elektrrny. Vznikl radioaktivn prach poslze vtry roznesou nap Sovtskm svazem. Prach kles k zemi i ve vzdlench oblastech Evropy a dostane se dokonce a do Ameriky. + + + Nsledky havrie jsou tak hrozn, e vlda Sovtskho svazu je nucena neprodlen evakuovat obyvatele pilehlch mst a vesnic. + + + Ze zamoench oblast v okruhu 30 kilometr od elektrrny je pot vytvoena psn steen, nepstupn zna. + + + Nad znienm blokem je vztyen elezobetonov Sarkofg a zbytek elektrrny je uveden zpt do provozu. Ptomnost vkonnho zdroje elektiny a skutenost, e oblast je zcela neobydlen, vedou ke vzniku st tajnch laborato. + + + 10. ervna 2006. Znu osvtluje zblesk oslnivho svtla. Tuto explozi nsleduje okamik naprostho ticha. Na obloze se trhaj mrana a po chvli se zem otese pod nporem hlasitho hromu. Vtina vojk strc okraj Zny je v jedin vtein zabita. + + + 2008. Vdci si stle lmou hlavu nad tm, co se stalo. Pleitostn vpravy do Zny zpravidla kon katastrofou. Ta hrstka lid, kte je peij, vyprv historky o zmutovanch zvatech s neuvitelnmi schopnostmi. + + + 2009. Rzn odhady uvdj, e v Zn dnes ije sto a ti sta neidentifikovanch osob. Tito lid si kaj stalkei a vydlvaj si sbrem anomlnch tvar, jim se pezdv artefakty a kter se daj prodat za tdr sumy. + + + 2010. Pestoe armda utvoila po okrajch Zny steen kordony, ady stalker se rozrstaj. Oblasti dle od okraj vak stle zstvaj neprozkoumny. Kad pokus o proniknut do nitra Zny se zatm setkal s nespchem. + + + 2012. Stalker jmnem Stelec odhal tajemstv Vypalovae mozk, mocnho vyslae schopnho zniit lidskou mysl, a deaktivuje jej. Dsledkem toho se do stedu Zny hrnou stalkei po stovkch: nkte doufaj, e naleznou hromady cennch artefakt, jin ptraj po legendrnm Plnii pn. + + + Ve svtle tchto okolnost se Rada nrodn bezpenosti a obrany Ukrajiny rozhoduje vyslat na msto okamit speciln vsadek, v rmci takzvan Operace Prplav. Destky armdnch vrtulnk naloench vojky se rozlet smrem k ernobylu, vybavench mapami anomlnch pol, kter jim maj umonit bezpen prlet. Navzdory dkladnm ppravm vak operace kon fiaskem. Z mise se nevrt ani jeden vrtulnk. + + + Major Dgtarev, speciln agent Rady bezpenosti Ukrajiny a sm zkuen stalker, je vysln do Zny zjistit, pro se operace nezdaila. + + + Vyzbrojen tonou pukou, potravinami na dva tdny a vyslakou pro spojen s velitelstvm vykrauje na cestu do stedu Zny. + + + Mluvit se stalkery nem smysl... bu nic nevd, nebo vm nic nechtj ct. + + + Zna nevh a pi kad pleitosti majorovi pipomn, e nen dnm rjem. Neuplyne ani den, ani by nezatoili mutanti i dokonce lid. + + + Komunikace s velitelstvm nijak nepomh: vet vekerch spolehlivch informac pedstavuj souadnice pti ztroskotanch vrtulnk. Nkolik kilometr ped ernobylskou elektrrnou se vyslaka zcela odml. + + + Dgtarev zstv sm. + + + Za zdrn dokonen vyetovn byl Dgtarev zhy poven na plukovnka. Odmtl nabdku pohodlnho kancelskho zamstnn a msto toho zadal, aby byl do Zny vysln jako permanentn pozorovatel Sluby bezpenosti. + + + Dgtarevovi nadzen byli znepokojeni zskanmi informacemi o psionickch zazench. Veker informace o laboratoch X byly vyaty z armdnch zznam a pesunuty do sloek Psn tajn. Zamstnanci Sluby bezpenosti, kte pracovali v Zn, obdreli rozkaz za kadou cenu zabrnit en informac o laboratoch a provdnch vzkumech. + + + Na zklad technick dokumentace k pedmtu 62 bylo provedeno nkolik experiment. Po ad zkouek se dolo k zvru, e masov nasazen tto zbran by kvli vysok cen munice bylo nehospodrn. Existuj vak dkazy o tom, e armda ve vzkumu Gaussovch puek nadle pokrauje. + + + Kdy se Sultnovi a jeho gangu nepodailo obsadit Skadovsk, nechali lo jejmu osudu. Stalkei se zaali ctit o poznn bezpenji, co vedlo k masivnmu nrstu prodeje artefakt Fousovi. Jeho obchody zaaly vzkvtat, zatmco Skadovsk se stal stejn populrnm jako slavn bar U Sta rad. + + + Sultn na Skadovsku ustanovil pevn spoleensk d, a lo se tak stala zkladnou bandit. Fous, kter odmtal pravideln odevzdvat vpaln, se spolu se skupinkou stalker vydal na przkum neprobdanch oblast Zny. Kdy pak Sultnovi mui lapili nkolik nezkrotnch ivl a hodili je pes palubu, aby zemeli v emisch, zbyl stalkei se rychle pestali pokouet o znovunastolen pvodnch pomr. + + + Skadovsk zstal toitm pro vechny astn cestovatele, kte k nmu dorazili. Bandit se na lodi sice pokusili zavst podek, nicmn stalkei je umrnili. Na lodi se rozhostil kehk mr. + + + Nic vak netrv vn. Nedaleko lodi se nachzel pelech upr a ti postupn zaali pronikat i na lo. Kdy se up toky zaaly opakovat i za blho dne, stalkei vyslali vpravu, kter to s nimi mla skoncovat. Vprav se vak nepodailo vymst tunely pln doista a nedlouho pot zaplavila lo vlna besti, kter s posdkou nadobro skoncovaly. + + + Po znien upho pelechu zstali mutanti pli slab, ne aby dokzali vraznji zasahovat do dn na Skadovsku. Staik lo se na chvli stala ozou relativn stability v boulivm a vn se mncm prosted Zny. + + + Stalkei z ndra Janov se nakonec piklonili ke Svobod. Povinnost se pokusila sv ztracen zem znovu dobt, jenome v nastal pestelce zemel podplukovnk ulga. Po ztrt velitele se drustvo Povinnosti rychle rozuteklo. + + + Dky rostouc popularit mezi stalkery a pvalu novch rekrut se Povinnosti podailo vyhnat Svobodu z ndra Janov. Loki a jeho bojovnci za Svobodu zemeli v ltm boji. + + + Na ndra Janov se ustanovila kehk rovnovha mezi pvrenci Svobody a Povinnosti. Bojovnci obou frakc, unaven nesmyslnmi arvtkami, zaali opoutt sv drustva a pidvat se k nezvislm stalkerm. + + + Vdeck vzkumn expedice zorganizovan profesory Hermannem a Ozerskim se zdrn zavrila. Zskan data umonila vvoj mnoha novch vynlez a lk. Dky tmto prkopnickm projektm byly ohromn navreny rozpoty vem vzkumnm programm v Zn. + + + Vdeck vzkumn expedice zorganizovan profesory Hermannem a Ozerskim nenasbrala dostatek dat a byla odvolna. Po nvratu do civilnho svta se oba vdci zaali vnovat nesouvisejcm projektm. + + + Garikovo vyprvn o armd a jejm zpolen s nstrahami Prijpati oslovilo nejednoho stalkera. Skupinky odvlivc zaaly brzy prozkoumvat msto duch. Stalkei se, navzdory neustvajcm tokm Monolitu, opevnili v bvalm vojenskm tboe, z nho zaali podat vpravy hloubji do msta. Postup je pomal, ale jist. + + + Garikovo vyprvn o osudu armdy vyvolalo ve stalkerech hrzu z Pripjati. Ta hrstka statench, kter se do msta pece jen vypravila, narazila na hrzn a nevysvtliteln jevy, kter jen dle pisply k ji tak pochmurnmu obrazu mrtvho msta. + + + Oza ji nadle nebyla pouhou legendou. Mezi stalkery se brzy zaalo ukat o lidech, jim se podailo najt cestu k tto zhadn anomlii. Poet dobrodruh, kte se rozhodli vydat v jejich stopch, zstal i nadle vysok - z eho se rozhodli tit bandit. Nic netuc zelen se asto nech zlkat slibem, e ho bandita zavede k Oze, jen aby skonil pepaden a oebraen daleko od ostatnch stalker. + + + I po tom vem v Zn dle pracuj skupinky oldk. Jejich zjem o tajn laboratoe dokonce vzrostl, co pilkalo pozornost ostrait Sluby bezpenosti. Pesto pese vechno se stle neda odhalit identitu klienta, jen si oldky najal. + + + Okol ndra Janov lk pozornost stle rostoucho potu stalker. Skutenost, e v oblasti neije mnoho nebezpench mutant a naopak se tu hojn vyskytuj anomlie, vedla k tomu, e se j mezi stalkery m dl astji k studnice poklad. + + + Okol ndra Janov si vybudovalo povst jedn z nejnebezpenjch oblast v Zn. Z vprav se vracelo stle mn a mn stalker, mnoz z nich skonali pod rukama mutant jen na dohled od tbora. Jednm z nezvstnch je i Zvroboj, kter se sem vydal na svj patrn posledn lov chimry. + + + Zulus se vrtil na hlavn zkladnu Povinnosti v Rostoku. Nikdo nev, co tam s vdcem Povinnosti, generlem Voroninem, probral, ovem o nkolik dn pozdji byl spaen v ele velk skupiny ozbrojenc, kter krela smrem do stedu Zny. + + + Zvsti o Zulusov osudu se donesly a k vdci Povinnosti, generlu Voroninovi. K nemalmu pekvapen vech se Voronin rozhodl Zuluse posmrtn vyznamenat nejvym ocennm Povinnosti, stbrnm ttem. + + + Vo se vypravil do armdnch skladi drench Svobodou, kde mu jeho usmvav povaha a optimismus rychle vynesly zaslouenou oblibu. Nakonec se ujal velen mal skupiny vdc a pustil se do vzkumu anomlnch oblast. + + + Stalkei z Janovskho ndra si i dnes pleitostn vzpomenou na usmvavho Va, jeho bezstarostnost a talent rozenho stalkera. Vichni se shoduj, e Vo udlal obrovskou chybu, kdy se pi svm tst vydal hledat cestu do Pripjati. + + + V Zn se objevila nov skupina stalker. Jsou dobe vycvien, ale o jejich clech se nic nev. Nepotvrzen dohady naznauj, e jde o bval bojovnky Monolitu, jim vel jaksi mu jmnem Tulk. + + + Mlokdo si vbec viml, e zmizel Tulk, jedin lovk, kter podn vdl, co se stane lidem, kte propadnou kouzlu Monolitu... a jedin, kdo jim pomhal. + + + Nadporuk Sokolov pokraoval v peletech nad Znou a nakonec byl sestelen oldky nad Limanskem. Peil jen zzrakem a o dva tdny pozdji jej zachrnila hldka nedaleko kordonu. Brzy pot odeel Sokolov od letectva a dal se na drhu civilnho pilota. + + + Seznam vojk, kte padli v prbhu Operace Prplav, se rozrostl o dal jmno: Nadporuk O. N. Sokolov. Zemel pi vkonu sluby. + + + Hejkal si vybudoval dobr kontakty s klienty mimo Znu. Keftuje s informacemi a proslch se, e k jeho hlavnm zkaznkm pat i Sluba bezpenosti. + + + Pi jedn obzvlt siln emisi se jist skupina stalker uchlila do bezpe Noemovy star brky. Nedlouho nato brku pepadla tlupa snork a stalkei si rychle uvdomili, e nevdomky nali malou, avak obranyschopnou pevnost. Jet vc je vak zarazila smeka pseudopsch tat, kter sm Noe vyvedl do epick bitvy proti snorkm. + + + Kdy Kardan zjistil, co se pihodilo jeho kamardm, vzdal se svch sn o karie stalkera. Pekonal svj alkoholismus a odsthoval se do Janova, kde se seznmil s Nitrem a spolu s nm pak zaloil opravskou dlnu. Oba technici dnes naden investuj vechen svj voln as do tvorby vozidla, kter by pro nehostinn prosted Zny bylo ideln. + + + Kardan pekonal svj alkoholismus a odsthoval se ze Skadovsku. Mezi stalkery se uk, e se vydal hledat sv ztracen ptele. Vrtil se nkolik dn pot, zrann a otrven zenm. Kdy se ze svch zrann nakonec vylil, odeel ze Zny nadobro. + + + Stelec pedal vechny informace, kter objevil v ernobylu, dstojnkm Sluby bezpenosti. Na popud tchto objev zaloila vlda Vdeck institut pro vzkum ernobylskch anomlnch oblast. Stelec v Institutu pijal pozici vrchnho vdeckho konzultanta. + + + Spolu se Stelcem se ztratily i jeho poznatky. Informace, kter objevil v ernobylu a je by mohly poslouit k rozlousknut nejedn zhady Zny, se nikdy nedostaly do vnjho svta. Zd se, e Zna si sv tajemstv doke ochrnit. + + + Kdy se plukovnk Kovalskij, velc dstojnk letky Rejnok, vrtil ze Zny, popsal svm nadzenm dvody, kter zapinily selhn Operace Prplav. Po shodlouhm vyetovn a marnch pokusech generality hodit vinu na jeho hlavu byl plukovnk nakonec estn zprotn sluby. + + + Plukovnk Kovalskij, velc dstojnk letky Rejnok, se uchlil k vnmu odpoinku nedaleko mst, kde skonala i vtina jeho jednotky. Jejich tla vstebala Zna a dnes po nich nezbv nic ne star, vybledl fotografie ve specializovanch vojenskch muzech, kter pipomnaj jejich obtovn za vlast. + + diff --git a/gamedata/configs/text/cze/ui_st_credits.xml b/gamedata/configs/text/cze/ui_st_credits.xml new file mode 100644 index 0000000..3b158c1 --- /dev/null +++ b/gamedata/configs/text/cze/ui_st_credits.xml @@ -0,0 +1,684 @@ + + + + Sergey Chechin + + + Maciej Abramowicz + + + Armen Abroyan + + + Herci + + + Testei + + + AMD/ATI + + + Roman Androshiuk + + + Animtor + + + Grafick oddlen + + + editel vtvarnk + + + Nikita Atroshenko + + + Damian Bajorek + + + Mikhail Bastrykin + + + Kamil Bilinski + + + Krzysztof Binkowski + + + Arkadiusz Bochenek + + + Justin Boggs + + + Anatoly Bogush + + + Wojciech Borowy + + + Stanislaw Burtsau + + + Modely postav + + + Aleksey Cherevatenko + + + Jerzy Chrul + + + Wojciech Ciemny + + + Skladatel + + + Dmitry Abe Davidyan + + + Aaron Davies + + + Alexander Demidenko + + + Programtorsk + + + oddlen + + + Lukasz Derewonko + + + Ruslan Didenko + + + Yuri Doroshenko + + + Elena Dovgaliuk + + + Rafal Durajczyk + + + Petr Dushinsky + + + Maciej Dziarnowski + + + Sergey Eremenko + + + Yuri Dark Falchenko + + + Jakub Gabryel + + + Cezary Galach + + + Designrsk oddlen + + + Programtoi hernho obsahu + + + CENEGA, zruka kvality + + + Zvltn podkovn zaslou + + + Filip Gerasimov + + + Grigory Hermann + + + Angelica Girich + + + Pawel Golubinski + + + Marcin Gorniak + + + Tomasz Goscicki + + + Programtoi grafiky + + + Holger Grun + + + Pawel Grzywaczewski + + + Sergiy Grygorovich + + + Marcin Gutowski + + + Dmitry Yasenev + + + Intel + + + Sergey Ivantsov + + + Norbert Jankowski + + + Alexander Kachaniuk + + + Dmitry Kalita + + + Aleksander Keska + + + Andrey Darin Kirienko + + + Lukasz Kobylanski + + + Andrey Kolomiets + + + Artur Komorek + + + Yuri Konstantinov + + + Maria Kotolovskaya + + + Alexander Kovach + + + Kirill Koval + + + Irina Krivchikova + + + Dmitry Krivets + + + Eugene Kuchma + + + Svetlana Kudrya + + + Sergey Kurbatov + + + Olga Kuzhel + + + Dmitry Kuzmenko + + + Aleksey Kuznetsov + + + Oleg Kuznetsov + + + Szymon Lazarski + + + Hlavn animtor + + + Hlavn vtvarnk + + + Hlavn designr + + + Hlavn programtor + + + Hlavn testei + + + Hlavn experti + + + Nvrh rovn + + + Korektury + + + Vladimir Litvinenko + + + Eric Lundgren + + + Sergey Maistrenko + + + Dmitry Macedon + + + Roman Malinkin + + + Projektov manaei + + + Alexander Maniliuk + + + Daniel Mankowski + + + Denis Matveenko + + + Maciej Mazurek + + + Piotr Mazurkiewicz + + + Darren McPhee + + + Igor Melnikov + + + Victor Merkulov + + + Damian Mielnik + + + Pavel Mikhailov + + + Konstantin Mironov + + + Obrovsk dky Olegu Fomenkovi + + + a firm BuntarMedia + + + za pomoc s motion capture + + + Vladimir Morev + + + Andrey Moroz + + + Dawid Mrozowski + + + Yuri Negrobov + + + Programtor hry vce hr + + + nVidia + + + Aleksey Omelchuk + + + Lukasz Osinski + + + Mikhail Parfeniuk + + + Eugene Pashin + + + Igor Pasichnyi + + + Bartosz Peas + + + Programtor fyziky + + + Jacek Piotrowski + + + Alexander Plichko + + + PR oddlen + + + editel PR + + + PR manaei + + + Sergey Prishepa + + + Producent + + + Projektov manaer + + + Testovn + + + Anton Ravin + + + Sebastian Rejent + + + Mateusz Rekorajski + + + Filip Resiak + + + Peter Ross + + + Ivan Rozin + + + Lukasz Ruminski + + + Denis Rutkovsky + + + Lukasz Rynkowski + + + Manaer obchodnho rozvoje + + + Piotr Samborowski + + + Maria Shapunova + + + Sergey Shelest + + + Igor Sidorenko + + + Mikolaj Sitkiewicz + + + Yuri Skripal + + + Konstantin Slipchenko + + + Tomasz Sobotka + + + Mistr zvuku + + + Zvltn podkovn + + + zaslou + + + Oleg Stalchuk + + + Liudmila Starodub + + + Vladimir Stavitsky + + + Pawel Stempien + + + Pawel Strzelczyk + + + Autoi + + + Konstantin Stupivtsev + + + Zkaznick + + + podpora + + + Rafal Szekalski + + + Maciej Szumowski + + + Marcin Szwargolinski + + + Vladimir Tereshiuk + + + Sergey Terliuk + + + Textury + + + A vem ostatnm, kdo pispli + + + k vylepen hry: + + + Konstantin Morozkov + + + Yaroslav Drdko Jar Alexandrov + + + Dmitry Komandor Ivanov + + + Oleg Chernov + + + Ig. Valerian (Golovchenko) aka oVal + + + M. Bystrykhin + + + Eugene Mulder Khaletskiy + + + Pavel Goon Bolotov + + + Alexander Leks Abramov + + + Alexander Novikov + + + Alexander Poshtaruk, Andrey Oleshk + + + Eugene KRANZ Goncharenko + + + Sergey Dvuzhilny + + + Aleksey Don Reba Badalov + + + Sergey Dvuzhilny, Tolusha + + + Artem Zuev, aka BAC9-FLCL + + + Glot, Patriot, Mers + + + Tiger, Demesis, Kharon, Moby + + + Alexander Oleinik + + + Konstantin Inkvizitor Kriuchkov + + + Alexander Shakhovsky, Igor Dolzhenko + + + Sergey Tur Leshenko + + + Dmitry Hill Gorban + + + Mikhail Kliuev + + + Sergey Termite Volchanov + + + Sergey Tikhomirov + + + Ilya Tolmachev + + + Jakub Trudzik + + + Nvrh rozhran + + + Yuri Uralsky + + + Denis Tetri$Zs Yusupov + + + RandyJ VanderHeyden + + + Vladimir Vazhinsky + + + Andrey Verpakhovsky + + + Alexander Vilkov + + + Anastassia Voskolovich + + + Andrzej Wardziak + + + Programtor webu + + + Dominik Wojcik + + + Lukasz Watroba + + + Eugene Yablon + + + Yuri Yatsenko + + + Eugene Yatsiuk + + + Oleg Yavorsky + + + Valentin Yeltyshev + + + Eugene Zaitsev + + + Andrey Zakoliukin + + + Marek Zdziarski + + + Michal Zegarski + + + Albert Zmudzki + + + Aleksey Zorin + + + Bartosz Zukowski + + + Victoria Morrant Yukhno + + + Sergey ion Kalintsev + + + Roman RVCool Kulikov + + + Maxim Smirnov + + + Omar Al-Shekhly + + + Roman Marauder Arhipov + + diff --git a/gamedata/configs/text/cze/ui_st_inventory.xml b/gamedata/configs/text/cze/ui_st_inventory.xml new file mode 100644 index 0000000..73d69f9 --- /dev/null +++ b/gamedata/configs/text/cze/ui_st_inventory.xml @@ -0,0 +1,303 @@ + + + + Nedostatek penz + + + Postava nem dost penz + + + $$ACTION_QUICK_USE_1$$ + + + $$ACTION_QUICK_USE_2$$ + + + $$ACTION_QUICK_USE_3$$ + + + $$ACTION_QUICK_USE_4$$ + + + aktivovat artefakt + + + pipojit grantomet + + + pipojit pukohled + + + pipojit tlumi + + + Cena + + + Skupina: + + + Stav + + + odpojit grantomet + + + odpojit pukohled + + + odpojit tlumi + + + oblct + + + zahodit + + + zahodit ve + + + snst + + + kg + + + pipojit k opasku + + + pesunout do batohu + + + pesunout na pozici + + + Tento obchodnk nem o takov vci zjem. + + + Takhle pokozen pedmty se prodat nedaj. + + + pehrt + + + prodat pedmt + + + Stav zbroje + + + Kontaminace radioaktivitou + + + sundat kombinzu + + + vyndat zsobnk + + + pout + + + Hm. + + + Po. nboj + + + Pesnost + + + Koupit zkladn munici do pistole (Q) + + + Koupit munici do puky (W) + + + Uzdravovn ran + + + Zruit + + + Zbra nelze koupit + + + Omezen potu + + + Pokozen + + + Vchoz (F5) + + + Zpt + + + Koupit podven grantomet na puku (D) + + + Koupit granty do podvenho grantometu (E) + + + Ovldn + + + Nyn + + + Obnova zdrav + + + Tk + + + Zopakovat posledn nkup + + + Pedchoz (F4) + + + Penze + + + Vyadovno + + + Nem dost penz + + + OK + + + Nesen hmotnost + + + Ped ohnm + + + Ped chemi + + + Zbroj + + + Ped rad. + + + Ped elek. + + + Ped psi. + + + Ped nrazy + + + Obnova vdre + + + Vzbroj 1 (F1) + + + Vzbroj 2 (F2) + + + Vzbroj 3 (F3) + + + Radiace + + + Omezen hodnost + + + Kadence + + + Vynulovat (C) + + + ton puky + + + Zahnn hladu + + + Koupit optick pukohled + + + Prodat ve z batohu (X) + + + Puky + + + Koupit tlumi na pistoli (A) + + + Koupit tlumi na puku (F) + + + Odstelovaky + + + as + + + To u m + + + Internetov sluby hry S.T.A.L.K.E.R. nejsou dostupn. + + + Nelze se pipojit k hlavnmu serveru. + + + Ochrana: + + + Vchoz + + + Nakoupen vzbroj uloena jako + + + Celkov vha: + + + vypt + + + Obnova vdre + + + Krvcen + + + Maximln zt + + + Zdrav + + + Munice + + + Trvn + + + s. + + + Umon ti pet emisi + + + nasadit pilbu + + + sundat pilbu + + diff --git a/gamedata/configs/text/cze/ui_st_ixray.xml b/gamedata/configs/text/cze/ui_st_ixray.xml new file mode 100644 index 0000000..67e115a --- /dev/null +++ b/gamedata/configs/text/cze/ui_st_ixray.xml @@ -0,0 +1,62 @@ + + + + S.T.A.L.K.E.R.: Call of Pripyat + + + Hlavn menu + + + rove: + + + rychl uloen + + + auto uloen + + + + m + + + Vzdlenost deru + + + + Oteven kufr ($$ACTION_USE$$) + + + Pouit ($$ACTION_USE$$) + + + + Voln + + + + Autonabjen + + + + Vcevlknov natn textur + + + Stnov mapa + + + 1024x1024 + + + 2048x2048 + + + 3072x3072 + + + 4096x4096 + + + Vdy aktivn + + diff --git a/gamedata/configs/text/cze/ui_st_keybinding.xml b/gamedata/configs/text/cze/ui_st_keybinding.xml new file mode 100644 index 0000000..2d7af2b --- /dev/null +++ b/gamedata/configs/text/cze/ui_st_keybinding.xml @@ -0,0 +1,225 @@ + + + + PDA + + + Rozkaz k toku + + + Chze + + + Artefakt + + + Zpt + + + Dalekohled + + + Nabdka nkupu + + + Chat + + + Tmov chat + + + Konzole + + + Kontakty v PDA + + + Pikren + + + Pepnout pikren + + + Detektor + + + Dol + + + Zahodit + + + Stelba + + + Dal reim stelby + + + Pedchoz reim stelby + + + Dopedu + + + Podven grantomet + + + Obecn + + + Smr + + + Batoh + + + Pohyb + + + Hra vce hr + + + Zbra + + + Batoh + + + Skok + + + Doleva + + + Naklonit doleva + + + krok doleva + + + Mapa v PDA + + + Zbra na dal pozici + + + Non vidn + + + Pauza + + + PDA + + + Zbra na pedchoz pozici + + + Zpt + + + Nabt + + + Opravit + + + Doprava + + + Naklonit doprava + + + Naklonit doprava + + + Body + + + Screenshot + + + Nabdka model + + + Bh + + + Nabdka tm + + + Baterka + + + Aktivovat + + + Nahoru + + + Pout + + + Rychl obvaz + + + Rychl lkrnika + + + Zahjit hlasovn + + + Hlasovat + + + Hlasovat Ano + + + Hlasovat Ne + + + Zbra 1 + + + Zbra 2 + + + Zbra 3 + + + Zbra 4 + + + Zbra 5 + + + Zbra 6 + + + Zmnit typ munice + + + Pedchoz zbra tohoto typu + + + Piblen + + + Hlasov zprvy (1) + + + Hlasov zprvy (2) + + + Rychl pozice 1 + + + Rychl pozice 2 + + + Rychl pozice 3 + + + Rychl pozice 4 + + diff --git a/gamedata/configs/text/cze/ui_st_loadscreen.xml b/gamedata/configs/text/cze/ui_st_loadscreen.xml new file mode 100644 index 0000000..01681f0 --- /dev/null +++ b/gamedata/configs/text/cze/ui_st_loadscreen.xml @@ -0,0 +1,474 @@ + + + + 100 TIP PRO PEIT V ZN + + + Zsah neptele do oka znamen jeho okamitou smrt, bez ohledu na kvalitu zbroje. + + + AC-96/2 m jedinen dvkov reim stelby, pi kterm dv souasn vystelen kulky zashnou stejn msto. + + + Dvouhlavov brokovnice mohou oba nboje vystelit tm souasn. + + + Nepodceuj pistole. Poskytuj slunou palebnou slu a proti patn obrnnm clm mohou bt velice efektivn. + + + Odstelovac puky jsou vzhledem ke sv ploch trajektorii a pesnosti ideln pro eliminaci neptel z dlky. Pi malch vzdlenostech jejich efektivita kles. + + + Stelba za pohybu m v porovnn se stelbou ze stoje nebo z pokleku mnohem men pesnost. + + + Zbran a ochrann obleky se v tvrdch podmnkch Zny rychle opotebovvaj. Opotebovan zbran ztrcej pesnost a mohou selhat, obnoen obleky neposkytuj tak dobrou ochranu. + + + Pro vytvoen snmku obrazovky stiskni "$$ACTION_SCREENSHOT$$". + + + Artefakt nebo hr, kter jej nese, je zobrazen na minimap. Pokud je artefakt daleko, jeho polohu naznauje ipka na minimap. + + + AC-96/2 m jedinen dvkov reim stelby, pi kterm dv souasn vystelen kulky zashnou stejn msto. + + + Dvouhlavov brokovnice mohou oba nboje vystelit tm souasn. + + + Nepodceuj pistole. Poskytuj slunou palebnou slu a proti patn obrnnm clm mohou bt velice efektivn. + + + Odstelovac puky jsou vzhledem ke sv ploch trajektorii a pesnosti ideln pro eliminaci neptel z dlky. Na mal vzdlenosti jejich efektivita kles. + + + Zbran a ochrann obleky se v tvrdch podmnkch Zny rychle opotebovvaj. Opotebovan zbran ztrcej pesnost a mohou selhat, obnoen obleky neposkytuj tak dobrou ochranu. + + + Nkter zdravotnick produkty maj jedinen vlastnosti. Napklad Herkulovy pilulky doasn zvyuj tvou nosnost a droga Stop-ps ti pome odolat ps-zen + + + Pro vytvoen snmku obrazovky stiskni "$$ACTION_SCREENSHOT$$". + + + Tip # + + + Vodka, levn nhraka antiradianch ppravk, je nejjednodum zpsobem snen efekt ozen. + + + Podrobn informace o aktuln misi se zobraz po stisknut klvesy "$$ACTION_SCORES$$". + + + Na vyhledvn artefakt potebuje detektor. Hledn je s pomoc nejlepch detektor snaz a dokonce s nimi me najt vce cennch artefakt. + + + Stalkei nedovol, aby do jejich tbor vstoupil kdokoliv se zbran v ruce. Pro ukryt sv zbran stiskni pslunou klvesu ("$$ACTION_WPN_1$$", "$$ACTION_WPN_2$$", "$$ACTION_WPN_3$$", "$$ACTION_WPN_4$$"). + + + Okraje anomli me odhalit pomoc hzen roub. roub vythne klvesou "$$ACTION_WPN_6$$". + + + Krom zahnn hladu doke jdlo zlepit zdravotn stav. + + + Energetick npoje doasn zrychluj obnovovn vdre, co zvyuje tvou potenciln pohyblivost. + + + Slab vdr me ochromit tvj pohyb a v dleitch okamicch t uinit zranitelnm vi tokm neptel. + + + Svj stupe ukryt me sledovat pomoc indiktor detektoru hluku a neptel, kter se nachzej v lev horn sti obrazovky. + + + Dren detektoru v jedn ruce nijak nebrn pouit noe, pistole nebo roub ve druh. + + + Nkter lkask produkty zvyuj odolnost tla vi kodlivm ltkm a ivlm. Uit tchto produkt ti bhem mis v oblastech anomli me zachrnit ivot. + + + Kontextovou nabdku k pedmtm ve svm batohu me vyvolat umstnm kurzoru myi nad pslun pedmt a stisknutm pravho tlatka myi. + + + Vtina artefakt m, krom svch uitench efekt, i radioaktivn inky. Tu me kompenzovat pouitm artefakt, kter radiaci absorbuj. + + + N je proti neptelm se stelnmi zbranmi neefektivn. Jeho vyuit tkv pedevm v boji zblzka a v tichm zabjen. + + + Zt, kterou nese, sniuje tvou vdr. Nadmrn zt omez tvou pohyblivost, a pokud bude pln peten, vbec nebude schopen pohybu. + + + Detektor poskytuje jedin zpsob vyhledvn artefakt v oblastech anomli. + + + Vtina artefakt zstv bhem svho pohybu v oblastech anomli neviditeln, dokud nejsou odhaleny detektorem. + + + Aktivita mutant vzrst v noci, co vysvtluje, pro stalkei ped vstupem do zny asto vykvaj do rozbesku. + + + Pokud jsi byl vystaven velk dvce ozen, pouij antiradian drogy. Pokud dn nem, pouij lky pro vypodn se s potenmi symptomy, aby ses mohl dostat k lkai. + + + Vtina stalker t doke provst po blzkm okol, ale jen zkuen prvodce t me bezpen a rychle dovst do vzdlenjch mst. Vichni prvodci ti vak dok poskytnout pomocnou ruku. + + + Prodej artefakt nen jedin zpsob, jak se dostat k penzm. Vhodn me bt i zbavovn se nepotebnho vybaven. Mj vak na pamti, e obchodnci vtinou nemaj zjem o vn pokozen pedmty. + + + Pro odpojen tlumie, zamovae nebo podvenho grantometu od sv zbran klikni pravm tlatkem na zbra v batohu a z kontextov nabdky vyber pslunou monost. + + + Pokud se chce pohybovat co nejtieji, stiskni "$$ACTION_ACCEL$$" pro chzi nebo "$$ACTION_CROUCH$$" pro pikren. + + + Brokovnice pat k zbranm pro boj zblzka. m je tvj protivnk vzdlenj, tm mn je efektivn. + + + Pokud se kryje ped stelbou z runch zbran, vyuij dostaten pevnch pekek. Plechy a devn desky neposkytuj dokonalou ochranu, na rozdl od betonovch zd. + + + Stely do hlavy maj za nsledek kritick zrann a pro vtinu neptel jsou smrteln. + + + Kad druh mutant ijcch v Zn m vlastn zpsoby boje. Pokud je vezme v vahu, pravdpodobnost peit se zv. + + + Dlku hodu grantu me upravit podrenm klvesy "$$ACTION_WPN_ZOOM$$". + + + Neptel dokou pouvat granty a tak je pouvaj. Jakmile se objev indiktor grantu, okamit opus smrtc oblast. + + + Pokud ped skokem zrychl, doke zdolat vt propasti a pekky. + + + Hlavn indiktory zobrazujc tvj zdravotn stav a vdr se nachzej v pravm dolnm rohu obrazovky. + + + Zna ije svm vlastnm ivotem, co znamen, e i v oblastech, ktermi u jsi proel, me narazit na dal mutanty a neptelsk stalkery. + + + Pi pobytu v Zn se mj stle na pozoru a nespolhej na star informace. Pokud se vrt do oblast anomli, kter jsi u prozkoumal, me se stt, e dve oven cesty u nebude moci vyut. + + + Hovory s bnmi stalkery ti mohou poskytnout uiten informace o novch oblastech nebo aktulnch udlostech. + + + Na obou pozicch pro zbran me pout kteroukoliv ze zbran. Dky tomu me vytvet rznorod kombinace zbran jako ton puka/brokovnice a pistole/odstelovac puka. + + + Kad obchodnk, kterho v rznch tborech stalker potk, m uniktn nabdku zbo. Napklad zdravotnci vdy disponuj kvalitnm vbrem lkaskch produkt. + + + Pokud do tbora stalker doraz zrann nebo postien radiac, me vyut bezplatn pomoci mstnho zdravotnka. + + + Sv vci me zanechat v osobn schrnce v tboe, abys sebou nemusel vlet nepotebn vci. + + + Pokud mus ekat na konkrtn hodinu, pro zkrcen asu si me zdmnout v kempu. Sta najt msto na span, stisknout "$$ACTION_USE$$" a nastavit, jak dlouho chce spt. + + + Zazen pro non vidn nachzejc se na tv helm me bt vylepeno na verzi nov generace. Tm se vrazn zlep jeho pokryt. + + + Kdykoliv se vyd do Zny, nezapome si pibalit pr zsobnk navc nejsp se ti budou hodit. + + + Nezapome svou hru pravideln ukldat nebude tak muset hrt stejnou st stle dokola. + + + Pokud chce uvat lky sprvnm zpsobem, ml bys vdt, k emu jsou. Pro zjitn efektu kadho lku si peti jeho popis. + + + K toku na neptele v zkrytu me vyut grant. Nezapome vzt v vahu oblast vbuchu, abys nezranil sv spolubojovnky. + + + K odstrann pedmtu ze svho batohu na nj klikni pravm tlatkem a z kontextov nabdky vyber pslunou monost. + + + V monostech hry me vyut zvltnho nastaven, pomoc kterho se hra bude v dleitch mstech automaticky ukldat. + + + Jakmile se vrt do tbora, ml bys opravit sv vybaven, prodat nepotebnou koist a doplnit si munici a lkask zsoby. + + + K snen kodlivch ink anomlnch oblast bhem vprav do Zny pouij ochrann obleky, artefakty nebo pslun lky. + + + Krom zbran a munice u sebe mohou tla neptel ukrvat cenn pedmty jako PDA zazen se zajmavmi informacemi. + + + Artefakty nejsou jen cennou koist: krom toho, e jsou lehk a drah, mvaj nkdy a neuviteln uiten inky. + + + Vzhledem k prosted Zny je mnoho mutant radioaktivnch. Piblen se k nim bez pimen ochrany proti radiaci je tak velice nebezpen. + + + K zastaven krvcen me pout obvaz, vojensk balk se zdravotnmi potebami nebo lk "Vinostrz". Pokud rychle nezashne, krvcen me vn pokodit tv zdrav. + + + K nkterm zbranm me namontovat nastaviteln zamova. Pro piblen stiskni "$$ACTION_NEXT_SLOT$$" nebo "$$ACTION_PREV_SLOT$$". + + + Do nkterch mst se nelze dostat ani po pikren. Pokud se chce skrit co nejne, stiskni a podr souasn klvesy "$$ACTION_CROUCH$$" a "$$ACTION_ACCEL$$". + + + Pokud chce snit pravdpodobnost, e t zashne neptelova kulka, optuj palbu po naklonn zpoza rohu pomoc klvesy "$$ACTION_LLOOKOUT$$" nebo "$$ACTION_RLOOKOUT$$". + + + Dky vestavnmu mechanismu pro lokalizaci cl ti dalekohled neposkytuje jen dobr pohled na vzdlen objekty, ale doke tak najt neptele. Pro vythnut dalekohledu stiskni "$$ACTION_WPN_5$$". + + + Pro zapnut nebo vypnut svtilny stiskni "$$ACTION_TORCH$$". + + + Pro vythnut roubu stiskni "$$ACTION_WPN_6$$". + + + Pokud m na helm pipevnno zazen pro non vidn, zapnout nebo vypnout jej me pomoc klvesy "$$ACTION_NIGHT_VISION$$". + + + Pro pouit pslunho pedmtu z panelu pro rychl pstup stiskni "$$ACTION_QUICK_USE_1$$", "$$ACTION_QUICK_USE_2$$", "$$ACTION_QUICK_USE_3$$" nebo "$$ACTION_QUICK_USE_4$$". + + + Lky nepsob okamit po jejich poit a nkter maj dlouhodob inek. + + + Na svm PDA najde mapu, informace o aktuln misi, osobn statistiky a zznamnk zprv. PDA oteve stisknutm "$$ACTION_ACTIVE_JOBS$$". + + + Pi vyhledvn artefakt mus vythnout svj detektor, slou k tomu klvesa "$$ACTION_SHOW_DETECTOR$$". + + + Pro pozastaven hry stiskni "$$ACTION_PAUSE$$". + + + Pro rychl uloen hry stiskni "$$ACTION_QUICK_SAVE$$". Pro rychl naten posledn rychle uloen hry stiskni "$$ACTION_QUICK_LOAD$$". + + + Bh je nejrychlejm zpsobem pohybu, je vak velice vysilujc. Pro bh stiskni "$$ACTION_SPRINT_TOGGLE$$". + + + Stelba po zamen je mnohem pesnj ne stelba od boku. Pro zamen stiskni "$$ACTION_WPN_ZOOM$$". + + + Pokud m k dispozici podven grantomet, pomoc klvesy "$$ACTION_WPN_FUNC$$" me volit mezi nm a klasickm reimem stelby. + + + Pokud m vce druh nboj do sv souasn zbran, me mezi nimi volit pomoc klvesy "$$ACTION_WPN_NEXT$$". + + + Pro nabit zbran jet ped vyprzdnnm zsobnku stiskni "$$ACTION_WPN_RELOAD$$". + + + Pro odloen sv souasn zbran stiskni "$$ACTION_DROP$$". + + + Abys pekal emisi, najdi si kryt v bezpen budov nebo v podzem. Pokud se emise zane pibliovat, na tvm PDA se zobraz pozice nejbliho krytu. + + + Pro vyuit pedmtu v rmci pozice pro rychl pstup ho pethni ze svho batohu na jednu ze ty pozic nad schrnkami pro artefakty. + + + Symbol kapky krve v prav spodn sti obrazovky t upozoruje na krvcen a nutnost zastavit jej. Barva symbolu naznauje, jak je krvcen zvan. + + + Symbol nebezpenho zen v prav doln sti obrazovky upozoruje, e jsi byl vystaven radiaci. Pokud k tomu dojde, ml bys vyut antiradianch ppravk. Barva symbolu naznauje, jak zvan ozen je. + + + Pomoc filtr me v map na svm PDA zobrazit a skrt rzn znaky. Tlatka filtr se nachzej nad mapou, pod dkem s aktuln mis. + + + Artefakty obvykle nejsou statick: asto se v rmci anomlnch oblast pohybuj. Nepromylen pokusy o zskn artefaktu t tak mohou okamit dostat do problm. + + + Nkte stalkei ti mohou nabdnout sv sluby, jakmi jsou informace, exkluzivn zbo nebo poznmky k uritm artefaktm. + + + Nov artefakty se mohou objevit v anomlnch oblastech, kter jsi ji prozkoumal. + + + V nastaven hry me kdykoliv zmnit jej obtnost. + + + Technici v tborech stalker dokou vylepovat tv zbran, obleky a helmy. + + + Pokud chce pet, neustle sleduj praskn vydvan Geigerovm potaem varujc ped radiac a signl nebezpe anomli, kter t upozorn, pokud se pibl k anomlii. + + + Tvj vztah k lidem pmo ovlivuje cenu zbo a slueb, kter chce zakoupit. Pokud je tvj vztah zporn, dnou slevu neekej. Pokud vak s lidmi vychz dobe, obchodnk ti me uinit zvltn nabdku. + + + K zskn nboj me vyjmout zsobnky z nalezench zbran. Sta kliknou pravm tlatkem na zbra v batohu a z kontextov nabdky zvolit pslunou monost. + + + Zabjenm neptel a zskvnm artefakt vydlv body potebn ke zven sv hodnosti. Pi zven hodnosti zsk pstup k novm zbranm, zbrojm a vybaven. + + + Kouov granty me vyut k odcizen artefaktu nebo ke kryt. + + + Lev st nkupn nabdky obsahuje pt zloek: pistole, silnj zbran, vybaven, munice a zdravotnick materil. Po zvolen poadovan zloky se zobraz seznam vc, kterch se svou hodnost me vyut. + + + Nkupn nabdka v prav sti obrazovky obsahuje tyi pozice pro rychl nkup. Kliknutm na ikonu disku vybaven ulo, kliknutm na pslun slo toto vybaven nate. Na tvrtou pozici se automaticky ukld posledn nakoupen vybaven. + + + Pokud disponuje vce ne jednou zbran, me mezi nimi pepnat opakovanm stisknutm "$$ACTION_WPN_3$$". + + + Artefakt me bt aktivovn a vytvoit tak anomlii. Sta vythnout artefakt stisknutm "$$ACTION_ARTEFACT$$" a podrenm "$$ACTION_WPN_FIRE$$". Anomlie, kter tak vznikne, je nebezpen jak pro neptele, tak pro hre, kter ji vytvoil. + + + Vdeck oblek, kter ti pome pet pi anomlich a v radioaktivnch oblastech. + + + HON ZA ARTEFAKTY: K dosaen vtzstv mus na svou zkladnu pinst urit mnostv artefakt. + + + K odpojen tlumie, zamovae nebo podvenho grantometu od sv zbran klikni pravm tlatkem na zbra v batohu a z kontextov nabdky vyber pslunou monost. + + + Pokud se chce pohybovat co nejtieji, stiskni "$$ACTION_ACCEL$$" pro chzi nebo "$$ACTION_CROUCH$$" pro pikren. + + + Brokovnice pat k zbranm pro boj zblzka. m je tvj protivnk dle, tm mn je efektivn. + + + Pokud se kryje ped stelbou z runch zbran, vyuij dostaten pevnch pekek. Plechy a devn desky na rozdl od betonovch zd neposkytuj dokonalou ochranu. + + + Stely do hlavy maj za nsledek kritick zrann a pro vtinu neptel jsou smrteln. + + + Zrychlen pohyb, skoky a zrann vrazn sniuj tvou vdr. + + + Dlku hodu grantu me upravit podrenm klvesy "$$ACTION_WPN_ZOOM$$". + + + Neptel dokou pouvat granty a tak je pouvaj. Jakmile se objev indiktor grantu, okamit opus smrtc oblast. + + + SOUBOJ NA SMRT: K dosaen vtzstv zskej nejvce bod. + + + Pokud ped skokem zrychl, doke zdolat vt propasti a pekky. + + + Hlavn indiktory zobrazujc tvj zdravotn stav a vdr se nachzej v pravm dolnm rohu obrazovky. + + + Minimapa zobrazuje polohu artefaktu. Pokud ipka smuje nahoru, artefakt je nad tvou souasnou pozic; pokud ipka smuje smrem dol, nachz se pod tebou. + + + K zskn vce penz me sbrat batohy neptel. Pebyten vybaven me prodat na zkladn. + + + Za kadou cenu bys ml krt lena svho tmu, kter nese artefakt. + + + K toku na neptele v zkrytu me vyut grant. Nezapome vzt v vahu oblast vbuchu, abys nezranil sv spolubojovnky. + + + Se svm tmem me komunikovat pomoc hlasovch zprv. Pro oteven nabdky hlasovch zprv stiskni "$$ACTION_SPEECH_MENU_0$$" nebo "$$ACTION_SPEECH_MENU_1$$". + + + TMOV SOUBOJ NA SMRT: K dosaen vtzstv mus tvj tm zskat vce bod ne soupe. + + + Hlasovn me zahjit stisknutm klvesy "$$ACTION_VOTE_BEGIN$$". + + + Vsledky zobraz stisknutm klvesy "$$ACTION_SCORES$$". + + + Pro znovunarozen po uplynut ekac doby stiskni "$$ACTION_JUMP$$". + + + Pro oteven nabdky nkup v dob pobytu na zkladn stiskni "$$ACTION_BUY_MENU$$" + + + Veejnou komunikaci spust stisknutm klvesy "$$ACTION_CHAT$$". Pro textovou komunikaci jen v rmci vlastnho tmu stiskni "$$ACTION_CHAT_TEAM$$". + + + Bh je nejrychlejm zpsobem pohybu, je vak velice vysilujc. Pro bh stiskni "$$ACTION_SPRINT_TOGGLE$$". + + + Stelba po zamen je mnohem pesnj ne stelba od boku. Pro zamen stiskni "$$ACTION_WPN_ZOOM$$". + + + Pokud m k dispozici podven grantomet, pomoc klvesy "$$ACTION_WPN_FUNC$$" me volit mezi nm a klasickm reimem stelby. + + + Pokud m vce druh nboj do sv souasn zbran, me mezi nimi volit pomoc klvesy "$$ACTION_WPN_NEXT$$". + + + Pro nabit zbran jet ped vyprzdnnm zsobnku stiskni "$$ACTION_WPN_RELOAD$$". + + + ZSKN ARTEFAKTU: K dosaen vtzstv je nutn pinst nkolik neptelskch artefakt na svou zkladnu. + + + Pro odloen sv zbran stiskni "$$ACTION_DROP$$". + + + Pro nahldnut do svho batohu stiskni "$$ACTION_INVENTORY$$". + + + Vtina zbran disponuje nkolika reimy stelby. Pro pepnn mezi nimi stiskni "$$ACTION_WPN_FIREMODE_NEXT$$" nebo "$$ACTION_WPN_FIREMODE_PREV$$". + + + Do nkterch mst se nelze dostat ani po pikren. Pokud se chce skrit co nejne, stiskni a podr souasn klvesy "$$ACTION_CROUCH$$" a "$$ACTION_ACCEL$$". + + + Pro nahldnut za roh stiskni "$$ACTION_LLOOKOUT$$" nebo "$$ACTION_RLOOKOUT$$". Pi nahlen za roh neme stlet. + + + ZSKN ARTEFAKTU: Pro navrcen ukradenho artefaktu na svou zkladnu mus zabt neptele, kter jej nese, a odebrat mu jej stisknutm klvesy "$$ACTION_USE$$". + + + HON ZA ARTEFAKTY: Artefakt me zniit jeho aktivac. Vyndej artefakt pomoc "$$ACTION_ARTEFACT$$" a podr "$$ACTION_WPN_FIRE$$". + + + Pi nesen artefaktu neme bhat. + + + Pro nahldnut do svho batohu stiskni "$$ACTION_INVENTORY$$". + + + Chce-li opravit njak pedmt, mus nejprve najt technika, oznait dan pedmt v obrazovce modifikac a kliknout na tlatko Opravit. Kdy v te obrazovce klikne na pedmt pravm tlatkem, vysko ti seznam dalch monch akc. + + + Vtina zbran m u v sriovm proveden nkolik reim palby. Dal reimy si me pidat modifikacemi. Pro pepnut mezi reimy stelby stiskni "$$ACTION_WPN_FIREMODE_NEXT$$" nebo "$$ACTION_WPN_FIREMODE_PREV$$". + + + Plochost drhy uruje trajektorii kulky. Ovldn uruje, jak rychle zamovai trv, ne se po vstelu vrt do pvodn pozice. + + + Nkter obleky maj i zabudovan helmy. Ty nen mon odebrat a pout s jinmi obleky. + + + Kad zbra m jinou pesnost, ovldn, pokozen i kadenci. Vbr je velik, sta jen vybrat si tu, kter ti nejlpe sedne. + + + Za chze ti vrazn kles pesnost stelby. Pro lep pesnost se zastav nebo rovnou pikr. + + + Energetick drink ti doasn urychl obnovu energie. Dky tomu vydr dle bet. + + + V reimu deathmatch maj hri neomezen mnostv munice. + + + Jednm z nejbnjch skal zny je radioaktivn zen. Vystav-li se jeho silnmu zdroji, ohroz sv zdrav. Bez vhodn lby me dokonce i zemt. + + + Ne vyraz na dlouhou vpravu, nezapome si nabrat spoustu jdla. Kdy m toti hlad, znan se ti zpomal obnova vdre. + + diff --git a/gamedata/configs/text/cze/ui_st_mm.xml b/gamedata/configs/text/cze/ui_st_mm.xml new file mode 100644 index 0000000..a7c84df --- /dev/null +++ b/gamedata/configs/text/cze/ui_st_mm.xml @@ -0,0 +1,936 @@ + + + + Sluneno + + + Zataeno + + + Stedn + + + Maximln + + + Vy + + + Ni + + + Minimln + + + Noc + + + Detivo + + + TYP HRY + + + Mistr + + + Zelen + + + Vetern + + + IKONY + + + MAPA + + + Nvrat aktivac + + + Povolit hlasovn + + + as anomlie (min) + + + Zskn artefaktu + + + Prodleva artefaktu + + + Poet artefakt + + + as artefaktu + + + Navrcen artefaktu + + + Aut. vyvaovn tm + + + Aut. prohazovn tm + + + DOSTUPN MAPY + + + Zruit + + + CD kl + + + ovit CD kl + + + Klient + + + Zaloit + + + Nezranitelnost (s) + + + Ukazatel nezranitelnosti + + + mrt + + + Dedikovan + + + Seznam zznam + + + Hrovy statistiky + + + Nahrt zznam + + + Pehrvn zznam + + + Przdn + + + Filtry + + + Vynucen obnoven (s) + + + Limit zez + + + Zezy + + + Prodleva + + + Stelba do vlastnch + + + Ukazatele spojenc + + + Jmna spojenc + + + Pln + + + Reim + + + IP/hostitel:port + + + Internet + + + Pipojit se + + + LAN + + + Naslouchat + + + Opakovat + + + Seznam map + + + Limit hr + + + Sov pipojen + + + Bez anomli + + + Nastaven + + + Heslo + + + Jmno hre: + + + Hri + + + Poet hr + + + Internetov server + + + Rychl obnoven + + + Zmnit koeficient + + + Obnovit ve + + + Posily (s) + + + Nastaven obnovovn + + + ZVOLEN MAPY + + + Server + + + Seznam server + + + Vlastnosti serveru + + + Info o serveru + + + Server + + + Jmno serveru + + + Nastaven serveru + + + Divk + + + Z prvn osoby + + + Voln kamera + + + Zamen na hre + + + Ze tet osoby + + + Nastaven pozorovatele + + + Pouze v tmu + + + Poten poas + + + Skre + + + asov limit (min) + + + Zahvac doba (s) + + + Nastaven poas + + + Bez pt. palby + + + Bez hesla + + + Bez PunkBusteru + + + S heslem + + + LAN + + + Internet + + + Tovrna Agroprom + + + Depo + + + Bazn + + + Jmno spn zmnno + + + Temn dol + + + Tovrna Jantar + + + chyba v pipojen k serveru se statistikami + + + chyba v pipojen k pihlaovacmu serveru + + + Pihlen probhlo spn + + + Oputn vesnice + + + Armdn sklady + + + patn jmno + + + Bazn + + + Ndra + + + Tovrna Rostok + + + Toto jmno je ji zabrno + + + Opravdu si peje odstranit zznam + + + Rozboen tovrna + + + PING + + + HR + + + Statick osvtlen + + + Pln dynamick osvtlen + + + Vylepen pln dynamick osvtlen + + + Dynamick osvtlen objekt + + + Lep pln dyn. osvtlen (DX10) + + + NZEV SERVERU + + + Lov artefakt + + + Boj o artefakt + + + Vichni proti vem + + + Filtr: + + + Vy + + + Ni + + + Stedn + + + Vypnuto + + + Zkuen + + + Legendrn stalker + + + Zelen + + + Profk + + + Vetern + + + Tmov hra + + + Frekvence 60 Hz + + + Akce + + + Podrobnosti + + + Alternativn + + + Anisotropn filtrovn + + + Pout + + + Zpt + + + Krev + + + Jas + + + Zruit + + + Aktualizace + + + Kontrast + + + Ovldn + + + Autoi + + + Vzdlenost zamovae + + + Vchoz + + + Smazat + + + Opravdu si peje smazat tento soubor? + + + Hustota detail trvy + + + Obtnost + + + Odpojit se + + + Opravdu se chce odpojit? + + + Dohled + + + Dynamick zamova + + + Dynamick hudba + + + EAX + + + Na celou obrazovku + + + Hra + + + Gamma + + + Detaily objekt + + + Pevrtit my + + + Klvesa + + + Nastaven klvesnice + + + Posledn uloen hra + + + Vzdlenost svtel + + + Nast + + + Nast hru + + + Odhlsit se + + + Mistr + + + Hlasitost efekt + + + Citlivost myi + + + Vyhladit testovac objekty s alfou + + + Optimalizovat vyhlazovn + + + Hra vce hr + + + Hra vce hr + + + Hlasitost hudby + + + Zmny se projev a po restartovn hry. + + + Hra vce hr + + + Nov hra + + + Zelen + + + Svtilny NPC + + + Nastaven + + + Nastaven + + + Vzdlenost stic + + + Nastaven kvality + + + Zpt do Windows + + + Ukonit hru + + + Opravdu si peje ukonit hru? + + + Opravdu se chce vrtit do Windows? + + + Detaily bump map + + + Strm paralaxn mapovn + + + Stny vren sluncem + + + Stny trvy + + + Kvalita slunenho svtla + + + Pouvat DX10,1 + + + Vyhlazovn cel obrazovky + + + Mokr povrchy + + + Optimalizovat geometrick buffer + + + Volumetrick kou + + + Render 2 + + + Typ renderu + + + Rozlien + + + Zpt do hry + + + Uloit + + + Uloit hru + + + Zobrazit zamova + + + Zobrazit zbra + + + Zkladn + + + Zvuk + + + Mkk stice + + + Mkk voda + + + Zvuk + + + Kvalita zvuku + + + Stalker + + + Kvalita stn + + + Slunen paprsky + + + Vyhlazovn hran + + + Pota pouv svtilny + + + Detaily textur + + + Rozpoznvn NPC + + + Vetern + + + Obraz + + + Dohled + + + Volumetrick svtla + + + Vertikln synchronizace + + + Zmnit pezdvku + + + Tuto e-mailovou adresu ji pouv nkdo jin + + + Pes internet + + + Pes mstn s + + + zrazen spojencem + + + na ztrtu krve + + + pi vbuchu + + + do oka + + + do hlavy + + + Verze uloenho souboru neodpovd verzi hry. + + + srie zez + + + n + + + Posledn vzbroj + + + Pidat se ke he vce hr + + + Jmno + + + Zmnit + + + Vzbroj 1 + + + Vzbroj 2 + + + Vzbroj 3 + + + Vynulovat + + + Prodat ve + + + VERZE + + + Pripja + + + Pikren/stn + + + Automatick ukldn + + + Detailn textury + + + Zznamy + + + Vstoupit + + + Odejt + + + Zaloit + + + patn e-mail nebo heslo + + + Nesprvn profil + + + Chyba pipojen + + + Server momentln nen dostupn + + + Je nutn se pihlsit + + + Chyba pipojen + + + Chyba pipojen + + + Chyba pipojen + + + patn nzev profilu + + + Nesprvn heslo + + + Nesprvn pezdvka + + + Tato pezdvka je ji zabran + + + Nejprv se pihlas ke svmu profilu + + + Nejprv se odhlas od svho profilu + + + Chyba pipojen k profilovmu serveru + + + Profil u nen mon po zaloen smazat + + + Kvalita SSAO + + + Reim SSAO + + + Vchoz + + + HDAO + + + HBAO + + + Zobrazit rozhran + + + Zadan pezdvka nen registrovan. Zaregistruj si ji. + + + Zadan pezdvka vyprela. Zaregistruj si ji. + + + Stalker + + + max. vka + + + Vylepen pln dyn. osvtlen (DX11) + + + Ped pipojenm k externmu serveru se mus pihlsit + + + Tento et GameSpy je momentln pouvn. Pihlas se prosm k jinmu tu. + + + patn e-mail + + + Nesprvn heslo + + + Na mstnm serveru neme pouvat et GameSpy. Pouij reim hry po mstn sti (LAN). + + + Server t vylouil ze hry. + + + Administrtor ti zakzal pstup. + + + Server ti zakzal pstup. + + + Informace o serveru + + + Zadan e-mailov adresa je pli dlouh. Neme zadat vce ne 50 znak. + + + patn e-mail + + + Heslo je pli krtk + + + Heslo je pli douh + + + E-mail nenalezen + + + Nezadna pezdvka + + + Pezdvka je pli dlouh. Neme zadat vce ne 30 znak. + + + Pezdvka sm obsahovat pouze sla, psmena latinsk abecedy a nsledujc speciln symboly: "#$&'()*+-./:;<=>?@[]^_`{|}~ + + + Pezdvka nesm obsahovat mezery + + + Pezdvka nesm zanat slem ani dnm z nsledujcch symbol: '@', '+', ':' or # + + + velmi vysok + + + Teselace + + + Pout zmny? Zmny budou zrueny za + + diff --git a/gamedata/configs/text/cze/ui_st_mp.xml b/gamedata/configs/text/cze/ui_st_mp.xml new file mode 100644 index 0000000..41c443b --- /dev/null +++ b/gamedata/configs/text/cze/ui_st_mp.xml @@ -0,0 +1,741 @@ + + + + Artefakt + + + Spojenec + + + Maximln ping + + + Profil + + + Reimy + + + Artefakt byl znien. + + + Na map se objevil artefakt. Pines ho na zkladnu a zskej tak body. + + + Artefakt byl ztracen. + + + Artefakt je na na zkladn. + + + Artefakt je na neptelov zkladn. + + + Artefakty + + + Artefakty + + + Automaticky + + + Zpt + + + 4. Zakzat pstup + + + Anomli + + + Zruit + + + zskv artefakt + + + 5. Zmnit mapu + + + 6. Zmnit poas + + + Zmnit poas na + + + Chat + + + Pipojeno + + + mrt + + + Popis + + + Odpojeno + + + Zadej popisku k hlasovn + + + se pidv ke he + + + Pornick stanice + + + (Pohled z prvn osoby) + + + Zezy + + + Zezy + + + (Voln kamera) + + + (Pohled ze tet osoby) + + + z + + + 7. Reim + + + Smetit + + + KUPEDU! + + + ztrc%s artefakt + + + ztrc artefakt + + + m%s artefakt + + + oldci + + + je nyn + + + se pipojuje + + + 3. Vylouit + + + Limansk + + + Natm tv ocenn... + + + Natm tv zznamy... + + + (Voln zamen) + + + Popis mapy + + + Hra zan! + + + Star vesnice + + + Reimy + + + Jmno + + + Dal + + + Nehlasoval + + + PING + + + %s vyhrv zpas! + + + Hri + + + Tlatkem pro stelbu se pepne do reimu divka + + + Tlatkem pro skok si koup okamit obnoven + + + Tlatkem pro skok si zvol vzhled + + + Tlatkem pro skok si zvol tm + + + Tlatkem pro skok se umst na mapu + + + Tlatkem pro skok spust hru + + + Stiskem ($$ACTION_BUY_MENU$$) vyvol nabdku nkupu + + + M %d $. Za %d$ se me obnovit. Chce-li hrt, stiskni Ano. + + + Pipraven... + + + Opravna + + + 1. Restartovat + + + 2. Rychl restart + + + vrac artefakt + + + zskv bod + + + Zvol hre, o jeho zkazu se m hlasovat + + + Zvol kategorii hlasovn + + + Zvol hre, o jeho vylouen se m hlasovat + + + Zvol hre, o jeho vylouen se m hlasovat + + + Zvol mapu, o n se m hlasovat + + + Zkaz bhu s artefaktem + + + - Poet + + + - ivotnost + + + - Doba obnovy + + + Anomlie + + + Frekvence anomli + + + Kdykoliv + + + Zskn artefakt + + + Artefakty: + + + Aut. vyvaovn tm + + + Aut. prohazovn tm + + + BattlEye + + + Vypnuto + + + Zapnuto + + + - Z prvn osoby + + + Vynucen obnovovn + + + Omezen zez + + + - Voln let + + + - Voln pohled + + + Palba do vlastnch + + + Ukazatele spojenc + + + Jmna spojenc + + + Nekonen + + + Neviditelnost: + + + - Ukazatele + + + - Trvn + + + - Ze tet osoby + + + Opakovn map + + + Maximln ping + + + min + + + Ne + + + Obnoven po + + + Vracen hr na zkladnu + + + s + + + Nzev serveru + + + Zattn zkladny + + + Divck reimy: + + + - Pouze v tmu + + + asov limit + + + Verze + + + Hlasovn + + + Zahvac doba + + + Ano + + + Volba vzhledu + + + Divci + + + Divci + + + Sportovn stedisko + + + Stav + + + pechz na stranu + + + Svoboda + + + Volba tmu + + + Vyhrv tm %s! + + + Text + + + asu do obnoven: + + + asu do zatku: + + + Zbvajc as: %d:%d; Dohodnuto: %.2f + + + Vcvikov tbor + + + Hlasovat PRO-[$$ACTION_VOTE_YES$$]\nHlasovat PROTI-[$$ACTION_VOTE_NO$$]\nVsledky -[$$ACTION_VOTE$$] + + + Ne + + + Ano + + + Hlasoval + + + Ne + + + Ano + + + Hlasovn zrueno serverem! + + + Hlasovn '%s' vyvolno hrem %s. + + + Hlasovn zaalo! + + + 1. Sluneno + + + 4. Zataeno + + + 3. Noc + + + 2. Detivo + + + Zrada! + + + Do hlavy! + + + M neptelsk artefakt, te jej dones k tomu vaemu! + + + M artefakt. Aktivuj ho a vra se na zkladnu. + + + Tv momentln hodnost je + + + To jsi ty + + + Na tomto serveru se ned hlasovat. + + + dn aktivn hlasovn + + + V jednu chvli me bt aktivn jen jedno hlasovn. + + + Pipraven + + + Vem + + + Tmu + + + Hlasovn neprolo! + + + Hlasovn prolo! + + + Zkladna Svobody + + + Zkladna oldk + + + 2. Lov artefakt + + + 4. Boj o artefakt + + + 1. Vichni proti vem + + + Vytvoit nov profil + + + Stahuji hrsk profily + + + Vtej + + + Pipojuji se k profilu... + + + Profil vytvoen. Te se k nmu prosm pipoj. + + + Ovuji dostupnost jmna... + + + Opravdu si peje pout existujc profil pod jmnem + + + et nalezen. Stahuji registrovan profily... + + + Jeden profil u m. Pipoj se prosm k nmu. + + + Ovuji et... + + + Toto jmno je ji zabran. Zvol si prosm nkter z nsledujc nabdky, nebo napi nov. + + + Hesla nejsou stejn! + + + 3. Tmov hra + + + Zkoprovat odkaz + + + Nast mapu + + + Popis + + + patn nebo pokozen mapa + + + Mapa nenalezena + + + Ocenn + + + Zznamy + + + Ovit + + + Potvrdit heslo + + + E-mail + + + Zapomenut heslo? + + + Vytvoen profilu GameSpy + + + Heslo + + + Pamatovat + + + Uniktn jmno + + + Jmno spn zmnno na + + + Tm + + + Svoboda + + + oldci + + + Nov profil + + + Oven tu GameSpy + + + pehrt + + + petoit + + + restartovat + + + na zatek + + + k zabit + + + k mrt + + + k zskn artefaktu + + + ke ztrt artefaktu + + + k pinesen artefaktu + + + libovoln + + + Pihlsit se + + + Screenshoty veho + + + Nastaven veho + + + Maximln ping: + + + Maximln ping: + + + Zobrazit zvolenho hre + + + Nastaven zvol. hre + + + Vylouit zvolenho hre + + + Zakzat hri pstup + + + Restartovat + + + Rychl restart + + + Zmnit poas + + + Rychlost zmny poas + + + Zmnit typ hry + + + Zmnit nastaven hry + + + Peruit aktivn hlasovn + + + asov limit (0, 180) + + + Max. zez (0, 1000) + + + Max. artefakt (0, 100) + + + Zahvac doba (0, 3600) + + + Ochr. po obn. (0, 60 CTA) + + + Ochr. po obn. (0, 600 T/DM) + + + Doba obnoven (-1, 3600) + + + Neznm chyba profilu (kd 4) + + + 10 minut + + + 30 minut + + + 1 hodina + + + 6 hodin + + + 1 den + + + 1 tden + + + 1 msc + + + 3 msce + + + Natrvalo + + + Pezdvka je pli krtk + + + Chyba profilu + + diff --git a/gamedata/configs/text/cze/ui_st_other.xml b/gamedata/configs/text/cze/ui_st_other.xml new file mode 100644 index 0000000..c34666e --- /dev/null +++ b/gamedata/configs/text/cze/ui_st_other.xml @@ -0,0 +1,501 @@ + + + + Zruit + + + Ne + + + OK + + + Ano + + + patn + + + Neptel + + + Vborn + + + Zkuen + + + Spojenec + + + Mapa Zny + + + Dobr + + + Nevyhrann + + + Mistr + + + Bonus za PDA + + + V jednu chvli me bt aktivn jen jedno hlasovn. + + + Neutrln + + + Zelen + + + Hra + + + Pouil jsi + + + rove + + + Natm objekty AI + + + Server: natm simultor A-life + + + Natm CFORM + + + Natm detaily + + + Natm geometrii + + + Natm uloenou hru + + + Natm sektory a portly + + + Natm shadery + + + Natm prostorovou databzi + + + Natm textury + + + Pm IP + + + dn aktivn koly + + + Nem dost penz + + + Tato postava nem dost penz + + + Otevrm stream + + + Ukldm objekty do vyrovnvac pamti + + + rubl + + + SERVER: Pipojuji se + + + SERVER: Spoutm + + + Ovuji CD kl + + + Obraz + + + Hrozn + + + Opravit + + + Na svm PC neme spustit render 2 + + + Frakce + + + Chyba pipojen: tvj CD kl nen povolen. Obra se na zkaznickou slubu. + + + Chyba pipojen: tvj CD kl ji pouv jin hr + + + Chyba pipojen: neplatn CD kl + + + Chyba pipojen: patn hostitel + + + Chyba pipojen: patn heslo + + + Ke staen je nov patch.\n Verze: %s\n Umstn: %s\nPeje si ho te sthnout? + + + dn nov patche nejsou k dispozici. + + + Chyba pipojen: server zamtl pipojen + + + Chyba pipojen: server je pln + + + Chyba pipojen: rozdln verze + + + Pipojuji se k hlavnmu serveru + + + Dn + + + Chyba + + + Chyba pi natn + + + Soubor s tmto nzvem ji existuje. Peje si jej pepsat? + + + Soubor nem jmno + + + Hodiny + + + Odpojeno ochrannm systmem BattleEye. Dvod: + + + Odpojeno. Dvod: + + + Odejt + + + Natenm tto hry pijde o neuloen data. Pokraovat? + + + min + + + Msce + + + Batoh + + + Parametry + + + Patch se nepodailo sthnout. + + + Stahovn patche dokoneno. Peje si jej nainstalovat? + + + Cena + + + Hodnost + + + Postoj + + + Reputace + + + s. + + + Zvol alespo jednu mapu + + + Sebrat ve + + + Zbv + + + Hlasovn neprolo + + + Opravdu si peje odejt ze hry? + + + Celkem + + + velmi patn + + + velmi dobr + + + Vetern + + + Opravit + + + Opravit zvolen pedmt + + + ... + + + pesun v rmci oblasti + + + pesun ze Zatonu do Janova + + + pesun ze Zatonu do Pripjati + + + pesun z Janova do Zatonu + + + pesun z Janova do Pripjati + + + pesun z Pripjati do Zatonu + + + pesun z Pripjati do Janova + + + pesun z Pripjati do X8 + + + pesun z X8 do Pripjati + + + emise + + + zatek hry + + + pchod na Skadovsk + + + Przkum Rejnoka 1 + + + Przkum Rejnoka 2 + + + Przkum Rejnoka 3 + + + Przkum Rejnoka 4 + + + Przkum Rejnoka 5 + + + cesta na nhorn ploinu + + + pchod do Janova + + + nalezena cesta do Pripjati + + + pidv se Zulu + + + Vo splc dluh + + + pidv se Vo + + + nalezena anomln rostlina + + + pidv se Sokolov + + + Tulk odchz + + + utvoeno drustvo + + + pchod k nadchodu + + + pchod do Pripjati + + + nalezena armda + + + zskna neidentifikovan zbra + + + nalezeni przkumnci + + + dorazily posily + + + antna prozkoumna + + + nalezen chybjc zznam + + + zabit kontrolor pobl hldky + + + vstup do testovac dlny + + + nalezena dokumentace ke Gaussov puce + + + nalezen mrtv bojovnk + + + vstup do kolky + + + zachrnn zdravotnk + + + obnoven kontakt s velitelstvm + + + zahjena evakuace Pripjati + + + pchod k evakuanm vrtulnkm + + + evakuace dokonena + + + detektor mutant + + + vkupn zaplaceno + + + rukojm osvobozen + + + men anomlie Splenit + + + men anomlie Rkos + + + pelech upr + + + posln do Kopai + + + pchod k istice odpad + + + njezd na stalkery + + + ve skri nalezen kontejner + + + hon na chimru + + + nalezena Oza + + + zahjena Operace jeden vstel + + + hledn zdroje psionickho zen + + + administrativn dokumenty + + + pstup k ndran dln + + + keft u loveck stanice + + + skladit Povinnosti + + + nalezen zdroj podivnho zen + + + Zulus nalezen + + + nebezpen jeskyn + + + Opravy a modifikace + + + Koupit + + + Prodat + + + Obchod + + + Zavt okno ($$ACTION_USE$$) + + + Otevt okno obchodu ($$ACTION_SPRINT_TOGGLE$$) + + + Otevt okno oprav a modifikac ($$ACTION_SPRINT_TOGGLE$$) + + + Pesunout vechny pedmty do batohu ($$ACTION_SPRINT_TOGGLE$$) + + + Koupit zvolen pedmty + + + Prodat zvolen pedmty + + + start evakuan helikoptry + + diff --git a/gamedata/configs/text/cze/ui_st_pda.xml b/gamedata/configs/text/cze/ui_st_pda.xml new file mode 100644 index 0000000..1f895c2 --- /dev/null +++ b/gamedata/configs/text/cze/ui_st_pda.xml @@ -0,0 +1,279 @@ + + + + as + + + Svobodn stalker + + + Armda + + + Bandita + + + Povinnost + + + Vdec + + + Vedlej mise + + + Skre + + + Svoboda + + + oldk + + + Zznam mise + + + Monolit + + + Mutant + + + Duben + + + Srpen + + + Prosinec + + + nor + + + Leden + + + erven + + + ervenec + + + Bezen + + + Kvten + + + Listopad + + + jen + + + Z + + + Deaktivovat PDA + + + Zznam zprv + + + Zobrazit historii zprv + + + Mapa oblasti + + + Zobrazit mapu zny a zznam mise + + + Statistiky + + + Zobrazit osobn statistiky + + + Aktuln as: + + + Filtr dat + + + Zobrazit novinky + + + Zobrazit rozhovory + + + Legenda + + + as v Zn: + + + Pekan emise: + + + Dokonen mise: + + + Zabito mutant: + + + Zabito stalker: + + + Nalezeno artefakt: + + + Nalezeno skr: + + + Oblben zbra + + + Nejsilnj zabit mutant + + + Msto: + + + Cl + + + Vedlej mise + + + Neptel + + + Spojenci + + + Vdce frakce + + + Hlavn mise + + + Neutrln + + + Prvodce + + + Skre + + + Velitel drustva + + + Obchodnk + + + Stalker + + + Zznam zprv + + + Vystedit na hre + + + Dol + + + Doleva + + + Zobrazit legendu + + + Doprava + + + Nahoru + + + Maximln oddlen + + + Piblit + + + Oddlit + + + Ocenn + + + Vystedit na misi + + + Vystedit na misi + + + Zombie + + + mtko + + + + mtko - + + + Technik + + + Zdravotnk + + + Aktivn mise + + + Zobrazit/skrt mise + + + Osobn skka + + + Zaton + + + Okol Jupiteru + + + Pripja + + + Pripja 1 - nadchod + + + Laborato X8 + + + Oblasti + + + Dleit pedmty + + + Oblast + + + Skenery detekovaly tyto artefakty: + + + Skenery nedetekovaly dn artefakty. + + + Skr + + + Prostor na span + + diff --git a/gamedata/configs/text/cze/ui_st_screen.xml b/gamedata/configs/text/cze/ui_st_screen.xml new file mode 100644 index 0000000..b5e3b7d --- /dev/null +++ b/gamedata/configs/text/cze/ui_st_screen.xml @@ -0,0 +1,348 @@ + + + + Otevt osobn skku ($$ACTION_USE$$) + + + Jsi tak vyerpan, e ani neme chodit + + + Jsi tak peten, e ani neme chodit + + + Otevt dvee ($$ACTION_USE$$) + + + Mluvit ($$ACTION_USE$$) + + + Prohledat tlo ($$ACTION_USE$$) + + + Prohledat tlo ($$ACTION_USE$$)\nOdthnout tlo (SHIFT+$$ACTION_USE$$) + + + Dokonena mise: + + + Nesplnna mise: + + + Zskn pedmt: + + + Zskny penze: + + + Nov mise: + + + Odebrn pedmt: + + + Odeteny penze: + + + Zruena mise: + + + Aktualizovna mise: + + + Zasekla se ti zbra. Mus znovu nabt. + + + Prohledat skku ($$ACTION_USE$$) + + + Sebrat pedmt ($$ACTION_USE$$) + + + Prohledat letadlo ($$ACTION_USE$$) + + + Dvee jsou zaseknut + + + Dvee jsou zamen zevnit + + + Trezor je zamen + + + Potebuje kd + + + Zadat kd ($$ACTION_USE$$) + + + Utrhnout rostlinu ($$ACTION_USE$$) + + + Nastavit skener ($$ACTION_USE$$) + + + Sebrat skener ($$ACTION_USE$$) + + + Potlaova agrese Duha\nModel vnjho ozaovacho komplexu\nMtko 1:20 + + + Zapnout vypna ($$ACTION_USE$$) + + + Prozkoumat pstroj ($$ACTION_USE$$) + + + Umstit nlo ($$ACTION_USE$$) + + + Pivst ke smyslm ($$ACTION_USE$$) + + + Vtah nen pod proudem + + + Aktivovat genertor ($$ACTION_USE$$) + + + Spt + + + Te neme spt! Nebezpen krvc a m kritickou hladinu ozen. Pouij liva, nebo se obra na zdravotnka. + + + Te neme spt! Nebezpen krvc. Pouij liva, nebo se obra na zdravotnka. + + + Te neme spt! M kritickou hladinu ozen. Pouij liva, nebo se obra na zdravotnka. + + + Spt ($$ACTION_USE$$) + + + Zskv ocenn Nezaujat. + + + Zskv ocenn Machr pes zbran. + + + Zskv ocenn Detektiv. + + + Zskv ocenn Diplomat. + + + Zskv ocenn Ptel Povinnosti. + + + Zskv ocenn Ptel Svobody. + + + Zskv ocenn Ptel stalker. + + + Zskv ocenn Posel spravedlnosti. + + + Zskv ocenn Hi-tech profk. + + + Zskv ocenn Pekupnk informac. + + + Zskv ocenn Strce tajemstv. + + + Zskv ocenn f. + + + Zskv ocenn Vdce. + + + Zskv ocenn Lovec mutant. + + + Zskv ocenn Jeden z ns. + + + Zskv ocenn Przkumnk. + + + Zskv ocenn Vdeck pracovnk. + + + Zskv ocenn Hleda artefakt. + + + Zskv ocenn Ostlen stalker. + + + Zskv ocenn Solventn klient. + + + Automatick ukldn... + + + Te u me vytasit zbra. + + + Zmek na kd ($$ACTION_USE$$) + + + Za vyeen zhady ztracench stalker byly do tv osobn skky na Skadovsku vloeny zdravotnick poteby. + + + Za pomoc Povinnosti byl do tv osobn skky na Janov umstn univerzln ochrann odv PS5-M. + + + Za pomoc Povinnosti byla do tv osobn skky na Janov umstna sluebn zbroj Povinnosti, model PSZ-9d. + + + Za pomoc Svobod byla do tv osobn skky na Janov umstna zbroj Vtr Svobody. + + + Za pomoc Svobod byla do tv osobn skky na Janov umstna zbroj Svobodn gardy. + + + Nepodailo se ti vas dojt k vrtulnkm a evakuan drustvo odletlo ze Zny bez tebe. + + + Jsi pipraven odlett ze Zny? Nebude se moct vrtit. + + + Konec hry. + + + Stiskem ($$ACTION_JUMP$$) se vrt do hlavn nabdky. + + + Pauza + + + Hra uloena + + + Za pomoc pi odhalen Strake byl do tv osobn skky na Skadovsku umstn artefakt. + + + Mus pokat, ne se dvee neprodyn uzavou. + + + Pstup povolen + + + Vyje vtahem nahoru ($$ACTION_USE$$) + + + Vyje vtahem dol ($$ACTION_USE$$) + + + Kritick rove psionickho zen. Neprodlen odejdi z nebezpen oblasti. + + + Nebezpen hladina radiace. Bez ochrany se dl nedostane. + + + Prozkoumat vrtulnk ($$ACTION_USE$$) + + + Prohledat skr ($$ACTION_USE$$) + + + h. + + + Zprva + + + Dvee jsou zablokovan + + + Zavt dvee ($$ACTION_USE$$) + + + Dvee jsou zamen - byl vyhlen poplach + + + Dvee jsou zamen - nejdv schovej zbra + + + Dvee jsou zamen + + + Dvee nejsou pod proudem + + + Otevt dvee ($$ACTION_USE$$) + + + Brna je zablokovan + + + Pout pstupovou kartu ($$ACTION_USE$$) + + + Je zapoteb pstupov karta + + + Tyto dvee se nedaj otevt z tto strany + + + - + + + Kontejner je zamen. K odemen bude potebovat dva kle. + + + Pout kl ($$ACTION_USE$$) + + + Pout kle ($$ACTION_USE$$) + + + Kontejner je zamen. K odemen bude potebovat jet druh kl. + + + Otevt kontejner ($$ACTION_USE$$) + + + Mechanismus dve je zablokovn zevnit. + + + Pipojit ndr ($$ACTION_USE$$) + + + Pozor! Chemick nebezpe! + + + Otoit ventilem ($$ACTION_USE$$) + + + Prohledat auto ($$ACTION_USE$$) + + + A bude potebovat doplnit zdravotnick poteby nebo munici, stav se u poruk Rogovce a Kirilova. + + + V Zn nedvno dolo k emisi. + + + Zskv ocenn Poznamenn Znou. + + + Za pomoc pi likvidaci nebezpench mutant byly do tv osobn skky v Janov vloeny nboje. + + + Zskny souadnice skre, kterou u jsi objevil dve. + + + Nalezena skr + + + Zskny souadnice skre + + + Pokrauj stiskem libovoln klvesy + + diff --git a/gamedata/configs/text/eng/st_achievement.xml b/gamedata/configs/text/eng/st_achievement.xml new file mode 100644 index 0000000..98d72fd --- /dev/null +++ b/gamedata/configs/text/eng/st_achievement.xml @@ -0,0 +1,372 @@ + + + + Your enemy must feel humiliated after being killed by you ten times in a row and failing to kill you even once during this time! You are not cruel, though - you're just giving him a reason to keep practicing. + + + Time to Reap + + + You're deadly! Killing two birds with one stone... You skewered them both with your Gauss rifle. + + + Skewer + + + Your calm and calculating approach brings a swift death to the enemy, as you expertly hit two targets with two shots of your double-barreled shotgun in the space of a couple of seconds. + + + Two shots, two kills. + + + You obviously know what being a stalker is all about, which is why you're become the number one legendary stalker! + + + Social Climber + + + Cutting through an exoskeleton with a knife? It looks like youre the kind who likes to cut right down to the bone. + + + Tin Opener + + + They thought they had you, but you showed them who's boss by killing five of them, despite knock'in on death's doorstep yourself! + + + Die Hard + + + What an adrenalin rush! You annihilated your enemy with a hail of bullets - 5 kills in five seconds! Sweet! + + + Unbridled Rage + + + Wow, great aim! You got two for the price of 1 by shooting the enemy in the eye without dying. + + + Eye Specialist + + + Let them hide behind corners and lay their ambushes - that won't stop you. Hell, you can hit a target on the move without even aiming! + + + Lightning Reflexes + + + Let him run as fast as he can - your bullets will catch him either way. + + + Stop the Runner + + + You have slaughtered twenty enemies in a row without dying! Wow, what a bloodbath! + + + Massacre + + + There may have been three of them and they may have had sniper rifles, but your skill put an end to them. + + + Most Accurate Shooter + + + You don't need to fire a single round to outwit the barbarians. + + + Peace Messenger + + + Distance is not a problem for a real sniper! You can hit the bull's eye at distances over 120 meters. + + + Deadly Accuracy + + + Your enemy got you down, but you left him a nice surprise with that live grenade! + + + Something to Remember You By + + + They killed your friends and they deserve your unleashed vengeance. Three enemy corpses for three dead friends - that's justice. + + + Avenger + + + You are your friend's guardian angel. You saved him twice from an attack since he was carrying the artifact. + + + Cherub + + + You kept your honor and your team's by putting some points on the board. + + + Keeping Your Honor + + + Do you really know where the next artifact will show up? Well, you picked it up in a matter of seconds when it appeared! + + + Stalker's Intuition + + + You got lucky there - you killed the enemy with the last bullet in your clip! Better them than you, that's for sure! + + + Lucky Bastard + + + You killed eight enemies in a row. You've drawn a line in the sand - let's see if they're willing to cross it. + + + Blacklist + + + Nobody killed you because you're careful and cautious. You didn't die once during the game and scored over fifteen points. + + + Paranoia + + + You do your work without attracting attention by always using a silencer. Why let the enemy know the direction of death? + + + Silent Death + + + You destroyed your enemy by winning and scoring twice as many points as their leading scorer. + + + Overwhelming Superiority + + + Your bold plan to instantly capture the artifact was successful and within the first three minutes of the game you scored for your team. + + + Blitzkrieg + + + You annihilated the enemy without giving up a single artifact. Thatll show them what real team work is all about. + + + Shutout! + + + You scored highest in every area by getting the most kills, the most artifacts and dying the least! Keep it up! + + + All-rounder + + + Your blade skills are unrivaled! You gutted three enemies in twenty seconds, showing off your hand skills. + + + Fury + + + Every enemy has a weakness, and you found it shooting him in the eye with your sidearm. + + + Achilles' Heel + + + The enemy's bullets are powerless against you. You walk through them without a scratch and moe the enemy down! + + + Faster Than Bullets + + + Youre willing to research the most recent developments in the Zone. You have advanced our understanding of the Zone by finding new anomalous formations previously unknown to science. + + + Pioneer + + + Stalkers think more of you now.\nIn appreciation of your efforts, stalkers have taken to leaving ammo in your personal box at Yanov station. + + + You dont try to avoid dangerous mutants - you hunt them down and do it well. Good hunters are held in high esteem among stalkers. + + + Mutant Hunter + + + Stalkers think more of you now.\nAs a sign of respect, stalkers have taken to leaving medical supplies in your personal box at Skadovsk. + + + You uncovered the secret behind stalker disappearances at Skadovsk: the guilty party werent mutants after all, but a far more dangerous foe - man. Your successful pursuit of the truth has earned you the respect of stalkers. + + + Detective + + + Stalkers think more of you now.\nStalkers have asked Owl the trader to give you a discount. \nBeard is now offering you his best prices for artifacts. + + + You showed the bandits and their leader, Sultan, whos boss, thus making you a popular man among stalkers. Youre always welcome at Skadovsk. + + + One of Ours + + + You have earned the respect of bandits.\nOwl the trader has given you a discount out of fear that he may be your next victim. \nAs agreed, Beard will now pay you a cut of his proceeds. + + + You helped Sultan outmaneuver the stalkers and take Beards business under your control. You are now feared and respected at Zaton. + + + Boss + + + Stalkers decided to give Magpies loot, which he had acquired through lies and deceit, to someone more worthy. They put his stuff in your personal box at Yanov. + + + You brought the scumbag to justice. Magpie cheated and deceived many a stalker, and now his time has come. + + + Courier of Justice + + + Stalkers think more of you now.\nBandits will try to hunt you down whenever you venture out into the Zone. + + + You found every type of artifact known to Zone researchers. This earned you the respect of stalkers and the close attention of bandits. + + + Artifact Hunter + + + Cardan can perform a unique modification, which will allow you to move quickly while wearing an exoskeleton, by installing hydraulic servomotor boosters. + + + Now Cardan has all the tools hell ever need. This will allow him to perform new and more complex upgrades. + + + Weapon Systems Expert + + + Azot can perform a unique tactical helmet modification: an infrared scanner that allows for detection of nearby humans. + + + Azot has all the tools a Zone technician could dream of. He can now perform hi-tech modifications. + + + Hi-Tech Expert + + + Your experience allows you to find rare artifacts more often. + + + There are virtually no accessible areas by the center of the Zone that you havent been to yet. Youve been a guest of almost every local anomaly. + + + Seasoned Stalker + + + Your leadership qualities improve your teams chances of survival. + + + You had a team job to do, so you put a great squad together and proved you're a leader. + + + Leader + + + Freedom, Duty, free stalkers and even bandits have come to recognize your negotiation skills, and think highly of you as a result. + + + You know how to solve a problem peacefully. Who needs brute force when simple words can resolve a dispute just as well? Nonetheless, you should watch out for people that shoot first and ask questions later. + + + Diplomat + + + Youve worked with the scientists for so long that you could rightfully be called a research assistant. Everyone in the scientists bunker considers you one of their own. + + + Research Assistant + + + Your relations with Duty have improved. If you find yourself in a pickle, Duty fighters will try to help you.\nAzot, the technician who favors Duty, has offered you a discount. \nYour relations with Freedom have deteriorated. \Hawaiian, the trader who favors Freedom, will now charge you more for his goods. + + + You have provided plenty of help to Duty, and this has earned you the respect of Duty fighters and their friends. But keep in mind that not everyone in the Zone is a Duty fan. + + + A Friend of Duty + + + \nYour relations with Freedom have improved. If you find yourself in a pickle, Freedom fighters will try to help you.\Hawaiian, the trader who favors Freedom, has offered you a discount. \nYour relations with Duty have deteriorated. \nAzot, the technician who favors Duty, will now charge you more for his services. + + + You have provided plenty of help to Freedom, and this has earned you the respect of Freedom fighters and their friends. But keep in mind that not everyone in the Zone is a Freedom fan. + + + A Friend of Freedom + + + Stalkers at Yanov value a balance of power between Duty and Freedom, which is why both the technician and the trader have given you discounts now. + + + You didnt side with either faction and always acted as a free stalker. Youve not made any enemies, but you havent got any new friends either. + + + A Man of Balance + + + Traders offer you more rare and expensive goods. + + + Although you know what its like to be short of cash, youre not doing too badly at the moment. In fact, sometimes your wealth can be considerable, and traders value a client of your stature. + + + A Wealthy Client + + + After getting the notes, Strelok found a new reason to live on and make it to his objective, whatever the cost. + + + Your foresight has served you well: on finding notes in Strelok's groups stashes, you kept them until you found their rightful owner. + + + A Keeper of Secrets + + + You managed to survive an emission without taking cover thanks to the anabiotic pills. The effects of this on your psyche are unclear, as you notice a strange silence inside your mind. It seems that you no longer hear a constant stream of thoughts. + + + Marked by the Zone + + + Owl the trader has offered you a discount for being his best informer and partner. + + + When you get your hands on a piece of info, you always find the right buyer. Obviously, you always have your own profit in mind when selling information to those who need it. + + + Trafficker of Information + + + Your relations with stalkers have improved. If you find yourself in a pickle, stalkers will try to help you.\nStalker medics have agreed to sell you medical supplies at cost price. + + + Youve always helped out stalkers in trouble. Although their faction is not very tight-knit, you now have allies in the unofficial stalker brotherhood who will help you in combat and afterwards too. + + + A Friend of Stalkers + + + Various new information allowed Professors Hermann and Ozersky to create a new experimental drug, an anabiotic, in the Zone. + + + You have a chance of surviving an emission even without the aid of drugs, provided your health is in order. + + + Given how useful you are, Professor Hermann is now offering you medical supplies and equipment intended exclusively for bunker personnel at cost price.\nNovikov is so used to you that he only wants you to pay for parts when performing modifications. + + diff --git a/gamedata/configs/text/eng/st_characters.xml b/gamedata/configs/text/eng/st_characters.xml new file mode 100644 index 0000000..c4a7491 --- /dev/null +++ b/gamedata/configs/text/eng/st_characters.xml @@ -0,0 +1,336 @@ + + + + Jack + + + Vano + + + Lt Col Shulga + + + Loki + + + Hawaiian + + + Bonesetter + + + Senka + + + Zulu + + + Uncle Yar + + + Topol + + + Mace + + + Spirit + + + Snake + + + Vulture + + + Nitro + + + Trapper + + + Flint + + + General Tachenko + + + Lt Bunchuk + + + Col Kosmach + + + Lt Zakharchuk + + + Black + + + Duplet + + + Surgeon + + + Skull + + + Stake + + + Koshey + + + Corpse + + + Strider + + + Armor + + + Sickle + + + Walrus + + + Meeker + + + Foma + + + Professor Ozersky + + + Novikov + + + Professor Hermann + + + Sgt. Shlyachin + + + Lt Sergeev + + + Sgt. Valiushok + + + Sgt. Ostrovsky + + + Captain Klimenko + + + Lt Sokolov + + + Captain Tarasov + + + Col Kovalsky + + + Lt Podorozhny + + + Lt Skelya + + + Sgt. Merkulov + + + Lt Stetsenko + + + Sgt. Yarmoshuk + + + Lt Rogovets + + + Lt Smirnov + + + Strelok + + + Barchuk + + + Major Degtyarev + + + Dwarf + + + Shishak + + + Grizzly + + + Torba + + + Mitay + + + Lt Gavrilenko + + + Kremen + + + Gaiduk + + + Garry + + + Lt Kirillov + + + Serbin + + + Jackal + + + Nimble + + + Crab + + + Garmata + + + Gonta + + + Sledgehammer + + + Crest + + + Owl + + + Grouse + + + Danila + + + Sultan + + + Morgan + + + Knuckles + + + Spartacus + + + Beard + + + Cardan + + + Goblin + + + Oak + + + Pianist + + + Mower + + + Kirzach + + + Tank + + + Mug + + + Hatchet + + + Tuna + + + Noah + + + Pilot + + + Tremor + + + Lt Drapei + + + WO Umerov + + + Snag + + + Hook + + + Ridge + + + Mirone + + + Barge + + + Petruha + + + Awl + + + Major Chepurny + + + WO Valentir + + + Snr. Sgt Morozov + + + Snr Lt Smolyak + + + Splinter + + + Sergeant Gazda + + + Captain Furtez + + + Snr. Sgt. Shveiko + + diff --git a/gamedata/configs/text/eng/st_dialog_manager.xml b/gamedata/configs/text/eng/st_dialog_manager.xml new file mode 100644 index 0000000..a9c9500 --- /dev/null +++ b/gamedata/configs/text/eng/st_dialog_manager.xml @@ -0,0 +1,993 @@ + + + + There's a spot in Zaton where heat anomalies emerged underwater. They call it 'Boiler' because there's steam and stuff coming out from the ground. If you think steam is nothing, think again. Seasoned stalkers say this kind of vapor anomaly hits you at least as hard as a regular heat anomaly, if not harder. The temperature may be a bit lower, but it grills you longer. As for artifacts, they found regular ones, the fire kind. + + + They say there's a nice spot in the quarry, with lots of artifacts, though not scant on anomalies either. Down at the bottom there's so many bubbles from gas anomalies, it hurts the eyes, even with a gas mask on. + + + Ash Heap is at the old graveyard near Kopachy. There's lots of heat anomalies and some zombies from time to time. People try to avoid the place, but they do find artifacts there. + + + They say artifacts have been found in the parking lot. Still got vehicles from the first Chernobyl disaster - those babies give the rad counter heartburn. In addition, the lot is full of electrical anomalies as well. + + + In the Putrid Grove, where trees are all warped from acid. People who've been there say it's full of gas anomalies. There's so much gas in the air that you can't see straight but with enough experience you can find the artifacts you're looking for. + + + If you're after artifacts, go for the acid kind. The best place to get those is the Concrete Bath. You won't have a lot of competition: no one likes that place because of its proximity to the Jupiter building. + + + Not far from the Jupiter plant a piece of the road fell through. They called this place Bitumen, because that's where the pavement melted. There're many anomalies in the gap - heat anomalies mixed with gravitational ones. And since it's two kinds of anomalies, the artifacts must be different, too. + + + There's a small harbor beyond the cement plant called Fen. The whole harbor's turned into a terrible stinking marsh and the water is full of gas anomalies. It's not even really water anymore, more like acid. People have found artifacts there before, but the place is also teeming with monsters. + + + Look in the old cement plant. Lots of anomalies, but it's worth it. Sure, there are spots where artifacts are easier to come by, but so's the competition. Here your only competition consists of hamsters, and that's only if you go down in the basement. + + + You should look near Oakpine. That's that thing growing between the hills, above the gas anomalies. Everyone's been calling it that since some geek identified the bark from that tree as both pine and oak. If you want to search for artifacts there, you'll need good chemical protection. Take lots of ammo, too, because those hills are home to packs and packs of dogs. + + + Sometimes you don't have to jump into anomalies to scare up an artifact. I've been told of an artifact found out in the open field. This one stalker had a detector that started acting up, so he decided to change the batteries. As soon as he did, the detector shows a reading and bam, an artifact basically drops in his hands. Lucky bastard, eh? That's the Zone for you: sometimes it punishes you and sometimes it rewards you. + + + I've heard from seasoned stalkers that sometimes artifacts move outside of anomalies. Your detector starts going "peep," you take it out, but there's nothing there. That means a 'nomadic' artifact walked past you but it's no use chasing it, because only the Zone decides who to reward it with. + + + No one has looked for artifacts in Pripyat yet. Everyone I know has only been here a short while, so they stay cautious. + + + I don't know if anyone knows the good spots. Pripyat is poorly explored so far. + + + I would look in the underground tunnels. They say there's tons of them underneath the city. + + + Not much is known about these parts. Garry's stories, mostly. He says there's a place here where a huge grapevine grows out of an acid anomaly, as tall as a ten-story building. He might be pulling our leg, but I'd check out that vine for artifacts just in case. + + + The surest place is the acid swamp. It's full of gravitational anomalies, but those are easy to spot. Just keep your eye on the water surface and you can't go wrong. Gas anomalies are more of a pain, because there's basically no air to breath. Getting squirted by one is no fun, believe you me. That thing eats through a vest faster than sulfuric acid. + + + There are plenty of heat anomalies at the burnt farmstead up on the hill. People find fire artifacts there. Look in the houses: whichever's got the most anomalies in it after an emission, that's where the artifacts will be. + + + There's probably lots of them in the caves under the burnt farmstead. If you walk on the hill with a detector, it doesn't stop beeping. Getting to them is easy enough - just jump in through the gap from above. Getting out is the hard part, what with all the anomalies down there. Mostly vortexes and acid. Some also claim to have seen something resembling a comet in that gap. A whole mix of dangers, to be sure, but that means the artifacts are probably mixed as well. + + + Have you seen a Circus anomaly? It's a huge springboard anomaly with two comets going round and round - quite a sight to behold. Behold it from a distance, though, because Circus is hot as hell, with lots of heat anomalies. It's got plenty of artifacts, too, but they're guarded by a nasty fire poltergeist that tries to roast you up when you come near. + + + If you're interested in gravitational artifacts, look for them in the Fang anomaly. The place is easy to spot - anomalies have done a job on the terrain, took half the hill clean off. A few caves opened up in the hill and were immediately settled by snorks. Thankfully, they rarely go outside. + + + In the Zone, man, in the Zone. Just don't give up. + + + A great question. Tell me when you know the answer! + + + Where, when, why... Remember: once you find a honey hole, keep it to yourself. + + + Where can I find artifacts? + + + I've already told you. + + + No, I don't know anything else. + + + That's all I know. Ask somebody else. + + + Wassup, bro? + + + Greetings. + + + Hello, stalker. + + + Hello. + + + What do you want? + + + What? + + + Start talking. + + + Good afternoon, Major, sir! + + + Good afternoon! + + + I'm listening, Major, sir. + + + Yeah, hi. + + + What? + + + The man himself. + + + Hey, stalker. What's your hurry? + + + Sup. + + + Sup, man. + + + Oh hey, dude. + + + Howdy. + + + Hey! + + + Help me, bro! + + + Save me brother, I'm dying... + + + I need medical assistance! + + + Medkit!... Quick! + + + Help me, buddy... Ahh, the pain! + + + Gimme a medkit... medkit, now... + + + Dude... argh... c'mon, help me out! + + + Yo, I need a medkit... quick... + + + Help me, stalker... a medkit, please... + + + I'm hurt... help! + + + Need a medkit! + + + Medkit! + + + Have you heard about the dredge station east of Skadovsk? They say something weird glows there at night... Too weird even for the Zone, mind you. I really don't know if it's worth checking out. It might turn out to be something valuable, but is it worth risking my ass over? That's the question... + + + Nothing but old decrepit stuff around here. Take that dilapidated motor column on the Preobrazhensky bridge - it's rusted through and through, the bridge included. Many would love to poke around the area, were it not for snorks and anomalies... + + + Did you hear Sultan planned to take over Beard's business? Skadovsk ain't big enough for his greedy ass, so he wanted to grab an even larger piece of the pie... But we said, "No way, Jos!" Beard and the rest of our guys gave them hell all right. Sultan's thug operation won't fly here. + + + Wow, did you hear about this? That scumbag Sultan clamped down on Beard... I don't know what he did exactly, but it seems he turned on the meter on Beard! What's the Zone coming to? If they keep this up, Skadovsk is going to be a bandit base before you know it! + + + Have you heard about the Oasis, brother? They say there's this place that's extremely hard to find and, once you know where it is, even harder to get to. There's supposed to be a lake there. You walk into it and all your maladies fade away, all your wounds heal instantly! Ah, talking's no use. Have you seen how many rookie stalkers have come here, to the center of the Zone? Some are looking for a treasure trove of artifacts, some are just curious, but most are hoping to find the Oasis. Word is, it's hidden somewhere around here... + + + They say the Zone is about to croak... Someone found the Oasis and took its artifact - the Heart of the Oasis. Now the Zone will shift into another dimension and no stalkers will ever be able to get out... Just kidding, man. But they really did find some kind of new artifact. Scientists are tinkering with it in their bunker as we speak. + + + Did you hear about Topol? He found some new shithole for his guys to wander into, and of course, they happily went for it. Their escapades ended up with a controller ironing their brains out. They would be pissing all over themselves in hospital bunks if it weren't for this one stalker that was with them. When Topol came to his senses from that zombification crap, that stalker was squatting down right next to the controller, cutting its ears off. + + + Did you hear about the Kopachy village? When the original disaster hit the Chernobyl NPP, that area got it so bad that they decided to bury the whole village. Nothing but small radioactive mounds there now, in place of houses. They say it was an eerie place even before the disaster; I shudder to think what one might find there nowadays. Everyone's too scared to check it out. But what if they're wrong - it could be an artifact goldmine for all we know! + + + You know, there are only two stalkers at Yanov who can feel an emission approaching. Bonesetter, our medic, and Zulu, an ex Duty member. The 'ex' prefix is a recent development... When Duty came to Yanov station, Freedom fighters were already there. As could be expected, things got ugly quickly. Both factions suffered heavy losses, even a few free stalkers were hit by stray bullets. That's when Zulu told them an emission was coming. Left with no choice, Duty and Freedom called a truce and dug in at the station. When it was all over, Zulu quit Duty and settled down at the tower near the station. + + + There's all kinds of weird stories... You shouldn't believe all of them. Storytellers are a dime a dozen in the Zone these days. But the strange thing is, a few stalkers from Yanov station have reported seeing UFOs. They say it looked like a black saucer about 16 feet in diameter. Others claim it looked like an airplane from a distance, they were sure that's what it was. The indisputable fact is that one of the eyewitnesses is a former pilot, and he says he'd never seen anything like it in his whole life. + + + Nothing but bad news lately. Good men are vanishing one after another, then we find their bodies with not a drop of blood. It's got to be those mother fucking bloodsuckers, who else? Ooh, how I'd love to find their lair and pump them bitches full of lead! Soon we'll be going to the john in pairs, you know? Lone stalkers my ass. + + + Got a new one for you. So, the Freedom guys got their hands on the PDA of the legendary founder of Duty. And you know what? It turns out he duped his men, telling them the army leadership abandoned them in the Zone. He made that up just so he could form his own faction! But shit like that don't stick in the Zone. Not long after our hero found himself in a space bubble and that was the end of him. That's how it goes... To think I was actually considering joining Duty! Nah, let 'em spew their self-righteous drivel without me. + + + That new Duty squad, you know... They just about crystallized out of thin air. Think about it: a group of Duty fighters leave Yanov and come back three times as many. Are they cloning themselves or what? I guess you should expect that from Duty, though. Only way they tell each other apart is by rank! + + + That new Freedom squad, you know... They just about crystallized out of thin air. Think about it: a group of Freedom fighters leave Yanov and come back three times as many. I got an idea - they're multiplying by budding! You'd think so, wouldn't you? All that grass they're smoking, they're about to take roots and start vegetative reproduction! + + + Know Gonta and his guys? They were down on their luck for a while, what with Danila disappearing and Crab getting wounded. But they're on a good streak now. They're making out nicely with the scientists, taking measurements for them. Nice, eh? A cushy job and a surefire step toward getting their official permits. + + + Heard about stalkers called Mitay, Torba and Grizzly? I hear they got a job with the scientists, taking measurements. What the heck is that about? If you ask me, those eggheads are up to no good. But hey, at least the guys are taking it easy now. They might even get their official permits one day. + + + Know Spartacus and his crew? Well, you won't see them at Skadovsk anymore - they're guarding the scientists' bunker now. Why not - they can handle mutants all right and know how to keep the bandits at bay. Science is a worthy cause that could use some peace and quiet. + + + Have you seen them mercenaries kicking heels at the substation? Not recently you haven't. They've gone over to Jupiter to guard the scientists' bunker. There had been some other mercs guarding the place before them, but something happened to them, I hear. Ain't a bad trend if you ask me! Some mercs disappear, others take their place and follow suit... A few more rounds like that and we'll be rid of mercs at Zaton altogether. + + + Folks say the scientists' bunker is now being guarded by the valiant warriors of Duty... I wonder what's in it for them? Do they really believe those 'ologists' will pay them back with a brand new plasma gun, to go hamster-hunting? Guards my butt, heh... + + + They say the scientists' bunker is now being guarded by Freedom. Aren't the scientists afraid that their test specimens can go up in smoke - I mean literally? There's a bright side to it, though. If anyone tries to attack the bunker, they'll have to get through a smoke screen first! Ha-ha-ha! + + + Have you seen Jupiter, the radio electronics plant? A creepy place that is. No one really knows what goes on in there. The anomalies and mutants are just like everywhere else... But I still don't feel like going there. My gut's telling me that place is trouble. + + + Lookie here, ain't you that dude who exposed the Skadovsk medic? 'Preciate that, I really do. I coulda been his next patient, ya know... We all thought it was the monsters, but I guess some people can be just as bad. We live in a dog eat dog world, ain't that the truth? + + + I should be asking you that. After you went into those tunnels beneath Jupiter, we heard rumors you reached as far as the center of the Zone. Caused a real turmoil. Got a dozen people itching to follow in your footsteps. Nitro cooled them off, though - he said the tunnel gates closed shut and he couldn't do nothing to reopen them. Sure, we had a few desperados who wanted to blow up the gate, but they're still trying to work out where to get enough dynamite and how they're going to breathe once they actually get down there. + + + Oh, have you heard the latest about Garry? The stalker who used to work for the scientists. He's no longer a 'trespasser' - he's got an official Zone permit, believe it or not! So, you're thinking he should have picked up his loot and gone home, right? Well, instead the crazy bastard up and made for Pripyat. Everyone thought he was gone for good, like the rest, but far from it. He made it, but his feat wasn't much use to stalkers. He ran into some military guys. Now Garry's cool with the jarheads, having a permit and all, but the area is still off limits to regular stalkers. + + + Well... Freedom and Duty are fighting again, this time over some major stash. They say there was enough gear in there to equip three infantry divisions. Don't know who made the stash in the first place, but the showdown was really something. Stirred up all the stalkers at Yanov, but luckily, they stepped aside or we'd have yet another free-for-all. I guess Duty got the worst of it, 'cause now the area is guarded by Freedom squads. + + + Well... Duty and Freedom are fighting again, this time over some major stash. They say there was enough gear in there to equip three infantry divisions. Don't know who made the stash in the first place, but the showdown was really something. Stirred up all the stalkers at Yanov, but luckily, they stepped aside or we'd have yet another free-for-all. I guess Freedom got the worst of it, 'cause now the area is guarded by Duty squads. + + + Something happened recently. A group of stalkers were exploring the Jupiter tunnels and stumbled into something - I mean someone. First their guns came flying out of their hands, and then all kinds of crap went flying straight at them. They got no clue what the hell actually happened, but they lost two boys in there. + + + I heard they found some kind of gross mutant shit in the tunnels north of Jupiter. Trapper sent a stalker in there to investigate. Turned out there used to be a burer lair. Why "used to be"? 'Cause that same stalker wiped out all the burers. On his own... You even seem to fit his description, except he's a bit taller and always carries a grenade launcher. + + + Stalkers are done for... Monsters are coming from Fen. Stalkers at the cement plant saw them lugging off one of our guys. There was at least a dozen of them, huge-ass bastards like you won't believe. Looked like bloodsuckers, only twice as big and much faster. We are praying Trapper figures out how to deal with those beasts... + + + You heard about swamp bloodsuckers? The ones in Fen? Well, they're gone. Trapper came for 'em... Not personally, though - he hired some stalkers. They say he put a crew together, about ten men or so, and combed that swamp through and through, and whatever jumped out they blasted to kingdom come. Ain't a frog living in that place no more. + + + It wasn't long after word began to spread about a chimera that someone popped it. Mutants used to kill stalkers by the dozen, but I guess we're finally wising up and reversing the trend. I also heard from other sources that the guy was an experienced hunter who has killed more monsters than you and I killed mosquitoes in our lifetime. + + + Have you heard the kind of people Freedom recruits nowadays? There was this fella called Flint, bragged left and right about his escapades and trophies... well, he turned out to be the scum of the earth. Left his buddy to die in an anomaly, grabbed his loot and took off. Later they uncovered more of his exploits over at Zaton, where he basically fed a group of hunters to a chimera. I used to think better of Freedom... Hell, I'd rather be factionless than have friends like that. + + + Well, they put down that chimera at Zaton. Gonta's crew with an unknown stalker. Wait, that was you, wasn't it? Maybe you could give me a first-hand account? Thanks a million, by the way - that's one less man-eating mutant to worry about! + + + Don't know if it's newsworthy, but we got this Noah fella here, the loopiest headcase you will ever meet. He's got one ugly barge... Looks like he had a bunch of illegals build it in a week, heh. Watch out for him, he shoots first and doesn't even bother to ask questions later. I say, to hell with that asshole. + + + You know this cat Nimble? Yeah, he's sneaky all right. Sells the best shooters around, no doubt. I wonder how he smuggles them like that. I mean, how do you carry a Vintar so it don't look like you do? Where do you stick that thing? That's some wizard shit right there, man. + + + Word on the street is, Sultan's stepped into some deep shit. The don wanted to bust up Beard and take his business under, but he bit off more than he could chew. Got a mouthful instead. He's got rough times ahead with his crew looking at him all sideways. Ain't got the same weight anymore. + + + Word is, Sultan's got Beard in the palm of his hand, juicing his business. That's good shit and Sultan's got a lot of weight now, but the best thing is we can run Skadovsk our own way now. It's gonna be beautiful. Looking for cover from an emission? No problem, just fork up the toll! + + + Hey man, you hear about the Oasis? Picture that, a place that instantly heals all your pains and sicknesses. It's gotta be some kinda trick or magic... I got another idea, though. There's all this buzz about the Oasis, but not a word about the Wish Granter like it used to be. Well, maybe the Oasis is actually someone's wish come true? + + + There's talk among the eggheads of some artifact dragged here all the way from the Oasis. But get this: once they study it, they're gonna use their research to come up with a cure for cancer! Word up! + + + Same shit, different day... Everyone's digging up old stories about the center of the Zone. Like the one about the Oasis - a place that instantly restores all your energy and heals your wounds. It's pure, unadulterated bullshit, but fun to listen to. Especially when they talk of its location. Oh, I wish there was a place like that for real... we'd have saved so many of our boys. + + + I heard through the grapevine that they've found the Oasis. I'd have never thought it existed, but facts are a stubborn thing. An artifact was found on location. Scientists are studying it as we speak. Perhaps they can use it to make some ultra-fast healing device... Our boys sure could make use of that. + + + Kopachy. Nothing new to the Zone, but new to me. Just imagine - a whole village with houses buried up to their roofs in the ground... Dating all the way back to 1986... the houses emitted so much radiation, they had to bury them. A chilling sight... + + + You know the story how Duty and us ended up rooming together at Yanov? That was all Zulu. He was in Duty back then, and he could smell an emission approaching like no one else... But we came to Yanov first; after stalkers, that is. We barely had time to light up a smoke when those half-assed GIs turned up, waving their shooters at us. The last time I saw that kind of carnage was back at the Garbage over a year ago. Tons of guys dead on both sides. Our emission specialist among them, God save his soul. That's when Zulu goes, "Emission coming! Take cover!" What were we supposed to do, kick them out and let them die? Duty or not, they're still humans. That's how we live now: we squabble when it's quiet, but when an emission hits, we sit tight, side by side. Zulu, he ended up leaving Duty. He lives as a hermit near Yanov now. + + + It ain't no news and no secret neither, but Cardan the technician is on his way to drinking himself to death. They say he started out easy when he came to Skadovsk, drinking only on occasion or for antirad purposes. It wasn't until later that he really began to belt the grape, grief-stricken by the death of his two friends. They must have been really close... + + + OK, here's a funny story. This one fella was talking about a UFO flying over Yanov. The Zone can really drive people crazy, can't it? Poltergeists and controllers ain't enough for them, no, they simply can't do without the good ol' UFO stories. Well, at least we haven't got any psychic loonies exorcizing the evil spirits out of vodka. Imagine one of them going: "Aw Lawd, cast out the evil spirits! Keep the raw spirits!"... Ha-ha. + + + Did you hear about the Kopachy village? When the original disaster hit the Chernobyl NPP, that area got it so bad that they decided to bury the whole village. Nothing but small radioactive mounds there now, in place of houses. They say it was an eerie place even before the disaster; I shudder to think what one might find there nowadays. Everyone's too scared to check it out . + + + This isn't news, but maybe you haven't heard it. We didn't jump in bed with Freedom 'cause we like to snuggle. We owe it to circumstance. When we came here, Freedom pounced on us out of nowhere... Losses were great on both sides, though we were slowly but surely gaining an edge over the anarchists... But as the fight was in full swing, Zulu sensed an emission approaching. He's never wrong, you know... We had no choice but to put the fighting on hold. What I don't get is why Zulu left Duty after that incident... + + + Our scouts recently reported seeing an unidentified flying object over Yanov station. A UFO, in other words. Before you ask any stupid questions, a UFO isn't just some flying saucer with Martians in them. It could be any flying object, from a piece of cardboard to a meteorological probe, as long as eyewitnesses were unable to identify it. Got that? + + + You were the one who brought that PDA to Loki, right? Man, it's the shiznit. The legendary founder of Duty, General Tachenko, conned his own soldiers like some suckers. Broke the radio so they couldn't be reached from the outside, formed his own following of knuckleheads... only to croak in true retard fashion in an effin' space bubble! You couldn't make this shit up, man! + + + Seen the new squad those half-assed GIs been fieldin'? Can't be reinforcements from their base - the ideology hasn't yet replaced good sense altogether. But they're too well trained to be plain stalkers. Who the hell knows. Could they be from the Monolith? I know, that sounds crazy! + + + Seen our new fighters? Oh, you brought them here, didn't you? You rock. They're pretty cool, kinda tense though... That's OK, a few months of hanging with us will free their minds. They'll start digging our way of life and become like us soon enough. + + + We've got some cool new recruits: a squad of former Monolith fighters. And not some rookies either, these are trained fighters. Of course, their heads haven't quite clicked into place after leaving the Monolith. That's all right though, we've got a special Ideology 101 crash course for that, and much more. + + + They say Freedom has recruited some former Monolith fighters. Hard to believe, but they do have a new squad and it definitely didn't come from outside the Zone. I guess they're pretty desperate... that or their brains have completely withered from all those drugs. Who are they gonna recruit next, a zombie brigade? A burer battalion? + + + This area will soon have law and order again. Duty has taken control of key local positions. We've secured a firm footing at Yanov, and we've got a 24/7 protection detail at the scientists' bunker. It's high time for Freedom to pack their things and hit the trail - anarchists aren't welcome here. + + + The newest wonder of the world - a sober Cardan. Can you believe he's on the wagon? Skadovsk people asked him if he got hold of an AA hotline number, to which he replied, "The only number I needed was sixty two." + + + I think it was you who helped our guys get that job guarding the scientists, wasn't it? Thanks for that. It sure was nice to see our men at the bunker instead of those friggin' mercs. Good stuff! + + + Let's see... we're getting a kick from Duty's secret stash. Now we'll use the stash for its intended purpose - as a prison for Duty scum to press them into divulging all their secrets. He-he. Oh, and thanks for tipping us off about the alarm system - without reinforcements we didn't stand a chance. + + + Another victory for Duty! Those anarchists really got too big for their britches... Snuck into our secret warehouse, thinking they could get away with it. Hell no! We surprised them and blew their heads off like rabid hamsters. + + + It ain't news that Freedom is a bunch of lowlifes, but we've uncovered something new about one of their biggest wackos. This hood went by the name of Flint in Freedom, but before he joined he was Magpie, a stalker. At least Magpie was his name when he came to Zaton and almost led a crew of hunters right into mutants' jaws. He set them up so that a chimera almost tore them to pieces, while this bastard grabbed their equipment and came here to Yanov. After joining Freedom, he threw his partner into an anomaly to take away his artifact. So, that's Freedom for you. + + + A new shipbuilding project, led by Noah. That's the newest attraction at Zaton - a stalker by the name of Noah. Experienced, motivated and 100% nuts. His latest crazy idea is to save all stalkers from the Apocalypse. To that end, he's rebuilding an old barge onto an "ark." A real nut factory. If you do decide to drop by, make sure not to annoy Noah. As long as you do that, he's pretty much harmless. + + + Have you met Nimble? He's on Skadovsk right now. He's a real pro of his trade. He can get you anything you need. Well, almost anything. He's focused on shooters and suits lately, but always top of the line! Specialty items, experimental designs, hand-crafted articles... His stuff ain't cheap, but why should it be? Exclusivity costs a pretty penny! + + + Did you know Pilot has been using a new route between Zaton and Jupiter? It used to take a long while - walking uphill, dodging anomalies and so on. Now it's a piece of cake. Not a journey but a walk in the park, not to mention it's half as long. But Pilot gives credit where credit is due - he wasn't the one to discover the route. A stalker showed him his maps. For a fee, of course, but he didn't charge an arm and a leg either. + + + Nothing much, to be honest. + + + There's always something new in the Zone, anywhere you look. + + + Well, you're here now. That's news, I guess. + + + What's new in the Zone? + + + I don't know anything else that would interest you. + + + I would tell you gladly, but that's all I've heard. + + + I told you everything I know. + + + Hrm... Maybe you should ask Grouse over at Skadovsk. He's been looking for help with this one thing - stalkers are disappearing without a trace. Everyone blames bloodsuckers, because when their bodies are found, they're bled completely dry. But this is just too much... They're snatching people almost every other day. Which really isn't bloodsuckers' MO... Grouse even hired an experienced hunter to track down those bloodsuckers. + + + You know, when a stalker needs money he's got two ways to go: find artifacts and offload them to traders at 30 kopecks on the ruble, or work for the scientists. They always come up with something or other a stalker can do, be it the delivery of a rare artifact or a mutant carcass. But above all else, if you get on their good side they can issue you a permit to the Zone, all official and legit. Picture yourself passing a military post, lugging a full backpack of loot, and being saluted! Warms my heart! So anyway, the scientists' bunker is situated west of Yanov station. They've got one stalker working for them already, maybe they can hire another one like you. + + + How successful you are depends on what you do. If you don't mind hunting mutants, you'll have plenty of offers. Drop in the basement at Yanov and ask for Trapper - he pays good coin for purging mutants, but don't go shooting the first pseudodog you see to claim your reward. Trapper gives out orders on specific monsters that either interfere with artifact collection or frequent the places stalkers use to hide from emissions. + + + Fellas like you who come to Skadovsk like to visit Beard. He shells out decent dough for artifacts... But I'll tell you one thing - his business sense is piss poor. He don't wanna share his profits with some powerful people... and that shit's gonna come back to bite him in the ass. Ya dig? + + + If you need hard cash, see Owl. He peddles everything a real man needs on Skadovsk - information, shooters, whatever. If you got something hot and valuable, like a document or a stalker's PDA - take it to Owl and get paid. You can also scare up good dough by taking on his personal orders. Just ask him if he needs something done. + + + You might want to ask Gonta. He and his crew have got quite a story to tell. A chimera turned up at Zaton not long ago, so Gonta and his men went after it. They split into two teams to track down the beast and sent on one of the hunters in search of the bloodsucker lair. They were a bit short-staffed when they finally smelled out the chimera, so another stalker, Magpie, came along. I don't know exactly how it all went down, but most accounts agree that Magpie legged it as soon as he saw the chimera. Gonta barely made it out of there, with one of his men badly wounded. But the chimera is still at large, so they're looking for people to lend a hand. + + + That's easy: if you want serious dough, Sultan's your man. He's the local boss, so if you make out like a goodfella, he'll find a job for you. + + + If you're good at stalking - that is, finding artifacts - talk to Beard. He's got a lot of respect here. He's the only man on Skadovsk who'll give you a good price for your artifacts. He's got the connections to transport them outside the Zone. Besides, he's a good man, you know... always there for you with advice or a suitable job. + + + There's a trader on Skadovsk, Owl's his name. Not the most pleasant of people. Always complaining how all the artifacts go to Beard and not him, but if you need money, you can see what's he's got to offer. That weasel deals in much more than ammo. He can tell you things, sell you things, buy your things and pay for things you know that interest him. Pay him a visit - he's on the second aft deck. I'm sure you can work something out together. + + + You can ask Vano, he hangs around at the Yanov bar. He got on the hook with the bandits - been trying to repay his debt three times already. He's got experience and everything, can spot an anomaly with his eyes closed... and still he always manages to get in trouble. A bunch of people have suggested that he just take off. The Zone's too big for the mob to find him, but he's too proud to run away, and there aren't many people willing to help him work out his issue with the bandits... + + + Forget about jobs, man... The bandits have gotten really out of hand - they took Mitay prisoner and are demanding ransom. Mitay was one of the first stalkers here at Yanov, he built this place up so people could take cover during an emission, and now when he needs help no one gives a crap. No question about Freedom or Duty - they're too busy gnawing at each other's throats... But the rest - they should do something! Ah, what's the use... Mitay's own crew can't figure out how to free him. If you want to help them, talk to Grizzly; you can find him at the station bar. + + + Nitro, the Yanov technician, needs working materials. He's good with weapons and electronics alike, if you didn't know. But sometimes skills are not enough - he needs the right materials, so he's been asking around. The problem is that all the safe places have been cleaned out, while the rest are too dangerous for most. Nitro's hoping to find someone willing to take those risks, but I'm sure he'll pay good money for the trouble. + + + I heard Uncle Yar over at Yanov station was looking for a less-than-curious stalker to help him with something. Not sure why he don't ask his Freedom buddies... Anyways, he's a decent old man, so maybe you should talk to him and see if you can work something out. + + + Hrm... Don't know anyone like that. + + + I'd love to know that myself. + + + How the hell should I know? + + + Know anyone who'd have a job for me? + + + You've asked me that already. + + + Couldn't tell you anything new. + + + You've got my answer already. + + + OK, forget about it. + + + I would like to ask you something. + + + Ask away. + + + Spit it out. + + + Shoot. + + + I'm listening. + + + Help! + + + Take this medkit. + + + Sorry, I got nothing. + + + I see. + + + What are you up to? + + + Can I go with you? + + + Of course. The more the merrier. + + + No, sorry. I'm going my own way. + + + Let's go then. + + + I need to go some place, can you lead me there for a fee? + + + No problem. Where do you need to go? Take your pick. + + + I agree. Let's go. + + + I've changed my mind. + + + No, I've got other urgent business to attend to. + + + I'm just taking it easy. + + + Nothing much, just getting a bit of R&R. + + + What does it look like I'm doing? Not a damn thing. + + + Tracking mutants. + + + I'm shadowing a couple of assholes. Friggin' retards... + + + Tracking down a few mercenaries. Real bastards, these. + + + I'm tailing a squad of fanatics. Monolith fighters, that is... + + + I'm after some zombies. Too many of those poor bastards around... + + + OK. That will cost you + + + You know, I've changed my mind. + + + I don't have that much. + + + Oh, nothing I guess. + + + I'm following some mutants. Someone's got to show them their place. + + + I'm chasing some local thugs. + + + I'm out to get some mercenary scalps. They've got a debt that needs collecting. + + + I'm after those screwy Monolith folk. + + + I'm trying to track down some of my debtors. + + + I'm not doing anything right now. + + + I'm hunting mutants, trying to purge the area of their filth. + + + I'm on a mission, tracking down a bandit squad. + + + Mercenaries are my target. I'm following their squad's tracks. + + + I'm after a Monolith squad. + + + I'm chasing down those half baked assholes - Freedom, that's who... + + + I'm hunting for artifacts. + + + I ain't picking mushrooms... artifacts, more like. + + + I'm looking for artifacts. + + + I'm headed toward the Boiler anomaly, the one next to a small grove. + + + I'm moving out to the northern lake... gonna take some time off on the peninsula. + + + I'm going beyond the northern lake - there's a decent camping spot there. + + + I'm going to the woods beyond the northern lake. + + + I'm headed to a small forest west of the sawmill. + + + I'm headed for the hill that's west of the swamp. None of the swamp pollution can reach me there. + + + I'm heading to the antenna complex. There's a nice little spot west of that. + + + I'm headed for the woods west of Oakpine... come along if you like - I don't mind company. + + + To a grove between the Iron Forest and the workshops. + + + Toward the great bridge... there's supposed to be a safe, private little spot east of there. + + + To a parking lot south of the old barge. + + + Nothing special, just travelling. Gonna set up camp on a hill east of Skadovsk. + + + To a grove between Izumrudnoye and the gas station. + + + A fork in the road near the waste processing station. + + + To the Boiler anomaly. + + + To the ranger station. There's a building complex there, you've probably seen it. One of them even got furnaces - I wonder what kind of business they ran down there. + + + To a grove west of the burnt farmstead. + + + To a grove east of the Boiler anomaly. + + + To a hill just past the northern lake. + + + A little grove south of the burnt farmstead. + + + I'm headed west of Skadovsk... where the pipes come out. + + + I'm headed to a spot midway between Skadovsk and the dredge station. + + + To a bayou near the old barge. + + + To a creek near the Scar anomaly. + + + To the gas station. + + + To the Oakpine ravines. + + + I want to look for artifacts in the Claw anomaly. + + + I'm going toward a hill west of the Boiler anomaly. + + + To the Iron Forest anomaly. + + + I'm going to the Iron Forest anomaly to look for artifacts. + + + I'm going to the swamp. Sure, it ain't easy breathing with all that gas, but the artifacts make up for it. + + + I'm going to the substation workshops. They say it's a nice place to hide from emissions, so I'm going to give it a test run. + + + You know there's a sawmill nearby, that's where I'm headed. I want to double check it for anything of value. + + + I feel like taking some time off at the Izumrudnoye resort. Oh, sure it is a fine resort... for flesh and boars! Ha-ha! Still, I'm sure I can camp out there a bit. + + + To a bridge, I think it's marked Preobrazhensky on the map. + + + To the dredge station. I bet there are still some valuables to be found in the area. + + + To the old barge. + + + I want to swing by the burnt farmstead, see if any new artifacts have popped up. + + + To the southern plateau. + + + To the crack by the gas station. + + + I'm going to the Krug antenna complex - need a safe place to hide from emissions. There's supposed to be lots of monsters there, unfortunately. + + + I'm going to the Krug antenna complex - need a safe place to hide from emissions. There's supposed to be lots of monsters there, unfortunately. + + + I'm going to look for artifacts near Oakpine. Hopefully the mutts will keep at bay. + + + To the cesspool... you know, the waste processing station. It's as good a place as any to hide from emissions. + + + I'm headed to the boat pier on the northern lake. Once there I'll play it by ear. + + + I'm going to the docks, where the cranes are. A decent place to camp out. + + + I'm planning to look for artifacts in the Boiler anomaly. I just hope my suit will survive this little hot springs vacation. + + + To the Scar anomaly. + + + I want to test how fireproof my equipment is, plus look for artifacts - all in the Circus anomaly. + + + To the ranger station. + + + I'm going to camp out on Shevchenko. It's safe from emissions, and a tough spot for mutants to attack. + + + I'm going to camp out on Shevchenko. It's safe from emissions, and a tough spot for mutants to attack. + + + I'm going to the docks, where the cranes are. A decent place to camp out. + + + I want to dump my loot and have a cold one or two. Skadovsk is just the place. + + + I'm going to the army checkpoint, next to the Jupiter plant. + + + To the container warehouse. + + + I'm headed to a totally inconspicuous area between the container warehouse and the southern tunnel. + + + To Yanov station. Finally a time to relax. + + + To the tunnel north of Kopachy. + + + I'm going to a really creepy place, the Kopachy village... or whatever is left of it. Yes, I've stocked up on extra antirads and ammo - I'm gonna need em! + + + To the cement factory. A nice observation point, and no one can sneak up on you there. + + + To the cement factory. Gonna check out that basement. + + + To the substation near Yanov. + + + I'm going to a spot near the southern railroad tunnel. + + + I'm going to a cooling pond near the Jupiter plant. + + + I'm going to the Volkhov AA complex, gonna hunt me some zombies. + + + To the bunker, you know, the one at the Volkhov AA complex. + + + To the anomalous grove near the quarry. Might find an artifact or two. + + + I'm going to the quarry, where the construction workers' vans are. + + + There's this spot between the quarry and Yanov station. I'm gonna lay low there for a while. + + + I'm going to the eastern tunnel, one that goes under the Jupiter plant. + + + To the Bitumen anomaly. Gonna see how fireproof my suit is. + + + I'm going to the Plavni anomaly to look for artifacts. Got enough antidote - it's the monsters I'm worried about. + + + To the ventilation complex, between the factory and the container warehouse. Why? Eh, hell if I know. + + + I'm going to the Jupiter workshops. Maybe I'll find out what gives the place such a bad name. + + + I'm going to the very bottom of the quarry. Stalkers say they find a lot of artifacts down there. + + + To the parking lot where the old vehicles are. Gonna look for artifacts in electric anomalies. + + + There's a neat little spot located between the Volkhov AA complex and the container warehouse, and that's where I'm headed. + + + To the scientists' bunker. + + + To the cooling tower northwest of Yanov station. + + + Toward the Jupiter plant, but I have no desire to go inside. I'll hang around the administration buildings and see what my options are. + + + I'm going to the Ash Heap anomaly, beyond Kopachy. + + + I'm going to the Jupiter workshops. They say a helicopter went down in that area, so I thought I'd check it out. + + + I'm going to the dilapidated train located between the Volkhov AA complex and the parking lot. + + + I'm going to the southern tunnel, just to be safe in case of an emission. + + + I'm going to this one spot between Yanov and Kopachy. + + + I'm going to a spot not far from the canal, south of the cement factory. + + + I'm going to a spot near the canal, north of the Jupiter plant. + + + I'm going to check out the quarry. + + + I'm going to check out the quarry. + + + I'm going to check out the area north of Yanov. + + + Toward the Volkhov AA complex. There's a nice spot to camp out, between the complex and the Kopachy village. + + + Oh, just travelling... Heading toward the container warehouse. + + + I'm surveying the area. Right now I'm going to check out what's south of the army checkpoint. + + + To the helicopter pad, the one between the factory and the container warehouse. + + + I'm going to this spot south of Yanov station, by the railroad. + + + To a spot north of Yanov station. + + + To the anomalous grove. + + + To a spot south of the AA complex. + + + To the cooling pond that's right by the Concrete Bath anomaly. + + + I'm going to check out the area around the plant. + + + I'm going to check out the area around the plant. + + + To the yard behind the laundromat. + + + To the laundromat, the safest place around. + + + To the hospital. I hope I won't run into those Monolith lunatics along the way... + + + To the book store... I heard it provides decent cover from emissions. + + + I'm going to see the local attraction - the All-People Friendship symbol. It's not far from the book store. + + + To the old grocery store. You ain't gonna find any fresh bread in there nowadays, but it's good enough to hide from an emission. + + + To the Berezka store. + + + To the old kindergarten. + + + To the movie theater square, near the Prometheus monument. + + + I'm headed to the school building. They say it's teeming with monsters, but it'll also do in case an emission hits. + + + I'm headed to the old service center. There's supposed to be an anomaly on the first floor, and maybe some artifacts too. + + + I'm exploring this part of town. Right now I'm headed to the old grocery store. + + + I'm exploring this part of town. Right now I'm headed to the old grocery store. + + + I'm surveying the area. Right now I want to check out this one building behind the apartment complex. + + + I want to search the public amenities center, I think it was called Yubileiny. + + + I'm searching this area for anomalies. I heard there's a fire anomaly in a yard, west of the kindergarten... + + + Oh, I'm just touring the town. Heading to the apartment complex right now. + + + Oh, I'm just touring the town. Heading to the apartment complex right now. + + + Oh, I'm just touring the town. Heading to the apartment complex right now. + + + I'm just travelling around, heading to the river port right now. Hopefully I won't run into any Monolith fanatics... + + + I'm looking for a place in Pripyat with lots of artifacts and no monsters or Monolith fighters... He-he... Seriously, I'm going to check out this anomaly I heard of, just south of the river port. + + + Toward the Prometheus movie theater. + + + To the movie theater square, near the Prometheus monument. + + + I want to lay low for a while and catch my breath. There's a neat little spot in a yard north of the kindergarten that'd be perfect for it. + + + South of the apartment complex. + + + I'm going to this place between the kindergarten and the apartment complex. + + + There's this place they call Scar, where the ground looks like it has been hacked with an axe. People have found artifacts there, but once you go in there something weird starts to happen. That thing hits your brains so hard you almost forget how to breathe, let alone try to get your ass out of there. + + + You know where the dredge station is? It's been battered up by gravitational anomalies, but not too bad for an experienced stalker. Just keep throwing bolts as usual. Theres also radiation, inside and out - its like being next to a massive chunk of enriched uranium. + + + There's an old substation here, also called the Iron Forest. You'll understand why when you see it. Some people claim to have found clusters of artifacts in that area after an emission hit. Its not all that dangerous, mainly electric anomalies and a bit of radiation... Theres also a few poltergeists, that will bury you in all kinds of crap if you don't hide in time. + + + Work? I dont know, to be honest. But if you get a chance to help Freedom out - go see our boss at Yanov. Go to the southern wing and see Loki - that's him. Remember, if you believe in the advancement of humankind, in greater consciousness and significance of the Zone's gifts, you'll be making the right choice. + + + No idea. But if you find something that can help us in our fight against the Zone and those who think it's a gift rather than a curse, go see the commander of Duty's expedition unit - Lieutenant Colonel Shulga. He's the man in charge at Yanov station. You'll find him in the northern wing. One things for sure - any civilian who contributes to Dutys overall success will get a handsome reward. + + + Everyone's talking about some weird stuff going on at the old cooling tower. If you turn on the common frequency, you catch bits and pieces of distress calls, sounding like some poor bastard trying to get out of an anomaly. When you ask for coordinates, there's no reply. The weirdest thing though is the sound. That kind of distortion cant be explained away... + + + Im headed to a place half way between Skadovsk and Shevchenko. + + + To Jupiter. I probably wont venture too far in though. + + diff --git a/gamedata/configs/text/eng/st_dialogs.xml b/gamedata/configs/text/eng/st_dialogs.xml new file mode 100644 index 0000000..71dd431 --- /dev/null +++ b/gamedata/configs/text/eng/st_dialogs.xml @@ -0,0 +1,978 @@ + + + + Listen, I have a question for you... + + + Spit it out, then. + + + What do you think about Nimble? + + + Nimble? I think that one of these days we'll jump that slippery jackass in a quiet place! + + + You hear anything about the Oasis? + + + Well, I heard a funny story once. Basically, the boys at Garbage started a rumor about where the Oasis is, and made it real believable, too. Then, they went to that location and waited. Well, what can I say? So many gullible losers showed up to share their stuff that the boys who started the whole thing left the Zone soon afterwards. And why not? Fellas were set for life. Only one of them stayed behind, some guy called Yoga... + + + That, if you go there all your problems will be solved... I reckon that's gotta be handy - no more hangovers or hemorrhoids has gotta be good! Find it, set up a resort and let the cash pile up. + + + Why would I bother listening to that crap? All it is, is cheap talk for losers... Real men don't believe that shit. You know, you're sitting in a bar with a cold one in your hand and the stalkers are buzzing all around, arguing over where the Oasis is. And every one of those suckers swears he knows the location... Though for some reason it differs from sucker to sucker. + + + Ever meet a stalker called Magpie? + + + Sure have... One look at him told me he was a complete sucker and then I heard stalkers saying he's total scum, too. I don't know where he is though... You'll have to find him yourself if you're after him. + + + Nah... First time I've heard that name, buddy. + + + Do you know who could have stolen things from a personal box? + + + A rat. I reckon you'd better ask the bosses over at Yanov, 'cause they're known for hunting a rat down. + + + Who could help me with decrypting something here? + + + Well, I heard Nitro at Yanov is good. Apparently, back when he wasn't working for Duty the boys got him to crack stalker PDAs a couple of times... Ah, the good old days... + + + Don't get all scientific on me, chief. You're gonna need a hacker for that shit. Back when I was doing time I met one in the can but that's the only one I know. When I got out he still had about a fiver left... + + + I have the Duty trader's PDA. You know anyone who would be interested in it? + + + There's a trader at Skadovsk called Owl. He pays pretty good and the boys sell him stalker PDAs now and again. He doesn't ask too many questions either, so it's all good. + + + Just about anyone, buddy. Think about it: his own faction will bury the cocksucker alive, other factions will kick up a fuss, but Owl at Zaton would make that PDA disappear real good. Only thing is, only Owl knows where that PDA will turn up later on... It's up to you. + + + Where can I find tools around here? + + + Well, if you need surgical tools I'd look in hospitals and emergency stations. If you're looking for construction tools, then check by the quarry at Jupiter. If it's small tools you're after, then search old workshops. + + + How the hell should I know? I don't need tools to convince stalkers to cough up, just so you know... Relax, I'm just kidding. + + + Who can unblock a memory module? + + + Good question! I mean that's what I specialize in, right? Hah! Are you dumb, buddy? It's either gonna be technicians or scientists... You don't really think I deal with that kind of shit, do you? + + + I'll be honest with you: the last time I unblocked memory modules was back at school and the memory module was a friggin' floppy disk. Go talk to the experts and bust their balls about it. + + + Who could break into a steel container? + + + Know Cardan from Skadovsk? Well, he got wasted the other day and started chasing this asshole around the place with a jimmy. I reckon Cardan could use that jimmy for more useful purposes and crack stuff if you needed. + + + Well, with the right tools even I could do it, but then who drags equipment into the Zone with them? Visit the technicians, buddy - they're good at that kind of thing. + + + I'm looking for a stalker called Snag. Do you know where I can find him? + + + Who knows? Ask Sultan at Skadovsk. The boss usually knows where all the dupes are at. + + + Yeah, I've heard of that loser. He normally hangs around at Zaton, so you won't find him around here. + + + Do you know anything about the crashed helicopters? + + + Who might be interested in information about Duty's founder? + + + I don't know anyone who wouldn't be interested! That's explosive info, buddy, so your best bet is to go through Owl at Skadovsk - that way you'll get some cash but won't make any enemies. + + + No. Think about it, I've got Duty on the left, Freedom on the right and stalkers up my ass - and you expect me to keep my eyes on the sky? + + + Well, the boys said they spotted one swinging on the cables in Iron Forest, but you're gonna see a lot more than that out there... You're bound to run into an anomaly or get your skull crushed by a poltergeist. + + + Yeah, some fellas saw one crash onto a plateau but the thing is there's no way up there... they said it was flyin' so weird it looked like the pilot had popped a pill or something. + + + I heard a chopper went down, right into swamp water. It ran aground pretty quick and the water there is not exactly good for your health either - poison, chemicals and shit. + + + You seen any military around? + + + Who could be interested in maps of the area between Zaton and Jupiter? + + + Pilot, I reckon - he's the main guide around those parts. It would be good if he had some maps instead of using the stars like he's doing now... + + + The boys said that an army squad went down the southern plateau straight for the mercenary camp. They figured that the shit was about to kick off, so they left in a hurry. + + + I heard this story of how the army cockroaches were trying to get some shit out of their crashed chopper in the swamp. Imagine that, five army boys in uniform jumping around in a swamp trying not to get wet... + + + One fella told me how he was following a stalker to get a piece of his loot when he heard gunshots and shit. Turned out the army were fighting the mercs. He hid and waited the firefight out, but by that time the stalker had run off. Tough luck, huh? + + + Well, a bro told me about witnessing a pretty funny scene. Imagine that barge with a mill on top and Noah yapping away next to it, all fired up and shit, and ten army boys trying to get as far away from Noah's dog as possible. Well, my bro had himself a good laugh and left the circus to its own devices. + + + Nah, this is a pretty dodgy place, full of fellas with powered up shooters and shit... I ain't got the time to check which are military and which are Duty on a mission. + + + Do you know how to get to Pripyat? + + + Who could I hire to protect the scientists? + + + Hah, me and the boys will do the job! We'll give them protection like they ain't never seen! Stalkers and mutants will be shit scared to go anywhere near the friggin' place, trust me! Cough up the dough every week and we're all yours. And don't forget a Christmas bonus! + + + By walking, buddy. Walk on over towards Jupiter and ask your questions there, 'cause there's no direct route from Zaton to Pripyat and that's a scientific fact. + + + Hey buddy, do I look like a guide or what? I mean, is there a tattoo on my forehead that says "Ask stupid questions here" or something? Go ask Pilot, he's paid to answer questions about that shit. + + + No... What would I do there anyways? There ain't no stalkers to rip off there! + + + Can you suggest anyone that's not too tied down who'd be willing to make a move for Pripyat? + + + Pripyat ain't no place for guys like us. Think about it, it's full of mutants and anomalies... like the rest of the Zone... but without stalkers and their loot. When stalkers show up in Pripyat, give us a shout and we'll head on over there to maintain the natural order of things. + + + No idea, buddy. Sorry. + + + I found an unusual shooter. Do you know anyone who might know something about it? + + + Well, I'd ask the technicians. I mean, it's their business to know this shit, right? + + + Beats me, but stalkers from Skadovsk believe that Cardan is a technical genius or something. Talk to him if you want... He's just an old drunk if you ask me... + + + Who could I hire to take measurements for the scientists? + + + That's an easy one - our boys will do it. I mean they didn't go to school or anything but they'll take whoever you want and measure them real good. Once they have the measurements, all they need is a nice grave and that's no problem either! + + + I found a very strange artifact. Can you suggest a buyer? + + + A strange artifact, you say? Let's have a look at it... Hand it over so I can see it better... Hah, relax buddy - I'm just kidding, but if I were you I'd keep that kind of thing out of sight. Others might not have such a good sense of humor. + + + You've got balls to be flashing that artifact around here. Respect. Here's the thing: the man to see for that shit is Beard over at Skadovsk. We don't know how he's getting the artifacts out of the Zone yet, so you should be able to sell yours no problem. + + + I found a whole bloodsucker lair nearby. What are we gonna do? + + + Err, what's there to do? Run the hell away, that's what! + + + OK, forget about it. + + + Listen, I have a question for you... + + + Ask away. + + + What do you think about Nimble? + + + Nimble? Never heard of him. Maybe he's in another squad or something? + + + You hear anything about the Oasis? + + + It's a stalker fairytale. That's what stalkers do: make up shit that ain't true and then all get together and search for it! I'd ignore that stuff if I were you. It's like a gateway myth: believe it and you'll believe that the Wish Granter exists before long. + + + Ah, that place where wounds heal by themselves and your energy is magically replenished? I got news for you, friend: it don't exist. Stalkers invent that crap to make the Zone sound less dangerous than it is, but the harsh reality is that there are no safe places in the Zone. And you gotta keep a firm grasp on that reality out here, buddy - dreamer types don't last long in the Zone. + + + Yeah, and all the artifacts there are worth their weight in gold and are presented to you on a silver platter while you're getting your feet rubbed... I'm joking, of course. I doubt it exists, although it would be nice if it did. We could even set up a hospital there without the need for any medics - folks could just show up there and heal... Damn, what a pipe dream that is. + + + Ever meet a stalker called Magpie? + + + I struggle to remember all the people in Duty and you're asking me about stalkers? They have their base over at Skadovsk - go ask there. + + + No, I haven't. + + + Do you know who could have stolen things from a personal box? + + + Here we go! That would never happen at Duty's base but this place is full of those Freedom punks - that's where I'd look first. + + + Who could help me with decrypting something here? + + + There's a technician called Nitro over at Yanov station. He's pretty good with electronics. I once forgot the password to my PDA and he cracked it in five seconds flat! + + + Yanov is where you need to go - look for Nitro, he's good at this stuff. + + + I have the Duty trader's PDA. You know anyone who would be interested in it? + + + A trader in Duty? That's impossible! Then again, if you have some information then you'd best hand it over to Lieutenant Colonel Shulga and let him deal with it. + + + Where can I find tools around here? + + + There's a whole plant nearby. Of course, it may have already been looted by now, but I'd still check the plant warehouses if I were you. + + + I'd start looking in the old workshops if I were you. You might also find something in stores. + + + There's only mutants and anomalies around here. Hah! I wouldn't look in anomalies, and burers and controllers won't help you with that either. + + + Actually, there's a train under the bridge around here. I've seen them before - they're usually used to transport technical personnel, so you might be able to find some tools in there. + + + Who can unblock a memory module? + + + Nitro - he's the only person at Yanov station who knows anything about that kind of thing. + + + You need to see a technician about that. The only decent technician around is Nitro at Yanov. + + + Who could break into a steel container? + + + They say there's a technician among the stalkers. He's a drunk but he knows what he's doing. Talk to him. + + + Hah, you might as well carry a safe around with you. I'm sure Nitro won't be able to help you with that... if it had an electronic lock, it might be a different story... + + + I'm looking for a stalker called Snag. Do you know where I can find him? + + + You'd better ask the stalkers - they know their own. I've never heard of Snog or whatever his name is. + + + Do you know anything about the crashed helicopters? + + + Who might be interested in information about Duty's founder? + + + Our commander, of course. Report everything you know to Shulga and you'll get Duty's gratitude for sure. + + + Yeah, our scouts saw a military helicopter descend towards the reserve pads by Jupiter. They said they kept signaling them to change course but I guess the pilots had other things to worry about. I wonder if the army boys managed to get out of the mine field OK. + + + Not around here, no. Our presence here is limited... try asking our boys near Yanov. + + + Our patrol reported that a military helicopter attempted a crash landing near the Jupiter plant. Unfortunately, the chopper crashed right into the roof above the workshops. There are probably no survivors - the patrol didn't receive any distress signals after the crash. + + + You seen any military around? + + + Who could be interested in maps of the area between Zaton and Jupiter? + + + Someone who has some use for them. I'm talking about Pilot - he's a guide on the route between Yanov and Skadovsk, so he'd find those maps useful, that's for sure. + + + Military? I've not seen any around here, but we don't spend much time in this area. + + + A soldier's corpse was spotted in the mine field recently. He's probably one of the fellas that flew in in that chopper. The chopper carries up to eight people in addition to the crew, so they must have found a way out, though nobody knows where they went. + + + A military fella was seen at the scientists' bunker and he only got there recently. I don't know the details. + + + Some guy in military uniform was seen entering a building by the Volkhov AA complex the other day. It's quite possible that it was just a zombie mistaken for a soldier though. + + + Stalkers spotted a military unit near Jupiter plant. Judging by the description it was special forces. They were accompanied by an unidentified stalker and headed towards Pripyat. This sounds reliable, but experience shows that information like that usually can't be trusted. + + + Do you know how to get to Pripyat? + + + Who could I hire to protect the scientists? + + + They won't find better protection than Duty will provide. Go see Lieutenant Colonel Shulga at Yanov - I'm sure the two of you will work something out. + + + Nah. While they've got Freedom people working for them, we'll stay well away from that place. Listening to those idiots crack their shitty jokes all day long is a fate worse than death. + + + Duty has no reason to look for a way to Pripyat at the moment, but we're collecting information anyway. There are unconfirmed reports that tunnels under the Jupiter plant lead to Pripyat. Checking this information would require searching everything in the plant area thoroughly. + + + No. If you need that kind of information you'll have to speak to a civilian guide - our scouts have enough on their plates as it is. + + + Our scouts regularly check the area for safe paths to Pripyat, but that hasn't yielded any results as yet. + + + Can you suggest anyone that's not too tied down who'd be willing to make a move for Pripyat? + + + Duty's presence in this area is limited. Speak to our people at Yanov. + + + There's a rumor that the scientists have a military guy in their bunker. He hasn't got much of a way out, though. You see, the scientists are there for twelve to eighteen months and he's not going to get to the edge of the Zone on foot and on his own. Considering that, I bet he'd be interested. + + + I suggest you look among people who're after adventures. For example, there's a stalker called Vano over at Yanov station. He doesn't care what kind of shit he gets himself into and he could be useful - that boy can find a way through an anomaly with his eyes closed. + + + Well, you could start a recruitment campaign in a mental hospital... Then again, I know a good alternative - Monolith fighters. Speaking of which, a squad of them was spotted near AA complex and they probably even know the way to Pripyat, too... Hey man, I hope you're not taking me seriously... + + + Look for volunteers in Duty. Strider, for example. He hasn't got a mission yet, so I figure the Lieutenant Colonel might let him go with you. + + + Everyone knows that Duty's got the best fighters... but we've got other objectives at the moment. + + + I found an unusual shooter. Do you know anyone who might know something about it? + + + Well, I'll be! That's some cannon! Did you make it yourself or did you really find it? I've never seen anything like it... Ask the technicians. + + + Who could I hire to take measurements for the scientists? + + + That's a dumb question - Duty, of course. We've got lots of folks with experience and we've worked with the scientists before. Go see Lieutenant Colonel Shulga - I'm sure he'll find a squad for the job. + + + Who'd want to work there if the bunker is protected by Freedom? Those friggin' pacifists are so stoned most of the time they're just as likely to shoot each other as the enemy. + + + I found a very strange artifact. Can you suggest a buyer? + + + Artifacts are all strange and I wouldn't advise carrying it on you either. Hand it over to the experts and be done with it. + + + You should show that thing to stalkers - they're experts in that kind of shit. Better still, show it to the person they sell their artifacts to. + + + I found a whole bloodsucker lair nearby. What are we gonna do? + + + Duty squads are not currently engaging in purging operations in this area, so the lair will have to wait. + + + OK, forget about it. + + + Listen, I have a question for you... + + + Shoot. + + + What do you think about Nimble? + + + I've not heard much about him... You'd best ask the stalkers, he's one of them, ain't he? + + + You hear anything about the Oasis? + + + Loads... A nice story, I'll give you that. A palace in the sands, an island in the mist, a castle in the sky... Shangri La, Eden... the Oasis. Every free person has a dream and I don't blame 'em for it. + + + Well, I did hear an interesting story from this one stalker. I think he was the first person to mention the Oasis to me. He said that according to legend, all your wounds heal there and you become calm and relaxed, as if you're not in the Zone at all. I haven't seen him since... It was only after he left that I remembered that he used to walk with a limp, but when he left he walked straight and looked like he'd gotten a hell of a lot younger. + + + Yes, free stalkers gave me the coordinates... Ten different sets of coordinates. Putting them together gives us an area from the Scorcher to the CNPP with the Yanov bar somewhere near the center. It's entirely possible that we're in the Oasis right now, so enjoy it! + + + Ever meet a stalker called Magpie? + + + Nah. I don't know many free stalkers around here. + + + Magpie? Nah, but that's a cool name. + + + Do you know who could have stolen things from a personal box? + + + Nah, there's no one like that here. We've got folk who'll snatch a bite of your bread or a sip of your drink when you're not looking, but no outright thieves... + + + Who could help me with decrypting something here? + + + I heard that Nitro at Yanov is a fan of combinations and algorithms. I'm not sure though, I've never really spoken to him - he's working for Duty, so he ain't got much time for us free folk. + + + I'm not much of an expert on local experts... Ask our boys over at Yanov next time you're there - they'll know for sure. + + + I have the Duty trader's PDA. You know anyone who would be interested in it? + + + That sounds interesting! I'd give it to Loki, our leader at Yanov. He'll make sure that free stalkers know what kind of folk Duty recruit into their ranks. + + + Where can I find tools around here? + + + At the plant, dude, where else? It's not exactly lively in there, but the warehouses will cheer you up. It's a bit safer and you're bound to find some decent tools in there. + + + That's a good question, man. Let's think about this one. Where do you find tools outside the Zone? Now, if you got half a brain, you buy them in a store... If you don't, you look for the tools and a brain in a workshop. Right? It's the same thing in the Zone - you have to look in the same places. It's that simple, stalker! + + + Tools? Listen, man, is that code for something? There's no pigs here or anything, you can speak freely... Oh, you're serious? In that case I really don't know. + + + Well, I heard that one of our boys was looking for tools and he got into the train under the bridge. Apparently, there's a Tesla there... Anyway, he said it wasn't fun in there... Why am I telling you this? Well, he said he saw tools lying around, but decided to leave them 'cause it wasn't safe. + + + Who can unblock a memory module? + + + Well, Novikov in the scientists' bunker can do it. He's fast, good and polite. There's also Nitro at Yanov, the Duty hanger-on. He's cheap and shitty, but he'll probably do the job. + + + A skilled technician, I guess. The local one is more about mechanical stuff, so unless you need your memory module's barrel rifled, I suggest you ask at Jupiter. + + + Who could break into a steel container? + + + Well, Cardan at Skadovsk is supposed to be good. People say he knows what he's doing, even though he's drunk most of the time. He might be able to help you crack that container. + + + Anyone who breaks into steel containers for a living? Nitro the local technician won't do, though. I hear he's more into breaking into other people's electronics. + + + I'm looking for a stalker called Snag. Do you know where I can find him? + + + Never heard of him... I'd ask other free stalkers if I were you. + + + Do you know anything about the crashed helicopters? + + + Who might be interested in information about Duty's founder? + + + Loki, no question about it. He's our leader here at Yanov. Even if he doesn't know what to do with the info - the main thing is that Duty doesn't get its hands on it. Can you imagine how much propaganda bullshit that'll generate? I get a friggin' headache just thinking about it. + + + Yeah, you heard that story about the chopper in the mine field? Basically, the jarheads crashed onto the reserve landing pad which their fellow jarheads mined six years back. Now some folks say they did it out of stupidity, but I figure there's more to it than that. Look at it like this: nobody is gonna go there, so once the army boys complete their mission they can return to the chopper, patch it up a bit and off they go. I'd love to know what their mission is... + + + I ain't a local buddy, I don't know shit. Pop in to see us at Yanov - our boys will tell you everything you want to know and everything you don't for good measure. + + + Yeah, some boys spotted a chopper flying real messy like the other day. It didn't land in a good place either - right onto one of the Jupiter roofs. The said it crashed and then went through the roof into the building, dragging all kinds of crap down with it. + + + You seen any military around? + + + Who could be interested in maps of the area between Zaton and Jupiter? + + + Pilot for sure, man. He's the main free stalker guide around here - if you want to talk maps, he's the one you want. + + + Chill, dude. There ain't no cops, no jarheads and no friggin' militia around here - you're as safe as can be in the Zone. + + + No, but some fellas told me they saw an army unit crawling through the mine field by the helipads. Those fellas thought about helping them but decided against it. The jarheads are an unpredictable breed, you never know when they'll snap and shoot you in the back. + + + I ain't seen any myself but rumor has it that there's a jarhead at the scientists' bunker. Ozersky, the biologist, said that he's from that chopper which crashed into the plant... The joke doing the rounds is that the nerds have got themselves a pet soldier. + + + Not personally, but I heard some things from free stalkers. They said that a jarhead was spotted by the Volkhov AA complex. Gotta be a ghost or a zombie that's woken up... what do you reckon? + + + Nah. This one fella was sayin' that he saw seven soldiers following a free stalker past the radio plant towards Pripyat. There ain't been any weed in the Zone for a while, so I figure that's gotta be crazy talk, pure and simple. + + + Do you know how to get to Pripyat? + + + Who could I hire to protect the scientists? + + + Freedom, us in other words. We work with the scientists all the time, so guarding them would be piece of cake for us. Talk to our boss Loki over at Yanov - he'll agree for sure. + + + I ain't sure, friend, 'cause from what I've been hearing the eggheads hired a Duty squad to work for them... We'd love to guard the scientists, but staring at those constipated Duty faces every day just ain't worth it. + + + They say you can get there from Jupiter... I mean the plant, not the planet... Hah! That's a good one, you gotta admit! + + + You know, I ain't got a clue. Just can't find the time to go there... I'd ask Pilot in the camp, yeah? He's a free stalker and knows the area better than anyone. + + + Bro, if I knew I'd have gone there a long time ago. Getting away from Duty, the jarheads and all this fighting would be worth it... + + + Can you suggest anyone that's not too tied down who'd be willing to make a move for Pripyat? + + + Sorry, friend, I don't know anyone at Zaton... Take my advice and ask our boys at Yanov. + + + You know the scientists' bunker? Well, they've got a situation on their hands over there. First Garry, the stalker, decided to make for Pripyat and now the jarhead who's there got the same idea. Garry is a loner and proud of it, but that jarhead is exactly what you're looking for. + + + Vano at Yanov is as good as any. He's a decent fella and he could have joined Freedom any time if he wanted. I gather he ain't keen on our struggle with Duty... or any kind of struggle, for that matter. That's his view of things and we respect it! + + + Sure thing. One of our guys spotted a squad by the dry lake. They're bound to know Pripyat like the back of their hands and they don't seem to be working for anyone. They're sure to be brave, too, 'cause they're Monolith fighters! + + + Yeah. Strider, the leader of our new recruits... it seems he feels uneasy in our ranks. His boys have adapted just fine but he's not all that happy here... Speak to him - I hate to see a good man being where his heart don't lie... + + + Nah, no clue. + + + I found an unusual shooter. Do you know anyone who might know something about it? + + + You didn't find a manual to go along with it, did you? No? No idea then. + + + Who could I hire to take measurements for the scientists? + + + I reckon our boys could do the job. Freedom has its share of smart folks and if we don't know something we'll ask at the bunker. We'd love the opportunity to help science! Speak to Loki at Yanov - I'm sure he'll say the same. + + + Me and the boys would love to do it, but Duty's guarding the bunker these days. Popping in to see the scientists is a problem as it is, but being there every day just wouldn't be healthy, that's for damn sure. + + + I found a very strange artifact. Can you suggest a buyer? + + + You need a collector, buddy. You won't find one at Yanov , seeing as even some stalkers are afraid of coming here. You'd best ask at Zaton, it's a bit quieter in those parts. + + + You know Beard, the barman in the free stalker camp? He buys up artifacts and don't rip you off too much either. A nice fella, whichever way you look at it. It's a pity he don't work for us, really. + + + I found a whole bloodsucker lair nearby. What are we gonna do? + + + Man, you gotta warn the free stalkers - they've got their main camp around here, after all. The Zone's wildlife is valuable, to be sure, but I'm more concerned about the people in this place. + + + OK, forget about it. + + + Listen, I have a question for you... + + + Ask away. + + + What do you think about Nimble? + + + I ain't had the pleasure... You'd best ask some Skadovsk regulars. + + + You hear anything about the Oasis? + + + I've heard everything about the Oasis! It's a legend, a myth... every stalker expects something different from it and every damn one of them claims to know the exact location. It's a pity the only thing those locations have in common is that they're friggin' hard to reach. + + + Well, they say that wounds heal instantly there and your energy is replenished in minutes... They say no disease or sickness can last in the Oasis, not even radiation poisoning! The one thing I know for sure, though, is its whereabouts... Wanna know? It's in the center of the Zone! But you gotta keep this between us, not a word to anyone! + + + I heard that any mutant you meet there will just walk on by without so much as looking at you. They also say that there's an artifact there called the Heart of the Oasis... Nobody knows what it does exactly, but one thing's for sure: you shouldn't touch it. Anyone who takes it won't have no place in the Zone no more... Location? Man, everyone knows it's in Pripyat under the Ferris wheel! I mean, where else would it be? + + + Ever meet a stalker called Magpie? + + + Sure have... No idea where he is now though. + + + Hrm... Never heard of him... + + + Do you know who could have stolen things from a personal box? + + + Err, no? Ask the senior folk at Yanov, they might be able to help you out. + + + Who could help me with decrypting something here? + + + Nitro at Yanov, who else? He loves that complicated technology shit... a lot more than he loves dealing with shooters. + + + Nobody I know. Ask at Yanov - they've got an expert there of some kind. + + + I have the Duty trader's PDA. You know anyone who would be interested in it? + + + You know Owl at Skadovsk? I reckon he'd be glad to get his hands on it. He likes to get involved in sensitive business... + + + There used to be a fella called Owl on Skadovsk over at Zaton. He deals in information... your PDA might be of interest to him. + + + Where can I find tools around here? + + + A stalker told me that his old man was working in the substation workshops before 86. He said they had all kinds of equipment there, so I'm guessing there will be tools, too. It's probably all rusted to shit by now, but it might be worth a look anyway. + + + You know the sawmill in the wood on the hill? There should be some tools there, unless someone got to them first, that is. I doubt that, though: the closer you get to that place the more you feel like shitting your pants and running the hell away. It ain't even the radiation that's scary, I'll leave it at that... + + + Well, the Jupiter plant is right here and there's bound to be some tools in there. Personally, I wouldn't go near the plant itself... that place gives me the creeps. You could have a look in the Jupiter warehouses, the ones on the side of the plant. + + + I heard there's a couple of places in Pripyat where you can find all kinds of technical junk. One of them is supposed to be the old Soviet department store. It was pretty much the only place that had anything useful for sale back in the day. + + + How am I supposed to know? Check in old workshops or stores, there could be something usable there. + + + To be honest, the last place I saw decent tools was in Sidorovich's bunker at the Cordon. Sure, you have to pay for them, but they're new and not all that expensive either. + + + You know, buddy, I didn't come to the Zone to search for tools. Think about it, how much use is a radioactive hammer? + + + I heard a rumor that you can pick up bits and pieces at the old service center... You might be able to find tools there, too. But just as with anything else: the only way to get the good stuff is to get to it first. + + + Good question... I'd check in the old train under the bridge if I were you. Don't ask why... My gut tells me you might find something. + + + Who can unblock a memory module? + + + Let me think... Well, Nitro at Yanov will be able to do it for sure. Other than that, there's also Novikov, the scientists' technician and a real pro. You gotta think about what you want though, 'cause Nitro is a lot cheaper. + + + Well, you'll need a technician, but the only one around here is Cardan. Thing is, after that many years at the bottom of a bottle, he's not exactly safe around complex electronics. I'd ask around at Jupiter if I were you - they've got the right experts there. + + + Who could break into a steel container? + + + Cardan at Skadovsk, I guess. I mean, the way he cuts through padlocks is a joy to watch. + + + A technician of some kind, I suppose. Nitro probably won't do it though - he's not into the rough stuff. + + + Hah, you're asking that in Pripyat?! Take my advice and look for someone a bit further away from the center of the Zone. + + + I'm looking for a stalker called Snag. Do you know where I can find him? + + + Better ask Beard, the barman over at Skadovsk. He usually knows where stalkers are. + + + Snag? How the hell should I know? You'd best ask at Zaton, he hangs around there a lot of the time. + + + Do you know anything about the crashed helicopters? + + + Who's interested in information about Duty's founder? + + + I'd have a chat with Owl, the information trader at Skadovsk. You can bet your ass he'll be interested in credible info on a legend like that. + + + I saw one myself... It didn't look like it crashed but it wasn't flying good either. It was swinging from side to side until it landed on a plateau in the south of Zaton... It'd be interesting to see whether anyone survived... If we only knew a way to get up there. Actually, I heard Noah from the psycho barge might know... + + + I heard about a few military choppers crashing not far from here... People say different things, but there's one I remember clearly. They said it landed on the reserve helipad that jarheads themselves mined back in the day. Can you believe the irony in that shit? My old man used to say: "Don't dig a hole for another, 'cause you'll be the one that falls in it." True, ain't it? + + + A buddy of mine told me this story... He went to the Iron Forest to get some artifacts and as soon as he got there he heard this crash behind him. He turned to see what it was and saw a chopper coming towards him at full speed, taking down pylons and shit on its way. He bolted the hell outta there... I'm surprised he made it out without landing in an anomaly. You won't have much trouble finding the Iron Forest - you can see it from miles off. It's full of friggin' poltergeists, too, so keep your wits about ya. + + + I heard one landed on the southern plateau but getting up there ain't easy. The other thing I heard is that someone spotted Noah on the edge of that plateau, which means that psycho knows a way of getting to it. + + + I've not seen any myself but rumor has it that one crashed right into the plant... Nobody wants to check it out though - the place is just too dangerous. + + + One stalker told me he saw several military helis getting into some trouble... He saw the engine on one light up and then it went straight down into a swamp full of anomalies. You'll be able to get there easy enough, but the swamp itself is a friggin' nightmare... It's no place for humans, believe you me. + + + You seen any military around? + + + Who could be interested in maps of the area between Zaton and Jupiter? + + + Pilot, who the hell else? He's a guide, you know? Constantly making trips between Skadovsk and Yanov, so he'll find a use for your maps sure enough. + + + This ain't Zaton or Jupiter, so these maps are useless here, right? Ask around in those places and you might have more luck! + + + I didn't see any myself but I heard a story about some soldiers getting down from the southern plateau on the sewerage works side. Apparently they tried to get down all proper at first, using cables and shit. But then gave up and slid down on their asses, hah! Zone bobsled - gotta love it! + + + I heard a conversation at Skadovsk about five or so jarheads who were spotted coming out of a drainage tunnel by the swamp. They said the soldiers were dirty as hell, and one of them you couldn't even tell from a swamp bloodsucker, covered in slime from head to toe. + + + Not personally, but a friend of mine saw a military unit engage a group of mercs by the processing station. But by the time he found a nice spot to enjoy the show it was over 'cause the jarheads fell back. No casualties on either side either... typical, ain't it? + + + Apparently ten or so jarheads were spotted hanging around Noah's barge. Now, given that the psycho was alive at this point, he probably came to some sort of agreement with them... which is just like him. Obviously nobody wanted to ask Noah about what happened - you never know what to expect from that crazy son of a bitch. + + + I heard something explode at night and then someone at Yanov told me that they saw a dead jarhead in the old mine field and an abandoned army chopper behind him. Seems they couldn't tell where they landed in the dark and went straight across the mines. Nobody knows how many of them made it out of there, but I doubt he flew that chopper in on his own. + + + I've not really seen any military... but I've heard rumors that a jarhead is hanging around with the scientists. The story goes that Garry, a stalker, found him when he went into the missile complex to look for his buddies. Now, the complex is crawling with zombies who aren't exactly friendly to stray humans, so Garry basically saved him from certain death. + + + No, but I heard that a jarhead was spotted by the Volkhov AA complex. I don't really believe it though... They could be lying or maybe they just can't tell a zombie from a soldier. + + + Military? Well, I heard people saying that "a whole military unit lead by a stalker" was making its way past the Jupiter plant, but I didn't pay much attention to that gossip. + + + Do you know how to get to Pripyat? + + + Who could I hire to protect the scientists? + + + You know Spartacus and his squad? You know, the stalkers at Zaton? They're good people and decent fighters - they've been there, done that and got the T-shirt. I have a feeling they'd like the idea of guarding the scientists. + + + Did you run into Hatchet's squad by the substation workshops at Zaton? They've got their problems, like all mercs, but at least they ask questions first and shoot later. I'm guessing if you manage to sign them up for this job, the scientists will be pleased and stalkers can relax a little, too. Everyone's happy, right? + + + Erm... Nothing comes to mind... No, sorry. + + + What I know for sure is that there's no way of getting there from Zaton. Everyone who was bursting to get to Pripyat headed towards Jupiter, so you should ask around in those parts. + + + Well, rumor has it that there are secret tunnels to Pripyat underneath the Jupiter plant... The thing is, these rumors usually get told after the second round, and then Jupiter is such a friggin' nightmare that nobody dares goes near it. + + + How should I know, dude? You got any easier questions for me? All I can say is that you should find Pilot and talk to him - if anyone can help you, it's him. + + + Hah, if I knew the way to Pripyat I wouldn't be here. Why do you think I went towards the center of the Zone? Pripyat is full of artifacts, man! Whoever gets there first is gonna be living the high life! + + + Can you suggest anyone that's not too tied down who'd be willing to make a move for Pripyat? + + + I don't think there's anyone like that around here. Everyone who wanted to be closer to the center of the Zone left for Jupiter. That's where I'd ask if I were you. + + + You heard about the jarhead who's with the scientists at the moment? I reckon he ain't got much to lose by going with you. The scientists are not leaving any time soon, he can't reach the Cordon on his own, so he just might be dumb enough to go to Pripyat with you! + + + You know Vano over at Yanov station? He's an honest fella, a good stalker and gullible as hell. Now there's a cat who's better off around anomalies than people - so long as he's here there will always be someone to take advantage of him. + + + Listen man, I heard that a squad was spotted by the dry lake south of the AA complex... Apparently they're not the usual stalkers or Freedom or Duty - they're Monolith men! So if you need someone to go to Pripyat with, they're just the ticket. Haha, you do realize I'm kidding, right? + + + You know Strider, the leader of the new Freedom squad? If you saw his miserable kisser, you'd know for yourself that Yanov ain't the place for him. You should try speaking to him. He might actually go for it. + + + You know Strider, the leader of the new Duty squad? If you saw his miserable kisser, you'd know for yourself that Yanov ain't the place for him. You should try speaking to him. He might actually go for it. + + + Hrm... Nobody comes to mind. + + + I found an unusual shooter. Do you know anyone who might know something about it? + + + Who knows? I'd ask the experts... you know, technicians and stuff... + + + I reckon asking Cardan at Skadovsk won't hurt, buddy. He deals with weapons and he's good... He might even have a brain cell or two left despite his boozing... + + + Who could I hire to take measurements for the scientists? + + + You know Gonta the hunter? I'm thinking he and his boys wouldn't object to working for the scientists. I mean, if mutants become a nuisance, those boys are exactly what you need to deal with them. + + + You heard of Grizzly, Torba and Mitay, the stalkers at Yanov? They work as a trio and they're shit hot! I think they're right for that kind of work... as long as Mitay has managed to stay out of trouble for once. + + + No clue, fella. We got enough of our own shit to worry about here. + + + I found a very strange artifact. Can you suggest a buyer? + + + Don't think so. People around here go for the familiar. Ask around Zaton, it's closer to the edge of the Zone and all that. + + + I'd show it to Beard, the barman at Skadovsk. They say he works with collectors from the outside world and those cats always go nuts for strange stuff. + + + I found a whole bloodsucker lair nearby. What are we gonna do? + + + Wow, you gotta tell Beard at Skadovsk about that... 'cause either we deal with them or they'll tear us a new one. + + + OK, forget about it. + + + Where's the nearest stalker camp around here? + + + What are you, stupid?... I don't know about stalker camps, but the nearest camp around here is Skadovsk. I'll give you the coordinates and I'll even do it for free. Nice, ain't I? + + + Where's the nearest stalker camp around here? + + + I'll upload the coordinates to your PDA... Skadovsk is the only major camp around here. + + + See you next time. + + + I heard about a few crashing... I dont know the details - gossip aint my thing. Sorry if that doesnt help you much. + + + Man, Ive got other shit to worry about without your choppers... I mean, I bet crashing a heli hurts like hell, but other than that I dont know what to say. + + + What are you talking about, punk? You have to smoke some real hardcore shit to see a chopper around here, cause real ones dont got nothin to do in this place. + + + Huh? Nah, man, I dont concern myself with shit like that. It dont help with my mission of disseminating knowledge one bit, you know what I mean? + + + Our patrol watched the helicopters descending, but the details of this were reported to the Lieutenant Colonel personally. Its on a need-to-know basis, and I really dont need to know this stuff. + + + Where can I find a suit with a closed-cycle respiratory module? + + + Not sure about find, but the right amount of coin will work wonders - if you know where to invest it. Have a chat with Nimble... If you agree on the details, he'll get your rags somehow. I hope you do... we'd enjoy a few days without him here on Skadovsk... + + + Hell should I know? I ain't been here long myself... You'd best ask at Zaton, our brothas there do their own networking. + + + Not a clue. Why, you planning on sticking your nose into an anomaly? Look, if you come into any artifacts, give us a holler. We'll be right there in a jiffy... To congratulate you on a job well done! + + + Where can I find a suit with a closed-cycle respiratory module? + + + How am I supposed to know? Wait... there's this one dude here on Skadovsk, they say he can get you whatever you need. Sits on the upper deck, name's Nimble. + + + Nah, no one's coming all the way out here with an extra suit like that... You'd better ask at Zaton - a step closer to civilization. + + + I have no idea where you'd look for one... Suits like that are rare even among Duty members. They issue 'em only for special distinction in battle or running operations in highly anomalous areas. + + + Where can I find a suit with a closed-cycle respiratory module? + + + I heard some stalkers talk about this man with connections, Nimble or something. He can get you almost anything. You know: gear, shooters, shit like that... not dope. Hangs out at Skadovsk, if you need him. + + + A good question, man... We don't ever wear those here in Freedom... I'd ask stalkers at Zaton if I were you. There might be someone there who runs that sort of business. + + + Heh, whatcha need that crap for? It ain't no good in action. Then again... I guess it can be of some use. Makes breathing easier, and the sun doesn't get in your eyes as much... I might go for one of those myself. Hey, do you know where I could get one?... + + + Where can I find a suit with a closed-cycle respiratory module? + + + Well, my bet would be Nimble. Third deck at Skadovsk. That dude can get you snow in a friggin' desert... His services aren't easy on the pocket though. + + + Let me think... There used to be a man like that over at Zaton, went by Nimble. Try and see if he's still there. I heard he specializes in up-scale items. + + + Dude, you talk about it like it's office supplies or something... No one knows for sure. Pieces like that are few and far between... Consider yourself lucky if you snatch one. + + + Bye. + + + See ya. + + + Laters. + + diff --git a/gamedata/configs/text/eng/st_dialogs_jupiter.xml b/gamedata/configs/text/eng/st_dialogs_jupiter.xml new file mode 100644 index 0000000..ecb3139 --- /dev/null +++ b/gamedata/configs/text/eng/st_dialogs_jupiter.xml @@ -0,0 +1,3885 @@ + + + + What do you want? + + + I have to speak to Jack. It's about Vano's debt. + + + Go on, then. + + + OK. + + + I'm just taking a walk. + + + This ain't a public park, buddy. Take a hike. + + + Do you know who could have stolen things from a personal box? + + + No, but I have my own shit to worry about... You lost some material things but I could lose my life... + + + Theft, deception... Man, what is the world coming to? I didn't see anyone, but whoever did it is long gone, I'm sure of it. + + + Let's go see Zulu. + + + Of course. We should pay a visit to Hawaiian on the way to buy my suit back. + + + Let's go. + + + I'd be happy to, but I don't feel like being caught by an emission with my pants down. Let's wait a bit. + + + We'll need a suit with a closed-cycle respiratory module to get to Pripyat. + + + Man, that sucks! My suit has one - you can stick your head into an oven and breathe just fine, but I pawned it at Hawaiian's. If only we could get it back - I'm broke and we'll need 5 grand... + + + I could give you money for the suit. + + + Just like that? Are you serious? + + + Here, take your 5 grand. + + + You're really saving my ass here, friend. I'll follow you wherever now! + + + I'd give you the money but I don't have 5 grand. + + + It happens to the best of us, friend... Believe me, I know. + + + I'll think about it. + + + Of course... It's your money, after all. + + + So, will you give it to me or what? + + + I'm putting a team together to go to Pripyat. Wanna join me? + + + You helped me, friend, so I'll help you. + + + I'd love to, man, but I can't leave here while I've got this debt hanging over me. That wouldn't be right, and besides if we ran into them on the way they'd shoot me down like a dog. Those bastards don't care who they kill... + + + So, are you ready to head to Pripyat? + + + I'm like more than ready and stuff! + + + Well, come in. What do you want? + + + You've paid the debt, now get outta here. + + + They were arrogant bastards - I had to take them out. + + + I paid the money, so you're not in debt anymore. + + + Wow, thanks man! I won't forget this. + + + Not great, they made me pay interest, too. + + + That's not good... But they'd charge me even more, believe me. Thanks for your help! I won't forget this. + + + I haven't been to see them yet. + + + Hurry up before they make you pay more. + + + I went to see them but they're demanding interest on the debt. + + + What are they, crazy? I barely put that much together... Do you think you can convince them to forget the interest? You'll need a good weapon - force is the only thing they respect. + + + What did you say about your debt? + + + Well... I had an old suit that was starting to wear out, so I figured I need a new one. Soon as I thought that, I saw a brand spanking new suit for sale... It had a closed-cycle respiratory module and everything... I counted my money this way and that but came up short every time... Then Jack, the seller, said to me, "Don't worry Vano, you can pay me the rest later." I was like, "What a nice guy!" and all that... + + + OK, and? + + + I sold my old suit, got all my cash and brought it to him. Jack was like, "Well done, Vano, but what about the interest?" I thought, "Yeah, he's right... I need to get the interest to him..." I put together some more cash and took it to him. When I got there he said, "While you were out, more interest built up, Vano." Seems the interest grows so fast I can't catch up... I had to pawn the new suit and my weapons, too... + + + So, what now? + + + I want to pay him the money I've earned. There's nothing more important than Vano's reputation... But I'm scared. Could you go see Jack instead of me to pay my debt? + + + OK, I will. + + + The only thing is, when you go see him make sure to whip out a powerful gun or something. Show them you're not one to mess with and they'll give you some respect... + + + I'll work it out. + + + I'm too busy right now. + + + I've had enough. + + + So, can you go see Jack instead of me to pay my debt? + + + OK, OK, don't shoot, I'll pay the debt... Err, sorry, I thought you were someone else... + + + How did it go with the bandits? + + + Hey man, it's good that you came! + + + Hey. + + + We have visitors... A stalker to see Shishak for a word... You come carrying gifts or you got business to discuss? Either way, spit it out, buddy. + + + I didn't think you'd be back... So, what do you have for me? + + + What else is there to discuss, stalker? + + + What do you want? You tired of dragging your loot around or something? We can help you with that. + + + I need to talk to your boss. + + + Hey buddy, I ain't got time for this shit. Get outta my face, pronto! Do it now or I'll help you on your way with this here shotgun. + + + OK, OK - I'm leaving. + + + I'm here about the captive stalker - I want to see your chief. + + + Hrm... Go on then, but you keep it clean and tidy or we'll put you in the ground in no time... Keep going straight and then through the passage in between the containers. Got it? + + + Yep. + + + I was just passing by, I'll disappear now. + + + I'm here about the captive stalker - I want to see your chief. + + + What else do you want? Screw off! + + + OK... + + + Lookit, sucker, you tryin' to insult me or somethin'? You brought enough dough for your punk ass friend, but you ain't paid us for safe passage! That's poor thinking on your part, ya feel me? + + + How much are we talking about? I've gotta get to the base though, so keep that in mind. + + + Oh, you really are a funny guy! This ain't no whorehouse, buddy, we ain't got no friggin' price list... Empty your pockets, bitch! + + + OK, here it is. + + + OK, I'm going. + + + What?! You want to take all my loot? No way! + + + I paid the ransom. There's nothing else to discuss. + + + OK, stalker, we've earned our fee now. Time to go. + + + Thanks, guys. See you next time. + + + Wait. There could be more bandits hiding in cover. + + + OK, time to go. The kid didn't make it, but we've done the best we could... + + + Wait, we ain't done yet! + + + Got ya! + + + Come to Pripyat with me. + + + I'd best stay here for now and make sure that Mitay stays out of trouble. + + + Hey, stalker! Thanks a bunch for getting Mitay out! We were already starting to put a squad together... Here, take this as a token of our gratitude. + + + Hey, stalker! Thanks a bunch for getting Mitay out! You're a beast, taking all those bandits on by yourself... Here, take this as a token of our gratitude. + + + Hey, stalker! Thanks for helping get Mitay out! Personally, I didn't think that paying the ransom would work out too good... I'm sure you could use a little cash, so take this. You have our gratitude. + + + Hey, stalker! Thanks for helping get Mitay out! I was right about the whole thing. You can never give in to bandits! You gotta put some heat on them... And you got the balls for it too. Here, take this - everyone got a piece so it ain't much, but we are truly grateful. + + + So, how did it go with the ransom? + + + Still working on it. + + + So, what's up? When are you gonna put some heat on the bandits? + + + Soon. + + + Did you change your mind or are you having trouble with the bandits?... Oh well, do what you need to do but do it fast - we don't want them losing patience and wasting Mitay. + + + I'll work it out. It'll be all right. + + + I'm glad to see a pro like you, stalker! + + + Man, that was a good guy we lost there... Poor Mitay... We couldn't save him - good friends we are! + + + What can you do? + + + Come to Pripyat with me. + + + I only came to this place to keep my friends company, so I'll stay here with them. + + + Hey, thanks for Mitay... We were just about to head over there with the ransom money. Things worked out real good, that's for sure... + + + Hey, thanks for Mitay... How did you manage to convince them? Man, I've got a lot to learn from you... + + + Hey, thanks for Mitay... I was right, wasn't I? Negotiation is the key to success! + + + Hey, thanks for Mitay... I still think it's better to negotiate, but things worked out all right in the end, so it's all good. + + + Back off - I don't feel like talking to you right now. + + + OK, take it easy. + + + Hello, Mr. Pro! + + + Poor Mitay... He was just a kid... He had his whole life in front of him... + + + What can you do? + + + Great, we're all here. Grizzly told me about you... The plan is simple: the boys get in position to attack around the perimeter and I pick off the sentry from my position - that's the signal to begin the assault... Take note of our positions and do whatever you feel is best. I'm sure you've got your own idea of what to do... Ready? + + + I'll keep that in mind. Let's go. + + + Wait, let me think about it. + + + You feel like taking a trip to Pripyat with me, Mitay? + + + The scientists are looking to hire some people, how do you feel about working for them? + + + What's the job? + + + Guarding their bunker. + + + Nah man, my bandit adventure was enough. I'll just sit tight right here and take it easy. + + + Taking measurements in anomalies. + + + Hrm... That's interesting. I've worked for the scientists before and since it's you asking - sure, I'll do it. Me, Grizzly and Torba will head for the bunker. + + + Tell me how you got captured. + + + Man, don't ask! It was my own fault. The bandits warned me about it but you know... They started demanding a share of my loot, but the Zone don't belong to nobody, so why should I pay them? + + + Me and the boys told them where to shove it and it seemed like we got away with it. But the bandits turned out to be pretty crafty - they set up an ambush. So, when I was stupid enough to go looking for artifacts on my own they jumped out behind me and tied my hands together before I could even get my shooter out... So that's how it was. + + + Thanks for paying the ransom for me! I won't forget it. + + + Thanks for freeing me, stalker! I won't forget it. + + + Thanks for helping to pay the ransom for me! + + + Thanks for helping to free me, stalker! + + + Thanks for helping, stalker... My friends will definitely reward you when we get back... Let's go to the base together, it'll be quicker that way. + + + Let's go. + + + You go, I'll drop by later. I've got some business to finish up here. + + + Man, I thought I was gonna die here... Wow, did Grizzly and Torba hire all these people?! Holy cow! I ain't seen a shootout like that in my life! Can we get out of here now? + + + Wait a minute, there could be more bandits around here. + + + Yes. Let's go. + + + Man, I thought this was gonna be the end of me... Wow, you took on all these bandits on your own! You da man! They won't believe me when I tell this story... Can we get out of here now? + + + Wait a minute, there could be someone left around here. + + + Yes. Let's get out of here right now. + + + Thank you, stalker! Let's move before the bandits change their mind. + + + Let's move. + + + We gotta get out here, fast! + + + We can't give in to the bandits' demands. This problem calls for a forceful solution. + + + Exactly! I know a few fellas who'd be happy to help out... We'll pay you too if you don't mind going in as a team. + + + I'm ready to go. + + + Great! I know a group of stalkers who used to serve in a special police unit. You'll have to meet them at an agreed location after 1AM - they'll be waiting for you. + + + OK. + + + Torba's right. There's no point starting a bloodbath while they've got a hostage. We must negotiate. + + + Hrm, you two might be right... Only thing is, if me and Torba go, the bandits won't want to let us out, seeing as we refused to follow their rules. They said they'd bury us alive next time they see us. Now, if you could act as a negotiator... + + + Sure, I'll do it. Give me the artifact. + + + Be careful. + + + It's gonna be fine. + + + We can argue till the cows come home... Our success depends on whoever drives this thing. I'll deal with the bastards myself. + + + Man, I didn't expect that... Good luck to you. + + + I'll be back soon. + + + I agree, but I need some time to prepare. + + + Stalker, help get our buddy Mitay out of trouble, would you? + + + What happened? + + + Mitay is in real trouble... The bandits have started putting their foot down and demanding a cut of the artifacts stalkers find. We told them to take a hike, 'cause we figured stalkers don't owe nobody shit, and that seemed to be the end of it... But they ambushed the poor bastard when he went hunting for loot on his own and now they're demanding a ransom. + + + What are you going to do? + + + Torba is suggesting giving them an artifact as ransom... I reckon we shouldn't give them shit. If we do, that means stalkers are working for the bandits... We should sell the artifact, hire us a solid crew and attack the bandit base. + + + Let's deal with this a bit later. + + + So, will you help us save Mitay? Torba still reckons we should give them an artifact as ransom. And I'm still insisting that we gotta attack the bandit base. We'd have to sell the artifact and hire some fighters to do that... We still haven't decided what to do. + + + You ready? We'll give you the artifact to buy Mitay out with and we'll wait for you at the bar. + + + You paid the bandits a visit yet? + + + Not yet, I'm still getting ready. + + + Yeah, but it hasn't come to much yet. I'll let you know when things become clearer. + + + I was at the Oasis recently and I found an artifact there. You interested? + + + Hah, you don't expect me to believe that, do you? I've heard a lot about the Oasis but I've NEVER heard of anyone who has actually been there. No offense, but I won't be taking your word for it. + + + I have documents from the Jupiter plant. + + + Yeah, take them all. + + + Yeah, take the evacuation order. + + + Yeah, take the meeting minutes. + + + Yeah, take the delivery schedule. + + + Yeah, take the note from the repair workshop. + + + Maybe next time. + + + Who could have stolen things from a personal box? + + + Not my men, that's for sure. Could be someone from Freedom. If we had full control of Yanov things like that would never happen. + + + Tell me about Duty. + + + What exactly do you wanna know? + + + What is it that you do here? + + + Same thing we always do. Protecting stalkers from all kinds of vermin. You've seen how many mutants there are around here and these ain't the cute little puppies you get at the Cordon. For instance, I saw a chimera with my own eyes last night. It was getting dark, so we didn't chase it... Mutants ain't the only problem around here, either. We've also got to investigate and collect evidence from the abandoned laboratories before those Freedom morons get to them. + + + What brought you to the center of the Zone? + + + Are you kidding me? And what brought you here? I'm gonna venture a wild guess and say we're here for the same reason. The center of the Zone has always been an unreachable objective, a place where we were hoping to get answers to all our questions. We wanted to find out how the Zone was created and how it can be destroyed. That's why as soon as we heard the rumor that the Brain Scorcher had been disabled, we made a move for the center. + + + And what did you find out? + + + Plenty, but that's confidential. All I can say is that there is more to the Zone that meets the eye. Some of our people believe that the Zone is a tumor that must be removed at any cost. Given what I've seen, I'm more inclined to believe that the Zone is a living organism and we are nothing more than bacteria that live inside. Even if we combined the military might of every country on the planet, we still couldn't destroy the Zone. That's why we have to be smarter than that: we have to find the reason for the Zone's existence and eliminate it. + + + What if you can't eliminate that reason? + + + Well, if we can't then we'll have to think of something else, but there's still hope. We must do our duty and stay positive. + + + How did you end up in Duty? + + + That's a boring story and there's no heroism involved. As soon as the Zone appeared, Lenya, a friend of mine, decided to come here and check it out. I was a field officer at the time and Lenya was in the intelligence service. Now, we weren't suckers or anything, but we ended up in a real mess. We crawled for hours, wounded and bleeding, until finally Duty picked us up. I made it, Lenya didn't. I had no friends in the Zone, so I decided to stick around here, with Duty. Plus, I've had a thing against the Zone ever since. + + + What's your relationship with Freedom like? + + + Officially we're at war, but life in the center of the Zone has its own set of rules. There are few safe places here and neither Freedom nor Duty boast a lot of manpower. So what's the point of killing each other? That's why the unspoken rule is that we stay out of each other's way. This rule doesn't apply outside Yanov though: out there we're still at war and it's for real, too. + + + OK, forget about it. + + + Oh... OK. + + + I wanted to talk about a member of Freedom called Flint. + + + I don't care about Freedom people as long as they stay away from us. + + + Flint, also known as Magpie, set up stalker hunters at Zaton, took all their loot and made off with it. + + + So? That doesn't surprise me, 'cause Freedom is full of scum like that. + + + There's something else: I met a stalker at the quarry. Before he died, he told me that Flint left him in an anomaly, took the loot and left. + + + Ah, see, that kind of shit stalkers don't forget... even in Freedom. Thanks for that information - we'll make sure it's put to good use. + + + I've got enough dirt on him. I mean, the jackass actually has the nerve to openly boast about doing things that I did. + + + That'll deal a heavy blow to Freedom's reputation. Thanks for the information. We'll make sure it's put to good use. + + + Never mind. + + + OK, it's your choice. + + + I have the PDA of your supply officer, Morgan. + + + I agree. + + + I'll think about it. + + + I agree. + + + OK. + + + Let's have a look... So that bastard was doing business on the side and using our name as cover... If this comes out, our reputation will go straight down the toilet. How about I buy this PDA from you? I'll give you a good price. Will 4,000 do? + + + That's a serious allegation. Show me the PDA. + + + Here it is. + + + It's fair to say I had my own suspicions about him... Now we'll address them fully. Thank you, stalker! I hope nobody ever finds out about this conversation. I have a modest reward for you - you saved Duty's reputation, after all... + + + I'll hold on to it for now. + + + Another one... Very interesting... I'll add it to the case file. + + + Here it is. + + + Thanks! Here's modest compensation for your efforts... + + + Let me hold on to it as a keepsake. + + + I met a group of fighters that want to join Duty. + + + We're always looking for good men. They should pay me a visit and we'll talk. + + + There's one thing though... They're former Monolith fighters. + + + What do you mean "former" Monolith fighters? In my experience Monolith fighters fit into two categories: current and dead. I've never met any "former" ones. + + + It looks like they were under someones control - because they dont remember what happened to them after they left for the CNPP. Now theyre not aggressive at all and they simply don't know what to do. + + + Well, if theyre not aggressive that's a good thing... I mean, Id find them something that's easy as pie to do and Id make sure theyve got their heads straight, too. Im just not 100% sure about them at the moment... Can you vouch for them? + + + Yes. I trust them. + + + Hrm... Trouble is, I cant trust you either... yet. Sorry. + + + OK, but remember that if they screw up, you'll answer for it. The fact is they won't make it to Yanov on their own. What you're gonna do is take my boys and lead them to the Monolith squad. They'll talk to them and if everything is cool, they'll be accepted into Duty. Tell me when you're ready to head out. + + + No. I dont trust them much. + + + We don't accept just anybody into our faction. + + + I'm ready to lead your people to the Monolith squad. + + + Good. I'll send two people with you. + + + Good. + + + Let's do it later, something's come up. + + + Hold it! You do what you want, but I won't let my boys out to get hit by an emission. + + + I found the Duty founder's PDA. You interested? + + + Let's have a look... So that's how it went down... I don't think the others need to know this. It would be better if nobody ever sees this PDA again. Let the legend of Duty's creation stay as it is. Will you sell me this PDA? + + + Take it. + + + Thanks. Here's your reward. + + + I'll consider your offer. + + + Take the Duty founder's PDA. + + + Thank you! You have done me a big favor. Here's your reward. + + + I need fighters to work for the scientists. Can you help? + + + We're always happy to help the scientists. What needs doing? + + + They're looking for people to protect their bunker. + + + Of course, I'll send some of my boys. + + + Of course, I'll send some of my boys. + + + I'd be happy to, but they're already employing Freedom. Sending our squad there would only intensify what is a pretty heated situation already. + + + I'm planning to make for Pripyat. Will you give me a few fighters for this mission? + + + We're short on manpower as it is! Talk to Strider - he doesn't feel at home in Duty by the looks of things, so maybe he'll find what he's looking for with you. + + + We're short on manpower as it is! I'm not sending anyone on a hopeless mission. + + + Talk quickly, leave even quicker. What do you want? + + + I'm listening. + + + Glad to see you alive. + + + I have documents from the Jupiter plant. + + + I doubt there's anything interesting there. The plant was looted even before the stalkers got there. Although... hrm, there's some decent info here. I'd like to show these to someone. Sell them to me, would you? + + + Yeah, take them all. + + + Yeah, take the evacuation order. + + + Yeah, take the meeting minutes. + + + Yeah, take the delivery schedule. + + + Yeah, take the note from the repair workshop. + + + Maybe next time. + + + Who could have stolen things from a personal box? + + + I ain't a guard and it ain't my job to watch your box! My boys didn't take it for sure - they know better than that. + + + Tell me about Freedom. + + + It's a long story. What do you want to know? + + + What is it that you do here? + + + We're making sure that various officials don't conceal anything from the common folk. You know how it is: as soon as they find a new lab or some documents that shed light on the secrets of the Zone, they immediately organize a military operation and clean everything up better than a friggin' hoover. The only way of finding shit out is by getting there first. + + + What brought you to the center of the Zone? + + + Well, the boys felt like taking a stroll in a new place. Just kidding. It's an opportunity to find stuff that the world ain't seen before. Neither the army nor stalkers have been here before, so there's something new everywhere you look. + + + Did you find anything? + + + A couple of locked doors and some weird new artifacts. + + + How did you end up in Freedom? + + + Well, I was friends with Freedom leaders back when there was no Zone. Mind you, in those days they weren't leaders, they were regular hippies. So when I made a move into the Zone in search of artifacts and ran into familiar faces, I figured I might as well go with what I know. + + + What do you think about Duty? + + + They're idiots, that's what I think. I mean, why the hell would they want to destroy the Zone? It's not consuming precious resources or getting bigger... or anything. They could just sit there and study it to their heart's content - just think of how many scientific discoveries could be made... I mean, in the history of man-kind, no one has never been able to understand antigravitation, right? And in the Zone you've got ready-made antigravitation devices lying all over the place. It wouldn't hurt to kick their asses out of here, but it's too much hassle. By the way, don't be confused by our relations here at Yanov. We are at war... it's just that Yanov has been made neutral territory, if you know what I mean. + + + OK, forget about it. + + + No problem. + + + I wanted to talk to you about one of your stalkers. + + + Really? Go ahead. I hope you're not here to snitch on someone? + + + Your stalker Flint is known at Zaton by the name of Magpie. Local stalker hunters are looking for him because he set them up and ran off with their loot. + + + And you expect me to believe you? + + + Just listen to the stories he tells at the bar. First he swindled those stalkers and now he's lying to you lot. + + + OK, chill. I'll contact Beard and see what's what. If what you say checks out, we'll deal with Flint Freedom-style. + + + Hrm... I was wondering how he managed to get that artifact so quickly. I guess half of his story was complete bullshit. I'll speak to my boys. If what you said checks out, we'll deal with him Freedom-style. + + + Never mind. + + + OK. + + + I agree. + + + I'll think about it. + + + Take it. + + + OK. + + + I met a group of fighters that want to join Freedom. + + + Well, were always open to good people. Theyre welcome to join if theyre up for it. + + + Theres a small problem - theyre former Monolith fighters. + + + A "small" problem? I prefer to see Monolith fighters through my scope. Anything else is out of the question. + + + These ones are peaceful. It looks like they were under someones control - because they dont remember what happened to them after they left for the CNPP. They simply don't know what to do now. + + + Sorry, but I'm still skeptical. What if you're lying to me on purpose? + + + Well, maybe it wouldn't hurt to talk to them and find out what's what. Ill send a couple of my boys with you. Theyll have a chat and well accept your Monolith fighters into Freedom if it works out. + + + How about you piss off? I can't believe you're suggesting that we accept all kinds of scum into Freedom. + + + I'm here about accepting that Monolith squad into Freedom. + + + My men are ready to go. + + + OK, have them follow me. + + + A bit later. + + + Let's wait a bit. Emissions ain't healthy. + + + I found the Duty founder's PDA. You interested? + + + Well, as long as it's got something useful on it... Wow, that's real interesting. They keep spreading their bullshit propaganda throughout the Zone, but as it turns out their own history is full of crap. I'd love to give this a thorough read. Listen, I'll pay you well for this PDA. + + + Take it. + + + Thanks. Here's your cash. + + + I'll think about it. + + + Take the Duty founder's PDA. + + + Thanks. Here's your cash. + + + The scientists are looking to recruit some people. Can you send anyone? + + + Well, it depends on the job. + + + The scientists need their bunker protected. + + + Of course, I'll send some of my boys. + + + Of course, I'll send some of my boys. + + + I'd be happy to help, but Duty is already there. We spend enough time together with those bastards at Yanov, so we'll pass, thanks. + + + Will you give me a squad to go to Pripyat with? + + + Talk to our new recruit, Strider. He ain't happy here, so maybe you can give him what he wants. + + + If I had anyone to spare I probably would, but I don't - sorry. We've got enough on our plate here. + + + So, what have you got to say? + + + What's your business here? + + + Good to see you, man! I've heard some good things about you in Freedom. What can I do for you? + + + I found a strange item in the railroad tunnel. You interested? + + + Hrm, nah. It's junk. It looks like an artifact but it ain't got any effects. We normally give that kind of crap to the scientists. + + + I found a strange item at Zaton, you interested? + + + What am I supposed to do with it? I'm not even that interested in normal artifacts, so you know... Show it to the scientists - they pay well for all kinds of junk. + + + I'm looking for people to guard the scientists' bunker. You know anyone? + + + You won't find anyone better than Freedom. You could also try to work something out with stalkers, but they're not exactly trustworthy. If they let you down, how are you gonna be able to find them later? I definitely wouldn't suggest you speak to Duty about it. Those fanatics are only good for purging mutants and that's it. + + + I'm looking for people to collect samples for the scientists. You know anyone? + + + Of course. Go see Loki - he'll be glad to help you with that. You could also try to work something out with stalkers, but some of them ain't too trustworthy. + + + Someone stole things from my box. Do you know who it might have been? + + + What is this place coming to, man? I doubt it was anyone from Duty 'cause they've got strict discipline in their faction, too strict for my liking. Nobody in Freedom needs your junk, so it's gotta be one of the stalkers. + + + I met a Monolith squad recently. + + + Wow, I've never seen any! Though I did hear some real bone-chilling stories from the boys. Something about the Monolith people being complete lunatics. Must have been a hard fight, eh? + + + There was no fight. They're peaceful fellas. They told me it was like a veil lifted from their eyes and they regained control of themselves. They simply don't know what to do now, so I'm looking to get them into a faction or something. + + + Wow, that's an interesting one. Well, stalkers aren't an option 'cause they'd probably shoot them down in view of their past encounters and all that... Try talking to Loki. Nobody will touch them if they put on Freedom uniforms. + + + Who could be interested in the truth about the founder of Duty? + + + I really don't know. It seriously depends on how different this truth is from the official Duty line. Show it to Loki, he'll tell you straight. + + + I have the PDA of Duty's supply officer. You interested? + + + Not in a million years. I know where to buy everything he sells a lot cheaper. There's nothing else there that could interest me either. + + + Who could go to Pripyat with me? + + + Pripyat? Wow! Well, I'd love to just drop everything and take off, but I'm real busy right now... + + + Pripyat? Wow! You should ask Loki for some people. I reckon he won't turn a good man like you down. + + + You come to chill? My drinks ain't nothing special but this is a welcoming and friendly place! + + + I got all the shit you're ever gonna need. What are you after? You fancy some chow, a drink or feel like firing off a few rounds? + + + I'm looking for people to guard the scientists' bunker. Can you suggest anyone? + + + Talk to the stalkers. I'm guessing they would be happy to do some work for the eggheads... After all, that would give them an official permit to be in the Zone. + + + I'm looking for people to collect samples for the scientists. Can you suggest anyone? + + + I suggest that you don't get involved with inexperienced stalkers. They won't find anything and they might even lose something if you know what I mean. + + + I met a Monolith squad recently and I wanted to ask you something. + + + You know, every other person that's come across Monolith fighters I've met usually had a few extra holes in them and no pulse. You, on the other hand, look quite alive, so what is it you wanted to ask? + + + This squad isn't like that. I talked to them, I didn't have to fight them. + + + No way!? + + + Yes way. They told me it was like a veil was lifted from their eyes and they don't know what to do now. They asked me for advice. + + + Well, my advice is that they stay well away from stalkers, 'cause they've got too good a memory to let them live. I suppose you could try helping them join a faction, but I don't know whether Duty or Freedom would want to get involved in this. + + + I have a PDA with the truth about the founder of Duty on it. You interested? + + + I don't do gossip, remember that. If you want to sell information, Owl is the one to see. He loves that kind of shit. Then again, given the nature of your info, Loki or Shulga might be interested in it too. + + + I've got the PDA of Duty's supply officer. You interested? + + + I have a feeling that this PDA would mean problems with Duty and I don't need that. Try talking to Owl instead. + + + I need medical assistance. + + + Let's have a look... + + + That's better. + + + Who could go to Pripyat with me? + + + Talk to Vano, a stalker. He's straight as an arrow, to the point that it gets him into all kinds of trouble. + + + There ain't that many crazy folk around here, buddy, so you'll have to look elsewhere. + + + You looking for medical supplies or just here for a chat? + + + Someone stole things from my box. Do you know who it might have been? + + + Do you know that stalker's name? + + + I heard he's fairly new here... What's his friggin' name... Is it Snob? Snack... No, no. Something kinda dead... Snag, that's it! His name is Snag. + + + Wassup, bro'? + + + Hey. I've got important business to discuss with you. + + + Cool, let's have a drink first to make sure we take this important business as seriously as we should! + + + OK, let's drink! + + + Nah, I don't feel like drinking right now. + + + So, what's this business you mentioned? + + + I'm planning to go to Pripyat via the underground passage that goes under the Jupiter plant. Nitro can get the entrance open. + + + Hrm... Going to Pripyat underground... That's an idea... And that calls for another drink. + + + Cheers. + + + Ehh, this is good stuff. I hope you're not planning on tackling this mission on your own? No... That won't do... I'll go with you... and we're gonna need others, too. A couple of trustworthy people are always useful in this kind of thing... + + + Nitro advised me to get a squad together... + + + Yeah, that's a good idea... Let's have another drink to the success of this mission... + + + Bottoms up! + + + I can do it on my own, you know... I mean, at Zaton I took out a bloodsucker lair on my own... A couple of gas tanks and it's party time. + + + Wow, respect man. Let's drink to always having a gas tank to hand. + + + Amen! + + + Trustworthy, huh? Well, this place is full of scum... I met a trader at Zaton but it turned out he was from Duty... + + + Wow, so Duty's rotting from within, huh... What's the world coming to? Oh well, let's stop worrying about it and have a drink. + + + I yield to your wisdom. Cheers. + + + Mmm... nice, ain't it? A squad is a good idea, we need at least three people... You got anyone in mind? + + + I'll find some folks... We're also gonna need suits with closed-cycle respiratory modules... + + + Yeah, safety first and all that... About that: don't worry about me 'cause my suit is all good, but we will need them for the others and it may take a little work - those suits aren't exactly common around here. Here's to a successful search. + + + Cheers. + + + You know this weird fella called Noah? He locked himself in on a barge with all kinds of goodies... His version of hello is unloading both barrels of his shotgun on you. + + + Yeah, I haven't seen him for a while. He and I worked together a while back. He was a good fighter... too bad he's gone off the deep end like that. Let's drink to him and his mental health! + + + To Noah! + + + I met Vano at Yanov some time back and he couldn't seem to pay off his debt to the bandits... Anyway, I helped the poor bastard out... + + + Cool, the trip is sure to be more fun with him around, plus he can carry all the supplies. To Vano! + + + You can say that again, brother! + + + There's a military guy in the scientists' bunker... He hasn't got anything to do, so he might agree... + + + Yeah, we could use an army type... Let's drink to the hope that he joins us. + + + Let's. + + + You won't believe it but I helped a Monolith squad the other day... Suddenly the loose screws in their heads tightened up or something and they didn't know what to do... So I helped them out and they're chilling at Yanov now. + + + Hrm... Looks like this vodka went straight to your head, hah! Oh well, can't have too much of a good thing! + + + True. + + + OK, well that seems to be it - the main thing is to make sure we don't get lost underground... + + + Don't worry - I've got the schematics. + + + Cool. Let's drink another to the success of our mission. + + + I'll drink to that! + + + Ah, relax man... I found the Oasis the other day... That same one nobody else could get to... + + + Wow, you're a real pathfinder, man. We'll find the way to Pripyat in no time with you around. Cheers. + + + Cheers. + + + Howdy! + + + I think we've got enough people. We can move out. + + + You sure? Another pair of hands wouldn't hurt. + + + I'm sure. Let's go. + + + You're right. I'll try to find some more people. + + + Good. Let's roll, folks! + + + Let's go. + + + Fighters are good but have you made sure to protect yourself? You need a suit with a closed-cycle respiratory module before we go... I ain't dragging your dead ass anywhere - my beast of a cannon and ammo is heavy enough for me. + + + Yeah, I got it. + + + Let's wait this one out. Emissions ain't too healthy! + + + Where can I find fighters to join our squad? + + + Ask the folk around Jupiter... The guys who stayed at Zaton won't go to Pripyat for sure. We need fellas that ain't got nothing holding them back... They've got to be willing to join what is basically a desperate mission. Do you remember meeting anyone like that? Maybe someone owes you or you know someone who ain't settled down... + + + We've got enough people now. There's no need to put a division together... We'll use small squad tactics. + + + What do you think about Strider? + + + Monolith people are usually fanatical, fierce fighters... I'm not sure about former members though. Strider looks calm on the outside, but appearances can be deceiving. + + + Wow! Monolith armor. Where the hell did you get that? + + + It was part of a set. This is Strider, a former Monolith fighter. + + + I didn't realize there were "former" Monolith fighters. Oh well, we'll see what he's like when the real shit starts. + + + What are your thoughts on Sokolov? + + + That fella's got an interesting suit on him, scientific and all. I haven't seen one like that for a couple of years, at least. + + + That's Sokolov, the co-pilot of the military chopper that crashed. + + + Well, I can see he ain't no scientist by the way he carries himself. A good soldier will always come in handy. + + + How long have you known Vano? + + + We met at 100 Rads a couple of times. They say he's honest, optimistic and a good stalker... But he's way too gullible and that's a fatal flaw in the Zone. + + + So Vano's along for the ride, eh? Great, we've got ourselves someone to carry all our supplies... Hah, relax man - I'm just kidding. + + + Who could have stolen things from a personal box? + + + Your things were stolen? That sucks. I don't know what to say. I haven't seen anything suspicious around here... If I find something out, I'll let you know for sure. We don't need no rats at our base. + + + I heard there was some shooting around here recently... + + + Ah, that was me. Some idiots decided to get together by the tower... They had an argument or something, started shouting and shit. I fired off a couple MG rounds and they bolted towards the substation. That was it for the moron convention, hehe. + + + I've decided to hand over the Oasis artifact. + + + A wise decision - please pass it to me. + + + Here. + + + Splendid, this miracle must be studied immediately... Oh, by the way, thank you for your services - here is your fee. + + + Do you need help with something? + + + Thank you - we already have a stalker squad working for us. Although... there is a theory, in fact it's more of a legend... Have you ever heard of the Oasis? + + + I'll try to find the Oasis. + + + Sorry, I have too much on my plate at the moment. + + + No, I haven't heard of it. + + + Then listen. Many people talk about it but it seems that nobody has ever seen it. It's like healing waters. If you walk in, your wounds heal and your energy is replenished. There are many rumors making the rounds, one more incredible than the next... Some claim to have seen it in their dreams... but as a scientist I am obliged to ask, "How do you know it really was the Oasis?" If you agree to look for it... Well, I can't promise you a massive fee, but if the Oasis exists, its discovery would help us make a giant stride in our research. + + + I found the Oasis. + + + Really?! It exists, then?! Please don't consider me a skeptic, but did you bring something back as proof? + + + Yes, I found something that looks like an artifact. + + + Pass it to me, quickly! + + + Take it. + + + Splendid, this miracle must be studied immediately... Oh, by the way, thank you for your services - here is your fee. + + + I don't think so. It might be of use to me. + + + That is extremely selfish of you. Not to mention dangerous. The exact properties of this artifact are unknown. What are you going to do tomorrow if you find your legs are paralyzed? Or your skin is turning green? I assure you that such objects are best handled by scientists - at the very least we strive to protect ourselves from them. + + + Your scare tactics won't work on me. I'm keeping the artifact. + + + OK, fine. Take it. + + + No, I didn't. + + + You didn't? So what do you expect me to study? Do you know what makes scientists different from others? The fact that for us any theory must be supported by facts! I need proof! + + + OK, I'll go back there. + + + I've spent too much time on it as it is. I can't go back now. + + + If you don't care about your fee then think about new medical opportunities the Oasis would open up! If I am not mistaken, the Oasis is anomalous in nature... that's the way of things in the Zone. If that is so, it's the first ever anomaly with healing properties! + + + What brings you here? + + + Did you see the mercenaries who were guarding us? + + + It's wonderful to see another intelligent person. How can I help you? + + + Can you believe it? The mercenaries who were guarding us were killed right outside our bunker! + + + Hermann, do you know anything about the Oasis? + + + The Oasis? Hah. It's a lie, pure and simple. People like to believe in a cure-all panacea, so they make up these fairytales. Believe me, the Oasis is nothing more than a figment of someone's inflamed imagination. + + + Many people talk about it. + + + Too many. But none of them have ever been there. I stick to the scientific point of view: what hasn't been proven to exist, doesn't. + + + OK, I see... Thanks. + + + OK. Let's go. + + + Cool... We'll be back before you can say "bloodsucker" - hah! + + + We'll see. + + + Cool... But let's wait for the emission to finish and then we'll go. + + + Good day to you, stalker. I'm Uncle Yar... I guess you're tired from the road, eh... Have a bite to eat, since you're here. You chose a good time to show up, too - I need some help. At my age there are things I can't do on my own. Back in the day, though... + + + So, feeling fresh? You feel like a walk now? You'd help an old man out... + + + How's life? You look better by the day... + + + What's the job? + + + Easy as pie... The two of us make our way over to Kopachy - it's not far from here. The rest you'll see for yourself when we get there... + + + Won't your Freedom friends help you? + + + I don't want to bother them with this stuff... The two of us can handle it, no problem. + + + Will you go to Pripyat with me? + + + Nah... If I was younger... I remember I used to walk to Siberia and back, but I try to keep my trips short these days... Getting old, I suppose. + + + Take care. + + + Wait. If you're going to Yanov, maybe we could go together? Having someone to talk to is always nice... + + + Thanks, I'd prefer to go on my own. + + + Let's go to Yanov. + + + Thanks for helping an old man out... Take this. If you have any questions - ask away. I'll answer as best I can... + + + Why didn't you ask Freedom members for help? + + + What's the point of getting the mercs angry with Freedom? We had one war and that was enough. This is a personal matter... No point involving them, you know? + + + What happened here anyway? + + + Some lads came here to kill me... You see, I was hiding in the bushes minding my own business when a mercenary squad showed up. Their leader was yapping away on his PDA about a central lab in Pripyat, an urgent order, this and that... Then I stepped on a stupid branch and alerted them to the fact that I was there. So I grabbed my rifle and made a run for it, but I always had the feeling that they'd come for me. That's the price we pay for eavesdropping nowadays. + + + The main thing is don't be surprised at anything. Follow me quietly... If we keep it hush hush and don't move, things will be nice and easy. + + + OK. + + + We need to get out of here. We'll talk later. + + + OK. + + + I'm putting a squad together to go to Pripyat with. Wanna join me? + + + Tempting... but no, thanks. The scientists promised me a permit to be in the Zone and they pay well, too. Sorry, but I'm going to stay here. + + + Ready to take measurements in anomalies? + + + We're always ready, as long as you cover us. Which anomaly shall we go for? + + + Let's go to Fen. + + + Let's go past Kopachy village to the Ash Heap. + + + Wait, I've changed my mind about going now. + + + We're ready all right, but we should probably wait for the emission to pass... + + + OK. + + + Measurements taken, let's move. + + + I don't like hanging around here either. Where to next? + + + Let's go to Fen. + + + Let's go past Kopachy village to the Ash Heap. + + + To the scientists' bunker. + + + Wait, let me think. + + + You ready to head back to the bunker? + + + We're more than ready... + + + Well, let's go then. + + + OK, just wait a sec for me... + + + I have a couple of questions. + + + Ask them and I'll do my best to answer. + + + I think that's it. + + + I want to ask about the scientists' mission. + + + Ah, the tunnel... There's something there, a strange artifact or something like that. That place is just too weird. At first it was really calm and then I could feel something in my head... It was also crawling with hamsters but don't worry about them - we'll deal with them easy. + + + You've been there before? + + + Yes. We didn't go far in - we were taking some measurements for Hermann when the hamsters came out in force. When we got back, the scientists got so excited about the results that I thought they were gonna take off. They wanted us to search the whole tunnel from end to end, but I ain't going in there! Now they've hired you and we're only there to provide cover. + + + I see. + + + Well, we've taken measurements before, so we'll manage. + + + Where did you take measurements before? + + + Well, measurements is a big word for a small job. We only did it once for real - the anomalous psyfield in that friggin' tunnel. Even that time, as soon as we turned the devices on, the hamsters started flooding out of every hole - Mace barely made it out with his bits in one piece. + + + Don't you think that's strange? + + + No, why would I? The Zone doesn't like nosy people, so that's normal. That's what Ozersky told me, and it checks out. Ask him if you want, maybe he knows something but ain't sharing it with the rest of us. + + + I understand. + + + I see. + + + What can you tell me about the people who live in the bunker? + + + Well, it's some group, I'll tell you... Two scientists, Hermann, the top dog around here, and Ozersky. They employ Novikov who handles the technical stuff and Garry is their guide. Then there's us - they recruited us recently to take measurements and do other science stuff. Oh, Garry also brought some army dude into the bunker the other day. That's about it. + + + Can you tell me more about Hermann? + + + Hermann is the boss around here - he's a professor from some institute, probably a secret one... He organized the expedition, so they dropped this bunker in here almost immediately after the Brain Scorcher was disabled. He was also the one to recruit Garry and us - he pays well and even promised us an official permit for entry into the Zone. + + + Let's talk about something else. + + + Can you tell me more about Ozersky? + + + He's a good, friendly fella and he's the number two around here. Hermann does listen to his advice now and again, though. I don't know much more about him - Hermann is the one we deal with most of the time. + + + Can you tell me about Novikov? + + + He's like Einstein on vacation, man. He knows exactly what he's doing when it comes to installing technical things; in fact, he's better than just about anyone you'll meet. I don't know how he ended up here but you can tell he's no stranger to the Zone - he knows more about it than we do. + + + Can you tell me about Garry? + + + Garry is a great guy and he was one of the first to show up here. He told me the scientists were being dropped off just as he got here, so he joined them right then. He's been getting bored lately, 'cause he ain't one to sit around, but he can't leave before his contract with the scientists is complete. If you want to know something else, ask him yourself. + + + Tell me about the army guy. + + + Hah. Garry met him as he was running away from zombies. He was lucky it was Garry, too, 'cause most others would have taken him out for sure. He doesn't leave the bunker much anymore and I don't blame him. + + + What are the mercs doing here? + + + Those friggin' cutthroats are guarding the bunker. They showed up some time ago, had a chat with Hermann and stayed. I suppose Hermann ain't too pleased with them either... Their leader is called Black and he's got a personality to match. + + + What can you tell me about this area? + + + Well, there is an old military base not far from here... Then Kopachy village to the north of it, and a train station to the east of that, which is where stalkers hang out. Oh, there's also a train on the railroad nearby... Thats not a fun place, believe you me. + + + Tell me about the old military base. + + + Well, there's not much to say... Anything of value got looted a long time ago, so there's not a lot there now except mutants and zombies. There's also a small bunker there - enough to take cover from an emission. + + + Tell me about the village. + + + Well, it's not much of a village - just a few mounds, really. It was buried back in 86 to prevent it from emitting radiation. People don't go there 'cause it's not a healthy place and there ain't nothing of value there. + + + Tell me about the train station. + + + Can you tell me anything about the train? + + + Well... Yanov station is worth a visit if you've haven't been there before. It's a good place to grab a cold one and catch up with other stalkers, plus it's the only other safe place besides our bunker in these parts. + + + I see you're sporting new equipment? + + + Yeah baby. We're now officially known as Iskra scientific research & investigation team! Don't be thinking that we forgot all about you now that we're scientists, haha! My "colleagues" and I have discussed this matter in great depth and our conclusion is... That you've earned this, buddy! If you find yourself in an anomaly or hit by an emission, God forbid, take a moment to send us a thank you note. We'll receive the message, trust me! + + + Hey. + + + Howdy. + + + So you ready to move or shall we wait a bit? + + + I thought I'd be left to rot in that tunnel as a brainless zombie! How can I help the man who saved me? + + + Feel like stretching those legs a bit? + + + Hey brother. + + + We owe you and I won't forget that. + + + I have a feeling we're done here and it's time to get the hell away from this place... + + + So, what's the story with this tunnel? + + + There's no dust there, not a single little bit of it. Hermann says it's because of the Tesla, but I have a hard time believing that. + + + Ask the boss, I don't know what I can tell you and what I should keep quiet about. + + + Tell me what you found while you were measuring the psyfield. + + + I saw footprints on the ground. They looked like they were human, but who would be crazy enough to walk barefoot in that place? + + + You mind kinda goes fuzzy and everything you look at starts assuming these weird shapes. It's that friggin' psyfield, you know what I mean? + + + So what did you find underground? + + + Not much, just a couple of dead hamsters. + + + Heh... nothing you can't find everywhere else in the Zone. + + + Are you OK? + + + I'm all right, thanks to you! I'll give you a set of coordinates, as a token of my gratitude. Anything you find there is yours to keep - it's not much, but comes from the heart... + + + How do you feel? + + + Man, thanks a lot! Thanks to you... I'm lost for words. Take these coordinates of our stash - a token of our gratitude. + + + You alive? + + + Thanks, I won't forget this. Here, take the coordinates of our stash - you deserve them... + + + Your brain still working? + + + Man, the shit I saw when I was... That's gonna stay with me for life... + + + So, back to the bunker? + + + You betcha! + + + Let's go, then. + + + You go ahead, I'll see you there. + + + Is your squad ready to head for the tunnel? + + + Just say when. + + + When. Let's move out. + + + Wait a bit longer. + + + I'll go on my own. See you there. + + + I'll go on my own. See you there. + + + No, we don't trust you and time is money, so either you go with us or we stay right here. + + + In that case, let's go together now. + + + In that case, you'll have to wait. + + + No way... No point risking it during an emission. + + + So, here we are. + + + So... let's start? + + + Yes, of course. + + + Give me a second to get my bearings. + + + What the hell do you want? + + + I was just passing by. + + + Well, keep walking then. + + + OK. + + + Relax, moron. + + + None of your business! + + + Oh... Hi... + + + Nimble told me that you're a deceitful bastard. I figure you've cheated many a stalker... + + + What are you talking about? I've never done anything like that in my life! Nimble's messed up in the head! + + + What did you tell the bandits about me? Why were they waiting for me by the dock cranes? + + + You must've taken me for someone else - I have no business with bandits! + + + Nimble told me about you... I suggest you give me the shooter and make it easy for both of us. + + + What could he tell you?! I don't have anything that ain't mine! + + + Take a hike, buddy... + + + Help me out, bro - I need a medkit! + + + Tell me where you hid my stuff first! + + + I'm sorry man, I really needed the money... I'll tell you everything, just help me! Honestly, I'm done with that shit, I've gone straight! + + + OK, here. + + + Thanks, man! I hid the stuff in my stash in the sewers behind the substation. + + + I see. + + + I don't believe you. You ain't getting a medkit. + + + Take this. + + + You ain't getting it. + + + Thanks. I didn't think you'd help me... + + + Who could I hire to protect the scientists? + + + Duty, of course. Who else? They're the best fighters in the Zone, after all! Heavy assault guards - how does that sound? + + + They're employing Freedom at the moment? In that case, I really don't know. I was going to suggest Duty, but they don't go well together. + + + Who could I hire to take measurements for the scientists? + + + Try talking to Shulga. They're not all rocket scientists over there, but he's got some bright fellas in his employ. + + + Are they still paying Freedom to protect them? If so, I would advise against recruiting Duty... That's about all the advice I can give you on that. + + + When we got into the underpass the elevator stopped working... + + + Hah, you went down using the only operational generator... And it's the backup one at that. I barely got it working, so it did its job done and then died. You should be grateful it didn't go out halfway... That elevator doesn't have an emergency exit! + + + Who could have stolen things from a personal box? + + + Damn! I really don't know. What I can tell you is that if Shulga was running things at Yanov, that would never have happened. + + + Can you break into a steel container? + + + I'm not the guy, man. Metal ain't my thing... If you have any electronic issues - give me a shout. + + + A group of peaceful Monolith fighters is looking for refuge. Who could help them? + + + Are you serious? I heard they're animals... Well, stalkers won't give them the time of day, that's for sure... You should probably speak to Shulga. If the Lieutenant Colonel lets them join Duty, they'll be safe. They might even find something useful to do. + + + Can you decrypt a black box? + + + Let's have a look... This is gonna be some work. It'll take about three hours and it won't be cheap. I'll do the work and then we'll talk... go take a walk while I do this, so I can concentrate... + + + Let's have a look... This is gonna be some work. It'll take about three hours and it won't be cheap. I'll do the work and then we'll talk... Meanwhile why don't you look for the components I need? You'll earn some cash and I'll charge you less for this job. + + + What? I'm still working on it. Damn, this box is a friggin' nightmare... + + + I'm done with your black box... A shitty job if I've ever done one... + + + What do I owe you? + + + 3,000, at least. + + + Take this. + + + I don't have that much. + + + Well, I can give you a discount when you bring me the components. + + + Well, don't be a stranger. + + + Too rich for my blood... I'll think about it. + + + I'll give you a discount. Only 2,850. + + + I'll give you a discount. Only 2,700. + + + I'll give you a discount. Only 2,550. + + + I'll give you a discount. Only 2,400. + + + I'll give you a discount. Only 2,250. + + + I'll give you a big discount. Only 2,100. + + + I'll give you a big discount. Only 1,950. + + + I'll give you a big discount. Only 1,800. + + + I'll give you the very best price for this. Only 1,650. + + + Heh, obviously I don't know why you need the recording, but for what it cost you I sure hope it's gonna be useful. + + + We'll see. + + + I'm still working on the black box... Why don't you make yourself useful and get me those components? + + + Senka? Back when I was making my way through Zaton he stuck with me and he's been with me since... He's a professional drunk with extensive experience... hah! I use him to run errands here and there... + + + Who might be interested in information about Duty's founder? + + + Shulga, of course... Duty remembers its beginnings. You know what they say: unless you study history, it will repeat itself... The main thing is that Freedom doesn't get its hands on this information, because they'd distort it, that's for sure. Not out of any malice, simply due to poor memory... + + + I brought you tools. + + + Great... So, which ones are for me? + + + The ones for basic work. + + + Great! Now I just need tools for fine work and calibration... + + + The ones for fine work. + + + Great! Now I just need tools for basic work and calibration... + + + The ones for calibration. + + + Great! Now I just need tools for basic work and also ones for finer work... + + + None, for now. + + + Cool! Some calibration tools and I'm all set. + + + Cool! Some tools for fine work and I'm all set. + + + Cool! Some tools for basic work and I'm all set. + + + Wow! Where the hell did you find them? + + + If you need any tools, I can get them. + + + That would be awesome. At the moment, it's like working in the Stone Age. The only difference is that the soldering iron has replaced the shaman's staff... If I had tools, I could do some top upgrades and you better believe there'd be coin in it for you too... + + + OK. I'll look for them. + + + I've changed my mind. + + + Good idea. I can do upgrades and you can earn cash... + + + I have the Duty trader's PDA. You know anyone who would be interested in it? + + + A trader in Duty? No kidding... Give the PDA to Shulga and he'll deal with it. Not a word to Freedom, you get me? They'll use one asshole to sabotage the reputation of the whole faction... + + + I found some documents. They describe a way of getting to Pripyat. + + + Let's have a look... Yeah, yeah, yeah... So, to summarize, there's an underground underpass designated Pripyat 1, which runs under the city of Pripyat, with one section that ends in a lock located in the Jupiter plant's transportation section. Impressive! Judging by the notes it has been sealed, filled with gas and the power to it has been cut. I suppose I could try to revive the generator and open the lock. Only... + + + ...Only I ain't going through Jupiter without protection, and I suggest that you don't even think about going underground on your own. You'll need to have a couple of buddies with you, at least. You're all going to need suits with closed-cycle respiratory modules, too, otherwise you won't last a minute down there... Listen, Zulu lives in a tower not far from here - try talking to him. If you guys hit it off, he'll tell you how to put a squad together. + + + You mentioned materials... + + + Right, finding materials to use for working with radio equipment is damn near impossible around here. I've used everything I could find and there's nobody supplying any materials here, because you can make more cash selling guns... I heard there could be something left at the cement factory, though... + + + I found the materials, here you go. I searched the cement factory from top to bottom! + + + Wow, bro - I'm impressed! I'll make a note right here: free labor on all repairs and upgrades for my favorite stalker! + + + I managed to find some of the materials you wanted. Here you go. + + + Wow! Discounts galore for you, my friend! + + + I can get the materials for you. + + + That would be great! If you find anything like colophonium or capacitors, bring them to me... hell, I would even be grateful for some textolite. I can't promise you lots of cash, but you'll get a discount, that's for sure. + + + What do you need the materials for? + + + Well, I do work with shooters and equipment... I mean, a man's gotta do what a man's gotta do to eat... But my passion is radio equipment. You know that feeling when you put something together and it works? I remember I once built a jammer... It was real useful - I turned it on when the announcements by 100 Rads kept waking me up. + + + Why would there be radio materials at the cement factory? + + + Cement factory is just a name... It stopped making cement long before the Chernobyl disaster. They disassembled what they could and started using the building to make electrical appliances. + + + I found some documents at Jupiter. Will you have a look? + + + So... Nothing of interest here... just some administrative crap... + + + Hrm... There's something of interest here and there, but I can't be certain of anything... We need the complete information. Try checking the places mentioned in the documents. + + + I really need some friggin' materials. How am I supposed to work like this?... Oh, hello. What's up? + + + Howdy! You need something technical done? Obviously, I don't have any materials, but I can still repair your kit and do minor upgrades. + + + Oh, hey. Listen, I've been thinking... It turns out that all those materials I need are simply collecting dust at the cement factory... Just the thought of it drives me crazy... + + + Hey! Did something break or have you put some dough together for an upgrade? Remember, you've got a lifetime discount! + + + Hello, brother! How can I help you? Remember, you get the best prices possible from yours truly. + + + Can you unblock a memory module? + + + I think so... I've never done it before, so I'll need at least three hours. I'd be happy to give it a shot, though... Bearing all that in mind, I'll give you a good price - just 1,000. + + + I can wait, so let's call it a deal! + + + Great! I'll get to work and you take your time... I'll let you know when I'm done. + + + I don't have that much. + + + Well, come back if you still want the job done. You won't get it done cheaper anyhow. + + + I'll think about it. + + + I told you I'll be able to do it in about three hours. 1,000 is a great price, so I'd take it if I were you. + + + So, did you unblock the memory module? + + + No, I'm still working on it... Don't worry, I'll let you know when it's ready. + + + Huh? You didn't get the module?... You must have missed Senka - I had sent him your way to deliver the module... Well, never mind. Basically, other than soil layer thickness and vegetation density readings, it also contained the coordinates of three radio beacons. I'll upload them to your PDA... + + + Did you try tracking the chimeras down? + + + The wounded one went to Zaton. Gonta's group is following it... Then again, I heard they're lacking an experienced hunter. If you help them out, I'll make it worth your while... The other one, the one that killed Fox... Well, I lost it. It was as if it just vanished... Poor Fox... He was a good man, but age sure takes its toll... + + + Well, you dealt with one, the wounded one... The other one, the one that killed Fox... Well, I lost it. It was as if it just vanished... Poor Fox... He was a good man,but age sure takes its toll... + + + What do you do? + + + Well, I'm Trapper and until recently I hunted mutants that were a danger to stalkers... Nowadays, I take orders and give them to younger hunters. I train them and teach them hunting tactics... + + + Tell me about hunting mutants... + + + Well, mutants require different approaches... Burers and poltergeists require one, pseudogiants and controllers need another... And chimeras are a real special case. + + + Tell me about burers. + + + Burers use gravitation attacks... When at close proximity they'll throw you and when they're far away they'll try to throw something at you... Your best bet is to keep them at medium range from you and keep moving, unless you enjoy getting hit by something heavy... But be careful to conserve your energy! Burers can use directed gravitational impulses to yank weapons out of your hands and if you're tired it might just work. + + + Tell me about poltergeists. + + + There are two types of poltergeists. The first type sends items crashing into the enemy using gravitation, while the second type is the fire poltergeist that uses flames to burn its victims. Inexperienced hunters try to circle around them to evade their attacks... The trick is to know that poltergeists can't see or hear in the usual sense of those words and use that to your advantage. They sense objects that move in the gravitational field... So a seasoned hunter freezes as soon as he sees a poltergeist, fires and then freezes again, rinse repeat. + + + Tell me about controllers. + + + They use your own mind against you. When you're hunting a controller, it's important to use cover, because it must see you to affect your mind... Also, they're quite slow, so if your life is at stake, use grenades. + + + Tell me about chimeras. + + + They're very dangerous nocturnal predators. They try to get behind you under cover of darkness and leap on top of you. If you know there's a chimera around, keep checking your back and cover your friends' asses... + + + Tell me about pseudogiants. + + + The most difficult thing about hunting pseudogiants is killing them. They can take incredible punishment without so much as batting an eyelid... All I can say is that you may want to try using a shotgun at close range. Just remember that pseudogiant attacks can detach anything that's not been fixed to concrete. Attack it from above... and make sure that whatever you're standing on can withstand some damage. + + + OK, forget about it. + + + Why don't you hunt anymore? + + + Im getting old, man. Thats why Fox died... He was my partner and friend. We hunted many a beast together, shoulder to shoulder... Then we ran into these two chimeras by Zaton that havent been seen in the Zone for eighteen months... One knocked Fox to the ground before I could even get my shotgun out. When I wounded the other one, they ran off... I hope they burn in hell forever! + + + Who could have stolen things from a personal box? + + + Hrm... Don't know... That kind of thing just doesn't happen among the hunters. Piss enough people off and you might find them saving their ammo when you've got a bloodsucker getting close and personal. + + + Desperate times call for desperate measures... Knowing what I know about bloodsuckers, I would think a couple of them were out hunting... But now that they've not got anywhere to come back to, they won't be a danger to stalkers anymore. + + + You got any other work for me? + + + Sure. A stalker squad went into the tunnels to the north of the plant the other day and ran into a mutant lair. They were all so shocked that none of them can even explain what kind of mutants they were, but two of the stalkers didn't make it out of there alive. After that the folks at Yanov got real scared about the whole thing, so they put together a 5,000 reward for anyone who's willing to deal with this lair. It's a dangerous job, so you decide for yourself... Will you do it? + + + I'll do it. + + + You're a brave man... Good luck. You'll need it. + + + Not now. + + + I don't blame you... I doubt anyone will have the balls to take on a whole lair of mutants. + + + Same as before. Unidentified mutants in the tunnels to the north of the Jupiter plant. 5,000 reward... Will you do it after all? + + + Stalkers are worried about the mutants in the tunnels at the moment... + + + The mutants in the tunnels were mutated dwarfs. Now they're dead mutated dwarfs. + + + I'm guessing they must have been burers. That explains why the folks at Yanov got all excited about the whole thing... Well, seeing as they're dead, the reward is yours! + + + I'm guessing they must have been burers... The ones that killed two stalkers recently. That explains why the folks at Yanov came up with a reward for killing them. Well, seeing as they're dead, the reward is yours! + + + I'm ready to deal with the chimera. + + + Great. The hunter who found that bastard saw it just as it got dark. It was headed towards the ventilation complex. Chimeras are nocturnal and territorial, so it was probably going to its hunting grounds... I think that's where you should look for it come nightfall. Then again, it's more active when it's dark... Be careful and good hunting. + + + The chimera is dead. + + + Thank you... Thank you! You have avenged Fox and he can now rest in peace. Here's your money - you've earned it... There's something else. Take my shotgun. You brought me something a lot more important - some peace at last... + + + I'm Trapper... There's no need to introduce yourself. + + + What brings you here? + + + Thanks for coming... I need a reliable and experienced hunter and you're the best Yanov has to offer. After all that has happened, I can't let the chimera escape again... I'm putting up all my savings for this : 10,000. I want to make sure the job is done right... Fox must be avenged! + + + I'm begging you to deal with the chimera. If you don't want to rid Yanov of this mutant killer, then do it for the money... 10,000 is a lot of cash. + + + What's the situation with the chimera?... Time is of the essence, for it could move on to new hunting grounds. + + + Good to see you!... What's new? + + + You got any other work for me? + + + Of course... A group of swamp bloodsuckers has been spotted in Fen, behind the cement factory. They seem to be keeping to their swamp for now... But local stalkers want to make sure they stay there forever, if you know what I mean. The price for the whole group is 3,000. Will you do it? + + + I'll do it. + + + Great. Happy hunting... + + + Not now. + + + Up to you... There's still time to change your mind before other hunters take the job. + + + Same as before... The group of swamp bloodsuckers in Fen, behind the cement factory. The reward is 3,000... You game? + + + Nothing other than the bloodsuckers in Fen at the moment... + + + I killed the swamp bloodsuckers. + + + Now stalkers can relax a little. Here's your fee as agreed. + + + Yeah, the local stalkers will be happy to be rid of those neighbors. They even put together reward money for it, 3,000 to be precise... Here, take it. + + + Me and Gonta killed the chimera at Zaton. + + + Thank you for that. The fewer of those beasts around, the better it is for us all. Now, if you could track down that other one... + + + Thank you for dealing with the second beast, too. It's good to know that those chimeras won't take another stalker's life... + + + Tell me how you killed the controller. + + + Listen and learn, my friend, listen and learn... I went to my stash to pick up my loot and when I got there, I clocked a controller sitting right on top of it. So I grabbed a metal grate that was on the ground and used it to shield myself as I was sneaking up on it. By the time it woke up to what was going on, I'd pumped half a clip into the cocksucker's head. Just as it started trying to control me, I gave it a final bash with my rifle butt and that was that. + + + Tell me about the artifacts at the quarry. + + + Hah! There's not much to say, 'cause there's jack shit left in the quarry now. There's no point looking in anomalies Flint has looked in, everyone knows that. + + + So it was you who left your buddy to die in the quarry! + + + What?! + + + You can't prove anything. You're just bullshitting... It's your word against the word of a Freedom member - good luck with that. + + + We'll see about that. + + + Nothing. + + + Thanks, bye. + + + Tell me the story about the bloodsuckers at Zaton. + + + When I was at Zaton, bloodsuckers made life real difficult for stalkers. Stalkers kept at 'em day and night but it didn't help one bit. I decided to help them out, so I took my shotgun and went straight for the bloodsucker lair. After some quality time with yours truly the bloodsucker problem at Zaton is all but over. + + + You probably don't even know where that lair is. + + + Scram. + + + What do you want? Go spew your horseshit somewhere else! + + + Take a hike, buddy... It's your word against the word of a Freedom member - good luck with that. + + + We'll see about that. + + + Thanks, bye. + + + Tell me the story about the shortcut to Jupiter. + + + Well, the guide used to take a massive detour on his way from Zaton. I decided to go straight... so I did. I tried a few places and worked out the way through the anomalies pretty quick. So I sold that info to the guide and now he takes everyone that way. + + + How about we ask Pilot who got him the maps? + + + Scram. + + + What do you want? Go spew your horseshit somewhere else! + + + You can't prove shit. It's your word against the word of a Freedom member - good luck with that. + + + We'll see about that. + + + Thanks, bye. + + + Tell me about your trip to the Oasis. + + + I was the first person to ever get to the Oasis. It's free of mutants and anomalies - just peace and quiet, all 'round. Full of artifacts too, just take your pick and walk on home. + + + Bullshit. I've been to the Oasis and it's nothing like that. + + + Scram. + + + What do you want? Go spew your horseshit somewhere else! + + + Bullshit yourself. It's your word against the word of a Freedom member - good luck with that. + + + We'll see about that. + + + Thanks, bye. + + + Tell me about your work with the scientists. + + + I visited their bunker the other day. They were real happy and said, you're exactly what we need right now, Flint! It turns out they wanted their devices set up under anomalies. So I was like, that's a piece of cake - and I did everything they wanted easy. Getting those nerds to fork up the reward money was the hard part. + + + Stop claiming the credit for other people's achievements. I did that, not you! + + + Scram. + + + What do you want? Go spew your horseshit somewhere else! + + + Lies... You can't prove anything. It's your word against the word of a Freedom member - good luck with that. + + + We'll see about that. + + + Thanks, bye. + + + Hey. You want to listen to my stories too? + + + You want to ask something? + + + What do you want? + + + Buddy... shit... I'm dying... + + + Take this medkit. + + + Thanks friend... but it won't help... Listen... I was here with a member of Freedom... We found an artifact... I walked into a gas anomaly on the way back... If he had helped me, I could have made it... But... He took the artifact and left me here. He claimed he was going to get help... Find him. I want people to know that he can't be trusted... + + + I'll find him. + + + I doubt I'll be able to prove anything. + + + Grab on to my shoulder, we'll get you to a medic. + + + Shit happens. Bye. + + + I have something for you... + + + A Meat Chunk, here, take it. + + + Thanks. Scientists pay well, but I care more about the permit. + + + Thanks a hell of a lot, friend! Now I can finally make a move for Pripyat - I just need to think of a way to get there. + + + A Kolobok, here, take it. + + + Thanks. Scientists pay well, but I care more about the permit . + + + Thanks a hell of a lot, friend! Now I can finally make a move for Pripyat - I just need to think of a way to get there. + + + A Meat Chunk and a Kolobok, here, take them. + + + Thanks a hell of a lot, friend! Now I can finally make a move for Pripyat - I just need to think of a way to get there. + + + None. + + + Is it boring around here? + + + You mentioned your contract... + + + Well, I signed up to do some work for the scientists, thinking it would be easy. What I failed to notice was that the contract only expires when all the work is done. The scientists promised to give me an official permit to be in the Zone at the end of it. + + + I've completed every damn clause of the contract, except one little thing. I have to find all chemical artifacts in existence. Who could have known that you can't get Meat Chunks or Koloboks around here? If I could get those two, I would have headed towards Pripyat a long time ago, but I can't! + + + I might be able to help you with those artifacts. + + + That's a pity. + + + Yeah... A Meat Chunk and a Kolobok and I'm off to Pripyat! + + + What's so special about Pripyat? + + + Nobody knows how to get there... We're in the Zone, after all, so you can't just walk straight there. They say it's a real treasure trove of artifacts... Either way, there've been so many legends circulating around Pripyat that I'm just plain curious. + + + I'm putting a squad together to go to Pripyat with. Want to join us? + + + Actually, I've been thinking of heading over there myself... But it would be on my own. Nothing personal, I'm just used to working solo... + + + Hah, I'm actually setting out to Pripyat soon... But it will be on my own. Nothing personal, I'm just used to working solo... + + + Welcome to boredom. + + + Man, I really want to go to Pripyat! + + + I just need to work out a way of getting to Pripyat and I'll be there in no time. + + + It's good here! This is life like it's meant to be lived! + + + It's good to feel safe, for sure. I just wish it wasn't so boring! + + + I might be able to help you with those artifacts. + + + Do you really know the way to Pripyat? + + + I don't, but if it's full of artifacts like people say, I'm ready to find one right now. I mean, I'm a trailblazer like no other - I was one of the first to find the way to Jupiter. But I always work solo - I ain't got time to watch someone else's back. + + + Will you take me to Jupiter? + + + Of course. You ready to go? + + + Yes. + + + Not yet. + + + Not during an emission. + + + Will you lead me to Pripyat? + + + I'll give it a shot for 5,000. I like it there! + + + Deal. + + + No, thanks. + + + OK, it's your choice. + + + I don't think I have enough cash. + + + I'll give it a shot for 5,000... Let's just wait for the emission to finish. + + + Can you lead me to Zaton? + + + Nah, man - it's way too boring there. There's Pilot over there - he's the one you want for the safe but tedious work. + + + Well, I can lead you to Yanov and for 3,000 I can get Pilot to take you to Zaton. What do you say? + + + I agree. + + + No. + + + Up to you. + + + I don't have enough cash. + + + Well, I can lead you to Yanov and for 1,000 I can get Pilot to take you to Zaton. What do you say? + + + Nah, man - it's way too boring there. There's Pilot over there - he's the one you want for the safe but tedious work - ask him after the emission. + + + Well, I can lead you to Yanov and for 3,000 I can get Pilot to take you to Zaton... Once the emission is over, obviously. + + + Well, I can lead you to Yanov and for 1,000 I can get Pilot to take you to Zaton... Once the emission is over, obviously. + + + They say you made it through the tunnels?... I also came from Jupiter - I found a passage underground. I can take you back there for free if you need... I'm, you know, happy to provide any assistance required to the authorities. + + + Long time no see! They say you made it through the tunnels?... I found a passage underground. I can take you back for free if you need... I'm, you know, happy to provide any assistance required to the authorities. + + + Long time no see! They say you made it through the tunnels?... You won't believe it but I managed to get out of my contract and still get the permit... As soon as I did, I headed here and found a passage underground. I can take you back for free if you need... I'm, you know, happy to provide any assistance required to the authorities. + + + Long time no see! They say you made it through the tunnels?... I found a passage underground. I can take you back for free if you need... I'm, you know, happy to provide any assistance required to the authorities. By the way, thanks for helping me complete that contract with the scientists... I've had a little look around here and found this - take it. I'm sure you'll find a use for it. + + + Topol, why don't you protect the scientists' bunker? + + + Well, we're employed to take measurements and collect samples. We're almost scientists at this stage. Plus, while I don't have anything against the job per se, I'm not sure I can handle the eggheads' new enemies. I don't feel like dying from a merc bullet. + + + You're in the wrong place, buddy! And you better leave before we make it the wrong time, too. + + + You looking for trouble or something? Get out of here before you find it! + + + Get lost, buddy. Do that, and we'll keep it peaceful. + + + What are you going to do now? + + + We're going to Yanov station soon. Come with us, if you like. + + + Yeah, that's on my way. I'll join you. + + + Nah, that's out of my way. + + + It's a good thing you brought them to us - they wouldn't have lasted long on their own. + + + Thanks for making an arrangement with Duty. + + + What are you going to do now? + + + We're going to Yanov station soon. Come with us, if you like. + + + Yeah, that's on my way. I'll join you. + + + Nah, that's out of my way. + + + You did the right thing, man. You helped those dudes and brought us reinforcements. Respect. + + + Thanks for making an arrangement with Freedom. + + + Do you know who could have stolen things from a personal box? + + + I don't know - there's all kinds of folk around here... You could try asking Bonesetter, he knows almost everyone in this place... + + + Let's go see Zulu. + + + OK. I hope he's not going to shoot when he sees my old armor! We need to pick it up on the way... and return the one I'm wearing. + + + Let's go. + + + Wait. Emissions ain't healthy... Let's wait a bit. + + + What happened? + + + Well... We dont remember how we got here. I remember that we were a Monolith squad... We had this burning desire to reach the center of the Zone. Thats where the Monolith is - its a meteor, that brought the beginnings of new life from other planets... I remember reaching the CNPP together... And then its all fragmented. I remember a bright light... cosmic cold... and a clear voice... Everything was just... perfect. I don't remember what that voice ordered me to do now. Several years of my life... just gone. The boys are the same... We dont know what to do. We definitely need somewhere to take cover from emissions... and mutants, right? Do you have any ideas about where we would be safe? + + + There's a stalker base not far from here, I can point it out to you on a map. + + + Im not sure thats safe... When we were on our way to the CNPP, we were treated with suspicion... I think we actually killed stalkers afterwards. Do you know how people treat our faction right now? Theyll probably start shooting... Can you help us? Could you tell everyone at the stalker camp that were not killers anymore? Could you speak to them and get them to accept us? + + + No problem, I'll speak to them the next time I'm at the base. + + + Sorry, I cant help you. + + + What kind of help do you need? + + + We need somewhere to take cover from emissions... and mutants, right? Can you find a place where we would be safe? + + + OK. Ill ask the folks at Yanov. + + + Sorry, I cant help you. + + + You'll need a suit with a closed-cycle respiratory module to get to Pripyat. + + + That's fine - I kept my Monolith armor and it comes with exactly that. The problem is that I can't be seen wearing it at Yanov. + + + I'm putting a squad together to go with me to Pripyat. Will you join us? + + + I'd go... I mean, I'm more than curious to find out what happened to us there. But I can't go now. I can't leave my boys here . They've been through a lot as it is. + + + Yes, I'll go with you. I want to know what happened to us. I have my fingers crossed that we'll find the answer to that question in Pripyat. I just have to warn Loki, but I doubt he'll object. + + + Yes, I'll go with you. I really want to know what happened to us. I hope to find the answer to that question in Pripyat. I just have to warn Shulga, but I doubt he'll object. + + + Are you ready to go? + + + Ready. + + + Hello, stalker. Could you help us? + + + Hello. Did you find out if we can go to the stalker base? + + + No, I'm still working on it... + + + Hurry up, 'cause you never know what could happen here. + + + Hello. Thanks for helping us. + + + Hello. + + + How are things? + + + Things are OK, the squad is in order, but I really want to know what happened to us. + + + What are the mercenaries doing here? + + + You should speak to Hermann about that. He deals with all administrative aspects of the laboratory. As far as I am aware, the mercenaries have made an agreement with Hermann concerning the protection of our laboratory. I am not familiar with the details of this arrangement. However, I must point out that they have proven themselves as reliable fighters on numerous occasions. + + + What are you doing here? + + + A rhetorical question, don't you think? We are researching. Are you interested in something specific? + + + What is the purpose of your research? + + + We have no specific objective in mind. We're scientific scouts, if you will. We are seeking to identify correlations in certain phenomena, develop theories and prove or disprove them. Some of our theories have no practical purpose as we know it. + + + What do you know about the Zone? + + + I can only hypothesize at this stage... I believe that the Zone was formed as a consequence of some new force. Electromagnetic fields, physical force or radiation couldn't have changed the biosphere so quickly. Obviously, some mutations can be explained by radiation... But, excuse me! An ordinary pig would need hundreds, if not thousands, of years to mutate into flesh! In the Zone the mutation occurred in a couple of years. It's as if someone directly altered the genetic information in individual animals. The thought of that is enough to send shivers down my spine. + + + How long have you been in the Zone? + + + No more than a week. It took tremendous effort to cut through all the red tape and organize this expedition. If it weren't for Hermann, we might've still been waiting on the borders of the Zone, while stalkers removed invaluable items from it. + + + That's all I wanted to know. + + + Ozersky, why did Hermann hire me to protect the squad during the taking of measurements? + + + It was my idea. He didn't see the point, but I convinced him. My research indicates that the effects of our high wave equipment on anomalous fields induces a heightened state of aggression in nearby mutated species, as well as, boosts their activity levels. Long story short, they start looking for something to kill. + + + Ozersky, I've got news. + + + Yes? I'm listening. + + + You were right. The mutants wouldn't let us rest for a moment while we were taking measurements, but as soon as the devices were switched off, things calmed down. + + + What?! If... if my hypothesis proved correct, it is probable that mutated animals that acquired the ability to access informational fields can telepathically receive signals from outside... artificial signals... in which case... the unnatural similarity in mutations and these typical changes in cell structure... are not accidental... + + + Could you be more specific? And could you actually make some sense this time? + + + No! These are but my conjectures. Oh, how terribly rude of me! Thank you very much for your assistance in our research. + + + What needs to happen for you to talk to Hermann about a suit? + + + An area filled with a previously unknown anomalous plant has appeared near the edge of the quarry. I really want a sample of this plant, but stalkers refuse to go near the place. If I had one of those plants, I could speak to Hermann about rewarding you with one of the spare suits. + + + I'll find the plant for you. + + + OK, I uploaded the anomaly coordinates to your PDA. + + + Maybe next time. + + + Drop in if you change your mind. + + + Here, I brought the plant you wanted. Now how about that suit? + + + Great. Hah, Sokolov has actually let slip that the suit is for him. Well, it doesn't matter. I'll show Hermann the plant and he'll agree to hand over the suit in no time. Tell Sokolov to come and collect it. + + + I can find some new guards for you. + + + That would be kind of you. Please speak to Hermann about this matter since it falls within the scope of his responsibilities. + + + I'd like to check my resistance to the psy-field. + + + Hah, so Hermann sent you to see me? OK, let me explain this as simply as I can. In order to properly analyze your resistance to psy-emissions, I will need a scientific research complex and years of study. What I actually have is a field kit with a couple of dirty test tubes. + + + It's impossible, then? + + + Not so fast. We're not talking about a full analysis. For our aims we merely need to assess the resistance of your neurons to psy-emissions. A basic examination will do just fine. So... It seems that your head is in order. That is to say that you can be affected by relatively high levels of psy-emissions without losing consciousness. + + + What about the hypothesis concerning increased mutant aggression? + + + I have two theories about that. The first is that mutant aggression may be caused by the intrusion of several people into their territory, in which case that is normal behavior for most unmutated species, including humans. The other theory is that mutants are somehow capable of receiving the active emissions of our measurement devices. Clearly, the latter theory is far more intriguing. + + + How could this be tested? + + + The measurement device should be activated in an area where there was no previous mutant activity. Furthermore, in order to minimize the human intrusion effect, the experiment should be conducted by a maximum of one person. + + + I brought the scanner. + + + What results did you get? + + + I don't know what your device will show, but I believe the hypothesis fully checks out. After I activated the scanner, it took all of five minutes for snorks to come charging at me. + + + That's what I thought. For some reason, it is usually the most undesirable theories that prove to be right. In any case, it is a good thing that you tested this. Now we'll have to make sure any squad we send out to take measurements is ready for some rough stuff. + + + I'm ready to try to confirm or disprove the hypothesis. + + + I'm delighted that there are still people in the world who are willing to make sacrifices for the greater scientific good. The best place to conduct the experiment is the landslide on the southern edge of the quarry - that area is full of gravitational anomalies that mutants normally try to avoid. The device I am giving you has a built-in mutant detection sensor. When you return the device after you have completed the experiment, I will be able to track the effects of emission levels on mutant aggression. Are you prepared to do this? + + + Yeah, I'll do it. + + + Not at the moment. + + + Is there any way I could get a scientific suit? + + + That's against protocol. We have to account for every item of equipment we have. Then again, knowing Hermann, he probably ordered more than we need. I think that in certain circumstances, he could be convinced to part with one of them. + + + Do you need any artifacts found? + + + No, sorry. We don't send random people on artifact hunting assignments anymore. We signed a contract with an experienced artifact hunter, and whatever we may need, he gets it for us. + + + I can find some new guards for you. + + + That would be good. The Zone is never peaceful... Talk to Hermann about it - he's the boss around here. + + + You're supposed to issue me with scanners for anomaly research. + + + Take this. Three, as Hermann said. + + + Take this. Two more, as Hermann said. + + + How can I get a scientific suit? + + + Hermann is in charge of inventory. But I'll save you the trouble of asking: you won't get anything from him. Try talking to Ozersky instead. On the one hand, he's a bit more laid back, on the other - he can influence Hermann. + + + What brings you here? + + + Listen, where did those mercs go? The ones who were protecting you? + + + How's life? + + + Listen... Someone gunned down those mercs who were protecting you. I didn't like them much myself, but that's going a bit far... + + + CS-3a - cool! That's pretty good armor... Reminds me of the good old days... + + + Can you unblock a memory module? + + + Let's have a look... No problem. I've done this before... It won't take more than an hour. I'll do it for... hrm, 2,000. Deal? + + + Deal. + + + Good. I'll let you know once I've unblocked it. + + + I haven't got that much money. + + + Hrm. Well, you know where to find me. I doubt anyone can do a better job of this than me. + + + I'll think about it. + + + Like I said, I'll do it in an hour for 2,000. + + + So, did you unblock the memory module? + + + The hour ain't up. I told you I'd contact you when it's done. + + + Yes, here it is. It's ready for you to access the information. + + + I found a strange semi-artifact. You interested? + + + Of course. Where did you find it? + + + At Zaton, in the abandoned dredge station. + + + Deal. + + + No thanks! I'll look for another buyer. + + + What are the mercs doing here? + + + We have a contract with them for the protection of the mobile laboratory. In anticipation of your question, I will tell you that I had no choice but to recruit them. Due to some secret military operation, we were not given the appropriate protection for laboratory deployment. That fact coupled with stalkers suddenly going bonkers for artifact hunting and I had no other choice but the mercenaries if I wanted to keep the laboratory safe. + + + What do you do here? + + + We research various phenomena. + + + What is the purpose of your research? + + + We are conducting fundamental research. In other words, we are not here to test suits, invent new drugs or things like that. We are trying to find a logical explanation for the things we see in the Zone. If we uncover the secrets behind even ten percent of the phenomena we see here, that would give global technological development a massive shot in the arm. + + + What do you know about the Zone? + + + Not much, if I'm honest. We are just starting to understand the mechanisms that drive some of the phenomena we encounter, and unfortunately we're far from understanding the Zone as a system. This is particularly difficult by the fact that the Zone evolves over time. I don't mean the appearance of new anomalies or little things like that. I'm talking about more serious changes, ones that cannot always be spotted with the naked eye. The weakening of the magnetic field is an example of this. The saddest thing is that we don't know what this is all leading to. All that is left for us to do is to sit and wait. + + + How long have you been in the Zone? + + + Not long, about a week. That said, I did visit Sakharov's laboratory a few times. I still regret the fact that we failed to get this expedition off the ground faster. I told the people at the Ministry of Education many times that we must always have two fully equipped mobile laboratories ready to go at any moment... they just nodded their fat heads at me and that was it! Thanks to them we almost missed the greatest research opportunity the Zone has ever provided! + + + I see. + + + Is there any information on the scanners I placed in the anomalies? + + + Which anomaly are you interested in, specifically? + + + The anomaly by the parking lot. + + + Yes, our devices indicate the presence of artifacts in that anomaly! + + + Unfortunately, there are no signs of artifacts in that anomaly. + + + Concrete Bath anomaly + + + Bitumen anomaly + + + Fen anomaly + + + Ash Heap anomaly + + + That's it for now. + + + I'm listening carefully. + + + Recent events have made it very clear that our research team is not sufficiently prepared to conduct proper field work. You, on the other hand, managed to deal with the controller on your own! That is quite astounding! + + + What's your point? + + + My point is that it would be only logical for us to at least attempt to recruit such a capable expert as you. Our science group is most positively in need of your assistance. We need to take measurements, position scanners... + + + Go on... + + + I am trying to find the correlation between emissions and the appearance of artifacts in anomalies. I have a theory that the next emission can be forecast using the number and quality of artifacts that appear. In order to make specific calculations, I will need to gather statistics. All we need to do is position a few scanners in the middle of anomalies of different types. + + + Sorry, but I'm not interested. + + + That's a pity. You could have served science. + + + OK, I'll help you out. + + + Excellent! You need to get the scanners from Novikov and position them in the anomalies marked on your PDA. When you're done, come back to see me - I have another matter that concerns scanners and measurements to discuss with you. + + + I'll think about it and come back later. + + + I put the scanners in the anomalies. + + + Excellent! I already have the first results. I can't wait for an emission - it will provide us with the necessary statistical sample... + + + I'm listening very carefully! + + + When I got near it and got the scientific detector out, everything around me began to warp, as if it was being compressed. Then, after a while, dead stalker bodies dropped out of thin air! Then it stopped. + + + That's incredible! Obviously, the information is devastatingly scarce and nothing can be deduced from that for certain, but we will enter this description in our records. We'll call the anomaly a Space Bubble! + + + Looks like you've got new guards? + + + Yes, they're quite nice. We feel very safe with them around. Thank you for your efforts - here's your reward. + + + Have a look at these documents. + + + Let's have a look... I won't ask how you got these, but this is simply incredible! Let me make a copy of this... Oh, by the way, here's your modest reward. + + + What happened to your guards? + + + I don't know, they just disappeared! + + + I have connections in the Zone. I could find you some new guards. + + + That would be wonderful! They will be given full scientific support and the latest technological developments in exchange for their work! You'll get a reward, too! + + + Deal! + + + I can't wait! + + + I've changed my mind. + + + That's a pity. + + + It happens. + + + Anything else? + + + Our guards were killed! Gunned down right outside our bunker! + + + I found some documents at the Jupiter plant. Would you like to have a look? + + + That's interesting, but not very useful. Thanks for your efforts anyway. If you find anything else, bring it here. + + + I was attacked by mercenaries while I was looking for documents. Here's their leader's PDA. + + + Wow, and I thought that they were here to protect us. Looks like I'll have to bring this up to my superiors... Thank you very much, young man. + + + Unfortunately, it doesn't contain any interesting information. + + + There is something: we need to find out about the latest developments made at the Jupiter plant. I really need the technical documents concerning these developments. You should probably look for them in the administrative part of the plant. + + + I'll look for them and bring back whatever I find. + + + No, I won't be able to help you with that. + + + I brought the documents back from Jupiter. + + + That's interesting, but not very useful. Thanks for your efforts anyway. If you find anything else, bring it here. + + + I was attacked by mercenaries while I was looking for documents. Here's their leader's PDA. + + + Wow, and I thought that they were here to protect us. Looks like I'll have to bring this up to my superiors... Thank you very much, young man. + + + I'll try to find the anomaly. + + + I haven't got time. + + + I'm here to see you about my participation in your research. + + + I know that I speak for all of the team when I say that we would be delighted if you agree to serve science once more. What are you interested in? + + + I would like to help with taking measurements. + + + You're really willing to assist us in carrying out a full external scan? + + + Yes, I'll help - tell me what to do. + + + No, I need to think things over again. + + + You mentioned positioning scanners. + + + I am trying to find the correlation between emissions and the appearance of artifacts in anomalies. I have a theory that the next emission can be forecast using the number and quality of artifacts that appear. In order to make specific calculations, I will need to gather statistics. All we need to do is position a few scanners in the middle of anomalies of different types. + + + OK, I'll help you out. + + + Excellent! You need to get the scanners from Novikov and position them in the anomalies marked on your PDA. + + + I'll think about it and come back later. + + + The scanners in anomalies are transmitting information. All we have to do is wait for the results. You can place a few more scanners in anomalies if you want. We could always use extra information and as your reward, we'll inform you when artifacts appear in anomalies. + + + I agree. + + + Excellent! You need to get the scanners from Novikov and position them in the anomalies marked on your PDA. + + + I'll think about it and come back later. + + + Unfortunately, we have a rule which prevents us from assigning more than one task at a time to the same person. I'm sorry but we have to stick to it. + + + Did you get the anomaly field measurement results from the squad I protected? + + + Oh yeah, your measurements clearly got mutant's and zombie's attention. It took some time and effort to fight them off. + + + Hrm, so you think they reacted to the scans? Interesting. Well, in that case, it looks like you're confirming Ozersky's hypothesis that mutants telepathically access various fields. I think it's worth discussing it with him. Here is your payment for the work you've done. You've earned it! + + + Hrm, so you believe they reacted to the scans? Interesting. Well, in that case it seems Ozersky's hypothesis that mutants telepathically access various fields is confirmed by you as well and you should probably tell Ozersky about it. It's a pity about the stalkers. A portion of our modest funds will be used to pay compensation to their families. The rest is your fee for the work you've done for us. Thank you! + + + Is there any way I could get a scientific suit? + + + No! The number of suits is strictly limited and I simply cannot afford to give them away! + + + What would you like to say to me? + + + Have you by any chance seen the people responsible for guarding our bunker? + + + Go on. + + + You won't believe it but someone killed our guards, right next to our bunker! + + + Do you need help? + + + We're trying to collect a new type of samples at the moment. They don't have any anomalous effect on their own, but experiments we conduct with them produce incredible results! + + + Keep going... + + + Cut the crap and tell me what needs doing. + + + OK... The stalkers who found the psy-field believe that it contains a mutant lair. I don't really believe them... I mean, no mutant other than a controller can survive in an intermittent psy-field! Don't worry, our boys will deal with the mutants. We need you simply because regular contact with psy-fields has reduced our stalkers' resistance to their effects. + + + Let me get this straight: you want me to go into an unknown psy-field and get you a sample of something that might not even be there, and if it is there nobody knows what it looks like? + + + Exactly! This mission is essential for science in general and for our team in particular. Your help would be invaluable. If you have any doubts, go see Ozersky. He will conduct the necessary analysis, which will identify your current resistance to psy-emissions. You can also ask our stalkers and they'll explain it all to you. So, are you willing to aid science? + + + Yes. + + + You don't know? Your stalker squad is dead. + + + Given that you failed to show up at the tunnel the last time, it will be very difficult for me to convince the team to work with you. + + + That was an accident. + + + I believe you, but our sample collection team is made up of peculiar people - you shouldn't let them down. I'll speak to them again and I should be able to persuade them into changing their minds. But don't fail me this time, I'm waiting for the sample. + + + Forgive me for this, but I must refuse. Your equipment is simply unsuitable for an intermittent psy-field - you will meet a swift and painful death, and I don't need that on my conscience. + + + I got you the sample. + + + Really? Show it to me, I can't wait to see it! + + + I got your sample and as it turned out there was a controller in the tunnel. It tried to take over your squad and almost succeeded. I managed to kill it before it did. + + + You're amazing! You killed a controller and saved the stalkers from a psy-attack... If I didn't know it was true, I would never have believed you! It's excellent experience and a fantastic sample. Your contribution to science is noteworthy indeed. Thank you from me personally, on behalf of my team and all the scientists of the world! + + + Unfortunately the squad was attacked by a controller. I had to defend myself. The controller is dead, but so are the stalkers. + + + A controller, you say? How terrible, who could have known? I mourn the loss of those brave boys... They were loyal servants of science. Even though they were not technically scientists, they did more for science than many professors! Thank you and please take this modest reward... + + + Unfortunately the squad was attacked by a controller. I barely made it out. + + + What are the mercs doing here? + + + Getting in my way. But that's my personal opinion. At first they kept asking me to fix this or attach that... And then yesterday they lost whatever shame they had left and started asking how our equipment works. I simply fail to see how that's going to help them guard the bunker. + + + What equipment modifications can you perform? + + + You can see, this is a scientific complex... There's no Kevlar or weapons for spare parts here. What I can do is patch up body armor or modify it using one of my personal developments. As you can imagine, I've got plenty of top notch equipment to spare. + + + Thanks to you and the sample you retrieved from the psy-field, Ozersky was able to come up with something to protect people from emissions. I converted his idea into something practical... that I can install in your suit if you want. + + + Well, other than the usual upgrades, I can offer you filtering and psy-protection modifications. After all, you were the one who helped to make them happen... Ozersky and Hermann were happy like pigs in shit! + + + Well, other than the usual upgrades, I can offer you isolation and psy-protection modifications. After all, you were the one who helped to make them happen... Ozersky and Hermann were happy like pigs in shit! + + + I've got the full range of mods: isolation, filtering and psy-protection. A suit that has all of those installed will allow you to walk into any anomaly... And you might even be able to walk back out. By the way, thank you for participating in Hermann's research. Without that, I wouldn't have all these options for you. + + + Tell me about your bunker. + + + Hrm. What do you wanna know? + + + What does the laboratory do? + + + I doubt even Hermann and Ozersky can answer that question. Obviously they do all sorts of research... But the end result is measly at best. Then again, you could have a chat with Ozersky... I was able to come up with a couple of decent suit modifications on the basis of his theories. + + + What do you know about the Zone? + + + Nothing in a scientific sense, but I've got a lot of practical experience of the Zone. The only thing of value here is something that increases your chances of survival. The Zone doesn't care whether you're a bandit or a stalker collecting artifacts to feed his family. Only those who are best suited to life in the Zone survive here. + + + How long have you been in the Zone? + + + A while now. At first, I was hunting for artifacts just like everyone else, but my health was declining steadily until I realized I just can't do it anymore. Thankfully, I've got a brain cell or two, so it's not difficult to find work. I spent about a year with a faction made up of former scientists. They were good people... it's a pity they died in a blind pursuit of some hazy goal. After that I spent some time wandering the Zone and then I started working for the scientists. No regrets so far. + + + That's all I wanted to know. + + + I'm planning to go into the intermittent psy-field. You got any advice for me? + + + What can I say? I doubt you're familiar with the informational-energy field theory... You can be sure that brief exposure to the psy-field is not dangerous... in the long run, anyway. But don't relax too much when you're in there. Those who underestimate psy-fields end up as zombies. + + + Can you break into a steel container? + + + That's not for me. I don't have the right equipment... And it's against our health and safety rules. + + + Can you decrypt a black box? + + + I can, but I'm not going to. I used to do that kind of thing... And I didn't like it. Too much hassle... I get enough work from the scientists. + + + What's special about the CS-3a? + + + Other than the fact that I designed it?... It's one of the best suits in the Zone. That's why you're wearing it, right? It's light, mobile and has solid army body armor at its core. I added the anomaly protection stuff myself... It's a pity that we had a shortage of materials in those days... But what else do you expect in the middle of a swamp... Still, all it would take is a couple of patches and you've got a real modern suit... I've got plenty of top notch equipment to spare, so that's no problem either. + + + Do you work for Owl? + + + No. He helped me get something the other day... A favor for a favor. + + + Owl asked me to bring you detectors. Here they are. + + + Good. I'll do some work with them and return them to Owl with the guides... Anything else is personal business between you and Owl. + + + Oh! So you were the one selling weapons to bandits at Zaton! + + + Shh... Are you crazy talking about that shit here? We don't know each other, you got that? + + + Got it. + + + How about I tell the commander about your little business on the side? + + + And what are you going to tell him? You got nothing on me. I mean, you were the one who helped to take out the witnesses. You got no proof, and you'll look like an idiot accusing me of stuff with no evidence. + + + I found a PDA on some dead mercs. It contains a contract to assassinate me. With you as the client. + + + I've had enough of you... Listen, give me the PDA and I'll give you an excellent weapon used exclusively by elite Duty troops. So, how about it? + + + OK, I'll take that shooter. + + + Keep it. I don't need handouts from a backstabbing snake! + + + I have another PDA with a contract to assassinate me. You're the client, again. + + + Damn it... Friggin' mercs... can't trust them to do shit... Listen, let's put an end to this... Here's what we'll do. The mercs are going to stop looking for you and you're gonna leave me alone. In order to compensate your losses, I will lead you to Duty's secret warehouse where you can take all the weapons you can carry. + + + OK, let's do that. + + + Good, let's meet there. The stash is next to the quarry. + + + I'm not going anywhere. You'll have to give me all that stuff right here. + + + I don't have anything here! I'm not that stupid! Either we meet by the stash or you don't get anything. + + + No, thanks. + + + I don't need handouts from a backstabbing snake! + + + I want to leave the Zone. + + + You sure? There aint no way back. + + + Im sure. Lets go. + + + Actually... Ill stay for now. + + + Lets have a look... Well, your liver is bigger than I'd expect, but that's an occupational hazard, right? Apart from that, youre as healthy as a burer. + + + It would be just about normal if it didnt glow. Its a scary thing, the way it is now. Go have a look for yourself... I doubt youll enjoy the visit though. + + + OK, its your choice. + + + "Former" Monolith fighters? Well, its your call... Will you vouch for them? + + + "Former" Monolith fighters? No, thanks. The last thing I need is a rabid mob of fanatics. + + + Hah. Good boy. You take care of your own, and that means you know you gotta keep my palms nice and greasy. So what have you got for me, an artifact or the 15,000? + + + I brought an artifact. + + + All right, which one? + + + I don't have an artifact worth that much. + + + Flame. + + + Goldfish. + + + Firefly. + + + Snowflake. + + + Hrm... None, for now. + + + Well, I've said what I had to say. Now I wanna hear you talk. + + + See ya. + + + Of course! The intermittent psy-field still needs to be studied, and the sooner, the better. Let me ask, how certain are you of the relative safety of this venture? We most positively need your assistance in obtaining a test sample. So, are you willing to help science? + + + I may be able to find a few good people to staff your new research group. + + + Indeed? Such help would be most welcome and, I suppose, warrant a reward. + + + All right. I will hire the right people. + + + I'll think about it some more. + + + Here it is. I found a controller in that tunnel. Then I killed him. + + + You're amazing! You killed a controller and obtained what we needed... If I didn't know otherwise, I would never have believed you! It's excellent experience and a fantastic sample. Your contribution to science is noteworthy indeed. On behalf of me personally and scientists everywhere, please accept my sincerest gratitude! + + + Here it is. I found a controller in that tunnel. I barely made it out. + + + A controller, you say? How terrible, but who could have known? The important thing is that you brought us the sample and thereby made a noteworthy contribution to science. Thank you, and please take this modest reward. + + + How do you like your new research group? + + + Oh, just fine. Competent young men, I must say. Please take this. We appreciate your, err, human resources skills. + + + Wassup, bro? Obviously, Im glad to see you, but I wouldnt mind being on my own for a while either. + + + Im here about the captive stalker. I want to buy him out. + + + And I want respect for the bandits and our rules, buddy, but I ain't interested in unnecessary trouble either... 15,000 or a suitable artifact will do for now... I'm a fair man - I won't take more than I'm owed. + + + Heres the cash. + + + OK... I respect what youre doing. Take this loser and tell the stalkers that next time the price will be higher. + + + I don't have that much on me. + + + OK, you aint got shit, what else is new? + + + I havent got anything suitable at the moment - Ill come back later. + + + Lets have a look... Well, theres nothing of strategic importance here, but it could come in handy. Ill buy all of these at 500 per document. Deal? + + + Let's have a look. Holy crap... This info would damage Dutys reputation... a lot! Ill buy it for 4000. + + + Interesting. Well, I would be prepared to purchase it from you for 2000. + + + Yes, but the price is the same as before: 2000. + + + OK, see you. + + + But thats terrible! What on Earth could have happened to them? Hrm... Mutants are a possibility. Ill have to ask Ozersky which type of monster it could be... Hrm. Nonetheless, the psy-field needs to be studied. This mission is essential for science in general and for our team in particular. We badly need your help with acquiring a sample. If you have any doubts, go see Ozersky. He will conduct the necessary analysis, which will identify your current resistance to psy-emissions. So, are you willing to aid science? + + + Ill think about it. + + + Our research team, made up of local stalkers, recently found a psy-field that is highly unusual. According to our theories and the measurements taken, the nature of this field is such that it has intermittent psy effects, as opposed to emitting them permanently. + + + Unfortunately, our research team is dead, and until we find a replacement, there's no chance of taking any measurements. + + + Please wait... Would you be so kind as to give me a moments attention? + + + What are the anomaly scan results? + + + You got any other work for me? + + + Ive heard of it. + + + Unfortunately, I have not been able to convince Hermann to equip a search team yet... I admit, the rumors about this phenomenon are too contradictory, but something tells me that the Oasis exists. My intuition rarely lets me down, so if you can find it and bring me proof of its existence, I would be extremely grateful. + + + I would look for it, but Ive already been to the Oasis. + + + Hrm... Err... I think I must have misheard you. What did you say? + + + I'm here to pay Vanos debt. + + + Yeah, I remember him. His debt ain't small and with the juice running it's up to 7 Gs. + + + OK, here. + + + Tell Vano he don't owe us anymore. + + + OK. + + + I dont have that much. + + + Come back when you do. + + + Interest wasnt part of the deal. + + + What are you talking about? Do you take me for a sucker - lending out cash without charging interest? Its 7 Gs and thats the end of it. + + + Think carefully now. Ive got my shooter here and I dont mind using it... Tell me, what is your corpse gonna do with all that interest? + + + OK, OK, calm down chief! Im sure we can come to an agreement. Just pay me 5 Gs and thats his debt settled. + + + Hah... shove that pea shooter up your ass, punk! Its 7 Gs including interest. End of story. + + + Did you forget me? Ive still got the shooter. + + + I prefer to shoot you down for free. + + + Ill think about it. + + + 7 Gs, including interest. + + + I aint up for any big jobs right now. I need to get my shit together... You know, I might even go home... find a proper job and forget these damn artifacts... I just don't know how I'd leave Grizzly... and Torba... We're real close now, always helping each other out... I don't know, maybe I just need to rest and get my head on straight... + + + I aint up for any big jobs right now. Im gonna work for the scientists and get my shit together... You know, I might even go home... Find a job on the outside... Ah, I dont know. I need to just chill and get my head on straight... + + + So, you ready to save Mitay? I hope you dont mind working together with some fellas I hired... + + + I have the PDA of Dutys trader, Morgan. You interested? + + + I have a PDA which proves that Morgan has links to the mercenaries. + + + Actually... Im gonna keep it. + + + I knew that the desire to advance science and do good in the world would triumph inside you in the end! All right, here is the plan. A stalker research group will take the measurements. Your job is to escort them, that is to protect them and guide them through difficult terrain. Good luck. The stalkers are waiting for you outside. + + + Howdy, stalker. Surprised to see an old man here? He-he. I came here with the boys for a change of scenery. I fix equipment and sometimes people too... + + + Now that youre here, what can I do for you? + + + How did you get to Pripyat? + + + Garry showed me the way. Those stalker fellas have been planning to come here for a long time, but they didnt feel like dealing with the military. As soon as Garry said the army had taken off, I didnt think twice about it. Have no fear, Uncle Yar is here! Hah! + + + I need medical assistance. + + + Let this old man have a look... + + + There we go, youll live. If you get any swelling, just take a leak on it - I hear that helps. + + + You look healthy enough to me! You must be pulling an old man's leg, hah... + + + Welcome to my humble abode of pleasure and joy. You after joy, pleasure or both in equal measure? + + + Well, the boys are always saying that I'm too kind, like a fairy godmother, so you best be happy about this... I aint gonna be so kind next time. Now get out of here, loser! + + + Ive been there already. The bandits are dead. + + + Wow, youre hardcore! Thank you so much! Here, take this money - it was meant to pay the debt off but now itll go to someone who actually deserves it. + + + Wow, youre hardcore! Thank you so much! Keep the money that was meant to pay off the debt. Now itll go to someone who deserves it! + + + Our scanners registered unusual activity north of here... Judging by the received data, I expect that the anomalous formation there is unstable. Unfortunately, I cant say any more than that from here. We need to conduct research in the field... The only thing I can say is that regular stalker detectors wont be able to detect the anomaly - youll need a Svarog, one of our own inventions. + + + Scanners continue to register unstable anomalous activity north of here. If you have something better than a regular stalker detector, a Svarog, for example, you could try to conduct research in the field. + + + Only from the swamp anomalous area so far. Despite this, Novikov has already found a practical application for it. Thank you for the work you have done and we look forward to the second batch of results. + + + Only from the anomalous area beyond Kopachy so far. Despite this, Novikov has already found a practical application for it. Thank you for the work you have done and we look forward to the second batch of results. + + + Of course. I received the full results. To be honest, the volume of data that was produced is so great that it will take weeks if not months to process it fully. Despite this, Novikov has already found excellent practical uses for it. Thank you very much for your help. + + + No, nothing like that has happened here. Hrm... I did see one suspicious guy very recently though. I went for a walk and on my way back I spotted a stalker leaving Yanov. As soon as he clocked me, he started being rude for no reason and said something about knowing where I live or some shit like that. I just ignored him at the time, cause I thought he was drunk or something but now that I think about it, its pretty dodgy. + + + Where did he go? + + + North-east. I heard some shots being fired over there but thats pretty normal around here. Ask Zulu - hes in his tower day and night, so he might have seen something. + + + North-east. He probably went to the substation. + + + I see. + + + Whats up, friend? + + + How are you doing? + + + Im doing good. I mean, it aint easy but well make it out of here. Together we can do anything! + + + How are you doing? + + + Im not sure... I dont feel great here. I have a feeling I need to move on. I might leave soon...dont hold it against me. + + + I wiped out the bloodsucker lair at Zaton. Completely. + + + [continue...] + + + [continue...] + + + [continue...] + + + [continue...] + + + I need people to take measurements in anomalies. + + + I need measurements to be taken in anomalies. + + + Whos that sleeping beauty? + + + You found the artifact? + + + You bet! There's nothing to do here - all we've got for entertainment is this backgammon board. This isnt Pripyat... Man, if only I could complete this friggin contract, thats where Id be! + + + [continue...] + + + You can go to the quarry - thats where Splinter died. Just before he passed on he told me that Flint stole his loot and left him to die in an anomaly. + + + His name was Splinter. He walked into a gas anomaly and you ran off with his artifact. As you can see, he was able to tell me everything before he died. + + + Im not going to ask where you got this from. Lets make this simple: Ill buy this PDA from you for 4,000. Ive long been curious as to what our supply officer is doing when hes not at work... + + + Lets have a look... Wow, what a piece of shit! Not only was he selling them our weapons, he handed the warehouse over to Freedom!!! Damn, well have to organize a friendly meet & greet team right away. + + + Lets have a look... I don't believe this shit! We knew about the warehouse and we even planned to pay a visit, but we didn't have a clue about the alarm because that scumbag didnt say a word about it. Wait a second, Ill warn the boys. + + + Well, Ill give you 4,000 out of pure curiosity. + + + Well, he ain't exactly a storm trooper but he can handle a gun just fine. Hes always got a sour look on his face though, as if his rations aint nothing but lemons. + + + I found a strange anomaly at the old cooling tower. + + diff --git a/gamedata/configs/text/eng/st_dialogs_pripyat.xml b/gamedata/configs/text/eng/st_dialogs_pripyat.xml new file mode 100644 index 0000000..a5a1381 --- /dev/null +++ b/gamedata/configs/text/eng/st_dialogs_pripyat.xml @@ -0,0 +1,906 @@ + + + + Hah! That showed 'em! Thanks for helping me out. If it weren't for you, those bastards would've gobbled me up before long. You know, you're a good stalker, after all... Sorry I got in a huff back there, but you could have told me that you're USS earlier. + + + No problem. We better make for the military camp - it's safer there. + + + Yeah, it's bound to be better than wandering around Pripyat on my own. + + + Let's go, then. + + + I've got some business to finish up here, but you go ahead. The camp is in the laundromat building. + + + Time for me to go. + + + Wait... Take this... It's the most reliable MG in the Zone. + + + Wait, don't you need it anymore? + + + I'll always have something to fight off a couple of mutants with. Plus I've decided to go back - Garry will be taking me to Jupiter. So you'll need it more. Take it and use it well. + + + Good luck to you. + + + Thanks, it's a great weapon. + + + Hah! It's not great, it's the best in the Zone. It's modified, so it's a touch on the heavy side, but then you don't need to run when you've got that kind of cannon on you - let the enemy do the running! + + + Bye. + + + Cool! + + + Do you know where Zulu went? + + + He left... He asked me to take him to Jupiter and we parted ways not far from the plant. He didn't tell me where he was going. + + + Wait... I had a rather unpleasant experience I wanna share... Some mercs asked me to lead them to Pripyat. Initially they won me over with a juicy fee, but I soon realized I was in the brown stuff... They didn't let me out of their sight for a second and threatened me at gunpoint. I managed to escape as we approached Pripyat but they're bound to be in the city by now, so be careful. + + + Did you hear what the mercs were talking about by any chance? + + + Some of it, yeah. They clearly had no intention of letting me live, so they didn't conceal their plans. They were mainly discussing meeting the client's people, who were going to show them the object and the purpose of their mission. + + + Where is the meeting going to happen? + + + Nearby, in the yard of the apartment complex. + + + Thanks for the information. + + + You mentioned the mercs - did you hear what they were talking about? + + + Some of it, yeah. They clearly had no intention of letting me live, so they didn't conceal their plans. They were mainly discussing meeting the client's people, who were going to show them the object and the purpose of their mission. + + + Where is the meeting going to happen? + + + Nearby, in the yard of the apartment complex. + + + I've made some arrangements with the scientists about a suit - go see Hermann about it. + + + OK... Where's the meeting point? + + + Near Yanov station, at Zulu's place. + + + It's full of stalkers! How about you take me there, because if I show up on my own there could be trouble. If you're with me, they won't shoot because they know you. + + + Which evacuation point did you go to? + + + Sorry, I can't discuss that - it's classified. + + + Let's go see Zulu. + + + OK. But first we'll need to go see Hermann to get the scientific suit. + + + Let's go. + + + I'd go... But there's an emission out there. Let's wait a bit? + + + How did you end up here? + + + My helicopter crashed onto a Jupiter workshop and went through the roof. I'm the only survivor - I managed to get out of the Jupiter plant and make my way to the nearest evacuation point, but there was nobody there. Then I met Garry and he led me to the bunker. + + + You'll need a suit with a closed-cycle respiratory module to get to Pripyat. + + + What do you do here? + + + My orders are to proceed to the evacuation point, but the Zone is too dangerous. I'm a pilot, not a storm trooper! That's why I'm waiting here in the hope that I'll be collected once the operation is completed. + + + I'm putting a squad together to go to Pripyat with. Wanna join me? + + + Pripyat? You know, I think I will... Maybe some of our guys survived and made it there... There's an evacuation point in Pripyat, so that's actually my destination. I'd never make it on my own, but I'm willing to give it a go together with your squad. + + + Are you ready to go? + + + I guess you could say that. + + + Hello, stalker. + + + Hey. + + + Hello. + + + Hello, Major. + + + Where did you get a military uniform? + + + Heh... Well, I guess everyone knows that the military helicopters crashed by now... I'm Lieutenant Sokolov, copilot of one of the helicopters. + + + About that sentry... + + + His signal is coming from the old grocery store, but he's not responding... Maybe he lost his radio... It's hard to be certain at this point. We need to find him... + + + Thank you, Colonel! I think I'll manage. + + + About that sentry... + + + Well... It's all because of that controller... That's probably what happened to the recon squad, too. It made them shoot each other... Those creatures are some of the worst in the Zone, plus we have not been trained to fight them. The controller came as a complete surprise to us and we've lost men yet again... + + + At least this controller has been dealt with. + + + I hope things calm down a bit now... I'm grateful for your help, Major. I suspect you must have used a lot of ammunition in the course of this mission... Find Lieutenant Kirillov and ask him to issue you with the necessary kit. + + + Thank you, Colonel! + + + Don't worry, Colonel... I'll deal with that mutant. + + + Can you give me more details on the mission? + + + Who is he? + + + If we don't find the source of interference soon, we'll have little left to do but wait and die. The first mass Monolith attack will tear the military into shreds... And the operation will result in definitive failure... + + + I'll try to find the source as soon as possible. + + + So, Major? Did you find the source of radio interference? + + + No, I'm still working on it... + + + Garry told me about the incident with the mercenaries... + + + Yes, he told me about it too... As soon as Garry escaped he came here in fear of being pursued. Fortunately - both for him and for us - the mercs didn't track him... We're watching the place where the mercs and the client's people are supposed to meet, but it's all quiet... I'd love to know what the mercs are after here... + + + I have information that the mercs are looking for a secret laboratory in Pripyat. + + + A secret laboratory, here in Pripyat? But where did you get this information? + + + From a merc notebook in Zaton. It's also confirmed by a story told to me by a stalker called Uncle Yar. + + + Hrm... Do you know anything else? + + + They're looking for the central laboratory. I was able to find out its coordinates during my investigation. + + + If this is true, it means that we've got another enemy on top of the zombies and fanatics... We need to decide on a course of action. + + + We must observe the meeting and eliminate the client's representative, if possible - that will ensure that nobody goes to the X8 laboratory for a while. + + + That's a good solution in that although we won't find out who else knows about the laboratory, we'll at least make sure the mercenaries don't reach it. At the same time, the mercenaries will react fast and they'll be a threat to us. Try to kill both targets if you can. I'll order Lieutenant Kirillov to go with you. + + + OK. + + + Wait, maybe we should choose the other target. + + + Decide which target is the priority. + + + We need to eliminate the mercenary leader - do that and the beheaded merc squad won't be much of a problem anymore. + + + That's a decent solution, but the messenger will probably escape and then hand over the information about the laboratories somewhere else, so that the mercenaries will still reach it eventually. Try to kill both targets if you can. I'll order Lieutenant Kirillov to go with you. + + + I don't have the time for this. + + + From a merc notebook in Zaton. + + + A story told to me by Uncle Yar, a stalker from Yanov station. + + + About the mercs... + + + Great job - both targets have been killed. Now the mercs won't get in our way and will avoid needless interest in the lab. You can keep the rifle. Here's some more ammo for it. + + + Good, now that the leader is dead, the mercenaries won't be a problem for us. But, seeing as the client's people made it out, they could show up at the lab. Stay alert... You can keep the rifle. Here's some more ammo for it. + + + Good - now that the person who knew the location of the laboratory is dead, the mercenaries won't find it. Then again, I doubt they'll be leaving Pripyat and that means they'll be a constant threat to us. Stay alert... You can keep the rifle. Here's some more ammo for it. + + + So, you changed the target at the last minute? Well, it was a decent decision. Now that the leader is dead, the mercenaries won't be a problem for us. But, seeing as the client's people made it out, they could show up at the lab. Stay alert... You can keep the rifle. Here's some more ammo for it. + + + So, you changed the target at the last minute? Well, it was a decent decision. Now that the person who knew the location of the laboratory is dead, the mercenaries won't find it. Then again, I doubt they'll be leaving Pripyat and that means they'll be a constant threat to us. Stay alert... You can keep the rifle. Here's some more ammo for it. + + + That didn't go so well. The mercenary leader is alive and so is the client's man. Now the mercs know about us and they'll be as much of a threat as the Monolith forces. On top of that they now know the laboratory location, so it's only a matter of time before they show up there. Stay alert... You can keep the rifle. Here's some more ammo for it. + + + Get your soldiers ready, Colonel. I'm good to go. + + + OK. Cover Strelok, Major. We'll take care of ourselves. + + + So... Among us you and Strelok have the most experience in the Zone. The difference is that while Strelok's experience remains hearsay, the fact that you're a pro is clear as day. What's I'm trying to say is that I'm counting on you, Major. Keep an eye on Strelok - there's not many of us left. + + + The squad is ready to move out. We're just waiting on you, Major. + + + Looks like the crazies are all dead. Grab that rifle and let's get the hell outta here while we can. + + + Makes sense to me. + + + I'm ready, let's move. + + + OK. The squad is ready. + + + Move out. + + + We'll have to wait. I don't want to lose men in the emission. + + + I'm Captain Tarasov. You may be a Major, but I'm in command here and that means my orders are not up for discussion. The lives of every man in the squad depend on that. The plan is as follows: we get in position in the western section of the hospital and wait for the Monolith forces to show up. We have to work quickly to make sure we don't attract unnecessary attention. + + + Roger, let's go. + + + OK. The squad is ready. + + + Move out. + + + We'll have to wait. I don't want to lose men in the emission. + + + Wait, Captain, I'm not ready yet. + + + Anything new on the interference front? + + + I identified many sources, one of which is somewhere close. If it is destroyed, we may well be able to communicate with HQ. + + + I have worked out the coordinates of the source of interference. It must be some sort of specialized, high frequency or even microwave transmitter. + + + The device you destroyed was the source of interference - there are probably loads of them, but we've already established comms with HQ. + + + Tell me about the signal. + + + The signal keeps appearing and disappearing, but every time it shows up again it's closer to the base. + + + Is that it? + + + Not quite - the thing is that the signal is being transmitted on frequencies that are rarely used for radio communication. + + + I see. + + + Take this shooter and ammo... You can chill for now - I'll watch the position from the other side and contact you as soon as they show up. + + + OK. + + + Greetings. I'm Lieutenant Kirillov. I am responsible for weapon maintenance and ammunition storage. + + + You got any ammo? + + + Yeah, we broke into a Monolith warehouse the other day and it was full of ammo for every type of weapon you get in the Zone... I wonder how they get so much weaponry in here... I'm guessing one of the perimeter guards must be selling it to them... + + + So you can repair my shooters, too? + + + Of course. We were trained to repair all kinds of weapons. + + + I see. + + + Greetings. + + + Where did this headache come from... + + + Here it is, the moment of truth - I wonder if we'll make it out or not... + + + I need ammo. + + + No problem... What exactly do you need? + + + 9x18 pistol ammo... + + + Here... Anything else? + + + Here... + + + 9x19 pistol ammo... + + + 11.43x23 pistol ammo... + + + Shotgun ammo... + + + 5.45x39 assault rifle ammo... + + + 5.56x45 assault rifle ammo... + + + 9x39 assault rifle ammo... + + + Sniper rifle ammo... + + + MG ammo... + + + I can't issue you any more, Major... The Colonel's orders are to conserve ammunition. + + + OK, forget about it. + + + I need grenades. + + + No problem... What kind? + + + Hand grenades. + + + Here... + + + VOG-25 launcher ammo. + + + M209 launcher ammo. + + + Actually, never mind. + + + I can't issue you any more, Major... The Colonel's orders are to conserve ammunition. + + + I need medical assistance. + + + I'm always glad to help. Let's have a look... + + + That's you, healthy and good to go. + + + How do you feel after what happened? + + + I'm OK now... I was in a state of shock after kindergarten, but as soon as the emission started I snapped out of it pretty quick... + + + Greetings. + + + The main thing is reaching the helicopters. + + + I need medical supplies. + + + Let's see what I've got. Here, take this... + + + Sorry, I don't have much left, so I can't give you any more. + + + We monitored your radio signal. + + + Yes. I contacted a stalker called Guide. He told me how to get to this place via the underground tunnels. + + + Who is Guide? + + + He's a legendary stalker - they say he can lead you anywhere in the Zone... The army boys are lucky to have met him - they wouldn't have lived long without him. + + + How did you know that the military are here? + + + Guide told me - he was the one who brought Kovalsky and his squad here. + + + I see. + + + What information do you want to hand over to the Government? + + + Lots of things... I'm sure that the information I have can be used to destroy the Zone. I thought I could do it myself... But it turned out to be far more complicated. The people who started it weren't in control anymore... I'll explain everything when we get out of here. + + + What did you see in the sarcophagus? + + + It's all fake... The Monolith, the Wish Granter, is just a lie, a device that clouds your mind. And the people behind it are hiding out somewhere else... + + + Do you know who is behind it? + + + Maybe yes, maybe no... I don't know what to believe anymore... Despite that, I found out more than they wanted me to. + + + OK, enough about that. + + + I'll share everything I know. As long as this information reaches the right people. + + + I found your group's stashes on the way here... + + + I wonder how you managed to find them... There should have been some records inside, did you find any? + + + Yes, I found these three notes. + + + Thank you... Ghost and Fang were my friends... Together we managed to get past the Scorcher and reach the CNPP. Unfortunately, they both died. After our return, we parted company - I was wounded and stayed with the Doctor at the swamps. I didn't see them again... It wasn't until much later that I had learned that Fang was killed by mercs and Ghost died because he trusted the scientists... Anyway, that's the past... Now I know what needs to be done to make sure that my friends did not die in vain. + + + Yes, here is your message to Ghost. + + + Thank you... Ghost was my friend... Together with Ghost and Fang we managed to get past the Scorcher and reach the CNPP... After our return from the center, we parted company - I was wounded and stayed with the Doctor at the swamps. I didn't see them again... It wasn't until much later that I had learned that Fang was killed by mercs and Ghost died because he trusted the scientists... + + + Yes, here's Fang's note to you. + + + Thank you... Fang was my friend... Together with Ghost and Fang we managed to get past the Scorcher and reach the CNPP... After our return from the center, we parted company - I was wounded and stayed with the Doctor at the swamps. I didn't see them again... It wasn't until much later that I had learned that Fang was killed by mercs and Ghost died because he trusted the scientists... + + + Yes, here is your message to Fang. + + + Thank you... Fang was my friend... Together with Ghost and Fang we managed to get past the Scorcher and reach the CNPP... After our return from the center, we parted company - I was wounded and stayed with the Doctor at the swamps. I didn't see them again... It wasn't until much later that I had learned that Fang was killed by mercs and Ghost died because he trusted the scientists... + + + Yes, here's your note to Ghost and Fang's note to you. + + + Thank you... Ghost and Fang were my friends... Together we managed to get past the Scorcher and reach the CNPP. Unfortunately, they both died. After our return, we parted company - I was wounded and stayed with the Doctor at the swamps. I didn't see them again... It wasn't until much later that I had learned that Fang was killed by mercs and Ghost died because he trusted the scientists... + + + Yes, here's your note to Ghost and another one to Fang. + + + Thank you... Ghost and Fang were my friends... Together we managed to get past the Scorcher and reach the CNPP. Unfortunately, they both died. After our return, we parted company - I was wounded and stayed with the Doctor at the swamps. I didn't see them again... It wasn't until much later that I had learned that Fang was killed by mercs and Ghost died because he trusted the scientists... + + + Yes, here is your message to Fang and his message to you. + + + Thank you... Fang was my friend... Together with Ghost and Fang we managed to get past the Scorcher and reach the CNPP... After our return from the center, we parted company - I was wounded and stayed with the Doctor at the swamps. I didn't see them again... It wasn't until much later that I had learned that Fang was killed by mercs and Ghost died because he trusted the scientists... + + + Yes. Unfortunately, I don't have them on me. + + + Let's have a look... Youre in trouble Major... I mean, youd probably pass the Space Program medical exam, but apart from that youre in terrible shape! Hah! + + + Come on, Major. The Monolith people wont wait. + + + Major, were missing a sentry - he left his post. His beacon signal is coming from the grocery store but hes not responding. God knows what happened there. He might have freaked out - the helicopter crash shook the kid up real bad. Will you check out the beacon signal for me? + + + I will. + + + I cant promise anything. + + + Major, we need to find the recon unit. + + + You and the assault squad need to proceed to object A17 - Captain Tarasov will show you. The target is two hospital wings connected by a passage. Monolith fighters are currently in the western wing. You are to set up an ambush in the other wing. They should have the rifle with them, probably carried by the biggest crackpot. + + + Hes probably that squads leader. The boys saw him giving his fighters a sermon. Literally! Be careful - who knows what you can expect from him? + + + Roger, Colonel. + + + Greetings. I am Colonel Kovalsky, commander of this unit. + + + Im Major Degtyarev, USS. Im authorized to investigate the failure of Operation Fairway. + + + I see. Then listen up, Major. Operation Fairway went down the pan together with our choppers. Half my boys are dead and we aint got comms with HQ. I want to know why the operation failed as much as you do. + + + Any ideas? + + + My only idea is that the helicopters were shot down. Shot down using an extremely powerful weapon that we don't know much about. Monolith fighters used one against us during the first assault on the CNPP... Im planning to capture one of these weapons and investigate. If you want in on the action, the Monolith squad carrying this weapon has been tracked down, and the assault team is waiting for my signal to begin the operation. What do you say? + + + I agree on the condition that you provide me with all the information youve got and give me complete freedom of action. + + + I have info on the unidentified weapon, the Gauss rifle. + + + Wow! How does it work? Can it be used to shoot down a helicopter? + + + Technically it can, but the accelerated bullet would have left holes in the choppers, and there werent any. + + + Damn... Thats a dead end, then. I dont have any other ideas. All we can do now is sit on our asses in the middle of this friggin Zone and hope that theyll come for us... OK, thats enough whining from me. Lets concern ourselves with things we can affect here and now. Thanks to you we now know that hiding in cover isnt gonna keep us safe from those accelerated bullets, and thats already something. So thank you, Major. Ill contact you if we get anything new. + + + Technically it can, but Stingrays 4 and 5 crashed due to electronic malfunctions. Accelerated bullets couldnt have done that. + + + Hows the operation going? + + + Sergeant Morozov was killed. Monolith fighters led us into a trap by sacrificing their own people. + + + Bastards! They couldnt have known about our plan... So weve lost our sniper. What about the aim of the operation? + + + We took some losses... Monolith fighters led us into a trap by sacrificing their own people. + + + Bastards! They couldnt have known about our plan... So weve lost some men. What about the aim of the operation? + + + The squad is dead... Monolith fighters led us into a trap by sacrificing their own people. + + + Bastards! They couldnt have known about our plan... So weve lost Tarasov and his men. What about the aim of the operation? + + + I got the weapon. It was damaged during the fighting. + + + So we cant determine whether it was used to shoot down the helicopters. Listen, Major: youve got connections among the stalkers. Its possible that theyve come across this weapon before. They should have technicians among them. Will you try talking to them? + + + OK. + + + Good... Oh, by the way. Another stalker made it here from Jupiter - have a chat with him first, if you feel like it. + + + Im still working on it. + + + I see. Major, we need that weapon. Im sure you understand how important this is. + + + Uh-huh. + + + I found your note at the Volkhov AA complex. Take it. + + + Listen... Oh, never mind. I dont think any of our people will show up at the location anyway. If you do spot any military around here, let me know, OK? Thanks in advance... + + + Major... Thank God! Im saved! + + + How did you end up here? + + + Err... I dont remember much... I was so scared I could barely think and I dont even know what scared me. I just had a feeling I had to hide, so I ran... I remember streets, turnings somewhere... I came to in this hole. The door was locked from the outside... I thought I was gonna die in here. How did you find me? Actually, lets get the hell out of here and get closer to the base. This place is giving me the willies... + + + Lets go. + + + Hi. You need medical assistance? I'm not a doctor, but I can remove bullets and sew up wounds if it comes to that. + + + I need information. + + + Ask away. + + + About Operation Fairway... + + + What about it? + + + Did something unusual happen while the helicopters were in the air? + + + Not until the choppers started crashing. We stuck to the operation plan: took off 90 seconds before the emission, activated our protection system and put the birds on autopilot. We were following the shortest safe route, calculated using the anomaly map. The fact that we had zero visibility shouldnt have affected the mission because the corridor was wide enough. According to the plan, we should have reached the power plant in twelve and a half minutes. After nine minutes we lost comms with Stingray 4, and then the others started dropping like flies. + + + I have a few more questions about the operation... + + + What happened to the helicopters? + + + Not much. Stingray 2 and 4 are a complete mystery. I dont know where they crashed or what happened to the men on board. Information about the other choppers comes from the men who made it out, so dont expect an accurate picture. We had other things to worry about. + + + Tell me about Stingray 1. + + + How did you get here? + + + We met a stalker not far from the minefield. I think he must have heard the mine exploding. A strange guy... called himself Guide. He didnt ask any questions and just offered to lead us to Pripyat. That suited our plan, so I agreed. We kept him in our sights just in case, but everything went smoothly... He didn't say a word until we reached the city, and when we did he just disappeared without warning. I ordered my men to leave him be. + + + Tell me about Stingray 3. + + + Captain Tarasov says that both engines failed. They had to land on the hill around position B2. They were lucky in that they had a soft landing, but the technician didnt have time to identify the cause of the malfunction because they were attacked by snorks and lost three men. The others decided not to stick around - they contacted Stingray 5 and went to meet them. They got into a fight with a well-armed enemy squad on the way, but managed to get out of there without taking losses. + + + How did they get to Pripyat? + + + The crews of Stingrays 3 and 5 managed to link up not far from the crash locations near some sort of barge. It was reported to me that the man who lived there was crazy as a loon: when my men tried to detain him, he tried to detain them! I mean, the poor bastard was outnumbered eleven to one. Anyway, chancing upon this stalker turned out to be a fortunate development, as the parties managed to come to an agreement, and he led the whole squad to Pripyat almost unharmed. The only casualty was Lieutenant Stetsenko, who lost a couple of toes in a gravitational anomaly on his way here. + + + Tell me about Stingray 5. + + + The electronics malfunctioned and Stingray 5 dropped straight into a swamp. Five men survived the crash. They were contacted by Stingray 3 as they were getting their equipment out of the chopper. The squad commander, Major Neborsky, died on the way to the meeting point. Poor bastard was killed by a bloodsucker near the scanning station... The others made it without any problems. They lost another man, Senior Sergeant Batyai, one of the snipers, when they reached Pripyat and got into a fight with Monolith forces. + + + How did they get to Pripyat? + + + The crews of Stingrays 3 and 5 managed to link up not far from the crash locations near some sort of barge. It was reported to me that the man who lived there was crazy as a loon: when my men tried to detain him, he tried to detain them! I mean, the poor bastard was outnumbered eleven to one. Anyway, chancing upon this stalker turned out to be a fortunate development, as the parties managed to come to an agreement, and he led the whole squad to Pripyat almost unharmed. The only casualty was Lieutenant Stetsenko, who lost a couple of toes in a gravitational anomaly on his way here. + + + Not much. Stingray 2 is a complete mystery. I dont know where it crashed or what happened to the men on board. You should know more about Stingray 4 than I do. Lieutenant Sokolov, the one that came here with you, is the only survivor from that chopper. Information about the other choppers comes from the men who made it out, so dont expect an accurate picture. We had other things to worry about. + + + Not much. Stingray 2 is a complete mystery. I dont know where it crashed or what happened to the men on board. You can ask Lieutenant Sokolov about Stingray 4 yourself. Hes the only one from that choppers crew who made it to Pripyat. Information about the other choppers comes from the men who made it out, so dont expect an accurate picture. We had other things to worry about. + + + I need other information. + + + I dont have any more questions. + + + Whats the situation in Pripyat? + + + As shitty as it gets. Pripyat is crawling with a mixture of Monolith fanatics and zombies. Emissions hit one after another, and theres always mutants and anomalies to watch out for... Welcome to Hell. + + + How are you doing for equipment and supplies? + + + Tell me about the Monolith. + + + Theyre fanatics, pure and simple. I dont know whats spurring them on but theyre constantly looking for a fight. They dont retreat even if theyre outnumbered and outgunned... And thats pretty rare for this place. It looks like theyre getting regular reinforcements from the CNPP. Screw them, weve already lost some fine men to their attacks... + + + Have you tried interrogating one of them? + + + Its useless. First of all, they fight to the death. Then our boys managed to get one alive when he was stunned by a grenade, but it didnt help much. We took our eyes off him for a second and he banged his head against the wall so hard that his skull cracked open like an egg. + + + What are you going to do now? + + + I dont believe its possible to go ahead with Operation Fairway. Your presence here confirms it. My plan is to hold the base until the choppers show up. I have several possible evacuation dates. + + + There wont be any choppers until we know what caused the Stingrays to crash. + + + So thats how it is... Well, we cant make it out of here on foot! God knows how many miles of this shit, and then the Zone is full of stalkers who arent exactly our best buddies. That means our only choice is to conduct our own investigation, and not buy the farm in the process. Major, we're working towards the same goal here. + + + Not now. + + + Im listening, Major. + + + The only equipment we have is what we carried here ourselves. Oh, we also managed to seize some Monolith stuff, mainly ammo. That means were extra careful about issuing what we have. Same thing with food - all we got is rations and some chow from the Monolith warehouse. + + + The only equipment we have is what we carried here ourselves. Oh, we also managed to seize some Monolith stuff, mainly ammo. That means were extra careful about issuing what we have. As for supplies, its pretty much the same thing except Ive made a deal with Garry. He brings us canned food and we let him stay in the base and look the other way when hes out looking for artifacts... Its not like we have any other choice anyway. + + + We avenged our boys... Do what you need and lets go back. I dont feel like hanging around here. + + + Lets not waste any time here, OK? I want to get back to the base, ASAP... + + + OK. + + + Theres that strange thing over there! What do you reckon they need it for? Ah, never mind. Come on, buddy, do your stuff and lets get back to base. + + + You done here? I vote for heading back to the base and getting some chow... + + + OK. + + + How are you doing? + + + Shit. Its nice to be with your own kind, but I dont take much heart from being together with other people in one big shithole. + + + Ive not seen you here before. Did you get here recently? + + + Yes. Im Lieutenant Sokolov, copilot of Stingray 4. + + + How did you get here? + + + I came with a stalker called Garry. I asked him to take me with him when he was looking for a way to Pripyat. It was some trip, believe you me! Its a good thing we ran straight into our recon team as soon as we got to Pripyat. + + + What happened to Stingray 4? + + + Who the hell knows? I had a bad feeling about the whole thing... We were flying on autopilot, the equipment was fine, and then suddenly we were flying in a piece of scrap metal with all the electronics disabled. Me and the pilot tried to reach flat ground but it didnt work. We fell straight into the main workshop of the Jupiter plant, right through the roof... I was the only one who made it. + + + I need body armor. + + + OK. Heres the helmet, to start with... Now armor - I hope its your size because we dont have any other size anyway. I patched it up, so it should hold up. + + + Of course, Major... Given the circumstances, I don't have much of a choice... By the way, go see Lieutenant Kirillov. Hell issue you with some equipment. + + + About the helis... + + + Im listening. + + + Man, thats crazy stuff... I can see Kirillov begging me for aspirin later on. + + + Waiting is the worst part. It just grinds you down like nothing else... + + + OK, Major, the boys are good to go. Stock up by visiting Rogovets and Kirillov if you need. Let me know when youre ready. + + + OK. + + + Move out. + + + Well, in that case we need it to be rock solid, like the ones the scientists have. Then again, talking Hermann into giving me a suit isnt going to be easy. I get the feeling he'd rather I walk bare-assed to the edge of the Zone than take up precious room in their bunker... You could ask Ozersky, I guess. He's a bit nicer and he might agree to issue me with a suit. + + + So, Major? + + + [continue...] + + + [continue...] + + + I was on it. As soon as comms with Stingray 4 went down, I informed the others of the designated evacuation point in Pripyat - I thought we could walk to the power plant. Almost immediately after that the chopper took a hit and I could smell something burning - the engine caught fire. The pilots managed to get us to the helipads near the Jupiter plant but they were both killed on impact. Then we lost Sergeant Shlyachin when it turned out that the approach to the helipads was full of mines... We lost another man, a Senior Lieutenant, in Pripyat while fighting Monolith forces for this building. + + diff --git a/gamedata/configs/text/eng/st_dialogs_zaton.xml b/gamedata/configs/text/eng/st_dialogs_zaton.xml new file mode 100644 index 0000000..8a12c70 --- /dev/null +++ b/gamedata/configs/text/eng/st_dialogs_zaton.xml @@ -0,0 +1,3117 @@ + + + + There was a strange artifact at the dredge station. Here. + + + Interesting - a semi-artifact... Here's your fee. I pay well for a job well done... Looks like you've got decent training. Come see me when you need a job. I often get orders for certain artifacts, and the pay is more than fair. + + + Got a job for me? + + + Got a little something... Last night stalkers saw some kind of weird glow at the dredge station... Too weird even for these parts. Why don't you check it out? + + + I will. + + + Make sure to watch yourself there. I'm warning you, that place is full of radiation. Don't forget your meds you'll thank me later. + + + Not right now. + + + I've handed out all the assignments I had for today. + + + Take this semi-artifact. + + + Here's your piece of the pie. I pay well for a job well done... Looks like you've got decent training. Come see me when you need a job. I often get orders for certain artifacts, and the pay is more than fair. + + + I picked up a strange artifact at the dredge station. Wanna take a look? + + + Interesting - a semi-artifact... Let me take it off your hands. 3,000 seems like a fair price. + + + I saw that someone brought you an artifact I found. + + + Sorry, but I'm not getting dragged into this. My rules are very simple: You deliver - you get paid. You know how the Zone works - keep your eyes open, act quickly, and don't trust anyone farther than you can throw them. But if you need steady work, I'm your man. I often get orders for certain artifacts, and the pay is more than fair. + + + What artifacts do you need? + + + I'll get a Gravi. + + + Excellent! That was quick. Here's your compensation. + + + I'll get an Eye. + + + I'll get a Bubble. + + + I'll get a Shell. + + + I'll get a Goldfish. + + + I'll get a Flame. + + + I'll get a Firefly. + + + I'll get a Snowflake. + + + I can sell you a Gravi. + + + Something screwy's going on. Guys take on orders and then go missing... I'm getting a bad vibe here. Gotta close shop. + + + I can sell you an Eye. + + + I can sell you a Bubble. + + + I can sell you a Shell. + + + I can sell you a Goldfish. + + + I can sell you a Flame. + + + I can sell you a Firefly. + + + I can sell you a Snowflake. + + + I see. I'll be back some time later. + + + Both teams who worked for me have gone missing... I've decided not to accept any more orders for now. + + + The job is done. + + + Excellent! Here's your compensation. + + + Here. It may not be a lot, but it's definitely something. + + + Tell me about your artifact orders. + + + Who could I hire to protect the scientists? + + + My guys - Spartacus and his crew. They've been around the block. Some were security guards before coming to the Zone and some even come from special police forces, believe it or not. They know which end of a gun goes boom... If they're available, they'd make a good security detail. + + + I'd have a tip for you, but in light of recent events... The Spartacus crew is no more, may they rest in peace. + + + Who could I hire to take measurements for the scientists? + + + You know Gonta and his guys? Outside their hunting season they... ahem... are happy to take on side jobs. Especially if there's no shooting involved. Their thinking is, "if I feel like having my finger go numb on the trigger, I've always got hunting." + + + Couldn't tell you, really. I would recommend Gonta's crew, but I haven't heard any news of them in a long while. + + + Tell me what life is like here. + + + That's a broad topic. Try asking some specific questions and I'll do my best to answer them. + + + What do stalkers do here? + + + Ask yourself that, pal. They step ashore from Skadovsk to explore the terrain and search for artifacts, shooting back at everything and everyone who comes rushing at them. They come back on Skadovsk to get drunk and talk trash... enjoy some R&R before the next raid. Though when an emission hits, it's quite a different scene. That's when we all sit tight and remember those who didn't make it to a cover in time... + + + What drove stalkers to the center of the Zone? + + + A funny question. Some were out to discover the next artifact goldmine. Some were driven here by the Oasis rumors. Others sought the Wish Granter. And then there are the base human desires - greed and curiosity... Everyone's got their reasons. I'm sure you have yours, too. + + + How did you end up here? + + + I came here with Grouse after the Scorcher was disabled. But I'm sure that's not what you really wanna know, am I right? I deal mainly in artifacts. The outside is full of trinkets already, so valuable customers want the rare stuff. That's why I decided to set up a stalker camp, where real high-value articles can still be found. I mean, when a stalker comes back with his loot, what does he really need? A cold one in his hand and good ol' human contact, that's what. And that's what Skadovsk is all about. + + + What do you think about bandits? + + + Well, it's like this. I got nothing against 'em on board the Skadovsk, so long as they act decent. After all, you don't meet total douche bags all that often. Some of them are actually former stalkers. Who knows, one of them poor bastards might actually decide to give up the crook business before he catches a bullet... Life is full of surprises. + + + Nah, that's okay. Fuhgetaboutit. + + + If you say so. + + + Tell me, did any military show up here? + + + Think about it. What would those jarheads be doing in our camp? Trust me when I say that they prefer to steer well clear of this place. Too many of us here remember what it was like to crawl through dirt at the Cordon, under fire from their damn machine guns... + + + Tell me about the Compass. + + + The artifact is the stuff of legends. They say the Compass has no harmful side effects and, if used wisely, can lead you out of any anomaly. You can see why customers would line up to get their hands on it. Just the other day someone told me that Noah knows something about it. He's a stalker who lives south of here. + + + Okay, I'll pay Noah a visit. + + + I'll think about it. + + + A legendary artifact, like I told you before. They say a stalker named Noah may know something about it. He lives south of here. + + + I picked up a strange artifact not far from Yanov. You interested? + + + Lemme take a look... Sure is an odd item, but I don't think I'll find a buyer for it. I'd suggest you head back to Yanov and show it to the scientists. Weird shit like this always gets their juices flowing. + + + Owl says you're not keeping up your end of the bargain. + + + We had a very clear understanding: I get the detectors, put them to use in the field, and he gets a cut of the proceeds. I've paid him for two detectors already, so I'm fully abiding by these terms. That's the extent of my agreement with Owl. If you're working for him, you can take back the third detector - I'm not buying it. + + + So what should I tell Owl? + + + Suppose so. + + + I wouldn't deal with Owl if I were you. If you're looking to make a good buck, I can give you a head start in the artifact hunt. Two-three hours - enough to beat all the others. Plus, if you're interested, I've got a special order. You see, I urgently need an artifact called Compass. + + + Sultan managed to intercept the Compass. + + + That bastard's got a bug up his ass... all right, no biggie. Try and talk to Noah again. According to the latest rumors, it might prove... useful. + + + I found a Compass. Here. + + + You're a life saver, buddy! Safe to say I've got this big shot customer in my pocket now. Rumors had it that Sultan wanted to take over my business. He's up for a bitter but deserved disappointment. Here, take this - you've earned it fair and square. + + + I refuse to look for a Compass for you. + + + Too bad. Oh well. + + + Sultan says hi. By the way, all your supply channels have been shut off. + + + Now it's obvious who's behind all this... Well, I'm not leaving Skadovsk. Looks like I've got no choice but work for you and Sultan. He'll get his share of the sales, and you'll come daily to pick yours up. The money will be waiting. + + + Give me my share. + + + There you go. + + + You're early. I ain't got the cash yet. + + + Think Nimble might be dealing in stolen goods? + + + I doubt it... From what I know about him, he prefers to leave the shady stuff to others. A good businessman values his name and reputation. All in all, I've never heard anyone say anything bad about Nimble. + + + I'm looking for Snag. Do you know where I can find him? + + + Last I saw him he was walking out of a bar. If I remember the bar conversation correctly, he left for the dock cranes. You might wanna look for him there. + + + Someone is planning to stick up a group of stalkers. Our own guys, too. + + + Whoa, man. We've got bandits multiplying like rabbits, and now we're fighting amongst ourselves? + + + I got an offer to attack the camp near Shevchenko at night. + + + Assholes... It would actually be nice if you took up their offer. See what I'm getting at?... That way I can tip my boys off so they prepare a warm welcome for our guests. + + + I agree. + + + OK, go see those douche bags and I'll tell the boys. + + + Sorry, you're on your own. + + + I've got an artifact from the Oasis. You interested? + + + The Heart of the Oasis? Nah, I think I'll pass. People say different things... It could be just superstition, but I'd rather keep my distance from it. I think you'd do well to hand it off to the scientists. Let them study it and give us a better understanding of how it affects people. + + + You new here? That's all right, you'll settle in soon enough... You know, the Zone is a tough teacher. I'm Beard, the local bartender. Got any questions, you come to me, y' hear? + + + Go ahead. + + + How do you feel about earning some cash searching for artifacts? + + + How's my order coming along? Remember, the faster the stalker, the more he makes... + + + You're late, someone has already delivered that artifact. But if you've completed the order, I can still pay you. Just not as much. + + + Something's just come up. The word is that some bandits are planning to buy a batch of weapons. Our boys want to follow them and spoil the transaction. We'd appreciate any help. + + + Well? + + + What are mercenaries doing at the waste processing station? + + + You ought to stay out of there. It's no concern of yours. + + + Do you enjoy working for the scientists? + + + Quite. I'm glad you came to us of all people. We're the best protection the scientists could have gotten. + + + I'm putting a squad together to go to Pripyat with. Will you join us? + + + No. Gotta keep an eye on the scientists... You might try talking to Sokolov - I seem to remember he wanted to go to Pripyat. + + + No. Gotta keep an eye on the scientists... After all, we're here to guard them. + + + Ahem... No, my place is here for now. + + + Would you like to work for the scientists? + + + That depends... What kind of work? + + + Guarding their bunker. + + + Sure, and thanks for the offer. + + + Taking measurements in anomalies. + + + That kind of work ain't for us. Better ask the stalkers. + + + Listen, stalker. My empty stomach is already killing me and your nagging only makes it worse... + + + I could bring you some food. + + + Hah! 'Kay, you do that. Canned meat, sausage and bread... Six of each. Make sure to bring enough to go around, 'cause we're hungry as shit. + + + I heard there might be tools around here. + + + Who the hell knows? But I wish you'd stop running around so much. We've got too much work to do as it is - can't even send anyone to get food. + + + Who the hell knows? But feel free to dig through this junk. You just might find what you need. + + + Here's the food. + + + Wow, I had lost all hope... Thanks. This'll make a nice lunch for the guys. So what did you want? Dig through the junk? Aight, go ahead. You just might find what you need. Just quit wavin' that shooter around! + + + Wow, I had lost all hope... Thanks. This'll make a nice lunch for the guys. Listen, if you wanted to check out the area... Go ahead. Just quit wavin' that shooter around! + + + You're not welcome here. This is our camp, and you've got no business prowling around it. My boys are too starved and high-strung as it is... + + + Beat it, 'cause my guys are so starved their fingers are getting real jittery on those triggers... + + + Oh, stalker... Is it something important? If not, I gotta get back to my work. + + + I'm ready to go hunting. + + + Okay. Let's go. + + + Let's go. + + + It ain't time yet. Come back at three A.M. + + + I see. + + + So are we... Except for the emission - the chimera can't be asleep now. I guess we'll have to try our luck another night... + + + Gonta is dead. How did that happen... Are you heading to Yanov by any chance? Trapper, Gonta's friend, is there. Could you tell him the chimera's dead?... I'll probably be heading home now. + + + Take care. + + + Get outta here. Gonta died no small thanks to you... What are we gonna do now?... + + + Take care. + + + Tell me about yourself. + + + I'm Gonta, leader of the hunting crew. We destroy mutants for cash. We can also capture them alive - for scientific experiments or if anyone needs an exotic pet... As Trapper used to say, "To each animal its own bullet..." + + + Tell me about hunting mutants. + + + Well, I'm not the most seasoned of hunters, but I can tell you a good bit about animals than run in packs. Flesh, boars, blind dogs, pseudodogs, snorks, hamsters... I even know a thing or two about bloodsuckers. + + + Tell me about boars and flesh. + + + Okay, flesh are the most harmless of mutants. They try to stay away from stalkers, but they'll fight back if you attack 'em. Now, if there's a boar among those fleshes, that spells trouble. Three hundred kilos of rage is nothing to toy with. Try not to stand in its path as it charges at you... Use its momentum against it. A heavy bulk like that won't be able to turn on the dime, will it? Dodge to the side, then plug it full of shot. + + + Tell me about blind dogs and pseudodogs. + + + Lone canines aren't that dangerous, but packs of them are a real pain in the ass. They only attack if they're hungry... the bad thing is, they're almost always hungry. If you're up against a whole pack, try to pick them off from a high spot, else they'll just run you over. Especially if there are mature pseudodogs among 'em. They ain't much tougher than blind ones, but much more cunning and dangerous... If one suddenly turns into a whole pack, then remember: youre being attacked by phantoms. The real pseudodog will hang back and only try to bite you now and again... Try to identify it. As soon as the real dog is dead, the phantoms will simply disappear. + + + Tell me about snorks. + + + Remnants of humans... A lone snork isn't much of a problem for an experienced hunter. You wait for him to jump on you and pump him full of shot in the air. Now, when there's a few of 'em... You've gotta just shoot at them as fast as you can while dodging their jumps. They know this and usually try to attack together. + + + Tell me about hamsters. + + + A hunter's nightmare... The worst thing you can do is underestimate them because of their small size. They're incredibly fast, agile and always run in packs. When you feel dozens of small fangs tearing into you - that's when you stop underestimatin' and start shootin'... And that's the scariest part: they're extremely hard to hit. That's why I always tell stalkers to carry a loaded shotgun. + + + Tell me about bloodsuckers. + + + They're expert hunters themselves, with excellent disguise. When they're camouflaged you can barely see them. If you're hunting a bloodsucker, try to startle it. You can see it better when it's on the move... Remember, a bloodsucker will try to sneak up behind you and weave its feelers around your neck. That's some creepy shit, man... If you are unlucky enough to run into a few bloodsuckers, always watch your back. + + + OK, forget about it. + + + If I see Magpie, I'll let you know for sure. + + + I'll make it worth your while... I'll pluck his feathers good. + + + What has Magpie done to harm you? + + + OK, he comes up to me once and says he can't get his loot out 'cause of a controller. My crew was one man short right then. Our pathfinder Danila went off to track bloodsuckers to their lair. So, we decided to help Magpie get his loot and took him hunting with us. All he had to do was keep a lookout for the chimera near the lair... + + + And what happened next? + + + What happened next was - the bastard ran away, taking his loot and pocketing ours, too. It was a hell of a surprise when the chimera finally showed up. Garmata, for one, had no time to react. I mean, who would?... Instead of hunting our game, I ended up defending my crew. In the end I wounded the chimera, but it managed to rip Crab a good one and made off. We lost a full week of preparation. + + + Hunting's in your blood, man! Here's a trophy personally from me... As Trapper used to say, "Skill is your main weapon..." By the way, are you heading to Yanov? It would be nice to tell Trapper the chimera's dead. I'll stay here on Skadovsk for now, wait for Crab to get better. Are you going with us? + + + Yes. Let's go. + + + No. I'll take a few more strolls around the place. + + + We did it. This small trophy is personally from me... It could've been smoother, but that's all right. As Trapper used to say, "With experience, who needs traps?..." By the way, are you heading to Yanov? It would be nice to tell Trapper the chimera's dead. I'll stay here on Skadovsk for now, wait for Crab to get better. You coming with us? + + + Garmata's dead... That chimera cost us dearly. You're not heading to Yanov, are you? We should let Trapper know the chimera's dead. I'll stay here on Skadovsk for now, wait for Crab to get better. You going? + + + I found Danila. He's dead. Killed by the late Tremor. + + + Oh, man! Why do the best of us always go first?... And that son of a bitch Tremor! Killing Danila... He was damn good people! + + + Think Nimble might be dealing in stolen goods? + + + Stolen goods? What made you think that? I've known Nimble for a long time, been ordering weapons from him on a regular basis. Great stuff at good prices. First time I've heard that. I suppose he's got new competitors who are getting desperate, spreading rumors and all... + + + I'm putting a squad together to go to Pripyat. Will you join us? + + + I've got an agreement with the scientists I have to keep. Plus, I don't really feel like going. You should speak to Sokolov. He's been nagging me, saying how much he needs to go to Pripyat but ain't got the guts to go alone. A real soldier, that one. + + + I've got an agreement with the scientists I have to keep. Plus, I don't really feel like going. Sorry, man. + + + Nah, I don't feel like it. The hunt is all here. You know better than most how many mutants are still roaming these parts - enough to last a good hunter several lifetimes. + + + Would you like to work for the scientists? + + + What's the job? + + + Guarding their bunker. + + + No, thanks. I'm a hunter, my job is all about mutants. And mutants ain't a threat to the bunker. People, yeah, that's different. + + + Taking measurements in anomalies. + + + Why not? We can do that. I officially declare the end of hunting season! Gonna be a nice break from the routine, you know, the creeps you get every time you head out there... + + + No, not right now. It's the hunting, you see. Gotta settle the score with this chimera first. We just can't let this bloodthirsty mutant roam the Zone and snatch stalkers left and right. + + + What I want right now is to get a nice tight grip on Magpie's throat. Then I'll be perfectly calm and ready to discuss work with you. + + + Later. We've got enough on our plate as it is. We got ourselves a chimera to nail and Magpie to track down. No time for other jobs. + + + I found Magpie. He's at Yanov station, posing as 'Flint.' + + + That son of a bitch still alive? Well, not for long... Take this - I appreciate the tip. Can't wait to meet that dickhead. So, Flint you say... + + + Yes. Thanks. + + + Dude, you seen this Magpie guy? Know him?... No? Well, if you come across that scumbag, feel free to put a bullet in his head. Or you can tell me where he can be found and I'll make it worth your while. + + + Well, hello there. + + + Wait!... We've tracked down the chimera, so we can't lose any time. Crab is still down, Danila's not back yet and pursuing the beast with the two of us is just stupid. We need a third. You're a stand-up guy though. You found Magpie. What do you say we go hunting that stinking chimera together? + + + Wait!... We've tracked down the chimera, so we can't lose any time. Crab is still down, and Danila... Well... A hunting party of two is just stupid. We need a third. You seem like a stand-up guy. What do you say we go hunting that stinking chimera together? + + + My pleasure. + + + As Trapper used to say, "When you're hunting, hunting's only half the job..." Anyway, look: after a night of hunting, the chimera comes back to its lair at around three in the morning. By then it's out like a light. That's when we gotta pounce on it... When you're ready, come here at three AM and we'll make a go at it. We'll be at the bar. + + + I'll think about it. + + + Well, if you make up your mind, drop by the bar around three AM. That's when the chimera crawls back to its lair for some beauty sleep. + + + Howdy. How's it hanging? You look rested. + + + Ah, cool. It's a small world, heh. + + + So? It's right about chimera-busting time... + + + You getting any butterflies in your stomach before the hunt? + + + Trapper asked me to help you hunt down the chimera. + + + I see, his gut feeling's still spot on. The thing is that we finally tracked the chimera down. Unfortunately, Crab is still down, and Danila's not back either... So it's just the three of us. But if Trapper chose you, you must be a fair hunter. Look, after a night of hunting, the chimera comes back to its lair at around three in the morning. By then it's out like a light. That's when we gotta pounce on it... When you're ready, come here at three AM and we'll make a go at it. We'll be at the bar. + + + You making a fool out of me? + + + That's what you are. And fools must be educated. + + + No matter. The world is small and the Zone is smaller still. We'll cross paths again. + + + Go... Get outta here. There's no fistfighting on Skadovsk. + + + Yeah, right. + + + I admit, I made a mistake. But you broke the rules. + + + That's the Zone for you. all right, cut the blah-blah now. + + + I guess he's a real dumbass if he let the artifact slip away. + + + OK, don't go crying now. A lesson learned is a lesson remembered. And just so it sticks better, go have a beer on me - it'll cheer you up. + + + I take what I'm given. + + + No thanks, I can afford my own booze. + + + You the shiznit, or what?! Shut up and stay put now! Hand over the artifact, nitwit! + + + Asshole. Keep the artifact... I hope you choke on it. + + + Screw you. + + + Brother! Listen, there's this artifact, it's got healing powers... I need it real bad. A buddy of mine is about to buy the farm from this weird sickness, our medicine can't do crap... I tried to grab that artifact but stumbled into a gas anomaly. You haven't come across it, have you? + + + If it's such a big deal, here you go. + + + Thanks, bro! I won't forget this. + + + Take care. + + + I got one. But I need it for myself. + + + Oh, come on! My buddy... He's dying for real! + + + In the Zone it's every man for himself. Take care. + + + No, I haven't seen it. Take care. + + + That artifact won't do you any good in the end. Take my word for it. + + + If you need it that bad - here, take it. + + + Thanks, bro! I won't forget this. + + + Take care. + + + We'll see. + + + I have nothing to discuss with you. + + + Why do you live on this garbage can? + + + It's an ark! Remember that... you will, if you want to live! When a Wave starts, stay close. Here you'll have a chance to survive. No mutant will ever break in here. + + + You mentioned a Wave... + + + Yeah, the wave of mutants that will crush and drive people from the Zone! And whatever poor bastards survive will be swept away by a ginormous emission!!! It will decimate every living thing in the Zone!... Except those who are prepared. + + + Where did you get this dog? + + + That's Lassie. A sweet little bitch... If not for her, I'd have been devoured in my sleep long ago. Cursed mutants... I hate them! Soon as you close your eyes, they start reaching for you with their nasty claws, fangs and feelers... + + + I need a Compass artifact. Do you know where I might find it? + + + That crap won't save you when the muties crawl out of the woodwork! Here, take this and get out of my face. + + + Thank you. + + + Do you know anything about the crashed helicopters? + + + I know something about one of them... I know that its on the plateau and the area around it is crawling with snorks. I go shooting at them every couple days... Why are you looking at me like that? Their whole lair can't be taken out in one go. + + + How do I get to the plateau? + + + Want to gun down some snorks, too, eh? Props...I can lead you there. + + + Let's go. + + + Another time. + + + A stalker. + + + I see. What are you after? + + + None of your business. + + + I'll lead you there. Stay here for now. There's an emission... Get it? An emission!!! + + + I was at the lair. + + + Yeah? There's no calming them down... Mutants are only gonna grow in number. And one fine day they will attack! Their wave will sweep the Zone clean of everyone who's not prepared!.. + + + Listen, umm, would you happen to have a Compass by any chance? + + + You think that'll protect you from an emission? Heh, take it and beat it! + + + Thank you. + + + Who are you? + + + A stalker. We've met before. + + + I don't recall... Anyway, what do you need? + + + A stalker. Just a stalker. + + + I see. Looking for refuge in the Ark? Feel yourself at home. + + + None of your business. + + + Ah, it's you. What do you want? + + + Would you happen to have an extra Compass to dish out? + + + Tell me about anomalies. + + + As you approach an anomaly, keep in mind that it's going to be either very hot, or the air will be full of toxic gases, or it will be a radiation hot-spot. There can also be psy-disruptions, but I won't go into those right now. It depends on the nature of the anomaly - be it heat, gas or electricity... or gravity, but I hope you won't have to deal with those. There are also moving anomalies, but that's a different kettle of fish altogether. + + + Tell me about heat anomalies. + + + If you see a sort of glimmering, like air steaming over pavement on a hot summer day - that's a heat anomaly. When something gets in it, that spot bursts into an extremely hot flame. At first they thought those were jets of natural gas, but that theory has since fallen into obscurity. + + + Tell me about gas anomalies. + + + This type of anomaly is dubbed such for its strange, never-ending chemical processes. They produce acid that eats your skin in a matter of seconds, as well as toxic gases that eat your lungs just as fast... Thankfully, gas anomalies are easy to spot out in the open. When you walk into one in a dark tunnel - now that's bad. + + + Tell me about electrical anomalies. + + + A very interesting type of anomaly which accumulates a substantial amount of static electricity. Stalkers usually take advantage of the fact that an electrical anomaly can be discharged with any metallic item. They throw a bolt in and dash right through before it charges up again. I prefer to go around - the recharge phase is just too quick. + + + Tell me about gravitational anomalies. + + + They are typically stationary. When you look at a particular spot and notice that objects are distorted behind it - you've got one. And you better keep your distance. All three known varieties react instantly, the moment something touches them. Springboard hurls everything from under it - often at a great distance. Vortex does the opposite: it sucks an object in, crushes it with terrible pressure, only to send the bits flying seconds after. Whirligig lifts its victim in the air, spins and tears him to shreds... An unpleasant end, whichever way you go. + + + Tell me about moving anomalies. + + + Personally I've only come across a Comet and a Tesla. The former is a fireball about three feet in diameter. But I assure you, you'll feel the heat from a much greater distance... The latter is, for lack of a better description, a ball of lightning. It's definitely a ball and it's definitely electrical in nature. Both anomalies always keep moving, but usually in closed-loop paths. A careful stalker should be able to easily go around them... Just don't lose your focus. + + + OK, forget about it. + + + Tell me about yourself. + + + My name is Pilot for a reason. I only use safe routes. I don't have what it takes to collect artifacts or fight bandits, so... Everyone should use their talents and let others benefit from them. Every talent has its price, of course. + + + Tell me about emissions. + + + I have some maps of the area between Zaton and Jupiter. Want to have a look? + + + Let me see... Good, lots of detail. In our business details make the difference between life and death. all right! These maps indicate there's a safe route straight through between Skadovsk and Yanov. I'll copy the data to my PDA, if you don't mind. Now I can offer you a nice discount. + + + Perhaps you need a guide? To show you the way around all the anomalies, keep you safe from emissions? Pilot at your service. + + + Do you need the help of a guide? + + + Nice to see you. What can old Pilot do for you? + + + Hitting the road again? + + + Good day to you. Can't stay in one place for long, huh? I'm at your service. + + + Hello. If you need a guide, I'm your man. As soon as the emission is over. Meanwhile we can talk about anomalies to kill time... + + + I'm afraid I'm not much use as a guide right now... The emission is in full swing. + + + How much to get to Yanov station? + + + Unfortunately, it's a long ways from here, so the price is 3,000. + + + That's fine, let's go. + + + I don't have that much on me. + + + I'm not leaving yet. + + + With your maps - only 1,000. + + + That's fine, let's go. + + + I don't have that much on me. + + + I'm not leaving yet. + + + It's a long ways from here, so the price is 3,000. I will be ready to leave as soon as the emission subsides. + + + With your maps - only 1,000. Only we have to wait for the emission to die down. + + + Can you lead me to Pripyat? + + + No. Everyone has his specialty. See Garry over there? I think he'll be able to help you. + + + Not personally, no. But for 6,000 I can take you to Yanov station and make the arrangements with Garry. From there he will lead you to Pripyat. What do you say? + + + OK, let's go. + + + I don't have that much on me. + + + I'm not leaving yet. + + + Not personally, no. But for only 4,000 I can take you to Yanov station and make the arrangements with Garry. From there he will lead you to Pripyat. What do you say? + + + OK, let's go. + + + I don't have that much on me. + + + I'm not leaving yet. + + + No. Everyone has his specialty. See Garry over there? I think he'll be able to help you, after the emission is over. + + + Not personally, no. But for 6,000 I could take you to Yanov station and make the arrangements with Garry. From there he will lead you to Pripyat. As soon as the emission is over, of course. + + + Not personally, no. But for only 4,000 I could take you to Yanov station and make the arrangements with Garry. From there he will lead you to Pripyat. As soon as the emission is over, of course. + + + Can you lead me to Pripyat? + + + Pripyat? No. There's enough demand for my current route that I don't have to look for another. But I have a good buddy who used to work at the Jupiter plant. He told me there are tunnels underneath the plant that lead to Pripyat. He didn't have any details, but he said he'd start looking in the plant's administrative section. + + + No. If you want to get there, try finding those tunnels underneath the Jupiter plant. + + + How much to get to Skadovsk? + + + Since we'll have to make a detour, the price is 3,000. + + + That's fine, let's go. + + + I'm a little short right now. + + + I'm not leaving yet. + + + With the new route it's only 1,000. + + + That's fine, let's go. + + + I'm a little short right now. + + + I'm not leaving yet. + + + Since we'll have to make a detour, the price is 3,000. I will be ready to leave as soon as the emission subsides. + + + With the new route it's only 1,000. Only we have to wait for the emission to die down. + + + Where can you lead me? + + + To Yanov station, not far from the Jupiter plant. And then back to Skadovsk from there. I'd rather know one route well than claim to know many. + + + I spoiled the bandits' weapons transaction. + + + Thanks for helping out. I think back to the 90s and its thugs with RPGs and just shudder... Here, take this. Cash is always good to have. + + + I'm looking for Grouse. We were supposed to meet here. + + + Grouse left a message for you. He said he was heading to the dock cranes. And that he learned something new about the missing stalkers. + + + Grouse is dead. Tremor killed him, like the other stalkers... Tremor is dead, too. + + + Tremor? Damn. The snake was right under our nose. That could have been any one of us... I mean if Grouse, of all people... Thank you, friend. You've saved our whole camp. Here. + + + Tremor?!... I'm sorry, pal, I just don't buy that. If there were some kind of evidence, then maybe... Poor Grouse. + + + Here's Tremor's PDA. It contains evidence that confirms he was involved. + + + Damn. The snake was right under our nose. That could have been any one of us... I mean if Grouse, of all people... Thank you, friend. You've saved our whole camp. Here. + + + I'll help you deal with the bandits. + + + Great. Go to the ranger station - thats where our boys are. They'll give you all the details. + + + What do you know about Nimble? Could he be dealing in stolen arms? + + + I don't really know him. I doubt he's into that. If you're dealing in hot items, you don't take orders for them ahead of time... + + + I knew I'd be exposed eventually. It was just a matter of time... + + + Tremor?!... Would you mind explaining what's going on? + + + I'm not hiding anything anymore. It's no use. You know now that it was me who killed Grouse... Same with Danila and the other missing stalkers. + + + OK, I got it. Enough talking. + + + You didn't get anything, nobody will ever get me... + + + Why did you do it? + + + Hemoglobin addiction... I wouldn't wish it on anyone... There's no getting rid of it. Sometimes you feel like you can go a whole month without drinking a drop of blood, and it did happen to me a few times, but then... You explode inside and start making up for lost blood like crazy... + + + How did you manage to keep it secret? + + + When I worked at the surgeon clinic, it was easy to cover up. There was always a surplus of donor blood to be had. But the Zone was different... I thought that this harsh environment would push my condition to the sidelines. But I was wrong. I experienced the most terrible explosion of all and just couldn't think of anything else. I decided to make the killings look like bloodsucker attacks. I usually picked targets that were already wounded. + + + And what about Danila and Grouse? + + + Danila came to me for help after the bloodsucker raid. He was wounded. When he and Grouse decided to go hunt bloodsuckers together, I realized I won't be able to hold out much longer. I still tried to protect my secret, but my resolve was weakening... Then Grouse came along. He made sense of the situation and tried to kill me. Which brings us here. I'm sorry for all these people, but my pity won't bring them back. + + + OK, I got it. Enough talking. + + + You didn't get anything, nobody will ever get me... + + + I'm listening. + + + Hello, do you need help? + + + Hello. + + + I need medical assistance. + + + Let me have a look... + + + Well, that's about it. You can go. + + + Howdy! Looking for artifacts, too? + + + Hey! Artifact-picking we go, heh? Well, there should be plenty for everyone. + + + Oh, hey! Trying to score some artifacts too, eh? + + + Howdy. You taking that artifact to Beard? + + + Maybe yes, maybe no. What's it to you? + + + I need it. + + + So do I... But I'll trade you for a new shooter. A high end one. + + + I have a good weapon. Let's trade... + + + Fine. + + + No, this won't work. + + + Then get the hell outta my face. + + + Okay. + + + Well, none really. + + + What do you know about Nimble? + + + Oh, nothing much... We don't do business together. While he's out combing the Zone for a super-dooper shooter, I manage to sell a hundred regular ones. He's pretty big-headed, too, refuses to deal with the local thugs. So he's a lousy trader, which is a good thing for me, really. + + + Beard told me you had a different arrangement. + + + "Different" my ass! That bearded hog is getting' too big for his britches! He oughta be reminded who's boss around here... Listen, there's this one influential type over at Zaton, goes by the name of Sultan. Pay him a visit - he'll tell you what to do. + + + I'll go talk to Sultan. + + + No sultans. Give me my share right now! + + + Uhh... Fine. Here's the cash... But remember, Beard is pulling wool over your eyes. + + + I need information. + + + What do you want to know? + + + I need poison gas. I heard you were the man to ask. + + + I am. I'll tell you for 2,000. + + + Here. + + + Listen. Once there was a military motor column here transporting gas which didn't make it. No one knows what happened, but the gas tanks should still be there. All clear? Yeah, there might be some documents there, too. If you find them, bring them to me and you just might recoup your investment. + + + Too expensive for me. + + + Up to you. + + + Where can I find a stalker called Magpie? + + + I can give you a hint... for 1,000. + + + Here. + + + You won't find him here, but a little bird told me he might be around Jupiter, maybe near Yanov station. Keep in mind that whoever made a mess of things in one place doesn't keep the same name when he leaves for another place... He's probably changed his guise too, figuring people will be looking for him among stalkers. + + + I'm looking for Snag. Do you know where I can find him? + + + I'll tell you for 1,000. + + + Here. + + + Snag is a greedy fool 'cause he's got in with dangerous people. He's burned his bridges, so you should look for him around Jupiter. He's got no other place to go. You ain't the only one looking for him. + + + What do you know about the crashed helicopters? + + + Hrm... Everyone around here knows where they fell. One came down at the southern plateau, the second landed in the swamp, and the third sat right on top of the substation pylons. Which place are you asking about? + + + The southern plateau. + + + The substation. + + + The swamp. + + + That's it for helicopters. + + + Pay up now, you owe me 200. + + + Here. + + + So, this chopper landed right next to a snork den. As far as I know, the military got out of there, not all but most of them. Wiped out the mutants and climbed down. By the way, if you're heading up there, I can offer you a nice shotgun and some ammo to help deal with those beasts. Only thing is, no one except Noah, that loopy bastard, knows how to climb up to that plateau. + + + Too expensive for me. + + + Up to you. + + + I'll tell you for 200. + + + Here. + + + I'll tell you for 200. + + + Here. + + + Nothing right now. + + + Got a job for me? + + + First off, there's a small job with the scientists; second, we need to get information from the mercenary camp; and third, the trader still needs a security detail. Lots of things going on, just take your pick. + + + Tell me about the job with the scientists. + + + You've got to find three Veles detectors and bring them to the scientists' bunker near Jupiter. Once there talk to Novikov, he said he'd tinker with them... When detectors start to turn in a profit, we'll split it evenly. All clear? Then go. It's a piece of cake, really. + + + Deal. + + + Maybe next time. + + + Tell me about the mercenary camp. + + + Some kind of mercenaries appeared at the processing station and I'm dying to know what they're cooking... Sneak into their camp and dig up whatever information you can about their plans. PDAs, paper documents, bring me whatever you find. You got me? Go. It's nothing but kid stuff if you keep it quiet. + + + I agree. + + + Not right now. + + + Tell me about protecting the trader. + + + The trader needs guards for a business deal. You hardly have to do anything, just stand there and make everything look legit... OK? The trader will wait for you at the ranger station. He'll fill you in on the details... + + + Okay. + + + Wait. + + + Another time. + + + There's a small job with the scientists, that's one, and two, I need someone to get some information from the mercenary camp. Take your pick... + + + There's a small job with the scientists, that's one, and two, the trader still needs a guard. C'mon, make your call. + + + I need someone to get information from the mercenary camp, that's one, and two, the trader still needs a guard. C'mon, make your call. + + + A small job with the scientists. It's a piece of cake, really - fetch me this, bring me that... + + + The trader still needs a guard for a business transaction. Easy as pie, that one. + + + No more jobs. + + + I think you might be interested. + + + Whatcha got? + + + Noah's PDA. + + + The psycho from the barge?... I'll give you 1,000. + + + Deal. + + + No, thanks. I'll hold on to it for now. + + + Make sure it don't burn a hole in your pocket... + + + A mercenary's PDA, nickname is Hook. Found it at the waste processing station. + + + I'll give you 1,000. + + + Deal. + + + Very interesting... Great job, stalker. + + + A mercenary's PDA, nickname is Ridge. Found it at the waste processing station. + + + I'll give you 1,000. + + + Deal. + + + PDA with information on the Monolith's caches. + + + I'll give you 5,000. + + + Deal. + + + PDA of a man connected with the mercenaries' client. + + + I'll give you 4,000. + + + Deal. + + + PDA of one of Duty's founders, General Tachenko. + + + I'll pay you well for that one - 2,500. + + + Deal. + + + A mercenary's PDA. + + + I'll give you 1,000. + + + Deal. + + + Morgan's PDA. + + + Information about the Duty trader who sells weapons left and right. Gotta be useful for something. I'll pay you 4,000. + + + Deal. + + + A note from Strelok's group stash. Addressed to Ghost. + + + I'll give you 500. + + + Deal. + + + A note from Strelok's group stash. Addressed to Strelok. + + + I'll give you 500. + + + Deal. + + + A note from Strelok's group stash. Addressed to Fang. + + + I'll give you 500. + + + Deal. + + + Documents from the Jupiter plant, a folder containing the general evacuation order. + + + I'll give you 750. + + + Deal. + + + Documents from the Jupiter plant, a notebook entry. + + + I'll give you 750. + + + Deal. + + + Documents from the Jupiter plant, a delivery schedule. + + + I'll give you 750. + + + Deal. + + + Documents from the Jupiter plant, a letter with the decree to transport item 62 only through the underpass. + + + I'll give you 750. + + + Deal. + + + Nah. With Sultan involved, I'd rather stay out of it. + + + Let's see... Yeah, this is good stuff. Buy it off you? + + + Sure, I don't have any use for them. + + + Notebook from the mercenary camp at the waste processing station. + + + I'm offering you 2,000. + + + Deal. + + + Heh... Well, take it to Beard or the scientists. I'm not keen on dubious merchandise... don't need me some acute radiation sickness at night. + + + And that's where it should stay. I don't like to take unnecessary risks. Who knows, maybe that thing will form an anomaly field around itself by midnight... Why don't you take it to the scientists, let them study it or something. + + + And I've got a nuclear warhead in my kitchen cabinet! You might get a laugh out of scientists, though - they dig that sort of stuff. + + + Snag's PDA. + + + Let's have a look. Hrm... Nothing special. You've probably already cleared out that stash, so my price is 200. + + + I agree. + + + PDA of one of the Sultan's crew. + + + Interesting... Could be of use. I'll give you 1000. + + + I agree. + + + Memory module from an unmanned aerial vehicle. + + + A very interesting find... But it won't make you rich. Who knows if I'm the first one to read the information on it? My price is 500. + + + Done. + + + Nothing right now. + + + About those detectors... + + + Yeah? + + + Where can I find them? + + + I don't know, just find them. + + + I've got the detectors. + + + Then why are you still here? Take them to Novikov at the scientists' bunker near Jupiter. + + + I took the detectors to Novikov. + + + Great. Now we wait for him to tinker with them. Novikov promised he'd send them over with a trusted man once he's done. + + + We've got problems. Our little business here is up in the air now. Novikov did a heck of a job on those detectors - extended the working range, improved sensitivity and some other stuff... These detectors let you run circles around all other artifact hunters. I made a deal with Beard so that stalkers he hires use these new detectors... + + + And? + + + Our agreement was to split the loot evenly, but stalkers refuse to bring our half. You need to see Beard and convince him to hold up his end of the deal... C'mon, you want your share too, don't you? + + + I need your new detector. + + + Hah. And I need a heavy-hitting shooter. If you got a good, expensive weapon, I'll trade you. + + + That's a deal. + + + No, thanks. + + + I need your new detector. + + + Is that a threat? I need it too, obviously. + + + You're not following, are you? Yours is the last one. I didn't have too hard a time disposing of the other owners... + + + You did what?... You rubbed them out? Take it and leave me alone. + + + Hey, how about you suck it? + + + I'll take a rain check on that. Now I'm asking you nicely to hand over the detector. + + + And I'm asking you nicely to suck it. + + + Stalker, you wanna get paid? + + + What's the job? + + + You see, I hid some loot in this old Zaporozhets car. But then an earthquake hit and the car fell underground. I checked it out and the car seems to be within reach... Only, umm, there's mutants there, you know, snorks. Believe it or not, I ain't even scared of controllers, but those damn snorks are just too creepy and disgusting for me. If you get a hold of the container with a security lock, we'll split the loot fair and square. + + + Deal. + + + Thank you, stalker. + + + Is this your container? + + + Yeah, it is! Wow, you rock! + + + Another time. + + + Too bad. + + + No, I'm too busy right now. + + + OK, suit yourself. + + + So? Any news? + + + What do you want? Can't you see I'm busy? + + + Hey, that's my shooter! Where did you get it from, you thief? Mine was stolen just the other day. + + + What are you talking about? I bought it recently. + + + I don't know where or how you got your hands on it, but it's the one they stole from me. So please, you don't wanna get me upset, just give me the gun and we'll be on our merry ways. + + + OK, here you go. I don't want any trouble. + + + Hand it over. + + + This shooter is mine. + + + It is, is it?!... I'm warning you, I've got connections! Everyone knows me here! You think you'll last long in the Zone with a bad rep, stalker? What do you say to that, huh? Don't be expecting help from anyone around here, 'cause you'll be shit outta luck! + + + Screw off! + + + Are you sure it's your weapon? + + + Of course I'm sure. It's not exactly common in the Zone, now is it? And this one's mine for sure. + + + You've made a mistake. Back off now and we'll keep it peaceful. + + + What? I've made a mistake?! Think twice before you speak, asshole! If you stir shit up, everyone's gonna be on my side. Gimme back that shooter and we'll be on our merry ways. I'll even be nice and not tell anyone about the gun. + + + What?! Have you given any thought to the fact that I can put a hole in your head with this very shooter right friggin' now? + + + OK, chill, dude. This exchange got a little heated, but I'm cool now. Don't have a cow either. I must have made an honest mistake. + + + About that container... + + + Did you find it? + + + I'm still working on it. + + + I've decided not to look for it any longer. + + + Too bad. + + + OK, let me see... + + + Of course. Just a sec... + + + I've decided to keep the container. + + + Oh you little... Don't think for a second that I'll forget this! + + + Here's the container. + + + Ok, let's divvy up the loot now, right? + + + Let's. + + + Let's see what we got here... My old but lethal Fora. A long time ago my uncle modified it with his own hands. Almost like a family heirloom, yeah... so, let me hold on to that. + + + No, give it to me! + + + Uhh, well, all right... + + + See what's next. + + + No, you've got enough items already. + + + See what's next. + + + all right, take it. What else is there? + + + Okay... Let's see. An excellent medical kit. Good enough to go up against a bear or even a controller. That's mine... + + + Actually, I could use a medical kit! + + + Hrm... okay. + + + See what's next. + + + No, you've got enough items already. + + + See what's next. + + + You can keep that. What else is there? + + + Okay... Wow. I doubt you've ever held this kinda shooter in your hands... An enhanced AKM-74/2U. I gave this Duty fella a ton of first aid kits to get my hands on this beauty. That was when Freedom pounded a Duty squad so bad that they actually ran out of meds. Three times this baby saved my life since then... This is definitely for me. + + + Maybe I can have it? + + + Hrm... It really breaks my heart. But a deal's a deal. Take it. + + + See what's next. + + + No, you've got enough items already. + + + See what's next. + + + Okay, keep it for yourself. What's next? + + + Oh-h-h... A beautiful and valuable piece. This artifact is worth a mountain of gold! I got it myself from an anomaly, mind you. I shat my pants more than once as I did, too. It's my trophy, earned with blood and tears. + + + I think I need it more than you do. + + + You're killing me, man... Take it - you won't be forgetting my generosity any time soon. + + + See what's next. + + + You've got enough items already. + + + See what's next. + + + Keep it. What's next? + + + And last but not least... An excellent helmet, handmade. A while ago we got this new stalker at the Cordon, a real handyman. Made a bunch of real cool stuff before he croaked. This helmet is one of them. You won't find one like it anywhere!... I'm keeping it. + + + Look here, I'm the one who put my life on the line against that horde of snorks... I deserve that helmet. + + + Well... okay, fine. Enjoy it. + + + See what's next. + + + You've got enough items already. I've got to keep something for myself, don't I! + + + See what's next. + + + all right, keep it. + + + That's it man, that's all of my loot. + + + OK then, see you. + + + That's it. But I can't let you go empty-handed... Here, take my pistol! + + + Good luck. + + + What do you do? + + + I serve and protect. Used to be a police detective and here I'm sort of the local sheriff. I came here with Beard, then he decided to set up camp. Why go any deeper if no one knows the road to Pripyat anyway? There's plenty of artifacts here as it is. So we stayed. + + + Who could I hire to protect the scientists? + + + We've got a few good fellows. Spartacus' group, for one. Stand-up guys, real professionals, lots with a law enforcement background. If they're available, you won't fine a better protection detail anywhere. + + + I might've had some names for you a while back, but not anymore. None of the local stalkers will sign up for that. + + + Who can I hire to take measurements for the scientists? + + + There's a group of stalkers, Gonta's the man in charge. Talk to him, he might sign up... I'm sure they'll welcome a break from shooting mutants. + + + If Gonta was here with his group, I'd refer you to him... But since he's not... I don't have anyone suitable in mind. + + + Have you bought weapons from Nimble? Would you know if he deals in stolen goods? + + + Think he's sneaky enough to pull off shit like that behind my back?... Nope. No friggin' way. I've got a gut feeling Nimble is no dealer. + + + I'm looking for Snag. Do you know where I can find him? + + + Snag - sure, I know him. A real numbnut, that one. Some of the boys saw him over at the dock cranes the other day. Must be his new hangout spot. Check it out. + + + Hello stalker. How would you like to earn some cash and help out our camp at the same time? + + + Hello stalker. You still here? You keep this pace up and bloodsuckers will soon wipe us all out. + + + Talk after. I've got something else to check out. + + + What kind of job can you offer me? + + + Here's the deal. Several stalkers have gone missing. No one has heard anything about them, but just the other day they found one body. No signs of violence, but it was bled completely dry. Tremor searched the body, he could give you more details... Anyway, it's got to be bloodsuckers! I talked to Danila the hunter and he went off to search for their lair. Haven't seen hide nor hair of him since. + + + What do I need to do? + + + You have to find the lair and hopefully track down Danila. The job ain't pretty, but I'll make it worth your while. OK? + + + I agree. + + + OK. OK, I've earmarked two places to check first. I uploaded one of the coordinates to your PDA. I'm gonna go run some errands and then check out the other place. I'll let you know what I find. + + + Deal. + + + I think I'll pass. + + + Come back if you change your mind. + + + Not interested. + + + The same one... As long as there's a bloodsucker lair about somewhere, we're all out on a limb. And we still haven't heard from Danila the hunter. Would you help us deal with this? + + + Grouse told me you searched the body of one of the missing stalkers. Do you think it was a bloodsucker that killed the man? + + + Yeah, I did... Just like all the other dead bodies... No other creature is capable of doing that, that is, sucking all the blood out of a man's body, down to the last drop. All the evidence points to a bloodsucker attack... What other conclusion can I make? + + + Tell me about yourself. + + + I'm a medic. A trained brain surgeon. What else would you like to know? I can excise a hypothalamus with laser precision, but I haven't had any such orders in the Zone so far. Here I'm just a regular physician, one of many, who knows his trade well. + + + I'm listening. + + + Can you decrypt a black box? + + + Well... That's not really my specialty. All those charts and algorithms... Not my cup of tea. Bring me something that's based on simple physics and I'll figure it out in a snap... Fiddle here, twiddle there and everything's working hunky dory. + + + Think Nimble might be dealing in stolen goods? + + + Whoa, whoa... Nimble and stolen goods? I'll never buy that. When I was building my workshop it was none other than Nimble who helped me. Didn't charge me a penny, either... No matter what anyone says, I know that Nimble is a good man. + + + Got any work for me? + + + Oh, sure. I need a few tools but I have no time to go look for them. Hardware is like that, takes up all your time. If you bring me a few useful gadgets, I'll show you what upgrading is all about. You'll also make a buck or two. + + + Okay, I'll keep an eye out. + + + No. Maybe later. + + + Oh, sure. I need tools, remember? A bit of help for me and a bit of coin for you. + + + Can you unblock a memory module? + + + Nah, man, can't help you there. All this modern electronics, computers... Not my field. Better find someone younger... they soak that stuff up with their mother's milk, man. + + + Can you break into a steel container? + + + That's a cinch. Top service for only 500. + + + Here. + + + Okay, lemme fix that... Lift this, push here... And bam! All ready! Ain't a thing been invented that I couldn't open with a crowbar and a hammer. + + + I don't have that much. + + + Come back when you do. I ain't goin' nowhere! + + + I'll think about it. + + + Got some booze. Want a shot? + + + Nah, I'm off the bottle, man. When I saw item 62, I thought "That's it, I'm having the jumps"... See, booze just screws you up. Not a part of a healthy diet. And if I'm gone, who's gonna hammer out ammo for your Gauss rifle? + + + Here's another bottle for you. + + + I've got a third one, if you need more. + + + I brought you tools. + + + Nice. Which ones? + + + The ones for basic work. + + + Cool! Now I just need tools for fine work and calibration. + + + The ones for fine work. + + + Cool! Now I just need tools for basic work and calibration. + + + The ones for calibration. + + + Cool! Now I just need tools for basic work and calibration. + + + None, for now. + + + Great. Now just some calibration tools and I'm good. + + + Great. Now just some tools for fine work and I'm good. + + + Great. Now just some tools for basic work and I'm good. + + + Awesome! Way to go! What's your secret, man? Now I've got the full range of mods, hah! Watch me make a machine gun out of lighters! + + + I brought the schematics and documentation for item 62. + + + You did it! Cool! I knew the bastards wouldn't have enough time to destroy everything. Let me have a look... Mm-hmm... So that's what those sons of bitches are up to. Fine! I need a couple hours to sort this out for good. Leave the Gauss rifle with me, I'll try to patch it up. Wait here, I need a minute to get this baby singing again! + + + I need batteries for my Gauss rifle. + + + You get my favorite customer price: 2,000. + + + Here you go. + + + I'll think about it. + + + I'm a tad short at the moment. + + + You done with the Gauss rifle? + + + Piece of cake. The power supply system is clear as day. If it starts acting up, just bring it back here for a tune-up. + + + Still working on it. I just love to put my hands to work... + + + I've got an unknown weapon model. + + + What do you mean, unknown? Give it here, lemme take a look... + + + Have a look... Ever seen anything like this before? + + + Ah-h, it's you... We had a hell of a time, heh. I had a dream where you brought me something from the past... Good drinking I haven't been thing... + + + It wasn't this here weapon in your dream, was it? + + + Whoa, man... I guess it wasn't a dream, after all. This gun is a Gauss rifle, or item 62 as it used to be called officially. Whew... Back then I used to do contract work for the Jupiter plant. I designed weapons, if memory serves, "based on the principle of projectile acceleration via an electromagnetic field." See those reels? I made those... Too bad they shut down the project in 2004. We never did find a compact enough energy source. + + + This rifle has been fired before. What could have changed? + + + Who the hell knows? To be honest, I wouldn't dare stick a screwdriver in that battery. There's also some mechanical damage in the power supply system. The schematics would be real handy right about now. The testing workshop I worked in handled all the production documentation. Maybe the schematics and support documentation for this Gauss rifle are still there... Funnily enough, I've still got a keycard to the workshop... + + + Would you give me the keycard? + + + Yeah, well... I guess so. Just try not to lose it. If you bring me those documents, I just might fix that gun. + + + Here's your access card back, safe and sound. + + + Thanks. It reminds me of the good old days. + + + So?... You, err... feel free to bring me all your broken shooters, suits full of holes and whatnot... I ain't half as good when I'm sober, but I'll give it a shot... + + + Where have you been? I was getting worried, looked everywhere for you. Where is that stalker, I said... Cheers, eh? + + + Howdy. Nice of you to come by. Make yourself at home... Did you bring me something to fix or something to drink? + + + Whew! Cool! My hands aren't shaking, but my head says "I want more"... Pour me another one, young man! + + + Why so slow? Open the next bottle, c'mon! Let's drink to our common cause. Yeah. Vodka brings out the mechanic genius in me, I shit you not. + + + I wish Joker was here, we'd drink to Barge together... Well, may he rest in peace. He was good man, a real die-hard. Tough like a rock. + + + I wish Barge was here, we'd drink to Joker together... Well, may he rest in peace. He was a good man, always there for you. Never went back on his word. + + + Uhh... Barge... Joker... How did it all come to this... So, one thing leads to another... + + + Mm-hmm?... What do we got here? I'll deal with the armored SMGs tomorrow... Don't worry, it ain't no thing. Got some good booze waitin'... + + + That number sixty two... I'd really like a peek at the circuit schematics. + + + A wise choice, my friend. Gotta keep your gun in mint condition. And if you got a bottle or two on you, I can make it upgrade galore in here. Want a parachute sewn to your shotgun? I can do that, hehe. + + + Would you look at that! They stuck an electrostatic artifact into the battery! Hah! I knew it was some kind of weird anomalous shit! The principle is a no-brainer - now I can hammer out these cells myself. + + + Need some nut-and-bolt work? + + + This reads like gibberish. I guess I haven't read technical documents in a while... + + + Yeah, I came to Zaton with two of my buddies, Barge and Joker... Young kids, full of piss and vinegar! Itching to get their hands on mountains of artifacts, dying to be the first, the fastest... And I looked at those burning eyes and I said to myself, that ain't gonna do them no good. Loot's nice to have, sure, but it ain't worth charging headlong into a mutant's jaws. + + + So what happened? + + + Well... We were hanging out one night, drinking, and started arguing over what to do next - should we go on or stay, and if we go, where to. Everyone's sticking to his guns, standing pat. Things got pretty heated and when the argument was over, we all went our own way, me included. I told them they ain't seen life yet... and some other unpleasant things. Man... If I only I could see them again, I would say I'm sorry for what I said then... We'd hang out together like before and remember the good ol' times... + + + I can pass your apologies on to Barge if I run into him. + + + That would be good. + + + I can pass your apologies on to your buddies if I run into them. + + + That would be good. + + + I can pass your apologies on to Joker if I run into him. + + + That would be good. + + + I found this PDA - have a look. + + + What do I need a PDA for? Whose is it? + + + Barge is dead?!... I can't believe it!... Oh, man! He was as tough as they come... Oh, Barge... Rest in peace. I hope Joker is all right at least. + + + Barge is dead?!... I can't believe it!... Oh, man! He was as tough as they come... Oh, Barge... and Joker, too... May you kids rest in peace. How did it come to this... + + + They're dead!?... I can't believe it!... Oh, man! Barge was as tough as they come... and Joker... Oh, Joker... We won't be laughing at your jokes anymore. May you kids rest in peace. How did it come to this... + + + Can you answer a couple of questions? + + + Sure. + + + How long till my order's ready? + + + It depends on how complex it is. It usually takes me a day, sometimes less. + + + Tell me about yourself. + + + Nothing much to tell. I've had it good and I've had it bad, like most people. Stepped into a few anomalies, been a hostage to bandits... I came to the Zone a young lad, a long time ago. I was a gofer at first - antirads, armor-piercing ammo, that sort of thing. Then I worked for Sidorovich... paying him back for saving my ass. As I pulled chestnuts out of the fire for him, I made some useful connections and branched out on my own as soon as I could to start delivering exclusive orders. So far I've been able to dodge everything life has thrown at me, but I've a feeling my luck is running out. At the same time, I've no desire to bust my ass for pennies anymore. + + + Thanks, I see. + + + Glad to help. + + + You sold me a stolen weapon! + + + What are you talking about? I don't deal in stolen goods. I only do direct business. If you don't believe me, talk to anyone at the base and they'll tell you I'm an honest trader who's never let anyone down. + + + I ran into a stalker who claimed this shooter was his. + + + And what's his name? + + + Snag. + + + What's it to you? + + + It matters. Someone's putting you on, stalker. + + + We'll see about that. + + + Someone's putting you on, stalker. + + + I'm here to collect my order. + + + Here's your Steppe Eagle. It turned out trickier than I thought. Some kind of pistol buff showed a lot of interest, but I barely snatched it in time. See for yourself - a hand-crafted gun, components are all adjusted with unmatched precision. Ever wonder what a perfect sniper pistol would look like? Well, this is it. You owe me 2,800 extra. + + + Okay, here you go. + + + There you go. Nice doing business with you. + + + I don't have that much on me. + + + Okay, I'll hold the gun for you a while. I hope you find the money soon. + + + I don't want to buy this. + + + If you refuse to collect the order, I won't be able to rely on you next time around. I'll have to include the risk estimate in the price and ask for a larger advance. + + + Still, I will not be collecting this order. + + + All right, suit yourself. + + + I'll think about it. + + + Sure, that's up to you. I'll hold the gun for you a while. + + + Here's your ultrahigh-accuracy Steppe Eagle. You owe me 2,800 extra. + + + Behold the Alpine - a real beauty. You can rest assured this pistol is one of a kind in the whole Zone. A unique model, very limited issue commissioned for a single special unit. It wasn't easy to obtain, I even had to involve one of my overseas associates. An expanded magazine, extra hard steel barrel, receiver made of extra strong polymers. Add the remaining 2,800 and this baby's yours. + + + Here's your Alpine pistol with an expanded magazine. Add the remaining 2,800 and this baby's yours. + + + Lookit, this is March. The pistol belonged to a mercenary called Wolfhound. A compact high-caliber shooter with short blowback and a lightened bolt. Wolfhound was one hundred percent scum, but he knew his weapons, gotta give him that. They say his favorite trick was to blow all four of his victims' limbs off and then his head - before it hit the ground. Anyway, that'll be 2,800. + + + Here's your rapid-fire March pistol. You owe me 2,800 extra. + + + Here you go - Cutter, a submachine gun. Let me say it right off, don't you mind the appearance. It's a brand new model, not in serial production yet. It's a prototype, fresh from the armory. The designers aimed to make a new-generation close-range weapon: a combination of high caliber, rapid fire and accuracy. So that'll be 8,000 extra. + + + Yes, here's Cutter, a rapid-fire submachine gun. That'll be 8,000 extra. + + + Here's a fine specimen - Carabineer. A true army shotgun. Capable of automatic fire while providing good anti-recoil thanks to a balanced, shock-free system. Add 8,000 and it's yours. + + + Here's Carabineer, an automatic shotgun. Add 8,000 and it's yours. + + + I reckon this is just what you need. Eliminator, a latest development. The whole batch was supposed to be shipped to Central Africa, but I got a 'sample' as a special favor from friends. An automatic shotgun with a large magazine and an excellent rate of fire. Yours for only 8,000. + + + Sure. Automatic shotgun Eliminator, with an extended magazine. For 8,000. + + + Sure. Behold Storm, a submachine and grenade launcher in one. This prototype is a modified version of a conventional weapon designed for special units operating in the Zone. Technical innovation at its best from our Slavic brothers... Add 16,000 and it's yours. + + + Sure. Here's Storm, a submachine and grenade launcher with an extended magazine, for an extra 16,000. + + + Here it is - GP37, a new-generation assault rifle. Accurate, reliable, and convenient with a built-in optical scope. It was previously owned by a UN observer. Their group was sent to the Zone to investigate. However, the situation turned for the worse... 16,000 and the rifle is yours. + + + Here it is - GP37, a new-generation assault rifle. The price is 16,000. + + + Just a sec. Here's a modular FT-200M rifle, the brainchild of Belgian gunmakers. Accurate, all-purpose, handy for both righties and lefties, comes with an optical scope and a grenade launcher. I got it from some unlucky UN observers... That'll be 16,000 extra. + + + Here's a modular FT-200M rifle. That'll be 16,000 extra. + + + Here's Tide. Based on a silent sniper rifle, it was specifically designed for military units to fight zombies. Tide yields rate of fire in favor of stopping power, allowing the sniper to pick off zombies one by one without disclosing his location. However, it then became clear that stalkers alone will be enough to stop zombies at the Barrier, so the rifle never reached mass production. This baby's yours for an extra 16,000. + + + Here's Tide, a silent sniper rifle with increased stopping power. Add an extra 16,000 and enjoy. + + + Here. This is an SVU2-A, a short sniper rifle with an increased rate of fire. I bought it off Mac, the legendary Freedom guard. He swore there are no others like it in the whole Zone. It's an exclusive item, at least in these parts. It'll be 16,000 extra. + + + Yeah. SVU2-A, a short sniper rifle with an increased rate of fire. It'll be 16,000 extra. + + + Sure, just look at Lynx here. Hand-crafted by a local expert. He's deceased now, so there won't be any copies. It looks just like any other rifle, but take it out for some target practice and you'll feel all the difference. It's got a perfect combination of accuracy and stopping power. Add the remaining 16,000 and this baby's yours. + + + Yeah, Lynx - a sniper rifle with increased accuracy and power. Add 16,000 and it's yours. + + + Look here. I managed to get everything off my list - a CS-3a with a helmet. The helmet is nothing special on its own, but it allows for installing a mobile tactical complex, which includes a high-quality night vision system and an active infrared sensor. Now, the CS-3a armor is a real beauty. Excellent protection from bullets and anomalies is a rare feature indeed in a suit as light and mobile as this one. The whole thing will cost you 32,000. + + + Yeah. A set of CS-3a armor with a tactical helmet. 32,000 in all. + + + Specially for you, a SEVA suit. Everything just like you ordered - a closed-cycle respiratory module, thermal resistant, protective electrical circuit, and outer-surface anticorrosion materials. Plus several built-in artifact containers as a bonus. A must-have suit for any stalker. Toss in 24,000 like we agreed and it's yours. + + + Here. A SEVA suit. The price is 24,000, like we agreed. + + + There it is, a combat exoskeleton as large as life. The best protection you can get in the Zone from bullets, claws or grenade fragments, with the exception of armored vehicles. But it also takes after armored vehicles in that it relieves your weight burden - within reason, of course. 48,000 and it's yours, warts and all... err... by that I mean batteries and servomotors. + + + There it is, a combat exoskeleton as large as life. 48,000 and it's yours. + + + I want to place an order. + + + No problem. What do you need? + + + A pistol. + + + Of course. It'll be 3,500, of which I will require an advance payment of 700. + + + Okay, here you go. + + + I'll get in touch with you as soon as the order is ready. + + + I don't have the money on me. + + + Well, please come back when you've got the cash. + + + You know, I've changed my mind. + + + Fine. If you finally decide to make an order, I'm always here. + + + You're not a very reliable customer, so the pistol will cost you 4,200. And I will require an advance payment of 1,400. + + + I'm afraid the best pistols have already sold out. If you want the regular stuff, Owl's the man to see. + + + A close-range weapon. + + + Sure thing. The price is 10,000, and I'll need 2,000 of that in advance. + + + You refused to pick up your last order... So this one will cost you 12,000, and I'll need 4,000 of that in advance. + + + Hrm... You know, I probably can't help you there. The demand is too high. + + + An assault weapon. + + + Something high-caliber and with rapid fire capability, okay... The regular price is 20,000, with a 4,000 advance payment. What do you say? + + + You're a tough customer. I'll have to charge you 24,000 and I need 8,000 paid in advance. Deal? + + + Right now is a bad time... the military are making things hot at the Cordon. Someone attacked their outpost the other day, which made them even more difficult to deal with. + + + A sniper weapon. + + + For you I can get the best for only 20,000, but you'll have to pay me 4,000 in advance. + + + Working with you entails a certain amount of risk... I can try to arrange your order for 24,000, but you'll need to make a 8,000 down payment. + + + Sorry, this type of weapon is hard to come by right now. My contact for sniper stuff is... let's say he's indisposed. + + + An armored suit. + + + Yeah, I can think of something... suitable. It'll cost you 40,000, but you'll have to pay me 8,000 in advance. + + + Yeah, I can think of something... suitable. You refused to collect your last order, so the price will be 48,000 and you'll have to pay me 16,000 in advance. + + + I won't be able to do any better than the last suit I got for you. That one was both unique and top of the line. + + + A suit with a closed-cycle respiratory module. + + + That's a tall order... Won't be easy to obtain, not by a long shot. I can try to get one of these babies for 30,000, but I have to ask for a down payment of 6,000. + + + You let me down on the last order, so I have to think twice this time. I can try to get one of these babies for 36,000, but I have to ask for a down payment of 12,000. + + + I bent over backwards to get the last one. Don't think I'll be able to repeat that. + + + An exoskeleton. + + + You must have given this choice a lot of thought. I can get my hands on a combat version, but it'll cost you 60,000. Expensive, I know, but well worth it. Keep in mind I'll need 12,000 of that paid right now. + + + You didn't treat me very nicely on the last order, so this one'll set you back 72,000. Keep in mind I'll need 24,000 of that paid right now. + + + No way. Since they closed the manufacturing plant, vacant exoskeletons are typically found only on corpses... That's just not my method. + + + Nothing right now. + + + Sorry, my shop is closed at the moment. Temporary difficulties with order shipments... + + + Hello. I'm Nimble. People come to me for unique weapons. Rare models, prototypes, unique shooters - stuff like that. Plus elite equipment, the latest modifications of protective and combat suits. I check every item personally, so quality is guaranteed. + + + Hello. Would you like to place an order? + + + Hello. + + + Your order will be delivered very soon. + + + The order is finished. Please come to collect it. + + + Hey! Are you Snag's pal? + + + Yes, I know him. + + + He told me you're bringing us some loot... + + + I don't remember agreeing to that. + + + Yeah, all right. We ain't no bitches to be waitin' on Snag like that. + + + Bye. + + + No can do! + + + Think carefully now. If you've got half a brain, you'll know it's best to play nice when you're outnumbered. + + + I said no! + + + No. I don't know him. + + + Ahh... damn... I'm hurt real bad... Help me, bud, I need a medkit... I ain't got long... + + + Take this medkit. + + + Whew! Thank you, buddy. I was this close to buying it in a Boiler. The mutant dogs would've had a field day... Here, take my detector. Might come in handy one day... Thanks for saving my life, really. I think I'll take a breather at the base now. + + + Good luck. + + + Whew! Thank you, buddy. I was this close to buying it . The mutant dogs would've had a field day... Here, take this artifact. Might come in handy one day... Thanks for saving my life, really. I think I'll take a breather at the base now. + + + I can't, I need it myself. + + + I don't have a medkit. + + + Thanks again! Without you I'd be pushing up daisies right now... + + + Stalker! Quick, come help Petrukha! Look over there, at the edge of the crevice! He got whacked by an anomaly! Even his suit didn't help one bit! And me, I don't have one. Petrukha and I pooled all our money together to buy that one... If I take another step, I'm done for! Help us, please!! + + + OK, stay where you are. I'll give it a try. + + + Deal with it yourselves. + + + Thanks for saving Petrukha. Damn, why didn't we save up for a better suit! + + + Get out of my sight. You let Petruha die... He was twice the man you'll ever be! + + + See you next time. + + + I wiped out the bloodsucker lair. + + + Good. You avenged our dead brothers, God bless their souls... You've earned this reward. + + + I found a whole bloodsucker lair underneath the antenna complex. + + + Okay. The lair must be wiped out. Let me think a second... Who the hell knows how many bloodsuckers there are in those tunnels. Maybe we could gas them instead. I remember Owl saying something about gas tanks. You talk to him - we're not on very good terms... If you manage to get the gas tank, just connect it to the antenna complex ventilation system and it'll all be over in a few minutes. + + + OK, I'll do that. + + + I'll think about it. + + + I've already got a gas tank. + + + Wow. You got skills, pal. + + + Ah, there's our stalker. We've been waiting for you. + + + What's the plan? + + + We're going to a meet. You won't have to do much, or so I hope. Just stand by and be cool. + + + OK. + + + Hah. We sure made them sorry. Nice trigger skills, stalker. Here. + + + Good luck. + + + You friggin wannabe. You botched up a sure thing, now get lost. + + + Bye. + + + What's your hurry? + + + Nothing. + + + Owl sent you? + + + Yes. He told me you needed help. + + + I need help, that's true. I reckon you'll do just fine. + + + OK. What's the job? + + + Provide protection during a business transaction. That's it. + + + I can do that. + + + Stand by and cover me. + + + Got it. + + + I'll talk to the boss only. + + + Up to you. + + + Thank you, stalker. You were a lot of help. I had a feeling those assholes would screw up one way or another. They were being trailed all the way! This is for your troubles. + + + Good luck. + + + You make a fine slacker, but a lousy bodyguard. But I promised to pay you, so I will. + + + Good luck. + + + You make a fine slacker, but a lousy bodyguard. But I promised to pay you, so I will. + + + Good luck. + + + What do you want? There's nothing to thank you for. I barely made it... Go away! + + + Good luck. + + + Attaboy, thanks for coming. We want to sneak up close to the bandits and listen in. Then we'll see what happens. + + + I see. + + + Thank you, stalker. Take this from us... Barman's got your main reward. + + + I see. + + + Tell me about your life here. + + + It ain't a walk in the park, that's for sure... What exactly do you want to know? + + + What is it that you do here? + + + We watch over stalkers. You have to admit that a good half of you are more like little kids than men. You come to the Zone with some silly dreams, or to play heroes, or just because life's treating you badly. You don't realize all that's waiting for you in here - the grim reaper, mostly. That's the kind we look after. We find one at the Garbage, we take his gear and send 'im back to the Cordon. Some wise up and go back to the outside. Those with the stones to come back here, we put under our protection and we tax 'em. I'm tellin' ya, no one dares go on our territory - not the army, not the mercenaries, not even mutants. + + + What brought you to the center of the Zone? + + + Our legs. We came here for stalkers, what else? Without us around to keep order it's sheer goddamn chaos. You loot it, you keep it, sure, but who's gonna pay your taxes? You know, the peace and security tax. Like if one of youse is milking an anomaly while we're on the lookout, keeping mutants at bay. If he comes out fine, we take a cut... for maintaining order, you understand. + + + How did you become boss? + + + Where do I begin... I guess it goes back to high school. I had a good buddy, a best friend, if you will. We hung out together, smoking, drinking and whatnot. Only he wanted more and more thrills. He got into drugs: some weed at first, then smack and then coke, when he started getting some coin. I told him, "You gotta get off this shit, Tolyan, before it's too late." But he didn't listen. He scored some bad shit one day and that was that. I found his dealers and got even for my buddy... Got my picture took and all hell broke loose - the slammer, the gang fights, the shiv in the belly... Got out, started a business, got busted again... When I got out again, I left all that shit behind and set my sights on the Zone. Spent a couple months toughing it out, then got promoted. So now I'm in charge here, upholding the local law. + + + What do you think about stalkers? + + + They're all different, like. Some are punks who don't last here a week, others are earners... and others still are okay guys that life has kicked around on both sides of the Cordon. We fleece the first kind, tax the second kind. As far as the last kind, well, we just try not to get in each other's way. Too bad you can't always tell them apart right away... + + + Oh, never mind. Fuhgetaboutit. + + + Suit yourself. + + + Now Beard will work for us. + + + You know what they say, "the cow is ours, let's get to milkin'." Pay him a visit once in a while and remind him to pay up his fee. + + + Beard got an important order for an artifact called Compass. + + + We must intercept the artifact. Beard won't get his panties in a bunch for some small fry. My gut says he needs this thing to save his ass... to stay in business, that is. Bring me this Compass thing as soon as you find it. + + + I found the Compass. Here. + + + I refuse to look for the Compass for you. + + + Hey jackass, you get this straight. If you say you're down for something and you let me down, well, I ain't gonna like you much after that. And people I don't like tend not to enjoy life. You got that? + + + I'll keep that in mind. + + + I'll get those detectors from the stalkers. + + + Good. Meanwhile I'll deal with our client's other channels. + + + A little bird told me you delivered a Compass to Beard. Now you listen to me, jag-off. If you say you're down for something and you let me down, well, I ain't gonna like you much after that. And people I don't like tend not to enjoy life. You got that? + + + I'll keep that in mind. + + + Beard is now out of upgraded detectors. + + + Sweetness. While you were gone, I kept myself busy cutting off his other channels. Now the client's ours, lock stock and barrel. Go talk to Beard, tell him Sultan says 'Hi.' + + + Beard owes me money. Owl said you could help me. + + + I guess I can... Here's my thinking: we drive Beard broke and take over his setup, you get your money and a cut of the business. Deal? + + + Deal. + + + Now your job's to find out what's keeping Beard busy right now. Cutting off his supply channels will do the trick. + + + I'll think about it. + + + Just remember, thinking's bad for your health. + + + Think Nimble might be dealing in stolen goods? + + + Nimble? Nah, he ain't got the guts. Owl's our local dealer for the hot stuff. Whatever you're selling, he'll buy it, no questions asked. + + + I'm looking for Snag. Do you know where I can find him? + + + I do. My boys saw him at the dock cranes a couple days ago. I ought to shake that punk down for some money he owes me, but I keep forgetting. + + + I've got a job for you. My boys need to see a trader... you know, business related. It's been hot in the Zone lately, so I thought an extra shooter wouldn't hurt. Make sure the shit goes down nice and smooth. + + + OK. + + + Good. My people will meet you near the ranger station. The coordinates are in your PDA. + + + I see. + + + I'm not interested. + + + The hell you still doin' here? Get your ass to the ranger station. + + + Uh-huh. + + + So, you make up your mind yet? Are you with us or what? + + + I am with you. + + + I'm on my own. + + + Remember. I'm Sultan. Everything that goes down here is either under my control or will be soon. If you want to live the good life, you gotta work for me. If you don't, you'll live the shitty life. That's how we roll, bro. + + + What do you need? + + + What brings you here? + + + Well? + + + I killed all the stalkers myself. + + + Whoa, dude... shit, you a rough rider. Coming in here and taking them out like that, shit. What the hell did I hire you for... You ain't got us no cash, only heat... Cool the hell down man, you hear... + + + Do you enjoy working for the scientists? + + + It ain't bad. No problems yet, everything seems cool. The scientists tossed some equipment our way, so we're doing good. + + + Excellent! The work is simple and they pay well. No one's come looking for the scientists while we've been here. Not even the monsters. + + + I'm putting a squad together to go to Pripyat with. Will you join us? + + + Nah... I ain't got a hard-on for Pripyat, unlike others... Plus we got a job to do, protecting the scientists... You might wanna take that soldier dude with you. He'd get a chance to look for his army buddies, and we'd breathe easier, too. The guy's okay, kinda, but this ain't the best place for him... + + + Nah... I ain't got a hard-on for Pripyat, unlike others... Plus we got a job to do, protecting the scientists... + + + Would you like to work for the scientists? + + + What's the job? + + + Guarding their bunker. + + + Well, guarding, heh... wouldn't be the first time. I agree. We'll start for the bunker as soon as we're ready. + + + Taking measurements in anomalies. + + + Measurements, heh. Do I look like a lab technician to you? It's not really my profile. + + + Let's talk about that later. There's too many new hoods running around; gotta put them back in their place and maybe then think about work. + + + All right, let's blow this joint. We'll give it to 'em good! + + + Good. + + + We better find some cover though. It's the friggin' emission! + + + Let's blow this joint. We'll give it to 'em good! Stay cool, it's gonna be all right. + + + Popped 'em good, eh! Here's the coin, pal. I'll holler atcha if we get any more 'business.' + + + Whoa, dude... shit, you're a rough rider. Coming in here and taking them out like that, shit. What the hell did I hire you for... You ain't got us no cash, only heat ... Cool the hell down man, you hear... + + + You ain't clear?! Where the stalkers at, huh?!... What kinda bullshit is this? You snitched, didn't ya? Couldn't have been no one else! All my bros were right next to me all this time... Now your dumb ass is gonna get the pluckin' the stalkers woulda gotten! What the hell you looking at - empty your pockets now, bitch! + + + We should get going... to the barge. + + + Hey there, chief. Sorry, but I ain't in the talking mood right now. + + + I'll help you. + + + Great. We'll set up the meet as agreed and you'll head out. When they come up, we'll drop the bomb on them from all sides. Make sure to keep your distance, don't catch friendly fire. + + + OK. + + + Nah. I ain't down with that. + + + Howdy, stalker. I'm busy right now. Let's talk later, okay? + + + Thanks for the warning. Maybe you can agree to our plan? A nice chance to shoot the bastards in the back, so to speak. + + + We'll ambush them. When we do, you start shooting the shitheads from the rear. + + + Those assholes are as good as dead. Thanks for the heads up. + + + Thanks for helping us. + + + Howdy. Listen, if it ain't urgent, let's chat later, k? + + + Hello. + + + I found Magpie. He was at Yanov station, posing as 'Flint.' Hes been dealt with. + + + Dealt with? Thats a pity. I sure would have loved to hurt that cockroach myself... Oh well, it's good news either way. Here, take this - Im a man of my word. + + + Thanks. + + + I want to leave the Zone. + + + You sure? There aint no way back. + + + Im sure. Lets go. + + + Actually... Ill stay for now. + + + OK, take the money. I don't want to fight. + + + Huh? Gimme everything you got, bitch! Then get lost and stay lost! + + + I'm leaving. + + + No can do! + + + Let's have a look... With your health? Well, if youre doing badly, I must be dead or something... + + + Listen, there's some urgent business. A trader I know wants to swing a deal. Only problem is, his customers are the bothersome type, so he's hiring a security guard just in case. You interested? + + + Yes. + + + OK. The trader will be waiting for you by the ranger station, he'll fill you in on the details. + + + Not really. + + + Up to you. If you do change your mind soon enough, the job may still be up for grabs. + + + What kind of job can you offer me? + + + The money-making kind. Now think: why am I asking you? You're the new guy with no connections to speak of but if you play your cards right you could quickly gain the locals' respect. Wanna know what I'm thinking? + + + Yeah, sure. + + + All right, then listen up. We got a mind to shake down a few of Beard's stalkers. It's a real cinch. Late at night, you and our guys come up to Shevchenko, and before these tourists figure out what's going down, you take em for a ride. We get the dough, you get the props... Catch my drift? Alrighty then. See Knuckles standing over there? He'll give you all the details. + + + Not really. + + + Too bad. Take some time and think it over... You'll come back if you know what's good for you, buddy. + + + The kind you'd appreciate if you wanna go places... Wanna know what I'm thinking? + + + Barge's PDA. I found his dead body in the caves under the burnt farmstead. + + + I found it near some bare bones not far from Oakpine. It's Joker's PDA. + + + Joker's?!... That's impossible! Wow, I'm so devastated... Joker's dead... Oh Joker, we won't be laughing at your jokes anymore... Rest in peace... I hope Barge is all right at least... + + + Joker's?!... That's impossible! Wow, I'm so devastated... So Joker's dead too... Oh Joker, we won't be laughing at your jokes anymore... Rest in peace... And you too, Barge... How did it come to this... + + + Barge's and Joker's. I found one by a skeleton near Oakpine, and the other on a dead body in the caves under the burnt farmstead. + + + To be honest with you, there's not much to tell. Emissions are especially dangerous and almost always fatal. You can feel one coming on gradually, by the changing weather, but it passes soon after hitting its peak. At the first signs of its approach, run for the nearest cover - a cave, something made of concrete, bricks or steel... Like some others, I can feel an emission coming on when my back starts to ache. As for the nature of emissions, I don't have anything useful to tell you - I just don't know. + + + Need goods? Information?.. Or maybe you want to sell information? + + + Sultan says youre planning to fleece the stalkers. Count me in. + + + Great. Get your ass over to Shevchenko after midnight - we'll be waiting for you. Just dont wait till morning to show up. + + + Oh, it's you, bro. So, what did you and Sultan agree on? + + + So... Get over to the barge after midnight but before the sun comes up - well be waiting for you. + + + I think I better stay with you. Well wait for midnight and then you can show me the way to Shevchenko. + + + No problem, stick around. Taking you to the barge aint a problem. + + + Actually... Im gonna go take care of some things. + + + I have major customers outside the Zone who regularly order specific artifacts, which must be delivered within a specific period of time. You bring me what I ask and I pay you good money for it. Keep in mind that these orders are very important for me, which is why I try to commission several agents at a time... You get the full fee only if you deliver first. + + + Via the burnt farmstead. Hrm... Who are you, anyway? + + + They also call that place the Iron Forest. The chopper crashed slap bang into the power pylons. None of the jarheads survived... Even if they did, they'd never make it out alive. Those poltergeists just love chasing people into electric anomalies... Those scumbags respond to the tiniest movement, as Im sure you know. + + + Listen... After the chopper came down, five army guys were spotted there. Apparently they even managed to climb out of that swamp successfully... Reaching that place is no big deal, just stay away from water and keep to steady ground. And you'll need chemical protection, too. So, if you're planning on heading out there, buy some antidotes from the medic. + + + Too bad my buddies Joker and Barge aren't here... We'd have a hell of a time. We were like brothers, always got each others' backs... How did it all come to this?... I'm still here, but they're gone hell knows where... + + + Tell me about Joker and Barge. + + + Ive already got something from there. + + + Start talking... Did you get something for me? + + + Well, that explains it. I know him. He's always been a crook, but lately he's gotten really out of hand, scamming stalkers like that... He needs to be put in his place. + + + I need information from the mercenary camp. Its not as hard as it sounds. + + + OK, Ill be waiting... Keep in mind that the job is urgent - it has to be done within two days. + + + Sultans messengers PDA. + + + Its not that interesting. I'll give you 500 for it. + + + OK. + + + Detector prototypes. Would you like to buy them back? + + + Secret documents, I found them on the bridge by the motor column. Wanna have a look? + + + A strange artifact. I found it at the dredge station. + + + A strange artifact. I found it near Yanov station. + + + Heart of the Oasis artifact. + + + Lets rock. + + + Wait. + + + A group of stalkers is planning to stick you up. Stay alert. + + + Rat bastards... All right, we'll give them a warm welcome... Listen, try to make them think youre on their side. Do that and you can help us fight them off... We'll make it worth your while... + + + I don't give a shit what you agreed to. Hand it over! + + + Okay, here you go. + + + You don't?... We don't give a rat's ass. Hand it over, moron! + + + Easy, easy... Here you go. + + + Rat bastards... All right, we'll give them a warm welcome... Listen, help us fight them off if you can. We'll make it worth your while... + + + Popped 'em good, eh! You didnt get involved, so you aint getting a cut. I'll holler atcha if we get any more 'business.' + + + Youre no use... Dont expect a reward. Well, at least you came to have a chat, Thats something. + + + See ya. + + + Attaboy. Now we put the screws on our little client. I heard Beard gave his stalkers some very powerful detectors designed for finding rare artifacts. So you need to join up with those stalkers and make it so those detectors don't slip past your pocket. Catch my drift? + + + No chance of outmuscling him. I tried to squeeze up his supply routes but that bearded scumbag managed to get a Compass anyway. Looks like hes doing just fine... for now. + + + [continue...] + + + [continue...] + + + [continue...] + + + Grouse is dead. It looks like Tremor killed him... but hes dead too. + + diff --git a/gamedata/configs/text/eng/st_generate_fnames.xml b/gamedata/configs/text/eng/st_generate_fnames.xml new file mode 100644 index 0000000..8464cef --- /dev/null +++ b/gamedata/configs/text/eng/st_generate_fnames.xml @@ -0,0 +1,492 @@ + + + + Sanek + + + Shurik + + + Vadya + + + Vasyan + + + Vasek + + + Vityukha + + + Vetal + + + Vovan + + + Zhorka + + + Grishka + + + Grishko + + + Dimon + + + Lekha + + + Dimukha + + + Zheka + + + Fimka + + + Ilyukha + + + Kostyan + + + Mitka + + + Mikhal + + + Mikha + + + Mikhas + + + Kolyan + + + Tolyan + + + Pavlukha + + + Sashok + + + Stepka + + + Stepukha + + + Timokha + + + Felka + + + Yuras + + + Yashka + + + Andryukha + + + Tokha + + + Arkasha + + + Temka + + + Boryan + + + Bodya + + + Captain + + + Lieutenant + + + Private + + + Andrey + + + Anton + + + Oleg + + + Roman + + + Aleksandr + + + Sergey + + + Anatoly + + + Yuri + + + Bohdan + + + Veniamin + + + Vitaly + + + Vladimir + + + Dmitry + + + Ivan + + + Konstantin + + + Alexey + + + Sanya + + + Sanek + + + Arthur + + + Yashka + + + Yarik + + + Yara + + + Slava + + + Borya + + + Borka + + + Bohdan + + + Slavik + + + Vadim + + + Vadya + + + Vadik + + + Valik + + + Valera + + + Shurik + + + Vasya + + + Vaska + + + Vasko + + + Venya + + + Vitya + + + Vitka + + + Vitalik + + + Vlad + + + Vova + + + Vovka + + + Lenya + + + Seva + + + Sevka + + + Gena + + + Genka + + + George + + + Gosha + + + Zhora + + + Mark + + + Gleb + + + Grisha + + + Alex + + + Grishka + + + Grishko + + + Danya + + + Kiryukha + + + Danko + + + Dennis + + + Dima + + + Dimka + + + Dmitro + + + Zhenya + + + Leshka + + + Zhenka + + + Egor + + + Egorka + + + Fima + + + Vanya + + + Vanka + + + Igorek + + + Ilya + + + Kostya + + + Kostik + + + Tolik + + + Leva + + + Lenya + + + Lyonka + + + Max + + + Matvei + + + Mitya + + + Misha + + + Mishka + + + Nikita + + + Nik + + + Anton + + + Kolya + + + Oleg + + + Pasha + + + Pashka + + + Petro + + + Petya + + + Petka + + + Roma + + + Romka + + + Rostik + + + Toshka + + + Rus + + + Savva + + + Semyon + + + Sema + + + Serega + + + Rusik + + + Stepan + + + Stepa + + + Tima + + + Timka + + + Artem + + + Fedor + + + Fedya + + + Fedka + + + Filya + + + Filka + + + Edik + + + Yurka + + + Yurik + + + Yurko + + + Yasha + + + Master Sergeant + + + Sergeant + + diff --git a/gamedata/configs/text/eng/st_generate_snames.xml b/gamedata/configs/text/eng/st_generate_snames.xml new file mode 100644 index 0000000..722b150 --- /dev/null +++ b/gamedata/configs/text/eng/st_generate_snames.xml @@ -0,0 +1,4836 @@ + + + + Gray + + + Berserk + + + Rotten + + + Patty + + + Spy + + + Bison + + + Beaver + + + Bulldog + + + Ox + + + Sparrow + + + Woodpecker + + + Beast + + + Warlock + + + Humpback + + + Boar + + + Crucian + + + Canary + + + Bedbug + + + Nark + + + Moose + + + Rat + + + Boa + + + Loaf + + + Broken + + + Long John + + + Mayhem + + + Bolt + + + Razor + + + Drum + + + Junk + + + Screw + + + Dynamite + + + Trump + + + Shovel + + + Joint + + + Dead Duck + + + Cross + + + Tar + + + Sock + + + Crowbar + + + Panadol + + + Shiv + + + Piston + + + Nickel + + + Tails + + + Lethal + + + Percher + + + Grindstone + + + Ace + + + Chisel + + + Jackstraw + + + Shortstop + + + Crosstie + + + Stud + + + Jiggers + + + Fist + + + Bruise + + + Tadpole + + + Hacker + + + Khan + + + Koschei + + + Rambo + + + Tour Guide + + + Terminator + + + Chapai + + + Genghis + + + Banana + + + Loaf + + + Butterfingers + + + Papa + + + Spike + + + Homeboy + + + Gangrene + + + Glitch + + + Degree + + + Antelope + + + Fubar + + + Pariah + + + Aspic + + + Charcoal + + + Trump + + + Joint + + + Sock + + + Goblin + + + Moor + + + Reefer + + + Flop + + + Ravioli + + + Chili + + + Grater + + + Fatso + + + Biscuit + + + Ghoul + + + Miser + + + Broken + + + Tightwad + + + Squint + + + Fiend + + + Cripple + + + Kicker + + + Skew + + + Crooked + + + Shifter + + + Toupee + + + Fierce + + + Crony + + + Local + + + Slime + + + Champ + + + Monocle + + + Rascal + + + Deadbeat + + + Hotshot + + + Turd + + + Defunct + + + Psycho + + + Loudmouth + + + Torn + + + Grabber + + + Blind + + + Snot + + + Hipster + + + Met + + + Corpse + + + Slasher + + + Ears + + + Jester + + + Greyhound + + + Lame + + + Sturdy + + + Cranky + + + Connoisseur + + + Robust + + + Squire + + + Leech + + + Artist + + + Conman + + + Banker + + + Hobo + + + Baron + + + Peddler + + + Unorthodox + + + Tramp + + + Bosun + + + Pigmy + + + Bourbon + + + Bourgeois + + + Chauffeur + + + Thief + + + Shaven + + + Gangster + + + Messenger + + + Count + + + Tyrant + + + Savage + + + Strangler + + + Counselor + + + Player + + + Cheat + + + Godfather + + + Veteran + + + Coach + + + Bling-bling + + + Maniac + + + Undertaker + + + Butcher + + + Ninja + + + Executioner + + + Punk + + + Guerilla + + + Pacifist + + + Boulder + + + Pirate + + + Arsonist + + + Prince + + + Brigand + + + Kamikaze + + + Pimp + + + Tyrant + + + Hitman + + + Trombone + + + Chemist + + + Abdurakhmanov + + + Altynnik + + + Barsak + + + Kireev + + + Scherbin + + + Kovalchuk + + + Koev + + + Kozlov + + + Kolontarev + + + Kolontar + + + Kondratenko + + + Korkin + + + Korneev + + + Baul + + + Kravchenko + + + Krivda + + + Krivokhatsky + + + Kuznetsov + + + Kuzmich + + + Kuzyakin + + + Kulchitsky + + + Kuntsev + + + Kurvitz + + + Kucheruk + + + Bashakov + + + Kushnarev + + + Khaladze + + + Lavrik + + + Lavrov + + + Livshits + + + Lisichansky + + + Litvin + + + Lymarenko + + + Mazepa + + + Makarenko + + + Bashmakov + + + Maltsev + + + Mamaev + + + Merzlayev + + + Milchenko + + + Mironyuk + + + Mohrer + + + Kryga + + + Mostovoi + + + Muntyan + + + Mukhamedov + + + Beshevly + + + Myskov + + + Navrotsky + + + Nepritsky + + + Nikanorov + + + Nikeshin + + + Nikulin + + + Futzin + + + Nordiev + + + Nosan + + + Opolev + + + Binoev + + + Orlevich + + + Orlov + + + Petkevich + + + Petrenko + + + Petrov + + + Plokhenko + + + Podyachev + + + Polyanin + + + Poplavsky + + + Popov + + + Blinov + + + Portnykh + + + Prasolov + + + Prokopenko + + + Proskurin + + + Protsenko + + + Prudov + + + Pustovar + + + Puchek + + + Rabinovich + + + Radkevich + + + Bobrov + + + Rezun + + + Rogoza + + + Rodnyansky + + + Rotan + + + Rublev + + + Rudik + + + Rusanov + + + Rychagirsky + + + Savchenko + + + Savchuk + + + Bogdanov + + + Sagitov + + + Sviridov + + + Sedykh + + + Sereda + + + Sidorenko + + + Sidorov + + + Siniy + + + Sinitzyn + + + Skameika + + + Slutsky + + + Boiko + + + Smelov + + + Smoly + + + Sorokin + + + Statzura + + + Stepchin + + + Stychinsky + + + Sykula + + + Tarnavsky + + + Tatarchuk + + + Timchuk + + + Andreychuk + + + Boichenko + + + Boldeskul + + + Bondarev + + + Borisov + + + Brich + + + Bronshtein + + + Buryak + + + Buturin + + + Byalo + + + Valentinov + + + Andruschenko + + + Vasiliev + + + Veselov + + + Vinogradov + + + Vovnenko + + + Volanchuk + + + Volodar + + + Voloshin + + + Vorontsov + + + Vorokhaev + + + Vyushinsky + + + Anisiev + + + Galkin + + + Ganzyuk + + + Garkovenko + + + Garkusha + + + Georgov + + + Glebovsky + + + Gnatyuk + + + Goncharenko + + + Gordienko + + + Gorlevoy + + + Ardashev + + + Gorokhin + + + Goryunov + + + Grebenko + + + Gritzaenko + + + Gritzay + + + Gritzenkov + + + Grishachev + + + Grischuk + + + Gubar + + + Gunko + + + Babich + + + Gurevich + + + Denisenko + + + Dovgalyuk + + + Dombrik + + + Dotsenko + + + Drozdush + + + Dubenchuk + + + Dudorov + + + Duka + + + Dumko + + + Balan + + + Dunaev + + + Dyklov + + + Erofeev + + + Efremov + + + Zhabenko + + + Zhmyev + + + Zhurakovsky + + + Zabyagoda + + + Zagorodnyuk + + + Zamosenchuk + + + Baranov + + + Zarubin + + + Zakharin + + + Zvonnitsky + + + Zinoviev + + + Zozo + + + Zolotar + + + Zubarev + + + Zubkov + + + Ivanov + + + Ignatenko + + + Baranovsky + + + Izhenko + + + Ischuk + + + Kazakov + + + Kazantsev + + + Kandybabko + + + Kapuka + + + Kapustyanko + + + Katz + + + Kikabidze + + + Gatzula + + + Abdurakhmanov + + + Altynnik + + + Barsak + + + Kireev + + + Scherbin + + + Kovalchuk + + + Koev + + + Kozlov + + + Kolontarev + + + Kolontar + + + Kondratenko + + + Korkin + + + Korneev + + + Baul + + + Kravchenko + + + Krivda + + + Krivokhatsky + + + Kuznetsov + + + Kuzmich + + + Kuzyakin + + + Kulchistky + + + Kuntsev + + + Kurvitz + + + Kucheruk + + + Bashakov + + + Kushnarev + + + Khaladze + + + Lavrik + + + Lavrov + + + Livshits + + + Lisichansky + + + Litvin + + + Lymarenko + + + Mazepa + + + Makarenko + + + Bashmakov + + + Maltsev + + + Mamaev + + + Merzlayev + + + Milchenko + + + Mironyuk + + + Mohrer + + + Kryga + + + Mostovoi + + + Muntyan + + + Mukhamedov + + + Beshevly + + + Myskov + + + Navrotsky + + + Nepritsky + + + Nikanorov + + + Nikeshin + + + Nikulin + + + Futzin + + + Nordiev + + + Nosan + + + Opolev + + + Binoev + + + Orlevich + + + Orlov + + + Petkevich + + + Petrenko + + + Petrov + + + Plokhenko + + + Podyachev + + + Polyanin + + + Poplavsky + + + Popov + + + Blinov + + + Portnykh + + + Prasolov + + + Prokopenko + + + Proskurin + + + Protsenko + + + Prudov + + + Pustovar + + + Puchek + + + Rabinovich + + + Radkevich + + + Bobrov + + + Rezun + + + Rogoza + + + Rodnyansky + + + Rotan + + + Rublev + + + Rudik + + + Rusanov + + + Rychagirsky + + + Savchenko + + + Savchuk + + + Bogdanov + + + Sagitov + + + Sviridov + + + Sedykh + + + Sereda + + + Sidorenko + + + Sidorov + + + Siniy + + + Sinitzyn + + + Skameika + + + Slutsky + + + Boiko + + + Smelov + + + Smoly + + + Sorokin + + + Statzura + + + Stepchin + + + Stychinsky + + + Sykula + + + Tarnavsky + + + Tatarchuk + + + Timchuk + + + Andreychuk + + + Boichenko + + + Boldeskul + + + Bondarev + + + Borisov + + + Brich + + + Bronshtein + + + Buryak + + + Buturin + + + Byalo + + + Valentinov + + + Andruschenko + + + Vasiliev + + + Veselov + + + Vinogradov + + + Vovnenko + + + Volanchuk + + + Volodar + + + Voloshin + + + Vorontsov + + + Vorokhaev + + + Vyushinsky + + + Anisiev + + + Galkin + + + Ganzyuk + + + Garkovenko + + + Garkusha + + + Georgov + + + Glebovsky + + + Gnatyuk + + + Goncharenko + + + Gordienko + + + Gorlevoy + + + Ardashev + + + Gorokhin + + + Goryunov + + + Grebenko + + + Gritzaenko + + + Gritzay + + + Gritzenkov + + + Grishachev + + + Grischuk + + + Gubar + + + Gunko + + + Babich + + + Gurevich + + + Denisenko + + + Dovgalyuk + + + Dombrik + + + Dotsenko + + + Drozdush + + + Dubenchuk + + + Dudorov + + + Duka + + + Dumko + + + Balan + + + Dunaev + + + Dyklov + + + Erofeev + + + Efremov + + + Zhabenko + + + Zhmyev + + + Zhurakovsky + + + Zabyagoda + + + Zagorodnyuk + + + Zamosenchuk + + + Baranov + + + Zarubin + + + Zakharin + + + Zvonnitsky + + + Zinoviev + + + Zozo + + + Zolotar + + + Zubarev + + + Zubkov + + + Ivanov + + + Ignatenko + + + Baranovsky + + + Izhenko + + + Ischuk + + + Kazakov + + + Kazantsev + + + Kandybabko + + + Kapuka + + + Kapustyanko + + + Katz + + + Kikabidze + + + Gatzula + + + Abdurakhmanov + + + Altynnik + + + Barsak + + + Kireev + + + Scherbin + + + Kovalchuk + + + Koev + + + Kozlov + + + Kolontarev + + + Kolontar + + + Kondratenko + + + Korkin + + + Korneev + + + Baul + + + Kravchenko + + + Krivda + + + Krivokhatsky + + + Kuznetsov + + + Kuzmich + + + Kuzyakin + + + Kulchistky + + + Kuntsev + + + Kurvitz + + + Kucheruk + + + Bashakov + + + Kushnarev + + + Khaladze + + + Lavrik + + + Lavrov + + + Livshits + + + Lisichansky + + + Litvin + + + Lymarenko + + + Mazepa + + + Makarenko + + + Bashmakov + + + Maltsev + + + Mamaev + + + Merzlayev + + + Milchenko + + + Mironyuk + + + Mohrer + + + Kryga + + + Mostovoi + + + Muntyan + + + Mukhamedov + + + Beshevly + + + Myskov + + + Navrotsky + + + Nepritsky + + + Nikanorov + + + Nikeshin + + + Nikulin + + + Futzin + + + Nordiev + + + Nosan + + + Opolev + + + Binoev + + + Orlevich + + + Orlov + + + Petkevich + + + Petrenko + + + Petrov + + + Plokhenko + + + Podyachev + + + Polyanin + + + Poplavsky + + + Popov + + + Blinov + + + Portnykh + + + Prasolov + + + Prokopenko + + + Proskurin + + + Protsenko + + + Prudov + + + Pustovar + + + Puchek + + + Rabinovich + + + Radkevich + + + Bobrov + + + Rezun + + + Rogoza + + + Rodnyansky + + + Rotan + + + Rublev + + + Rudik + + + Rusanov + + + Rychagirsky + + + Savchenko + + + Savchuk + + + Bogdanov + + + Sagitov + + + Sviridov + + + Sedykh + + + Sereda + + + Sidorenko + + + Sidorov + + + Siniy + + + Sinitzyn + + + Skameika + + + Slutsky + + + Boiko + + + Smelov + + + Smoly + + + Sorokin + + + Statzura + + + Stepchin + + + Stychinsky + + + Sykula + + + Tarnavsky + + + Tatarchuk + + + Timchuk + + + Andreychuk + + + Boichenko + + + Boldeskul + + + Bondarev + + + Borisov + + + Brich + + + Bronshtein + + + Buryak + + + Buturin + + + Byalo + + + Valentinov + + + Andruschenko + + + Vasiliev + + + Veselov + + + Vinogradov + + + Vovnenko + + + Volanchuk + + + Volodar + + + Voloshin + + + Vorontsov + + + Vorokhaev + + + Vyushinsky + + + Anisiev + + + Galkin + + + Ganzyuk + + + Garkovenko + + + Garkusha + + + Georgov + + + Glebovsky + + + Gnatyuk + + + Goncharenko + + + Gordienko + + + Gorlevoy + + + Ardashev + + + Gorokhin + + + Goryunov + + + Grebenko + + + Gritzaenko + + + Gritzay + + + Gritzenkov + + + Grishachev + + + Grischuk + + + Gubar + + + Gunko + + + Babich + + + Gurevich + + + Denisenko + + + Dovgalyuk + + + Dombrik + + + Dotsenko + + + Drozdush + + + Dubenchuk + + + Dudorov + + + Duka + + + Dumko + + + Balan + + + Dunaev + + + Dyklov + + + Erofeev + + + Efremov + + + Zhabenko + + + Zhmyev + + + Zhurakovsky + + + Zabyagoda + + + Zagorodnyuk + + + Zamosenchuk + + + Baranov + + + Zarubin + + + Zakharin + + + Zvonnitsky + + + Zinoviev + + + Zozo + + + Zolotar + + + Zubarev + + + Zubkov + + + Ivanov + + + Ignatenko + + + Baranovsky + + + Izhenko + + + Ischuk + + + Kazakov + + + Kazantsev + + + Kandybabko + + + Kapuka + + + Kapustyanko + + + Katz + + + Kikabidze + + + Gatzula + + + Sinaev + + + Feigelman + + + Ledentsov + + + Alferov + + + Antipin + + + Blinov + + + Bogomolov + + + Vasilevich + + + Geshkenbein + + + Dyakonov + + + Erokhin + + + Zaikin + + + Zakharov + + + Ivchenko + + + Kabanov + + + Larin + + + Manko + + + Mironov + + + Stepanenko + + + Oganesyan + + + Chernodub + + + Shilov + + + Chirikov + + + Belyavin + + + Fadeev + + + Steklov + + + Andreev + + + Spirin + + + Balitsky + + + Abdurakhmanov + + + Altynnik + + + Barsak + + + Kireev + + + Scherbin + + + Kovalchuk + + + Koev + + + Kozlov + + + Kolontarev + + + Kolontar + + + Kondratenko + + + Korkin + + + Korneev + + + Baul + + + Kravchenko + + + Krivda + + + Krivokhatsky + + + Kuznetsov + + + Kuzmich + + + Kuzyakin + + + Kulchistky + + + Kuntsev + + + Kurvitz + + + Kucheruk + + + Bashakov + + + Kushnarev + + + Khaladze + + + Lavrik + + + Lavrov + + + Livshits + + + Lisichansky + + + Litvin + + + Lymarenko + + + Mazepa + + + Makarenko + + + Bashmakov + + + Maltsev + + + Mamaev + + + Merzlayev + + + Milchenko + + + Mironyuk + + + Mohrer + + + Kryga + + + Mostovoi + + + Muntyan + + + Mukhamedov + + + Beshevly + + + Myskov + + + Navrotsky + + + Nepritsky + + + Nikanorov + + + Nikeshin + + + Nikulin + + + Futzin + + + Nordiev + + + Nosan + + + Opolev + + + Binoev + + + Orlevich + + + Orlov + + + Petkevich + + + Petrenko + + + Petrov + + + Plokhenko + + + Podyachev + + + Polyanin + + + Poplavsky + + + Popov + + + Blinov + + + Portnykh + + + Prasolov + + + Prokopenko + + + Proskurin + + + Protsenko + + + Prudov + + + Pustovar + + + Puchek + + + Rabinovich + + + Radkevich + + + Bobrov + + + Rezun + + + Rogoza + + + Rodnyansky + + + Rotan + + + Rublev + + + Rudik + + + Rusanov + + + Rychagirsky + + + Savchenko + + + Savchuk + + + Bogdanov + + + Sagitov + + + Sviridov + + + Sedykh + + + Sereda + + + Sidorenko + + + Sidorov + + + Siniy + + + Sinitzyn + + + Skameika + + + Slutsky + + + Boiko + + + Smelov + + + Smoly + + + Sorokin + + + Statzura + + + Stepchin + + + Stychinsky + + + Sykula + + + Tarnavsky + + + Tatarchuk + + + Timchuk + + + Andreychuk + + + Boichenko + + + Boldeskul + + + Bondarev + + + Borisov + + + Brich + + + Bronshtein + + + Buryak + + + Buturin + + + Byalo + + + Valentinov + + + Andruschenko + + + Vasiliev + + + Veselov + + + Vinogradov + + + Vovnenko + + + Volanchuk + + + Volodar + + + Voloshin + + + Vorontsov + + + Vorokhaev + + + Vyushinsky + + + Anisiev + + + Galkin + + + Ganzyuk + + + Garkovenko + + + Garkusha + + + Georgov + + + Glebovsky + + + Gnatyuk + + + Goncharenko + + + Gordienko + + + Gorlevoy + + + Ardashev + + + Gorokhin + + + Goryunov + + + Grebenko + + + Gritzaenko + + + Gritzay + + + Gritzenkov + + + Grishachev + + + Grischuk + + + Gubar + + + Gunko + + + Babich + + + Gurevich + + + Denisenko + + + Dovgalyuk + + + Dombrik + + + Dotsenko + + + Drozdush + + + Dubenchuk + + + Dudorov + + + Duka + + + Dumko + + + Balan + + + Dunaev + + + Dyklov + + + Erofeev + + + Efremov + + + Zhabenko + + + Zhmyev + + + Zhurakovsky + + + Zabyagoda + + + Zagorodnyuk + + + Zamosenchuk + + + Baranov + + + Zarubin + + + Zakharin + + + Zvonnitsky + + + Zinoviev + + + Zozo + + + Zolotar + + + Zubarev + + + Zubkov + + + Ivanov + + + Ignatenko + + + Baranovsky + + + Izhenko + + + Ischuk + + + Kazakov + + + Kazantsev + + + Kandybabko + + + Kapuka + + + Kapustyanko + + + Katz + + + Kikabidze + + + Gatzula + + + White + + + Green + + + Immortal + + + Rusty + + + Romantic + + + Atrocious + + + Brawny + + + Storyteller + + + Blind + + + Brave + + + Snot + + + Debater + + + Oldtimer + + + Berserk + + + Hipster + + + Met + + + Grim + + + Slouch + + + Dry + + + Lucky Bastard + + + Flecked + + + Fatso + + + Belly + + + Corpse + + + Broken + + + Smart Aleck + + + Slasher + + + Ears + + + Mummer + + + Jester + + + Lame + + + Sturdy + + + Bone + + + Cynic + + + Dude + + + Blithe + + + Cranky + + + Alert + + + Connoisseur + + + Robust + + + Sophomore + + + Native + + + Aviator + + + Agent + + + Squire + + + Leech + + + Crony + + + Disciple + + + Artist + + + Ascetic + + + Conman + + + Banker + + + Bard + + + Baron + + + Peddler + + + Unorthodox + + + Jogger + + + Athlete + + + Fighter + + + Tramp + + + Bosun + + + Pigmy + + + Bourbon + + + Bourgeois + + + Bureaucrat + + + Vandal + + + Barbarian + + + Janitor + + + Zinger + + + Witcher + + + Visitor + + + Viking + + + Chauffeur + + + Diver + + + Chief + + + Thief + + + Voyager + + + Shrink + + + Horseman + + + Loudmouth + + + Gangster + + + Geologist + + + Gladiator + + + Messenger + + + Guest + + + Count + + + Porter + + + Grandpa + + + Defector + + + Salesman + + + Greyhound + + + Dandy + + + Deputy + + + Tyrant + + + Savage + + + Diplomat + + + Doc + + + Doctor + + + Professor + + + Strangler + + + Warden + + + Hobo + + + Counselor + + + Ack-ack + + + Quack + + + Player + + + Indian + + + Iroquois + + + Captain + + + Cheat + + + Clown + + + Duke + + + Red + + + Shaven + + + Cossack + + + Cook + + + Warlock + + + Comanche + + + King + + + Godfather + + + Merchant + + + Smoker + + + Courier + + + Coach + + + Veteran + + + Legionnaire + + + Healer + + + Forester + + + Lord + + + Tycoon + + + Bling-bling + + + Maniac + + + Martian + + + Mason + + + Mechanic + + + Bigtime + + + Undertaker + + + Moderator + + + Milkman + + + Butcher + + + Merc + + + Tuner + + + Boss + + + Ninja + + + Operator + + + Gunsmith + + + Lucky + + + Shah + + + Executioner + + + Polkan + + + Punk + + + Daddy + + + Guerilla + + + Pastor + + + Shepherd + + + Elder + + + Plowman + + + Fortunate + + + Pacifist + + + Transporter + + + Whistle + + + Pilot + + + Trailblazer + + + Pirate + + + Carpenter + + + Arsonist + + + Firefighter + + + Slipper + + + Beanpole + + + Subzero + + + Ambassador + + + Postman + + + Poet + + + Prince + + + Prophet + + + Professor + + + Jumper + + + Beekeeper + + + Workhorse + + + Loyal + + + Rabby + + + Sparks + + + Brigand + + + Rasta + + + Warden + + + Rocker + + + Miner + + + Samurai + + + Minesweeper + + + Orderly + + + Bugeyed + + + Priest + + + Secretary + + + Gigolo + + + Sham + + + Scythian + + + Pathfinder + + + Machinist + + + Kamikaze + + + Breeder + + + Lifesaver + + + Boulder + + + Sportsman + + + Stranger + + + Student + + + Judge + + + Toadstool + + + Pimp + + + Beancounter + + + Trooper + + + Dancer + + + Tyrant + + + Rotten + + + Haggler + + + Mopper-up + + + Sweeper + + + Ethnic + + + Tourist + + + Hitman + + + Trombone + + + Quarterback + + + Sniper + + + Chemist + + + Rusty + + + Verbal + + + Patty + + + Painter + + + Sheep Herder + + + Shaman + + + Pitman + + + Coalminer + + + Sheriff + + + Chief + + + Scholar + + + Cabby + + + Humpback + + + Spy + + + Electrician + + + Cadet + + + Heathen + + + Alligator + + + Anaconda + + + Baboon + + + Bison + + + Beaver + + + Mantis + + + Proud + + + Bulldog + + + Chipmunk + + + Ox + + + Grice + + + Sparrow + + + Raven + + + Muskrat + + + Plantain + + + Scavenger + + + Rook + + + Bitter + + + Manul + + + Goose + + + Dolphin + + + Dinosaur + + + Thrush + + + Woodpecker + + + Hedgehog + + + Beetle + + + Hare + + + Beast + + + Thunder + + + Warlock + + + Aurochs + + + Turkey + + + Boar + + + Crucian + + + Canary + + + Bedbug + + + Cobra + + + Mosquito + + + Stallion + + + Bully + + + Cat + + + Croc + + + Grasshopper + + + Nark + + + Moose + + + Mammoth + + + Elephant + + + Germ + + + Gnat + + + Ant + + + Long John + + + Gadfly + + + Spider + + + Rat + + + Pilgrim + + + Piranha + + + Python + + + Hare + + + Owl + + + Falcon + + + Marmot + + + Softie + + + Gopher + + + Minnow + + + Cockroach + + + Tarantula + + + Hamster + + + Boa + + + Owl + + + Ferret + + + Worm + + + Pitman + + + Dead Duck + + + Absolute + + + Anomaly + + + Bumper + + + Loaf + + + Broken + + + Mayhem + + + Fireball + + + Bolt + + + Razor + + + Drum + + + Percher + + + Doughnut + + + Vacuum + + + Junk + + + Pebble + + + Fan + + + Chopper + + + Wind + + + Screw + + + Collar + + + Nail + + + Redhead + + + Tadpole + + + Cartridge + + + Globe + + + Boulder + + + Grenade + + + Fog + + + Coffin + + + Summertime + + + Engine + + + Dynamite + + + Holey + + + Butterfingers + + + Legal + + + Lock + + + Breech + + + Isotope + + + Rock + + + Trap + + + Sorcerer + + + Karma + + + Brick + + + Glue + + + Meany + + + Key + + + Whip + + + Trump + + + Cap + + + Log Splitter + + + Whiskey + + + Root + + + Scythe + + + Space + + + Shovel + + + Scrub + + + Joint + + + Cross + + + Tar + + + Trigger + + + Sock + + + Crowbar + + + Machine + + + Target + + + Motor + + + Pump + + + Iron + + + Nocturnal + + + Shotgun + + + Panadol + + + Parachute + + + Round + + + Five + + + Shiv + + + Piston + + + Putty + + + Gunpowder + + + Hardware + + + Nickel + + + Rocket + + + Rack + + + Reactor + + + Hatchet + + + Sieve + + + Tails + + + Robot + + + Stag + + + Spade + + + Charcoal + + + Moonshine + + + Boot + + + Cider + + + Lethal + + + Booze + + + Gouge + + + Barrel + + + Chest + + + Axe + + + Butt + + + Swifty + + + Grindstone + + + Ace + + + Knot + + + Factor + + + Lamp + + + Chisel + + + June + + + Garlic + + + Jackstraw + + + Chance + + + Fatso + + + Shortstop + + + Thorn + + + Closet + + + Crosstie + + + Roach + + + Nozzle + + + Rod + + + Stud + + + Screw + + + Jiggers + + + Miser + + + Brainiac + + + Fang + + + Claw + + + Bone + + + Fist + + + Nerve + + + Skeleton + + + Tail + + + Crest + + + Bruise + + + Gray + + + Tightwad + + + Hacker + + + Khan + + + Athlete + + + Pinocchio + + + Witcher + + + Voldemort + + + Homer + + + Dragon + + + Thunder + + + Gioconda + + + Squint + + + Noodle + + + Tin Man + + + Icarus + + + Casanova + + + Koschei + + + Caesar + + + Kolobok + + + Kutuzov + + + Peewee + + + Bonaparte + + + Thinker + + + Nelson + + + Neptune + + + Oscar + + + Prometheus + + + Pushkin + + + Friday + + + Rambo + + + Roquefort + + + Tour Guide + + + Terminator + + + Dork + + + Ink + + + Caesar + + + Chapaev + + + Chapai + + + Chebur + + + Cheburashka + + + Chingachgook + + + Genghis + + + Shtirlitz + + + Banana + + + Hawk + + + Brownie + + + Loaf + + + Papa + + + Spike + + + Homeboy + + + Bulkin + + + Bulldozer + + + Buffer + + + Dumpling + + + Whist + + + Saber + + + Gangrene + + + Hybrid + + + Glitch + + + Drummer + + + Highlander + + + Degree + + + Gremlin + + + Antelope + + + Uncle + + + Fubar + + + Chilly + + + Pariah + + + Kagor + + + Cabbage + + + Carbide + + + Aspic + + + Trump + + + Commodore + + + King + + + Joint + + + Sock + + + Fiend + + + Ice + + + Goblin + + + Moor + + + Madera + + + Spaghetti + + + Master + + + Mutant + + + Reefer + + + Flop + + + Pond + + + Cripple + + + P.I. + + + Ravioli + + + Chili + + + Strap + + + Doughboy + + + Bubble + + + Grater + + + Burr + + + Ryazansky + + + Moonshine + + + Cripple + + + Morel + + + Biscuit + + + Tobacco + + + Timesheet + + + Ace + + + Zucchini + + + Ghoul + + + Trombone + + + Phantom + + + Stunt + + + Gray + + + Kicker + + + Coma + + + Skew + + + Clumsy + + + Spine + + + Crooked + + + Rainbow + + + Shifter + + + Bush + + + Toupee + + + Siniy + + + Brown Nose + + + Fierce + + + Peewee + + + Stiff + + + Necro + + + Local + + + Grave + + + Slime + + + Champ + + + Narcissus + + + Black + + + Lax + + + Loser + + + Goofy + + + Nuisance + + + Crybaby + + + Monocle + + + Rascal + + + Deadbeat + + + Paranoia + + + Hotshot + + + Teflon + + + Rogue + + + Turd + + + Defunct + + + Righteous + + + Simpleton + + + Psycho + + + Workhorse + + + Torn + + + Grabber + + + Harsh + + diff --git a/gamedata/configs/text/eng/st_items_artefacts.xml b/gamedata/configs/text/eng/st_items_artefacts.xml new file mode 100644 index 0000000..1c0cb44 --- /dev/null +++ b/gamedata/configs/text/eng/st_items_artefacts.xml @@ -0,0 +1,153 @@ + + + + A compound of several hollow organic formations, this artifact emits a gaseous substance that can neutralize radioactive particles inside the body without harming it. Because of its effectiveness, this artifact is in great demand. + + + Bubble + + + A reddish formation of compressed and fossilized plants, soil and animal debris. Can partially neutralize chemical poisons. Emits radiation. + + + Stone Blood + + + This artifact is formed in anomalous zones with intense thermal activity. Actively consumes excessive heat, remaining cool to the touch throughout. Emits radiation. + + + This artifact is made up of a granite-like stone deformed by an extreme gravitational force, resulting in a crystallized formation that has not been explained by science to date. Can provide moderate protection against psy-emissions and is radioactive. + + + Stone Flower + + + Crystal + + + The composition of this artifact includes electrostatic elements, but scientists have yet to identify the exact physical conditions required for its formation. The artifact is popular in the Zone and valued by its residents and visitors for its energizing properties, although it can tire the body out through prolonged use. Emits radiation. + + + Battery + + + This artifact used to be considered trash, devoid of any useful properties. However, scientists recently discovered that if kept in constant contact with the body, it has an excellent stimulating effect on the nervous system. Emits radiation. + + + Shell + + + Much about this artifact remains a complete mystery to scientists. At the same time, it is known for certain that emissions produced by pulses in its thicker sections force blood in open wounds to clot quicker, forming a protective scab. One of the most noticeable effects of this artifact is the increased speed of wound healing. Emits radiation. + + + Mama's Beads + + + This electrostatic artifact is a powerful absorbent of electricity, which it later discharges. Flash is capable of protecting its bearer from electric shocks of up to 5,000 volts. Emits radiation. + + + Flash + + + This unique electrostatic artifact can resonate under the influence of psy-waves. Stalkers have learned to fine-tune the artifact so that it resonates in opposite phase to the main source of emissions, thus fully or significantly neutralizing their effects. Emits radiation. + + + Moonlight + + + A bright representative of the electrostatic family of artifacts, this artifact can smooth fluctuations in electric field density. Emits radiation. + + + Sparkler + + + This artifact, which resembles the human eye, considerably increases the body's metabolism, helping wounds heal quicker. Experienced stalkers say that the Eye also brings luck. Emits radiation. + + + Eye + + + This artifact forms in areas of high thermal activity. Produces powerful infrared emissions, which intensify metabolic processes, healing wounds before its bearer's very eyes. As this artifact is very rare, it is extremely valuable. Emits radiation. + + + Flame + + + Even though Fireball is a thermal artifact, it can be handled without fear of being burned. This artifact is valued for its ability to maintain a temperature of 75 degrees Fahrenheit within a small radius, virtually regardless of its surroundings. Emits radiation. + + + Fireball + + + A relatively rare artifact which forms in areas contaminated with chemicals, Kolobok is highly valued for its ability to heal wounds of any kind in mere minutes. For unknown reasons, scientists are spreading rumors among stalkers that the artifact interacts with the bearer's genetic code. Emits radiation. + + + Kolobok + + + Firefly + + + The result of an interaction between a large number of gravitational fields, Goldfish produces its own powerful internally directed gravitational field, which renders items within its range almost weightless. This artifact is most effective for reducing carried weight, which explains why it is always in great demand. Emits radiation. + + + Goldfish + + + Gravi is formed from metallic substances exposed to prolonged gravitation. This makes it capable of sustaining an antigravitational field, and many stalkers use it to reduce the weight of their backpacks. Emits radiation. + + + Gravi + + + At first glance, this artifact resembles Kolobok. Some claim that it actually is Kolobok, its properties reinforced by exposure to a powerful electric field. Thanks to its unique properties, the artifact can significantly increase the bearer's muscle tone. Emits radiation. + + + Snowflake + + + This gravitational artifact attracts and absorbs radioactive particles, reducing the effects of radiation on the body. Very common in the Zone and is unofficially used outside the Zone for treating acute radiation sickness in exceptional circumstances. + + + Jellyfish + + + This organic artifact consists of deformed, mutated animal tissue. When placed in a chemically contaminated area, Meat Chunk transforms the airborne chemicals into a mucous fluid. Emits radiation. + + + Meat Chunk + + + This glowing artifact can generate a local directed low-gravity field. Widely used by stalkers along with Gravi, a similar artifact, to increase maximum load. Emits radiation. + + + Night Star + + + A unique organic artifact with properties just as unique. Somehow it increases the body's overall recovery rate from damage of any kind, without accelerating the accumulation of toxins. Thanks to its effects and attractive appearance, this artifact is a valuable collector's item. Emits radiation. + + + Soul + + + This bizarrely-shaped artifact appears in places with increased gravitational activity. Acting as a kind of sponge that absorbs radioactive elements, this artifact provides protection from outside radiation as well as from radioactive particles that have already made their way into the body. + + + Wrenched + + + Compass + + + A rare artifact - it's been several years since one was found. The artifact can locate gaps in anomaly fields. It is believed that it can help one traverse the most complex anomaly fields completely unharmed. However, very few know how to handle it properly. + + + Heart of the Oasis + + + This artifact was found at the center of the legendary Oasis. It appears that the Heart is a crystallized plant, which has acquired the healing properties of the Oasis. Unlike the Oasis itself, however, this artifact is extremely radioactive. + + + Firefly interacts with fields unknown to science, considerably speeding up regeneration of tissue and organs in living beings, as well as normalizing metabolic processes. This artifact can literally get a badly wounded stalker back on his feet in seconds. Unfortunately, Firefly is extremely rare. Emits radiation. + + diff --git a/gamedata/configs/text/eng/st_items_equipment.xml b/gamedata/configs/text/eng/st_items_equipment.xml new file mode 100644 index 0000000..5b90273 --- /dev/null +++ b/gamedata/configs/text/eng/st_items_equipment.xml @@ -0,0 +1,156 @@ + + + + Anti-radiation drugs + + + Mexaminum radiation protection drugs are common in the Zone. When used, this drug induces contraction of peripheral blood vessels and oxygen deprivation, which serves to treat and prevent radiation exposure. The drug does not have severe side effects, although isolated cases of mild nausea, dizziness, cramps and stomach pain have been reported. + + + Bandage + + + A normal elastic bandage used to stop bleeding and prevent infection of wounds. For regular bleeding, carefully apply the bandage to the wound. For arterial bleeding, urgently tie the bandage around the affected area. + + + Standard issue military binoculars with a maximum of x7.5 magnification. Useful in the Zone in that they allow its owner to observe things from a distance. + + + Binoculars + + + Bread + + + No bakers have ever been identified in the Zone, but this bread is neither contaminated nor radioactive, being fresh and quite edible. At least no complaints have been reported thus far. + + + "Tourist's Breakfast" can + + + Presumably, these canned goods were looted by stalkers from an army ration depot. Without any kind of label on the can, it's hard to say for sure. Should still be good to eat, if you believe the best before date. + + + Echo detector + + + This dated anomalous activity detector produces an alarm signal when anomalous particles enter a special chamber as you approach an anomaly. It can also register the presence of artifacts and measure the distance to the nearest one. The distance is indicated by the frequency of the sound the detector emits. To switch to artifact search mode, open the device's front cover. Due to its simple design, Echo can only be used to locate the most common artifacts. + + + Detector "Bear" + + + Veles detector + + + A next generation scientific detection scanner. Thanks to three modernized detection chambers, the position of artifacts is shown on a special display screen. When closed, the device registers only radiation and anomalies. To switch to artifact search mode, open the front LED display. When in search mode, the detector is capable of locating all artifacts known to science. + + + Svarog detector prototype + + + A prototype of an expanded functionality anomalous frequency scanner. This device comes with a program used to identify static areas of anomalous activity stored in its database, while retaining the ability to locate artifacts. The position of anomalous areas and artifacts is displayed on a special screen. The artifact search mode, which can be activated by opening the front LED display, has been modified to detect anomalous formations currently unknown to science. + + + A standard head-mounted flashlight. Useful for stalkers who find themselves out and about after dark, but may attract trouble if used unwisely. + + + Flashlight + + + Anabiotics + + + Antidote + + + The IP2 antitoxin is a complex drug comprising several antidotes, including metoclopramidum, pyridoxine, thiamine, riboxin and other pharmaceuticals. The drug is used to inject a range of antibiotics to neutralize natural poisons, together with synthetic poison absorbers, into the bloodstream. IP2 is not particularly popular in the Zone, as most stalkers rely on a gas mask and a protective suit, there are still those who have a pack of this antidote stashed away. The effects of the drug are long-lasting. + + + Hercules + + + Vinca + + + Ukrainian Vikasolum - an artificial equivalent of vitamin K. The main purpose of this drug is to increase blood coagulation speed. In great demand among stalkers who want slow-healing wounds and lacerations inflicted by mutants to close up faster. The effects of the drug are long-lasting. + + + Psy-block + + + A drug that blocks avalanche-like nerve impulses. Consumption induces short-term loss of all emotion. Used exclusively in the Zone to counteract the effects of anomalous psy-fields. The effects of the drug are long-lasting. + + + Radioprotectant + + + Stalker energy drink + + + Often used by stalkers on long trips when no breaks can be afforded. The drink contains easily digestible carbohydrates, as well as drugs that stimulate the release of adrenaline into the bloodstream. + + + A trusty guitar. + + + Guitar + + + Diet sausage + + + For better or worse, this sausage - a mix of chicken and a soy substitute - is often a stalker's breakfast, lunch and dinner in one. Can be stored for a long time due to high preservative content. + + + First-aid kit + + + Army medkit + + + A specialized medical kit for providing first aid to combat casualties. The kit includes blood coagulants based on menadione, painkillers, antibiotics and immunostimulants, as well as a kit for removing bullets and fragments from the body. This medkit is issued to army personnel as standard and is sometimes used by Duty forces. + + + A general purpose single-use medical kit. Handy for treating various injuries - wounds, bruises, regular and chemical burns and various types of poisoning. In demand among stalkers. + + + Scientific medkit + + + A medical kit designed specifically for use in the Zone. The kit contains products for handling wounds, as well as preventing the development of radiation poisoning and reducing accumulated radiation in the body. Contains Vikasolum, Batilolum and Naphazoline, unlike other medkits. + + + No data stored. + + + PDA + + + Cossacks Vodka + + + Made by GSC. Goes down easy and considerably lowers the effects of radiation. Should be enjoyed in moderation. + + + This last generation anomalous activity detector can be used to locate anomalous formations and has a color diode panel, which not only indicates the direction of artifacts, but also measures the distance to them. To switch to artifact search mode, open the device's front cover. Unfortunately, the device is programmed with a somewhat outdated list of detectable artifacts. + + + An experimental drug developed by Professor Ozersky for scientific research teams working in the Zone. At its core, the drug contains tetrodotoxin, known colloquially as "zombie powder," which causes a complete shutdown of the body's central nervous system that may allow people to survive emissions outside cover. The drug has not undergone clinical or field testing, which puts its effectiveness in doubt and raises the issue of possible side effects. + + + Bolt + + + The main component of this product is an anabolic androgen, an artificial steroid, the chemical composition of which resembles testosterone. Often used by stalkers during long raids to reduce muscle fatigue. Significantly increases weight-carrying capacity. The effects of the drug are long-lasting. + + + B190 Indraline radioprotectant, included in medkits issued to nuclear power plant personnel. Used in the Zone instead of the excessively toxic PC1 cystamine hydrochloride, repeated use of which often caused death. Reduces the effects of gamma radiation on live tissue. Best consumed before exposure, as effects are not instant. The effects of the drug are long-lasting. + + + Harmonica + + + For blues and prison romance lovers. + + diff --git a/gamedata/configs/text/eng/st_items_outfit.xml b/gamedata/configs/text/eng/st_items_outfit.xml new file mode 100644 index 0000000..f6291e5 --- /dev/null +++ b/gamedata/configs/text/eng/st_items_outfit.xml @@ -0,0 +1,117 @@ + + + + CS-3a body armor + + + PSZ-9d Duty Armor + + + PS5-M Universal Protection + + + Exoskeleton + + + Bulat armored suit + + + This exoskeleton provides outstanding protection against bullet and fragmentation damage at the cost of mobility. Vulnerable to armor-piercing rounds. + + + Exoskeleton + + + A military armored suit made for assault operations. Provides outstanding protection against full metal jacket rounds and fragmentation damage without reducing the wearer's mobility. Vulnerable to armor-piercing rounds. + + + Military armored suit + + + A regular black leather trench coat. Has no special purpose other than to keep the wearer warm at night or protect him from a blind dog bite. Although the trench coat is not particularly comfortable, it is often used by bandits in the Zone - either because it allows them to hide in the dark or simply due to its "cool" appearance. + + + Leather trench coat + + + SEVA bodysuit + + + Berill-5M armored suit + + + Sphere M12 helmet + + + An aluminum/titanium helmet with a cloth exterior that comes with pockets for additional steel armor pieces and an armor face mask. Sphere M12 is normally used as part of a combination that includes PSZ series Spetsnaz body armor. Quite popular in the Zone thanks to its respirator and built-in first generation night vision device, as well as providing the maximum head protection possible. Comes with electronics slots. + + + Steel helmet + + + A desperately outdated steel army helmet without any additions. Provides no protection against anomalies or radiation, but can deflect bullets. This helmet was never particularly popular in the Zone, except for use in brief armed conflicts between factions. + + + Screen helmet + + + A light helmet with an airtight visor intended for protection from anomalies. Judging by the design, the helmet is made by the same Defense Research Institutes as the SEVA bodysuit. Its intended use may very well be in combination with military suits for operations in highly anomalous areas. + + + Gas mask + + + A regular plastic and rubber gas mask, used for filtering air for radioactive particles and poisonous substances. Widely used by rookies and veterans of all factions due to its universal functionality. Does not provide any physical protection. + + + Tactical helmet + + + A Western model of a tactical helmet that lacks camouflage. It is not known how it made its way into the Zone. The helmet is designed to provide a squad leader with strategic superiority over the enemy via its many scanners and satellite communications devices, which have not been installed in this particular helmet. Comes with multi-layered Kevlar protection and armored elements to protect electronic components. Includes a respirator and a first generation night vision device. + + + Sunrise bodysuit + + + Freedom Guard bodysuit + + + This lightweight stalker bodysuit is made by Freedom craftsmen. The suit's fabric is treated with Horizon, a special solution developed by the faction by trial and error to increase resistance to anomalies. Like the Sunrise suit, the Wind of Freedom comes with built-in body armor and artifact containers. + + + Wind of Freedom bodysuit + + + This modern version of the Duty bodysuit is better suited for stalker recruits who are used to lightweight suits. Unlike the PSZ series, this suit provides good protection against anomalies while also being capable of stopping a pistol bullet. The suit cannot be modified with an artifact container, but may be upgraded with a combat support system instead. + + + This modern military armored suit is designed for assault operations in anomalous areas. Comprises a PSZ-12p heavy military armored suit, built-in compensation suit, and an anomalous protection bodysuit. The armor provides excellent protection against bullet and fragmentation damage, without greatly reducing the wearer's mobility. Does not come with an artifact container. + + + This bodysuit, intended for conducting research in the Zone, combines a closed-cycle respiratory module and an external isolation coating, resulting in excellent protection from anomalies. Due to poor protection from physical impact, the suit is not a good defense against bullet and fragmentation damage. Comes with a built-in artifact transportation container. + + + This suit, produced by one of Kiev's Defense Research Institutes, is a great alternative to homemade stalker suits. While its built-in body armor can only stop a pistol round, the anomaly and radiation protection system is second to none. Fully upgradeable and boasting two built-in artifact containers, this bodysuit is the equipment of choice for many experienced stalkers. + + + This item comprises military PS5 series body armor with beryllium sputter modified for use in the Zone. Designed for assault operations in highly radioactive areas, it is ineffective in areas of high anomalous activity. The suit makes its way to stalkers through the military, who exchange it for loot. Does not come with an artifact container. + + + This DIY stalker bodysuit is a combination of a bodysuit of twin-layered rubberized cloth with plexiglass lining and built-in body armor. Despite the fact that the body armor is incapable of protecting the wearer from even pistol bullets, the suit enjoys great popularity due to its low cost and modification potential. Comes with built-in artifact containers. + + + This stalker bodysuit with reinforced body armor made by Freedom craftsmen represents a good compromise between combat and anomaly protection. The built-in body armor comprises armor plating and ten Kevlar layers, capable of stopping a pistol bullet. The suit uses the relatively expensive Sovereign compound for anomaly protection. Comes with an artifact container. + + + This early model of the Duty bodysuit is the Spetsnaz PSZ-9 body armor modified for the Zone. The suit is capable of stopping a rifle bullet, however, this level of protection comes at the cost of its weight, bulkiness and virtually non-existent anomaly protection. The suit cannot be modified with an artifact container, but may be upgraded with a combat support system. + + + Once used as standard by Clear Sky assault squads, after the factions elimination this armor serves as a reminder that even an excellent protective bodysuit cannot guarantee you safety this side of the perimeter. The armor is capable of stopping a pistol bullet, while the wearer is also well protected from anomalies. Comes with a built-in artifact container. + + + An experimental sample of a military exoskeleton. Was never mass-produced due to extraordinary cost and some design flaws. Despite this, it is in demand due to its ability to take on the weight of all carried equipment, and therefore small batches are made in underground facilities outside Ukraine. Comes with a built-in artifact container. + + + SEVA bodysuit + + diff --git a/gamedata/configs/text/eng/st_items_quest.xml b/gamedata/configs/text/eng/st_items_quest.xml new file mode 100644 index 0000000..df997cd --- /dev/null +++ b/gamedata/configs/text/eng/st_items_quest.xml @@ -0,0 +1,369 @@ + + + + Documents with notes + + + The documents mention that pursuant to an order of Department 1, following the sealing of the transportation lock, the Pripyat 1 underpass was flooded with carbon dioxide mixed with some kind of chemical additive. Consequently, all staff were instructed to wear chemical protection suits with closed-cycle respiratory modules. + + + Letter concerning deliveries of item 62 + + + "Due to anomalous activity, transportation of item 62 over open ground is not feasible. Use the underground Pripyat 1 underpass for delivery. The plan of delivery and subsequent sealing of the underpass has been sent to Department 1." + + + Folder with the order + + + The documents mention evacuation of the production complex from the Jupiter plant into underground laboratories. This matter was supposed to have been discussed in the laboratory section. + + + Delivery Schedule + + + "Schedule for deliveries of item 62: 07/14 - 20 units (one damaged); 07/21 - 32 units (2 damaged); 07/28 - 26 units (one damaged). The consignment note concerning losses en route has been sent to the plant administration, with a copy sent to the repair workshop." + + + Notebook Sheet + + + The following decision was made at the meeting: the delivery department is to concentrate on evacuating the production complex for item 62. + + + Duty Shift Log + + + "...18:30 - airtight sealing of all P-1 underpass sections complete. 19:00 - airtight sealing of railroad lock doors complete. Welding had to be used to seal the doors. 19:45 - transportation lock doors closed. Operation of the lock door mechanism required the activation of the backup generator, because the power to the underpass had already been cut. 20:00 - the chemical workshop has initiated flooding of the underpass with gas. 22:00 - work to seal the underpass has been completed, with all documents sent to Department 1." + + + Underpass Schematics + + + Pripyat 1 underpass schematics, which show that the underpass is under the city of Pripyat. The document has several notes: 1. Seal transportation lock doors. 2. Use gas from chemical workshop to seal underpass. + + + Altered Insulator + + + This used to be an insulator. It has now almost turned into an unstable artifact. It is probably the source of intermittent psy-emissions. + + + A can of colophonium + + + A can of colophonium used for soldering. Quite rare in the Zone, which explains why local technicians often use blue electrical tape to repair broken equipment. + + + A pack of capacitors + + + A pack of capacitors - one of the basic electrical components around. They're not that rare in the Zone, as they're used for hi-tech equipment upgrades, but this sort of capacity is not normally required. + + + Textolite base + + + Textolite is one of the basic components of printed circuits. The feelings experienced by an amateur radio technician in relation to an untouched textolite base are similar to those experienced by a writer in relation to a blank piece of paper. + + + A box of transistors + + + A box of transistors - semiconductors that generate, transform and amplify electrical oscillation. Transistors are the dream of every radio technician in the Zone. + + + A roll of copper wire + + + A roll of copper wire is an excellent conductor and simultaneously a source of a base metal. Due to the latter, such wire is very rare in the Zone. All the reserves of this wire were found, melted and delivered to recycling centers back in the 90s. + + + Mutant detection scanner + + + Based on a regular anomalous activity scanner, this device is combined with a limited range mutant detection sensor and a recording component for storage of results. The device is equipped with an automatic deactivation switch that is fired when a certain amount of data has been collected. + + + Administrative documents + + + A folder of documents containing purely administrative information. According to the documents, pursuant to an order from the central laboratory, technical documentation pertaining to item 62 was passed to the testing workshop. + + + Black's PDA + + + One message stands out among a handful of others. The sender is called Jackal and the message reads: "My man at the research institute will recommend that you lead the expedition. He will have to hire your boys to guard the bunker. That will make things easier for you. Remember, the client doesn't want ANY information about the operation of X-designated objects to reach the scientists. If it does, we will not be able to leave the Zone. Don't let me down, Black." + + + Black Box + + + The Stingray 1 black box which survived the crash. It should contain details of the flight's last moments, albeit in encrypted format. + + + Military grade plastic explosives with a 5 second timer. + + + Explosives with a timer + + + Altered Wheel + + + Snag's PDA + + + The PDA contains a map with a mark by the substation, clearly indicating a stash, along with a couple of erotic photographs. Nothing special. + + + Bandit's PDA + + + The last message on the PDA reads: "Catch that Snag bastard and bring him to me - we are due for a heart-to-heart. I don't care where he is - just find him. If he puts up a fight - teach him a lesson. Sultan." + + + This PDA contains details of Morgan's clients, as well as the coordinates of Duty's secret warehouse from which he took weapons. Morgan then sold the weapons to mercenaries and also established contact with someone called Sultan. To cover his tracks, Morgan decided to leak the warehouse location to Freedom. His accomplice, Vulture, was supposed to convey this information. The PDA also mentions a sensor that only Morgan can disable, which will alert Duty if the stash is opened. This information is bound to be of interest to both Duty and Freedom. + + + Morgan's PDA + + + A note on the back of an old document: "Ghost, I'm taking my things. Thanks for the assault rifle - I'm going to need it. In exchange, I'm leaving you some of Doctor's medical supplies. I managed to trap the mercenary who was on my tail, so I'm not going to need them... I hope. I'm going to meet Fang now - he managed to put the decoder together. Let's meet at the usual place, if you can make it. Strelok." + + + A note to Ghost + + + A note on checkered paper: "Strelok, I've left the other decoder in our Pripyat stash just in case. Me and Ghost are heading to Agroprom, so we'll leave our extra ammo here. Take it if you need it. Happy hunting! Fang." + + + A note to Strelok + + + A note on the back of an old document: "Fang, I can't wait for you any longer - I've got a whole squad on my tail. I'm going to the sarcophagus on my own. I'll leave my lucky shooter here - I haven't got any more ammo for it anyway. If I don't make it back, give it to Ghost. If he takes care of the shooter, the shooter will take care of him. Take care. Strelok." + + + A note to Fang + + + A memory module from the UAV. Novikov unblocked the module, allowing you to access the information the UAV collected. Among other things, it contains the coordinates of three radio beacons. + + + Memory Module (unblocked) + + + A memory module from the UAV. Despite the crash, the module is fully operational, but unfortunately it is blocked. + + + Memory Module (blocked) + + + And old sheet with the sentry duty schedule and the numbers 1421 underneath. A note written using a marker over the old writing reads: "Lieutenant V.I. Sokolov. Following the crash of the helicopter I proceeded to evacuation point B205. No evacuation attempts were made for two days and remaining at this position is risky. I have therefore decided to leave B205 and proceed to the scientific expedition's mobile laboratory. The laboratory is located northeast of the evacuation point." + + + Sokolov's note + + + A plant that was part of a grove, which was partially transformed by anomalous activity. The grove reacted to the intrusion with aggression, but the plant does not appear to be dangerous so far. + + + Anomalous Plant + + + The last message received on the PDA is from Morgan. It is basically a contract for the assassination of a stalker called Degtyarev. The message has several photographs attached. Morgan's final instructions are to delete the message after reading. + + + Mercenary's PDA + + + This case combines an artifact detector, a battery and a powerful transmitter. The device will scan anomalies to determine the number and type of artifacts that appear. All of this information will be automatically relayed to the scientists' bunker. + + + Anomalous Activity Scanner + + + The last entry on the PDA is an audio recording: \n"...Whichever way we go, we always end up at the same exact spot. I still can't get used to this fog... It's weird that Chepurny disappeared without a trace. Maybe he found a way out?... \nDay six... We have run out of water... The Colonel flipped his lid, shot two people at point blank range and then himself... Now I'm on my own in this damn anomaly... If I hadn't fixed for our communications with HQ to go down, they could have rescued us... and Duty wouldn't have existed. I wonder how things would have turned out... Ah, screw it. That Captain Tachenko died a long time ago... And this General Tachenko of Duty will follow him... that's justice, I suppose..."\nThe recording terminates just after a gunshot can be heard. + + + General Tachenko's PDA + + + The manual describes how to use item 62. The instructions emphasize that no adjustments need to be made for bullet trajectory or wind, as these are not important at distances within the weapon's effective range.\nThese documents must not fall into anyone else's hands, as they would be of great interest to USS analysts. + + + Manual for item 62 + + + The notebook contains a detailed description of an experiment assessing a psy-field's effect on an object in another hemisphere. A group of scientists in the Caribbean received the signal, but it was distorted. The signal was altered in a strange way, as though corrected by someone. A possible explanation is that the noosphere theory is correct and the changes were made by the noosphere.\nThese documents must not fall into anyone else's hands, as they would be of great interest to USS analysts. + + + A notebook with a description of an experiment + + + The documents describe the technical characteristics of the antenna and how they deviate from their planned values. There is a note on the reverse side which indicates that these documents were prepared in lab X10.\nThese documents must not fall into anyone else's hands, as they would be of great interest to USS analysts. + + + Rainbow emitter - main technical characteristics + + + The documents refer to one of the side discoveries of the research, specifically the discovery that living creatures are able to generate directed psy-emissions. A biological field emitter, essentially a giant brain, was grown as part of the research conducted in lab X16.\nThese documents must not fall into anyone else's hands, as they would be of great interest to USS analysts. + + + Research documents + + + The report details the study of biological samples sent from lab X18. The samples were subjected to informational field effects of varying intensities. The report meticulously describes the mutation of living beings following exposure to emissions.\nThese documents must not fall into anyone else's hands, as they would be of great interest to USS analysts. + + + Report on study of samples + + + The document refers to the transfer of the research team and all materials to another laboratory called X7, which will be used to research matters relating to the influence of the noosphere. The research team comprises: N.A. Lebedev, E.F. Kalancha and V.I. Suslov.\nThese documents must not fall into anyone else's hands, as they would be of great interest to USS analysts. + + + Order of Transfer + + + The last note on the PDA reads: "I found the emergency generator on the sixth floor - the technical floor. It took two hours to get it working again. I'd love to turn it on, but Serbin ordered me to stay put until he brings some people in." + + + Barchuk's PDA + + + A red magnetic keycard marked with X8. + + + Red X8 keycard + + + The PDA contains many meaningless entries, but one stands out: The Monolith is communicating with the recipient of the message and ordering him to collect surplus ammunition and store it in locations unknown to the nonbelievers. These locations are to be marked with the mark of the Monolith. When difficult times come, those who hear the Monolith shall benefit from its wisdom... I have conveyed the will of the Monolith to my brothers and told them where to place the ammo..." + + + Monolith fighter's PDA + + + A children's toolkit. Unlikely to be suitable for fine work, but given the deficit of tools in the Zone, could be useful for a thrifty technician. + + + Tools for basic work + + + A decent set of tools. It looks like it was carefully put together by an experienced technician for his own use. Despite their age, the tools are in good condition. + + + Tools for fine work + + + A professional set of tools for fine-tuning of equipment. The note on the container indicates that the set was made in Germany. The toolkit contains everything required for almost any kind of tuning and calibration work. + + + Calibration tools + + + Old magnetic keycard + + + Cardan's magnetic keycard. Was used for access to the item 62 testing workshop. + + + Documents concerning item 62 + + + Documents which describe the operating mechanism and main technical characteristics of the electromagnetic device.\nThere is a note inside the documents which reads: "Documents must be returned to X8, the central laboratory. I will be busy, so deliver them yourself. Use the magnetic card in the Pripyat Yubileiny service center to go down to the second underground floor. You'll work it out from there. The access card is enclosed.\nN. Lebedev"\nThese documents must not fall into anyone else's hands, as they would be of great interest to USS analysts. + + + Yellow X8 keycard + + + Order No. 562 + + + Internal order No. 423 + + + Key A + + + A regular key designated with the letter "A". + + + Key B + + + A regular key designated with the letter "B". + + + One of the audio recordings sounds particularly psychopathic: "So, that's where those damn mutants are!... Sly bastards climbed up to the plateau thinking that Noah won't get to them... I bet they don't know that I've got a personal path up there by the northern farmstead... You're in for a fun ride, assholes!!" + + + Noah's PDA + + + The notebook contains one message marked as important among a heap of spam:\n"Set up a camp near the waste processing station and everyone who is going to be participating in this job will join you. Don't expect Black, because he and his people will be at Jupiter on a different mission. The army has suspended all flights into the Zone, so there won't be any trouble from that side. When stalkers find a way to Pripyat we'll send a guide and wait for the client's people there - they'll show us where the lab is.\nJackal." + + + Mercenary notebook + + + The final incoming message reads:\n"We're kicking heels by some old workshops. I sent two boys ahead to scout the road for you. Then again, we'll wait here until the client's courier shows up - the air is a hell of a lot fresher here.\nTesak" + + + PDA of Hook the mercenary + + + PDA of Ridge the mercenary + + + A canister of a dangerous chemical nerve agent. + + + A canister of Perin B3 gas + + + The box is locked with a rather clever lock installed into it. Judging by its weight and the noise it makes when shaken, there's something inside. + + + Steel box + + + Note on the PDA: "I'm positive the artifact is on the tree itself. It's clear from here that I could climb onto the tree from the hill. I just hope the hills are free of mutants. It's too bad I had to come here on my own after that argument with Cardan and Barge, but when I bring back the artifact they'll see I was right all along..." + + + Joker's PDA + + + The last note on the PDA conveys that the person who made it was upset: "Cardan, that old drunk. Not only is he a lazy bastard once he's had a drink - "it's better here, we need to take it easy" - but then he goes and takes a run at me and Joker, saying we're young and ain't got a clue... Heh... Joker's a piece of work, too: gets pissed off, grabs his bag and disappears. While I was trying to calm Cardan down, he left and hell if I know where he went. And what I am supposed to do? Drink with that senile moron? No thank you! His vodka is shit... Eww..." + + + Barge's PDA + + + Tremor kept a diary in his PDA, and his last notes are the most interesting:Recording 12. My research will be over soon... People at the camp are starting to suspect something. Grouse and Danila are planning to hunt some bloodsuckers ... I wonder when theyll figure it out... I need to sort the jars of blood to find out which ones have been contaminated, then hide the rest... [quickly:] Someones coming. [the sound of the recording device being switched off, then on again]. Recording 13... possibly my last. First that nosy hunter and now Grouse... I wont get away with this. Theyll come for me, I know it. Doesnt really matter - this hemoglobin dependency will kill me soon anyway. And Id rather die from a bullet than a disease... + + + Tremors PDA + + + Top Secret. Order # 562 of the HQ commander responsible for the security of object # 1 R. Yu. Didenko.\nChemical Protection Unit # 423: relocate from sector B103 to sector A19 to conduct field testing of Perin B3 chemical solution in near combat conditions. Colonel P.P. Slavin, unit commander, is responsible for conducting the tests. Lieutenant Colonel K.S. Valov, deputy unit commander, is responsible for transportation and security. + + + Top Secret. Order from Colonel P.P. Slavin.\nIn accordance with this order, members of chemical protection unit # 423 are to be familiarized with the following information:\n1. Keys to the container with Perin B3 chemical solution are held by Colonel P.P. Slavin (key A) and Lieutenant Colonel K.S. Vlasov (Key B).\n2. Convoy order starting from the front: Deputy unit commanders vehicle, escort vehicle # 8, APC # 1, transportation vehicle # 1, APC # 3, escort vehicle # 2, unit commanders (P.P. Slavin) vehicle.\nCopies of the order to be handed to Lieutenant Colonel K.S. Vlasov and Senior Lieutenant R.B. Nazarenku. + + + A yellow magnetic keycard marked with X8.\nThe card must not fall into anyone else's hands, as it can be used to access the secret laboratory. + + + Sultans messengers PDA + + + The last message sent from this PDA is an audio message: Sultan, I dealt with that loser real good! ..Thatll teach him not to mess with us!" + + + This was once the dredge station wheel. It has now half-converted into a strange artifact. No properties are notable, other than active glowing and a little radioactivity. + + + Incoming message reads:\n"I managed to arrange something about the weapons and that greedy bastard is going to sell us his faction's stock. It's gonna be fairly cheap but well have to haul ass to Jupiter.\nVulture. + + diff --git a/gamedata/configs/text/eng/st_items_weapons.xml b/gamedata/configs/text/eng/st_items_weapons.xml new file mode 100644 index 0000000..5ca020b --- /dev/null +++ b/gamedata/configs/text/eng/st_items_weapons.xml @@ -0,0 +1,567 @@ + + + + .45 ACP rounds + + + The .45 caliber full metal jacket round has enjoyed popularity for more than a hundred years thanks to its heavy bullet and a relatively small propelling charge. As a result, the bullet in this round is relatively slow but highly accurate and provides considerable stopping power. + + + .45 ACP + + + .45 ACP Hydrashock rounds + + + This unusual .45 ACP caliber round is comprised of a jacketed soft point bullet with an expanding hollow and a steel core. It is a combination of jacketed expanding soft point and armor piercing bullets, benefiting, from the advantages of both and, suffering from their downsides. + + + .45 Hydro + + + 12x70 shot rounds + + + Standard 12-caliber round filled with 6 mm shot. Highly lethal at close range. Only suitable for use with smoothbore weapons. + + + 12x70 shot + + + 12x76 slug rounds + + + This heavy 12 caliber slug round is normally used for hunting big game, but is also good for other purposes. Instead of piercing, this hefty slug simply crushes through armor. + + + 12x76 slug + + + 5.45x39 mm AP rounds + + + Military 5.45x39 7H22 caliber armor-piercing round for automatic rifles of Warsaw Pact countries. The bullet contains a hard-alloy armor piercing penetrator. Effective against body armor. + + + 5.45x39 AP + + + 5.45x39 mm rounds + + + Military 5.45x39 7H10 caliber improved piercing round for automatic rifles of Warsaw Pact countries. Provides better accuracy than the 7.62 caliber round thanks to reduced recoil and a 100 meter increase in range. + + + 5.45x39 + + + 5.56x45 mm AP rounds + + + A common NATO military 5.56x45 caliber armor piercing round, known under its SS190/M855 index, widely used by Western security agencies and special services. Effective against body armor. + + + 5.56x45 mm AP + + + 5.56x45 mm rounds + + + A standard issue NATO 5.56x45 caliber round specially designed for accurate automatic fire. Provides good ballistic characteristics, having been designed on the basis of a hunting round. Widely known under its SS109 index. + + + 5.56x45 + + + 7.62x54 mm 7H1 rounds + + + A 7.62 caliber sniper round with a steel penetrator specially designed for the SVD. Unlike the machine gun round, the 7H1 provides tight groupings and excellent penetration characteristics. + + + 7.62x54 7H1 + + + 7.62x54 mm PP rounds + + + Cheap 7.62 caliber machine gun round. Its design makes it unsuitable for sniper rifles, so it is used only with the RP-74 machine gun. + + + 7.62x54 PP + + + 9x18 mm rounds + + + A full metal jacket round with a steel penetrator and a lead core under a metal jacket. Provides good stopping power but is ineffective against body armor. + + + 9x18 + + + 9x18 mm +P+ rounds + + + This round contains a bullet with enhanced stopping power, while its European +P+ designation indicates "overpressure ammunition" with a 30% increase in muzzle velocity. Ineffective against body armor. + + + 9x18 +P+ + + + 9x19 mm FMJ rounds + + + This basic 9x19 caliber round with a jacketed bullet has good characteristics while being simple to produce. The round is popular due to the fact that international conventions prohibit the use of expanding ammunition in combat. Ineffective against body armor. + + + 9x19 FMJ + + + 9x19 mm JHP rounds + + + This 9x19 caliber jacketed hollow point bullet with an expanding hollow provides high stopping power and low ricochet propensity. Used by police and for self-defense. Ineffective against body armor due to its low penetration potential. + + + 9x19 JHP + + + 9x39 mm SP-6 rounds + + + The SP-6 is a subsonic assault rifle round with a jacketed soft point bullet with a hard steel core that protrudes from the casing. Requires a silencer for stealth firing. Used by special services of Warsaw Pact countries. Effective against body armor. + + + 9x39 SP-6 + + + 9x39 mm SP-5 rounds + + + The SP-5 is a subsonic sniper round with a bimetallic casing. The round contains a steel core with a gap behind it that is filled with lead. Requires a silencer for stealth firing. Used by special services of Warsaw Pact countries. + + + 9x39 mm SP-5 + + + Batteries + + + M203 grenade + + + 40 mm grenade for the M203 underbarrel grenade launcher. This round has a 5 meter kill zone. Also suitable for use in the FT-200M integrated grenade launcher. + + + M203 + + + OG-7V warhead + + + Fragmentation warhead for anti-personnel warfare used with the RPG-7u grenade launcher. The main purpose of the warhead is to kill enemies in cover outside the range of hand grenades using the RPG-7u launcher. + + + OG-7V + + + VOG-25 grenade + + + Regular fragmentation grenade for the GP-25 Koster underbarrel grenade launcher. This round has a 5 meter kill zone. The VOG-25 grenade is also used in the Tunder S14 complex and Bulldog 6 revolver-type grenade launcher. + + + VOG-25 + + + PSO-1m scope + + + A common Soviet-made 5.0x fixed zoom optical scope with a range scale. Attached to weapons by means of a dovetail mount, which is standard in Warsaw Pact countries. + + + PSS-2x scope + + + A 5.0x fixed zoom optical scope with a built-in heat visor used to identify heat sources typical of the human body. Designed for use by special forces. Attached to weapons by means of a dovetail mount. + + + NSPU-3 scope + + + An image intensifier night vision 5.0x fixed zoom scope for combat in darkness. Attached to weapons by means of a dovetail mount. + + + SUSAT 4x scope + + + An adjustable long-range 1.6-4x zoom scope that can use automatic adjustment to provide greater fire effectiveness. Attached to weapons by means of the NATO-standard Picatinny rail. + + + A 4x fixed zoom scope produced primarily in Western countries. Attached to weapons by means of the NATO-standard Picatinny rail. Often used for accurate fire from small arms at medium to long range. + + + SUSAT Twilight x1.6 scope + + + An optical SUSAT 1.6x higher contrast scope for combat in reduced lighting conditions. Attached to weapons by means of the NATO-standard Picatinny rail. + + + SUSAT Night x4 scope + + + A 4.0x fixed zoom scope with a night vision device for long range combat in darkness. Attached to weapons by means of the NATO-standard Picatinny rail. + + + SUSAT 1.6x scope + + + An optical SUSAT 1.6x scope for combat at short to medium range. Attached to weapons by means of the NATO-standard Picatinny rail. + + + PSU-1 scope + + + A 2.7x optical scope for urban combat at medium range. Attached to weapons by means of a dovetail mount. + + + Silencer + + + An effective silencer which can be modified on the go as required. The body of the silencer around the barrel contains a roll of fine brass mesh, while the front comprises a set of metal diaphragms with holes for the bullet to pass through. The set includes adaptors and sealants for most weapons. Normally used to thin out enemy ranks without drawing attention. + + + F1 grenade + + + A defensive hand grenade, with fragments capable of piercing medium level body armor. The grenade has a 7 meter kill radius. Stalkers get F1 grenades from trading with the military, who write them off as having been used for fighting mutants. + + + GP-25 Koster + + + A single shot, front loaded, rifled underbarrel grenade launcher for assault rifles made in Warsaw Pact countries. The firing mechanism is self-cocking, with a manual safety catch and automatic shot prevention if incorrectly installed onto a rifle. Uses VOG-25 grenades. + + + M203 + + + A modified M203 grenade launcher that has been shortened by three inches, attached to weapons by means of a Picatinny Rail. Thanks to a changed mount, this grenade launcher is widely used around the world. + + + RGD-5 grenade + + + An offensive hand grenade with a small kill zone of 5 meters. Often used by stalkers to "smoke out" mutants due to its relatively low cost. + + + Smoke grenade + + + A hand smoke grenade. Used to put up smoke screens. Once the grenade is thrown it takes 10 seconds for the smoke screen to expand. + + + Knife + + + AC-96/2 + + + AKM-74/2 + + + AKM-74/2U + + + Martha + + + Sawed-off Shotgun + + + A sawed-off hunting shotgun with two side-by-side barrels, making it lighter and more compact than a full shotgun. One of the most popular weapons among bandits due to its combination of ease of concealment and extreme effectiveness in close combat. + + + Kora-919 + + + Steppe Eagle + + + A hand-made pistol based on the Black Kite design. The components are finely tuned to achieve incredible accuracy for a handgun of this type. + + + Black Kite + + + FT-200M + + + Fora-12 + + + GP37 + + + Gauss rifle + + + Tunder S14 + + + This assault rifle combined with a grenade launcher, which is similar to the AKM series, was specially developed for rapid response units. The main differences are its 9x39 caliber ammunition, bullpup layout and extensive configuration options. This weapon is highly valued by military stalkers due to its ability to kill enemies wearing body armor behind improvised cover at a distance during urban combat, as well as its excellent stopping power. + + + Storm + + + An experimental version of an assault rifle and grenade launcher system, a Russian modification of the standard Tunder S14, this weapon was specially designed for units operating in the Zone. Notable for its increased magazine capacity. + + + HPSS-1m + + + A modified model of a pistol from the first half of the 20th century, which is as reliable, powerful and accurate as the original. Pistols of this series deserve their reputation as one of the best handguns of the 20th century and are in great demand in the Zone. + + + IL 86 + + + TRs 301 + + + Viper 5 + + + This submachine gun has gained popularity around the world thanks to its reliability, ease of use and accuracy. Over the last few decades the Viper 5 was in service with special armed forces and police units worldwide. Not surprisingly, having flooded the global black markets, it eventually made its way to the Zone. + + + Frasier + + + A submachine gun prototype based on the excellent Viper 5 model. Designed as a next generation close quarter combat weapon, it benefits from a higher caliber, rate of fire and accuracy. + + + PB-1s + + + Zulu's RP-74 + + + This weapon was previously owned by Zulu. Its special features include an enlarged ammo box and a particularly reliable retracting mechanism design. The modifications meant an increase in the weapon's weight, but that wasn't a problem for the last owner. + + + PMm + + + Honorary PMm + + + An ancient PMm received by Degtyarev as a reward for "Successful execution of highly dangerous state orders, as well as valor and courage shown in the line of duty." + + + Eliminator + + + Bulldog-6 + + + This revolver-type grenade launcher uses six rifled front-loading barrels, identical to underbarrel launcher attachments. The drum is also front-loading. Widely used for rapid suppression of enemy firing positions and, when in the open, attacking defended fixed targets or fighting particularly tough monsters. + + + RP-74 + + + This belt-fed machine gun is a portable modification with a complex two-stage feeding system. Despite its weight and low precision, this LMG has found admirers in the Zone. Used primarily to fight off outnumbering enemy forces during faction conflicts and clear out mutant lairs. + + + RPG-7u + + + SIP-t M200 + + + Alpine + + + A unique model of the SIP-t M200 handgun. Part of a small limited edition made for an unidentified special forces unit. The model benefits from an increased magazine capacity, a high durability steel barrel and an ultradurable polymer receiver. + + + SGI-5k + + + A relatively new assault rifle that has quickly found admirers around the world, despite lacking a "trendy" design. Weapons of this series are one of the best in their class, renowned for their reliability, accuracy and ease of use. Despite being relatively difficult to obtain in the Zone, this assault rifle is often ordered by experienced stalkers at considerable expense. + + + Strelok's SGI-5k + + + A Swiss-made SGI-5k assault rifle. Although it is hardly new, it is clear that the previous owner took good care of it: the weapon has been taken apart and put back together, with every component fine-tuned for optimum performance, increasing stopping power. The letter "S" has been carved into the stock, along with 16 small notches. + + + SPSA-14 + + + SPSA-AUT + + + The SPSA-AUT self-cocking shotgun is made only in Duty workshops. This weapon is intended for fighting large groups of mutants. Its improved feeding mechanism ensures a high rate of fire and the magazine capacity has been increased to 10 rounds. Uses 12x70 caliber rounds. + + + Carabineer + + + An army shotgun designed specifically for assault units on the basis of the SPSA-14. Capable of automatic fire like its predecessor, but provides better recoil compensation thanks to a balanced shock free system. + + + SVDm-2 + + + An army sniper rifle that has been on the market for more than fifty years and has earned its reputation for exceptional reliability and ease of use. The SVDm-2 is normally used by the army to improve the effective range of its units, but stalkers respect this weapon for its armor-piercing properties, which allow it to penetrate mutant hide and army body armor. + + + Lynx + + + A hand-assembled version of the SVDm-2 sniper rifle. No different in appearance, it nonetheless provides an ideal combination of accuracy and stopping power. + + + SVUmk-2 + + + SVU2-A + + + This shortened sniper rifle with an increase rate of fire is the next step in the evolution of the SVUmk-2 sniper rifle. This weapon used to belong to Max, the legendary guardian of Freedom. + + + Hunting shotgun + + + This extremely common over-and-under hunting shotgun can offer better protection against mutants than a pistol, thanks to its accuracy and stopping power. Used mostly by rookies on the outskirts of the Zone. + + + Unidentified weapon + + + An unknown weapon, the firing mechanism of which has not been established. The weapon appears faulty - squeezing the trigger doesn't do anything. + + + UDP Compact + + + Impeccable reliability and durability combined with excellent accuracy are the main noteworthy features of this weapon. Its minor drawbacks include its considerable size, relatively high center of gravity and massive bolt, which make it difficult to conceal but do not outweigh the weapon's positive features. The weapon is especially popular with the Zone's veterans. + + + March + + + A compact, large caliber pistol with short bolt movement and lightweight bolt assembly. Used to belong to a mercenary called Wolfhound. Appears to be a modified UDP Compact pistol. + + + SA Avalanche + + + Vintar BC + + + A special military sniper rifle purpose-built for silent, flashless sniping during special operations where early detection of the shooter may be critical. The Vintar BC provides high armor-piercing capability and stopping power, as well as being equipped with an integrated sniper and optical scope. Highly rated by many stalkers despite its small magazine. + + + Tide + + + A weapon made for military units on the basis of the silent sniper rifle. The rifle has higher stopping power than the Vintar BC, its predecessor, at the expense of its rate of fire, which allows the shooter to eliminate enemy forces one by one without revealing his position. + + + Walker P9m + + + Chaser 13 + + + A Western smoothbore shotgun that is extremely popular around the world thanks to its amazing reliability and faster reloading speed. Particularly valued for its functionality by the Zone's hunters. All of its parts are coated with an anticorrosion compound. + + + Predator + + + A tailor-made pump-action shotgun which used to belong to Trapper. The hunter's only requirement in respect of his weapon was that it needed to kill predators in one shot. This philosophy was based on the belief that no matter how many people an animal had killed, it was still just an animal, and thus should not suffer. + + + Homemade batteries + + + SUSAT Mera scope + + + A modern assault rifle developed as a replacement for the ageing AKM 74/2. The main difference is its high speed 2-round burst firing mode, which allows two bullets to be fired at exactly the same spot on a target up to 100 meters away. This significantly increases the likelihood of hitting the target in comparison to the 1 round firing mode, which considerably improves kill potential, stopping power and armor piercing capability. + + + This weapon, designed in 1974, signaled the adoption of small caliber and low impulse rounds by Warsaw Pact countries. A descendant of the most popular assault rifle in the world, the AKM-74/2 has an even bigger muzzle brake, resulting in a reduction of what was already manageable recoil. This facilitates better accuracy and groupings, especially when fired in fast single shots or bursts. As before, the rifle is very simple and reliable. + + + Despite being similar to submachine guns in size, weight and tactical purpose, this weapon is classified as an assault rifle due to the fact that its internal mechanism is identical to that of the AKM 74/2. The weapon is notable for its mobility in close quarters and high armor-penetration capacity, while its drawbacks are its short effective range, despite the relatively long bullet range, a tendency to overheat and high ricochet propensity. + + + An improved version of a classic automatic pistol, which passed all the major armed conflicts of the 20th century with flying colors and entered the new millennium with confidence. Produced by dozens if not hundreds of arms manufacturers around the world in both standard and modified configurations. The weapons only drawback, its mediocre magazine capacity, is largely compensated by the hard-hitting ammo it uses. + + + The ultimate hand cannon - bulky, heavy and highly lethal. Developed as a specialized weapon for hunting medium-sized and large game, as well as for shooting competitions involving firing at steel body targets at distances over 50 meters. Its limited use in the Zone can be attributed to its price, size and weight, which are all double those of other pistols. + + + This futuristic-looking weapon with a bullpup layout is actually a mass produced modular system, comprising a rifle & grenade complex with a computerized fire control system and a 40-mm grenade launcher. Despite its bulky appearance, the weapon is highly ergonomic, easy to use and benefits from good technical characteristics. + + + A Ukrainian-made pistol predominantly used by law enforcement organizations. Provides higher accuracy, better ergonomics and has a larger magazine than the PMm. These pistols make it into the Zone in large numbers thanks to the sale of defective weapons, which suffer from technical miscalculations in early design models. Despite this, the pistol is in demand among stalkers thanks to its good combat characteristics. + + + A new addition to the Western-made assault rifle family, which differs significantly from previous models in the series built on an automatic foundation with a semi-open bolt assembly, this weapon is more like American automatic gas-operated assault rifles with a short-stroke gas piston system. These changes ensure that the rifle is a first-rate example of a modern weapon - lightweight, reliable and ergonomic. + + + This rifles considerable number of drawbacks caused most of these weapons to be modernized, with the retired stock making its way to the Zone via the black market. The rifle's main advantages are its built-in 4x scope, high single-shot accuracy and reliable upgrade technology. When the weapon is fired in bursts, its accuracy decreases significantly and the rifle's basic internal mechanisms become somewhat unreliable. + + + A new step in the development of this famous weapon family. The changes were made to the upper half of the steel construction comprising the barrel, gas tube and bolt assembly, reducing the weapons weight, improving ergonomics and its gas system. The weapon is highly accurate, although its propensity to catch dirt makes it a poor choice for the Zones difficult conditions. + + + This pistol was developed in the second half of the 20th century on the basis of the PMm for use by special forces and scouting units. The front of the pistols barrel is covered with an integrated silencer, while the bolt mechanism is short, which prevents a back-moving spring from being located inside it, and it is therefore situated in the weapons handle. Morally obsolete, the weapon is still effective in the right hands. + + + This Soviet legacy is the most common pistol in the Zone and is one of the best compact self-defense handguns available. It is small, highly reliable, easy to use and maintain in working order. It also suffers from several drawbacks, including its short range, low firing accuracy and poor stopping power, while also losing out to modern pistols in its class in terms of weight and magazine size. + + + A smoothbore combat revolver-type shotgun intended to provide extreme firepower for militarized units. The weapon benefits from a large magazine and a high effective rate of fire, but its bulkiness and considerable weight, combined with a long reload time, are the price to be paid for these advantages. Rare in the Zone and is used primarily to clear closed spaces of mutants. + + + This grenade launcher from the 1960s made its way into the Zone from army depots. The weapon is a smoothbore single-shot recoilless launch system with an open-rear tube. Comes with a PGO-7 x2.7 optical scope. Although its huge size and weight make it an unlikely choice for stalkers, given its huge destructive power and ease of use, it has found admirers in the Zone. + + + The only remaining mass produced model of a globally renowned pistol, this weapon has earned a reputation for its excellent ergonomics and accuracy, and while its magazine is relatively small, it benefits from powerful ammo and a mechanism that functions like a Swiss watch. Some believe the SIP-t M200 to be the best mass produced .45ACP caliber handgun there is and it has certainly got a following among experienced stalkers and mercenaries. + + + This special purpose smoothbore automatic shotgun was designed in the second half of the 20th century and comes with pump-action and self-cocking firing modes. Used as an all-purpose weapon by the police and assault troops. Notable for its reliability and tactical flexibility. Despite its large weight, complex mechanism and considerable cost it is in demand in the Zone due to its effectiveness against mutants. + + + A modernized version of the SVDm-2 sniper rifle in a compact bullpup design made on the order of rapid response forces. It allows faster precision fire and is considerably lighter, while its single shot firing accuracy at short and medium range is similar to that of its predecessor. These qualities have earned it the admiration of countless stalkers. + + + A modified version of the silent Vintar BC sniper rifle, this assault rifle was designed as a special forces weapon. The rifles primary purpose is effective fire against enemies employing modern personal protection equipment without disclosing the shooters location. Thanks to its integrated silencer and 9x39 caliber round with a heavy subsonic bullet, the weapons noise and muzzle flash have been reduced to a minimum. + + + A super-accurate hi-tech weapon known as item 62, this rifle was developed in secret laboratories located inside the Zone. The weapon operates by accelerating bullets to extremely high speeds using a system of electromagnets, which provides incredible stopping power with virtually no recoil. The weapon is powered by using capsulated artifact fragments in the batteries. + + + Martha pistols enjoy the reputation of a relatively reliable, albeit somewhat cumbersome weapon, around the world. In service with armed forces and police across the ocean, as well as various military and law enforcement organizations worldwide. The pistol is equally popular with members of the underworld, thanks to its powerful round and magazine capacity. Marthas found in the Zone are usually dated, probably from retired stock. + + + An excellent Western pistol known for its reliability, high capacity magazine and good accuracy, as well as being among the most ergonomic handguns in its class. One of the most widely used pistols in the Zone, both among professionals and rookies who can afford it. + + + Batteries that use a capsulated fragment of the Flash artifact as their power source. Manufactured using hi-tech equipment. + + + These lower-capacity cells use capsulated fragments of the Flash artifact as their power source. Their lower capacity is due to makeshift production conditions and lack of specialized equipment. + + diff --git a/gamedata/configs/text/eng/st_items_weapons_upgrades.xml b/gamedata/configs/text/eng/st_items_weapons_upgrades.xml new file mode 100644 index 0000000..0f824de --- /dev/null +++ b/gamedata/configs/text/eng/st_items_weapons_upgrades.xml @@ -0,0 +1,2022 @@ + + + + Flatness + + + Caliber + + + Recoil + + + Reliability + + + 1.6x reflex sight + + + 4x optical scope + + + Silencer + + + underbarrel mount + + + Weight + + + External threading allows a silencer to be installed. + + + External threading of the barrel + + + Installation of a mount for attachment of an optical scope. + + + Optical mount + + + Installation of a mount for attachment of an underbarrel grenade launcher. + + + Underbarrel grenade launcher mount + + + Replacing a standard magazine with a bigger one. + + + Increased magazine capacity + + + A complex, integrated alteration of the weapon's mechanical and automated parts, which allow its caliber to be changed at the cost of reliability. + + + Change of caliber to 5x45 + + + A complex, integrated alteration of the weapon's mechanical and automated parts, which allow its caliber to be changed at the cost of reliability. + + + Change of caliber to 5x56 + + + A complex, integrated alteration of the weapon's mechanical and automated parts, which allow its caliber to be changed at the cost of reliability. + + + Change of caliber to 9x18 + + + A complex, integrated alteration of the weapon's mechanical and automated parts, which allow its caliber to be changed at the cost of reliability. + + + Change of caliber to 9x19 + + + Magazine capacity increase without increasing weapon part length + + + Magazine capacity increase + + + A lighter yet higher-capacity polycarbonate box magazine, which offsets some of the weight increase. + + + Increased box magazine capacity + + + Increased number of titanium plates considerably improves body armor durability. + + + Additional aluminum/titanium plates + + + Reinforced plates that last longer, but are not more durable. + + + Kevlar plates + + + An aluminum & titanium alloy allows the weight of titanium to be reduced for use in personal protection equipment. + + + Aluminum & titanium plates + + + Titanium is normally too heavy to be used in personal protection equipment, but is sometimes utilized in exoskeletons. + + + Solid titanium components + + + Replacing metal with carbon fiber allows the weight of body armor to be reduced without sacrificing reliability. + + + Replacing metal body armor components with carbon fiber + + + Kevlar is one of the most commonly used materials in body armor. + + + Kevlar plates + + + Polycarbonate is capable of stopping a pistol bullet, while remaining as light as plastic. + + + Polycarbonate plates + + + Ceramic plates don't last long but they're more reliable than Kevlar thanks to improved bullet impulse negation. + + + Installation of ceramic plates + + + Simple steel plates sewn into a trench coat. + + + Steel plates + + + A ceramic outer layer can deflect armor piercing bullets that impact at an angle and cause armor piercing bullets that make a direct impact to crumble into fine dust. + + + Ceramic body armor outer layer + + + Additional internal armor layer in case the outer layer is damaged. + + + Duplicate protective plate layer + + + Armor with an inner layer that spreads impact over a greater area. + + + Addition of a compensation element + + + The frame is capable of stopping a pistol bullet if the main body armor is damaged. + + + Additional armored frame + + + Thinner sheets of armor are layered to increase the armor's wear-resistance. + + + Segmented protection + + + While more plates don't mean improved protection, they do guarantee better durability. + + + A second, backup layer + + + Mobile plates protect joints from gunshot wounds. + + + Installation of mobile protective plates for joints + + + A lighter aluminum frame for plates to replace the steel frame. + + + A lighter aluminum frame + + + Thickened inserts to reduce the force of bullet impacts felt through body armor. + + + Thickening leather inserts + + + Additional ceramic layer with silicon amortization. + + + Reinforced ceramic plates + + + Use of lighter materials to reduce body armor weight. + + + Installation of lighter synthetic and plastic components + + + While solid titanium plates are much too heavy for an infantry soldier to drag around, an exoskeleton with its powerful servomotors can handle the weight. + + + Cuirass titanium armor + + + SBK-RKhZ.m.II - a special radiochemical protection combat bodysuit, mark two. + + + SBK-RKhZ.m.II airtight radiation protection bodysuit + + + This labor-intensive and time consuming upgrade is not very popular, although it has been known to save lives. + + + Sewn-in chainmail shirt + + + The Scale comprises overlaying ceramic plates that prevent the wearer from being hit in the same place. + + + Deflective ceramic Scale modification + + + Once treated with Sovereign, the bodysuit becomes virtually invulnerable to mechanical damage and fabric splitting. + + + Treatment with Sovereign holding compound + + + Ceramics considerably soften bullet impact by deflecting it onto fragments that break off. + + + Application of a ceramic layer onto plates + + + Reinforced matrix that uses beryllium instead of aluminum is one of the most reliable ways of protecting infantry soldiers. + + + Ceramics considerably soften bullet impact by deflecting it onto fragments that break off. + + + Ceramic layer on plates + + + Carbon fiber is one of the most durable and wear-resistant materials that is even used in aviation construction. + + + Combined multi-layered polymer and ceramic coating. + + + Screen combined plate coating + + + Domestic technology and one of the latest developments in the field of personal protection - the growing of artificial sapphires. + + + Adjustment of components allows the weapon to last longer without jamming. + + + Component adjustment + + + The fashion for plastic components has not only paid off, but it has also become quite a popular upgrade. + + + Poly-material components + + + A low impulse firing mechanism ensures less recoil than older versions. + + + Low impulse firing mechanism + + + Thanks to firm positioning of the round as it is fired, the bullet continues on a straight path and hits the target. + + + Installation of a round positioning unit + + + Often used in weaponry, a roller locking system reduces recoil and improves groupings. + + + Semifree bolt with a roller system + + + Installation of an additional gas cylinder reduces weapon load, which allows the rate of fire to be increased significantly. + + + Installation of an additional gas cylinder + + + A gas motor is used in self-cocking shotguns for semi-automatic fire. + + + Gas motor installation + + + Protective sputter makes misfiring due to mechanism malfunction impossible. + + + Protective component sputter + + + When a shot is fired, a component opens a path into the barrel and returns to the closed position by means of a lengthwise sliding movement of the foregrip. + + + Barrel closing system + + + An inertial automatic system allows the pump-action mechanism on regular shotguns to be converted into a self-cocking one. + + + Installation of an inertial automatic system + + + A unified blowback module is one of the best technological solutions for reducing recoil. + + + Unified blowback module + + + An automatic driving rod improves a weapon's precision. + + + Installation of an automatic driving rod + + + An active counter-weight moves from the bolt frame, partially compensating for recoil. + + + Addition of an active counter-weight + + + Installation of additional roller parts reduces recoil. + + + Installation of a blowback roller compensation system + + + Replacement of the weapon's bolt mechanism with a more suitable design, which improves the rate of fire. + + + Open bolt firing systems + + + When the weapon is fired, the bolt frame counter-weight moves in the opposite direction to the bolt, which allows for more comfortable firing of the machine gun. + + + Installation of a self-regulating counter-weight + + + A counter-weight is installed as an additional component into the receiver to reduce recoil by means of counter force. + + + Addition of a mobile counter-weight + + + The fashion for polymer components has not only paid off, but it has also become quite a popular upgrade. + + + Impact-resistant polymer components for automatic elements + + + Installation of a special mechanism to protect the weapon from dirt. + + + Automatic two-position gas regulator + + + A special component seals the barrel in an airtight manner to increase pressure when a shot is fired. + + + Installation of a barrel closing device + + + Synchronization is achieved by means of a cog, which allows flatness to be increased. + + + Rod movement synchronization + + + A component installed on the rear side of the receiver that reduces bolt speed. Installed to improve effectiveness of aimed fire. + + + Inertia delay mechanism + + + A special component installed into the bolt mechanism to soften bolt movement and reduce recoil. + + + Addition of a blowback speed reduction device + + + An integrated improvement that is normally used for sniper rifles in view of the considerable increase in the weapon's weight. + + + Built-in recoil amortization system + + + Installation of a mechanism with mobile components that increase round feeding speed when the weapon is fired. + + + Automatic round feeding + + + Upgrade of the weapon's automatic components that requires a number of parts to be replaced. Improves accuracy. + + + Balanced impact-free system + + + A synthetic component immediately in front of the bolt movement area, which compresses it significantly to improve firing accuracy. + + + Addition of a stopping device + + + A link fixes the position of the barrel and if the barrel moves, additional compensation holes are opened. + + + Installation of a "smart compensation" component + + + Modernization that allows the trigger mechanism to be smoother, which is important for snipers. + + + Installation of a trigger release regulation mechanism + + + This component allows the shooter to get a feel for the moment at which the shot is fired, improving firing accuracy. + + + Installation of an advance notice trigger + + + Often used in Western weaponry, a roller locking system reduces recoil and improves groupings. + + + Semifree bolt with a roller system + + + A special mechanism takes on some of the impact during firing, which makes shooting the weapon more comfortable. + + + Firing amortization system + + + As sniper rifles are more demanding in terms of maintenance than regular weapons, they can be upgraded with three-positional gas regulation devices. + + + Installation of an automatic three-position gas regulation device + + + Sputter prevents energy from dispersing, which increases bullet impulse. + + + Tuning of automatic parts using sputter + + + Installation of a long firing mechanism rod allows a sniper rifle to be fired in automatic mode. + + + Long firing mechanism rod system + + + A stopping device affects the blowback mechanism, improving firing precision. + + + Installation of a stopping device + + + Replacement of a regular barrel with a longer one improves accuracy and flatness. + + + Longer barrel + + + The lack of big gas chambers and barrel mounting on the foregrip has a positive effect on accuracy. + + + Installation of a "floating" barrel + + + This modification is used to reduce the harm caused by excessive firing rate modifications. + + + Installation of a barrel with cooling fins + + + Replacement of a dated component with a more modern one reduces recoil + + + Optimized compensation muzzle brake + + + Installation of a barrel with additional threaded canals improves bullet speed and weapon accuracy at the cost of a considerable increase in recoil. + + + Additional threaded canals in the barrel + + + This barrel is intended to increase the kill zone in close quarter combat and is therefore not suitable for accurate fire. Improves the rate of fire due to the simplification of the rifled part of the barrel. + + + Installation of a barrel with a simplified rifled section + + + Polygon rifling is usually performed to improve accuracy. + + + Installation of a barrel with a polygon rifled section + + + Allows barrel heat to be reduced and increases the rate of fire. + + + Sinusoidal rifling of barrel chamber + + + A peculiar barrel replacement for weapons with good flatness characteristics that improves their accuracy. + + + Rifled sniper rifle canals + + + High durability materials slow down wear and tear of the weapon's barrel. + + + High durability alloy barrel + + + Treatment of the internal surface of the barrel protects it from mechanical damage. + + + Treatment of the barrel + + + Synthetic thickening of the barrel cavity causes a considerable improvement in groupings. + + + Synthetic barrel thickener + + + Replacement of a regular barrel with a longer one improves flatness. + + + Longer barrel sections + + + The introduction of gas venting canals to the barrel not only prevents it from collecting dirt, but also partially redirects recoil into the barrel itself. + + + Longitudinal gas venting canals + + + Replacement of a regular barrel with a longer one improves flatness. + + + Longer barrel section + + + This sputter prevents the barrel from overheating, removes manufacturing defects and significantly increases the barrel's life cycle. + + + Application of a protective sputter to the internal part of the barrel + + + The barrel balancing system includes several mobile pistons that make a weapon more stable when held. + + + Barrel balancing system + + + The rifled part of the barrel makes it impossible to fire shot, but the accuracy achieved outweighs this drawback. + + + Rifled barrels + + + Thickening with poly-materials allows barrel pressure to be increased, improving bullet speed. + + + Dynamic barrel thickener + + + Cylindrical drilling of barrel helps to improve the weapon's rate of fire without affecting accuracy. + + + Cylindrical drilling of barrel + + + When the weapon is fired, an active counter-weight simultaneously moves to the muzzle section of the barrel, thus compensating for part of the recoil. + + + Addition of an active counter-weight to the barrel jacket + + + Replacement of a regular barrel with a longer one improves accuracy and flatness, but reduces the rate of fire. + + + Long barrel section + + + Barrel perforation causes a reduction in recoil with gas escaping via special holes. + + + Perforated barrel section + + + A more technological shortened barrel improves the weapon's rate of fire without sacrificing flatness and accuracy. + + + Shortened barrel section + + + Chrome plating improves the barrel's life cycle. + + + Chrome plating of the internal side of the barrel + + + Separators take on some of the recoil. + + + Addition of rubber separators. + + + A simplified rifled part is useful for close quarter combat where the emphasis is on the rate of fire rather than accuracy. + + + Installation of a barrel with a simplified rifled section + + + Installation of a barrel with additional threaded canals improves bullet speed and weapon accuracy at the cost of a considerable increase in recoil. + + + Additional threaded canals in the barrel + + + Unloading the barrel allows recoil to be reduced considerably. + + + Transferring the barrel compensator/flash reducer onto the frame + + + Allows barrel heat to be reduced and increases the rate of fire without sacrificing flatness. + + + Sinusoidal rifling of barrel + + + Polygon rifling is usually performed to improve accuracy of sniper rifles. + + + Installation of a barrel with a polygon rifled section + + + A pneumatic booster allows some of the recoil to be converted into higher barrel pressure, increasing muzzle velocity. + + + Pneumatic booster installation + + + Additional movement devices allow maximum carried load to be increased. + + + Additional servomotors + + + A development of Freedom technicians, who were the first to replace metal with carbon fiber in view of exoskeletons' huge weight. + + + Replacing metal components with carbon fiber + + + Armoring protects the exoskeleton's critical components from being damaged by accurate fire. + + + Drive device armoring + + + The easy movement system uses reinforced springs and joints, which allow the wearer to use the exoskeleton's own weight to ease motor functions. + + + Shagohod easy movement system + + + Installation of hydraulic boosters is a modification that separates third generation exoskeletons from the fourth generation. Allows for sprinting in an exoskeleton. + + + Addition of hydraulic boosters into drive devices + + + A fabric insert prevents soft tissue damage in the event of impact against the plate. + + + Amortization fabric layer + + + More effective that their rubber counterparts, silicon thickeners absorb impact with less damage to the wearer. + + + Amortization silicon thickeners + + + Fabric, clips and thickeners are replaced with lighter synthetic materials to reduce armor weight. + + + Lighter, synthetic and polymer materials + + + Rubberizing prevents soft tissue damage in the event of impact against the plate. + + + Amortization rubberized layer + + + The underlayer will help if the main fabric is torn. + + + A multi-layered polycarbonate, silicon and carbon fiber insert in case the main armor is penetrated. + + + Protective polymer inserts + + + Freedom's airtight Expanse bodysuit used to locate artifacts in anomalous areas. + + + Expanse anomalous protection bodysuit + + + Airtight layer of synthetic materials in case the external layer is damaged. + + + Synthetic layer + + + A number of ergonomic adjustments that use a rubber construction, which allow mobility to be retained even when wearing bulky armor. + + + A rubber mobility bodysuit + + + Constantan is capable of isolating against electricity and has a very high melting point. + + + Constantan thermal isolation inserts + + + Lead is a reliable defense against radiation because it absorbs all three types thereof. + + + Addition of lead to bodysuit + + + Basic protection against rain and caustic substances coming into contact with the skin + + + Canvas bodysuit + + + Fabric treated with a fire-resistant substance is popular among stalkers searching for fire artifacts. + + + Fabric treated with a fire-resistant substance + + + Magnesium inserts protect the wearer from thermal dangers. + + + Magnesium plate inserts + + + Even a simple plastic inner layer can protect the wearer from chemical and electrical hazard. + + + Airtight plastic inner layer + + + Fabric, clips and thickeners are replaced with lighter synthetic materials to reduce armor weight. + + + Replacement of fabric with synthetic materials + + + Plexiglass absorbs two types of radiation while being a lot lighter than lead. + + + Plexiglass inner layer for radiation protection + + + Reliable protection from chemical and electrical hazard. + + + An elastic airtight plastic inner layer + + + A thin layer of constantan is capable of isolating against electricity. + + + Constantan-based inner layer for isolation + + + Fiberglass is used in bodysuits worn by natural disasters response teams. + + + Thermal fiberglass protection + + + Impregnated fabric should prevent chemical poisoning. + + + Impregnated bodysuit fabric + + + Rubber is a basic way of protecting yourself from brief radiation exposure. + + + Rubberized bodysuit fabric + + + Used in stalker suits to improve durability. + + + Shield high durability protective frame + + + Nickel is sufficiently fire-resistant to be used for body armor inserts + + + Fire-resistant bodysuit with nickel inserts + + + This nickel and magnesium alloy is used in armor to prevent electric shocks. + + + An isolation bodysuit with manganin inserts + + + Airtight bodysuit with an anti-corrosion layer and Kevlar armor. + + + Second Skin integrated armored bodysuit + + + A bodysuit made using new unspecified polymers previously used by the Kiev research institute in developing the Ecologist suit with cavities filled with bismuth. + + + Ecologist polymer bodysuit with bismuth inserts + + + The lead mesh creates unbreachable radiation and chemical protection without sacrificing mobility. + + + Lifesaver plexiglass bodysuit with flexible lead mesh + + + A domestic development which appeared after the Chernobyl disaster. Used in exoskeletons to prevent electronic malfunctions. + + + Evacuator bodysuit with lead inserts + + + Mounting of an assault scope for close range combat. + + + 1.6x reflex sight + + + Mounting of an optical scope for medium and long range combat. + + + 4.0x optical scope + + + Mounting of an optical scope for long range combat. + + + 5.0x optical scope + + + Mounting of an optical scope for long range combat. + + + 6.0x optical scope + + + A modification made to assault weapons with reflex sights by means of a simple improvement in sight contrast in the yellow range. Important for combat in twilight conditions and dim buildings. + + + Improvement of sight contrast + + + A heat visor allows the wearer to detect and identify matching heat sources. + + + Automatic optical target acquisition + + + Night vision devices have saved many a sniper since their inception. + + + Night vision device installation + + + This modification allows the sight to be easily adjusted to the firing distance. + + + Adjustable range-finder sight + + + A pneumatic stock is used to reduce recoil during burst fire. + + + Pneumatic stock + + + A mobile shoulder rest considerably reduces recoil impact on the body. + + + Installation of an amortization shoulder rest + + + A more modern stock, which takes account of the specific nature of human physiology. + + + Ergonomic stock + + + When the weapon is fired, some of the powder gases are removed from the barrel into the cavity behind the bolt, ensuring that it stops smoothly on the way back. + + + Installation of a bolt assembly gas buffer + + + Partial lengthening of the bolt frame into the stock allows flatness to be increased at the cost of more recoil. + + + Lengthening the bolt frame shock buffer + + + Installation of a mobile component into the stock, which creates a counter-effect when the weapon is fired. + + + Mobile counter-weight + + + A larger rest allows for accurate fire. + + + Increased rest size + + + An amortization spring recoil buffer partially removes the discomfort experienced when firing a hand-held machine gun. + + + Built-in spring-based recoil buffer + + + A bolt assembly buffer position in the stock takes on and absorbs most of the recoil. + + + Additional bolt assembly gas buffer + + + A rubberized recoil-softening part is often used on factory-made stocks for large caliber sniper rifles. + + + Amortization stock component + + + An adjustable stock with a cheek pad is useful for firing from both convenient and inconvenient positions. + + + Adjustable stock with a cheek pad + + + A component for large caliber weapons with powerful recoil installed in the stock. + + + Hydraulic stock recoil buffer + + + Active filters can resist even corrosive chemicals. + + + Active filters + + + The closed band has been demonstrated to provide partial protection against direct psy-emissions. + + + A psy-protection band made of paired steel grills + + + A mask used in contaminated air or critical air temperature conditions, which are too low or too high for breathing. + + + Application of a screening coating + + + Application of a screening coating + + + A filter with a reinforced anti-corrosive coating with an additional preventing layer for removal of poisons + + + Filter for work in contaminated areas + + + A plexiglass mask can provide partial protection from radiation + + + Plexiglass coating + + + A plexiglass mask can provide partial protection from radiation + + + Plexiglass breathing mask + + + Respirator for total blocking of poisons + + + Impregnated breathing mask + + + This beryllium & aluminum matrix provides excellent protection without a significant increase in the helmet's weight. + + + Beryllium & aluminum plates + + + A beryllium & titanium matrix ensures more effective protection without a significant weight increase. + + + Beryllium & titanium plates + + + Improved filters maintain the same level of oxygen supply regardless of how contaminated the area is. + + + Installation of improved filters for scientific work + + + Hi-tech psy-protection that is said to have been invented by a scientist called Sakharov. + + + Installation of the Psy-Dome band + + + Protective alloy frame to prevent thermal and electrical damage. + + + Thunderbird constantan face armor + + + Additional armor to improve helmet durability. + + + Reinforced armored helmet body + + + A filter with an additional purification coating and a system for removal of poisons. + + + Reinforced respirator for extreme conditions + + + Installation of a night vision device for operations at night or in reduced lightning conditions. + + + First generation night vision device + + + A system for switching to closed cycle breathing in the event of critical air contamination with radioactive or chemical particles. + + + Radioactive and chemical threat prevention system + + + Steam purification & respiration mask + + + Installation of a more advanced night vision device for operations in complete darkness. + + + Second generation night vision device + + + A heat visor allows the wearer to detect and identify matching heat sources. + + + Automatic target acquisition system + + + Scientific wave-based device developed for work in anomalous areas with psy-emissions. + + + Oracle psy-stimulator + + + Installation of a more advanced night vision device for operations in complete darkness. + + + Third generation night vision device + + + Ionized air particles move between the system's electrodes in reverse to the movement of electrons using electricity, creating an ion wind. + + + Ion Wind cooling system + + + An infrared scanner allows for detection of nearby humans. + + + Infrared scanner + + + SPB - VPZ.m.IV Psychological Security Wave Psy Protection System, mark four. + + + SPB - VPZ.m.IV combat system + + + The reinforced spring is used to increase bullet speed. + + + Reinforced return spring + + + Installation of thickeners onto mobile parts of the mechanism ensure that the barrel deviates from the target less during firing. + + + Amortization of the return mechanism + + + Installation of an additional spring with a reverse coil to reduce recoil without sacrificing flatness. + + + Additional return spring + + + Protective sputter increases reliability and, more importantly, ensures airtightness, which prevents energy dissipation. + + + Protective return mechanism component sputter + + + Titanium rods can endure a much higher rate of fire than regular rods. + + + Titanium return mechanism rods + + + A synthetic element installed onto rods ensures that they move strictly as intended, increasing accuracy. + + + Addition of a balancing element + + + Thickening of the sleeve allows barrel pressure to be increased, improving bullet speed. + + + Return mechanism sleeve thickener + + + A link that is opened by gases and closed by the return mechanism itself, which allows part of the gas energy to be used to operate the return mechanism. + + + Installation of a distribution link + + + Replacement of the return mechanism with a more powerful version comprising two guiding rods and return springs. Increases the weapon's rate of fire. + + + Conversion to a two rod system + + + Special gas exit canals around the drum part of the weapon that reduce recoil. + + + Use of gas energy + + + Addition of diagonal cam slots onto the drum, which speed up rotation of the mechanism which uses gas energy. + + + Addition of diagonal cam slots onto the drum + + + The advantage of this European standard modification is reduced weight without a fall in reliability. + + + Impact-resistant polymer stock + + + A high durability receiver helps assault rifles endure combat conditions on a daily basis. + + + High durability alloy receiver + + + A simple addition of weight to the front of the receiver to reduce recoil. + + + Addition of counter-weight to the steel box + + + Installation of jackets helps to address increases in the weapon's rate of fire, which produce additional heat that must be controlled. + + + Additional cooling jacket + + + A more convenient handle shape, which allows for better handling of the weapon when firing on the move. + + + Ergonomic receiver shape + + + A modification used exclusively for barrels with solid bullpup receivers, which simplifies maintenance of the weapon. + + + Modular receiver + + + This sputter prevents the barrel from overheating, removes manufacturing defects and significantly increases the barrel's life cycle. + + + Smoothing receiver groove and indent sputter + + + A light mobile component is installed in the inclined handle to stabilize the weapon by creating a counter-effect to recoil when the weapon is fired. + + + Inclined handle + + + The cavity inside the handle allows the weapon's weight to be reduced. + + + Inclined handle + + + Lighter version of the standard stock. + + + Lighter stock + + + A lighter poly-material allows the weapon's weight to be reduced. + + + Impact-resistant polymer stock + + + Addition of a mass component to the weapon to reduce recoil. + + + Addition of a counter-weight + + + A more modern and comfortable handle simplifies weapon handling. + + + Ergonomic handle + + + An amortization handle reduces recoil. + + + Amortization handle + + + A more modern and comfortable stock simplifies weapon handling. + + + Ergonomic stock + + + A special coating protects the weapon from the elements. + + + Anti-corrosive coating + + + A mercury recoil absorber is located in the weapon's stock, partially consuming some of the recoil when the weapon is fired. + + + Mercury recoil absorber + + + A free-moving impulse counter-weight component, which moves from the bolt when the weapon is fired and absorbs some of the recoil. + + + Addition of an impulse counter-weight + + + A change of material reduces barrel damage from uneven heating during firing, which allows the weapon's rate of fire to be increased. + + + High-durability, thermal resistant alloys + + + An important modification that protects the weapon from air temperature effects during firing + + + Addition of thermal regulation jackets + + + A technological improvement, finning requires extreme precision to prevent the formation of overheating points on the barrel. + + + External barrel finning + + + Replacement of the barrel with a more modern version allows for a considerable increase in accuracy. + + + Changing barrel geometry + + + An expensive frame for a weapon that will serve a long time. + + + Titanium frame + + + In this case the frame is more reliable than composite. + + + Solid steel frame + + + A technical replacement of the pistol frame with a lighter one does not affect the weapon's reliability. + + + Polymer pistol frame + + + A more modern and comfortable handle simplifies weapon handling. + + + Ergonomic handle + + + An amortization handle reduces recoil. + + + Amortization handle + + + Protective thickening flaps should protect the weapon from dirt and impact. + + + Protective body thickeners + + + A change in the rear section makes for a more ergonomic handle shape. + + + Changing handle shape with a straight rear section + + + The possibility of choosing a suitable handle length makes for a more ergonomic handle shape. + + + Adjustable handle + + + This modification is only possible if a return spring has been installed into the handle. + + + Installation of a return spring amortization component + + + The possibility of choosing a suitable plate makes for a more ergonomic handle shape. + + + A handle with a changed shape with replaceable plates + + + Intended for weapons that are used often, the jacket protects them from early wear. + + + Installation of a perforated steel jacket + + + A more technological and more recoil dampening component than used in regular automatic weapons. + + + Effective compensation muzzle brake + + + A more modern and suitable barrel for sniper fire at very long range. + + + Installation of a heavy barrel section with polygon rifling + + + Longitudinal fullers of the barrel section prevent the barrel from overheating and dirt contamination. + + + Longitudinal fullers of the barrel section + + + Integrated silencer and flash suppressor, essential for stealth fire. + + + Installation of an integrated silencer + + + Sinusoidal rifling of the barrel chamber is usually performed on assault weapons to increase their rate of fire. + + + Sinusoidal rifling of barrel chamber + + + Generation A injector, developed by one of Kiev's research institutes, regularly injects the bloodstream with tiny doses of adrenalin, which may be dangerous but may also save your life in an emergency. + + + Fury adrenalin injector + + + A system for removal of condensate with poisons from the purification filter. + + + A system for removal of poisons + + + A Clear Sky development, this small wave emitter is mounted on the back, effectively increasing blood clotting speed when worn constantly. + + + Ray hemostimulator + + + A system that supplies electricity to the suit's exterior, repelling radioactive and chemical particles. + + + A built-in dust repellant system + + + Generation B injector, which regularly introduces a coagulation agent into the bloodstream when blood pressure drops significantly. + + + Hydra hemoglobin injector + + + By maintaining optimal body temperature, this system prevents exhaustion. + + + Installation of a thermal regulation system + + + This wave emitter is mounted on the chest and considerably increases wound healing speed, immune system strength and the wearer's pain barrier when in constant use. + + + Sun biostimulator + + + Scientific wave-based device developed for work in anomalous areas with psy-emissions. + + + Oracle psy-stimulator + + + Generation C injector that introduces a combat mix of dubious content into the bloodstream, improving tissue regeneration and removing pain. + + + Phoenix restoration system + + + An integrated system that monitors the wearer's health and supplies vitamins, adrenalin or anabolic substances as required. + + + Installation of a life support system + + + This wave emitter is mounted on the neck, and while its mechanism and method of operation are unclear, it has a strong calming effect. + + + Reflection neurostimulator + + + The purpose of the bolt hammer compensator is to absorb some of the recoil, improving groupings when firing in bursts. + + + Bolt hammer compensator + + + One of the simplest and most popular modifications, which allows trigger resistance to be reduced. Simple and handy. + + + Soft release + + + A special selection of components made from various materials specific to that weapon. It may not be cheap, but it increases the life cycle of your firearm. + + + Composite firing mechanism components + + + Allows the rate of fire to be increased at the cost of accuracy and reliability. + + + Forcing trigger delay device + + + Removal of the combat spring allows the first shot to be made half a second earlier. It may not be much, but it can save your life. + + + Springless release + + + Protective sputter makes misfiring due to firing mechanism malfunction impossible. + + + Protective firing mechanism component sputter + + + Boltless fixing allows for automatic load to be increased, considerably improving the weapon's rate of fire. + + + Boltless fixing of the firing mechanism + + + The impactless system pierces the round instead of striking it by means of a special hammer, which makes the firing process considerably softer. + + + Installation of an impactless firing mechanism system + + + The trigger is armed by the first shot, with all other shots occurring during automatic trigger arming. + + + Double trigger firing mechanism + + + One of the simplest and most popular modifications, which allows for trigger resistance to be reduced. Simple and handy. + + + Soft release + + + Partial arming allows firing accuracy to be improved. + + + Firing mechanism with partial pre-arming + + + Allows the same pressure to be applied to the trigger from the first to the last shot, which has a positive effect on ease of use. + + + Safe release device + + + A modern modification which prevents the weapon from bolt section detachment. + + + Increased trigger bolt head + + + A modular firing mechanism provides easier maintenance and parts replacement, as well as certain improvements in ease of use. + + + Modular firing mechanism + + + The arming component considerably reduces the amount of pressure required on the trigger, improving accuracy. + + + Installation of an arming component + + + A new technological development that allows a simple adjustment to change the firing mechanism mode - another step towards better ergonomics and easy weapon adjustment. + + + "Double" firing mode + + + Once the first shot is fired, half the trigger movement is required to make subsequent shots. + + + Short movement firing mechanism + + + Additional movement devices allow for maximum carried load to be increased. + + + Additional servomotors + + + The system supplies anti-tetanic, anti-inflammatory and streptocide substances. + + + Field Doctor built-in system + + + A bodysuit ventilation system with a prevention filter for work in contaminated areas. + + + Internal thermal regulation system + + + An ergonomic improvement: special mounts attached to the bodysuit allow for carried weight to feel lighter. + + + Weight distribution vest + + + An oxygen tank is required in areas with air contaminated by chemicals or radioactive particles. + + + Installation of an oxygen tank + + + Installation of an additional artifact container. + + + Additional artifact container + + + A system of mounts allows for weight to be distributed onto the whole body more evenly. + + + A mount system for weight distribution + + + A back frame relieves focused shoulder load from carried weight by distributing it over the body, which increases maximum load. + + + A weight distribution back frame + + + A system used to supply antiseptic, anti-tetanic and stimulating substances. Homemade, but doesn't seem to do any harm to the body. + + + Care built-in system + + + This system charges a special grate with an identical charge to that of the anomaly so as to reduce the threat. + + + Stingray electrostatic countermeasure system + + + Impregnated inner layer should prevent chemical poisoning. + + + Impregnated inner layer for chemical protection + + + An experimental model of a marathon running system, which is not used outside the Zone due to its high price and dubious application. + + + Athlete built-in system + + + This system removes poisons together with condensate from respirator cavities. + + + Antidote poison removal system + + + Installation of an additional artifact container. + + + Additional two-compartment artifact container + + + A combat support system built into the whole suit. Used rarely, primarily by the Spetsnaz. Comes preinstalled with adrenaline and blood clotting systems. + + + Varyag field support system + + + In this combat support system prototype, the designers opted against harmful adrenaline injections, instead including healing substances into the blood clotting system. + + + Skif field support system + + + This fairly expensive modification is actually common for new generation weapons. + + + Solid bolt installation + + + Thickening of the bolt section prevents energy dissipation, which improves flatness. + + + Bolt section thickening with synthetic inserts + + + Despite the name, it is the bolt that is replaced, as it has to endure the consequences of an improved rate of fire. + + + Rapid automatic release + + + Gas vent comes with a block that moves at the same speed, taking on part of the recoil. + + + Installation of a gas vent with a moving block + + + A second piston moves the counter-weight, compensating for the bolt mechanism movement impulse. + + + Installation of an additional gas piston + + + Protective sputter increases reliability and, more importantly, ensures airtightness, which prevents excessive energy dissipation. + + + Protective bolt section sputter + + + The purpose of titled grooves on the receiver is to reduce friction and catch small particles, preventing contamination of the bolt section. + + + Addition of a longitudinal grooves + + + Reducing the gas chamber diameter by means of synthetic thickeners considerable increases bullet speed. + + + Directed gas energy + + + On its way back to its starting position, the bolt redirects the air flow via the barrel chamber, cooling it. + + + Forced cooling + + + The weapon's bolt slides along the barrel, preventing upward movement of the muzzle section. + + + Creeping bolt installation + + + Installation of a gas pistol stops gases from entering the bolt frame, which considerably reduces weapon dirtiness. + + + Gas piston installation + + + This system collects some of the gases using the bolt section to improve its movement. + + + Gas energy collection system + + + A replacement of the automatic parts is more of an optimization than improvement of the gas piston. Provides a considerable increase in the weapon's rate of fire. + + + Short movement gas piston + + + Often used in modern weaponry, a roller locking system reduces recoil and improves groupings. + + + Change to a roller system with a semifree bolt + + + In absorbing some of the heat, the components reduce weapon temperature changes during firing. + + + Heat absorbing components + + + A longer movement of the gas piston slightly increases weapon length, with a serious improvement in flatness. + + + Long gas piston movement + + + A moving parts buffer evenly distributes recoil throughout the weapon when it is fired, making it less pronounced. + + + Installation of a special moving parts buffer + + + Symmetrical force cooling of a part of the barrel happens due to the work of an ejector and prevents weapon overheating. + + + Even forced cooling system + + + Provides an increase in rate of fire without overloading other parts through additional recoil. + + + Moving bolt section + + + Provides an increase in flatness thanks to improved transfer of impulse to the bullet. + + + Bolt section barrel closing system + + + Softens recoil by slowing down bolt section movement. + + + Slow bolt backward movement system + + + Sputter protects weapons from early wear. + + + Protective bolt section sputter + + + Improves flatness thanks to improved transfer of impulse to the bullet. + + + Barrel skew closing system + + + A heavier and closed bolt prevents the pistol's bolt section from malfunctioning. + + + Reinforced and fully closed bolt + + + A small buffer that takes on some of the recoil. + + + Polymer recoil buffer + + + Installation of a steel insert helps to reduce recoil. + + + Installation of a closing insert with a shaped spiral groove + + + By increasing bolt movement and reinforcing the return mechanism appropriately, you can improve flatness. + + + Increased bolt movement + + + Short movement considerably increases the weapon's rate of fire without sacrificing flatness. + + + Installation of a short bolt movement arrangement + + + Long bolt movement gives a bullet greater energy. + + + Installation of a long barrel movement arrangement + + + A replacement of the automatic parts is more of an optimization than improvement of the gas piston. This considerably improves the weapon's rate of fire. + + + Installation of a short movement recoil energy use arrangement + + + Installation of this module considerably improves groupings without sacrificing firing speed. + + + Combined two spring return module + + + Introduction of additional compensation holes brings about a significant reduction in recoil. + + + Integrated barrel lifting compensator + + + Modernization of the pistol's automatic parts suitable for automatic fire. + + + Fully automatic firing mode + + + Improvement of the pistol's automatic parts suitable for three round burst fire. + + + Three round burst firing mode + + + Cost + + + Cannot be installed + + + Installed + + + Are you sure you want to install: + + + Automatic target acquisition system + + + Automatic target acquisition system + + + x5 optical scope + + + x6 optical scope + + + Infrared scanner + + + Body armor weight + + + Second generation night vision device + + + Third generation night vision device + + + Optical scope mount + + + Integrated silencer + + + Underbarrel grenade launcher + + + Wound healing + + + Health restoration + + + First generation night vision device + + + Adjustable sight + + + High contrast sight + + + Servomotor boosters + + + Suit durability + + + Its not clear how the weapon works. It cant be repaired without additional information about its design. + + + The technician cannot perform this modification + + + This part has already been modified + + + Not enough money + + + Does not use shot + + + Automatic fire mode + + + 3-round burst mode + + + Number of containers + + + the technician needs vodka + + + the technician needs tools for basic work + + + the technician needs tools for fine work + + + the technician needs tools for calibration + + + the technician needs additional information + + + preceding modifications required + + + Armadillo protective coating based on sapphire crystals + + + Reinforced titanium & beryllium matrix + + + Extra carbon fiber coating + + + Rubberized cloth underlayer + + diff --git a/gamedata/configs/text/eng/st_land_names.xml b/gamedata/configs/text/eng/st_land_names.xml new file mode 100644 index 0000000..07ecd97 --- /dev/null +++ b/gamedata/configs/text/eng/st_land_names.xml @@ -0,0 +1,171 @@ + + + + Claw anomaly + + + Iron Forest anomaly + + + Sawmill + + + Krug antenna complex + + + Waste processing station + + + Circus anomaly + + + Ranger station + + + Skadovsk + + + Burnt farmstead + + + Boiler anomaly + + + Swamp + + + Izumrudnoye + + + Shevchenko + + + Dredge station + + + Dock cranes + + + Oakpine anomaly + + + Fuelling station + + + Old barge + + + Scar anomaly + + + Preobrazhensky bridge + + + Southern plateau + + + Substation workshops + + + Ash Heap anomaly + + + Cooling tower + + + Substation + + + Plavni anomaly + + + Cement factory + + + Kopachy + + + Yanov + + + Quarry + + + Scientists bunker + + + Volkhov AA complex + + + Anomalous grove + + + Parking lot + + + Checkpoint + + + Bitumen anomaly + + + Eastern tunnel + + + Container warehouse + + + Ventilation complex + + + Helipads + + + Concrete Bath anomaly + + + Jupiter plant + + + Prometheus movie theater + + + River port + + + Old service center + + + School + + + Hospital + + + Yubileiny service center + + + Laundromat + + + Kindergarten + + + Apartment complex + + + Grocery store + + + Department store + + + Book store + + + Volcano anomaly + + + Vine anomaly + + diff --git a/gamedata/configs/text/eng/st_mp_mapdesc.xml b/gamedata/configs/text/eng/st_mp_mapdesc.xml new file mode 100644 index 0000000..451be28 --- /dev/null +++ b/gamedata/configs/text/eng/st_mp_mapdesc.xml @@ -0,0 +1,126 @@ + + + + Vehicle station + + + A weird place. This silent building likely conceals its share of secrets, but stalkers are drawn here for another reason - a generous supply of artifacts found in this high risk / high reward area. Think fast and act fast, then luck will surely be on your side. + + + A weird place. This silent building likely conceals its share of secrets, but stalkers are drawn here for another reason - a generous supply of artifacts. + + + A depot, located at the entrance to the Zone. Its tractors, buses and trucks have stopped in their tracks for good... No artifacts have been spotted here so far, but the place is popular with raiders, who hunt down rookies and kill them for loot. Seek cover in buildings and behind vehicles, and watch out for enemies on rooftops! + + + A depot, located at the entrance to the Zone. Its tractors, buses and trucks have stopped in their tracks for good... + + + Deserted depot building and adjacent territory. Some equipment and supplies can be found here - if you look hard enough. Watch out for powerful anomalies and snipers on the roof of the depot - that is a great vantage point overseeing almost every approach to the area. + + + Deserted depot building and adjacent territory. Watch out for powerful anomalies and enemy snipers. + + + An enigmatic and fascinating place. This pool was built to conduct experiments on someone or something, but its exact purpose will forever remain a mystery. There are no artifacts to speak of, so stalkers may only be drawn here by the remnants of bizarre assemblies and devices. Watch the rooftops carefully and keep in mind the area's extremely high radiation levels. + + + An enigmatic and fascinating place. This pool was built to conduct experiments on someone or something, but its exact purpose will forever remain a mystery. + + + This dangerous part of the Dark Valley comprises a long street and a deserted institute. Who knows what they used to teach at the institute? The only thing to be learned here these days is survival! Oh, and keep a close eye on the roofs... + + + This dangerous part of the Dark Valley comprises a long street and a deserted institute... + + + This dreary desolate factory is the resting place of countless stalkers. A host of anomalies await visitors at every step, but they still flood in, attracted as though by a magnet to its valuable artifacts. Beware of radiation! + + + This dreary desolate factory is the resting place of countless stalkers. + + + The fire station whose entire forces were thrown to salvage the Chernobyl NPP in 1986. The tower is an excellent vantage point, overseeing the surroundings near and far. Very few visit the upper floors of buildings and basements, though that may all be for the better. For some time now the Zone's factions have been at each others' throats in this area - fighting for this strategic position. + + + The fire station whose entire forces were thrown to salvage the Chernobyl NPP in 1986. The station is an excellent tactical position. + + + Part of a huge junkyard, where heaps of radioactive refuse were dumped after the 1986 disaster, full of decrepit cranes and various equipment. Other local attractions include old dilapidated buildings and a huge hangar. Proximity to the Cordon and a relative abundance of artifacts draws in stalkers that prefer easy pickings. + + + Part of a huge junkyard, where heaps of radioactive refuse and equipment were dumped after the 1986 disaster. + + + A small district of the enigmatic city of Limansk - abandoned apartment blocks and one half-constructed building between them. When several expensive artifacts were found here, the news spread all over the Zone all too quickly. A few roads were opened to Limansk, and the shooting hasn't stopped for a minute ever since. + + + A small district of the enigmatic city of Limansk - abandoned apartment blocks and one half-constructed building between them. + + + An abandoned, godforsaken village in the depths of the Zone. A small, shallow, rusty lake, home to scores of wrecked vehicles, fills you with subconscious fear of the Zone's reality. Beware of snipers, but remember: the Zone favors the brave. + + + An abandoned, godforsaken village in the depths of the Zone. A small, shallow, rusty lake, home to scores of wrecked vehicles, fills you with subconscious fear of the Zone's reality. + + + An abandoned army base with forever immobile trucks and APCs, dilapidated headquarters and barracks. The deserted look, however, is deceptive: this is a real artifact goldmine, which means the enemy could be lurking around any corner. + + + An abandoned army base with forever immobile trucks and APCs, dilapidated headquarters and barracks. + + + This old village is a truly sinister place. If you're brave enough to come here, be ready to avoid a welcome in the form of a bullet to the head. No spot is safe here, so may your scope and silencer be with you! + + + This old village is a truly sinister place. You may have made it here, but this is no time to relax. + + + This is no pool - more like a blood bath. Echoes of bullets, explosions and shrieks of the dying roam its tiled corridors... Few stalkers know the way here, but even fewer know the way out. + + + This is no pool - more like a blood bath. Echoes of bullets and explosions roam its tiled corridors. + + + A small railway station near the Rostok factory. + + + A small railway station near the Rostok factory, full of rusted rail cars and locomotives, forever stopped in their tracks. An abundance of artifacts draws in fearless stalkers from all corners of the Zone. + + + A repair base in the vicinity of a small village. All the vehicles that were in order got lifted to deal with the aftermath of Chernobyl. Over time, the rest of the equipment has been ransacked for spare parts. The area is full of dangers, such as treacherous swamps and contaminated reeds, in which, if you're lucky, you might find something truly valuable. + + + A repair base in the vicinity of a small village. The area is full of dangers, such as treacherous swamps and contaminated reeds. + + + Piles of metal rust idly behind concrete walls. Before the turn of the century, the plant was in constant operation with the accompaniment of socialist slogans spewed forth from loudspeakers, but the building was abandoned long ago. + + + Old deserted plant: silent piles of metal behind concrete walls are all thats left. + + + A sports center in Pripyat located not far from the deserted school. The types of sport practiced here have changed greatly since 1986, as well as the number of enthusiasts willing to participate. Stalkers are drawn here by dubious fame, loot, and artifacts...and sometimes remain here forever. + + + A sports center in Pripyat located not far from the deserted school. + + + A very strange place. Many laugh at stalkers who claim to have seen it but it exists nonetheless. Gravitational anomalies have torn up the ground creating an alien landscape. The area is dominated by three huge towers, remnants of military hardware and floating islands of earth, ripped out of the ground. + + + A very strange place. Gravitational anomalies have torn up the ground creating an alien landscape... + + + These were the fringes of the Rostok factory before Duty settled down here. An eerie place, which is nonetheless rich in artifacts. Every empty hangar or warehouse is full of deadly perils. Be extremely careful and keep close watch over the white tower... + + + These were the fringes of the Rostok factory before Duty settled down here. An eerie place, which is nonetheless rich in artifacts. + + + Few dare to venture into the deserted city of Pripyat, formerly home to employees working at the CNPP. Despite this, the streets of the dead city have been troubled recently by fierce gunfire in a small part of the town between the Prometheus movie theater, the pier and houses on Kurchatova Street. + + + A small part of Pripyat between the Prometheus movie theater, the pier and houses on Kurchatova Street saw fierce fighting between the few who made it into the dead city. + + diff --git a/gamedata/configs/text/eng/st_mp_speechmenu.xml b/gamedata/configs/text/eng/st_mp_speechmenu.xml new file mode 100644 index 0000000..336116d --- /dev/null +++ b/gamedata/configs/text/eng/st_mp_speechmenu.xml @@ -0,0 +1,57 @@ + + + + Everyone, attack! + + + I'm going for the artifact! Cover me! + + + Follow me! + + + Guard the artifact for now. Dont take it yet! + + + I'm holding my position! + + + Hold your positions! + + + Take the artifact! Ill cover you! + + + I need help! + + + No money - buy me equipment! + + + No. + + + No one in sight! + + + Report, now! + + + Retreat! + + + Return the artifact! + + + Roger. + + + Shut up! + + + Stick together. + + + Take the artifact! + + diff --git a/gamedata/configs/text/eng/st_mp_teamdesc.xml b/gamedata/configs/text/eng/st_mp_teamdesc.xml new file mode 100644 index 0000000..942621f --- /dev/null +++ b/gamedata/configs/text/eng/st_mp_teamdesc.xml @@ -0,0 +1,15 @@ + + + + The Zone's anarchists. They hold that the Zone is a sanctuary of freedom and believe that all laws, rules and conventions of the outside world are void here. Their motto is "Do what you want and mind your own business." Freedom fights the government's attempts to control the Zone and is at war with the Mercenaries. Its members are equipped mainly with Soviet and Russian firearms. + + + Freedom faction (Free Stalkers) + + + These adventure-seeking cutthroats come from all over the world and welcome even the dirtiest of work. Their motto is predictably "Money has no smell." Theyll keep fighting for complete control over artifact fields, so long as theres demand for them. Mercenaries are equipped mainly with Western firearms. + + + Mercenary faction (Cutthroats) + + diff --git a/gamedata/configs/text/eng/st_quests_general.xml b/gamedata/configs/text/eng/st_quests_general.xml new file mode 100644 index 0000000..5149fbf --- /dev/null +++ b/gamedata/configs/text/eng/st_quests_general.xml @@ -0,0 +1,18 @@ + + + + Attention! Emission starts in: + + + You must run to the nearest cover immediately and hide from the emission. + + + You must not leave cover during an emission. + + + Emission: find cover + + + Emission: wait in cover + + diff --git a/gamedata/configs/text/eng/st_quests_jupiter.xml b/gamedata/configs/text/eng/st_quests_jupiter.xml new file mode 100644 index 0000000..fd94b4d --- /dev/null +++ b/gamedata/configs/text/eng/st_quests_jupiter.xml @@ -0,0 +1,687 @@ + + + + Debts: take money to the bandits + + + Vano owes the bandits money for a suit and can't pay it back because the interest builds up too quickly. He's asked you to deal with this problem. + + + Debts: return to Vano + + + Tell Vano how his debt repayment went. + + + Debts: deal with the bandits + + + Repaying Vano's debts has gotten messy. Take out the bandits. + + + Hostage: receive your reward from Mitay's friends + + + Mitay has been freed. Meet his friends at the bar to receive your reward. + + + Hostage: free Mitay + + + Hostage: talk to Grizzly to make sure he's ready + + + You must talk to Grizzly before attempting to free the hostage. + + + Hostage: free Mitay by force + + + You must eliminate the bandits to free a stalker called Mitay. + + + Hostage: meet the stalkers + + + Stalkers will help you to free the hostage. You need to meet them at night to attack the bandits together. + + + Hostage: arrange a ransom payment for Mitay's release + + + Arrange a ransom payment with the bandit leader to free a stalker called Mitay. + + + Free a stalker called Mitay, who was taken hostage by the bandits. + + + Hostage: lead Mitay out of the bandit camp + + + The bandit camp is too dangerous to hang around in. You must escort Mitay outside the camp. + + + Hostage: talk to Mitay + + + Mitay is relatively safe. Talk to him about your next course of action. + + + Road to Pripyat: talk to the technician about the underpass + + + The documents you found make it clear that there is an underground underpass located underneath the Jupiter plant that leads to Pripyat. The underpass has no power, is filled with gas, and the entrance to it has been blocked. You must find a technician who can activate the generator and open the underpass lock. + + + The memory module is in expert hands. You must wait for it to be unblocked. + + + UAV: unblock the memory module + + + UAV: collect the memory module from Nitro + + + UAV: collect the memory module from Novikov + + + Nitro has unblocked the memory module. You should collect the module to see what information it contains. + + + Novikov has unblocked the memory module. You should collect the module to see what information it contains. + + + You managed to salvage a memory module from the UAV. It must be unblocked for you to access the information it holds. + + + UAV: wait for the memory module to be unblocked + + + Oasis: find proof + + + The Oasis has been found and this place really does have healing properties. You need to find some proof to take back to the scientists. + + + The Oasis: take proof to the scientists + + + The Oasis has been found and this place really does have healing properties. You need to take the artifact you found there to the scientists as proof. + + + The Oasis: check whether the legend is true + + + Ozersky, the scientist from the bunker, asked you to try to find the Oasis, a legendary place in the Zone. According to rumors, there should be some healing waters there, but nobody really knows whether it exists or not. + + + Kopachy: go with Uncle Yar + + + Uncle Yar needs help with something. Go to Kopachy village with him. + + + Kopachy: eliminate the mercenaries + + + Looks like Uncle Yar anticipated the mercenaries' arrival. You must eliminate them. + + + Kopachy: stay close to Uncle Yar + + + Uncle Yar asked you to stay close to him and keep quiet. + + + Kopachy: talk to Uncle Yar + + + The mercenaries are dead. You should talk to Uncle Yar to get an explanation of what happened. + + + Intermittent psy-emissions: take the anomalous formation to the scientists + + + Take the sample you found to Hermann as agreed. It looks like this is the source of intermittent psy-emissions, an item that is half-transformed through anomalous exposure. + + + Intermittent psy-emissions: investigate the source + + + Investigate the tunnel for some kind of anomalous formation. The scientists believe that the intermittent psy-field has a source, which will probably resemble an artifact. + + + Intermittent psy-emissions: meet Topol's squad + + + Topol's squad went to the tunnel with the intermittent psy-emissions and you must meet them there. + + + Intermittent psy-emissions: talk to Topol + + + Join Topol's squad to go to the tunnel with the intermittent psy-emissions. The agreement is that stalkers will guard the tunnel while you search for what the scientists want. + + + You should take all the radio technical materials you found to Nitro. + + + Nitro needs radio technical materials. You can give him what you already have or try to find more. + + + Radio equipment: find materials for Nitro + + + Nitro needs radio technical materials. He says you should look for them at the cement factory. + + + Theft: find out who is responsible for the theft + + + Ask stalkers at Yanov if they've seen anyone suspicious who could have stolen things from a personal box. + + + Theft: check the substation + + + You need to check out the substation, as that's where the suspicious stalker who may be responsible for the theft was headed. + + + Theft: take your things + + + All the items Snag stole should be in his stash in the sewers behind the substation. + + + Anomalous plant: get a plant sample + + + An area filled with anomalous vegetation has appeared near the edge of the quarry. Ozersky has asked you to get a plant sample for his research. + + + Anomalous plant: give the sample to Ozersky + + + You must take the plant sample to Ozersky. In exchange, Ozersky will convince Hermann to hand over a scientific suit. + + + Hunting: eliminate unidentified mutants + + + A group of stalkers encountered unidentified mutants in the tunnels north of the Jupiter plant. Investigate the area and eliminate the mutants. + + + Hunting: get your reward for killing the mutants in the tunnel from Trapper + + + Mutants in the tunnels north of the Jupiter plant have been eliminated. You should inform Trapper and collect your reward. + + + Hypothesis: place the scanner in the center of the landslide + + + Place the scanner in the center of the landslide to test Ozersky's hypothesis. + + + Hypothesis: wait for the experiment to end + + + The scanner is now in active mode and has begun to register mutant presence. You must wait until enough data has been collected to confirm or disprove the hypothesis. + + + Hypothesis: take the scanner + + + Enough data has been collected to confirm Ozersky's hypothesis. Take the scanner. + + + Hypothesis: give the scanner to Ozersky + + + You must give the scanner to Ozersky. The data collected should be enough to confirm his hypothesis. + + + Hunting: kill the swamp bloodsuckers + + + A group of swamp bloodsuckers has been spotted in Fen, behind the cement factory. Local stalkers have asked you to eliminate them. + + + Hunting: get your reward for killing the swamp bloodsuckers from Trapper + + + The swamp bloodsuckers are dead. You should collect the reward put up by local stalkers from Trapper. + + + Night hunt: kill the chimera + + + Chimeras are nocturnal predators and nobody knows the whereabouts of this one's daytime lair. You must kill it at night when it comes out to hunt by the ventilation complex. + + + Night hunt: tell Trapper that the chimera is dead + + + The killer chimera is dead and Fox, the hunter, has been avenged. Tell Trapper about this. + + + Tools: bring Nitro tools + + + Nitro has asked you to get two sets of tools: one for basic work and one for fine work. The technician will pay you for the tools and will be able to perform more advanced weapon and armor modifications. + + + Tools: bring Nitro tools + + + Nitro has asked you to get two sets of tools: one for basic work and one for calibration. The technician will pay you for the tools and will be able to perform more advanced weapon and armor modifications. + + + Tools: bring Nitro tools + + + Nitro has asked you to get a set of tools for basic work. The technician will pay you for the tools and will be able to perform more advanced weapon and armor modifications. + + + Tools: bring Nitro tools + + + Nitro has asked you to get two sets of tools: one for fine work and one for calibration. The technician will pay you for the tools and will be able to perform more advanced weapon and armor modifications. + + + Tools: bring Nitro tools + + + Nitro has asked you to get a set of tools for fine work. The technician will pay you for the tools and will be able to perform more advanced weapon and armor modifications. + + + Tools: bring Nitro tools + + + Nitro has asked you to get a set of tools for calibration. The technician will pay you for the tools and will be able to perform more advanced weapon and armor modifications. + + + Tools: bring Nitro tools + + + Nitro has asked you to get three sets of tools: one for basic work, one for fine work and one for calibration. The technician will pay you for the tools and will be able to perform more advanced weapon and armor modifications. + + + Pripyat 1: find a suit with a closed-cycle respiratory module + + + You will need a suit with a closed-cycle respiratory module to go through the Pripyat 1 underpass, as it has been filled with carbon dioxide mixed in with an unknown substance. + + + Pripyat 1: take Strider to see Zulu + + + You must take Strider to see Zulu and introduce him as a new member of the squad. Zulu may not be welcoming if a fighter wearing a Monolith suit shows up on his own. + + + Pripyat 1: talk to Strider about a protective suit + + + The Pripyat 1 underpass has been filled with carbon dioxide mixed in with an unknown substance. You must inform Strider that he will need a suit with a closed-cycle respiratory module to go through the underpass. + + + Pripyat 1: assemble a squad to go to Pripyat + + + Nitro could open the Pripyat 1 underpass lock, but he refuses to go into the Jupiter plant without protection. He further recommends that you get a few people to go through the underpass with. You already have Zulu, and he has suggested that you send new recruits to him. + + + Pripyat 1: talk to Zulu about going to Pripyat + + + Nitro could open the Pripyat 1 underpass lock, but he refuses to go into the Jupiter plant without protection. He further recommends that you get a few people to go through the underpass with. He suggested that you speak to Zulu, as he could help you assemble a squad. + + + Pripyat 1: take Sokolov to see Zulu + + + Sokolov has agreed to go to Pripyat and could take a scientific suit when he leaves the bunker. You should take him to see Zulu and introduce him as a new member of the squad. + + + Pripyat 1: talk to Sokolov about a protective suit + + + Pripyat 1: talk to Ozersky about a suit for Sokolov + + + Sokolov is willing to wear a scientific suit for protection, but Hermann is unlikely to let him take one from the bunker. You should talk to Ozersky - he's nicer and easier to deal with. + + + Pripyat 1: tell Sokolov about the scientific suit + + + Ozersky is very happy with the plant sample. He has asked you to tell Sokolov that he can collect his scientific suit from Hermann. + + + The Pripyat 1 underpass has been filled with carbon dioxide mixed in with an unknown substance. You must inform Sokolov that he will need a suit with a closed-cycle respiratory module to go through the underpass. + + + Pripyat 1: get Vano money for the suit + + + The suit for which Vano owed money to the bandits had a closed-cycle respiratory module. Vano had to pawn it to pay his debts. Now he needs 3,000 to buy it back. + + + Pripyat 1: take Vano to see Zulu + + + Vano is willing to go to Pripyat. You must take him to see Zulu and introduce him as a new member of the squad. Vano can buy back his suit on the way. + + + Pripyat 1: talk to Vano about a protective suit + + + The Pripyat 1 underpass has been filled with carbon dioxide mixed in with an unknown substance. You must inform Vano that he will need a suit with a closed-cycle respiratory module to go through the underpass. + + + Flint, AKA Magpie, is a sneaky son of a bitch. You should expose him to the stalkers at Zaton or other factions. This will teach him a good lesson. + + + Flint is showing off and talking about things that he hasn't even seen. It would be good to expose his deceit. + + + False claims: deal with Flint + + + Flint is clearly taking credit for the achievements of others. He needs to learn to mind his tongue. + + + Flint's showboating is beyond belief - you should talk to him and get him to see your point. + + + Flint, AKA Magpie, is a sneaky son of a bitch. You should expose him to the stalkers at Zaton or other factions - that would be revenge of the highest order. + + + Anomaly research: get scanners from the technician + + + Get scanners from Novikov. Hermann wants to collect artifact formation statistics and the scanners must be placed in the center of several anomalies for this purpose. + + + Anomaly research: place the scanner in the anomaly + + + Anomaly research: collect your reward + + + Collect the reward promised to you for placing scanners in anomalies. Now that the scanners are in position, Hermann can begin to collect artifact formation data. + + + Place the scanner in the center of the anomaly. Hermann wants to collect artifact formation statistics and the scanners must be placed in the center of several anomalies for this purpose. + + + A contract with the scientists: bring Garry the Kolobok artifact + + + Garry needs the Kolobok artifact in order to complete his contract with the scientists. Bring him this artifact. + + + A contract with the scientists: bring Garry the Meat Chunk artifact + + + Garry needs the Meat Chunk artifact in order to complete his contract with the scientists. Bring him this artifact. + + + A contract with the scientists: bring Garry the Meat Chunk and Kolobok artifacts + + + Garry needs the Meat Chunk and Kolobok artifacts in order to complete his contract with the scientists. Bring him these artifacts. + + + A contract with the scientists: artifacts delivered + + + Garry has both artifacts and his contract is complete. + + + Duty history: give the Duty founder's PDA to interested parties + + + You found the personal PDA of the founder of Duty, who died in the anomaly. You should get this PDA to someone who would be interested in the faction leader's last moments. + + + Anomalous activity: investigate the area using an improved detector + + + Scientists' scanners have registered unusual activity north of the bunker. Investigate the area using an improved detector. + + + Guarding the scientists: find reliable people + + + The scientists' bunker is unprotected. You must find reliable people to guard it. + + + Guarding the scientists: return to Hermann for your reward + + + You have found guards for the scientists' bunker. You should return to Hermann for the reward you're due. + + + Last developments: find documents at the Jupiter plant + + + Hermann is interested in the Jupiter plant's last developments. Find the documents in the administrative section of the plant. + + + Last developments: take the documents to Hermann + + + The documents you found indicate that all technical documentation was moved outside the plant. Although it's not much, you should convey this information to Hermann. + + + Last developments: take the documents and Black's PDA to Hermann + + + A mercenary attack took place while you were searching for the documents. According to the PDA you found on Black, their leader, they were sent to prevent the scientists from looking for the documents. At the same time, the documents you found indicate that all technical documentation was moved outside the plant. You should convey this information to Hermann and show him Black's PDA. + + + Monolith survivors: talk to Yanov residents about cover + + + A squad of Monolith fighters has broken free of the spell that possessed them. They're looking for cover from emissions and mutants. You need to talk to the residents of Yanov station about allowing the Monolith squad to take cover there. + + + Take Duty recruitment officers to the former Monolith squad. If the Monolith fighters join Duty, they'll be able to take cover from emissions and mutants at Yanov station. + + + Take Freedom recruitment officers to the former Monolith squad. If the Monolith fighters join Freedom, they'll be able to take cover from emissions and mutants at Yanov station. + + + Monolith survivors: take recruitment officers to the former Monolith squad + + + Anomaly research: cover the stalkers + + + It looks like the taking of measurements in the anomaly attracted mutants. You must cover the stalkers until they have collected all the data required. + + + Anomaly research: cover the stalkers + + + It looks like the taking of measurements in the anomaly attracted zombies from Kopachy. You must cover the stalkers until they have collected all the data required. + + + Anomaly research: talk to Hermann + + + The anomaly measurements have been completed - inform the scientists of this and collect your reward. + + + Anomaly research: talk to the stalkers + + + Talk to the stalker squad responsible for taking measurements - you need to choose which anomaly to go for. + + + Anomaly research: talk to the stalkers + + + All the required measurements have been taken, so you can head back to the scientists' bunker together with the squad. + + + Anomaly research: talk to the stalkers + + + Measurements have been taken from the anomaly, so you need to talk to the squad to discuss where to go next. + + + Anomaly research: cover the stalkers + + + Hermann has offered you the job of covering stalkers while they take measurements in anomalies. + + + Stingray 4: investigate the crash site + + + Stingray 4: find the reason for electronic burn out + + + Investigate the Stingray 4 crash site. + + + You must find the source of the powerful electric charge which hit the Stingray 4 helicopter. + + + Stingray 1: give the black box to a technician for decryption + + + The Stingray 1 black box survived the crash. It must be taken to a technician for decryption for you to access the information it holds. + + + Stingray 1: wait for black box decryption to be completed + + + Nitro has agreed to decrypt the black box. He said it would take around three hours. You must wait for him to finish. + + + Stingray 1: return to Nitro for information held by the black box + + + Nitro should have completed the decryption process by now. Go see him to get the information held by the black box. + + + Stingray 1: investigate the crash site + + + Investigate the Stingray 1 crash site. + + + Pripyat 1: get to Pripyat + + + You must get through the Pripyat 1 underpass and reach the military evacuation point in Pripyat. + + + Road to Pripyat: investigate the chemical compound workshop at the Jupiter plant + + + The chemical compound workshop should contain information about the flooding of the Pripyat 1 underpass with some sort of gas. + + + Road to Pripyat: investigate the administrative section of the Jupiter plant + + + The guide does not know of a safe route to Pripyat, but he has suggested where you can find information about underground tunnels that lead from the Jupiter plant to the city. You should start with the administrative section. + + + Road to Pripyat: investigate the laboratory section of the Jupiter plant + + + The documents found in the administrative section mention evacuation of the production complex from the Jupiter plant. Information concerning this matter should be in the laboratory section. + + + Road to Pripyat: check the Pripyat 1 underpass transportation lock + + + The entrance to the underground underpass is behind the transportation lock. Investigate the area and look for any information concerning the underpass. + + + Road to Pripyat: investigate Department 1 of the Jupiter plant + + + There should be information about the Pripyat 1 underpass in Department 1. This information could be very useful, so you should check there. + + + Road to Pripyat: investigate the delivery department of the Jupiter plant + + + Judging by the note in the laboratory workshop, the evacuation was supposed to have been carried out by the delivery department, so you should check there as well. + + + Road to Pripyat: investigate the repair workshop of the Jupiter plant + + + The delivery department had information about losses during transportation of something referred to as item 62. According to the records, the repair workshop was charged with handling this matter - you should check there. + + + Road to Pripyat: talk to the guide + + + According to the recording in the black box of one of the helicopters, the military units were supposed to converge on evacuation point B28. According to the maps found in the other helicopter that took part of the mission, this point is located in Pripyat. You'll have to find some way of getting there - talk to the guide about it. + + + Duty warehouse: take what you're owed + + + Duty warehouse: meet Morgan + + + Morgan the trader has offered you access to Duty's warehouse as payment for your silence about his business. You need to meet him near the quarry as agreed. + + + You must open the gate to keep going. + + + You must open the door to keep going. + + + You must activate the power supply to the gate to keep going. + + + You must unblock the gate to keep going. This can probably be done from the control room. + + + Research group: Hire the right people + + + A research group working for the scientists has perished. You must staff a new group so research can continue. + + + Research group: Return to Hermann for the reward + + + You've found the right people for a new research group. Now return to Hermann to collect your reward. + + + Pripyat 1: complete Ozerskys mission + + + You need to complete Ozerskys mission involving the anomalous plant to get a protective suit for Sokolov. + + + Nitro needs radio technical materials. You need to find them in the cement factory. + + + It was Flint who left Splinter to die in the anomaly. Talk to him and find out why he did it. + + + Retribution: avenge Splinter + + + Find whoever left Splinter to die in an anomaly, having taken the artifact and left. Unfortunately, Splinter didnt manage to name the villain, so all thats known about him is that he is a member of Freedom. + + + Lieutenant Colonel Shulga has permitted you to take any equipment you want from the Duty warehouse if you manage to capture it. + + + Loki has allowed you to take any equipment you want from the Duty warehouse as long as its held by Freedom fighters. + + diff --git a/gamedata/configs/text/eng/st_quests_pripyat.xml b/gamedata/configs/text/eng/st_quests_pripyat.xml new file mode 100644 index 0000000..807c145 --- /dev/null +++ b/gamedata/configs/text/eng/st_quests_pripyat.xml @@ -0,0 +1,345 @@ + + + + Item 62: find documents in the testing workshop + + + You need to find documents concerning item 62. The documents should clarify whether the weapon could have been used to shoot down the helicopters. + + + Unidentified weapon: take cover in the building + + + You must take cover in the building and repel the Monolith attack. + + + Unidentified weapon: find information + + + The weapon is not operational and it's not clear how it works. You need to find a technician who can make sense of the unidentified weapon. + + + Unidentified weapon: kill the Monolith squad leader + + + You must kill the Monolith squad leader, the one using the unidentified weapon. + + + Unidentified weapon: search the dead Monolith fighters + + + The Monolith fighters should have the unidentified weapon with them - find it. + + + Unidentified weapon: talk to Cardan + + + Cardan should have shaken off his hangover by now - time to talk to him about the unidentified weapon. + + + Unidentified weapon: wait for Cardan to come to his senses + + + Cardan probably knows about the weapon - you need to talk to him when he wakes up. + + + Gauss rifle: tell Kovalsky about the weapon + + + You need to tell Kovalsky everything you've learned about item 62. + + + Unidentified weapon: join the squad + + + You need to join the special squad in order to capture the weapon together. + + + Unidentified weapon: pick up the weapon + + + You need to pick up the Monolith squad leader's weapon. + + + Unidentified weapon: take the weapon to Kovalsky + + + You have the weapon - now you should show it to Kovalsky and find out whether the weapon could have caused the helicopter crashes. + + + Unidentified weapon: take part in the Monolith ambush + + + The military recon unit is setting up an ambush to attack the Monolith squad. You should take part in the operation. + + + Monolith forces: meet with the reinforcements + + + Kovalsky has sent reinforcements to help you eliminate the Monolith squad holed up in the book store. + + + Monolith forces: clear out the book store + + + You need to eliminate all Monolith forces in the building. Large Monolith units are a danger to the military camp. + + + Monolith forces: investigate the strange construction + + + There was a strange device in the building. Investigate this device. + + + Laboratory X8: find documents concerning experiments + + + The information you found refers to a central laboratory, designated X8. It could contain information about secret experiments conducted in the Zone. + + + Missing recon unit: find the squad + + + The recon unit dispatched by Kovalsky disappeared after a strange communication session. You must find them to work out what happened. + + + Missing sentry: investigate the area where the sentry died + + + The sentry was behaving very strangely, so you should investigate and find the reason for this. + + + Missing sentry: find the sentry + + + One of the soldiers went missing from his post - you need to find him and determine why he went missing. + + + Missing sentry: kill the controller + + + There was a controller near the missing sentry - it must be eliminated. + + + Radio interference: find the missing squad + + + The squad which was looking for the source of radio interference went missing - you need to find it. + + + Radio interference: search the bodies + + + Search the bodies - this may help to establish why they died. + + + Radio interference: search the body + + + Search the body - this may help to establish why he died. + + + Radio interference: blow up the door + + + You'll have to blow up the door using explosives to make your way into the building. + + + Radio interference: investigate the sound + + + There is a noise coming from the fridge - looks like someone's locked inside it. Investigate. + + + Radio interference: eliminate the source of interference + + + You have located the source of radio interference- you need to destroy it. + + + Radio interference: find the source of interference + + + There is a source of radio interference in the building - find it. + + + Radio interference: find the explosives + + + The squad sent to look for the source of interference had explosives. Find them to clear the entrance to the building. + + + Radio interference: get inside the kindergarten building + + + The source of the signal is somewhere in the kindergarten building, so you must get inside. + + + Evacuation: cover the military + + + Strelok may be dead, but you still have to help the military get to the helicopters. + + + Evacuation: cover Strelok + + + The HQ is interested in the information Strelok has to offer. You must get him to the helicopters. + + + Evacuation: get to the helicopters + + + Everyone is dead - you'll have to get to the helicopters on your own. + + + Evacuation: talk to Kovalsky + + + You need to talk to Kovalsky before the evacuation starts. + + + Evacuation: tell Kovalsky you are ready + + + You should inform Kovalsky that you are ready to begin the evacuation. + + + Evacuation: wait for the emission to finish + + + You need to wait for the emission to finish. + + + Unknown: investigate the source of the signal + + + Kirillov has identified a strange signal not far from the base. You need to investigate the source of the signal. + + + Unknown: follow the signal + + + The signal coordinates are accessible again, so follow them. + + + Unknown: investigate the last known signal location + + + The signal vanished in the building's yard, so investigate the last known signal location. + + + Unknown: prepare for an attack on the base + + + Return to the army base and prepare for a likely attack. + + + Radio interference: talk to Kovalsky + + + Colonel Kovalsky has asked for you. + + + Laboratory X8: get inside the elevator shaft + + + The entrance to the underground laboratory is below the Yubileiny service center, with the only way of getting inside being the elevator shaft. + + + Laboratory X8: find the generator + + + The power to the elevator shaft doors has been cut. Opening them will require you to find and activate the emergency generator. + + + Laboratory X8: descend into the laboratory + + + You need to use the elevator to get into laboratory X8, which is below the Yubileiny service center. + + + One shot: eliminate the messenger + + + You must eliminate the messenger. With him dead, the mercenaries won't be able to find the laboratory. + + + One shot: wait for the client's people + + + Wait for the client's people to show up and kill their leader. With him dead, the mercenaries won't be able to find the laboratory. + + + One shot: kill the mercenary squad leader + + + You must kill the mercenary squad leader. With him dead, the mercenaries will be disorganized and not much of a threat. + + + One shot: wait for the mercenaries to appear + + + You must wait for the mercenaries to show up and kill their leader. With him dead, the mercenaries will be disorganized and not much of a threat. + + + One shot: talk to Kovalsky + + + Report the mission results to Kovalsky. + + + Laboratory X8: leave the underground complex or continue looking for documents + + + You have found documents and you can now leave the laboratory, however there may still be other documents inside the complex. + + + Laboratory X8: leave the underground complex or continue looking for documents + + + You have found documents and you can now leave the laboratory, however there may still be other documents inside the complex. + + + Laboratory X8: leave the underground complex + + + It looks like you have collected all the documents in the laboratory. You can now leave the underground complex. + + + Monolith forces: wait for reinforcements + + + You need to wait for reinforcements sent by Kovalsky to eliminate the Monolith forces in the book store + + + A quiet word: talk to Kovalsky + + + You need to talk to Kovalsky. It looks like hes got something important to say. + + + Evacuation: hold out by the helicopters + + + You must protect the helicopters from the enemy until they can take off. + + + Evacuation: revive the medic + + + It seems the medic has been hit by unidentified forces again. Revive him as quickly as possible. + + + Evacuation: return to the helicopters + + + You must return to the helicopters as they might be able to take off any moment now. + + + Evacuation: return to the helicopters ASAP + + + The helicopters are ready for take-off. You must board one of them immediately - the pilots cannot wait long. + + diff --git a/gamedata/configs/text/eng/st_quests_zaton.xml b/gamedata/configs/text/eng/st_quests_zaton.xml new file mode 100644 index 0000000..0b8d772 --- /dev/null +++ b/gamedata/configs/text/eng/st_quests_zaton.xml @@ -0,0 +1,780 @@ + + + + Safe spot: reach Skadovsk + + + The only relatively safe places in the Zone are large camps. The nearest one is Skadovsk - that's where you should be headed. + + + Area maps: find someone interested in the maps + + + Area maps: offer the maps to Pilot + + + It's possible that Pilot, the local guide, could be interested in maps of the area between Zaton and Jupiter. + + + Stingray 2: investigate the crash site + + + Investigate the Stingray 2 crash site. + + + Stingray 5: investigate the crash site + + + Stingray 5: find the reason for electronic burn out + + + Stingray squad: find the source of the charges which hit the two helicopters + + + Investigate the Stingray 5 crash site. + + + You must find the source of the powerful electric charge which hit the Stingray 5 helicopter. + + + You must find out what caused the electronics in Stingrays 4 and 5 to burn out. It seems they were hit by powerful electric charges. + + + Food: get food for the mercenaries + + + The mercenary squad in the substation workshops has asked you to bring them six cans of meat, pieces of sausage or bread. + + + Food: take the food to the mercenaries + + + You must take the food you've collected to the mercenaries in the substation workshops. + + + Tools: investigate the substation workshops + + + They say there might be tools in the substation workshops. You might even find the ones the technician is after. + + + Hunting the chimera: find the mutant while it's sleeping + + + You need to find the chimera before it wakes up. + + + In search of Magpie: inform Gonta + + + It looks like Magpie, the stalker who set up Gonta's squad, has been found. He has joined Freedom and now calls himself Flint. + + + Hunting the chimera: kill the mutant + + + The chimera is awake and you should kill it before it's too late. + + + Hunting the chimera: meet Gonta in the bar at 3AM + + + You should meet Gonta before sunrise to join his squad in their chimera hunt. + + + Hunting the chimera: inform Trapper + + + You should inform a stalker called Trapper that the chimera hunt was successful. He should give you a reward. + + + In search of Magpie: find the stalker + + + A stalker called Magpie set up Gonta's squad to be attacked by a chimera. They've asked you to find the bastard. + + + Evacuation locations: investigate position B205 + + + The map you found in one of the helicopters indicated evacuation locations. You should check if the soldiers went to location B205 + + + Evacuation locations: investigate position B28 + + + The map you found in one of the helicopters indicated evacuation locations. You should check if the soldiers went to location B28 + + + Evacuation location: find the coordinates of location B28 + + + The black box of one of the Stingray helicopters had a recording where the squad commander designates a position at which the squad is to converge. This position is evacuation point B28 and you need to work out its coordinates. + + + Evacuation location: reach location B28 + + + The position at which the soldiers are supposed to converge is in Pripyat. Find a way of getting there. + + + Evacuation locations: investigate position B2 + + + The map you found in one of the helicopters indicated evacuation locations. You should check if the soldiers went to location B2 + + + Strange phenomenon: take the artifact to Beard + + + The source of the strange glow was an equally strange artifact. It's bound to be of interest to Beard. + + + Strange phenomenon: ask stalkers about the artifact + + + Stalkers may know something about the strange artifact or they could suggest someone who does. You should talk to them. + + + Strange phenomenon: find the source of the glow at the dredge station + + + A strange glow was spotted at the dredge station. Beard asked you to find its source. + + + Strange phenomenon: take the artifact + + + The source of the strange glow was an equally strange artifact. You should take it. + + + Strange phenomenon: tell Beard about the artifact + + + The source of the strange glow was an equally strange artifact. Even though you don't have the artifact, you should tell Beard about it. + + + Getting to the plateau: jump into the anomaly + + + It looks like the way to the plateau is through the anomaly. You need to jump into it. + + + Getting to the plateau: find Noah's secret path + + + Noah's PDA mentioned his own "secret path" to the plateau. You need to find it. + + + Getting to the plateau: find out how to get there from Noah + + + They say a stalker called Noah knows a path onto the plateau. You need to find out how to get there. + + + Missing stalkers: bring back proof of Tremor's involvement + + + You need to take the PDA with Tremor's recordings to Skadovsk and show it to Beard. The recordings make it clear that the medic was the one responsible for stalker disappearances. + + + Missing stalkers: find proof of Tremor's involvement + + + You need to check whether Tremor left any evidence of his involvement in stalker disappearances. + + + Stingray 3: investigate the crash site + + + Investigate the Stingray 3 crash site. + + + You need to bring Beard the artifact, but the head start time has expired. Now your competitors are searching for the artifact as well. + + + You need to bring Beard the artifact. Remember: your competitors are also searching for it. + + + You need to bring Beard the artifact, but there is a report that another group has already found one. You should track the signal and try to complete the job before your competitors do. + + + You need to bring Beard the artifact, but another group has already done that. Now you'll only get half your fee for the artifact. + + + You need to bring Beard the artifact. + + + Artifact order: bring back a Gravi + + + Artifact order: bring back an Eye + + + Artifact order: bring back a Bubble + + + Artifact order: bring back a Shell + + + Artifact order: bring back a Goldfish + + + Artifact order: bring back a Flame + + + Artifact order: bring back a Firefly + + + Artifact order: bring back a Snowflake + + + You need to find the artifact for Beard, but the head start time has expired. Now your competitors are searching for the artifact as well. + + + You need to find the artifact for Beard. Remember: your competitors are also searching for it. + + + You need to find the artifact for Beard, but there is a report that another group has already found one. You should track the signal and try to complete the job before your competitors do. + + + You need to find the artifact for Beard, but another group has already completed the order. Now you'll only get half your fee for the artifact. + + + You need to find the artifact for Beard. + + + Artifact order: find a Gravi + + + Artifact order: find an Eye + + + Artifact order: find a Bubble + + + Artifact order: find a Shell + + + Artifact order: find a Goldfish + + + Artifact order: find a Flame + + + Artifact order: find a Firefly + + + Artifact order: find a Snowflake + + + Compass: locate Noah and find out where you can get the rare artifact + + + You need to locate Noah at the old barge and find out where you can get the rare Compass artifact. Beard has been looking for the artifact for a long time and he's willing to pay well for it. + + + Compass: take the artifact to Beard + + + Compass: find out where you can get the rare artifact from Noah + + + Sultan wants to intercept the artifact Beard is looking for. You need to locate Noah at the old barge and find out where you can get the artifact. + + + Compass: take the artifact to Sultan + + + The artifact Noah gave you is the Compass Sultan is looking for. + + + Shady business: get your cut from Beard + + + You should get your cut of Beard's revenue from him. + + + Tempting business: talk to Sultan + + + Owl the trader believes that Beard is not sticking to the agreement and suggests you contact Sultan, the local crime boss, for help. + + + Shady business: take detectors from stalkers + + + You must do whatever you can to take the detector prototypes away from the stalkers who are searching for artifacts for Beard. If he has no detectors, he'll have to agree to Sultan's terms. + + + Shady business: talk to Sultan + + + Beard doesn't have the detectors, so you should speak to Sultan to find out whether he has resolved the problem with Beard's other suppliers. + + + Shady business: force Beard to work for Sultan + + + Now that Beard no longer has any suppliers or detectors, he can't do anything on his own - force him to work for Sultan. + + + Shady business: find out about Beard's current business + + + You need to find out what business Beard is involved in at the moment. This will help you cut off his supply channels. + + + Shady business: take the second detector away from stalkers + + + You must do whatever you can to take the detector prototypes away from the stalkers who are searching for artifacts for Beard. If he has no detectors, he'll have to agree to Sultan's terms. + + + Tempting business: bring Novikov three Veles detectors + + + Owl the trader has offered you to participate in a lucrative venture. Your job is to find three Veles detectors and take them to Novikov in the scientists' bunker. + + + Tempting business: wait until Owl gets the detectors + + + Novikov accepted the detectors and promised to send them back to Owl himself. You need to wait for him to finish working with the detectors and then find out about the results from Owl. + + + Tempting business: talk to Owl + + + Owl the trader has contacted you by radio to tell you that he's having problems and that he wants to see you. + + + Tempting business: convince Beard to stick to the agreement + + + Owl the trader believes that Beard is not sticking to the agreement. You need to talk to him and convince to quit violating the agreement. + + + Tempting business: demand a cut from Owl + + + Beard believes he doesn't owe Owl anything - you need to find out who is right and demand your cut from that person. + + + Snag has asked you to bring him his container. He hid it in an old Zaporozhets car, which fell into a crack following an earthquake. Snag is afraid to go down there because it's full of snorks. + + + You have Snag's container and you should now take it back to the owner to split its contents fairly. + + + Bloodsucker lair: tell the stalkers + + + You need to inform stalkers about the bloodsucker lair under the Krug antenna complex. + + + Bloodsucker lair: tell Beard + + + You must tell Beard about the bloodsucker lair found underneath the Krug antenna complex so that he can decide on how to protect the stalkers. + + + Missing stalkers: follow Grouse + + + Grouse has asked you to investigate the abandoned antenna complex building with him. He spotted bloodsuckers and wants to check if the hunter is there. + + + Missing stalkers: find out what happened + + + Looks like Tremor isn't as innocent as he seemed. You need to work out what happened. + + + Missing stalkers: find Grouse + + + Grouse went towards the dock cranes for some reason - maybe he found something out about the missing stalkers, so you should look for him there. + + + Missing stalkers: find out where Grouse is + + + Grouse isn't where he normally is. You should ask Beard where he went. + + + Missing stalkers: find the missing hunter + + + Grouse has asked you to help with finding the missing hunter. The hunter was supposed to find the bloodsucker lair. According to current information, it is bloodsuckers who are responsible for recent stalker disappearances. + + + Missing stalkers: get out of the bloodsucker lair + + + You discovered a bloodsucker lair in the basement and that its residents are in some kind of daze. You should get out of here and do it quietly. + + + Missing stalkers: meet Grouse + + + You should probably meet Grouse and discuss the search for the missing hunter. + + + Missing stalkers: meet Grouse later + + + There was no trace of Danila the hunter in the antenna complex building. However, Grouse seems to be perplexed by what you found inside and he asked you to meet him later to discuss the matter in more detail. + + + Missing stalkers: meet Grouse + + + The place Grouse indicated had a dead bloodsucker and no signs of Danila the hunter. However, it seems that Grouse has found something interesting and he's asking you to join him. + + + As it turns out, bloodsuckers had nothing to do with stalker disappearances - it was Tremor, the Skadovsk medic. + + + Tools: bring Cardan tools + + + Cardan has asked you to get two sets of tools: one for basic work and one for fine work. The technician will pay you for the tools and will be able to perform more advanced weapon and armor modifications. + + + Tools: bring Cardan tools + + + Cardan has asked you to get two sets of tools: one for basic work and one for calibration. The technician will pay you for the tools and will be able to perform more advanced weapon and armor modifications. + + + Tools: bring Cardan tools + + + Cardan has asked you to get a set of tools for basic work. The technician will pay you for the tools and will be able to perform more advanced weapon and armor modifications. + + + Tools: bring Cardan tools + + + Cardan has asked you to get two sets of tools: one for fine work and one for calibration. The technician will pay you for the tools and will be able to perform more advanced weapon and armor modifications. + + + Tools: bring Cardan tools + + + Cardan has asked you to get a set of tools for fine work. The technician will pay you for the tools and will be able to perform more advanced weapon and armor modifications. + + + Tools: bring Cardan tools + + + Cardan has asked you to get a set of tools for calibration. The technician will pay you for the tools and will be able to perform more advanced weapon and armor modifications. + + + Tools: bring Cardan tools + + + Cardan has asked you to get three sets of tools: one for basic work, one for fine work and one for calibration. The technician will pay you for the tools and will be able to perform more advanced weapon and armor modifications. + + + Mercenary camp: take any information you can find + + + Owl the trader promised good payment for any media you can find in the mercenary camp at the waste processing station. He is interested in the mercenaries' plans. + + + Mercenary camp: take any information you can find + + + Owl the trader promised good payment for any media you can find in the mercenary camp at the waste processing station. He is interested in the mercenaries' plans. + + + Three comrades: find out about Barge's fate + + + Cardan asked you to pass on his apologies to his comrade, a stalker called Barge. They had an argument and Barge left in an unknown direction. + + + Three comrades: find out about Barge's and Joker's fates + + + Cardan asked you to pass on his apologies to his comrades, stalkers called Barge and Joker. They had an argument and his comrades left in an unknown direction. + + + Three comrades: find out about Joker's fate + + + Cardan asked you to pass on his apologies to his comrade, a stalker called Joker. They had an argument and Joker left in an unknown direction. + + + Special order: collect the goods + + + The goods have been delivered - time to collect them from Nimble. + + + Special order: wait for delivery + + + The order has been made, so now you should wait for Nimble to get the goods. + + + Reputation: find Snag + + + You need to find Snag and force him to keep his mouth shut. Nimble has never dealt in stolen goods, while Snag seems dishonest more often than not. He was last seen by the dock cranes, so he could still be there. + + + You need to find Snag and force him to keep his mouth shut. Snag is not by the dock cranes, but the bandits might know where he is. + + + You need to find Snag and force him to keep his mouth shut. It seems the bandits are involved in this, so they should know where to look for him. + + + You need to find Snag and force him to keep his mouth shut. There are no clues to his whereabouts at the moment. + + + You need to find Snag and force him to keep his mouth shut. Judging by the PDA found on one of the bandits, Sultan's people are looking for Snag. Unfortunately, there aren't any clues as to where he can be found. + + + Reputation: find out where Snag disappeared to + + + Snag is not where he used to be, so you should ask the locals if they saw where he went. + + + You need to find Snag and force him to keep his mouth shut. He is not where he used to be. Maybe Sultan knows where Snag is. + + + You need to find Snag and force him to keep his mouth shut. He is not where he used to be. Maybe Beard knows where Snag is. + + + Reputation: talk to Snag + + + You need to find Snag and force him to keep his mouth shut. Nimble has never dealt in stolen goods, while Snag seems dishonest more often than not. + + + Bloodsucker lair: find the ventilation shaft + + + Find the ventilation shaft to fill the bloodsucker lair with poisonous gas. + + + Bloodsucker lair: find poisonous gas + + + You will need poisonous gas to destroy the bloodsucker lair. Owl should know where you can get some. + + + You will need poisonous gas to destroy the bloodsucker lair. Owl claims that you'll find gas canisters at the deserted military convoy. + + + Bloodsucker lair: find keys to the container + + + The documents you found mention keys to the gas canister container. You need to find them. + + + Bloodsucker lair: find a way to open the gas canister container + + + The container with the gas canister is locked. You need to find a way to open it. + + + Bloodsucker lair: position the gas canister + + + Position the gas canister in the antenna complex basement ventilation system. The gas should get in via the ventilation shaft and fill the basement, killing the bloodsuckers. + + + Bloodsucker lair: inform Beard that the lair has been destroyed + + + Inform Beard that you have destroyed the bloodsucker lair, securing the safety of Skadovsk stalkers. + + + Bloodsucker lair: turn the valve + + + Turn the valve to allow poisonous gas to fill the basement with the bloodsucker lair via the ventilation shaft. + + + Bloodsucker lair: wait until the gas takes effect + + + You need to make sure the gas filled the lair and the bloodsuckers are dead. + + + Transaction: meet the bandits by the ranger station + + + Sultan has asked you to take part in a transaction with a trader. You need to accompany his people and cover them in case something happens. + + + Transaction: meet the trader + + + Owl has offered you a job - protecting some trader during a transaction. Clearly, the transaction is shady and it might not go very smoothly. + + + Transaction: meet the stalkers by the ranger station + + + Meet the stalkers by the ranger station and help them disrupt the transaction between the bandits and the weapons trader. + + + Transaction: protect the trader + + + The trader has explained your job - to protect him during the transaction. + + + Transaction: eavesdrop on the conversation + + + Stalkers want to listen in on the conversation between the bandits and the weapons trader. + + + Transaction: disrupt the weapons sale + + + Do whatever it takes to disrupt the transaction between the bandits and the trader. + + + Transaction: eliminate witnesses + + + The trader's transaction didn't work out, so you need to take out all the witnesses. + + + Transaction: protect the trader + + + You need to protect the trader. Also, he ordered you to take out all the witnesses to the transaction, including his clients. + + + Transaction: search the trader + + + The trader may have important information which may come in handy later. You should take it. + + + Transaction: cover the bandits during the transaction + + + Stay on your guard and provide cover to the bandits while they are negotiating with the trader. + + + Transaction: talk to the trader + + + The transaction with bandits is complete, so you should collect your reward. + + + Transaction: collect your reward from Beard + + + Beard promised you a reward if you disrupted the transaction between the bandits and the trader. With the transaction positively botched, you can go ahead and collect your reward. + + + Transaction: talk to the bandit leader + + + You need to inform the bandit leader you're ready to take part in the transaction. + + + The hit: decide what to do + + + The hit: attack the stalkers + + + The hit: collect your reward + + + The attack on the camp was repelled, so you can talk to the stalkers to get your reward. They would probably have had a very tough time if they hadn't been warned about the attack. + + + A group of stalkers has turned to a bandit existence of robbing their own kind. You need to decide whether to take part in their assault, warn the stalkers or not get involved. + + + The hit: wait for the agreed time + + + The hit: Wait for the right moment + + + Unreachable stash: take the container to Snag + + + Transaction: talk to the leader of the stalker squad + + + The transaction has been sabotaged, the weapon trader is dead. Talk to the leader of the stalker squad. + + + Missing stalkers: tell the folks at Skadovsk what happened + + + You need to open the container using the keys you found and take the poison gas tank out. + + + Bloodsucker lair: get the gas tank out of the container + + + The hit: attack the robbers + + + Attacking the robbers from behind will help stalkers repel their attack. + + + The hit: meet the robbers + + + Join the robbers in attacking the stalker camp. + + + The hit: join the robbers + + + Stalkers have asked you to help them repel the robbers attack. You should join the robbers. When they begin the assault, youll be able to attack them from behind with impunity. + + + The robbers should be waiting by Shevchenko. Youll need to meet them to take part in their assault on the stalkers. + + + Wait for the meeting with the robbers. They want to attack the stalker camp after midnight while its still dark. The agreed meeting place is Shevchenko. + + + The hit: get your cut + + + The attack on the stalkers was successful and you should get your cut of the loot. + + + Wait for the right moment when the robbers are distracted by the attack. You can then pounce on them from behind to help the Shevchenko stalkers. + + + Shady business: start working for Beard + + + Taking detector prototypes off stalkers working for Beard requires you to blend into their ranks. This will allow you to find out where your competitors are. + + + You need to take the container and deliver it to its owner. + + + The Stingray 2 onboard computer had maps of the area between Zaton and Jupiter. You should find someone who could use them. + + + Getting to the plateau: talk to stalkers + + + It looks like theres no direct route to the plateau. Ask local stalkers about other ways of getting there. + + + The artifact you got from Noah is the Compass that Beard wants. + + diff --git a/gamedata/configs/text/eng/st_subtitles.xml b/gamedata/configs/text/eng/st_subtitles.xml new file mode 100644 index 0000000..06af74c --- /dev/null +++ b/gamedata/configs/text/eng/st_subtitles.xml @@ -0,0 +1,156 @@ + + + + On the morning of April 26, 1986, the reactor of power block 4 of Chernobyl NPP is destroyed following a massive thermal explosion. The resulting radioactive dust carried by the wind descends on the USSR, also scattering pockets of radiation across Europe, and even reaching America. + + + The ramifications of the disaster are so serious that the Government of the Soviet Union is forced to urgently evacuate the residents of nearby towns and villages. + + + The contaminated areas within a 30-kilometer radius of the power plant are converted into a strictly guarded Exclusion Zone. + + + Operation of the CNNP resumes following the erection of a reinforced concrete sarcophagus over the destroyed power block. The existence of a massive power source, coupled with the fact that the area is no longer inhabited, leads to the creation of a network of secret laboratories. + + + June 10, 2006. The Zone lights up with a flash of blinding light. This explosion of light is followed by a moment of complete silence and clouds evaporating in the sky. A peal of thunder then shakes the ground. Most of the soldiers guarding the perimeter are killed instantly. + + + 2007. Scientists are still unable to explain what happened. Rare expeditions into the Zone usually end in tragedy, with rare survivors telling stories of mutated animals with incredible abilities. + + + 2009. According to various estimates, the Zone is home to between one and three hundred unidentified individuals. These people call themselves stalkers and make their living by collecting anomalous formations known as artifacts, which can be sold for considerable sums of money. + + + 2010. Despite military cordons around the perimeter, the stalker phenomenon is growing in numbers. However, only the areas around the Zones edges have been explored: attempts to penetrate deeper into the Zone have all ended in failure. + + + 2012. A stalker called Strelok solves the secret of the Brain Scorcher, a powerful emitter capable of destroying human minds, and deactivates it. After this, stalkers rush for the center of the Zone in large numbers: some in hopes of finding a treasure trove of artifacts, others in search of the legendary Wish Granter. + + + In these changing circumstances, the National Security and Defense Council of Ukraine decides to launch an immediate special operation, known as Operation Fairway. Dozens of military helicopters carrying troops head for the CNPP, using anomaly field maps drawn up in advance to navigate the skies. Despite meticulous preparation, the operation is a failure and none of the helicopters return from the mission. + + + Major Degtyarev, a USS special agent and formerly experienced stalker, is sent into the Zone to investigate the failure of the operation. + + + Equipped with an assault rifle, two weeks worth of supplies and a radio to communicate with HQ, he begins his journey towards the center of the Zone. + + + Talking to stalkers yields no results... Either they dont have the information or they dont want to share it... + + + The Zone takes every opportunity to remind the Major that its no resort. Not a day passes without an attack by mutants or, worse yet, people. + + + Communication with HQ is unhelpful at best: the only reliable information available consists of the coordinates of the five crashed helicopters. Within several kilometers of the CNPP, the radio goes dead. + + + Degtyarev is alone. + + + For successfully completing his investigation, Degtyarev was rewarded with an early promotion to Colonel. He declined an offer of a cushy office position and instead requested to be sent to the Zone as the Security Services permanent observer. + + + The information about psy-devices obtained by Degtyarev put his superiors on alert. All the information on X-designated laboratories was removed from military archives and filed as Top Secret. USS personnel working in the Zone were ordered to prevent the disclosure of information about the work done in these laboratories at any cost. + + + Several experimental samples were made on the basis of technical documents for item 62. Following a series of tests, it was decided not to go ahead with large scale deployment of the weapon due to the high cost of ammunition. Nonetheless, there is evidence that further secret development of the Gauss rifle is ongoing. + + + Sultan and his gang left the Skadovsk after their attempts to capture the ship failed. The ensuing feeling of relative safety among stalkers led to a massive increase in the number of artifacts sold to Beard, causing his business to boom, while the Skadovsk became almost as popular as the famous 100 Rads bar. + + + Sultans social order settled firmly into place on the Skadovsk, and the vessel became a bandit base. Unwilling to continue paying protection fees, Beard set off with a group of stalkers to explore the yet uncharted regions of the Zone. Stalker attempts to regain control of the ship quickly ceased after a few unruly characters were made example of by being thrown off the vessel to die in emissions. + + + Skadovsk remained home to all those lucky enough to reach it. Bandits tried to establish their so-called order on the ship, but stalkers kept them at bay. A fragile peace broke out on the vessel. + + + Unfortunately, it didnt last long. Bloodsuckers from the lair near the Skadovsk made their way to the ship. When bloodsucker attacks began to occur even in broad daylight, a mission was launched to deal with the problem. Unfortunately, the operation failed to clear the tunnels, and soon afterwards a wave of predators swept the ships residents away into oblivion. + + + Following the destruction of the bloodsucker lair, mutants were unable to significantly affect the state of affairs on the Skadovsk. For a while, the old ship became a center of relative stability in the ever-changing world that is the Zone. + + + Freedom managed to earn the trust of stalkers at Yanov station. Duty organized an assault in an attempt to regain lost ground, but Lieutenant Colonel Shulga was killed in the ensuing firefight. The Duty squad quickly fell apart after losing its commander. + + + New recruits and growing popularity among stalkers allowed Duty to drive Freedom out of Yanov station. Loki and his Freedom squad were killed after a fierce battle. + + + A fragile balance was reached between Freedom and Duty squads at Yanov station. Tired of the pointless struggle, fighters of both factions started leaving their squads and joining the free stalkers. + + + The scientific research expedition organized by Professors Hermann and Ozersky was a success. The data they collected facilitated the development of several unique devices and drugs. In light of this, funding of research programs in the Zone was vastly increased. + + + The scientific research expedition organized by Professors Hermann and Ozersky did not collect enough data and was withdrawn. On returning to the outside world, the two scientists proceeded to engage in unrelated work. + + + Garrys stories about the armys struggle against the dangers of Pripyat interested many, and various groups soon began exploring the ghost town. Despite the constant Monolith attacks, stalkers managed to dig in at the former army camp, which they used as a base to launch raids deep into the city, making steady progress. + + + Garrys story about the armys fate scared stalkers away from Pripyat. The few who dared to venture into the city ran into inexplicable and terrifying phenomena, which added further dark strokes to an already gloomy picture of the dead city. + + + The Oasis was no longer the stuff of legends. The identity of those who managed to find a way to this secret anomaly became an increasingly regular topic of conversation among stalkers. The number of adventurers trying to follow suit remained high - something the bandits continue to take advantage of. Rookies are fooled by their offers to lead them to the Oasis, which usually end in muggings at a safe distance from other stalkers. + + + Mercenary squads continue to be active in the Zone. Their interest in the secret laboratories has grown and attracted the intense attention of the USS. Despite this, attempts to establish the identity of the client behind the mercenaries proved unsuccessful. + + + The area around Yanov station continues to attract growing numbers of stalkers. The lack of dangerous mutants and abundance of anomalous areas have led to the area being referred to by stalkers as a treasure trove with increasing regularity. + + + The area around Yanov station gained the reputation of being one of the most dangerous places in the Zone. Fewer and fewer stalkers made it back from raids, many dying at the hands of mutants within view of the camp. One of those missing is Zveroboi, who set out to track down a chimera on what appears to have been his last hunt. + + + Zulu returned to Dutys main base at the Rostok plant. Nobody knows what he discussed with the leader of Duty, General Voronin, but several days later he was spotted at the head of a large squad on its way to the center of the Zone. + + + Rumors of Zulus fate reached the leader of Duty, General Voronin. To everyones great surprise, Voronin decided to posthumously award Zulu with the Silver Shield, Dutys highest decoration. + + + Vano headed off to the Freedom-controlled military warehouses, where his cheerful personality and optimism quickly earned him the popularity they merited. Ultimately, he took charge of a small group of researchers involved in investigating anomalous areas. + + + Stalkers at Yanov station still think of the cheerful Vano from time to time, recalling his light-heartedness and natural stalker skills. The consensus is that given his luck, Vano made a big mistake in deciding to look for a road to Pripyat. + + + A new stalker group appeared in the Zone. They are well-trained but their objectives are not known. Unconfirmed rumors suggest that they used to be Monolith fighters, with the squad led by a man known as Strider. + + + Few noticed the disappearance of Strider, the only man concerned with understanding what happened to those who fell under the Monoliths spell, and helping them. + + + Senior Lieutenant Sokolov continued to fly over the Zone and was shot down by mercenaries over Limansk. Two weeks later he was picked up by a patrol near the Cordon, his survival being a minor miracle. Sokolov left the air force soon after, joining a civil airline instead. + + + The list of casualties suffered in the course of Operation Fairway was amended with yet another name: Senior Lieutenant O.N. Sokolov. Died in the line of duty. + + + Owl established good contacts with clients outside the Zone. He trades in information, and if rumors are true, one of his major clients is the USS. + + + A group of stalkers was forced to seek shelter on Noahs old barge during an especially powerful emission. The barge was attacked by a horde of snorks soon after, and the stalkers quickly realized that the barge was a small but formidable fortress. Even more astonishing was a litter of pseudodog puppies that Noah himself led into battle against the snorks. + + + On discovering his friends fates, Cardan gave up dreams of a stalker career. Having overcome his alcoholism, he moved to Yanov, where he partnered up with Nitro to set up a full service repair shop. Both technicians gladly devote all their spare time to building a vehicle suitable for the Zones unforgiving environment. + + + Having overcome his alcoholism, Cardan left the Skadovsk. Stalkers said that he went to look for his missing friends. Several days later he returned, wounded and suffering from radiation poisoning. As soon as his wounds healed, he left the Zone forever. + + + Strelok passed on the information he obtained at the Chernobyl NPP to the USS commanders. This prompted the Government to create a Scientific Institute for Research of the Chernobyl Anomalous Area. Strelok took up the position of Chief Scientific Consultant to the Institute. + + + Streloks knowledge was lost with him. The information he found at the Chernobyl NPP, which could have been used to solve the Zones riddles, never reached the outside world. It seems the Zone knows how to keep its secrets. + + + When Colonel Kovalsky, commander of the Stingray group, returned from the Zone, he reported to his commanders on the reasons for the failure of Operation Fairway. Following a dragged-out investigation and the brass failed attempts to pin the blame on him, the Colonel was finally given an honorable discharge. + + + Colonel Kovalsky, commander of the Stingray group, found his resting place not far from the majority of his squad. Their bodies were taken in by the Zone, with nothing but old faded photographs in a specialized military museum left to remind the country of their sacrifice. + + diff --git a/gamedata/configs/text/eng/ui_st_credits.xml b/gamedata/configs/text/eng/ui_st_credits.xml new file mode 100644 index 0000000..d3fba78 --- /dev/null +++ b/gamedata/configs/text/eng/ui_st_credits.xml @@ -0,0 +1,684 @@ + + + + Sergey Chechin + + + Maciej Abramowicz + + + Armen Abroyan + + + Actors + + + Testers + + + AMD/ATI + + + Roman Androshiuk + + + Animator + + + Graphics Department + + + Art Director + + + Nikita Atroshenko + + + Damian Bajorek + + + Mikhail Bastrykin + + + Kamil Bilinski + + + Krzysztof Binkowski + + + Arkadiusz Bochenek + + + Justin Boggs + + + Anatoly Bogush + + + Wojciech Borowy + + + Stanislaw Burtsau + + + Character Models + + + Aleksey Cherevatenko + + + Jerzy Chrul + + + Wojciech Ciemny + + + Composer + + + Dmitry Abe Davidyan + + + Aaron Davies + + + Alexander Demidenko + + + Programming + + + Department + + + Lukasz Derewonko + + + Ruslan Didenko + + + Yuri Doroshenko + + + Elena Dovgaliuk + + + Rafal Durajczyk + + + Petr Dushinsky + + + Maciej Dziarnowski + + + Sergey Eremenko + + + Yuri "Dark Falchenko + + + Jakub Gabryel + + + Cezary Galach + + + Game Design Department + + + Gameplay Programmers + + + CENEGA QA + + + Special thanks to + + + Filip Gerasimov + + + Grigory Hermann + + + Angelica Girich + + + Pawel Golubinski + + + Marcin Gorniak + + + Tomasz Goscicki + + + Graphics Programmers + + + Holger Grun + + + Pawel Grzywaczewski + + + Sergiy Grygorovich + + + Marcin Gutowski + + + Dmitry Yasenev + + + Intel + + + Sergey Ivantsov + + + Norbert Jankowski + + + Alexander Kachaniuk + + + Dmitry Kalita + + + Aleksander Keska + + + Andrey Darin Kirienko + + + Lukasz Kobylanski + + + Andrey Kolomiets + + + Artur Komorek + + + Yuri Konstantinov + + + Maria Kotolovskaya + + + Alexander Kovach + + + Kirill Koval + + + Irina Krivchikova + + + Dmitry Krivets + + + Eugene Kuchma + + + Svetlana Kudrya + + + Sergey Kurbatov + + + Olga Kuzhel + + + Dmitry Kuzmenko + + + Aleksey Kuznetsov + + + Oleg Kuznetsov + + + Szymon Lazarski + + + Lead Animator + + + Lead Artist + + + Lead Game Designer + + + Lead Programmer + + + Lead Testers + + + Lead Experts + + + Level Design + + + Proofreading + + + Vladimir Litvinenko + + + Eric Lundgren + + + Sergey Maistrenko + + + Dmitry Macedon + + + Roman Malinkin + + + Project Managers + + + Alexander Maniliuk + + + Daniel Mankowski + + + Denis Matveenko + + + Maciej Mazurek + + + Piotr Mazurkiewicz + + + Darren McPhee + + + Igor Melnikov + + + Victor Merkulov + + + Damian Mielnik + + + Pavel Mikhailov + + + Konstantin Mironov + + + Huge thanks to Oleg Fomenko + + + and BuntarMedia + + + for advice on MOCAP + + + Vladimir Morev + + + Andrey Moroz + + + Dawid Mrozowski + + + Yuri Negrobov + + + Multiplayer Programmer + + + nVidia + + + Aleksey Omelchuk + + + Lukasz Osinski + + + Mikhail Parfeniuk + + + Eugene Pashin + + + Igor Pasichnyi + + + Bartosz Peas + + + Physics Programmer + + + Jacek Piotrowski + + + Alexander Plichko + + + PR Department + + + PR Director + + + PR Managers + + + Sergey Prishepa + + + Producer + + + Project Manager + + + Testing + + + Anton Ravin + + + Sebastian Rejent + + + Mateusz Rekorajski + + + Filip Resiak + + + Peter Ross + + + Ivan Rozin + + + Lukasz Ruminski + + + Denis Rutkovsky + + + Lukasz Rynkowski + + + Business Development Manager + + + Piotr Samborowski + + + Maria Shapunova + + + Sergey Shelest + + + Igor Sidorenko + + + Mikolaj Sitkiewicz + + + Yuri Skripal + + + Konstantin Slipchenko + + + Tomasz Sobotka + + + Sound Producer + + + Special + + + thanks to + + + Oleg Stalchuk + + + Liudmila Starodub + + + Vladimir Stavitsky + + + Pawel Stempien + + + Pawel Strzelczyk + + + Credits + + + Konstantin Stupivtsev + + + Customer + + + Support + + + Rafal Szekalski + + + Maciej Szumowski + + + Marcin Szwargolinski + + + Vladimir Tereshiuk + + + Sergey Terliuk + + + Textures + + + And everyone else who helped us + + + make the game even better: + + + Konstantin Morozkov + + + Yaroslav Uncle Yar Alexandrov + + + Dmitry Comandor Ivanov + + + Oleg Chernov + + + Ig. Valerian (Golovchenko) aka oVal + + + M. Bystrykhin + + + Eugene Mulder Khaletskiy + + + Pavel Goon Bolotov + + + Alexander Leks Abramov + + + Alexander Novikov + + + Alexander Poshtaruk, Andrey Oleshk + + + Eugene KRANZ Goncharenko + + + Sergey Dvuzhilny + + + Aleksey "Don Reba Badalov + + + Sergey Dvuzhilny, Tolusha + + + Artem Zuev, aka BAC9-FLCL + + + Glot, Patriot, Mers + + + Tiger, Demesis, Kharon, Moby + + + Alexander Oleinik + + + Konstantin Inquisitor Kriuchkov + + + Alexander Shakhovsky, Igor Dolzhenko + + + Sergey Tur Leshenko + + + Dmitry Hill Gorban + + + Mikhail Kliuev + + + Sergey Termite Volchanov + + + Sergey Tikhomirov + + + Ilya Tolmachev + + + Jakub Trudzik + + + Interface Design + + + Yuri Uralsky + + + Denis Tetri$Zs Yusupov + + + RandyJ VanderHeyden + + + Vladimir Vazhinsky + + + Andrey Verpakhovsky + + + Alexander Vilkov + + + Anastassia Voskolovich + + + Andrzej Wardziak + + + Web Programmer + + + Dominik Wojcik + + + Lukasz Watroba + + + Eugene Yablon + + + Yuri Yatsenko + + + Eugene Yatsiuk + + + Oleg Yavorsky + + + Valentin Yeltyshev + + + Eugene Zaitsev + + + Andrey Zakoliukin + + + Marek Zdziarski + + + Michal Zegarski + + + Albert Zmudzki + + + Aleksey Zorin + + + Bartosz Zukowski + + + Victoria Morrant Yukhno + + + Sergey ion Kalintsev + + + Roman RVCool Kulikov + + + Maxim Smirnov + + + Omar Al-Shekhly + + + Roman =Marauder= Arhipov + + diff --git a/gamedata/configs/text/eng/ui_st_inventory.xml b/gamedata/configs/text/eng/ui_st_inventory.xml new file mode 100644 index 0000000..6ea4299 --- /dev/null +++ b/gamedata/configs/text/eng/ui_st_inventory.xml @@ -0,0 +1,303 @@ + + + + Not enough money + + + The character does not have enough money + + + $$ACTION_QUICK_USE_1$$ + + + $$ACTION_QUICK_USE_2$$ + + + $$ACTION_QUICK_USE_3$$ + + + $$ACTION_QUICK_USE_4$$ + + + activate artifact + + + attach grenade launcher to + + + attach scope to + + + attach silencer to + + + Price + + + Group: + + + Condition + + + detach grenade launcher + + + detach scope + + + detach silencer + + + wear suit + + + drop + + + drop all + + + eat + + + kg + + + attach to belt + + + move to backpack + + + move to slot + + + The trader isnt interested in items like this. + + + The item is too damaged to be traded. + + + play + + + sell item + + + Armor condition + + + Radioactive contamination + + + remove suit + + + unload + + + use + + + Wgt. + + + Mag. size + + + Accuracy + + + Buy basic ammo for pistol (Q) + + + Buy rifle ammo (W) + + + Wound healing + + + Cancel + + + Cannot buy weapon + + + Amount restrictions + + + Damage + + + Default (F5) + + + Back + + + Buy underbarrel grenade launcher for rifle (D) + + + Buy underbarrel grenade launcher grenades (E) + + + Handling + + + Now + + + Health restoration + + + Heavy + + + Buy last purchased loadout + + + Previous (F4) + + + Money + + + Required + + + Not enough money + + + OK + + + Weight carried + + + Ther. prot. + + + Chem. prot. + + + Armor + + + Rad. prot. + + + Elec. prot. + + + Psy prot. + + + Impact neg. + + + Energy recovery + + + Loadout 1 (F1) + + + Loadout 2 (F2) + + + Loadout 3 (F3) + + + Radiation + + + Rank restriction + + + Fire rate + + + Clear (C) + + + Assault rifles + + + Hunger elimination + + + Buy optical scope for rifle (S) + + + Sell all items in backpack (X) + + + Rifles + + + Buy silencer for pistol (A) + + + Buy silencer for rifle (F) + + + Sniper + + + Time + + + Already got one + + + Online S.T.A.L.K.E.R. services are not accessible. + + + Cannot connect to master server. + + + Protection: + + + Default + + + Purchased loadout saved as + + + Total weight: + + + drink + + + Energy recovery + + + Bleeding + + + Maximum weight + + + Health + + + Ammo + + + Duration + + + sec + + + Allows you to survive an emission + + + wear helmet + + + remove helmet + + diff --git a/gamedata/configs/text/eng/ui_st_ixray.xml b/gamedata/configs/text/eng/ui_st_ixray.xml new file mode 100644 index 0000000..12c522f --- /dev/null +++ b/gamedata/configs/text/eng/ui_st_ixray.xml @@ -0,0 +1,424 @@ + + + + S.T.A.L.K.E.R.: Call of Pripyat + + + Main menu + + + Level: + + + quick save + + + auto save + + + Protagonist Shadow + + + Grass Shadows + + + Hud Shadows + + + Cloud Shadows + + + Rendering Scale + + + FXAA + + + SMAA + + + TAA + + + Scaling + + + Standard (Linear) + + + Point + + + DLSS + + + FSR2 + + + Intel XeSS + + + Freeplay + + + Multithreaded Texture Loading + + + Shadow Map + + + 1024x1024 + + + 2048x2048 + + + 3072x3072 + + + 4096x4096 + + + Always Active + + + Open trunk ($$ACTION_USE$$) + + + Use ($$ACTION_USE$$) + + + m + + + Hit Distance + + + DoF on Reload + + + DoF on Talk + + + FPS Counter + + + Sharpness + + + Alpha Testing + + + GTAO + + + Vignette + + + Chromatic aberr. + + + Water refl. + + + Scaling Quality + + + Anti-Aliasing + + + Quality + + + Balanced + + + Performance + + + Ultra Performance + + + Custom + + + General Settings + + + Surface Settings + + + Anti-Aliasing and Scaling Settings + + + Lighting Settings + + + Sunlight Settings + + + Effects + + + Postprocessing + + + Saturation + + + take + + + take all + + + Stash all + + + Stash all items + + + move + + + move all + + + Enhanced full dyn. lighting (DX10) + + + ultra + + + % + + + Binocular + + + Knife + + + BM16 + + + Groza + + + SVD + + + AK74 + + + LR300 + + + HPSA + + + PM + + + RG6 + + + RPG7 + + + Shotgun + + + AutoShotgun + + + Magazine + + + SVU + + + USP45 + + + VAL + + + Vintorez + + + Walther + + + Stat mgun + + + Bloodsucker + + + Boar + + + Dog + + + Flesh + + + PseudoDog + + + Burer + + + Cat + + + Chimera + + + Controller + + + Izlom + + + Poltergeist + + + PseudoGiant + + + Zombie + + + Snork + + + Tushkano + + + PsyDog + + + PsyDog (Phantom) + + + Extended grass shadows + + + Volumetric puddles + + + Grass distance + + + Artefact + + + Car + + + Smart terrain + + + Level changer + + + Actor (player) + + + Stalker + + + Helicopter + + + Space restrictor + + + Physics Object + + + Smart cover + + + Destroyable object + + + Hanging lamp + + + + Screenshot format + + + .jpg + + + .tga + + + .png + + + CLIENT: Connecting to + + + CLIENT: Spawning + + + CLIENT: Synchronizing + + + Creating new game + + + Language + + + Russian + + + English + + + max + + + off + + + on + + + Contacts + + + Contacts + + + Show stalker contact list + + + take off backpack + + + put on backpack + + + Camera bobbing factor + + + Slowdown after damage + + + Toggle Aim + + + Wipe mask + + + Mouse sensitivity in UI + + diff --git a/gamedata/configs/text/eng/ui_st_keybinding.xml b/gamedata/configs/text/eng/ui_st_keybinding.xml new file mode 100644 index 0000000..33e017c --- /dev/null +++ b/gamedata/configs/text/eng/ui_st_keybinding.xml @@ -0,0 +1,225 @@ + + + + PDA + + + Order to attack + + + Walk + + + Artifact + + + Back + + + Binoculars + + + Buy menu + + + Chat + + + Team Chat + + + Console + + + Contacts in PDA + + + Crouch + + + Toggle crouch + + + Detector + + + Down + + + Drop + + + Fire + + + Next firing mode + + + Previous firing mode + + + Forward + + + Underbarrel grenade launcher + + + General + + + Direction + + + Backpack + + + Movement + + + Multiplayer + + + Weapon + + + Backpack + + + Jump + + + Left + + + Lean left + + + Strafe left + + + Map in PDA + + + Weapon in next slot + + + Night vision device + + + Pause + + + PDA + + + Weapon in previous slot + + + Back + + + Reload + + + Repair + + + Right + + + Lean right + + + Strafe right + + + Points + + + Screenshot + + + Model selection menu + + + Run + + + Team selection menu + + + Flashlight + + + Activate + + + Up + + + Use + + + Quick bandage + + + Quick medkit + + + Start vote + + + Vote + + + Vote No + + + Vote "Yes + + + Weapon 1 + + + Weapon 2 + + + Weapon 3 + + + Weapon 4 + + + Weapon 5 + + + Weapon 6 + + + Change ammo type + + + Previous weapon of this type + + + Zoom + + + Voice messages (1) + + + Voice messages (2) + + + Quick Access Slot 1 + + + Quick Access Slot 2 + + + Quick Access Slot 3 + + + Quick Access Slot 4 + + diff --git a/gamedata/configs/text/eng/ui_st_loadscreen.xml b/gamedata/configs/text/eng/ui_st_loadscreen.xml new file mode 100644 index 0000000..919326e --- /dev/null +++ b/gamedata/configs/text/eng/ui_st_loadscreen.xml @@ -0,0 +1,474 @@ + + + + 100 ZONE SURVIVAL TIPS + + + Shooting an enemy in the eye will result in an instant kill, regardless of his armor level. + + + The AC-96/2 has a unique two round burst firing mode. In this mode, both bullets in a burst will hit the same spot. + + + Double-barreled shotguns can be used to fire both barrels almost simultaneously. + + + Don't underestimate pistols. They provide considerable stopping power and can be very effective against poorly armored targets. + + + Sniper rifles are ideal for eliminating enemies from a distance, thanks to their flatness and accuracy characteristics. They are less effective at close range. + + + Firing on the move is considerably less accurate than when you are standing still or crouching. + + + Weapons and protective suits will wear out quickly in the harsh conditions of the Zone. Worn-out weapons are less accurate and prone to misfire, while suits will not protect you as well. + + + To make a screenshot, press "$$ACTION_SCREENSHOT$$". + + + The artifact or the player carrying it is shown on the minimap. If the artifact is far away, an arrow on the minimap will indicate its direction. + + + The AC-96/2 has a unique two round burst firing mode. In this mode, both bullets in a burst will hit the same spot. + + + Double-barreled shotguns can be used to fire both barrels almost simultaneously. + + + Don't underestimate pistols. They provide considerable stopping power and can be very effective against poorly armored targets. + + + Sniper rifles are ideal for eliminating enemies from a distance, thanks to their flatness and accuracy characteristics. They are less effective at close range. + + + Weapons and protective suits will wear out quickly in the harsh conditions of the Zone. Worn-out weapons are less accurate and prone to misfire, while suits will not protect you as well. + + + Some medical products have unique properties. For example, Hercules pills allow you to temporarily carry more weight, while psy-blocking drugs help you resist psy-emissions. + + + To take a screenshot, press "$$ACTION_SCREENSHOT$$". + + + Tip # + + + Vodka, a cheap alternative to antirad meds, is the easiest way to reduce the effects of radiation on the body. + + + You can access detailed information about the current mission by holding "$$ACTION_SCORES$$". + + + You need a detector to search for artifacts. The best detectors make searching easier and may even detect more valuable artifacts. + + + Stalkers dont let people with their weapons out into their camps. To hide your weapon press the appropriate key ("$$ACTION_WPN_1$$", "$$ACTION_WPN_2$$", "$$ACTION_WPN_3$$", "$$ACTION_WPN_4$$"). + + + You can locate the edges of an anomaly by throwing bolts. To get your bolt out, press "$$ACTION_WPN_6$$". + + + As well as addressing your hunger, food will also slightly improve your health. + + + Energy drinks temporarily improve your endurance recovery, which increases your potential mobility. + + + Low endurance can make you immobile and vulnerable to enemy attack at crucial moments. + + + You can monitor your concealment status using the noise and enemy detection indicators located in the top left-hand corner of the screen. + + + Having a detector in one hand doesnt stop you from using a knife, pistol or bolt with your other hand. + + + Some medical products increase the bodys resistance to harmful effects. Using such products can save your life during missions into anomalous areas. + + + You can bring up the context menu for items in your backpack by placing your mouse over the required item and pressing the right mouse button. + + + In addition to their useful effects, most artifacts are also radioactive. This can be compensated for by using artifacts that absorb radiation. + + + Your knife is ineffective against enemies armed with firearms. Use it in close combat or for a stealthy kill. + + + The weight you are carrying reduces your endurance. Excess weight will restrict your mobility, while being completely overloaded will stop you from moving altogether. + + + A detector is the only reliable way of checking anomalous areas for artifacts. + + + Most artifacts will remain invisible as they move around in the anomalous area, until they are identified by your detector. + + + Mutants are more active come nighttime, which explains why stalkers prefer to wait for sunlight before venturing into the Zone. + + + If you have suffered serious radiation exposure, use anti-radiation drugs. If you don't have any, use medkits to deal with the initial symptoms and until you make it to a medic. + + + Most stalkers can take you to nearby locations, but only an experienced guide can lead you safely and quickly to distant areas. Despite this, they will all charge you an arm and a leg for the service. + + + Selling artifacts isnt the only way to make some cash: offloading unneeded equipment can be a profitable business, too. Keep in mind that traders arent usually interested in items that are seriously damaged. + + + To detach a silencer, scope or underbarrel grenade launcher from your weapon, right-click on the weapon in your backpack and select the appropriate action from the context menu. + + + If you want to move with minimal noise, press "$$ACTION_ACCEL$$" to walk or "$$ACTION_CROUCH$$" to crouch. + + + Shotguns are close-combat weapons. The further your enemy is from you, the less effective they are. + + + When taking cover from small arms fire, make sure to hide behind something solid. Unlike concrete walls, wooden boards and sheet metal don't make for very safe cover. + + + Headshots do critical damage and are fatal for most enemies. + + + Each type of mutant in the Zone has its own combat traits. If you take these into account, you will be far more likely to survive. + + + You can adjust how far you throw a grenade by holding "$$ACTION_WPN_ZOOM$$". + + + Enemies can and will use grenades. When you see the grenade indicator, leave the kill zone immediately. + + + Speeding up before you jump allows you to overcome big gaps and cracks. + + + Key indicators that show your health and endurance are located in the bottom right-hand corner of the screen. + + + The Zone has a life of its own, which means that theres always a chance of bumping into mutants or enemy stalkers in areas that you have already cleared. + + + Stay alert in the Zone and dont rely on old information. When you return to an anomalous area youve already explored, you may find that the old tested path is no longer available. + + + Talking to regular stalkers may yield useful information about new areas or recent events. + + + You can use any weapon in both weapon slots. This allows you to create flexible weapon combinations, such as assault rifle/shotgun and pistol/sniper rifle. + + + Every trader you encounter in various stalker camps offers his own, unique range of goods. As an example, medics are bound to have the best selection of medical products. + + + If you get to a stalker camp wounded or with radiation poisoning, you can make use of free assistance from the local medic. + + + You can leave your things in a personal box at the camp to avoid dragging around unnecessary stuff. + + + If you need to wait for a specific hour you can take a nap at the camp to pass the time. To do this, find the sleeping area, press "$$ACTION_USE$$" and choose how long you want to sleep for. + + + The night vision device in your helmet can be upgraded to the next-generation version. This will expand its coverage range considerably. + + + When out in the Zone, keep a couple of spare magazines on you - theyre bound to come in handy. + + + Remember to save your game regularly - this will prevent you from playing the same parts over and over. + + + To use drugs appropriately it helps to know what they do. Consult drug descriptions to find out the effects of certain drugs. + + + Use grenades to attack enemies in cover. Keep in mind the grenades blast radius to avoid hurting friendly fighters. + + + To discard an item from your backpack right-click the item and select the appropriate action from the context menu. + + + You can use the special setting in the options menu to have the game save your progress automatically at key points. + + + When you return to camp you should repair your equipment, sell unneeded loot and restock on ammo and medical supplies. + + + To reduce the harmful effects of anomalous areas during raids into the Zone, use a protective suit, artifacts, or take appropriate drugs. + + + In addition to weapons and ammo, enemy bodies may contain valuable items like PDAs with information on them. + + + Artifacts arent just valuable loot: in addition to being light and expensive, they can often have extremely useful effects. + + + Due to the Zones environment, many mutants are radioactive. Approaching them without adequate radiation protection is extremely dangerous. + + + You can use a bandage, a military medkit or Vinca drugs to stop bleeding. If you dont deal with it quickly, bleeding can seriously damage your health. + + + Some weapons allow you to install an adjustable long-range scope. To adjust range, press "$$ACTION_NEXT_SLOT$$" or "$$ACTION_PREV_SLOT$$". + + + Some places are impossible to pass through even when crouching. To crouch as low as you can, press and hold "$$ACTION_CROUCH$$" and "$$ACTION_ACCEL$$" simultaneously. + + + To reduce your chances of being hit by enemy fire, return fire by leaning around corners. To do this hold "$$ACTION_LLOOKOUT$$" or "$$ACTION_RLOOKOUT$$". + + + Thanks to a built-in target location mechanism, your binoculars allow you to not only get a good look at distant objects but also locate enemies. To get your binoculars out, press "$$ACTION_WPN_5$$". + + + To turn your flashlight on or off, press "$$ACTION_TORCH$$". + + + To get your bolt out, press "$$ACTION_WPN_6$$". + + + If you have a night vision device built into your helmet, you can activate and deactivate it by pressing "$$ACTION_NIGHT_VISION$$". + + + Press "$$ACTION_QUICK_USE_1$$", "$$ACTION_QUICK_USE_2$$", "$$ACTION_QUICK_USE_3$$", "$$ACTION_QUICK_USE_4$$" to use the appropriate item in your quick access panel. + + + Drugs dont take effect immediately and some last for quite a long time. + + + Your PDA has a map, information about current missions, your personal statistics and a message log. To open your PDA, press "$$ACTION_ACTIVE_JOBS$$". + + + You need to get your detector out to search for artifacts. To do this, press "$$ACTION_SHOW_DETECTOR$$". + + + To pause the game, press "$$ACTION_PAUSE$$". + + + To quicksave, press "$$ACTION_QUICK_SAVE$$". Press "$$ACTION_QUICK_LOAD$$" to quickload the last quicksave. + + + Running is the fastest way of moving, but also the most tiring. Press "$$ACTION_SPRINT_TOGGLE$$" to run. + + + Firing while aiming is far more accurate than firing from the hip. To aim, press "$$ACTION_WPN_ZOOM$$". + + + If you have an underbarrel grenade launcher, you can switch between it and the normal firing mode by pressing "$$ACTION_WPN_FUNC$$". + + + If you have several types of ammo for your current weapon, you can switch between them by pressing "$$ACTION_WPN_NEXT$$". + + + To reload your weapon before your magazine is empty, press "$$ACTION_WPN_RELOAD$$". + + + To discard your current weapon, press "$$ACTION_DROP$$". + + + To wait out an emission, take cover in a reliable building or underground. When an emission is approaching, the nearest cover will be marked on your PDA. + + + To use an item via the quick access slot, drag it from your backpack to one of the four slots above the artifact containers. + + + The blood drop symbol in the bottom right-hand corner of the screen warns you of bleeding and the need to stop it. The color of the symbol indicates how serious the bleeding is. + + + A radiation danger symbol in the bottom right-hand corner of the screen will warn you that you have been exposed to radiation. When this happens, you should use anti-radiation meds. The color of the symbol indicates how badly exposed you are. + + + You can hide and show different markers on the map in your PDA using filters. Filter buttons are located above the map, under the current mission line. + + + Artifacts are not usually static: they tend to move within an anomalous area. Gun ho attempts to chase down an artifact will lead you into an anomaly in no time. + + + Some stalkers may offer you services, such as information, exclusive goods, or give you orders for specific artifacts. + + + New artifacts may appear in anomalous areas that youve already explored after an emission. + + + You can change the game difficulty in the game options menu at any time. + + + Technicians in stalker camps can upgrade your weapons, suits and helmets. + + + If you want to survive, always keep track of the crackling noise made by the Geiger counter, which warns you of radiation, and the anomaly danger signal that lets you know youre close to an anomaly. + + + Your relations with people directly affect the price of goods and services you may wish to purchase. If your relationship is sour, dont expect a discount. If youre getting along well, the trader might even be inclined to offer you something special. + + + You can unload the weapons you find to get more ammo. To do this, right-click on the weapon in your backpack and select the appropriate action from the context menu. + + + Killing enemies and acquiring artifacts earns you points required to increase your rank. When your rank increases, you will gain access to new weapons, armor and equipment. + + + Smoke grenades are used to steal the artifact or create cover. + + + The left part of the buy menu contains five tabs, from the top down: pistols, main weapons, equipment, ammunition and medical supplies. Selecting the required tab shows you the range of items available at your rank. + + + The buy menu on the right-hand side of the screen contains four quick buy slots. Pressing the disk icon saves the loadout, while pressing the relevant number will load that loadout. The fourth slot is used to automatically save the last loadout purchased. + + + If you have more than one weapon, you can switch between them by repeatedly pressing "$$ACTION_WPN_3$$". + + + An artifact can be activated to create an anomaly. To do this take the artifact out by pressing "$$ACTION_ARTEFACT$$" and holding "$$ACTION_WPN_FIRE$$". The anomaly which appears is equally dangerous to enemies and the player who created it. + + + A scientific suit will help you survive in anomalies and radioactive areas. + + + ARTIFACT HUNT: In order to win, you must bring a certain number of artifacts to your base. + + + To detach a silencer, scope or underbarrel grenade launcher from your weapon, right-click on the weapon in your backpack and select the appropriate action from the context menu. + + + If you want to move with minimal noise, press "$$ACTION_ACCEL$$" to walk or "$$ACTION_CROUCH$$" to crouch. + + + Shotguns are close-combat weapons. The further your enemy is from you, the less effective they are. + + + When taking cover from small arms fire, make sure to get behind something solid. Unlike concrete walls, wooden boards and sheet metal don't make for very safe cover. + + + Headshots do critical damage and are fatal for most enemies. + + + Accelerated movement, jumping and wounds significantly reduce your endurance. + + + You can adjust how far you throw a grenade by holding "$$ACTION_WPN_ZOOM$$". + + + Enemies can and will use grenades. When you see the grenade indicator, leave the kill zone immediately. + + + DEATHMATCH: Get the most kill points to win. + + + Speeding up before you jump allows you to leap over big gaps and cracks. + + + Key indicators that show your health and endurance are located in the bottom right-hand corner of the screen. + + + The minimap shows the direction of the artifact. If the arrow is pointing up, the artifact is above your current position; if the arrow is pointing down, it is below you. + + + You can collect enemy backpacks to gain additional cash. Excess equipment can be sold at the base. + + + You should cover the artifact-carrying member of your team at all costs. + + + Use grenades to attack enemies in cover. Keep in mind the grenades blast radius to avoid hurting friendly fighters. + + + You can communicate with your team using voice messages. To access the voice message menu, press "$$ACTION_SPEECH_MENU_0$$" or "$$ACTION_SPEECH_MENU_1$$". + + + TEAM DEATHMATCH: In order to win, your team needs to get more kill points than the enemy. + + + A vote can be started by pressing "$$ACTION_VOTE_BEGIN$$". + + + To see game scores, press "$$ACTION_SCORES$$". + + + To respawn press "$$ACTION_JUMP$$" once the waiting period has ended. + + + To open the buy menu, press "$$ACTION_BUY_MENU$$" while inside your base. + + + You can open general chat by pressing "$$ACTION_CHAT$$". To communicate with your team only using text chat, press "$$ACTION_CHAT_TEAM$$". + + + Running is the fastest way of moving, but also the most tiring. Press "$$ACTION_SPRINT_TOGGLE$$" to run. + + + Firing while aiming is more accurate than shooting from the hip. To aim, press "$$ACTION_WPN_ZOOM$$". + + + If you have an underbarrel grenade launcher, you can switch between it and the normal firing mode by pressing "$$ACTION_WPN_FUNC$$". + + + If you have several types of ammo for your current weapon, you can switch between them by pressing "$$ACTION_WPN_NEXT$$". + + + To reload your weapon before your magazine is empty, press "$$ACTION_WPN_RELOAD$$". + + + CAPTURE THE ARTIFACT: In order to win, you must bring a certain number of enemy artifacts to your base. + + + To discard your current weapon, press "$$ACTION_DROP$$". + + + To look in your backpack, press "$$ACTION_INVENTORY$$". + + + Most weapons have several firing modes. To switch between firing modes, press "$$ACTION_WPN_FIREMODE_NEXT$$" or "$$ACTION_WPN_FIREMODE_PREV$$". + + + Some places are impossible to pass through even when crouching. To crouch as low as you can, press and hold "$$ACTION_CROUCH$$" and "$$ACTION_ACCEL$$" simultaneously. + + + To look around a corner, press "$$ACTION_LLOOKOUT$$" or "$$ACTION_RLOOKOUT$$". You cannot fire while looking around a corner. + + + CAPTURE THE ARTIFACT: To return a stolen artifact to your base, you need to kill the enemy carrying it and pick it up by pressing "$$ACTION_USE$$". + + + ARTIFACT HUNT: You can destroy the artifact by activating it. To do this, take the artifact out by pressing "$$ACTION_ARTEFACT$$" and hold "$$ACTION_WPN_FIRE$$". + + + You cannot run while carrying the artifact. + + + To look in your backpack, press "$$ACTION_INVENTORY$$". + + + To repair an item you'll need to find a technician and click the repair button once you have selected the item in the modification screen. You can also right-click on the item in the same window to select the appropriate action from the context menu. + + + Most weapons have several firing modes by default and you can buy modifications to add new ones later. To switch between firing modes, press "$$ACTION_WPN_FIREMODE_NEXT$$" or "$$ACTION_WPN_FIREMODE_PREV$$". + + + Weapon flatness affects bullet trajectory, while handling determines the time it takes the sight to return to its original position after firing. + + + Some suits have integrated helmets. It is not possible to use other helmets with such suits. + + + Each weapon has unique accuracy, handling, damage and rate of fire characteristics, allowing you to pick one thats right for you from a large selection. + + + Firing accuracy suffers considerably when youre on the move. Stand still or crouch to improve it. + + + This energy drink temporarily speeds up energy recovery, allowing you to sprint for longer. + + + You have unlimited ammo when playing in Deathmatch mode. + + + One of the most common threats in the Zone is radiation. Serious exposure will harm your health and can be terminal if not treated adequately. + + + Take some food with you when going out on a long raid. If you get really hungry, your endurance recovery will suffer greatly. + + diff --git a/gamedata/configs/text/eng/ui_st_mm.xml b/gamedata/configs/text/eng/ui_st_mm.xml new file mode 100644 index 0000000..154af8d --- /dev/null +++ b/gamedata/configs/text/eng/ui_st_mm.xml @@ -0,0 +1,936 @@ + + + + Clear + + + Cloudy + + + medium + + + maximum + + + high + + + low + + + minimal + + + Night + + + Rain + + + GAME TYPE + + + master + + + rookie + + + veteran + + + ICONS + + + MAP + + + Return by activation + + + Allow voting + + + Anomaly time (min) + + + Artifact capture + + + Artifact delay + + + Number of artifacts + + + Artifact time + + + Artifact return + + + Team autobalance + + + Auto team-swap + + + AVAILABLE MAPS + + + Cancel + + + CD-key + + + check CD-key + + + Client + + + Create + + + Invulnerability (sec) + + + Invulnerability indicator + + + Deaths + + + Dedicated + + + Demo list + + + player stats + + + Record demo + + + Demo recording + + + Empty + + + Filters + + + Forced respawn (sec) + + + Frag limit + + + Frags + + + Delay time + + + Friendly damage + + + Friendly indicators + + + Friendly names + + + Full + + + Mode + + + IP/host:port + + + Internet + + + Connect + + + LAN + + + Listen + + + Repeat + + + Map list + + + Player limit + + + Network connection + + + No anomalies + + + Options + + + Password + + + Player name: + + + Players + + + number of players + + + Internet server + + + Quick refresh + + + Change coefficient + + + Refresh all + + + Reinforcements (sec) + + + Respawn options + + + SELECTED MAPS + + + Server + + + Server list + + + Server properties + + + Server info + + + Server + + + Server name + + + Server settings + + + Spectator + + + First person + + + Free camera + + + Free-locked + + + Third person + + + Spectator settings + + + Team only + + + Starting weather + + + score + + + Time limit (min) + + + Warmup (sec) + + + Weather options + + + No friendly fire + + + No password + + + No PunkBuster + + + With password + + + LAN + + + Internet + + + Agroprom factory + + + Vehicle station + + + Pool + + + Unique name change successful! + + + Dark Valley + + + Yantar factory + + + error in connecting to stats server + + + error in connecting to log in server + + + Authorization successful + + + Desolated village + + + Military warehouses + + + wrong name + + + Pool + + + Railway station + + + Rostok factory + + + wrong unique name + + + Are you sure you want to remove + + + Deserted factory + + + PING + + + PLAYERS + + + Static lighting + + + Full dynamic lighting + + + Enhanced full dynamic lighting + + + Objects dynamic lighting + + + Enhanced full dyn. lighting (DX10) + + + SERVER NAME + + + Artifact hunt + + + Artifact capture + + + Free for all + + + Filter: + + + high + + + low + + + medium + + + off + + + experienced + + + legendary stalker + + + rookie + + + professional + + + veteran + + + Team play + + + Frequency 60Hz + + + Action + + + Advanced + + + Alternative + + + Anisotropic filtering + + + Apply + + + Back + + + Blood + + + Brightness + + + Cancel + + + Game updates + + + Contrast + + + Controls + + + Credits + + + Crosshair target distance + + + Default + + + Delete + + + Do you really want to delete this file? + + + Grass detail density + + + Difficulty + + + Disconnect + + + Are you sure you want to disconnect? + + + Depth of field + + + Dynamic crosshair + + + Dynamic music + + + EAX + + + Full screen + + + Game + + + Gamma + + + Object detail + + + Invert mouse + + + Button + + + Keyboard setup + + + Last save + + + Lighting distance + + + Load + + + Load game + + + Quit profile + + + Master + + + SFX Volume + + + Mouse sensitivity + + + Smooth A-test objects + + + Optimize smoothing + + + MULTIPLAYER + + + Multiplayer + + + Music volume + + + Changes will only take effect after the game is restarted + + + Multiplayer + + + New game + + + Rookie + + + NPC flashlights + + + OPTIONS + + + Options + + + Particle distance + + + Quality settings + + + Exit to Windows + + + Quit game + + + Are you sure you want to quit the game? + + + Are you sure you want to exit to Windows? + + + Detail bump + + + Steep parallax + + + Sun shadow + + + Grass shadow + + + Sun quality + + + Use DX10.1 + + + Full screen smoothing + + + Wet surfaces + + + Optimize geometric buffer + + + Volumetric smoke + + + Render 2 + + + Render type + + + Resolution + + + Return to game + + + Save + + + Save game + + + Draw crosshair + + + Show weapon + + + Basic + + + Sound device + + + Soft particles + + + Soft water + + + Sound + + + Sound quality + + + Stalker + + + Shadow quality + + + Sun rays + + + Antialiasing + + + AI uses flashlights + + + Texture detail + + + NPC identification + + + Veteran + + + Video + + + Vision distance + + + Volumetric light + + + Vertical sync + + + Change unique name + + + This e-mail is already in use + + + Via the Internet + + + Via the LAN + + + stabbed in the back + + + of blood loss + + + in an explosion + + + in the eye + + + in the head + + + Save file version does not match game version. + + + kill streak + + + knife + + + Last loadout + + + Enter multiplayer + + + Name + + + Change + + + Loadout 1 + + + Loadout 2 + + + Loadout 3 + + + Reset + + + Sell all + + + Version + + + Pripyat + + + Crouch/stand mode + + + Autosaving + + + Detailed textures + + + Movies + + + Enter + + + Exit + + + Create + + + Wrong e-mail or password + + + Wrong profile + + + Connection error + + + Server currently unavailable + + + Profile login required + + + Connection error + + + Connection error + + + Connection error + + + Wrong profile name + + + Wrong password + + + Wrong unique nickname + + + Unique nickname already in use + + + Please login to your profile first + + + Please log out of your profile first + + + Error in connecting to profile server + + + You will not be able to delete the profile after creating it + + + SSAO quality + + + SSAO mode + + + default + + + HDAO + + + HBAO + + + Show interface + + + Unique nickname not registered. Please register it + + + Unique nickname expired. Please reregister it + + + stalker + + + max high + + + Enhanced full dyn. lighting (DX11) + + + Please login to connect to the external server. + + + This GameSpy ID is currently in use. Please use another GameSpy ID. + + + Wrong e-mail + + + Wrong password + + + You cannot use a GameSpy ID to connect to a local server. Please use the LAN game mode. + + + You were kicked by the server. + + + You were banned by administrator: + + + You were banned by the server + + + Server info + + + The e-mail address is too long. You cannot enter more than 50 characters. + + + Wrong e-mail + + + The password is too short + + + The password is too long + + + E-mail not found + + + Unique nickname not set + + + Unique nickname is too long. You cannot enter more than 30 characters. + + + The unique nickname may only contain numbers, Latin letters and the following special symbols + + + The unique nickname cannot contain spaces + + + The unique nickname may not begin with a number or any of the following symbols: '@', '+', ':' or # + + + very high + + + Tessellation + + + Apply changes? All changes will be reverted in + + diff --git a/gamedata/configs/text/eng/ui_st_mp.xml b/gamedata/configs/text/eng/ui_st_mp.xml new file mode 100644 index 0000000..6b16028 --- /dev/null +++ b/gamedata/configs/text/eng/ui_st_mp.xml @@ -0,0 +1,741 @@ + + + + Artifact + + + Friendly + + + Max ping + + + Profile + + + Modes + + + The artifact was destroyed. + + + The artifact has spawned. Bring it to the base to score a point. + + + The artifact was lost. + + + The artifact is at our base. + + + The artifact is at the enemy base. + + + Artifacts + + + Artifacts + + + Autoselect + + + Back + + + 4. Ban + + + By anomaly + + + Cancel + + + captured the artifact + + + 5. Change map + + + 6. Change weather + + + Change weather to + + + Chat + + + Connected + + + Deaths + + + Description + + + Disconnected + + + Enter text for the vote + + + joined the game + + + Fire station + + + (First person view) + + + frags + + + Frags + + + (Free camera) + + + (Third person view) + + + with + + + 7. Mode + + + Garbage + + + FORWARD! + + + lost%s the artifact + + + lost the artifact + + + got%s the artifact + + + Mercenaries + + + is now + + + has joined + + + 3. Drop + + + Limansk + + + Loading your awards... + + + Loading your records... + + + (Free-locked) + + + Map description + + + Match started! + + + Old village + + + Modes + + + Name + + + Next + + + Haven't voted + + + Ping + + + %s won the match! + + + Players + + + Press Fire to switch to Spectator mode + + + Press Jump to buy an instant respawn + + + Press Jump to select a skin + + + Press Jump to select teams + + + Press Jump to spawn + + + Press Jump to start + + + Press ($$ACTION_BUY_MENU$$) to access the buy menu + + + You have %d$. You can respawn for %d$. Click Yes to pay. + + + Ready... + + + Repair base + + + 1. Restart + + + 2. Fast restart + + + returned the artifact + + + scored a point + + + Select player to ban by voting + + + Select voting category + + + Select player to kick by voting + + + Select player to kick by voting + + + Select map to vote for + + + No running with artifact + + + - Count + + + - Stay time + + + - Respawn time + + + Anomalies + + + Anomaly period + + + Any time + + + Artifact captured + + + Artifacts: + + + Team autobalance + + + Auto team-swap + + + BattlEye + + + Disabled + + + Enabled + + + - First person + + + Forced Respawn + + + Frag limit + + + - Free Fly + + + - Free Look + + + Friendly Fire + + + Friendly indicators + + + Friendly Names + + + Infinite + + + Invisibility: + + + - Indicators + + + - Time + + + - Third person + + + Map rotation + + + Max ping + + + min + + + No + + + Respawn + + + Players returned to bases + + + sec + + + Server Name: + + + Shielded Bases + + + Spectator Modes: + + + - Team only + + + Time Limit + + + Version: + + + Voting + + + Warmup + + + Yes + + + Skin selection + + + Spectator + + + SPECTATORS + + + Sports center + + + Status + + + has switched to + + + Freedom + + + Team selection + + + Team %s WON! + + + Text + + + Time until respawn + + + Time until start: + + + Time remaining: %d:%d; Agreed: %.2f + + + Training camp + + + Vote FOR-[$$ACTION_VOTE_YES$$]\nVote AGAINST-[$$ACTION_VOTE_NO$$]\nResults-[$$ACTION_VOTE$$] + + + No + + + Yes + + + Voted + + + No + + + Yes + + + Vote cancelled by server! + + + Vote '%s' started by %s. + + + Voting has started! + + + 1. Clear + + + 4. Cloudy + + + 3. Night + + + 2. Rain + + + Backstabbed! + + + Headshot! + + + You captured the enemy artifact, now take it to yours! + + + You got the artifact. Activate it to return it to your base! + + + Your rank is now + + + Its you + + + Voting is not available on this server. + + + No active votes. + + + Only one active vote permitted. + + + Ready + + + To all + + + To team + + + Vote failed! + + + Vote successful! + + + Freedom base + + + Mercenary base + + + 2. Artifact hunt + + + 4. Capture the artifact + + + 1. Free for all + + + Create a new profile + + + Obtaining account profiles + + + Hello + + + Connecting to profile + + + Profile created successfully. Please connect to it. + + + Verifying unique name... + + + Do you want to use the existing profile with the name + + + Account found. Obtaining registered profiles... + + + You already have a profile. Please connect to it. + + + Verifying account... + + + This unique name is already in use. Please choose from the drop-down list below or enter another one. + + + Passwords do not match! + + + 3. Team play + + + Copy link + + + Load map + + + Description + + + Map incorrect or corrupt + + + Map not found + + + Awards + + + Records + + + Check + + + Confirm password + + + E-mail + + + Forgot password? + + + GameSpy ID creation page + + + Password + + + Remember + + + Unique name + + + Unique name successfully changed to + + + Team + + + Freedom + + + Mercenaries + + + New profile + + + GameSpy ID authorization + + + play + + + rewind + + + restart + + + to the start + + + to the kill + + + to the death + + + to the artifact capture + + + to the artifact loss + + + to the artifact delivery + + + any + + + Login + + + Screenshot all + + + Configs for all + + + Ping limit: + + + Ping limit + + + Scrn. selected player + + + Cfg for selected player + + + Kick selected player + + + Ban selected player + + + Restart + + + Fast restart + + + Change weather + + + Weather change speed + + + Change game type + + + Change game settings + + + Stop current vote + + + Time limit (0, 180) + + + Frag limit (0, 1000) + + + Artifact limit (0, 100) + + + Warm up time (0, 3600) + + + Spwn prot time (0, 60 CTA) + + + Spwn prot time (0, 600 T/DM) + + + Respawn time (-1, 3600) + + + Uknown profile error (code: 4) + + + 10 minutes + + + 30 minutes + + + 1 hour + + + 6 hours + + + 1 day + + + 1 week + + + 1 month + + + 3 months + + + Permanently + + + The nickname is too short + + + Profile creation error + + diff --git a/gamedata/configs/text/eng/ui_st_other.xml b/gamedata/configs/text/eng/ui_st_other.xml new file mode 100644 index 0000000..b6d8b9e --- /dev/null +++ b/gamedata/configs/text/eng/ui_st_other.xml @@ -0,0 +1,501 @@ + + + + Cancel + + + No + + + OK + + + Yes + + + Bad + + + Enemy + + + Excellent + + + Experienced + + + Friend + + + Map of the Zone + + + Good + + + Indifferent + + + Master + + + PDA bonus + + + Only one active vote permitted. + + + Neutral + + + Rookie + + + Game + + + Used + + + Level + + + Loading AI objects + + + Server: Loading alife simulator + + + Loading CFORM + + + Loading details + + + Loading geometry + + + Loading saved game + + + Loading sectors & portals + + + Loading shaders + + + Loading spatial-DB + + + Loading textures + + + Direct IP + + + No active task + + + Not enough money + + + The NPC does not have enough money + + + Opening stream + + + Prefetching objects + + + rubles. + + + SERVER: Connecting + + + SERVER: Starting + + + Validating CD Key + + + Video + + + Terrible + + + Repair + + + You can't run Render 2 on your PC + + + Faction + + + Connection error: Your CD-Key is disabled. Contact customer service. + + + Connection error: CD-Key already in use. + + + Connection error: Invalid CD-Key. + + + Connection error: Invalid host + + + Connection error: Invalid password + + + A new patch is available.\n Version: %s\n Location: %s\nDo you want to download it now? + + + No new patches currently available + + + Connection error: connection rejected by server + + + Connection error: server full + + + Connection error: Different version. + + + Connecting to master server + + + Days + + + Error + + + Load error + + + A file with this name already exists. Do you want to overwrite it? + + + The file name is empty + + + Hours + + + Was disconnected by BattleEye protection system: + + + Disconnected. Reason: + + + Leave + + + Loading this game will cause unsaved data to be lost. Proceed? + + + min + + + months + + + Backpack + + + Parameters + + + Unable to download the patch. + + + Patch successfully downloaded. Do you want to install it? + + + Price + + + Rank + + + Attitude + + + Reputation + + + sec + + + Please select at least one map + + + Take all + + + Remaining + + + Vote failed + + + Do you really want to leave the game? + + + Total + + + very bad + + + very good + + + Veteran + + + Repair + + + Repair selected item + + + ... + + + moving within an area + + + moving from Zaton to Yanov + + + moving from Zaton to Pripyat + + + moving from Yanov to Zaton + + + moving from Yanov to Pripyat + + + moving from Pripyat to Zaton + + + moving from Pripyat to Yanov + + + moving from Pripyat to X8 + + + moving from X8 to Pripyat + + + emission + + + beginning of the game + + + arrival at the Skadovsk + + + Stingray 1 examined + + + Stingray 2 examined + + + Stingray 3 examined + + + Stingray 4 examined + + + Stingray 5 examined + + + getting to the plateau + + + arrival at Yanov + + + road to Pripyat found + + + Zulu joins the squad + + + Vanos debt repaid + + + Vano joins the squad + + + anomalous plant collected + + + Sokolov joins the squad + + + Strider joins the squad + + + squad assembled + + + arrival in the underpass + + + arrival in Pripyat + + + military forces located + + + unidentified weapon captured + + + recon squad found + + + reinforcements arrived + + + antenna examined + + + missing sentry found + + + controller near sentry killed + + + testing workshop accessed + + + Gauss rifle documentation found + + + dead fighter found + + + entry to the kindergarten + + + military medic rescued + + + established communications with HQ + + + Pripyat evacuation initiated + + + evacuation helicopters reached + + + evacuation complete + + + mutant detector + + + ransom paid for hostage + + + hostage freed + + + Ash Heap anomaly measurements + + + Plavni anomaly measurements + + + bloodsucker lair + + + sent to Kopachy + + + approach to the waste processing station + + + stalker hit + + + container found in stash + + + hunting the chimera + + + Oasis found + + + Operation One Shot initiated + + + search for the psy-emission source + + + administrative documents + + + approach to the substation workshop + + + deal by the ranger station + + + Duty warehouse + + + strange glow source found + + + Zulu found + + + dangerous cave + + + Repair/modifications + + + Buy + + + Sell + + + Trade + + + Close window ($$ACTION_USE$$) + + + Open trading window ($$ACTION_SPRINT_TOGGLE$$) + + + Open repair and modification window ($$ACTION_SPRINT_TOGGLE$$) + + + Move all items to your backpack ($$ACTION_SPRINT_TOGGLE$$) + + + Buy selected items + + + Sell selected items + + + evacuation helicopter take-off + + diff --git a/gamedata/configs/text/eng/ui_st_pda.xml b/gamedata/configs/text/eng/ui_st_pda.xml new file mode 100644 index 0000000..7881200 --- /dev/null +++ b/gamedata/configs/text/eng/ui_st_pda.xml @@ -0,0 +1,279 @@ + + + + Time + + + Free Stalker + + + Military + + + Bandit + + + Duty + + + Scientist + + + Side missions + + + Stashes + + + Freedom + + + Mercenary + + + Mission log + + + Monolith + + + Mutant + + + April + + + August + + + December + + + February + + + January + + + July + + + June + + + March + + + May + + + November + + + October + + + September + + + Deactivate PDA + + + Message log + + + Show message history + + + Area map + + + Show Zone map and mission log + + + Stats + + + Show personal stats + + + Current time: + + + Date filter + + + Show news + + + Show dialogs + + + Legend + + + Zone time: + + + Emissions survived: + + + Missions completed: + + + Mutants killed: + + + Stalkers killed: + + + Artifacts found: + + + Stashes found: + + + Favorite weapon + + + Most powerful mutant killed + + + Location: + + + Objective + + + Side mission + + + Enemies + + + Friends + + + Faction leader + + + Main mission + + + Neutrals + + + Guide + + + Stashes + + + Squad commander + + + Trader + + + Stalker + + + Message log + + + Center on player + + + Move down + + + Move left + + + Show legend + + + Move right + + + Move up + + + Maximum zoom out + + + Zoom + + + Zoom out + + + Achievements + + + Center map on mission + + + Center map on mission + + + Zombie + + + scale + + + + scale - + + + Technician + + + Medic + + + Current Missions + + + Show/Hide Missions + + + Personal box + + + Zaton + + + The area around Jupiter + + + Pripyat + + + Pripyat 1 underpass + + + Laboratory X8 + + + Areas + + + Important objects + + + Area + + + Scanners have detected artifacts: + + + Scanners have not detected any artifacts + + + Stash + + + Sleeping area + + diff --git a/gamedata/configs/text/eng/ui_st_screen.xml b/gamedata/configs/text/eng/ui_st_screen.xml new file mode 100644 index 0000000..59cfd86 --- /dev/null +++ b/gamedata/configs/text/eng/ui_st_screen.xml @@ -0,0 +1,348 @@ + + + + Open personal box ($$ACTION_USE$$) + + + Youre too exhausted to move + + + Youre too overloaded to move + + + Open door ($$ACTION_USE$$) + + + Speak ($$ACTION_USE$$) + + + Search body ($$ACTION_USE$$) + + + Search body ($$ACTION_USE$$)\nDrag body (SHIFT+$$ACTION_USE$$) + + + Mission complete: + + + Mission failed: + + + Item received: + + + Money received: + + + New mission: + + + Item lost: + + + Money lost: + + + Mission cancelled: + + + Mission updated: + + + Your weapon has jammed. Reload it. + + + Search box ($$ACTION_USE$$) + + + Pick up item ($$ACTION_USE$$) + + + Search aircraft ($$ACTION_USE$$) + + + Door jammed + + + The door is locked from the inside + + + Safe locked + + + Code needed + + + Enter code ($$ACTION_USE$$) + + + Take plant ($$ACTION_USE$$) + + + Set up scanner ($$ACTION_USE$$) + + + Take scanner ($$ACTION_USE$$) + + + Rainbow aggression suppressor\nmodel of external emissions complex\nscale 1:20 + + + Activate switch ($$ACTION_USE$$) + + + Examine device ($$ACTION_USE$$) + + + Plant explosives ($$ACTION_USE$$) + + + Recover ($$ACTION_USE$$) + + + Elevator has no power + + + Activate generator ($$ACTION_USE$$) + + + Sleep + + + You cannot sleep! You are bleeding dangerously and suffering from radiation exposure. Use drugs or contact a medic. + + + You cannot sleep! You are bleeding dangerously. Use drugs or contact a medic. + + + You cannot sleep! You are suffering from radiation exposure. Use drugs or contact a medic. + + + Sleep ($$ACTION_USE$$) + + + You have attained the Man of Balance achievement. + + + You have attained the Weapon Systems Master achievement. + + + You have attained the Detective achievement. + + + You have attained the Diplomat achievement. + + + You have attained the Friend of Duty achievement. + + + You have attained the Friend of Freedom achievement. + + + You have attained the Friend of Stalkers achievement. + + + You have attained the Courier of Justice achievement. + + + You have attained the Hi-Tech Expert achievement. + + + You have attained the Trafficker of Information achievement. + + + You have attained the Keeper of Secrets achievement. + + + You have attained the Boss achievement. + + + You have attained the Leader achievement. + + + You have attained the Mutant Hunter achievement. + + + You have attained the One of Ours achievement. + + + You have attained the Pioneer achievement. + + + You have attained the Research Assistant achievement. + + + You have attained the Artifact Hunter achievement. + + + You have attained the Seasoned Stalker achievement. + + + You have attained the Wealthy Client achievement. + + + Autosaving... + + + You can now take your weapon out. + + + Code lock ($$ACTION_USE$$) + + + Medical supplies have been placed in the personal box on the Skadovsk for solving the secret of the missing stalkers. + + + A PS5-M Universal Protection suit has been placed in the personal box at Yanov for helping Duty. + + + A PSZ-9d Duty Armor suit has been placed in the personal box at Yanov for helping Duty. + + + A Wind of Freedom suit has been placed in the personal box at Yanov for helping Freedom. + + + A Freedom Guard suit has been placed in the personal box at Yanov for helping Freedom. + + + You didnt manage to reach the helicopters and the evacuation team left the Zone without you. + + + Are you ready to leave the Zone? Theres no way back. + + + Game over. + + + Press ($$ACTION_JUMP$$) to exit to the main menu. + + + Pause + + + Game saved + + + An artifact has been placed in the personal box on the Skadovsk for helping to expose Magpie. + + + You must wait for the dock to become airtight + + + Access granted + + + Take the elevator up ($$ACTION_USE$$) + + + Take the elevator down ($$ACTION_USE$$) + + + Critical psy-emission level. Leave danger area immediately. + + + Dangerous radiation levels. Protection required to go further. + + + Examine helicopter ($$ACTION_USE$$) + + + Search the stash ($$ACTION_USE$$) + + + h + + + Message + + + Door blocked + + + Close door ($$ACTION_USE$$) + + + Door locked - the camp is on alert + + + Door locked - you must holster your weapon + + + Door locked + + + Door is not being powered + + + Open door ($$ACTION_USE$$) + + + Gate blocked + + + Use the access card ($$ACTION_USE$$) + + + Access card required + + + The door cannot be opened from this side + + + - + + + The container is locked. Two keys are needed to open it. + + + Use key ($$ACTION_USE$$) + + + Use keys ($$ACTION_USE$$) + + + The container is locked. You need the second key to open it. + + + Open container ($$ACTION_USE$$) + + + The door mechanism has been blocked from the inside. + + + Connect gas tank ($$ACTION_USE$$) + + + Warning! Chemical hazard! + + + Turn valve ($$ACTION_USE$$) + + + Search car ($$ACTION_USE$$) + + + You can restock on medical supplies and ammo by visiting Lieutenant Rogovets and Lieutenant Kirillov. + + + An emission has recently occurred in the Zone. + + + You have attained the Marked by the Zone achievement. + + + Ammo has been placed in the personal box at Yanov for eliminating dangerous mutants. + + + Received coordinates of a stash that has already been discovered. + + + Stash found + + + Stash coordinates received + + + Press any key to play + + diff --git a/gamedata/configs/text/fra/st_achievement.xml b/gamedata/configs/text/fra/st_achievement.xml new file mode 100644 index 0000000..855a3c7 --- /dev/null +++ b/gamedata/configs/text/fra/st_achievement.xml @@ -0,0 +1,372 @@ + + + + Votre ennemi doit en avoir assez : vous venez de le tuer 10 fois sans qu'il parvienne vous liminer ! Ce n'est pas de la cruaut, vous voulez simplement l'aider s'amliorer... + + + Moisson d'mes + + + Vous avez fait d'une pierre deux coups... en liminant deux ennemis avec la mme balle de votre fusil Gauss. + + + Brochette + + + Votre approche calme et mesure a port ses fruits : vous avez touch deux cibles en deux tirs de votre fusil canon sci, en l'espace de quelques secondes. + + + Deux balles, deux morts + + + La carrire de stalker n'a plus aucun secret pour vous ! Vous tes dsormais une lgende ! + + + Ascension sociale + + + S'attaquer un exosquelette avec un couteau ? Vous n'avez pas froid aux yeux et relevez les dfis les plus difficiles sans sourciller ! + + + Ouvre-bote + + + Ils pensaient vous avoir eu, mais vous leur avez dmontr le contraire en tuant cinq d'entre eux alors que vous tiez agonisant. + + + Dur cuire + + + Profitant d'une pousse d'adrnaline, vous avez dchan une pluie de plomb sur vos cibles et tu 5 ennemis en cinq secondes ! + + + Berserker + + + En plein dans l'il ! Vous avez limin deux ennemis d'une balle dans l'il sans vous faire tuer. + + + Ophtalmologue + + + Qu'ils tendent leurs embuscades, cela ne vous arrtera pas ! Vous arrivez mme toucher une cible en mouvement, sans viser ! + + + Rflexes clair + + + Il peut courir aussi vite qu'il peut... Vos balles le rattraperont quoi qu'il fasse ! + + + Cours, Forrest, cours ! + + + Vous avez massacr 20 ennemis d'affile sans vous faire tuer. Un vrai bain de sang ! + + + Massacre + + + Ils taient trois, chacun arm d'un fusil de prcision... mais cela ne leur a pas servi grand-chose... + + + Mortelle prcision + + + Laissant les barbares s'amuser entre eux, vous avez dmontr qu'il tait possible de gagner sans tirer un seul coup de feu. + + + Colombe de la paix + + + Peu importe la distance pour un vrai tireur de prcision. Vous tirez en plein dans le mille plus de 120 m de distance. + + + il de lynx + + + L'ennemi vous a abattu, mais vous lui avez laiss une surprise : une grenade prte exploser ! + + + Souvenir + + + Ils ont tu vos amis et mrit votre courroux. Trois morts pour trois amis abattus, ce n'est que justice. + + + Vengeur masqu + + + Vous tes l'ange gardien de votre ami. Vous l'avez sauv deux fois alors qu'il transportait l'artefact. + + + Ange gardien + + + Vous avez sauv votre honneur et celui de votre quipe en marquant quelques points. + + + L'honneur est sauf + + + Avouez que vous saviez o l'artefact allait apparatre. Non ? Pourtant, vous l'avez rcupr dans la seconde o il est apparu. + + + 6e sens + + + Vous avez eu de la chance : vous avez tu l'ennemi avec la dernire balle de votre chargeur ! Tant mieux pour vous ! + + + Cul bord de nouilles + + + Vous avez tu 8 ennemis d'affile. Voyons comment votre adversaire va ragir ! + + + Liste noire + + + Vous n'tes pas mort au cours de la partie et avez marqu plus de 15 points. On dirait que la prudence a du bon... + + + Paranoaque + + + Vous travaillez sans attirer l'attention, avec un silencieux. Aprs tout, l'ennemi n'a pas besoin de savoir d'o venait la balle... + + + Mort silencieuse + + + Vous avez ananti l'ennemi en gagnant et en marquant deux fois plus de points que le meilleur joueur adverse. + + + Supriorit crasante + + + La chance sourit aux audacieux ! Vous avez bien fait de rcuprer l'artefact immdiatement et avez marqu des points pour votre quipe ds les trois premires minutes de la partie. + + + Blitzkrieg + + + Vous n'avez pas laiss le temps l'quipe adverse de rcuprer un seul artefact. Vive le travail en quipe ! + + + Ni vu ni connu + + + Vous avez obtenu le meilleur score dans toutes les catgories en faisant le plus de victimes, en rcuprant la plupart des artefacts et en mourant le moins ! Continuez comme a ! + + + Premier de la classe + + + Vous avez viscr trois ennemis en moins de 20 secondes, dmontrant ainsi votre matrise du combat au corps--corps. + + + Machine dcouper + + + Chaque ennemi a son talon d'Achille et vous l'avez dmontr une fois de plus en plaant une balle dans l'il d'un ennemi trs bien protg. + + + Talon d'Achille + + + Les balles de l'ennemi ne vous font pas peur ! Elles ne font que vous effleurer sans vous blesser et ne vous empchent pas d'abattre vos adversaires ! + + + Plus rapide que les balles + + + Vous tes prt examiner les derniers dveloppements dans la Zone. Vous nous avez permis d'approfondir notre connaissance de la Zone en dcouvrant de nouvelles formations anormales encore inconnues de la science. + + + Pionnier + + + Les stalkers vous estiment davantage prsent.\nPour vous remercier de vos efforts, ils ont dcid de dposer des munitions dans votre cantine de la gare de Yanov. + + + Vous n'vitez pas les mutants, vous les traquez et avec talent ! Les bons chasseurs sont apprcis parmi les stalkers. + + + Chasseur de mutant + + + Les stalkers ont une meilleure opinion de vous.\nEn tmoignage de leur respect, ils ont dcid de dposer des fournitures mdicales dans votre cantine sur le Skadovsk. + + + Vous avez rsolu le mystre des disparitions du Skadovsk. Le coupable n'tait pas un mutant, mais un ennemi bien plus redoutable : un homme. Votre qute de la vrit vous a valu le respect de vos pairs. + + + Dtective + + + Les stalkers ont une meilleure opinion de vous.\nIls ont demand au Hibou de vous faire une ristourne. \nLe Barbu vous propose dsormais ses meilleurs prix en change de vos artefacts. + + + Vous avez montr aux bandits et leur chef, Sultan, qui est le patron et avez gagn en popularit auprs des stalkers. Vous serez toujours le bienvenu sur le Skadovsk. + + + L'un des ntres + + + Vous avez gagn le respect des bandits.\nCraignant d'tre votre prochaine victime, le Hibou vous a fait une ristourne.\nComme convenu, le Barbu vous remettra dsormais une partie de ses bnfices. + + + Vous avez aid Sultan vaincre les stalkers et prendre le contrle des affaires du Barbu. Vous tes la fois craint et respect Zaton. + + + Boss + + + Les stalkers ont dcid de remettre le butin de la Pie, obtenu par le mensonge et la tromperie, quelqu'un de plus mritant. Ils ont dpos le tout dans votre cantine de Yanov. + + + Justice a t faite. La Pie, cette petite ordure, a tromp plus d'un stalker et il est temps pour lui de payer ! + + + Messager de la justice + + + Les stalkers ont une meilleure opinion de vous.\nLes bandits tenteront de vous attaquer o que vous soyez dans la Zone. + + + Vous avez dcouvert tous les types d'artefacts connus des chercheurs de la Zone. Cela vous a valu le respect des stalkers et l'attention des bandits. + + + Chasseur d'artefacts + + + Cardan peut amliorer votre exosquelette en y ajoutant des servomoteurs hydrauliques qui vous permettront de vous dplacer plus rapidement. + + + Cardan a tous les outils dont il a besoin. Cela lui permettra de raliser de nouvelles amliorations plus complexes. + + + Expert en armement + + + Azote peut modifier un casque tactique de faon unique : il y ajoute un dtecteur infrarouge permettant d'identifier la prsence d'humains proximit. + + + Azote dispose de tous les outils dont un technicien de la Zone pourrait rver. Il peut prsent raliser des modifications de pointe. + + + Expert en technologie de pointe + + + Votre exprience vous permet de trouver des artefacts rares plus frquemment. + + + Les lieux accessibles autour du centre de la Zone n'ont plus aucun secret pour vous. Vous connaissez toutes les anomalies du coin ou presque. + + + Stalker aguerri + + + Vos qualits de chef augmentent les chances de survie de votre groupe. + + + Oblig de travailler en quipe, vous avez form un groupe solide et prouv que vous aviez l'toffe d'un chef. + + + Chef + + + La Libert, le Devoir, les stalkers indpendants et mme les bandits ont fini par reconnatre vos talents de ngociateur et ont une profonde estime pour vous. + + + Vous savez rsoudre les problmes avec diplomatie. quoi bon recourir la force lorsque de simples paroles peuvent suffire rgler un diffrend ? Faites tout de mme attention ceux qui tirent avant et discutent aprs... + + + Diplomate + + + Vous travaillez avec les scientifiques depuis si longtemps qu'on pourrait vous prendre pour un laborantin. Tous les scientifiques du bunker vous considrent comme leur collgue. + + + Laborantin + + + Vos relations avec le Devoir se sont amliores. En cas de problme, les combattants du Devoir seront l pour vous aider.\nAzote, le technicien du Devoir, vous a offert une ristourne.\nVos relations avec la Libert se sont dtriores.\nL'Hawaen, le marchand de la Libert, vous fera payer sa marchandise plus cher. + + + Vous avez t d'une grande aide au Devoir, ce qui vous a valu le respect de ses combattants et de leurs allis. Mais n'oubliez pas que certains rsidents de la Zone ne s'entendent pas aussi bien que vous avec cette faction. + + + Ami du Devoir + + + Vos relations avec la Libert se sont amliores. En cas de problme, les combattants de la Libert seront l pour vous aider.\nL'Hawaen, le marchand de la Libert, vous a offert une ristourne.\nVos relations avec le Devoir se sont dtriores.\nAzote, le technicien du Devoir, vous fera payer sa marchandise plus cher. + + + Vous avez t d'une grande aide la Libert, ce qui vous a valu le respect de ses combattants et de leurs allis. Mais n'oubliez pas que certains rsidents de la Zone ne s'entendent pas aussi bien que vous avec cette faction. + + + Ami de la Libert + + + Les stalkers de Yanov estiment qu'il est important de maintenir l'quilibre entre le Devoir et la Libert. En consquence, leur technicien et leur marchand ont tous deux dcid de vous faire profiter de leurs tarifs prfrentiels. + + + Vous ne vous tes rang du ct d'aucune faction et avez toujours agi en stalker indpendant. Vous n'avez pas d'ennemis, mais vous ne vous tes pas fait de nouveaux amis non plus. + + + Un homme quilibr + + + Les marchands vous proposent de la marchandise plus rare et plus chre. + + + Vous avez connu des priodes de vache maigre, mais les affaires ne vont pas trop mal en ce moment. Vous parvenez mme parfois mettre beaucoup d'argent de ct et les marchands savent reconnatre un bon client. + + + Bon client + + + Les messages que vous avez remis Strelok lui ont donn une nouvelle raison de vivre et d'atteindre son objectif, cote que cote. + + + Vous avez t bien inspir : lorsque vous avez trouv les messages dans les planques du groupe de Strelok, vous avez dcid de les conserver pour les remettre leur propritaire. + + + Gardien des secrets + + + Vous avez russi survivre une mission sans vous mettre couvert grce aux anabiotiques. Les effets sur votre psychisme commencent se faire sentir ; un trange silence s'est install dans votre esprit, vous n'entendez plus le brouhaha de vos penses. + + + Affect par la Zone + + + Le Hibou vous a offert une ristourne pour vous remercier d'tre son meilleur informateur et partenaire. + + + Lorsque vous dnichez des informations, vous trouvez toujours le bon acheteur. videmment, lorsque vous les vendez, vous faites toujours en sorte que cela soit dans votre intrt. + + + Trafiquant d'informations + + + Vos relations avec les stalkers se sont amliores. En cas de problme, ils seront l pour vous aider.\nLeurs mdecins ont accept de vous vendre des fournitures mdicales prix cotant. + + + Vous avez toujours aid les stalkers indpendants dans les coups durs. Leur faction n'est pas la plus unie, mais vous avez dsormais des allis dans la fraternit officieuse des stalkers qui vous feront de leur mieux pour vous aider. + + + Ami des stalkers + + + Diffrentes informations ont permis aux professeurs Hermann et Ozersky de crer une nouvelle drogue exprimentale de type anabiotique dans la Zone. + + + Vous avez une chance de survivre une mission mme sans mdicament, dans la mesure o vous tes en bonne sant. + + + Content de votre efficacit, le professeur Hermann accepte prsent de vous vendre prix cotant des fournitures mdicales et de l'quipement destins exclusivement au personnel du bunker.\nNovikov vous connat bien et ne vous facture plus la main-d'uvre lorsqu'il vous prpare des modifications. + + diff --git a/gamedata/configs/text/fra/st_characters.xml b/gamedata/configs/text/fra/st_characters.xml new file mode 100644 index 0000000..102345e --- /dev/null +++ b/gamedata/configs/text/fra/st_characters.xml @@ -0,0 +1,336 @@ + + + + Jack + + + Vano + + + LCl Shulga + + + Loki + + + Hawa + + + Chiropracteur + + + Senka + + + Zulu + + + Oncle Yar + + + Topol + + + Masse + + + Gnle + + + Serpent + + + Vautour + + + Nitro + + + Trappeur + + + Flint + + + Gnral Tachenko + + + Ltn Bunchuk + + + Col Kosmach + + + Ltn Zakharchuk + + + Black + + + Duplet + + + Chirurgien + + + Kran + + + Pieu + + + Koshey + + + Dpouille + + + Arpenteur + + + Armure + + + Faucille + + + Phoque + + + Lopette + + + Foma + + + Professeur Ozersky + + + Novikov + + + Professeur Hermann + + + Sgt Shlyachin + + + Ltn Sergeev + + + Sgt Valiushok + + + Sgt Ostrovsky + + + Capitaine Klimenko + + + Ltn Sokolov + + + Capitaine Tarasov + + + Col Kovalsky + + + Ltn Podorozhny + + + Ltn Skelya + + + Sgt Merkulov + + + Ltn Stetsenko + + + Sgt Yarmoshuk + + + Ltn Rogovets + + + Ltn Smirnov + + + Strelok + + + Barchuk + + + Major Degtyarev + + + Nabot + + + Shishak + + + Grizzly + + + Torba + + + Mitay + + + Ltn Gavrilenko + + + Kremen + + + Gaduk + + + Garry + + + Ltn Kirillov + + + Serbin + + + Chacal + + + Allegro + + + Crabe + + + Garmata + + + Gonta + + + Marteau-piqueur + + + Blason + + + Hibou + + + Faisan + + + Danila + + + Sultan + + + Morgan + + + Poing + + + Spartacus + + + Barbu + + + Cardan + + + Gnome + + + Chne + + + Pianiste + + + Tondeuse + + + Kirzach + + + Tank + + + Mug + + + Hachette + + + Thon + + + Noah + + + Pilote + + + Sismik + + + Ltn Drape + + + Adj Umerov + + + Accroc + + + Crochet + + + Pic + + + Mirone + + + Barge + + + Petruha + + + Poinon + + + Major Chepurny + + + Adj Valentir + + + Sgt Morozov + + + Ltn Smolyak + + + Senya + + + Sergent Gazda + + + Capitaine Furtez + + + Sgt Shveiko + + diff --git a/gamedata/configs/text/fra/st_dialog_manager.xml b/gamedata/configs/text/fra/st_dialog_manager.xml new file mode 100644 index 0000000..df82baf --- /dev/null +++ b/gamedata/configs/text/fra/st_dialog_manager.xml @@ -0,0 +1,993 @@ + + + + Il y a un coin dans Zaton o les anomalies calorifiques mergent de sous l'eau. On l'appelle la 'Bouilloire' parce qu'il y a pas mal de vapeur bizarre qui en sort. Et si tu crois qu'il y a rien craindre d'un peu de vapeur, dis-toi que les stalkers les plus expriments y rflchissent deux fois avant de s'y aventurer : ils disent que a fait deux fois plus mal qu'une anomalie calorifique normale parce que, mme si la temprature est un peu moins leve, tu grilles beaucoup plus longtemps. Quant aux artefacts, on y trouve les grands classiques, ceux de feu. + + + Il parat qu'il y a un coin sympa dans la carrire, avec pas mal d'artefacts, mais aussi beaucoup d'anomalies. Tout au fond, les anomalies gazeuses font tellement de bulles que a fait mal aux yeux, mme avec un masque gaz. + + + Le Tas de cendres se trouve dans le vieux cimetire prs de Kopachy. Cet endroit est plein d'anomalies calorifiques. On y croise aussi des zombies de temps en temps. La plupart des gens l'vitent comme la peste, mais le fait est qu'on peut y trouver des artefacts. + + + Il parat qu'on a trouv des artefacts sur le parking. Tu sais, celui qui est rempli de vhicules datant de la premire catastrophe de Tchernobyl... Ces paves donneraient des coups de soleil un compteur Geiger ! En plus, l'endroit est plein d'anomalies lectriques. + + + Dans le Bosquet putride, l o les arbres sont tous bouffs par les acides. Ceux qui y sont alls disent qu'il est plein d'anomalies gazeuses. Il y a tellement de gaz dans l'air qu'on ne peut pas voir un mtre devant soi, mais avec un peu d'exprience, on peut y trouver de beaux artefacts. + + + Si tu cherches des artefacts, essaie donc ceux qui sont acides. Le meilleur endroit pour en trouver, c'est le Bain de bton. Tu n'y croiseras pas grand monde vu que personne n'aime y aller, rapport la proximit de Jupiter. + + + Pas trs loin de l'usine de Jupiter, y a un morceau de la route qui s'est effondr. On l'appelle le Puits bitume parce que le macadam y a carrment fondu. Le trou est plein d'anomalies, principalement calorifiques et gravitationnelles. Et comme il ya deux types d'anomalies, il faut s'attendre ce que les artefacts soient un peu diffrents. + + + Derrire la cimenterie, il y a un petit port qu'on appelle la Tourbire. L'eau s'y est transforme en marais nausabond et regorge d'anomalies gazeuses. C'est mme plus vraiment de l'eau, mais plutt une sorte d'acide. Les stalkers qui ont pu chapper aux monstres qui y grouillent en ont rapport des artefacts. + + + Va voir dans la vieille cimenterie ! Elle regorge d'anomalies, mais cela en vaut la peine. C'est sr, y a des endroits o les artefacts sont plus faciles trouver, mais faudra compter avec les autres stalkers. L-bas, au moins, tu trouveras que des hamsters, et encore, seulement si tu descends au sous-sol. + + + Tu devrais aller voir du ct du Pinchne. C'est le truc qui pousse entre les collines, au-dessus des anomalies gazeuses. Tout le monde l'appelle comme a depuis qu'un petit malin a dclar que l'corce de cet arbre tenait autant du pin que du chne. Par contre, si tu veux y chercher des artefacts, prvois une bonne combinaison anti-chimique. Et pas mal de munitions, aussi ! Ces collines grouillent de meutes de chiens ! + + + Des fois, c'est pas la peine de sauter dans les anomalies pour dnicher un artefact. On m'a racont l'histoire d'un artefact trouv au beau milieu d'un champ, compltement dcouvert. Le dtecteur du stalker qui l'a trouv commenait faiblir, alors il a dcid de changer les piles. Et l, le dtecteur a repr un truc et un artefact lui est littralement tomb dessus ! Sacre chance, non ? C'est la Zone tout crach, a ! Des fois, elle te punit, d'autres fois, elle te rcompense ! + + + Des vtrans m'ont racont que les artefacts sortent parfois des anomalies. Ton dtecteur commence bipper, mais, le temps de le sortir, y a plus rien ! a veut dire qu'un artefact "sauteur" t'est pass sous le nez, mais que a sert rien de le chercher, parce que c'est la Zone qui dcide qui elle rcompense. + + + Personne n'a encore t chercher d'artefacts Pripyat. Tous les mecs que je connais viennent juste d'arriver, donc ils restent sur leurs gardes. + + + Je sais pas s'il y a qui ce que soit qui connaisse dj les bons coins. Les gars ont pas encore eu le temps d'explorer Pripyat fond. + + + Moi, je regarderais dans les souterrains. Il parat qu'il y en a des kilomtres sous la ville. + + + On sait pas grand-chose sur ce coin, part les histoires de Garry, bien sr. Il dit qu'il y a un endroit o une vigne haute de 10 tages pousse au cur d'une anomalie acide. Possible qu'il raconte n'importe quoi, mais a mrite certainement une inspection. + + + Le marais acide est le meilleur endroit. Il est plein d'anomalies gravitationnelles, mais elles sont faciles reprer. Il suffit de garder les yeux sur la surface de l'eau, tu peux pas les rater ! Les anomalies gazeuses, par contre, c'est plus difficile, parce qu'il y a pas d'air respirer. C'est pas trs drle de se faire gicler dessus par une de ces saloperies... a te bouffe une veste plus vite que de l'acide sulfurique ! + + + Y a plein d'anomalies calorifiques dans la ferme brle au sommet de la colline. Des gars y ont dj trouv des artefacts de feu. Cherche dans les maisons : celle qui contiendra le plus d'anomalies aprs une mission sera celle qui regorgera d'artefacts. + + + Il doit y en avoir plein dans les grottes sous la ferme brle. Si tu montes au sommet de la colline avec un dtecteur, il arrtera pas de bipper. D'ailleurs, c'est facile de les atteindre, il suffit de sauter dans le trou. Ressortir, par contre, c'est une autre paire de manches, avec toutes les anomalies qu'il y a dans le coin... Principalement des vortex et des acides. Y en a mme qui disent avoir vu un genre de comte. Y a que l'embarras du choix, alors a doit tre pareil pour les artefacts ! + + + T'as dj vu une anomalie Soleil ? on dirait deux comtes qui tournent autour d'un axe central. C'est impressionnant voir, crois-moi ! Enfin, bonne distance, videmment, parce que ce truc est hyper chaud et contient plein d'anomalies calorifiques. Elle contient plein d'artefacts aussi, d'ailleurs, mais ils sont gards par une saloperie de poltergeist du feu qui essaye de te rtir ds que t'approches. + + + Si tu t'intresses aux artefacts gravitationnels, cherche donc l'anomalie Crocs ! L'endroit est facile trouver : les anomalies ont quasiment scalp la colline et les grottes qui se sont cres ont aussitt t colonises par des snorks. Heureusement, ils en sortent pas souvent. + + + Dans la Zone, mon pote, dans la Zone ! Baisse pas les bras ! + + + Bonne question ! Viens me donner la rponse ds que tu l'auras ! + + + O a, quand a, pourquoi... Oublie pas : une fois que t'as trouv ton pot de miel, pas besoin de le partager ! + + + O est-ce que je peux trouver des artefacts ? + + + Je te l'ai dj dit ! + + + Non, je ne sais rien d'autre. + + + C'est tout ce que je sais. Faut demander quelqu'un d'autre ! + + + Quoi de neuf, mon pote ? + + + Salut ! + + + Bonjour, stalker. + + + Salut. + + + Qu'est-ce qu'il y a ? + + + Quoi ? + + + Ben vas-y, parle ! + + + Bonjour, major ! + + + Bonjour ! + + + J'coute, major ! + + + Ouais, salut. + + + Quoi ? + + + Le grand homme en personne ! + + + H, stalker. Y pas le feu au lac, si ? + + + Salut ! + + + Salut, mec ! + + + Salut, mon pote ! + + + a roule ? + + + H ! + + + l'aide ! + + + Au secours... Je vais crever ! + + + J'ai besoin de soins mdicaux ! + + + Un mdikit... Vite ! + + + Faut m'aider... Aaahh, j'ai mal ! + + + Il me faut un mdikit... vite ! + + + Allez... piti... faut venir m'aider... + + + H, j'ai besoin d'un mdikit... et vite... + + + Au secours, stalker... un mdikit, par piti ! + + + Je suis bless... l'aide ! + + + J'ai besoin d'un mdikit ! + + + Un mdikit ! + + + T'as entendu parler de la station de dragage l'est du Skadovsk ? Il parat qu'il y a des trucs tranges qui y luisent la nuit... Mme pour la Zone, c'est trop bizarre... Je ne sais pas trop si a mrite que j'aille y jeter un coup d'il... a vaut peut-tre le coup, mais quoi bon risquer son cul ? C'est l'ternelle question... + + + Y a rien que des vieilleries par ici. La colonne d'paves sur le pont de Preobrazhensky, par exemple. La rouille a tout bouff, mme le tablier du pont... Y a plein de gars qui seraient prts aller y jeter un coup d'il s'il n'y avait pas autant de snorks et d'anomalies... + + + Sultan voulait prendre le contrle du business du Barbu... Le Skadovsk lui suffisait plus, alors il voulait une plus grosse part du gteau... Mais y avait pas moyen qu'on le laisse faire ! Avec le Barbu et les autres gars, on lui a bien fait comprendre, Sultan, qu'il fallait pas nous chercher ! + + + H, t'as entendu la dernire ? Cette enflure de Sultan s'est occup du Barbu... Je sais pas comment il a fait, mais a augure rien de bon. La Zone devient de plus en plus hostile... ce rythme-l, le Skadovsk sera bientt un vrai repaire de bandits. + + + T'as entendu parler de l'Oasis ? Parat que c'est un endroit hyper difficile trouver, que mme quand tu sais o elle se trouve, a garantit pas que tu l'atteindras. On dit aussi qu'il y a un lac et que si tu te baignes dedans, toutes tes maladies gurissent et toutes tes blessures se referment ! Mais a sert rien de causer dans le vide... T'as vu combien de stalkers bleubites sont venus ici, au centre de la Zone ? Certains sont la recherche d'artefacts, d'autres sont juste curieux, mais la plupart esprent trouver l'Oasis. Apparemment, elle serait cache dans les environs. + + + Il parat que la Zone va disparatre... Quelqu'un a trouv l'Oasis et rcupr son artefact : le Cur de l'Oasis. Maintenant, la Zone va passer dans une autre dimension et plus aucun stalker ne pourra en partir... H, je plaisante, mec ! Mais y a vraiment des gars qui ont trouv de nouveaux genres d'artefacts. Les scientifiques sont en train de jouer avec dans leur bunker en ce moment mme ! + + + T'as entendu parler de Topol ? Il avait trouv un nouveau coin explorer et, videmment, il y est all tout guilleret avec ses gars. Ils se sont vite retrouvs avec un contrleur qui leur triturait le cerveau. Autant te dire qu'ils seraient tous en train de se pisser dessus dans des lits d'hpitaux si un stalker les avait pas aids. Quand Topol a retrouv toute sa tte aprs la zombification, le stalker tait en train de dcouper les oreilles du contrleur pour les ajouter son collier. + + + T'es au courant pour le village de Kopachy ? Aprs le premier dsastre de Tchernobyl, l'endroit avait t tellement touch que les autorits ont dcid de raser tout le village : il n'en reste plus rien part des petits tertres... Parat que le coin tait trange, mme avant la catastrophe ; je n'ose mme pas imaginer ce que a doit tre maintenant. Les gens ont trop la trouille pour aller voir sur place, mais si a se trouve, c'est une vraie mine d'artefacts ! + + + Il n'y a que deux stalkers Yanov qui puissent sentir une mission en approche. Chiropracteur, notre toubib, et Zulu, un 'ancien' membre du Devoir. Le ct 'ancien', c'est assez rcent, en fait... Quand le Devoir est venu la gare de Yanov, les gars de la Libert y taient dj. Comme on pouvait s'y attendre, la situation a rapidement dgnr. Les deux factions ont subi des pertes importantes et quelques stalkers indpendants se sont pris des balles perdues. C'est ce moment-l que Zulu a annonc qu'une mission se prparait. Le Devoir et la Libert ont dclar un cessez-le-feu et se sont rfugis dans la gare. Une fois l'mission termine, Zulu a quitt le Devoir et s'est install dans la tour prs de la gare. + + + Les histoires dormir debout, a manque pas ici... Vaut ne mieux pas y croire... La Zone compte de nombreux affabulateurs ces derniers temps. Mais il y a quand mme quelques stalkers vtrans de la gare de Yanov qui ont dit avoir vu des ovnis, des sortes de soucoupes volantes d'environ 5 mtres de diamtre. D'autres disent que a ressemblait un avion vu de trs loin. La seule chose dont on soit sr, c'est qu'un des tmoins est un ancien pilote et qu'il a dclar n'avoir jamais rien vu de pareil. + + + Rien que des mauvaises nouvelles ces derniers temps... Des gars disparaissent les uns aprs les autres et plus tard, on retrouve leurs cadavres compltement vids de leur sang. C'est forcment ces salets de sangsues ! J'aimerais vraiment trouver leur nid et le remplir de plomb ! Va bientt falloir aller aux chiottes deux par deux, si a continue ! Bonjour la vie de stalker solitaire ! + + + J'ai entendu un truc intressant... Des mecs de la Libert ont rcupr le PDA du fondateur lgendaire du Devoir. Apparemment, ce type aurait tromp ses hommes en leur disant que le commandement de l'arme les avait abandonns dans la Zone. Il aurait invent ce mensonge, histoire de pouvoir monter sa propre faction ! Mais dans la Zone, y a toujours un retour de manivelle. Peu de temps aprs, il s'est retrouv coinc dans une bulle spatio-temporelle et il a clams. Voil toute l'histoire... Et dire que j'avais envisag de rejoindre le Devoir ! Ils vont avoir l'air fin, maintenant, avec leurs leons de morale ! + + + Pff, cette nouvelle unit du Devoir... C'est croire que ces gars sont sortis de nulle part ! C'est fou quand mme : un groupe de soldats du Devoir part de Yanov et revient peu aprs, avec trois fois plus de monde... Ils se sont clons ou quoi ? Remarque, a serait pas trs tonnant, quand on y pense... le seul moyen de les distinguer les uns des autres, c'est par leur grade ! + + + Pff, cette nouvelle unit de la Libert... C'est croire que ces gars sont sortis de nulle part ! C'est fou quand mme : un groupe de soldats de la Libert part de Yanov et revient peu aprs, avec trois fois plus de monde... mon avis, ils se sont reproduits par mitose... Avec toute l'herbe qu'ils fument, ils ne doivent pas tre loin de prendre racine et de se lancer dans la reproduction vgtale ! + + + Apparemment, Gonta et ses gars ont travers une mauvaise passe, entre la disparition de Danila et les blessures de Crabe... Mais ils sont repris du poil de la bte : ils bossent pour les scientifiques maintenant et s'occupent de faire tout un tas de relevs. Pas mal, hein ? Ils se sont rcupr un boulot peinard et un bon moyen d'obtenir un permis officiel ! + + + Parat que les stalkers Mitay, Torba et Grizzly bossent pour les scientifiques maintenant et font tout un tas de relevs. Je me demande ce que a peut bien vouloir dire. mon avis, les intellos nous prparent un sale coup. Mais au moins, ces gars peuvent se la couler douce maintenant. Ils obtiendront peut-tre mme un permis officiel un de ces jours. + + + Tu connais Spartacus et son groupe ? Eh ben, tu les reverras pas de sitt au Skadovsk : ils protgent le bunker des scientifiques maintenant ! Et pourquoi pas, aprs tout : ils sont de taille face aux mutants et ils savent comment tenir les bandits en respect. Les scientifiques vont pouvoir travailler en paix. + + + Les mercenaires ne sont plus vraiment en train de se la couler douce. Ils sont partis Jupiter pour garder le bunker des scientifiques. Apparemment, leurs prdcesseurs se sont vanouis dans la nature... Remarque, a me drangerait pas qu'ils continuent comme a. Des mercenaires qui disparaissent, d'autres qui les remplacent et qui disparaissent aussi... Encore une ou deux relves et il n'y aura plus un seul mercenaire Zaton ! + + + Apparemment, le bunker des scientifiques est dsormais sous la garde des vigilants guerriers du Devoir... Je me demande ce qui a bien pu les convaincre. Est-ce qu'ils croient vraiment que ces ttes d'uf vont les rcompenser en leur offrant des fusils plasma flambants neufs pour chasser les hamsters ? J'aimerais bien voir a, tiens... + + + Il parat que le bunker des scientifiques est protg par la Libert maintenant. croire que les scientifiques n'ont pas peur que leurs spcimens de test partent en fume... littralement ! Mais il faut voir le bon ct des choses : si quelqu'un essaie d'attaquer le bunker, il devra d'abord traverser un cran de fume ! Ah ah ah ! + + + Tu es dj all dans l'usine d'lectronique de Jupiter ? Cet endroit me fout les jetons... Personne sait vraiment ce qui s'y passe. On y trouve des anomalies et des mutants, comme partout ailleurs... Mais a me tente pas du tout. Mon instinct me dit qu'il y a quelque chose de louche l-dessous... + + + H, visez-moi a ! Ce serait pas le mec qui a dcouvert les manigances du toubib du Skadovsk ? Je te tire mon chapeau, mec, sincrement ! J'aurais pu tre son prochain patient, tu sais... On pensait tous que c'taient les monstres qui avaient fait a, mais y a certains mecs qui sont pires que des sangsues, pas vrai ? + + + Ce serait plutt moi de poser cette question. Quand tu es parti dans les tunnels sous Jupiter, la rumeur a couru que tu avais atteint le centre de la Zone. a a fait un de ces souks ! Il y avait plus d'une douzaine de gars qui mouraient d'envie de suivre ton exemple. Mais Nitro les a vite calms en leur disant que les portes du tunnel s'taient refermes et qu'il ne pouvait pas les rouvrir. Bon, il y a quand mme quelques acharns qui veulent toujours les faire sauter, mais ils sont encore en train de chercher comment ils vont pouvoir rassembler assez de dynamite, sans oublier qu'ils savent pas comment ils feront pour respirer une fois qu'ils y seront. + + + Oh, tu as entendu la dernire propos de Garry ? Le stalker qui bossait pour les scientifiques ? C'est fini, il n'est plus un 'clandestin' ! Il a obtenu un permis officiel, c'est dingue, non ? C'est clair qu' sa place, n'importe qui aurait rassembl son barda et serait rentr chez lui fissa... Eh bien, cet allum, il est parti pour Pripyat ! Tout le monde pensait qu'il allait clamser, comme tous les autres, mais pas du tout : il y est arriv sans problme ! Mais bon, a n'a pas servi grand-chose, apparemment... Il est tomb sur des militaires. Alors maintenant, il est en rgle avec eux, permis officiel et tout a, mais l'endroit reste toujours interdit aux stalkers normaux. + + + Eh bien... Le Devoir et la Libert se sont encore mis sur la gueule, et pour un gros butin, cette fois. Parat qu'il y avait assez de matos pour quiper trois divisions d'infanterie l-bas ! Je ne sais pas qui a rassembl tout a, mais a a mchamment cartonn. a a rveill tous les stalkers de Yanov mais heureusement, aucun ne s'en est ml, sinon a aurait compltement dgnr. Apparemment, c'est le Devoir qui a morfl, parce que c'est la Libert qui garde l'endroit maintenant. + + + Eh bien... Le Devoir et la Libert se sont encore mis sur la gueule, et pour un gros butin, cette fois. Parat qu'il y avait assez de matos pour quiper trois divisions d'infanterie l-bas ! Je ne sais pas qui a rassembl tout a, mais a a mchamment cartonn. a a rveill tous les stalkers de Yanov mais heureusement, aucun ne s'en est ml, sinon a aurait compltement dgnr. Apparemment, c'est la Libert qui a morfl, parce que c'est le Devoir qui garde l'endroit maintenant. + + + Il s'est pass un truc bizarre rcemment. Un groupe de stalkers qui explorait les tunnels sous Jupiter est tomb sur quelque chose ou plutt, quelqu'un. Leurs flingues se sont envols de leurs mains et des tas de salets leur sont tombes dessus... Ils n'ont pas la moindre ide de ce qui s'est pass, mais ils y ont laiss deux gars. + + + J'ai entendu dire qu'on avait trouv un truc mutant vraiment dgueulasse dans les tunnels au nord de Jupiter. Trappeur y a envoy un stalker pour enquter. Apparemment, c'tait un nid de domovo. Heureusement, le stalker a limin toute la meute de sales petits gnomes. lui seul, en plus ! C'est marrant, tu ressembles pas mal la description qu'on m'en a fait, sauf qu'il est un peu plus grand et qu'il se trimbale toujours avec un lance-grenades. + + + Les stalkers sont foutus... Les monstres sortent de la Tourbire ! Des stalkers de la cimenterie les ont vu attaquer un de nos gars. Il y en avait au moins une douzaine, des cratures normes, comme t'en as jamais vu ! On dirait des sangsues, mais deux fois plus grosses et plus rapides... Tout le monde espre que Trappeur trouvera un moyen de nous dbarrasser de ces saloperies. + + + T'as entendu parler des sangsues du marais ? Celles qui vivaient dans la Tourbire ? Eh bien, il n'y en a plus, Trappeur s'en est charg. Enfin, pas en personne, hein ! Il a embauch des mecs. Il parat qu'il a rassembl un groupe d'environ dix stalkers et qu'ils ont pass le marais au peigne fin et arros de plomb tout ce qui mouftait. Il ne reste mme plus une grenouille l-bas. + + + Quand on a appris qu'il y avait une chimre dans les parages, il n'a pas fallu longtemps pour que quelqu'un lui rgle son compte. Avant, les mutants tuaient les stalkers par dizaines, mais on dirait que la tendance s'est inverse. Parat que le mec qui s'en tait occup tait un chasseur expriment qui tue plus de mutants en une journe que toi et moi, on crase de moustiques en un an. + + + C'est incroyable le genre de mecs que recrute la Libert ces derniers temps ! Il y avait ce gars, Flint, il arrtait pas de se vanter de tous les exploits du monde... Eh bien, apparemment c'tait une belle ordure : il a laiss crever son pote dans une anomalie et s'est barr avec le butin. Ensuite, on en a appris un peu plus sur ses exploits Zaton : il a emmen un groupe de chasseurs se faire bouffer par une chimre ! J'avais une bonne opinion de la Libert avant... Mais l, je me dis qu'il vaut mieux tre tout seul qu'avoir des amis pareils. + + + Bien, ils ont enfin russi abattre la chimre de Zaton. C'est l'quipe de Gonta et un stalker inconnu qui s'en sont chargs. H, mais attends, c'tait toi, pas vrai ? Tu voudrais pas me raconter ta version des faits ? Et, d'ailleurs, merci pour ce que tu as fait : a fait toujours un mutant mangeur d'hommes en moins ! + + + Je ne sais pas si a peut t'tre utile, mais on a notre 'idiot du village' par ici. Il s'appelle Noah et il en tient une sacre couche : il s'est fait construire une espce de pniche par un groupe de clandestins en une semaine. Fais gaffe lui, il commence par tirer et il se donne mme pas la peine de poser de questions aprs... + + + Tu connais Allegro ? Ouais, celui qui est toujours hyper discret. Il vend les meilleurs flingues du coin, y a pas de doute l-dessus. Je me demande comment il fait pour les rcuprer... Je veux dire, comment est-ce que tu fais pour transporter un Vintar sans que a ressemble un Vintar ? O est-ce que tu le planques ? Y a un truc qui tourne pas rond, c'est sr... + + + Apparemment, Sultan s'est foutu dans une sacre merde. Il a voulu se dbarrasser du Barbu ou lui piquer son business, je sais pas, mais il a eu les yeux plus gros que le ventre et s'y est cass les dents. Maintenant, les membres de son gang le regardent plus de la mme faon et il a perdu pas mal d'influence. + + + Il parat que Sultan a pris le contrle du business du Barbu. Il est vraiment devenu un des cadors du coin et a veut dire qu'on peut grer le Skadovsk notre guise. a va tre cool ! Imagine : t'as besoin de te mettre couvert cause d'une mission ? Pas de problme, suffit de passer la caisse... + + + H, t'as entendu parler de l'Oasis ? Imagine un peu, un endroit qui gurit instantanment toutes tes maladies et tes blessures ! a doit tre de la magie ou un truc dans le genre... Mais j'ai ma thorie perso : tout le monde parle de l'Oasis, mais t'as remarqu que personne ne parle plus de l'Exauceur de vux ? Eh bien, peut-tre que l'Oasis, c'est simplement le vu de quelqu'un qui s'est ralis... + + + Les scientifiques parlent d'un artefact que quelqu'un leur a rapport de l'Oasis. Et apparemment, ils disent qu'aprs l'avoir tudi, il devrait leur permettre de trouver un remde au cancer. C'est fou, non ? + + + Une nouvelle journe, et toujours la mme merde... Tout le monde raconte toujours les mmes salades sur le centre de la Zone. Comme l'Oasis, par exemple : un lieu qui soigne toutes tes blessures et maladies instantanment. Mme si c'est marrant couter, a n'en est pas moins un bon paquet de conneries. Surtout quand ils parlent de son emplacement... Ah, si seulement elle existait vraiment... On aurait pu sauver tant de nos hommes... + + + en croire les rumeurs, quelqu'un aurait trouv l'Oasis. Je n'aurais jamais pens qu'elle pouvait vraiment exister, mais les faits sont les faits. On y aurait mme trouv un artefact bizarre, que les scientifiques sont dj en train d'tudier. Peut-tre qu'ils russiront le transformer en une sorte de super mdikit... Nos gars en auraient bien besoin. + + + Kopachy. Rien de neuf pour la Zone, mais j'avoue que pour moi, c'est du jamais vu. Imagine un peu : tout un village enseveli... Et a date de 1986... Les baraques mettaient tellement de radiations qu'ils ont d les enterrer. a fait froid dans le dos... + + + On t'a racont pourquoi on cohabite avec le Devoir dans la gare de Yanov ? C'est la faute de Zulu. l'poque, il faisait partie du Devoir et il pouvait sentir mieux que personne quand une mission allait se dclencher... Mais on tait arrivs les premiers Yanov. Enfin, aprs les stalkers, videmment ! On avait peine eu le temps de s'en rouler un que dbarquaient les soldats du dimanche, avec le doigt qui tremblait sur la gchette... a s'est termin en un carnage pire que le combat la Dcharge, l'anne dernire. Des tas de morts des deux cts, dont notre spcialiste des missions, qu'il repose en paix... C'est alors que Zulu s'est mis gueuler "mission en approche ! couvert !". Qu'est-ce qu'on allait faire, les laisser crever dehors ? Devoir ou pas, ce sont quand mme des tres humains. Et voil, c'est comme a qu'on en est arriv l : on se prend le chou pendant les priodes de calme, mais ds qu'une mission se dchane, on attend bien sagement, les uns ct des autres, en serrant les fesses. Zulu a prfr quitter le Devoir et vit seul pas loin de Yanov maintenant. + + + C'est pas un scoop ni un secret que Cardan, le technicien, est en train d'essayer de noyer son foie dans l'alcool. Il parat que quand il est arriv au Skadovsk, il ne buvait que de temps en temps ou pour faire passer les radiations. Ce n'est que plus tard, suite la mort de ses deux potes, qu'il a commenc srieusement lever le coude. Ils devaient vraiment tre trs proches, tous les trois... + + + J'en ai entendu une bonne rcemment : apparemment, un type aurait vu un ovni planer au-dessus de Yanov. La Zone, a rend dingue, hein ? Les poltergeists et les contrleurs, a leur suffit pas, faut qu'ils aillent aussi chercher de bonnes vieilles histoires d'ovnis. Enfin, au moins, on n'a aucun de ces prcheurs la manque qui essayent d'exorciser les esprits malfaisants avec de la vodka... + + + Tu es au courant pour le village de Kopachy ? Aprs le premier dsastre de Tchernobyl, l'endroit avait t tellement touch que les autorits avaient dcid de tout raser : il n'en reste plus rien part des petits tertres radioactifs. Il parat que le coin tait trange, mme avant la catastrophe ; je n'ose mme pas imaginer ce que a doit tre maintenant... Mais bon, personne n'a le courage d'y aller de toute faon. + + + C'est pas nouveau, mais je ne sais pas si tout le monde est au courant. On ne fait pas chambre commune avec la Libert pour le plaisir, c'est juste une affaire de circonstances. Quand on est arriv ici, les gars de la Libert nous sont tombs dessus... Mme si on prenait l'avantage lentement, mais srement, il y avait de sacres pertes des deux cts... Et puis, au beau milieu du combat, Zulu a senti qu'une mission approchait. Il ne se trompe jamais... Donc on n'avait pas le choix, il fallait faire une trve. Mais bon... je n'ai jamais vraiment compris pourquoi Zulu a quitt le Devoir aprs cet incident. + + + Nos claireurs ont signal qu'ils avaient vu un objet volant non identifi au-dessus de la gare de Yanov. Un ovni, pour faire court. Mais attention, hein ! Un ovni n'est pas forcment une soucoupe volante remplie de petits hommes verts ! a peut tre n'importe quel objet volant, un morceau de carton, une sonde mto, tant que celui qui l'observe n'est pas capable d'identifier. Compris ? + + + C'est toi qui as apport le fameux PDA Loki, hein ? C'est de la bombe, ce truc ! Le fondateur lgendaire du Devoir, le gnral Tachenko, a menti ses hommes ! Il a sabot sa propre radio pour couper les communications avec l'extrieur et pouvoir monter sa propre faction... tout a pour finir comme un con dans une bulle spatio-temporelle ! Une histoire pareille, a s'invente pas ! + + + T'as vu la nouvelle unit de troufions du Devoir ? Y a pas moyen que ce soit des renforts de leur base, ils sont pas assez intelligents pour a. Mais bon, ces mecs sont trop bien entrans pour n'tre que de simples stalkers. Qui sait, peut-tre que ce sont des gars du Monolithe ? Je sais, je sais, a parat dingue... + + + Tu as vu nos dernires recrues ? Oh, c'est toi qui les as amenes, hein ? Trop de la balle, mec ! Ils sont plutt cools, un peu stresss, peut-tre... Mais c'est pas grave, au bout de quelques mois, ils apprendront se dtendre. Il faut juste qu'ils trouvent leurs marques. + + + On a de nouvelles recrues : des anciens du Monolithe ! Et attention, pas des bleubites, hein, des vrais vtrans ! Bon, videmment, il leur manque quelques neurones, rapport leur ancienne allgeance, mais on va leur faire suivre notre programme de rattrapage idologique vite fait bien fait et tout ira bien. + + + Il parat que la Libert a recrut d'anciens combattants du Monolithe. C'est difficile croire, mais, effectivement, ils ont une nouvelle unit et c'est clair qu'elle ne vient pas de l'extrieur de la Zone. Ils doivent tre plutt dsesprs... moins que leur cerveau ne se soit compltement ramolli cause de toutes ces drogues. Qui est-ce qu'ils vont recruter ensuite ? Une brigade de zombies ? Une escouade de domovo ? + + + Cette rgion sera bientt scurise. Le Devoir a pris le contrle de tous les points stratgiques locaux. Nous avons une base solide Yanov et nous assurons la protection du bunker des scientifiques 24 heures sur 24, 7 jours sur 7. Il est temps que la Libert mette les voiles : les anarchistes ne sont pas les bienvenus ici ! + + + La dernire merveille du monde : Cardan jeun ! C'est fou ! Quand les gars du Skadovsk lui ont demand s'il s'tait procur le numro des Alcooliques Anonymes, il a rpondu : "Le seul numro dont j'avais besoin, c'tait le 62". + + + C'est toi qui as propos aux scientifiques de recruter nos gars, non ? Eh bien, merci ! a fait du bien de voir nos hommes devant le bunker au lieu de ces satans mercenaires. + + + Alors... On s'clate profiter de la planque du Devoir ! Maintenant, on va pouvoir y enfermer ces raclures pour leur faire avouer tous leurs petits secrets. H h ! Oh, et merci de nous avoir dit pour systme d'alarme. Sans renforts, on aurait eu aucune chance. + + + Et une autre victoire pour le Devoir ! Ces anarchistes ont eu les yeux plus gros que le ventre... Ils pensaient pouvoir venir en douce dans notre entrept et repartir sans qu'on ragisse ? Alors a, hors de question ! On a prpar un comit d'accueil et on leur a explos la tronche ! + + + Tout le monde sait que la Libert n'est qu'un ramassis de crapules, mais on vient de dcouvrir un truc pas croyable au sujet de l'un des pires d'entre eux. Cette enflure se faisait appeler Flint dans la Libert mais, avant de rejoindre leurs rangs, il tait connu sous le nom de la Pie. Enfin, en tout cas, c'tait son nom quand il est arriv Zaton et qu'il a men tout un groupe de chasseurs droit dans la gueule d'une chimre afin de piquer leur matos pendant qu'ils se faisaient dvorer. Et quand il est arriv Yanov, il a rejoint la Libert et a pouss son partenaire dans une anomalie pour voler son artefact. Eh oui, a se passe comme a dans la faction de la Libert... + + + Un nouveau chantier naval commandit par Noah ! C'est la toute dernire attraction de Zaton. Noah : exprience, motivation, 100% barr ! Il a dcid de sauver tous les stalkers de l'apocalypse en convertissant une vieille pniche en "arche". Quel tar... Il est plutt inoffensif... enfin tant qu'on l'nerve pas. + + + Tu as dj rencontr Allegro ? Il est sur le Skadovsk en ce moment. C'est un vrai pro. Il peut te trouver tout ce dont tu as besoin. Enfin, presque... Rcemment, il a commenc se spcialiser en fusils et en combinaisons, mais il fournit que de la qualit ! Objets spciaux, prototypes, articles fait-mains... Tout a cote assez cher, mais c'est assez normal ! + + + Apparemment, Pilote passe par un nouveau chemin pour faire le trajet entre Zaton et Jupiter. Avant, a prenait un bon bout de temps de traverser les collines, contourner les anomalies et tout a. Mais maintenant, c'est du gteau : une vraie promenade la campagne et, en plus, c'est deux fois plus court ! Mais ce n'est pas Pilote qui a trouv ce chemin et il insiste pour rendre Csar ce qui est Csar. C'est un stalker qui lui a montr ses cartes. Contre rmunration, bien videmment, mais le prix tait raisonnable. + + + Pas grand-chose, en fait. + + + Il y a toujours quelque chose de nouveau dans la Zone, il suffit de regarder. + + + Eh bien, tu viens d'apparatre devant moi. Si a, c'est pas du neuf... + + + Quoi de neuf dans la Zone ? + + + Je ne sais rien qui pourrait d'intressant. + + + J'aimerais pouvoir en dire plus, mais c'est tout ce que je sais. + + + J'ai dj racont tout ce que je sais. + + + Hum... il vaudrait mieux demander au Faisan, sur le Skadovsk. Il a besoin d'aide pour dcouvrir ce qui est arriv aux stalkers disparus. Tout le monde accuse les sangsues, parce que les cadavres qu'on a retrouvs avaient t compltement vids de leur sang. Mais il y a anguille sous roche, mon avis... Des gars disparaissent presque tous les jours maintenant. Les sangsues ne sont pas aussi voraces... Mais bon, dans le doute, le Faisan a embauch un chasseur expriment pour trouver leur nid. + + + Quand un stalker a besoin d'argent, il a le choix entre deux mthodes : trouver des artefacts et les revendre un marchand pour une bouche de pain, ou travailler pour les scientifiques. Ils ont toujours des missions confier aux stalkers, qu'il s'agisse de livrer un artefact trs rare ou la carcasse d'un mutant. Mais surtout, ceux qui se les mettent dans la poche peuvent obtenir un permis tout ce qu'il y a de plus officiel pour pouvoir rester dans la Zone. C'est dingue, non ? Ce serait trop fort de passer devant un poste de contrle militaire, le sac dos plein de butin, avec les bidasses au garde vous ! a me rchauffe le cur rien que d'y penser ! Enfin bref... Le bunker des scientifiques se trouve l'ouest de la gare de Yanov. Ils ont dj un stalker qui travaillent pour eux, peut-tre qu'ils seront prts embaucher quelqu'un d'autre ? + + + Si tu n'as rien contre la chasse aux mutants, ce ne sont pas les offres qui manquent. Va parler Trappeur au sous-sol de Yanov. Mais attention, ne va pas descendre le premier pseudo-chien que tu croises et le lui apporter en esprant obtenir une rcompense ! Trappeur ne donne que des cibles bien prcises, en gnral des monstres qui empchent de rcuprer des artefacts ou qui tranent dans les endroits o les stalkers vont s'abriter en cas d'mission. + + + Les mecs comme toi qui montent bord du Skadovsk vont en gnral voir le Barbu. Il paie un bon prix pour des artefacts... Mais laisse-moi te dire une bonne chose : il n'y connat que dalle au business ! Il veut pas partager ses bnefs avec ceux qui font rgner l'ordre... a va lui revenir dans la gueule un de ces jours, si tu vois ce que je veux dire... + + + Si tu as besoin de fric, va voir le Hibou ! Il a tout ce dont les vrais mecs peuvent avoir besoin sur le Skadovsk : des infos, des armes, tout ce que tu veux ! Et si t'as un truc d'aussi dangereux que prcieux, comme un document secret ou un PDA de stalker, apporte-le au Hibou ! Tu peux aussi te faire pas mal de thune en acceptant ses missions. Il suffit de lui demander s'il a besoin d'un coup de main. + + + Il vaudrait mieux demander Gonta. Lui et ses gars ont une sacre histoire raconter : une chimre a fait son apparition Zaton il n'y a pas trs longtemps, alors Gonta et ses hommes se sont mis en chasse. Ils se sont spars en deux groupes pour traquer la bte et ont envoy l'un des chasseurs la recherche du nid des sangsues. Comme ils taient un peu ric-rac niveau effectif, ils ont emmen la Pie, un autre stalker. Je ne sais pas exactement ce qui s'est pass, mais apparemment, la Pie se serait dfil en voyant la chimre. Gonta a failli y rester et un de ses hommes a t grivement bless. Malheureusement, la chimre est toujours en libert... C'est pour a qu'ils cherchent de l'aide. + + + C'est facile : si t'as besoin de fric, il suffit de demander Sultan. C'est le chef de la pgre locale, alors s'il t'a la bonne, il te trouvera du boulot. + + + Si tu es dou pour trouver des artefacts, va parler au Barbu. Tout le monde le respecte par ici, parce que c'est le seul gars du Skadovsk qui te les achtera un prix honnte. Il a aussi les contacts qu'il faut pour faire sortir tout le matos de la Zone. Et en plus, c'est un type sympa... toujours disponible pour donner des conseils ou te trouver du boulot. + + + Il y a un marchand sur le Skadovsk, le Hibou qu'il s'appelle. Toujours en train de se plaindre que les gens filent leurs artefacts au Barbu et pas lui... Mais si t'as besoin d'argent, tu peux aller voir ce qu'il a proposer. Cette petite fouine se contente pas de vendre des munitions : il peut aussi te vendre des infos et du matos, ou te payer si tu as des renseignements qui l'intressent. Rends-lui visite, il est sur le pont arrire. Je suis sr que vous trouverez un terrain d'entente. + + + Vano saura srement. Il trane au bar de Yanov la plupart du temps. Le pauvre a des soucis avec les bandits : a fait dj trois fois qu'il essaie de rembourser sa dette. Il a toute l'exprience qu'il faut, il peut reprer des anomalies les yeux ferms et pourtant, il trouve toujours le moyen de s'attirer des ennuis. Des tas de gens lui ont suggr de se tirer... Aprs tout, la Zone est tellement grande, les bandits ne risquent pas de le retrouver. Mais il est trop fier pour se sauver comme un voleur. Malheureusement, il n'y a pas grand monde qui puisse l'aider rsoudre son problme... + + + Oublie le boulot, mec... Les bandits ont compltement pt les plombs : ils ont captur Mitay et demandent une ranon ! Mitay est l'un des premiers stalkers avoir atteint Yanov. C'est lui qui a construit cet endroit pour que les gars puissent s'abriter en cas d'mission et maintenant qu'il a besoin d'aide, personne lve le petit doigt ! La Libert et le Devoir sont trop occups se sauter la gorge, mais tous les autres... ils devraient intervenir ! Ah, c'est pas croyable... Mais bon, mme les hommes de Mitay savent pas comment faire pour le librer. Si tu veux leur filer un coup de main, va parler Grizzly ; tu le trouveras dans le bar de la gare. + + + Nitro, le technicien de Yanov, a besoin de matos. Il se dbrouille aussi bien avec les armes qu'avec les appareils lectroniques. Mais parfois, il ne suffit pas d'tre dou, il faut le matriel adapt et c'est ce qu'il cherche dsesprment. Le problme, c'est que la plupart des planques ont dj t nettoyes et que celles qui ne l'ont pas encore t sont trop dangereuses pour la plupart des stalkers. Nitro cherche quelqu'un qui serait prt prendre des risques... Je suis sr qu'il y aura une belle rcompense la cl. + + + Il parat qu'Oncle Yar, de la gare de Yanov, est la recherche d'un stalker qui ne pose pas trop de questions pour l'aider. Je ne sais pas trop pourquoi il ne veut pas demander ses potes de la Libert... Mais bon, c'est un mec bien, donc a peut valoir le coup de lui parler, histoire de voir si vous pouvez trouver un accord + + + Hum... a ne me dit rien. + + + Si seulement je le savais... + + + Et comment je saurais a ? + + + Qui pourrait me proposer du travail ? + + + J'ai dj rpondu cette question. + + + Je n'ai rien ajouter. + + + J'ai dj rpondu cette question. + + + On oublie a, ok ? + + + J'aurais une petite question... + + + J'coute. + + + Vas-y, accouche ! + + + Oui ? + + + J'coute. + + + l'aide ! + + + Voil un mdikit ! + + + Dsol, je n'ai rien. + + + Je vois. + + + Qu'est-ce qui se passe ? + + + Je peux venir ? + + + Bien sr. Plus on est de fous... + + + Non, dsol, je prfre y aller seul. + + + Allons-y dans ce cas ! + + + J'ai besoin d'un guide. Je suis prt payer. + + + Aucun problme. C'est pour aller o ? Y a que l'embarras du choix ! + + + OK. On y va. + + + J'ai chang d'avis. + + + Non, je dois m'occuper d'affaires plus urgentes. + + + Je me la coule douce. + + + Rien de spcial, part du repos intensif. + + + a ne se voit pas ? Je bulle... + + + Je chasse des mutants. + + + Je suis quelques connards la trace... + + + Je suis des mercenaires la trace. De sacrs enfoirs... + + + Je suis des fanatiques la trace. Des soldats du Monolithe... + + + Je suis la poursuite de zombies. Il y a bien trop de ces pauvres dbris dans le coin... + + + D'accord, mais a va coter cher. + + + En fait, j'ai chang d'avis. + + + Je n'ai pas autant sur moi. + + + Rien de spcial... + + + Je chasse des mutants. Il faut bien que quelqu'un leur apprenne se tenir carreau. + + + Je pourchasse des bandits locaux. + + + J'ai l'intention de scalper quelques mercenaires. Comme on dit, il pour il, dent pour dent... + + + Je compte me faire ces tars du Monolithe. + + + J'essaie de retrouver quelques-uns de mes dbiteurs. + + + Je ne fais rien de spcial pour l'instant. + + + Je chasse des mutants, j'essaie d'radiquer la vermine du coin. + + + Je suis en mission. Je dois retrouver un groupe de bandits. + + + Ma cible est une unit de mercenaires. Je les suis la trace. + + + Je suis la poursuite d'un groupe de combattants du Monolithe. + + + Je suis la poursuite de fauteurs de troubles... Ces anarchistes de la Libert, videmment ! + + + Je cherche des artefacts. + + + Qu'est-ce que tu crois ? Que je ramasse des champignons ? Je cherche des artefacts ! + + + J'essaie de trouver des artefacts. + + + Je vais la Bouilloire, l'anomalie prs du petit bosquet. + + + Je vais prendre du bon temps au lac qui se trouve au nord d'ici. + + + Je vais au nord, aprs le lac. Il y a un bon coin pour camper par l-bas. + + + Je vais dans les bois aprs le lac, au nord. + + + Je vais dans la petite fort l'ouest de la scierie. + + + Je vais la colline l'ouest du marais. J'y serai l'abri de la pollution. + + + Je me dirige vers la station-relais. Il y a un petit coin bien sympa pas loin l'ouest. + + + Je vais dans les bois l'ouest du Pinchne... Viens si tu veux, c'est plus sympa de se balader plusieurs. + + + Je vais dans un bosquet entre la Fort de Fer et les ateliers. + + + Je vais au grand pont... Il parat qu'il y a un petit coin tranquille par l-bas, l'est. + + + Je vais au parking au sud de la vieille pniche. + + + Rien de spcial, je me balade. Je vais m'installer sur une colline l'est du Skadovsk. + + + Je me dirige vers un bosquet entre Izumrudnoye et la station-essence. + + + Je vais au croisement prs de la station de traitement des dchets. + + + Je vais la Bouilloire. + + + Je me rends au poste des rangers. Il y a tout un complexe industriel l-bas. L'un des btiments a mme un fourneau, je me demande bien ce qu'ils y fabriquaient avant. + + + Je me dirige vers une fort l'ouest de la ferme brle. + + + Je vais un bosquet l'est de la Bouilloire. + + + Je vais la colline derrire le lac, au nord. + + + Je me dirige vers un petit bosquet au sud de la ferme brle. + + + Je vais l'ouest du Skadovsk... l o on peut voir les tuyaux. + + + Je me dirige vers un point situ entre le Skadovsk et la station de dragage. + + + Je vais au bayou pas loin de la vieille pniche. + + + Je vais la crique non loin de l'anomalie Balafre. + + + Je vais la station-essence. + + + Je vais dans les ravins du Pinchne. + + + Je vais chercher des artefacts dans l'anomalie Griffe. + + + Je me dirige vers une colline l'ouest de la Bouilloire. + + + Je vais l'anomalie de la Fort de Fer. + + + Je vais la chasse aux artefacts dans l'anomalie de la Fort de Fer. + + + Je vais dans le marais. Bien sr, c'est pas vident de respirer avec tout ce gaz, mais a vaut vraiment le coup, vu les artefacts qu'on peut y trouver. + + + Je vais aux ateliers du poste lectrique. Il parat que c'est un bon endroit pour s'abriter des missions, alors je vais tenter le coup. + + + Tu connais la scierie pas loin d'ici ? C'est l que je vais. Je veux m'assurer qu'il n'y a rien de valeur l-bas. + + + J'ai envie de me dtendre un peu Izumrudnoye. C'est un vrai camp de vacances... pour les sangliers et les chiens aveugles ! Ah ah ! N'empche, je pense que je vais y traner un peu.... + + + Je vais au pont, celui qui s'appelle Preobrazhensky sur la carte. + + + Je suis en route pour la station de dragage. Je parie qu'il reste quelques trucs de valeur l-bas. + + + Je vais la vieille pniche. + + + Je veux faire un tour par la ferme brle, au cas o de nouveaux artefacts y seraient apparus. + + + Je vais au plateau du sud. + + + Je suis en route pour le ravin ct de la station-essence. + + + Je suis en route pour la station-relais de Krug. Il faut que je me trouve un bon abri pour me protger des missions. Malheureusement, il parat que a grouille de monstres dans le coin. + + + Je suis en route pour la station-relais de Krug. Il faut que je me trouve un bon abri pour me protger des missions. Malheureusement, il parat que a grouille de monstres dans le coin. + + + Je vais chercher des artefacts prs du Pinchne. Avec un peu de chance, les bestiaux se tiendront carreau. + + + Je vais au bouillon de culture... Tu sais, la station de traitement des dchets. Aprs tout, c'est un endroit comme un autre pour s'abriter pendant les missions. + + + Je vais l'embarcadre du lac au nord. Une fois sur place, j'improviserai. + + + Je vais sur les quais, o se trouvent les grues. C'est pas mal comme endroit pour camper. + + + Je compte chercher des artefacts dans la Bouilloire. J'espre que ma combinaison rsistera la temprature... + + + Je vais la Balafre. Tu sais, l'anomalie ? + + + Je vais tester la rsistance au feu de mon quipement et chercher des artefacts dans l'anomalie Soleil. + + + Je vais au poste des rangers. + + + Je vais au Chevtchenko. J'y serai l'abri des missions et hors de porte des mutants. + + + Je vais au Chevtchenko. J'y serai l'abri des missions et hors de porte des mutants. + + + Je vais sur les quais, o se trouvent les grues. C'est pas mal comme endroit pour camper. + + + Je veux revendre ma camelote et me payer une bire ou deux. C'est pour a que je me dirige vers le Skadovsk. + + + Je suis en route pour le poste de contrle prs de l'usine de Jupiter. + + + Je vais l'entrept conteneurs. + + + Je suis en route pour un endroit inintressant au possible, situ entre l'entrept conteneurs et le tunnel sud. + + + Je vais la gare de Yanov. Je vais enfin pouvoir souffler un peu. + + + Je me dirige vers le tunnel au nord de Kopachy. + + + Je vais dans un endroit vraiment flippant, le village de Kopachy... ou plutt ce qu'il en reste. Je sais, je sais, j'ai fait mes provisions de mdicaments antiradiations et de munitions. Je vais en avoir besoin. + + + Je suis en route pour la cimenterie. C'est un bon poste d'observation et personne risque de t'y prendre par surprise. + + + Je vais jeter un coup d'il dans le sous-sol de la cimenterie. + + + Je vais au poste lectrique de Yanov. + + + Je me dirige vers un point pas trs loin du tunnel ferroviaire sud. + + + Je vais au bassin de refroidissement prs de l'usine de Jupiter. + + + Je vais chasser le zombie dans le complexe Volkhov AA. + + + Je vais au bunker, tu sais, celui dans le complexe Volkhov AA. + + + Je vais essayer de trouver un artefact ou deux dans le bosquet anormal prs de la carrire. + + + Je suis en route pour la carrire, l o se trouvent les camionnettes des ouvriers du btiment. + + + Je vais aller me planquer dans un coin entre la carrire et la gare de Yanov pendant quelque temps. + + + Je vais au tunnel est, celui qui passe sous l'usine de Jupiter. + + + Je compte vrifier quel point ma combinaison rsiste au feu dans le Puits bitume. + + + Je vais chercher des artefacts dans l'anomalie Plavni. J'ai ce qu'il faut niveau antidotes, mais ce sont les monstres qui m'inquitent. + + + Je vais jeter un coup d'il au systme d'aration entre l'usine et l'entrept conteneurs. Pourquoi ? Eh ! Pourquoi pas, d'abord ? + + + Je vais fouiner dans les ateliers de Jupiter. Peut-tre que j'arriverai comprendre pourquoi l'endroit a si mauvaise rputation. + + + J'ai dcid de descendre jusqu'au fond de la carrire. Des stalkers m'ont dit qu'ils y avaient trouv un bon paquet d'artefacts. + + + Tu connais le parking plein d'paves ? C'est l que je vais, j'espre trouver des artefacts dans les anomalies lectriques. + + + Il y a un coin vraiment sympa entre le complexe Volkhov AA et l'entrept, c'est l que je vais. + + + Je vais au bunker des scientifiques. + + + Je me dirige vers la tour de refroidissement au nord-ouest de la gare de Yanov. + + + Je vais m'approcher de l'usine de Jupiter, mais je compte pas y entrer. Je vais traner dans les btiments administratifs, histoire de voir ce qu'il est possible d'y trouver. + + + Je vais faire un tour dans le Tas de cendres, derrire le village de Kopachy. + + + Je suis en route pour les ateliers de Jupiter. Il parat qu'un hlicoptre s'y est cras, alors je me suis dit que j'irais voir a de plus prs. + + + Je vais au vieux train entre le parking et le complexe Volkhov AA. + + + Je me dirige vers le tunnel sud, histoire d'tre l'abri en cas d'mission. + + + Je vais un endroit entre Yanov et Kopachy. + + + Je me dirige vers un endroit pas loin du canal, au sud de la cimenterie. + + + Je suis en route pour le canal, au nord de l'usine de Jupiter. + + + J'ai l'intention d'aller faire un tour dans la carrire. + + + J'ai l'intention d'aller faire un tour dans la carrire. + + + J'ai l'intention de faire un tour au nord de Yanov. + + + Je vais vers le complexe Volkhov AA. Il y a un coin sympa pour camper entre le complexe et le village de Kopachy. + + + Je me balade, tout simplement. L, je vais l'entrept conteneurs. + + + Je fais le tour de la rgion. L, je vais voir ce qu'il y a au sud du poste de contrle militaire. + + + Je vais l'hliport, celui qui se trouve entre l'usine et l'entrept conteneurs. + + + Je vais au sud de la gare de Yanov, pas loin de la voie ferre. + + + Quelque part au nord de la gare de Yanov. + + + Je vais au bosquet anormal. + + + Je vais au sud du complexe Volkhov AA. + + + Je vais au bassin de refroidissement juste ct l'anomalie du Bain de bton. + + + J'ai l'intention d'aller inspecter les alentours de l'usine. + + + Je vais faire un tour pas loin de l'usine. + + + Je vais dans la cour derrire la laverie. + + + Je vais la laverie, c'est l'endroit le plus sr du coin. + + + Je vais l'hpital. J'espre que je ne vais pas tomber sur un de ces cingls du Monolithe en cours de route... + + + Je vais la librairie... On m'a dit que c'tait une bonne planque en cas d'mission. + + + Je vais voir la plus grande attraction du coin : le symbole de l'amiti. Il est pas loin de la librairie. + + + Je vais l'picerie. On n'y trouve plus de pain frais de nos jours, mais au moins, j'aurais pas craindre les missions l-bas. + + + Je vais au magasin Berezka. + + + Je me dirige vers l'cole maternelle. + + + Je vais au cinma, prs du monument Prometheus. + + + Je vais l'cole. Il parat que a grouille de monstres, mais au moins, je pourrai m'y abriter en cas d'mission. + + + Je suis en route pour le vieux centre de service. On dit qu'il y a une anomalie au premier tage, alors j'y trouverai peut-tre des artefacts. + + + J'ai dcid d'explorer cette partie de la ville. L, je me dirige vers l'ancienne picerie. + + + J'ai dcid d'explorer cette partie de la ville. L, je me dirige vers l'ancienne picerie. + + + J'explore le coin. L, je compte aller inspecter un btiment derrire le complexe rsidentiel. + + + Je vais fouiller le centre de service, celui qui s'appelle Yubileiny, je crois. + + + Je cherche des anomalies. J'ai entendu dire qu'il y avait une anomalie calorifique l'ouest de la maternelle. + + + Je me balade dans la ville. En ce moment, je me dirige vers le complexe rsidentiel. + + + Je me balade dans la ville. En ce moment, je me dirige vers le complexe rsidentiel. + + + Je me balade dans la ville. En ce moment, je me dirige vers le complexe rsidentiel. + + + Je me contente de faire un tour. L, je me dirige vers le port fluvial. J'espre que je ne vais pas tomber sur ces fanatiques du Monolithe. + + + Je fouille Pripyat la recherche d'un endroit plein d'artefacts et sans monstres ou soldats du Monolithe... H, h, on peut toujours rver, pas vrai ? Bon, plus srieusement, je compte aller voir une anomalie dont on m'a parl, au sud du port fluvial. + + + Je vais au cinma Prometheus. + + + Je vais au cinma, prs du monument Prometheus. + + + Je veux faire profil bas, le temps de reprendre mon souffle. Il y a un coin dans une cour au nord de l'cole maternelle qui sera parfait pour a. + + + Je vais au sud du complexe rsidentiel. + + + Je vais un endroit situ entre l'cole maternelle et le complexe rsidentiel. + + + Il y a un endroit qu'ils appellent la Balafre, o on dirait que le sol a t coup en deux. On y a trouv des artefacts, mais, une fois que tu y pntres, il se passe un truc trange : ton cerveau part en vrille, tel point que t'en oublies quasiment de respirer et de te barrer en courant. + + + Tu sais o est la station de dragage ? C'est plein d'anomalies gravitationnelles, mais rien qu'un stalker expriment ne puisse grer. Il suffit d'utiliser les boulons, comme d'habitude. Il y a aussi pas mal de radiations, l'intrieur comme l'extrieur. C'est un peu comme si tu te baladais prs d'un gros tas d'uranium enrichi... + + + Il y a un vieux poste lectrique par l, on l'appelle la Fort de Fer, on comprend tout de suite pourquoi en la voyant. Il parat qu'on y a trouv des paquets d'artefacts aprs des missions. Il y a pas mal d'anomalies lectriques et de radiations, mais rien de vraiment dangereux... Et quelques poltergeists qui te balancent tout un tas de salets... + + + Du boulot ? Franchement, je ne sais pas. Mais si tu veux filer un coup de main la Libert, va voir notre chef Yanov : va dans l'aile sud et demande Loki. Et oublie pas : si tu crois l'volution des connaissances et de la conscience humaines, et l'importance des dons de la Zone, tu fais le bon choix. + + + Aucune ide. Mais si tu trouves quelque chose qui nous aide combattre la Zone et ceux qui pensent que c'est un don plutt qu'une maldiction, va voir le commandant de l'expdition du Devoir, le colonel Shulga. C'est lui qui est responsable de la gare de Yanov, il se trouve dans l'aile nord. Une chose est sre en tout cas : tout civil qui contribue au succs du Devoir sera rcompens. + + + Tout le monde parle de trucs vraiment bizarres qui se passent la tour de refroidissement. Quand on se branche sur la frquence commune, on capte des morceaux de signal de dtresse, comme si un pauvre connard tait bloqu dans une anomalie. Mais ds qu'on demande les coordonnes, y a plus de rponse. Le plus trange, c'est le bruit de fond... Personne peut l'expliquer... + + + Je me rends un endroit mi-chemin entre le Skadovsk et le Chevtchenko. + + + Je vais Jupiter. Mais je ne m'aventurerai srement pas trs loin... + + diff --git a/gamedata/configs/text/fra/st_dialogs.xml b/gamedata/configs/text/fra/st_dialogs.xml new file mode 100644 index 0000000..c3b95b4 --- /dev/null +++ b/gamedata/configs/text/fra/st_dialogs.xml @@ -0,0 +1,978 @@ + + + + J'aurais une petite question poser... + + + Vas-y, accouche ! + + + Qu'est-ce que tu penses d'Allegro ? + + + Allegro ? Je pense qu'un de ces jours, je vais me choper ce petit con au fond d'un bois et lui foutre une bonne drouille des familles ! + + + Tu as entendu parler de l'Oasis ? + + + Ouais, j'ai entendu une sacre blague propos de cet endroit. En fait, les gars de la Dcharge ont lanc une rumeur concernant l'emplacement de l'Oasis. Ils se sont cass le cul pour que a ait l'air vrai, tu vois le genre ? Ensuite, ils sont partis l-bas et ils ont attendu. a a pas rat, il y a eu tellement de stalkers nafs qui sont venus leur refiler leur matos que les gars ont pu se barrer de la Zone les poches pleines. Et pourquoi pas, aprs tout ? Ils avaient mis assez de ct pour leurs vieux jours. Y en a qu'un seul qui soit rest, un certain Yoga... + + + Ouais, parat que si t'y vas, toutes tes maladies seront guries... a doit tre bien pratique : plus de gueule de bois ou d'hmorrodes, le pied ! Si tu le trouves, t'as plus qu' y ouvrir un petit commerce et regarder la thune s'accumuler sans que tu lves le petit doigt ! + + + Qu'est-ce que a peut me foutre ? Tout a, c'est des conneries pour occuper les bleubites... Les vrais mecs, ils ont pas besoin de a. C'est toujours la mme chose : tu viens prendre une binouze au bar et tous les connards arrtent pas de parler de l'Oasis. Et chacun te jure qu'il sait o elle se trouve... mais bizarrement, ils ont tous des infos diffrentes ! + + + Tu as dj rencontr un stalker qui se fait appeler la Pie ? + + + Ouais. Et il m'a suffi d'un coup d'il pour voir que c'tait une belle buse... et puis, j'ai aussi entendu des stalkers dire que son surnom complet, a serait plutt la Pie voleuse... Enfin, si tu veux le trouver, faudra que tu te dbrouilles tout seul. + + + Nan... Jamais entendu ce nom-l... + + + Qui aurait pu voler des affaires dans une cantine personnelle ? + + + Un salaud, je vois que a. Tu devrais en parler aux boss Yanov, ils savent s'occuper de ce genre de vermine. + + + Qui pourrait m'aider dcrypter quelque chose par ici ? + + + Ben, il parat que Nitro Yanov se dbrouille pas trop mal. Apparemment, avant qu'il se mette bosser pour le Devoir, les gars lui ont demand de pirater quelques PDA... Ah, c'tait le bon temps... + + + H, t'as pas besoin d'un polytechnicien pour a. Il te suffit de trouver mec qui sache pirater ton systme. J'en ai rencontr un quand j'tais au trou, mais a fait un bail. a va pas t'aider, il avait encore cinq ans tirer quand je suis sorti. + + + J'ai le PDA du marchand du Devoir. Tu ne connatrais pas quelqu'un que a intresserait ? + + + Il y bien a un marchand sur le Skadovsk... Hibou, qu'il s'appelle. Il paye toujours rubis sur l'ongle et les gars lui vendent des PDA de temps en temps. Il pose pas trop de questions non plus, ce qui est pas plus mal. + + + a peut intresser quasiment tout le monde, mon pote... Rflchis un peu : sa propre faction lui en ferait voir des vertes et des pas mres, et les autres feraient des pieds et des mains pour obtenir ces infos. mon avis, vaut mieux que le Hibou le fasse disparatre. Par contre, y aura que lui qui saura o la marchandise finira, mais bon, c'est toi de voir... + + + O est-ce que je peux trouver des outils par ici ? + + + Si tu cherches des instruments chirurgicaux, va voir dans les hpitaux et les dispensaires. Si tu veux des outils de construction, va voir dans la carrire de Jupiter. Sinon, fouille dans les vieux ateliers. + + + Qu'est-ce que j'en sais, moi ? J'ai pas besoin d'outils pour faire parler les stalkers, tu sais... Allez, relax, je rigole. + + + Qui pourrait me dbloquer un module de mmoire ? + + + Bonne question ! ton avis, j'ai une tronche savoir ce genre de connerie ? T'es pas un peu con, des fois ? Va plutt voir des techniciens ou des scientifiques ! Tu t'attends quand mme pas ce que je puisse t'aider avec ce genre de truc, si ? + + + Pour tout te dire, la dernire fois que j'ai "dbloqu un module de mmoire", c'tait l'cole et c'tait une putain de disquette ! Alors, va donc faire chier des mecs qui s'y connaissent dans ce genre de trucs, ok ? + + + Qui pourrait forcer un conteneur en acier ? + + + Tu connais Cardan, du Skadovsk ? Eh bien, il tait torch l'autre jour et il s'est mis poursuivre un autre abruti avec un pied-de-biche. Je suis sr que tu dois pouvoir le convaincre de l'utiliser des fins plus... comment dire... orthodoxes. + + + Eh ben, avec des bons outils, mme moi, je pourrais y arriver. Mais bon, personne vient dans la Zone avec des outils... Donc tu ferais mieux de t'adresser des mcanos, c'est leur domaine, aprs tout. + + + Je cherche un stalker du nom d'Accroc. Tu sais o je peux le trouver ? + + + Aucune ide... Demande plutt Sultan sur le Skadovsk. Le boss sait o sont tous les caves, en gnral. + + + Ouais, j'ai entendu parler de ce tocard. Il trane Zaton la plupart du temps, donc tu ne risques pas de le croiser par ici. + + + Qu'est-ce que tu peux me dire sur les hlicoptres qui se sont crass ? + + + Qui serait intress par des informations concernant le fondateur du Devoir ? + + + Je connais personne qui serait pas intress ! Ce sont des infos explosives, mon pote ! mon avis, t'aurais plutt intrt aller voir le Hibou, sur le Skadovsk. Tu y perdras peut-tre un peu au change, mais au moins, tu te feras pas d'ennemis. + + + Ben, rien ! Rflchis un peu : j'ai le Devoir ma droite, la Libert ma gauche et des stalkers plein le cul ! Tu crois vraiment que j'ai que a foutre, de zyeuter le ciel ? + + + Les gars m'ont dit qu'ils en avaient vu un pris dans des cbles lectriques de la Fort de fer, mais a t'avancera pas grand-chose... moins que tu tiennes vraiment marcher dans une anomalie ou te faire dfoncer le crne par un poltergeist. + + + Ouais, un mec m'a dit qu'il en avait vu un s'craser sur un plateau, mais y a aucun moyen d'y accder. Parat que le pilote aurait pt un cble, vu la faon dont il volait. + + + Parat qu'un hlico s'est pris pour un sous-marin et a fini dans le marais. Autant dire que a s'est mal termin, vu que l'eau par ici, elle est pas vraiment potable... + + + Il y a des militaires dans le coin ? + + + Qui serait intress par des cartes de la rgion entre Zaton et Jupiter ? + + + Pilote, je pense. C'est le guide principal de la rgion. a pourrait pas lui faire de mal de se rfrer de vraies cartes au lieu des toiles... + + + Les gars m'ont dit qu'une unit militaire tait descendue du plateau sud, droit vers le camp des mercenaires. Ils se sont dit que a allait barder, alors ils se sont tirs vite fait. + + + Parat que des bidasses ont essay de sortir leur matos de leur hlicoptre avant qu'il s'enfonce dans le marais. T'imagines ? Cinq troufions dans le marais essayer de pas se mouiller les pieds ? H h, a devait pas tre beau voir. + + + Un type m'a dit qu'il traquait un stalker pour choper son butin quand il a entendu des coups de feu. Apparemment, les militaires taient en train de se battre contre les mercenaires. Il s'est planqu et a attendu que a se calme, mais du coup, son stalker en a profit pour se faire la malle. C'est con, hein ? + + + Un de mes potes m'a racont qu'il avait vu un truc vraiment bizarre : y avait Noah et sa pniche avec le moulin dessus, tout excit sauter dans tous les sens, et dix bidasses qui couraient dans tous les sens pour s'loigner de son sale clbard. Autant te dire que mon pote s'est bien marr avant de s'loigner de ce cirque. + + + Nan, c'est pas un coin tranquille, trop de mecs avec des flingues chargs et la gchette facile... J'ai autre chose foutre que faire le tri entre les militaires en vadrouille et les gars du Devoir en mission. + + + Tu sais comment aller Pripyat ? + + + Qui est-ce que je pourrais recruter pour protger les scientifiques ? + + + Ha, moi et les gars, on ferait l'affaire ! On va leur donner une protection comme ils en ont jamais vue ! Les stalkers et les mutants oseront plus s'approcher, crois-moi ! Suffit de cracher le fric toutes les semaines et c'est une affaire qui roule ! Mais faut pas oublier le 13e mois ! + + + Ben, pied, mon pote ! Va jusqu' Jupiter et demande aux gars du coin ! Y a pas de route directe entre Zaton et Pripyat ! + + + J'ai une tronche de guide touristique ? C'est pas marqu 'Questions connes bienvenues' sur mon front ! Va demander Pilote. Lui, il est pay pour rpondre ce genre de questions. + + + Non... Qu'est-ce que j'irais foutre l-bas de toute faon ? Y a pas de stalkers plumer dans ce trou ! + + + Je cherche quelqu'un qui serait prt se rendre Pripyat. + + + Pripyat vaut pas le coup pour des mecs comme nous. Rflchis un peu, a grouille de mutants et d'anomalies... comme le reste de la Zone, d'ailleurs... mais en plus, y a pas de stalkers plumer ! Quand les stalkers iront Pripyat, fais-moi signe et on y ira, histoire de mettre un peu d'ordre, mais pas avant. + + + J'ai pas d'ide, mec. Dsol. + + + J'ai trouv une arme trange. Qui pourrait m'aider savoir de quoi il s'agit exactement ? + + + ta place, je demanderais aux techniciens. Aprs tout, c'est leur boulot de savoir ce genre de trucs, non ? + + + Aucune ide... Les stalkers du Skadovsk pensent que Cardan est un gnie de la mcanique. Si tu veux mon avis, c'est qu'un vieux poivrot, mais tu pourrais peut-tre t'adresser lui... + + + Qui pourrais-je recruter pour faire des relevs pour les scientifiques ? + + + Nos gars peuvent s'en charger sans problme. Bon, c'est pas comme s'ils avaient fait des tudes, hein, mais tu leur montres n'importe qui et ils te le retournent dans tous les sens vite fait bien fait. Ils pourront mme te creuser une tombe sur mesure ! + + + J'ai trouv un artefact trs trange. Qui serait prt me l'acheter ? + + + Un artefact trange, tu dis ? Fais voir... File-le-moi, histoire que je puisse bien le voir... H, du calme, je plaisante ! Mais ta place, je montrerais pas ce truc n'importe qui... Y a des tas de mecs qui sont pas aussi sympas que moi, si tu vois ce que je veux dire... + + + Mec, t'as des couilles en bton pour venir montrer a dans le coin. Respect ! coute, le mec qu'il te faut, c'est le Barbu, sur le Skadovsk. Personne sait comment il arrive faire sortir les artefacts de la Zone, mais il te dbarrassera de ce machin pour un bon prix. + + + J'ai trouv un nid de sangsues pas loin d'ici. Qu'est-ce qu'on doit faire ? + + + Ben, qu'est-ce que tu veux qu'on fasse ? On fout le camp, et vite, c'est tout ! + + + Ok, oublie a. + + + J'aurais une question... + + + J'coute. + + + Je cherche me renseigner au sujet d'un certain Allegro. + + + Allegro ? Jamais entendu parler de lui. Il serait pas dans une autre unit ? + + + Je cherche des informations au sujet de l'Oasis. + + + C'est un conte de fe des stalkers. C'est ce qu'ils font depuis toujours : ils inventent une histoire pas possible et ensuite, ils partent la recherche du saint Graal ! Moi, j'coute pas ses racontars, a apporte que des emmerdes. Y en a mme qui croient l'existence de l'Exauceur de vux ! + + + Ah oui, l'endroit o les blessures se referment toutes seules et les maladies sont guries comme par magie ? Ben, tout a, c'est que du vent ! Les stalkers inventent ce genre de conneries pour se donner l'impression que la Zone n'est pas si dangereuse que a, mais la triste vrit, c'est qu'il n'y a aucun endroit sr dans toute la Zone. Faut savoir garder les pieds sur terre par ici ! Les rveurs, ils survivent pas longtemps dans le coin. + + + Ouais, et tous les artefacts qu'on y trouve valent leur poids en or et ils sont prsents sur un plateau d'argent pendant qu'on te masse les orteils... Ben voyons... Je n'y crois pas une seule seconde, mme si ce serait bien pratique. On pourrait y installer un hpital sans mdecins : les blesss viendraient et ils seraient soigns sans rien faire. Mais, c'est trop beau pour tre vrai... + + + Je cherche un stalker qui se fait appeler la Pie. + + + J'ai dj du mal me rappeler tous les gars du Devoir, alors un stalker ! Jamais entendu parler ! Les stalkers ont leur base sur le Skadovsk, vaut mieux s'adresser directement eux ! + + + Non. + + + Qui aurait pu voler des affaires dans une cantine personnelle ? + + + Alors, a, a n'arriverait jamais dans une base du Devoir. Mais ici, avec tous ces glandeurs de la Libert, on ne sait jamais... + + + Qui pourrait m'aider dcrypter quelque chose par ici ? + + + Il y a un technicien du nom de Nitro dans la gare de Yanov. Il se dbrouille bien en lectronique : il m'a dpann quand j'avais oubli le mot de passe de mon PDA. Il s'en est occup en cinq secondes chrono ! + + + Pour a, il vaut mieux aller Yanov et parler Nitro. Il est plutt dou pour ce genre de trucs. + + + J'ai le PDA du marchand du Devoir. Qui est-ce que a pourrait intresser ? + + + Un marchand du Devoir ? C'est impossible ! Quoi qu'il en soit, c'est le lieutenant-colonel Shulga qui s'occupe de ce genre de choses. Il saura quoi en faire. + + + O est-ce que je peux trouver des outils par ici ? + + + Il y a une usine pas loin d'ici. Bien sr, il y a des chances qu'elle ait t pille, mais a vaut peut-tre le coup quand mme. + + + mon avis, il doit en rester quelques-uns dans les vieux ateliers, ou alors dans certains des magasins. + + + Il n'y a que des mutants et des anomalies dans le coin ! Ha ! Et aussi des contrleurs, mais ils ne sont pas vraiment du genre serviable... + + + Eh bien, il y a un train sous le pont pas loin d'ici. J'en ai dj vu des comme a avant : ils servent gnralement transporter des techniciens, donc ils doivent srement contenir du matriel. + + + Qui pourrait dbloquer un module de mmoire ? + + + Nitro. C'est le seul gars de la gare de Yanov qui s'y connaisse. + + + Il vaut mieux s'adresser un technicien pour a. Et le seul technicien comptent du coin, c'est Nitro. Il trane dans la gare de Yanov. + + + Qui pourrait forcer un conteneur en acier ? + + + Il parat qu'il y a un technicien chez les stalkers. C'est un alcoolique, mais il connat son mtier. + + + Ha, autant demander qui pourrait forcer un coffre-fort ! Je suis sr que Nitro pourra rien y faire... s'il y avait une serrure lectronique, a serait une autre histoire. + + + Je suis la recherche d'un stalker du nom d'Accroc. + + + Il vaudrait mieux en parler aux autres stalkers, c'est l'un d'entre eux, ils doivent savoir o il est. Moi, j'ai jamais entendu parler de ce Maquereau... + + + Je cherche des informations sur les hlicoptres qui se sont crass. + + + Qui serait intress par des informations concernant le fondateur du Devoir ? + + + Le commandant, videmment. C'est Shulga qui s'occupe de ce genre de chose. Le Devoir sait rcompenser ses amis... + + + Ouais, nos claireurs ont vu un hlico militaire qui se dirigeait vers les hliports de rserves de Jupiter. Ils ont essay de lui dire de changer de cap, mais les pilotes devaient avoir d'autres chats fouetter. Je me demande si ces bidasses ont russi traverser le champ de mines... + + + On n'est pas encore trs bien implants dans le coin... Il vaut mieux en parler nos gars prs de Yanov. + + + Une patrouille a signal qu'un hlicoptre militaire a tent un atterrissage d'urgence prs de l'usine de Jupiter. Malheureusement, l'appareil s'est cras sur le toit des ateliers. Il n'y a probablement aucun survivant, vu que nous n'avons reu aucun signal de dtresse. + + + Il y a des militaires dans le coin ? + + + Qui serait intress par des cartes de la rgion entre Zaton et Jupiter ? + + + Quelqu'un qui en aurait l'utilit ? Pilote, par exemple : c'est le guide sur la route entre Zaton et le Skadovsk. De telles cartes lui seraient bien utiles, c'est sr. + + + Des militaires ? J'en ai pas vu beaucoup dans le coin, mais c'est vrai qu'on passe pas trop de temps par ici. + + + Quelqu'un a repr le cadavre d'un soldat dans le champ de mines il y a quelque temps. Ces hlicoptres peuvent emmener 8 hommes en plus de l'quipage, alors certains ont d en rchapper, mais personne ne sait o ils sont passs. + + + Un militaire a t aperu dans le bunker des scientifiques trs rcemment, mais je ne sais rien de plus. + + + L'autre jour, un mec en uniforme a t aperu en train d'entrer dans un btiment prs du complexe Volkhov AA. Mais bon, a aurait trs bien pu tre un zombie... + + + Des stalkers ont vu un groupe de militaires prs de l'usine de Jupiter. en croire la description qu'ils en ont fait, je dirais que ces mecs faisaient partie des forces spciales. Ils taient accompagns par un stalker et se dirigeaient vers Pripyat. Les descriptions taient trs dtailles, mais l'exprience m'a appris me mfier des rumeurs trop plausibles pour tre honntes. + + + Comment faire pour aller Pripyat ? + + + Qui je pourrais recruter pour protger les scientifiques ? + + + Ils ne pourront pas trouver meilleure protection que celle fournie par le Devoir. Le lieutenant-colonel Shulga Yanov se charge de ce genre de mission. Je suis sr que vous arriverez vous mettre d'accord. + + + Tant qu'ils bosseront avec ces clowns de la Libert, on s'approchera pas de l'endroit. Plutt crever que d'couter ces abrutis sortir leurs vannes merdiques longueur de journe. + + + Le Devoir n'a aucune raison de chercher un chemin menant Pripyat pour l'instant, mais cela peut quand mme nous intresser. Diffrents rapports non confirms indiquent l'existence d'un tunnel entre l'usine de Jupiter et Pripyat, mais la vrification de cette information impliquerait de passer toute la rgion au peigne fin. + + + Pour obtenir ce genre d'infos, il vaut mieux s'adresser un guide civil. Nos claireurs ont dj assez de pain sur la planche comme a. + + + Nos claireurs parcourent souvent la rgion la recherche d'un passage sr vers Pripyat, mais sans rsultat pour l'instant. + + + Je cherche quelqu'un qui serait prt tenter d'atteindre Pripyat. + + + La prsence du Devoir est limite dans cette rgion. Il vaut mieux en parler nos gars de Yanov. + + + Selon la rumeur, les scientifiques hbergeraient un militaire dans leur bunker. Parat qu'il est coinc l-bas : les scientifiques ne bougeront pas avant 12 18 mois et il ne risque pas de tenter d'atteindre la frontire de la Zone tout seul et pied. Alors, je me dis que a pourrait peut-tre l'intresser. + + + Il doit bien y avoir quelques ttes brles qui seraient prtes tenter le coup. Par exemple, un stalker du nom de Vano la gare de Yanov : a le drange pas d'aller se fourrer dans les pires emmerdes et il est plutt dbrouillard. Ce type arriverait sortir d'une anomalie les yeux ferms ! + + + Peut-tre qu'en lanant une campagne de recrutement dans un asile... Quoi que... j'ai mme mieux ! Des combattants du Monolithe ! D'ailleurs, puisqu'on en parle, on en a repr un group prs du complexe AA, ils connaissent srement un moyen d'atteindre Pripyat, eux... Je plaisante, bien sr... + + + Certains membres du Devoir se porteront srement volontaires. Arpenteur, par exemple. Il n'a pas encore de mission, alors peut-tre que le lieutenant-colonel le laissera y aller. + + + Tout le monde sait que les meilleurs combattants font partie du Devoir... mais nous avons d'autres objectifs pour l'instant. + + + J'ai trouv une arme trange. Qui saurait me dire de quoi il s'agit exactement ? + + + Waouh, sacre ptoire ! J'ai jamais rien vu de pareil... Faudrait demander aux techniciens. + + + Qui pourrais-je recruter pour faire des relevs pour les scientifiques ? + + + Quelle question, le Devoir, bien sr ! Nous comptons beaucoup d'hommes expriments et nous avons dj travaill pour les scientifiques. Il veut mieux en parler au lieutenant-colonel Shulga, je suis sr qu'il mettra une unit leur disposition. + + + Personne ne voudra travailler l-bas si c'est la Libert qui se charge de la protection du bunker ! Ces pacifistes deux balles sont tellement stones la plupart du temps qu'ils ont autant de chances de tirer sur leurs amis que sur les ennemis ! + + + J'ai trouv un artefact trs trange. Qui serait susceptible de me l'acheter ? + + + Tous les artefacts sont tranges et je dconseille quiconque de les trimballer comme a. Il vaut mieux laisser faire les experts. + + + a intressera srement les stalkers, ils s'y connaissent dans ce genre de choses. Encore mieux, le mec qui leur achte leurs artefacts ! + + + J'ai trouv un nid de sangsues pas loin d'ici. Qu'est-ce qu'on doit faire ? + + + Les units du Devoir n'ont pas d'oprations de nettoyage prvues pour l'instant, donc ce nid va devoir attendre. + + + Ok... + + + J'aurais une question te poser... + + + Je t'coute ! + + + Qu'est-ce que tu penses d'Allegro ? + + + Je sais pas grand-chose son sujet... Tu devrais en causer aux stalkers. C'est l'un d'entre eux, non ? + + + Tu as entendu parler de l'Oasis ? + + + Plein de fois... a fait envie, je dois bien l'avouer : un palais dans les sables, une le dans la brume, un chteau dans le ciel... Shangri-la, le Paradis ou l'Oasis, mme combat ! Tout le monde a le droit de rver ! + + + Un stalker m'a racont une histoire intressante l-dessus, je me demande mme si c'tait pas la premire fois que j'entendais parler de l'Oasis... Il m'a dit que d'aprs les lgendes, toutes les blessures s'y referment, qu'on y devient calme et serein, comme si on n'tait pas du tout dans la Zone. Je l'ai pas revu depuis... Et c'est seulement une fois qu'il est parti que je me suis souvenu qu'il boitait. Sauf qu'en partant, il boitait plus du tout et il avait mme l'air d'avoir rajeuni... + + + Ouais, des stalkers m'ont mme fil les coordonnes... Dix ensembles de cordonnes diffrents, qui vont du Lobotomisateur la centrale de Tchernobyl, en passant par le bar de Yanov ! Qui sait, si a se trouve, on est en plein dans l'Oasis en ce moment mme, alors dtends-toi et profites-en ! + + + Je cherche un stalker qui se fait appeler la Pie. + + + Jamais entendu parler... Je connais pas beaucoup de stalkers indpendants dans le coin. + + + La Pie ? Nan, mais c'est cool comme nom ! + + + Qui aurait pu voler des affaires dans une cantine personnelle ? + + + Personne d'ici en tout cas ! Y a bien des mecs qui vont te piquer une bouche de ton casse-dalle ou une gorge de ta gnle quand tu regardes pas, mais on n'a pas de vrais voleurs ici... + + + Qui pourrait m'aider dcrypter quelque chose par ici ? + + + Il parat que Nitro, Yanov, est un fada d'algorithmes et de combinaisons. Mais bon, je suis pas vraiment sr de mon coup, je lui ai jamais parl : il bosse pour le Devoir, alors il a pas trop de temps nous consacrer. + + + Je suis pas un expert en experts locaux... Demande nos gars de la gare de Yanov la prochaine fois que tu y passes, ils pourront srement t'aider. + + + J'ai le PDA du marchand du Devoir. Qui est-ce que a pourrait intresser ? + + + H, a a l'air intressant ! Moi, je le filerais Loki, notre chef Yanov. Il s'assurera que les stalkers indpendants sachent quel genre de malades le Devoir recrute. + + + O est-ce que je peux trouver des outils par ici ? + + + Dans l'usine, quelle question ! Bon, c'est pas une sincure, mais tu trouveras forcment ton bonheur dans les entrepts. + + + Bonne question ! Laisse-moi y rflchir deux secondes... O est-ce qu'on trouve des outils en dehors de la Zone ? Dans un magasin, non ? Sinon, y en a forcment dans des ateliers, pas vrai ? Ben, c'est la mme chose ici ! Suffit de regarder au bon endroit, c'est qu'une question de bon sens, stalker ! + + + Des outils ? Euh, c'est un code qui veut dire quoi, a ? Y a pas de flics par ici, tu peux causer normalement, tu sais... Oh, des vrais outils ? T'es srieux ? Dsol, pour a, je peux pas t'aider. + + + J'ai entendu dire qu'un de nos gars cherchait des outils et qu'il tait all dans le train sous le pont. Apparemment, y a un Tesla l-bas... Enfin bref... il a dit que c'tait pas du gteau... Pourquoi je te raconte a ? Ben, il a dit aussi qu'il y avait des outils qui tranaient par terre, mais il a prfr pas s'en approcher parce que a avait l'air dangereux. + + + Qui pourrait dbloquer un module de mmoire ? + + + Ben, Novikov, dans le bunker des scientifiques, doit pouvoir s'en charger. Il est rapide, dou et poli. Y a aussi Nitro, le technicien du Devoir dans la gare de Yanov. Il est pas cher et pas trs dou, mais il devrait pouvoir te dpanner. + + + Un bon technicien, j'imagine. Celui du coin est plus branch mcanique, alors moins de vouloir rayer le canon de ton module, vaut mieux que tu demandes du ct de Jupiter. + + + Qui pourrait forcer un conteneur en acier ? + + + On m'a recommand Cardan, qui bosse sur le Skadovsk, l'autre jour. Parat qu'il sait ce qu'il fait, mme s'il est rond comme une queue de pelle la plupart du temps. Il devrait pouvoir t'aider. + + + Quelqu'un qui en a fait son mtier ? Le technicien local, Nitro, pourra pas s'en occuper, il est plutt du genre pirater des trucs lectroniques, lui... + + + Je suis la recherche d'un stalker du nom d'Accroc. + + + Jamais entendu parler... Tu devrais demander aux autres stalkers indpendants. + + + Je cherche des informations sur les hlicoptres qui se sont crass. + + + Qui serait intress par des informations concernant le fondateur du Devoir ? + + + a intressera Loki, pas de doute l-dessus ! C'est lui le boss Yanov. Mme s'il sait pas quoi en faire... l'important, c'est que ces infos tombent pas entre les mains du Devoir. T'imagines la propagande ? J'en ai mal au crne rien que d'y penser ! + + + Ouais, t'as entendu l'histoire de l'hlico dans le champ de mine ? Ben, les bidasses se sont crass sur l'hliport de rserve que leurs prdcesseurs avaient min il y a 6 ans. Maintenant, certains disent qu'ils l'ont fait parce qu'ils sont cons, mais j'en doute : aprs tout, personne ira les faire chier l-bas, alors, une fois qu'ils auront rempli leur mission, ils peuvent retourner leur taxi, le rafistoler et se tirer. Mais j'aimerais bien savoir pourquoi ils sont venus... + + + Je suis pas du coin et je sais que dalle. Va donc voir nos gars de Yanov : ils te diront tout ce qu'ils savent et le reste, ils l'inventeront ! + + + Ouais, certains de nos gars ont vu un hlico en dtresse l'autre jour. Il a pas choisi le meilleur endroit pour atterrir, d'ailleurs : droit sur le toit de Jupiter ! Parat qu'il s'est cras, que le toit a cd et que tout le bordel est tomb l'intrieur ! + + + Il y a des militaires dans le coin ? + + + Qui serait intress par des cartes de la rgion entre Zaton et Jupiter ? + + + Pilote, pas de doute. C'est le principal guide des environs. Si tu veux vendre des cartes, a l'intressera forcment ! + + + Du calme, mec. Y a pas de flics, pas de bidasses et pas de putain de milice par ici ! Y a pas de coin plus peinard dans toute la Zone ! + + + Non, mais un mec m'a dit qu'il avait vu une unit de militaires traverser le champ de mines prs des hliports. Il a hsit leur filer un coup de main, mais a dcid de s'abstenir. Les militaires, vaut mieux les laisser tranquilles, on sait jamais quand ils vont pter un cble et te plomber le cul ! + + + Perso, j'ai rien vu, mais parat qu'il y a un militaire chez les scientifiques. Ozersky, le biologiste, dit que c'est un survivant de l'hlico qui s'est crash sur la centrale... Ici, on raconte en rigolant que les grosses ttes se sont trouv un nouvel animal de compagnie. + + + Pas directement, mais j'ai entendu des stalkers indpendants en parler. Ils auraient vu un bidasse prs du complexe Volkhov AA. mon avis, c'est plutt un fantme ou un zombie qui s'est rveill... Qu'est-ce que t'en penses, toi ? + + + Non, mais y a un mec qui dit avoir vu 7 soldats suivre un stalker derrire la station-relais sur la route de Pripyat. a fait un bout de temps qu'y a plus d'herbe dans la Zone, alors on va mettre a sur le compte du manque... + + + Comment faire pour aller Pripyat ? + + + Qui je pourrais recruter pour protger les scientifiques ? + + + La Libert ! Nous, quoi ! On bosse tout le temps avec les scientifiques, alors a serait pas compliqu de les protger. Va en parler notre chef, Loki, Yanov. Il sera srement d'accord. + + + Je sais pas trop... Parat que les crnes d'uf ont embauch une unit du Devoir pour les protger... On adorerait aider les scientifiques, c'est sr, mais il est hors de question de bosser avec ces faces de rat du Devoir dans les parages ! + + + Parat que tu peux y accder partir de Jupiter... l'usine, hein, pas la plante ! Ah ! Allez, elle tait pas mal, avoue ! + + + J'en aucune ide ! J'ai carrment pas le temps de me pencher sur la question... ta place, je demanderais Pilote au camp. Aprs tout, il connat la rgion comme sa poche... + + + Si je le savais, a ferait longtemps que j'y serais all... J'adorerais laisser le Devoir, les bidasses et tous ces combats derrire moi... + + + Je cherche quelqu'un qui serait prt tenter d'atteindre Pripyat. + + + Dsol, mon pote, je ne connais personne que a peut intresser Zaton... Tu ferais mieux de demander nos gars de Yanov. + + + Tu connais le bunker des scientifiques ? Ben, ils ont un sacr problme sur les bras l-bas ! D'abord Garry, le stalker, qui a dcid de partir pour Pripyat et maintenant, leur soldat qui s'est mis la mme ide en tte ! Garry, c'est un loup solitaire, un vrai de vrai, mais le bidasse, c'est exactement le genre de gars qu'il te faut. + + + Vano, que tu trouveras Yanov. Il est pas plus mauvais qu'un autre. C'est un gars bien qui aurait pu rejoindre la Libert, mais il a pas trop envie de se friter avec le Devoir... ou avec qui que ce soit, d'ailleurs. C'est son point de vue et on le respecte ! + + + Je sais qui il te faut ! Un de nos gars a repr un groupe pas loin du lac assch, ces types seraient parfaits. Ils connaissent srement Pripyat comme leur poche et ils ont pas l'air de bosser pour qui que ce soit. Et ils sont courageux, a, y a pas de doute ! Le seul problme, c'est que ce sont des combattants du Monolithe... + + + Ouais. Arpenteur, le chef des nouveaux... Il a pas l'air l'aise parmi nous. Ses gars se sont bien adapts, mais lui pas vraiment... Va donc lui parler ! C'est trop con de laisser un mec se morfondre ici s'il a une meilleure chance de faire son trou ailleurs. + + + Dsol, j'ai pas d'ide. + + + J'ai trouv une arme trange. Qui saurait me dire de quoi il s'agit exactement ? + + + T'as pas trouv le manuel qui va avec ? Ben, je peux rien faire pour toi, alors... + + + Qui pourrais-je recruter pour faire des relevs pour les scientifiques ? + + + Je pense que nos gars pourraient s'en charger. Aprs tout, la Libert engage pas que des idiots et si on a un doute, on demandera au bunker. C'est cool de faire avancer la science ! Va Yanov et parles-en Loki ! Je suis sr qu'il sera d'accord ! + + + On adorerait s'en charger, mais c'est le Devoir qui garde le bunker ces derniers temps. Alors, pour passer voir les scientifiques de temps en temps, on s'en accommode, mais a serait pas une bonne ide d'en faire une habitude. + + + J'ai trouv un artefact trs trange. Qui serait susceptible de me l'acheter ? + + + C'est un collectionneur qu'il te faut, mon pote ! T'en trouveras pas Yanov, vu que mme les stalkers ont les foies de venir ici. Tu ferais mieux d'aller voir Zaton, c'est un peu plus calme par l-bas. + + + Tu connais le Barbu, le barman du camp des stalkers indpendants ? Il achte les artefacts et il t'arnaque pas trop en gnral. C'est un mec sympa, crois-moi. Dommage qu'il bosse pas pour nous... + + + J'ai trouv un nid de sangsues pas loin d'ici. Qu'est-ce qu'on doit faire ? + + + Faut que t'ailles prvenir les stalkers indpendants, leur camp est pas trs loin, aprs tout. La faune de la Zone doit tre protge, c'est sr, mais les gens sont quand mme plus importants. + + + Ok, oublie a. + + + J'ai une question pour toi... + + + Je t'coute. + + + Qu'est-ce que tu penses d'Allegro ? + + + Inconnu au bataillon... Tu ferais mieux de demander aux habitus du Skadovsk. + + + Tu as dj entendu parler de l'Oasis ? + + + J'ai tout entendu propos de l'Oasis. C'est une lgende, un mythe... Chaque stalker en attend quelque chose de diffrent et chacun prtend savoir o elle se trouve. C'est quand mme dommage que tous ces lieux n'aient en commun que le fait d'tre impossibles atteindre ! + + + Ouais, ils disent que les blessures s'y referment d'elles-mmes et qu'on s'y repose en un instant... Qu'aucune maladie ne rsiste et que mme les radiations n'ont plus aucun effet ! La seule chose dont je sois sr, c'est l'endroit o se trouve ce petit paradis... Tu veux savoir ? C'est en plein centre de la Zone, pardi ! Mais a reste entre nous, ok ? + + + Il parat que les mutants que tu y croises ne s'intressent pas toi et qu'il y a mme un artefact appel le Cur de l'Oasis... Personne sait ce qu'il a comme effet, part qu'il ne faut pas y toucher. Ceux qui le prennent n'ont plus leur place dans la Zone... O c'est ? Tout le monde sait que l'Oasis est Pripyat, en dessous de la grande roue ! O veux-tu que ce soit d'autre ? + + + Je cherche un stalker qui se fait appeler la Pie. + + + Ouais, je vois qui c'est... Mais j'ai pas la moindre ide de l'endroit o il peut tre... + + + Hum... Jamais entendu parler de lui. + + + Qui aurait pu voler des affaires dans une cantine personnelle ? + + + Quoi ? Demande plutt aux huiles de Yanov, ils pourront peut-tre t'aider. + + + Qui pourrait m'aider dcrypter quelque chose par ici ? + + + Nitro Yanov, bien sr ! Il adore tous ces trucs technologiques hyper compliqus... Bien plus que jouer avec des flingues ! + + + Personne que je connaisse, en tout cas. Va plutt te renseigner Yanov, parat qu'ils ont expert dans ce genre de truc... + + + J'ai le PDA du marchand du Devoir. Qui est-ce que a pourrait intresser ? + + + Tu connais le Hibou sur le Skadovsk ? Je suis sr qu'il serait trs ravi de mettre la main l-dessus... + + + Il y avait un mec appel le Hibou bord du Skadovsk, Zaton. Il achte et revend toutes sortes d'informations... Ton PDA l'intressera peut-tre. + + + O est-ce que je peux trouver des outils par ici ? + + + Un stalker m'a racont que son paternel bossait dans un des ateliers avant 86. Parat qu'il y avait tout un tas de matos l-bas, alors il devrait rester quelques outils, j'imagine. Ils sont srement rouills mort, mais a vaut peut-tre le coup d'y aller. + + + Tu connais la scierie dans les bois sur la colline ? Il devrait y avoir des outils l-bas, moins que quelqu'un les ait dj pris, ce dont je doute... Cet endroit, plus tu t'en approches, plus t'as envie de t'en loigner... Et les radiations, c'est pas le pire, crois-moi... + + + Ben, l'usine de Jupiter est l, sous ton nez. Il doit forcment y avoir des outils l'intrieur. Perso, je m'en approcherais pas... Cet endroit me fout trop les jetons. Mais tu pourrais fouiller les entrepts ct du btiment principal. + + + Parat qu'il y a quelques endroits Pripyat o on peut trouver du matriel technique. Il y aurait mme un grand magasin sovitique d'poque. C'tait le seul endroit o les gens pouvaient trouver quoi que ce soit d'utile... + + + Comment tu veux que je sache a, moi ? Va voir dans les vieux ateliers et les magasins, tu finiras bien par trouver quelque chose ! + + + Franchement, le dernier endroit o j'ai vu des outils peu prs utilisables, c'tait chez cet escroc de Sidorovich, dans son bunker du Cordon. videmment, faut cracher au bassinet, mais au moins, ils sont neufs et pas si chers que a au final. + + + Je suis pas venu dans la Zone pour trouver des outils, moi. Rflchis 5 minutes : quoi pourrait bien te servir un marteau radioactif ? + + + Parat qu'on peut rcuprer toutes sortes de vieilleries dans l'ancien centre de maintenance... Tu devrais pouvoir y trouver des outils. Mais bon, pour a comme pour le reste, le seul moyen d'obtenir du bon matos, c'est de s'en emparer en premier, alors bonne chance ! + + + Bonne question... ta place, j'irais voir dans le train sous le pont. Me demande pas pourquoi... J'ai juste l'impression que tu pourras y trouver ce que tu recherches. + + + Qui pourrait dbloquer un module de mmoire ? + + + Laisse-moi rflchir... Ben, y a Nitro, Yanov, qui devrait pouvoir s'en occuper. Sinon, y a Novikov, le technicien des scientifiques, ce type-l, c'est un vrai pro. Mais rflchis bien avant de te dcider, parce que Nitro, il est vachement moins cher ! + + + Pour a, t'auras besoin d'un technicien et le seul dans le coin, c'est Cardan. Le truc, c'est qu'aprs avoir pass tant d'annes au fond d'une bouteille, il est plus trop la pointe de la technologie... Demande donc aux mecs de Jupiter, ils doivent bien avoir quelques experts l-bas. + + + Qui pourrait forcer un conteneur en acier ? + + + Cardan, sur le Skadovsk, je pense. Apparemment, il semble pas avoir trop de problme avec les cadenas, alors... + + + Faudrait que tu te trouves un technicien, j'imagine. Nitro y arrivera srement pas, c'est un peu trop lo-tec pour lui... + + + Ha, tu demandes a Pripyat ? Suis mon conseil et cherche quelqu'un un peu plus loin du centre de la Zone. + + + Je suis la recherche d'un stalker du nom d'Accroc. + + + Tu ferais mieux de t'adresser au Barbu, le barman du Skadovsk. Il est au courant de tout, en gnral. + + + Accroc ? Alors, l, aucune ide ! Demande aux gars de Zaton, il passe tout son temps l-bas. + + + Je cherche des informations sur les hlicoptres qui se sont crass. + + + Qui serait intress par des informations concernant le fondateur du Devoir ? + + + ta place, j'irais discuter avec le Hibou, sur le Skadovsk. Je te parie qu'il serait intress par des infos sur une lgende comme celle-l. + + + J'en ai vu un... Je peux pas dire qu'il se soit crash, mais il s'est pas pos en douceur en tout cas... Il arrtait pas de se balancer d'un ct l'autre et a fini par se poser sur un plateau au sud de Zaton... Je me demande s'il y a des survivants... Si seulement on connaissait un moyen d'aller l-haut. D'ailleurs, a me fait penser que ce tar de Noah sait peut-tre par o passer... + + + J'ai entendu parler de quelques hlicos militaires qui se sont crass pas loin d'ici... Les gens ont toutes sortes d'explications, mais il n'y en a qu'une qui m'ait marqu : ils auraient atterri sur les hliports de rserve qui avaient t mins par d'autres soldats. C'est con, hein ? Comme le disait mon paternel : "Creuse pas un trou pour quelqu'un d'autre, parce que tu risques d'y tomber toi-mme". Il avait pas tort, hein ? + + + Un de mes potes m'a racont une histoire... Il allait dans la Fort de Fer pour trouver des artefacts et, peine arriv, il a entendu un grand fracas juste derrire lui. Il s'est retourn et s'est retrouv nez nez avec un putain d'hlicoptre qui fonait droit sur lui en entranant des pylnes, des cbles et un tas de bordel. Autant te dire qu'il a dcamp sans se poser de questions ! Je me demande comment il a russi s'en sortir sans foncer droit dans une anomalie. T'auras pas de mal trouver la Fort de fer, on peut la voir depuis des kilomtres. C'est plein de poltergeists, par contre, alors fais gaffe ! + + + J'en ai entendu un atterrir sur le plateau au sud, mais c'est pas facile d'y accder. Et il parat que quelqu'un a vu Noah sur le bord de ce mme plateau, ce qui veut dire que ce cingl sait comment y aller. + + + J'ai rien vu, mais la rumeur veut que l'un d'entre eux se soit cras sur l'usine... Personne a voulu aller vrifier, c'est beaucoup trop dangereux. + + + Un stalker m'a dit qu'il avait vu plusieurs hlicos militaires en difficult... Le moteur de l'un d'entre eux s'est enflamm avant que l'appareil pique tout droit dans un marais rempli d'anomalies. On peut y accder relativement facilement, mais le marais lui-mme est un enfer. Crois-moi, t'as pas envie d'y aller ! + + + Il y a des militaires dans le coin ? + + + Qui serait intress par des cartes de la rgion entre Zaton et Jupiter ? + + + Pilote, bien sr ! C'est un guide, t'es pas au courant ? Toujours faire l'aller-retour entre le Skadovsk et Yanov... Alors, c'est sr qu'il aura rien contre des cartes plus dtailles. + + + H, on est pas Zaton ou Jupiter ici ! Alors tes cartes, elles servent pas grand-chose. Va tenter ta chance dans ces coins-l, tu trouveras beaucoup plus d'acheteurs. + + + J'en ai pas vu moi-mme, mais j'ai entendu parler de soldats qui descendaient du plateau sud par les gouts. Apparemment, au dbut, ils ont essay de pas trop se dgueulasser, avec des cordes et des poulies, mais ils ont vite laiss tomber et se sont laiss glisser sur le cul. H h ! Du bobsleigh dans la Zone... La grande classe, non ? + + + J'ai entendu une conversation sur le Skadovsk... Parat que 5 ou 6 soldats ont t aperus en train de sortir des tunnels de drainage du marais. Ils taient tellement dgueulasses et couverts de merde des pieds la tte qu'ils auraient pu passer pour des sangsues ! + + + Perso, j'ai rien vu, mais un pote a aperu une unit militaire qui attaquait un groupe de mercenaires prs de la station de traitement. Le temps pour lui de trouver un bon point d'observation, c'tait dj termin. Les bidasses se sont retirs en bon ordre, sans perte d'un ct ou de l'autre... Typique, non ? + + + Apparemment, des gars ont vu une dizaine de soldats traner autour de la pniche de Noah. Et, vu qu'il tait encore vivant ce moment-l, ils ont d arriver un accord... Mais comme personne veut lui demander ce qui s'est pass... Faut dire qu'on sait jamais quoi s'attendre avec ce tar. + + + J'ai entendu une explosion l'autre nuit et plus tard, quelqu'un Yanov a dit avoir vu un militaire mort dans le champ de mines, pas loin d'un hlico. croire qu'ils ont pas vu o ils atterrissaient dans le noir et qu'il a fonc droit dans le champ de mines. Personne ne sait s'il y a de survivants, mais c'est sr qu'il n'tait pas tout seul. + + + J'ai pas vu de militaires... mais j'ai entendu dire qu'il y en avait un qui tranait avec les scientifiques. Il parat que Garry le stalker l'a trouv alors qu'il se dirigeait vers le silo missiles pour rejoindre ses potes. Et comme le complexe grouille de zombies, on peut dire que Garry lui a sauv la mise. + + + Non, mais on m'a dit qu'un militaire avait t repr prs du complexe Volkhov AA. Mais bon, j'y crois pas vraiment... C'est un mensonge ou alors ils ne savent plus faire la diffrence entre un zombie et un soldat. + + + Des militaires ? Ben, j'ai entendu dire qu'il y avait "toute une escouade de soldats mene par un stalker" qui est passe pas loin de l'usine de Jupiter, mais j'ai pas vraiment suivi la conversation. + + + Comment faire pour aller Pripyat ? + + + Qui je pourrais recruter pour protger les scientifiques ? + + + Tu connais Spartacus et son groupe ? Tu sais, les stalkers de Zaton ? Ce sont de bons gars qui sont pas ns de la dernire pluie. Je pense que a leur plairait bien comme taf. + + + T'es tomb sur Hachette et son groupe dans les ateliers de Zaton ? Comme tous les mercenaires, ils ont leurs propres problmes, mais, au moins, ils posent des questions avant de tirer. Je me dis que si t'arrives les convaincre de prendre ce boulot, les scientifiques seront contents et les stalkers pourront se dtendre un peu. + + + Hum... Non, je vois pas trop... Dsol. + + + Ben, ce dont je suis sr, c'est qu'il n'y a pas de chemin direct partir de Zaton. Tous ceux qui veulent aller Pripyat se dirigent d'abord vers Jupiter, en gnral, alors il doit bien y avoir un truc... + + + Ben, la rumeur veut qu'il y ait un passage secret qui mne Pripyat sous l'usine de Jupiter... Le hic, c'est que cette histoire ne sort jamais avant la deuxime tourne et que Jupiter est un tel enfer que personne ose s'en approcher. + + + Alors, l, aucune ide ! T'aurais pas des questions plus faciles ? Tout ce que je peux te dire, c'est que tu ferais mieux d'aller causer Pilote, c'est le seul qui pourra t'aider. + + + Ha, si je connaissais le chemin de Pripyat, je resterais pas ici ! Pourquoi tu crois que je suis venu au centre de la Zone ? Pripyat regorge d'artefacts ! Celui qui y arrivera en premier se fera des couilles en or ! + + + Je cherche quelqu'un qui serait prt tenter d'atteindre Pripyat. + + + Je crois pas que tu trouveras qui que ce soit par ici. Tous ceux qui voulaient s'approcher du centre de la Zone sont dj partis pour Jupiter. Tu devrais aller l-bas pour te renseigner. + + + T'as entendu parler du militaire qui squatte chez les scientifiques ? Je me dis qu'il doit pas avoir grand-chose perdre te suivre... Les grosses ttes vont pas partir de sitt et il peut pas retourner au Cordon tout seul, alors il est peut-tre assez dsespr pour vouloir t'accompagner Pripyat. + + + Tu connais Vano, de la gare de Yanov ? C'est un mec rglo et un bon stalker. Il se dbrouille mieux avec les anomalies qu'avec les gens, si tu vois ce que je veux dire... Tout le monde a tendance profiter de lui. + + + Tu sais, j'ai entendu dire qu'un groupe avait t repr prs du lac assch au sud du complexe AA... C'tait pas des stalkers normaux, ni la Libert ou le Devoir, mais des combattants du Monolithe ! Alors, si tu cherches des gars pour aller Pripyat, t'auras du mal trouver mieux ! H h, t'as compris que je plaisantais, hein ? + + + Tu connais Arpenteur, le chef de la nouvelle unit de la Libert ? Si tu voyais sa tronche, tu te rendrais compte que Yanov, c'est bien trop tranquille pour lui. Tu devrais lui parler, il a besoin d'action, ce gars-l. + + + Tu connais Arpenteur, le chef de la nouvelle unit du Devoir ? Si tu voyais sa tronche, tu te rendrais compte que Yanov, c'est bien trop tranquille pour lui. Tu devrais lui parler, il a besoin d'action, ce gars-l. + + + Hum... Non, je vois vraiment pas. + + + J'ai trouv une arme trange. Qui saurait me dire de quoi il s'agit exactement ? + + + Alors l, vaut mieux demander aux experts... Tu sais, les techniciens... + + + a peut pas faire de mal de demander Cardan, sur le Skadovsk. Il vend des armes et il est plutt dou... Il lui reste peut-tre mme quelques neurones malgr la bibine... + + + Qui pourrais-je recruter pour faire des relevs pour les scientifiques ? + + + Tu connais Gonta le chasseur ? Je me dis que ses gars et lui seraient srement d'accord pour bosser avec les scientifiques. Je veux dire, s'ils ont des problmes de mutants, ces gars sont exactement ce qu'il leur faut. + + + T'as entendu parler de Grizzly, Torba et Mitay, les stalkers de Yanov ? Ils bossent ensemble et ils se dbrouillent comme des chefs ! Ils seront parfaits pour ce boulot... si Mitay arrive se tenir carreau pour une fois. + + + Aucune ide... On a dj assez de problmes par ici. + + + J'ai trouv un artefact trs trange. Qui serait susceptible de me l'acheter ? + + + Je vois pas. Les gens d'ici cherchent les grands classiques. Va plutt faire un tour Zaton, c'est plus prs de l'extrieur, on sait jamais. + + + Moi, je le montrerais au Barbu, le barman du Skadovsk. Parat qu'il bosse avec des collectionneurs de l'extrieur qui sont toujours intresss par les trucs nouveaux. + + + J'ai trouv un nid de sangsues pas loin d'ici. Qu'est-ce qu'on doit faire ? + + + Putain, faut que t'ailles en parler au Barbu, sur le Skadovsk... Parce que si on s'en occupe pas, elles vont tous nous bouffer ! + + + Ok, oublie a. + + + O est le camp de stalkers le plus proche ? + + + T'es con ou quoi ? J'y connais rien en camps de stalkers, mais le camp le plus proche d'ici, c'est le Skadovsk. Je vais te refiler les coordonnes. + + + O est le camp de stalkers le plus proche ? + + + J'envoie les coordonnes sur ton PDA... Il n'y a que le Skadovsk dans les parages. + + + la prochaine ! + + + J'ai entendu dire qu'il y en avait plusieurs qui s'taient crass... Mais je n'ai pas de dtails, je ne m'intresse pas trop aux rumeurs. Dsol... + + + J'ai d'autres chats fouetter... Je veux dire, je me doute que s'craser en hlicoptre, a doit faire un mal de chien, mais, en dehors de a, je vois pas quoi dire... + + + De quoi tu causes ? Faudrait fumer de sacrs trucs pour voir un hlico dans les parages, vu que les vrais ont pas vraiment grand-chose y foutre ! + + + Hein ? Nan, je m'intresse pas trop ce genre de truc... a cadre pas vraiment avec ma mission de dissmination des connaissances, si tu vois ce que je veux dire... + + + Notre patrouille les a observs en train de descendre, mais seul le lieutenant-colonel est au courant de tous les dtails. Moi, je n'ai pas vraiment besoin d'en savoir plus. + + + O est-ce que je peux trouver une combinaison quipe d'un module respiratoire en circuit ferm ? + + + Je ne sais pas trop, mais l'argent fait parfois des miracles quand on sait o l'investir. Il vaut mieux en parler Allegro... Si vous parvenez tomber d'accord, il se dbrouillera pour en rcuprer une. J'espre que a marchera... a me fera des vacances quand il sera parti. + + + J'ai une tte savoir ce genre de truc ? a ne fait pas si longtemps que je suis ici aprs tout... Tu devrais demander Zaton, nos frres y ont leur propre rseau. + + + Pas la moindre ide... Pourquoi ? Tu comptes sauter pieds joints dans une anomalie ? Si tu trouves des artefacts, fais-nous signe, on viendra tout de suite... pour te fliciter d'avoir fait notre boulot, ah ah ah ! + + + O est-ce que je peux trouver une combinaison quipe d'un module respiratoire en circuit ferm ? + + + Comment je saurais a, moi ? Quoi que... il y a un mec sur le Skadovsk... Il parat qu'il peut dgoter des trucs pas possibles. Il squatte le pont suprieur, en gnral, et il s'appelle Allegro. + + + Y a personne qui risque de venir jusqu'ici avec une combinaison de rechange pareille... Il vaudrait mieux aller voir du ct de Zaton, c'est plus prs de la civilisation. + + + Je n'en ai pas la moindre ide... Des combinaisons comme a, mme les membres du Devoir n'en ont pas tous. Ils ne les donnent qu'aux soldats qui se sont distingus au combat ou qui participent des oprations dans des zones hautement anormales. + + + O est-ce que je peux trouver une combinaison quipe d'un module respiratoire en circuit ferm ? + + + J'ai entendu des indpendants parler d'un mec qui a le bras long, un certain Allegro, je crois. Apparemment, il peut trouver n'importe quoi, des armes, du matos, ce genre de truc... Pas de came, par contre. Il trane sur le Skadovsk. + + + Bonne question, mon pote... On a pas ce genre de truc dans la Libert... Tu devrais demander aux stalkers de Zaton, il y aura peut-tre quelqu'un qui pourra t'en procurer une l-bas. + + + Et quoi te servirait cette merde ? Si a sert rien au combat, a sert rien... Remarque... peut-tre que a peut servir quand mme. Plus facile de respirer et le soleil te fait plus chier... Hum... Pas con... H, tu saurais o je pourrais en trouver une ? + + + O est-ce que je peux trouver une combinaison quipe d'un module respiratoire en circuit ferm ? + + + mon avis, Allegro, sur le troisime pont du Skadovsk, doit pouvoir en trouver une. Ce mec pourrait trouver de la neige en plein dsert... Mais tout a un prix avec lui... + + + Laisse-moi rflchir... Il y avait un mec plein de ressources Zaton, Allegro qu'il s'appelait... Vois s'il est encore l ! Je me souviens qu'il tait spcialis en matos haut de gamme. + + + H, a se trouve pas sous le sabot d'un cheval, ce genre de trucs... Les combinaisons comme a, y en a pas plus d'une poigne dans la Zone... T'auras de la chance si t'en trouves une d'occasion ! + + + Au revoir. + + + Au revoir. + + + plus tard ! + + diff --git a/gamedata/configs/text/fra/st_dialogs_jupiter.xml b/gamedata/configs/text/fra/st_dialogs_jupiter.xml new file mode 100644 index 0000000..06532fb --- /dev/null +++ b/gamedata/configs/text/fra/st_dialogs_jupiter.xml @@ -0,0 +1,3885 @@ + + + + Qu'est-ce que tu veux ? + + + Je dois parler Jack. a concerne la dette de Vano. + + + Vas-y, je t'coute. + + + Ok. + + + Je me balade, c'est tout. + + + On est pas dans un jardin public, mon gars. Fous le camp ! + + + Qui aurait pu voler des affaires dans une cantine personnelle ? + + + J'ai mon propre merdier grer... C'est pas mon matos que je risque de perdre, moi, c'est la vie... + + + Vol, tromperie... On est tomb bien bas. J'ai vu personne, moi, et je suis sr que le responsable est dj loin. + + + Allez, on va voir Zulu. + + + T'as raison. On devrait aller voir l'Hawaen, histoire que je puisse racheter ma combinaison. + + + C'est parti. + + + Bonne ide, mais j'ai moyennement envie de me retrouver comme un con au beau milieu d'une mission. On va attendre un peu. + + + On va avoir besoin d'une combinaison avec un module respiratoire en circuit ferm pour aller Pripyat. + + + C'est trop con ! J'en avais un sur ma combinaison ! Je pouvais mettre la tte dans un four et respirer sans problme. Mais je l'ai mise au clou chez l'Hawaen... Si seulement j'avais 5 000 billets, je pourrais la racheter... Mais je suis sec ! + + + Je pourrais te donner l'argent pour la combinaison. + + + Vraiment ? T'es srieux ? + + + Tiens, voil tes 5000 billets. + + + Tu me sauves la vie, mon pote. Tu peux compter sur moi quand tu veux ! + + + Je te donnerais bien l'argent, mais je n'en ai pas autant sur moi. + + + a arrive mme aux meilleurs, mon pote... J'en sais quelque chose, crois-moi ! + + + Je vais y rflchir. + + + Bien sr... C'est ton fric, aprs tout. + + + Alors, tu vas me le filer, ce pognon, ou pas ? + + + Je suis en train de monter une quipe pour aller Pripyat. Tu veux en tre ? + + + Tu m'as aid, c'est normal que je te rende la pareille ! + + + J'aimerais bien, mais je peux pas partir tant que je trane cette dette. Ce serait pas honnte et si jamais on tombe sur eux en chemin, ils m'abattront comme un chien. Ces enfoirs se foutent bien de savoir qui ils tuent... + + + Alors, prt aller Pripyat ? + + + Carrment ! + + + Eh bien, entre ! Qu'est-ce que tu veux ? + + + T'as rembours la dette, alors maintenant, tire-toi ! + + + Ces mecs taient de vrais salopards, et arrogants en plus ! J'ai t oblig de les faire taire... + + + J'ai pay, ta dette est efface. + + + Gnial ! Merci ! J'oublierai jamais ce que t'as fait pour moi ! + + + Ils m'ont aussi fait payer les intrts... + + + a craint... mais ils m'auraient fait payer encore plus cher, crois-moi... Merci pour ton aide ! Je l'oublierai pas. + + + Je ne suis pas encore all les voir. + + + Grouille-toi avant qu'ils te fassent cracher encore plus ! + + + Je suis all les voir, mais ils ont rclam des intrts... + + + Ils sont compltement tars ! J'ai dj eu du mal rassembler cet argent... Tu pourrais pas m'aider les convaincre de tirer un trait sur les intrts ? T'auras besoin d'une bonne arme... Va falloir employer la manire forte. + + + C'tait quoi, cette histoire de dette, dj ? + + + Eh bien... Ma combinaison commenait se faire vieille, donc je me suis dit qu'il tait temps d'en changer. Et l, paf, je suis tomb sur une combinaison flambant neuve... Elle tait quipe d'un module respiratoire en circuit ferm et tout le toutim... Mais mme en raclant les fonds de tiroir, j'avais pas de quoi me la payer. C'est l que le vendeur m'a dit de pas m'inquiter, que je pourrai lui filer la diffrence plus tard. Je me suis dit que c'tait un mec vraiment cool. + + + Et qu'est-ce qui s'est pass ? + + + J'ai vendu ma vieille combinaison et j'ai fil tout mon fric Jack, le vendeur. C'est l qu'il m'a parl des intrts. Je me suis dit qu'il avait raison, que c'tait normal, alors j'ai rcupr un peu plus d'argent et je le lui ai fil. Mais il m'a expliqu que le temps que je lui rembourse ces intrts-l, d'autres s'taient accumuls... Je me suis retrouv compltement dbord et j'ai d mettre ma nouvelle combinaison et mes armes au clou... + + + Et qu'est-ce que tu comptes faire ? + + + Je veux lui filer l'argent que j'ai gagn et rgler ma dette. Y a rien de plus important que ma rputation ! Vano, il rgle toujours ses dettes ! Mais j'ai la trouille... Tu pourrais aller voir Jack ma place pour lui filer le fric ? + + + D'accord. + + + Mais quand t'iras le voir, oublie pas de sortir la grosse artillerie, hein ! Montre-lui qu'il vaut mieux pas te chercher et il te respectera un minimum... + + + Je me dbrouillerai. + + + Je suis trop occup pour l'instant. + + + J'en ai assez. + + + Alors, tu peux aller voir Jack et rembourser ma dette ma place ? + + + Attends, attends, tire pas ! Je vais payer ! Oh, pardon, je t'ai pris pour quelqu'un d'autre... + + + Comment a s'est pass avec les bandits ? + + + H ! Je suis content de te voir ! + + + Salut ! + + + Tiens, tiens, on a de la visite... Un stalker qui veut discuter avec Shishak... T'es venu avec des cadeaux ou tu viens causer boulot ? Allez, crache le morceau ! + + + Je pensais pas que tu reviendrais... Alors, qu'est-ce que tu m'apportes ? + + + J'ai rien ajouter, stalker. + + + Qu'est-ce que tu veux ? T'en as marre de traner ton butin ? On peut te dbarrasser, si tu veux... + + + Il faut que je parle votre chef. + + + Ben voyons, j'ai pas le temps pour ces conneries. Barre-toi ! Grouille-toi ou je demande mon pote le fusil pompe de te montrer le chemin ! + + + Ok, ok, c'est bon, je pars. + + + Je suis venu pour le stalker qui est retenu prisonnier. Je veux voir votre chef. + + + Humm... Ok. Mais fais gaffe, au moindre geste suspect, on te colle une balle entre les deux yeux ! Avance tout droit et aprs, passe entre les conteneurs. Pig ? + + + Oui. + + + Je ne faisais que passer, je ne suis plus l. + + + Je suis venu pour le stalker qui est retenu prisonnier. Je veux voir votre chef. + + + Qu'est-ce que tu veux d'autre ? Barre-toi ! + + + Ok... + + + T'es venu jusqu'ici pour m'insulter, espce d'abruti ? T'as apport assez de fric pour ton tocard de pote, mais t'as rien pour payer le droit de passage ! C'est trs pas malin, a... + + + De combien on parle au juste, sachant qu'il faut que j'aille jusqu' la base ? + + + T'es vraiment un marrant ! On est pas dans un bordel ici ! On a pas de liste de prix ! Vide tes poches, connard ! + + + Ok, voil. + + + C'est bon, je m'en vais. + + + Quoi ? Tu veux me prendre tout mon butin ? Hors de question ! + + + J'ai pay la ranon, il n'y a rien d'autre dire. + + + Ok, stalker, on a mrit notre paie. Il est temps d'y aller ! + + + Merci, les gars. la prochaine ! + + + Deux secondes.... D'autres bandits se planquent peut-tre dans le coin ! + + + Il est temps d'y aller ! Le gamin s'en est pas sorti, mais on a fait ce qu'on a pu... + + + Attends, on a pas encore fini ! + + + C'est bon ! + + + Viens Pripyat avec moi ! + + + Je ferais mieux de rester ici pour le moment, histoire de m'assurer que Mitay s'attire pas d'autres ennuis. + + + H, stalker ! Merci d'avoir sorti Mitay du ptrin ! On tait sur le point de prendre les armes pour aller le sauver... Tiens, prends a en guise de remerciement ! + + + H, stalker ! Merci d'avoir sorti Mitay du ptrin ! T'es incroyable... Tu t'es dbarrass de tous ces bandits toi tout seul ! Tiens, prends a en guise de remerciement ! + + + H, stalker ! Merci d'avoir sorti Mitay du ptrin ! Franchement, je pensais pas que payer cette ranon servirait quelque chose... Tu dois avoir besoin d'un peu de fric, alors prends a ! On t'est tous trs reconnaissants. + + + H, stalker ! Merci d'avoir sorti Mitay du ptrin ! J'avais raison depuis le dbut ! Faut jamais cder face aux bandits ! Faut leur mettre la pression... Et a, tu sais y faire, toi. Tiens, prends a ! C'est pas grand-chose, mais sache qu'on t'est tous trs reconnaissants ! + + + Alors, comment a s'est pass pour la ranon ? + + + J'y travaille ! + + + Quoi de neuf ? Quand est-ce que tu comptes leur mettre la pression, ces bandits ? + + + Bientt. + + + T'as chang d'avis ou t'as du mal t'occuper de ces mecs ? Fais ce que t'as faire, mais dpche-toi, hein ! On voudrait pas qu'ils perdent patience et qu'ils descendent Mitay ! + + + Je vais m'en occuper. Tout se passera bien. + + + a fait chaud au cur de voir un pro comme toi, stalker ! + + + On a perdu un mec bien... Pauvre Mitay... On a pas russi le sauver. Tu parles d'une bande d'amis... + + + Qu'est-ce qu'on y peut ? + + + Viens Pripyat avec moi ! + + + Je ne suis venu pour que pour tenir compagnie mes amis, je ne vais pas les abandonner. + + + H, merci pour Mitay... On tait sur le point d'aller payer la ranon. On peut dire que tout est bien qui finit bien ! + + + H, merci pour Mitay... Comment as-tu russi les convaincre ? Tu as encore pas mal de choses m'apprendre, on dirait... + + + H, merci pour Mitay... J'avais raison, n'est-ce pas ? Il n'y a rien de tel qu'une bonne ngociation ! + + + H, merci pour Mitay... Je reste convaincu qu'il aurait fallu ngocier, mais ce qui compte, c'est que tout se soit bien termin. + + + Je ne suis pas d'humeur te parler, alors laisse-moi ! + + + Ok, inutile de s'nerver ! + + + Bonjour monsieur l'expert ! + + + Pauvre Mitay... Ce n'tait qu'un gamin... Il avait toute la vie devant lui... + + + Qu'est-ce qu'on y peut ? + + + Parfait, tout le monde est l ! Grizzly m'a parl de toi... Bon, le plan est on ne peut plus simple : les gars se mettent en position autour du primtre et je dgomme de la sentinelle depuis ma position. Ce sera le signal pour lancer l'assaut. Tche de te souvenir de nos positions et suis ton instinct ! Je suis sr que tu sais ce que tu as faire... Prt ? + + + Je tcherai de m'en souvenir. On y va ! + + + Attends, laisse-moi y rflchir ! + + + a te dirait d'aller Pripyat avec moi, Mitay ? + + + Les scientifiques embauchent en ce moment, a te dirait d'aller travailler pour eux ? + + + Quel genre de boulot ? + + + Protger leur bunker. + + + J'ai eu ma dose d'aventure avec les bandits. Je crois que je vais rester ici et me la couler douce. + + + Effectuer des relevs dans les anomalies. + + + Humm... Intressant. J'ai dj eu l'occasion de bosser pour les scientifiques... C'est d'accord ! Grizzly, Torba et moi, on va aller au bunker. + + + Raconte-moi comment tu t'es fait capturer ! + + + Oh la honte ! C'tait ma faute, en fait. Les bandits m'avaient prvenu, mais voil... Ils voulaient chourer une partie de mon butin, et a, c'tait hors de question ! La Zone appartient personne ! Pourquoi je devrais les payer ? + + + Les gars et moi, on leur a dit d'aller se faire mettre et ils nous ont laisss peinards pendant quelque temps. Mais ils sont plutt malins, ces mecs-l... Ils m'ont tendu un pige. Ils ont attendu que je sois assez con pour aller chercher des artefacts tout seul, ils m'ont saut dessus et m'ont menott avant mme que je puisse dgainer mon flingue... Voil en gros ce qui s'est pass. + + + Merci d'avoir pay ma ranon ! Je l'oublierai pas ! + + + Merci de m'avoir libr, stalker ! Je l'oublierai pas ! + + + Merci d'avoir aid payer ma ranon ! + + + Merci d'avoir aid me librer, stalker ! + + + Merci pour ton aide, stalker... Mes potes te fileront une rcompense quand on sera rentrs, je peux te l'assurer. Allez, on retourne la base ensemble, a ira plus vite ! + + + C'est parti ! + + + Vas-y, je te rejoindrai plus tard. J'ai des affaires rgler ici. + + + J'ai bien cru que j'allais y rester... Grizzly et Torba ont vraiment recrut tous ces mecs ? C'est dingue ! C'est la premire fois que je vois a ! Bon, on peut y aller maintenant ? + + + Attends ! Il y a peut-tre d'autres bandits dans le coin. + + + Oui. On y va. + + + J'ai bien cru que j'allais y rester... T'as fait la peau tous ces mecs ? T'es trop fort ! Personne me croira quand je vais raconter a... Bon, on peut y aller maintenant ? + + + Attends... Il reste peut-tre quelqu'un d'autre dans le coin. + + + Oui. Tirons-nous vite d'ici ! + + + Merci, stalker ! Allez, on se tire avant que les bandits changent d'avis ! + + + Ok, on y va ! + + + Faut qu'on se tire d'ici, et vite ! + + + On peut pas cder des bandits. Il va falloir employer la manire forte ! + + + Je suis bien d'accord ! Je connais des gars qui seraient prts filer un coup de main... On te paiera aussi si le travail d'quipe te drange pas. + + + Je suis prt. + + + Parfait ! Je connais des stalkers qui faisaient partie d'une unit d'intervention de la police. Faudra les rejoindre un point de rendez-vous aprs 1 heure du mat'. Ils t'attendront sur place. + + + Ok. + + + Torba a raison. Ce serait trop risqu de dclencher les hostilits alors qu'ils retiennent Mitay en otage. Il faut ngocier. + + + Ouais, vous avez srement raison... Le seul problme, c'est que si Torba ou moi, on y va, les bandits nous laisseront pas repartir, vu qu'on a refus de suivre leurs rgles. Ils ont menac de nous enterrer vivants s'ils nous revoyaient... Tu pourrais peut-tre nous servir de ngociateur... + + + Aucun problme, je m'en occupe. Il me faut juste l'artefact. + + + Sois prudent ! + + + Tout se passera bien. + + + On peut en discuter jusqu' la fin des temps... Le fait est que la russite de cette mission dpend de la personne qui est aux commandes. Je vais m'occuper de ces salopards moi-mme. + + + Alors l, je m'attendais pas a... Bonne chance ! + + + Je serai vite de retour. + + + Je suis d'accord, mais j'ai besoin de plus de temps. + + + Stalker, tu pourrais nous aider sortir notre pote Mitay du ptrin ? + + + Qu'est-ce qui s'est pass ? + + + Mitay est dans la mouise jusqu'au cou... Les bandits ont exig de tous les stalkers qu'ils leur filent une partie de leurs artefacts. Nous, on les a envoys chier, parce que les stalkers, ils doivent rien personne, et on a cru que a s'arrterait l... Mais ils ont tendu une embuscade Mitay alors qu'il tait parti tout seul chercher des artefacts. Ils l'ont enlev et maintenant, ils veulent qu'on leur paye une ranon. + + + Qu'est-ce que vous comptez faire ? + + + Torba pense qu'on pourrait leur filer un artefact en change... Moi, je dis que dalle ! Si on fait a, a veut dire qu'ils ont gagn ! On devrait plutt vendre l'artefact, recruter une bonne quipe et attaquer leur base. + + + On rglera a plus tard. + + + Alors, tu vas nous aider sauver Mitay ? Torba est toujours convaincu qu'il faut leur filer un artefact et moi, je maintiens qu'on ferait mieux d'attaquer leur base. Mais pour a, faudrait qu'on vende l'artefact en question et qu'on recrute quelques mecs... On a toujours pas pris de dcision. + + + T'es prt ? On va te confier l'artefact changer contre Mitay et on t'attendra au bar. + + + Alors, t'es all voir les bandits ? + + + Non, pas encore, je me prpare. + + + Ouais, mais a n'a servi rien. Je vous tiens au courant ds que la situation est plus claire. + + + J'ai trouv un artefact quand j'tais dans l'Oasis y a pas longtemps. a t'intresse ? + + + Tu crois quand mme pas que je vais avaler a, si ? L'Oasis, tout le monde en parle, mais personne y est jamais all ! Le prends pas mal, mais va raconter tes bobards d'autres ! + + + J'ai des documents provenant de l'usine de Jupiter. + + + D'accord, prenez-les tous ! + + + D'accord, prenez les ordres d'vacuation ! + + + D'accord, prenez les comptes-rendus ! + + + D'accord prenez le planning de livraison ! + + + D'accord, prenez le message de l'atelier de rparation ! + + + Peut-tre une autre fois. + + + Qui aurait pu voler des affaires dans une cantine personnelle ? + + + Aucun de mes hommes, a, c'est sr... Peut-tre un des types de la Libert. Si nous avions le contrle de Yanov, ce genre de choses n'arriverait pas. + + + J'aimerais en savoir plus sur le Devoir. + + + Savoir quoi exactement ? + + + Qu'est-ce que vous faites ici ? + + + Ce que nous avons toujours fait : protger les stalkers contre toutes les vermines des environs. C'est fou le nombre de mutants qu'il y a par ici ! Et ils sont vraiment plus coriaces que les petites boules de poil du Cordon. J'ai mme vu une chimre la nuit dernire. Il faisait trop sombre, alors nous l'avons laisse partir... Si seulement les mutants taient notre seul problme ! Mais non, nous devons galement mener des enqutes et recueillir des preuves dans les laboratoires abandonns avant que ces abrutis de la Libert ne les rcuprent ! + + + Qu'est-ce qui vous a amen au centre de la Zone ? + + + C'est une blague ? Pourquoi on est venus ici ? Mais pour la mme raison que les autres, enfin ! Le centre de la Zone a toujours t inaccessible, un endroit o l'on esprait trouver des rponses toutes nos questions. Nous voulions savoir comment la Zone avait t cre, et comment la dtruire. C'est pour cette raison que ds que le Lobotomisateur a t dsactiv, nous sommes tous venus ici. + + + Qu'est-ce que vous avez dcouvert ? + + + Beaucoup de choses, mais c'est class top secret. Tout ce que je peux dire, c'est que la Zone a encore de nombreux secrets. Certains des ntres pensent que c'est une tumeur qu'il faut radiquer tout prix. Pour ma part, je pense que la Zone est un organisme vivant et que nous ne sommes rien de plus que des parasites minuscules. Mme si toutes les armes du monde unissaient leurs forces, elles ne pourraient rien contre la Zone. C'est pour cela qu'il faut tre plus malin : nous devons dcouvrir pourquoi la Zone existe et la dtruire. + + + Et si ce n'est pas possible ? + + + Nous devrons trouver une autre solution, mais tout espoir n'est pas perdu. Nous devons faire notre devoir et rester optimistes ! + + + Pourquoi avoir rejoint la faction du Devoir ? + + + C'est une histoire ennuyeuse qui n'a rien de trs hroque. Ds que la Zone est apparue, mon ami Lenya et moi avons dcid de venir ici pour voir a de nos yeux. J'tais sur le terrain l'poque et Lenya travaillait dans le renseignement. On n'tait pas des bleus, mais on a quand mme fini dans un sacr merdier. On a d ramper pendant des heures, grivement blesss, avant d'tre rcuprs par le Devoir. Je m'en suis sorti, contrairement Lenya. Je ne connaissais personne dans la Zone, alors j'ai dcid de rester ici, avec le Devoir. Et depuis, j'ai quelques comptes rgler avec la Zone. + + + Quelles sont les relations entre le Devoir et la Libert ? + + + Officiellement, nous sommes en guerre, mais le centre de la Zone fait exception la rgle. Il n'y a pas beaucoup d'endroits srs par ici et ni la Libert, ni le Devoir ne peut se permettre de perdre des hommes. a ne servirait rien de s'entretuer. La rgle tacite est la suivante : on ne se mle pas des affaires des autres. Mais cela ne vaut qu' Yanov... Ailleurs, c'est la guerre ouverte ! + + + Ok, oublions a ! + + + Oh... Ok. + + + Je voudrais parler un membre de la Libert nomm Flint. + + + Je me fiche des mecs de la Libert tant qu'ils ne s'approchent pas de nous ! + + + Flint, qu'on appelle aussi la Pie, a tendu une embuscade des stalkers qui chassaient Zaton. Il leur a vol tout le butin avant de s'enfuir. + + + a ne me surprend pas... Les mecs de la Libert sont tous des petites ordures ! + + + Ce n'est pas tout : je suis tomb sur un stalker dans la carrire. Avant de mourir, il m'a dit que Flint l'avait abandonn dans une anomalie, lui avait pris son butin et s'tait enfui sans demander son reste. + + + Ouais, les stalkers n'oublient pas ce genre de chose... a ne passe pas, mme dans la Libert. Merci pour l'info ! On en fera bon usage. + + + J'ai rassembl des informations compromettantes son sujet. Cet abruti s'est soudain pris pour un vrai mec et s'est vant d'avoir fait des choses que j'avais faites, MOI ! + + + La rputation de la Libert va en prendre un coup. Merci pour l'info ! Nous en ferons bon usage... + + + On oublie a, ok ? + + + Si c'est comme a... + + + J'ai le PDA de votre intendant, Morgan. + + + Je suis d'accord. + + + Je vais y rflchir. + + + D'accord. + + + Ok. + + + Voyons voir... Alors comme a, cet enfoir faisait affaire avec l'ennemi et utilisait notre nom comme couverture... Si a venait se savoir, notre rputation en prendrait un sacr coup. Et si j'achetais ce PDA ? Je suis prt y mettre le prix. 4000, a irait ? + + + C'est une accusation srieuse. Je veux voir ce PDA. + + + Voil. + + + J'avais des doutes son sujet... mais maintenant, j'ai enfin des preuves. Merci, stalker ! J'espre que personne n'aura vent de cette conversation... D'ailleurs, a mrite une petite rcompense. Aprs tout, il en allait de la rputation du Devoir... + + + Je vais le garder pour l'instant. + + + Encore un... Trs intressant. Je l'ajoute au dossier. + + + Voil. + + + Merci ! Voici une modeste rcompense... + + + J'aimerais le garder en souvenir. + + + J'ai crois un group de combattants qui souhaitent rejoindre le Devoir. + + + Nous sommes toujours la recherche de nouvelles recrues. Ils devraient venir me voir, nous en discuterons. + + + Un petit dtail, cependant... Ce sont d'anciens combattants du Monolithe. + + + Comment a, des "anciens" combattants du Monolithe ? D'aprs mon exprience, les combattants du Monolithe se divisent en deux catgories : les vivants et les morts. Je n'ai jamais rencontr "d'anciens". + + + J'ai l'impression qu'ils taient sous le contrle de quelqu'un. Ils ne se rappellent pas ce qui leur est arriv aprs avoir quitt la centrale. Ils ne sont plus du tout agressifs, juste compltement perdus. + + + Bon, admettons, s'ils ne soient pas agressifs... C'est dj a. Je pourrais facilement leur trouver quelque chose faire et les mettre au pas vite fait. Mais ils ne m'inspirent pas vraiment confiance... Tu te portes garant pour eux ? + + + Oui. Je leur fais confiance. + + + Hum... Le problme, c'est que je ne vous fais pas confiance non plus... pas encore du moins. Dsol. + + + Ok, mais s'ils merdent, a se paiera. Le hic, c'est qu'ils ne pourront pas atteindre Yanov tout seuls. Vous allez devoir prendre mes hommes et les conduire jusqu'aux combattants du Monolithe. Si tout se passe bien entre eux, ils seront intgrs dans le Devoir. Faites-moi signe quand vous serez prt partir. + + + Non, je ne leur fais pas vraiment confiance. + + + On n'accepte pas n'importe qui dans notre faction. + + + Je suis prt mener les hommes du Devoir jusqu'aux combattants du Monolithe. + + + Bien. Je vais envoyer deux hommes. + + + Bien. + + + Il va falloir remettre a plus tard. + + + Une minute ! Il est hors de question que je demande mes hommes de sortir pendant une mission ! + + + J'ai trouv le PDA du fondateur du Devoir. + + + Voyons voir... Ah, voil donc ce qui s'est pass... Je ne pense pas que les autres aient besoin de voir a. Il vaudrait mieux que ce PDA disparaisse pour de bon. La lgende de la cration du Devoir doit rester intacte. Je pourrais l'acheter ? + + + Bien sr. + + + Merci. Voil une petite rcompense. + + + Je vais y rflchir. + + + Prenez le PDA du fondateur du Devoir. + + + Merci ! a m'te une sacre pine du pied. Voil la rcompense. + + + Les scientifiques ont besoin de combattants, le Devoir pourrait les aider ? + + + Nous sommes toujours prts aider les scientifiques. De quoi ont-ils besoin ? + + + Ils cherchent des hommes pour protger leur bunker. + + + Pas de problme, je vais leur envoyer quelques-uns de mes hommes. + + + Aucun problme, je vais leur envoyer quelques-uns de mes hommes. + + + J'aimerais pouvoir les aider, mais ils travaillent dj avec la Libert. Envoyer des hommes l-bas ne ferait que jeter de l'huile sur le feu. + + + J'ai prvu d'aller Pripyat. Quelques hommes du Devoir pourraient m'accompagner ? + + + Nous manquons dj assez d'effectif comme a ! Il vaudrait mieux en parler Arpenteur, j'ai l'impression qu'il ne se sent pas l'aise ici. Peut-tre qu'il prfrera partir pour Pripyat. + + + Nous manquons dj assez d'effectif comme a ! Hors de question que mes hommes partent pour une mission voue l'chec ! + + + Bon, je n'ai pas de temps perdre. Que se passe-t-il ? + + + J'coute. + + + Content de voir que a va toujours ! + + + J'ai des documents provenant de l'usine de Jupiter. + + + Je doute que ce soit vraiment intressant. L'usine a t pille bien avant l'arrive des stalkers. Quoi que... hum, il y a quelques bonnes infos, on dirait. J'aimerais les montrer quelqu'un. Je pourrais t'acheter a ? + + + Ok, prends-les tous ! + + + Ok, prends les ordres d'vacuation ! + + + Ok, prends les comptes-rendus ! + + + Ok, prends le planning de livraison ! + + + Ok, prends le message de l'atelier de rparation ! + + + Peut-tre une autre fois. + + + Qui aurait pu voler des affaires dans une cantine personnelle ? + + + C'est pas mon boulot de surveiller ta cantine ! Ce sont pas mes gars qui ont fait a, en tout cas, ils savent ce qu'ils risquent. + + + Parle-moi de la Libert ! + + + C'est une longue histoire. Qu'est-ce que tu veux savoir ? + + + Qu'est-ce que vous faites ici ? + + + On s'assure que les huiles cachent rien aux gens du peuple. Tu sais comment a se passe : ds qu'ils trouvent un nouveau labo ou des documents qui expliquent certains mystres de la Zone, ils lancent une opration militaire pour faire le mnage. La seule faon de dcouvrir quoi que ce soit est d'arriver avant tout le monde. + + + Qu'est-ce qui vous a amen au centre de la Zone ? + + + Eh bien, les gars avaient envie de se faire une petite balade tranquille... Je plaisante. C'est surtout l'occasion de voir des trucs que personne a jamais vu avant. Ni l'arme, ni les stalkers ne sont venus jusqu'ici, tout est encore vierge. + + + Vous avez trouv quelque chose ? + + + Des portes verrouilles et des artefacts tranges. + + + Comment as-tu rejoint la Libert ? + + + Eh bien, je connaissais les chefs de la Libert l'poque o la Zone existait pas encore. Enfin, personne tait chef l'poque, c'tait comme qui dirait la fte du slip ! Alors quand je suis arriv dans la Zone pour chercher des artefacts et que je suis tomb sur des ttes connues, je me suis dit qu'aprs tout, je pouvais rester eux. + + + Qu'est-ce que tu penses du Devoir ? + + + Ces mecs sont tous des tocards, voil ce que j'en pense ! Pourquoi ils tiennent autant dtruire la Zone, hein ? C'est pas comme si elle consommait des ressources ou qu'elle prenait de l'ampleur ! Ils pourraient se contenter de l'tudier sous toutes les coutures ! Imagine toutes les dcouvertes scientifiques qu'on pourrait faire... L'humanit a jamais russi comprendre les lois de l'antigravit, pas vrai ? Eh bien dans la Zone, il suffit de se pencher pour ramasser des trucs hyper sophistiqus ! a nous ferait des vacances si on les chassait d'ici coups de pieds au cul, mais c'est trop de boulot. D'ailleurs, te laisse avoir par la paix qui semble rgner Yanov... C'est juste une zone neutre, ailleurs, on est toujours en guerre. + + + Ok, oublie a. + + + Pas de problme. + + + Je voulais te parler d'un de tes stalkers. + + + Ah ouais ? Je t'coute... J'espre que t'es pas l pour cafter ! + + + Le stalker Flint est connu Zaton sous le nom de la Pie. Des stalkers du coin le cherchent pour rcuprer le butin qu'il leur a vol aprs leur avoir tendu une embuscade. + + + Et tu penses peut-tre que je vais te croire ? + + + Il suffit d'couter les histoires qu'il raconte au bar. Il a arnaqu ces stalkers et maintenant, c'est vous tous qu'il mne en bateau. + + + Ok, on se dtend. Je vais voir ce qu'il en est avec le Barbu. Si ce que tu racontes est vrai, on se chargera de Flint... notre faon. + + + Hum... Je me demandais comment il avait fait pour rcuprer cet artefact aussi rapidement. Faut croire que la moiti de son histoire tient pas la route... Je vais en parler mes gars. Si ce que tu dis est vrai, on s'occupera de lui... notre faon. + + + Oublie a ! + + + Ok. + + + Je suis d'accord. + + + Je vais y rflchir. + + + Fais comme chez toi ! + + + Ok. + + + J'ai crois des combattants qui veulent rejoindre la Libert. + + + On a toujours besoin de gens cool. Ils sont les bienvenus si a les tente. + + + Mais il y a un petit problme... Ce sont d'anciens combattants du Monolithe. + + + Un "petit" problme ? Je les tolre quand je les ai dans ma ligne de mire, mais il est hors de question de les grer au quotidien ! + + + Ceux-l sont inoffensifs. J'ai l'impression qu'ils taient sous le contrle de quelqu'un. Ils ne se rappellent pas ce qui leur est arriv aprs avoir quitt la centrale. Ils sont compltement perdus. + + + Dsol, mais je reste sceptique. Tu pourrais tout aussi bien me mentir. + + + Hum... J'imagine que je risque pas grand-chose leur parler et essayer de savoir ce qu'il en est. J'enverrai deux de mes gars pour t'accompagner. Si a se passe bien, j'accepterai de les intgrer dans la Libert. + + + Et si t'allais te faire foutre ? Tu croyais quand mme pas qu'on allait accepter n'importe qui ? Non, mais je rve ! + + + Je viens pour savoir si les membres du Monolithe peuvent intgrer la Libert. + + + Mes hommes sont prts. + + + Trs bien. Qu'ils me suivent, alors ! + + + On verra a plus tard. + + + On va attendre un peu. Les missions sont pas recommandes pour la sant... + + + J'ai trouv le PDA du fondateur du Devoir. a t'intresse ? + + + Seulement s'il contient des infos utiles... Ben a alors, j'en reviens pas ! Ils continuent faire de propagande la con dans toute la Zone, mais l'histoire de leur propre faction est un mensonge ! J'aimerais beaucoup lire tout a en dtail. Je peux t'en proposer un bon prix... + + + Il est toi. + + + Merci. Voil ton fric. + + + Je vais y rflchir. + + + Prends le PDA du fondateur du Devoir ! + + + Merci. Voil ton fric ! + + + Les scientifiques cherchent embaucher. Tu aurais du monde leur envoyer ? + + + a dpend de ce qu'il faut faire... + + + Ils cherchent des hommes pour protger leur bunker. + + + Pas de problme, je leur envoie quelques-uns de mes gars. + + + Pas de problme, je leur envoie quelques-uns de mes gars. + + + J'aimerais pouvoir leur filer un coup de main, mais le Devoir est dj sur place. On doit dj se coltiner ces enfoirs Yanov, alors je prfre passer, merci. + + + Tu pourrais me donner quelques hommes pour aller Pripyat ? + + + Parles-en avec le nouveau, Arpenteur. Il arrive pas se faire l'ambiance, peut-tre qu'il prfrera t'accompagner. + + + Si je pouvais me passer de qui que ce soit, a se saurait ! Dsol, mais on a dj assez faire comme a. + + + Alors, vas-y, crache le morceau ! + + + Qu'est-ce que tu fais ici ? + + + a fait plaisir de te voir, mon pote ! J'ai beaucoup entendu parler de toi, et en bien, crois-moi ! Qu'est-ce que je peux faire pour toi ? + + + J'ai trouv un objet trange dans le tunnel de la voie ferre. + + + Bof... C'est qu'une merde. On dirait un artefact bon pour la casse. D'habitude, on refourgue ce genre de truc aux scientifiques. + + + J'ai trouv un objet trange Zaton. a t'intresse ? + + + Je suis cens en faire quoi, de ce machin ? Je m'intresse dj pas des masses aux artefacts normaux, alors... Montre-le aux scientifiques, ils sont prts raquer pour ce genre de connerie. + + + Je cherche des hommes pour protger le bunker des scientifiques. Tu peux me conseiller quelqu'un ? + + + Y a pas mieux que les gars de la Libert ! Tu pourrais essayer de ngocier un truc avec les stalkers, mais ils sont pas vraiment dignes de confiance. a leur arrive de disparatre sans laisser de trace, alors imagine s'ils essayent de te rouler ? En tout cas, ta place, j'irais srement pas voir le Devoir. Ces fanatiques sont juste bons buter du mutant. + + + Je cherche des hommes capables de rcuprer des chantillons pour les scientifiques. Tu ne connatrais pas quelqu'un ? + + + Bien sr ! Va voir Loki, il pourra t'aider ! Tu pourrais aussi en parler aux stalkers, mais certains d'entre eux sont pas vraiment dignes de confiance. + + + Quelqu'un a vol certaines de mes affaires. Tu ne saurais pas qui aurait pu faire a ? + + + Tout part en couille dans le coin... Je doute que ce soit un mec du Devoir. Ils rigolent pas avec la discipline, ces gars-l. Vraiment pas... Et personne dans la Libert aurait besoin de ton bordel... Donc mon avis, c'est forcment un stalker. + + + Je suis tomb sur des combattants du Monolithe il y a quelque temps. + + + Ah ouais ? C'est dingue, a ! J'en ai jamais vu, moi ! Mais j'en ai entendu parler... On raconte des tas d'histoires pas possibles propos de ces gars... Apparemment, ils sont tous compltement tars... T'as d en voir des vertes et des pas mres ! + + + On ne s'est pas battu. Ils ne sont pas vraiment agressifs. Ils m'ont expliqu qu'un jour, ils ont eu l'impression de se rveiller d'un mauvais rve. Ils sont un peu perdus, c'est pour a que je cherche les faire entrer dans une faction. + + + Quelle histoire ! En tout cas, c'est mme pas la peine de penser aux stalkers, ils les descendraient direct... Parles-en plutt Loki ! Personne osera leur chercher des poux s'ils portent l'uniforme de la Libert. + + + Qui pourrait avoir intrt apprendre la vrit propos du fondateur du Devoir ? + + + J'en sais vraiment rien. Franchement, a dpend de la diffrence qu'il y a effectivement entre la vrit et les salades que nous raconte le Devoir. Montre a Loki, il saura te dire ce qu'il en est. + + + J'ai le PDA de l'intendant du Devoir. a t'intresse ? + + + Vraiment, mais alors vraiment pas ! Je sais exactement o me procurer tout ce qu'il vend pour beaucoup moins. Alors, tu vois, je m'en fous comme de ma premire chemise. + + + Qui pourrait venir Pripyat avec moi ? + + + Pripyat ? Rien que a ? J'aimerais bien tout laisser tomber et partir avec toi, mais je suis super occup, l... + + + Pripyat ? Rien que a ? Tu devrais demander Loki de te filer des renforts. mon avis, il pourra pas te refuser ce service. + + + T'es venu te dtendre un peu ? C'est pas ici que tu trouveras des cocktails de riches, mais je peux t'assurer que tu seras toujours le bienvenu ! + + + J'ai tout ce qu'il te faut. Qu'est-ce que tu cherches ? Un truc manger, boire ? Ou alors t'as la gchette qui te dmange ? + + + Je cherche des hommes pour protger le bunker des scientifiques. Tu sais qui a pourrait intresser ? + + + Va voir les Stalkers. Je suis sr que a leur ferait plaisir de bosser pour les intellos... Et si en plus, y a un permis officiel la cl... + + + Je cherche des hommes capables de rcuprer des chantillons pour les scientifiques. + + + Je te conseille d'viter de bosser avec des stalkers inexpriments. Ils ne trouveront rien et ils seraient bien capables de "perdre" des bouts, si tu vois ce que je veux dire... + + + Je suis tomb sur un groupe de combattants du Monolithe rcemment et j'ai une question te poser. + + + Tous ceux qui ont crois des combattants du Monolithe ont fini la morgue. Toi, en revanche, tu m'as l'air plutt en forme. Tu veux savoir quoi au juste ? + + + Ce groupe-l n'est pas comme les autres. Je n'ai pas eu les affronter, je leur ai simplement parl. + + + Sans dconner ? + + + Sans dconner. Ils m'ont dit que c'tait comme si le voile qu'ils avaient devant les yeux s'tait lev. Ils ne savent ni quoi faire ni o aller. Ils m'ont demand de les aider. + + + Eh ben, moi, je leur conseille de rester bonne distance des stalkers. Ils sont pas prs d'oublier ce que le Monolithe leur a fait et ils les abattraient sur-le-champ. Tu pourrais les aider rejoindre le Devoir ou la Libert, mais je ne sais pas si ces factions seraient prtes les accepter. + + + J'ai un PDA contenant la vrit propos du fondateur du Devoir. + + + Les ragots, c'est pas mon truc, tche de t'en souvenir. Si tu veux vendre des infos, va parler au Hibou, il adore ce genre de conneries. Mais tant donne la nature de ton info, Loki ou Shulga pourraient tre intresss, eux aussi. + + + J'ai le PDA de l'intendant du Devoir. a t'intresse ? + + + J'ai comme l'impression que ce PDA pourrait m'attirer des ennuis avec le Devoir et j'ai vraiment pas besoin de a. Va plutt voir le Hibou ! + + + J'ai besoin de soins mdicaux. + + + Voyons voir... + + + C'est mieux. + + + Qui pourrait venir Pripyat avec moi ? + + + Parles-en Vano, c'est un stalker. Des types honntes comme lui, on en fait plus. a lui joue mme des tours. + + + Les mecs du coin sont pas assez tars pour a, mon pote. Il va falloir que tu cherches ailleurs. + + + Tu cherches du matriel mdical ou tu es l pour causer ? + + + Quelqu'un a vol certaines de mes affaires. Tu ne saurais pas qui aurait pu faire a ? + + + Tu sais comment s'appelle ce stalker ? + + + Je crois qu'il est nouveau par ici... J'essaye de me souvenir de son nom... Delco ? Fiasco ?... Non. c'est pas a... Accroc ! Oui, c'est a. Il s'appelle Accroc. + + + Comment va ? + + + Il faut qu'on discute tous les deux. + + + Cool ! Si c'est vraiment important, je propose d'ouvrir une bouteille, histoire qu'on fasse a dans les rgles ! + + + a marche ! + + + Non, j'ai pas trop envie de boire. + + + Alors, de quoi tu veux me parler ? + + + Je compte aller Pripyat par le passage souterrain sous l'usine de Jupiter. Nitro peut ouvrir l'entre. + + + Hum... Aller Pripyat par le souterrain... C'est une ide... Je te ressers boire pour la peine ! + + + Sant ! + + + Mmm, a fait du bien par o a passe ! J'espre que tu comptes pas y aller tout seul... Je vais t'accompagner... mais il faudra trouver deux ou trois hommes de confiance.... a ne peut pas faire de mal... Surtout pour ce genre de priple... + + + Nitro m'a conseill de monter une quipe... + + + a me parat une bonne ide... Buvons un autre verre, la russite de cette mission ! + + + la ntre ! + + + Je peux me dbrouiller seul, tu sais... Zaton, j'ai pris d'assaut un nid de sangsues moi tout seul... Deux bidons d'essence et je peux me faire un sacr barbecue ! + + + Respect ! Levons nos verres aux bidons d'essence ! + + + la tienne ! + + + Des hommes de confiance ? Cet endroit est rempli de truands... J'ai rencontr un marchand Zaton qui tait en fait un mec du Devoir... + + + Alors, comme a, il y a quelque chose de pourri dans la faction du Devoir... Mais o va le monde ? Oh et puis, a sert rien de s'inquiter... Bois plutt un coup ! + + + Voil des paroles pleines de bon sens ! Sant ! + + + Mmm... pas mal, hein ? a me parat une bonne ide de former une quipe. Il nous faudrait au moins trois hommes... Tu as des noms en tte ? + + + Je trouverai des gars... On va aussi avoir besoin de combinaisons quipes de modules respiratoires en circuit ferm... + + + Oui, la scurit avant tout ! D'ailleurs, ce propos : t'inquite pas pour moi, ma combinaison est en parfait tat, mais il va falloir quiper les autres. a va srement demander un peu de temps. Ces combinaisons sont pas si faciles trouver. Trinquons la russite de notre expdition ! + + + Sant ! + + + Tu connais un type un peu trange du nom de Noah ? Il s'est enferm avec un tout un tas de matos... Il salue les gens coups de fusil pompe. + + + Ouais, mais a fait un bail que je l'ai plus vu. On bossait ensemble une poque. C'tait un sacr combattant... C'est vraiment dommage qu'il ait pt les plombs... Buvons sa sant mentale ! + + + Noah ! + + + J'ai crois Vano Yanov il y a quelque temps. Il devait pas mal d'argent aux bandits... Je l'ai aid rembourser sa dette... + + + Excellent, le voyage sera plus sympa avec lui et puis, il pourra transbahuter tout le matos. Vano ! + + + Je l'aurais pas mieux dit, mon frre ! + + + Il y a aussi le militaire du bunker des scientifiques... Il n'a rien faire, il pourrait tre de la partie... + + + Ouais, on pourrait avoir besoin d'un militaire... Buvons sa sant et esprons qu'il acceptera de nous accompagner ! + + + Au militaire ! + + + Tu ne vas jamais le croire, mais j'ai donn un coup de main un groupe de combattants du Monolithe l'autre jour... C'tait comme s'ils s'taient rveills d'un long cauchemar et qu'ils ne savaient pas quoi faire... Je leur ai trouv de quoi s'occuper. Ils se la coulent douce Yanov maintenant. + + + Ah ah, on dirait que cette vodka te monte la tte ! Mais bon, l'abus d'alcool est plutt recommand pour la sant par ici ! + + + C'est bien vrai. + + + Bon, on dirait qu'on a fait le tour... Le plus important, c'est de s'assurer qu'on se perde pas sous terre... + + + T'inquite, j'ai les plans. + + + Parfait ! Buvons la russite de notre mission ! + + + notre mission ! + + + Dtends-toi... J'ai trouv l'Oasis l'autre jour... La mme Oasis que personne avait jamais russi atteindre... + + + T'en as dans le futal, toi alors ! On trouvera le chemin pour Pripyat sans aucun problme avec toi dans l'quipe. Sant ! + + + Sant ! + + + Salut ! + + + Je crois qu'on est assez nombreux. On peut y aller. + + + T'es sr ? Une autre paire de bras pourrait tre utile. + + + Je suis sr. On y va ! + + + Tu as raison, il nous faut d'autres gens. + + + Excellent ! En avant, les gars ! + + + C'est parti ! + + + C'est bien d'avoir des combattants, mais il faut aussi que tu penses te protger. Il te faut une combinaison quipe d'un module respiratoire en circuit ferm... Hors de question que je trane ton cadavre ! Je suis dj assez charg avec mon flingue et mes munitions ! + + + J'ai tout ce qu'il faut. + + + On va attendre un peu. Les missions sont pas recommandes pour la sant. + + + O est-ce que je pourrais trouver des combattants pour notre petite quipe ? + + + Demande aux gars de Jupiter... Y a aucune chance pour que ceux qui connaissent Zaton veuillent aller Pripyat. On a besoin de gars qui ont rien perdre, qui acceptent de participer une mission vraiment pas gagne d'avance. T'aurais rencontr personne de ce genre ? Peut-tre quelqu'un qui te doit un service ? Ou un mec qui ne se serait pas encore vraiment pos... + + + On est assez nombreux comme a. Pas la peine de recruter une division entire... + + + Qu'est-ce que tu penses d'Arpenteur ? + + + Les combattants du Monolithe sont gnralement des fanatiques... Mais je sais rien des anciens membres. Arpenteur a l'air plutt calme, mais les apparences peuvent tre trompeuses. + + + Une arme du Monolithe ! Impressionnant ! O t'as dgot a ? + + + Elle faisait partie d'un lot. Je te prsente Arpenteur, un ancien combattant du Monolithe. + + + Je savais pas qu'on pouvait prendre sa retraite chez les mecs du Monolithe. Bah, on verra bien comment il se comportera quand on sera dans le feu de l'action. + + + Qu'est-ce que tu penses de Sokolov ? + + + Ce type a une combinaison intressante... a fait au moins deux ans que j'en avais pas vu des comme a. + + + C'est Sokolov, le copilote de l'hlicoptre militaire qui s'est cras. + + + Rien qu' le regarder marcher, on voit tout de suite que c'est pas un scientifique. On a toujours besoin d'un bon soldat ses cts. + + + Depuis combien de temps est-ce que tu connais Vano ? + + + On s'est croiss au bar des 100 Rads deux ou trois fois. Tout le monde dit qu'il est honnte, optimiste et que c'est un bon stalker... Mais il est beaucoup trop naf, et a, a pardonne pas dans la Zone. + + + Vano nous accompagne ? Excellent ! Il va pouvoir porter notre matos... Mais non, j'dconne ! Dtends-toi ! + + + Qui aurait pu voler des affaires dans une cantine personnelle ? + + + On t'a piqu des trucs ? a craint ! Je sais pas quoi te dire... J'ai rien vu de suspect dans le coin... Je te tiens au courant si je dcouvre quoi que ce soit. On a pas besoin de vermines dans notre base. + + + Il parat qu'il y a eu des changes de coups de feu dans les parages rcemment... + + + Ah ouais... C'tait moi ! Deux idiots ont voulu se retrouver prs de la tour... Ils ont commenc s'engueuler. Ils beuglaient tellement fort que j'ai fait intervenir ma bonne vieille mitrailleuse et ils ont couru se planquer vite fait. La runion au sommet a t interrompue, h h ! + + + J'ai dcid de vous remettre l'artefact de l'Oasis. + + + Sage dcision ! Donnez-le-moi, s'il vous plat ! + + + Tenez. + + + Magnifique ! Nous devons tudier ce petit bijou au plus vite... Au fait, merci ! Voici un petit ddommagement pour vos efforts. + + + Il vous fallait autre chose ? + + + Non merci, nous avons dj une quipe de stalkers qui travaille pour nous. Ceci dit... Il y a bien une certaine thorie ou plutt, une lgende... Vous avez dj entendu parler de l'Oasis ? + + + Je vais essayer de trouver l'Oasis. + + + Dsol, j'ai trop faire en ce moment. + + + Non, jamais entendu parler. + + + Dans ce cas, coutez-moi bien. Nombreux sont ceux qui en parlent, mais personne ne l'a jamais vue. On dit qu'on y trouve une eau miraculeuse, qui soigne les blessures et redonne de l'nergie. Les rumeurs circulent tout va et sont toutes plus dlirantes les unes que les autres. Certains disent mme l'avoir vue en rve... Mais en tant que scientifique, je me dois d'en savoir plus ! Si vous pouviez essayer de la trouver... Bon, je ne peux pas vous promettre une norme rcompense, mais si l'Oasis existe, nos recherches feraient une avance spectaculaire ! + + + Je sais o se trouve l'Oasis. + + + Vraiment ? Elle existe ? Je ne suis pas sceptique de nature, mais auriez-vous la preuve de son existence ? + + + Oui, j'y ai trouv quelque chose qui ressemble un artefact. + + + Donnez-le-moi, vite ! + + + Tenez ! + + + Magnifique ! Nous devons tudier ce petit bijou au plus vite... Au fait, merci. Voici un petit ddommagement... + + + Pas question, il pourrait m'tre utile. + + + Voil qui est extrmement goste... et dangereux ! On ignore tout des proprits de cet artefact. Que feriez-vous si vous vous retrouviez paralys du jour au lendemain ? Ou si vous changiez de couleur ? Je peux vous assurer que les scientifiques sont les mieux placs pour conserver ces objets. Nous prenons les prcautions qui s'imposent ! + + + Ce n'est pas a qui va me faire peur. Je garde cet artefact. + + + Ok, trs bien, prenez-le ! + + + Non, je n'ai rapport aucune preuve. + + + Vous n'avez rien ? Qu'est-ce que je vais pouvoir tudier alors ? Vous savez ce qui fait de nous des scientifiques ? Nous tayons nos thories avec des faits ! J'ai besoin de preuves ! + + + Trs bien, je vais y retourner. + + + J'y ai dj pass assez de temps comme a. Je ne vais pas y retourner dans l'immdiat. + + + Si l'argent ne compte pas vos yeux, pensez plutt aux dcouvertes mdicales que nous pourrions faire ! Si j'ai raison, l'Oasis est une anomalie... comme beaucoup d'autres choses dans la Zone. Mais si ses proprits sont vrifies, c'est la premire qui a le pouvoir de gurir ! + + + Qu'est-ce qui vous amne ici ? + + + Avez-vous vu les mercenaires qui gardaient notre bunker ? + + + Quel plaisir de rencontrer quelqu'un d'intelligent ! Que puis-je faire pour vous ? + + + C'est incroyable ! Les mercenaires qui nous protgeaient ont t tus deux pas de notre bunker ! + + + Hermann, que savez-vous au sujet de l'Oasis ? + + + L'Oasis ? Ah ah ! C'est un mensonge ! Les gens aiment croire qu'il existe un remde toutes les maladies, alors ils inventent des contes de fes ! L'Oasis n'est rien d'autre que le produit de l'imagination dbordante d'un pauvre type ! + + + Pourtant, de nombreuses personnes en parlent... + + + Trop mme... Mais personne ne s'y est rendu. Je suis un scientifique, et pour moi, tout ce qui n'a pas t prouv n'existe pas, un point, c'est tout. + + + Je vois... Merci. + + + Ok. Allez, on y va ! + + + Cool... On sera de retour avant que t'aies le temps de dire "sangsue" ! Haha ! + + + On verra. + + + Excellent... Mais on va attendre la fin de l'mission pour y aller. + + + Bonjour, stalker. Je suis Oncle Yar... J'ai l'impression que la route t'a puis... Mange un morceau, tant que t'es l ! Tu tombes bien, j'ai besoin d'aide. Il y a certaines choses que je ne peux plus faire mon ge. Quand j'tais jeune, en revanche... + + + Tu te sens mieux ? Tu es d'attaque pour une promenade ? Tu pourrais aider un vieil homme... + + + Comment va la vie ? T'as l'air d'aller de mieux en mieux... + + + Qu'est-ce qu'il faut faire ? + + + C'est on ne peut plus simple... Il suffit que tu m'accompagnes jusqu' Kopachy. C'est tout prs d'ici. Tu comprendras mieux quand on sera sur place... + + + Tes amis de la Libert ne veulent pas t'aider ? + + + Je veux pas les dranger avec a... On peut s'en occuper nous deux. C'est pas bien compliqu. + + + Tu viendrais Pripyat avec moi ? + + + Bof... Si j'tais plus jeune, peut-tre... J'avais l'habitude de faire des allers-retours jusqu'en Sibrie l'poque. Mais j'essaye d'conomiser mes forces maintenant... C'est moche de vieillir... + + + Prends soin de toi ! + + + Attends ! Si tu vas Yanov, peut-tre qu'on pourrait faire le chemin ensemble ? C'est toujours plus agrable d'avoir un peu de compagnie... + + + Merci, mais je prfre voyager seul. + + + Allons donc Yanov ! + + + Merci d'avoir aid un vieillard... Prends a ! Si tu as des questions, n'hsite pas. J'y rpondrai de mon mieux... + + + Pourquoi n'as-tu pas demand d'aide aux membres de la Libert ? + + + Quel est intrt de jeter de l'huile sur le feu entre les mercenaires et la Libert ? Une guerre nous suffit. C'est une affaire prive... J'avais aucune raison de les impliquer, tu comprends ? + + + Qu'est-ce qui s'est pass ici ? + + + Des types sont venus pour me tuer... J'tais cach dans les buissons, occup mes petites affaires, quand un groupe de mercenaires s'est point. Leur chef tait en train de gueuler dans son PDA propos d'un labo dans Pripyat, un ordre urgent, je ne sais trop quoi... Et moi, comme un con, j'ai fait du bruit, ce qui a attir leur attention... J'ai attrap mon fusil et j'ai pris mes jambes mon cou, mais j'ai comme le pressentiment qu'ils vont venir me chercher. C'est le prix payer pour avoir surpris une conversation top secrte... + + + Surtout il ne faut pas se laisser surprendre. Suis-moi en silence... Si on se devient invisible, tout se passera comme sur des roulettes ! + + + Ok. + + + Pas le temps de discuter, il faut qu'on file d'ici ! + + + Ok. + + + Je suis en train de monter une quipe pour aller Pripyat. Tu veux venir ? + + + Je suis tent... mais non merci. Les scientifiques m'ont promis un permis pour pouvoir rester dans la Zone et ils payent bien. Dsol, mais je bouge pas d'ici. + + + Prts pour aller faire des relevs dans les anomalies ? + + + On est toujours prts, tant que tu nous couvres. Quel genre d'anomalies on doit cibler ? + + + Direction la Tourbire, alors ! + + + On va passer le village de Kopachy pour atteindre le Tas de cendres. + + + Attends, j'ai chang d'avis. On va attendre un peu avant de partir. + + + On est prts, mais il vaudrait mieux attendre la fin de l'mission avant de partir... + + + Ok. + + + On a tout ce qu'il faut ! On bouge ! + + + Je ne tiens pas traner par ici non plus. O est-ce qu'on va maintenant ? + + + Direction la Tourbire ! + + + On va passer le village de Kopachy pour atteindre le Tas de cendres. + + + Retournons au bunker des scientifiques ! + + + Attends, laisse-moi rflchir. + + + Prts retourner au bunker ? + + + On est plus que prts... + + + Dans ce cas, allons-y ! + + + Ok, j'en ai pour une seconde... + + + J'ai quelques questions. + + + Je ferai de mon mieux pour y rpondre. + + + Je crois que c'est tout. + + + J'aimerais en savoir plus sur la mission des scientifiques. + + + Ah, le tunnel... il y a quelque chose l'intrieur, un artefact bizarre, je crois. Cet endroit est franchement inquitant. Je l'ai d'abord trouv trs calme et puis, j'ai senti quelque chose dans ma tte... et l'endroit grouille de hamsters, mais ils ne sont pas si dangereux que a. + + + Vous y tes dj alls ? + + + Oui, mais on n'est pas arrivs bien loin. On faisait des relevs pour Hermann quand les hamsters nous sont tombs dessus. Quand on est revenus, les scientifiques se sont tellement excits en voyant les rsultats que j'ai cru qu'ils allaient pter un cble ! Ils voulaient qu'on passe le tunnel au peigne fin, mais hors de question que j'y retourne ! Je veux bien te couvrir, mais c'est tout. + + + Je vois. + + + On a dj fait ce genre de boulot, donc a ne devrait pas poser problme. + + + O avez-vous fait des relevs ? + + + "Relevs" est un bien grand mot pour ce boulot... On n'a fait de vrais relevs qu'une seule fois, pour le champ psi anormal de ce foutu tunnel. Ds qu'on a mis les appareils en marche, les hamsters sont sortis de nulle part. Masse a bien failli y passer, d'ailleurs. + + + Tu n'as pas trouv a trange ? + + + Non, pourquoi ? Les curieux survivent pas longtemps dans la Zone, et c'est bien normal. C'est ce qu'Ozersky m'a dit un jour, et on peut dire que l'histoire lui a donn raison. Pose-lui toi-mme la question si a te chante ! Peut-tre qu'il sait des choses que tout le monde ignore. + + + Je comprends. + + + Je vois. + + + Qu'est-ce que tu peux me dire au sujet des gens qui vivent dans le bunker ? + + + C'est un sacr groupe, crois-moi... Il y a deux scientifiques, Ozersky et Hermann. C'est Hermann qui dirige les oprations. Novikov travaille pour eux, il s'occupe des dtails techniques. Garry leur sert de guide. Et nous, on a t embauchs pour faire des relevs et d'autres trucs scientifiques. Ah oui... Garry a amen un mec de l'arme dans le bunker l'autre jour. C'est tout. + + + Tu pourrais m'en dire plus sur Hermann ? + + + C'est lui le patron, ici. C'est un professeur de je-ne-sais-quel institut, probablement un truc ultra secret... Il a organis l'expdition et ils ont construit ce bunker aprs que le Lobotomisateur a t dsactiv. C'est lui qui a recrut Garry et notre petit groupe. Il paye bien et nous a mme promis un permis officiel. + + + Changeons de sujet ! + + + Tu pourrais m'en dire plus sur Ozersky ? + + + C'est un type sympa, le numro deux du bunker. Hermann semble quand mme couter ce qu'il a dire. Mais bon, je le connais pas si bien que a. C'est Hermann que j'ai affaire la plupart du temps. + + + Tu pourrais m'en dire plus sur Novikov ? + + + Ce mec, c'est Einstein, mais en plus cool ! C'est un vritable expert en installation de matriel technique. J'ai jamais rencontr quelqu'un d'aussi dou. Je sais pas comment il a fini ici, mais je pense qu'il connat bien la Zone. Il en sait plus que la plupart d'entre nous, en tout cas. + + + Tu pourrais m'en dire plus sur Garry ? + + + Garry, c'est un mec super et l'un des premiers tre venus ici. Il m'a racont qu'il est arriv en mme temps que les scientifiques, et qu'il les a rejoints tout de suite. Il s'ennuie un peu ces derniers temps, parce qu'il est pas du genre se tourner les pouces, mais il peut pas partir avant la fin de son contrat avec les scientifiques. Si tu veux en savoir plus, adresse-toi directement lui ! + + + Parle-moi du militaire ! + + + Garry l'a rencontr alors qu'il avait des zombies aux trousses. Il a eu de la chance, parce que d'autres mecs que Garry l'auraient srement abattu. Depuis, il quitte plus le bunker et je le comprends. + + + Que font les mercenaires ici ? + + + Ces truands protgent le bunker. Ils ont dbarqu il y a quelque temps, ont discut avec Hermann et sont rests. J'ai l'impression qu'Hermann les apprcie moyennement... Leur leader s'appelle Black et on peut pas dire que ce soit un tendre. + + + Parle-moi du coin ! + + + Il y a une vieille base militaire pas trs loin... Au nord, on trouve le village de Kopachy et l'est du village, une gare ferroviaire o les stalkers se retrouvent entre eux. Il y a aussi un train sur les rails pas trs loin. C'est pas un endroit trs accueillant, crois-moi... + + + Parle-moi de la vieille base militaire ! + + + Y a pas grand-chose en dire... Tout ce qui avait de la valeur a t pill il y a longtemps et il ne reste plus que des mutants et des zombies. Il y a aussi un petit bunker, qui est bien pratique en cas d'mission. + + + Parle-moi du village ! + + + Eh bien, on peut pas dire que ce soit vraiment un village... quelques buttes, tout au plus. Il a t enterr en 86, histoire de neutraliser les radiations. C'est pas un lieu trs frquent de nos jours... Il n'y a plus grand-chose de valeur l-bas et on peut pas dire ce que soit une sincure. + + + Parle-moi de la gare ! + + + Que peux-tu me dire au sujet du train ? + + + Eh bien... La gare de Yanov vaut le dplacement si t'y es pas encore all. C'est un endroit sympa pour boire un coup et prendre des nouvelles des autres stalkers, et puis, c'est le seul coin peu prs sr en dehors du bunker. + + + Je vois que tu portes un nouvel quipement... + + + Yeah baby ! On fait dsormais officiellement partie de l'quipe de recherche scientifique d'Iskra ! Mais crois pas qu'on allait t'oublier maintenant qu'on est des scientifiques, hein ! Mes "collgues" et moi, on en a discut et on en a conclu que... tu l'as bien mrit, mon pote ! Si tu te retrouves dans une anomalie ou coinc dans une mission, hsite pas nous envoyer un petit mot de remerciement. On recevra le message, crois-moi ! + + + Salut. + + + Salut. + + + Alors, on y va ou on attend encore un peu ? + + + J'ai cru que j'allais rester coinc dans ce tunnel et devenir un zombie ! Comment remercier l'homme qui m'a sauv la vie ? + + + Une petite balade, a te tente ? + + + Salut ! + + + On te doit beaucoup et on est pas prs de l'oublier. + + + Je crois qu'on a fini. Il est temps de se casser d'ici, vite fait... + + + Alors, ce tunnel, qu'est-ce qu'il a de si particulier, au juste ? + + + Il n'y a pas la moindre poussire l-dedans. Hermann dit que c'est cause du Tesla, mais j'ai du mal le croire. + + + Vaut mieux en parler au boss ! Je sais pas ce que je peux dire et ce que je dois garder secret. + + + Qu'est-ce que tu as trouv en faisant des relevs dans le champ psi ? + + + J'ai vu des empreintes de pas. On aurait dit des empreintes humaines, mais qui serait assez tar pour marcher pieds nus dans un endroit pareil ? + + + Ton cerveau se ramollit et tout autour de toi prend des formes tranges. La faute ce maudit champ psi ! + + + Qu'est-ce que tu as dcouvert l-dessous ? + + + Pas grand-chose, quelques cadavres de hamsters. + + + Ben... rien qu'on ne puisse trouver partout ailleurs dans la Zone. + + + Tout va bien ? + + + Je suis en vie et c'est grce toi ! Tiens, pour te remercier, je vais de filer des coordonnes. Tout ce que tu y trouveras est toi. C'est pas grand-chose, mais a vient du cur... + + + Comment a va ? + + + Je tenais te remercier, vraiment ! Merci ! Je sais pas quoi dire... Tiens, prends les coordonnes de notre planque. Tu les as bien mrites. + + + T'es vivant ? + + + Merci, j'oublierai pas ce que t'as fait pour moi. Tiens, voici les coordonnes de notre planque, tu les mrites... + + + a va, les petites cellules grises ? + + + Oh, les trucs que j'ai vus quand j'tais l-bas... a va me hanter toute ma vie... + + + Alors, on rentre au bunker ? + + + Carrment ! + + + Alors, allons-y ! + + + Vas-y, je te rattraperai. + + + L'quipe est prte aller jusqu'au tunnel ? + + + On n'attend plus que le signal du dpart. + + + Eh bien, c'est parti, alors ! + + + On va attendre encore un peu. + + + Je vais y aller tout seul. On se retrouve l-bas ! + + + Je vais y aller tout seul. On se retrouve l-bas ! + + + Non, on te fait pas confiance et puis le temps, c'est de l'argent ! Alors soit tu viens avec nous, soit on reste ici. + + + Dans ce cas, allons-y ensemble ! + + + Dans ce cas, vous allez devoir attendre. + + + Hors de question... On va quand mme pas sortir pendant une mission ! + + + Nous y voil ! + + + Alors... On y va ? + + + Oui, bien sr. + + + J'ai besoin d'un instant pour prendre mes repres. + + + Qu'est-ce que tu veux ? + + + Je ne faisais que passer. + + + Eh bien, passe ton chemin alors ! + + + Ok. + + + On se dtend, ducon ! + + + Va te faire voir ailleurs ! + + + Oh... Salut... + + + Allegro m'avait dit que t'tais salopard de premire. T'as d escroquer un paquet de stalkers... + + + De quoi est-ce que tu parles ? Je n'ai jamais escroqu qui que ce soit ! Allegro a une case en moins ! + + + Qu'est-ce que t'as dit aux bandits propos de moi ? Pourquoi j'ai eu droit un comit d'accueil prs des grues, sur les quais ? + + + Tu me confonds avec quelqu'un d'autre. J'ai rien voir avec les bandits ! + + + Allegro m'a parl de toi... Je te conseille de me filer le flingue, ce sera plus facile pour tout le monde. + + + Qu'est-ce qu'il a racont ? Tout ce que j'ai sur moi m'appartient ! + + + Tire-toi... + + + Aide-moi... J'ai besoin d'un mdikit ! + + + Dis-moi d'abord o tu as planqu mes affaires ! + + + Je suis dsol, j'avais vraiment besoin de fric... Je vais tout te raconter, mais aide-moi ! Je te jure que je recommencerai plus ! + + + Bon, d'accord. + + + Merci ! J'ai planqu tes affaires dans les gouts derrire le poste lectrique. + + + Je vois. + + + Je ne te crois pas. Il va falloir que tu te passes de mdikit... + + + Prends a ! + + + Tu n'auras rien du tout. + + + Merci. J'ai cru que t'allais me laisser crever... + + + Qui je pourrais recruter pour protger les scientifiques ? + + + Des gars du Devoir, videmment ! Qui d'autre ? Ce sont les meilleurs combattants de toute la Zone aprs tout ! En plus, ils ont un sacr matos... + + + La Libert bosse pour eux en ce moment, non ? Dans ce cas, je ne vois vraiment pas. J'allais recommander le Devoir, mais on ne peut pas dire qu'ils s'entendent comme cul et chemise. + + + Qui pourrais-je recruter pour faire des relevs pour les scientifiques ? + + + Pour a, il vaut mieux parler Shulga. Il se peut qu'il ait quelques gars moins stupides que les autres dans son quipe. + + + Ils payent la Libert pour les protger ? Dans ce cas, il ne vaut mieux pas recruter de membres du Devoir... C'est tout ce que je peux dire ! + + + Lorsqu'on est entr dans le passage souterrain, l'ascenseur est tomb en panne... + + + Ha ! Vous avez utilis le seul gnrateur encore oprationnel... Et en plus, il s'agit de notre seul gnrateur de secours. Mme moi, j'ai dj du mal le faire fonctionner ! Il a d mourir de sa belle mort. Vous devriez remercier le ciel qu'il ne soit pas mort pendant la descente... Cet ascenseur n'a pas de sortie de secours ! + + + Qui aurait pu voler des affaires dans une cantine personnelle ? + + + Alors l, je n'en ai pas la moindre ide ! Tout ce que je sais, c'est que si Shulga tait aux commandes Yanov, ce genre de choses n'arriverait pas. + + + Qui pourrait forcer un conteneur en acier ? + + + Ce n'est pas ma spcialit... Le mtal, c'est pas mon truc... Moi, je me spcialise plutt dans l'lectronique. + + + Un groupe de combattants du Monolithe cherche un endroit o se rfugier. Qui pourrait les aider ? + + + Srieusement ? J'ai du mal le croire... Les stalkers ne voudront rien avoir faire avec eux, a, c'est certain. Il vaudrait mieux en parler au lieutenant-colonel Shulga. S'il les laisse intgrer le Devoir, ils seront en scurit. Ils pourront mme trouver de quoi se rendre utiles. + + + J'aurais besoin de dcrypter une bote noire... + + + Voyons voir... Elle va me donner du fil retordre... mon avis, a va bien me prendre trois heures et ce sera pas donn. Je m'en occupe et on discutera des prix ensuite... J'ai besoin de me concentrer, alors, du balai ! + + + Voyons voir... Elle va me donner du fil retordre... mon avis, a va bien me prendre trois heures et ce ne sera pas donn. Je m'en occupe et on discutera des prix ensuite... Vous pourriez me chercher les composants dont j'ai besoin ? a vous fera de l'argent de poche et je vous ferai une ristourne sur la facture. + + + Quoi ? Oh, je bosse toujours dessus. Cette bote est un vrai bordel... + + + J'en ai fini avec la bote noire ! Quel boulot merdique... + + + Combien a va me coter ? + + + Au moins 3000. + + + Tenez. + + + Je n'ai pas autant sur moi. + + + Eh bien, je peux vous faire une ristourne si vous me rapportez les composants. + + + Surtout hsitez pas repasser, hein ! + + + Je n'ai pas les moyens... Je vais y rflchir. + + + Je veux bien faire un petit effort : ce sera seulement 2850. + + + Je veux bien faire un petit effort : ce sera seulement 2700. + + + Je veux bien faire un petit effort : ce sera seulement 2550. + + + Je veux bien faire un effort : ce sera seulement 2400. + + + Je veux bien faire un effort : ce sera seulement 2250. + + + C'est bien parce que je suis sympa : ce sera seulement 2100. + + + C'est bien parce que je suis sympa : ce sera seulement 1950. + + + C'est bien parce que je suis sympa : ce sera seulement 1800. + + + Je ne peux pas descendre en dessous de 1650. + + + Bon, je ne sais pas pourquoi cet enregistrement est si important, mais vu ce qu'il cote, j'espre vraiment qu'il vaut le coup. + + + On verra. + + + Je bosse toujours dessus... Vous pourriez pas vous rendre utile et aller me chercher ces composants ? + + + Senka ? J'ai fait sa connaissance l'poque o j'tais Zaton et depuis, il ne me quitte plus... C'est un alcoolique de premire qui a de longues annes d'exprience en la matire... Ha ! Je lui fais faire des petits boulots de temps en temps... + + + Qui serait intress par des informations concernant le fondateur du Devoir ? + + + Shulga, videmment... Le Devoir chrit ses origines. Vous savez ce qu'on dit : l'histoire se rpte si on ne l'tudie pas... Le plus important, c'est que la Libert ne tombe pas sur cette information, car ces enfoirs pourraient la dformer. Pas par mchancet, mais simplement par manque de mmoire... + + + J'ai apport des outils. + + + Super ! Lesquels sont pour moi ? + + + Les outils rudimentaires. + + + Excellent ! Mais il me faut encore des outils de prcision et de calibrage. + + + Les outils de prcision. + + + Excellent ! Mais il me faut encore des outils rudimentaires et des outils de calibrage. + + + Les outils de calibrage. + + + Excellent ! Mais il me faut encore des outils rudimentaires et des outils de prcision... + + + Aucun, pour l'instant. + + + Cool ! Il me manque juste des outils de calibrage et a devrait tre bon. + + + Cool ! Il me manque juste des outils de prcision et a devrait tre bon. + + + Cool ! Il me manque juste des outils rudimentaires et a devrait tre bon. + + + Impressionnant ! Je savais pas qu'on pouvait encore en trouver par ici. + + + Je peux trouver tous les outils ncessaires. + + + Ce serait vraiment gnial. J'ai l'impression d'tre coinc l'ge de pierre, moi. Le bton de chamane a t remplac par le fer souder, mais c'est tout... Si j'avais des outils, je pourrais amliorer des tas de trucs. En plus, je suis pas du genre radin, donc tout le monde en profiterait. + + + Ok, je vais les chercher. + + + J'ai chang d'avis. + + + Bonne ide. Je m'occupe des amliorations pendant que d'autres se remplissent les poches... + + + J'ai le PDA du marchand du Devoir. Qui est-ce que a pourrait intresser ? + + + Un marchand du Devoir ? Sans dconner... Il vaut mieux donner le PDA Shulga, il saura quoi faire avec... mais surtout, pas un mot la Libert, hein ? Ils l'utiliseraient pour sabrer la rputation de toute la faction... + + + J'ai trouv des documents qui indiquent comment se rendre Pripyat. + + + Voyons voir... Ok... D'accord... Bon alors, en rsum, il y a un passage souterrain appel Pripyat 1, qui passe sous la ville de Pripyat. Un de ses embranchements se termine dans la zone de transport de l'usine de Jupiter. Impressionnant ! Si j'en crois ces notes, l'ascenseur a t condamn, rempli de gaz et l'lectricit a t coupe. Je pourrais essayer de rparer le gnrateur et d'ouvrir les portes. Seulement... + + + Seulement, il est hors de question que je traverse Jupiter sans protection et je dconseille quiconque de s'aventure seul dans ce passage souterrain ! mon avis, il vaut mieux tre au moins trois et tous quips de combinaisons avec module respiratoire en circuit ferm, sinon c'est la galre assure... a intressera peut-tre Zulu, il habite dans une tour pas trs loin d'ici. Il saura comment monter une quipe pour y aller. + + + On avait parl de matriel... + + + Ouais. Il est quasiment impossible de trouver du matriel radio par ici. J'ai utilis tout ce que j'ai pu dnicher, mais personne ne fournit de matos dans le coin... C'est bien plus intressant de vendre des flingues... Ceci dit, j'ai cru comprendre qu'il restait encore des trucs rcuprer dans la cimenterie... + + + J'ai fouill la cimenterie de fond en comble et j'ai trouv le matriel ! + + + Impressionnant ! Voil qui mrite bien des rparations et des amliorations gratuites ! + + + J'ai russi trouver une partie du matriel. + + + Gnial ! Alors, a, a mrite des rabais exceptionnels, mon pote ! + + + Je peux rcuprer le matriel. + + + Ce serait gnial ! Il me faudrait surtout du colophonium ou des condensateurs... Remarque, je serais mme content de rcuprer un peu de textolite. Je ne peux pas promettre une grosse rcompense, mais une remise sur les prochaines rparations, oui ! + + + quoi vont servir ces matriaux ? + + + Eh bien, c'est vrai que je travaille surtout sur des armes et du matos... a me permet de joindre les deux bouts... Mais ma vraie passion, c'est l'quipement radio. C'est incroyable d'assembler un appareil et de le voir fonctionner ensuite ! Je me souviens avoir mont un brouilleur d'ondes une fois... Trs utile, surtout quand les annonces du bar des 100 Rads n'arrtaient pas de me rveiller. + + + Pourquoi y aurait-il du matriel radio dans une cimenterie ? + + + Elle ne porte pas trs bien son nom... La production de ciment s'est arrte bien avant la catastrophe de Tchernobyl. Elle a t reconvertie en usine de fabrication d'appareils lectriques. + + + J'ai trouv des documents Jupiter. + + + Voyons voir... Il n'y a rien d'intressant l-dedans, ce ne sont que des papiers administratifs... + + + Hum... Il pourrait bien y avoir des renseignements utiles cachs dans le tas, mais je n'en suis pas sr... Il nous faut plus d'informations. Peut-tre qu'en fouillant les endroits mentionns dans ces documents... + + + J'ai vraiment besoin de matriel, merde ! Comment je suis cens bosser dans ces conditions, moi ?... Oh, bonjour. Comment a va ? + + + Salut ! Besoin d'expertise technique ? Je peux pas faire grand-chose sans matriel, mais je peux au moins rparer quelques trucs et y apporter de petites amliorations. + + + J'ai pens un truc... Il se trouve que tout le matriel dont j'ai besoin prend la poussire dans la cimenterie... a me rend fou de penser tout ce gchis... + + + H ! Besoin de rparations ? Ou peut-tre d'une petite amlioration ? J'avais promis de belles ristournes, je tiendrai parole ! + + + Salut, mon pote ! Que puis-je faire pour toi ? Souviens-toi que je t'offre les meilleurs prix de la Zone ! + + + J'aurais besoin de dbloquer un module de mmoire... + + + Je crois que c'est dans mes cordes... J'ai jamais essay, donc il faudra compter au moins trois bonnes heures. Je serais ravi de tenter le coup, ceci dit... Et je ferai mme un effort sur le prix... peine 1000 billets ! + + + Ce n'est pas urgent ! March conclu ! + + + Excellent ! Je me mets tout de suite au travail. + + + Je n'ai pas autant sur moi. + + + Eh bien, reviens plus tard si a t'intresse toujours. Tu ne trouveras pas moins cher ailleurs ! + + + Je vais y rflchir. + + + Comme dit, je peux te faire a en 3 heures et 1000 billets, c'est un prix dfiant toute concurrence. Moi, je sauterais sur l'occasion. + + + Alors, ce module de mmoire ? + + + J'ai pas encore termin... Mais faut pas s'inquiter, j'aurai fini dans pas longtemps. + + + Quoi ? T'as pas rcupr le module ? J'ai demand Senka de te le filer, vous avez d vous louper... Peu importe... En gros, en plus de relevs concernant les couches rocheuses et l'paisseur de la vgtation, il contient les coordonnes de trois metteurs radio. Je vais les copier sur ton PDA... + + + Tu as essay de traquer les chimres ? + + + La chimre blesse est alle vers Zaton. Le groupe de Gonta l'a suivie... Mais apparemment, ils n'avaient aucun chasseur expriment avec eux. Si tu les aides, je saurai me montrer gnreux... Quant l'autre, celle qui a tu le Renard... j'ai perdu sa trace. C'est comme si elle s'tait vanouie dans la nature... Pauvre Renard... C'tait un gars bien, mais la vieillesse est sans piti... + + + Eh bien, tu t'es occup de celle qui tait blesse, et l'autre, celle qui a tu le Renard... J'ai perdu sa trace. C'est comme si elle s'tait vanouie dans la nature... Pauvre Renard... C'tait un gars bien, mais la vieillesse est sans piti... + + + Qui es-tu au juste ? + + + Je m'appelle Trappeur et il y a encore pas si longtemps que a, je chassais les mutants qui menaaient les Stalkers... Aujourd'hui, je transmets des ordres aux jeunes chasseurs. Je les forme... + + + Parle-moi de la chasse aux mutants... + + + Eh bien, faut utiliser des techniques diffrentes pour chaque type de mutant... On chasse pas un domovo ou un poltergeist comme on chasse un pseudo-gant ou un contrleur... Les chimres sont un cas vraiment part. + + + Parle-moi des domovo ! + + + Les domovo utilisent des attaques gravitationnelles... courte distance, ils te balancent au loin et ensuite te jettent tout ce qui leur tombe sous la patte... Face ces salets, il vaut mieux garder ses distances et rester constamment en mouvement, moins que tu n'aies envie de te faire aplatir comme une crpe...Mais il faut aussi viter de gaspiller toute ton nergie ! Ces bestioles sont capables de diriger leurs impulsions gravitationnelles pour te dsarmer, et si tu es fatigu, tu risques de te retrouver les mains vides. + + + Parle-moi des poltergeists ! + + + Il existe deux types de poltergeists. Les premiers utilisent la gravitation pour balancer tout un tas de salets sur leurs ennemis, tandis que les seconds ont plutt tendance carboniser leurs victimes. Les chasseurs inexpriments essayent de leur tourner autour pour viter leurs attaques... Le truc pour les choper, c'est de profiter du fait qu'ils sont aveugles et sourds. Ils ne reprent que les objets qui se dplacent dans le champ gravitationnel... Il faut donc s'immobiliser ds qu'on en voit un, tirer, aussitt s'immobiliser, et ainsi de suite. + + + Parle-moi des contrleurs ! + + + Comme leur nom l'indique, ils manipulent ton esprit. Mais pour y arriver, ils doivent pouvoir te voir. C'est pour a qu'il faut toujours rester couvert quand tu en traques un... Ces salets sont plutt lentes, donc si jamais tu te retrouves coinc, une bonne grenade devrait pouvoir te sauver la mise. + + + Parle-moi des chimres ! + + + Ce sont des prdateurs nocturnes extrmement dangereux. Elles essaient de te tomber dessus par derrire au moment o tu t'y attends le moins. Alors, si tu sais qu'il y a une chimre dans les parages, garde l'il ouvert et tche de couvrir tes potes... + + + Parle-moi des pseudo-gants ! + + + Ces salopards sont trs difficiles tuer ! Ils encaissent des dgts incroyables sans sourciller... Franchement, le mieux, c'est d'y aller au fusil pompe courte porte. Et surtout, faut pas oublier qu'ils sont capables de soulever tout ce qui n'est pas fix au sol... Alors, il vaut mieux se placer en hauteur et s'assurer que le truc sur lequel tu te tiens rsistera un minimum.... + + + Ok, oublie a. + + + Pourquoi as-tu arrt de chasser ? + + + Ben, c'est que je suis plus tout jeune, moi ! C'est l'ge qui a tu le Renard... C'tait mon ami et mon partenaire. On a chass ensemble pendant des annes... Jusqu'au jour o on est tombs sur deux chimres prs de Zaton, des chimres qu'on avait plus vues dans la Zone depuis un an et demi... L'une d'elles s'est jete sur mon pote avant que je puisse sortir mon fusil pompe. J'ai russi blesser l'autre avant qu'elles se tirent toutes les deux... J'espre que ces saloperies brleront en enfer ! + + + Qui aurait pu voler des affaires dans une cantine personnelle ? + + + Hum... Aucune ide... les chasseurs se font pas ce genre de crasses. Et puis, les gars qui se font trop d'ennemis finissent par plus avoir personne pour les couvrir quand ils se retrouvent nez nez avec une sangsue. + + + Aux grands maux, les grands remdes... Connaissant les sangsues, je dirais que deux d'entre elles ont d partir chasser dans coin... Mais puisqu'elles ont plus de nid, elles reprsentent plus aucun danger pour les stalkers. + + + Tu n'aurais pas une autre mission me confier ? + + + Si ! Une quipe de stalkers s'est rendue dans les tunnels au nord de l'usine l'autre jour et est tombe sur un nid de mutants. Les pauvres ont t tellement choqus qu'aucun d'entre eux n'a su dcrire de quel genre de bestioles il s'agissait. Deux de ces gars eux y sont rests, d'ailleurs... Du coup, tous les mecs de Yanov se sont mis paniquer. Ils offrent 5000 billets qui sera assez fou pour aller dtruire ce nid. Mais bon, c'est toi ce voir, a sera pas du gteau... + + + Je m'en charge. + + + Voil qui est courageux... Bonne chance. Tu vas en avoir besoin... + + + On verra a plus tard. + + + Je peux pas t'en vouloir... Je doute que qui que ce soit ait assez de couilles pour s'en prendre un tout un nid de mutants. + + + Toujours pareil... Des mutants non identifis dans les tunnels au nord de l'usine de Jupiter. Une rcompense de 5000 billets... T'as chang d'avis ? + + + Les mutants dans les tunnels inquitent beaucoup les Stalkers en ce moment... + + + Les cratures dans les tunnels taient des nains mutants. Ils ne feront plus de mal personne. + + + Des domovo, tous les coups ! a explique pourquoi les mecs de Yanov ont pt les plombs... Bon, s'ils sont morts, a veut dire que la rcompense est toi ! + + + Des domovo, tous les coups... Ceux qui ont tu deux Stalkers il y a pas longtemps. a explique pourquoi les mecs de Yanov ont dcid d'y mettre le prix. Ben, s'ils sont morts, a veut dire que la rcompense est toi ! + + + Je suis prt m'occuper de la chimre. + + + Excellent ! Le chasseur qui l'a trouve a aperu cette saloperie au tomb de la nuit. Elle se dirigeait vers le systme d'aration. Les chimres sont des cratures nocturnes, elle s'apprtait srement aller chasser... C'est l que tu devrais aller pour la choper la nuit tombe. Mais bon, vu qu'elle pionce la journe, elle sera en forme... Sois prudent et bonne chasse ! + + + La chimre est morte. + + + Merci infiniment ! Tu as veng la mort du Renard et il peut enfin reposer en paix... Voici ton argent, tu l'as bien mrit... Et c'est pas tout ! Prends mon fusil pompe ! Tu m'as offert quelque chose de bien plus prcieux... La srnit... + + + Je m'appelle Trappeur... Je sais qui tu es, inutile de te prsenter. + + + Qu'est-ce qui t'amne ici ? + + + Merci d'tre venu... J'ai besoin d'un chasseur expriment sur lequel je puisse compter et t'es le meilleur de tout Yanov. Je peux pas laisser cette chimre en vie, pas aprs tout ce qu'elle a fait... Je suis prt faire don de toutes mes conomies : 10000 billets. Je veux juste que le Renard soit veng, et dans les rgles ! + + + Je t'en supplie, occupe-toi de cette chimre ! Si tu le fais pas pour le bien de Yanov, alors fais-le pour l'argent... 10000, c'est une belle somme ! + + + Alors, a en est o ? Il faut faire vite, sinon la chimre risque de partir chasser ailleurs. + + + Ravi de te voir ! Alors quoi de neuf ? + + + Tu n'aurais pas une autre mission me confier ? + + + Ce sont pas les proies qui manquent, crois-moi... Un groupe de sangsues des marais a t repr dans la Tourbire, derrire la cimenterie. Elles ont pas l'air de vouloir quitter leur marais pour l'instant, mais les stalkers du coin veulent s'assurer qu'elles en sortiront jamais, si tu vois ce que je veux dire... Tue-les toutes et a te rapportera 3000 billets. a te tente ? + + + Je m'en charge. + + + Parfait ! Bonne chasse... + + + On verra a plus tard. + + + Comme tu le sens... Tu as encore le temps de changer d'avis avant que d'autres chasseurs s'en chargent. + + + Il y a toujours le groupe de sangsues des marais de la Tourbire, derrire la cimenterie. La rcompense est de 3000 billets... a te dit ? + + + Y a que les sangsues de la Tourbire en ce moment... + + + J'ai limin les sangsues des marais. + + + Les stalkers vont pouvoir souffler un peu ! Voici la rcompense ! + + + Les stalkers de la rgion vont tre ravis de l'apprendre ! Ils ont mme mis leurs ttes prix pour 3000 billets... Tiens, c'est pour toi ! + + + Gonta et moi avons tu la chimre de Zaton. + + + Merci. Moins il y aura de mutants dans les parages, mieux on se portera ! Si vous pouviez vous occuper de l'autre aussi... + + + Merci d'avoir tu l'autre chimre ! Je suis bien content de savoir qu'on en est enfin dbarrasss... + + + Raconte-moi comment tu as tu le contrleur ! + + + Alors, ouvre bien tes oreilles, mon pote, et retiens la leon... Donc l'autre jour, je vais ma planque pour rcuprer mon matos... l qu'est-ce que je vois ? Un contrleur vautr sur mon butin ! Du coup, j'ai chop une grille en mtal qui tranait par l, je m'en suis servi comme bouclier et je me suis approch en douce. Le temps qu'il se rende compte de ce qui se passait, je lui avais dj vid la moiti d'un chargeur dans la tronche. Ensuite, il a suffi d'un bon coup de crosse pour lui rgler son compte. + + + Parle-moi des artefacts de la carrire ! + + + Ha ! Y a pas grand-chose en dire ! Y a plus rien l-bas ! Tout le monde sait que a sert rien de passer derrire Flint ! L o il passe, les anomalies trpassent ! + + + Alors, c'est toi qui as laiss ton pote crever dans la carrire ! + + + Quoi ?! + + + T'as aucune preuve ! Tu bluffes ! C'est ta parole contre celle d'un membre de la Libert ! Personne va te croire. + + + C'est ce qu'on va voir ! + + + Rien. + + + Merci, au revoir. + + + Parle-moi des sangsues de Zaton ! + + + Quand j'tais Zaton, ces saloperies menaient la vie dure tout le monde. Les stalkers en tuaient longueur de journe, mais a servait rien... Les pauvres cons... Un jour, j'ai dcid de leur filer un coup de main, alors j'ai pris mon fusil pompe et je suis all direct dans la tanire. Autant de dire que depuis mon passage, y a plus de problme de sangsues Zaton ! + + + Tu ne sais mme pas o se trouve cette tanire. + + + Tire-toi ! + + + Qu'est-ce que tu veux ? Va raconter tes conneries quelqu'un d'autre ! + + + Tu ferais de te tirer... C'est ta parole contre celle d'un membre de la Libert ! Personne te prendra au srieux. + + + C'est ce qu'on va voir ! + + + Merci, au revoir. + + + Parle-moi du raccourci qui mne Jupiter ! + + + En fait, le guide avait l'habitude de faire un sacr dtour. Mais moi, j'ai dcid de prendre un raccourci, comme a direct, en ligne droite ! Personne y avait jamais pens. J'y suis all doucement au dbut et puis, j'ai trouv un passage entre les anomalies. Ensuite, j'ai vendu l'info au guide et maintenant, il fait passer tout le monde par l. + + + Et si on demandait Pilote qui lui a donn les cartes ? + + + Barre-toi ! + + + Qu'est-ce que tu veux ? Va raconter tes conneries quelqu'un d'autre ! + + + T'as aucune preuve... C'est ta parole contre celle d'un membre de la Libert ! Personne te prendra au srieux. + + + C'est ce qu'on va voir ! + + + Merci, au revoir. + + + Parle-moi de ton expdition jusqu' l'Oasis ! + + + Je suis le premier avoir trouv le moyen d'y accder ! Y a pas un seul mutant ou une putain d'anomalie l-bas, c'est plus calme qu'un cimetire et a regorge d'artefacts ! + + + Ben voyons... J'y suis all, dans l'Oasis, moi, et a n'a rien voir... + + + Barre-toi ! + + + Qu'est-ce que tu veux ? Va raconter tes conneries quelqu'un d'autre ! + + + Tu te prends pour qui, connard ? C'est ta parole contre celle d'un membre de la Libert ! Personne va te croire ! + + + C'est ce qu'on va voir ! + + + Merci, au revoir. + + + Parle-moi du boulot que tu as fait pour les scientifiques ! + + + Je me suis point dans leur bunker l'autre jour. Ils taient super contents de me voir, ils n'attendaient que moi ! Apparemment, ils avaient besoin de placer leurs gadgets sous des anomalies. Je leur ai dit que ce serait du gteau et j'ai fait mon boulot, les doigts dans le nez. Par contre, a a pas t facile de les faire casquer aprs... + + + T'en as pas marre de t'attribuer les mrites des autres ? C'est moi qui ai fait tout a, pas toi ! + + + Barre-toi ! + + + Qu'est-ce que tu veux ? Va raconter tes conneries quelqu'un d'autre ! + + + Tu mens ! C'est ta parole contre celle d'un membre de la Libert ! Personne te croira ! + + + C'est ce qu'on va voir ! + + + Merci, au revoir. + + + Salut. Alors toi aussi, tu veux entendre mes histoires ? + + + Tu veux me poser une question ? + + + Qu'est-ce que tu veux ? + + + Merde... Je vais crever... + + + Prends ce mdikit ! + + + Merci... Mais a servira rien... coute... Je suis venu ici avec un autre membre de la Libert... On a trouv un artefact... Mais j'ai fonc droit dans une anomalie sur le chemin du retour... S'il m'avait aid, je m'en serais sorti... Mais il a prfr me piquer l'artefact et m'abandonner ici. Il m'avait promis de revenir avec de l'aide... Faut que tu le retrouves ! Faut que tout le monde sache que c'est une belle ordure... + + + Je le trouverai ! + + + Je doute de pouvoir prouver quoi que ce soit. + + + Accroche-toi mon paule ! On va te trouver un mdecin ! + + + C'est con... Ciao ! + + + J'ai quelque chose pour toi... + + + Un morceau de viande. Tiens, prends-le ! + + + Merci. Les scientifiques payent bien, mais moi, ce qui m'intresse surtout, c'est le permis. + + + Merci beaucoup ! Je vais enfin pouvoir aller Pripyat. Il faut juste que je trouve un moyen de l'atteindre. + + + Un Kolobok. Tiens, prends-le ! + + + Merci. Les scientifiques payent bien, mais moi, ce qui m'intresse surtout, c'est le permis. + + + Merci beaucoup ! Je vais enfin pouvoir aller Pripyat. Il faut juste que je trouve un moyen de l'atteindre. + + + Un morceau de viande et un Kolobok. Tiens, prends-les ! + + + Merci beaucoup ! Je vais enfin pouvoir aller Pripyat. Il faut juste que je trouve un moyen de l'atteindre. + + + Je n'ai rien trouv. + + + Y a de quoi s'occuper le coin ? + + + Un contrat ? + + + Ben, j'ai accept de bosser pour les scientifiques, en pensant que ce serait facile. Mais j'avais pas vu que le contrat prendrait fin qu'une fois que tout le boulot serait termin. Les scientifiques ont promis de me filer un permis officiel pour pouvoir rester dans la Zone, mais j'en ai pas encore vu la couleur. + + + J'ai rempli toutes les putains de conditions du contrat, sauf une ! Je dois trouver tous les artefacts chimiques qui existent. Qui aurait cru que je pourrais pas trouver un pauvre morceau de viande et un Kolobok ici ? Si j'avais pu mettre la main sur ces deux artefacts, je serais Pripyat depuis longtemps ! + + + Je pourrais peut-tre les trouver... + + + C'est dommage... + + + Ouais... Un morceau de viande, un Kolobok, et Pripyat, me voil ! + + + Qu'est-ce qu'il y a de si particulier, Pripyat ? + + + Personne sait comment s'y rendre... C'est la Zone aprs tout, ce serait trop simple de pouvoir y aller directement... Parat que Pripyat regorge d'artefacts... Et mme si c'est faux, on raconte tellement d'histoires sur cet endroit que je suis curieux d'y aller. + + + Je suis en train de monter une quipe pour aller Pripyat. Tu veux venir avec nous ? + + + En fait, j'avais l'intention d'y faire un tour, moi aussi... Mais je prfre y aller seul. a n'a rien de personnel, hein ! C'est juste que j'ai l'habitude de bosser en solo... + + + J'ai l'intention de m'y rendre dans pas longtemps, figure-toi... Mais je prfre y aller seul. a n'a rien de personnel, hein ! C'est juste que j'ai l'habitude de bosser en solo... + + + Bienvenue dans le royaume de l'ennui ! + + + Je meurs d'envie d'aller Pripyat ! + + + Faut juste que je trouve un moyen de me rendre Pripyat et aprs, adieu, les gars ! + + + C'est pas si mal ici ! C'est mme plutt la belle vie ! + + + C'est clair que c'est agrable de se sentir en scurit. Si seulement c'tait pas aussi chiant ! + + + Je peux peut-tre t'aider trouver les artefacts. + + + Tu sais vraiment comment aller jusqu' Pripyat ? + + + Non, mais si c'est vraiment rempli d'artefacts comme tout le monde le dit, je suis prt partir tout de suite ! Je suis le meilleur pisteur du coin. J'tais un des premiers trouver le chemin pour Jupiter. Mais je bosse toujours en solo. J'ai pas le temps de faire du baby-sitting. + + + Tu m'emmnerais Jupiter ? + + + Bien sr. Prt ? + + + Oui. + + + Pas encore. + + + Pas pendant une mission ! + + + Tu pourrais m'emmener Pripyat ? + + + Je veux bien essayer pour 5000 billets. C'est un coin sympa ! + + + a me va ! + + + Non, merci. + + + Ok, comme tu le sens... + + + Je crois que je n'ai pas assez d'argent. + + + Je veux bien essayer pour 5000 billets. Mais il va falloir attendre la fin de l'mission. + + + Tu pourrais m'emmener Zaton ? + + + Non, dsol. On se fait trop chier l-bas. Si tu cherches quelqu'un pour un boulot ppre et chiant mourir, vaut mieux en parler Pilote. Il est l-bas. + + + Je peux te conduire Yanov et pour 3000, je peux demander Pilote de t'emmener Zaton. Qu'est-ce que t'en dis ? + + + D'accord. + + + Non. + + + toi de voir ! + + + Je n'ai pas assez d'argent. + + + Je peux te conduire Yanov et pour 1000, je peux demander Pilote de t'emmener Zaton. Qu'est-ce que t'en dis ? + + + Non, dsol. On se fait trop chier l-bas. Si tu cherches quelqu'un pour un boulot ppre et chiant mourir, vaut mieux en parler Pilote. Va donc lui parler aprs l'mission ! + + + Je peux te conduire Yanov et pour 3000, je peux demander Pilote de t'emmener Zaton... Mais bon, faudra attendre la fin de l'mission, videmment. + + + Je peux te conduire Yanov et pour 1000, je peux demander Pilote de t'emmener Zaton... Mais bon, faudra attendre la fin de l'mission, videmment. + + + Alors comme a, on est pass par les tunnels, hein ? J'arrive de Jupiter, moi aussi. J'ai trouv un passage souterrain. Je peux t'y amener gratuitement si tu veux... Je suis heureux de pouvoir aider les autorits. + + + a fait un bail ! Alors comme a, on est pass par les tunnels, hein ? Moi, j'ai trouv un passage souterrain. Je peux te ramener gratos si tu veux... Je suis heureux de pouvoir aider les autorits. + + + a fait un bail ! Alors comme a, t'as russi passer par les tunnels ? Tu vas jamais le croire, mais j'ai russi rompre mon contrat sans perdre le permis... Ds que j'ai t libr, je suis parti en direction de Pripyat et j'ai trouv un passage souterrain. Je peux te ramener gratos si tu veux... Je suis heureux de pouvoir aider les autorits. + + + a fait un bail ! Alors comme a t'as russi sortir des tunnels ? J'ai trouv un passage souterrain. Je peux te ramener gratos si tu veux... Je suis heureux de pouvoir aider les autorits. Au fait, merci de m'avoir aid pour les scientifiques... J'ai jet un coup d'il dans les environs et j'ai trouv a. Tiens, je suis sr que a te sera utile. + + + Topol, pourquoi tu n'es pas en train de protger le bunker des scientifiques ? + + + On a t recruts pour prendre des mesures et rcuprer des chantillons. Franchement, on est quasiment devenus des scientifiques, nous aussi. Et puis, mme si j'ai rien contre le boulot en lui-mme, je suis pas sr d'tre la hauteur des nouveaux ennemis des ttes d'ampoule. J'ai pas trs envie de me faire buter par un mercenaire. + + + C'est pas un endroit pour toi, mon pote ! Et tu ferais mieux de partir avant que je te le prouve ! + + + Tu cherches les emmerdes ou quoi ? Tire-toi d'ici avant d'en trouver ! + + + Casse-toi si tu veux pas t'attirer des emmerdes... + + + Et qu'est-ce qui va se passer maintenant ? + + + Nous allons bientt partir pour la gare de Yanov. a peut valoir le coup de ne pas faire la route tout seul... + + + Oui, c'est sur mon chemin. je vais vous accompagner + + + Merci, mais ce n'est pas vraiment sur mon chemin. + + + C'est une bonne chose qu'ils soient venus jusqu' nous. Ils n'auraient pas survcu longtemps tous seuls. + + + Merci d'avoir tout arrang avec le Devoir ! + + + Qu'est-ce que tu vas faire maintenant ? + + + On va pas tarder partir pour la gare de Yanov. Viens avec nous, si tu veux ! + + + Ok, pourquoi pas ? C'est sur mon chemin. + + + Non, c'est pas vraiment sur mon chemin. + + + T'as fait ce qu'il fallait. T'as aid ces mecs et grce toi, on a des renforts. C'est cool. + + + Merci d'avoir tout arrang avec la Libert ! + + + Qui aurait pu voler des affaires dans une cantine personnelle ? + + + Aucune ide... Nous avons de tout par ici... Il vaut mieux en parler Chiropracteur, il en sait plus que tout le monde sur ce qui se passe ici... + + + Allons voir Zulu ! + + + D'accord. J'espre qu'il ne va pas me tirer dessus quand il verra mon armure du Monolithe ! Il faut qu'on aille en rcuprer une autre en chemin... et rendre celle que je porte. + + + C'est parti ! + + + Les missions ne sont pas recommandes pour la sant... Attendons un peu ! + + + Qu'est-ce qui s'est pass ? + + + Eh bien... On ne se rappelle pas comment on est arrivs ici. Je crois me souvenir qu'on faisait partie d'un groupe de combattants du Monolithe... On avait tous l'envie irrpressible de se rendre au cur de la Zone. C'est l que se trouve le Monolithe, une mtorite qui contenait une forme de vie extraterrestre... Je me souviens avoir atteint la centrale nuclaire avec les autres... Mais aprs, tout se mlange dans ma tte. Je vois une lumire... il fait trs froid... j'entends une voix... Tout tait si... parfait. Je ne me rappelle pas ce que la voix nous a ordonn de faire. J'ai perdu plusieurs annes de ma vie... Les autres aussi... On ne sait plus quoi faire. Mais on a besoin de protection contre les missions et les mutants. O est-ce qu'on pourrait aller ? + + + Il y a une base de stalkers non loin d'ici. Je peux te l'indiquer sur une carte. + + + Je ne crois pas que ce soit prudent... Tout le monde s'est mfi de nous quand on a fait le voyage jusqu' la centrale nuclaire... Je crois mme qu'on a tu des stalkers par la suite. Vu la faon dont les gens traitent notre faction, on se fera probablement abattre vue... Tu pourrais nous aider ? Tu pourrais dire aux stalkers de ce camp que nous ne sommes plus des meurtriers ? Nous aider nous faire accepter ? + + + Pas de problme, je leur raconterai votre histoire la prochaine fois que je passerai la base. + + + Dsol, je ne peux pas vous aider. + + + De quel genre d'aide avez-vous besoin au juste ? + + + Nous devons trouver un endroit o nous serons l'abri des missions... et des mutants. Tu pourrais nous trouver a ? + + + Ok. Je vais demander aux gars de Yanov. + + + Dsol, je ne peux rien faire pour vous. + + + Tu vas avoir besoin d'une combinaison quipe d'un module respiratoire en circuit ferm pour aller Pripyat. + + + Ce n'est pas un problme. Mon armure du Monolithe a tout ce qu'il faut. Le problme, c'est que je ne peux pas la porter Yanov. + + + Je suis en train de monter une quipe pour aller Pripyat. Tu veux venir avec nous ? + + + Je viendrais volontiers... Je suis trs curieux de dcouvrir ce qui nous est arrivs l-bas. Mais je ne peux pas abandonner mes hommes ici et ils ne voudront pas nous accompagner. Ils ont assez souffert comme a. + + + Oui, je veux bien t'accompagner. Je veux absolument savoir ce qui nous est arrivs. J'espre trouver des rponses Pripyat. Il faut simplement que je prvienne Loki, mais je doute qu'il s'y oppose. + + + Oui, je veux bien t'accompagner. Je veux absolument savoir ce qui nous est arrivs. J'espre trouver des rponses Pripyat. Il faut simplement que je prvienne Shulga, mais je doute qu'il s'y oppose. + + + Prt partir ? + + + Prt. + + + Bonjour, stalker. Pourrais-tu nous aider ? + + + Bonjour. Alors, est-ce que nous pouvons nous rfugier dans la base des stalkers ? + + + Je ne sais pas encore... + + + Dpche-toi, nous ne sommes pas l'abri ici ! + + + Bonjour. C'est vraiment gentil de nous aider ! + + + Bonjour. + + + Comment a va ? + + + Tout va bien, mais je veux vraiment comprendre ce qui nous est arrivs. + + + Que font les mercenaires ici ? + + + Il vaudrait mieux en parler Hermann. C'est lui qui s'occupe de tous les aspects administratifs du laboratoire. Apparemment, les mercenaires ont accept de protger notre installation, mais je ne connais pas tous les dtails. J'avoue cependant qu'ils ont prouv en de nombreuses occasions qu'ils sont fiables et courageux. + + + Qu'est-ce que vous faites ici ? + + + C'est une question rhtorique, n'est-ce pas ? Nous faisons des recherches. Vous intressez-vous une question en particulier ? + + + Quel est l'objectif de vos recherches ? + + + Nous n'avons pas de but spcifique. Nous sommes des claireurs scientifiques, en quelque sorte. Nous cherchons identifier les corrlations entre certains phnomnes, nous dveloppons des thories qu'il faut ensuite confirmer ou infirmer. Certaines de nos thories n'ont aucune application pratique pour l'instant. + + + Que pouvez-vous me dire au sujet de la Zone ? + + + Je ne peux avancer que des thories ce stade... Je pense que la cration de la Zone est une consquence de l'apparition d'une nouvelle force. Les champs lectromagntiques, les forces physiques ou les radiations ne peuvent pas modifier aussi rapidement la biosphre. Certaines mutations peuvent videmment tre imputes aux radiations, mais tout de mme... Il faudrait des centaines, voire des milliers, d'annes pour qu'un cochon ordinaire volue de cette faon ! Mais dans la Zone, cela n'a pris que deux ans. C'est comme si quelqu'un avait directement modifi l'ADN de chaque animal. Cela me donne la chair de poule rien que d'y penser. + + + Depuis combien de temps tes-vous dans la Zone ? + + + Une semaine tout juste. Vous n'imaginez pas ce qu'il a fallu faire pour convaincre les bureaucrates et organiser cette expdition. Sans Hermann, nous serions srement encore en train d'attendre nos laissez-passer la frontire de la Zone, pendant que les stalkers pilleraient tout sans vergogne. + + + C'est tout ce que je voulais savoir. + + + Ozersky, pourquoi Hermann m'a-t-il engag pour protger l'quipe pendant qu'elle effectuait des relevs ? + + + C'tait mon ide en fait. Il n'y voyait pas l'intrt, mais j'ai russi le convaincre. Mes recherches semblent indiquer que l'quipement haute frquence que nous utilisons dans les champs d'anomalies dcuple l'agressivit et le niveau d'activit des espces mutantes proximit. En d'autres termes, cela les pousse se mettre en chasse. + + + J'ai des nouvelles, Ozersky. + + + Ah bon ? + + + Vous aviez raison. Les mutants ne nous ont pas laisss un moment de rpit pendant que nous faisions des relevs, mais ds que nous avons teint les appareils, ils se sont calms. + + + Vraiment ? Si ma thorie se confirme, il est probable que les mutants qui ont acquis la capacit d'accder aux champs d'information puissent galement recevoir des signaux de l'extrieur par tlpathie... des signaux artificiels... Ce qui signifie que les similarits anormales entre les mutations et les modifications de la structure cellulaire... ne sont pas accidentelles... + + + Vous pourriez tre un peu plus spcifique ? Et m'expliquer a en termes moins obscurs ? + + + Non, ce ne sont l que des suppositions. Que je suis malpoli ! Merci beaucoup de m'avoir aid dans mes recherches ! + + + Que dois-je faire pour que vous parliez de la combinaison Hermann ? + + + Une anomalie est apparue prs de la carrire et semble regorger de nouvelles plantes. Il m'en faut absolument un chantillon, mais les stalkers refusent de s'en approcher. Si vous me rapportez une plante, je demanderai Hermann de vous donner l'une de nos combinaisons de rechange. + + + Je trouverai cette plante. + + + Trs bien, j'ai charg les coordonnes de l'anomalie sur votre PDA. + + + Peut-tre une autre fois. + + + Revenez me voir si vous changez d'avis ! + + + Tenez, je vous ai rapport la plante que vous vouliez tudier. Je peux avoir ma combinaison ? + + + Parfait ! Eh bien, Sokolov a laiss entendre qu'il voulait garder la combinaison pour lui. Mais a n'a pas d'importance. Ds qu'Hermann verra la plante, il vous donnera la combinaison. Dites Sokolov de venir la rcuprer. + + + Je sais o trouver de nouveaux gardes. + + + Excellente nouvelle ! Adressez-vous plutt Hermann pour cela ! C'est sa responsabilit, aprs tout. + + + J'aimerais tester ma rsistance aux champs psi. + + + Alors comme a, c'est Hermann qui vous envoie ? Je vais vous expliquer la situation le plus simplement possible. Pour pouvoir analyser votre rsistance aux champs psi, j'aurais besoin d'un centre de recherche scientifique et de plusieurs annes d'tude. Mais je ne dispose que d'un kit de terrain et des quelques prouvettes contamines. + + + Donc c'est impossible, c'est a ? + + + Pas si vite ! Nous ne parlons pas d'une analyse dtaille ! Nous devons simplement vrifier la rsistance des neurones aux missions psi. Un simple examen suffira largement. Donc... Il semble que votre cerveau fonctionne correctement. Cela signifie que vous pouvez tre affect par des niveaux relativement levs d'missions psi sans perdre conscience. + + + Parlez-moi un peu plus de votre hypothse concernant l'agressivit accrue des mutants ! + + + J'ai deux thories ce sujet. Il se pourrait que l'agressivit des mutants soit cause par l'intrusion de plusieurs personnes sur leur territoire, ce qui est un comportement naturel chez la plupart des espces non-mutantes, y compris les humains. Mon autre thorie se base sur l'ide que les mutants sont capables de capter les ondes mises par nos appareils de mesures. De toute vidence, la seconde thorie est bien plus intrigante... + + + Comment faire pour la vrifier ? + + + Il faudrait activer un appareil dans un secteur o aucune activit mutante n'a t repre auparavant. Il faudrait galement rduire le facteur de l'intrusion humaine au minimum. Il serait donc prfrable qu'une seule personne s'en charge. + + + J'ai apport le dtecteur. + + + Quels sont les rsultats ? + + + Je ne sais pas ce que votre appareil va t'indiquer, mais je pense que votre hypothse se vrifie. Cinq minutes aprs avoir activ le dtecteur, j'ai t attaqu par des snorks. + + + C'est bien ce que je pensais ! Pour des raisons que j'ignore, ce sont gnralement les pires thories qui s'avrent fondes. Quoi qu'il en soit, c'est une bonne chose que vous ayez pu la confirmer ! Nous devons faire en sorte que toutes les quipes envoyes sur le terrain soient prtes en dcoudre ! + + + Je suis prt essayer de confirmer ou d'infirmer votre hypothse. + + + Je suis ravi de voir qu'il reste des hommes prts faire le sacrifice ultime pour la science ! Le meilleur endroit pour mener cette exprience se trouve sur le glissement de terrain au sud de la carrire. Ce secteur regorge d'anomalies gravitationnelles que les mutants ont tendance viter. Cet appareil dispose d'un capteur de mutant intgr. Lorsque vous me le rapporterez, je serai en mesure de dterminer les effets des diffrents niveaux d'mission sur l'agressivit des mutants. Vous tes toujours partant ? + + + Oui, je m'en occupe. + + + On verra a plus tard. + + + Comment faire pour rcuprer une combinaison scientifique ? + + + Je ne peux pas vous en donner une, c'est contre le protocole. Nous devons tenir un inventaire prcis de tout notre matriel. Mais connaissant Hermann, je suis sr qu'il en a command plus qu'il n'en faut. Je pense que dans certaines conditions, il serait facile de le convaincre de se sparer de l'une d'elles. + + + Auriez-vous besoin d'artefacts particuliers ? + + + Non, dsol. Nous avons arrt d'envoyer n'importe qui la recherche d'artefacts... Nous avons conclu un accord avec un chasseur expriment et il nous trouve tout ce dont nous avons besoin. + + + Je sais o trouver de nouveaux gardes. + + + Ce serait utile. La Zone est constamment l'afft... Parlez-en Hermann, c'est lui qui dcide de tout par ici ! + + + Vous deviez me donner des dtecteurs pour les recherches sur les anomalies. + + + Tenez. En voici trois, comme Hermann l'a demand. + + + Tenez. En voici deux de plus, comme Hermann l'a demand. + + + Comment faire pour rcuprer une combinaison scientifique ? + + + Hermann est responsable de l'inventaire. Mais ce n'est pas la peine de lui demander quoi que ce soit, il ne vous donnera rien. Il vaut mieux en parler Ozersky. Il est moins coinc et en plus, il a une certaine influence auprs d'Hermann. + + + Qu'est-ce qui vous amne ici ? + + + O sont passs les mercenaires ? Ceux qui protgeaient le bunker ? + + + Comment a va ? + + + Quelqu'un a abattu les mercenaires qui vous protgeaient... Je ne les aimais pas beaucoup non plus, mais trop, c'est trop... + + + Une CS-3a, excellent ! C'est une bonne combinaison... Elle me rappelle le bon vieux temps... + + + J'aurais besoin de dbloquer un module de mmoire... + + + Voyons voir... Sans problme, j'ai dj fait ce genre de chose... a ne me prendra pas plus d'une heure. Je peux le faire pour... hum... 2000 ? a marche ? + + + a marche. + + + Parfait. Je vous ferai savoir quand ce sera fait ! + + + Je n'ai pas autant sur moi. + + + Bon... Eh bien, vous savez o me trouver ! Je doute que quiconque puisse faire un meilleur boulot que moi ! + + + Je vais y rflchir. + + + Comme je l'ai dit, je peux m'en charger en une heure et pour 2000 billets. + + + Alors, ce module de mmoire ? + + + a ne fait pas encore une heure. Je vous ai dit que je vous contacterai quand j'aurai termin. + + + Et voil ! Toutes les informations devraient tre accessibles maintenant. + + + J'ai trouv un trange objet. a vous intresse ? + + + Bien entendu ! D'o est-ce qu'il vient ? + + + Je l'ai trouv Zaton, dans l'ancienne station de dragage. + + + a marche. + + + Non merci ! Je vais chercher un autre acheteur. + + + Que font les mercenaires ici ? + + + Nous les avons engags pour protger le laboratoire mobile. Je sais ce que vous allez me dire, mais je n'ai pas eu le choix. Les militaires se sont lancs dans une opration secrte dont j'ignore tout et ne peuvent assurer notre protection. cela s'est ajoute la subite passion des stalkers pour la chasse aux artefacts... Je me suis donc retrouv dos au mur. Il me fallait des mercenaires pour protger le laboratoire. + + + Qu'est-ce que vous faites ici ? + + + Nous tudions diffrents phnomnes. + + + Quel est le but de vos recherches ? + + + Nous effectuons des recherches fondamentales. Ce qui signifie que nous ne sommes pas l pour tester des combinaisons ou inventer de nouveaux mdicaments... Nous essayons de trouver une explication logique aux phnomnes que nous observons dans la Zone. Si nous parvenons expliquer ne serait-ce que 10 % des phnomnes de la rgion, le dveloppement technologique global en bnficierait largement ! + + + Que pouvez-vous me dire au sujet de la Zone ? + + + Pas grand-chose, pour tre honnte. Nous commenons seulement comprendre les mcanismes qui provoquent certains phnomnes, mais nous sommes malheureusement encore loin d'expliquer le fonctionnement de la Zone dans son ensemble. C'est d'autant plus difficile que la Zone change constamment. Je ne parle pas de l'apparition de nouvelles anomalies ou d'autres dtails insignifiants de ce genre, mais de changements bien plus graves, invisibles l'il nu. L'apparition du champ magntique en est un exemple flagrant ! Le problme, c'est que nous ignorons o tout cela nous mne. Nous n'avons d'autre choix que d'attendre sagement pour voir ce qui se passera. + + + Depuis combien de temps tes-vous dans la Zone ? + + + peine une semaine. Ceci dit, j'ai dj visit le laboratoire de Sakharov plusieurs fois. C'est vraiment dommage que nous ayons mis si longtemps monter cette expdition. J'ai pourtant expliqu maintes reprises aux membres du Ministre de l'ducation qu'il nous fallait deux laboratoires mobiles prts partir tout moment... Mais ils se sont contents de hocher la tte. cause d'eux, nous avons failli rater la meilleure opportunit que la Zone nous ait jamais offerte ! + + + Je vois. + + + Les dtecteurs que j'ai placs dans les anomalies ont t utiles ? + + + Quelles sont les anomalies qui vous intressent exactement ? + + + Celle qui se trouve prs du parking. + + + Nos appareils indiquent la prsence d'artefacts dans cette anomalie ! + + + Malheureusement, il ne semble y avoir aucun artefact dans cette anomalie. + + + Anomalie du Bain de bton + + + Anomalie du Puits bitume + + + Anomalie de la Tourbire + + + Anomalie du Tas de cendres + + + C'est tout pour le moment. + + + Je suis toute oue. + + + Les vnements rcents ont prouv que notre quipe de recherche n'tait pas prte travailler sur le terrain... Vous, en revanche, vous avez russi liminer un contrleur sans l'aide de personne ! C'est trs impressionnant ! + + + O voulez-vous en venir, au juste ? + + + Eh bien, il serait logique pour nous de recruter un expert tel que vous. Notre groupe de scientifiques a dsesprment besoin d'aide. Nous devons effectuer des relevs et des prlvements, installer des dtecteurs... + + + Continuez... + + + J'essaye d'tablir un lien entre les missions et l'apparition d'artefacts dans les anomalies. J'estime qu'il est possible de prvoir la prochaine mission en se fondant sur le nombre et la qualit des artefacts qui apparaissent. Mais j'ai besoin de statistiques pour pouvoir faire des calculs prcis. Il nous suffirait de placer quelques dtecteurs dans diffrentes anomalies pour obtenir les donnes ncessaires. + + + Dsol, mais a ne m'intresse pas. + + + Dommage... Vous auriez pu faire avancer la science ! + + + D'accord, je vais vous aider. + + + Parfait ! Novikov vous donnera les dtecteurs ncessaires. Il suffira ensuite de les placer dans les anomalies indiques sur votre PDA. Revenez me voir lorsque vous aurez termin ! J'aurais d'autres relevs et prlvements effectuer. + + + Je vais y rflchir. Je reviendrai plus tard. + + + J'ai plac les dtecteurs dans les anomalies. + + + Parfait ! J'ai dj reu les premiers rsultats. Vivement la prochaine mission... Elle nous fournira l'chantillon statistique dont nous avons besoin... + + + Voil qui est intressant ! + + + Lorsque je m'en suis approch et que j'ai rcupr le dtecteur, tout autour de moi s'est mis changer, comme si quelque chose comprimait les lieux. Au bout de quelques instants, des cadavres de stalkers sont apparus de nulle part ! Ensuite, tout s'est arrt aussi soudainement que a avait commenc. + + + C'est incroyable ! De toute vidence, ce phnomne est trop rare pour que l'on puisse en dduire quoi que ce soit, mais nous allons ajouter sa description dans nos dossiers. Nous appellerons cette anomalie la Bulle spatiale ! + + + On dirait que vous avez trouv de nouveaux gardes... + + + En effet ! Ils font trs bien l'affaire. Tout le monde se sent en scurit avec eux. Merci pour vos efforts ! Voici votre rcompense ! + + + Jetez donc un coup d'il ces documents ! + + + Voyons voir... Je ne vais pas vous demander o vous les avez rcuprs, mais c'est absolument incroyable ! Je vais en faire une copie... Au fait, tenez, voici une petite rcompense ! + + + O sont passs vos gardes ? + + + Aucune ide, ils ont disparu du jour au lendemain ! + + + Je connais pas mal de monde dans la Zone. Je pourrais vous trouver de nouveaux gardes. + + + Ce serait formidable ! Ils seraient entirement pris en charge et bnficieraient des derniers dveloppements technologiques en change de leur travail ! Et bien sr, nous saurions nous montrer gnreux ! + + + March conclu ! + + + J'ai hte ! + + + J'ai chang d'avis. + + + Dommage... + + + a arrive. + + + C'est tout ? + + + Nos gardes ont t assassins ! Abattus quelques mtres de notre bunker ! + + + J'ai trouv des documents dans l'usine de Jupiter... Vous voulez y jeter un coup d'il ? + + + C'est intressant, mais pas trs utile... Merci quand mme ! Si vous trouvez quoi que ce soit d'autre, n'hsitez pas me l'apporter ! + + + J'ai t attaqu par des mercenaires alors que je cherchais des documents. Voici le PDA de leur chef ! + + + Et moi qui croyais qu'ils taient l pour nous protger... On dirait que je vais devoir montrer a mes suprieurs... Merci beaucoup, jeune homme ! + + + Malheureusement, il ne contient aucune information intressante. + + + Il y a bien quelque chose... Nous devons apprendre quels taient les derniers prototypes dvelopps dans l'usine de Jupiter. Il me faut absolument les documents techniques concernant ces projets. Vous les trouverez srement dans les bureaux administratifs de l'usine. + + + Je rapporterai tout ce que je trouverai. + + + Dsol, je ne vais pas pouvoir vous aider. + + + J'ai rapport les documents de Jupiter. + + + C'est intressant, mais pas trs utile... Merci quand mme. Si vous trouvez quoi que ce soit d'autre, n'hsitez pas me l'apporter ! + + + J'ai t attaqu par des mercenaires alors que je cherchais des documents. Voici le PDA de leur chef ! + + + Et moi qui croyais qu'ils taient l pour nous protger... On dirait que je vais devoir montrer a mes suprieurs... Merci beaucoup, jeune homme ! + + + Je vais essayer de trouver l'anomalie. + + + Je n'ai pas le temps. + + + Je suis venu pour parler de ma participation vos recherches. + + + Je peux dire au nom de toute l'quipe que nous serions ravis si vous acceptiez de travailler une nouvelle fois au progrs de la science ! + + + J'aimerais aider effectuer des relevs ! + + + Vous tes prt nous aider effectuer un scan complet sur le terrain ? + + + Absolument ! Dites-moi ce qu'il faut faire ! + + + Non, il faut que j'y rflchisse ! + + + Vous aviez parl de dtecteurs, il me semble. + + + J'essaye d'tablir un lien entre les missions et l'apparition d'artefacts dans les anomalies. J'estime qu'il est possible de prvoir la prochaine mission en se fondant sur le nombre et la qualit des artefacts qui apparaissent. Mais j'ai besoin de statistiques pour pouvoir faire des calculs prcis. Il nous suffirait de placer quelques dtecteurs dans diffrentes anomalies pour obtenir les donnes ncessaires. + + + D'accord, je vais vous donner un coup de main. + + + Excellent ! Novikov vous donnera les dtecteurs ncessaires. Il suffira ensuite de les placer dans les anomalies indiques sur votre PDA. + + + Je vais y rflchir. Je reviendrai plus tard. + + + Les dtecteurs placs dans les anomalies transmettent des informations. Nous n'avons plus qu' attendre les rsultats. Vous pouvez en placer d'autres si vous voulez. Nous avons toujours besoin de donnes supplmentaires. Nous sommes mme prts vous indiquer o trouver des artefacts dans ces anomalies. + + + J'accepte. + + + Excellent ! Novikov vous donnera les dtecteurs ncessaires. Il suffira ensuite de les placer dans les anomalies indiques sur votre PDA. + + + Je vais y rflchir. Je reviendrai plus tard. + + + Malheureusement, nous avons pour rgle de ne jamais assigner plus d'une tche la mme personne. J'en suis navr, mais je n'ai pas le choix. + + + Avez-vous rcupr les rsultats des relevs effectus par l'quipe que je protgeais ? + + + Je tenais ajouter que les appareils ont clairement attir l'attention des mutants et des zombies du coin. Nous avons eu beaucoup de mal les repousser. + + + Hum... ils auraient donc ragi aux dtecteurs ? Voil qui est intressant. Cela confirme l'hypothse d'Ozersky sur le lien tlpathique entre les mutants et les diffrents champs. Il faut lui en parler ! Voici votre ddommagement pour le travail accompli. Vous l'avez bien mrit ! + + + Hum... ils auraient donc ragi aux dtecteurs ? Voil qui est intressant ! Cela confirme l'hypothse d'Ozersky sur le lien tlpathique entre les mutants et les diffrents champs. Il faut lui en parler ! Je suis vraiment dsol pour ces stalkers... Nous allons ddommager leurs familles avec une partie de l'argent qu'il nous reste. Le reste vous revient. Merci ! + + + Comment faire pour rcuprer une combinaison scientifique ? + + + C'est impossible ! Le nombre de combinaisons est limit et nous ne pouvons pas nous en sparer ! + + + Vous vouliez me dire quelque chose ? + + + Vous n'auriez pas vu les hommes chargs de la protection de notre bunker, par hasard ? + + + Je vous coute. + + + Vous n'allez jamais le croire, mais quelqu'un a tu nos gardes, quelques mtres de notre bunker ! + + + Vous avez besoin d'aide ? + + + Nous essayons de rcuprer un nouveau type d'chantillons. Ces artefacts ne semblent prsenter aucun effet anormal proprement parler, mais les expriences que nous avons menes ont donn des rsultats stupfiants ! + + + Continuez... + + + Et si vous alliez droit au but ? Dites-moi ce que je dois faire ! + + + Trs bien... Les stalkers qui ont dcouvert le champ psi pensent qu'il contient un nid de mutants. Mais j'ai du mal le croire... part les contrleurs, aucun mutant ne peut survivre un champ psi discontinu ! Mais cela ne m'inquite pas, nos hommes s'en chargeront. En revanche, nous avons besoin de vous, car nos stalkers ont t trop exposs aux champs psi et sont donc plus vulnrables leurs effets. + + + Mettons les choses au clair ! Vous voulez que j'aille dans un champ psi inconnu pour rcuprer un chantillon de quelque chose qui risque de ne pas y tre ou d'tre impossible identifier ? + + + C'est exactement a ! Cette mission est de la plus haute importance ! Vous nous seriez d'une grande aide ! Si vous avez des doutes, parlez-en Ozersky ! Il procdera aux analyses ncessaires et vrifiera votre rsistance aux missions psi. Vous pouvez galement demander nos Stalkers de tout vous expliquer. Alors, tes-vous prt aider la science ? + + + Oui. + + + Vous n'tes au courant ? Vos stalkers sont morts. + + + tant donn que vous n'tes pas all rejoindre notre quipe au tunnel la dernire fois, je doute qu'ils soient prts travailler avec vous. + + + C'tait un accident. + + + Je vous crois, mais notre quipe est compose d'hommes... comment dire... diffrents... Ils ne sont pas du genre oublier. Je vais leur parler et tcher de les convaincre de changer d'avis. Mais vous n'aurez plus droit l'erreur, j'ai vraiment besoin de cet chantillon. + + + Je suis dsol, mais je ne peux pas accepter. Votre quipement ne convient pas du tout un champ psi discontinu. Vous mourrez dans d'atroces souffrances et je ne tiens pas avoir votre mort sur la conscience. + + + J'ai rcupr l'chantillon. + + + Vraiment ? Vite, montrez-le-moi ! + + + J'ai rcupr votre chantillon. Figurez-vous qu'il y avait un contrleur dans le tunnel. Il a essay de contrler toute l'quipe et il a bien failli russir. Heureusement, je l'ai tu avant qu'il ne fasse trop de dgts. + + + Vous tes incroyable ! Tuer un contrleur et sauver les stalkers d'une attaque psi... J'aurais presque du mal le croire si je ne savais pas que c'tait vrai ! C'est une exprience extraordinaire et cet chantillon est tout bonnement parfait ! Votre contribution la science est absolument remarquable ! Au nom de mon quipe et de tous les scientifiques du monde, merci ! + + + Malheureusement, un contrleur nous est tomb dessus. Il a fallu que je me dfende et j'ai russi tuer le mutant, mais les stalkers y sont rests. + + + Un contrleur ? C'est terrible ! Qui aurait pu s'en douter ? Je regrette la mort de ces garons si courageux... Ils servaient la science. Mme s'ils n'taient pas de vritables scientifiques, ils ont accompli bien plus pour la recherche que de nombreux professeurs ! Tenez, prenez ceci ! Ce n'est pas grand-chose, mais a vient du cur... + + + Malheureusement, un contrleur nous est tomb dessus. Je m'en suis sorti de justesse. + + + Que font les mercenaires ici ? + + + Ils m'empchent de faire mon travail, voil ce qu'ils font ! Ils n'arrtent pas de me demander de rparer ceci, de modifier cela... Et puis hier, ils ont mme voulu savoir comment fonctionne notre quipement ! Je ne vois vraiment pas en quoi cela les aide protger notre bunker ! + + + Quel genre de modifications pouvez-vous apporter ? + + + Comme vous pouvez le constater, nous sommes dans un complexe de recherche scientifique... Je n'ai pas de kevlar ou d'armes ici. Je ne peux que rparer des armures ou les modifier en utilisant mes propres inventions. Comme vous pouvez l'imaginer, j'ai de quoi faire avec tout l'quipement sophistiqu dont nous disposons. + + + Grce l'chantillon rcupr dans le champ psi, Ozersky a russi mettre au point un systme protgeant contre les missions. J'ai repris son ide et suis parvenu crer un appareil plus pratique... que je peux installer sur votre combinaison si vous voulez. + + + En plus des amliorations habituelles, je peux proposer des amliorations pour vos filtres et vos protections anti-psi. Aprs tout, c'est grce vous que nous avons russi les dvelopper... Ozersky et Hermann sont aux anges ! + + + En plus des amliorations habituelles, je peux vous proposer des amliorations pour votre isolation et vos protections anti-psi. Aprs tout, c'est grce vous que nous avons russi les dvelopper... Ozersky et Hermann sont aux anges ! + + + Je peux apporter toute une gamme de modifications : isolation, filtrage et protection anti-psi. Une combinaison ainsi quipe vous permettra de traverser une anomalie... Au fait, merci d'avoir particip aux recherches d'Hermann ! Sans vous, nous n'aurions jamais pu dvelopper ces prototypes ! + + + Parlez-moi du bunker ! + + + Hum... Qu'est-ce que vous voulez savoir ? + + + Quelle est la mission du laboratoire ? + + + Hermann et Ozersky eux-mmes auraient du mal rpondre cette question... De toute vidence, ils mnent des recherches... Mais les rsultats ne sont pas vraiment probants. Ceci dit, il vaudrait mieux en parler Ozersky... Il a russi mettre au point des modifications de combinaison intressantes, en se basant sur ses thories. + + + Que pouvez-vous me dire au sujet de la Zone ? + + + Rien d'un point de vue scientifique, mais j'ai une grande exprience pratique de la Zone. Les seuls objets qui ont de la valeur ici sont ceux qui permettent de survivre plus longtemps. La Zone se fiche pas mal que vous soyez un bandit ou un stalker cherchant des artefacts pour nourrir sa famille. N'importe qui ne peut pas survivre dans la Zone. + + + Depuis combien de temps tes-vous dans la Zone ? + + + a va faire un bout de temps. Au dbut, je cherchais des artefacts comme tout le monde, mais j'ai eu des petits problmes de sant et je me suis vite rendu compte que je ne pouvais pas continuer comme a. Heureusement, il me reste quelques neurones, donc je n'ai pas eu trop de mal trouver du boulot. J'ai pass environ un an dans une faction d'anciens scientifiques. C'taient des gars bien... Dommage qu'ils soient tous morts en essayant aveuglment d'atteindre un objectif hasardeux. Aprs a, j'ai pass un bout de temps errer dans la Zone avant de rejoindre les scientifiques. Et jusqu'ici, tout se passe bien. + + + C'est tout ce que je voulais savoir. + + + Je compte aller dans le champ psi discontinu. Vous auriez des conseils me donner ? + + + Que pourrais-je dire ? Je doute que vous connaissiez la thorie du champ nergtique d'information... Sachez qu'une brve exposition un champ psi n'est pas dangereuse... enfin, pas trop dangereuse. Mais il vaut mieux rester sur ses gardes l-bas... Ceux qui sous-estiment les champs psi se transforment immanquablement en zombies. + + + Qui pourrait forcer un conteneur en acier ? + + + Moi pas, en tout cas. Je n'ai pas l'quipement ncessaire... et puis, nous avons un protocole trs strict pour ce genre de choses. + + + J'aurais besoin de dcrypter une bote noire... + + + Je serais capable de le faire, mais il est hors de question que je m'en charge ! a ne me plat pas vraiment et c'est beaucoup trop de boulot... J'ai dj beaucoup faire pour les scientifiques. + + + En quoi la combinaison CS-3a est-elle si spciale ? + + + En dehors du fait que je l'ai mise au point ? C'est l'une des meilleures combinaisons de la Zone ! Elle est lgre, flexible et dispose d'un blindage solide. J'y ai mme ajout une protection anti-anomalie... C'est vraiment dommage qu'on manque de matriaux en ce moment... Mais bon, on est au beau milieu des marais... Ceci dit, il suffirait de quelques modifications pour en faire une combinaison vraiment moderne... Je ne manque pas d'quipement sophistiqu, donc a ne devrait pas poser problme. + + + Vous travaillez pour le Hibou ? + + + Non, il m'a donn un coup de main l'autre jour... Je lui renvoie l'ascenseur. + + + Hibou m'a demand d'apporter des dtecteurs. Les voil ! + + + Trs bien. Je vais bosser dessus et demander aux guides de les lui rapporter Hibou... Tout le reste est entre vous deux. + + + Oh ! C'est donc toi qui vendais des armes aux bandits de Zaton ! + + + Chut ! Non, mais a va pas bien ? On se connat pas, pig ? + + + Compris. + + + Et si je parlais au commandant de ton petit commerce au black ? + + + Et qu'est-ce que tu vas lui dire ? Tu peux rien prouver ! C'est toi qui as aid liminer les tmoins, je te rappelle ! Tu auras l'air d'un con si tu m'accuses sans aucune preuve. + + + J'ai trouv un PDA sur le cadavre d'un mercenaire. Il contient un message mettant ma tte prix... avec ton nom sous la partie "client". + + + J'en ai ma claque de toi... Donne-moi ce PDA et je te filerai une super arme des membres de l'lite du Devoir en change. Alors, qu'est-ce que t'en dis ? + + + OK, je prends le flingue. + + + Garde-la ! Je n'ai pas besoin qu'une vipre sans scrupule me graisse la patte ! + + + J'ai un autre PDA contenant un message mettant ma tte prix. Encore une fois, qui est le client ? Toi ! + + + Bordel... Foutus mercenaires... On peut vraiment pas leur faire confiance... Bon, mettons un terme tout a... Voil ce que je te propose... Les mercenaires arrteront de te poursuivre et en change, tu me fous la paix. Et pour te ddommager, je peux t'indiquer l'emplacement de l'entrept secret du Devoir. Tu pourras prendre tout ce que tu voudras. + + + OK, a marche. + + + Bien. La planque se trouve prs de la carrire. On se retrouve l-bas. + + + Je n'irai nulle part. Tu vas devoir me donner tout a immdiatement. + + + Mais je n'ai rien sur moi ! Je suis pas con ce point ! Soit tu me retrouves la planque, soit tu repars les mains vides. + + + Non, merci. + + + Je n'ai pas besoin qu'une vipre sans scrupule me graisse la patte ! + + + Je veux quitter la Zone. + + + Vraiment ? Il sera impossible de changer d'avis plus tard... + + + Je suis sr de moi. Allons-y ! + + + En fait, je vais rester pour l'instant. + + + Voyons a... Eh bien, le foie est un peu plus gros qu'il ne devrait, mais je suppose que a fait partie des risques du mtier ! Sinon, rien signaler, tout va bien ! + + + Si a ne brillait pas, a serait normal. Mais l, a fout les boules... Faut le voir pour le croire... Mais je pense pas que tu apprcieras la visite. + + + Ok, si c'est comme a... + + + Des "anciens" combattants du Monolithe ? Eh bien, comme tu veux... Tu te portes garant pour eux ? + + + Des "anciens" combattants du Monolithe ? Non merci ! Je n'ai pas besoin d'une bande de fanatiques... + + + Ha, voil un bon garon ! Tu laisses pas tomber les tiens et a signifie qu'on reste en bons termes... Alors, qu'est-ce que tu m'as apport ? Un artefact ou les 15 000 billets ? + + + J'ai apport un artefact. + + + Trs bien, lequel ? + + + Je n'ai pas d'artefact qui vaille autant. + + + Une Flammche. + + + Un Cyprin. + + + Une Luciole. + + + Un Flocon. + + + Aucun, pour l'instant. + + + Bon, j'ai dit ce que j'avais dire. Alors, vas-y, parle ! + + + Au revoir. + + + Bien sr ! Le champ psi intermittent doit tre tudi et le plus tt sera le mieux. Mais permettez-moi de vous demander : tes-vous sr que ce n'est pas trop risqu ? Nous avons vraiment besoin de votre aide pour rcuprer cet chantillon. Alors, tes-vous prt aider la science ? + + + Je pourrais peut-tre trouver des hommes de confiance pour votre nouveau groupe de recherche. + + + Vraiment ? Cette aide serait fort bienvenue et se verrait rcompense. + + + Trs bien. Je vais embaucher le personnel ncessaire. + + + Je vais y rflchir un peu plus. + + + Voil. Il y avait un contrleur dans le tunnel, mais je l'ai abattu. + + + Vous tes incroyable ! Vous avez tu un contrleur et obtenu l'chantillon qu'il nous fallait ! C'est croire que je suis en train de rver ! Votre contribution au progrs de la science restera dans les annales ! La communaut scientifique du monde entier vous en remercie ! + + + Voil. Il y avait un contrleur dans le tunnel, je lui ai chapp de justesse. + + + Un contrleur ? C'est terrible, mais comment auriez-vous pu le savoir ? Le plus important est que vous ayez pu rapporter l'chantillon et ainsi contribuer au progrs de la science ! Merci ! Veuillez accepter cette modeste rcompense ! + + + Alors, ce nouveau groupe de recherche ? + + + Oh, il est parfait. Ces jeunes hommes sont trs comptents, je dois l'avouer. Vos talents en, hum... ressources humaines... sont fort apprcis. + + + Quoi de neuf ? J'ai rien contre un peu de compagnie, mais a me drangerait pas non plus d'tre un peu tranquille... + + + Je suis venu pour le stalker qui est retenu prisonnier. Je veux payer sa ranon. + + + Je tiens ce que tout le monde respecte les bandits et nos rgles, mais je cherche pas non plus foutre la merde pour rien... 15 000 billets ou un artefact de valeur feront l'affaire... Je suis un mec honnte. Je prendrai pas plus que ce qu'on me doit. + + + Voil le fric ! + + + Tu prends soin des tiens, c'est cool... Emmne ce loser et explique aux stalkers que la prochaine fois, a leur cotera beaucoup plus cher ! + + + Je n'ai pas autant sur moi. + + + Ok, t'as rien sur toi, mais c'est pas vraiment nouveau, si ? + + + Je n'ai rien qui ferait l'affaire sur moi. Je reviendrai plus tard. + + + Voyons voir... Bon, rien qui n'ait une vritable importance stratgique, mais a pourrait nous servir. 500 par documents, a irait ? + + + Voyons voir... Oh merde ! Cette info pourrait carrment dmolir la rputation du Devoir... Et si tu me la filais en change de 4 000 billets ? + + + Intressant... Disons que je serais prt acheter a pour 2 000 billets. + + + Ok, mais le prix reste le mme : 2000. + + + Ok, plus ! + + + Mais c'est terrible ! Qu'est-ce qui a bien pu leur arriver ? Hum... Une mutation est une possibilit... Il faut que je demande Ozersky de quel type de monstre il pourrait s'agir. Hum... Dans tous les cas, le champ psi doit tre tudi. Cette mission est de la plus haute importance ! Nous avons dsesprment besoin de votre aide pour rcuprer un chantillon. Si vous hsitez, allez voir Ozersky : il testera votre rsistance aux missions psi. Alors, prt faire avancer la science ? + + + Je vais y rflchir. + + + Notre quipe de recherche, compose d'un groupe de stalkers locaux, a rcemment localis un champ psi trs trange. D'aprs nos thories et les relevs effectus, ce champ a des effets psi intermittents et temporaires. + + + Malheureusement, tous les membres de notre quipe de recherche sont morts et, moins que nous ne trouvions des remplaants, nous ne pourrons pas obtenir de nouvelles donnes. + + + Attendez... Vous n'auriez pas un peu de temps me consacrer ? + + + Quels sont les rsultats des scans de l'anomalie ? + + + Je peux faire autre chose ? + + + J'en ai entendu parler. + + + Malheureusement, je n'ai pas encore russi convaincre Hermann de rassembler un groupe de recherche... C'est vrai, les rumeurs qui courent sur ce phnomne sont trop contradictoires, mais quelque chose me dit que cette Oasis existe vraiment. Mon intuition me trompe rarement. Je suis prt offrir une gnreuse rcompense qui m'apportera la preuve de son existence. + + + J'irais bien sa recherche, mais je suis dj all l'Oasis. + + + Hmm... Hein ? Je crois que j'ai mal entendu. Vous disiez ? + + + Je suis venu payer la dette de Vano. + + + Ouais, je me souviens de lui. Mais c'tait une belle somme la base, et, avec les intrts, on en est maintenant prs de 7 btons... + + + D'accord, les voil. + + + Dis Vano qu'il nous doit plus rien ! + + + Ok. + + + Je n'ai pas autant sur moi. + + + Reviens quand a sera le cas ! + + + Il n'a jamais t question de payer les intrts. + + + Tu te fous de ma gueule ? Tu me prends pour un con, ou quoi ? Tu crois vraiment que j'irais prter de l'oseille sans intrts ? a fait 7 000 billets, un point c'est tout ! + + + Rflchis bien... J'ai une arme et a me drangerait pas de m'en servir... Dis-moi, qu'est-ce que ton cadavre irait faire de tout cet argent, hein ? + + + Ok, ok, du calme ! Je suis sr qu'on va trouver un arrangement ! Donne-moi 5 000 et on dira que c'est rgl ! + + + Ha... tu peux te le mettre o je pense, ton flingue ! C'est 7 000, intrts inclus, fin de l'histoire ! + + + Tu m'as oubli ? J'ai toujours le flingue... + + + Je prfre te descendre gratis. + + + Je vais y rflchir. + + + 7 000, avec les intrts ! + + + Je peux pas me lancer dans de grands projets en ce moment. Faut que je me reprenne... Je pourrais peut-tre mme rentrer chez moi... Trouver un vrai boulot et oublier ces conneries d'artefacts... C'est juste que je peux pas abandonner le Grizzly... et Torba... On est vraiment proches, on s'aide les uns les autres... Je sais pas, peut-tre que j'ai juste besoin de repos, de me remettre les ides en place... + + + Je peux pas me lancer dans de grands projets en ce moment. Je vais aller bosser pour les scientifiques et me reprendre en main... Je pourrais peut-tre mme rentrer chez moi... Trouver un vrai boulot l'extrieur... Je sais pas... J'ai juste besoin de repos et de me remettre les ides en place. + + + Alors, prt sauver Mitay ? J'espre que a te drange pas de bosser avec quelques gars que j'ai embauchs. + + + J'ai le PDA de Morgan, le marchand du Devoir. + + + J'ai un PDA qui prouve que Morgan est en contact avec les mercenaires. + + + En fait... Je vais le garder. + + + Je savais que vous ne pourriez pas vous empcher de contribuer au progrs de la science et la sauvegarde de l'humanit ! Trs bien, voici le plan : un groupe de recherche constitu de stalkers doit effectuer les relevs. Votre travail consiste les escorter, c'est--dire les protger et les guider sur le terrain. Bonne chance ! Les stalkers vous attendent l'extrieur. + + + Salut, gamin. Tu ne t'attendais pas tomber sur un vieux croulant comme moi, hein ? H h ! Je suis venu ici avec les gars pour changer un peu d'air. Je rafistole l'quipement et mme les gens parfois... + + + Bon, puisque tu es l, qu'est-ce que je peux faire pour toi ? + + + Comment es-tu arriv jusqu' Pripyat ? + + + Garry m'a montr le chemin. Ces stalkers avaient l'intention de venir ici depuis un bon moment, mais ils n'avaient pas envie de s'occuper des militaires. Quand Garry a dit que les bidasses avaient mis les voiles, ils n'y ont pas rflchi deux fois et voil comment l'oncle Yar a dbarqu ici ! ha ! + + + J'ai besoin de soins mdicaux. + + + Laisse donc le vieux regarder a... + + + Voil, tu vas survivre... Si jamais a s'infecte, pisse dessus ! J'ai entendu dire que a aidait. + + + T'as l'air d'tre en parfaite sant ! Tu te foutrais pas un peu de la gueule du vieux ? + + + Bienvenue dans mon humble demeure ! Je propose divertissements et plaisirs en tout genre ! + + + Eh bien, les gars disent toujours que je suis trop gentil, un peu comme une vieille marraine, alors tu devrais t'estimer heureux... Je ne serais pas aussi magnanime la prochaine fois. Casse-toi, tocard ! + + + J'y suis dj all. Les bandits sont morts. + + + Waouh, t'es un vrai dur, toi ! Merci mille fois ! Tiens, prends cet argent ! Il devait servir rembourser la dette, mais maintenant au moins, il va revenir quelqu'un qui le mrite vraiment. + + + Waouh, t'es un vrai dur, toi ! Merci mille fois ! Garde l'argent qui devait servir rembourser la dette, au moins, il va revenir quelqu'un qui le mrite vraiment ! + + + Nos dtecteurs ont relev une activit inhabituelle au nord... D'aprs les donnes reues, je pense que l'anomalie qui s'y trouve est instable. Malheureusement, je ne peux pas en dire plus. Nous devons mener des expriences sur le terrain... Je pense que les dtecteurs ordinaires des Stalkers ne seront pas en mesure de reprer l'anomalie. Il va vous falloir un Svarog, l'une de nos crations. + + + Les dtecteurs enregistrent toujours une activit anormale et instable au nord. Avec un dtecteur plus sophistiqu que la normale, un Svarog par exemple, il devrait tre possible d'y mener des expriences. + + + Seulement du secteur anormal du marais pour l'instant. Mais malgr a, Novikov a russi trouver une application pratique. Merci pour tout, nous sommes impatients de voir la deuxime fourne de rsultats ! + + + Seulement du secteur anormal au-del de Kopachy pour l'instant. Mais malgr a, Novikov a russi trouver une application pratique. Merci pour tout, nous sommes impatients de voir la deuxime fourne de rsultats ! + + + Bien sr. J'ai reu tous les rsultats. Je dois avouer, le volume de donnes est si important qu'il va nous falloir des semaines, voire des mois, pour les exploiter. Mais malgr a, Novikov a dj trouv de nombreuses applications pratiques. Merci infiniment ! + + + Non, il ne s'est pass rien de tel ici. Hum... Par contre, j'ai aperu un mec louche rcemment. Je suis all me balader l'autre jour et, sur le chemin du retour, j'ai crois un stalker qui sortait de Yanov. Quand il m'a aperu, il s'est mis m'insulter sans raison, dire des trucs du genre "je sais o t'habites". Sur le moment, je l'ai ignor, je pensais qu'il tait saoul, mais maintenant que j'y repense, c'tait quand mme bizarre. + + + O est-il all ? + + + Vers le nord-est. J'ai entendu des coups de feu qui venaient de l-bas, mais rien d'anormal. Zulu en saura peut-tre plus. Il est dans sa tour jour et nuit, il a peut-tre vu quelque chose. + + + Vers le nord-est. Il allait probablement au poste lectrique. + + + Je vois. + + + Quoi de neuf ? + + + Comment a va ? + + + a va pas mal. Je veux dire, c'est pas facile, mais on va s'en sortir. Ensemble, tout est possible ! + + + Comment a va ? + + + Je ne sais pas trop... Je ne me sens pas l'aise ici... Je crois qu'il va falloir que je change d'air. Je vais peut-tre partir, il ne faut pas m'en vouloir. + + + J'ai fait le mnage dans le nid de sangsues de Zaton. Place nette ! + + + [continuer...] + + + [continuer...] + + + [continuer...] + + + [continuer...] + + + Il me faut des hommes pour effectuer des relevs dans les anomalies. + + + J'ai besoin que des relevs soient effectus dans les anomalies. + + + C'est qui, la belle au bois dormant ? + + + Alors, cet artefact ? + + + C'est clair ! Y rien faire ici... On n'a que ce jeu de backgammon pour se changer les ides... C'est pas comme Pripyat... Si seulement je pouvais finir cette connerie de contrat, j'y serais dj ! + + + [continuer...] + + + Faudrait aller la carrire... C'est l que Senya est mort. Juste avant de passer l'arme gauche, il m'a dit que Flint avait piqu son matos et l'avait laiss crever dans une anomalie. + + + Il s'appelait Senya. Il a fonc tout droit dans une anomalie gazeuse et tu t'es barr avec son artefact. Comme tu peux le constater, il a russi tout me raconter avant de mourir. + + + Je ne tiens pas savoir d'o a vient, a... On va faire simple : je suis prt acheter ce PDA pour 4000. a fait un moment que je me demande ce que fabrique notre intendant quand il n'est pas son poste. + + + Voyons voir... Mais quelle enflure ! Non seulement il leur vendait nos armes, mais en plus, il a ouvert les portes de l'entrept la Libert ! On va lui prparer un petit comit d'accueil, et vite ! + + + Voyons voir... Putain, j'y crois pas ! On tait au courant pour l'entrept et on avait mme prvu d'y faire un tour, mais on savait pas qu'il y avait une alarme... Cet enfoir nous a pas prvenus ! Deux secondes, je vais aller prvenir les gars. + + + Ben, je veux bien l'acheter pour 4000, par simple curiosit. + + + C'est pas franchement un militaire de carrire, mais il sait tenir un flingue. On peut pas dire qu'il respire la joie de vivre... C'est comme s'il n'avait rien d'autre bouffer que des citrons. + + + J'ai trouv une trange anomalie dans l'ancienne tour de refroidissement. + + diff --git a/gamedata/configs/text/fra/st_dialogs_pripyat.xml b/gamedata/configs/text/fra/st_dialogs_pripyat.xml new file mode 100644 index 0000000..fbe3f15 --- /dev/null +++ b/gamedata/configs/text/fra/st_dialogs_pripyat.xml @@ -0,0 +1,906 @@ + + + + Ha ! a leur apprendra ! Merci pour le coup de main. Sans toi, ces enfoirs m'auraient fait la peau ! T'es plutt dou, aprs tout... Dsol d'avoir pt les plombs tout l'heure, mais t'aurais d me dire la vrit plus tt. + + + Il n'y a pas de mal. On ferait mieux de retourner au camp militaire. On y sera plus en scurit. + + + Ouais, a sera toujours mieux que de traner dans Pripyat tout seul. + + + Allons-y dans ce cas ! + + + J'ai quelques trucs faire par ici, vas-y sans moi ! Le camp se trouve dans la laverie. + + + Je dois y aller. + + + Attends... Prends a ! C'est la meilleure mitrailleuse de toute la Zone. + + + Tu n'en a plus besoin ? + + + J'ai tout ce qu'il me faut pour repousser quelques mutants. Et puis, j'ai dcid de repartir : Garry va m'emmener Jupiter. Alors, tu vas en avoir plus besoin que moi. Prends-la ! + + + Bonne chance ! + + + Merci, c'est une trs bonne arme. + + + Ha ! C'est la meilleure arme de la Zone, tu veux dire ! Elle a t modifie, ce qui l'a alourdi un peu, mais avec ce petit bijou, t'auras plus jamais besoin de courir ! C'est l'ennemi qui prendra ses jambes son cou ! + + + Au revoir. + + + Cool ! + + + Tu sais o est pass Zulu ? + + + Il est parti... Il m'a demand de le conduire Jupiter et on s'est spar pas trs loin de l'usine. Il ne m'a pas dit o il allait. + + + Attends... Il m'est arriv un truc qu'il faut que je te raconte... Des mercenaires m'ont demand de les amener Pripyat. Ils m'ont convaincu en me proposant une jolie prime, mais j'ai vite compris que j'tais dans la merde... Ils me laissaient pas m'loigner, ils me menaaient de leurs armes... J'ai russi me faire la malle en arrivant Pripyat, mais ils doivent toujours tre en ville, alors fais gaffe toi ! + + + Tu as entendu de quoi parlaient les mercenaires ? + + + En partie, oui. Ils avaient aucune intention de me laisser repartir en vie, alors ils se sont pas mfis. Ils parlaient principalement de leur rendez-vous avec leur client, de l'objet qu'ils allaient lui montrer et de leur mission. + + + O cette rencontre doit-elle avoir lieu ? + + + Prs d'ici, dans la cour du complexe rsidentiel. + + + Merci pour l'info. + + + Tu as parl des mercenaires. Tu as entendu de quoi ils parlaient ? + + + En partie, oui. Ils avaient aucune intention de me laisser repartir en vie, alors ils se sont pas mfis. Ils parlaient principalement de leur rendez-vous avec leur client, de l'objet qu'ils allaient lui montrer et de leur mission. + + + O cette rencontre doit-elle avoir lieu ? + + + Prs d'ici, dans la cour du complexe rsidentiel. + + + Je me suis arrang avec les scientifiques pour rcuprer une combinaison. Allez voir Hermann. + + + OK... O est le point de rendez-vous ? + + + Prs de la gare de Yanov, chez Zulu. + + + Mais a grouille de stalkers ! Si je m'y montre sans escorte, il risque d'y avoir du grabuge. Avec vous mes cts, ils n'oseront pas tirer. + + + quel point d'vacuation tes-vous all ? + + + Dsol, mais je ne peux pas en parler. C'est class top secret. + + + Allons voir Zulu ! + + + OK, mais il faut d'abord passer voir Herman pour rcuprer la combinaison scientifique. + + + Allons-y ! + + + Je veux bien, mais pas au beau milieu d'une mission... On attend un peu ? + + + Comment avez-vous fini ici ? + + + Mon hlicoptre s'est cras sur un atelier de Jupiter et est pass travers le toit. Je suis le seul survivant : j'ai russi sortir de l'usine et atteindre le point d'vacuation, mais il n'y avait personne. C'est l que j'ai rencontr Garry et qu'il m'a conduit au bunker. + + + Il va vous falloir une combinaison quipe d'un module respiratoire en circuit ferm pour aller Pripyat. + + + Qu'est-ce que vous faites ici ? + + + Mes ordres sont d'aller au point d'extraction, mais la Zone est bien trop dangereuse. Je suis un pilote, bordel, pas un commando ! C'est pour a que j'attends ici, j'espre que quelqu'un viendra me rcuprer quand l'opration sera termine. + + + Je suis en train de monter une quipe pour aller Pripyat. a vous dit ? + + + Pripyat ? Hum... Pourquoi pas... Peut-tre que certains de nos hommes ont survcu et ont russi atteindre la ville. Il y a un point d'extraction Pripyat, aprs tout. Tout seul, je n'aurais aucune chance, mais avec toute une quipe, a vaut certainement le coup d'essayer. + + + Prt partir ? + + + On peut dire a. + + + Bonjour, stalker. + + + Bonjour. + + + Bonjour. + + + Bonjour, major ! + + + O avez-vous trouv cet uniforme militaire ? + + + Hum... Bon, j'imagine que tout le monde est au courant pour les hlicos, maintenant... Je suis le lieutenant Sokolov, copilote de l'un des hlicoptres. + + + propos de la sentinelle... + + + Le signal provient de la vieille picerie, mais il ne rpond pas... peut-tre qu'il a perdu sa radio... nous n'avons aucun moyen de le savoir pour l'instant, il faut donc le retrouver ! + + + Merci, colonel, je vais me dbrouiller. + + + propos de la sentinelle... + + + C'est la faute de ce contrleur... C'est srement ce qui est arriv l'unit de reconnaissance ! Il a d les obliger s'entre-tuer.... Ces cratures sont les pires de la Zone et on manque d'exprience pour les combattre. Les hommes sont tombs dessus compltement par hasard. + + + Au moins, il ne peut plus faire de dgts maintenant. + + + J'espre effectivement que nous allons pouvoir nous reposer un peu. Merci pour votre aide, major. Je suppose que vous avez d utiliser pas mal de munitions au cours de cette mission... Allez voir le lieutenant Kirillov et demandez-lui de vous donner le paquetage rglementaire. + + + Merci, colonel ! + + + Ne vous inquitez pas, colonel, je vais m'occuper de ce mutant. + + + Vous pourriez me donner un peu plus d'informations sur cette mission ? + + + Qui est-il ? + + + Si on ne trouve pas bientt la source des interfrences, il ne nous restera pas grand-chose faire, part attendre de mourir. La moindre attaque du Monolithe rduira nos forces nant... Et cela ne fera que confirmer l'chec de cette mission. + + + Je vais essayer de trouver la source au plus vite. + + + Alors, major ? Vous avez trouv la source des interfrences radio ? + + + Non, je suis toujours sur l'affaire... + + + Garry m'a parl de l'incident avec les mercenaires... + + + Oui, il m'en a parl aussi... Ds qu'il a russi s'chapper, il est venu se rfugier ici. Heureusement pour lui comme pour nous, les mercenaires n'ont pas retrouv sa trace... On surveille l'endroit o les mercenaires et leurs clients doivent se rencontrer, mais en vain... J'aimerais bien savoir ce qu'ils manigancent... + + + J'ai appris que les mercenaires sont la recherche d'un laboratoire secret Pripyat. + + + Un labo secret ? Ici Pripyat ? O avez-vous eu cette information ? + + + Dans l'ordinateur d'un mercenaire que j'ai trouv Zaton. Cette histoire a ensuite t confirme par un stalker qui se fait appeler Oncle Yar. + + + Hum... Vous savez autre chose ? + + + Ils sont la recherche du laboratoire central. J'ai dcouvert ses coordonnes au cours de mon enqute. + + + Si ces informations sont exactes, a veut dire qu'on a un autre ennemi, en plus des zombies et des fanatiques... Il faut prendre une dcision. + + + Nous devons observer la rencontre et essayer d'liminer les commanditaires, de faon s'assurer que personne ne tente d'accder au labo X8 pendant un certain temps. + + + C'est une bonne solution car, bien qu'elle ne nous permette pas de savoir qui d'autre est au courant de l'existence du labo, elle nous garantit au moins que les mercenaires ne parviendront pas l'atteindre. D'un autre ct, les mercenaires ragiront sans doute immdiatement et risquent de se montrer dangereux. Essayez d'abattre les deux cibles si vous le pouvez. Je vais dire au lieutenant Kirilov de vous accompagner. + + + Ok. + + + Attendez, il vaudrait peut-tre mieux choisir l'autre cible. + + + Dcidez quelle cible doit avoir la priorit. + + + Il faut liminer le chef des mercenaires. Sans tte pensante, le groupe ne reprsentera plus une relle menace. + + + C'est une solution acceptable, mais elle permet au commanditaire de s'chapper et de transmettre les informations concernant le laboratoire, ce qui signifie que les mercenaires finiront par l'atteindre un jour ou l'autre. Il vaudrait mieux liminer les deux cibles si vous le pouvez. Je vais dire au lieutenant Kirilov de vous accompagner. + + + Je n'ai pas le temps. + + + Sur l'ordinateur d'un mercenaire Zaton. + + + Oncle Yar, un stalker de la gare de Yanov, m'a racont cette histoire. + + + propos des mercenaires... + + + Bon travail. Les deux cibles ont t limines ! Les mercenaires ne traneront plus dans nos pattes et arrteront de s'intresser au laboratoire. Vous pouvez garder le fusil. Et voici quelques munitions supplmentaires. + + + Bien. Maintenant que leur chef est mort, les mercenaires ne nous poseront plus problme. Mais comme leur client s'en est enfui, ils risquent toujours d'atteindre le laboratoire. Restez sur vos gardes... Vous pouvez garder le fusil. Et voici quelques munitions supplmentaires. + + + Bien, maintenant que celui qui connaissait l'emplacement du laboratoire est mort, les mercenaires ne risquent plus de le trouver ! D'un autre ct, je doute qu'ils quittent Pripyat de sitt et cela signifie qu'ils continueront poser problme. Restez sur vos gardes... Vous pouvez garder le fusil. Et voici quelques munitions supplmentaires. + + + Vous avez chang de cible au dernier moment ? Et puis, pourquoi pas, aprs tout... Maintenant que leur chef est mort, les mercenaires ne nous menaceront plus. Mais comme leur client a pu s'en tirer, ils risquent toujours d'atteindre le laboratoire. Restez sur vos gardes... Vous pouvez garder le fusil. Et voici quelques munitions supplmentaires. + + + Vous avez chang de cible au dernier moment ? Et puis, pourquoi pas, aprs tout... Maintenant que celui qui connaissait l'emplacement du laboratoire est mort, les mercenaires ne risquent plus de le trouver. D'un autre ct, je doute qu'ils quittent Pripyat de sitt et cela signifie qu'ils continueront nous poser problme. Restez sur vos gardes... Vous pouvez garder le fusil. Et voici quelques munitions supplmentaires. + + + a ne s'est pas trs bien pass... Le chef des mercenaires est toujours en vie, tout comme son commanditaire. Les mercenaires savent prsent que nous les surveillons et nous ferons encore moins de cadeaux que les combattants du Monolithe. En plus, comme ils savent maintenant o se trouve le laboratoire, ils ne tarderont pas s'y rendre. Restez sur vos gardes... Vous pouvez garder le fusil. Et voici quelques munitions supplmentaires. + + + Prvenez vos soldats, colonel ! Je suis prt partir ! + + + Trs bien. Protgez Strelok, major ! Mes gars et moi, nous nous en sortirons trs bien tous seuls. + + + Bon... De nous tous, vous et Strelok avez le plus d'exprience dans la Zone. Mais bon, l'exprience de Strelok reste encore prouver, contrairement la vtre. Ce que j'essaie de vous dire, c'est que je compte sur vous, major. Gardez un il sur Strelok ! Nous ne sommes plus trs nombreux. + + + L'unit est prte partir. On n'attend plus que vous, major ! + + + On dirait que tous les tars sont morts. Prenez ce fusil et filons d'ici tant qu'on le peut encore ! + + + a me parat une bonne ide. + + + Je suis prt, allons-y ! + + + OK. L'unit est prte ! + + + Allons-y ! + + + Il va falloir attendre. Je n'ai pas envie de perdre des hommes dans une mission. + + + Je suis le capitaine Tarasov. Vous tes peut-tre major, mais c'est moi qui commande ici, ce qui signifie que mes ordres ne sauraient tre discuts. La vie de chacun des hommes de l'unit en dpend. Notre plan est le suivant : on prend position dans l'aile ouest de l'hpital et on attend que les forces du Monolithe se montrent. Il va falloir faire vite pour ne pas trop attirer l'attention. + + + Compris, allons-y ! + + + OK. L'unit est prte ! + + + Allons-y ! + + + Il va falloir attendre. Je n'ai pas envie de perdre des hommes dans une mission. + + + Attendez, capitaine, je ne suis pas encore prt. + + + Des nouvelles au sujet de ces interfrences ? + + + J'ai identifi plusieurs sources, dont une est proche d'ici. Si on la dtruit, on pourra peut-tre communiquer avec le QG. + + + J'ai travaill sur les coordonnes de la source des interfrences. Il doit s'agir d'une frquence leve spcialise, voire d'un transmetteur de micro-ondes. + + + L'appareil que vous avez dtruit tait la source des interfrences : il y en a probablement beaucoup d'autres, mais votre intervention nous a permis de contacter le QG. + + + J'aimerais en savoir plus sur ce signal. + + + Il n'arrte pas d'apparatre, puis de disparatre. Mais chaque fois qu'il rapparat, il se rapproche de la base. + + + C'est tout ? + + + Non. Le hic, c'est que ce signal est transmis sur des frquences rarement utilises pour des communications radio. + + + Je vois. + + + Prenez cette arme et ces munitions... Vous pouvez vous dtendre pour l'instant. Je vais monter la garde de l'autre ct et je vous contacte ds qu'ils arrivent. + + + Ok. + + + Bonjour. Je suis le lieutenant Kirilov, responsable du stockage des munitions et de la maintenance des armes. + + + Vous avez des munitions ? + + + Ouais, on a fait une vire dans un entrept du Monolithe l'autre jour et on a rcupr des munitions pour tous les types d'armes de la Zone... Je me demande bien comment ils ont pu accumuler tout a... Je pense qu'un des gardes du primtre doit leur revendre. + + + Donc, vous pouvez aussi rparer mes armes ? + + + videmment. On peut rparer tous les types d'armes. + + + Je vois. + + + Bonjour ! + + + D'o vient cette migraine... + + + a y est, c'est le moment de vrit. Je me demande si on va y arriver... + + + Il me faut des munitions. + + + Pas de problme, vous avez besoin de quoi ? + + + Des munitions de pistolet 9x18 mm... + + + Voil. C'est tout ? + + + Tenez... + + + Des munitions de pistolet 9x19 mm... + + + Des munitions de pistolet 11,43x23... + + + Des munitions de fusil pompe... + + + Des munitions de fusil d'assaut 5,45x39 mm... + + + Des munitions de fusil d'assaut 5,56x39 mm... + + + Des munitions de fusil d'assaut 9x39 mm... + + + Des munitions de fusil de prcision... + + + Des munitions de mitrailleuse... + + + Je ne peux rien vous donner de plus, major... Le colonel a ordonne d'conomiser les munitions. + + + Ok, oubliez a. + + + Il me faut des grenades. + + + Pas de problme... De quel type ? + + + Des grenades individuelles. + + + Tenez... + + + Des grenades VOG-25. + + + Des grenades de M203. + + + En fait, oubliez a. + + + Je ne peux rien vous donner de plus, major... Le colonel a ordonne d'conomiser les munitions. + + + J'ai besoin de soins mdicaux. + + + Toujours prt aider ! Faites-moi voir... + + + Et voil, vous tes prt repartir ! + + + Comment vous vous sentez ? + + + Je vais bien maintenant... J'tais en tat de choc aprs ce qui s'est pass la maternelle, mais j'en suis sorti rapidement quand l'mission a commenc. + + + Bonjour ! + + + Notre objectif est d'atteindre ces hlicoptres. + + + J'ai besoin de fournitures mdicales. + + + Voyons ce que j'ai en stock. Prenez donc a... + + + Dsol, il ne me reste plus grand-chose, je ne peux rien vous donner de plus. + + + On a suivi votre signal radio. + + + Ouais. J'ai contact un stalker qui se fait appeler Guide. Il m'a dit comment atteindre cet endroit par les tunnels. + + + Qui est ce Guide ? + + + C'est un stalker de lgende. On dit qu'il peut vous conduire partout dans la Zone... Les gars de l'arme ont eu de la chance de tomber sur lui, ils n'auraient pas survcu longtemps sans lui. + + + Comment saviez-vous que les militaires taient l ? + + + Le Guide me l'a dit. C'est lui qui a amen Kovalsky et ses hommes ici. + + + Je vois. + + + Quel genre d'informations comptez-vous donner au gouvernement ? + + + Plein de choses... Je suis sr que mes infos peuvent servir dtruire la Zone. Je pensais y arriver tout seul... Mais a s'est avr un peu trop compliqu. Ceux qui ont commenc tout a ne sont plus aux commandes... J'expliquerai tout quand on sera sorti d'ici. + + + Qu'est-ce que vous avez vu dans le sarcophage ? + + + Ce n'est qu'une supercherie... Le Monolithe, l'Exauceur de vux ! Des mensonges, un appareil qui embrume l'esprit ! Et ceux qui sont derrire tout a se cachent quelque part... + + + Vous savez qui est derrire tout a ? + + + Peut-tre, peut-tre pas... Je ne sais plus trop quoi croire... Mais malgr tout, j'ai dcouvert bien plus qu'ils ne le voulaient. + + + OK, a suffit pour l'instant. + + + Je partagerai tout ce que je sais. Tant que ces infos parviennent aux bonnes personnes... + + + J'ai trouv les planques de votre groupe en chemin... + + + Je me demandais comment vous aviez fait... Il devait y avoir des enregistrements l'intrieur, non ? + + + Oui, j'ai trouv ces trois messages. + + + Merci... Les Crocs et le Spectre taient mes amis. Ensemble, on a dpass le Lobotomisateur et atteint la centrale de Tchernobyl. Malheureusement, ils sont tous les deux morts. Sur le chemin du retour, on s'est spars : j'tais bless, je suis rest dans le marais avec le Doc. Je les ai jamais revus... Ce n'est que bien plus tard que j'ai appris que les Crocs avait t tu par des mercenaires et que Spectre tait mort pour avoir fait confiance aux scientifiques... Mais bon, le pass est le pass... Maintenant, je dois faire en sorte que mes amis ne soient pas morts en vain. + + + Oui, voici votre message pour le Spectre. + + + Merci... Le Spectre tait mon ami. Les Crocs, le Spectre et moi, on a dpass le Lobotomisateur et atteint la centrale de Tchernobyl. Sur le chemin du retour, on s'est spars : j'tais bless, je suis rest dans le marais avec le Doc. Je les ai jamais revus... Ce n'est que bien plus tard que j'ai appris que les Crocs avait t tu par des mercenaires et que le Spectre tait mort pour avoir fait confiance aux scientifiques... + + + Oui, voici le message des Crocs. + + + Merci... Les Crocs tait mon ami. Le Spectre, lui et moi, on a dpass le Lobotomisateur et atteint la centrale de Tchernobyl. Sur le chemin du retour, on s'est spars : j'tais bless, je suis rest dans le marais avec le Doc. Je les ai jamais revus... Ce n'est que bien plus tard que j'ai appris que les Crocs avait t tu par des mercenaires et que le Spectre tait mort pour avoir fait confiance aux scientifiques... + + + Oui, voici votre message pour les Crocs. + + + Merci... Les Crocs tait mon ami. Le Spectre, lui et moi, on a dpass le Lobotomisateur et atteint la centrale de Tchernobyl. Sur le chemin du retour, on s'est spars : j'tais bless, je suis rest dans le marais avec le Doc. Je les ai jamais revus... Ce n'est que bien plus tard que j'ai appris que les Crocs avait t tu par des mercenaires et que le Spectre tait mort pour avoir fait confiance aux scientifiques... + + + Oui, voici votre message au Spectre et le message des Crocs. + + + Merci... Le Spectre et les Crocs taient mes amis. Ensemble, on a dpass le Lobotomisateur et atteint la centrale de Tchernobyl. Sur le chemin du retour, on s'est spars : j'tais bless, je suis rest dans le marais avec le Doc. Je les ai jamais revus... Ce n'est que bien plus tard que j'ai appris que les Crocs avait t tu par des mercenaires et que le Spectre tait mort pour avoir fait confiance aux scientifiques... + + + Oui, voici votre message au Spectre et un autre pour les Crocs. + + + Merci... Le Spectre et les Crocs taient mes amis. Ensemble, on a dpass le Lobotomisateur et atteint la centrale de Tchernobyl. Sur le chemin du retour, on s'est spars : j'tais bless, je suis rest dans le marais avec le Doc. Je les ai jamais revus... Ce n'est que bien plus tard que j'ai appris que les Crocs avait t tu par des mercenaires et que le Spectre tait mort pour avoir fait confiance aux scientifiques... + + + Oui, voici votre message pour les Crocs et sa rponse. + + + Merci... Les Crocs tait mon ami. Le Spectre, lui et moi, on a dpass le Lobotomisateur et atteint la centrale de Tchernobyl. Sur le chemin du retour, on s'est spars : j'tais bless, je suis rest dans le marais avec le Doc. Je les ai jamais revus... Ce n'est que bien plus tard que j'ai appris que les Crocs avait t tu par des mercenaires et que le Spectre tait mort pour avoir fait confiance aux scientifiques... + + + Oui. Malheureusement, je ne les ai pas sur moi. + + + Voyons voir... Ouh, a s'annonce mal, major ! Je veux dire, vous vous qualifieriez srement pour le programme spatial, mais, en dehors de a, c'est pas la grande forme ! Ah ah ! + + + Allez, major. Les combattants du Monolithe ne vont pas nous attendre. + + + Major, une de nos sentinelles a quitt son poste et ne rpond plus. Le signal de sa balise provient maintenant de l'picerie. Dieu seul sait ce qui a pu se passer, il a peut-tre craqu, l'accident de l'hlicoptre l'a beaucoup secou... Vous voulez bien essayer de voir ce qu'il y a sur place ? + + + J'y vais. + + + Je ne peux rien promettre. + + + Major, il faut retrouver l'unit de reconnaissance. + + + L'quipe d'assaut et vous devez vous rendre au point A17, le capitaine Tarasov va vous indiquer o il se trouve. Vos cibles sont dans deux ailes de l'hpital relies par un passage. Les combattants du Monolithe sont actuellement dans l'aile ouest. Vous devez leur tendre une embuscade dans l'autre aile. Leur meilleur homme est probablement quip du fusil. + + + C'est trs probablement le chef de l'unit, il a t vu en train de sermonner ses soldats. Soyez prudents, on ne sait pas de quoi il est capable... + + + Bien compris, colonel ! + + + Bonjour. Je suis le colonel Kovalsky, commandant de cette unit. + + + Je suis le major Degtyarev, SBU. J'ai pour ordre d'enquter sur les raisons de l'chec de l'opration Fairway. + + + Je vois... Alors coutez-moi, major ! L'opration est partie en vrille en mme temps que nos hlicoptres. La moiti de mes gars sont morts et le QG est injoignable. J'ai autant envie que vous de connatre les raisons de l'chec de cette opration. + + + Des ides ? + + + mon avis, les hlicoptres ont t abattus par une arme aussi puissante qu'inconnue. Les combattants du Monolithe en ont utilis une contre nous lors du premier assaut de la centrale... J'ai l'intention de rcuprer l'une de ces armes pour l'tudier. Nous avons localis l'unit du Monolithe qui transporte l'arme et un groupe d'assaut se tient prt attaquer. Vous voulez participer l'opration ? + + + J'accepte la condition que vous me fournissiez toutes les informations en votre possession et me laissiez une libert d'action totale. + + + J'ai des informations sur l'arme non identifie, le fusil Gauss. + + + Excellent ! Comment est-ce qu'il marche ? Est-ce qu'il peut abattre un hlicoptre ? + + + En thorie oui, mais il y aurait eu des traces d'impact sur les hlicoptres et ce n'est pas le cas. + + + Bon sang... C'est donc une impasse... Je n'ai pas d'autre ide. Tout ce qu'il nous reste faire, c'est rester assis sur notre cul au beau milieu de cette putain de Zone et d'esprer que les secours vont arriver... Bon, assez pleurnich... Concentrons-nous sur ce qui se passe ici et maintenant ! Grce vous, nous savons dsormais que mme couvert, nous ne sommes pas l'abri de ces balles magntiques, c'est dj a... Je vous en remercie, major. Je vous contacterai si nous apprenons quoi que ce soit d'autre. + + + En thorie, oui, mais Stingray 4 et 5 se sont crass suite une dfaillance des systmes lectroniques. Les balles du fusil Gauss n'auraient pas pu faire a. + + + Comment se droule l'opration ? + + + Le sergent Morozov a t tu. Les forces du Monolithe nous ont tendu un pige en sacrifiant leurs propres hommes. + + + Les salauds ! Ils ne pouvaient pourtant pas savoir que nous allions attaquer... On a donc perdu un tireur de prcision. Et pour l'objectif de l'opration ? + + + On a subi des pertes... Les forces du Monolithe nous ont tendu un pige en sacrifiant leurs propres hommes. + + + Les salauds ! Ils ne pouvaient pourtant pas savoir que nous allions attaquer... On a donc perdu des hommes. Et pour l'objectif de l'opration ? + + + L'unit a t anantie... Les forces du Monolithe nous ont tendu un pige en sacrifiant leurs propres hommes. + + + Les salauds ! Ils ne pouvaient pourtant pas savoir que nous allions attaquer... On a donc perdu Tarasov et ses hommes. Et pour l'objectif de l'opration ? + + + J'ai l'arme, mais elle a t endommage au cours des combats. + + + Nous ne pourrons donc pas dterminer si elle a t utilise pour abattre les hlicoptres. coutez, major : vous avez des contacts parmi les stalkers. Il est possible qu'ils soient dj tombs sur cette arme. Et il y a des techniciens parmi eux. Vous voulez bien essayer de leur parler ? + + + Ok. + + + Parfait... Oh et au fait... Un autre stalker a russi venir ici de Jupiter. Ce serait peut-tre une bonne ide de lui parler. + + + J'y travaille encore. + + + Je vois... Major, nous avons absolument besoin de cette arme ! Je suis sr que vous comprenez quel point c'est important... + + + Oui. + + + J'ai trouv le message dans le complexe Volkhov AA. Voil ! + + + Alors... Oh, et puis tant pis, c'est pas grave. Personne risque de se pointer l-bas, de toute faon. Si tu vois des militaires dans le coin, tu me tiens au courant, OK ? Merci d'avance... + + + Major... Merci mille fois, je suis sauv ! + + + Comment avez-vous fini ici ? + + + Hum... Je ne me rappelle pas tout... J'avais tellement peur que je n'arrivais plus rflchir et je ne me souviens mme plus de ce qui a bien pu m'effrayer. Je savais seulement qu'il fallait que je me cache, alors je me suis mis courir... Je me souviens des rues, d'avoir tourn quelque part... Et je me suis retrouv dans ce trou. La porte tait ferme de l'extrieur... J'ai cru que j'allais mourir ici. Comment vous m'avez trouv ? Euh non, les explications peuvent attendre... Sortons ici et rapprochons-nous un peu de la base ! Cet endroit me fiche les jetons... + + + Allons-y ! + + + Bonjour. Besoin d'assistance mdicale ? Je ne suis pas mdecin, mais je peux extraire des balles et recoudre des blessures si ncessaire. + + + J'ai besoin d'infos. + + + J'coute. + + + propos de l'opration Fairway... + + + Oui, et alors ? + + + Est-ce qu'il s'est pass quelque chose d'inhabituel quand les hlicoptres taient en l'air ? + + + Pas avant qu'ils ne s'crasent... On s'en est tenu au plan : dcollage 90 secondes aprs l'mission, activation de nos systmes de protection et passage en pilote automatique. On a suivi l'itinraire le plus direct, calcul partir de notre carte des anomalies. Le manque de visibilit n'aurait pas d affecter la mission, le couloir de scurit tait assez large. Normalement, on aurait d atteindre la centrale en 12 minutes et 30 secondes. On a perdu le contact avec Stingray 4 au bout de neuf minutes et ensuite, les autres ont commenc tomber comme des mouches. + + + J'ai d'autres questions au sujet l'opration... + + + Qu'est-ce qui est arriv aux hlicoptres ? + + + Je ne sais pas exactement... Stingray 2 et 4 ont compltement disparu : j'ignore o ils se sont crass ou ce que sont devenus les hommes qui taient bord. Les informations dont je dispose au sujet des autres hlicoptres proviennent des gars qui s'en sont sortis, alors elles sont plutt fragmentaires. On avait vraiment autre chose faire. + + + Qu'est-il arriv Stingray 1 ? + + + Comment est-ce que vous tes arrivs ici ? + + + Nous avons crois un stalker prs du champ de mines : il avait d entendre les explosions. C'tait un mec trange... Il se faisait appeler Guide. Il n'a pas pos de questions et a propos de nous amener Pripyat. On a accept. On l'a gard l'il juste au cas o, mais tout s'est bien pass... Il n'a pas dit un mot avant d'atteindre la ville et quand on est arriv, il a disparu en un clin d'il. J'ai ordonn mes hommes de le laisser tranquille. + + + Qu'est-il arriv Stingray 3 ? + + + Le capitaine Tarasov a dit que les deux moteurs s'taient arrts. Ils ont t obligs d'atterrir sur la colline prs du point B2. Ils ont russi se poser sans trop de dgts, mais le technicien n'a pas eu le temps d'identifier la cause de la dfaillance car ils ont t immdiatement attaqus par des snorks et ont perdu trois hommes. Les autres ont dcid de ne pas s'attarder et sont partis la recherche de Stingray 5. Ils ont crois une unit ennemie en chemin, mais ont russi s'en sortir sans trop de casse. + + + Comment sont-ils arrivs Pripyat ? + + + Les quipages de Stingray 3 et 5 ont russi se rejoindre prs d'une sorte de pniche. Apparemment, l'homme qui y vivait tait compltement fou : quand mes gars ont essay de le mettre aux arrts, il a tent de les apprhender son tour alors qu'il tait seul face 11 soldats ! Enfin bref... tout le monde a russi se calmer et ils ont pu trouver un accord. Le fou a accept de les conduire jusqu' Pripyat et ils ont russi atteindre la ville sans trop de dgts, part pour le lieutenant Stetsenko qui a perdu quelques orteils en marchant dans une anomalie gravitationnelle. + + + Qu'est-il arriv Stingray 5 ? + + + Dfaillance des systmes lectroniques : Stingray 5 a plong droit dans le marais. Seuls cinq hommes ont survcu. Ils ont t contacts par Stingray 3 alors qu'ils taient en train de sortir leur matriel de l'hlicoptre. Le chef de l'escouade, le major Neborsky, a t tu en chemin par une sangsue... Les autres ont russi atteindre le point de rendez-vous sans trop de problmes. Ils ont ensuite perdu l'un de leurs tireurs de prcision, le sergent chef Batyai, lorsqu'ils sont arrivs Pripyat et ont d combattre les forces du Monolithe. + + + Comment sont-ils arrivs Pripyat ? + + + Les quipages de Stingray 3 et 5 ont russi se rejoindre prs d'une sorte de pniche. Apparemment, l'homme qui y vivait tait compltement fou : quand mes gars ont essay de le mettre aux arrts, il a tent de les apprhender son tour alors qu'il tait seul face 11 soldats ! Enfin bref... tout le monde a russi se calmer et ils ont pu trouver un accord. Le fou a accept de les conduire jusqu' Pripyat et ils ont russi atteindre la ville sans trop de dgts, part pour le lieutenant Stetsenko qui a perdu quelques orteils en marchant dans une anomalie gravitationnelle. + + + Je ne sais pas grand-chose... Stingray 2 reste un mystre : j'ignore o il s'est cras ou ce que sont devenus les hommes qui taient bord. Quant Stingray 4, vous en savez plus que moi. Le lieutenant Sokolov, celui qui est venu avec vous, est le seul survivant. Les informations sur les autres hlicoptres viennent des hommes qui s'en sont sortis, alors elles sont plutt fragmentaires. On avait vraiment autre chose faire. + + + Je ne sais pas grand-chose. Stingray 2 reste un mystre : j'ignore o il s'est cras ou ce que sont devenus les hommes qui taient bord. Vous devriez demander au lieutenant Sokolov. Stingray 4 est le seul de cet appareil qui ait atteint Pripyat. Les informations sur les autres hlicoptres viennent des hommes qui s'en sont sortis, alors elles sont plutt fragmentaires. On avait vraiment autre chose faire. + + + J'ai besoin d'autres informations. + + + Je n'ai pas d'autres questions. + + + Quelle est la situation Pripyat ? + + + Difficile de faire plus pourrie... Pripyat grouille de fanatiques du Monolithe et de zombies. Les missions s'enchanent et je ne parle mme pas des anomalies et des mutants... Bienvenue en enfer ! + + + Quelle est la situation au niveau quipement et provisions ? + + + Je voudrais en savoir davantage au sujet du Monolithe. + + + Ce sont des fanatiques de la pire espce ! Je ne sais pas quoi ils carburent, mais ils sont toujours prts se battre. Ils ne se replient jamais, mme quand ils sont moins nombreux et moins bien quips que l'ennemi... Et c'est plutt rare dans la Zone. On dirait qu'ils reoivent des renforts assez rgulirement de la centrale. On a dj perdu bien trop d'hommes cause d'eux. + + + Vous avez essay d'interroger des prisonniers ? + + + a n'a servi rien. Ils se battent jusqu' la mort. Le seul que mes gars aient russi capturer vivant avait t assomm par une grenade, mais il ne nous a pas appris grand-chose. Il a suffi qu'on le quitte des yeux une seconde pour qu'il se frappe la tte contre un mur assez fort pour s'ouvrir le crne ! + + + Qu'est-ce que vous allez faire maintenant ? + + + Je ne crois pas qu'il soit possible de poursuivre l'opration Fairway. Votre prsence ici le confirme. J'ai l'intention de tenir la position jusqu' l'arrive des hlicoptres de secours. J'ai plusieurs dates d'vacuation possible. + + + Il n'y aura aucun secours tant que nous ne saurons pas ce qui a caus la perte des Stingrays. + + + Alors, c'est comme a... Bon, on ne risque pas de sortir de la Zone pied de toute faon. Dieu seul sait combien de kilomtres de cette merde il faudrait se taper et la Zone est pleine de stalkers qui ne nous portent pas vraiment dans leur cur... Nous n'avons pas le choix, nous devons mener notre propre enqute et dcouvrir ce qui s'est pass avant de tous finir six pieds sous terre. Vous voyez, major, nous avons le mme objectif. + + + On verra a plus tard. + + + J'coute, major. + + + On n'a que ce qu'on a pu emporter. Oh, et on a russi rcuprer du matriel du Monolithe, principalement des munitions. Donc il va falloir se serre la ceinture. Pareil pour la nourriture : tout ce qu'on a, ce sont des rations et la popote Monolithe trouve dans l'entrept. + + + On n'a que ce qu'on a pu emporter. Oh, et on a russi rcuprer du matriel du Monolithe, principalement des munitions. Donc il va falloir se serre la ceinture. Pour les provisions, c'est peu prs la mme chose, sauf que j'ai pass un accord avec Garry. Il nous apporte des botes de conserves et, en change, on le laisse squatter la base et on regarde ailleurs quand il cherche des artefacts. Ce n'est pas comme si on avait le choix de toute faon... + + + Nos gars sont vengs... Ne tranons pas ici trop longtemps, je n'aime pas cet endroit. + + + Ne perdons pas trop de temps ici, d'accord ? Je veux rentrer la base au plus vite... + + + Ok. + + + Il y a un truc bizarre par l. Je me demande quoi a leur sert... Oh, t'emmerde pas, fais ce que tu as faire et rentrons la base ! + + + C'est bon ? Et si on rentrait la base pour casser la crote ? + + + Ok. + + + Comment a va ? + + + C'est la merde... C'est sympa de se retrouver en famille, mais on est toujours coinc dans le trou du cul du monde. + + + Je ne vous ai jamais vu par ici. Vous venez d'arriver ? + + + Oui. Je suis le lieutenant Sokolov, copilote de Stingray 4. + + + Comment est-ce que vous tes arrivs ici ? + + + Je suis venu avec un stalker du nom de Garry. Je savais qu'il cherchait un moyen d'atteindre Pripyat, alors j'ai demand l'accompagner. a a t un sacr voyage ! Heureusement qu'on est tomb sur notre unit de reconnaissance ds notre arrive ! + + + Qu'est-ce qui est arriv Stingray 4 ? + + + Aucune ide... J'avais un mauvais pressentiment ds le dbut de cette opration... On volait en pilote automatique, tout se passait bien, et tout d'un coup, les systmes lectroniques ont rendu l'me et on a piqu droit vers le sol. Le pilote et moi avons essay d'atteindre une surface dgage, mais a n'a servi rien. On s'est cras sur le toit l'atelier principal de l'usine de Jupiter... Je suis le seul m'en tre sorti. + + + J'ai besoin d'une armure. + + + Ok. Voil un casque pour commencer... Maintenant, le reste... J'espre que c'est la bonne taille, parce que je n'en ai pas d'autre de toute faon. Je l'ai rpare, alors elle devrait faire l'affaire. + + + Bien sr, major... Par contre, vu les circonstances, je n'ai pas beaucoup de choix... Au fait, allez voir le lieutenant Kirillov, il vous donnera un peu de matriel. + + + propos des hlicoptres... + + + J'coute. + + + C'est dingue, a... Je vois dj Kirillov venir me demander une aspirine... + + + C'est l'attente, le pire. Il n'y a rien de mieux pour vous plomber le moral. + + + Trs bien, major, les gars sont prts partir. Allez voir Rogovets et Kirillov pour le ravitaillement, si vous en avez besoin, et revenez me dire quand vous serez par ! + + + Ok. + + + Allons-y ! + + + Dans ce cas, il nous en faut une vraiment rsistante, un peu comme celles des scientifiques. Mais bon, a ne sera pas facile de convaincre Hermann de me donner une combinaison... Je pense qu'il prfrerait me voir partir cul nu vers la frontire de la Zone, histoire de faire un peu de place dans son prcieux bunker... mon avis, il vaudrait mieux demander Ozersky. Il est plus sympa, peut-tre qu'il me donnera une combinaison. + + + Alors, major ? + + + [continuer...] + + + [continuer...] + + + J'tais bord. Ds qu'on a perdu le contact avec Stingray 4, j'ai parl du point d'vacuation de Pripyat aux autres. Je pensais qu'on pourrait marcher jusqu' la centrale. Mais quelque chose a percut l'hlicoptre et il y a eu comme une odeur de brl... Le moteur venait de prendre feu. Les pilotes ont russi nous faire atterrir sur les hliports prs de l'usine de Jupiter, mais ont t tus l'impact. Le sergent Shlyachin est mort quand on a dcouvert qu'on tait au milieu d'un champ de mines. On a ensuite perdu un lieutenant Pripyat en affrontant les forces du Monolithe pour le contrle du btiment. + + diff --git a/gamedata/configs/text/fra/st_dialogs_zaton.xml b/gamedata/configs/text/fra/st_dialogs_zaton.xml new file mode 100644 index 0000000..c61c847 --- /dev/null +++ b/gamedata/configs/text/fra/st_dialogs_zaton.xml @@ -0,0 +1,3117 @@ + + + + J'ai trouv un artefact trange dans la station de dragage. + + + Intressant... Un semi-artefact... Voici ton paiement. Un bon boulot mrite un bon salaire... Tu t'en sors pas trop mal, on dirait ! Viens me voir si jamais t'as besoin d'un autre boulot ! Je reois rgulirement des commandes et a paie trs bien. + + + Tu aurais du boulot pour moi ? + + + J'ai bien un petit quelque chose... La nuit dernire, des stalkers ont repr une lueur trange du ct de la station de dragage... C'tait vraiment bizarre, mme pour le coin. a te dirait d'aller y jeter un coup d'il ? + + + J'y vais. + + + Fais gaffe toi ! Y a plein de radiations, alors oublie pas tes mdocs... Tu me remercieras plus tard. + + + Pas pour l'instant. + + + J'ai donn toutes les missions que j'avais pour aujourd'hui. + + + Prends ce semi-artefact ! + + + Voil ta part ! Un bon boulot mrite un bon salaire... Tu t'en sors pas trop mal, on dirait. Reviens me voir si jamais t'as besoin d'un autre boulot ! Je reois rgulirement des commandes et a paie trs bien. + + + J'ai trouv un artefact trange dans la station de dragage... + + + Intressant... Un semi-artefact... Laisse-moi t'en dbarrasser ! 3 000, a me parat honnte, non ? + + + J'ai vu que quelqu'un t'avait apport un artefact que j'avais trouv. + + + Dsol, mais je me mle pas de tout a. Les rgles sont simples : tu livres, t'es pay. Tu sais comment a marche dans la Zone... Tu gardes l'il ouvert, t'agis vite et tu fais confiance personne, sauf toi-mme ! Si t'as besoin d'un boulot rgulier, je suis ton homme. Je reois souvent des commandes et a paie trs bien. + + + De quels artefacts as-tu besoin, au juste ? + + + Je vais trouver un Gravi. + + + Gnial ! T'as pas tran ! Voil ta prime ! + + + Je vais trouver un il. + + + Je vais trouver une Bulle. + + + Je vais trouver une Coquille. + + + Je vais trouver un Garde du corps. + + + Je vais trouver une Flammche. + + + Je vais trouver une Luciole. + + + Je vais trouver un Flocon. + + + Je peux te vendre un Gravi. + + + Y a un truc qui tourne pas rond... Des types qui prennent des commandes et qui disparaissent... J'aime pas a du tout. Je vais fermer boutique. + + + Je peux te vendre un il. + + + Je peux te vendre une Bulle. + + + Je peux te vendre une Coquille. + + + Je peux te vendre un Garde du corps. + + + Je peux te vendre une Flammche. + + + Je peux te vendre une Luciole. + + + Je peux te vendre un Flocon. + + + Ok... Je repasserai plus tard. + + + Les deux quipes qui bossaient pour moi sont portes disparues... J'ai dcid de ne pas prendre d'autres commandes pour l'instant. + + + Mission accomplie ! + + + Super ! Voil ton paiement ! + + + Tiens ! C'est pas grand-chose, mais c'est mieux que rien... + + + Parle-moi de tes commandes d'artefacts ! + + + Qui je pourrais recruter pour protger les scientifiques ? + + + Mes gars : Spartacus et son quipe. Ils ont de l'exprience, certains taient vigiles avant d'arriver dans la Zone et, crois-le si tu veux, y en a mme qui taient dans des groupes d'intervention de la police. Les flingues, a les connat... S'ils sont dispos, tu trouveras pas mieux ! + + + J'aurais pu te rencarder, mais avec ce qui vient de se passer... Toute l'quipe de Spartacus y est passe... Paix leurs mes... + + + Qui je pourrais recruter pour faire des relevs pour les scientifiques ? + + + Tu connais Gonta et ses hommes ? En dehors de la saison de chasse, ils... hum... ils sont prts prendre d'autres boulots. Surtout s'ils sont pas obligs de sortir leurs flingues... Apparemment, ils prfrent aller la chasse quand ils ont la gchette qui les dmange. + + + Difficile dire... Je t'aurais bien conseill Gonta et ses gars, mais a fait longtemps que je les ai pas vus. + + + Parle-moi de la vie ici ! + + + T'aurais pas des questions un peu plus spcifiques ? Je ferai de mon mieux pour y rpondre. + + + Qu'est-ce que les stalkers font ici ? + + + C'est moi que tu le demandes ? Ils dbarquent du Skadovsk pour explorer les environs et chercher des artefacts, et ils flinguent tout ce qui s'approche un peu trop. Ensuite, ils retournent sur le Skadovsk pour se bourrer la gueule et tailler le bout de gras... C'est comme a qu'ils se dtendent entre deux raids. Par contre, quand une mission nous tombe dessus, c'est une autre histoire... Tout le monde serre les fesses et on a une pense pour ceux qui se sont pas mis l'abri temps... + + + Pourquoi les stalkers sont attirs par le centre de la Zone ? + + + Voil une question intressante ! Y en a qui sont l pour dcouvrir des gisements d'artefacts ; d'autres ont t attirs par les rumeurs concernant l'Oasis ou l'Exauceur de vux. Et puis, il y a tous ceux qui sont pousss par l'avidit et la curiosit... Tout le monde a ses raisons... Mme toi, tu dois avoir les tiennes. + + + Comment as-tu fini ici ? + + + Je suis arriv ici avec le Faisan aprs que le Lobotomisateur a t dsactiv. Mais a t'intresse pas vraiment, si ? Mon truc, c'est les artefacts. On trouve dj des babioles un peu partout, alors ce qui intresse les clients, ce sont les objets rares. C'est ce qui m'a donn l'ide de crer un camp de stalkers o on pourrait encore trouver des artefacts de qualit. Que cherche un stalker quand il revient ici avec son butin ? Je vais te le dire, moi : une bire bien frache et des potes avec qui se dtendre. C'est pour a qu'on a le Skadovsk. + + + Qu'est-ce que tu penses des bandits ? + + + C'est assez simple. Tant qu'ils se tiennent tranquilles, a me drange pas qu'ils viennent bord. Aprs tout, ce sont pas tous des connards. Certains sont mme d'anciens stalkers. Qui sait, un de ces jours, il y en a peut-tre un qui va raccrocher avant de se prendre une balle... La vie est pleine de surprises. + + + Nan, c'est bon. Laisse tomber ! + + + Si tu le dis. + + + Tu n'aurais pas vu des militaires dans le coin ? + + + ton avis ? Qu'est-ce que des troufions viendraient faire dans notre camp ? Tu peux me croire, ils ont aucune envie de traner dans les environs. On est trop nombreux ici avoir d chapper leurs salets de mitrailleuses quatre pattes dans la bouillasse du Cordon... + + + Parle-moi un peu de la Boussole ! + + + C'est un artefact mythique... On raconte que la Boussole n'a pas d'effets secondaires et que, si tu sais t'en servir, elle peut te permettre de sortir de n'importe quelle anomalie. Je comprends que les clients soient prts tout pour mettre la main sur un artefact pareil... L'autre jour, on m'a dit que Noah avait des infos ce sujet... C'est un stalker qui vit au sud d'ici. + + + OK, je vais rendre visite Noah. + + + Je vais y rflchir. + + + C'est un artefact mythique, je te l'ai dj dit. Il parat qu'un stalker du nom de Noah a des infos son sujet. Il vit au sud d'ici. + + + J'ai trouv un drle d'artefact du ct de Yanov. a t'intresse ? + + + Fais voir... C'est pas un artefact ordinaire, a, c'est sr... Mais je pense pas que je trouverai un acheteur. Je te conseille de retourner Yanov et de le montrer aux scientifiques. Les trucs bizarres comme a, a les fait bander. + + + Le Hibou dit que tu ne respectes pas ta part du march. + + + On s'tait mis d'accord : je rcupre les dtecteurs, je les envoie sur le terrain et il rcupre une partie de bnfices. Je lui ai dj pay deux dtecteurs, alors qu'il vienne pas me dire que je respecte pas ma part du march ! On tait tomb d'accord, lui et moi. Si tu bosses pour lui, tu peux lui rapporter le troisime : j'ai pas l'intention de l'acheter. + + + Alors, qu'est-ce que je dis au Hibou ? + + + J'ai l'impression. + + + ta place, je ferais pas affaire avec le Hibou. Si tu veux te faire du fric, je peux te donner une longueur d'avance pour la chasse aux artefacts. Deux, trois heures... C'est assez pour battre les autres. En plus, si a t'intresse, j'ai une commande spciale : j'ai besoin d'un artefact qu'on appelle la Boussole. + + + Sultan a russi rcuprer la Boussole. + + + Ce connard sait y faire... Bon, c'est pas grave... Tu devrais retourner parler Noah. Si on en croit les rumeurs, a pourrait s'avrer... utile. + + + J'ai trouv une Boussole. Tiens ! + + + Tu me sauves la vie, mon pote ! Y a pas de doute, je vais me mettre ce gros client dans la poche ! J'avais entendu dire que Sultan essayait de faire couler ma petite entreprise... Il va tre du, mais a lui fera les pieds ! Tiens, prends a ; tu l'as bien mrit ! + + + Hors de question de chercher une Boussole pour toi ! + + + Bon, tant pis... + + + Sultan te passe le bonjour. Ah, au fait, tes fournisseurs vont arrter de t'approvisionner. + + + Tout s'explique... Mais je quitterai pas le Skadovsk. On dirait que j'ai pas le choix : je dois bosser pour Sultan et toi. Je lui filerai un pourcentage sur les ventes et t'auras qu' passer rcuprer ta part tous les jours. + + + Donne-moi ma part ! + + + Tiens, la voil ! + + + T'es en avance. J'ai pas encore l'argent... + + + Tu crois qu'Allegro revend des objets vols ? + + + J'en doute... D'aprs ce que je sais, il laisse les trucs louches aux autres. Un homme d'affaires srieux surveille sa rputation. Maintenant que j'y pense, j'ai jamais entendu qui que ce soit dire du mal d'Allegro. + + + Je cherche Accroc. Tu sais o je peux le trouver ? + + + La dernire fois que je l'ai vu, il sortait du bar. Si je me souviens bien, il allait vers les grues des quais. Tu devrais commencer par l. + + + Quelqu'un compte braquer un groupe de stalkers. Apparemment, ce sont certains de nos gars... + + + Quoi ? Attends, les bandits qui se multiplient comme des lapins et en plus, on se bat entre nous, maintenant ? + + + On m'a propos d'attaquer le camp prs du Chevtchenko. + + + Les salauds... En fait, ce serait pas mal que t'acceptes leur offre, si tu vois ce que je veux dire... Comme a, je pourrai prvenir mes gars ! Ils prpareront un joli comit d'accueil. + + + Je suis d'accord. + + + Bon, va voir ces abrutis et moi, je prviens mes gars ! + + + Dsol, t'es tout seul sur ce coup-l... + + + J'ai un artefact de l'Oasis. a t'intresse ? + + + Le Cur de l'Oasis ? Merci, mais non merci... On raconte tellement de trucs sur cet artefact... Ce sont srement que des superstitions, mais je prfre rester prudent. Tu ferais mieux de le refiler aux scientifiques ; ils pourront y jeter un coup d'il. a nous permettra peut-tre de comprendre ses effets. + + + T'es nouveau dans le coin ? T'en fais pas, tu t'habitueras vite... La Zone pardonne pas les erreurs, tu sais. Je suis le Barbu, le barman du coin. Si t'as des questions, tu viens me voir, ok ? + + + Je t'coute... + + + a te dit de chercher des artefacts pour te faire un peu de fric ? + + + Alors, ma commande, elle en est o ? Oublie pas que ce sont les stalkers les plus rapides qui se font le plus de thune... + + + T'es en retard, on m'a dj livr cet artefact. Mais si t'as rempli ton contrat, je peux quand mme te payer... Pas autant, mais bon, tu vas pas te plaindre, hein... + + + J'ai du nouveau : il parat que des bandits se prparent acheter un paquet d'armes. Nos gars veulent les suivre et empcher la transaction. Toute aide serait la bienvenue. + + + Alors ? + + + Que font des mercenaires dans la station de traitement des dchets ? + + + Tu ferais mieux de pas t'en mler... + + + a te plat de bosser pour les scientifiques ? + + + Oui. Je suis bien content que tu sois venu nous voir. Les scientifiques auraient pas pu tomber sur des mecs plus comptents que nous. + + + Je suis en train de monter une quipe pour aller Pripyat. Tu veux venir avec nous ? + + + Non. Faut que je surveille les scientifiques... Tu devrais en parler Sokolov. Parat qu'il veut se rendre Pripyat. + + + Non. Je dois m'occuper des scientifiques... C'est notre boulot, aprs tout. + + + Euh... Non, je dois rester ici pour l'instant. + + + a te dirait de bosser pour les scientifiques ? + + + a dpend... C'est quel genre de boulot ? + + + Protger leur bunker. + + + Pourquoi pas ? + + + Faire des relevs dans les anomalies. + + + Ce genre de boulot, c'est pas pour nous. Tu ferais mieux de demander aux stalkers. + + + coute, stalker. J'ai la dalle, alors j'ai mieux faire que t'couter te plaindre... + + + Je pourrais t'apporter manger. + + + Ha ! OK, si tu veux. De la viande en conserve, des saucisses et du pain... Six de chaque. Apportes-en assez, parce qu'on crve tous la dalle ici ! + + + J'ai entendu dire qu'il y avait des outils dans le coin. + + + Qui sait ? Mais j'apprcierais que t'arrtes de tourner en rond comme a. On a dj trop de boulot, je peux mme pas me permettre d'envoyer qui que ce soit chercher manger. + + + Qu'est-ce que j'en sais, moi ? Tu peux regarder l-dedans, tu trouveras peut-tre ce que tu cherches. + + + Voil les provisions ! + + + J'avais perdu espoir... Merci, c'est sympa. Les gars seront contents d'avoir enfin un truc se mettre sous la dent. Qu'est-ce que tu voulais, dj ? Des outils, c'est a ? Vas-y, fais-toi plaisir ! Tu trouveras peut-tre ce que tu cherches. Mais arrte d'agiter ce flingue dans tous les sens ! + + + J'avais perdu espoir... Merci, c'est sympa. Les gars seront contents d'avoir enfin un truc se mettre sous la dent. Hsite pas faire un tour dans le coin ! Mais arrte d'agiter ce flingue dans tous les sens ! + + + T'es pas le bienvenu ici... C'est notre camp et on aime pas les trangers qui fourrent leur nez partout. Mes gars crvent la dalle, alors je te conseille de pas les nerver... + + + Dgage ! Mes gars ont tellement faim qu'ils ont la gchette facile, si tu vois ce que je veux dire... + + + Oh, stalker... C'est important ? C'est que j'ai du boulot, moi... + + + Je suis prt partir la chasse. + + + Ok. Allons-y ! + + + C'est parti ! + + + C'est pas encore l'heure. Reviens 3h du matin ! + + + Je vois. + + + Nous aussi... mais manque de bol, on a une mission sur le dos... La chimre doit pas pouvoir pioncer. On va devoir ressayer une autre nuit... + + + Gonta est mort... J'y crois pas... T'irais pas Yanov, par hasard ? Trappeur, le pote de Gonta, est l-bas. Tu pourrais lui dire que la chimre est morte ? Je vais srement rentrer chez moi maintenant. + + + Fais gaffe toi ! + + + Tire-toi ! Si Gonta est mort, c'est cause de toi... Qu'est-ce qu'on va faire maintenant ? + + + Prends soin de toi ! + + + Parle-moi de toi ! + + + Je suis Gonta, le chef des chasseurs. On est pay pour abattre des mutants. On peut aussi les capturer vivants, pour des expriences scientifiques ou pour les mecs qui veulent un animal de compagnie un peu exotique... Comme disait Trappeur : "Une balle pour chaque mutant..." + + + Parle-moi de la chasse aux mutants ! + + + Je suis pas le chasseur le plus expriment, mais j'en connais un rayon sur les animaux qui se baladent en meutes. Les barbaks, les sangliers, les chiens aveugles, les pseudo-chiens, les snorks, les hamsters... Je peux mme te parler des sangsues ! + + + Parle-moi des sangliers et des barbaks ! + + + D'accord... Les barbaks sont les mutants les plus inoffensifs. Ils essaient d'viter les stalkers, mais ils se dfendent si tu les attaques. Par contre, s'il y a un sanglier avec eux, faut faire gaffe. Je te garantis que t'as pas envie de rigoler face une bte enrage de trois cents kilos. Reste pas sur son chemin s'il commence charger : une fois sur sa lance, y a peu de chances qu'il change de trajectoire. Dans ces cas-l, vaut mieux l'viter et lui mettre une balle direct. + + + Parle-moi des chiens aveugles et des pseudo-chiens ! + + + Un chien isol, c'est pas dangereux, mais s'ils sont en meute, l, t'as un problme. Ils attaquent que s'ils ont faim... Mais le problme, c'est qu'ils ont toujours la dalle... Si t'as affaire une meute, essaie de te placer en hauteur pour les abattre, ou tu risques d'tre vite dpass. Surtout s'il y a des pseudo-chiens adultes dans la meute... Ils sont pas beaucoup plus forts, mais ils sont plus vicieux et dangereux... Si t'tais face un chien, et que, d'un coup, t'es face une meute, c'est que t'as affaire des fantmes. Le vrai pseudo-chien, lui, reste en retrait et essaie de te mordre une fois de temps en temps... Essaie de l'identifier : une fois que le vrai chien est mort, les fantmes disparaissent aussi sec. + + + Parle-moi des snorks ! + + + Ils taient humains avant... Un snork seul ne pose pas de vrai problme un chasseur expriment. Il suffit d'attendre qu'il saute pour le cueillir en plein air. Mais si t'as affaire un groupe... Eh bien, faut que tu les abattes aussi vite que possible tout en vitant qu'ils te sautent dessus. Ils connaissent la tactique et ils essaient souvent d'attaquer en groupe. + + + Parle-moi des hamsters ! + + + Le cauchemar de tous les chasseurs... Ils sont pas bien grands, mais il faut jamais les sous-estimer. Ils sont rapides, agiles et ils quittent jamais leur meute. Si, tout d'un coup, tu sens des dizaines de petits crocs qui essaient de te bouffer, c'est le moment de commencer tirer... Le pire, c'est qu'ils sont pas faciles flinguer ! C'est pour a que je conseille toujours aux stalkers de jamais sortir sans un fusil pompe charg. + + + Parle-moi des sangsues ! + + + Ces salets sont de vrais prdateurs, avec un excellent camouflage. Quand elles sont camoufles, tu peux peine les voir. Si tu chasses une sangsue, essaie de la prendre par surprise, c'est plus facile de la reprer si elle bouge. Une sangsue essaiera souvent de te prendre revers et de t'trangler avec ses tentacules. a fout les jetons, tu peux me croire... Si t'as vraiment pas de bol et que tu tombes sur un groupe de sangsues, t'as intrt surveiller tes arrires, crois-moi. + + + OK, laisse tomber. + + + Si je vois la Pie, je te tiens au courant. + + + Tu le regretteras pas... Je vais me faire un plaisir de le plumer ! + + + Qu'est-ce que la Pie t'a fait, au juste ? + + + La fois dernire, il vient me voir et me dit qu'il peut pas rcuprer son butin cause d'un contrleur. Il nous manquait un gars... Danila, notre claireur, avait suivi des sangsues jusqu' leur nid. Alors, on a dcid de filer un coup de main la Pie pour rcuprer son butin et on l'a emmen chasser avec nous. Tout ce qu'il avait faire, c'tait de garder un il sur la chimre l'entre du nid... + + + Et ensuite ? + + + Ensuite, cet enfoir s'est cass avec son butin et le ntre. T'imagines la surprise quand la chimre s'est pointe ! Garmata a pas eu le temps de ragir... Du coup, au lieu de chasser, je me suis retrouv dfendre mes gars. On a fini par blesser la chimre, mais elle a russi amocher Crabe avant de s'enfuir. Toute une semaine de prparations gche cause de cette histoire ! + + + T'as la chasse dans le sang ! Prends ce trophe, tu l'as bien mrit ! Comme dit Trappeur, "Ta meilleure arme, c'est ton savoir-faire..." Au fait, tu vas Yanov dans les prochains temps ? Ce serait cool si tu pouvais dire Trappeur que la chimre est morte. Je vais rester sur le Skadovsk pour le moment, le temps que Crabe aille mieux. Tu viens avec nous ? + + + Oui. Allons-y ! + + + Non. Je vais rester ici encore un peu. + + + On a russi ! Ce trophe est un petit cadeau de ma part... a aurait pu mieux se passer, mais bon... Comme dit Trappeur, "Qui a besoin de piges quand on a de l'exprience ?" Au fait, tu vas Yanov dans les prochains temps ? Ce serait cool si tu pouvais dire Trappeur que la chimre est morte. Je vais rester sur le Skadovsk pour le moment, le temps que Crabe aille mieux. Tu viens avec nous ? + + + Garmata est mort... Cette chimre nous a cot cher... Dis, t'irais pas Yanov, des fois ? Il faudrait dire Trappeur que la chimre est morte. Je vais rester sur le Skadovsk pour le moment, le temps que Crabe aille mieux. Tu viens ? + + + J'ai trouv Danila. Il est mort, tu par Sismik. + + + Oh, merde ! Pourquoi c'est toujours les meilleurs qui partent en premier ? Et cet enfoir de Sismik ! Danila... Il a jamais fait de mal une mouche ! + + + Tu crois qu'Allegro revend des objets vols ? + + + Des objets vols ? Qu'est-ce qui te fait dire a ? a fait un bail que je connais Allegro, je lui achte rgulirement des armes. Il vend du bon matos des prix raisonnables... C'est la premire fois que j'entends dire a. Ce sont srement des concurrents jaloux qui font circuler ces rumeurs... + + + Je suis en train de monter une quipe pour aller Pripyat. Tu veux venir avec nous ? + + + J'ai pass un accord avec les scientifiques et je dois m'y tenir. Et puis, j'ai pas vraiment envie d'y aller. Tu devrais en causer Sokolov. Il me les casse depuis un moment, dire qu'il a besoin d'aller Pripyat, mais qu'il a les jetons de s'y rendre seul. Tu parles d'un soldat... + + + J'ai pass un accord avec les scientifiques et je dois m'y tenir. Et puis, j'ai pas vraiment envie d'y aller. Dsol... + + + Non, j'ai pas envie. La chasse, c'est ici que a se passe. Tu sais mieux que quiconque combien de mutants tranent encore dans les parages... Un bon chasseur en aurait assez pour plusieurs vies ! + + + a te dirait de bosser pour les scientifiques ? + + + Qu'est-ce qu'il faut faire ? + + + Protger leur bunker. + + + Non merci. Je suis un chasseur, mon boulot, c'est buter des mutants. Et les mutants menacent pas le bunker. Les gens, par contre, c'est une autre histoire. + + + Faire des relevs dans les anomalies. + + + Pourquoi pas ? On peut s'en charger. Je dclare officiellement la saison de chasse... termine ! a nous changera... Tu sais, les frissons qui te courent dans le dos chaque fois que tu dois sortir... + + + Non, pas pour le moment. La chasse est encore ouverte... Et on doit se faire cette salet de chimre. Hors de question de laisser ce mutant assoiff de sang se promener dans la Zone et s'en prendre aux stalkers ! + + + Tout ce que je veux, c'est passer mes mains autour du cou de la Pie... a, a me calmerait et ensuite, on pourrait parler boulot, tous les deux. + + + Pas pour l'instant. On a dj assez faire comme a. Entre la chimre liminer et la Pie trouver, on a pas vraiment le temps de s'attaquer autre chose. + + + J'ai trouv la Pie. Il est Yanov et se fait appeler 'Flint'. + + + Cet enfoir est toujours en vie ? Il va pas le rester longtemps... Tiens, prends a et merci pour le tuyau ! J'ai hte de revoir ce connard... 'Flint', c'est a ? + + + Oui. Merci. + + + Eh, t'aurais pas vu la Pie, des fois ? Tu le connais ? Non ? Eh bien, si tu le vois, tu peux lui coller une balle entre les deux yeux de ma part ! Ou tu peux me dire o le trouver... Tu le regretteras pas ! + + + Tiens, salut ! + + + Attends ! On a trouv la chimre et on a pas de temps perdre ! Crabe est pas encore sur pied, Danila est toujours pas rentr et traquer la bte deux, ce serait du suicide ! On a besoin d'un troisime homme. T'es un gars bien, tu nous as trouv la Pie... a te dirait d'aller chasser cette saloperie avec nous ? + + + Attends ! On a trouv la chimre et on a pas de temps perdre. Crabe est pas encore sur pied et Danila... Eh ben... Enfin, traquer la bte deux, ce serait du suicide ! On a besoin d'un troisime homme. T'as l'air d'un gars bien... a te dirait d'aller chasser cette saloperie avec nous ? + + + Avec plaisir ! + + + Comme disait Trappeur, " la chasse, chasser, c'est que la moiti du boulot..." Enfin... la fin d'une nuit de chasse, la chimre revient dans sa tanire vers trois heures du mat'. Peu de temps aprs, la bestiole pionce comme un bb. C'est l qu'il faut qu'on attaque... Si tu veux nous accompagner, retrouve-nous au bar trois heures du matin et on pourra y aller. + + + Je vais y rflchir. + + + Bon, si tu te dcides venir, tu peux nous retrouver au bar vers trois heures du mat'. C'est cette heure-l que la chimre rentre dans sa tanire pour pioncer. + + + Salut, comment va ? T'as l'air bien repos. + + + Ah, cool. Le monde est petit, hein ? + + + Alors ? C'est l'heure d'aller buter de la chimre... + + + T'es un peu nerveux avant de partir la chasse ? + + + Trappeur m'a demand de vous filer un coup de main pour chasser cette chimre. + + + Je vois... Son intuition ne l'a pas tromp. On a enfin retrouv cette salet... Malheureusement, Crabe est pas encore sur pied et Danila est toujours pas rentr... Alors, on sera que trois. Mais si c'est Trappeur qui t'envoie, c'est que tu dois tre un bon chasseur... la fin d'une nuit de chasse, la chimre rentre dans sa tanire vers trois heures du mat'. Peu de temps aprs, la bestiole pionce comme un bb. C'est l qu'il faut qu'on attaque... Si t'es prt nous accompagner, retrouve-nous au bar trois heures du matin et on pourra y aller. + + + Tu me prends pour un idiot ? + + + Tu es un idiot. Et j'ai une leon te donner. + + + Peu importe... Le monde est petit et la Zone encore plus. On se reverra ! + + + Allez, dgage d'ici ! On se bat pas sur le Skadovsk ! + + + Ouais, c'est a. + + + D'accord, j'ai fait une erreur. Mais t'as pas respect les rgles ! + + + C'est comme a dans la Zone. Arrte de me baratiner ! + + + Il doit vraiment tre con pour avoir perdu l'artefact comme a. + + + Va pas chialer, non plus ! J'espre que tu te souviendras de la leon. Pour t'aider t'en rappeler, je t'offre une bire... a te remontera le moral ! + + + Je prends ce qu'on m'offre. + + + Non merci, je peux m'acheter ma bire moi-mme. + + + Quoi ? Tu prends pour qui, l ?! Ta gueule, et pas un geste ! File-moi l'artefact ! Et tout de suite, espce de dbile ! + + + Connard... Garde-le, ton artefact ! J'espre que tu vas t'touffer avec ! + + + Va te faire voir ! + + + Mon pote ! coute, j'ai entendu parler d'un artefact qui peut gurir les pires blessures... et j'en ai carrment besoin. Un ami moi va bientt passer l'arme gauche cause d'une maladie bizarre et les mdocs font aucun effet... J'ai essay de rcuprer l'artefact, mais je suis tomb sur une anomalie gazeuse... Tu l'aurais pas trouv, par hasard ? + + + Si c'est si important... Tiens ! + + + Merci, mon pote, je te dois une fire chandelle ! + + + Fais gaffe toi ! + + + Oui, j'en ai un. Mais j'en ai besoin... + + + Oh, allez, quoi ! Mon pote... Il va crever, je te jure ! + + + Dans la Zone, c'est chacun pour soi ! Bonne chance... + + + Non, je ne l'ai pas trouv. Bonne chance... + + + Cet artefact te sera d'aucune aide, tu peux me croire sur parole. + + + Si t'en as tellement besoin... Tiens, prends-le ! + + + Merci, mon pote, je te dois une fire chandelle ! + + + Fais gaffe toi ! + + + On verra. + + + On a rien se dire... + + + Pourquoi tu vis sur cette poubelle ? + + + C'est une arche ! Oublie pas... Tu t'en souviendras, si tu veux survivre, crois-moi ! Quand une Vague arrive, reste dans le coin ! Ici, t'as une chance de t'en tirer. Aucun mutant russira entrer. + + + Tu as parl d'une Vague... + + + Ouais, la vague de mutants qui va dbarquer et chasser les humains de la Zone ! Et les malheureux qui y survivront seront dcims par une mission gigantesque ! Toutes les cratures seront limines de la Zone... toutes sauf celles qui se seront prpares, bien sr ! + + + O tu l'as eu, ce chien ? + + + Elle, c'est Lassie. Une chienne adorable... Sans elle, je me serais fait bouffer dans mon sommeil il y a longtemps ! J'ai horreur de ces salets de mutants ! Ds que tu fermes un il, ils essaient de te choper avec leurs griffes, leurs crocs ou leurs tentacules... + + + J'ai besoin d'une Boussole. Tu saurais o je peux en trouver une ? + + + Ces conneries te protgeront pas des mutants qui sortent du sol et du plafond ! Tiens, prends a et fous-moi la paix ! + + + Merci. + + + Qu'est-ce que tu peux me dire sur les hlicoptres qui se sont crass ? + + + Je peux te parler de l'un d'entre eux... Il s'est cras sur le plateau... L'endroit grouille de snorks. Je vais en flinguer quelques-uns de temps en temps... Pourquoi tu me regardes comme a ? On peut pas se dbarrasser de tous ces monstres en une seule fois ! + + + Comment faire pour atteindre le plateau ? + + + Ah, toi aussi, tu veux flinguer des snorks ? Cool... Je peux t'y emmener, si tu veux. + + + Allons-y ! + + + Une autre fois peut-tre... + + + Un stalker. + + + Je vois. Et qu'est-ce que tu cherches ? + + + C'est pas tes oignons ! + + + Je vais t'y emmener. Mais va falloir attendre un peu. Il y a une mission. T'as pig ? Une mission !! + + + J'tais dans leur tanire. + + + Ah ouais ? Y a rien faire pour les calmer... Les mutants sont de plus en plus nombreux et un jour, ils passeront l'attaque ! Tous ceux qui seront pas prts les recevoir pourront dire adieu la Zone ! + + + Dis-moi, euh... tu n'aurais pas une Boussole, par hasard ? + + + Tu crois que a te protgera des missions ? Ah ! Prends-la et fous-moi le camp d'ici ! + + + Merci. + + + Qui es-tu ? + + + Je suis un stalker. On s'est dj rencontr. + + + Je me rappelle pas... Bon, t'as besoin de quoi ? + + + Un stalker. Rien de plus. + + + Je vois. Tu viens te rfugier dans l'arche ? Fais comme chez toi ! + + + C'est pas tes oignons. + + + Ah, c'est toi. Qu'est-ce que tu veux ? + + + Tu n'aurais pas une Boussole me donner, par hasard ? + + + Parle-moi des anomalies ! + + + Quand tu t'approches d'une anomalie, n'oublie pas que l'air va tre brlant ou rempli de gaz toxiques, ou alors le niveau de radiation sera trs lev. Tu peux aussi trouver des perturbations psi, mais je vais pas entrer dans les dtails pour l'instant. Tout dpend de la nature de l'anomalie... qu'il s'agisse de chaleur, de gaz, d'lectricit ou mme de gravit, encore que j'espre que tu tomberas pas sur celles-l... Il y a aussi des anomalies mobiles, mais a, c'est une autre histoire. + + + Parle-moi des anomalies calorifiques ! + + + Si tu vois des volutes de chaleur, comme sur du bitume par une chaude journe d't, t'as affaire une anomalie calorifique. Quand quelque chose ou quelqu'un y pntre, c'est comme si les flammes de l'enfer se dchanaient ! Au dbut, on croyait que c'tait des poches de gaz naturel, mais on s'est vite rendu compte que c'tait pas le cas... + + + Parle-moi des anomalies gazeuses ! + + + Leur nom vient des ractions chimiques complexes qu'elles engendrent. Ces ractions produisent un acide qui peut te ronger la peau et des gaz toxiques qui te liqufient les poumons, tout a en quelques secondes... Heureusement, ces anomalies sont faciles reprer en plein air. Dans un tunnel sombre, par contre, c'est une autre histoire... + + + Parle-moi des anomalies lectriques ! + + + C'est un type d'anomalie qui accumule une quantit inhabituelle d'lectricit statique. Les stalkers se sont vite rendu compte que n'importe quel objet mtallique permettait de s'en dbarrasser : ils y jettent une vis ou un boulon et passent travers avant qu'elle ne se reforme. Personnellement, je prfre les contourner... Elles se rechargent trop vite mon got. + + + Parle-moi des anomalies gravitationnelles ! + + + En gnral, elles sont immobiles. Quand des objets te semblent dforms, t'es face une anomalie gravitationnelle. Et je te conseille de garder tes distances : les trois varits connues se dclenchent immdiatement, ds que quelque chose entre en contact avec elles. Le "Tremplin" projette tous ce qui passe dedans loin dans les airs. Le "Vortex", c'est le contraire : il aspire les objets et les crase avant d'expulser les morceaux qui restent quelques secondes plus tard. Le "Hachoir", quant lui, soulve ses victimes, les fait tourbillonner et les taille en morceaux... Quelle que soit l'anomalie, c'est une fin peu enviable... + + + Parle-moi des anomalies mobiles ! + + + Personnellement, je suis tomb que sur une "Comte" et une "Tesla". La premire, c'est une boule de feu d'un mtre de diamtre environ, mais je te garantis que tu sentiras la chaleur arriver bien avant de la voir... La seconde ressemble une boule de foudre : c'est une anomalie sphrique et lectrique. Les deux anomalies sont toujours en mouvement, mais elles suivent gnralement un chemin dfini. Un stalker attentif devrait pouvoir les contourner sans problme... s'il arrive se concentrer le temps qu'il faut. + + + OK, laisse tomber. + + + Parle-moi de toi ! + + + On m'appelle pas Pilote pour rien. Je passe que par des routes sres. Rcuprer des artefacts et combattre des bandits, c'est pas vraiment mon truc... Mes talents sont diffrents et j'essaie d'en faire profiter les autres. Mais rien n'est gratuit dans ce monde. + + + Parle-moi des missions ! + + + J'ai des cartes de la rgion entre Zaton et Jupiter. Tu veux jeter un coup d'il ? + + + Fais voir... Bien, elles sont trs dtailles. Dans notre boulot, un simple dtail peut faire toute la diffrence entre la vie et la mort. Bon ! Ces cartes indiquent qu'il y a un chemin sr entre le Skadovsk et Yanov. Si a t'embte pas, je vais copier les donnes sur mon PDA. Du coup, je peux t'offrir une belle ristourne. + + + Besoin d'un guide pour t'aider contourner les anomalies et te protger des missions ? Pilote, ton service ! + + + T'as besoin d'un guide ? + + + Ravi de te voir ! Qu'est-ce que le bon vieux Pilote peut faire pour toi ? + + + Tu te remets en route ? + + + Bien le bonjour ! Tu peux pas rester en place, hein ? Je suis ton service. + + + Salut. Si t'as besoin d'un guide, je suis ton homme ! Ds que l'mission sera passe... En attendant, on peut peut-tre parler des anomalies, histoire de tuer le temps... + + + Je te servirai pas grand-chose pour l'instant... On est en plein milieu d'une mission, l ! + + + Combien pour aller la gare de Yanov ? + + + C'est pas la porte ct... Je peux t'y emmener pour 3 000. + + + a me va ! Allons-y ! + + + Je n'ai pas assez d'argent. + + + Je ne veux pas partir tout de suite. + + + Avec tes cartes... ce sera seulement 1000. + + + a me va ! Allons-y ! + + + Je n'ai pas assez d'argent. + + + Je ne veux pas partir tout de suite. + + + C'est pas la porte ct, alors a te cotera 3 000. Je serai prt partir ds que l'mission se sera calme. + + + Avec tes cartes, a te cotera que 1 000. On a qu' attendre que l'mission se calme et on pourra y aller. + + + Tu peux m'emmener Pripyat ? + + + Non. chacun sa spcialit. Tu vois Garry, l-bas ? Il devrait pouvoir t'aider. + + + Moi, non. Mais pour 6 000, je peux t'emmener la gare de Yanov et m'arranger avec Garry. Lui, il pourra te conduire jusqu' Pripyat. Qu'est-ce que t'en dis ? + + + a marche ! + + + Je n'ai pas autant sur moi. + + + Je ne veux pas partir tout de suite. + + + Moi, non. Mais pour 4 000 seulement, je peux t'emmener la gare de Yanov et m'arranger avec Garry. Lui, il pourra te conduire jusqu' Pripyat. Qu'est-ce que t'en dis ? + + + a marche ! + + + Je n'ai pas autant sur moi. + + + Je ne veux pas partir tout de suite. + + + Non. chacun sa spcialit... Tu vois Garry, l-bas ? Il devrait pouvoir t'aider ds que l'mission se calmera un peu. + + + Moi, non. Mais pour 6 000, je peux t'emmener la gare de Yanov et m'arranger avec Garry. Lui, il pourra te conduire jusqu' Pripyat... ds que l'mission se sera calme, bien sr. + + + Moi, non. Mais pour 4 000, je peux t'emmener la gare de Yanov et m'arranger avec Garry. Lui, il pourra te conduire jusqu' Pripyat... ds que l'mission se sera calme, bien sr. + + + Tu peux m'emmener Pripyat ? + + + Pripyat ? Non. J'ai assez de clients pour mes itinraires actuels, alors j'ai pas besoin de proposer d'autres destinations ! Mais j'ai un pote qui bossait dans l'usine de Jupiter. Il m'a parl de tunnels sous le complexe qui mneraient Pripyat. Il avait pas plus d'informations, mais il a dit qu'il allait chercher dans les bureaux de l'usine. + + + Non. Si tu veux y aller, tu ferais mieux de trouver les tunnels qui passent sous l'usine de Jupiter. + + + Combien pour aller jusqu'au Skadovsk ? + + + On va devoir faire un dtour, alors a fera 3 000. + + + a me va ! Allons-y ! + + + Je suis un peu court en ce moment... + + + Je ne veux pas partir tout de suite. + + + Maintenant qu'on a trouv un nouveau moyen de l'atteindre, ce sera seulement 1 000. + + + a me va ! Allons-y ! + + + Je suis un peu court en ce moment... + + + Je ne veux pas partir tout de suite. + + + On va devoir faire un dtour, alors a te cotera 3 000. Je serai prt partir ds que l'mission se calmera. + + + Maintenant qu'on a trouv un nouveau moyen de l'atteindre, a te cotera que 1 000. On a qu' attendre que l'mission se calme et on pourra y aller. + + + O peux-tu m'emmener ? + + + la gare de Yanov, pas loin de l'usine de Jupiter et aprs, je peux te ramener au Skadovsk. Je prfre connatre une seule route comme ma poche plutt que de faire croire que j'en matrise plusieurs. + + + J'ai empch les bandits d'acheter leurs armes. + + + Merci pour coup de main ! Quand je repense aux annes 90 et aux gangsters avec leurs lance-roquettes... J'en ai des frissons dans le dos. Tiens, prends a ! L'argent, a peut toujours servir, hein ! + + + Je cherche le Faisan. On devait se retrouver ici. + + + Le Faisan t'a laiss un message. Il a dit qu'il allait sur les quais, prs des grues et qu'il avait du nouveau au sujet des stalkers disparus. + + + Le Faisan est mort. Sismik les a tus, lui et les autres stalkers... Mais ce salopard a eu son compte, lui aussi. + + + Sismik ? Merde ! Cet enfoir tait juste sous notre nez depuis le dbut... a aurait pu tre n'importe lequel d'entre nous... Si mme le Faisan ne... Enfin... Merci ! T'as sauv tout le camp ! Tiens ! + + + Sismik ?! Dsol, mon pote, mais j'y crois pas un seul instant ! Si encore t'avais des preuves... Pauvre Faisan. + + + Voil le PDA de Sismik. Il prouve qu'il tait impliqu dans cette affaire. + + + Merde ! Cet enfoir tait sous notre nez depuis le dbut... a aurait pu tre n'importe lequel d'entre nous... Si mme le Faisan ne... Enfin... Merci ! T'as sauv tout le camp ! Tiens ! + + + Je vais t'aider rgler leur compte ces bandits. + + + Super ! Va au poste des rangers, nos gars t'y attendront. Ils te fileront toutes les infos. + + + Tu connais bien Allegro ? Tu penses qu'il pourrait revendre des armes voles ? + + + Je le connais pas trs bien, mais a m'tonnerait. Les gars qui revendent des objets vols, ils prennent pas les commandes en avance, en gnral... + + + Je savais que je serais dcouvert un de ces jours. C'tait qu'une question de temps... + + + Sismik ?! Tu veux bien m'expliquer ce qui se passe ? + + + a sert plus rien de mentir. Tu sais que c'est moi qui ai tu le Faisan... Et j'ai aussi tu Danila et les autres stalkers. + + + Ok, j'ai compris. Assez parl ! + + + T'as rien compris du tout... Personne me comprendra jamais... + + + Pourquoi as-tu fait a ? + + + Je suis accro l'hmoglobine... Je le souhaite pas mon pire ennemi... Y a pas moyen de s'en dfaire. Des fois, tu bois pas une goutte de sang pendant un mois sans problme et a m'est arriv plusieurs reprises... Mais ensuite, y a comme une explosion en moi et je dois rattraper le temps, et le sang, perdus... + + + Comment as-tu pu garder le secret si longtemps ? + + + Quand je travaillais la clinique, c'tait facile de couvrir mes traces. Y avait toujours des poches de sang en rab. Mais dans la Zone, c'est diffrent... Je pensais que les conditions me forceraient oublier cette maladie... J'avais tort. C'tait pire qu'avant... J'arrivais penser rien d'autre. J'ai maquill les meurtres en attaques de sangsues. J'ai choisi des cibles qui taient dj blesses. + + + Et pour Danila et le Faisan ? + + + Danila est venu me demander de l'aide aprs l'attaque des sangsues. Il tait bless. Quand il est parti la chasse aux sangsues avec le Faisan, je me suis rendu compte que je pourrais pas tenir plus longtemps... Je voulais protger mon secret, mais j'avais de moins en moins de volont... C'est ce moment-l que le Faisan a tout compris. Il a essay de me tuer... Je suis dsol pour tous ces gens... Mais je sais que a les ramnera pas. + + + Ok, j'ai compris. Assez parl ! + + + T'as rien compris du tout... Personne me comprendra jamais. + + + J'coute. + + + Salut ! Besoin d'aide ? + + + Bonjour ! + + + J'ai besoin d'un docteur. + + + Fais-moi voir a... + + + Ok, a devrait tre bon. Tu peux y aller. + + + Salut ! Toi aussi, tu cherches des artefacts ? + + + H ! Tu pars la chasse aux artefacts ? Il y en aura pour tout le monde, t'inquite ! + + + Oh, salut ! Tu pars la chasse aux artefacts, toi aussi ? + + + Salut. T'apportes cet artefact au Barbu ? + + + Peut-tre bien que oui, peut-tre bien que non. Pourquoi ? + + + J'en ai besoin. + + + Moi aussi... Mais je te l'change contre une nouvelle ptoire. Et pas n'importe laquelle... + + + J'ai une bonne arme. Faisons affaire... + + + D'accord ! + + + Non, a ne va pas tre possible. + + + Eh bien, dgage, alors ! + + + OK. + + + Eh bien, pas vraiment. + + + Qu'est-ce que tu peux me dire au sujet d'Allegro ? + + + Oh, pas grand-chose... On fait pas affaire, lui et moi. Pendant qu'il passe la Zone au peigne fin la recherche de l'arme ultime, moi, je vends des centaines de flingues ordinaires. C'est une vraie tte de mule, il refuse de traiter avec les crapules du coin. En gros, c'est un mauvais commerant... Et c'est tout bon pour mes affaires... + + + Le Barbu m'a parl d'un accord diffrent... + + + "Diffrent," mon cul ! Cet enfoir de Barbu devrait pas ouvrir sa grande gueule comme a ! Quelqu'un devrait lui rappeler qui c'est le patron par ici ! coute, y a un mec qui pas mal d'influence Zaton, il se fait appeler Sultan. Va lui rendre une petite visite, il te dira quoi faire. + + + Je vais aller voir Sultan. + + + Rien battre des sultans ! Je veux ma part maintenant ! + + + Euh... D'accord. Voil ton argent... Mais oublie pas que le Barbu te raconte des salades ! + + + J'ai besoin d'infos. + + + Qu'est-ce que tu veux savoir ? + + + J'ai besoin de gaz toxique. On m'a dit que tu tais l'homme de la situation. + + + On t'a pas menti ! Je peux t'aider pour la modique somme de 2 000 billets. + + + Tiens ! + + + Bon alors, coute-moi bien ! Un convoi militaire qui transportait du gaz n'est jamais arriv destination. Personne sait ce qui s'est pass, mais les bombonnes de gaz devraient toujours tre bord. C'est clair ? Ah ouais, il pourrait y avoir de vieux documents l-bas... Si tu les trouves, apporte-les-moi ! a pourrait rembourser ton investissement. + + + C'est trop cher pour moi. + + + C'est toi de voir... + + + O est-ce que je peux trouver un stalker qui se fait appeler la Pie ? + + + Je peux te donner un indice... si tu craches 1 000 billets. + + + Voil ! + + + Tu le trouveras pas ici, mais mon petit doigt me dit qu'il pourrait tre du ct de Jupiter, pas loin de la gare de Yanov. Oublie pas que quelqu'un qui a foutu le bordel quelque part a tendance changer de nom quand il s'installe ailleurs... Il a srement chang d'allure aussi, au cas o quelqu'un viendrait le chercher... + + + Je cherche Accroc. Tu sais o je peux le trouver ? + + + Je peux te le dire pour la modique somme de 1 000 biftons. + + + Voil ! + + + Accroc est un abruti et un rapace qui trane avec de gens dangereux. Il a coup les ponts avec nous, mais tu devrais pouvoir le trouver du ct de Jupiter. C'est le seul endroit o il peut aller. T'es pas le seul le chercher... + + + Qu'est-ce que tu peux me dire sur les hlicoptres qui se sont crass ? + + + Hmm... Tout le monde ici sait o ils se sont crass. Y en a un qui s'est crash sur le plateau au sud, le deuxime a atterri dans le marais et le troisime est accroch au sommet des pylnes du poste lectrique. Lequel t'intresse ? + + + Celui du plateau sud. + + + Celui du poste lectrique. + + + Celui du marais. + + + Je ne veux plus parler des hlicoptres. + + + Passe la caisse, tu me dois 200 billets ! + + + Voil ! + + + Alors, cet hlico a atterri juste ct d'un nid de snorks. Pour autant que je sache, certains militaires s'en sont tirs. Ils ont limin les mutants et sont descendus du plateau. Au fait, si tu comptes aller sur place, je peux te fourguer un bon fusil pompe et des munitions pour t'aider flinguer ces salets. Le truc, c'est que personne, part ce cingl de Noah, ne sait comment s'y rendre... + + + C'est trop cher pour moi. + + + C'est toi de voir ! + + + Je peux te le dire pour la modique somme de 200 biftons. + + + Voil ! + + + Je peux te le dire pour la modique somme de 200 biftons. + + + Voil ! + + + Rien pour l'instant. + + + Tu aurais du boulot pour moi ? + + + Alors... J'ai un petit boulot pour les scientifiques. Sinon, il faut qu'on rcupre des infos sur le camp de mercenaires et puis, le marchand a toujours besoin de gardes du corps. T'as que l'embarras du choix, c'est pas le boulot qui manque par ici ! + + + Parle-moi du boulot pour les scientifiques ! + + + Il faut trouver trois dtecteurs "Veles" et les apporter aux scientifiques dans leur bunker prs de Jupiter. Une fois sur place, adresse-toi Novikov, il veut les modifier apparemment... Quand les dtecteurs seront rentables, on partagera l'argent, fifty-fifty. C'est clair ? Alors, vas-y ! C'est vraiment pas compliqu. + + + a marche ! + + + Peut-tre une autre fois. + + + Parle-moi du camp des mercenaires ! + + + Y a des mercenaires qui ont dbarqu la station de traitement et je suis curieux de savoir ce qu'ils trament... Faudrait que tu infiltres leur camp et que tu rcupres tout ce que tu peux sur leurs plans : des PDA, des papiers, tout ce que tu trouves. OK ? Alors, vas-y ! C'est un jeu d'enfant tant que tu restes discret. + + + a marche ! + + + Je ne peux pas pour l'instant. + + + Parle-moi du boulot de protection du marchand ! + + + Le marchand a besoin de gardes du corps pour le protger pendant une ngociation. T'auras pas grand-chose faire, faudra juste que tu te tiennes ct de lui pour donner un air "officiel" la transaction. OK ? Le marchand t'attend au poste des rangers. Il te donnera tous les dtails... + + + OK. + + + Attends ! + + + Une autre fois peut-tre... + + + Alors... j'ai un boulot pour les scientifiques, et sinon, j'ai besoin de quelqu'un pour rcuprer des infos sur le camp de mercenaires. toi de voir... + + + Ben, j'ai un boulot pour les scientifiques ou alors le marchand a toujours besoin d'un garde du corps. Allez, c'est toi de voir... + + + Ben, j'ai besoin de quelqu'un pour rcuprer des infos sur le camp de mercenaires et sinon, le marchand cherche toujours un garde du corps. toi de voir... + + + Un petit boulot simple pour les scientifiques. C'est vraiment du gteau : va chercher ci, rapporte-moi a... + + + Le marchand a besoin d'un garde du corps pour une transaction. Ce sera pas bien compliqu. + + + Je n'ai plus de boulot proposer. + + + a pourrait t'intresser. + + + Qu'est-ce que t'as rcupr ? + + + Le PDA de Noah. + + + Le cingl sur sa pniche ? Je t'en donne 1 000 billets. + + + a marche. + + + Non merci. Je pense que je vais le garder pour l'instant. + + + Attention ce que a te brle pas les doigts... + + + Le PDA d'un mercenaire qui se fait appeler le Crochet. Je l'ai trouv dans la station de traitement des dchets. + + + Je t'en donne 1 000 billets. + + + a marche. + + + Trs intressant... Du beau boulot, stalker ! + + + Le PDA d'un mercenaire qui se fait appeler le Pic. Je l'ai trouv dans la station de traitement des dchets. + + + Je t'en donne 1 000 billets. + + + a marche. + + + Un PDA avec des infos sur les planques des combattants du Monolithe. + + + Je t'en donne 5 000 billets. + + + a marche. + + + Le PDA d'un homme en relation avec le client des mercenaires. + + + Je t'en donne 4 000 billets. + + + a marche. + + + Le PDA de l'un des fondateurs du Devoir, le gnral Tachenko. + + + Je suis prt payer plus pour celui-l. Je t'en donne 2 500 billets. + + + a marche. + + + Le PDA d'un mercenaire. + + + Je t'en donne 1 000 billets. + + + a marche. + + + Le PDA de Morgan. + + + Des infos sur le marchand du Devoir qui vend des armes tout le monde... a me servira forcment... Je t'en donne 4 000. + + + a marche. + + + Un message de la planque du groupe de Strelok, adress au Spectre. + + + Je t'en donne 500 billets. + + + a marche. + + + Un message de la planque du groupe de Strelok, adress Strelok. + + + Je t'en donne 500 billets. + + + a marche. + + + Un message de la planque du groupe de Strelok, adress aux Crocs. + + + Je t'en donne 500 billets. + + + a marche. + + + Des documents de l'usine de Jupiter, un dossier contenant l'ordre d'vacuation gnrale. + + + Je t'en donne 750 billets. + + + a marche. + + + Des documents de l'usine de Jupiter, une page de bloc-notes. + + + Je t'en donne 750 billets. + + + a marche. + + + Des documents de l'usine de Jupiter, un planning de livraison. + + + Je t'en donne 750 billets. + + + a marche. + + + Des documents de l'usine de Jupiter, l'ordre crit de ne transporter l'objet 62 que par le souterrain. + + + Je t'en donne 750 billets. + + + a marche. + + + Non. Si Sultan est dans le coup, je prfre garder mes distances. + + + Voyons voir... Oui, a m'intresse. Je peux te l'acheter ? + + + Oui, je n'en ai pas besoin. + + + Un ordinateur du camp des mercenaires de la station de traitement des dchets. + + + Je t'en offre 2 000 billets. + + + a marche. + + + Hum... Tu devrais montrer a au Barbu ou aux scientifiques. La marchandise louche, a m'intresse pas... Je tiens pas tomber malade cause des radiations. + + + Je toucherai pas ce truc... J'aime pas prendre de risques inutiles... Qui sait si un champ d'anomalies va pas se former autour de ce machin ? Tu devrais l'apporter aux scientifiques pour qu'ils y jettent un coup d'il. + + + Et moi, j'ai une ogive nuclaire dans mon placard de cuisine ! Tu devrais en parler aux scientifiques, ils adorent ce genre de truc. + + + Le PDA d'Accroc. + + + Voyons voir... Hmm... Il contient rien de spcial. T'as srement dj pris tous les trucs intressants... Je t'en offre 200 billets. + + + Je suis d'accord. + + + Le PDA de l'un des hommes de Sultan. + + + Intressant... a pourrait servir. Je t'en offre 1000 billets. + + + a me va. + + + Le module de mmoire d'un drone. + + + Une trouvaille intressante... Mais elle fera pas de toi un milliardaire... Qui sait si je serai le premier lire les infos qu'elle contient ? Je t'en donne 500 billets. + + + March conclu. + + + Rien pour l'instant. + + + propos de ces dtecteurs... + + + Ouais ? + + + O est-ce que je peux les trouver ? + + + Je sais pas, moi ! Dbrouille-toi ! + + + J'ai les dtecteurs. + + + Alors, qu'est-ce que tu fais encore ici ? Apporte-les Novikov dans le bunker des scientifiques prs de Jupiter ! + + + J'ai apport les dtecteurs Novikov. + + + Cool ! Il reste plus qu' attendre qu'il les modifie. Novikov m'a promis qu'il enverrait un homme de confiance pour nous les rapporter ds qu'il aura fini. + + + On a un problme... Notre petit march est tomb l'eau. Novikov a fait un boulot formidable avec ces dtecteurs : il a augment leur porte, leur sensibilit et tout un tas de trucs... Avec un dtecteur pareil, tu peux battre tous les autres chasseurs d'artefacts plate couture ! J'ai pass un accord avec Barbu pour que les stalkers qu'il embauche utilisent ce nouveau matos. + + + Et donc ? + + + Notre march, c'tait de partager le butin quitablement, mais les stalkers refusent de nous filer notre part du gteau. Il faut que t'ailles parler au Barbu pour le convaincre de respecter sa part du march... Allez, toi aussi, tu veux ta part du butin, non ? + + + J'ai besoin de ton nouveau dtecteur. + + + Ha ! Et moi, j'ai besoin d'une arme lourde. Si t'as une arme de qualit en rab, on peut faire un change. + + + a marche. + + + Non, merci. + + + J'ai besoin de ton nouveau dtecteur. + + + C'est une menace ? Moi aussi, j'en ai besoin... + + + Tu me comprends pas. Tu as le dernier. J'ai pas eu trop de mal me dbarrasser des autres propritaires... + + + Quoi ? Tu t'es... dbarrass d'eux ? Tiens, prends-le et laisse-moi tranquille ! + + + Et si t'allais te faire mettre ? + + + C'est gentil, mais je vais passer. Je vais te demander une dernire fois de me donner ce dtecteur. + + + Et moi, je te dis poliment d'aller te faire mettre ! + + + Stalker, tu veux te faire de l'argent ? + + + Qu'est-ce qu'il faut que je fasse ? + + + Eh bien, j'avais cach du butin dans une vieille Zaporozhets. Mais un tremblement de terre a enseveli la bagnole... J'ai vrifi et on dirait qu'on peut toujours y accder... mais y a des mutants qui se sont installs dans le coin, des snorks. Crois-le si tu veux, j'ai pas peur des contrleurs, mais ces salets de snorks me foutent vraiment les jetons. Si t'arrives rcuprer le coffre avec un cadenas, on partagera le butin, toi et moi. + + + a marche. + + + Merci, stalker. + + + C'est ton coffre ? + + + Ouais, c'est bien a ! T'as assur ! + + + Une autre fois peut-tre... + + + Dommage... + + + Non, j'ai trop faire pour l'instant. + + + OK, comme tu voudras. + + + Alors ? Des nouvelles ? + + + Qu'est-ce que tu veux ? Tu vois pas que je suis occup ? + + + H, c'est mon flingue ! O tu l'as eu, espce de sale voleur ? On me l'a piqu l'autre jour ! + + + De quoi tu parles ? Je viens de l'acheter ! + + + Je ne sais ni o ni comment tu l'as trouv, mais c'est le flingue qu'on m'a vol ! Alors si tu veux pas que je me mette en colre, rends-moi mon arme et on part chacun de notre ct... + + + D'accord, prends-le ! Je veux pas d'ennuis, moi ! + + + Donne-le-moi ! + + + Cette arme m'appartient ! + + + Ah ouais ? Je te prviens, j'ai le bras long ! Je connais tout le monde, ici ! Tu crois que tu vas survivre longtemps dans la Zone avec la rputation que je vais te faire ? Qu'est-ce que tu penses de a, hein ? Et espre pas non plus recevoir de l'aide des gens d'ici, mon pote ! Tu t'es mis dans la merde tout seul ! + + + Fous-moi le camp ! + + + Tu es sr que c'est ton arme ? + + + videmment que je suis sr ! T'en as vu beaucoup, des flingues comme a dans la Zone, toi ? Y a pas de doute, c'est mon arme ! + + + Tu te trompes. Laisse-moi tranquille et tout se passera bien ! + + + Quoi ? Moi, je me trompe ? Fais gaffe ce que tu dis, connard ! Si tu fous le bordel ici, tout le monde se rangera de mon ct ! Rends-moi ce flingue et on en parle plus... Je vais mme tre sympa et je dirai personne que tu me l'as vol. + + + Quoi ?! Tu as pens au fait qu'il me faudrait peine un quart de seconde pour t'en mettre une entre les yeux avec ce flingue ? + + + OK, relax ! On s'est un peu nervs, mais je suis calme, maintenant. Y a pas de raison d'en arriver l ! J'ai d faire une erreur, c'est tout. + + + propos du coffre... + + + Tu l'as trouv ? + + + J'y travaille. + + + J'ai dcid d'arrter de chercher. + + + Dommage... + + + Fais-moi voir a... + + + Bien sr ! Un instant... + + + J'ai dcid de garder le coffre. + + + Espce de... T'en fais pas, j'oublierai pas ton sale coup ! + + + Et voil ! + + + Ok, et si on partageait ce butin ? + + + a marche ! + + + Voyons ce qu'on a l-dedans... Mon bon vieux Fora. Il y a longtemps, mon oncle l'a modifi lui-mme. C'est un peu comme un bijou de famille... Je vais le garder. + + + Non, donne-le-moi ! + + + Euh, d'accord... + + + Alors... passons la suite ! + + + Non, t'en as dj pris assez. + + + Alors... passons la suite ! + + + Bon, vas-y, prends-le. Qu'est-ce qu'il y a d'autre ? + + + Alors... Voyons voir... Un mdikit de trs bonne qualit. Avec a, on peut s'en prendre un ours ou mme un manipulateur. a, c'est pour moi... + + + Moi, j'aurais bien besoin d'un mdikit, moi ! + + + Hmm... OK. + + + Passons la suite ! + + + Non, t'en as dj pris assez comme a. + + + Passons la suite ! + + + Tu peux garder a. Qu'est-ce qu'il y a d'autre ? + + + Alors... Ouah ! a m'tonnerait que t'aies dj eu un flingue comme celui-l entre les mains... Un Akm-74/2U modifi ! J'avais donn une tonne de kits de premiers secours un type du Devoir pour mettre la main sur ce petit bijou. C'tait l'poque o la Libert avait cras une de leurs units et qu'ils taient tombs court de mdocs. Ce flingue m'a sauv la vie trois fois, depuis... Je le garde, c'est clair ! + + + Peut-tre que moi, je peux l'avoir ? + + + Hmm... a me fait vraiment mal au cur... Mais j'ai qu'une parole. Tiens ! + + + Passons la suite ! + + + Non, t'en as dj pris assez comme a. + + + Passons la suite ! + + + D'accord, tu peux garder a. Y a quoi d'autre ? + + + Oh... a, c'est un vrai trsor. Cet artefact vaut son pesant d'or ! Et je l'ai rcupr moi-mme dans une anomalie... Je vais pas te mentir, j'ai fait dans mon froc plus d'une fois ! C'est mon trophe, gagn la sueur de mon front ! + + + Je crois que j'en ai plus besoin que toi. + + + Srieusement ? Tu me tues, mec ! C'est bon, prends-le... T'iras pas dire que je suis pas gnreux, hein ! + + + Passons la suite ! + + + Tu en as dj pris assez comme a. + + + Passons la suite ! + + + Garde a ! Il y a quoi d'autre ? + + + Et enfin... Un superbe casque fait main ! Il y a quelque temps, un nouveau stalker a dbarqu du Cordon, c'tait un sacr bricoleur ! Il nous a fait un paquet de trucs gniaux avant de claquer... dont ce casque. Il est unique en son genre ! Je le garde. + + + Bon, c'est quand mme moi qui ai risqu ma vie en affrontant cette horde de snorks ! Je mrite d'avoir ce casque ! + + + Eh bien... D'accord. Fais-en bon usage ! + + + Passons la suite ! + + + T'as dj rcupr assez de trucs, tu crois pas ? Faut bien que je garder un truc ou deux ! + + + Passons la suite ! + + + Ok, garde donc a ! + + + a y est, mon pote, c'est tout mon butin. + + + Bon, eh bien, plus tard alors ! + + + C'est tout. Mais je peux pas te laisser partir les mains vides... Tiens, prends mon pistolet ! + + + Bonne chance ! + + + C'est quoi, ton boulot ? + + + Je reprsente la loi et l'ordre. Avant, j'tais inspecteur dans la police, mais ici, je suis un peu le sheriff local. Je suis arriv avec le Barbu et il a dcid de s'installer ici. Pourquoi se casser la tte aller plus loin ? Personne sait comment se rendre Pripyat, de toute faon. Il y a assez d'artefacts pour tout le monde dans le coin, alors on est rests. + + + Qui je pourrais recruter pour protger les scientifiques ? + + + On a quelques gars srieux... L'quipe de Spartacus, par exemple. De vrais pros, on peut compter sur eux. Y en a pas mal qui bossaient dans la police avant. S'ils sont disponibles, tu trouveras pas mieux ! + + + Il y a pas si longtemps, j'aurais pu te donner quelques noms, mais l, j'ai plus personne. Et a va intresser aucun des stalkers du coin. + + + Qui pourrais-je recruter pour faire des relevs pour les scientifiques ? + + + Je connais un groupe de stalkers... Gonta est leur tte. Essaie de lui en toucher deux mots, a pourrait peut-tre l'intresser... a les changera de la chasse aux mutants. + + + Si Gonta et ses gars taient dans le coin, je t'enverrais leur parler, mais ils sont pas l... J'ai personne d'autre en tte, dsol. + + + Tu as dj achet des armes Allegro ? S'il revendait des objets vols, tu le saurais ? + + + Tu crois qu'il serait assez fourbe pour faire un truc pareil dans mon dos ? Non, c'est impossible ! C'est pas le genre d'Allegro, je le saurais ! + + + Je cherche Accroc. Tu sais o je peux le trouver ? + + + Accroc ? Ouais, je le connais. Un vrai crtin, celui-l... Y a des gars qui l'ont aperu sur les quais, prs des grues, l'autre jour. Il doit traner par l-bas. Tu devrais aller y jeter un coup d'il. + + + Bonjour, stalker. a te dirait de te faire de l'argent de poche tout en aidant notre camp ? + + + Bonjour, stalker. T'es encore ici ? ce rythme-l, les sangsues nous auront bientt tous limins... + + + On parlera plus tard. J'ai autre chose faire. + + + Quel genre de boulot peux-tu me proposer ? + + + Alors voil : plusieurs stalkers ont disparu. Personne ne sait o ils ont bien pu passer, mais on a trouv un corps l'autre jour... Il ne prsentait aucun signe de violence, mais on l'avait compltement vid de son sang. Sismik a examin le cadavre, il pourrait t'en dire plus... Y a pas de doute : c'est un coup de ces salets de sangsues ! J'en ai parl Danila, le chasseur, et il est parti la recherche de leur nid. Mais je l'ai pas revu depuis... + + + Qu'est-ce que je dois faire ? + + + Il faut que tu trouves le nid et Danila. Je vais pas te mentir, c'est une mission risque, mais je paierai en consquence. a t'intresse ? + + + Oui. + + + Bon, j'ai trouv deux endroits o on devrait se rendre. J'ai charg les coordonnes du premier sur ton PDA. J'ai quelques trucs faire, mais je me chargerai du deuxime. Je te dirai si j'y trouve quelque chose. + + + a marche ! + + + J'ai d'autres choses faire. + + + Reviens me voir si tu changes d'avis ! + + + a ne m'intresse pas. + + + Toujours la mme chose... Tant qu'il y aura des nids de sangsues, personne ne sera en scurit... Et on a toujours pas revu Danila, le chasseur. Tu veux bien nous aider ? + + + Le Faisan m'a dit que tu avais vu le cadavre d'un des stalkers disparus. Tu crois qu'il a t tu par une sangsue ? + + + Effectivement, je l'ai vu... Celui-l et tous les autres... Aucune autre crature n'est capable de drainer un corps humain de tout son sang jusqu' la dernire goutte. Tout indique que c'est l'uvre des sangsues... Quelle autre conclusion je peux bien en tirer ? + + + Parle-moi de toi ! + + + Je suis un mdecin. Un neurochirurgien pour tre prcis. Qu'est-ce que tu veux que je te dise ? Je peux exciser un hypothalamus avec une prcision ingale, mais personne dans la Zone ne m'a encore demand de faire ce genre d'intervention. Ici, je suis juste un toubib parmi tant d'autres. + + + J'coute. + + + J'aurais besoin de dcrypter une bote noire... + + + Eh bien... C'est pas vraiment ma spcialit. Tous ces diagrammes et ces algorithmes... C'est pas ma tasse de th. Pose-moi des questions sur les lois de la physique, je pourrai te rpondre... Une quation par ci, une loi par l, et le tour est jou. + + + Tu crois qu'Allegro revend des objets vols ? + + + Ouh l... Allegro, des objets vols ? J'y crois pas une seule seconde ! Quand je montais mon atelier, Allegro est venu me filer un coup de main. Et il m'a pas demand un rond en change... Peu importe ce que peuvent dire les autres : Allegro, c'est un type bien. + + + Tu n'aurais pas du boulot pour moi ? + + + Oh, bien sr ! J'ai besoin d'outils, mais j'ai vraiment pas le temps d'en chercher moi-mme. Si tu m'apportes des instruments qui peuvent m'tre utiles, je te montrerai ce que c'est qu'une vraie amlioration. En plus, tu pourras te faire un peu d'argent. + + + OK, je garderai l'il ouvert. + + + On verra a plus tard. + + + Oui, bien sr. J'ai toujours besoin d'outils... a pourrait te rapporter un peu de fric de m'en trouver... + + + J'aurais besoin de dbloquer un module de mmoire... + + + L, je peux pas t'aider, dsol. Tous ces composants lectroniques, ces ordinateurs, c'est vraiment pas mon truc. Il vaudrait mieux demander quelqu'un de plus jeune... Mme les biberons sont lectroniques, de nos jours ! + + + Qui pourrait forcer un conteneur en acier ? + + + Je peux te faire a les doigts dans le nez ! Allez, je te fais un prix d'ami : 500 billets. + + + Tiens ! + + + Bon, alors... On soulve a, on pousse a... Et hop ! C'est fait ! On a pas encore invent une bote que je puisse pas ouvrir avec un marteau et un bon pied-de-biche ! + + + Je n'ai pas autant sur moi. + + + Reviens me voir quand t'auras assez ! Moi, je bouge pas d'ici ! + + + Je vais y rflchir. + + + J'ai apport boire. Tu veux un verre ? + + + Non merci, j'ai dcroch, mon pote ! Quand j'ai vu l'objet 62, je me suis dit : "a y est, j'ai des hallucinations"... L'alcool, a te fout les neurones en l'air. a fait pas partie d'une alimentation quilibre. Et si j'tais pas l, qui te filerait des munitions pour ton fusil Gauss ? + + + J'ai une autre bouteille pour toi. + + + J'en ai une troisime, si jamais t'en as besoin... + + + Je t'apporte des outils. + + + Cool ! Qu'est-ce que t'as trouv ? + + + Des outils rudimentaires. + + + Cool ! Mais il me faut encore des outils de prcision et de calibrage. + + + Des outils de prcision. + + + Gnial ! Il me manque juste les outils rudimentaires et des outils de calibrage. + + + Des outils de calibrage. + + + Gnial ! Il me manque juste des outils rudimentaires et des outils de prcision. + + + Rien pour l'instant. + + + Super ! Il me manque plus que des outils de calibrage. + + + Super ! Il me manque plus que des outils de prcision. + + + Super ! Il me manque plus que des outils rudimentaires. + + + Excellent ! Bien jou ! C'est quoi, ton secret ? Maintenant, j'ai tous les outils qu'il me faut ! Tu vas voir, je vais te faire une mitrailleuse avec des briquets ! Ha ha ! + + + J'ai rcupr les plans et la documentation de l'objet 62. + + + Trop fort ! Je savais bien que ces enfoirs n'auraient pas le temps de tout dtruire. Alors, voyons voir a... Hmm... C'est donc a que ces salauds prparent ? Bien ! J'ai besoin de quelques heures pour rgler tout a ! Laisse-moi le fusil Gauss, je vais essayer de le rparer. Attends ici, je te le rapporte dans une minute ! + + + J'ai besoin de batteries pour mon fusil Gauss. + + + Je te fais un prix d'ami : 2 000 biftons. + + + Et voil ! + + + Je vais y rflchir. + + + Je suis un peu court en ce moment... + + + Tu as fini de bosser sur le fusil Gauss ? + + + C'tait du gteau ! Je t'ai nettoy le systme d'alimentation. S'il refait des siennes, rapporte-le-moi et je t'arrangerai a. + + + J'ai pas encore termin. J'adore travailler sur ces joujoux... + + + J'ai une arme de modle inconnu. + + + Comment a, inconnu ? Fais-moi voir a... + + + Tiens... Tu as dj vu ce genre de chose ? + + + Ah, c'est toi... C'tait terrible, non ? J'ai rv que tu m'avais rapport un truc du pass... Encore bu que j'tais pas heureux... + + + Tu n'aurais pas rv de cette arme, par hasard ? + + + Ouah... C'tait peut-tre pas un rve, aprs tout... C'est un fusil Gauss, ou "Objet 62" si tu veux utiliser l'appellation officielle. Eh ben... l'poque, je bossais dans l'usine de Jupiter... Je concevais des armes "bases sur le principe d'acclration des projectiles via un champ lectromagntique," si ma mmoire est bonne. Tu vois ces bobines ? C'est moi qui les ai faites... Dommage qu'ils aient annul le projet en 2004... On a jamais pu trouver une source d'nergie assez compacte. + + + Ce fusil a dj t utilis. Qu'est-ce qui a bien pu changer ? + + + Va savoir... Honntement, j'essaierais mme pas de mettre un tournevis dans la batterie. Le systme d'alimentation a aussi t endommag. Si seulement on avait les plans... L'atelier de test o je bossais avait toute la documentation... Peut-tre que les plans et la documentation du fusil Gauss y sont toujours... Il se trouve que j'ai toujours une carte d'accs de l'atelier... + + + Tu pourrais me donner la carte d'accs ? + + + Eh bien... Oui, je suppose. Mais essaie de pas la perdre, hein ! Si tu me rapportes les documents, je pourrai peut-tre rparer ce fusil. + + + Je te rapporte ta carte d'accs. + + + Merci... a me rappelle le bon vieux temps... + + + Alors... Tu... euh... tu peux m'apporter toutes tes armes casses, tes combinaisons troues... Je suis pas aussi bon quand je suis jeun, mais je peux toujours essayer... + + + O t'tais pass ? Je commenais m'inquiter, moi... Je demandais tout le monde : "Il est o, le stalker ?"... Enfin... Sant, hein ? + + + Salut ! a fait plaisir de te voir ! Fais comme chez toi... Tu m'apportes quelque chose rparer ou un truc boire ? + + + Eh ! Gnial ! Mes mains tremblent pas, mais ma tte me dit : "J'en veux encore !" Remets-en une tourne, petit ! + + + Tu peux y aller, hein ! Vas-y, ouvre une autre bouteille ! Buvons notre cause commune ! Ah... Sans dconner, la vodka fait ressortir mon gnie mcanique ! + + + Si seulement le Joker tait ici... On trinquerait la mmoire de Barge tous les deux... Paix son me... C'tait un type bien, un vrai roc. + + + Si seulement Barge tait ici... On trinquerait la mmoire du Joker tous les deux... Paix son me... C'tait un type bien, on pouvait compter sur lui. Il avait qu'une parole. + + + Ohh... Barge... Joker... Comment on en est arriv l ? a n'en finira donc jamais... + + + Hmm ? Qu'est-ce que c'est que a ? Je m'occuperai des pistolets-mitrailleurs demain... T'en fais pas, a va aller ! J'ai une bonne bouteille qui m'attend... + + + Ce numro soixante-deux... J'aimerais bien jeter un coup d'il aux plans des circuits... + + + Sage dcision ! C'est important de garder son flingue en bon tat ! Et si t'as une ou deux bouteilles, je peux mme ajouter des tas d'amliorations ! Tu veux un parachute sur ton fusil pompe ? Ha ha ! Je peux t'en installer un ! + + + Regarde-moi a ! Ils ont mis un artefact lectromagntique dans la batterie ! Ha ! Je savais bien qu'ils avaient fait joujou avec une anomalie bizarre ! Sur le papier, c'est vident ! Voyons voir si je peux y arriver, moi aussi... + + + T'as besoin que je te bricole un truc ? + + + C'est du chinois... a fait un bail que j'ai pas lu de documents techniques... + + + Je suis arriv Zaton avec deux potes, Barge et le Joker... Des jeunes cons, mais ils avaient la niaque ! Ils voulaient mettre la main sur une tonne d'artefacts, crevaient d'envie d'tre les premiers, les plus rapides... Je les ai regards dans les yeux et j'ai pas aim ce que j'y ai vu : le butin, c'est bien, mais a vaut pas le coup de se jeter la tte la premire dans la gueule d'un mutant. + + + Qu'est-ce qui s'est pass ? + + + Eh bien... On passait une soire tranquille, on buvait un coup et on a commenc s'engueuler pour savoir ce qu'on allait faire : est-ce qu'on allait rester ou partir, et si on partait, pour aller o ? Personne voulait entendre raison ou couter les arguments des autres. La discussion a trs mal fini et chacun est parti de son ct, moi y compris. Je leur ai dit qu'ils connaissaient encore rien la vie... et d'autres trucs dbiles. Si seulement je pouvais les revoir, je m'excuserais pour toutes ces conneries... On tranerait ensemble et on pourrait discuter du bon vieux temps... + + + Je peux transmettre tes excuses la Barge si je le vois. + + + Ce serait sympa. + + + Je peux transmettre tes excuses tes potes si je les vois. + + + Ce serait sympa. + + + Je peux transmettre tes excuses au Joker si je le vois. + + + Ce serait sympa. + + + J'ai trouv ce PDA. Tu peux y jeter un coup d'il si tu veux. + + + J'ai l'air d'avoir besoin d'un PDA ? qui il appartient ? + + + Barge est mort ? Oh non ! J'arrive pas le croire ! C'tait un vrai dur... Oh, Barge... Paix ton me... J'espre qu'il est rien arriv au Joker... + + + Barge est mort ? Oh non ! J'arrive pas le croire ! C'tait un vrai dur... Oh, Barge... et le Joker aussi... Reposez en paix, les enfants... Pourquoi... mais comment on en est arrivs l ? + + + Ils sont morts ? Oh non ! J'arrive pas le croire ! Barge tait un vrai dur... Et le Joker... Plus jamais je rigolerai de tes blagues... Reposez en paix, les enfants... Pourquoi... mais comment on en est arrivs l ? + + + Tu peux rpondre quelques questions ? + + + Bien sr ! + + + Quand est-ce que ma commande sera prte ? + + + a dpend de la complexit de la commande... En gnral, a prend une journe, parfois moins. + + + Parle-moi de toi ! + + + Y a pas grand-chose dire... J'ai eu de bons et de mauvais moments, comme tout le monde. Je suis tomb sur quelques anomalies, j'ai t pris en otage par des bandits... J'tais encore un gamin quand je suis arriv dans la Zone... C'tait il y a bien longtemps. J'ai commenc comme coursier... Srum antiradiations, munitions perforantes, tout le tintouin... Ensuite, j'ai boss pour Sidorovich... pour le remercier de m'avoir sauv la peau. a m'a permis de me faire des contacts et, quand j'ai fini de rembourser ma dette, je me suis mis mon compte pour livrer des commandes exclusives. Depuis, j'ai russi viter pas mal de soucis, mais j'ai l'impression que ma chance est en train de tourner. D'un autre ct, j'ai plus vraiment envie de me casser le cul pour gagner des cacahutes... + + + Je vois. Merci. + + + Content de t'avoir aid ! + + + Tu m'as vendu une arme vole ! + + + De quoi tu parles ? Je revends pas d'objets vols, moi ! Je suis un marchand honnte. Si tu me crois pas, demande n'importe qui dans la base, ils te diront que je suis un mec sur qui on peut compter ! + + + Je suis tomb sur un stalker qui m'a dit que cette arme lui appartenait. + + + Et c'tait quoi, son nom ? + + + Accroc. + + + Qu'est-ce que a peut te faire ? + + + C'est important. Tu t'es fait mener en bateau, stalker. + + + C'est ce qu'on va voir. + + + Tu t'es fait mener en bateau, stalker. + + + Je viens chercher ma commande. + + + Voici ton Steppe Eagle. a a t plus compliqu que je pensais. Un soi-disant expert en pistolets tait trs intress, mais j'ai russi lui reprendre juste temps. Regarde un peu : c'est un flingue fait main, tous les composants sont ajusts avec une prcision incroyable. Tu t'es jamais demand quoi un pistolet de sniper ressemblerait ? C'est la rponse ta question. Tu me dois 2 800 billets supplmentaires. + + + Et voil ! + + + Tiens ! C'est un plaisir de faire affaire avec toi. + + + Je n'ai pas autant sur moi. + + + Bon, je vais te le mettre de ct. J'espre pour toi que tu trouveras l'argent rapidement. + + + Je n'ai pas envie de l'acheter. + + + Si tu refuses d'acheter une de tes commandes, je pourrai plus te faire confiance... Je devrai ajouter un supplment et te demander un plus gros acompte. + + + Tant pis, je ne veux plus de cette commande. + + + Ok, comme tu voudras. + + + Je vais y rflchir. + + + Pas de problme, c'est toi qui vois ! Je te mets le flingue de ct pour l'instant. + + + Voici ton Steppe Eagle ultra-haute prcision. Tu me dois 2 800 billets supplmentaires. + + + Admire donc ce petit bijou ! Je te garantis que ce pistolet est unique en son genre : cette dition trs limite a t cre, sur commande, pour une unit des forces spciales. a n'a pas t facile de mettre la main sur un tel flingue, j'ai mme d contacter un de mes associs l'tranger. Ce pistolet dispose d'un chargeur grande capacit, d'un canon en acier renforc et d'une culasse base de polymres ultra-rsistants. Tu me files les 2 800 billets manquants et il est toi ! + + + Voil ton pistolet Alpine avec chargeur agrandi. Tu me donnes les 2 800 billets manquants et ce petit bijou est toi ! + + + Vise un peu a : le Mars. Ce pistolet appartenait un mercenaire du nom de Doberman. C'est un pistolet compact de gros calibre, quip d'une culasse allge. Doberman tait une belle ordure, mais il s'y connaissait en armes. On raconte que sa mthode d'excution prfre, c'tait de flinguer les quatre membres de ses victimes, puis de leur faire sauter la cervelle, tout a avant qu'elles ne tombent au sol. Enfin bref... a fera 2 800 billets. + + + Voil ton pistolet Mars tir rapide. Tu me dois 2 800 billets supplmentaires. + + + Tiens, voil ton pistolet-mitrailleur, le Cutter. Je sais ce que tu te dis, mais les apparences sont trompeuses ! C'est un modle tout neuf, un prototype sorti tout droit de l'armurerie ! Ses concepteurs voulaient crer la nouvelle gnration d'arme courte porte : l'quilibre parfait entre gros calibre, tir rapide et prcision. a te cotera 8 000 billets supplmentaires. + + + Oui, voici le Cutter, un pistolet-mitrailleur tir rapide. Il est toi pour 8 000 billets supplmentaires. + + + Voil un modle intressant : le fusil pompe de l'arme SPSA-Carabine. Il fournit un tir automatique tout en rduisant le recul grce un systme quilibr et antichoc. 8 000 billets de plus et il est toi ! + + + Voici le SPSA Carabine, un fusil pompe automatique. a te reviendra 8 000 billets supplmentaires. + + + Je pense que j'ai exactement ce qu'il te faut : l'Eliminator ! La cargaison devait partir en Afrique Centrale, mais j'ai fait jouer mes relations et j'ai pu en rcuprer quelques-uns. C'est un fusil automatique qui dispose d'un chargeur haute capacit et d'une excellente cadence de tir. Il est toi pour 8 000 biftons seulement ! + + + Bien sr ! Et un fusil automatique Eliminator avec chargeur haute capacit, un ! 8 000 billets, je te prie. + + + Bien sr ! Admire le Storm, un fusil d'assaut avec lance-grenades intgr ! Ce prototype est la version modifie d'une arme conventionnelle conue pour les forces spciales de la Zone. La pointe de l'innovation, en provenance directe de nos cousins slaves... Et je t'en demande que 16 000 billets ! + + + Bien sr ! Voici le Storm, un fusil d'assaut avec lance-grenades intgr et chargeur haute capacit, pour seulement 16 000 billets supplmentaires. + + + Le voil : le GP37, un fusil d'assaut nouvelle gnration. Prcis, fiable et pratique, grce sa lunette optique intgre. Il appartenait un observateur de l'ONU qui avait t envoy enquter dans la Zone. Malheureusement pour lui, tout ne s'est pas pass comme prvu... Le fusil est toi pour 16 000 billets. + + + Voici le GP37, un fusil d'assaut nouvelle gnration. Le prix ? 16 000 billets ! + + + Une minute... Voici le fusil d'assaut modulaire FT-200M, une cration des armuriers belges ! Prcis, polyvalent, utilisable par les droitiers comme les gauchers, il est quip d'une lunette optique et d'un lance-grenades. Je l'ai rcup... euh, obtenu auprs d'observateurs de l'ONU pour le moins... malchanceux. a fera 16 000 billets supplmentaires. + + + C'est un fusil modulaire FT-200M et il est toi pour 16 000 billets de plus. + + + a, c'est le Tide. Bas sur un fusil de prcision silencieux, il a t spcialement conu par l'arme pour liminer des zombies. Le Tide compense sa faible cadence de tir par sa puissance et sa discrtion : il permet au tireur d'lite de cueillir les zombies un par un sans jamais rvler sa position ! Malheureusement, les huiles de l'arme se sont vite rendu compte que les stalkers suffiraient amplement empcher les zombies de franchir la Barrire et le fusil n'a jamais t produit en srie. Ce bijou est toi pour 16 000 billets supplmentaires. + + + Voici le Tide, un fusil de prcision silencieux la puissance ingale. Tu peux l'avoir pour 16 000 petits billets supplmentaires. + + + Tiens ! a, mon pote, c'est le fusil de prcision court SVU2-A, qui dispose d'une cadence de tir amliore. Je l'ai achet Mac, le garde lgendaire de la Libert. Il jure que c'est le seul en son genre dans toute la Zone. C'est un objet trs rare, du moins dans le coin, et il te cotera que 16 000 billets supplmentaires. + + + Ouais, le fusil de prcision court SVU2-A, cadence de tir amliore. Il te cotera 16 000 billets de plus. + + + Regarde-moi ce Lynx, fabriqu par un artisan local ! Il a pass l'arme gauche et il en fabriquera pas d'autres, h h. Blague part, cette arme ressemble n'importe quel autre fusil, pas vrai ? Va au stand de tir et tu verras la diffrence ! C'est l'alliance parfaite entre puissance et prcision. Ce petit bijou est toi pour 16 000 billets supplmentaires. + + + Ouais, le Lynx : un fusil de prcision la puissance ingale. Je te le laisse pour 16 000 billets de plus. + + + Vise un peu a : j'ai russi obtenir tout ce qu'il y avait sur ma liste. a, c'est une combinaison CS-3a avec son casque. En soi, le casque n'a rien de spcial, mais tu peux l'quiper d'un dispositif tactique mobile, qui comprend un systme de vision nocturne de haute qualit et un capteur infrarouge. La combinaison CS-3a, quant elle, est un vrai petit bijou : elle offre une protection pare-balles et anti-anomalies ingale pour une combinaison aussi compacte et lgre. a fera 32 000 billets pour le tout. + + + Ouais, j'ai une combinaison CS-3a avec casque tactique. 32 000 billets pour le tout. + + + Juste pour toi, une combinaison SEVA ! Exactement ce que t'avais command : module respiratoire en circuit ferm, isolation thermique, circuit de protection lectrique et matriaux anticorrosion. J'ai mme ajout plusieurs poches artefacts. Un achat essentiel pour tout stalker qui se respecte ! Tu me files les 24 000 billets dont on avait parl et elle est toi ! + + + Tiens, une combinaison SEVA ! Comme convenu, tu me dois 24 000 billets. + + + Le voil : un exosquelette de combat comme t'en as jamais vu ! C'est la meilleure protection pare-balles, pare-griffes, pare-shrapnel... Pare-tout, sauf peut-tre les vhicules blinds, dont il s'inspire : il te soulage d'une partie du poids qui pse sur tes paules. 48 000 billets et je te laisse le tout, batteries, et servomoteurs inclus ! + + + Et voil : un exosquelette de combat exceptionnel ! Il ne cote que 48 000 billets. + + + J'aimerais passer une commande. + + + Pas de problme, qu'est-ce qu'il te faut ? + + + Un pistolet. + + + Aucun problme. a te cotera 3 500 billets, mais il me faut un acompte de 700. + + + Tiens, les voil ! + + + Je te contacterai ds que ta commande sera prte. + + + Je n'ai pas cette somme sur moi. + + + Eh bien, il faudra revenir quand t'auras la thune... + + + En fait, j'ai chang d'avis. + + + D'accord. Si tu te dcides passer une commande, tu sais o me trouver ! + + + T'es pas vraiment un client fiable... Le pistolet te cotera 4 200 billets et je vais avoir besoin d'un acompte de 1 400. + + + Dsol, mais j'ai vendu tous mes pistolets. Le Hibou peut te vendre de la marchandise ordinaire, si tu veux... + + + Une arme de courte porte. + + + Pas de problme ! a te cotera 10 000 billets, avec un acompte de 2 000. + + + T'as refus de rcuprer ta dernire commande... Cette fois-ci, a va te coter 12 000 billets, avec un acompte de 4 000. + + + Hmm... Je crois pas pouvoir t'aider, sur ce coup-l. La demande est dj trop forte. + + + Un fusil d'assaut. + + + Une arme de gros calibre ? Avec une cadence de tir leve ? a fera 20 000 billets, avec un acompte de 4 000. a te va ? + + + T'es pas un client facile... Je vais devoir te demander un acompte de 24 000 billets, pour un prix total de 8 000. March conclu ? + + + C'est pas vraiment le bon moment... Les militaires nous facilitent pas la tche au Cordon. Leur avant-poste a t attaqu rcemment et nos relations commerciales en ptissent. + + + Un fusil de prcision. + + + Je te trouverai ce qui se fait de mieux, pour seulement 20 000 billets ! Mais je vais avoir besoin d'un acompte de 4 000. + + + Avec toi, on sait jamais si les commandes aboutissent... Je peux essayer de trouver ce que tu cherches pour 24 000 billets, mais il va falloir que tu me verses un acompte de 8 000. + + + Dsol, ce type d'arme est pas facile trouver ces temps-ci. Mon contact pour les fusils de prcision est... disons qu'il est... indispos. + + + Une combinaison blinde. + + + Ouais, je devrais pouvoir te trouver a... a te cotera 40 000 billets et il me faut un acompte de 8 000. + + + Ouais, je devrais pouvoir te trouver a... Mais comme t'as refus de payer ta dernire commande, a te cotera 48 000 billets et il me faut un acompte de 16 000. + + + Je vais pas pouvoir te trouver une meilleure combinaison que celle que je t'ai file la fois dernire. Elle tait unique et trs haut-de-gamme. + + + Une combinaison avec un module respiratoire en circuit ferm. + + + Ouh l, a va pas tre vident trouver, a... Je peux essayer de mettre la main sur un de ces petits bijoux, mais a te cotera 30 000 billets, avec un acompte de 6 000. + + + Tu m'as laiss ta dernire commande sur les bras, je dois assurer mes arrires cette fois-ci. Je peux essayer de mettre la main dessus, mais a te cotera 36 000 billets, avec un acompte de 12 000. + + + Je me suis vraiment cass le cul pour ta dernire commande. a va pas devenir une habitude, tu peux me croire ! + + + Un exosquelette. + + + J'imagine que t'as beaucoup rflchi avant de te dcider pour cette commande. Je peux mettre la main sur un exosquelette de combat, mais a te cotera la modique somme de 60 000 billets. Je sais que a parat cher, mais vois a comme un investissement ! Et n'oublie pas que j'ai besoin d'un acompte : 12 000 billets. + + + Tu t'es un peu foutu de moi pour ta dernire commande... Celle-ci te reviendra 72 000 billets et j'ai besoin d'un acompte de 24 000. + + + Impossible. Depuis qu'ils ont ferm l'usine, les exosquelettes se trouvent que sur des cadavres... Et franchement, c'est pas mon style. + + + Rien pour l'instant. + + + Dsol, la boutique est ferme pour l'instant. J'ai quelques problmes de livraison en ce moment... + + + Salut ! Moi, c'est Allegro. Les gens viennent me voir pour acheter des armes uniques : des modles rares, des prototypes, des ptoires personnalises... Tu vois le genre, quoi ! Je vends aussi de l'quipement haut-de-gamme, les derniers modles de combinaisons de protection et de combat. Je vrifie chaque commande moi-mme ; la qualit est garantie ! + + + Bonjour ! Tu veux passer une commande ? + + + Salut ! + + + Ta commande ne devrait plus tarder. + + + Ta commande est prte. Tu peux venir la chercher. + + + Salut ! C'est toi, le pote d'Accroc ? + + + Oui, je le connais. + + + Il m'a dit que tu nous apportais du butin... + + + Ce n'tait pas notre accord... + + + OK... Accroc commence me les briser menues, me faire poireauter comme a. + + + Au revoir. + + + a ne va pas tre possible ! + + + Rflchis bien... Tu devrais faire gaffe ce que tu dis : t'es tout seul. Tu veux tenter ta chance contre nous ? + + + J'ai dit non ! + + + Non, je le connais pas. + + + Ahh... Merde... a fait mal... Aide-moi, mon pote... T'as pas un mdikit ? J'en ai plus pour trs longtemps... + + + Prends ce mdikit ! + + + Ouf ! Merci ! J'tais sr que j'allais y rester... Les cabots auraient t la fte si tu m'avais pas aid... Tiens, prends mon dtecteur, il pourrait bien te servir, un de ces jours. Merci de m'avoir sauv la vie... Je crois que je vais rentrer me reposer la base. + + + Bonne chance ! + + + Ouf ! Merci ! J'tais sr que j'allais y rester... Les cabots auraient t la fte si tu m'avais pas aid... Tiens, prends cet artefact, il pourrait bien te servir, un de ces jours. Merci de m'avoir sauv la vie... Je crois que je vais rentrer me reposer la base. + + + Dsol, j'en ai besoin. + + + Dsol, je n'ai pas de mdikit. + + + Merci encore ! Sans toi, je boufferais les pissenlits par la racine... + + + Stalker ! Viens vite donner un coup de main Petrukha ! Regarde, au bord de la crevasse ! Il est tomb sur une anomalie et mme sa combinaison n'y a rien fait. Et moi, j'ai mme pas de combinaison... Petrukha et moi, on a conomis pour acheter celle qu'il porte... Je peux rien faire ! Aide-nous, je t'en supplie ! + + + OK, reste o tu es ! Je vais voir ce que je peux faire. + + + Dbrouillez-vous tous seuls ! + + + Merci d'avoir sauv Petrukha ! Merde, pourquoi on a pas achet une meilleure combinaison ? + + + Tire-toi de l ! T'as laiss crever Petrukha... Tu lui arriveras jamais la cheville ! + + + la prochaine ! + + + J'ai extermin les sangsues du nid. + + + Parfait, tu as veng la mort de nos frres ! Paix leur me... Tu as bien mrit cette rcompense ! + + + J'ai trouv un nid de sangsues sous la station-relais. + + + Bon, il faut qu'on se dbarrasse de ce nid. Hum... Qui sait combien de ces salets de sangsues se trouvent dans ces tunnels. On pourrait peut-tre les gazer... J'ai entendu le Hibou parler de bombonnes de gaz... Tu pourrais aller le voir ? Disons qu'on est... fchs, lui et moi. Si t'arrives rcuprer les bombonnes, il te suffit de les relier au systme d'aration de la station-relais... Tout sera fini en quelques minutes. + + + OK, je m'en charge ! + + + Je vais y rflchir. + + + J'ai dj une bombonne de gaz. + + + Eh ben... T'es dou, mon pote ! + + + Ah, voil notre stalker ! On t'attendait ! + + + C'est quoi, le plan ? + + + On doit aller rencontrer quelqu'un. T'auras pas grand-chose faire... du moins, je l'espre. Il suffira que tu fasses acte de prsence. + + + Ok. + + + Ha ! On leur a donn une bonne leon ! Tu sais manier un flingue, a, c'est sr. Tiens ! + + + Bonne chance ! + + + Espce d'amateur ! T'as russi tout faire capoter ! Dgage ! + + + Au revoir. + + + Pourquoi tu es si press ? + + + Pour rien... + + + C'est le Hibou qui t'envoie ? + + + Oui. Il m'a dit que tu avais besoin d'aide. + + + a, c'est sr, j'ai besoin d'aide... Tu devrais faire l'affaire. + + + OK. Qu'est-ce que je dois faire au juste ? + + + Jouer les gardes du corps pendant une petite transaction, c'est tout. + + + C'est dans mes cordes. + + + Tiens-toi prt et couvre-moi ! + + + Compris. + + + Je ne parlerai qu'au chef ! + + + Ok... + + + Merci, stalker. Tu nous as bien aids. Je savais bien que ces abrutis feraient tout foirer, d'une faon ou d'une autre. Ils taient suivis depuis le dbut ! Tiens, c'est pour te remercier ! + + + Bonne chance ! + + + a, pour glander, y a du monde... Mais comme garde du corps, t'es vraiment nul ! J'avais promis de te payer et j'ai qu'une parole. Tiens ! + + + Bonne chance ! + + + a, pour glander, y a du monde... Mais comme garde du corps, t'es vraiment nul ! J'avais promis de te payer et j'ai qu'une parole. Tiens ! + + + Bonne chance ! + + + Qu'est-ce que tu veux ? J'ai rien de plus te dire. J'ai failli y laisser ma peau, moi... Dgage ! + + + Bonne chance ! + + + Merci d'tre venu ! On va s'approcher des bandits et couter leur conversation. On verra bien si on dcouvre quelque chose. + + + Ok. + + + Merci, stalker. Prends a... Et le barman a une rcompense pour toi. + + + Ok. + + + Parle-moi de la vie ici ! + + + C'est pas une partie de plaisir, a, c'est clair... Qu'est-ce que tu veux savoir, exactement ? + + + Qu'est-ce que vous faites ici ? + + + On garde un il sur les stalkers. Faut dire que, pour une bonne moiti d'entre vous, on a plus affaire des gamins qu' des vrais mecs... Vous dbarquez dans la Zone avec vos rves, vous voulez jouer les hros ou simplement changer de vie. Vous avez aucune ide de ce qui vous attend ici... et pour la plupart d'entre vous, c'est la grande faucheuse qui vous trouve. C'est de ce genre de stalkers dont on s'occupe. On les trouve la Dcharge, on leur prend leur matos et on les renvoie au Cordon. Y en a que a fait rflchir et ils se tirent vite fait. Ceux qui ont les couilles de revenir, on les fait payer pour notre protection. Je te le dis : personne ose venir sur notre territoire. Ni l'arme, ni les mercenaires, pas mme les mutants. Personne ! + + + Qu'est-ce qui vous a amens au centre de la Zone ? + + + Nos jambes... ton avis ? On est venus pour les stalkers, quoi d'autre ? Si on tait pas l pour maintenir l'ordre, ce serait le chaos ! Ce que tu trouves, tu le gardes, bien sr... mais qui va payer les taxes ? Je parle des taxes pour la paix et la scurit. Par exemple, si l'un d'entre vous exploite une anomalie pendant que nous, on empche les mutants d'approcher... S'il s'en sort, on prend une commission... Une contribution pour le maintien de l'ordre, tu comprends... + + + Comment es-tu devenu le chef ? + + + Par o commencer... Je suppose qu'il faut remonter au lyce. J'avais un pote, mon meilleur ami, avec qui je tranais tout le temps. On fumait, on buvait... Mais lui, il en voulait toujours plus et il a commenc prendre de la drogue : d'abord de l'herbe, ensuite de la coke et de l'hro quand il a commenc avoir plus de thune. Je lui ai dit : "Arrte de prendre ces saloperies avant qu'il soit trop tard, Tolyan". Mais il m'a pas cout. Un jour, on lui a refil de la merde et il a clams. J'ai retrouv ses dealers et j'ai veng la mort de mon pote... Les flics m'ont chop et a a t le dbut de la fin : la taule, les gangs, le coup de couteau dans le bide... Je suis sorti de prison, j'ai mont un petit business, je me suis fait reprendre... Quand je suis ressorti, j'ai tout laiss tomber et j'ai dcid de venir dans la Zone. Je me suis endurci pendant les premiers mois et puis, j'ai t promu. Et maintenant, la loi, c'est moi par ici. + + + Qu'est-ce que tu penses des stalkers ? + + + Ils sont tous diffrents. Y a des racailles qui survivent pas plus d'une semaine, d'autres qui se font pas mal de fric... Y a aussi des gars bien qui ont pas eu de bol dans la vie, d'un ct ou de l'autre du Cordon. On dpouille les premiers, on taxe les seconds. Et les derniers, eh bien, on essaie de pas trop leur marcher sur les pieds. Dommage qu'on puisse pas les reprer au premier coup d'il... + + + En fait, oublie a. + + + Comme tu voudras. + + + Le Barbu va travailler pour nous maintenant. + + + Tu connais l'expression, "la vache est nous, il ne reste plus qu' la traire" ? Rends-lui une petite visite de temps en temps et rappelle-lui de nous payer ce qu'il nous doit ! + + + Le Barbu a pass une grosse commande pour un artefact appel la Boussole. + + + Il faut qu'on intercepte cet artefact ! Le Barbu a pas l'habitude de s'exciter pour rien. Si tu veux mon avis, cet artefact est son dernier espoir de sauver son cul et son business. Apporte-moi la Boussole ds que tu l'auras trouve ! + + + J'ai trouv la Boussole. Tiens ! + + + Je refuse de chercher la Boussole pour toi ! + + + H, ducon, coute-moi bien ! Si tu me dis que tu vas faire un truc pour moi et que tu changes d'avis, a risque de pas me plaire... Et les gens qui me plaisent pas ont pas la vie facile, tu piges ? + + + Je m'en souviendrai. + + + Je vais rcuprer les dtecteurs des stalkers. + + + Bien. Pendant ce temps-l, je vais m'occuper des autres filires de notre ami. + + + Mon petit doigt m'a dit que t'avais livr une Boussole au Barbu. Alors coute-moi bien, espce d'abruti ! Si tu me dis que tu vas faire un truc pour moi et que tu changes d'avis, a risque de pas me plaire. Et les gens qui me plaisent pas ont pas la vie facile, tu piges ? + + + Je m'en souviendrai. + + + Le Barbu n'a plus de dtecteurs amliors. + + + Excellent ! De mon ct, j'en ai profit pour couper ses autres filires. Maintenant, son client est nous ! Va donc voir le Barbu et dis-lui que le Sultan lui passe le bonjour ! + + + Le Barbu me doit de l'argent. Le Hibou m'a dit que tu pourrais m'aider. + + + Ouais, c'est dans mes cordes... D'ailleurs, j'ai un plan : je compte ruiner le Barbu et prendre le contrle de son business. Si tu m'aides, tu pourras rcuprer ta thune et une part de ses bnefs. Qu'est-ce que t'en dis ? + + + a marche. + + + Tout ce que t'as faire, c'est dcouvrir comment le Barbu russit rester flot ces temps-ci. Le couper de ses fournisseurs devrait suffire faire couler son business... + + + Je vais y rflchir. + + + Oublie pas : trop rflchir, c'est pas bon pour la sant ! + + + Tu crois qu'Allegro revend des objets vols ? + + + Allegro ? Non, il a pas les couilles, ce mec ! Pour ce genre de truc, c'est le Hibou notre fournisseur local. Tu peux lui vendre ce que tu veux, il posera pas de questions. + + + Je cherche Accroc. Tu sais o je peux le trouver ? + + + Ouais. Mes gars l'ont vu prs des grues, sur les quais, il y a un jour ou deux. J'oublie tout le temps que ce tocard me doit de la thune et qu'il faut que je lui remonte les bretelles... + + + J'ai un boulot pour toi. Mes gars ont rencart avec un marchand... un petit rendez-vous d'affaires, on va dire. C'est chaud dans la Zone en ce moment et je me suis dit qu'un flingue de plus, a peut pas faire de mal. Faudrait juste que tu t'assures que tout se passe bien. + + + Ok. + + + Bon. Mes gars te retrouveront au poste des rangers. J'ai charg les coordonnes sur ton PDA. + + + OK. + + + a ne m'intresse pas. + + + Qu'est-ce que tu fous encore l ? Mes gars t'attendent au poste des rangers ! + + + Ouais, ouais. + + + Alors, tu t'es dcid ? T'es avec nous ou pas ? + + + Je suis avec vous. + + + Je vais la jouer solo... + + + Oublie pas qui t'as affaire : je suis Sultan ! Il se passe rien ici sans que je donne mon accord ! Si, toi aussi, tu veux la belle vie, t'as intrt bosser pour moi ! Sinon, c'est une vie de merde qui t'attend ! a se passe comme a, ici ! + + + Qu'est-ce que je peux faire ? + + + Qu'est-ce qui t'amne ici ? + + + Alors ? + + + J'ai tu tous les stalkers. + + + Ouh l... Ouais, tu rigoles pas, toi ! Tu dbarques ici et tu flingues tout le monde... Merde, c'est pas pour a que je t'ai embauch ! Tu nous rapportes pas de pognon, juste des emmerdes... Faut que tu te calmes, mon pote... Je dconne pas ! + + + a te plat de travailler pour les scientifiques ? + + + C'est pas si mal... Rien signaler jusqu'ici, tout va bien. Les scientifiques nous ont refil du matos, alors on s'en sort bien. + + + C'est cool ! Le boulot est pas compliqu et a paie bien. Personne est venu chercher les scientifiques depuis qu'on est arrivs. On a pas vu un seul mutant ! + + + Je suis en train de monter une quipe pour aller Pripyat. Tu veux venir avec nous ? + + + Non... Contrairement d'autres, l'ide d'aller Pripyat me fait pas vraiment bander. En plus, je dois protger les scientifiques... Tu devrais proposer au soldat de venir avec toi. Il pourrait chercher ses copains militaires et nous, on pourrait enfin respirer un peu. C'est pas un mauvais bougre, mais il a rien faire ici... + + + Non... Contrairement d'autres, l'ide d'aller Pripyat me fait pas vraiment bander. En plus, je dois protger les scientifiques... + + + a vous dirait de travailler pour les scientifiques ? + + + Qu'est-ce qu'il faut faire ? + + + Protger leur bunker. + + + Ah, un autre boulot de garde... C'est d'accord. On se met en route pour le bunker ds qu'on est prts. + + + Faire des relevs dans les anomalies. + + + Faire des relevs... J'ai l'air d'un assistant de laboratoire ? C'est pas vraiment dans mes cordes... + + + On en parlera plus tard. Y a trop de petits nouveaux qui ont dbarqu rcemment. Faut les remettre leur place ! + + + OK, on fait tout sauter ! On va leur montrer ! + + + Bien. + + + On a intrt se mettre l'abri... On va se coltiner une mission ! + + + On fait tout sauter ! On va leur montrer ! Relax, tout va bien se passer ! + + + On leur a donn une bonne leon, hein ? Voil le pognon, mon pote. Je te fais signe si on a d'autres trucs pour toi. + + + Ouh l... Ben, tu rigoles pas, toi ! Tu dbarques ici et tu flingues tout le monde... Merde, c'est pas pour a que je t'ai embauch ! Tu nous rapportes pas de pognon, juste des emmerdes... Faut que tu te calmes, mon pote... Je dconne pas ! + + + C'est quoi ce bordel ? Ils sont o, les stalkers, hein ? T'as vendu la mche, c'est a ? C'tait toi, c'est oblig : tous mes potes taient avec moi... Tu vas nous payer tout ce qu'on aurait d rcolter avec ces stalkers ! Qu'est-ce que tu regardes ? Vide tes poches, enfoir ! + + + On devrait aller sur la pniche. + + + Salut. Dsol, mais je suis pas d'humeur bavarder. + + + Je vais te filer un coup de main. + + + Super. On organise la rencontre, comme prvu. Quand ils arrivent, on les attaque de tous les cts. Garde tes distances si tu veux pas te prendre une balle perdue. + + + Ok. + + + Non, a ne me dit rien. + + + Salut, stalker. Je suis occup, l... On se parlera plus tard, ok ? + + + Merci de m'avoir prvenu. a te dirait de te joindre nous ? Une belle occasion de flinguer ces enfoirs dans le dos... + + + On va les prendre au pige. Quand on les aura intercepts, tu les prends revers et tu flingues ces enfoirs ! + + + Ces enfoirs sont dj morts, mme s'ils le savent pas encore ! Merci de m'avoir prvenu ! + + + Merci pour ton aide ! + + + Salut ! Si a presse pas, on discutera plus tard, OK ? + + + Salut ! + + + J'ai trouv la Pie. Il se cachait dans la gare de Yanov o il se faisait appeler Flint. Je me suis charg de son cas. + + + Charg de son cas ? Dommage, j'aurais aim craser ce cafard moi-mme... Tant pis, a reste une bonne nouvelle. Voil la rcompense, je suis un homme de parole. + + + Merci. + + + Je veux quitter la Zone. + + + Vraiment ? Il sera impossible de changer d'avis plus tard... + + + Je suis sr de moi. Allons-y ! + + + En fait, je vais rester pour l'instant. + + + D'accord, voil l'argent. Je ne veux pas me battre. + + + Hein ? File-moi tout ce que t'as et dgage, enfoir ! J'veux pas te revoir ici ! + + + Je pars. + + + Hors de question ! + + + Voyons voir... Ah, si vous, vous allez mal, moi, je dois tre mort... + + + J'ai une affaire urgente rgler. Un marchand de ma connaissance va passer un accord, mais il ne fait trop confiance ses acheteurs, alors il cherche un garde du corps. a t'intresse ? + + + Oui. + + + Parfait. Le marchand t'attendra prs du poste des rangers, il te donnera tous les dtails. + + + Pas vraiment. + + + Comme tu voudras. Si tu changes d'avis dans pas trop longtemps, reviens me voir. + + + Quel genre de boulots tu proposes ? + + + Des boulots qui rapportent. Maintenant, rflchis : pourquoi c'est toi que je demande ? T'es nouveau dans le coin, personne te connat, mais si tu te dbrouilles bien, tu peux rapidement gagner la confiance des gars du coin. Tu veux que je te parle de mes projets ? + + + Ouais, bien sr. + + + Ok, alors coute. On s'est dit que ce serait pas con de se dbarrasser de quelques-uns des stalkers du Barbu. Alors, dans la nuit, nos gars et toi, vous allez aller au Chevtchenko et avant qu'ils s'aperoivent de quoi que ce soit, vous leur rglez leur compte... On rcupre l'argent, tu rcupres le matos... tu piges ? Cool, tu vois le Poing, l dans le coin ? Il te mettra au jus pour les dtails. + + + Pas vraiment... + + + Dommage. Prends ton temps et rflchis bien... Si tu sais ce qui est bon pour toi, tu reviendras me voir, mon pote. + + + Le genre qui t'intresse si t'as envie de voir du pays... Tu veux que je te parle de mes projets ? + + + Le PDA de Barge. J'ai trouv son cadavre dans les grottes sous la ferme brle. + + + Le PDA du Joker. Je l'ai trouv prs d'un squelette, non loin du Pinchne. + + + Le Joker ? C'est pas possible ! Putain, a me fait un de ces chocs... Le Joker est mort... Eh ben, on dirait que tu nous feras plus tellement rigoler, Joker... Paix ton me ! J'espre que Barge se porte bien, au moins. + + + Le Joker ? C'est pas possible ! Putain, a me fait un de ces chocs... Le Joker est mort... Eh ben, on dirait que tu nous feras plus tellement rigoler, Joker... Paix ton me. Et la tienne aussi, Barge... Bordel, comment on en est arrivs l ? + + + Les PDA de Barge et du Joker. J'en ai trouv un prs d'un squelette ct du Pinchne et l'autre sur un cadavre dans les grottes sous la ferme brle. + + + Franchement, y a pas grand-chose dire. Les missions sont extrmement dangereuses et presque toujours mortelles. On peut les sentir approcher quand le temps change soudainement, mais a ne dure pas. Aux premiers signes de l'mission, il faut courir se mettre l'abri. N'importe o, dans une grotte, un abri en bton, en brique ou en mtal... Je fais partie de ceux qui peuvent les sentir approcher... Elles rveillent une douleur dans mon dos. En ce qui concerne la nature des missions, j'ai rien d'utile dire, vu que j'en sais rien. + + + Besoin de marchandise ? D'informations ? moins que tu n'aies des infos vendre ? + + + Sultan dit que tu comptes plumer les stalkers. Tu peux compter sur moi ! + + + Cool. Ramne ton cul au Chevtchenko aprs minuit, on t'attendra. Mais attends pas que le jour se lve pour te pointer, hein ! + + + Oh, c'est toi. Alors, vous avez convenu de quoi, Sultan et toi ? + + + Donc... viens sur la pniche entre minuit et le lever du soleil, on t'attendra. + + + Je ferais mieux de rester avec toi. On va attendre jusqu' minuit et tu pourras m'emmener au Chevtchenko. + + + Pas de problme, reste dans le coin ! Je te montrerai le chemin. + + + En fait... j'ai deux trois choses faire avant. + + + J'ai de gros clients en dehors de la Zone qui ont rgulirement besoin de certains artefacts des moments bien prcis. Tu me rapportes ce dont j'ai besoin et je te paie grassement en change. Par contre, ces commandes sont trs importantes pour moi, alors j'ai toujours plusieurs mecs sur le coup... Et seul le premier me livrer mon artefact empoche l'intgralit de la prime. + + + Par la ferme brle, hein ? Hum... qui t'es, d'abord ? + + + On surnomme cet endroit la Fort de Fer. L'hlico s'est plant droit dans les pylnes. Aucun des soldats n'aurait pu survivre l'accident... Et mme si c'tait le cas, ils s'en seraient jamais sortis vivants. Ces poltergeists adorent piger leurs victimes dans des anomalies lectriques... Comme chacun le sais, ces saloperies sont sensibles au moindre mouvement. + + + Alors... Aprs que l'hlico s'est cras, on a vu cinq militaires sortir vivants du marais... C'est pas compliqu de se rendre sur place, il suffit de rester sur la terre ferme et d'viter la flotte. Ah, par contre, il faudra prendre ses prcautions. Si tu comptes y aller, le toubib peut te vendre des antidotes. + + + Dommage que mes potes Barge et Joker soient pas l... Qu'est-ce qu'on se marrait... On tait comme des frres, on pouvait compter les uns sur les autres... Comment j'en suis arriv l ? Je suis toujours ici, mais eux, ils sont partis... + + + Parle-moi du Joker et de Barge ! + + + J'ai dj rcupr quelque chose. + + + Alors... Tu m'as apport quelque chose ? + + + Hum, a explique tout... Je le connais, il a toujours t un peu escroc sur les bords, mais rcemment, a a empir, il s'est mis arnaquer les stalkers... Il faut que quelqu'un lui donne une bonne leon. + + + J'ai besoin d'informations sur le camp des mercenaires. Ce n'est pas aussi dur que a en a l'air. + + + Ok, je vais attendre... Mais il faut absolument que ce soit fait dans les deux jours. + + + Le PDA du messager de Sultan. + + + Ce n'est pas trs intressant. Je suis prt l'acheter pour 500. + + + Ok. + + + Des prototypes de dtecteurs. Tu veux les racheter ? + + + Des documents secrets. Je les ai trouvs sur le pont prs de la colonne motorise. + + + Un artefact trange que j'ai trouv dans la station de dragage. + + + Un artefact trange que j'ai trouv prs de la gare de Yanov. + + + Le Cur de l'Oasis. + + + C'est parti ! + + + Une minute ! + + + Un groupe de stalkers s'apprte vous tomber dessus. Restez sur vos gardes ! + + + Les salopards... Trs bien, on va leur prparer un petit comit d'accueil... Alors, essaye de leur faire croire que tu es de leur ct, a te permettra de nous filer un coup de main... Il y a une belle rcompense la cl. + + + Rien foutre de votre accord ! Donne-moi ce flingue, et plus vite que a ! + + + Ok, voil ! + + + Non ? J'en ai rien faire ! Donne-moi a, connard ! + + + Du calme, du calme... Voil. + + + Les salopards... Trs bien, on va leur prparer un petit comit d'accueil... Aide-nous les combattre si tu peux et t'auras droit une rcompense ! + + + On s'est bien dbrouill, non ? Toi, par contre, comme t'as pas fait grand-chose, compte pas obtenir ta part du gteau ! Je te ferai signe si on a d'autres plans. + + + T'es vraiment inutile... Tu peux t'asseoir sur ta part du gteau ! Mais au moins, t'es venu discuter, c'est toujours a... + + + Au revoir. + + + Bien. Reste plus qu' mettre la touche finale ! Il parat que le Barbu a refil de puissants dtecteurs capables de reprer des artefacts trs rares ses stalkers. Il faut que tu infiltres leurs rangs, histoire de pouvoir profiter, toi aussi, de ces petits bijoux. C'est compris ? + + + Impossible de le faire dguerpir... J'ai essay de couper son approvisionnement, mais ce tocard barbu a quand mme russi rcuprer une Boussole. On dirait qu'il s'en sort trs bien... pour l'instant. + + + [continuer...] + + + [continuer...] + + + [continuer...] + + + Le Faisan est mort. On dirait que Sismik l'a tu... mais lui non plus n'a pas survcu. + + diff --git a/gamedata/configs/text/fra/st_generate_fnames.xml b/gamedata/configs/text/fra/st_generate_fnames.xml new file mode 100644 index 0000000..d2bc88b --- /dev/null +++ b/gamedata/configs/text/fra/st_generate_fnames.xml @@ -0,0 +1,492 @@ + + + + Sanek + + + Shurik + + + Vadya + + + Vasyan + + + Vasek + + + Vityukha + + + Vetal + + + Vovan + + + Zhorka + + + Grishka + + + Grishko + + + Dimon + + + Lekha + + + Dimukha + + + Zheka + + + Fimka + + + Ilyukha + + + Kostyan + + + Mitka + + + Mikhal + + + Mikha + + + Mikhas + + + Kolyan + + + Tolyan + + + Pavlukha + + + Sashok + + + Stepka + + + Stepukha + + + Timokha + + + Felka + + + Yuras + + + Yashka + + + Andryukha + + + Tokha + + + Arkasha + + + Temka + + + Boryan + + + Bodya + + + Capitaine + + + Lieutenant + + + Soldat + + + Andre + + + Anton + + + Oleg + + + Roman + + + Alexandre + + + Serge + + + Anatoly + + + Yuri + + + Bohdan + + + Veniamin + + + Vitaly + + + Vladimir + + + Dimitri + + + Ivan + + + Constantin + + + Alexe + + + Sanya + + + Sanek + + + Arthur + + + Yashka + + + Yarik + + + Yara + + + Slava + + + Borya + + + Borka + + + Bohdan + + + Slavik + + + Vadim + + + Vadya + + + Vadik + + + Valik + + + Valera + + + Shurik + + + Vasya + + + Vaska + + + Vasko + + + Venya + + + Vitya + + + Vitka + + + Vitalik + + + Vlad + + + Vova + + + Vovka + + + Lenya + + + Seva + + + Sevka + + + Gena + + + Genka + + + George + + + Gosha + + + Zhora + + + Marc + + + Gleb + + + Grisha + + + Alex + + + Grishka + + + Grishko + + + Danya + + + Kiryukha + + + Danko + + + Dennis + + + Dima + + + Dimka + + + Dmitro + + + Zhenya + + + Leshka + + + Zhenka + + + Egor + + + Egorka + + + Fima + + + Vanya + + + Vanka + + + Igorek + + + Ilya + + + Kostya + + + Kostik + + + Tolik + + + Leva + + + Lenya + + + Lyonka + + + Max + + + Matve + + + Mitya + + + Misha + + + Mishka + + + Nikita + + + Nik + + + Anton + + + Kolya + + + Oleg + + + Pasha + + + Pashka + + + Petro + + + Petya + + + Petka + + + Roma + + + Romka + + + Rostik + + + Toshka + + + Rus + + + Savva + + + Semyon + + + Sema + + + Serega + + + Rusik + + + Stepan + + + Stepa + + + Tima + + + Timka + + + Artem + + + Fedor + + + Fedya + + + Fedka + + + Filya + + + Filka + + + Edik + + + Yurka + + + Yurik + + + Yurko + + + Yasha + + + Sergent en chef + + + Sergent + + diff --git a/gamedata/configs/text/fra/st_generate_snames.xml b/gamedata/configs/text/fra/st_generate_snames.xml new file mode 100644 index 0000000..eafeee3 --- /dev/null +++ b/gamedata/configs/text/fra/st_generate_snames.xml @@ -0,0 +1,4836 @@ + + + + Gray + + + Berserk + + + Putride + + + Patty + + + Espion + + + Bison + + + Castor + + + Bouledogue + + + Buf + + + Moineau + + + Pic + + + Bte + + + Sorcier + + + Bossu + + + Sanglier + + + Carpe + + + Canari + + + Punaise + + + Balance + + + lan + + + Rat + + + Boa + + + Miche + + + Cass + + + Long John + + + Mutileur + + + Boulon + + + Rasoir + + + Tambour + + + Ferraille + + + Python + + + Dynamite + + + Atout + + + Pelleteuse + + + Joint + + + Canard + + + Croix + + + Goudron + + + Chaussette + + + Pied-de-biche + + + Panadol + + + Shiv + + + Piston + + + Nickel + + + Pile + + + Ltal + + + Fou + + + Meule + + + As + + + Burin + + + Mikado + + + Pause-pipi + + + Nud-pap' + + + talon + + + Chique + + + Poing + + + Ecchymose + + + Ttard + + + Pirate + + + Khan + + + Kosche + + + Tte brle + + + Office de tourisme + + + Tueur + + + Chapa + + + Genghis + + + Banane + + + Miche + + + 2 mains gauches + + + Papa + + + Pointu + + + Villageois + + + Gangrne + + + Tache + + + Degr + + + Antilope + + + Fubar + + + Paria + + + Aspic + + + Charbon + + + Atout + + + Joint + + + Chaussette + + + Gnome + + + Maure + + + Fumette + + + Flop + + + Ravioli + + + Chili + + + Rpe + + + Gras-double + + + Biscuit + + + Goule + + + Radin + + + Cass + + + Pingre + + + Clignotant + + + Dmon + + + Infirme + + + Kicker + + + Brochette + + + Tordu + + + Anguille + + + Perruque + + + Sauvage + + + Schnok + + + Autochtone + + + Slime + + + Champion + + + Monocle + + + Rascal + + + Poids mort + + + Frimeur + + + Crapule + + + Crev + + + Psycho + + + Grande gueule + + + Entaille + + + Arrache + + + Aveugle + + + Morveux + + + Hippie + + + Met + + + Dpouille + + + Balafr + + + Toute-oue + + + Fou du roi + + + Lvrier + + + Naze + + + Armoire + + + Grincheux + + + Connaisseur + + + Robuste + + + cuyer + + + Sangsue + + + Artiste + + + Charlatan + + + Banquier + + + Clodo + + + Baron + + + Chiffonnier + + + nergumne + + + Clochard + + + Bosun + + + Pygme + + + Bourbon + + + Bourge + + + Chauffeur + + + Voleur + + + Imberbe + + + Gangster + + + Messager + + + Comte + + + Tyran + + + Sauvageon + + + trangleur + + + Conseiller + + + Joueur + + + Triche + + + Parrain + + + Vtran + + + Coach + + + Bling-bling + + + Maniaque + + + Fossoyeur + + + Boucher + + + Ninja + + + Bourreau + + + Punk + + + Gurillero + + + Pacifiste + + + Rocher + + + Pirate + + + Pyromane + + + Prince + + + Brigand + + + Kamikaze + + + Mac + + + Tyran + + + Tueur + + + Trombone + + + Chimiste + + + Abdurakhmanov + + + Altynnik + + + Barsak + + + Kireev + + + Scherbin + + + Kovalchuk + + + Koev + + + Kozlov + + + Kolontarev + + + Kolontar + + + Kondratenko + + + Korkin + + + Korneev + + + Baul + + + Kravchenko + + + Krivda + + + Krivokhatsky + + + Kuznetsov + + + Kuzmich + + + Kuzyakin + + + Kulchitsky + + + Kuntsev + + + Kurvitz + + + Kucheruk + + + Bashakov + + + Kushnarev + + + Khaladze + + + Lavrik + + + Lavrov + + + Livshits + + + Lisichansky + + + Litvin + + + Lymarenko + + + Mazepa + + + Makarenko + + + Bashmakov + + + Maltsev + + + Mamaev + + + Merzlayev + + + Milchenko + + + Mironyuk + + + Mohrer + + + Kryga + + + Mostovo + + + Muntyan + + + Mukhamedov + + + Beshevly + + + Myskov + + + Navrotsky + + + Nepritsky + + + Nikanorov + + + Nikeshin + + + Nikulin + + + Futzin + + + Nordiev + + + Nosan + + + Opolev + + + Binoev + + + Orlevich + + + Orlov + + + Petkevich + + + Petrenko + + + Petrov + + + Plokhenko + + + Podyachev + + + Polyanin + + + Poplavsky + + + Popov + + + Blinov + + + Portnykh + + + Prasolov + + + Prokopenko + + + Proskurin + + + Protsenko + + + Prudov + + + Pustovar + + + Puchek + + + Rabinovich + + + Radkevich + + + Bobrov + + + Rezun + + + Rogoza + + + Rodnyansky + + + Rotan + + + Rublev + + + Rudik + + + Rusanov + + + Rychagirsky + + + Savchenko + + + Savchuk + + + Bogdanov + + + Sagitov + + + Sviridov + + + Sedykh + + + Sereda + + + Sidorenko + + + Sidorov + + + Siniy + + + Sinitzyn + + + Skameka + + + Slutsky + + + Boko + + + Smelov + + + Smoly + + + Sorokin + + + Statzura + + + Stepchin + + + Stychinsky + + + Sykula + + + Tarnavsky + + + Tatarchuk + + + Timchuk + + + Andreychuk + + + Bochenko + + + Boldeskul + + + Bondarev + + + Borisov + + + Brich + + + Bronstein + + + Buryak + + + Buturin + + + Byalo + + + Valentinov + + + Andruschenko + + + Vasiliev + + + Veselov + + + Vinogradov + + + Vovnenko + + + Volanchuk + + + Volodar + + + Voloshin + + + Vorontsov + + + Vorokhaev + + + Vyushinsky + + + Anisiev + + + Galkin + + + Ganzyuk + + + Garkovenko + + + Garkusha + + + Georgov + + + Glebovsky + + + Gnatyuk + + + Goncharenko + + + Gordienko + + + Gorlevoy + + + Ardashev + + + Gorokhin + + + Goryunov + + + Grebenko + + + Gritzaenko + + + Gritzay + + + Gritzenkov + + + Grishachev + + + Grischuk + + + Gubar + + + Gunko + + + Babich + + + Gurevich + + + Denisenko + + + Dovgalyuk + + + Dombrik + + + Dotsenko + + + Drozdush + + + Dubenchuk + + + Dudorov + + + Duka + + + Dumko + + + Balan + + + Dunaev + + + Dyklov + + + Erofeev + + + Efremov + + + Zhabenko + + + Zhmyev + + + Zhurakovsky + + + Zabyagoda + + + Zagorodnyuk + + + Zamosenchuk + + + Baranov + + + Zarubin + + + Zakharin + + + Zvonnitsky + + + Zinoviev + + + Zozo + + + Zolotar + + + Zubarev + + + Zubkov + + + Ivanov + + + Ignatenko + + + Baranovsky + + + Izhenko + + + Ischuk + + + Kazakov + + + Kazantsev + + + Kandybabko + + + Kapuka + + + Kapustyanko + + + Katz + + + Kikabidze + + + Gatzula + + + Abdurakhmanov + + + Altynnik + + + Barsak + + + Kireev + + + Scherbin + + + Kovalchuk + + + Koev + + + Kozlov + + + Kolontarev + + + Kolontar + + + Kondratenko + + + Korkin + + + Korneev + + + Baul + + + Kravchenko + + + Krivda + + + Krivokhatsky + + + Kuznetsov + + + Kuzmich + + + Kuzyakin + + + Kulchistky + + + Kuntsev + + + Kurvitz + + + Kucheruk + + + Bashakov + + + Kushnarev + + + Khaladze + + + Lavrik + + + Lavrov + + + Livshits + + + Lisichansky + + + Litvin + + + Lymarenko + + + Mazepa + + + Makarenko + + + Bashmakov + + + Maltsev + + + Mamaev + + + Merzlayev + + + Milchenko + + + Mironyuk + + + Mohrer + + + Kryga + + + Mostovo + + + Muntyan + + + Mukhamedov + + + Beshevly + + + Myskov + + + Navrotsky + + + Nepritsky + + + Nikanorov + + + Nikeshin + + + Nikulin + + + Futzin + + + Nordiev + + + Nosan + + + Opolev + + + Binoev + + + Orlevich + + + Orlov + + + Petkevich + + + Petrenko + + + Petrov + + + Plokhenko + + + Podyachev + + + Polyanin + + + Poplavsky + + + Popov + + + Blinov + + + Portnykh + + + Prasolov + + + Prokopenko + + + Proskurin + + + Protsenko + + + Prudov + + + Pustovar + + + Puchek + + + Rabinovich + + + Radkevich + + + Bobrov + + + Rezun + + + Rogoza + + + Rodnyansky + + + Rotan + + + Rublev + + + Rudik + + + Rusanov + + + Rychagirsky + + + Savchenko + + + Savchuk + + + Bogdanov + + + Sagitov + + + Sviridov + + + Sedykh + + + Sereda + + + Sidorenko + + + Sidorov + + + Siniy + + + Sinitzyn + + + Skameka + + + Slutsky + + + Boko + + + Smelov + + + Smoly + + + Sorokin + + + Statzura + + + Stepchin + + + Stychinsky + + + Sykula + + + Tarnavsky + + + Tatarchuk + + + Timchuk + + + Andreychuk + + + Bochenko + + + Boldeskul + + + Bondarev + + + Borisov + + + Brich + + + Bronstein + + + Buryak + + + Buturin + + + Byalo + + + Valentinov + + + Andruschenko + + + Vasiliev + + + Veselov + + + Vinogradov + + + Vovnenko + + + Volanchuk + + + Volodar + + + Voloshin + + + Vorontsov + + + Vorokhaev + + + Vyushinsky + + + Anisiev + + + Galkin + + + Ganzyuk + + + Garkovenko + + + Garkusha + + + Georgov + + + Glebovsky + + + Gnatyuk + + + Goncharenko + + + Gordienko + + + Gorlevoy + + + Ardashev + + + Gorokhin + + + Goryunov + + + Grebenko + + + Gritzaenko + + + Gritzay + + + Gritzenkov + + + Grishachev + + + Grischuk + + + Gubar + + + Gunko + + + Babich + + + Gurevich + + + Denisenko + + + Dovgalyuk + + + Dombrik + + + Dotsenko + + + Drozdush + + + Dubenchuk + + + Dudorov + + + Duka + + + Dumko + + + Balan + + + Dunaev + + + Dyklov + + + Erofeev + + + Efremov + + + Zhabenko + + + Zhmyev + + + Zhurakovsky + + + Zabyagoda + + + Zagorodnyuk + + + Zamosenchuk + + + Baranov + + + Zarubin + + + Zakharin + + + Zvonnitsky + + + Zinoviev + + + Zozo + + + Zolotar + + + Zubarev + + + Zubkov + + + Ivanov + + + Ignatenko + + + Baranovsky + + + Izhenko + + + Ischuk + + + Kazakov + + + Kazantsev + + + Kandybabko + + + Kapuka + + + Kapustyanko + + + Katz + + + Kikabidze + + + Gatzula + + + Abdurakhmanov + + + Altynnik + + + Barsak + + + Kireev + + + Scherbin + + + Kovalchuk + + + Koev + + + Kozlov + + + Kolontarev + + + Kolontar + + + Kondratenko + + + Korkin + + + Korneev + + + Baul + + + Kravchenko + + + Krivda + + + Krivokhatsky + + + Kuznetsov + + + Kuzmich + + + Kuzyakin + + + Kulchistky + + + Kuntsev + + + Kurvitz + + + Kucheruk + + + Bashakov + + + Kushnarev + + + Khaladze + + + Lavrik + + + Lavrov + + + Livshits + + + Lisichansky + + + Litvin + + + Lymarenko + + + Mazepa + + + Makarenko + + + Bashmakov + + + Maltsev + + + Mamaev + + + Merzlayev + + + Milchenko + + + Mironyuk + + + Mohrer + + + Kryga + + + Mostovo + + + Muntyan + + + Mukhamedov + + + Beshevly + + + Myskov + + + Navrotsky + + + Nepritsky + + + Nikanorov + + + Nikeshin + + + Nikulin + + + Futzin + + + Nordiev + + + Nosan + + + Opolev + + + Binoev + + + Orlevich + + + Orlov + + + Petkevich + + + Petrenko + + + Petrov + + + Plokhenko + + + Podyachev + + + Polyanin + + + Poplavsky + + + Popov + + + Blinov + + + Portnykh + + + Prasolov + + + Prokopenko + + + Proskurin + + + Protsenko + + + Prudov + + + Pustovar + + + Puchek + + + Rabinovich + + + Radkevich + + + Bobrov + + + Rezun + + + Rogoza + + + Rodnyansky + + + Rotan + + + Rublev + + + Rudik + + + Rusanov + + + Rychagirsky + + + Savchenko + + + Savchuk + + + Bogdanov + + + Sagitov + + + Sviridov + + + Sedykh + + + Sereda + + + Sidorenko + + + Sidorov + + + Siniy + + + Sinitzyn + + + Skameka + + + Slutsky + + + Boko + + + Smelov + + + Smoly + + + Sorokin + + + Statzura + + + Stepchin + + + Stychinsky + + + Sykula + + + Tarnavsky + + + Tatarchuk + + + Timchuk + + + Andreychuk + + + Bochenko + + + Boldeskul + + + Bondarev + + + Borisov + + + Brich + + + Bronshtein + + + Buryak + + + Buturin + + + Byalo + + + Valentinov + + + Andruschenko + + + Vasiliev + + + Veselov + + + Vinogradov + + + Vovnenko + + + Volanchuk + + + Volodar + + + Voloshin + + + Vorontsov + + + Vorokhaev + + + Vyushinsky + + + Anisiev + + + Galkin + + + Ganzyuk + + + Garkovenko + + + Garkusha + + + Georgov + + + Glebovsky + + + Gnatyuk + + + Goncharenko + + + Gordienko + + + Gorlevoy + + + Ardashev + + + Gorokhin + + + Goryunov + + + Grebenko + + + Gritzaenko + + + Gritzay + + + Gritzenkov + + + Grishachev + + + Grischuk + + + Gubar + + + Gunko + + + Babich + + + Gurevich + + + Denisenko + + + Dovgalyuk + + + Dombrik + + + Dotsenko + + + Drozdush + + + Dubenchuk + + + Dudorov + + + Duka + + + Dumko + + + Balan + + + Dunaev + + + Dyklov + + + Erofeev + + + Efremov + + + Zhabenko + + + Zhmyev + + + Zhurakovsky + + + Zabyagoda + + + Zagorodnyuk + + + Zamosenchuk + + + Baranov + + + Zarubin + + + Zakharin + + + Zvonnitsky + + + Zinoviev + + + Zozo + + + Zolotar + + + Zubarev + + + Zubkov + + + Ivanov + + + Ignatenko + + + Baranovsky + + + Izhenko + + + Ischuk + + + Kazakov + + + Kazantsev + + + Kandybabko + + + Kapuka + + + Kapustyanko + + + Katz + + + Kikabidze + + + Gatzula + + + Sinaev + + + Feigelman + + + Ledentsov + + + Alferov + + + Antipin + + + Blinov + + + Bogomolov + + + Vasilevich + + + Geshkenbein + + + Dyakonov + + + Erokhin + + + Zakin + + + Zakharov + + + Ivchenko + + + Kabanov + + + Larin + + + Manko + + + Mironov + + + Stepanenko + + + Oganesyan + + + Chernodub + + + Shilov + + + Chirikov + + + Belyavin + + + Fadeev + + + Steklov + + + Andreev + + + Spirin + + + Balitsky + + + Abdurakhmanov + + + Altynnik + + + Barsak + + + Kireev + + + Scherbin + + + Kovalchuk + + + Koev + + + Kozlov + + + Kolontarev + + + Kolontar + + + Kondratenko + + + Korkin + + + Korneev + + + Baul + + + Kravchenko + + + Krivda + + + Krivokhatsky + + + Kuznetsov + + + Kuzmich + + + Kuzyakin + + + Kulchistky + + + Kuntsev + + + Kurvitz + + + Kucheruk + + + Bashakov + + + Kushnarev + + + Khaladze + + + Lavrik + + + Lavrov + + + Livshits + + + Lisichansky + + + Litvin + + + Lymarenko + + + Mazepa + + + Makarenko + + + Bashmakov + + + Maltsev + + + Mamaev + + + Merzlayev + + + Milchenko + + + Mironyuk + + + Mohrer + + + Kryga + + + Mostovo + + + Muntyan + + + Mukhamedov + + + Beshevly + + + Myskov + + + Navrotsky + + + Nepritsky + + + Nikanorov + + + Nikeshin + + + Nikulin + + + Futzin + + + Nordiev + + + Nosan + + + Opolev + + + Binoev + + + Orlevich + + + Orlov + + + Petkevich + + + Petrenko + + + Petrov + + + Plokhenko + + + Podyachev + + + Polyanin + + + Poplavsky + + + Popov + + + Blinov + + + Portnykh + + + Prasolov + + + Prokopenko + + + Proskurin + + + Protsenko + + + Prudov + + + Pustovar + + + Puchek + + + Rabinovich + + + Radkevich + + + Bobrov + + + Rezun + + + Rogoza + + + Rodnyansky + + + Rotan + + + Rublev + + + Rudik + + + Rusanov + + + Rychagirsky + + + Savchenko + + + Savchuk + + + Bogdanov + + + Sagitov + + + Sviridov + + + Sedykh + + + Sereda + + + Sidorenko + + + Sidorov + + + Siniy + + + Sinitzyn + + + Skameka + + + Slutsky + + + Boko + + + Smelov + + + Smoly + + + Sorokin + + + Statzura + + + Stepchin + + + Stychinsky + + + Sykula + + + Tarnavsky + + + Tatarchuk + + + Timchuk + + + Andreychuk + + + Bochenko + + + Boldeskul + + + Bondarev + + + Borisov + + + Brich + + + Bronstein + + + Buryak + + + Buturin + + + Byalo + + + Valentinov + + + Andruschenko + + + Vasiliev + + + Veselov + + + Vinogradov + + + Vovnenko + + + Volanchuk + + + Volodar + + + Voloshin + + + Vorontsov + + + Vorokhaev + + + Vyushinsky + + + Anisiev + + + Galkin + + + Ganzyuk + + + Garkovenko + + + Garkusha + + + Georgov + + + Glebovsky + + + Gnatyuk + + + Goncharenko + + + Gordienko + + + Gorlevoy + + + Ardashev + + + Gorokhin + + + Goryunov + + + Grebenko + + + Gritzaenko + + + Gritzay + + + Gritzenkov + + + Grishachev + + + Grischuk + + + Gubar + + + Gunko + + + Babich + + + Gurevich + + + Denisenko + + + Dovgalyuk + + + Dombrik + + + Dotsenko + + + Drozdush + + + Dubenchuk + + + Dudorov + + + Duka + + + Dumko + + + Balan + + + Dunaev + + + Dyklov + + + Erofeev + + + Efremov + + + Zhabenko + + + Zhmyev + + + Zhurakovsky + + + Zabyagoda + + + Zagorodnyuk + + + Zamosenchuk + + + Baranov + + + Zarubin + + + Zakharin + + + Zvonnitsky + + + Zinoviev + + + Zozo + + + Zolotar + + + Zubarev + + + Zubkov + + + Ivanov + + + Ignatenko + + + Baranovsky + + + Izhenko + + + Ischuk + + + Kazakov + + + Kazantsev + + + Kandybabko + + + Kapuka + + + Kapustyanko + + + Katz + + + Kikabidze + + + Gatzula + + + Blanc + + + Vert + + + Immortel + + + Rouill + + + Don Juan + + + Atroce + + + Muscl + + + Raconteur + + + Aveugle + + + Brave + + + Morveux + + + Argumenteur + + + Ancien + + + Berserk + + + Hippie + + + Met + + + Sinistre + + + Feignasse + + + Sec + + + Cul bord de nouilles + + + Tachet + + + Gras-double + + + Bide + + + Dpouille + + + Cass + + + Intello + + + Balafr + + + Toute-oue + + + Mime + + + Fou du roi + + + Naze + + + Armoire + + + Os + + + Cynique + + + Type + + + Ingnu + + + Grincheux + + + Alerte + + + Connaisseur + + + Robuste + + + tudiant + + + Autochtone + + + Aviateur + + + Agent + + + cuyer + + + Sangsue + + + Schnok + + + Disciple + + + Artiste + + + Ermite + + + Charlatan + + + Banquier + + + Ade + + + Baron + + + Chiffonnier + + + nergumne + + + Jogger + + + Athlte + + + Combattant + + + Clochard + + + Bosun + + + Pygme + + + Bourbon + + + Bourge + + + Bureaucrate + + + Vandale + + + Barbare + + + Pion + + + Rpartie + + + Ensorceleur + + + Visiteur + + + Viking + + + Chauffeur + + + Plongeur + + + Patron + + + Voleur + + + Voyageur + + + Psy + + + Cavalier + + + Grande gueule + + + Gangster + + + Gologue + + + Gladiateur + + + Messager + + + Invit + + + Comte + + + Porteur + + + Grand-pre + + + Dserteur + + + VRP + + + Lvrier + + + Dandy + + + Bras droit + + + Tyran + + + Sauvageon + + + Diplomate + + + Doc + + + Docteur + + + Prof + + + trangleur + + + Vigile + + + Clodo + + + Conseiller + + + Ack-ack + + + Toubib + + + Joueur + + + Indien + + + Iroquois + + + Capitaine + + + Triche + + + Clown + + + Duc + + + Rouge + + + Imberbe + + + Cosaque + + + Cuistot + + + Sorcier + + + Comanche + + + Roi + + + Parrain + + + Marchand + + + Fumeur + + + Coursier + + + Coach + + + Vtran + + + Lgionnaire + + + Gurisseur + + + Forestier + + + Lord + + + Entrepreneur + + + Bling-bling + + + Maniaque + + + Martien + + + Maon + + + Mcanicien + + + Bigtime + + + Fossoyeur + + + Modrateur + + + Laitier + + + Boucher + + + Mercenaire + + + Accordeur + + + Boss + + + Ninja + + + Oprateur + + + Armurier + + + Chanceux + + + Shah + + + Bourreau + + + Polkan + + + Punk + + + Ppre + + + Gurillero + + + Pasteur + + + Berger + + + Ancien + + + Buf + + + Chanceux + + + Pacifiste + + + Convoyeur + + + Sifflet + + + Pilote + + + Pisteur + + + Pirate + + + Charpentier + + + Pyromane + + + Pompier + + + Charentaise + + + Tuteur + + + Subzero + + + Ambassadeur + + + Postier + + + Pote + + + Prince + + + Prophte + + + Prof + + + Resquilleur + + + Apiculteur + + + Dur--la-tche + + + Fidle + + + Rabby + + + tincelle + + + Brigand + + + Rasta + + + Vigile + + + Rockeur + + + Mineur + + + Samoura + + + Dmineur + + + Maniaque + + + Exorbit + + + Prtre + + + Secrtaire + + + Gigolo + + + Escroc + + + Scythe + + + claireur + + + Machiniste + + + Kamikaze + + + leveur + + + Sauveteur + + + Rocher + + + Sportif + + + tranger + + + tudiant + + + Juge + + + Champignon + + + Mac + + + Haricot + + + Troufion + + + Danseuse + + + Tyran + + + Putride + + + Marchand + + + Nettoyeur + + + Balayeur + + + Ethnique + + + Touriste + + + Tueur + + + Trombone + + + Quarterback + + + Prcision + + + Chimiste + + + Rouill + + + Volubile + + + Patty + + + Peintre + + + Berger + + + Chaman + + + Creuseur + + + Mineur + + + Sheriff + + + Patron + + + rudit + + + Taxi + + + Bossu + + + Espion + + + lectricien + + + Cadet + + + Paen + + + Alligator + + + Anaconda + + + Babouin + + + Bison + + + Castor + + + Mante + + + Fier + + + Bouledogue + + + cureuil + + + Buf + + + Marcassin + + + Moineau + + + Corbeau + + + Rat musqu + + + Plantain + + + Charognard + + + Tour + + + Rabat-joie + + + Manul + + + Oie + + + Dauphin + + + Dinosaure + + + Grive + + + Pic + + + Hrisson + + + Scarabe + + + Livre + + + Bte + + + Tonnerre + + + Sorcier + + + Auroch + + + Cloche + + + Sanglier + + + Carpe + + + Canari + + + Punaise + + + Cobra + + + Moustique + + + talon + + + Harceleur + + + Chat + + + Croco + + + Criquet + + + Balance + + + lan + + + Mammouth + + + lphant + + + Microbe + + + Insecte + + + Fourmi + + + Long John + + + Taon + + + Araigne + + + Rat + + + Plerin + + + Piranha + + + Python + + + Livre + + + Hibou + + + Faucon + + + Marmotte + + + Cur d'artichaut + + + Rongeur + + + Fretin + + + Blatte + + + Tarentule + + + Hamster + + + Boa + + + Hibou + + + Furet + + + Ver + + + Creuseur + + + Canard + + + Radical + + + Anomalie + + + Pare-chocs + + + Miche + + + Cass + + + Mutileur + + + Bolide + + + Boulon + + + Rasoir + + + Tambour + + + Fou + + + Beignet + + + Aspirateur + + + Ferraille + + + Caillou + + + Ventilo + + + Hlico + + + Souffleur + + + Python + + + Collier + + + Clou + + + Rouquin + + + Ttard + + + Cartouche + + + Globe + + + Rocher + + + Grenade + + + Embrouille + + + Cercueil + + + t + + + Moteur + + + Dynamite + + + Perc + + + 2 mains gauches + + + Lgal + + + Serrure + + + Culasse + + + Isotope + + + Roc + + + Pigeur + + + Sorcier + + + Karma + + + Brique + + + Lime + + + Mchant + + + Cl + + + Fouet + + + Atout + + + Cap + + + Brise-bches + + + Whisky + + + Pivot + + + Faucheur + + + Espace + + + Pelleteuse + + + Grattoir + + + Joint + + + Croix + + + Goudron + + + Gchette + + + Chaussette + + + Pied-de-biche + + + Machine + + + Cible + + + Moteur + + + Pompe + + + Fer + + + Nocturne + + + Fusil pompe + + + Panadol + + + Parachute + + + Round + + + Cinq + + + Shiv + + + Piston + + + Mastic + + + Poudrier + + + Matos + + + Nickel + + + Fuse + + + Rack + + + Racteur + + + Hachette + + + Passoire + + + Pile + + + Robot + + + Cerf + + + Pioche + + + Charbon + + + Alambic + + + Botte + + + Cidre + + + Ltal + + + Bibine + + + Gouge + + + Bidon + + + Coffre + + + Hache + + + Crosse + + + Rapido + + + Meule + + + As + + + Nud + + + Facteur + + + Lampe + + + Burin + + + Juin + + + Gousse + + + Mikado + + + Chance + + + Gras-double + + + Pause-pipi + + + pineux + + + Placard + + + Nud-pap' + + + Cafardeux + + + Pif + + + Perche + + + talon + + + Python + + + Chique + + + Radin + + + Tte d'uf + + + Les Crocs + + + Griffe + + + Os + + + Poing + + + Nerveux + + + Squelette + + + Tranard + + + Crest + + + Ecchymose + + + Gray + + + Pingre + + + Pirate + + + Khan + + + Athlte + + + Pinocchio + + + Ensorceleur + + + Voldemort + + + Homre + + + Dragon + + + Tonnerre + + + Joconde + + + Clignotant + + + Noodle + + + Homme de fer + + + Icare + + + Casanova + + + Kosche + + + Csar + + + Gros + + + Koutouzov + + + Peewee + + + Bonaparte + + + Penseur + + + Nelson + + + Neptune + + + Oscar + + + Promthe + + + Pouchkine + + + Vendredi + + + Tte brle + + + Roquefort + + + Office de tourisme + + + Tueur + + + Binoclard + + + Encre + + + Csar + + + Chapaev + + + Chapa + + + Chebur + + + Cheburashka + + + Chingachgook + + + Genghis + + + Shtirlitz + + + Banane + + + Faucon + + + Brownie + + + Miche + + + Papa + + + Pointu + + + Villageois + + + Bulkin + + + Bulldozer + + + Tampon + + + Quenelle + + + Flambeur + + + Sabre + + + Gangrne + + + Hybride + + + Tache + + + Batteur + + + Highlander + + + Degr + + + Gremlin + + + Antilope + + + Oncle + + + Fubar + + + Frisquet + + + Paria + + + Kagor + + + Choucroute + + + Carbure + + + Aspic + + + Atout + + + Commodore + + + Roi + + + Joint + + + Chaussette + + + Dmon + + + Glaon + + + Gnome + + + Maure + + + Latte + + + Spaghetti + + + Matre + + + Mutant + + + Fumette + + + Flop + + + Flaque + + + Infirme + + + Dtective + + + Ravioli + + + Chili + + + Ceinture + + + Bonne pte + + + Bulle + + + Rpe + + + Bavure + + + Ryazansky + + + Alambic + + + Infirme + + + Morille + + + Biscuit + + + Mgot + + + Pointeur + + + As + + + Courgette + + + Goule + + + Trombone + + + Fantme + + + Cascade + + + Gray + + + Kicker + + + Coma + + + Brochette + + + Maladroit + + + Vertbre + + + Tordu + + + Arc-en-ciel + + + Anguille + + + Buisson + + + Perruque + + + Siniy + + + Lche-cul + + + Sauvage + + + Peewee + + + Raide + + + Ncro + + + Autochtone + + + Cercueil + + + Slime + + + Champ + + + Narcisse + + + Black + + + Mou + + + Loser + + + Dingo + + + Nuisance + + + Douillet + + + Monocle + + + Rascal + + + Poids mort + + + Parano + + + Frimeur + + + Tflon + + + Fripouille + + + Crapule + + + Crev + + + Juste + + + Simplet + + + Psycho + + + Dur--la-tche + + + Entaille + + + Arrache + + + Rocaille + + diff --git a/gamedata/configs/text/fra/st_items_artefacts.xml b/gamedata/configs/text/fra/st_items_artefacts.xml new file mode 100644 index 0000000..a268df3 --- /dev/null +++ b/gamedata/configs/text/fra/st_items_artefacts.xml @@ -0,0 +1,153 @@ + + + + Conglomrat de formations organiques poreuses, cet artefact exsude une substance gazeuse qui neutralise les particules radioactives. Trs efficace, il est trs recherch. + + + Bulle + + + Formation rougetre de dbris polymriss et fossiliss de plantes, de terre et d'os. Neutralise les toxines chimiques, mais met des radiations. + + + Pierre sanguine + + + Cet artefact se forme dans les zones anormales l'activit thermique intense. Il absorbe la chaleur ambiante et reste ainsi toujours froid au toucher. met des radiations. + + + Cet artefact est issu de la dformation d'une pierre granitique par des forces gravitationnelles intenses, ce qui a cr un corps cristallin dont les proprits restent inexpliques ce jour. Procure une protection modre contre les missions psi, mais met des radiations. + + + Fleur protectrice + + + Cristal + + + L'origine des lments lectrostatiques qui composent cet artefact reste un mystre pour les scientifiques. Trs populaire dans la Zone pour ses proprits nergisantes et ce, en dpit de l'usure physique provoque par un usage prolong. met des radiations. + + + Batterie + + + Cet artefact a longtemps t considr comme inutile, mais des scientifiques ont rcemment dcouvert que s'il tait gard en contact constant avec le corps, il avait un effet stimulant sur le systme nerveux. met des radiations. + + + Coquille + + + Cet artefact reste un mystre pour les scientifiques qui l'ont examin. Cependant, force est de constater que les pulsations produites par ses sections les plus paisses amliorent la coagulation du sang dans les plaies, ce qui acclre nettement la vitesse de gurison des blessures. met des radiations. + + + Gouttes nourricires + + + Cet artefact lectrostatique peut absorber, puis dcharger de grandes quantits d'lectricit. Il est capable de protger son porteur contre des dcharges pouvant atteindre 5 000 volts. met des radiations. + + + Flash + + + Cet artefact unique rsonne sous l'influence des missions psi. Les stalkers ont appris l'utiliser pour qu'il mette des vibrations de nature contraire et neutralise les missions psi en partie ou en totalit. met des radiations. + + + Clair de lune + + + Appartenant au groupe des artefacts lectrostatiques, l'tincelle peut rduire les fluctuations des champs lectriques. met des radiations. + + + tincelle + + + Cet artefact ressemble trangement un il humain. Il acclre le mtabolisme et la cicatrisation des plaies. Les vtrans disent qu'il porte chance. met des radiations. + + + il + + + Cet artefact trs rare se forme dans les zones intense activit thermique. Ses radiations infrarouges acclrent les processus mtaboliques et donc la cicatrisation. De trs grande valeur, il met des radiations. + + + Flammche + + + Bien que cet artefact mette de la chaleur, l'utilisateur peut le manier sans peur de se brler. Il maintient une temprature de 75 degrs fahrenheit tout autour de lui, quelles que soient les conditions environnementales. met des radiations. + + + Bolide + + + Artefact relativement rare qui se forme dans les zones contamines par des produits chimiques, le Kolobok est trs apprci pour ses vertus rgnratrices. Pour des raisons encore inexpliques, les scientifiques prtendent qu'il modifierait galement le code gntique des stalkers qui s'en servent. met des radiations. + + + Kolobok + + + Luciole + + + Rsultat de l'interaction d'un grand nombre de champs gravitationnels, le cyprin produit son propre champ gravitationnel qui allge les objets alentour. Trs utile pour rduire le poids de l'quipement transport, il est trs demand. met des radiations. + + + Cyprin + + + Le gravi se forme partir de substances mtalliques exposes pendant de longues priodes des forces gravitationnelles intenses. Il gnre un champ antigravitationnel et permet donc aux stalkers de transporter des charges plus importantes. met des radiations. + + + Gravi + + + premire vue, cet artefact ressemble un Kolobok. Certains affirment qu'il s'agit d'ailleurs du mme artefact, avec des proprits dcuples suite une exposition un puissant champ lectrique. Grce ses proprits uniques, il amliore nettement la capacit musculaire de son porteur. met des radiations. + + + Flocon + + + Cet artefact gravitationnel attire et absorbe les particules radioactives et rduit donc leurs effets sur le corps humain. Trs courant dans la Zone et mme l'extrieur, mais de faon officieuse, il est utilis en cas d'irradiation. + + + Mduse + + + Cet artefact organique est constitu de tissus fossiliss d'animaux mutants. Lorsqu'il est plac dans un milieu contamin par des produits chimiques, il les convertit en un mucus fluide. met des radiations. + + + Morceau de viande + + + Cet artefact luisant gnre un faible champ antigravitationnel. Les stalkers l'utilisent en gnral pour renforcer les effets d'un gravi. met des radiations. + + + toile phosphorescente + + + Artefact organique aux proprits uniques. Amliore nettement le mtabolisme, modifiant ainsi la vitesse de cicatrisation, sans pour autant acclrer l'accumulation des toxines. Grce son prix raisonnable et son apparence plaisante, cet artefact est trs pris par les collectionneurs. met des radiations. + + + Cur + + + Cet artefact de forme trange apparat dans les zones d'activit gravitationnelle anormale. Il agit comme une ponge qui absorbe les particules radioactives et protge ainsi le porteur contre les radiations. Il permet galement de neutraliser les particules dj absorbes par le corps. + + + Tortillon + + + Boussole + + + Cela fait plusieurs annes que personne n'a trouv un tel artefact. Il peut indiquer les passages srs travers les champs d'anomalies. Il permettrait de traverser les champs d'anomalies les plus complexes sans aucune difficult. Trs peu de gens savent s'en servir correctement. + + + Cur de l'Oasis + + + Cet artefact a t trouv au cur de la lgendaire Oasis. Il ressemble une plante cristallise qui aurait acquis les proprits curatives des lieux. Cependant, contrairement l'Oasis, cet artefact est hautement radioactif. + + + La Luciole interagit avec des champs de type inconnu pour acclrer la rgnration des tissus et des organes des tres vivants, et stabiliser les processus mtaboliques. Cet artefact peut littralement remettre un stalker agonisant sur pied en quelques secondes. Malheureusement, il est trs rare. met des radiations. + + diff --git a/gamedata/configs/text/fra/st_items_equipment.xml b/gamedata/configs/text/fra/st_items_equipment.xml new file mode 100644 index 0000000..85d919a --- /dev/null +++ b/gamedata/configs/text/fra/st_items_equipment.xml @@ -0,0 +1,156 @@ + + + + Mdicament antiradiations + + + Le mdicament antiradiation Mexaminum est assez courant dans la Zone. Il provoque la contraction des vaisseaux sanguins priphriques et une privation d'oxygne, ce qui permet de traiter et prvenir les effets de l'exposition aux radiations. Aucun effet secondaire svre. Peut dans certains cas provoquer nauses, crampes et douleurs d'estomac. + + + Pansement + + + Bandages lastiques classiques permettant de limiter les saignements et d'empcher l'infection des blessures. Appliquer le pansement directement sur les plaies. En cas d'atteinte artrielle, faire pression sur la blessure travers le bandage. + + + Jumelles militaires standard, avec zoom optique x7,5. Utiles pour observer les environs tout en restant bonne distance. + + + Jumelles + + + Pain + + + Difficile de dire qui a russi ptrir ce pain dans la Zone, mais il n'est ni contamin, ni radioactif, plutt frais et tout fait comestible. Aucun stalker ne s'en est plaint jusqu'ici. + + + Dlice du touriste + + + Nourriture en conserve provenant d'un entrept militaire pill par les stalkers. Difficile de savoir ce que contiennent ces botes, mais ce doit encore tre comestible, si l'on en croit la date d'expiration. + + + Dtecteur "cho" + + + Ce vieux dtecteur d'activit anormale met un signal sonore lorsque vous approchez d'une anomalie. Il signale galement la prsence d'artefacts et indique la distance vous sparant du plus proche par la frquence de ses bips. Pour passer en mode Recherche d'artefacts, il suffit de soulever le couvercle. En raison de son caractre quelque peu rustique, ce dtecteur ne peut reprer que les artefacts les plus courants. + + + Dtecteur "Ours" + + + Dtecteur "Veles" + + + Dtecteur nouvelle gnration. Grce trois chambres de dtection modernises, l'emplacement des artefacts s'affiche sur un cran spcialis, ce qui permet de les localiser plus facilement. Lorsqu'il est ferm, le dtecteur ne signale que les radiations et les anomalies. Pour passer en mode Recherche d'artefacts, il suffit d'ouvrir le couvercle frontal. Il peut alors reprer tous les artefacts connus. + + + Dtecteur prototype "Svarog" + + + Dtecteur exprimental aux fonctionnalits perfectionnes. Il est fourni avec une base de donnes des zones statiques anormales, tout en restant capable de dtecter les artefacts. La position des anomalies et des artefacts s'affiche sur un cran spcial. Le mode Recherche d'artefacts s'active en relevant le couvercle de l'cran et permet de dtecter tous les types de formations anormales, mme celles inconnues ce jour. + + + Torche frontale standard. Utile pour les stalkers qui veulent voir o ils vont dans le noir, mais peut attirer l'attention. + + + Lampe de poche + + + Anabiotique + + + Antidote + + + L'antitoxine IP2 est un mdicament complexe compos de plusieurs antidotes, dont le metoclopramidum, la pyridoxine, la thiamine et la riboxine. L'injection de toute une gamme d'antibiotiques permet de neutraliser poisons et venins, naturels ou synthtiques. L'IP2 n'est pas particulirement populaire dans la Zone car la majorit des stalkers utilisent une combinaison et un masque gaz. Cependant, certains prfrent en avoir toujours une dose sur eux. Ses effets sont de longue dure. + + + Hercule + + + Vinca + + + Vikasolum ukrainien, quivalent artificiel de la vitamine K. Ce mdicament sert essentiellement acclrer la coagulation. Trs recherch par les stalkers qui cherchent soigner plus rapidement entailles et lacrations. Ses effets sont de longue dure. + + + Psi-bloquant + + + Mdicament empchant l'emballement neuronal. Sa consommation induit une perte court-terme des motions. Utilis dans la Zone pour compenser les effets des champs psi. Ses effets sont de longue dure. + + + Radioprotecteur + + + Boisson nergtique + + + Souvent bue par les stalkers qui ne peuvent pas se payer le luxe de faire une pause. Contient une grande quantit de glucides et stimule la production d'adrnaline. + + + Une guitare qui a bien servi. + + + Guitare + + + Saucisse dittique + + + Cette saucisse base de poulet et de soja est souvent au menu des stalkers au petit-djeuner, au djeuner et au dner... faute de mieux. Reste comestible trs longtemps grce sa haute teneur en conservateurs. + + + Mdikit + + + Mdikit militaire + + + Mdikit de premiers soins pour les blessures au combat. Contient des coagulants base de menadione, des antalgiques, des antibiotiques et des immunostimulants, ainsi qu'un kit d'extraction de balles et autres fragments. quipement standard des forces armes, souvent utilis par les membres du Devoir. + + + Mdikit de premiers soins standard. Permet de traiter toute une gamme de blessures : plaies, ecchymoses, brlures classiques et chimiques, empoisonnements. Trs demand. + + + Mdikit scientifique + + + Mdikit spcialement conu pour la Zone. Contient des produits permettant de traiter les blessures, mais aussi de ralentir et d'empcher l'irradiation. Contient du vikasolum, du batilolum et de la naphazoline. + + + Aucune donne. + + + PDA + + + Vodka cosaque + + + Distille par GSC, cette vodka descend facilement et rduit considrablement les effets des radiations. consommer avec modration ! + + + Ce dtecteur d'activit anormale de dernire gnration dispose d'un cran qui indique non seulement dans quelle direction, mais aussi quelle distance se trouvent les artefacts. Pour passer en mode Recherche d'artefacts, il suffit de soulever le couvercle. Malheureusement, la liste des signatures d'artefacts en mmoire est quelque peu date. + + + Mdicament exprimental conu par le professeur Ozersky pour les quipes de recherche qui travaillent dans la Zone. C'est un driv de ttrodotoxine surnomm "Poudre zombie" qui dsactive compltement le systme nerveux central de faon permettre au sujet de survivre des missions dcouvert. Aucun test officiel ou de terrain n'ayant t effectu, l'efficacit et les effets secondaires peuvent varier. + + + Boulon + + + Le composant principal de ce produit est un strode de synthse trs proche de la testostrone. Souvent utilis par les stalkers pour les oprations de longue dure, il rduit la fatigue musculaire et augmente nettement la capacit d'emport. Ses effets sont de longue dure. + + + Mdicament antiradiations B190 Indraline, inclus dans les mdikits du personnel des centrales nuclaires. Trs utilis dans la Zone la place de l'hydrochloride de cystamine, dont la prise rpte peut tre mortelle. Rduit les effets des radiations gamma sur les tissus vivants. Comme ses effets ne sont pas instantans, il est conseill de l'utiliser avant l'exposition. Ses effets sont de longue dure. + + + Harmonica + + + Pour le blues et les histoires d'amour en prison. + + diff --git a/gamedata/configs/text/fra/st_items_outfit.xml b/gamedata/configs/text/fra/st_items_outfit.xml new file mode 100644 index 0000000..a479692 --- /dev/null +++ b/gamedata/configs/text/fra/st_items_outfit.xml @@ -0,0 +1,117 @@ + + + + Combinaison CS-3a + + + Armure du Devoir PSZ-9d + + + PS5-M "Protection universelle" + + + Exosquelette + + + Combinaison blinde "Bulat" + + + L'exosquelette protge extrmement bien contre les balles et les clats, mais rduit la mobilit du porteur. Inefficace face aux balles perforantes. + + + Exosquelette + + + Combinaison blinde conue pour les oprations d'assaut. Procure une protection exceptionnelle contre les balles blindes et les clats sans entraver la mobilit du porteur. Inefficace face aux balles perforantes. + + + Combinaison blinde militaire + + + Manteau en cuir noir classique. Sa seule fonction : rchauffer son porteur la nuit et le protger de la morsure d'un chien aveugle. Bien que peu confortable, c'est l'quipement prfr des bandits de la Zone, soit parce qu'il leur permet de se cacher dans le noir, soit parce qu'il leur donne un air "cool". + + + Manteau en cuir + + + Combinaison SEVA + + + Combinaison blinde Berill-5M + + + Casque M12 Sphre + + + Casque intgral en titane et aluminium. L'extrieur en tissu comprend des poches permettant d'ajouter des plaques de blindage. Le Sphre M12 est gnralement utilis avec une combinaison blinde, comme la srie des PSZ militaires. Trs populaire dans la Zone, il dispose d'un masque filtrant intgr et d'un dispositif de vision nocturne de premire gnration. Dispose d'emplacements lectroniques. + + + Casque en acier + + + Casque en acier aussi ancien que dpass. Ne procure aucune protection contre les anomalies ou les radiations, mais peut dvier une balle. N'a jamais t trs populaire dans la Zone, hormis lors de brefs conflits entre factions. + + + Casque intgral + + + Casque intgral lger et tanche permettant de se protger contre les anomalies. en juger par son design, il est issu du mme institut de recherche que la combinaison SEVA. Il a probablement t conu pour tre utilis avec des combinaisons blindes militaires dans des zones hautement anormales. + + + Masque gaz + + + Masque gaz en plastique et caoutchouc utilis pour filtrer les particules radioactives et les substances empoisonnes. Trs utilis par les dbutants et les vtrans de toutes les factions. Ne procure aucune protection physique. + + + Casque tactique + + + Modle occidental d'un casque tactique sans camouflage. Nul ne sait comment il est arriv dans la Zone. Ce casque a t conu pour fournir au chef de groupe des informations stratgiques via un ensemble de dtecteurs et dispositifs de communication, qui ne sont toutefois pas inclus dans cet exemplaire. Comprend des plaques de blindage en kevlar composite, des composants lectroniques blinds, un masque filtrant et un dispositif de vision nocturne de premire gnration. + + + Combinaison "Lever de soleil" + + + Combinaison de garde de la Libert + + + Cette combinaison de stalker lgre est produite par les artisans de la Libert. Son tissu a t trait avec de l'Horizon, une solution spciale mise au point par les chercheurs de la faction pour amliorer la rsistance aux anomalies. l'instar de la combinaison "Lever de soleil", le "Vent de Libert" comprend des protections corporelles et des poches artefacts. + + + Combinaison "Vent de Libert" + + + Cette version modernise de la combinaison du Devoir est parfaite pour les nouvelles recrues habitues aux combinaisons lgres. Contrairement la srie PSZ, elle protge bien contre les anomalies tout en arrtant les balles de petit calibre. Il est impossible d'y ajouter une poche artefacts, mais elle peut tre amliore avec un systme d'aide au combat. + + + Cette combinaison a t conue pour les assauts en zone anormale. Elle se compose d'une combinaison militaire blinde PSZ-12p, de compensateurs intgrs et un justaucorps de protection contre les anomalies. Le blindage fournit une excellente protection contre les balles et les clats, sans trop rduire la mobilit du porteur. N'inclut pas de poche artefacts. + + + Cette combinaison conue pour les recherches scientifiques dans la Zone combine un module respiratoire en circuit ferm et un revtement isolant, ce qui permet de fournir une excellente protection contre les anomalies. Par contre, elle ne procure quasiment aucune protection contre les balles ou les fragments. Inclut une poche artefacts. + + + Cette combinaison cre par un institut militaire de Kiev est une bonne alternative aux combinaisons artisanales. Si son blindage intgr n'est efficace que contre les balles de petit calibre, le systme de protection contre les anomalies et les radiations est l'un des meilleurs de la Zone. Trs apprcie des vtrans pour son volutivit et ses deux poches artefacts. + + + Ce vtement se compose d'une combinaison blinde militaire PS5 et d'un revtement protecteur au bryllium spcialement conu pour la Zone. Peu efficace contre les anomalies, il procure une excellente protection contre les radiations. Il est souvent donn aux stalkers par les militaires en change de butin. N'inclut pas de poche artefacts. + + + Cette combinaison de stalker artisanale se compose d'un justaucorps en caoutchouc pais, d'un revtement en plexiglas et de plaques de blindages. Bien que ce dernier n'arrte mme pas les balles de petit calibre, cette combinaison reste trs populaire de par son faible cot et son potentiel d'volution. Inclut des poches artefacts. + + + Cette combinaison au blindage renforc produite par les artisans de la Libert est un bon compromis entre capacits de combat et protection contre les anomalies. Son blindage se compose de plaques renforces et de couches de kevlar capables d'arrter les balles de petit calibre. Son revtement au Sovereign protge contre les anomalies. Inclut une poche artefacts. + + + Cet ancien modle de combinaison du Devoir s'inspire d'une Spetsnaz PSZ-9 modifie pour la Zone. Disposant d'un blindage capable d'arrter des balles de gros calibre, elle est lourde, encombrante et ne protge quasiment pas des anomalies. Il est impossible de rajouter une poche artefacts, mais cette combinaison peut tre amliore avec un systme d'aide au combat. + + + Ancien quipement standard des groupes d'assaut de Firmament, cette armure sert rappeler, mme aprs la disparition de sa faction d'origine, que la meilleure des protections ne garantit en aucun cas votre survie dans la Zone. Capable d'arrter des balles de petit calibre, elle protge galement contre les anomalies. Inclut une poche artefacts. + + + Version exprimentale d'un exosquelette militaire, cette armure n'a jamais t produite en srie en raison de son cot de fabrication exorbitant et de ses dfauts de conception. Elle est cependant trs demande dans la Zone pour sa capacit d'emport et est donc fabrique en petits nombres hors d'Ukraine. Inclut une poche artefacts. + + + Combinaison SEVA + + diff --git a/gamedata/configs/text/fra/st_items_quest.xml b/gamedata/configs/text/fra/st_items_quest.xml new file mode 100644 index 0000000..c46bad9 --- /dev/null +++ b/gamedata/configs/text/fra/st_items_quest.xml @@ -0,0 +1,369 @@ + + + + Documents annots + + + Les documents spcifient que sur ordre de la Section 1, le passage souterrain Pripyat 1 a t scell et du dioxyde de carbone mlang un composant chimique a t rpandu dans tout le secteur. Le personnel a reu pour consigne de porter des combinaisons de protection et des modules respiratoires en circuit ferm. + + + Courrier concernant les livraisons de l'objet 62 + + + "En raison d'une anomalie, le transport de l'objet 62 ne peut tre effectu ciel ouvert. Pour toute livraison, utiliser le passage souterrain Pripyat 1. Le planning de livraison et le blocage l'accs souterrain ont t transmis la Section 1." + + + Dossier accompagnant l'ordre + + + Les documents font tat du transfert de la chane de production de l'usine de Jupiter vers les laboratoires souterrains. Ce sujet aurait d tre abord dans la section Laboratoire. + + + Planning de livraison + + + "Planning de livraison de l'objet 62 : 14/07 - 20 units (1 endommage) ; 21/07 - 32 units (2 endommages) ; 28/07 - 26 units (1 endommage). Le rapport de livraison concernant les pertes a t envoy aux services administratifs de l'usine. Un duplicata a t transmis l'atelier de rparations." + + + Feuille de bloc-notes + + + La dcision suivante a t prise lors de la runion : le service de livraison doit se concentrer sur l'vacuation du complexe de production de l'objet 62. + + + Journal de service + + + "...18h30 - Fermeture hermtique de toutes les sections du passage souterrain P-1. 19h00 - Fermeture hermtique de la voie ferre. Les portes ont d tre soudes. 19h45 - Fermeture des voies de transport. Il a fallu utiliser le gnrateur de secours pour activer le mcanisme de verrouillage des portes, en raison de la coupure de l'alimentation lectrique dans le passage souterrain. 20h00 - L'atelier de chimie a initi la propagation du gaz dans le passage souterrain. 22h00 - Fin de l'obturation du passage souterrain. Tous les documents ont t envoys la Section 1." + + + Plans du passage souterrain + + + Plans du souterrain Pripyat 1 indiquant qu'il passe sous la ville de Pripyat. Le document contient quelques notes : 1. Sceller les portes de transport. 2. Utiliser le gaz de l'atelier de chimie pour rendre le passage souterrain inaccessible. + + + Isolant modifi + + + Cet ancien isolant s'est transform en un artefact instable. Il est probablement l'origine d'missions psi intermittentes. + + + Bidon de colophonium + + + Bidon de colophonium utilis en soudure. Matriau rare dans la Zone, trs recherch par les techniciens locaux qui doivent souvent se contenter d'adhsif industriel pour faire leurs rparations. + + + Condensateurs + + + Ensemble de composants lectriques lmentaires. Relativement courants dans la Zone, ils sont utiliss pour amliorer des quipements de pointe. Cependant, le niveau de capacit lectrique qu'ils confrent est rarement ncessaire. + + + Base de textolite + + + Le textolite est l'un des principaux composants des circuits imprims. Une base de Textolite vierge est au technicien radio ce que la page blanche est l'crivain. + + + Bote de transistors + + + Une bote de transistors, des semi-conducteurs gnrant, transformant et amplifiant les oscillations lectriques. Les transistors font le bonheur de tous les techniciens radio de la Zone. + + + Bobine de fil de cuivre + + + Excellent conducteur et source de matire premire, le fil de cuivre est trs difficile trouver dans la Zone. Toutes les rserves ont t rcupres, fondues et livres des centres de recyclage dans les annes 90. + + + Dtecteur de mutants + + + Inspir du dtecteur d'activit anormale, ce dispositif est quip d'un capteur courte porte et d'un composant permettant d'enregistrer et de stocker les donnes. Il dispose galement d'une fonction de dsactivation automatique qui s'actionne lorsqu'une certaine quantit de donnes a t enregistre. + + + Documents administratifs + + + en croire le contenu de ce dossier administratif, la documentation technique affrente l'objet 62 a t transmise l'atelier de test sur ordre du laboratoire central. + + + PDA de Black + + + Un message en particulier attire l'attention. L'expditeur se nomme le Chacal : "Mon informateur l'institut de recherche te recommandera pour mener l'expdition. Il devra faire appel ton quipe pour surveiller le bunker. a vous facilitera la tche. Mais n'oublie pas que le client ne veut absolument pas que les infos sur les objets de type X remontent jusqu'aux scientifiques. Si cela devait arriver, nous ne pourrions plus quitter la Zone. Ne me fais pas faux bond, Black !" + + + Bote noire + + + La bote noire du Stingray 1. Elle doit contenir les donnes cryptes du vol avant l'accident. + + + Explosifs militaires avec minuteur de 5 secondes. + + + Explosifs avec minuteur + + + Roue modifie + + + PDA d'Accroc + + + Le PDA contient quelques photos rotiques et une carte avec un point prs du poste lectrique indiquant clairement une planque. Rien de spcial signaler. + + + PDA de bandit + + + On peut lire dans le dernier message : "Chope-moi ce salopard d'Accroc ! On a des comptes rgler ! Trouve-le et s'il se rebiffe, donne-lui une bonne leon ! Sultan." + + + Ce PDA contient des informations sur les clients de Morgan et les coordonnes de l'entrept secret du Devoir. Il y aurait vol des armes qu'il aurait ensuite revendues des mercenaires, avant d'entrer en contact avec un homme du nom de Sultan. Pour brouiller les pistes, Morgan a dcid de rvler l'emplacement de l'entrept la Libert. Son complice, le Vautour, tait cens transmettre l'information. Le PDA fait galement tat d'un capteur que seul Morgan peut dsactiver et qui alertera le Devoir si la planque est dcouverte. Ces informations intresseront srement le Devoir et la Libert. + + + PDA de Morgan + + + Une note au dos d'un vieux document : "Spectre, je rcupre mon matos. Merci pour le fusil d'assaut, je vais en avoir besoin ! Je te laisse certaines des fournitures mdicales du Doc en change. J'ai russi piger le mercenaire qui me filait, donc je n'en ai plus besoin... Enfin, je l'espre. Je vais aller voir les Crocs. Il a russi monter le dcodeur. Rendez-vous l'endroit habituel, si tu es dispo. Strelok." + + + Message pour le Spectre + + + Un message rdig sur du papier quadrill : "Strelok, j'ai laiss l'autre dcodeur dans la planque de Pripyat, au cas o. Le Spectre et moi, on va l'Agroprom. On t'a laiss quelques munitions, t'as qu' te servir si t'en as besoin. Bonne chasse ! Les Crocs." + + + Message pour Strelok + + + Un message griffonn au dos d'un vieux document : "Les Crocs, je ne peux plus t'attendre. J'ai un tas de mecs qui me collent aux basques. Je vais me rendre jusqu'au sarcophage tout seul. Je laisse mon flingue ici, j'ai plus de munitions de toute faon. Si je ne m'en sors pas, donne-le au Spectre ! S'il prend soin du flingue, le flingue prendra soin de lui. Salut. Strelok." + + + Message pour les Crocs + + + Module de mmoire du drone. Novikov l'a dbloqu pour vous permettre d'accder aux informations rcupres par le drone. Il contient notamment les coordonnes de trois balises radio. + + + Module de mmoire (dbloqu) + + + Module de mmoire du drone. Malgr l'accident, le module reste oprationnel, mais la mmoire n'est pas accessible. + + + Module de mmoire (bloqu) + + + Un vieux morceau de papier sur lequel sont griffonns l'emploi du temps du garde et le chiffre 1421. Un message a t rdig au feutre : "Lieutenant V. I. Sokolov. Aprs l'accident, je me suis rendu au point d'vacuation B205. Aucune vacuation n'a t tente ces deux derniers jours et rester ici devient trop dangereux. J'ai donc dcid de quitter le point B205 pour me rendre au laboratoire scientifique mobile au nord-est." + + + Message de Sokolov + + + Plante provenant d'un bosquet partiellement transform par une activit anormale. Le bosquet a adopt un mcanisme de dfense agressif pour se protger, mais la plante ne semble pas dangereuse. + + + Plante anormale + + + Le dernier message reu sur le PDA provient de Morgan. Il met prix la tte d'un stalker du nom de Degtyarev. Plusieurs photos sont en pices jointes. Selon les instructions de Morgan, le message doit tre supprim. + + + PDA d'un mercenaire + + + Cette valise contient un dtecteur d'artefacts, une batterie et un puissant transmetteur. Le dispositif scanne les anomalies afin de dterminer la quantit et le type d'artefacts prsents. Ces informations sont ensuite transmises automatiquement au bunker des scientifiques. + + + Dtecteur d'activits anormales + + + Le PDA contient un enregistrement audio : \n"... O que nous allions, nous revenons toujours notre point de dpart. Je n'arrive pas m'habituer ce brouillard... C'est quand mme trange que Chepurny ait disparu sans laisser de traces. Est-ce qu'il aurait trouv un moyen de sortir ?... \nSixime jour... Nous avons puis nos rserves d'eau... Le colonel a pt les plombs et a tir sur deux hommes bout portant avant de retourner l'arme contre lui... Je suis dsormais seul dans cette saloperie d'anomalie... Si je n'avais pas coup la liaison avec le QG, ils auraient pu venir notre secours... Et le Devoir n'aurait jamais exist. Je me demande ce qui se serait pass... Et merde, qu'est-ce que a peut foutre ? Le capitaine Tachenko est mort il y a longtemps... Et le gnral Tachenko du Devoir va bientt le suivre dans la tombe... Ce n'est que justice, je suppose..."\nOn entend un coup de feu et l'enregistrement est coup. + + + PDA du gnral Tachenko + + + Manuel d'utilisation de l'objet 62. Selon les instructions, aucun rglage n'est ncessaire pour la trajectoire et la direction de la balle, car celles-ci n'ont que peu d'incidence dans le rayon de porte efficace de l'arme.\nCes documents doivent rester confidentiels, car ils pourraient intresser les analystes du SBU. + + + Manuel d'utilisation de l'objet 62 + + + Ce bloc-notes contient la description dtaille d'une exprience valuant l'effet d'un champ psi sur un objet situ dans un autre hmisphre. Une quipe de scientifiques a reu un signal dform dans les Carabes. C'est comme si ce signal avait t modifi, corrig par quelqu'un. Ce phnomne pourrait confirmer la thorie de la noosphre ; ce serait elle qui aurait altr le signal.\nCes documents doivent rester confidentiels, car ils pourraient intresser les analystes du SBU. + + + Bloc-notes contenant la description d'une exprience + + + Ces documents dcrivent les caractristiques techniques de l'antenne et la faon dont elles diffrent de leurs valeurs attendues. Une note rdige au verso indique que ce dossier a t prpar dans le laboratoire X10.\nCes documents doivent rester confidentiels, car ils pourraient intresser les analystes du SBU. + + + metteur Arc-en-ciel - Fiche technique + + + Ces documents font tat d'une dcouverte annexe aux recherches. Il a en effet t dcouvert que certains tres vivants sont capables de gnrer des missions psi diriges. Un metteur de champ biologique qu'on pourrait comparer un gigantesque cerveau, a t dvelopp dans le laboratoire X16.\nCes documents doivent rester confidentiels, car ils pourraient intresser les analystes du SBU. + + + Documents de recherches + + + Ce rapport dtaille l'tude des chantillons biologiques envoys par le laboratoire X18. Ceux-ci ont t soumis des effets de champ d'informations de diffrentes intensits. Le rapport dcrit avec prcision la mutation des tres vivants exposs ces missions.\nCes documents doivent rester confidentiels, car ils pourraient intresser les analystes du SBU. + + + Rapport d'tude d'chantillons + + + Le document fait tat du transfert de l'quipe de recherche et de l'quipement vers le laboratoire X7 qui sera dsormais utilis pour mener des recherches sur l'influence de la noosphre. Membres de l'quipe de recherche : N. A. Lebedev, E. F. Kalancha and V. I. Suslov.\nCes documents doivent rester confidentiels, car ils pourraient intresser les analystes du SBU. + + + Ordre de transfert + + + Dernier message sur le PDA : "J'ai trouv le gnrateur de secours du sixime tage, le service technique. Il m'a fallu deux heures pour le remettre en tat de marche. Je voudrais bien l'activer, mais Serbin m'a ordonn de ne rien faire avant l'arrive de son quipe." + + + PDA de Barchuk + + + Carte magntique rouge portant l'inscription X8. + + + Carte rouge X8 + + + Le PDA contient de nombreuses entres, mais une en particulier attire votre attention : "Le Monolithe communique avec le destinataire de ce message et lui ordonne de rcuprer des munitions et de les entreposer dans des emplacements inconnus des hrtiques. Sur ces lieux devra tre appose la marque du Monolithe. Lorsqu'ils seront en danger, ceux qui entendent la voix du Monolithe recevront sa sagesse... J'ai transmis la volont du Monolithe mes frres et leur ai indiqu o dissimuler les munitions..." + + + PDA d'un combattant du Monolithe + + + Bote outils d'enfant. Loin d'tre adapte un travail de prcision, elle pallie la pnurie d'outils dans la Zone et peut s'avrer utile un technicien ingnieux. + + + Outils rudimentaires + + + Bote outils de qualit satisfaisante. De toute vidence, ces outils ont t rassembls par un technicien expriment pour son usage personnel. Malgr leur ge, ils sont en bon tat. + + + Outils de prcision + + + Bote outils professionnelle destine au rglage mticuleux de l'quipement. en croire l'tiquette, il s'agit d'outils allemands. Cette bote contient presque tous les instruments ncessaires au calibrage et au rglage de diffrents mcanismes. + + + Outils de calibrage + + + Vieille carte magntique + + + Carte magntique de Cardan. Elle permettait d'accder l'atelier de test de l'objet 62. + + + Documents relatifs l'objet 62 + + + Documents dcrivant le mcanisme et les spcificits techniques du dispositif lectromagntique.\nUne note accompagne le dossier : "Ces documents doivent tre rapports au laboratoire central X8. Je ne serai pas disponible, ce sera donc vous de les remettre. Utilisez la carte magntique dans le centre de service Pripyat Yubileiny pour accder au second niveau du sous-sol. Vous saurez quoi faire ensuite. Ci-joint la carte magntique.\nN. Lebedev"\nCes documents doivent rester confidentiels, car ils pourraient intresser les analystes du SBU. + + + Carte jaune X8 + + + Ordre N 562 + + + Ordre interne N 423 + + + Cl A + + + Une cl banale portant la lettre A. + + + Cl B + + + Une cl banale portant la lettre B. + + + Le PDA contient l'enregistrement audio d'un discours particulirement nvros : "C'est donc l que ces mutants se planquent !... croire qu'ils ne savent pas que j'ai mon petit raccourci, prs de la ferme du nord... Vous allez pas en revenir, saloperies !" + + + PDA de Noah + + + Un message au milieu de nombreux spams est marqu comme important. \n "Nous avons tabli un bivouac ct de la station de traitement des dchets et tous ceux qui sont sur le projet te rejoindront. Black ne sera pas de la partie, lui et son quipe sont Jupiter sur un autre coup. L'arme a suspendu tous les vols dans la Zone, donc on devrait tre tranquille de ce ct-l. Quand les stalkers auront trouv un moyen d'atteindre Pripyat, on enverra un guide et on attendra l'arrive des hommes du client. Ils nous indiqueront o se trouve le labo.\nLe Chacal." + + + Ordinateur de mercenaire + + + Dernier message reu :\n"On est en train de poireauter prs des anciens ateliers. J'ai envoy deux gars vous chercher. Mais on devra quand mme attendre l'arrive du coursier du client. Heureusement, l'air est bien plus respirable par ici.\nTesak" + + + PDA du mercenaire Crochet + + + PDA du mercenaire Pic + + + Bombonne contenant un compos chimique dangereux. + + + Bombonne de gaz Perin B3 + + + Le coffre est ferm par un verrou sophistiqu. en juger par son poids et le bruit qu'il fait quand on le secoue, il doit y avoir quelque chose l'intrieur. + + + Coffre en mtal + + + Note sur le PDA : "Je suis formel, l'artefact est dans l'arbre. Je peux clairement y grimper partir de la colline. J'espre juste qu'elle ne grouille pas de mutants. Dommage que je me sois frit avec Cardan et Barge... Du coup, je me retrouve tout seul... mais bon, quand je rapporterai l'artefact, ils verront bien que j'avais raison..." + + + PDA du Joker + + + en juger par le ton de cette note, son auteur tait contrari : "Cardan, ce vieux pochtron ! Non seulement c'est une sacre feignasse quand il a un coup dans le nez, "autant rester ici, y a pas d'urgence", mais en plus, maintenant, il s'en prend moi et au Joker... Parat qu'on est que des jeunots et qu'on n'y connat rien. H h... Faut dire que le Joker, c'est pas une affaire non plus : il a pris la mouche, rcupr son barda et mis les voiles pendant que j'essayais de calmer le vieux. Qu'est-ce que je suis cens faire, moi ? Rester picoler avec le pilier de bar ? Non merci ! En plus, sa vodka, c'est de la merde... Beurk !" + + + PDA de Barge + + + Sismik tenait un journal dans son PDA et les dernires entres sont les plus intressantes : "Enregistrement N12. Mes recherches seront bientt termines... Les hommes du camp commencent avoir des soupons. Le Faisan et Danila ont l'intention d'aller chasser des sangsues... Je me demande quand ils finiront par comprendre... Je dois trier les jarres de sang pour trouver lesquelles ont t contamines et cacher les autres... Quelqu'un approche. Enregistrement N13... Probablement le dernier. D'abord ce fouineur, et maintenant le Faisan... Je ne vais pas m'en sortir... Ils vont finir par m'avoir, je le sais. Mais a n'a pas d'importance. Cette dpendance l'hmoglobine va bientt me tuer de toute faon. Et quitte mourir, je prfre une balle la maladie." + + + PDA de Sismik + + + Top secret. Ordre N 562 du commandant du QG responsable de la scurit de l'Objet N 1, R. Yu. Didenko.\nL'unit de protection chimique N 423 doit tre transfre du secteur B103 au secteur A19. Objectif : test sur le terrain de la solution chimique Perin B3 dans des conditions similaires au combat rel. Le colonel P. P. Slavin, commandant d'unit, est charg de mener les tests. Le lieutenant-colonel K. S. Valov, commandant d'unit adjoint, s'occupera la logistique et de la scurit. + + + Top secret. Ordre du colonel P. P. Slavin.\nConformment cet ordre, les membres de l'unit de protection chimique N 423 doivent prendre connaissance des informations suivantes :\n 1. Les cls du conteneur renfermant la solution chimique Perin B3 ont t confies au colonel P. P. Slavin (cl A) et au lieutenant-colonel K. S. Vlasov (cl B).\n 2. Ordre du convoi, du premier au dernier vhicule : vhicule du commandant d'unit adjoint, vhicule d'escorte N 8, vhicule de transport blind N 1, vhicule de transport N 1, vhicule de transport blind N 3, vhicule d'escorte N 2, vhicule du commandant d'unit (P. P. Slavin).\n Des exemplaires de cet ordre doivent tre remis au lieutenant-colonel K. S. Vlasov et au lieutenant R. B. Nazarenku. + + + Carte magntique jaune. Porte l'inscription X8.\nCette carte ne doit pas tomber en de mauvaises mains, car elle permet d'accder au laboratoire secret. + + + PDA du messager de Sultan + + + Le dernier message envoy partir de ce PDA est un message audio : "Sultan, je me suis occup de ce connard ! a lui apprendra venir nous faire chier !" + + + Il s'agissait autrefois d'une roue de la station de dragage. C'est aujourd'hui un trange artefact. Rien signaler son sujet, si ce n'est qu'il luit et n'met que peu de radioactivit. + + + Message reu :\n"J'ai russi m'arranger pour les armes et ce sale rat va nous vendre les stocks de sa faction. a va pas nous coter bien cher, mais faudra qu'on se magne d'aller Jupiter.\nVautour." + + diff --git a/gamedata/configs/text/fra/st_items_weapons.xml b/gamedata/configs/text/fra/st_items_weapons.xml new file mode 100644 index 0000000..36472d6 --- /dev/null +++ b/gamedata/configs/text/fra/st_items_weapons.xml @@ -0,0 +1,567 @@ + + + + Munitions .45 ACP + + + Munition chemise de calibre .45 dont la popularit ne faiblit pas depuis plus d'un sicle. Sa balle lourde et sa charge propulsive rduite limitent la vitesse de la balle tout en augmentant sa puissance d'arrt. + + + .45 ACP + + + Munitions .45 ACP hydrashock + + + Ces cartouches de .45 ACP inhabituelles se composent d'une balle en mtal tendre comprenant un vide d'expansion et un cur en acier, constituant ainsi un hybride de balle chemise tte creuse et de balle perforante. Elles bnficient des avantages de leurs deux parents, mais aussi, videmment, de tous leurs dfauts. + + + .45 hydro + + + Munitions 12x70 (grenaille) + + + Cartouche standard de calibre 12 contenant de la grenaille de 6 mm. Mortelle courte porte. Utilisable exclusivement avec des canons me lisse. + + + 12x70 (grenaille) + + + Munitions 12x76 (balle) + + + Les lourdes balles de ces munitions de calibre 12 sont gnralement utilises pour la chasse au gros gibier, mais sont galement adaptes d'autres usages. Au lieu de perforer les protections, elles les traversent en les crasant sous leur poids. + + + 12x76 (balle) + + + Munitions 5,45x39 mm perforantes + + + Munitions militaires 5,45x39 7N22 perforantes pour les fusils d'assaut des pays du Pacte de Varsovie. La balle contient une ogive perforante en alliage durci, trs efficace contre les protections corporelles. + + + 5,45x39 perforante + + + Munitions 5,45x39 mm + + + Munitions militaires 5,45x39 7N10 perforantes amliores pour les fusils d'assaut des pays du Pacte de Varsovie. Bien plus prcises que les munitions 7,62 mm grce leur recul rduit et leur porte allonge de 100 m. + + + 5,45x39 + + + Munitions 5,56x45 mm perforantes + + + Munitions militaires 5,56x45 mm (index OTAN SS109 / Arme amricaine M855) perforantes, utilises par la plupart des forces armes et spciales occidentales. Trs efficaces contre les protections corporelles. + + + 5,56x45 mm perforantes + + + Munitions 5,56x45 mm + + + Munitions 5,56x45 standard de l'OTAN galement connues sous leur nom d'index, SS109. Conues pour permettre des tirs automatiques de prcision. Leurs excellentes qualits balistiques sont un hritage de leurs origines comme munitions de chasse. + + + 5,56x45 + + + Munitions 7,62x54 mm 7N14 + + + Munitions de prcision calibre 7,62 avec ogive perforante en acier, conues pour le SVD. Contrairement la version pour mitrailleuse, la 7N14 prsente d'excellentes caractristiques de pntration et une dispersion trs limite. + + + 7,62x54 7H1 + + + Munitions 7,62x54 mm PP + + + Munitions peu coteuses pour mitrailleuses de calibre 7,62. Ne peuvent tre utilises avec les fusils de prcision et sont donc uniquement destines la mitrailleuse RP-74. + + + 7,62x54 PP + + + Munitions 9x18 mm + + + Munitions blindes avec ogive perforante en acier sous une chemise en mtal. Bonne puissance d'arrt, mais inefficaces contre les protections corporelles. + + + 9x18 + + + Munitions 9x18 mm +P+ + + + Ces munitions contiennent une balle forte puissance d'arrt. La dsignation +P+ europenne indique qu'il s'agit de munitions surpression, avec une augmentation de 30 % de la vitesse initiale. Inefficaces contre les protections corporelles. + + + 9x18 +P+ + + + Munitions 9x19 mm FMJ + + + Ces munitions chemises conventionnelles de 9x19 mm prsentent de bonnes caractristiques et sont simples produire. Leur popularit est lie l'interdiction par les conventions internationales d'utiliser de telles munitions au combat. Inefficaces contre les protections corporelles. + + + 9x19 FMJ + + + Munitions 9x19mm JHP + + + Ces munitions 9x19 mm chemises tte creuse procurent une puissance d'arrt considrable et peu de ricochets. Utilises par la police et pour l'auto-dfense, elles sont inefficaces contre les protections corporelles du fait de leur faible capacit de pntration. + + + 9x19 JHP + + + Munitions 9x39 mm SP-6 + + + La SP-6 est une munition chemise subsonique ogive perforante en acier pour fusil d'assaut. Un silencieux est ncessaire pour obtenir les tirs les plus discrets possibles. Utilise par les services secrets des pays du pacte de Varsovie, elle est efficace contre les protections corporelles. + + + 9x39 SP-6 + + + Munitions 9x39 mm SP-5 + + + La SP-5 est une munition chemise subsonique tte en plomb pour fusils de prcision. Un silencieux est ncessaire pour obtenir les tirs les plus discrets possibles. Utilise par les services secrets des pays du pacte de Varsovie. + + + 9x39 mm SP-5 + + + Batteries + + + Grenade M209 + + + Grenades de 40 mm pour le lance-grenades mont sous le canon M203. Ces grenades crent une zone ltale de 5 m de rayon. Peuvent tre utilises avec le lance-grenades intgr du FT200M. + + + M203 + + + Ogive OG-7V + + + Ogives antipersonnel fragmentation utilises par le lance-grenades RPG-7U. Elles servent atteindre les ennemis hors de porte de grenades conventionnelles. + + + OG-7V + + + Grenade VOG-25 + + + Grenades fragmentation standard pour le lance-grenades mont sous le canon GP-25 Koster. Ces grenades crent une zone ltale de 5 m de rayon. Peuvent tre utilises avec le lance-grenades intgr du Tunder S14 et le lance-grenades Bulldog 6. + + + VOG-25 + + + Lunette PSO-1m + + + Lunette sovitique trs rpandue, zoom 5x fixe. Se fixe grce un support en queue d'aronde, largement utilis par les pays du Pacte de Varsovie. + + + Lunette PSS-2x + + + Lunette zoom 5x fixe avec dtecteur thermique intgr. Conue pour les forces spciales. Se fixe grce un support en queue d'aronde. + + + Lunette NSPU-3 + + + Lunette zoom 5x fixe avec dispositif d'amplification de lumire pour les combats de nuit. Se fixe grce un support en queue d'aronde. + + + Lunette SUSAT 4x + + + Lunette zoom variable 1,6-4x pouvant tre modifie automatiquement pour procurer une meilleure puissance de feu. Se fixe l'aide du rail Picatinny standard OTAN. + + + Lunette zoom fixe 4x produite dans les pays occidentaux. Se fixe l'aide du rail Picatinny standard OTAN. Souvent utilise pour les tirs de prcision longue ou moyenne porte avec des armes de petit calibre. + + + Lunette SUSAT Crpuscule 1,6x + + + Lunette de vise optique SUSAT zoom fixe 1,6x et fort contraste pour les combats en visibilit rduite. Se fixe l'aide du rail Picatinny standard OTAN. + + + Lunette SUSAT Nuit 1,6x + + + Lunette de vise zoom fixe 4x, quipe d'un dispositif de vision nocturne pour les combats longue porte de nuit. Se fixe l'aide du rail Picatinny standard OTAN. + + + Lunette SUSAT 1,6x + + + Lunette de vise SUSAT zoom fixe 1,6x, conue pour les combats porte courte et moyenne. Se fixe l'aide du rail Picatinny standard OTAN. + + + Lunette PSO-1 + + + Lunette zoom 2,7x conue pour les combats urbains porte moyenne. Se fixe grce un support en queue d'aronde. + + + Silencieux + + + Silencieux rustique, mais efficace, pouvant tre modifi si ncessaire. Le tube cylindrique qui se visse au canon est constitu d'un fin maillage de laiton alors que son extrmit oppose se compose d'une srie de diaphragmes mtalliques avec une ouverture laissant passer la balle. Cet quipement comprend les adaptateurs et produits isolants ncessaires son montage sur la plupart des armes. Il est gnralement utilis pour rduire les effectifs de l'ennemi sans attirer l'attention sur son utilisateur. + + + Grenade F1 + + + Grenade main dfensive, dont les fragments peuvent traverser une protection corporelle moyenne. Dispose d'un rayon ltal de 7 mtres. Les stalkers les obtiennent des militaires sur le march noir. Ces derniers expliquent plus tard l'absence des grenades en prtendant les avoir utilises contre les mutants. + + + GP-25 Koster + + + Lance-grenades pour fusils d'assaut du Pacte de Varsovie. Chargement par l'avant, canon ray, mcanisme d'amorage pompe avec scurit manuelle et scurit automatique empchant le tir si le lance-grenades n'est pas correctement install. Utilise des grenades VOG-25. + + + M203 + + + Lance-grenades M203 modifi pour tre plus court de 7,62 cm. Se fixe l'aide du rail Picatinny standard OTAN. Trs populaire dans le monde entier. + + + Grenade RGD-5 + + + Grenade offensive zone ltale de 5 mtres. Peu coteuse et souvent utilise par les stalkers pour "nettoyer" les nids de mutants. + + + Grenade fumigne + + + Grenade fumigne. Utile pour crer des crans de fume. Une fois la grenade lance, l'cran se constitue en environ 10 secondes. + + + Couteau + + + AC-96/2 + + + AKM-74/2 + + + AKM-74/2U + + + Martha + + + Fusil canon sci + + + Fusil de chasse deux canons scis parallles, ce qui le rend plus lger et compact qu'un fusil de chasse complet. Trs populaire auprs des bandits en raison de son extrme efficacit courte porte et de sa discrtion. + + + Kora-919 + + + Steppe Eagle + + + Pistolet assembl la main et inspir du Black Eagle. Tous ses composants ont t ajusts sparment pour offrir une prcision de tir ingale pour une arme de poing de ce type. + + + Black Eagle + + + FT 200M + + + Fora-12 + + + GP37 + + + Fusil Gauss + + + Tunder S14 + + + Ce fusil d'assaut lance-grenades intgr, semblable aux armes de la famille AKM, a t spcialement conu pour les units d'assaut. De configuration bullpup, il est chambr en 9x39 et largement modifiable. Capable de tuer un ennemi portant une protection corporelle ou couvert en environnement urbain, il est trs apprci des militaires de la Zone, notamment pour son excellente puissance d'arrt. + + + Storm + + + Version exprimentale d'un fusil d'assaut avec lance-grenades intgr, modification russe du Tunder S14, cette arme a t conue pour les units oprant dans la Zone et dispose d'un chargeur d'une capacit remarquable. + + + HPSS-1m + + + Version modifie d'un pistolet rput de la premire moiti du XXe sicle, aussi fiable, puissant et prcis que l'original. Son excellente rputation tant mrite, il est trs demand dans la Zone. + + + IL 86 + + + TRs 301 + + + Viper 5 + + + Ce pistolet-mitrailleur est l'un des plus populaires au monde de par sa fiabilit, sa facilit d'utilisation et sa prcision. Depuis plusieurs dcennies, il est employ toutes fins par les armes et forces de police du monde entier. De faon peu surprenante, il s'est trs bien vendu sur le march noir et a fini par se retrouver dans la Zone. + + + Frasier + + + Prototype de pistolet-mitrailleur bas sur l'excellent Viper 5. Conu pour constituer la prochaine gnration d'armes de combat rapproch, il est chambr dans un plus gros calibre, est plus prcis et dispose d'une meilleure cadence de tir. + + + PB-1s + + + RP-74 de Zulu + + + Cette arme appartenait Zulu. Il l'a modifie pour en agrandir le chargeur et rendre le systme d'extraction des balles plus fiable, le surpoids n'tant pas un problme pour son propritaire. + + + PMm + + + PMm de parade + + + PMm de parade offert par Degtyarev pour "Excution d'ordres dangereux, mais cruciaux pour la sret de l'tat et pour bravoure exceptionnelle en service". + + + Eliminator + + + Bulldog-6 + + + Lance-grenades barillet et chargement par l'avant. Utilis en gnral pour la suppression rapide des positions de tir ennemies et, dcouvert, pour l'assaut de positions fixes ou l'limination de mutants particulirement coriaces. + + + RP-74 + + + Mitrailleuse bande portable et modifie avec un systme d'alimentation complexe en deux temps. Malgr son poids et son manque de prcision, cette mitrailleuse lgre est souvent utilise dans la Zone pour repousser des hordes d'ennemis lors de conflits entre factions ou pour nettoyer des nids de mutants. + + + RPG-7u + + + SIP-t M200 + + + Alpine + + + Modle unique du SIP-t M200, issu d'une srie limite et conu pour des forces spciales de provenance inconnue. Cette arme bnficie d'un chargeur plus grand, d'un canon en acier trs rsistant et d'un bloc culasse en polymre renforc. + + + SGI 5k + + + Fusil d'assaut relativement nouveau rapidement adopt par de nombreux combattants du monde entier, bien qu'il ne suive pas les tendances du moment. Les armes de cette famille sont parmi les meilleures au monde, renommes pour leur fiabilit, leur prcision et leur ergonomie. Bien que difficile obtenir dans la Zone, ce fusil d'assaut fait souvent l'objet de commandes aussi spciales qu'exorbitantes. + + + SGI-5k de Strelok + + + Fusil d'assaut suisse SGI-5k. Mme s'il est loin d'tre neuf, il est vident que son propritaire en a pris grand soin : chaque pice a t dmonte, nettoye puis remonte pour obtenir des performances optimales en termes de puissance d'arrt. La lettre "S" a t grave sur la crosse, ct de 16 encoches. + + + SPSA-14 + + + SPSA-AUT + + + Le fusil pompe SPSA-AUT est une exclusivit des ateliers du Devoir. Conu pour combattre des hordes de mutants, son mcanisme d'alimentation amlior assure une cadence de tir leve et le magasin a t agrandi pour accueillir 10 cartouches. Utilise des munitions de calibre 12x70. + + + SPSA Carabine + + + Fusil pompe militaire conu sur une base de SPSA-14. Dot d'un mode de tir automatique l'instar de son prdcesseur, il bnficie d'un recul rduit grce un systme d'absorption amlior. + + + SVDm -2 + + + Fusil de prcision militaire en service depuis plus de 50 ans, dont la rputation en termes de fiabilit et de facilit d'emploi n'est plus faire. Le SVDm-2 est gnralement utilis par l'arme pour accrotre la porte effective de ses units. Dans la Zone, les stalkers l'apprcient pour ses capacits de perforation, efficaces contre les protections corporelles et les mutants. + + + Lynx + + + Version assemble la main du fusil de prcision SVDm-2. Bien qu'identique au SVDm-2 en apparence, cette variante est idalement quilibre en termes de prcision et de puissance d'arrt. + + + SVUmk-2 + + + SVU2-A + + + Ce fusil de prcision canon raccourci et cadence de tir acclre constitue une nouvelle tape dans l'volution du SVUmk-2. Cette arme appartenait Max, le lgendaire gardien de la Libert. + + + Fusil de chasse + + + Dot d'une grande prcision et d'une puissance d'arrt hors pair, ce fusil de chasse canon basculant est bien plus efficace qu'un pistolet contre les mutants et est utilis par la plupart des dbutants dans les secteurs peu dangereux de la Zone. + + + Arme non identifie + + + Arme non identifie, au mcanisme de tir mystrieux. Elle semble dfectueuse, car il ne se passe rien lorsque l'on appuie sur la dtente. + + + UDP Compact + + + Fiabilit et longvit exceptionnelles combines une excellente prcision sont les points forts de cette arme. Ses dfauts mineurs incluent une taille non ngligeable, un centre de gravit lev et une culasse massive qui ne facilite pas sa dissimulation. Trs populaire auprs des vtrans de la Zone. + + + Mars + + + Pistolet de gros calibre culasse raccourcie et allge, version modifie de l'UDP Compact. Appartenait au mercenaire connu sous le nom de Doberman. + + + SA Avalanche + + + Vintar BC + + + Fusil de prcision militaire, conu pour tre permettre des tirs silencieux et invisibles au cours d'oprations spciales. Le Vintar BC bnficie d'excellentes capacits de perforation et d'une puissance d'arrt hors pair. Il comprend une lunette de vise intgre. Trs apprci des stalkers malgr son chargeur limit. + + + Tide + + + Variante du fusil de prcision silencieux Vintar BC, cette arme sacrifie la cadence de tir au bnfice de la puissance d'arrt, afin de permettre au tireur d'liminer ses ennemis un par un, sans rvler sa position. + + + Walker P9m + + + Chaser 13 + + + Fusil pompe occidental me lisse, trs populaire dans la Zone de par son incroyable fiabilit et sa grande vitesse de rechargement. Recouvert d'un compos anticorrosion, il est tout particulirement apprci par les chasseurs. + + + Predator + + + Fusil pompe sur mesure qui appartenait Trappeur. Le chasseur n'avait impos qu'une seule condition, que cette arme puisse tuer en un seul coup, car il n'y a aucune raison de faire souffrir inutilement un animal, quel que soit le nombre de victimes qu'il ait faites. + + + Batteries artisanales + + + Lunette SUSAT Mera + + + Fusil d'assaut moderne dvelopp pour remplacer l'AKM 74/2 obsolte. Il dispose d'un mode de tir qui permet de placer deux balles exactement au mme endroit sur une cible loigne, ce qui augmente nettement les chances d'atteindre la cible par rapport au mode de tir semi-automatique et accrot mcaniquement sa puissance d'arrt ainsi que ses capacits ltales et de pntration. + + + Cette arme conue en 1974 a marqu l'adoption par les pays du Pacte de Varsovie de la tendance mondiale utiliser des munitions de petite calibre et puissance rduite pour les fusils d'assaut. Successeur du fusil d'assaut le plus populaire au monde, l'AKM-74/2 dispose d'un frein de bouche encore plus grand que celui de son prdcesseur, qui rduit encore davantage un recul qui tait dj plus que raisonnable. Prcision et dispersion en sont grandement amliores, tout particulirement lors de rafales ou de tirs uniques enchans rapidement. Ce fusil reste simple et fiable. + + + Bien que relevant plus de la catgorie des pistolets-mitrailleurs en termes de poids, de dimensions et mme d'utilisation tactique, cette arme reste considre comme un fusil d'assaut car ses mcanismes internes sont identiques ceux de l'AKM-74/2. L'AKM-74-2U est plus facile d'emploi au contact et dispose de bonnes capacits perforantes contre les protections corporelles. En revanche, sa porte efficace est limite (en dpit de celle relativement longue de ses munitions), il surchauffe rapidement en tir en rafale et ses balles ont une forte tendance ricocher. + + + Version amliore d'un grand classique qui a survcu tous les conflits du XXe sicle et perdurera sans aucun doute dans le suivant. Le modle d'origine et des milliers de variantes sont produits par des centaines d'entreprises dans le monde entier. Son seul dfaut est la capacit limite de son chargeur, largement compense par la puissance d'arrt de ses munitions. + + + Un vritable canon portable : volumineux, lourd et incroyablement mortel. Conu comme arme de poing spcialise pour la chasse au gros gibier et pour le tir de comptition sur cibles en acier plus de 50 mtres. Peu employ dans la Zone cause de son prix, de sa taille et de son poids (quasiment le double de tous les autres pistolets). + + + Cette arme de configuration bullpup et l'apparence futuriste est en ralit un systme militaire modulable adapt la production en srie, qui inclut un systme de contrle de tir informatis et un lance-grenades de 40 mm. En dpit de son apparence encombrante, elle est trs ergonomique, facile d'emploi et prsente de bonnes caractristiques techniques. + + + Pistolet ukrainien principalement utilis par les forces de maintien de l'ordre. Plus prcis, plus ergonomique et disposant d'un chargeur de plus grande capacit que le PMm, il est trs demand dans la Zone cause de la vente prix dfiant toute concurrence d'un grand nombre de modles dfectueux. Malgr cela, ce pistolet reste trs demand pour ses bonnes caractristiques de combat. + + + Modle rcent d'une grande famille de fusils d'assaut occidentaux, il diffre de ses prdcesseurs par sa culasse non cale et ressemble davantage aux fusils d'assaut amricains piston systme d'emprunt de gaz court recul. Il constitue une arme moderne d'excellente qualit, lgre, fiable et ergonomique. + + + La production en srie et les nombreux dfauts de ce fusil expliquent sa prsence en de nombreux exemplaires dans la Zone, alors que des versions modernises sont utilises l'extrieur. Les point fort de ce fusil sont sa lunette 4x intgre, son excellente prcision de tir et ses capacits d'amlioration. En revanche, la prcision chute rapidement en tir en rafale et les mcanismes internes sont peu fiables. + + + Dernier membre en date d'une longue ligne, ce fusil a t largement modifi sur sa moiti suprieure, son canon, sa culasse et son systme d'emprunt des gaz, ce qui a rduit son poids et amlior son ergonomie. Extrmement prcis, il a cependant tendance s'encrasser facilement, ce qui n'est gure adapt aux conditions difficiles de la Zone. + + + Pistolet conu au cours de la seconde moiti du XXe sicle pour les forces spciales et units de reconnaissance. L'une des particularits de cette arme est l'avant du canon couvert par le silencieux tandis que la crosse accueille le ressort rcuprateur trop long pour la culasse. Clairement obsolte, cette arme est nanmoins efficace entre de bonnes mains. + + + Cet hritage sovitique est l'un des pistolets les plus courants de la Zone, mais galement l'un des plus efficaces. Compact, trs fiable, facile d'emploi et d'entretien, il ptit nanmoins d'une courte porte, d'une faible prcision et d'une faible puissance d'arrt. Par ailleurs, compar d'autres pistolets plus rcents de la mme catgorie, il est relativement lourd et dispose d'un chargeur limit. + + + Fusil pompe me lisse et poigne revolver combinant puissance de feu extrme et cadence de tir leve. Il dispose d'un magasin grande capacit, mais son volume et son poids considrables, combins un temps de rechargement assez long, sont le prix payer pour ces avantages. Assez rare dans la Zone, il est en gnral utilis pour nettoyer les nids de mutants. + + + Ce lance-roquettes des annes 60 est pass des surplus militaires la Zone. Il constitue un systme de lancement sans recul tir unique et inclut une lunette de type PGO-7 2,7x optique. Mme si sa grande taille et son poids la rendent peu maniable, cette arme a su trouver des adeptes dans la Zone grce sa puissance destructrice considrable et sa facilit d'emploi. + + + Dernier modle produit en srie d'un pistolet trs connu, cette arme s'est forg une rputation pour son excellente ergonomie, sa grande prcision et ses mcanismes internes dignes d'une montre suisse. Son seul dfaut est son chargeur capacit limite, nanmoins compens par la puissance d'arrt de ses munitions. Nombreux sont ceux qui pensent que le SIP-t M200 est le meilleur pistolet chambr en .45 ACP jamais produit en srie. De nombreux stalkers et mercenaires expriments l'ont adopt. + + + Fusil pompe automatique me lisse conu au cours de la seconde moiti du XXe sicle. Ses deux modes de tir, pompe ou semi-automatique, en font une arme de choix pour les forces de police et les units d'assaut. Bien que trs fiable et polyvalent, il reste lourd, complexe et coteux. Il est nanmoins assez populaire dans la Zone, notamment auprs des stalkers qui cherchent lutter efficacement contre les mutants. + + + Version modernise du fusil de prcision SVDm-2, en configuration bullpup compacte, conue pour les forces d'intervention rapides. Le tir de prcision est plus rapide et l'arme est plus lgre tout en conservant l'excellente prcision courte et moyenne porte de son prdcesseur. Toutes ces qualits font que ce fusil est largement convoit par de nombreux stalkers de la Zone. + + + Version modifie pour les forces spciales du fusil de prcision silencieux Vintar BC. Sa principale fonction est de permettre un tir efficace contre un ennemi bien protg sans dvoiler la position du tireur. Grce aux lourdes balles subsoniques de calibre 9x39 mm et au silencieux intgr de cette arme, le bruit et la flamme la bouche du canon sont rduits au maximum. + + + Arme incroyablement prcise et sophistique connue sous le nom d'Objet 62, ce fusil a t conu dans des laboratoires secrets de la Zone. Il fonctionne en acclrant les balles des vitesses extrmes par le biais d'lectroaimants. Il en rsulte une formidable puissance d'arrt et quasiment aucun recul. Pour son alimentation en nergie, il utilise des batteries contenant des fragments d'artefacts. + + + Les pistolets Martha ont la rputation d'tre plutt fiables et un peu encombrants. Ils sont autant utiliss par de nombreuses forces armes et de police du monde entier que par les membres de la pgre, qui apprcient ses munitions puissantes et la capacit de son chargeur. Les Martha trouvs dans la Zone sont en gnral assez vieux, probablement issus de stocks retirs de la circulation. + + + Pistolet occidental d'excellente facture, rput pour sa fiabilit, sa prcision et la grande capacit de son chargeur, sans oublier la meilleure ergonomie de sa catgorie. Il s'agit de l'un des pistolets les plus utiliss dans la Zone, autant par les vtrans que par les dbutants. + + + Batteries utilisant un fragment encapsul de l'artefact Flash comme source d'nergie. Fabriques l'aide d'quipements sophistiqus. + + + Batteries qui utilisent un fragment encapsul de l'artefact Flash comme source d'nergie. Leur faible capacit est due leur origine artisanale et l'absence d'quipement spcialis. + + diff --git a/gamedata/configs/text/fra/st_items_weapons_upgrades.xml b/gamedata/configs/text/fra/st_items_weapons_upgrades.xml new file mode 100644 index 0000000..85f0670 --- /dev/null +++ b/gamedata/configs/text/fra/st_items_weapons_upgrades.xml @@ -0,0 +1,2022 @@ + + + + Vitesse + + + Calibre + + + Recul + + + Fiabilit + + + Viseur 1,6x + + + Lunette optique 4x + + + Silencieux + + + Afft sous le canon + + + Poids + + + Filetage externe permettant le montage d'un silencieux. + + + Filetage externe du canon + + + Installation d'un support pour lunette. + + + Support optique + + + Installation d'un support sous le canon de l'arme pour y monter un lance-grenades. + + + Support de lance-grenades sous le canon + + + Remplace le chargeur standard par un autre de plus grande capacit. + + + Chargeur de plus grande capacit + + + Modification importante des pices fixes et mobiles de l'arme afin de changer son calibre, au prix d'une lgre perte en fiabilit. + + + Calibre modifi - 5,45x39 mm + + + Modification importante des pices fixes et mobiles de l'arme afin de changer son calibre, au prix d'une lgre perte en fiabilit. + + + Calibre modifi - 5x56 mm + + + Modification importante des pices fixes et mobiles de l'arme afin de changer son calibre, au prix d'une lgre perte en fiabilit. + + + Calibre modifi - 9x18 mm + + + Modification importante des pices fixes et mobiles de l'arme afin de changer son calibre, au prix d'une lgre perte en fiabilit. + + + Calibre modifi - 9x19 mm + + + Augmentation de la capacit du chargeur sans changement de la longueur de l'arme. + + + Chargeur de plus grande capacit + + + Chargeur en polycarbonate, plus grand, mais aussi plus lger, pour compenser une partie du poids supplmentaire. + + + Chargeur de plus grande capacit + + + Augmentation du nombre de plaques de titane amliorant nettement la rsistance de la protection corporelle. + + + Plaques en titane/aluminium supplmentaires + + + Plaques renforces qui durent plus longtemps, mais n'amliorent pas tellement la rsistance. + + + Plaques de kevlar + + + Alliage de titane et aluminium permettant de rduire le poids du titane et de l'utiliser dans des protections corporelles. + + + Plaques d'alliage aluminium et titane + + + Le titane est en gnral trop lourd pour tre utilis dans des protections corporelles, mais sert parfois pour les exosquelettes. + + + Composants en titane massif + + + Remplace le mtal par de la fibre de carbone afin de rduire le poids de la protection corporelle sans perte d'efficacit. + + + Remplace les lments en mtal de la protection corporelle par de la fibre de carbone. + + + Le kevlar est l'un des matriaux les plus utiliss dans la fabrication de protections corporelles. + + + Plaques de kevlar + + + Le polycarbonate peut arrter une balle de pistolet, tout en restant aussi lger que du plastique. + + + Plaques en polycarbonate + + + Les plaques en cramique ne durent pas trs longtemps, mais sont plus fiables que le kevlar de par leur meilleure absorption de l'nergie cintique des balles. + + + Plaques de cramique + + + De simples plaques d'acier cousues dans un impermable. + + + Plaques d'acier + + + Surcouche en cramique. Pulvrise les balles perforantes qui la frappent angle droit et fait dvier les autres. + + + Surcouche de protection en cramique + + + Couche d'armure interne, venant complter la couche extrieure qui risque d'tre endommage. + + + Couche de protection double + + + Protection contenant une couche interne destine disperser l'impact sur une plus grande zone. + + + lment compensateur + + + Structure capable d'arrter une balle de pistolet si le blindage principal est endommag. + + + Structure blinde supplmentaire + + + Des couches de blindage plus fines sont insres en sandwich pour augmenter la rsistance l'usure. + + + Protection segmente + + + Mme si plus d'paisseur ne garantit pas forcment une meilleure protection, elle amliore toujours la rsistance. + + + Couche de secours + + + Des plaques de protection mobiles protgent les articulations. + + + Coudires et genouillres + + + Structure allge en aluminium qui remplace la structure en acier. + + + Structure allge en aluminium + + + paisseurs de cuir supplmentaires permettant de rduire l'impact ressenti travers la protection. + + + Inserts en cuir pais + + + Ajout d'une couche de cramique et d'un film de silicone amortisseur. + + + Plaques renforces en cramique + + + L'utilisation de matriaux plastiques et synthtiques permet de rduire le poids de la protection corporelle. + + + Composants synthtiques allgs + + + Seul un exosquelette, avec ses puissants servomoteurs, peut se voir quip de plaques de titane massif qui seraient trop lourdes pour un fantassin normal. + + + Cuirasse de titane + + + SBK-RKhZ.m.II : combinaison de protection radiochimique de combat, modle 2. + + + Combinaison hermtique antiradiations SBK-RKhZ.m.II + + + Ce type de protection est peu populaire en raison de la quantit de travail ncessaire sa fabrication, mais il a dj sauv bien des vies. + + + Chemise de maille + + + Les cailles de cramique permettent de dvier la trajectoire des balles. + + + cailles de cramique dflectrices + + + Une fois traite avec du Sovereign, la combinaison devient quasiment invulnrable aux dgts mcaniques et aux dchirures. + + + Traitement au Sovereign + + + La cramique rduit nettement l'impact des balles en dviant leur trajectoire et en les fragmentant. + + + Film de cramique sur plaques de protection + + + Cette matrice renforce qui utilise du bryllium la place de l'aluminium est l'un des meilleurs moyens de protger les fantassins. + + + La cramique rduit nettement l'impact des balles en dviant leur trajectoire et en les fragmentant. + + + Film de cramique sur plaques de protection + + + La fibre de carbone est l'un des matriaux les plus solides et rsistants au monde, utilise notamment dans la construction aronautique. + + + Ajout d'un film de cramique et d'un polymre multicouches. + + + Multi-films protecteurs + + + Technologie propre la Zone incluant l'utilisation de saphirs synthtiques pour une protection optimale. + + + Ajustement des composants pour empcher les enrayages. + + + Ajustement des composants + + + La mode des composants en plastique s'est non seulement impose, mais est galement devenue une amlioration trs populaire. + + + Composants en plastique + + + Mcanisme de tir impulsion lgre qui rduit le recul. + + + Mcanisme de tir impulsion lgre + + + L'alignement strict de la cartouche permet de garantir une trajectoire rectiligne jusqu' la cible. + + + Module d'alignement de cartouches + + + Souvent utilis dans les armes modernes, ce systme de verrouillage par galets permet de rduire le recul et la dispersion. + + + Culasse non cale avec galets + + + L'ajout d'un cylindre gaz supplmentaire rduit la charge de l'arme, ce qui permet d'augmenter nettement la cadence de tir. + + + Cylindre gaz supplmentaire + + + Systme d'emprunt de gaz utilis pour permettre le tir semi-automatique de certains fusils pompe. + + + Systme d'emprunt de gaz + + + Mlange protecteur rendant les enrayages mcaniques quasiment impossibles. + + + Mlange protecteur de composants + + + Lorsqu'une balle est tire, le canon revient la position initiale par l'action du glissement latral du garde-main. + + + Systme de fermeture du canon + + + Systme inertiel automatique permettant de transformer le fusil pompe en fusil mcanisme double-action. + + + Systme inertiel automatique + + + Un module unifi de pression des gaz par l'arrire est l'une des meilleures solutions technologiques pour rduire le recul. + + + Module unifi de pression des gaz par l'arrire + + + Tige d'armement automatique amliorant la prcision. + + + Tige d'armement automatique + + + Contrepoids actif s'cartant du bloc-culasse pour compenser partiellement le recul. + + + Contrepoids actif + + + Installation de galets supplmentaires rduisant le recul. + + + Systme de compensation galets de pression des gaz l'arrire + + + Remplacement de la culasse de l'arme par une autre plus adapte au tir rapide, ce qui amliore la cadence de tir. + + + Culasse non cale + + + Lors du tir, le contrepoids du bloc-culasse se dplace dans la direction oppose de la culasse, ce qui rend le tir plus confortable. + + + Contrepoids autorgulateur + + + Ajout d'un contrepoids mobile dans le receveur pour rduire le recul. + + + Contrepoids mobile + + + La mode des composants en polymre s'est non seulement impose, mais est galement devenue une amlioration trs populaire. + + + Composants en polymres rsistants pour les parties mobiles + + + Installation d'un mcanisme spcial contre l'encrassage de l'arme. + + + Rgulateur de gaz automatique deux positions + + + Composant spcial scellant le canon de faon tanche afin d'augmenter la pression lors du tir. + + + Dispositif de fermeture du canon + + + La synchronisation s'effectue grce un engrenage, ce qui permet d'amliorer la vitesse initiale. + + + Synchronisation du mouvement de la tige + + + L'installation de ce composant l'arrire du bloc-culasse rduit la vitesse de la culasse et permet d'amliorer la prcision du tir. + + + Mcanisme de rduction de l'inertie + + + L'installation d'un composant spcial dans le bloc-culasse permet d'adoucir le mouvement de la culasse et de rduire le recul. + + + Dispositif de rduction de la vitesse des gaz d'jection + + + Ensemble d'amliorations gnralement rserves aux fusils de prcision cause de l'augmentation importante du poids de l'arme. + + + Systme amortisseur intgr + + + Installation d'un ensemble de composants mobiles qui acclrent l'alimentation en cartouches lors du tir. + + + Alimentation automatique + + + L'amlioration des composants mobiles de l'arme ncessite le remplacement d'un certain nombre d'entre eux, ce qui amliore sa prcision. + + + Systme sans impact quilibr + + + Installation d'un composant synthtique pour limiter l'amplitude du mouvement de la culasse de faon amliorer la prcision de tir. + + + Dispositif d'arrt + + + Installation d'un maintien rigide et de trous de compensation pour limiter le mouvement du canon. + + + Composants de compensation intelligente + + + Adoucissement du mcanisme de la queue de dtente, trs important pour les tireurs de prcision. + + + Mcanisme de rgulation de la queue de dtente + + + Ce composant fournit au tireur une indication sur le point exact de la course de la queue de dtente o le tir va s'effectuer, ce qui amliore la prcision. + + + Indicateur anticip de dtente + + + Souvent utilis dans les armes modernes occidentales, ce systme de verrouillage par galets permet de rduire le recul et la dispersion. + + + Culasse non cale avec galets + + + Mcanisme spcial qui absorbe une partie de l'impact du tir et le rend plus confortable. + + + Systme amortisseur de tir + + + Comme les fusils de prcision ncessitent davantage de maintenance que les fusils classiques, il est possible d'y installer un dispositif de rgulation des gaz trois positions. + + + Dispositifs de rgulation des gaz trois positions + + + La pulvrisation permet d'viter que l'nergie ne se disperse, ce qui accrot la vitesse initiale de la balle. + + + Pulvrisation des pices mobiles + + + L'installation d'une tige d'armement grande amplitude permet de faire fonctionner le fusil de prcision en tir automatique. + + + Tige d'armement grande amplitude + + + L'installation d'un dispositif d'arrt a un impact sur la pression des gaz l'arrire, ce qui amliore la prcision de tir. + + + Dispositif d'arrt + + + Remplacement du canon standard par un autre plus long, ce qui amliore la prcision et la vitesse initiale. + + + Canon long + + + L'absence de piston gaz encombrant et de garde-main fix au canon permet d'amliorer la prcision. + + + Canon flottant + + + Permet de rduire l'usure provoque par les modifications qui augmentent la cadence de tir. + + + Ailettes de refroidissement + + + Remplacement du frein de bouche par un autre plus moderne afin de rduire le recul. + + + Frein de bouche compensation optimise + + + L'installation d'un canon rayures supplmentaires permet d'augmenter la vitesse de la balle et la prcision du tir, au prix d'une nette augmentation du recul. + + + Canon rayures supplmentaires + + + Ce type de canon privilgie la puissance courte porte aux dpens de la prcision. La rduction du nombre de rayures dans le canon permet d'amliorer la cadence de tir. + + + Canon rayures simplifies + + + L'utilisation de rayures polygonales permet d'amliorer la prcision. + + + Canon rayures polygonales + + + Permet d'accrotre la dissipation de chaleur et d'amliorer la cadence de tir. + + + Canon rayures sinusodales + + + Remplacement du canon pour les armes qui disposent dj d'une bonne vitesse initiale afin d'amliorer la prcision. + + + Canon ray de prcision + + + L'utilisation de matriaux trs rsistants permet de ralentir l'usure du canon. + + + Canon en alliage longue dure + + + Le traitement de la surface extrieure du canon permet de le protger contre les dgts mcaniques. + + + Traitement du canon + + + L'paississement de l'me du canon par des matriaux synthtiques permet de rduire nettement la dispersion. + + + paississement synthtique de l'me + + + Remplacement du canon standard par un autre plus long, ce qui amliore la vitesse initiale. + + + Sections de canon allonges + + + Le perage de jours de ventilation dans le canon permet non seulement de limiter son encrassage, mais aussi de rediriger une partie du recul dans le canon lui-mme. + + + Jours de ventilation longitudinaux + + + Remplacement du canon standard par un autre plus long, ce qui amliore la vitesse initiale. + + + Section de canon allonge + + + Ce film protecteur permet de limiter la surchauffe du canon, de compenser les dfauts de manufacture et d'augmenter nettement sa dure de vie. + + + Film de protection interne du canon + + + Ce systme d'quilibrage du canon inclut plusieurs pistons mobiles afin de rendre l'arme plus stable lors du tir. + + + Systme d'quilibrage du canon + + + L'utilisation d'un canon ray empche de tirer de la grenaille, mais le gain en prcision compense largement ce dfaut. + + + Canon ray + + + L'paississement du canon l'aide de poly-matriaux permet d'augmenter la pression interne, ce qui accrot la vitesse initiale des balles. + + + paississement dynamique du canon + + + Le filetage cylindrique du canon permet d'augmenter la cadence de tir sans sacrifier la prcision. + + + Filetage cylindrique du canon + + + Lors du tir, un contrepoids actif se dplace vers l'avant du canon, ce qui compense en partie le recul. + + + Contrepoids dynamique de canon + + + Remplacement du canon standard par un autre plus long, ce qui amliore la prcision et la vitesse initiale, mais rduit la cadence de tir. + + + Section de canon allonge + + + La perforation du canon rduit le recul car les gaz s'chappent par les ouvertures pratiques. + + + Perforation du canon + + + L'utilisation d'un canon plus court permet d'augmenter la cadence de tir sans sacrifier la vitesse initiale et la prcision. + + + Canon plus court + + + Le chromage du canon permet d'allonger sa dure de vie. + + + Chromage interne du canon + + + L'utilisation de sparateurs en caoutchouc permet d'absorber une partie du recul. + + + Sparateurs en caoutchouc + + + Un canon comprenant moins de rayures est trs utile courte porte, quand la cadence de tir est plus importante que la prcision. + + + Canon rayures simplifies + + + L'installation d'un canon rayures supplmentaires permet d'augmenter la vitesse de la balle et la prcision du tir, au prix d'une nette augmentation du recul. + + + Canon rayures supplmentaires + + + Le dplacement des accessoires du canon au chssis permet de rduire nettement le recul. + + + Transfert au chssis du cache-flammes/compensateur de recul + + + Permet d'accrotre la dissipation de chaleur et d'amliorer la cadence de tir sans sacrifier la vitesse initiale. + + + Canon rayures sinusodales + + + L'utilisation de rayures polygonales permet d'augmenter la prcision. + + + Canon rayures polygonales + + + L'installation d'un compensateur pneumatique permet de convertir une partie du recul en pression interne au canon, ce qui augmente la vitesse initiale. + + + Compensateur pneumatique + + + L'ajout de servomoteurs supplmentaires permet d'augmenter la charge maximale. + + + Servomoteurs supplmentaires + + + Les techniciens de La libert ont t les premiers remplacer le mtal par de la fibre de carbone pour rduire le poids des exosquelettes. + + + Remplacement des composants mtalliques par de la fibre de carbone + + + Le blindage des composants vitaux de l'exosquelette vite qu'ils soient endommags par des tirs trop prcis. + + + Blindage des points vitaux + + + Cette amlioration consiste renforcer les ressorts et jointures de l'exosquelette, ce qui permet son porteur d'utiliser son poids pour faciliter les mouvements. + + + Systme moteur Shagohod + + + Les exosquelettes de quatrime gnration diffrent de ceux de troisime gnration par l'emploi gnralis de propulseurs hydrauliques qui permettent de courir. + + + Propulseurs hydrauliques + + + Renforts en tissu qui amortissent les dgts sur les tissus mous en cas d'impact sur une plaque de blindage. + + + Renforts amortisseurs en tissu + + + Bien plus efficaces que leurs quivalents en caoutchouc, les renforts en silicone absorbent les dgts la place du porteur. + + + Renforts amortisseurs en silicone + + + Tissus, attaches et renforts sont remplacs par des matriaux synthtiques plus lgers de faon rduire le poids de l'exosquelette. + + + Allgement des matriaux + + + Renforts en caoutchouc qui amortissent les dgts sur les tissus mous en cas d'impact sur une plaque de blindage. + + + Renforts en caoutchouc + + + Cette paisseur interne est utile en cas de rupture du tissu principal. + + + Inserts multicouches en polycarbonate, silicone et fibre de carbone, au cas o le blindage principal serait transperc. + + + Inserts protecteurs en polymres + + + Combinaison tanche de la Libert, utilise pour la recherche d'artefacts dans les zones anormales. + + + Combinaison tanche de protection contre les anomalies + + + Couche tanche en matriaux synthtiques, au cas o la couche externe serait endommage. + + + Couche synthtique + + + Combinaison en caoutchouc comportant de nombreux ajustements ergonomiques, qui permet de conserver une bonne mobilit mme lorsqu'une protection corporelle encombrante est porte. + + + Combinaison ergonomique en caoutchouc + + + Le constantan est un alliage isolant au point de fusion trs lev. + + + Inserts d'isolation thermique en constantan + + + Le plomb absorbe les trois principaux types de radiations. + + + Ajout de plomb la combinaison + + + Protection simple contre la pluie et autres substances acides pouvant entrer en contact avec la peau. + + + Combinaison canevasse + + + Ce traitement retardateur de combustion est trs apprci des stalkers qui se spcialisent dans la recherche d'artefacts de feu. + + + Traitement retardateur de combustion + + + Inserts en magnsium qui protgent le porteur des dangers thermiques. + + + Inserts en magnsium + + + Il suffit parfois d'une simple couche plastifie dans une armure pour protger son porteur des dangers chimiques et lectriques. + + + Couche plastifie tanche + + + Tissus, attaches et renforts sont remplacs par des matriaux synthtiques plus lgers de faon rduire le poids de l'ensemble. + + + Remplacement du tissu par des matriaux synthtiques + + + Le plexiglas absorbe deux types de radiations et est bien plus lger que le plomb. + + + Couche interne antiradiations en plexiglas + + + Protge le porteur contre les dangers chimiques et lectriques. + + + Couche plastifie interne tanche et lastique + + + Une fine couche de constantan garantit une bonne isolation contre l'lectricit. + + + Couche interne isolante en constantan + + + La fibre de verre est un composant courant des combinaisons portes par les quipes de secours sur les sites de catastrophes naturelles. + + + Couche de protection thermique en fibre de verre + + + Ce traitement permet de protger le porteur contre les produits chimiques. + + + Traitement de protection contre les produits chimiques + + + Le caoutchouc constitue une protection antiradiation plutt rudimentaire, mais peut convenir pour des expositions de dure limite. + + + Combinaison en caoutchouc + + + Permet d'amliorer la dure de vie des combinaisons de stalkers. + + + Structure protectrice longue dure de vie + + + Le nickel rsiste suffisamment bien au feu pour tre utilis dans des inserts de protection. + + + Combinaison rsistante au feu avec inserts en nickel + + + Cet alliage de nickel et de magnsium sert de protection contre les dcharges lectriques. + + + Combinaison isolante avec inserts en manganin + + + Combinaison tanche avec couche anticorrosion et renforts en kevlar. + + + Combinaison blinde intgre "Deuxime peau" + + + Inspire de la combinaison "cologiste" de l'institut de recherche de Kiev, cette combinaison utilise les mmes polymres, mais avec des inserts en bismuth. + + + Combinaison en polymres "cologiste" avec insert en bismuth + + + Le maillage en plomb procure un excellent niveau de protection contre les radiations et les produits chimiques, sans sacrifier la mobilit. + + + Combinaison "Sauveteur" en plexiglas avec maillage flexibles en plomb + + + Variante locale apparue aprs la catastrophe de Tchernobyl. Utilise dans les exosquelettes pour empcher les dfaillances lectroniques. + + + Combinaison "vacuateur" avec inserts en plomb + + + Viseur tactique pour combat courte porte. + + + Viseur 1,6x + + + Montage d'une lunette optique pour combat moyenne et longue porte. + + + Lunette optique 4x + + + Montage d'une lunette optique pour combat longue porte. + + + Lunette optique 5x + + + Montage d'une lunette optique pour combat longue porte. + + + Lunette optique 6x + + + Amlioration du contraste dans la gamme des jaunes du viseur des armes d'assaut, trs utile dans les zones peu claires ou lors d'oprations nocturnes. + + + Amlioration du contraste + + + L'utilisation d'un capteur infrarouge dans le viseur permet de dtecter et d'identifier les sources de chaleur. + + + Systme d'acquisition automatique de cible + + + Depuis leur conception, les dispositifs de vision nocturne ont sauv la vie de plus d'un tireur de prcision. + + + Dispositif de vision nocturne + + + Cette modification permet d'adapter facilement la vise la distance de tir. + + + Viseur tlmtrique + + + L'utilisation d'une crosse pneumatique permet de rduire le recul lors du tir en rafale. + + + Crosse pneumatique + + + paulire mobile qui rduit considrablement l'impact du recul sur le tireur. + + + paulire amortisseuse + + + Crosse moderne qui tient compte de la morphologie humaine. + + + Crosse ergonomique + + + Lors du tir, les gaz de combustion sont en partie transfrs du canon vers l'arrire de la culasse, de faon ce que celle-ci s'arrte en douceur dans son mouvement de retour. + + + Tampon gaz pour bloc-culasse + + + L'allongement du bloc-culasse dans la crosse permet d'aplatir la trajectoire et d'augmenter la vitesse initiale, mais accrot le recul. + + + Allongement du bloc-culasse + + + L'installation d'un composant mobile dans la crosse permet de crer un mouvement inverse lors du tir. + + + Contrepoids mobile + + + Un appuie-joue de plus grande taille permet des tirs plus prcis. + + + Appuie-joue de grande taille + + + L'intgration d'un compensateur de recul ressort rend le tir en rafales plus confortable. + + + Compensateur de recul ressort intgr + + + Le positionnement du tampon gaz du bloc-culasse dans la crosse permet d'absorber la majorit du recul. + + + Tampon gaz supplmentaire pour le bloc-culasse + + + Un revtement en caoutchouc amortisseur de recul est souvent ajout aux crosses des fusils de prcision de gros calibre. + + + Revtement de crosse amortisseur + + + L'utilisation d'une crosse ajustable et d'un appuie-joue permet de tirer depuis toutes les positions. + + + Crosse ajustable avec appuie-joue + + + Installation dans la crosse d'un compensateur de recul trs puissant pour les armes de gros calibre. + + + Compensateur hydraulique de recul pour la crosse + + + Ces filtres actifs rsistent aux produits chimiques les plus corrosifs. + + + Filtres actifs + + + Ce bandeau procure une protection partielle contre les missions psi directes. + + + Bandeau anti-psi grillage en acier + + + Filtre pour environnements contamins et tempratures extrmes. + + + Revtement filtrant + + + Revtement filtrant + + + Filtre avec revtement antiacides renforc et couche antipoison supplmentaire. + + + Revtement anticontamination + + + Revtement en plexiglas qui protge en partie des radiations. + + + Revtement en plexiglas + + + Revtement en plexiglas qui protge en partie des radiations. + + + Appareil respiratoire en plexiglas + + + Appareil respiratoire qui filtre toutes les toxines. + + + Masque respiratoire intgral + + + Cet alliage de bryllium et d'aluminium procure une excellente protection sans augmenter dmesurment le poids du casque. + + + Plaques de bryllium et d'aluminium + + + Cet alliage de bryllium et de titane fournit une protection amliore sans augmenter le poids de faon dmesure. + + + Plaques de bryllium et de titane + + + Des filtres amliors permettent de maintenir un approvisionnement en oxygne constant, quel que soit le niveau de contamination de la zone. + + + Filtres amliors usage scientifique + + + Cette protection anti-psi sophistique est l'uvre d'un scientifique du nom de Sakharov. + + + Bandeau psi-dme + + + Cette armature protectrice en alliage protge contre les dgts thermiques et lectriques. + + + Visire en constantan + + + Ce blindage supplmentaire permet d'allonger la dure de vie du casque. + + + Renforcement structurel + + + Filtre avec module purificateur supplmentaire et systme de neutralisation des poisons. + + + Appareil respiratoire renforc pour conditions extrmes + + + L'installation d'un dispositif de vision nocturne permet de mener des oprations militaires de nuit ou lorsque la visibilit est rduite. + + + Dispositif de vision nocturne de premire gnration + + + Ce systme de basculement automatique permet de passer automatiquement en circuit ferm en cas de contamination de l'air par des particules chimiques ou radioactives. + + + Systme de prvention automatique chimique/radiations + + + Masque respiratoire et purificateur vapeur + + + L'installation d'un dispositif de vision nocturne plus moderne permet de mener des oprations dans le noir complet. + + + Dispositif de vision nocturne de seconde gnration + + + L'utilisation d'un capteur infrarouge dans le viseur permet de dtecter et d'identifier les sources de chaleur. + + + Systme d'acquisition de cible automatique + + + Cet onduleur scientifique a t conu pour permettre l'accs des zones bombardes d'missions psi. + + + Stimulateur psi Oracle + + + L'installation d'un dispositif de vision nocturne plus moderne permet de mener des oprations dans le noir complet. + + + Dispositif de vision nocturne de troisime gnration + + + Le dplacement en sens inverse des lectrons des particules d'air ionises entre les lectrodes du systme permet de crer un courant d'air ionis. + + + Systme de refroidissement ionisation + + + Ce dtecteur infrarouge permet de reprer les humains proximit. + + + Dtecteur infrarouge + + + Systme de protection anti-psi SPB - VPZ.m.IV + + + Systme de combat SPB - VPZ.m.IV + + + Le renforcement du ressort rcuprateur permet d'acclrer la vitesse des balles. + + + Renforcement du ressort rcuprateur + + + L'ajout d'un revtement compensateur aux pices mobiles du mcanisme permet de rduire la dviation du canon lors du tir. + + + Compensation du mcanisme rcuprateur + + + L'ajout d'un ressort spires inverses supplmentaire permet de rduire le recul sans sacrifier la vitesse initiale. + + + Ressort rcuprateur supplmentaire + + + La pulvrisation d'un mlange protecteur amliore la fiabilit et garantit l'tanchit afin d'viter une dissipation excessive de l'nergie. + + + Pulvrisation du mcanisme rcuprateur + + + Une tige d'armement en titane peut supporter une cadence de tir plus leve qu'une tige classique. + + + Tige d'armement en titane + + + L'installation d'un guide de tige d'armement en matriau synthtique permet d'viter toute dviation de son mouvement, ce qui amliore la prcision. + + + Guide de tige d'armement + + + L'paississement du canon permet d'augmenter sa pression interne, ce qui accrot la vitesse initiale des balles. + + + Renforcement du mcanisme rcuprateur + + + Installation d'un systme d'ouverture et de fermeture du mcanisme rcuprateur emprunt des gaz. + + + Systme de distribution des gaz + + + Remplacement du mcanisme rcuprateur par une version plus puissante, quipe de deux tiges d'armement et de ressorts rcuprateurs, ce qui amliore la cadence de tir. + + + Conversion en systme deux tiges + + + Le perage d'orifice de sortie des gaz autour du tambour de l'arme permet de rduire le recul. + + + Utilisation de l'nergie des gaz + + + L'ajout d'emplacements cames diagonaux dans le tambour permet d'acclrer la rotation des mcanismes d'utilisation de l'nergie des gaz. + + + Emplacements cames diagonaux + + + Modification classique europenne qui permet de rduire le poids sans perdre en fiabilit. + + + Crosse en polymre rsistant + + + Un fusil d'assaut quip d'un bloc-culasse trs rsistant est par pour les conditions d'utilisation les plus extrmes. + + + Bloc-culasse en alliage longue dure + + + Ajout d'un contrepoids l'avant du bloc-culasse afin de rduire le recul. + + + Contrepoids l'avant du botier de culasse + + + L'installation d'un manchon refroidisseur permet d'augmenter la cadence de tir sans risque de surchauffe. + + + Manchon refroidisseur supplmentaire + + + Forme plus ergonomique, qui assure un maniement prcis dans toutes les circonstances. + + + Botier de culasse ergonomique + + + Modification rserve aux armes de configuration bullpup, qui simplifie grandement la maintenance. + + + Botier de culasse modulable + + + Ce film protecteur permet de limiter la surchauffe du canon, de compenser les dfauts de manufacture et d'augmenter nettement la dure de vie de l'arme. + + + Botier de culasse arrondi et rainur + + + Un contrepoids mobile est install dans la crosse incline afin de stabiliser l'arme lors du tir. + + + Crosse incline + + + L'ajourage de la crosse permet de rduire le poids de l'arme. + + + Crosse incline + + + Version plus lgre de la crosse standard. + + + Crosse allge + + + L'utilisation de polymres permet de rduire le poids de l'arme. + + + Crosse en polymre rsistant + + + L'ajout d'un contrepoids permet de rduire le recul. + + + Contrepoids + + + L'installation d'une crosse plus moderne et confortable simplifie le maniement de l'arme. + + + Crosse ergonomique + + + Une crosse compensatrice rduit le recul. + + + Crosse compensatrice + + + L'installation d'une crosse plus moderne et confortable simplifie le maniement de l'arme. + + + Crosse ergonomique + + + Revtement spcial qui protge l'arme contre les lments. + + + Revtement anticorrosion + + + L'installation d'un compensateur de recul mercure dans la crosse de l'arme permet d'absorber une partie du recul lors du tir. + + + Compensateur de recul mercure + + + Un contrepoids dplacement libre absorbe une partie du recul lors du tir en s'loignant de la culasse. + + + Contrepoids libre + + + L'utilisation de matriaux diffrents permet de rduire l'usure du canon, ce qui amliore la cadence de tir. + + + Alliages rsistants longue dure de vie + + + Cette modification permet de protger l'arme des effets de la temprature extrieure lors du tir. + + + Manchon de rgulation thermique + + + Le rainurage du canon requiert une trs grande prcision pour viter la cration de points de surchauffe sur sa longueur. + + + Rainurage extrieur du canon + + + Remplacement du canon par une version plus moderne, ce qui permet d'amliorer la prcision de l'arme. + + + Modification de la gomtrie du canon + + + Chssis onreux qui garantit l'arme une longue dure de vie. + + + Chssis en titane + + + Ce chssis est plus fiable que ceux en matriaux composites. + + + Chssis en acier + + + Le remplacement du chssis du pistolet par un autre plus lger n'affecte en rien sa fiabilit. + + + Chssis de pistolet en polymres + + + L'installation d'une crosse plus moderne et confortable simplifie le maniement de l'arme. + + + Crosse ergonomique + + + Une crosse compensatrice rduit le recul. + + + Crosse compensatrice + + + Des volets de protection protgent l'arme contre la poussire et les chocs. + + + Volets de protection + + + Des modifications apportes l'arrire de l'arme permettent d'obtenir une forme plus ergonomique. + + + Crosse section droite + + + Le fait de pouvoir modifier la longueur de la crosse garantit une meilleure prise en main de l'arme. + + + Crosse ajustable + + + Cette modification n'est possible que si un ressort rcuprateur a t install dans la crosse. + + + Composant compensateur du ressort rcuprateur + + + Le fait de pouvoir modifier la forme de la crosse garantit une meilleure prise en main de l'arme. + + + Crosse modulable + + + Ce manchon permet de protger contre l'usure les armes utilises frquemment. + + + Manchon en acier perfor + + + Systme d'absorption du recul bien plus sophistiqu que ce qui est habituellement utilis dans les armes automatiques classiques. + + + Frein de bouche compensation effective + + + Canon adapt aux tirs de prcision trs longue porte. + + + Canon lourd rayures polygonales + + + Le rainurage longitudinal permet d'viter la surchauffe et la contamination par la poussire du canon. + + + Rainurage longitudinal du canon + + + Cache-flammes et silencieux intgr, essentiels pour les tirs discrets. + + + Silencieux intgr + + + L'installation d'un canon rayures sinusodales sur les armes d'assaut s'effectue en gnral pour amliorer la cadence de tir. + + + Canon rayures sinusodales + + + Injecteur de premire gnration dvelopp par l'un des instituts de recherche de Kiev. Injecte des doses minimes d'adrnaline dans le sang intervalles rguliers, ce qui peut tre dangereux sur le long terme, mais peut galement vous sauver la vie dans une situation extrme. + + + Injecteur d'adrnaline "Furie" + + + Systme de neutralisation des poissons base de filtres purificateurs. + + + Systme de neutralisation des poisons + + + Conu par Firmament, cet metteur d'ondes permet d'acclrer la vitesse de coagulation lorsqu'il est constamment port sur le dos. + + + Hmostimulateur Ray + + + La circulation de charges lectrostatiques la surface de la combinaison permet de repousser les particules radioactives et chimiques. + + + Systme anti-poussire intgr + + + Injecteur de seconde gnration qui injecte automatiquement un agent coagulateur lorsque la pression sanguine chute rapidement. + + + Injecteur coagulant "Hydra" + + + Ce systme rduit la fatigue en maintenant une temprature corporelle idale. + + + Systme thermorgulateur + + + Cet metteur d'ondes install sur la poitrine accrot nettement la vitesse de coagulation, stimule le systme immunitaire et rduit les sensations de douleur du porteur. + + + Biostimulateur "Soleil" + + + Cet onduleur scientifique a t conu pour permettre le travail dans des zones bombardes d'missions psi. + + + Stimulateur psi Oracle + + + Injecteur de troisime gnration qui introduit dans le flux sanguin un cocktail de substances douteuses qui acclrent la rgnration des tissus et la suppression de la douleur. + + + Systme rgnrateur "Phnix" + + + Systme intgral qui contrle les paramtres vitaux du porteur et fournit, si besoin, vitamines, adrnaline ou analgsiques. + + + Systme de survie + + + Cet onduleur s'installe sur le cou. En dpit de ses mcanismes et modes de fonctionnement peu clairs, il a un effet calmant intense. + + + Neurostimulateur "Rflexion" + + + Le compensateur du percuteur absorbe une partie du recul, ce qui rduit la dispersion lors des tirs en rafales. + + + Compensateur de percuteur + + + Modification simple et populaire, qui consiste rduire la duret de la dtente. + + + Dtente souple + + + La slection et le remplacement des pices de l'arme par leur quivalent en matriaux composites sont peut-tre onreux, mais allongent nettement sa dure de vie. + + + Composants en matriaux composites + + + Augmente la cadence de tir, au dtriment de la prcision et de la fiabilit. + + + Dispositif de temporisation force de la dtente + + + La suppression du ressort rcuprateur permet de tirer la premire balle une demi-seconde plus tt. C'est peu, mais largement suffisant pour vous sauver la vie. + + + Suppression du ressort + + + Un mlange protecteur rend les enrayages du mcanisme de tir quasiment impossibles. + + + Pulvrisation du mcanisme de tir + + + L'emboutissage des pices du mcanisme de tir permet d'augmenter la charge et donc la cadence de tir. + + + Emboutissage des mcanismes de tir + + + Ce systme impact rduit perce le culot de la cartouche l'aide d'un percuteur spcial, au lieu de le frapper, ce qui adoucit considrablement le cycle de tir. + + + Systme de tir sans impact + + + La dtente est arme par le tir de la premire balle, les suivantes tant tires en mode automatique. + + + Mcanisme de tir double dtente + + + Modification simple et populaire, qui consiste rduire la duret de la dtente. + + + Dtente souple + + + Armer partiellement l'arme permet d'effectuer un tir plus prcis. + + + Mcanisme de tir pr-armement + + + Permet d'appliquer exactement la mme pression sur la dtente, du premier tir au dernier, ce qui rend l'arme bien plus facile utiliser. + + + Dtente simplifie + + + Modification moderne qui vite le dtachement de la culasse. + + + Queue de dtente renforce + + + Mcanisme de tir modulaire maintenance et remplacement simplifis, qui facilite grandement l'emploi de l'arme. + + + Mcanisme de tir modulaire + + + La rduction de la pression ncessaire sur la dtente permet d'effectuer des tirs bien plus prcis. + + + Composant d'armement + + + Nouvelle technologie qui permet, par un simple ajustement, de changer le mode du mcanisme de tir et amliore donc l'ergonomie et la facilit d'utilisation de l'arme. + + + Platine DASA + + + Une fois la premire balle tire, le mouvement de la dtente ncessaire pour le tir suivant est rduit de moiti. + + + Mcanisme de tir mouvement de dtente raccourci + + + L'ajout de servomoteurs supplmentaires permet d'augmenter la charge maximale. + + + Servomoteurs supplmentaires + + + Ce dispositif injecte des anti-inflammatoires et des antittaniques. + + + Systme intgr "Mdecin de campagne" + + + Systme de ventilation de combinaison avec filtre pour le travail en environnement contamin. + + + Systme thermorgulateur intgr + + + L'ajout d'attaches ergonomiques la combinaison permet de rduire le poids subjectif de la charge emporte. + + + Veste de distribution du poids + + + Une bombonne d'oxygne est toujours conseille pour les oprations en environnements contamins par des particules radioactives ou chimiques. + + + Bombonne d'oxygne + + + Installation d'une poche artefact supplmentaire. + + + Poche artefact supplmentaire + + + Diffrentes poches et attaches permettent de mieux rpartir le poids de l'quipement emport. + + + Systme de distribution du poids + + + Une armature rigide permet de rduire la charge sur les paules et de la rpartir sur tout le corps, ce qui augmente la capacit d'emport. + + + Armature de distribution du poids + + + Dispositif qui fournit antiseptiques, antittaniques et autres substances stimulantes. D'origine artisanale, mais fonctionne correctement. + + + Systme de soins intgr + + + Ce dispositif utilise l'lectricit statique pour contrebalancer les effets des anomalies. + + + Systme de contremesures lectroniques "Manta" + + + Cette couche interne protge contre les produits chimiques. + + + Couche interne de protection contre les substances chimiques + + + Modle exprimental. N'a jamais t utilis en dehors de la Zone en raison de son prix prohibitif et de son utilit douteuse. + + + Systme intgr "Athlte" + + + Ce dispositif neutralise les poisons l'aide de condensateurs de surface. + + + Dispositif de neutralisation des poisons + + + Installation d'une poche artefact supplmentaire. + + + Poche artefact supplmentaire + + + Systme d'aide au combat intgr. Utilis de temps autre par les Spetsnaz. Comprend son propre module d'injection d'agents coagulateurs et d'adrnaline. + + + Systme de survie "Varyag" + + + Pour ce systme de survie exprimental, les concepteurs ont privilgi les injections de composs coagulateurs celles d'adrnaline. + + + Systme de survie "Skif" + + + Cette modification assez onreuse est relativement courante pour les armes de dernire gnration. + + + Culasse monobloc + + + En paississant le diamtre de la culasse, la perte d'nergie est diminue, ce qui amliore la vitesse initiale des balles. + + + paississement de la culasse avec inserts synthtiques + + + Comme le nom de cette amlioration ne l'indique pas, c'est la culasse qui est remplace car elle doit rsister une cadence de tir augmente. + + + Dtente automatique rapide + + + L'vent gaz est coupl un bloc qui se dplace la mme vitesse et absorbe une partie du recul. + + + vent gaz et bloc mobile + + + L'ajout d'un second piston gaz permet de dplacer le contrepoids et compense l'impulsion du mouvement de la culasse. + + + Piston gaz supplmentaire + + + La pulvrisation d'un mlange protecteur amliore la fiabilit de l'arme et garantit son tanchit, ce qui permet d'viter une dissipation excessive de l'nergie. + + + Pulvrisation de la culasse + + + Le rainurage du rcepteur permet de rduire la friction et de limiter la contamination de la culasse par des particules. + + + Rainure longitudinale + + + La rduction du diamtre de la chambre l'aide de matriaux synthtiques augmente considrablement la vitesse de la balle. + + + Orientation de l'nergie des gaz + + + Alors qu'elle revient sa position initiale, la culasse redirige le flux d'air dans le canon, ce qui le refroidit. + + + Refroidissement forc + + + La culasse de l'arme peut coulisser le long du canon de faon empcher qu'il se relve pendant le tir. + + + Culasse coulissante + + + L'installation d'un piston gaz permet d'viter que les gaz ne pntrent dans la culasse, ce qui rduit nettement l'encrassage de l'arme. + + + Piston gaz + + + Ce systme rcupre une partie des gaz dans la culasse pour amliorer son mouvement. + + + Systme d'emprunt de gaz + + + Remplacement du rcuprateur de gaz par une version plus courte, ce qui amliore considrablement la cadence de tir. + + + Rduction du mouvement du piston + + + Souvent utilis dans les armes modernes, ce systme de verrouillage par galets permet de rduire le recul et la dispersion. + + + Systme galets avec verrouillage partiel de la culasse + + + En absorbant une partie de la chaleur, ces composants rduisent les changements de temprature lors du tir. + + + Composants absorbeurs de chaleur + + + L'allongement du mouvement du piston de rcupration des gaz accrot la longueur de l'arme, mais aplatit nettement la trajectoire des balles. + + + Allongement du mouvement du piston + + + Amortisseur de pices mobiles qui distribue le recul dans toute l'arme afin de le limiter. + + + Amortisseur spcial de pices mobiles + + + Le refroidissement symtrique du canon s'effectue grce un jecteur qui empche toute surchauffe. + + + Systme de refroidissement rparti + + + Augmente la cadence de tir sans surcharger les autres pices mobiles avec du recul supplmentaire. + + + Culasse mobile + + + Amliore la trajectoire de la balle et donc sa vitesse grce un meilleur transfert de l'impulsion initiale. + + + Systme de fermeture de la culasse et du canon + + + Diminue le recul en ralentissant le mouvement du bloc-culasse. + + + Ralentisseur de culasse + + + La pulvrisation d'un mlange protecteur sur la culasse prolonge sa dure de vie. + + + Pulvrisation de la culasse + + + Amliore la trajectoire de la balle et donc sa vitesse grce un meilleur transfert de l'impulsion initiale. + + + Systme de fermeture en biais du canon + + + Une culasse plus lourde et hermtique permet de limiter les risques d'enrayage. + + + Verrou hermtique renforc + + + Petit amortisseur qui absorbe une partie du recul. + + + Amortisseur de recul en polymre + + + L'utilisation d'un insert en acier permet de rduire le recul. + + + Insert obturant rainure spirale + + + L'augmentation du mouvement du verrou et le renforcement du mcanisme de retour permettent d'amliorer la vitesse initiale. + + + Amplificateur de mouvement du verrou + + + La rduction du mouvement du verrou permet d'augmenter la cadence de tir sans sacrifier la vitesse initiale. + + + Rducteur de mouvement du verrou + + + Un canon plus long permet d'augmenter la vitesse initiale de la balle. + + + Canon long + + + Remplacement du rcuprateur de gaz par une version plus courte, ce qui augmente considrablement la cadence de tir. + + + Rcuprateur d'nergie courte amplitude + + + Ajout d'un module qui rduit nettement la dispersion sans nuire la cadence de tir. + + + Module de retour deux ressorts combins + + + Ajout d'ouvertures de compensation pour rduire le recul de faon significative. + + + Canon compensateur intgr + + + Modification des pices mobiles du pistolet pour permettre un tir automatique complet. + + + Mode de tir : tir automatique + + + Modification des pices mobiles du pistolet pour permettre un tir en rafales courtes. + + + Mode de tir : rafales de trois coups + + + Cot + + + Ne peut pas tre install + + + Install + + + Voulez-vous vraiment installer : + + + Systme d'acquisition de cible automatique + + + Systme d'acquisition de cible automatique + + + Lunette optique x5 + + + Lunette optique x6 + + + Dtecteur infrarouge + + + Poids de l'armure + + + Dispositif de vision nocturne de seconde gnration + + + Dispositif de vision nocturne de troisime gnration + + + Monture lunette optique + + + Silencieux intgr + + + Lance-grenades sous le canon + + + Soin des blessures + + + Rgnration + + + Dispositif de vision nocturne de premire gnration + + + Viseur ajustable + + + Viseur contraste lev + + + Acclrateur de servomoteurs + + + Rsistance de la combinaison + + + Le mode de fonctionnement de cette arme est inconnu. Elle ne pourra pas tre rpare sans informations complmentaires sur son utilisation. + + + Le technicien ne peut pas effectuer cette modification. + + + Cet lment a dj t modifi. + + + Fonds insuffisants + + + N'utilise pas de grenaille. + + + Mode de tir : automatique + + + Mode de tir : rafale de 3 balles + + + Nombre de conteneurs + + + le technicien a besoin de vodka + + + le technicien a besoin d'outils rudimentaires + + + le technicien a besoin d'outils de prcision + + + le technicien a besoin d'outils de calibrage + + + le technicien a besoin de donnes supplmentaires + + + modifications pralables ncessaires + + + Film protecteur Armadillo compos de cristaux de saphir + + + Matrice renforce en titane et bryllium + + + Film de fibre de carbone + + + Sous-couche en caoutchouc + + diff --git a/gamedata/configs/text/fra/st_land_names.xml b/gamedata/configs/text/fra/st_land_names.xml new file mode 100644 index 0000000..78a5e66 --- /dev/null +++ b/gamedata/configs/text/fra/st_land_names.xml @@ -0,0 +1,171 @@ + + + + Griffe (anomalie) + + + Fort de Fer (anomalie) + + + Scierie + + + Station-relais de Krug + + + Station de traitement des dchets + + + Soleil (anomalie) + + + Poste des rangers + + + Skadovsk + + + Ferme brle + + + Bouilloire (anomalie) + + + Marais + + + Izumrudnoye + + + Chevtchenko + + + Station de dragage + + + Grues + + + Pinchne (anomalie) + + + Station-essence + + + Vieille pniche + + + Balafre (anomalie) + + + Pont de Preobrazhensky + + + Plateau sud + + + Ateliers du poste lectrique + + + Tas de cendres (anomalie) + + + Tour de refroidissement + + + Poste lectrique + + + Plavni (anomalie) + + + Cimenterie + + + Kopachy + + + Yanov + + + Carrire + + + Bunker des scientifiques + + + Complexe Volkhov AA + + + Bosquet anormal + + + Parking + + + Poste de contrle + + + Puits bitume (anomalie) + + + Tunnel est + + + Entrept + + + Systme d'aration + + + Hliports + + + Bain de bton (anomalie) + + + Usine de Jupiter + + + Salle de cinma Prometheus + + + Port fluvial + + + Ancien centre de service + + + cole + + + Hpital + + + Centre de service Yubileiny + + + Laverie + + + Maternelle + + + Complexe rsidentiel + + + picerie + + + Grand magasin + + + Librairie + + + Volcan (anomalie) + + + Liane (anomalie) + + diff --git a/gamedata/configs/text/fra/st_mp_mapdesc.xml b/gamedata/configs/text/fra/st_mp_mapdesc.xml new file mode 100644 index 0000000..cda5272 --- /dev/null +++ b/gamedata/configs/text/fra/st_mp_mapdesc.xml @@ -0,0 +1,126 @@ + + + + Gare routire + + + Un endroit trs trange. Ce btiment silencieux abrite son lot de secrets, mais les stalkers y sont attirs pour une autre raison : la grande quantit d'artefacts que l'on peut y trouver. Agissez vite et la chance sera forcment au rendez-vous ! + + + Un endroit trs trange. Ce btiment silencieux abrite son lot de secrets, mais les stalkers y sont attirs pour une autre raison : la grande quantit d'artefacts que l'on peut y trouver. + + + Dpt de bus l'entre de la Zone. Les tracteurs, bus et camions ne sont plus utiliss depuis bien longtemps... Aucun artefact n'y a encore t trouv, mais l'endroit est apprci des pillards, qui y pourchassent les bleus et les tuent pour voler leur butin. Restez couvert dans les btiments et les vhicules et prenez garde aux ennemis sur les toits ! + + + Dpt de bus l'entre de la Zone. Les tracteurs, bus et camions se sont plus utiliss depuis bien longtemps... + + + Dpt dsert et territoire adjacent. En cherchant bien, il est possible d'y trouver de l'quipement et des provisions, mais attention aux anomalies mortelles et aux snipers ! Le toit du dpt offre une vue imprenable sur les alentours. + + + Dpt dsert et territoires adjacents. Attention aux anomalies mortelles et aux snipers ennemis ! + + + Un endroit nigmatique. Ce rservoir a t construit pour y mener des recherches sur quelqu'un ou quelque chose, mais l'objectif exact reste un mystre. Comme il ne contient aucun artefact, les stalkers n'y sont attirs que par les tranges appareils qui s'y trouvent encore. Surveillez les toits et prenez garde aux secteurs les plus radioactifs ! + + + Un endroit nigmatique. Ce rservoir a t construit pour y mener des recherches sur quelqu'un ou quelque chose, mais l'objectif exact reste un mystre. + + + Ce secteur dangereux de la Valle obscure comprend une longue rue et un institut en ruine. Qui sait ce qu'on y enseignait... La seule chose que l'on peut apprendre ici maintenant, c'est l'art de la survie ! Oh et surveillez bien les toits... + + + Ce secteur dangereux de la Valle obscure comprend une longue rue et un institut en ruine... + + + Cette usine dsaffecte est la tombe d'un nombre incalculable de stalkers. Des dizaines d'anomalies attendent les visiteurs qui y viennent en nombre, attirs par ses vastes rserves d'artefacts. Attention aux radiations ! + + + Cette usine dsaffecte est la tombe d'un nombre incalculable de stalkers. + + + La caserne de pompiers dont les membres sont intervenus lors de la catastrophe de la centrale de Tchernobyl en 1986. La tour constitue un excellent point d'observation et surplombe les alentours. Peu de gens osent s'aventurer dans les tages suprieurs et le sous-sol du btiment. Depuis quelque temps, c'est un lieu stratgique que convoitent les diffrentes factions de la Zone. + + + La caserne de pompiers dont les membres sont intervenus lors de la catastrophe de la centrale de Tchernobyl en 1986. Elle constitue une excellente position tactique. + + + norme dcharge comprenant de gigantesques tas de matriel radioactif, des grues et d'autres quipements dfectueux abandonns aprs la catastrophe de 1986. On y trouve galement des btiments dsaffects et un norme hangar. La proximit du Cordon et une relative abondance d'artefacts attirent de nombreux stalkers. + + + norme dcharge comprenant de gigantesques tas de matriel radioactif et d'quipements abandonns aprs la catastrophe de 1986. + + + Petit quartier de l'nigmatique ville de Limansk. Des immeubles rsidentiels spars par un btiment inachev. Quand plusieurs artefacts de grande valeur ont t trouvs ici, la nouvelle s'est propage comme un feu de paille. Les rares voies d'accs Limansk ont t prises d'assaut et les combats n'ont pas cess depuis. + + + Petit quartier de l'nigmatique ville de Limansk. Des immeubles rsidentiels spars par un btiment inachev. + + + Village abandonn au milieu de la Zone. On y trouve quelques btiments dserts, un petit lac d'eau huileuse et de nombreux vhicules rouills. Attention aux snipers, mais n'oubliez pas que la Zone rcompense les stalkers tmraires ! + + + Village abandonn au milieu de la Zone. On y trouve quelques btiments dserts, un petit lac d'eau huileuse et de nombreux vhicules rouills. + + + Base militaire abandonne, avec camions et blinds rouills, quartier-gnral dsaffect et casernes dsertes. Mais les apparences sont trompeuses : artefacts et ennemis y abondent. + + + Base militaire abandonne, avec camions et blinds rouills, quartier-gnral dsaffect et casernes dsertes. + + + Ce vieux village est vraiment sinistre. Si vous tes assez courageux pour y entrer, attendez-vous devoir esquiver les balles ! Il n'y a nulle part o se cacher et vous devrez compter sur votre lunette et votre silencieux ! + + + Ce vieux village est vraiment sinistre. Vous tes arriv bon port, mais ce n'est pas le moment de se reposer ! + + + On dirait davantage un bain de sang qu'une piscine. Les chos des tirs, des explosions et des cris des mourants hantent ces couloirs carrels... Peu de stalkers savent comment atteindre cet endroit et encore moins comment en repartir en vie. + + + On dirait davantage un bain de sang qu'une piscine. Les chos des balles et des explosions hantent ces couloirs carrels... + + + Petite gare prs de l'usine de Rostock. + + + Petite gare prs de l'usine de Rostock, aux rails rouills et aux locomotives jamais en retard sur l'horaire. Les nombreux artefacts qu'on y trouve attirent des stalkers venus de tous les coins de la Zone. + + + Une base de rparation proximit d'un petit village. Tous les vhicules en tat de marche ont t rquisitionns l'poque de la catastrophe de Tchernobyl. Ceux qui restaient ont t dsosss. Marcages et roseaux contamins font de cet endroit un lieu dangereux qui recle nanmoins des trsors pour le stalker chanceux. + + + Une base de rparation proximit d'un petit village. Marcages et roseaux contamins font de cet endroit un lieu dangereux... + + + Des tas de mtal rouillent derrire des murs de bton. la fin du sicle dernier, l'usine fonctionnait plein rgime, au rythme des slogans socialistes aboys par les haut-parleurs, mais le btiment a t abandonn depuis bien longtemps. + + + Vieille usine abandonne : il n'en reste que des piles de mtal derrire des murs de bton. + + + Le centre sportif de Pripyat, non loin de l'cole abandonne. Les sports pratiqus ici et le nombre de participants ont bien chang depuis 1986. Les stalkers qui s'y rendent sont attirs par la gloire, le butin et les artefacts... et y restent parfois pour l'ternit. + + + Le centre sportif de Pripyat, non loin de l'cole abandonne. + + + Un endroit bien trange. Beaucoup se raillent des stalkers affirmant l'avoir vu, mais cet endroit existe vraiment. Des anomalies gravitationnelles ont dchiquet le sol pour crer un paysage lunaire. Le secteur est domin par trois gigantesques tours, du matriel militaire abandonn et des lots de terre arrachs au sol. + + + Un endroit bien trange. Des anomalies gravitationnelles ont dchiquet le sol pour crer un paysage lunaire... + + + Cette zone constituait les abords de l'usine de Rostock avant que le Devoir ne s'y installe. Un endroit trange qui regorge d'artefacts. Chaque hangar ou entrept vide recle de nombreux dangers mortels. Soyez trs prudent et gardez un il sur la tour blanche... + + + Cette zone constituait les abords de l'usine de Rostock avant que le Devoir s'y installe. Un endroit trange qui regorge d'artefacts. + + + Peu nombreux sont ceux qui osent s'aventurer dans la ville fantme de Pripyat, ancien lieu de rsidence des employs de la centrale. Mais, rcemment, le calme des rues de la ville morte a t troubl par des changes de tirs entre le cinma Prometheus, l'embarcadre et les maisons de la rue Kurchatova. + + + Le quartier de Pripyat entre le cinma Prometheus, l'embarcadre et la rue Kurchatova est le thtre d'affrontements acharns entre ceux qui sont parvenus atteindre la ville morte. + + diff --git a/gamedata/configs/text/fra/st_mp_speechmenu.xml b/gamedata/configs/text/fra/st_mp_speechmenu.xml new file mode 100644 index 0000000..46c4686 --- /dev/null +++ b/gamedata/configs/text/fra/st_mp_speechmenu.xml @@ -0,0 +1,57 @@ + + + + Tout le monde, l'attaque ! + + + Je vais rcuprer l'artefact ! Couvrez-moi ! + + + Suivez-moi ! + + + Protgez l'artefact pour l'instant ! Ne le prenez pas encore ! + + + Je tiens ma position ! + + + Tenez vos positions ! + + + Prenez l'artefact ! Je vous couvre ! + + + J'ai besoin d'aide ! + + + Je n'ai pas assez d'argent ! Achetez-moi de l'quipement ! + + + Non. + + + Personne en vue ! + + + Au rapport, maintenant ! + + + Repliez-vous ! + + + Rapportez l'artefact ! + + + Compris ! + + + Silence ! + + + Restez groups ! + + + Prenez l'artefact ! + + diff --git a/gamedata/configs/text/fra/st_mp_teamdesc.xml b/gamedata/configs/text/fra/st_mp_teamdesc.xml new file mode 100644 index 0000000..7b34e83 --- /dev/null +++ b/gamedata/configs/text/fra/st_mp_teamdesc.xml @@ -0,0 +1,15 @@ + + + + Les anarchistes de la Zone. Ils considrent que la Zone est un vritable sanctuaire et que les lois, conventions et rgles du monde extrieur n'y ont pas cours. Leur devise : "Fais ce que tu veux et occupe-toi de tes oignons". La Libert essaie d'empcher les autorits de prendre le contrle de la Zone et est en guerre contre les mercenaires. Ses membres sont principalement quips d'armes russes ou sovitiques. + + + Faction de la libert (stalkers indpendants) + + + Ces aventuriers sans scrupules viennent du monde entier et acceptent toutes les missions, mme les plus hasardeuses. Leur devise est bien videmment "l'argent n'a pas d'odeur". Ils se battront pour le contrle des champs d'artefacts tant qu'il y aura une demande. Leur quipement est principalement d'origine occidentale. + + + Faction des mercenaires (Coupe-jarrets) + + diff --git a/gamedata/configs/text/fra/st_quests_general.xml b/gamedata/configs/text/fra/st_quests_general.xml new file mode 100644 index 0000000..baed1c8 --- /dev/null +++ b/gamedata/configs/text/fra/st_quests_general.xml @@ -0,0 +1,18 @@ + + + + Attention ! Dbut de l'mission dans : + + + Mettez-vous immdiatement couvert pour vous protger de l'mission. + + + Ne quittez pas votre abri pendant une mission. + + + Emission : se mettre couvert + + + Emission : rester couvert + + diff --git a/gamedata/configs/text/fra/st_quests_jupiter.xml b/gamedata/configs/text/fra/st_quests_jupiter.xml new file mode 100644 index 0000000..30b885d --- /dev/null +++ b/gamedata/configs/text/fra/st_quests_jupiter.xml @@ -0,0 +1,687 @@ + + + + Dettes : apporter l'argent aux bandits. + + + Vano a achet aux bandits une combinaison qu'il ne peut pas payer car les intrts sont trop levs. Il vous a demand de vous occuper du problme. + + + Dettes : retourner auprs de Vano. + + + Expliquez Vano comment s'est droul le remboursement de sa dette. + + + Dettes : liminer les bandits. + + + L'acquittement des dettes de Vano a mal tourn. liminez les bandits. + + + Otage : demander votre rcompense aux amis de Mitay + + + Mitay est libre. Retrouvez ses amis au bar pour recevoir votre rcompense. + + + Otage : librer Mitay. + + + Otage : demander Grizzly s'il est prt. + + + Vous devez parler Grizzly avant de tenter de librer l'otage. + + + Otage : librer Mitay par la force. + + + liminez les bandits pour librer un stalker nomm Mitay. + + + Otage : rejoindre les stalkers. + + + Les stalkers vont vous aider librer l'otage. Vous devez les rejoindre au milieu de la nuit pour attaquer les bandits. + + + Otage : proposer une ranon pour la libration de Mitay. + + + Proposez de payer une ranon au chef des bandits pour librer le stalker Mitay. + + + Librez le stalker Mitay qui a t pris en otage par les bandits. + + + Otage : sortir Mitay du camp des bandits. + + + Le camp des bandits est trop dangereux. Escortez Mitay hors du camp. + + + Otage : parler Mitay. + + + Mitay est en scurit. Parlez-lui de la prochaine tape du plan. + + + La route de Pripyat : parler du passage souterrain au technicien. + + + Les documents que vous avez trouvs indiquent qu'il existe un passage souterrain menant Pripyat sous l'usine de Jupiter. Ce passage souterrain est priv d'lectricit et rempli d'un gaz. L'entre a t bloque. Vous devez trouver un technicien capable d'activer le gnrateur et d'ouvrir l'entre du passage. + + + Le module de mmoire est entre des mains expertes. Vous devez attendre qu'il soit dbloqu. + + + Drone : dbloquer le module de mmoire. + + + Drone : rcuprer le module de mmoire auprs de Nitro. + + + Drone : rcuprer le module de mmoire auprs de Novikov. + + + Nitro a dbloqu le module de mmoire. Rcuprez-le pour voir quelles informations il contient. + + + Novikov a dbloqu le module de mmoire. Rcuprez-le pour voir quelles informations il contient. + + + Vous avez russi rcuprer le module de mmoire du drone. Pour avoir accs aux donnes qu'il contient, vous devez le faire dbloquer. + + + Drone : attendre que le module de mmoire soit dbloqu. + + + Oasis : rassembler des preuves. + + + L'Oasis a t dcouverte et possde effectivement des proprits curatives. Rassemblez des preuves et remettez-les aux scientifiques. + + + L'Oasis : rapporter les preuves aux scientifiques. + + + L'Oasis a t dcouverte et possde effectivement des proprits curatives. Vous devez rapporter l'artefact que vous avez trouv aux scientifiques pour leur prouver l'existence de l'Oasis. + + + L'Oasis : vrifier la vracit de la lgende. + + + Le scientifique du bunker Ozersky vous a demand de retrouver l'Oasis, un lieu lgendaire de la Zone. Selon la rumeur, on y trouverait des eaux aux proprits curatives, mais personne ne sait si elle existe vraiment. + + + Kopachy : accompagner Oncle Yar. + + + Oncle Yar a besoin d'aide. Accompagnez-le jusqu'au village de Kopachy. + + + Kopachy : liminer les mercenaires. + + + Oncle Yar semble avoir anticip l'arrive des mercenaires. Vous devez les liminer. + + + Kopachy : rester aux cts d'Oncle Yar. + + + Oncle Yar vous a demand de rester ses cts et d'tre discret. + + + Kopachy : parler Oncle Yar. + + + Les mercenaires sont morts. Vous devriez demander des explications Oncle Yar. + + + missions psi intermittentes : apporter la formation anormale aux scientifiques. + + + Rapportez l'chantillon que vous avez prlev Hermann. Il s'agit d'un objet partiellement transform par une anomalie. Il est probablement la source des missions psi intermittentes. + + + missions psi intermittentes : enquter sur la source. + + + Fouillez le tunnel la recherche d'une formation anormale. Les scientifiques pensent que le champ psi intermittent provient d'une source qui prend probablement la forme d'un artefact. + + + missions psi intermittentes : rejoindre le groupe de Topol. + + + Le groupe de Topol s'est rendue dans le tunnel d'o proviennent les missions psi intermittentes et vous attend sur place. + + + missions psi intermittentes : parler Topol. + + + Rejoignez l'unit de Topol pour aller au tunnel d'o proviennent les missions psi intermittentes. Les stalkers surveilleront le tunnel pendant que vous ferez vos recherches pour les scientifiques. + + + Rapportez le matriel radio que vous avez trouv Nitro. + + + Nitro a besoin de matriel radio. Vous pouvez lui donner ce que vous avez dj ou en trouver davantage. + + + quipement radio : trouver du matriel pour Nitro. + + + Nitro a besoin de matriel radio. Il vous a conseill d'en chercher dans la cimenterie. + + + Vol : trouver le voleur. + + + Demandez aux stalkers de Yanov s'ils savent qui aurait pu drober des objets dans une cantine personnelle. + + + Vol : fouiller le poste lectrique. + + + Vous devez fouiller le poste lectrique ; c'est l'endroit vers lequel s'est dirig le stalker souponn du vol. + + + Vol : rcuprer vos affaires. + + + Tous les objets qu'Accroc a drobs devraient se trouver dans sa planque, dans les gouts derrire le poste lectrique. + + + Plante anormale : prlever un chantillon de la plante. + + + Une zone de vgtation anormale a fait son apparition prs de la carrire. Ozersky vous a demand de prlever un chantillon de plante pour ses recherches. + + + Plante anormale : donner l'chantillon Ozersky. + + + Vous devez rapporter l'chantillon vgtal Ozersky. En change, il convaincra Hermann de vous remettre une combinaison scientifique. + + + Chasse : liminer les mutants non identifis. + + + Un groupe des stalkers a dcouvert des mutants non identifis dans les tunnels au nord de l'usine de Jupiter. Explorez la zone et liminez les mutants. + + + Chasse : rcuprer la rcompense que Trappeur vous avait promise si vous liminiez les mutants du tunnel. + + + Les mutants terrs dans les tunnels au nord de l'usine de Jupiter ont t limins. Informez-en le Trappeur et rcuprez votre rcompense. + + + Hypothse : placer le dtecteur au centre du glissement de terrain. + + + Placez le dtecteur au centre du glissement de terrain pour tester l'hypothse d'Ozersky. + + + Hypothse : attendre la fin de l'exprience. + + + Le dtecteur est dsormais actif et a commenc enregistrer une prsence mutante. Attendez que le dispositif ait rassembl assez de donnes pour confirmer ou infirmer l'hypothse d'Ozersky. + + + Hypothse : rcuprer le dtecteur. + + + Vous avez assez de donnes pour confirmer l'hypothse d'Ozersky. Rcuprez le dtecteur. + + + Thorie : remettre le dtecteur Ozersky. + + + Remettez le dtecteur Ozersky. Les donnes rcupres devraient suffire confirmer son hypothse. + + + Chasse : tuer les sangsues du marais. + + + Un groupe de sangsues du marais a t repr dans la Tourbire, derrire la cimenterie. Les stalkers du coin vous ont demand de les liminer. + + + Chasse : rcuprer la rcompense que Trappeur vous avait promise si vous liminiez les sangsues du marais. + + + Vous avez limin les sangsues du marais. Allez rcuprer la rcompense offerte par les stalkers du coin auprs de Trappeur. + + + Chasse nocturne : tuer la chimre. + + + La chimre est un prdateur nocturne dont personne ne sait o elle se terre quand vient le jour. Vous devez la tuer de nuit, lorsqu'elle sort pour chasser prs du systme d'aration. + + + Chasse nocturne : informer Trappeur de la mort de la chimre. + + + La chimre est morte et le chasseur Renard a t veng. Informez-en le Trappeur. + + + Outils : apporter les outils Nitro. + + + Nitro vous a demand de lui apporter deux jeux d'outils : un pour raliser des tches simples et un autre pour le travail de prcision. Le technicien vous paiera et sera en mesure d'effectuer des modifications d'armes et d'armures plus complexes. + + + Outils : apporter les outils Nitro. + + + Nitro vous a demand de rcuprer deux jeux d'outils : un pour effectuer des tches simples et un autre pour les oprations de calibrage. Le technicien vous paiera et sera en mesure d'effectuer des modifications d'armes et d'armures plus complexes. + + + Outils : apporter les outils Nitro. + + + Nitro vous a demand de rcuprer un jeu d'outils rudimentaires. Le technicien vous paiera et sera en mesure d'effectuer des modifications d'armes et d'armures plus complexes. + + + Outils : apporter les outils Nitro. + + + Nitro vous a demand de rcuprer deux jeux d'outils : un pour le travail de prcision et un autre pour les oprations du calibrage. Le technicien vous paiera et sera en mesure d'effectuer des modifications d'armes et d'armures plus complexes. + + + Outils : apporter les outils Nitro. + + + Nitro vous a demand de rcuprer un jeu d'outils de prcision. Le technicien vous paiera et sera en mesure d'effectuer des modifications d'armes et d'armures plus complexes. + + + Outils : apporter les outils Nitro. + + + Nitro vous a demand de rcuprer un jeu d'outils de calibrage. Le technicien vous paiera et sera en mesure d'effectuer des modifications d'armes et d'armures plus complexes. + + + Outils : apporter les outils Nitro. + + + Nitro vous a demand de rcuprer trois jeux d'outils : des outils rudimentaires, des outils de prcisions et des instruments de calibrage. Le technicien vous paiera et sera en mesure d'effectuer des modifications d'armes et d'armures plus complexes. + + + Pripyat 1 : trouver une combinaison quipe d'un module respiratoire en circuit ferm. + + + Vous aurez besoin d'une combinaison quipe d'un module respiratoire en circuit ferm pour entrer dans le passage souterrain Pripyat 1 qui est rempli de dioxyde de carbone mlang une substance inconnue. + + + Pripyat 1 : emmener Arpenteur voir Zulu. + + + Emmenez Arpenteur voir Zulu et prsentez-le comme un nouveau membre du groupe. Zulu risque de ne pas se montrer trs accueillant s'il voit arriver un combattant portant une combinaison du Monolithe. + + + Pripyat 1 : parler de la combinaison de protection Arpenteur. + + + Le passage souterrain Pripyat 1 est rempli de dioxyde de carbone mlang une substance inconnue. Dites Arpenteur qu'il aura besoin d'une combinaison quipe d'un module respiratoire en circuit ferm pour le traverser. + + + Pripyat 1 : rassembler un groupe pour aller jusqu' Pripyat. + + + Nitro a russi ouvrir l'entre du passage souterrain Pripyat 1, mais refuse de pntrer dans l'usine de Jupiter sans protection. Il vous recommande de trouver quelques hommes pour vous accompagner. Zulu est dj avec vous et vous a suggr de lui envoyer de nouvelles recrues. + + + Pripyat 1 : demander Zulu s'il souhaite aller Pripyat. + + + Nitro a russi ouvrir l'entre du passage souterrain Pripyat 1, mais refuse de pntrer dans l'usine de Jupiter sans protection. Il vous recommande de trouver quelques hommes pour vous accompagner. Il vous a suggr de parler Zulu, car ce dernier pourrait vous aider rassembler un groupe. + + + Pripyat 1 : emmener Sokolov voir Zulu. + + + Sokolov a accept de se rendre Pripyat et pourrait se procurer une combinaison de scientifique avant de quitter le bunker. Allez prsenter ce nouveau membre de l'quipe Zulu. + + + Pripyat 1 : parler de la combinaison de protection Sokolov. + + + Pripyat 1 : demander une combinaison de protection pour Sokolov Ozersky. + + + Sokolov ne voit aucun inconvnient porter une combinaison de protection scientifique, mais Hermann ne le laissera pas en emprunter une au bunker. Vous devriez en parler Ozersky ; il est plus aimable et plus abordable. + + + Pripyat 1 : parler de la combinaison scientifique Sokolov. + + + Ozersky est satisfait de l'chantillon de plante. Il vous a demand de dire Sokolov qu'il pouvait rcuprer sa combinaison scientifique auprs d'Hermann. + + + Le passage souterrain Pripyat 1 est rempli de dioxyde de carbone mlang une substance inconnue. Dites Sokolov qu'il aura besoin d'une combinaison quipe d'un module respiratoire en circuit ferm pour le traverser. + + + Pripyat 1 : obtenir de l'argent pour payer la combinaison de Vano. + + + La combinaison que Vano avait achete aux bandits tait quipe d'un module respiratoire en circuit ferm. Mais Vano a d la mettre au clou pour s'acquitter de ses dettes. Il lui faut maintenant 3000 pour la racheter. + + + Pripyat 1 : emmener Vano voir Zulu. + + + Vano a accept de se rendre Pripyat. Emmenez-le voir Zulu et prsentez-le comme un nouveau membre du groupe. Vano pourra racheter sa combinaison sur le chemin. + + + Pripyat 1 : parler de la combinaison de protection Vano. + + + Le passage souterrain Pripyat 1 est rempli de dioxyde de carbone mlang une substance inconnue. Dites Vano qu'il aura besoin d'une combinaison quipe d'un module respiratoire en circuit ferm pour le traverser. + + + Flint, aussi appel la Pie, est une ordure de premier ordre. Vous devriez le dnoncer aux stalkers de Zaton ou aux autres factions. a lui donnera une bonne leon. + + + Flint se vante des exploits d'un autre. Il mrite qu'on dnonce ses mensonges. + + + Fausses dclarations : s'occuper de Flint. + + + Flint se vante d'avoir accompli des exploits que d'autres lui ont raconts. Il doit apprendre tenir sa langue... + + + Flint ne peut pas s'empcher de se vanter. Essayez de le convaincre d'arrter... + + + Flint, aussi appel la Pie, est une ordure de premier ordre. Vous devriez le dnoncer aux stalkers de Zaton ou aux autres factions. Ce serait une douce vengeance. + + + Recherche d'anomalies : rcuprer les dtecteurs auprs du technicien. + + + Rcuprez les dtecteurs auprs de Novikov. Hermann souhaite obtenir des statistiques sur la formation des artefacts et pour cela, les dtecteurs doivent tre placs au centre de diffrentes anomalies. + + + Recherche d'anomalies : placer le dtecteur au cur de l'anomalie. + + + Recherche d'anomalies : rcuprer votre rcompense. + + + Rcuprez la rcompense qui vous a t promise si vous parveniez placer les dtecteurs au cur des anomalies. Hermann peut prsent commencer rcuprer des donnes sur la formation d'artefacts. + + + Placez le dtecteur au cur de l'anomalie. Hermann souhaite rcuprer des statistiques sur la formation des artefacts et pour cela, les dtecteurs doivent tre placs au centre de diffrentes anomalies. + + + Un contrat avec les scientifiques : apporter l'artefact Kolobok Garry. + + + Garry a besoin de l'artefact Kolobok pour remplir les conditions de son contrat avec les scientifiques. Apportez-lui cet artefact. + + + Un contrat avec les scientifiques : apporter l'artefact Morceau de viande Garry. + + + Garry a besoin de l'artefact Morceau de viande pour remplir les conditions de son contrat avec les scientifiques. Apportez-lui cet artefact. + + + Un contrat avec les scientifiques : apporter les artefacts Morceau de viande et Kolobok Garry. + + + Garry a besoin des artefacts Morceau de viande et Kolobok pour remplir les conditions de son contrat avec les scientifiques. Apportez-lui ces artefacts. + + + Un contrat avec les scientifiques : les artefacts ont t livrs. + + + Garry est en possession des deux artefacts et a honor son contrat. + + + L'histoire du Devoir : remettre le PDA du fondateur du Devoir aux personnes intresses. + + + Vous avez trouv le PDA du fondateur du Devoir, mort dans une anomalie. Vous devriez le remettre une personne intresse par les derniers instants du chef de cette faction. + + + Activit anormale : examiner le secteur l'aide d'un dtecteur amlior. + + + Les dtecteurs des scientifiques ont enregistr une activit inhabituelle au nord du bunker. Examinez le secteur l'aide d'un dtecteur amlior. + + + Protection des scientifiques : trouver des personnes fiables. + + + Le bunker des scientifiques est vulnrable. Vous devez trouver des hommes dignes de confiance pour le protger. + + + Protection des scientifiques : retourner voir Hermann pour obtenir la rcompense. + + + Vous avez trouv des gardes pour protger le bunker des scientifiques. Retournez voir Hermann pour qu'il vous remette votre rcompense. + + + Derniers dveloppements : trouver les documents dans l'usine de Jupiter. + + + Hermann s'intresse aux derniers dveloppements de l'usine de Jupiter. Trouvez les documents correspondants dans les bureaux administratifs de l'usine. + + + Derniers dveloppements : rapporter les documents Hermann. + + + Les dossiers que vous avez trouvs indiquent que tous les documents techniques ont t transfrs hors de l'usine. L'information n'est pas capitale, mais vous devriez tout de mme la transmettre Hermann. + + + Derniers dveloppements : rapporter les documents et le PDA de Black Hermann. + + + Les mercenaires ont attaqu pendant que vous cherchiez les dossiers. Selon le PDA que vous avez trouv sur Black, le chef de la bande, ils auraient t envoys pour empcher les scientifiques de mettre la main sur les documents. Mais vous avez galement dcouvert dans les dossiers que vous avez trouvs que tous les documents techniques avaient t transfrs hors de l'usine. Vous devriez transmettre cette information Hermann et lui montrer le PDA de Black. + + + Les survivants du Monolithe : demander aux habitants de Yanov de prendre les combattants du Monolithe sous leur aile. + + + Des combattants du Monolithe ont russi recouvrer leurs esprits. Ils cherchent prsent un endroit o s'abriter des missions et des mutants. Vous devez demander aux habitants de la gare Yanov s'ils sont prts les prendre sous leur aile. + + + Accompagnez les officiers de recrutement du Devoir jusqu'aux anciens membres du Monolithe. Si ces combattants acceptent de s'enrler dans le Devoir, ils pourront par la mme occasion se mettre l'abri des missions et des mutants dans la gare de Yanov. + + + Accompagnez les officiers de recrutement de la Libert jusqu'aux anciens membres du Monolithe. Si ces combattants acceptent de s'enrler dans la Libert, ils pourront par la mme occasion se mettre l'abri des missions et des mutants dans la gare de Yanov. + + + Les survivants du Monolithe : accompagner les officiers de recrutement jusqu'aux anciens combattants du Monolithe. + + + tude de l'anomalie : couvrir les stalkers. + + + L'tude de l'anomalie semble avoir attir des mutants. Couvrez les stalkers pendant qu'ils rcuprent les donnes ncessaires. + + + tude de l'anomalie : couvrir les stalkers. + + + L'tude de l'anomalie semble avoir attir les zombies de Kopachy. Couvrez les stalkers pendant qu'ils rcuprent les donnes ncessaires. + + + tude de l'anomalie : parler Hermann. + + + L'tude de l'anomalie a t effectue. Informez-en les scientifiques et rcuprez votre rcompense. + + + tude de l'anomalie : parler aux stalkers. + + + Parlez au groupe de stalkers qui doit effectuer les relevs. Vous devez choisir une anomalie. + + + tude de l'anomalie : parler aux stalkers. + + + Toutes les donnes ncessaires ont t rcupres, vous pouvez donc retourner au bunker des scientifiques avec votre groupe. + + + tude de l'anomalie : parler aux stalkers. + + + Les donnes concernant l'anomalie ont t rcupres. Vous devez prsent parler aux stalkers pour dcider de la marche suivre. + + + tude de l'anomalie : couvrir les stalkers. + + + Hermann vous a propos de protger les stalkers pendant qu'ils effectuent des relevs dans des anomalies. + + + Stingray 4 : fouiller les lieux de l'accident. + + + Stingray 4 : trouver la cause du court-circuit. + + + Fouillez les lieux de l'accident du Stingray 4. + + + Trouvez la source de la puissante dcharge lectrique qui a frapp l'hlicoptre Stingray 4. + + + Stingray 1 : apporter la bote noire un technicien pour qu'il la dcode. + + + La bote noire du Stingray 1 est intacte. Elle doit tre dcode par un technicien pour que vous puissiez accder aux informations qu'elle contient. + + + Stingray 1 : attendre que la bote noire soit dcode. + + + Nitro a accept de dcoder la bote noire, mais il lui faut trois bonnes heures. Vous allez devoir patienter. + + + Stingray 1 : retourner voir Nitro pour obtenir les informations de la bote noire. + + + Nitro doit avoir termin le dcryptage. Allez le voir pour prendre connaissance des informations que renfermait la bote noire. + + + Stingray 1 : fouiller les lieux de l'accident. + + + Fouillez le lieu de l'accident du Stingray 1. + + + Pripyat 1 : aller Pripyat. + + + Vous devez emprunter le passage souterrain Pripyat 1 pour atteindre le point d'vacuation militaire de Pripyat. + + + La route de Pripyat : fouiller l'atelier du complexe de chimie de l'usine de Jupiter. + + + L'atelier du complexe de chimie contient srement des informations concernant le passage souterrain Pripyat 1 qui a t rempli d'un gaz inconnu. + + + La route de Pripyat : fouiller les bureaux administratifs de l'usine de Jupiter. + + + Le guide ne connat aucune route sre menant Pripyat, mais vous a indiqu o vous pourriez trouver des informations sur les tunnels souterrains menant de l'usine de Jupiter la ville. Vous devriez commencer par les bureaux administratifs. + + + La route de Pripyat : fouiller le laboratoire de l'usine de Jupiter. + + + Les dossiers trouvs dans les bureaux administratifs font tat de l'vacuation de la zone de production de l'usine de Jupiter. Vous pourrez certainement rcuprer d'autres informations dans le laboratoire. + + + La route de Pripyat : examiner l'ascenseur du passage souterrain Pripyat 1. + + + L'entre du passage souterrain se trouve de l'autre ct de l'ascenseur. Examinez les lieux et rcuprez des informations concernant ce passage. + + + La route de Pripyat : fouiller la Section 1 de l'usine de Jupiter. + + + La Section 1 doit srement renfermer des informations sur le souterrain Pripyat 1. Vous devriez aller y faire un tour. + + + La route de Pripyat : fouiller le service des livraisons de l'usine de Jupiter. + + + D'aprs la note de l'atelier du labo, l'vacuation devait tre effectue par le service des livraisons. Allez donc y jeter un coup d'il. + + + La route de Pripyat : fouiller l'atelier de rparation de l'usine de Jupiter. + + + Le service des livraisons contenait des informations sur des pertes lors du transport d'un lment appel Objet 62. Selon les registres, l'atelier de rparations devait se charger du problme. Vous devriez y faire un tour. + + + La route de Pripyat : parler au guide. + + + D'aprs les enregistrements de la bote noire de l'un des hlicoptres, les units militaires devaient se diriger vers le point d'vacuation B28. Les cartes trouves dans l'autre hlicoptre participant la mission indiquent que ce point se trouve Pripyat. Il va falloir trouver un moyen de vous y rendre. Parlez-en au guide. + + + L'entrept du Devoir : prendre ce qui vous revient. + + + L'entrept du Devoir : aller voir Morgan. + + + Morgan le marchand vous a donn l'accs l'entrept du Devoir en change de votre silence concernant ses affaires. Allez le retrouver prs de la carrire comme convenu. + + + Vous devez ouvrir le portail pour continuer. + + + Vous devez ouvrir la porte pour continuer. + + + Vous devez activer l'alimentation du portail pour pouvoir continuer. + + + Vous devez dverrouiller le portail pour continuer. Pour cela, rendez-vous dans la salle de contrle. + + + Groupe de recherche : recruter des hommes de confiance + + + Un groupe de recherche qui travaillait pour les scientifiques a t tu. Vous devez recruter de nouveaux hommes afin que les recherches puissent continuer. + + + Groupe de recherche : retourner auprs d'Hermann pour obtenir la rcompense. + + + Vous avez trouv les candidats idaux pour le groupe de recherche. Retournez auprs d'Hermann pour obtenir votre rcompense. + + + Pripyat 1 : accomplir la mission d'Ozersky. + + + Vous devez mener bien la mission que vous a confie Ozersky et lui rapporter la plante anormale pour obtenir une combinaison pour Sokolov. + + + Nitro a besoin de matriel radio. Vous en trouverez dans la cimenterie. + + + C'est Flint qui a laiss Senya mourir dans une anomalie. Allez lui parler et dcouvrez les raisons de son geste. + + + Chtiment : venger Senya. + + + Trouvez celui qui a laiss Senya mourir dans une anomalie aprs s'tre empar de son artefact. Malheureusement, Senya est mort avant de pouvoir vous donner un nom. Il a cependant prcis qu'il s'agissait d'un membre de la Libert. + + + Le lieutenant colonel Shulga vous a autoris vous servir dans l'entrept du Devoir si vous parvenez en prendre le contrle. + + + Loki vous a donn l'autorisation de vous servir dans l'entrept du Devoir tant qu'il restera aux mains des combattants de la Libert. + + diff --git a/gamedata/configs/text/fra/st_quests_pripyat.xml b/gamedata/configs/text/fra/st_quests_pripyat.xml new file mode 100644 index 0000000..c883bf6 --- /dev/null +++ b/gamedata/configs/text/fra/st_quests_pripyat.xml @@ -0,0 +1,345 @@ + + + + Objet 62 : trouver les dossiers dans l'atelier de test. + + + Trouvez les documents concernant l'Objet 62. Ils devraient vous permettre de dterminer si l'arme a t utilise pour abattre les hlicoptres. + + + Arme non identifie : s'abriter dans le btiment. + + + Mettez-vous couvert dans le btiment et repoussez l'attaque du Monolithe. + + + Arme non identifie : rcuprer des informations. + + + L'arme n'est pas oprationnelle et son fonctionnement reste un mystre. Trouvez un technicien capable de dcouvrir comment elle marche. + + + Arme non identifie : tuer le chef de l'unit du Monolithe. + + + Vous devez tuer le chef de l'unit du Monolithe, celui qui utilise l'arme non identifie. + + + Arme non identifie : fouiller les cadavres des combattants du Monolithe. + + + Les combattants du Monolithe devraient tre en possession de l'arme non identifie. Trouvez-la. + + + Arme non identifie : parler Cardan. + + + Cardan ne devrait plus avoir la gueule de bois. C'est le moment de lui parler de l'arme non identifie. + + + Arme non identifie : attendre que Cardan se remette de sa cuite. + + + Cardan saura srement vous renseigner sur l'arme. Allez lui parler quand il se rveillera. + + + Fusil Gauss : parler de l'arme Kovalsky. + + + Dites Kovalsky tout ce que vous savez sur l'Objet 62. + + + Arme non identifie : rejoindre le groupe. + + + Vous devez rejoindre le groupe pour rcuprer l'arme. + + + Arme non identifie : prendre l'arme. + + + Ramassez l'arme du chef de l'unit du Monolithe. + + + Arme non identifie : remettre l'arme Kovalsky. + + + Vous avez rcupr l'arme. Apportez-la Kovalsky et dterminez si elle a t utilise pour abattre les hlicoptres. + + + Arme non identifie : participer l'embuscade du Monolithe. + + + L'unit de reconnaissance militaire s'apprte tendre une embuscade aux combattants du Monolithe. Vous devriez participer l'opration. + + + Les forces du Monolithe : rejoindre les renforts. + + + Kovalsky a envoy des renforts pour vous aider liminer les combattants du Monolithe qui se cachent dans la librairie. + + + Les forces du Monolithe : prendre le contrle de la librairie. + + + liminez tous les combattants du Monolithe cachs dans le btiment. Des units de taille importante constituent une menace pour le camp militaire. + + + Les forces du Monolithe : examiner le dispositif suspect. + + + Un trange dispositif se trouve dans le btiment. Examinez-le. + + + Labo X8 : trouver les dossiers concernant les expriences. + + + Les informations que vous avez recueillies concernent un laboratoire central, nomm X8. Il contient peut-tre des documents traitant des expriences secrtes menes dans la Zone. + + + L'unit de reconnaissance disparue : retrouver le groupe. + + + L'unit de reconnaissance envoye par Kovalsky a disparu aprs une trange communication radio. Retrouvez-la pour dcouvrir ce qui s'est pass. + + + Sentinelle disparue : fouiller l'endroit o la sentinelle a disparu. + + + La sentinelle avait un comportement trange, vous devriez mener votre enqute. + + + Sentinelle disparue : retrouver la sentinelle. + + + L'un des soldats manquait l'appel. Retrouvez-le pour dterminer la raison de sa disparition. + + + Sentinelle disparue : tuer le contrleur. + + + Un contrleur se trouvait prs de la sentinelle disparue. Il doit tre limin. + + + Interfrences radio : trouver l'unit qui a disparu. + + + L'unit partie la recherche des interfrences radio est porte disparue. Retrouvez-la. + + + Interfrences radio : fouiller les cadavres. + + + Fouillez les cadavres, vous pourrez peut-tre dterminer la cause de leur dcs. + + + Interfrences radio : fouiller le cadavre. + + + Fouillez le cadavre, vous pourrez peut-tre dterminer la cause du dcs. + + + Interfrences radio : faire sauter la porte. + + + Faites sauter la porte avec des explosifs pour pntrer dans le btiment. + + + Interfrences radio : trouver la source du bruit. + + + Un bruit provient du rfrigrateur, on dirait que quelqu'un est enferm l'intrieur. Examinez-le. + + + Interfrences radio : liminer la source des interfrences. + + + Vous avez localis la source des interfrences radio. Dtruisez-la ! + + + Interfrences radio : dtruire la source des interfrences. + + + Trouvez la source des interfrences dans le btiment. + + + Interfrences radio : trouver des explosifs. + + + L'unit charge de trouver la source des interfrences possdait des explosifs. Trouvez-les pour dgager l'entre du btiment. + + + Interfrences radio : pntrer dans l'cole maternelle. + + + La source du signal se trouve dans l'cole maternelle, vous devez donc y entrer. + + + vacuation : couvrir les militaires. + + + Strelok est mort, mais vous devez tout de mme aider les militaires atteindre les hlicoptres. + + + vacuation : couvrir Strelok. + + + Le QG est intress par les informations de Strelok. Vous devez l'escorter jusqu'aux hlicoptres. + + + vacuation : atteindre les hlicoptres. + + + Tout le monde est mort, vous allez devoir vous rendre seul jusqu'aux hlicoptres. + + + vacuation : parler Kovalsky. + + + Parlez Kovalsky avant le dbut de l'vacuation. + + + vacuation : dire Kovalsky que vous tes prt. + + + Vous devriez dire Kovalsky que vous tes prt commencer l'vacuation. + + + vacuation : attendre la fin de l'mission. + + + Vous devez attendre la fin de l'mission. + + + Inconnu : enquter sur la source du signal. + + + Kirillov a identifi un signal trange non loin de la base. Vous devez trouver la source de ce signal. + + + Inconnu : suivre le signal. + + + Les coordonnes du signal sont nouveau accessibles. Suivez-les ! + + + Inconnu : examiner la dernire position connue du signal. + + + Le signal a disparu dans la cour du btiment, allez examiner la dernire position connue du signal. + + + Inconnu : se prparer l'attaque de la base. + + + Retournez la base de l'arme et prparez-vous ! Il semblerait qu'une attaque soit imminente. + + + Interfrences radio : parler Kovalsky. + + + Le colonel Kovalsky a demand vous voir. + + + Labo X8 : pntrer dans la cage d'ascenseur. + + + L'entre du laboratoire souterrain se trouve sous le centre de service de Yubileiny. Le seul moyen d'y accder est de passer par la cage d'ascenseur. + + + Laboratoire X8 : trouver le gnrateur. + + + L'alimentation des portes de la cage d'ascenseur a t coupe. Pour les ouvrir, vous devez trouver et activer le gnrateur de secours. + + + Laboratoire X8 : descendre dans le labo. + + + Prenez l'ascenseur pour entrer dans le laboratoire X8 situ sous le centre de service de Yubileiny. + + + Mise mort : liminer le messager. + + + liminez le messager. Sans lui, les mercenaires ne pourront pas trouver le laboratoire. + + + Mise mort : attendre les hommes du client. + + + Attendez les hommes du client et tuez leur chef. Sans lui, les mercenaires ne pourront pas trouver le laboratoire. + + + Mise mort : tuer le chef des mercenaires. + + + liminez le chef des mercenaires. Sans lui, les mercenaires ne pourront pas trouver le laboratoire. + + + Mise mort : attendre l'arrive des mercenaires. + + + Attendez l'arrive des mercenaires et tuez leur chef. Sans lui, les mercenaires ne pourront pas trouver le laboratoire. + + + Mise mort : parler Kovalsky. + + + Faites votre rapport Kovalsky. + + + Laboratoire X8 : sortir du complexe souterrain ou continuer chercher des documents. + + + Vous avez trouv des documents et pouvez donc quitter le laboratoire. Il peut cependant y avoir d'autres documents dans le complexe. + + + Laboratoire X8 : sortir du complexe souterrain ou continuer chercher des documents. + + + Vous avez trouv des documents et pouvez donc quitter le laboratoire. Il peut cependant y avoir d'autres documents dans le complexe. + + + Laboratoire X8 : sortir du complexe souterrain + + + Il semblerait que vous ayez rcupr tous les documents du laboratoire. Vous pouvez maintenant quitter le complexe souterrain. + + + Forces du Monolithe : attendre des renforts. + + + Vous devez attendre les renforts envoys par Kovalsky avant d'liminer les forces du Monolithe retranches dans la librairie. + + + Entretien : parler Kovalsky. + + + Vous devez parler Kovalsky. Il semble avoir des choses importantes vous dire. + + + vacuation : tenir la position prs des hlicoptres. + + + Vous devez protger les hlicoptres jusqu' ce qu'ils puissent dcoller. + + + vacuation : ranimer l'infirmier. + + + L'infirmier a apparemment t touch une nouvelle fois par des forces non identifies. Ranimez-le le plus vite possible. + + + vacuation : retourner aux hlicoptres. + + + Vous devez retourner aux hlicoptres car ils risquent de dcoller d'un instant l'autre. + + + vacuation : retourner au plus vite aux hlicoptres. + + + Les hlicoptres sont prts dcoller. Vous devez immdiatement monter bord. Les pilotes ne peuvent pas attendre plus longtemps. + + diff --git a/gamedata/configs/text/fra/st_quests_zaton.xml b/gamedata/configs/text/fra/st_quests_zaton.xml new file mode 100644 index 0000000..2ea2083 --- /dev/null +++ b/gamedata/configs/text/fra/st_quests_zaton.xml @@ -0,0 +1,780 @@ + + + + En lieu sr : aller au Skadovsk. + + + Les lieux les plus srs de la Zone sont les camps. Le plus proche est le Skadovsk ; c'est l que vous devriez vous rendre. + + + Cartes de la zone : trouver une personne intresse par les cartes. + + + Cartes de la zone : remettre les cartes Pilote. + + + Pilote, le guide du coin, pourrait tre intress par les cartes de la rgion entre Zaton et Jupiter. + + + Stingray 2 : fouiller les lieux de l'accident. + + + Fouillez les lieux de l'accident du Stingray 2. + + + Stingray 5 : fouiller les lieux de l'accident. + + + Stingray 5 : trouver la cause du court-circuit. + + + Unit Stingray : trouver la source des dcharges qui ont frapp les deux hlicoptres. + + + Fouillez les lieux de l'accident du Stingray 5. + + + Trouvez la source de la puissante dcharge lectrique qui a frapp l'hlicoptre Stingray 5. + + + Trouvez la cause du court-circuit des Stringray 4 et 5. Il semblerait qu'ils aient t frapps par de puissantes dcharges lectriques. + + + Nourriture : trouver de la nourriture pour les mercenaires. + + + Les mercenaires des ateliers du poste lectrique vous ont demand de leur rapporter six conserves de viande, des saucisses ou du pain. + + + Nourriture : apporter la nourriture aux mercenaires. + + + Rapportez la nourriture que vous avez rcupre aux mercenaires des ateliers du poste lectrique. + + + Outils : fouiller les ateliers du poste lectrique. + + + Il semble y avoir des outils dans les ateliers du poste lectrique. Qui sait, vous trouverez peut-tre ceux que le technicien recherche. + + + La chasse la chimre : trouver le mutant pendant son sommeil. + + + Trouvez la chimre avant qu'elle ne se rveille. + + + la recherche de la Pie : informer Gonta. + + + La Pie, le stalker qui a tendu un pige au groupe de Gonta, a t retrouv. Il s'est enrl dans la Libert et se prnomme dsormais Flint. + + + La chasse la chimre : tuer le mutant. + + + La chimre s'est rveille ; vous devriez l'achever avant qu'il ne soit trop tard ! + + + La chasse la chimre : rejoindre Gonta au bar 3h du matin. + + + Rejoignez Gonta et son groupe avant l'aube pour participer la chasse la chimre. + + + La chasse la chimre : informer Trappeur. + + + Dites au stalker nomm Trappeur que la chimre est morte. Il devrait vous remettre une rcompense. + + + la recherche de la Pie : trouver le stalker. + + + Un stalker surnomm la Pie a tendu un pige au groupe de Gonta qui a t attaqu par une chimre. On vous a demand de retrouver cette ordure. + + + Points d'vacuation : examiner le point d'vacuation B205. + + + La carte trouve dans l'un des hlicoptres indiquait des points d'vacuation. Vrifiez si les soldats se sont dirigs vers le point B205. + + + Points d'vacuation : examiner le point d'vacuation B28. + + + La carte trouve dans l'un des hlicoptres indiquait des points d'vacuation. Vrifiez si les soldats se sont dirigs vers le point B28. + + + Point d'vacuation : trouver les coordonnes du point B28. + + + La bote noire de l'un des hlicoptres Stingray contenait un enregistrement dans lequel le chef d'unit indiquait un point de convergence. Il s'agissait du point d'vacuation B28. Vous devez trouver les coordonnes correspondantes. + + + Point d'vacuation : se rendre au point B28. + + + L'endroit o doivent se retrouver les soldats se situe Pripyat. Trouvez un moyen de vous y rendre. + + + Points d'vacuation : examiner le point d'vacuation B2. + + + La carte trouve dans l'un des hlicoptres indiquait des points d'vacuation. Vrifiez si les soldats se sont dirigs vers le point B2. + + + trange phnomne : apporter l'artefact au Barbu. + + + L'trange lueur provenait d'un artefact tout aussi bizarre qui intressera forcment le Barbu. + + + trange phnomne : demander des informations concernant l'artefact aux stalkers. + + + Les stalkers ont peut-tre des informations concernant l'trange artefact ou peut-tre connaissent-ils quelqu'un qui pourrait vous aider. Vous devriez leur parler. + + + trange phnomne : trouver la source de la lueur dans la station de dragage. + + + Une trange lueur a t repre dans la station de dragage. Le Barbu vous a demand d'en trouver la source. + + + trange phnomne : rcuprer l'artefact. + + + L'trange lueur provenait d'un artefact tout aussi bizarre. Vous devriez le prendre. + + + trange phnomne : parler de l'artefact au Barbu. + + + L'trange lueur provenait d'un artefact tout aussi bizarre. Vous n'avez pas l'artefact, mais vous devriez en parler au Barbu. + + + Le plateau : sauter dans l'anomalie. + + + Il semble qu'il faille traverser l'anomalie pour atteindre le plateau. Vous devez sauter dedans. + + + Le plateau : trouver le chemin secret de Noah. + + + Le PDA de Noah mentionne son "chemin secret" menant au plateau. Vous devez le trouver. + + + Le plateau : demander Noah comment vous y rendre. + + + Un stalker du nom de Noah connatrait un chemin menant au plateau. Trouvez un moyen de vous y rendre. + + + Stalkers disparus : rapporter la preuve de l'implication de Sismik. + + + Apportez le PDA contenant les enregistrements de Sismik au Skadovsk et montrez-le au Barbu. Ces enregistrements prouvent que le toubib est responsable de la disparition des stalkers. + + + Stalkers disparus : trouver la preuve de l'implication de Sismik. + + + Cherchez des preuves de l'implication de Sismik dans la disparition des stalkers. + + + Stingray 3 : fouiller les lieux de l'accident. + + + Fouillez les lieux de l'accident du Stingray 3. + + + Vous devez apporter l'artefact au Barbu, mais vous avez perdu votre avance. D'autres personnes sont aussi sa recherche. + + + Vous devez apporter l'artefact au Barbu. Souvenez-vous que vos rivaux sont aussi sa recherche. + + + Vous devez apporter l'artefact au Barbu, mais vous avez entendu dire qu'un autre groupe en avait aussi trouv un. Suivez son signal et tentez de terminer la mission avant eux. + + + Vous devez apporter l'artefact au Barbu, mais un autre groupe s'en est dj charg. Vous n'allez recevoir que la moiti de la prime offerte. + + + Apportez l'artefact au Barbu. + + + Commande d'artefact : rapporter un Gravi. + + + Commande d'artefact : rapporter un il. + + + Commande d'artefact : rapporter une Bulle. + + + Commande d'artefact : rapporter une Coquille. + + + Commande d'artefact : rapporter un Garde du corps. + + + Commande d'artefact : rapporter une Flammche. + + + Commande d'artefact : rapporter une Luciole. + + + Commande d'artefact : rapporter un Flocon. + + + Vous devez trouver l'artefact pour le Barbu, mais vous avez perdu votre avance. D'autres personnes sont aussi sa recherche. + + + Vous devez trouver l'artefact pour le Barbu. Souvenez-vous que des rivaux sont aussi sa recherche. + + + Vous devez trouver l'artefact pour le Barbu, mais vous avez entendu dire qu'un autre groupe en avait aussi trouv un. Suivez son signal et tentez de terminer la mission avant eux. + + + Vous devez trouver l'artefact pour le Barbu, mais un autre groupe a dj livr la commande. Vous ne recevrez que la moiti de la prime offerte. + + + Trouvez l'artefact pour le Barbu. + + + Commande d'artefact : trouver un Gravi. + + + Commande d'artefact : trouver un il. + + + Commande d'artefact : trouver une Bulle. + + + Commande d'artefact : trouver une Coquille. + + + Commande d'artefact : trouver un Garde du corps. + + + Commande d'artefact : trouver une Flammche. + + + Commande d'artefact : trouver une Luciole. + + + Commande d'artefact : trouver un Flocon. + + + Boussole : trouver Noah pour dcouvrir l'emplacement de l'artefact. + + + Cherchez Noah sur la vieille pniche pour savoir o trouver l'artefact Boussole. Le Barbu le cherche depuis longtemps et est prt payer une somme rondelette pour l'obtenir. + + + Boussole : apporter l'artefact au Barbu. + + + Boussole : demander Noah o trouver l'artefact. + + + Sultan souhaite intercepter l'artefact recherch par le Barbu. Cherchez Noah sur la vieille pniche et demandez-lui o trouver l'artefact. + + + Boussole : apporter l'artefact Sultan. + + + L'artefact que vous a remis Noah est la Boussole que recherche Sultan. + + + Affaires louches : demander votre part du gteau au Barbu. + + + Rcuprez votre part des bnfices du Barbu. + + + Affaires allchantes : parler Sultan. + + + Le marchand nomm le Hibou pense que le Barbu ne remplit pas sa part du march et vous a conseill de demander de l'aide Sultan, un cad local. + + + Affaires louches : rcuprer les dtecteurs auprs des stalkers. + + + Vous devez tout prix rcuprer les prototypes de dtecteurs des stalkers qui cherchent des artefacts pour le Barbu. Sans ces dtecteurs, il devra accepter les conditions de Sultan. + + + Affaires louches : parler Sultan. + + + Le Barbu n'a pas les dtecteurs. Vous devriez donc parler Sultan pour savoir s'il a rsolu le problme concernant les autres fournisseurs du Barbu. + + + Affaires louches : obliger le Barbu travailler avec Sultan. + + + Sans fournisseur ni dtecteur, le Barbu a les mains lies. Obligez-le travailler pour Sultan. + + + Affaires louches : dcouvrir ce que trafique le Barbu. + + + Dcouvrez dans quelles affaires trempe le Barbu. Vous pourrez ainsi l'empcher de contacter ses fournisseurs. + + + Affaires louches : rcuprer le deuxime dtecteur aux stalkers. + + + Vous devez tout prix rcuprer les prototypes de dtecteurs des stalkers qui cherchent des artefacts pour le Barbu. Sans ces dtecteurs, il devra accepter les conditions de Sultan. + + + Affaires allchantes : apporter trois dtecteurs Veles Novikov. + + + Le Hibou vous a propos de participer une mission trs lucrative. Votre mission consiste trouver trois dtecteurs Veles et les rapporter Novikov dans le bunker des scientifiques. + + + Affaires allchantes : attendre que le Hibou reoive les dtecteurs. + + + Novikov a accept les dtecteurs et a promis de les renvoyer au Hibou. Attendez qu'il ait fini ses tests et dcouvrez quels sont les rsultats en parlant au Hibou. + + + Affaires allchantes : parler au Hibou. + + + Le Hibou vous a contact par radio pour vous dire qu'il a des problmes et qu'il veut vous voir. + + + Affaires allchantes : obliger le Barbu respecter le contrat. + + + Le marchand nomm le Hibou pense que le Barbu ne remplit pas sa part du march. Vous devez lui parler pour le convaincre de respecter le contrat. + + + Affaires allchantes : exiger du Hibou qu'il vous donne votre part. + + + Le Barbu estime qu'il ne doit rien au Hibou. Dcouvrez qui des deux a raison et demandez-lui la part qui vous revient. + + + Accroc vous a demand de lui apporter le coffre qu'il a dissimul dans une vieille voiture Zaporozhets, tombe dans une faille suite un tremblement de terre. Accroc refuse d'y aller lui-mme car l'endroit grouille de snorks. + + + Vous avez rcupr le coffre d'Accroc. Rapportez-le-lui afin de partager quitablement son contenu. + + + Le nid de sangsues : parler du nid aux stalkers. + + + Informez les stalkers de la prsence d'un nid de sangsues sous la station-relais de Krug. + + + Le nid de sangsues : parler du nid au Barbu. + + + Informez le Barbu de la prsence d'un nid de sangsues sous la station-relais de Krug afin qu'il dcide d'un moyen de protger les stalkers. + + + Stalkers disparus : suivre le Faisan. + + + Le Faisan vous a demand de l'accompagner pour inspecter la station-relais abandonne. Il a repr des sangsues et souhaite vrifier si le chasseur s'y trouve. + + + Stalkers disparus : dcouvrir ce qui s'est pass. + + + Sismik n'est pas aussi innocent qu'il en a l'air. Vous devez dcouvrir ce qui s'est pass. + + + Stalkers disparus : trouver le Faisan. + + + Le Faisan est parti en direction des grues sur les quais. Peut-tre a-t-il trouv un indice sur la disparition des stalkers... Vous devriez le retrouver l-bas. + + + Stalkers disparus : retrouver le Faisan. + + + Le Faisan est introuvable. Demandez au Barbu o il est parti. + + + Stalkers disparus : trouver le chasseur disparu. + + + Le Faisan vous a demand de l'aider retrouver le chasseur disparu, qui avait t charg de trouver le nid de sangsues. Selon les dernires informations, les sangsues seraient responsables de la disparition des stalkers. + + + Stalkers disparus : sortir du nid de sangsues + + + Vous avez dcouvert un nid de sangsues au sous-sol et ses rsidents sont comme tourdis. Vous feriez mieux de filer en silence. + + + Stalkers disparus : rejoindre le Faisan. + + + Vous feriez bien d'aller voir le Faisan pour discuter avec lui du chasseur disparu. + + + Stalkers disparus : rejoindre le Faisan plus tard. + + + Vous n'avez trouv aucune trace du chasseur Danila dans la station-relais. Mais ce que vous avez trouv l'intrieur rend le Faisan perplexe et il souhaite en discuter plus en dtail avec vous. + + + Stalkers disparus : aller voir le Faisan. + + + Une sangsue morte se trouvait l'endroit indiqu par le Faisan, mais aucun signe du chasseur. Toutefois, il semble que le Faisan soit tomb sur un lment important et il vous a demand de venir le voir. + + + Les sangsues n'avaient en fait aucun rapport avec la disparition des stalkers. Sismik, le mdecin du Skadovsk, en est le seul responsable. + + + Outils : apporter des outils Cardan. + + + Cardan vous a demand de lui apporter deux jeux d'outils : des outils rudimentaires et des outils de prcision. Le technicien vous paiera et sera en mesure d'effectuer des modifications d'armes et d'armures plus complexes. + + + Outils : apporter des outils Cardan. + + + Cardan vous a demand de rcuprer deux jeux d'outils : des outils rudimentaires et des outils de calibrage. Le technicien vous paiera et sera en mesure d'effectuer des modifications d'armes et d'armures plus complexes. + + + Outils : apporter des outils Cardan. + + + Cardan vous a demand de rcuprer un jeu d'outils rudimentaires. Le technicien vous paiera et sera en mesure d'effectuer des modifications d'armes et d'armures plus complexes. + + + Outils : apporter des outils Cardan. + + + Cardan vous a demand de rcuprer deux jeux d'outils : des outils de prcision et des outils de calibrage. Le technicien vous paiera et sera en mesure d'effectuer des modifications d'armes et d'armures plus complexes. + + + Outils : apporter des outils Cardan. + + + Cardan vous a demand de rcuprer un jeu d'outils de prcision. Le technicien vous paiera et sera en mesure d'effectuer des modifications d'armes et d'armures plus complexes. + + + Outils : apporter des outils Cardan. + + + Cardan vous a demand de rcuprer un jeu d'outils de calibrage. Le technicien vous paiera et sera en mesure d'effectuer des modifications d'armes et d'armures plus complexes. + + + Outils : apporter des outils Cardan. + + + Cardan vous a demand de rcuprer trois jeux d'outils : des outils rudimentaires, des outils de prcisions et des instruments de calibrage. Le technicien vous paiera et sera en mesure d'effectuer des modifications d'armes et d'armures plus complexes. + + + Camp de mercenaires : rcuprer autant d'informations que possible. + + + Le Faisan vous a promis une belle rcompense pour toute information recueillie dans le camp des mercenaires dans la station de traitement des dchets. Il aimerait en savoir plus sur leurs projets. + + + Camp de mercenaires : rcuprer autant d'informations que possible. + + + Le Faisan vous a promis une belle rcompense pour toute information recueillie dans le camp des mercenaires dans la station de traitement des dchets. Il aimerait en savoir plus sur leurs projets. + + + Trois camarades : dcouvrir ce qui est arriv Barge. + + + Cardan vous a demand de transmettre ses excuses son camarade, le stalker surnomm Barge. la suite d'une dispute, celui-ci tait parti sans dire o il se rendait. + + + Trois camarades : dcouvrir ce qui est arriv Barge et au Joker. + + + Cardan vous a demand de transmettre ses excuses ses camarades, les stalkers surnomms Barge et le Joker. la suite d'une dispute, ses amis taient partis sans dire o ils se rendaient. + + + Trois camarades : dcouvrir ce qui est arriv au Joker. + + + Cardan vous a demand de transmettre ses excuses son camarade, le stalker surnomm Joker. la suite d'une dispute, celui-ci tait parti sans dire o il se rendait. + + + Commande spciale : rcuprer la marchandise. + + + La marchandise a t livre : il est temps d'aller la rcuprer auprs d'Allegro. + + + Commande spciale : attendre la livraison. + + + La commande a t passe. Attendez qu'Allegro rcupre la marchandise. + + + Rputation : trouver Accroc. + + + Vous devez trouver Accroc et l'obliger tenir sa langue. Allegro n'a jamais tremp dans des affaires de marchandises voles, tandis qu'Accroc a tout d'une belle ordure. Il a t aperu pour la dernire fois prs des grues sur les quais. Il s'y trouve peut-tre encore. + + + Trouvez Accroc et obligez-le tenir sa langue. Il ne se trouve pas prs des grues sur les quais, mais les bandits savent peut-tre o il est. + + + Trouvez Accroc et obligez-le tenir sa langue. Les bandits semblent impliqus et savent peut-tre o il se trouve. + + + Trouvez Accroc et obligez-le tenir sa langue. Personne ne sait o il se trouve. + + + Vous devez trouver Accroc et l'obliger tenir sa langue. D'aprs le PDA retrouv sur l'un des bandits, les hommes de Sultan le recherchent. Malheureusement, rien n'indique o il se trouve. + + + Rputation : dcouvrir o se trouve Accroc. + + + Accroc est introuvable. Vous devriez donc demander aux gens du coin s'ils ne l'ont pas vu. + + + Trouvez Accroc et forcez-le tenir sa langue. Malheureusement, il semble introuvable. Peut-tre que Sultan en sait davantage. + + + Trouvez Accroc et forcez-le tenir sa langue. Malheureusement, il semble introuvable. Peut-tre que le Barbu en sait davantage. + + + Rputation : parler Accroc + + + Vous devez trouver Accroc et l'obliger tenir sa langue. Allegro n'a jamais tremp dans des affaires de marchandises voles, tandis qu'Accroc a tout d'une belle ordure. + + + Le nid de sangsues : trouver le conduit d'aration. + + + Trouvez le conduit d'aration pour remplir le nid de sangsues de gaz mortel. + + + Le nid des sangsues : trouver du gaz mortel. + + + Il vous faut du gaz pour radiquer le nid des sangsues. Le Hibou sait o s'en procurer. + + + Il vous faut du gaz pour dtruire le nid de sangsues. Le Hibou vous a assur que vous trouveriez des bombonnes de gaz dans le convoi militaire abandonn. + + + Le nid de sangsues : trouver les cls du conteneur. + + + Les documents que vous avez trouvs voquent les cls du conteneur de bombonnes de gaz. Vous devez les trouver. + + + Le nid de sangsues : trouver un moyen d'ouvrir le conteneur de bombonnes de gaz. + + + Le conteneur renfermant les bombonnes de gaz est ferm cl. Trouvez un moyen de l'ouvrir. + + + Le nid de sangsues : placer la bombonne de gaz. + + + Placez la bombonne de gaz dans le systme d'aration du sous-sol de la station-relais. Le gaz devrait s'chapper par les conduits, se propager dans le sous-sol et asphyxier les sangsues. + + + Le nid sangsues : informer le Barbu de la destruction du nid. + + + Dites au Barbu que vous avez radiqu le nid de sangsues et ainsi assur la scurit des stalkers du Skadovsk. + + + Le nid de sangsues : tourner la valve. + + + Tournez la valve pour laisser le gaz mortel se propager dans le sous-sol abritant le nid de sangsues travers le conduit d'aration. + + + Le nid de sangsues : patienter jusqu' ce que le gaz fasse effet. + + + Vous devez vous assurer que le gaz s'est bien propag dans le nid et que toutes les sangsues sont mortes. + + + Transaction : rencontrer les bandits prs du poste des rangers. + + + Sultan vous a demand de participer une transaction avec un marchand. Vous devez accompagner ses hommes et les couvrir en cas de problme. + + + Transaction : rejoindre le marchand. + + + Le Hibou vous a confi une mission. Vous devez protger un marchand pendant une transaction. Il s'agit clairement d'une affaire louche et il y a des chances que les choses tournent mal. + + + Transaction : rejoindre les stalkers prs du poste des rangers. + + + Rejoignez les stalkers prs du poste des rangers et aidez-les interrompre la transaction entre les bandits et le marchand d'armes. + + + Transaction : protger le marchand. + + + Le marchand vous a expliqu votre rle : le protger pendant la transaction. + + + Transaction : couter la conversation. + + + Les stalkers souhaitent couter la conversation entre les bandits et le marchand d'armes. + + + Transaction : empcher la vente des armes. + + + Faites votre possible pour empcher la transaction entre les bandits et le marchand d'armes. + + + Transaction : liminer les tmoins. + + + La transaction n'a pas abouti, vous devez liminer tous les tmoins. + + + Transaction : protger le marchand. + + + Vous devez protger le marchand. Il vous a galement ordonn d'liminer tous les tmoins de la transaction, y compris ses clients. + + + Transaction : fouiller le marchand. + + + Le marchand a peut-tre des informations capitales qui pourront vous tre utiles. Vous feriez mieux de les prendre. + + + Transaction : couvrir les bandits pendant la transaction. + + + Restez sur le qui-vive et couvrez les bandits pendant leurs ngociations avec le marchand. + + + Transaction : parler au marchand. + + + La transaction avec les bandits est termine. Allez rcuprer votre rcompense. + + + Transaction : demander votre rcompense au Barbu. + + + Le Barbu vous a promis une rcompense si vous parveniez interrompre la transaction entre les bandits et le marchand. Vous avez russi et pouvez prsent rcuprer votre rcompense. + + + Transaction : parler au chef des bandits. + + + Vous devez informer le chef des bandits que vous tes prt participer la transaction. + + + Braquage : prendre une dcision. + + + Braquage : attaquer les stalkers. + + + Braquage : rcuprer votre rcompense. + + + L'attaque mene sur le camp a t repousse. Vous pouvez maintenant parler aux stalkers pour obtenir votre rcompense. Sans votre avertissement, ils auraient pass un sale quart d'heure. + + + Des stalkers peu scrupuleux dtroussent leurs congnres. Vous devez dcider entre participer l'assaut, avertir les stalkers ou ne pas vous impliquer. + + + Braquage : attendre jusqu' l'heure convenue. + + + Braquage : attendre jusqu' l'heure convenue. + + + Une planque bien cache : apporter le coffre Accroc. + + + Transaction : parler au chef du groupe de stalkers. + + + La transaction a t interrompue, le marchand d'armes est mort. Allez parler au chef du groupe de stalkers. + + + Stalkers disparus : relater les vnements aux stalkers du Skadovsk. + + + Vous devez ouvrir le conteneur avec les cls trouves et sortir la bombonne de gaz empoisonn. + + + Le nid de sangsues : sortir la bonbonne de gaz du conteneur. + + + Braquage : attaquer les voleurs. + + + Attaquer les voleurs par derrire permettra aux stalkers de repousser leur attaque. + + + Braquage : rejoindre les voleurs. + + + Rejoignez les voleurs pour attaquer le camp des stalkers. + + + Braquage : rejoindre les voleurs. + + + Les stalkers vous ont demand de les aider repousser l'attaque des voleurs. Vous devriez rejoindre les bandits. Lorsqu'ils commenceront l'assaut, vous pourrez les attaquer par derrire en toute impunit. + + + Les voleurs doivent attendre prs du Chevtchenko. Vous devez les rejoindre pour participer l'attaque du camp des stalkers. + + + Attendez votre rendez-vous avec les voleurs ! Ils veulent attaquer le camp de stalkers entre minuit et le lever du soleil. Le point de rendez-vous se trouve au Chevtchenko. + + + Braquage : rcuprer votre part. + + + L'attaque sur les stalkers a russi. Vous devriez aller rcuprer votre part du butin. + + + Attendez le bon moment, quand les voleurs seront distraits par l'attaque en cours ! Vous pourrez alors les prendre revers et aider les stalkers de Chevtchenko. + + + Affaires louches : travailler pour le Barbu. + + + Pour vous emparer des prototypes de dtecteur des stalkers qui travaillent pour le Barbu, vous devrez infiltrer leurs rangs. Cela vous permettra de dcouvrir qui sont vos concurrents. + + + Vous devez prendre le coffre et l'apporter son propritaire. + + + L'ordinateur de bord de Stingray 2 contenait des cartes du secteur entre Zaton et Jupiter. Vous devriez trouver quelqu'un qui en aura l'utilit. + + + Aller au plateau du sud : parler aux stalkers + + + On dirait qu'il n'y a pas de chemin direct menant au plateau. Demander aux stalkers du coin s'ils ne connaissent pas d'autres moyens de s'y rendre. + + + L'artefact que vous a remis Noah est la Boussole que recherche le Barbu. + + diff --git a/gamedata/configs/text/fra/st_subtitles.xml b/gamedata/configs/text/fra/st_subtitles.xml new file mode 100644 index 0000000..9f898a4 --- /dev/null +++ b/gamedata/configs/text/fra/st_subtitles.xml @@ -0,0 +1,156 @@ + + + + 01:23, le 26 avril 1986, le racteur du gnrateur n 4 de la centrale de Tchernobyl est dtruit suite plusieurs explosions. Le nuage radioactif qui en rsulte survole la partie occidentale de l'URSS, l'Europe de l'Est et la Scandinavie, avant d'atteindre l'Amrique du Nord. + + + Les consquences de cette catastrophe sont si graves que le gouvernement doit faire vacuer tous les habitants des villes et villages environnants. + + + Une zone d'exclusion de 30 km est tablie afin d'empcher les civils de revenir dans la zone contamine. + + + Malgr la catastrophe, la centrale de Tchernobyl continue de fonctionner. Le conseil des ministres de l'URSS dcide alors de crer un rseau de laboratoires secrets dans la Zone d'exclusion dsormais dserte. + + + 11 janvier 2006. Une lumire blouissante enveloppe toute la Zone d'exclusion et des nuages de vapeur s'lvent dans le ciel. Aprs un instant de silence, des grondements sourds font trembler le sol. La plupart des forces gouvernementales qui gardent le primtre sont tues sur le coup. + + + 2007. Les scientifiques sont toujours incapables d'expliquer ce qui s'est pass. Les expditions dans la Zone se terminent gnralement en tragdie et les rares survivants racontent des histoires incroyables d'animaux mutants aux capacits extraordinaires. + + + Selon diffrentes estimations, la Zone hberge en 2010 entre 100 et 300 individus non identifis. Ils se donnent le nom de stalkers et survivent en rcuprant des objets anormaux, connus sous le nom d'artefacts, qu'ils revendent prix d'or. + + + 2011. Malgr les cordons militaires, le nombre de stalkers ne cesse d'augmenter. Ces derniers se cantonnent nanmoins aux secteurs priphriques de la Zone, son centre restant largement inexplor. Les rares tentatives de pntrer plus avant dans la Zone se soldent toutes par des checs. + + + 2012. Un Stalker du nom de Strelok parvient rsoudre le mystre du Lobotomisateur, l'metteur d'ondes psychiques qui bloquait l'accs au centre de la Zone depuis des annes. Une fois la machine dsactive, tous les Stalker se ruent vers les territoires jusqu'alors inexplors. Certains esprent y trouver une cache remplie d'artefacts, d'autres sont la recherche de l'Exauceur de vux. + + + Le gouvernement dcide alors de lancer une vaste opration militaire, nom de code : Fairway. Son l'objectif : envoyer des hlicoptres jusqu' la centrale. Malgr les nombreux prparatifs et les cartes des anomalies dont disposaient les appareils, l'opration est un chec cuisant et aucun des hlicoptres n'en revient. + + + Le major Degtyarev, agent spcial du SBU, est envoy dans la Zone afin d'enquter sur la disparition des hlicoptres. + + + Dguis en stalker et emportant avec lui un fusil d'assaut standard, deux semaines de provisions et une radio pour communiquer avec le QG, le major entame son voyage vers le cur de la zone. + + + Ses discussions avec les stalkers ne donnent rien... Soit ils n'ont pas d'informations, soit ils ne veulent pas les partager... + + + La Zone rappelle constamment au major qu'elle n'a rien d'une colonie de vacances. Pas un jour ne s'coule sans une attaque d'ennemis mutants ou, pire, humains. + + + Les communications rgulires avec le QG n'amliorent rien : les informations sont rares, en dehors des coordonnes des paves des cinq hlicoptres, obtenues par satellite. Alors que le major s'approche 5 km de la centrale de Tchernobyl, sa radio rend l'me. + + + Degtyarev est dsormais seul... + + + En rcompense pour la russite de son enqute, Degtyarev est promu colonel et se voit vu offrir un poste de coordinateur de mission. Il dcline cependant cette opportunit de travailler au QG et demande l'autorisation de retourner dans la Zone en tant qu'observateur permanent du SBU. + + + Les informations sur le dveloppement d'appareils psi obtenues par Degtyarev sont considres comme trop dangereuses par ses suprieurs du SBU et les dossiers concernant les laboratoires X sont retirs des archives militaires et classs top secrets. Les personnels de la Zone reoivent l'ordre d'touffer l'affaire, cote que cote. + + + Plusieurs prototypes sont crs partir des donnes techniques de l'objet 62. Suite aux tests, il est dcid de ne pas passer la fabrication en masse car les munitions sont considres comme trop coteuses. Cependant, il semble probable que le perfectionnement de la technologie Gauss se poursuit. + + + Aprs avoir tent en vain de prendre le contrle du Skadovsk, Sultan et ses hommes quittent les lieux pour continuer leurs oprations douteuses ailleurs. Le calme relatif qui s'instaure alors dans la Zone voit une augmentation massive du nombre d'artefacts vendus au Barbu et le Skadovsk, bien que proche du centre de la Zone, devient aussi populaire que le fameux bar des 100 rads. + + + Le Skadovsk devient le repaire principal des bandits. Aprs l'instauration d'une taxe pour tous les stalkers et l'viction force de quelques fortes ttes pendant des missions, un calme relatif s'installe, sous la frule de Sultan. Peu enclin partager ses bnfices avec les bandits, le Barbu rassemble un groupe de stalkers et part explorer les secteurs inconnus de la Zone. + + + Le Skadovsk devient le foyer de tous ceux qui parviennent l'atteindre. Et si la farouche rsistance des stalkers n'empche pas les bandits de tenter rgulirement de prendre le contrle des lieux, le navire reste un lot de paix au milieu du chaos ambiant. + + + Malheureusement, le statu quo ne dure pas. Des sangsues du marais voisin finissent par atteindre le navire. Lorsqu'elles s'enhardissent mme attaquer en plein jour, les hommes du Skadovsk dcident de se dbarrasser du nid une fois pour toutes. Malheureusement, l'expdition dans les tunnels ne fait que provoquer une contre-attaque massive des cratures, au cours de laquelle tous les habitants du navire sont tus. + + + La destruction du nid des sangsues assure jamais l'avenir et la stabilit du Skadovsk. Le vieux navire reste ainsi un lot de paix au milieu du chaos ambiant de la Zone. + + + La Libert parvient conclure un accord avec les stalkers de la gare de Yanov. Le Devoir dcide alors d'employer la manire forte et lance un assaut vou l'chec. Le lieutenant-colonel Shulga est tu peu aprs lors d'une chauffoure. Suite la perte de son chef, l'unit du Devoir se disperse rapidement. + + + Des renforts et une popularit croissante auprs des stalkers permettent l'unit du Devoir de se dbarrasser des soldats de la Libert dans la gare de Yanov. Loki et son unit ne survivent pas aux combats qui s'ensuivent. + + + Un fragile quilibre s'instaure entre le Devoir et la Libert dans la gare de Yanov. puiss par des combats incessants, les hommes des deux factions commencent dserter leurs units pour rejoindre les rangs des stalkers indpendants. + + + L'expdition scientifique mene par les professeurs Hermann et Ozersky est un succs retentissant. Les donnes rcupres permettent la cration de mdicaments et de technologies rvolutionnaires qui incitent le ministre de l'ducation augmenter le budget consacr la recherche dans la Zone. + + + Les professeurs Hermann et Ozersky doivent interrompre leurs recherches dans la Zone, faute de donnes. leur retour dans le monde normal, ils se lancent dans des activits scientifiques sans lien avec la Zone. + + + Les histoires de Garry sur les difficults de l'arme dans Pripyat encouragent les stalkers explorer la ville fantme. Malgr les attaques constantes des forces du Monolithe, ils parviennent prendre le contrle de l'ancien camp militaire, d'o ils lancent des raids au cur de la ville. Leurs progrs sont lents, mais constants. + + + Les histoires de Garry sur le sort des militaires maintiennent les stalkers distance de Pripyat. Ceux qui osent s'y aventurer rencontrent d'inexplicables phnomnes, ce qui ne fait qu'ajouter de sombres chapitres la lgende dj macabre de cette ville fantme. + + + La lgende de l'Oasis n'en est plus une... L'identit de ceux qui ont trouv cette mystrieuse anomalie devient un sujet de plus en plus frquent dans les conversations des stalkers et nombre d'entre eux souhaitent prsent tenter leur chance, pour la plus grande joie des bandits, ravis d'organiser des groupes qu'ils se chargent ensuite de dpouiller bonne distance des camps de stalkers. + + + Les groupes de mercenaires maintiennent une prsence constante dans la Zone et leur intrt pour les laboratoires X devient de plus en plus difficile dissimuler aux observateurs du SBU. Toutes les tentatives pour identifier leur commanditaire restent cependant vaines. + + + Les alentours de Yanov continuent d'attirer de plus en plus de stalkers. L'absence de mutants dangereux et l'abondance d'anomalies permettent la gare de gagner rapidement le surnom de "cache au trsor". + + + Les environs de la gare de Yanov restent parmi les plus dangereux de la Zone. De moins en moins de stalkers reviennent des expditions, certains se faisant mme charper quelques mtres du camp. Parti chasser une chimre, Trappeur figure galement au nombre des disparus. + + + Zulu est retourn la base principale du Devoir, dans la centrale de Rostock. Personne ne sait ce qu'il a dit au gnral Voronin, le chef du Devoir, mais, quelques jours plus tard, Zulu est aperu la tte d'une importante formation en route pour le centre de la Zone. + + + Les nouvelles du sort de Zulu sont parvenues jusqu'aux oreilles du gnral Voronin, le chef du Devoir. Contrairement toutes les attentes, ce dernier dcide de lui attribuer le Bouclier d'argent, la dcoration la plus prestigieuse du Devoir. + + + Vano s'est dirig vers les entrepts militaires contrls par la Libert, o sa personnalit et son optimisme le rendent rapidement trs populaire. Il finit par prendre la tte d'un groupe de chercheurs spcialiss dans l'tude des anomalies. + + + Les stalkers de la gare de Yanov se souviennent de temps autre de Vano et regrettent sa bonne humeur et son expertise. Et si certains de ses choix de carrire ont pu tre contestables, il reste vident qu'avec sa malchance, il n'aurait jamais d s'aventurer sur la route de Pripyat. + + + Un nouveau groupe, constitu d'lments bien entrans, a fait son apparition dans la Zone. Nul ne connat ses objectifs. Certains disent qu'il s'agit d'anciens membres du Monolithe. Leur chef est connu sous le nom d'Arpenteur. + + + Rares sont ceux qui ont remarqu la disparition d'Arpenteur. Il semblerait que son dsir de trouver un moyen de contrer l'emprise du Monolithe l'a conduit sa perte. + + + Le lieutenant Sokolov continue de voler au-dessus de la Zone. Au cours d'une mission de reconnaissance Limansk, son appareil est abattu par des mercenaires, mais il est rcupr deux semaines plus tard par une patrouille prs du Cordon. Un mois aprs, il quitte l'arme de l'air pour rejoindre une compagnie arienne civile. + + + Un nouveau nom vient s'ajouter la longue liste des victimes de l'opration Fairway : "Lieutenant O. N. Sokolov, mort au combat". + + + Le Hibou a russi contacter des clients en dehors de la Zone. Il change des informations et, si elles sont vrifies, en fait bnficier le SBU. + + + Lors d'une mission particulirement forte, un groupe de stalkers est oblig de se rfugier chez Noah. Lorsque la barge est ensuite attaque par des snorks, les stalkers sont forcs de reconnatre que celle-ci constitue une formidable forteresse contre les mutants, mme si le plus tonnant reste la porte de pseudo-chiots que Noah lui-mme mne au combat contre les snorks. + + + Aprs avoir dcouvert le sort de ses amis, Cardan abandonne la carrire de stalker. Parvenant surmonter son alcoolisme, il s'installe Yanov, o il s'associe avec Nitro pour ouvrir un magasin de rparations. Les deux techniciens y passent tout leur temps libre mettre au point un vhicule adapt aux conditions particulires de la Zone. + + + Aprs avoir enfin russi surmonter son alcoolisme, Cardan quitte le Skadovsk la recherche de ses amis. Il revient quelques jours plus tard, bless et gravement empoisonn par les radiations. Ds qu'il est de nouveau sur pied, il repart pour ne jamais revenir. + + + Strelok transmet les informations recueillies dans la centrale de Tchernobyl aux autorits du SBU. Le gouvernement fonde alors un Institut de recherche sur la Zone anormale de Tchernobyl, o Strelok occupe le poste de consultant scientifique en chef. + + + Les connaissances de Strelok disparaissent avec lui. Tout ce qu'il a dcouvert Tchernobyl et qui aurait pu tre utilis pour mieux comprendre la Zone est perdu jamais. Il semblerait que la Zone soit avare de ses secrets... + + + Lorsque le colonel Kovalsky, commandant du groupe Stingray, revient de la Zone, il est oblig de s'expliquer sur les raisons de l'chec de l'opration Fairway. Aprs une enqute interminable et de nombreuses fausses accusations, il est finalement libr de ses obligations envers l'arme, avec les honneurs. + + + Le colonel Kovalsky, commandant du groupe Stingray, repose dsormais non loin de la plupart de ses hommes. Leurs corps sont venus grossir les rangs des victimes de la Zone et seules quelques photographies jaunies tmoignent encore de leur sacrifice. + + diff --git a/gamedata/configs/text/fra/ui_st_credits.xml b/gamedata/configs/text/fra/ui_st_credits.xml new file mode 100644 index 0000000..69909f6 --- /dev/null +++ b/gamedata/configs/text/fra/ui_st_credits.xml @@ -0,0 +1,684 @@ + + + + Sergey Chechin + + + Maciej Abramowicz + + + Armen Abroyan + + + Acteurs + + + Testeurs + + + AMD/ATI + + + Roman Androshiuk + + + Animateur + + + Dpartement Graphismes + + + Directeur artistique + + + Nikita Atroshenko + + + Damian Bajorek + + + Mikhail Bastrykin + + + Kamil Bilinski + + + Krzysztof Binkowski + + + Arkadiusz Bochenek + + + Justin Boggs + + + Anatoly Bogush + + + Wojciech Borowy + + + Stanislaw Burtsau + + + Modlisation des personnages + + + Aleksey Cherevatenko + + + Jerzy Chrul + + + Wojciech Ciemny + + + Compositeur + + + Dmitry Abe Davidyan + + + Aaron Davies + + + Alexander Demidenko + + + Dpartement + + + Programmation + + + Lukasz Derewonko + + + Ruslan Didenko + + + Yuri Doroshenko + + + Elena Dovgaliuk + + + Rafal Durajczyk + + + Petr Dushinsky + + + Maciej Dziarnowski + + + Sergey Eremenko + + + Yuri "Dark Falchenko + + + Jakub Gabryel + + + Cezary Galach + + + Dpartement Conception + + + Programmeurs gameplay + + + CQ CENEGA + + + Un grand merci + + + Filip Gerasimov + + + Grigory Hermann + + + Angelica Girich + + + Pawel Golubinski + + + Marcin Gorniak + + + Tomasz Goscicki + + + Programmeurs graphismes + + + Holger Grun + + + Pawel Grzywaczewski + + + Sergiy Grygorovich + + + Marcin Gutowski + + + Dmitry Yasenev + + + Intel + + + Sergey Ivantsov + + + Norbert Jankowski + + + Alexander Kachaniuk + + + Dmitry Kalita + + + Aleksander Keska + + + Andrey "Darin" Kirienko + + + Lukasz Kobylanski + + + Andrey Kolomiets + + + Artur Komorek + + + Yuri Konstantinov + + + Maria Kotolovskaya + + + Alexander Kovach + + + Kirill Koval + + + Irina Krivchikova + + + Dmitry Krivets + + + Eugene Kuchma + + + Svetlana Kudrya + + + Sergey Kurbatov + + + Olga Kuzhel + + + Dmitry Kuzmenko + + + Aleksey Kuznetsov + + + Oleg Kuznetsov + + + Szymon Lazarski + + + Animateur principal + + + Graphiste principal + + + Concepteur principal + + + Programmeur principal + + + Testeurs principaux + + + Experts principaux + + + Conception des niveaux + + + Relecture + + + Vladimir Litvinenko + + + Eric Lundgren + + + Sergey Maistrenko + + + Dmitry Macedon + + + Roman Malinkin + + + Chefs de projet + + + Alexander Maniliuk + + + Daniel Mankowski + + + Denis Matveenko + + + Maciej Mazurek + + + Piotr Mazurkiewicz + + + Darren McPhee + + + Igor Melnikov + + + Victor Merkulov + + + Damian Mielnik + + + Pavel Mikhailov + + + Konstantin Mironov + + + Un trs grand merci Oleg Fomenko + + + et Buntar Media + + + pour leurs conseils sur la capture de mouvements + + + Vladimir Morev + + + Andrey Moroz + + + Dawid Mrozowski + + + Yuri Negrobov + + + Programmeur mode Multijoueur + + + nVidia + + + Aleksey Omelchuk + + + Lukasz Osinski + + + Mikhail Parfeniuk + + + Eugene Pashin + + + Igor Pasichnyi + + + Bartosz Peas + + + Programmeur moteur physique + + + Jacek Piotrowski + + + Alexander Plichko + + + Dpartement RP + + + Directeur RP + + + Responsables RP + + + Sergey Prishepa + + + Producteur + + + Chef de projet + + + Test + + + Anton Ravin + + + Sebastian Rejent + + + Mateusz Rekorajski + + + Filip Resiak + + + Peter Ross + + + Ivan Rozin + + + Lukasz Ruminski + + + Denis Rutkovsky + + + Lukasz Rynkowski + + + Responsable Dveloppement commercial + + + Piotr Samborowski + + + Maria Shapunova + + + Sergey Shelest + + + Igor Sidorenko + + + Mikolaj Sitkiewicz + + + Yuri Skripal + + + Konstantin Slipchenko + + + Tomasz Sobotka + + + Producteur audio + + + Un grand + + + merci + + + Oleg Stalchuk + + + Liudmila Starodub + + + Vladimir Stavitsky + + + Pawel Stempien + + + Pawel Strzelczyk + + + Crdits + + + Konstantin Stupivtsev + + + Assistance + + + clientle + + + Rafal Szekalski + + + Maciej Szumowski + + + Marcin Szwargolinski + + + Vladimir Tereshiuk + + + Sergey Terliuk + + + Textures + + + Et tous ceux qui nous ont aids + + + rendre le jeu encore meilleur : + + + Konstantin Morozkov + + + Yaroslav "Oncle Yar" Alexandrov + + + Dmitry "Comandor" Ivanov + + + Oleg Chernov + + + Ig. Valerian (Golovchenko) alias oVal + + + M. Bystrykhin + + + Eugene "Mulder" Khaletskiy + + + Pavel "Goon" Bolotov + + + Alexander "Leks" Abramov + + + Alexander Novikov + + + Alexander Poshtaruk, Andrey Oleshk + + + Eugene "KRANZ" Goncharenko + + + Sergey Dvuzhilny + + + Aleksey "Don Reba" Badalov + + + Sergey Dvuzhilny, Tolusha + + + Artem Zuev, alias BAC9-FLCL + + + Glot, Patriot, Mers + + + Tiger, Demesis, Kharon, Moby + + + Alexander Oleinik + + + Konstantin "Inquisitor" Kriuchkov + + + Alexander Shakhovsky, Igor Dolzhenko + + + Sergey "Tur" Leshenko + + + Dmitry "Hill" Gorban + + + Mikhail Kliuev + + + Sergey "Termite" Volchanov + + + Sergey Tikhomirov + + + Ilya Tolmachev + + + Jakub Trudzik + + + Conception de l'interface + + + Yuri Doroshenko + + + Denis "Tetri$Zs" Yusupov + + + RandyJ VanderHeyden + + + Vladimir Vazhinsky + + + Andrey Verpakhovsky + + + Alexander Vilkov + + + Anastassia Voskolovich + + + Andrzej Wardziak + + + Programmeur Web + + + Dominik Wojcik + + + Lukasz Watroba + + + Eugene Yablon + + + Yuri Yatsenko + + + Eugene Yatsiuk + + + Oleg Yavorsky + + + Valentin Yeltyshev + + + Eugene Zaitsev + + + Andrey Zakoliukin + + + Marek Zdziarski + + + Michal Zegarski + + + Albert Zmudzki + + + Aleksey Zorin + + + Bartosz Zukowski + + + Victoria "Morrant" Yukhno + + + Sergey "ion" Kalintsev + + + Roman "RVCool" Kulikov + + + Maxim Smirnov + + + Omar Al-Shekhly + + + Roman =Marauder= Arhipov + + diff --git a/gamedata/configs/text/fra/ui_st_inventory.xml b/gamedata/configs/text/fra/ui_st_inventory.xml new file mode 100644 index 0000000..c6da35f --- /dev/null +++ b/gamedata/configs/text/fra/ui_st_inventory.xml @@ -0,0 +1,303 @@ + + + + Fonds insuffisants + + + Le personnage n'a pas assez d'argent. + + + $$ACTION_QUICK_USE_1$$ + + + $$ACTION_QUICK_USE_2$$ + + + $$ACTION_QUICK_USE_3$$ + + + $$ACTION_QUICK_USE_4$$ + + + activer l'artefact + + + monter le lance-grenades sur + + + monter la lunette sur + + + monter le silencieux sur + + + Prix + + + Groupe : + + + tat + + + dmonter le lance-grenades + + + dmonter la lunette + + + dmonter le silencieux + + + mettre la combinaison + + + jeter + + + tout jeter + + + manger + + + kg + + + fixer la ceinture + + + dplacer vers le sac dos + + + dplacer vers un emplacement + + + Le marchand n'est pas intress par ce genre d'objets. + + + Cet objet est en trop mauvais tat pour pouvoir tre vendu. + + + jouer + + + vendre l'objet + + + tat de l'armure + + + Irradiation + + + enlever la combinaison + + + dcharger + + + utiliser + + + Poids + + + Taille du chargeur + + + Prcision + + + Acheter des munitions standard pour le pistolet (A) + + + Acheter des munitions standard pour le fusil (W) + + + Soin des blessures + + + Annuler + + + Achat de l'arme impossible + + + Restrictions de quantit + + + Dgts + + + Par dfaut (F5) + + + Retour + + + Acheter un lance-grenades pour le fusil (D) + + + Acheter des grenades pour le lance-grenades (E) + + + Prise en main + + + Maintenant + + + Rgn. de la sant + + + Lourde + + + Acheter le set prcdent + + + Derniers objets (F4) + + + Argent + + + Requis + + + Fonds insuffisants + + + OK + + + Poids emport + + + Prot. thermique + + + Prot. chimique + + + Armure + + + Prot. antiradiations + + + Prot. lectrique + + + Prot. anti-psi + + + Abs. des impacts + + + Rcupration d'nergie + + + Set 1 (F1) + + + Set 2 (F2) + + + Set 3 (F3) + + + Radiations + + + Restriction de rang + + + Cadence de tir + + + Effacer (C) + + + Fusil d'assaut + + + Rassasiement + + + Acheter une lunette pour le fusil (S) + + + Vendre tous les objets du sac dos (X) + + + Fusils + + + Acheter un silencieux pour le pistolet (Q) + + + Acheter un silencieux pour le fusil (F) + + + Prcision + + + Heure + + + Dj possd + + + Services en ligne de S.T.A.L.K.E.R. inaccessibles. + + + Connexion au serveur principal impossible. + + + Protection : + + + Par dfaut + + + Set achet enregistr sous + + + Poids total : + + + boire + + + Rcupration d'nergie + + + Saignement + + + Poids maximal + + + Sant + + + Munitions + + + Dure + + + sec. + + + Permet de survivre une mission + + + mettre casque + + + retirer casque + + diff --git a/gamedata/configs/text/fra/ui_st_ixray.xml b/gamedata/configs/text/fra/ui_st_ixray.xml new file mode 100644 index 0000000..9875415 --- /dev/null +++ b/gamedata/configs/text/fra/ui_st_ixray.xml @@ -0,0 +1,62 @@ + + + + S.T.A.L.K.E.R.: Appel de Pripyat + + + Menu principal + + + Niveau : + + + Sauvegarde rapide + + + Sauvegarde automatique + + + + m + + + Distance de frappe + + + + Ouvrir le coffre ($$ACTION_USE$$) + + + Utiliser ($$ACTION_USE$$) + + + + Libre + + + + Rechargement automatique + + + + Chargement multithread des textures + + + Carte des ombres + + + 1024x1024 + + + 2048x2048 + + + 3072x3072 + + + 4096x4096 + + + Toujours actif + + diff --git a/gamedata/configs/text/fra/ui_st_keybinding.xml b/gamedata/configs/text/fra/ui_st_keybinding.xml new file mode 100644 index 0000000..2176fe3 --- /dev/null +++ b/gamedata/configs/text/fra/ui_st_keybinding.xml @@ -0,0 +1,225 @@ + + + + PDA + + + Ordonner d'attaquer + + + Marcher + + + Artefact + + + Retour + + + Jumelles + + + Menu Achat + + + Chat + + + Chat en quipe + + + Console + + + Contacts du PDA + + + S'accroupir + + + Mode accroupi + + + Dtecteur + + + Bas + + + Lcher + + + Tirer + + + Mode de tir suivant + + + Mode de tir prcdent + + + Avancer + + + Lance-grenades sous le canon + + + Gnral + + + Direction + + + Sac dos + + + Dplacement + + + Multijoueur + + + Arme + + + Sac dos + + + Sauter + + + Gauche + + + Se pencher gauche + + + Pas vers la gauche + + + Carte du PDA + + + Arme suivante + + + Dispositif de vision nocturne + + + Pause + + + PDA + + + Arme prcdente + + + Retour + + + Recharger + + + Rparer + + + Droite + + + Se pencher droite + + + Pas vers la droite + + + Points + + + Capture d'cran + + + Menu de slection des modles + + + Courir + + + Menu de slection des quipes + + + Lampe de poche + + + Activer + + + Haut + + + Accepter + + + Pansement rapide + + + Mdikit rapide + + + Lancer vote + + + Voter + + + Voter "Non" + + + Voter "Oui" + + + Arme 1 + + + Arme 2 + + + Arme 3 + + + Arme 4 + + + Arme 5 + + + Arme 6 + + + Changer de type de munitions + + + Arme prcdente de ce type + + + Zoomer + + + Messages vocaux (1) + + + Messages vocaux (2) + + + Emplacement d'accs rapide 1 + + + Emplacement d'accs rapide 2 + + + Emplacement d'accs rapide 3 + + + Emplacement d'accs rapide 4 + + diff --git a/gamedata/configs/text/fra/ui_st_loadscreen.xml b/gamedata/configs/text/fra/ui_st_loadscreen.xml new file mode 100644 index 0000000..d263d71 --- /dev/null +++ b/gamedata/configs/text/fra/ui_st_loadscreen.xml @@ -0,0 +1,474 @@ + + + + 100 CONSEILS POUR SURVIVRE DANS LA ZONE + + + Tirer dans l'il d'un ennemi l'achve instantanment, quelles que soient les protections qu'il porte. + + + L'AC-96/2 dispose d'un mode de tir de deux balles conscutives qui atteindront le mme point. + + + Les fusils pompe double canon permettent de tirer deux balles presque simultanment. + + + Ne sous-estimez pas les pistolets ! Ils offrent une excellente puissance d'arrt et sont trs efficaces contre des cibles peu blindes. + + + La vitesse initiale et la grande prcision des fusils de prcision en font des armes idales pour liminer des cibles loignes. Ces fusils sont cependant moins efficaces courte porte. + + + Vous tes bien moins prcis lorsque vous tirez en vous dplaant que lorsque vous restez immobile ou tes accroupi. + + + Les armes et les combinaisons de protection s'abment rapidement dans les conditions hostiles de la Zone. Les armes vtustes offrent moins de prcision et peuvent s'enrayer. Les combinaisons uses, quant elles, n'offrent plus qu'une protection limite. + + + Pour faire une capture d'cran, appuyez sur "$$ACTION_SCREENSHOT$$". + + + L'artefact ou le joueur en sa possession s'affiche sur la mini-carte. Si l'artefact est loign, une flche indique dans quelle direction il se trouve. + + + L'AC-96/2 dispose d'un mode de tir de deux balles conscutives qui atteindront le mme point. + + + Les fusils pompe double canon permettent de tirer deux balles presque simultanment. + + + Ne sous-estimez pas les pistolets ! Ils offrent une excellente puissance d'arrt et sont trs efficaces contre des cibles peu blindes. + + + La vitesse initiale et la grande prcision des fusils de prcision en font des armes idales pour liminer des cibles loignes. Ces fusils sont cependant moins efficaces courte porte. + + + Les armes et les combinaisons de protection s'abment rapidement dans les conditions hostiles de la Zone. Les armes vtustes offrent moins de prcision et peuvent s'enrayer. Les combinaisons uses, quant elles, n'offrent plus qu'une protection limite. + + + Certains mdicaments possdent des proprits uniques. Ainsi, les comprims Hercule vous permettent de transporter des charges plus lourdes, tandis que les mdicaments anti-psi vous aident rsister aux missions psi. + + + Pour faire une capture d'cran, appuyez sur "$$ACTION_SCREENSHOT$$". + + + Conseil n + + + La Vodka, une alternative bon march aux mdicaments antiradiations, est le moyen le plus simple d'attnuer les effets physiques des radiations. + + + Appuyez longuement sur "$$ACTION_SCORES$$" pour afficher des informations dtailles sur la mission en cours. + + + Il vous faut un dtecteur pour trouver des artefacts. Les meilleurs dispositifs facilitent la recherche et peuvent mme identifier des artefacts plus rares. + + + Les stalkers ne laissent pas entrer les hommes arms dans leur camp. Pour dissimuler votre arme, appuyez sur la commande adquate ("$$ACTION_WPN_1$$", "$$ACTION_WPN_2$$", "$$ACTION_WPN_3$$", "$$ACTION_WPN_4$$"). + + + Vous pouvez localiser le primtre d'une anomalie en lanant des boulons. Pour en sortir un, appuyez sur "$$ACTION_WPN_6$$". + + + En plus de vous rassasier, la nourriture rgnre lgrement votre sant. + + + Les boissons nergtiques amliorent temporairement votre capacit rcuprer, ce qui augmente votre endurance et votre mobilit. + + + Si votre niveau d'endurance chute trop, vous risquez de vous retrouver immobilis et vulnrable. + + + Consultez les indicateurs de dtection d'ennemis et de bruit, situs dans le coin suprieur gauche de l'cran, pour savoir si vous risquez de vous faire reprer. + + + Tenir un dtecteur dans une main ne vous empche pas d'utiliser un couteau, un pistolet ou un boulot de l'autre. + + + Certains mdicaments amliorent la rsistance physique aux effets nocifs et peuvent vous sauver la vie lors de missions dans les secteurs anormaux. + + + Pour afficher le menu contextuel des objets de votre sac dos, placez le curseur sur l'objet en question et faites un clic droit. + + + Les artefacts ont des effets bnfiques, mais la plupart sont galement radioactifs. Pour contrer ces effets, il suffit d'utiliser des artefacts capables d'absorber les radiations. + + + Votre couteau n'est pas efficace contre les ennemis quips d'armes feu. Utilisez-le au combat rapproch ou pour liminer une cible en toute discrtion. + + + Le poids que vous transportez fait chuter votre endurance. Un excs de poids peut restreindre votre mobilit et une surcharge vous empchera de vous dplacer. + + + Le dtecteur est le seul moyen fiable de trouver des artefacts dans les anomalies. + + + La plupart des artefacts restent invisibles lorsqu'ils se dplacent dans l'anomalie et ce, jusqu' ce qu'ils soient identifis par votre dtecteur. + + + Les mutants deviennent plus actifs la nuit venue, ce qui explique pourquoi les stalkers prfrent attendre le lever du soleil pour s'aventurer dans la Zone. + + + Si vous avez t irradi, utilisez des mdicaments antiradiations. Si vous n'en avez pas, utilisez des mdikits pour traiter les premiers symptmes en attendant de consulter un mdecin. + + + La plupart des stalkers peuvent vous conduire des endroits proches, mais seul un guide expriment pourra vous emmener rapidement et en toute scurit dans des lieux loigns. Cependant, ce service vous cotera les yeux de la tte. + + + La vente d'artefacts n'est pas le seul moyen de gagner de l'argent : se dbarrasser de l'quipement inutile peut aussi rapporter gros. Et n'oubliez pas que les marchands ne sont pas intresss par des objets trop abms. + + + Pour dmonter le silencieux, la lunette ou le lance-grenade de l'une de vos armes, faites un clic droit sur l'arme dans votre sac dos et slectionnez l'action correspondante dans le menu contextuel. + + + Si vous souhaitez vous dplacer en faisant un minimum de bruit, appuyez sur "$$ACTION_ACCEL$$" pour marcher ou sur "$$ACTION_CROUCH$$" pour vous accroupir. + + + Le fusil pompe est une arme de combat rapproch. Plus votre ennemi est loin, moins l'arme est efficace. + + + Lorsque vous vous mettez couvert pour viter des tirs ennemis, prenez soin de vous abriter derrire des lments solides. la diffrence des murs en bton, les planches de bois et les taules n'arrtent pas les balles. + + + Les tirs en pleine tte infligent des dgts critiques et tuent la plupart des ennemis sur le coup. + + + Chaque espce de mutants de la Zone possde ses propres caractristiques de combat. Tchez de vous en souvenir ! + + + Appuyez longuement sur "$$ACTION_WPN_ZOOM$$" pour choisir quelle distance lancer une grenade. + + + Vos ennemis n'hsiteront pas utiliser des grenades. Lorsque l'indicateur de grenade s'affiche l'cran, loignez-vous de la zone d'effet le plus vite possible ! + + + Prenez votre lan avant de sauter pour franchir de grands fosss et crevasses d'un bond ! + + + Les indicateurs de sant et d'endurance s'affichent dans le coin infrieur droit de l'cran. + + + La Zone est en constante activit, ce qui signifie que vous risquez de tomber sur des mutants ou des stalkers ennemis dans des lieux que vous avez dj visits. + + + Restez sur vos gardes et ne vous fiez jamais d'anciennes informations ! Lorsque vous retournerez dans une anomalie que vous avez dj visite, vous remarquerez vite que le passage que vous aviez trouv a disparu. + + + N'hsitez pas parler aux stalkers pour obtenir des informations utiles sur de nouvelles zones ou des vnements rcents ! + + + Vous pouvez placer n'importe quelle arme dans les deux emplacements prvus cet effet, afin de pouvoir alterner entre elles (par exemple, fusil d'assaut/fusil pompe ou pistolet/fusil de prcision). + + + Chaque marchand des diffrents camps de stalkers propose des marchandises uniques et varies. Par exemple, les mdecins disposent de la meilleure gamme de produits mdicaux. + + + Si vous arrivez bless ou irradi dans un camp de stalkers, le mdecin local vous soignera gratuitement. + + + Vous pouvez dposer vos effets personnels dans votre cantine du camp pour viter de transporter des objets inutiles. + + + Si vous devez attendre une heure prcise, pourquoi ne pas faire un petit somme ? Pour cela, trouvez une zone de repos, appuyez sur "$$ACTION_USE$$" et dfinissez la dure de votre sieste. + + + Le dispositif de vision nocturne install dans votre casque peut tre amlior, ce qui accrot sensiblement sa porte. + + + Lorsque vous explorez la Zone, pensez prendre quelques chargeurs supplmentaires, ils vous seront forcment utiles. + + + N'oubliez pas de sauvegarder rgulirement ! Cela vous vitera d'avoir recommencer plusieurs fois les mmes passages. + + + Il est utile de connatre les effets d'un mdicament afin de l'utiliser bon escient. Lisez la notice pour connatre les effets de certains produits ! + + + Utilisez des grenades pour attaquer les ennemis couvert ! Prenez leur rayon d'effet en considration afin d'viter de blesser vos allis ! + + + Pour retirer un objet de votre sac dos, faites un clic droit sur l'objet en question et slectionnez l'action correspondante dans le menu contextuel. + + + Vous pouvez activer la sauvegarde automatique dans le menu Options pour que votre partie soit sauvegarde rgulirement. + + + Ds votre retour au camp, faites rparer votre quipement, vendez le butin inutile et faites le plein de munitions et de fournitures mdicales. + + + Afin de rduire les effets nocifs des anomalies lors de raids dans la Zone, utilisez une combinaison de protection, des artefacts et les mdicaments adquats. + + + En plus des armes et des munitions, les cadavres des ennemis peuvent recler des objets de valeur comme des PDA contenant des informations utiles. + + + Les artefacts ne sont pas que des objets de valeur : en plus d'tre lgers et prcieux, ils s'avrent souvent extrmement utiles. + + + De nombreux mutants de la Zone sont radioactifs. Il est donc extrmement dangereux de s'en approcher sans protection antiradiation. + + + Vous pouvez utiliser un pansement, un mdikit militaire ou des mdicaments Vinca pour stopper les hmorragies. Pensez vous soigner rapidement, votre vie en dpend ! + + + Certaines armes peuvent tre quipes d'une lunette de longue porte. Pour ajuster la porte, appuyez sur "$$ACTION_NEXT_SLOT$$" ou "$$ACTION_PREV_SLOT$$". + + + Certains endroits sont infranchissables, mme en position accroupie. Pour vous accroupir le plus bas possible, appuyez longuement sur "$$ACTION_CROUCH$$" et "$$ACTION_ACCEL$$" simultanment. + + + Afin d'viter les tirs ennemis, mettez-vous couvert derrire un mur et penchez-vous pour tirer. Pour ce faire, appuyez longuement sur "$$ACTION_LLOOKOUT$$" ou "$$ACTION_RLOOKOUT$$". + + + Grce un systme de localisation intgr, vos jumelles vous permettent non seulement d'observer des objets loigns, mais aussi de reprer vos ennemis. Pour sortir vos jumelles, appuyez sur "$$ACTION_WPN_5$$". + + + Pour allumer ou teindre votre lampe de poche, appuyez sur "$$ACTION_TORCH$$". + + + Pour sortir un boulon, appuyez sur "$$ACTION_WPN_6$$". + + + Si votre casque est quip d'un dispositif de vision nocturne, vous pouvez l'activer et le dsactiver en appuyant sur "$$ACTION_NIGHT_VISION$$". + + + Appuyez sur "$$ACTION_QUICK_USE_1$$", "$$ACTION_QUICK_USE_2$$", "$$ACTION_QUICK_USE_3$$" ou "$$ACTION_QUICK_USE_4$$" pour utiliser un objet de la fentre d'accs rapide. + + + Les mdicaments n'ont pas un effet immdiat et certains peuvent agir de faon prolonge. + + + Votre PDA contient une carte, des informations concernant vos missions actuelles, vos statistiques et un journal. Pour l'ouvrir, appuyez sur "$$ACTION_ACTIVE_JOBS$$". + + + Vous devez utiliser votre dtecteur pour trouver des artefacts. Pour le sortir, appuyez sur "$$ACTION_SHOW_DETECTOR$$". + + + Pour mettre le jeu en pause, appuyez sur "$$ACTION_PAUSE$$". + + + Pour effectuer une sauvegarde rapide, appuyez sur "$$ACTION_QUICK_SAVE$$". Appuyez sur "$$ACTION_QUICK_LOAD$$" pour charger la dernire sauvegarde rapide. + + + N'oubliez pas que vous puisez dans vos rserves d'nergie lorsque vous courez. Appuyez sur "$$ACTION_SPRINT_TOGGLE$$" pour courir. + + + Utilisez le viseur de votre arme pour tirer avec plus de prcision. Pour viser, appuyez sur "$$ACTION_WPN_ZOOM$$". + + + Si un lance-grenades est mont sous le canon de votre arme, vous pouvez alterner entre le mode lance-grenades et le mode de tir normal en appuyant sur "$$ACTION_WPN_FUNC$$". + + + Si votre arme actuelle peut tirer diffrents types de munitions, vous pouvez choisir celles que vous souhaitez utiliser en appuyant sur "$$ACTION_WPN_NEXT$$". + + + Pour recharger votre arme avant que le chargeur ne soit vide, appuyez sur "$$ACTION_WPN_RELOAD$$". + + + Appuyez sur "$$ACTION_DROP$$" pour jeter l'arme que vous tenez en main. + + + En cas d'mission, pensez vous mettre couvert dans un btiment sr ou sous terre. Lorsqu'une mission est imminente, l'abri le plus proche s'affiche sur votre PDA. + + + Pour placer un objet dans la fentre d'accs rapide, faites-le glisser de votre sac dos vers l'un des quatre emplacements situs au-dessus des poches artefacts. + + + Une goutte de sang s'affiche dans le coin infrieur droit de l'cran lorsque vous saignez pour vous signaler que vous devez stopper l'hmorragie. La couleur du symbole indique la gravit du saignement. + + + Lorsqu'un symbole de danger de radiation s'affiche dans le coin infrieur droit de l'cran, cela signifie que vous avez t irradi et devez utiliser des mdicaments antiradiations. La couleur du symbole reprsente le niveau d'exposition. + + + Vous pouvez utiliser diffrents filtres pour masquer ou afficher des indicateurs sur la carte de votre PDA. Les boutons des filtres se trouvent au-dessus de la carte, sous la ligne de la mission en cours. + + + En gnral, les artefacts ne restent pas immobiles : ils ont tendance se dplacer dans les anomalies. Attention ne pas courir aprs un artefact sans prendre de prcaution car vous risqueriez de finir dans une anomalie. + + + Certains stalkers peuvent vous proposer des renseignements, des marchandises exclusives, ou vous demander de trouver des artefacts spcifiques. + + + Aprs une mission, de nouveaux artefacts sont susceptibles d'apparatre dans les anomalies que vous avez dj explores. + + + Vous pouvez modifier le niveau de difficult du jeu tout moment dans le menu Options de jeu. + + + Les techniciens des camps de stalkers peuvent amliorer vos armes, vos combinaisons et vos casques. + + + Pour survivre dans la Zone, prtez toujours une oreille attentive aux craquements de votre compteur Geiger et gardez un il sur le signal d'alerte d'anomalie qui vous indique la proximit d'une formation anormale. + + + Vos relations avec les autres ont un impact sur le prix des marchandises et des services. Si vous tes en froid avec un marchand, ne vous attendez pas une ristourne ! Mais si vous tes en bons termes, il vous fera peut-tre une offre intressante. + + + Dchargez les armes que vous trouvez pour rcuprer leurs munitions. Pour cela, faites un clic droit sur l'arme dans votre sac dos et slectionnez l'action correspondante dans le menu contextuel. + + + liminez des ennemis et rcuprez des artefacts pour obtenir des points et passer au rang suivant. Vous aurez alors accs de nouvelles armes et armures et des quipements indits. + + + Utilisez des grenades fumignes pour voler un artefact ou crer un cran de fume. + + + La partie gauche du menu Achat contient cinq onglets, de haut en bas : pistolets, armes principales, quipement, munitions et fournitures mdicales. Slectionnez un onglet pour afficher les objets disponibles. + + + Le menu Achat droite contient quatre emplacements d'achats rapides. Slectionnez la disquette pour sauvegarder le set et appuyez sur le chiffre correspondant pour le charger. Le 4e emplacement sert sauvegarder automatiquement le dernier set achet. + + + Si vous possdez plus d'une arme, vous pouvez les parcourir en appuyant plusieurs reprises sur "$$ACTION_WPN_3$$". + + + Vous pouvez activer un artefact pour crer une anomalie. Pour ce faire, appuyez sur "$$ACTION_ARTEFACT$$" et appuyez longuement sur "$$ACTION_WPN_FIRE$$". L'anomalie qui apparat est aussi dangereuse pour l'ennemi que pour celui qui l'a cre. + + + Une combinaison scientifique peut vous permettre de survivre dans les anomalies et les zones radioactives. + + + CHASSE AUX ARTEFACTS : pour gagner, vous devez rapporter un certain nombre d'artefacts dans votre base. + + + Pour dmonter le silencieux, la lunette ou le lance-grenade de l'une de vos armes, faites un clic droit sur l'arme dans votre sac dos et slectionnez l'action correspondante dans le menu contextuel. + + + Afin de vous dplacer en faisant un minimum de bruit, appuyez sur "$$ACTION_ACCEL$$" pour marcher ou sur "$$ACTION_CROUCH$$" pour vous accroupir. + + + Le fusil pompe est une arme de combat rapproch. Plus votre ennemi est loin, moins l'arme est efficace. + + + Lorsque vous vous mettez couvert pour viter des tirs ennemis, prenez soin de vous abriter derrire des lments solides. la diffrence des murs en bton, les planches de bois et les taules n'arrtent pas les balles. + + + Les tirs en pleine tte infligent des dgts critiques et tuent la plupart des ennemis sur le coup. + + + Le fait de courir, sauter ou tre bless rduit nettement votre endurance. + + + Appuyez longuement sur "$$ACTION_WPN_ZOOM$$" pour choisir quelle distance lancer une grenade. + + + Vos ennemis n'hsiteront pas utiliser des grenades. Lorsque l'indicateur de grenade s'affiche l'cran, loignez-vous de la zone d'effet le plus vite possible ! + + + MATCH MORT : marquez le plus de points pour gagner. + + + Prenez votre lan avant de sauter pour franchir de grands fosss et crevasses d'un bond ! + + + Les indicateurs de sant et d'endurance s'affichent dans le coin infrieur droit de l'cran. + + + La mini-carte vous indique dans quelle direction se trouvent les artefacts. Si la flche pointe vers le haut, l'artefact se trouve au-dessus de votre position actuelle. Si la flche pointe vers le bas, il se trouve en dessous de vous. + + + Rcuprez les sacs dos de vos ennemis pour rcuprer de l'argent ! Vous pourrez revendre l'quipement inutile la base. + + + Vous devez tout prix protger votre coquipier qui transporte l'artefact. + + + Utilisez des grenades pour attaquer les ennemis couvert ! Prenez leur rayon d'effet en considration afin d'viter de blesser vos allis ! + + + Vous pouvez communiquer avec vos coquipiers via le chat vocal. Pour accder au menu correspondant, appuyez sur "$$ACTION_SPEECH_MENU_0$$" ou "$$ACTION_SPEECH_MENU_1$$". + + + MATH MORT EN QUIPE : pour gagner, votre quipe doit faire plus de victimes que l'adversaire. + + + Pour commencer un vote, appuyez sur "$$ACTION_VOTE_BEGIN$$". + + + Pour afficher les scores, appuyez sur "$$ACTION_SCORES$$". + + + Pour rapparatre, appuyez sur "$$ACTION_JUMP$$" la fin de la priode d'attente. + + + Pour ouvrir le menu Achat, appuyez sur "$$ACTION_BUY_MENU$$" lorsque vous tes dans votre base. + + + Pour ouvrir le canal de chat gnral, appuyez sur "$$ACTION_CHAT$$". Pour communiquer uniquement avec votre quipe par crit, appuyez sur "$$ACTION_CHAT_TEAM$$". + + + N'oubliez pas que vous puisez dans vos rserves d'nergie lorsque vous courez ! Appuyez sur "$$ACTION_SPRINT_TOGGLE$$" pour courir. + + + Utilisez le viseur de votre arme pour tirer avec plus de prcision. Pour viser, appuyez sur "$$ACTION_WPN_ZOOM$$". + + + Si un lance-grenades est mont sous le canon de votre arme, vous pouvez alterner entre le mode lance-grenades et le mode de tir normal en appuyant sur "$$ACTION_WPN_FUNC$$". + + + Si votre arme actuelle peut tirer diffrents types de munitions, vous pouvez choisir celles que vous souhaitez utiliser en appuyant sur "$$ACTION_WPN_NEXT$$". + + + Pour recharger votre arme avant que le chargeur ne soit vide, appuyez sur "$$ACTION_WPN_RELOAD$$". + + + CAPTURE D'ARTEFACTS : pour gagner, vous devez rapporter un certain nombre d'artefacts ennemis dans votre base. + + + Appuyez sur "$$ACTION_DROP$$" pour jeter l'arme que vous tenez en main. + + + Pour regarder dans votre sac dos, appuyez sur "$$ACTION_INVENTORY$$". + + + La plupart des armes disposent de plusieurs modes de tirs. Appuyez sur "$$ACTION_WPN_FIREMODE_NEXT$$" ou "$$ACTION_WPN_FIREMODE_PREV$$" pour passer d'un mode l'autre. + + + Certains endroits sont infranchissables, mme en position accroupie. Pour vous accroupir le plus bas possible, appuyez longuement sur "$$ACTION_CROUCH$$" et "$$ACTION_ACCEL$$" simultanment. + + + Pour regarder au dtour d'un angle, appuyez sur "$$ACTION_LLOOKOUT$$" ou "$$ACTION_RLOOKOUT$$". Sachez que vous ne pouvez pas tirer en mme temps. + + + CAPTURE D'ARTEFACTS : pour rapporter un artefact vol dans votre base, vous devez tuer son porteur et ramasser l'artefact en appuyant sur "$$ACTION_USE$$". + + + CHASSE AUX ARTEFACTS : vous pouvez dtruire un artefact en l'activant. Pour ce faire, appuyez sur "$$ACTION_ARTEFACT$$" et appuyez longuement sur "$$ACTION_WPN_FIRE$$". + + + Vous ne pouvez pas courir lorsque vous transportez l'artefact. + + + Pour regarder dans votre sac dos, appuyez sur "$$ACTION_INVENTORY$$". + + + Pour rparer une arme, une combinaison ou un casque, vous devez trouver un technicien, slectionner l'objet concern dans l'cran des modifications, puis cliquer sur le bouton Rparer. Vous pouvez galement faire un clic droit dans cette fentre pour afficher le menu contextuel correspondant. + + + La plupart des armes disposent de plusieurs modes de tirs par dfaut et vous pouvez en ajouter d'autres par la suite l'aide de modifications. Passez d'un mode un autre en appuyant sur "$$ACTION_WPN_FIREMODE_NEXT$$" ou "$$ACTION_WPN_FIREMODE_PREV$$". + + + La vitesse initiale a une influence sur la trajectoire de la balle, alors que la prise en main reprsente le temps pris par la mire pour revenir sa position d'origine aprs un tir. + + + Certaines combinaisons disposent de casques intgrs. Il n'est donc pas possible d'utiliser d'autres casques avec celles-ci. + + + Chaque arme a des caractristiques de prcision, prise en main, dgts et cadence de tir qui lui sont propres, ce qui vous permet de choisir celle qui vous convient le mieux. + + + Votre prcision de tir baisse trs nettement lorsque vous vous dplacez. Restez immobile ou mettez-vous accroupi. + + + Cette boisson nergtique acclre temporairement la rcupration de l'endurance, ce qui vous permet de courir plus longtemps. + + + Vous disposez de munitions illimites en mode Match mort. + + + Les radiations sont l'un des dangers les plus courants de la Zone. Une exposition prolonge dtriore votre tat de sant et conduit, sans traitement, une mort certaine. + + + N'oubliez pas d'emporter des provisions lorsque vous partez pour un raid de longue dure. Quand vous tes affam, votre endurance en ptit. + + diff --git a/gamedata/configs/text/fra/ui_st_mm.xml b/gamedata/configs/text/fra/ui_st_mm.xml new file mode 100644 index 0000000..149b214 --- /dev/null +++ b/gamedata/configs/text/fra/ui_st_mm.xml @@ -0,0 +1,939 @@ + + + + Clair + + + Nuageux + + + intermdiaire + + + maximum + + + haute + + + basse + + + minimum + + + Nuit + + + Pluvieux + + + TYPE DE PARTIE + + + matre + + + bleu + + + vtran + + + ICONES + + + CARTE + + + Rapport par activation + + + Activer le vote + + + Dure des anomalies (min) + + + Capture d'artefact + + + Absence d'artefact + + + Nombre d'artefacts + + + Temps de l'artefact + + + Retour de l'artefact + + + quilibrage auto. quipes + + + Changement auto. quipe + + + CARTES DISPONIBLES + + + Annuler + + + Numro de srie + + + vrifier numro de srie + + + Client + + + Crer + + + Invulnrabilit (sec.) + + + Indicateur d'invulnrabilit + + + Morts + + + Ddi + + + Liste dmo + + + Statistiques joueur + + + Enregistrer dmo + + + Enregistrement dmo + + + Vide + + + Filtres + + + Rapparition force (sec.) + + + Limite de frags + + + Frags + + + Dlai + + + Tir alli + + + Indicateur allis + + + Noms allis + + + Plein + + + Mode + + + IP/hte:port + + + Internet + + + Connexion + + + Rseau local + + + Serveur joueur + + + Recommencer + + + Liste de cartes + + + Limite de joueurs + + + Connexion rseau + + + Sans anomalie + + + Options + + + Mot de passe + + + Nom du joueur : + + + Joueurs + + + nombre de joueurs + + + Server Internet + + + Actu. rapide + + + Coeff. de changement + + + Actualiser tout + + + Renforts (sec.) + + + Options rapparition + + + CARTES SLECTIONNES + + + Serveur + + + Liste des serveurs + + + Proprits du serveur + + + Infos serveur + + + Serveur + + + Nom du serveur + + + Paramtres du serveur + + + Spectateur + + + Vue subjective + + + Camra libre + + + Troisime personne libre + + + Troisime personne + + + Paramtres spectateur + + + quipe seulement + + + Mto initiale + + + score + + + Chrono (min.) + + + chauffement (sec.) + + + Options mto + + + Sans tir alli + + + Sans mot de passe + + + Sans PunkBuster + + + Avec mot de passe + + + Rseau local + + + Internet + + + Usine "Agroprom" + + + Gare routire + + + Bassin + + + Changement de nom unique russi ! + + + Valle obscure + + + Usine de "Yantar" + + + erreur de connexion au serveur de statistiques + + + erreur de connexion au serveur de connexion + + + autorisation termine + + + Village dsert + + + Entrepts militaires + + + nom incorrect + + + Bassin + + + Gare + + + Usine de "Rostok" + + + nom unique incorrect + + + Voulez-vous vraiment retirer + + + Usine dsaffecte + + + PING + + + JOUEURS + + + clairage statique + + + clairage dynamique complet + + + clairage dyn. complet amlior + + + clairage dynamique des objets + + + clairage dyn. comp. opt. (DX10) + + + NOM DU SERVEUR + + + Chasse aux artefacts + + + Capture d'artefact + + + Match mort + + + Filtre : + + + lev + + + faible + + + intermdiaire + + + sans + + + expriment + + + stalker lgendaire + + + bleu + + + professionnel + + + vtran + + + Jeu en quipe + + + Frquence 60 Hz + + + Action + + + Avanc + + + Alternative + + + Filtrage des textures + + + Appliquer + + + Retour + + + Sang + + + Luminosit + + + Annuler + + + Mises jour + + + Contraste + + + Commandes + + + Crdits + + + Dist. cible sur rticule + + + Par dfaut + + + Supprimer + + + Voulez-vous vraiment supprimer le fichier ? + + + Densit de l'herbe + + + Difficult + + + Dconnexion + + + Voulez-vous vraiment vous dconnecter ? + + + Profondeur de champ + + + Rticule dynamique + + + Musique dynamique + + + EAX + + + Plein cran + + + Partie + + + Gamma + + + Dtail des objets + + + Souris inverse + + + Commande + + + Configuration du clavier + + + Dernire sauvegarde + + + Distance d'clairage + + + Charger + + + Charger partie + + + Quitter profil + + + Matre + + + Volume effets + + + Sensibilit de la souris + + + Objets de test A adoucis + + + Adoucissement optimis + + + MULTIJOUEUR + + + Multijoueur + + + Volume musique + + + Les modifications ne seront appliques qu'aprs le redmarrage du jeu. + + + Multijoueur + + + Nouvelle partie + + + Dbutant + + + PNJ avec lampes de poche + + + OPTIONS + + + Options + + + Distance des particules + + + Paramtres de rendu + + + Retour Windows + + + Quitter + + + Voulez-vous vraiment quitter le jeu ? + + + Voulez-vous vraiment revenir Windows ? + + + Bump mapping + + + Steep parallax + + + Ombres du soleil + + + Ombres de l'herbe + + + Qualit du soleil + + + Utilise DX10.1 + + + Lissage plein cran + + + Surfaces mouilles + + + Optimisation du tampon gomtrique + + + Fume volumtrique + + + Rendu 2 + + + Type de rendu + + + Rsolution + + + Reprendre + + + Sauvegarder + + + Sauvegarder + + + Afficher rticule + + + Afficher l'arme + + + Basiques + + + Priphrique sonore + + + Particules adoucies + + + Eau adoucie + + + Audio + + + Qualit audio + + + Stalker + + + Qualit des ombres + + + Rayons du soleil + + + Anticrnelage + + + L'IA utilise des lampes de poche. + + + Dtail des textures + + + Identification de PNJ + + + Vtran + + + Graphismes + + + Distance de vision + + + Lumire volumtrique + + + Synchronisation verticale + + + Modifier nom unique + + + Email dj utilis + + + Via internet + + + Via rseau local + + + poignard dans le dos + + + par hmorragie + + + dans une explosion + + + dans l'il + + + dans la tte + + + La version du fichier de sauvegarde ne correspond pas celle du programme. + + + tueur en srie + + + couteau + + + Dernier set + + + Accder au mode Multijoueur + + + Nom + + + Changer + + + Set 1 + + + Set 2 + + + Set 3 + + + Rtablir + + + Tout vendre + + + Version + + + Pripyat + + + Mode accroupi/debout + + + Sauvegarde automatique... + + + Dtail des textures + + + Cinmatiques + + + Entrer + + + Quitter + + + Crer + + + Adresse email ou mot de passe incorrect + + + Profil incorrect + + + Erreur de connexion + + + Serveur temporairement indisponible + + + Identifiant de profil ncessaire + + + Erreur de connexion + + + Erreur de connexion + + + Erreur de connexion + + + Nom de profil incorrect + + + Mot de passe incorrect + + + Pseudo unique incorrect + + + Pseudo unique dj utilis + + + Veuillez d'abord vous connecter votre profil + + + Veuillez d'abord vous dconnecter de votre profil + + + Erreur de connexion au serveur de profils + + + Vous ne pourrez pas supprimer le profil aprs l'avoir cr. + + + Qualit SSAO + + + Mode SSAO + + + par dfaut + + + HDAO + + + HBAO + + + Afficher interface + + + Pseudo unique non enregistr. Veuillez l'enregistrer. + + + Pseudo unique arriv expiration. Veuillez l'enregistrer nouveau. + + + stalker + + + max + + + clairage dyn. comp. opt. (DX11) + + + Veuillez vous connecter au serveur externe. + + + Cet identifiant GameSpy est dj utilis. Veuillez choisir un autre identifiant GameSpy. + + + Email incorrect + + + Mot de passe incorrect + + + Vous ne pouvez pas utiliser un identifiant GameSpy pour vous connecter un serveur local. Veuillez utiliser le mode Rseau local. + + + Vous avez t exclu par le serveur. + + + Vous avez t banni par l'administrateur : + + + Vous avez t banni par le serveur. + + + Infos serveur + + + Cette adresse email est trop longue. Vous ne pouvez saisir que 50 caractres au maximum. + + + Email incorrect + + + Le mot de passe est trop court + + + Le mot de passe est trop long + + + Adresse email introuvable + + + Pseudo unique non dfini + + + Ce pseudo unique est trop long. Vous ne pouvez saisir que 30 caractres au maximum. + + + Le pseudo unique ne peut contenir que des chiffres, des lettres et les symboles suivants : "#$&'()*+-./:;<=>?@[]^_`{|}~ + + + Le pseudo unique ne doit contenir aucun espace + + + Le pseudo unique ne peut pas commencer par un chiffre ou l'un des symboles suivants : '@', '+', ':' or # + + + trs lev + + + Mosaque + + + Appliquer les changements ? Tous les changements seront annuls dans + + + Entrept + + diff --git a/gamedata/configs/text/fra/ui_st_mp.xml b/gamedata/configs/text/fra/ui_st_mp.xml new file mode 100644 index 0000000..362ae12 --- /dev/null +++ b/gamedata/configs/text/fra/ui_st_mp.xml @@ -0,0 +1,741 @@ + + + + Artefact + + + Alli + + + Ping max + + + Profil + + + Modes + + + L'artefact a t dtruit. + + + L'artefact a rapparu. Rapportez-le la base pour marquer un point ! + + + L'artefact a t perdu. + + + L'artefact est dans notre base. + + + L'artefact est dans la base ennemie. + + + Artefacts + + + Artefacts + + + Slection auto. + + + Retour + + + 4. Exclure + + + Par anomalie + + + Annuler + + + a captur l'artefact + + + 5. Changer de carte + + + 6. Changer mto + + + Changer mto : + + + Chat + + + Connect + + + Morts + + + Description + + + Dconnect + + + Saisir un texte pour le vote + + + a rejoint la partie + + + Caserne de pompiers + + + (Vue subjective) + + + frags + + + Frags + + + (Camra libre) + + + (vue Troisime personne) + + + avec + + + 7. Mode + + + Dcharge + + + EN AVANT ! + + + %s a perdu l'artefact + + + a perdu l'artefact + + + %s a pris l'artefact + + + Mercenaires + + + est dsormais + + + a rejoint + + + 3. Jeter + + + Limansk + + + Chargement des dcorations... + + + Chargement des fichiers... + + + (Troisime personne libre) + + + Description de la carte + + + Partie lance ! + + + Vieux village + + + Modes + + + Nom + + + Suivant + + + N'ont pas vot + + + Ping + + + Victoire de %s ! + + + Joueurs + + + Appuyez sur Tirer pour passer en mode Spectateur. + + + Appuyez sur Sauter pour acheter une rapparition instantane. + + + Appuyez sur Sauter pour slectionner une apparence. + + + Appuyez sur Sauter pour slectionner les quipes. + + + Appuyez sur Sauter pour rapparatre. + + + Appuyez sur Sauter pour commencer. + + + Appuyez sur ($$ACTION_BUY_MENU$$) pour accder au menu Achat. + + + Vous avez %d $. Vous pouvez rapparatre pour %d $. Cliquez sur Oui pour payer. + + + Prt... + + + Rparer base + + + 1. Redmarrer + + + 2. Redmarrage rapide + + + a rapport l'artefact + + + a marqu un point + + + Slectionnez le joueur exclure. + + + Slectionnez une catgorie de vote. + + + Slectionnez le joueur exclure par vote. + + + Slectionnez le joueur exclure par vote. + + + Slectionnez la carte pour le vote. + + + Artefact - pas de sprint + + + - Nombre + + + - Temps restant + + + - Dure rapp. + + + Anomalies + + + Dure anomalies + + + Chaque fois + + + Artefact captur + + + Artefacts : + + + quilibrage auto. quipes + + + Changement auto. quipe + + + BattlEye + + + Dsactiv + + + Activ + + + - Vue subjective + + + Rapp. force + + + Limite de frags + + + - Vol libre + + + - Vue libre + + + Tir alli + + + Indicateur allis + + + Noms allis + + + Infini(e) + + + Invincibilit : + + + - Indicateurs + + + - Temps + + + - Troisime personne + + + Rotation carte + + + Ping max + + + min. + + + Non + + + Rapparition + + + Retour aux bases + + + sec. + + + Nom serveur : + + + Bases protges + + + Modes spectateur : + + + - quipe seulement + + + Limite de temps + + + Version : + + + Vote + + + chauffement + + + Oui + + + Slection apparence + + + Spectateur + + + SPECTATEURS + + + Centre sportif + + + tat + + + est pass + + + Libert + + + Slection quipe + + + L'quipe %s a gagn ! + + + Texte + + + Temps restant avant rapparition + + + Temps restant avant le lancement : + + + Temps restant : %d:%d; D'accord : %.2f + + + Camp d'entranement + + + Voix POUR : [$$ACTION_VOTE_YES$$]\nVoix CONTRE : [$$ACTION_VOTE_NO$$]\nRsultats : [$$ACTION_VOTE$$] + + + Non + + + Oui + + + Vot + + + Non + + + Oui + + + Vote annul par le serveur ! + + + Le vote '%s' a t lanc par %s. + + + Le vote a commenc ! + + + 1. Dgag + + + 4. Nuageux + + + 3. Nuit + + + 2. Pluie + + + Poignard dans le dos ! + + + Tu d'une balle en pleine tte ! + + + Vous avez captur l'artefact ennemi. Apportez-le jusqu'au vtre ! + + + Vous avez ramass l'artefact. Activez-le pour le rapporter votre base ! + + + Votre rang est dsormais + + + C'est vous + + + Le vote n'est pas disponible sur ce serveur. + + + Aucun vote actif. + + + Un seul vote actif autoris. + + + Prt + + + tous + + + l'quipe + + + chec du vote ! + + + Vote russi ! + + + Base de la Libert + + + Base des mercenaires + + + 2. Chasse aux artefacts + + + 4. Capture d'artefacts + + + 1. Match mort + + + Crer un nouveau profil + + + Rcupration des comptes de profil + + + Bonjour + + + Connexion au profil + + + Cration du profil termine. Veuillez vous y connecter. + + + Vrification du nom unique... + + + Voulez-vous utiliser le profil existant avec le nom + + + Compte trouv. Rcupration des profils enregistrs... + + + Vous avez dj un profil. Veuillez vous y connecter. + + + Vrification du compte... + + + Ce nom unique est dj utilis. Choisissez-en un autre dans la liste droulante ou saisissez un autre nom. + + + Les mots de passe ne sont pas identiques ! + + + 3. Jeu en quipe + + + Copier le lien + + + Charger de carte + + + Description + + + Carte incorrecte ou corrompue + + + Carte introuvable + + + Dcorations + + + Enregistrements + + + Vrifier + + + Confirmer mot de passe + + + Email + + + MdP oubli ? + + + Page de cration de profil GameSpy + + + Mot de passe + + + Se rappeler + + + Nom unique + + + Nom unique modifi : + + + quipe + + + Libert + + + Mercenaires + + + Nouveau profil + + + Autorisation identifiant GameSpy + + + jouer + + + revenir + + + relancer + + + au dbut + + + au moment de la mort de la victime + + + au moment de la mort + + + la capture de l'artefact + + + la perte de l'artefact + + + la livraison de l'artefact + + + peu importe + + + Connexion + + + Capture d'cran (tout) + + + Config pour tous + + + Limite de ping : + + + Limite de ping + + + Cap. cr. joueurs slec. + + + Cfg joueurs slec. + + + Exclure joueur slectionn + + + Bannir joueur slectionn + + + Relancer + + + Redmarrage rapide + + + Changer la mto + + + Vitesse changement mto + + + Changer de type de partie + + + Modifier les paramtres de la partie + + + Mettre fin au vote en cours + + + Limite de temps (0, 180) + + + Limite de frags (0, 1000) + + + Limite d'artefacts (0, 100) + + + temps d'chauffement (0, 3600) + + + Temps prot. rapp. (0, 60 CDA) + + + Temps prot. rapp. (0, 600 MM/E) + + + Temps de rapparition (-1, 3600) + + + Erreur de profil inconnue (code : 4) + + + 10 minutes + + + 30 minutes + + + 1 heure + + + 6 heures + + + 1 jour + + + 1 semaine + + + 1 mois + + + 3 mois + + + Toujours + + + Le pseudo est trop court + + + Erreur de profil + + diff --git a/gamedata/configs/text/fra/ui_st_other.xml b/gamedata/configs/text/fra/ui_st_other.xml new file mode 100644 index 0000000..67f45bd --- /dev/null +++ b/gamedata/configs/text/fra/ui_st_other.xml @@ -0,0 +1,501 @@ + + + + Annuler + + + Non + + + OK + + + Oui + + + Mauvais + + + Ennemi + + + Excellent + + + Expriment + + + Ami + + + Carte de la Zone + + + Bon + + + Indiffrent + + + Matre + + + Bonus PDA + + + Un seul vote actif autoris. + + + Neutre + + + Dbutant + + + Partie + + + Utilis + + + Niveau + + + Chargement des objets IA + + + Serveur : chargement du simulateur A-life + + + Chargement de CFORM + + + Chargement des dtails + + + Chargement de la gomtrie + + + Chargement de la sauvegarde + + + Chargement des secteurs et portails + + + Chargement des shaders + + + Chargement de spatial-DB + + + Chargement des textures + + + IP direct + + + Aucune mission en cours + + + Fonds insuffisants + + + Le PNJ n'a pas assez d'argent. + + + Ouverture du stream + + + Prlecture des objets + + + roubles. + + + SERVEUR : connexion en cours + + + SERVEUR : dmarrage en cours + + + Validation du numro de srie + + + Graphismes + + + Terrible + + + Rparer + + + Vous ne pouvez pas excuter Rendu 2 sur votre PC. + + + Faction + + + Erreur de connexion : votre numro de srie n'est pas activ. Contactez le service client. + + + Erreur de connexion : numro de srie dj utilis. + + + Erreur de connexion : numro de srie non valide. + + + Erreur de connexion : hte non valide + + + Erreur de connexion : mot de passe non valide + + + Nouvelle mise jour disponible.\n Version : %s\n Emplacement :%s\nTlcharger maintenant ? + + + Aucune nouvelle mise jour disponible + + + Erreur de connexion : connexion rejete par le serveur + + + Erreur de connexion : serveur plein + + + Erreur de connexion : version diffrente + + + Connexion au serveur principal en cours + + + Jour(s) + + + Erreur + + + Erreur de chargement + + + Il existe dj un fichier du mme nom. Voulez-vous l'craser ? + + + Le nom de fichier est vide. + + + Heure(s) + + + Dconnect par le systme de protection BattleEye : + + + Dconnect. Raison : + + + Quitter + + + Le chargement entranera la perte des donnes non sauvegardes. Continuer ? + + + min. + + + mois + + + Sac dos + + + Paramtres + + + Tlchargement de la mise jour impossible. + + + Tlchargement de la mise jour termin. Voulez-vous l'installer ? + + + Prix + + + Rang + + + Attitude + + + Rputation + + + sec. + + + Slectionnez au moins une carte + + + Tout prendre + + + Temps restant + + + chec du vote ! + + + Voulez-vous vraiment quitter le jeu ? + + + Total + + + trs ng. + + + trs posit. + + + Vtran + + + Rparer + + + Rparer l'objet slectionn + + + ... + + + en dplacement dans un secteur donn + + + en route pour Yanov depuis Zaton + + + en route pour Pripyat depuis Zaton + + + en route pour Zaton depuis Yanov + + + en route pour Pripyat depuis Yanov + + + en route pour Zaton depuis Pripyat + + + en route pour Yanov depuis Pripyat + + + en route pour le labo X8 depuis Pripyat + + + en route pour Pripyat depuis le labo X8 + + + mission + + + dbut de la partie + + + arrive au Skadovsk + + + Stingray 1 examin + + + Stingray 2 examin + + + Stingray 3 examin + + + Stingray 4 examin + + + Stingray 5 examin + + + en route pour le plateau du sud + + + arrive Yanov + + + route de Pripyat trouve + + + Zulu rejoint le groupe + + + dette de Vano rembourse + + + Vano rejoint le groupe + + + plante anormale rcupre + + + Sokolov rejoint le groupe + + + Arpenteur rejoint le groupe + + + groupe constitu + + + arrive au tunnel + + + arrive Pripyat + + + militaires localiss + + + arme non identifie rcupre + + + unit de reconnaissance trouve + + + arrive des renforts + + + "antenne" examine + + + sentinelle disparue retrouve + + + contrleur prs de la sentinelle tu + + + accs l'atelier de test + + + documentation du fusil Gauss trouv + + + cadavre de combattant trouv + + + entre dans l'cole maternelle + + + infirmier de l'arme sauv + + + communication avec le QG rtablie + + + Dbut de l'vacuation de Pripyat + + + hlicoptres sur zone + + + vacuation termine + + + dtecteur de mutants + + + ranon paye + + + otage libr + + + relevs de l'anomalie Tas de cendres + + + relevs de l'anomalie Plavni + + + nid de sangsues + + + envoy Kopachy + + + abords de la station de traitement des dchets + + + stalkers touchs + + + conteneur trouv dans la planque + + + chasse la chimre + + + Oasis trouv + + + Opration Mise mort lance + + + recherche de la source des missions psi + + + documents administratifs + + + abords des ateliers du poste lectrique + + + rencontre prs du poste des rangers + + + entrept du Devoir + + + source de l'trange lueur dcouverte + + + Zulu trouv + + + grotte dangereuse + + + Rparations/modifications + + + Acheter + + + Vendre + + + changer + + + Fermer la fentre ($$ACTION_USE$$) + + + Ouvrir la fentre changer ($$ACTION_SPRINT_TOGGLE$$) + + + Ouvrir la fentre Rparations/modifications ($$ACTION_SPRINT_TOGGLE$$) + + + Placer tous les objets dans le sac dos ($$ACTION_SPRINT_TOGGLE$$) + + + Acheter les objets slectionns + + + Vendre les objets slectionns + + + dcollage des hlicoptres d'vacuation + + diff --git a/gamedata/configs/text/fra/ui_st_pda.xml b/gamedata/configs/text/fra/ui_st_pda.xml new file mode 100644 index 0000000..e91f902 --- /dev/null +++ b/gamedata/configs/text/fra/ui_st_pda.xml @@ -0,0 +1,279 @@ + + + + Heure + + + Stalker indpendant + + + Militaire + + + Bandit + + + Devoir + + + Scientifiques + + + Missions annexes + + + Planques + + + Libert + + + Mercenaire + + + Journal de mission + + + Monolithe + + + Mutant + + + Avril + + + Aot + + + Dcembre + + + Fvrier + + + Janvier + + + Juillet + + + Juin + + + Mars + + + Mai + + + Novembre + + + Octobre + + + Septembre + + + Dsactiver PDA + + + Journal + + + Historique des messages + + + Carte de la rgion + + + Afficher carte de la Zone et journal + + + Stats + + + Afficher stats personnelles + + + Heure actuelle : + + + Filtre dates + + + Voir nouvelles + + + Afficher dialogues + + + Lgende + + + Fuseau horaire : + + + missions survcues : + + + Missions accomplies : + + + Mutants tus : + + + Stalkers tus : + + + Artefacts trouvs : + + + Planques trouves : + + + Arme prfre + + + Mutant le plus puissant tu + + + Lieu : + + + Objectif + + + Mission annexe + + + Ennemis + + + Allis + + + Chef de faction + + + Mission principale + + + Neutres + + + Guide + + + Planques + + + Commandant d'unit + + + Marchand + + + Stalker indpendant + + + Journal + + + Centrer sur le joueur + + + Vers le bas + + + Vers la gauche + + + Lgende + + + Vers la droite + + + Vers le haut + + + Zoom arrire maximal + + + Zoomer + + + Zoom arrire + + + Succs + + + Centrer carte sur mission + + + Centrer carte sur mission + + + Zombie + + + chelle + + + + chelle - + + + Technicien + + + Mdecin + + + Missions en cours + + + Afficher/masquer missions + + + Cantine personnelle + + + Zaton + + + Alentours de Jupiter + + + Pripyat + + + Tunnel Pripyat 1 + + + Laboratoire X8 + + + Lieux + + + Objets importants + + + Lieu + + + Les scanners ont dtect des artefacts : + + + Les scanners n'ont dtect aucun artefact. + + + Planque + + + Dortoir + + diff --git a/gamedata/configs/text/fra/ui_st_screen.xml b/gamedata/configs/text/fra/ui_st_screen.xml new file mode 100644 index 0000000..85e0bd4 --- /dev/null +++ b/gamedata/configs/text/fra/ui_st_screen.xml @@ -0,0 +1,348 @@ + + + + Ouvrir cantine ($$ACTION_USE$$) + + + Vous tes trop puis pour pouvoir vous dplacer. + + + Vous tes trop charg pour pouvoir vous dplacer. + + + Ouvrir la porte ($$ACTION_USE$$) + + + Parler ($$ACTION_USE$$) + + + Fouiller le cadavre ($$ACTION_USE$$) + + + Fouiller le cadavre ($$ACTION_USE$$)\nTraner le cadavre (MAJ. +$$ACTION_USE$$) + + + Mission accomplie : + + + chec de la mission : + + + Objet reu : + + + Argent reu : + + + Nouvelle mission : + + + Objet perdu : + + + Argent perdu : + + + Mission annule : + + + Mission mise jour : + + + Votre arme s'est enraye. Vous devez la recharger. + + + Fouiller la bote ($$ACTION_USE$$) + + + Prendre l'objet ($$ACTION_USE$$) + + + Fouiller l'appareil ($$ACTION_USE$$) + + + Porte bloque + + + La porte est verrouille de l'intrieur. + + + Coffre verrouill + + + Code ncessaire + + + Saisir le code ($$ACTION_USE$$) + + + Prendre la plante ($$ACTION_USE$$) + + + Rgler le dtecteur ($$ACTION_USE$$) + + + Prendre le dtecteur ($$ACTION_USE$$) + + + Modrateur d'agressivit Arc-en-ciel\nModle du complexe d'mission externe\nchelle 1:20 + + + Actionner l'interrupteur ($$ACTION_USE$$) + + + Examiner l'objet ($$ACTION_USE$$) + + + Placer des explosifs ($$ACTION_USE$$) + + + Se reposer ($$ACTION_USE$$) + + + L'ascenseur n'est pas sous tension. + + + Allumer le gnrateur ($$ACTION_USE$$) + + + Dormir + + + Vous ne pouvez pas dormir : vous souffrez d'une grave hmorragie et avez t irradi. Prenez des mdicaments ou consultez un mdecin ! + + + Vous ne pouvez pas dormir : vous souffrez d'une grave hmorragie. Prenez des mdicaments ou consultez un mdecin ! + + + Vous ne pouvez pas dormir : vous avez t irradi. Prenez des mdicaments ou consultez un mdecin ! + + + Dormir ($$ACTION_USE$$) + + + Vous avez obtenu le succs Homme quilibr. + + + Vous avez obtenu le succs Expert en armement. + + + Vous avez obtenu le succs Dtective. + + + Vous avez obtenu le succs Diplomate. + + + Vous avez obtenu le succs Ami du Devoir. + + + Vous avez obtenu le succs Ami de la Libert. + + + Vous avez obtenu le succs Ami des stalkers. + + + Vous avez obtenu le succs Messager de la Justice. + + + Vous avez obtenu le succs Expert en technologie de pointe. + + + Vous avez obtenu le succs Trafiquant d'informations. + + + Vous avez obtenu le succs Gardien des secrets. + + + Vous avez obtenu le succs Boss. + + + Vous avez obtenu le succs Chef. + + + Vous avez obtenu le succs Chasseur de mutants. + + + Vous avez obtenu le succs L'un des ntres. + + + Vous avez obtenu le succs Pionnier. + + + Vous avez obtenu le succs Assistant de recherche. + + + Vous avez obtenu le succs Chasseur d'artefacts. + + + Vous avez obtenu le succs Stalker aguerri. + + + Vous avez obtenu le succs Bon client. + + + Sauvegarde automatique... + + + Vous pouvez maintenant sortir votre arme. + + + Serrure numrique ($$ACTION_USE$$) + + + Des fournitures mdicales ont t places dans votre cantine du Skadovsk pour vous remercier d'avoir lucid le mystre des stalkers disparus. + + + Une combinaison PS5-M a t place dans votre cantine de Yanov, en remerciement de l'aide apporte au Devoir. + + + Une combinaison PSZ-9d a t place dans votre cantine de Yanov, en remerciement de l'aide apporte au Devoir. + + + Une combinaison "Vent de Libert" a t place dans votre cantine de Yanov, en remerciement de l'aide apporte la Libert. + + + Une combinaison "Garde de la Libert" a t place dans votre cantine de Yanov, en remerciement de l'aide apporte la Libert. + + + Vous n'avez pas russi atteindre les hlicoptres temps et l'quipe d'vacuation est partie sans vous. + + + Prt quitter la Zone ? C'est un voyage sens unique... + + + Fin de la partie. + + + Appuyez sur ($$ACTION_JUMP$$) pour revenir au menu principal. + + + Pause + + + Partie sauvegarde + + + Un artefact a t plac dans votre cantine du Skadovsk en remerciement pour votre aide dans l'affaire de la Pie. + + + Vous devez attendre que le dock devienne tanche. + + + Accs autoris + + + Prendre l'ascenseur pour monter ($$ACTION_USE$$) + + + Prendre l'ascenseur pour descendre ($$ACTION_USE$$) + + + Niveau d'missions psi critique. Quittez immdiatement la zone dangereuse ! + + + Niveaux de radiations levs. Vous ne pouvez pas aller plus loin sans protection. + + + Examiner l'hlicoptre ($$ACTION_USE$$) + + + Fouiller la planque ($$ACTION_USE$$) + + + h + + + Message + + + Porte bloque + + + Fermer la porte ($$ACTION_USE$$) + + + Porte verrouille. Le camp est en alerte. + + + Porte verrouille. Vous devez ranger votre arme. + + + Porte verrouille + + + La porte n'est pas sous tension. + + + Ouvrir la porte ($$ACTION_USE$$) + + + Portail ferm + + + Utiliser la carte d'accs ($$ACTION_USE$$) + + + Carte d'accs ncessaire + + + Cette porte ne peut pas tre ouverte de ce ct. + + + - + + + Ce conteneur est verrouill. Deux clefs sont ncessaires pour l'ouvrir. + + + Utiliser la clef ($$ACTION_USE$$) + + + Utiliser les clefs ($$ACTION_USE$$) + + + Ce conteneur est verrouill. Vous avez besoin de la deuxime clef pour l'ouvrir. + + + Ouvrir le conteneur ($$ACTION_USE$$) + + + Le mcanisme de la porte est bloqu de l'intrieur. + + + Placer la bombonne de gaz ($$ACTION_USE$$) + + + Attention ! Danger chimique ! + + + Tourner la valve ($$ACTION_USE$$) + + + Fouiller le vhicule ($$ACTION_USE$$) + + + Vous pouvez obtenir des fournitures mdicales et des munitions auprs des lieutenants Rogovets et Kirillov. + + + Une mission s'est produite rcemment dans la Zone. + + + Vous avez obtenu le succs Affect par la Zone. + + + Des munitions ont t places dans votre cantine de Yanov, pour vous remercier d'avoir limin de dangereux mutants. + + + Coordonnes d'une planque dj dcouverte rcupres + + + Planque trouve + + + Coordonnes de la planque reues + + + Appuyez sur une touche pour jouer + + diff --git a/gamedata/configs/text/ger/st_achievement.xml b/gamedata/configs/text/ger/st_achievement.xml new file mode 100644 index 0000000..86d9970 --- /dev/null +++ b/gamedata/configs/text/ger/st_achievement.xml @@ -0,0 +1,372 @@ + + + + Ihr Gegner muss sich ganz schn gedemtigt fhlen, nachdem er von Ihnen zehn Mal hintereinander gettet wurde und er Sie in dieser Zeit nicht ein einziges Mal erledigen konnte! Nein, Sie sind nicht grausam - Sie geben ihm einfach nur gute Grnde, um weiterhin fleiig zu ben. + + + Erntezeit + + + Zwei Fliegen mit einer Klappe geschlagen... Sie sind ja richtig gemeingefhrlich! Mit Ihrem Gaugewehr haben Sie beide frmlich aufgespiet. + + + Grillspie + + + Ihre khle und berechnende Vorgehensweise bringt den Tod ber Ihre Gegner: Sie konnten mit zwei Schssen aus Ihrer doppellufigen Schrotflinte innerhalb von wenigen Sekunden zwei Ziele eliminieren. + + + Zwei Schsse, zwei tdliche Treffer. + + + Sie wissen, was es heit, ein Stalker zu sein. Aus diesem Grund sind Sie der erste Stalker, der den Status einer Legende innehat! + + + Aufsteiger + + + Mit einem Messer durch ein Exoskelett schneiden? Scheinbar macht es Ihnen Spa, sich hohe Ziele zu setzen und diese auch zu erreichen. + + + Dosenffner + + + Sie dachten schon, sie haben Sie, aber dann haben Sie ihnen gezeigt, wer hier das Sagen hat: Sie haben fnf von ihnen gettet, obwohl der Gevatter Tod schon vor Ihrer eigenen Tr stand! + + + Nicht totzukriegen + + + Was fr ein Gemetzel! Sie haben Ihren Gegner einfach mit einem Kugelhagel ausgelscht - fnf an der Zahl innerhalb von fnf Sekunden! Unglaublich! + + + Blutrausch + + + Wow, Sie knnen wirklich gut zielen! Sie haben zwei Gegner mit einem Schuss direkt ins Auge gettet, ohne selbst dabei draufzugehen. + + + Auge um Auge + + + Sollen sie Ihnen ruhig hinter der Ecke auflauern - das wird Sie nicht aufhalten. Meine Gte, Sie treffen ein Ziel in Bewegung sogar, ohne zu zielen! + + + Blitzartige Reflexe + + + Lassen Sie ihn ruhig davonlaufen so schnell wie er kann - Ihre Kugeln erwischen ihn sowieso. + + + Weglaufen ist zwecklos + + + Sie haben zwanzig Gegner hintereinander abgeschlachtet, ohne selbst dabei draufzugehen! Wahnsinn, was fr ein Blutbad! + + + Massaker + + + Sie mgen zu dritt gewesen sein und Scharfschtzengewehre gehabt haben, aber Ihre berlegenheit hat sie das Leben gekostet. + + + Treffsicherster Schtze + + + Eine brutale Vorgehensweise berlassen Sie lieber dem Gegner und zeigen ihm stattdessen, wie man gewinnt, ohne eine einzige Patrone abzufeuern. + + + Friedensbote + + + Selbst groe Entfernungen sind fr einen richtigen Scharfschtzen kein Problem! Sie treffen sogar aus einer Distanz von ber 120 Metern mitten ins Schwarze. + + + Tdliche Genauigkeit + + + Ihr Gegner konnte Sie ausschalten, aber Sie haben ihm ein kleines Abschiedsgeschenk in Form einer Handgranate zurckgelassen! + + + Abschiedsgeschenk + + + Ihre Gegner haben Ihre Freunde gettet und wurden deshalb zurecht das Opfer Ihrer gnadenlosen Vergeltungsmanahmen. Drei gegnerische Leichen fr drei tote Freunde - das ist ausgleichende Gerechtigkeit. + + + Rcher + + + Sie sind der Schutzengel Ihres Kameraden. Zwei Mal konnten Sie ihn vor einem Angriff beschtzen, als er das Artefakt getragen hat. + + + Schutzengel + + + Sie haben sich Ihren Stolz und den Ihres Teams bewahrt, indem Sie einige Punkte erzielen konnten. + + + Gerettete Ehre + + + Wissen Sie wirklich, wo das nchste Artefakt auftaucht? In der Tat, Sie konnten es sich nur wenige Sekunden nach seinem Erscheinen schnappen! + + + Intuition eines Stalkers + + + Sie hatten wirklich Glck - mit der letzten Patrone aus Ihrem Magazin konnten Sie den Gegner erledigen! Lieber er als Sie, das ist klar! + + + Glckspilz + + + Sie haben acht Gegner hintereinander gettet und den Feind dadurch gereizt - mal sehen, wie er darauf reagiert. + + + Schwarze Liste + + + Sie sind sehr wachsam und vorsichtig. Aus diesem Grund ist es niemandem gelungen, Sie zu tten. Kein einziges Mal sind Sie whrend des Spiels gestorben und haben ber fnfzehn Punkte erzielt. + + + Paranoia + + + Sie erledigen Ihre Arbeit unauffllig, indem Sie immer einen Schalldmpfer verwenden. Warum soll man den Gegner wissen lassen, aus welcher Richtung der Tod kommt? + + + Leiser Tod + + + Sie haben Ihren Gegner vernichtend geschlagen, weil Sie gewonnen haben und dabei doppelt so viele Punkte erzielen konnten als der beste gegnerische Spieler. + + + Erdrckende berlegenheit + + + Ihr waghalsiger Plan, das Artefakt sofort zu schnappen, ist aufgegangen und Sie konnten so innerhalb von drei Minuten nach Spielbeginn fr Ihr Team punkten. + + + Blitzkrieg + + + Sie haben dem Gegner nicht den Hauch einer Chance gelassen und gewonnen, ohne dass er auch nur ein einziges Artefakt aufsammeln konnte. Das war eine Lehrstunde ber richtiges Teamwork! + + + Zu-Null-Sieg! + + + Sie haben mit den meisten verursachten Kills, den meisten Artefakten und den wenigsten erlittenen Kills die hchste Punktzahl in allen Bereichen erzielt! Weiter so! + + + Allrounder + + + Ihr Kampfgeschick mit der Klinge ist bengstigend! Sie haben innerhalb von zwanzig Sekunden drei Gegner aufgeschlitzt und damit bewiesen, dass Sie selbst ohne Schusswaffen den Tod ber Ihren Gegner bringen knnen. + + + Blutige Klinge + + + Auch wenn Ihr Gegner noch so stark gepanzert ist, hat er dennoch einen wunden Punkt - und den haben Sie gefunden, indem Sie ihm ins Auge geschossen haben. + + + Achillesferse + + + Die Kugeln des Gegners fliegen an Ihnen vorbei! Sie marschieren einfach durch den Kugelhagel hindurch, ohne einen Kratzer abzubekommen, und machen den Gegner fertig! + + + Kugelsicher + + + Sie sind bereit, die neuesten Entwicklungen in der Zone zu erforschen. Sie haben unser Verstndnis der Zone vorangebracht, indem Sie neue Anomalieformationen entdeckt haben, die die Wissenschaft bis dahin nicht kannte. + + + Pionier + + + Die Stalker halten jetzt mehr von Ihnen.\nIn Wertschtzung Ihrer Mhen hinterlegen sie mittlerweile regelmig Munition in Ihrer persnlichen Kiste in der Janow-Station fr Sie. + + + Sie scheuen sich nicht vor gefhrlichen Mutanten - Sie machen Jagd auf sie und Sie sind gut darin! Stalker haben hchsten Respekt vor guten Jgern. + + + Mutantenjger + + + Die Stalker halten jetzt mehr von Ihnen.\nAls Zeichen ihres Respekts hinterlegen sie mittlerweile regelmig medizinische Vorrte in Ihrer persnlichen Kiste in der Skadowsk-Station fr Sie. + + + Sie haben das Geheimnis um das Verschwinden der Stalker bei der Skadowsk aufgedeckt: berraschenderweise steckten nicht Mutanten hinter der Sache, sondern ein viel gefhrlicherer Feind - Menschen. Durch Ihre erfolgreiche Suche nach der Wahrheit haben Sie sich den Respekt der Stalker verdient. + + + Detektiv + + + Die Stalker halten jetzt mehr von Ihnen.\nSie haben den Hndler Uhu gebeten, Ihnen einen Rabatt zu gewhren.\nBeard macht Ihnen besonders gute Angebote fr Artefakte. + + + Sie haben den Banditen und ihrem Anfhrer Sultan gezeigt, wer hier das Sagen hat, und damit Berhmtheit unter den Stalkern erlangt. Daher sind Sie auf der Skadowsk stets ein willkommener Gast. + + + Einer von uns + + + Sie haben sich den Respekt der Banditen verdient.\Aus Furcht davor, dass er Ihr nchstes Opfer werden knnte, gewhrt Ihnen der Hndler Uhu Rabatt.\nWie abgemacht erhalten Sie ab jetzt Ihren Anteil an Beards Gewinn. + + + Sie haben Sultan geholfen, die Stalker zu berlisten, und die Kontrolle ber Beards Geschft bernommen. Sie werden jetzt in Zaton gefrchtet und respektiert. + + + Boss + + + Die Stalker haben entschieden, Magpies Beute, die er durch Lug und Trug angehuft hatte, jemandem zu geben, der sie wirklich verdient. Deswegen haben sie die Sachen in Ihrer persnlichen Kiste in der Janow-Station deponiert. + + + Sie haben den Mistkerl Magpie zur Rechenschaft gezogen. Er hatte viele Stalker betrogen und bers Ohr gehauen, aber jetzt ist seine Zeit reif fr eine gerechte Bestrafung. + + + Verfechter der Gerechtigkeit + + + Die Stalker halten jetzt mehr von Ihnen.\nBanditen werden versuchen, Sie zur Strecke zu bringen, wenn Sie sich in die Zone wagen sollten. + + + Sie haben jede Art von Artefakt gefunden, die den Zonenforschern bekannt ist. Dadurch haben Sie den Respekt der Stalker und die besondere Aufmerksamkeit der Banditen gewonnen. + + + Artefaktjger + + + Kardan kann eine einzigartige Modifikation durchfhren, indem er hydraulische Servomotorenverstrker einbaut. Damit knnen Sie sich schneller bewegen, wenn Sie ein Exoskelett tragen. + + + Jetzt hat Kardan alle Werkzeuge, die er jemals brauchen wird. Dadurch ist er in der Lage, neue und komplexere Verbesserungen durchzufhren. + + + Experte fr Waffensysteme + + + Azot kann eine einzigartige Modifikation am taktischen Helm durchfhren: ein Infrarotscanner, der Menschen in der Nhe aufsprt. + + + Jetzt hat Azot alle Werkzeuge, von denen er je getrumt hat. Dadurch ist er in der Lage, High-Tech-Modifikationen durchzufhren. + + + High-Tech-Experte + + + Dank Ihrer Erfahrung finden Sie hufiger seltene Artefakte. + + + In der Zone existiert so gut wie kein begehbares Gebiet, in dem Sie nicht bereits waren. Sie haben schon nahezu alle Anomalien mindestens einmal zu Gesicht bekommen. + + + Erfahrener Stalker + + + Ihre Fhrungsqualitten erhhen die berlebenschancen Ihres Teams. + + + Sie hatten einen Teamauftrag zu erfllen - also haben Sie einfach einen groartigen Trupp zusammengestellt und bewiesen, dass Sie der geborene Anfhrer sind. + + + Anfhrer + + + Freiheitler, Wchter, freie Stalker und sogar Banditen haben Ihr Verhandlungsgeschick zu schtzen gelernt und haben nun grten Respekt vor Ihnen. + + + Sie wissen, wie man Probleme friedlich lst. Warum Gewalt anwenden, wenn ein Streit auch durch Worte geschlichtet werden kann? Dennoch sollten Sie sich vor Leuten vorsehen, die zuerst schieen und danach fragen. + + + Diplomat + + + Sie haben schon so lange mit den Wissenschaftlern zusammengearbeitet, dass Sie sich eigentlich als wissenschaftlichen Mitarbeiter bezeichnen knnten. Jeder im Bunker der Wissenschaftler erachtet Sie als einen Kollegen. + + + Wissenschaftlicher Mitarbeiter + + + Ihr Verhltnis zu den Wchtern hat sich gebessert. Wenn Sie in Schwierigkeiten geraten, werden die Kmpfer der Wchter versuchen, Ihnen zu helfen.\nAzot, ein Techniker, der den Wchtern nahe steht, gewhrt Ihnen Rabatt.\nIhr Verhltnis zu den Freiheitlern hat sich verschlechtert.\nDer Hawaiianer, der Hndler, der der Freiheit nahe steht, verlangt jetzt mehr von Ihnen fr seine Waren. + + + Sie haben den Wchtern groe Hilfe geleistet und sich damit den Respekt von ihnen und ihren Freunden verdient. Vergessen Sie allerdings nicht, dass nicht jeder in der Zone ein Anhnger der Wchter ist. + + + Freund der Wchter + + + Ihr Verhltnis zu den Freiheitlern hat sich gebessert. Wenn Sie in Schwierigkeiten geraten, werden die Kmpfer der Freiheit versuchen, Ihnen zu helfen.\nDer Hawaiianer, ein Techniker, der der Freiheit nahe steht, gewhrt Ihnen Rabatt.\nIhr Verhltnis zu den Wchtern hat sich verschlechtert.\nAzot, der Hndler, der den Wchtern nahe steht, verlangt jetzt mehr von Ihnen fr seine Waren. + + + Sie haben den Freiheitlern groe Hilfe geleistet und sich damit den Respekt von ihnen und ihren Freunden verdient. Vergessen Sie allerdings nicht, dass nicht jeder in der Zone ein Anhnger der Freiheit ist. + + + Freund der Freiheit + + + Die Stalker in der Janow-Station schtzen ein Gleichgewicht zwischen den Wchtern und der Freiheit. Aus diesem Grund gewhren Ihnen sowohl der Techniker als auch der Hndler von nun an einen Rabatt. + + + Sie haben sich keiner der Fraktionen angeschlossen und immer wie ein freier Stalker gehandelt. Daher haben Sie sich zwar keine Feinde gemacht, aber auch keine neuen Freunde gewonnen. + + + Mann des Gleichgewichts + + + Hndler bieten Ihnen seltenere und teurere Waren an. + + + Obwohl Sie das Gefhl kennen, wenn das Geld knapp wird, geht es Ihnen im Moment recht gut. Man knnte sogar sagen, dass Sie zeitweise reich sind, und Kunden wie Sie werden von Hndlern besonders geschtzt. + + + Reicher Kunde + + + Nachdem Strelok die Nachrichten bekommen hat, hat er nun eine neue Lebensaufgabe gefunden und will diese um jeden Preis erfllen. + + + Ihre Weitsicht hat sich bewhrt: Nachdem Sie die Nachrichten im Versteck von Streloks Gruppe gefunden haben, haben Sie sie behalten, bis Sie sie dem rechtmigen Besitzer geben konnten. + + + Bewahrer von Geheimnissen + + + Dank den anabiotischen Pillen konnten Sie eine Emission berleben, ohne sich in Sicherheit bringen zu mssen. Die psychischen Auswirkungen dieser extremen Erfahrung sind jedoch noch nicht ganz ersichtlich - Sie spren eine seltsame Stille in Ihrem Geist. + + + Gezeichnet von der Zone + + + Der Hndler Uhu gewhrt Ihnen ab jetzt einen Rabatt, weil Sie sein bester Informant und Partner sind. + + + Wenn Sie eine interessante Information aufschnappen, finden Sie immer den richtigen Kufer dafr. Natrlich haben Sie stets Ihren eigenen Gewinn im Sinn, wenn Sie die Informationen an die Leute verkaufen, die sie bentigen. + + + Informationsmakler + + + Ihr Verhltnis zu den Stalkern hat sich gebessert. Wenn Sie in Schwierigkeiten geraten, werden die Stalker versuchen, Ihnen zu helfen.\nDie rzte der Stalker haben sich entschieden, Ihnen medizinische Produkte zum Einkaufspreis zu verkaufen. + + + Sie haben Stalkern in Not immer geholfen. Auch wenn die inoffizielle Stalkerbruderschaft nicht sehr eng miteinander verbunden ist, werden sie Ihnen bei Kmpfen und auch danach zur Seite stehen. + + + Freund der Stalker + + + Unterschiedliche neue Erkenntnisse haben es den Professoren Hermann und Oserski ermglicht, in der Zone ein neues experimentelles Prparat herzustellen, ein Anabiotikum. + + + Wenn Sie bei voller Gesundheit sind, haben Sie selbst ohne medizinische Mittel eine reelle berlebenschance bei Emissionen. + + + Da Sie stets eine groe Hilfe sind, bietet Professor Hermann Ihnen medizinische Produkte und Ausrstung, die ausschlielich fr das Bunkerpersonal vorgesehen sind, zum Einkaufspreis an.\nNowikow hat Sie so sehr ins Herz geschlossen, dass er Ihnen bei Modifikationen lediglich das Material in Rechnung stellt. + + diff --git a/gamedata/configs/text/ger/st_characters.xml b/gamedata/configs/text/ger/st_characters.xml new file mode 100644 index 0000000..81564d5 --- /dev/null +++ b/gamedata/configs/text/ger/st_characters.xml @@ -0,0 +1,336 @@ + + + + Jack + + + Wano + + + Oberstlt. Shulga + + + Loki + + + Hawaiianer + + + Knochenmann + + + Senka + + + Zulu + + + Onkel Jar + + + Topol + + + Mace + + + Spirit + + + Snake + + + Geier + + + Nitro + + + Trapper + + + Flint + + + General Taschenkow + + + Lt. Buntschuk + + + Oberst Kosmach + + + Lt. Sachartschuk + + + Black + + + Duplett + + + Chirurg + + + Skull + + + Stake + + + Koschej + + + Corpse + + + Strider + + + Armor + + + Sichel + + + Walross + + + Softie + + + Foma + + + Professor Oserski + + + Nowikow + + + Professor Hermann + + + Fw. Schlijatschin + + + Lt. Sergejew + + + Fw. Waljuschok + + + Fw. Ostrowski + + + Hptm. Klimenko + + + Lt. Sokolow + + + Hptm. Tarasow + + + Oberst Kowalski + + + Lt. Podoroschni + + + Lt. Skelja + + + Fw. Merkulow + + + Lt. Stezenko + + + Fw. Jarmoschuk + + + Lt. Rogowez + + + Lt. Smirnoff + + + Strelok + + + Bartschuk + + + Major Degtarew + + + Zwerg + + + Schischak + + + Grizzly + + + Torba + + + Mitaj + + + Lt. Gawrilenko + + + Kremen + + + Gajduk + + + Gari + + + Lt. Kirilloff + + + Serbin + + + Schakal + + + Nimble + + + Krabbe + + + Garmata + + + Gonta + + + Dampfhammer + + + Crest + + + Uhu + + + Grouse + + + Danila + + + Sultan + + + Morgan + + + Haxe + + + Spartacus + + + Beard + + + Kardan + + + Goblin + + + Eiche + + + Pianist + + + Mher + + + Kirzach + + + Tank + + + Fratze + + + Hatchet + + + Tuna + + + Noah + + + Pilot + + + Tremor + + + Lt. Drapej + + + Uffz. Umerow + + + Snag + + + Hook + + + Rippe + + + Mirone + + + Barge + + + Petrucha + + + Awl + + + Major Tschepurnij + + + Uffz. Walentir + + + OFw. Morosow + + + OLt. Smoljak + + + Splitter + + + Feldwebel Gasda + + + Hauptmann Furtes + + + OFw. Schwejko + + diff --git a/gamedata/configs/text/ger/st_dialog_manager.xml b/gamedata/configs/text/ger/st_dialog_manager.xml new file mode 100644 index 0000000..1891e1a --- /dev/null +++ b/gamedata/configs/text/ger/st_dialog_manager.xml @@ -0,0 +1,993 @@ + + + + Es gibt da ein Gebiet in Zaton, wo unter der Wasseroberflche Hitzeanomalien entstanden sind. Dieser Ort wird "Boiler" genannt, weil dort Dampf und anderes Zeug aus dem Boden austritt. Falls du denkst "ist ja nur Dampf", ndere deine Meinung lieber. Erfahrene Stalker sagen, dass diese Art von Dampfanomalie mindestens genauso gefhrlich ist wie eine normale Hitzeanomalie, wenn nicht sogar gefhrlicher. Die Temperatur mag etwas niedriger sein, aber du bist der Hitze lnger ausgesetzt. Und was Artefakte betrifft: Man findet dort normale Feuerartefakte. + + + Angeblich gibt es im Steinbruch ein nettes Pltzchen mit vielen Artefakten, aber Anomalien wohl auch nicht zu knapp. Unten sind so viele Blasen von Gasanomalien, dass einem selbst mit einer Gasmaske die Augen wehtun. + + + Der Aschehgel befindet sich am alten Friedhof in der Nhe von Kopatschi. Dort sind viele Hitzeanomalien und immer wieder Zombies. Die meisten versuchen, diesen Ort zu meiden, aber man findet dort Artefakte. + + + Man sagt, dass auf dem Parkplatz Artefakte gefunden wurden. Da sind immer noch Fahrzeuge aus der Zeit der ersten Tschernobyl-Katastrophe - diese Babys bereiten dem Geigerzhler Magenschmerzen. Auerdem sind dort berall Elektroanomalien. + + + Im Verdorbenen Wldchen, wo alle Bume von Sure verunstaltet wurden. Wer an diesem Ort war, sagt, dass dort berall Gasanomalien sind. Da soll so viel Gas in der Luft sein, dass man seine Hand vor Augen nicht sieht. Aber mit genug Erfahrung findet man dort die Artefakte, die man sucht. + + + Wenn du auf der Suche nach Artefakten bist, konzentriere dich auf Sureartefakte. Am ehesten wirst du im Betonbad fndig. Viel Konkurrenz wirst du dort nicht haben, weil dieser Ort niemandem geheuer ist - die Jupiter-Anlage ist gleich in der Nhe. + + + Nicht weit von der Jupiter-Anlage entfernt ist ein Teil der Strae eingebrochen. Dieser Ort wird "Asphalt" genannt, weil dort der Straenbelag geschmolzen ist. In dem Spalt sind viele Anomalien - Hitzeanomalien und Gravitationsanomalien gemischt. Und da es sich um zwei Arten von Anomalien handelt, mssen auch die Artefakte anders sein. + + + Jenseits der Zementfabrik ist ein kleiner Hafen namens Fen. Der ganze Hafen hat sich in ein frchterlich stinkendes Sumpfgebiet verwandelt und das Wasser ist voller Gasanomalien. Wasser kann man es eigentlich gar nicht mehr nennen, eher Sure. Man hat dort Artefakte gefunden, aber es wimmelt an diesem Ort auch von Monstern. + + + Sieh dich mal in der alten Zementfabrik um. Dort sind zwar viele Anomalien, aber es lohnt sich. Natrlich gibt es Orte, wo man einfacher an Artefakte rankommt, aber dementsprechend gro ist dort der Andrang. In der Zementfabrik musst du dich lediglich mit Hamstern herumschlagen, und das auch nur, wenn du ins Untergeschoss gehst. + + + Du solltest dich in der Nhe der Pinieneiche umsehen. Das ist dieses Ding, das zwischen den Hgeln ber den Gasanomalien wchst. So heit dieser sonderbare Baum, seit irgendjemand herausgefunden hat, dass es sich bei der Rinde sowohl um Pinien- als auch um Eichenrinde handelt. Wenn du dich dort nach Artefakten umsehen willst, brauchst du einen guten chemischen Schutz - und jede Menge Munition, weil diese Hgel das Revier von vielen Hunderudeln sind. + + + Manchmal muss man gar nicht in Anomalien herumsuchen, um ein Artefakt zu finden. Ich habe gehrt, dass jemand ein Artefakt im offenen Gelnde herumliegen gesehen hat. Der Detektor dieses Stalkers hat verrckt gespielt, also hat er beschlossen, die Batterien auszuwechseln. Anschlieend hat sich der Detektor zu Wort gemeldet und direkt vor der Nase des Stalkers lag ein Artefakt. Was fr ein Glckspilz, oder? Aber so ist die Zone: Manchmal bestraft sie dich und manchmal belohnt sie dich. + + + Erfahrene Stalker haben mir gesagt, dass sich Artefakte manchmal aus Anomalien hinausbewegen. Dein Detektor piept, du schaltest ihn aus, aber dann ist da nichts. Wenn das passiert, hast du es mit einem "Nomadenartefakt" zu tun. Aber es hat keinen Zweck, diesem Artefakt hinterher zu jagen, denn allein die Zone entscheidet, wen sie damit belohnen will. + + + In Pripyat hat sich bisher niemand nach Artefakten umgesehen. Jeder, den ich kenne, ist hier erst seit kurzer Zeit, und deswegen sind sie alle vorsichtig. + + + Ich wei nicht, ob irgendjemand die guten Stellen kennt. Pripyat ist bisher kaum erforscht. + + + Ich wrde mich mal in den unterirdischen Tunneln umsehen. Ich habe gehrt, unter der Stadt sollen tonnenweise Artefakte zu finden sein. + + + ber diese Gegend wei man nicht viel, abgesehen von Garis Geschichten. Er sagt, dass dort irgendwo eine riesige Weinrebe aus einer Sureanomalie wchst. Sie soll so gro sein wie ein zehnstckiges Gebude. Vielleicht nimmt er uns nur auf den Arm, aber ich wrde trotzdem mal nach dieser Weinrebe Ausschau halten und dort nach Artefakten suchen - man wei ja nie. + + + Am meisten Glck drftest du im Suresumpf haben. Dort sind berall Gravitationsanomalien, die jedoch leicht zu erkennen sind. Behalte die Wasseroberflche im Auge, dann kann nichts schiefgehen. Ein greres Problem sind allerdings Gasanomalien, weil man dort so gut wie keine Luft kriegt. Ist nicht witzig, wenn man von einer Gasanomalie erwischt wird, das kannst du mir glauben. Das Ding frisst sich schneller durch einen Schutzanzug als Schwefelsure. + + + Im abgebrannten Bauernhof oben auf dem Hgel sind jede Menge Hitzeanomalien, in denen man Feuerartefakte finden kann. Sieh dich in den Husern um: Dort, wo sich nach einer Emission die meisten Anomalien bilden, sind auch die meisten Artefakte. + + + In den Hhlen unter dem abgebrannten Bauernhof sind wahrscheinlich viele. Wenn du mit dem Detektor auf dem Hgel herumlufst, hrt das Ding gar nicht mehr zum Piepen auf. Schwer ist es auch nicht, in die Hhlen zu gelangen. Du musst einfach oben in den Spalt springen. Da wieder rauszukommen, ist das Problem - bei all den Anomalien dort unten, hauptschlich Vortex- und Sureanomalien. Einige Leute behaupten, in dem Spalt etwas gesehen zu haben, das einem Kometen hnelt. Dort unten erwarten dich sicher viele Gefahren, aber wahrscheinlich ebenso viele Artefakte. + + + Hast du schon mal eine Rundkreis-Anomalie gesehen? Das ist eine riesige Sprungbrett-Anomalie mit zwei rotierenden Kometen - wirklich ein atemberaubender Anblick, den man jedoch aus einer gewissen Entfernung genieen sollte. Rundkreise sind verdammt hei und voller Hitzeanomalien. Man findet dort viele Artefakte, aber sie werden von einem fiesen Feuerpoltergeist beschtzt, der versuchen wird, dich zu rsten, wenn du dich ihm nherst. + + + Falls du an Gravitationsartefakten interessiert bist, suche danach in der Fanganomalie. Die Stelle ist leicht zu finden - Anomalien haben bei der Vernderung des Gelndes ganze Arbeit geleistet und den halben Hgel abgetragen. Im Hgel sind einige Hhlen zum Vorschein gekommen, die sofort von Schnorks unter Beschlag genommen wurden. Glcklicherweise kommen sie nur selten raus. + + + In der Zone, Mann, in der Zone. Immer am Ball bleiben. + + + Eine gute Frage. Sag mir bescheid, wenn du die Antwort weit! + + + Wo, warum, wieso, weshalb... Merke dir eins: Wenn du eine Goldgrube findest, behalte es fr dich. + + + Wo findet man Artefakte? + + + Das habe ich dir schon gesagt. + + + Nein, ich wei sonst nichts. + + + Das ist alles, was ich wei. Frag jemand anderen. + + + Wie geht's, Bruder? + + + Gr dich. + + + Hallo Stalker. + + + Hallo. + + + Was willst du? + + + Was? + + + Rede. + + + Guten Tag, Major, Sir! + + + Guten Tag! + + + Ich hre, Major, Sir. + + + Ja, hi. + + + Was? + + + Wen haben wir denn da. + + + Hey, Stalker. Was willst du? + + + Was geht? + + + Was geht, Mann? + + + Oh, hey, Kumpel. + + + Na, alles klar? + + + Hey! + + + Hilf mir, Bruder! + + + Hilf mir, Bruder, ich sterbe... + + + Ich brauche medizinische Hilfe! + + + Ein Medkit... schnell! + + + Hilf mir, Kumpel... Aaahh, diese Schmerzen! + + + Gib mir ein Medkit... ein Medkit, sofort... + + + Kumpel... argh... komm schon, hilf mir! + + + Hey, ich brauche ein Medkit... schnell... + + + Hilf mir, Stalker... ein Medkit, bitte... + + + Mich hat's erwischt... Hilfe! + + + Ich brauche ein Medkit! + + + Medkit! + + + Hast du schon von dem Baggerschiff stlich der Skadowsk gehrt? Man sagt, dass dort nachts irgendetwas sonderbar leuchtet... Sogar fr die Zone soll das ziemlich merkwrdig sein. Ich wei nicht, ob es sich lohnen wrde, der Sache auf den Grund zu gehen. Vielleicht findet man dort irgendetwas Wertvolles, aber macht es Sinn, dafr sein Leben zu riskieren? Das ist hier die Frage... + + + Hier ist nichts auer altes Zeug. Zum Beispiel dieser verrostende Konvoi auf der Preobraschenski-Brcke - alles kaputt, genauso wie die Brcke. Viele wrden sich gerne mal in der Gegend umsehen, wren da nicht Schnorks und Anomalien... + + + Hast du mitbekommen, dass sich Sultan Beards Geschft unter den Nagel reien wollte? Die Skadowsk war wohl nicht gro genug fr seinen gierigen Hintern, und deswegen wollte er ein noch greres Stck vom Kuchen... Aber wir haben gesagt "Kannste knicken, Sultan!". Beard und der Rest unserer Jungs haben ihm ganz schn den Arsch aufgerissen. Seine Gangsterplne kann er hier vergessen. + + + Wow, hast du das gehrt? Sultan, dieser Dreckskerl, hat gegen Beard die Fuste spielen lassen... Ich wei nicht genau, was er gemacht hat, aber wie es scheint, schuldet Beard ihm Geld! Was ist nur aus der Zone geworden? Wenn das so weitergeht, ist die Skadowsk bald ein Banditenlager! + + + Hast du schon von der Oase gehrt, Bruder? Man sagt, es sei verdammt schwer, sie zu finden. Und wenn man wirklich wei, wo sie ist, sei es noch schwerer, dorthin zu gelangen. Angeblich ist dort ein See. Du gehst hinein, all deine Wehwehchen verschwinden und alle Verletzungen heilen sofort! Ist aber alles nur Spekulation. Hast du auch schon gemerkt, wie viele Anfngerstalker hier ins Zentrum der Zone gekommen sind? Einige suchen nach einer Fundgrube voller Artefakte, andere sind einfach nur neugierig, aber die meisten von ihnen hoffen, dass sie die Oase finden. Es heit, dass sie irgendwo hier sein soll... + + + Gerchte besagen, dass die Zone langsam verschwindet... Jemand hat die Oase gefunden und ihr Artefakt mitgenommen - das Herz der Oase. Jetzt vollzieht die Zone einen Dimensionssprung und kein Stalker wird sie jemals wieder verlassen knnen... War nur ein Witz, Mann. Aber jemand hat wirklich ein neues Artefakt gefunden. Die Wissenschaftler spielen gerade damit in ihrem Bunker herum. + + + Hast du schon mal von Topol gehrt? Hat irgendein neues Drecksloch gefunden, das er mit seinen Jungs erkunden wollte, und natrlich sind sie frohen Mutes reingegangen. Aber das Lachen ist ihnen bald vergangen, als ein Controller aufgetaucht ist und sich an ihren Gehirnzellen zu schaffen gemacht hat. Die wrden jetzt alle in der Klapsmhle stecken, wenn sie nicht diesen Stalker dabeigehabt htten. Als Topol nach diesem Zombifizierungskram wieder klar im Kopf wurde, war der Stalker gerade dabei, den Controller einen Kopf krzer zu machen. + + + Sagt dir das Dorf Kopatschi was? Damals nach der Katastrophe im Atomkraftwerk Tschernobyl war diese Gegend so verstrahlt, dass man beschlossen hat, das ganze Dorf mit Erde zuzuschtten. Anstelle von Husern findest du dort nichts mehr auer radioaktiv verseuchten Hgeln. Angeblich war das schon vor dem Unglck ein ziemlich unheimlicher Ort. Ich krieg 'ne Gnsehaut, wenn ich nur daran denke, was man dort wohl heutzutage vorfindet. Keiner hat den Mumm, die Gegend unter die Lupe zu nehmen. Aber was, wenn sie alle falsch liegen? Nach allem, was wir wissen, knnten dort auch jede Menge Artefakte herumliegen! + + + Weit du, es gibt nur zwei Stalker in der Janow-Station, die spren, wenn eine Emission im Anmarsch ist - Knochenmann, unser Arzt, und Zulu, der frher bei den Wchtern war. Na ja, "frher" stimmt nicht ganz, er hat sich erst vor kurzem von ihnen getrennt. Als die Wchter zur Janow-Station gekommen sind, waren dort schon Kmpfer von den Freiheitlern. Wie es nicht anders zu erwarten war, ging es dann ganz schnell zur Sache. Beide Fraktionen mussten hohe Verluste hinnehmen und sogar einige freie Stalker wurden von Querschlgern erwischt. Dann sagte Zulu pltzlich, dass eine Emission bevorsteht. Die Wchter und Freiheitler hatten keine andere Wahl. Sie mussten einen Waffenstillstand vereinbaren und haben sich in der Station verbarrikadiert. Als die Emission vorbei war, ist Zulu aus der Wchterfraktion ausgetreten und hat sich in dem Turm nahe der Station niedergelassen. + + + In der Zone erzhlt man sich allerlei verrckte Geschichten, aber du solltest nicht alles glauben, was du hrst. Es gibt hier zurzeit so viele Labertaschen... Aber eine Sache ist merkwrdig. Ein paar Stalker aus der Janow-Station haben eine UFO-Sichtung gemeldet. Sie meinten, das Ding hat sie an eine schwarze Untertasse erinnert, mit einem Durchmesser von ungefhr fnf Metern. Andere haben gesagt, dass es eher wie ein Flugzeug aus groer Entfernung ausgesehen hat, und sie sind sich ziemlich sicher, dass es eins war. Eines bleibt allerdings unumstritten: Einer der Augenzeugen ist ein ehemaliger Pilot und er meinte, er habe in seinem ganzen Leben so etwas noch nicht gesehen. + + + Die letzte Zeit gibt es nur schlechte Neuigkeiten. Die guten Mnner sterben wie die Fliegen, aber wenn wir ihre Leichen finden, ist da kein Tropfen Blut mehr. Das mssen diese verdammten Blutsauger sein, wer sonst? Oh, wie gerne wrde ich ihr Lager finden und diesen Biestern eine Ladung Blei in den Schdel jagen! Wrde mich nicht wundern, wenn wir bald nur noch zu zweit aufs Klo gehen knnen. Aber ich zeige den anderen Stalkern doch nicht meinen Hintern! + + + Es gibt Neuigkeiten. Die Freiheitler haben den PDA des legendren Wchtergrnders in die Finger bekommen. Und weit du was? Es hat sich herausgestellt, dass er seine eigenen Leute verarscht hat, indem er ihnen erzhlt hat, dass die Armeefhrung sie in der Zone zurckgelassen hat. Er hat das alles erfunden, damit er seine eigene Fraktion ins Leben rufen kann! Aber so was kommt in der Zone irgendwann raus. Nur kurze Zeit spter ist unser Held in einer Raumblase gelandet und das war's. So luft es nun mal... Wenn man bedenkt, dass ich tatschlich mal in Erwgung gezogen habe, den Wchtern beizutreten... Nein danke, sollen sie doch ihr selbstgerechtes Ding durchziehen, aber ohne mich. + + + Dieser neue Wchtertrupp, weit du... Wie aus dem Nichts tauchen immer mehr von denen auf. Einige von ihren Kmpfern verlassen die Janow-Station und wenn sie zurckkommen, sind sie drei Mal so viele. Klonen die sich oder was? Aber bei den Wchtern wrde mich das gar nicht wundern. Die kann man nur an ihrem Dienstgrad unterscheiden! + + + Dieser neue Freiheitlertrupp, weit du... Wie aus dem Nichts tauchen immer mehr von denen auf. Einige von ihren Kmpfern verlassen die Janow-Station und wenn sie zurckkommen, sind sie drei Mal so viele. Aber ich habe da eine Theorie: Bei dem ganzen Gras, das sie rauchen, wrde es mich nicht wundern, wenn sie Wurzeln schlagen und sich wie Pflanzen vermehren! + + + Kennst du Gonta und seine Jungs? Eine Zeit lang hat sie das Glck ganz schn verlassen, als Danila verschwunden ist und Krabbe verwundet wurde. Aber jetzt haben sie wieder eine Glcksstrhne. Sie kommen gut mit den Wissenschaftlern klar und nehmen Messungen fr sie vor. Nett, oder? Ein angenehmer Job und ein groer Schritt in Richtung offizielle Genehmigung fr den Aufenthalt in der Zone. + + + Hast du schon von den Stalkern Mitaj, Torba und Grizzly gehrt? Angeblich haben sie bei den Wissenschaftlern einen Job gekriegt und nehmen fr sie Messungen vor. Wozu soll das gut sein? Wenn du mich fragst, fhren diese bldstudierten Typen nichts Gutes im Schilde. Aber hey, wenigstens knnen es die Jungs jetzt ruhig angehen lassen. Vielleicht kriegen sie sogar eines Tages ihre offizielle Genehmigung fr den Aufenthalt in der Zone. + + + Kennst du Spartacus und seine Leute? Nun, auf der Skadowsk bekommt man sie nicht mehr zu Gesicht - sie bewachen jetzt den Bunker der Wissenschaftler. Warum nicht - sie wissen, wie man mit Mutanten fertig wird und wie man sich Banditen vom Leib hlt. Forschung ist eine gute Sache, aber man braucht dafr Ruhe. + + + Hast du die Sldner beim Umspannwerk herumhngen gesehen? Wenn ja, dann muss es aber schon lnger her sein. Sie sind rber nach Jupiter gegangen, um den Bunker der Wissenschaftler zu bewachen. Vorher waren da ein paar andere Sldner, aber ich habe gehrt, dass ihnen irgendetwas zugestoen ist. Kann ruhig so weitergehen, wenn du mich fragst! Einige Sldner verschwinden, andere nehmen ihren Platz ein und immer so weiter... Wenn das eine Zeit lang so geht, sind wir die Sldner in Zaton bald los. + + + Man erzhlt sich, dass der Bunker der Wissenschaftler jetzt von tapferen Kriegern der Wchter beschtzt wird... Ich frage mich, was fr sie dabei herausspringt. Denken die wirklich, dass diese Wissenschaftler ihnen als Bezahlung ein brandneues Plasmagewehr geben werden, um damit auf Hamsterjagd zu gehen? Was fr Trottel, ha ha. + + + Ich habe gehrt, der Bunker der Wissenschaftler wird jetzt von kiffenden Freiheitlern bewacht. Haben die Wissenschaftler denn nicht Angst, dass ihre Proben in Rauch aufgehen? Also das meine ich durchaus wrtlich. Aber es hat ja auch sein Gutes. Wer versucht, den Bunker anzugreifen, muss erst durch eine dicke Nebelwand durch! Ha ha ha! + + + Warst du schon in Jupiter, bei der Funkelektronikanlage? Ist ganz schn unheimlich dort. Niemand wei genau, was da drinnen eigentlich vor sich geht. Die Anomalien und Mutanten sind so wie berall, aber trotzdem ist mir nicht danach, dorthin zu gehen. Mein Bauchgefhl sagt mir, dass einen dort 'ne Menge rger erwartet. + + + Sieh an, bist du nicht der Kerl, der den Arzt der Skadowsk entlarvt hat? Das war wirklich gute Arbeit. Ich htte sein nchster Patient sein knnen, weit du... Wir alle dachten, dass es die Monster waren, aber scheinbar knnen manche Menschen genauso grausam sein. Fressen oder gefressen werden, so luft das auf der Welt, habe ich nicht Recht? + + + Das sollte ich dich fragen. Nachdem du in diese Tunnel unter der Jupiter-Anlage gegangen bist, sind uns Gerchte zu Ohren gekommen, dass du bis zum Zentrum der Zone vorgestoen bist. Das hat fr ganz schn viel Wirbel gesorgt. Dutzenden Leuten hat es in den Fingern gejuckt, in deine Fustapfen zu treten. Aber Nitro konnte sie wieder zur Vernunft bringen. Er hat ihnen gesagt, dass die Tore zu den Tunneln verriegelt sind und er nichts tun kann, um sie wieder aufzukriegen. Natrlich waren da ein paar bermtige Kerle, die das Tor in die Luft sprengen wollten, aber sie versuchen immer noch herauszufinden, wo man dafr genug Dynamit herbekommen knnte. Auerdem haben sie keine Ahnung, wie sie da unten berhaupt Luft kriegen sollen. + + + Oh, weit du schon das Neueste ber Gari? Der Stalker, der fr die Wissenschaftler gearbeitet hat. Er ist jetzt kein "Eindringling" mehr, sondern hat eine offizielle Genehmigung fr die Zone bekommen, ob du's glaubst oder nicht! Du denkst bestimmt, er hat 'nen Haufen Beute gemacht und ist dann raus aus der Zone. Da liegst du falsch. Dieser Verrckte ist stattdessen nach Pripyat aufgebrochen. Jeder dachte, dass wir den Kerl wie die anderen nie mehr wiedersehen, aber weit gefehlt. Er hat es tatschlich dorthin geschafft, aber diese Grotat hat den Stalkern nicht viel gebracht. Er ist ein paar Leuten vom Militr ber den Weg gelaufen und jetzt versteht er sich gut mit diesen Uniformfritzen. Er hat ja seine Genehmigung, aber das Gebiet ist fr gewhnliche Stalker immer noch tabu. + + + Nun... Die Wchter und Freiheitler kmpfen wieder gegeneinander, dieses Mal geht es um irgendein wichtiges Versteck. Sie sagen, da sei genug Ausrstung, um drei Infanteriedivisionen damit auszustatten. Ich wei nicht, wer das Versteck ursprnglich genutzt hat, aber das Gefecht hatte es echt in sich. Die Sache hat auch die Stalker in der Janow-Station aufgestachelt, aber zum Glck haben sie sich rausgehalten, sonst wrde jetzt wieder jeder gegen jeden kmpfen. Ich glaube, die Wchter sind am schlechtesten weggekommen, weil das Gebiet jetzt von Truppen der Freiheit patrouilliert wird. + + + Nun... Die Wchter und Freiheitler kmpfen wieder gegeneinander, dieses Mal geht es um irgendein wichtiges Versteck. Sie sagen, da sei genug Ausrstung, um drei Infanteriedivisionen damit auszustatten. Ich wei nicht, wer das Versteck ursprnglich genutzt hat, aber das Gefecht hatte es echt in sich. Die Sache hat auch die Stalker in der Janow-Station aufgestachelt, aber zum Glck haben sie sich rausgehalten, sonst wrde jetzt wieder jeder gegen jeden kmpfen. Ich glaube, die Freiheitler sind am schlechtesten weggekommen, weil das Gebiet jetzt von Truppen der Wchter patrouilliert wird. + + + Neulich ist etwas passiert. Eine Gruppe von Stalkern hat die Jupiter-Tunnel erkundet und ist dabei auf etwas gestoen - oder besser gesagt auf jemanden. Zuerst wurden ihnen ihre Waffen aus den Hnden gerissen und dann sind alle mglichen Sachen direkt auf sie zugeflogen. Sie hatten keine Ahnung, was da vor sich geht, aber zwei Jungs sind dabei draufgegangen. + + + Ich habe gehrt, dass in den Tunneln nrdlich von Jupiter ekelhafte Mutanten gesehen wurden. Trapper hat einen Stalker losgeschickt, um der Sache auf den Grund zu gehen. Es hat sich dann herausgestellt, dass dort Burer ihren Unterschlupf hatten. Warum "hatten"? Weil eben jener Stalker alle Burer erledigt hat. Und zwar alleine... Du passt sogar auf seine Beschreibung, auer dass er ein bisschen grer ist und immer einen Granatwerfer dabei hat. + + + Die Stalker sind erledigt... Aus Fen kommen Monster und die Stalker in der Zementfabrik haben gesehen, wie sie einen unserer Jungs erwischt haben. Da waren mindestens ein Dutzend von ihnen, riesige Bestien - so gro, dass man seinen Augen nicht traut. Haben wie Blutsauger ausgesehen, aber doppelt so gro und viel schneller. Wir beten, dass Trapper herausfindet, wie man mit diesen Monstern fertig wird... + + + Hast du schon einmal von Sumpfblutsaugern gehrt? Die in Fen? Tja, also jetzt sind sie weg. Trapper hat sich darum gekmmert... Allerdings nicht persnlich - er hat ein paar Stalker angeheuert. Man sagt, er hat einen Trupp aus ungefhr zehn Mann zusammengestellt, die diesen Sumpf Meter fr Meter durchkmmt haben. Alles, was aus dem Sumpf hervorgekrochen kam, haben sie ins Jenseits befrdert. Da hpft kein einziger Frosch mehr herum. + + + Es ist noch nicht lange her, da hat das Gercht die Runde gemacht, dass jemand eine Chimre abgeknallt hat. Bisher haben die Mutanten reihenweise Stalker gettet, aber scheinbar werden wir endlich klger und drehen den Spie langsam um. Auerdem wei ich aus anderen Quellen, dass der Typ ein erfahrener Jger ist und mehr Monster gettet hat als wir beide Mcken in unserem ganzen Leben. + + + Weit du, was fr Leute die Freiheit heutzutage rekrutiert? Da war dieser Kerl namens Flint, der berall mit seinen Glanztaten und Trophen angegeben hat... Tja, wie sich herausgestellt hat, ist er der grte Dreckskerl aller Zeiten. Hat seinen Kumpel in einer Anomalie sterben lassen, sich seine Beute unter den Nagel gerissen und ist dann abgehauen. Spter ist noch mehr ber seine Heldenzeit in Zaton herausgekommen, wo er quasi eine Gruppe von Jgern an eine Chimre verfttert hat. Ich htte mehr von den Freiheitlern erwartet... Mann, da bin ich lieber in keiner Fraktion, als solche Freunde zu haben. + + + In Zaton haben sie diese Chimre erledigt - Gontas Trupp und ein unbekannter Stalker. Moment, das warst doch du, oder? Kannst du mir das alles nochmal aus erster Hand erzhlen? Danke brigens - ein menschenfressender Mutant weniger, der uns Sorgen bereitet. + + + Ich wei nicht, ob es erwhnenswert ist, aber wir haben hier diesen Kerl namens Noah. Das ist der verrckteste Vogel, dem du jemals begegnet bist. Er wohnt in einem hsslichen Kahn - hat ihn wohl innerhalb von einer Woche von ein paar Schwarzarbeitern zusammenbauen lassen, he he... Aber pass auf - er schiet, bevor es ihm berhaupt in den Sinn kommt, irgendwelche Fragen zu stellen. Ich sage dir, zur Hlle mit diesem Arschloch. + + + Kennst du Nimble, diesen Fuchs? Ein ausgewieftes Schlitzohr, aber schon ganz in Ordnung. Er verkauft ohne Zweifel die besten Waffen hier in der Gegend. Ich frage mich, wie er es schafft, sie hierher zu schmuggeln. Ich meine, wie schleppt man ein Vintar mit sich herum, ohne dass man es dir ansieht? Wo verstaut man dieses Ding? Das grenzt echt an Zauberei, Mann. + + + Es heit, Sultan wrde ganz schn tief in der Scheie sitzen. Der Kerl wollte Beard fertigmachen und sich sein Geschft unter den Nagel reien, aber da hat er sich ein bisschen bernommen. Hat stattdessen ganz schn die Fresse poliert bekommen. Auf ihn kommen schwere Zeiten zu, weil er bei seinen Leuten ganz schn an Respekt eingebt hat. Ist nicht mehr so gut dabei wie vorher. + + + Beard frisst Sultan jetzt aus der Hand. Er quetscht sein Geschft wie eine Zitrone aus. Ist 'ne gute Sache und Sultan hat sich dadurch ganz schn viel Respekt verschafft. Aber das Beste ist, dass wir jetzt auf der Skadowsk allen zeigen knnen, wo's langgeht. Das wird 'ne schne Zeit. Du willst dich vor einer Emission in Sicherheit bringen? Kein Problem, du musst nur die Gebhr zusammenkratzen! + + + Hey Mann, hast du schon von der Oase gehrt? Stell dir das mal vor, ein Ort, der sofort all deine Verletzungen und Krankheiten heilt. Das muss irgendein fauler Zauber sein... Allerdings habe ich da eine Theorie. Der ganze Wirbel um die Oase, aber niemand verliert ein Wort ber den Wunschgnner so wie frher... Vielleicht ist die Oase ja ein erfllter Wunsch? + + + Unter den Wissenschaftlern kursiert das Gercht, dass ein Artefakt aus der Oase hierher gebracht wurde. Du wirst sehen: Sobald sie das Ding genau analysiert haben, werden sie ihre Forschungsergebnisse dazu benutzen, um ein Heilmittel gegen Krebs zu finden! Ja genau... + + + Jeden Tag der gleiche Schei... Jeder kramt alte Geschichten ber das Zentrum der Zone hervor. Wie zum Beispiel die Story ber die Oase - ein Ort, an dem man wieder zu Krften kommt und alle Verletzungen geheilt werden. Das ist zwar vollkommener Quatsch, aber man hrt ihn sich gerne an. Vor allem wenn darber geredet wird, wo genau sie ist. Oh, ich wnschte, es gbe wirklich so ein Fleckchen Erde... Wir knnten so vielen von unseren Jungs das Leben retten. + + + Mir ist zu Ohren gekommen, dass jemand die Oase gefunden hat. Ich htte nie gedacht, dass sie wirklich existiert, aber die Sachlage ist eindeutig. Man hat dort sogar ein Artefakt gefunden und die Wissenschaftler untersuchen es gerade. Vielleicht knnen sie damit ein Gert erfinden, das in Sekundenschnelle heilt... Unsere Jungs knnten so was sicher gut gebrauchen. + + + Kopatschi. In der Zone nichts Neues, fr mich aber schon. Man stelle sich vor, ein ganzes Dorf mit seinen Husern bis zu den Dchern mit Erde zugeschttet... Damals, im Jahre 1986, ging von den Husern so viel Strahlung aus, dass man sie einfach eingegraben hat. Ganz schn unheimlich... + + + Weit du, wie es dazu gekommen ist, dass die Wchter und wir zusammen in der Janow-Station sind? Zulu ist das zu verdanken. Er war damals noch bei den Wchtern und konnte wie kein Zweiter feststellen, ob eine Emission im Anmarsch ist... Aber wir waren zuerst in der Janow-Station, zumindest nach den Stalkern. Wir hatten kaum Zeit, uns eine Zigarette anzuznden, als diese Pseudosoldaten aufgetaucht sind und vor uns mit ihren Waffen herumgefuchtelt haben. Das letzte Mal habe ich so ein Gemetzel vor mehr als einem Jahr auf der Mllhalde gesehen. Auf beiden Seiten gab es zahlreiche Opfer - darunter unser Emissionsexperte, mge er in Frieden ruhen. Aber dann hat Zulu pltzlich gerufen "Eine Emission steht kurz bevor! Bringt euch in Sicherheit!". Was htten wir denn tun sollen? Sie einfach rausschmeien und sterben lassen? Wchter oder nicht, sie sind immer noch Menschen. Und so leben wir jetzt: Wir zanken uns, wenn es ruhig ist, aber wenn eine Emission ber uns hinwegfegt, sitzen wir dicht gedrngt und angespannt zusammen. Zulu hat irgendwann die Wchter verlassen und lebt jetzt wie ein Einsiedler in der Nhe der Janow-Station. + + + Das ist zwar nichts Neues und auch kein Geheimnis, aber Kardan - der Techniker - ist gerade drauf und dran, sich tot zu saufen. Als er auf die Skadowsk gekommen ist, soll er nur zu bestimmten Anlssen oder gegen die Strahlung etwas getrunken haben. Erst spter hat er wirklich angefangen, sich regelrecht volllaufen zu lassen. Er ist nicht ber den Tod seiner zwei Kameraden hinweggekommen. Sie mssen ziemlich eng befreundet gewesen sein... + + + Hier was Lustiges. Da hat doch einer tatschlich behauptet, dass ein UFO ber die Janow-Station geflogen ist. Manch einem wchst die Zone echt ber den Kopf, oder? Poltergeister und Controller reichen ihnen nicht, nein, da mssen die guten alten UFO-Storys herhalten. Na ja, zum Glck haben wir hier keine Psychos, die dem Wodka mit Exorzismus bse Geister austreiben wollen. Das wrde dann so klingen: "Oh Herr, befreie dieses Getrnk von den bsen Geistern, auf dass es rein sei und den Menschen keinen Kater beschert!" Ha ha... + + + Sagt dir das Dorf Kopatschi was? Damals nach der Katastrophe im Atomkraftwerk Tschernobyl war diese Gegend so verstrahlt, dass man beschlossen hat, das ganze Dorf mit Erde zuzuschtten. Anstelle von Husern findest du dort nichts mehr auer radioaktiv verseuchten Hgeln. Angeblich war das schon vor dem Unglck ein ziemlich unheimlicher Ort. Ich krieg 'ne Gnsehaut, wenn ich nur daran denke, was man dort wohl heutzutage vorfindet. Keiner hat den Mumm, die Gegend unter die Lupe zu nehmen. + + + Zwar nichts Neues, aber vielleicht hast du es noch nicht mitbekommen. Wir haben uns hier nicht zu den Freiheitlern gesellt, weil wir sie so gern mgen. Die Umstnde haben einfach dazu gefhrt. Als wir hierher gekommen sind, sind die Freiheitler aus heiterem Himmel ber uns hergefallen... Auf beiden Seiten hat es hohe Verluste gegeben, obwohl wir langsam aber sicher gegen diese Anarchisten die Oberhand gewonnen haben... Mitten im Kampfgeschehen hat dann Zulu pltzlich irgendwie gesprt, dass eine Emission im Anmarsch ist. Er liegt niemals daneben, musst du wissen... Wir hatten keine andere Wahl und mussten die Kampfhandlungen einstellen. Ich verstehe nicht, warum Zulu den Wchtern nach diesem Vorfall den Rcken gekehrt hat... + + + Unsere Spher haben neulich gemeldet, dass sie ein unidentifizierbares Flugobjekt ber der Janow-Station gesehen haben - mit anderen Worten: ein UFO. Bevor du anfngst, irgendwelche dummen Fragen zu stellen, sei dir gesagt, dass es sich dabei nicht zwingend um eine fliegende Untertasse mit Marsmnnchen handeln muss. Es knnte ein herumfliegender Karton oder ein Wetterballon gewesen sein, solange die Augenzeugen nicht in der Lage sind, dieses Flugobjekt genau einzuordnen. Verstanden? + + + Du warst derjenige, der diesen PDA zu Loki gebracht hat, stimmt's? Mann, das ist echt der Knaller. Der legendre Grnder der Wchter, General Taschenkow, hat seine eigenen Leute wie Idioten hinters Licht gefhrt. Hat das Funkgert kaputt gemacht, damit sie nicht von der Auenwelt erreicht werden knnen, und dann seine eigene Armee aus Schwachkpfen gebildet. Und wozu? Um dann in klassischer Volldeppenmanier in einer verdammten Raumblase zu landen! Das ist so bld, dass es einfach stimmen muss, Mann! + + + Hast du schon den neuen Trupp gesehen, den diese Pseudosoldaten rekrutiert haben? Das kann keine Verstrkung aus ihrem Lager sein - im Gegensatz zu den anderen haben die Neuen ihren Menschenverstand noch nicht ganz gegen die Fraktionsideologie eingetauscht. Fr gewhnliche Stalker sind sie zu gut ausgebildet. Wer wei, vielleicht kommen sie ja vom Monolith? Ja, das klingt verrckt! + + + Hast du schon unsere neuen Kmpfer gesehen? Ach, du warst es, der sie hierher gebracht hat, stimmt's? Echt genial, Mann. Die Jungs sind ziemlich cool drauf, aber ein bisschen angespannt... Ist OK - wenn sie erst einmal ein paar Monate bei uns waren, sind sie sicher lockerer drauf. Die gewhnen sich frh genug an unsere Lebensweise und werden dann so wie wir. + + + Wir haben ein paar coole neue Rekruten: ein Trupp aus ehemaligen Monolithern. Und sind auch keine Anfnger, sondern gut ausgebildete Kmpfer. Natrlich sind sie im Kopf noch nicht ganz normal, nach all der Zeit beim Monolith. Aber das macht nichts, wir haben fr solche Flle einen besonderen ideologischen Einfhrungskurs und noch ein paar andere Dinge. + + + Es heit, die Freiheit htte ein paar ehemalige Monolith-Kmpfer rekrutiert. Schwer zu glauben, aber sie haben tatschlich einen neuen Trupp, und der kommt definitiv nicht von auerhalb der Zone. Scheinbar sind die Freiheitler ganz schn verzweifelt... oder sie haben sich mit den ganzen Drogen ihre Gehirnzellen ruiniert. Wen nehmen sie als Nchstes - eine Zombiebrigade? Ein Bataillon aus Burern? + + + In dieser Gegend wird bald wieder Recht und Ordnung herrschen. Die Wchter haben die Kontrolle ber rtliche Schlsselpositionen bernommen. Wir haben in der Janow-Station Fu gefasst und bewachen mit einem Trupp den Bunker der Wissenschaftler rund um die Uhr. Es wird hchste Zeit, dass die Freiheit ihre Sachen zusammenpackt und sich aus dem Staub macht - Anarchisten sind hier nicht erwnscht. + + + Die neueste Attraktion - ein nchterner Kardan. Kannst du glauben, dass er trocken ist? Die Leute auf der Skadowsk haben ihn gefragt, ob er sich die Nummer von den anonymen Alkoholikern besorgt hat, woraufhin er geantwortet hat: "Die einzige Nummer, die ich gebraucht habe, war die Zweiundsechzig." + + + Du warst derjenige, der den Jungs dabei geholfen hat, den Job von den Wissenschaftlern zur Bewachung ihres Bunkers zu kriegen, stimmt's? Danke. Es war bestimmt gut, unsere Mnner beim Bunker zu sehen, und nicht diese verdammten Sldner. Feine Sache! + + + Mal sehen... die Sache hat sich gelohnt. Jetzt knnen wir das Versteck so nutzen, wie es ursprnglich vorgesehen war - als Gefngnis fr den Abschaum der Wchter, um aus ihnen all ihre Geheimnisse rauszupressen. He he. Ach, und danke, dass du uns den Hinweis mit dem Alarmsystem gegeben hast - ohne Verstrkung htten wir keine Chance gehabt. + + + Ein weiterer Sieg fr die Wchter! Diese Anarchisten waren einfach zu grenwahnsinnig... Sie haben sich an unser geheimes Warenlager herangeschlichen und dachten wirklich, dass sie damit durchkommen. Nein, so nicht! Wir haben sie berrascht und ihnen die Schdel weggepustet, als wren sie tollwtige Hamster. + + + Es ist nichts Neues, dass sich bei der Freiheit nur Abschaum tummelt, aber wir sind an brandneue Informationen ber einen ihrer grten Spinner rangekommen. Dieser Gauner war bei der Freiheit unter dem Namen Flint bekannt, aber vor seinem Beitritt hie er Magpie und war ein Stalker. Zumindest war das sein Name, als er nach Zaton gekommen ist. Er htte fast einen ganzen Jgertrupp einem Mutanten zum Fra vorgeworfen. Er hat sie reingelegt und eine Chimre htte sie beinahe in Stcke gerissen, whrend sich dieser Mistkerl ihre Ausrstung geschnappt hat und hier zur Janow-Station gegangen ist. Nachdem er sich den Freiheitlern angeschlossen hatte, hat er seinen Kameraden in eine Anomalie gelockt und sich dort sein Artefakt gekrallt. Ja, so sind sie, die Freiheitler. + + + Es gibt hier ein neues Schiffbauprojekt unter der Leitung von Noah. Ja, das ist die neueste Attraktion in Zaton - ein Stalker namens Noah. Erfahren, motiviert und vllig durchgeknallt. Sein neuestes verrcktes Vorhaben ist es, alle Stalker vor der Apokalypse zu retten. Aus diesem Grund baut er einen alten Kahn zu einer "Arche" um - oder besser zu einem Irrenhaus. Falls du vorhaben solltest, bei ihm vorbeizuschauen, pass auf, dass du Noah nicht wtend machst oder ihn belstigst. Solange du das nicht tust, ist er ziemlich harmlos. + + + Kennst du Nimble? Zurzeit hngt er auf der Skadowsk rum. Er ist wirklich ein Meister seines Fachs. Egal was du brauchst, er kriegt es. Nun ja, zumindest meistens. In letzter Zeit handelt er hauptschlich mit Waffen und Schutzanzgen, alles Spitzenware! Sonderanfertigungen, experimentelle oder handgemachte Sachen... zwar nicht billig, aber warum auch? Wer was Exklusives will, muss bereit sein, tief in die Tasche zu greifen. + + + Wusstest du, dass Pilot eine neue Route zwischen Zaton und Jupiter hat? Vorher war man eine ganze Weile unterwegs - es ging bergauf, man musste Anomalien umgehen usw. Jetzt ist das ein Kinderspiel und keine Reise mehr, sondern fast schon wie ein Spaziergang im Park. Kein Wunder, die Strecke ist ja nur noch halb so lang. Aber Pilot ist bescheiden und ehrlich: Ehre, wem Ehre gebhrt! Er war nicht derjenige, der die Route entdeckt hat. Ein Stalker hat ihm seine Karten gezeigt. Natrlich nicht umsonst, aber ein Vermgen hat er nicht dafr verlangt. + + + Nicht viel, um ehrlich zu sein. + + + In der Zone ist immer was los, egal wo. + + + Nun, du bist jetzt hier. Ich denke, das ist durchaus eine Neuigkeit. + + + Was gibt's Neues in der Zone? + + + Ich wei sonst nichts, was dich interessieren knnte. + + + Ich wrde dir gerne mehr erzhlen, aber das ist alles, was ich gehrt habe. + + + Ich habe dir alles erzhlt, was ich wei. + + + Hm... vielleicht solltest du Grouse drben auf der Skadowsk fragen. Es gibt da eine Sache, bei der er Hilfe bentigt - einige Stalker sind spurlos verschwunden. Jeder glaubt, dass Blutsauger sie auf dem Gewissen haben, denn die gefundenen Leichen hatten kein Blut mehr in ihrem Krper. Aber es sind einfach zu viele... Fast jeden zweiten Tag verschwindet ein Stalker, und dieses Verhalten ist fr Blutsauger eher ungewhnlich... Grouse hat sogar einen erfahrenen Jger angeheuert, um diese Blutsauger zu jagen. + + + Weit du, wenn ein Stalker Geld braucht, gibt es zwei Mglichkeiten: Artefakte finden und sie fr ein Drittel des Werts an Hndler verhkern, oder fr die Wissenschaftler arbeiten. Die haben immer irgendwas fr einen Stalker zu tun - mal wollen sie ein seltenes Artefakt, mal einen Mutantenkadaver haben. Aber vor allem knnen sie dir eine offizielle Genehmigung fr den Aufenthalt in der Zone ausstellen, wenn du mit ihnen gut klarkommst. Stell dir vor, wie du mit deinem Rucksack voller Beute an einem Wachposten des Militrs vorbeigehst und dir die Soldaten salutieren! Da wird mir gleich ganz warm ums Herz! Aber wie auch immer, der Bunker der Wissenschaftler befindet sich westlich der Janow-Station. Ein Stalker arbeitet bereits fr sie, aber vielleicht knnen sie ja noch jemanden wie dich gebrauchen. + + + Wie erfolgreich du bist, hngt davon ab, was du tust. Wenn es dir nichts ausmacht, auf Mutantenjagd zu gehen, wirst du viele Jobangebote kriegen. Schau im Untergeschoss der Janow-Station vorbei und frage nach Trapper - er bezahlt gut fr das Tten von Mutanten. Allerdings solltest du nicht Jagd auf den erstbesten Pseudohund machen, der dir ber den Weg luft, um an deine Belohnung zu kommen. Bei Trappers Auftrgen geht es um ganz bestimmte Monster, die entweder beim Sammeln von Artefakten rger machen, oder hufig an den Orten anzutreffen sind, die Stalkern als Versteck vor Emissionen dienen. + + + Typen wie du, die auf die Skadowsk kommen, schauen gerne bei Beard vorbei. Er bezahlt gut fr Artefakte... Aber ich sag dir was - er hat keinen guten Geschftssinn. Er will seinen Gewinn nicht mit gewissen mchtigen Leuten teilen... und das wird ihn eines Tages den Kopf kosten. Verstehst du? + + + Falls du Kohle machen willst, geh zu Uhu. Er handelt mit allem, was ein echter Kerl auf der Skadowsk brauchen kann - mit Informationen, Waffen usw. Falls du brisante oder wertvolle Sachen hast, beispielsweise ein Dokument oder den PDA eines Stalkers, bring das Zeug zu Uhu und steck die Kohle ein. Du kannst auch gutes Geld machen, wenn du seine persnlichen Auftrge annimmst. Frag ihn einfach, ob du irgendetwas fr ihn erledigen kannst. + + + Du solltest mal mit Gonta reden. Er und seine Leute haben einiges zu erzhlen. Vor nicht allzu langer Zeit ist eine Chimre in Zaton aufgetaucht, also hat sich Gonta mit seinem Trupp auf die Jagd gemacht. Sie haben sich in zwei Gruppen aufgeteilt, um die Bestie aufzuspren, und einen der Jger hat er auf die Suche nach dem Blutsaugerlager geschickt. Sie waren also nicht viele, als sie der Chimre endlich auf die Spur gekommen sind. Ein anderer Stalker, Magpie, ist zu ihnen gestoen. Ich wei nicht, wie das genau abgelaufen ist, aber alles deutet darauf hin, dass Magpie sich aus dem Staub gemacht hat, als er die Chimre gesehen hat. Gonta htte es fast nicht geschafft und einer seiner Mnner wurde schwer verwundet. Die Chimre ist immer noch da drauen, weswegen sie nach Leuten suchen, die ihnen bei der Jagd helfen. + + + Ganz einfach: Wenn du gutes Geld verdienen willst, ist Sultan dein Mann. Er hat hier das Sagen, und wenn du gut mit ihm klarkommst, hat er vielleicht was fr dich zu tun. + + + Wenn du ein guter Stalker bist - also Artefakte findest - sprich mit Beard. Er geniet hier ein hohes Ansehen und ist der einzige auf der Skadowsk, der dir fr deine Artefakte einen guten Preis macht. Er hat die Kontakte, um die Artefakte aus der Zone rauszukriegen. Auerdem ist er ein feiner Kerl, weit du... er hat immer einen guten Ratschlag oder einen geeigneten Job fr dich parat. + + + Auf der Skadowsk ist ein Hndler, sein Name lautet Uhu. Ist nicht gerade der sympathischste Kerl auf dem Schiff. Er beschwert sich immer darber, dass jeder Beard Artefakte verkauft und nicht ihm. Aber wenn man Kohle braucht, kann es nie schaden, ihn zu fragen, ob er was zu erledigen hat. Dieses Wiesel handelt mit weit mehr als nur Munition. Er kann dir Infos geben, verkauft Waren und ist auch an deinem Zeug interessiert. Statte ihm mal einen Besuch ab - du findest ihn auf dem zweiten Achterdeck. Ich bin mir sicher, ihr kommt ins Geschft. + + + Du kannst Wano fragen, er hngt meistens in der Janow-Bar rum. Zurzeit hat er rger mit den Banditen - er hat schon drei Mal versucht, seine Schulden bei ihnen zu begleichen, aber die Zinsen werden immer hher. Er hat viel Erfahrung und entdeckt eine Anomalie mit geschlossenen Augen, aber dennoch gert er immer wieder in Schwierigkeiten. Mehrere Leute haben ihm schon geraten, sich aus dem Staub zu machen. Die Zone ist zu gro, als dass ihn die Banditen finden knnten. Aber er ist zu stolz, um einfach wegzulaufen, und es gibt nicht viele Leute, die ihm bei der Sache mit den Banditen helfen wollen... + + + Vergiss das mit den Jobs mal, Mann... Die Banditen machen uns das Leben immer mehr zur Hlle. Sie haben Mitaj als Geisel genommen und fordern fr seine Freilassung ein Lsegeld. Mitaj war einer der ersten Stalker hier in der Janow-Station. Er hat dort alles so hergerichtet, dass die Leute whrend einer Emission geschtzt sind. Jetzt braucht er ein Mal Hilfe und niemanden kmmert es. Bei den Freiheitlern und Wchtern berrascht mich das nicht - die machen sich schon gegenseitig das Leben schwer genug... aber die anderen - die sollten echt was unternehmen! Ach, warum reg ich mich auf... Mitajs eigener Trupp wei nicht, wie man ihn aus der Hand der Banditen befreien knnte. Falls du ihnen helfen willst, rede mit Grizzly. Du findest ihn in der Bar der Station. + + + Nitro, der Techniker in der Janow-Station, braucht Materialien, mit denen er arbeiten kann. Er kennt sich mit Waffen ebenso gut aus wie mit Elektronik, falls du es noch nicht gewusst hast. Aber manchmal reichen Fhigkeiten einfach nicht aus - er braucht die richtigen Materialien und hat schon viel herumgefragt. Das Problem ist, dass die ungefhrlichen Orte schon leergerumt wurden, whrend den meisten Leuten die anderen Gegenden zu gefhrlich sind. Nitro hofft, dass er jemanden findet, der dieses Risiko auf sich nimmt. Ich bin mir sicher, er lsst dafr 'nen Haufen Geld springen. + + + Ich habe gehrt, dass Onkel Jar in der Janow-Station nach einem Stalker sucht, der ihm bei irgendeiner Sache hilft und nicht allzu viele Fragen stellt. Ich wei nicht, warum er nicht einfach seine Kumpels von der Freiheit fragt... Wie auch immer, er ist ein netter, alter Mann. Vielleicht solltest du mal mit ihm reden und versuchen, mit ihm ins Geschft zu kommen. + + + Hm... ich wsste niemanden. + + + Das wrde ich selbst gerne wissen. + + + Woher zum Teufel soll ich das wissen? + + + Wsstest du jemanden, der einen Job fr mich hat? + + + Das hast du mich schon gefragt. + + + Ich kann dir nichts Neues erzhlen. + + + Du hast meine Antwort schon. + + + Ach, schon gut. + + + Ich habe eine Frage. + + + Frag einfach. + + + Spuck's aus. + + + Schie los. + + + Ich hre. + + + Hilfe! + + + Nimm dieses Medkit. + + + Tut mir leid, ich habe nichts. + + + Ich verstehe. + + + Was machst du gerade? + + + Kann ich mitkommen? + + + Natrlich. Je mehr desto besser. + + + Tut mir leid, nein. Ich bin lieber alleine. + + + Na dann, los. + + + Ich muss irgendwohin. Kannst du mich gegen eine kleine Gebhr dorthin bringen? + + + Sicher. Wo willst du hin? Whle dein Ziel aus. + + + Einverstanden. Gehen wir. + + + Ich habe meine Meinung gendert. + + + Nein, ich habe Wichtigeres zu tun. + + + Ich lasse es gerade ruhig angehen. + + + Nichts, ich geniee meine Freizeit. + + + Wonach sieht es denn aus? Nicht das Geringste! + + + Ich verfolge Mutanten. + + + Ich beschatte ein paar Typen. Richtige Vollidioten... + + + Ich verfolge ein paar Sldner. Das sind richtige Arschlcher! + + + Ich verfolge einen Trupp von bescheuerten Fanatikern. Monolithern also... + + + Ich bin hinter ein paar Zombies her. Von denen gibt es hier viel zu viele... + + + OK, das kostet dich + + + Ach, ich habe meine Meinung gendert. + + + So viel habe ich nicht. + + + Oh, nichts, wrde ich sagen. + + + Ich verfolge ein paar Mutanten. Jemand muss ihnen ja zeigen, wo's lang geht. + + + Ich bin hinter ein paar Halunken aus der Gegend her. + + + Ich bin auf der Jagd nach ein paar Sldnern. Wir haben da noch eine Rechnung zu begleichen. + + + Ich bin hinter diesen verrckten Monolithern her. + + + Ich versuche, ein paar der Typen zu erwischen, die mir Geld schulden. + + + Im Moment tue ich nichts. + + + Ich jage Mutanten... mchte die Gegend hier von ihrem Dreck subern. + + + Ich bin auf einer Mission und verfolge einen Banditentrupp. + + + Mein Ziel sind Sldner. Ich verfolge die Spuren von einem ihrer Trupps. + + + Ich bin hinter einem Monolithertrupp her. + + + Ich verfolge diese blden Amateure... von der Freiheit... + + + Ich bin auf der Suche nach Artefakten. + + + Ich sammle keine Pilze... sondern eher Artefakte. + + + Ich suche Artefakte. + + + Ich bin unterwegs zur Boiler-Anomalie, gleich in der Nhe eines kleinen Wldchens. + + + Ich bin auf dem Weg zum nrdlichen See... werde mir ein paar Tage Urlaub auf der Halbinsel gnnen. + + + Ich bin unterwegs zum Gebiet jenseits des nrdlichen Sees - dort gibt es einen ganz netten Lagerplatz. + + + Ich bin auf dem Weg in die Wlder jenseits des nrdlichen Sees. + + + Ich gehe in den kleinen Wald westlich des Sgewerks. + + + Ich bin unterwegs zu dem Hgel westlich des Sumpfes. Dort bin ich sicher vor diesem verpesteten Dreckssumpf. + + + Ich gehe zum Antennenkomplex. Westlich davon gibt es einen netten, kleinen Platz, wo ich entspannen werde. + + + Ich bin unterwegs in den Wald westlich der Pinieneiche... komm doch mit, wenn du willst - ich htte nichts gegen etwas Gesellschaft. + + + In ein Wldchen zwischen dem Eisenwald und den Werksttten. + + + In Richtung groe Brcke... stlich davon soll es einen sicheren, ungestrten Flecken Erde geben. + + + Zu einem Parkplatz sdlich des alten Schiffs. + + + Nichts Besonderes, bin nur unterwegs. stlich der Skadowsk werde ich auf einem Hgel mein Lager aufschlagen. + + + In ein Wldchen zwischen Isumrudnoje und der Tankstelle. + + + Zu einer Straengabelung in der Nhe der Klranlage. + + + Zur Boiler-Anomalie. + + + Zur Forststation. Dort gibt es einen Gebudekomplex, vermutlich hast du ihn schon gesehen. Sogar ein Hochofen ist dort... ich frage mich, was sie da unten genau gemacht haben. + + + In ein Wldchen westlich des abgebrannten Bauernhofs. + + + In ein Wldchen stlich der Boiler-Anomalie. + + + Zu einem Hgel gleich hinter dem nrdlichen See. + + + In ein kleines Wldchen sdlich des abgebrannten Bauernhofs. + + + Ich bin unterwegs ins Gebiet westlich der Skadowsk... wo die Rohre herauskommen. + + + Ich bin auf dem Weg zu einem Pltzchen mitten zwischen der Skadowsk und dem Baggerschiff. + + + Zu einer Sumpfstelle in der Nhe des alten Schiffs. + + + Zu einem Bach in der Nhe der Narbe-Anomalie. + + + Zur Tankstelle. + + + Zu den Pinieneichenschluchten. + + + Ich mchte in der Klaue-Anomalie nach Artefakten suchen. + + + Ich bin unterwegs zu einem Hgel westlich der Boiler-Anomalie. + + + Zur Eisenwald-Anomalie. + + + Ich gehe in den Eisenwald, um dort nach Artefakten zu suchen. + + + Ich gehe zum Sumpf. Wegen dem ganzen Gas kriegt man dort zwar kaum Luft, aber die Artefakte sind es wert. + + + Ich bin unterwegs in die Werksttten des Umspannwerks. Es heit, dass man sich dort gut vor Emissionen verstecken kann, deswegen mchte ich das mal ausprobieren. + + + Kennst du das Sgewerk hier in der Nhe? Dorthin bin ich unterwegs. Ich mchte nachsehen, ob es da etwas Wertvolles zu finden gibt. + + + Ich will ein bisschen Urlaub im Ferienparadies Isumrudnoje machen. Oh ja, ein Paradies... fr Fleisch und Wildschweine! Ha ha! Aber egal... ich bin mir sicher, dass ich dort irgendwo mein Lager aufschlagen kann. + + + Zu einer Brcke. Ich glaube, auf der Karte ist sie als Preobraschenski eingezeichnet. + + + Zum Baggerschiff. Ich wette, dass es dort in der Gegend noch einige wertvolle Dinge zu holen gibt. + + + Zum alten Schiff. + + + Ich habe vor, beim abgebrannten Bauernhof vorbeizuschauen und zu berprfen, ob neue Artefakte aufgetaucht sind. + + + Zum sdlichen Plateau. + + + Zu dem Erdspalt bei der Tankstelle. + + + Ich bin unterwegs zum Antennenkomplex Krug - ich brauche einen sicheren Ort, um mich vor Emissionen zu schtzen. Allerdings sollen sich dort leider ziemlich viele Monster herumtreiben. + + + Ich bin unterwegs zum Antennenkomplex Krug - ich brauche einen sicheren Ort, um mich vor Emissionen zu schtzen. Allerdings sollen sich dort leider ziemlich viele Monster herumtreiben. + + + Ich will in der Nhe der Pinieneiche nach Artefakten suchen. Hoffentlich lassen mich die Mutanten in Ruhe. + + + Zum Abwassertank... du weit schon, in der Klranlage. Dort hat man wohl genauso viel Schutz vor Emissionen wie anderswo. + + + Ich bin unterwegs zum Bootspier am nrdlichen See. Danach entscheide ich spontan, wie's weitergeht. + + + Ich gehe zu den Docks, wo die Krne stehen. Ein ganz netter Ort, um ein Lager aufzuschlagen. + + + Ich habe vor, in der Boiler-Anomalie nach Artefakten zu suchen. Hoffentlich bersteht mein Schutzanzug diesen heien Urlaub. + + + Zur Narbe-Anomalie. + + + Ich will testen, wie feuerfest meine Ausrstung ist... und nach Artefakten suchen. Drben in der Rundkreis-Anomalie. + + + Zur Forststation. + + + Ich werde mein Lager auf der Schewtschenko aufschlagen. Dort ist man vor Emissionen sicher und wird nur selten von Mutanten angegriffen. + + + Ich werde mein Lager auf der Schewtschenko aufschlagen. Dort ist man vor Emissionen sicher und wird nur selten von Mutanten angegriffen. + + + Ich gehe zu den Docks, wo die Krne stehen. Ein ganz netter Ort, um ein Lager aufzuschlagen. + + + Ich will meine Beute loswerden und mir ein paar Bier gnnen. Ich denke, die Skadowsk ist wie geschaffen dafr. + + + Ich gehe zum Armeecheckpoint, bei der Jupiter-Anlage. + + + Zum Containerlagerhaus. + + + Ich bin unterwegs in ein total unscheinbares Gebiet zwischen dem Containerlagerhaus und dem sdlichen Tunnel. + + + Zur Janow-Station... endlich kann ich mich mal ausruhen. + + + Zum Tunnel nrdlich von Kopatschi. + + + Ich bin unterwegs zu einem wirklich unheimlichen Ort: Kopatschi... oder was von dem Dorf brig ist. Und ja, ich habe eine Extraladung Munition und Strahlenschutzmittel dabei... ich werde das Zeug wohl brauchen. + + + Zur Zementfabrik. Ein ganz netter Aussichtspunkt und das Tolle dort ist, dass sich niemand an dich heranschleichen kann. + + + Zur Zementfabrik. Ich muss das Untergeschoss berprfen. + + + Zum Umspannwerk in der Nhe der Janow-Station. + + + Ich bin unterwegs zu einem Ort in der Nhe des sdlichen Eisenbahntunnels. + + + Ich gehe zu einem Khlbecken in der Nhe der Jupiter-Anlage. + + + Ich bin auf dem Weg in den Flugabwehrkomplex Wolchow... werde dort ein paar Zombies jagen. + + + Zum Bunker... du weit schon, der bei dem Flugabwehrkomplex Wolchow. + + + In das anomale Wldchen in der Nhe des Steinbruchs. Vielleicht finde ich dort ein paar Artefakte. + + + Ich gehe zum Steinbruch, wo die Wagen der Bauarbeiter stehen. + + + Es gibt da ein nettes Pltzchen zwischen dem Steinbruch und der Janow-Station... dort werde ich eine Weile bleiben und es ruhiger angehen lassen. + + + Ich bin unterwegs zum stlichen Tunnel... der unter der Jupiter-Anlage. + + + Zur Asphalt-Anomalie... mal sehen, wie feuerfest mein Schutzanzug ist. + + + Ich gehe zur Plawni-Anomalie, um nach Artefakten zu suchen. Gegengift habe ich genug dabei... ich mache mir eher Sorgen wegen der Monster. + + + Zum Belftungskomplex zwischen der Fabrik und dem Containerlagerhaus. Warum? Tja, wenn ich das nur wsste. + + + Ich bin unterwegs zu den Jupiter-Werksttten. Vielleicht finde ich dort ja heraus, wie man auf so einen blden Namen kommt. + + + Ich gehe mitten ins Zentrum des Steinbruchs. Die Stalker behaupten, dass sie dort immer viele Artefakte finden. + + + Zum Parkplatz, wo die alten Fahrzeuge stehen. Werde mich in Elektroanomalien nach Artefakten umsehen. + + + Zwischen dem Flugabwehrkomplex Wolchow und dem Containerlagerhaus gibt es ein nettes, kleines Pltzchen... und genau dorthin bin ich unterwegs. + + + Zum Bunker der Wissenschaftler. + + + Zum Khlturm nordwestlich der Janow-Station. + + + In Richtung Jupiter-Anlage, aber ich habe nicht vor, da reinzugehen. Ich werde mich mal bei den Verwaltungsgebuden umsehen und schauen, was fr Mglichkeiten ich habe. + + + Ich gehe zur Aschehgel-Anomalie hinter Kopatschi. + + + Ich bin unterwegs zu den Jupiter-Werksttten. Dort soll ein Hubschrauber abgestrzt sein, also habe ich mir gedacht, dass ich mich dort mal umsehen sollte. + + + Ich gehe zu dem verfallenen Zug zwischen dem Flugabwehrkomplex Wolchow und dem Parkplatz. + + + Ich gehe zum sdlichen Tunnel, um im Falle einer Emission sicher zu sein. + + + Ich gehe zu diesem Pltzchen zwischen der Janow-Station und Kopatschi. + + + Ich bin unterwegs zu einem Pltzchen in der Nhe des Kanals, sdlich der Zementfabrik. + + + Ich bin unterwegs zu einem Pltzchen in der Nhe des Kanals, nrdlich der Jupiter-Anlage. + + + Ich werde mich mal beim Steinbruch umsehen. + + + Ich werde mich mal beim Steinbruch umsehen. + + + Ich werde mich mal im Gebiet nrdlich der Janow-Station umsehen. + + + In Richtung Flugabwehrkomplex Wolchow. Da gibt es einen ganz netten Lagerplatz, zwischen dem Komplex und dem Dorf Kopatschi. + + + Oh, ich bin nur unterwegs... in Richtung Containerlagerhaus. + + + Ich kundschafte die Gegend aus. Im Moment bin ich unterwegs in das Gebiet sdlich des Armeecheckpoints. + + + Zum Hubschrauberlandeplatz, zwischen der Fabrik und dem Containerlagerhaus. + + + Ich bin unterwegs zu diesem einen Pltzchen sdlich der Janow-Station, bei den Eisenbahnschienen. + + + In das Gebiet nrdlich der Janow-Station. + + + In das anomale Wldchen. + + + In das Gebiet sdlich des Flugabwehrkomplex. + + + Zum Khlbecken bei der Betonbad-Anomalie. + + + Ich werde mir die Gegend um die Anlage genauer ansehen. + + + Ich werde mir die Gegend um die Anlage genauer ansehen. + + + Zum Hof hinter dem Waschsalon. + + + Zum Waschsalon, dem sichersten Ort hier in der Gegend. + + + Zum Krankenhaus. Hoffentlich laufe ich dabei nicht diesen verrckten Monolithern ber den Weg... + + + Zum Buchladen... ich habe gehrt, dass man dort einigermaen vor Emissionen geschtzt sein soll. + + + Ich bin unterwegs zur rtlichen Sehenswrdigkeit - dem Denkmal zur Vlkerfreundschaft. Es ist ganz in der Nhe des Buchladens. + + + Zum alten Lebensmittelgeschft. Man findet dort heutzutage zwar kein frisches Brot mehr, aber wenigstens ist man gut genug vor Emissionen geschtzt. + + + Zum Bereska-Laden. + + + Zum alten Kindergarten. + + + Zum Kinoplatz, in der Nhe des Prometheus-Monuments. + + + Ich bin unterwegs zur Schule. Dort soll es zwar von Monstern nur so wimmeln, aber man soll zumindest vor Emissionen sicher sein. + + + Ich bin unterwegs ins alte Servicezentrum. Im ersten Stock soll eine Anomalie sein... und wer wei, vielleicht finden sich dort auch Artefakte. + + + Ich kundschafte diesen Teil der Stadt aus. Im Moment bin ich unterwegs zum alten Lebensmittelgeschft. + + + Ich kundschafte diesen Teil der Stadt aus. Im Moment bin ich unterwegs zum alten Lebensmittelgeschft. + + + Ich kundschafte die Gegend aus. Im Moment bin ich unterwegs zu diesem einen Gebude hinter der Wohnanlage. + + + Ich will mich im Servicezentrum umsehen... ich glaube, es heit Jubilejni. + + + Ich suche Artefakte hier in dieser Gegend. Auf dem Hof soll eine Feueranomalie sein, westlich des Kindergartens... + + + Oh, ich schaue mich nur in der Stadt um. Gerade bin ich unterwegs zur Wohnanlage. + + + Oh, ich schaue mich nur in der Stadt um. Gerade bin ich unterwegs zur Wohnanlage. + + + Oh, ich schaue mich nur in der Stadt um. Gerade bin ich unterwegs zur Wohnanlage. + + + Ich wandere nur umher... im Moment bin ich unterwegs zum Flusshafen. Hoffentlich laufe ich dabei keinen verrckten Monolithern ber den Weg... + + + Ich bin auf der Suche nach einem Gebiet in Pripyat mit vielen Artefakten und keinen Monstern oder Monolithern... ha ha! Nein, im Ernst... ich bin unterwegs zu einer Anomalie, von der ich gehrt habe... gleich sdlich des Flusshafens. + + + Zum Prometheus-Kino. + + + Zum Kinoplatz, in der Nhe des Prometheus-Monuments. + + + Ich mchte es eine Weile ruhig angehen lassen und bisschen runterkommen. Nrdlich des Kindergartens gibt es auf einem Hof ein hbsches Pltzchen, das perfekt dafr geeignet wre. + + + In das Gebiet sdlich der Wohnanlage. + + + Ich bin unterwegs in das Gebiet zwischen dem Kindergarten und der Wohnanlage. + + + Es gibt da eine Gegend, die Narbe genannt wird, weil der Boden dort so aussieht, als ob man ihn mit einer Axt zerpflgt htte. Dort wurden Artefakte gefunden, aber wenn man erst einmal dorthin geht, geschehen die merkwrdigsten Dinge. Dein Hirn spielt so verrckt, dass du fast schon das Atmen vergisst, ganz zu schweigen davon zu verschwinden. + + + Weit du, wo das Baggerschiff ist? Die ganzen Gravitationsanomalien haben dem Ding arg zugesetzt, aber das sollte kein Problem fr einen erfahrenen Stalker sein. Hauptsache, man hat gengend Schrauben dabei, die man werfen kann. Aber das Schiff ist teilweise verstrahlt, sowohl innen als auch auen... es ist fast so, als ob man sich einem groen Haufen angereichertem Uran nhern wrde. + + + Es gibt da ein altes Umspannwerk, das auch Eisenwald genannt wird. Wenn du dorthin kommst, wirst du verstehen warum. Manche behaupten, dass sie nach einer Emission einen Haufen Artefakte dort gefunden htten. Allzu gefhrlich ist es im Eisenwald nicht, hauptschlich Elektroanomalien und leichte Strahlung... da sind auch ein paar Poltergeister, die dir allen mglichen Krempel entgegenschleudern, wenn du nicht rechtzeitig in Deckung gehst. + + + Hmm... ehrlich gesagt habe ich keine Ahnung. Aber wenn du die Mglichkeit hast, der Freiheit zu helfen, melde dich bei unserem Anfhrer in der Janow-Station. Loki ist sein Name, du findest ihn im Sdflgel. Denke immer daran: Wenn du an den Fortschritt der Menschheit, ein hheres Bewusstsein und an die Wichtigkeit der Geschenke der Zone glaubst, bist du auf dem richtigen Weg. + + + Keine Ahnung. Aber wenn du auf etwas stt, das uns bei unserem Kampf gegen die Zone und die Typen hilft, die die Zone als Segen und nicht als Fluch ansehen, melde dich beim Kommandeur der Expeditionseinheit der Wchter - Oberstleutnant Shulga. Er hat das Sagen in der Janow-Station, du findest ihn im Nordflgel. Eines ist ganz sicher: Jeder Zivilist, der seinen Beitrag fr den Erfolg der Wchter leistet, wird angemessen belohnt. + + + Alle reden davon, dass bei dem alten Khlturm merkwrdige Dinge vor sich gehen. Wenn man auf die allgemeine Frequenz schaltet, empfngt man Teile von Notrufmitteilungen... die hren sich so an, als ob ein armer Typ versuchen wrde, aus einer Anomalie zu entkommen. Und wenn man dann nach den Koordinaten fragt, herrscht Funkstille. Das Merkwrdigste daran ist aber, wie sich das Ganze anhrt. So eine Verzerrung kann ich mir nicht wirklich erklren... + + + Ich bin unterwegs zu einem Pltzchen zwischen der Skadowsk und der Schewtschenko. + + + Nach Jupiter... ich werde mich aber wohl nicht zu weit hineinwagen. + + diff --git a/gamedata/configs/text/ger/st_dialogs.xml b/gamedata/configs/text/ger/st_dialogs.xml new file mode 100644 index 0000000..4c13cbd --- /dev/null +++ b/gamedata/configs/text/ger/st_dialogs.xml @@ -0,0 +1,978 @@ + + + + Hr zu, ich will dich etwas fragen... + + + Dann spuck's aus. + + + Was hltst du von Nimble? + + + Nimble? Ich denke, wir werden diesen gerissenen Mistkerl die Tage an einem unaufflligen Pltzchen mit den Waren erwischen. Der kann was erleben! + + + Schon mal von der Oase gehrt? + + + Ich habe da mal eine witzige Story aufgeschnappt. Also, die Jungs von der Mllhalde haben Gerchte ber die genaue Position der Oase verbreitet und das ganze auch noch ziemlich glaubhaft rbergebracht. Dann sind sie zu diesem Ort gegangen und haben dort gewartet. Tja, was soll ich sagen? So viele leichtglubige Loser sind dort aufgetaucht und dort ihre Sachen losgeworden, dass die Jungs, die das Gercht in die Welt gesetzt haben, bald darauf die Zone verlassen haben. Warum nicht? Die haben jetzt ausgesorgt. Nur einer von ihnen ist in der Zone geblieben, ein Kerl namens Yoga... + + + Ja, angeblich wird man dort all seine Wehwehchen los. Ich denke, das wre gar nicht so bel - kein Kater mehr, keine Hmorriden... Die Oase finden, ein Erholungsgebiet daraus machen und die Kohle einstreichen - das wr's. + + + Warum sollte mich das interessieren? Das ist doch alles nur belangloses Gelaber fr Weicheier... Echte Mnner glauben nicht an diesen Quatsch. Da sitzt man in der Bar und will in Ruhe sein khles Bier genieen, aber an allen Tischen gackern aufgeregt die Stalker herum und spekulieren darber, wo die Oase sein knnte. Und jeder dieser Trottel schwrt, den genauen Ort zu kennen... Aber komischerweise erzhlt jeder dieser Trottel etwas anderes... + + + Ist dir schon mal ein Stalker namens Magpie ber den Weg gelaufen? + + + Aber sicher... Ich habe gleich gemerkt, dass er ein Volltrottel ist und dann habe ich gehrt, dass die Stalker ihn ebenfalls fr einen Volltrottel halten. Allerdings wei ich nicht, wo er ist... Du musst ihn selbst finden, falls du hinter ihm her bist. + + + Nein... den Namen hre ich zum ersten Mal, Kumpel. + + + Hast du eine Idee, wer Sachen aus einer persnlichen Kiste gestohlen haben knnte? + + + Eine Ratte. Ich denke, du solltest besser die Profis in der Janow-Station fragen. Sie sind bekannt fr das Jagen von Ratten. + + + Wer knnte mir hier beim Dechiffrieren helfen? + + + Ich habe gehrt, Nitro in der Janow-Station soll gut sein. Als er noch nicht fr die Wchter gearbeitet hat, haben die Jungs ihm manchmal Stalker-PDAs zum Hacken gegeben... Ach, das waren noch Zeiten... + + + Komm mir nicht mit technischem Kram, Meister. Dafr brauchst du einen Hacker. Damals als ich im Knast war, kannte ich mal einen, aber das war's dann auch schon wieder. Als ich auf freien Fu gekommen bin, hat er noch fnf Jahre vor sich gehabt... + + + Ich habe den PDA des Wchterhndlers. Kennst du jemanden, der Interesse daran haben knnte? + + + Auf der Skadowsk lebt ein Hndler namens Uhu. Er bezahlt gut und die Jungs verkaufen ihm hin und wieder Stalker-PDAs. Auerdem stellt er nicht allzu viele Fragen, insofern ist das eine feine Sache. + + + Fast jeder, Kumpel. Die eigene Fraktion wrde den Schwanzlutscher lebendig begraben, andere Fraktionen wrden einen riesigen Wirbel darum machen, aber Uhu in Zaton wrde diesen PDA richtig gut verschwinden lassen. Das einzige Problem dabei: Nur Uhu wei, wo dieser PDA dann spter wieder auftaucht... Die Entscheidung liegt bei dir. + + + Wo findet man hier in der Gegend Werkzeug? + + + Tja, also wenn du medizinische Instrumente brauchst, wrde ich mich mal in Krankenhusern und Notstationen umsehen. Falls du auf der Suche nach einfachem Werkzeug bist, knntest du im Steinbruch von Jupiter fndig werden. Feinwerkzeug findest du vielleicht in alten Werksttten. + + + Woher zum Teufel soll ich das wissen? Ich brauche kein Werkzeug, um Stalker dazu zu bringen, mit dem Geld rauszurcken - nur damit du's weit... Entspann dich, das war ein Scherz. + + + Kann hier jemand ein Speichermodul hacken? + + + Gute Frage! Glaubst du, ich kenn mich damit aus? Hah! Bist du bescheuert, Kumpel? Da brauchst du einen von den Technikern oder Wissenschaftlern... Du denkst doch nicht wirklich, dass ich mit so etwas zu tun habe, oder? + + + Ich will ehrlich sein: Das letzte Mal habe ich Speichermodule in der Schule gehacked, und das waren eher stinknormale Disketten. Sprich mit den Profis und lass ihre Kpfe damit rauchen. + + + Wer knnte einen Stahlbehlter aufbrechen? + + + Kennst du Kardan von der Skadowsk? Neulich war er total besoffen und hat auf jemanden Jagd mit einem Brecheisen gemacht. Er kann das Brecheisen bestimmt auch fr sinnvollere Zwecke nutzen und damit Zeug aufbrechen. + + + Tja, also mit dem richtigen Werkzeug knnte ich das sogar hinkriegen, aber wer schleppt das schon mit sich in der Zone herum? Versuch es mal bei den Technikern, Kumpel - die haben so etwas gut drauf. + + + Ich bin auf der Suche nach einem Stalker namens Snag. Weit du, wo ich ihn finden kann? + + + Keine Ahnung. Frag Sultan auf der Skadowsk. Der Boss wei normalerweise, wo diese ganzen Halunken stecken. + + + Ja, von diesem Versager habe ich schon mal gehrt. Normalerweise hngt er in Zaton rum, deswegen wirst du ihn hier in der Gegend nicht finden. + + + Weit du irgendetwas ber die abgestrzten Hubschrauber? + + + Wer knnte an Informationen ber den Grnder der Wchter interessiert sein? + + + Ich kenne niemanden, der NICHT interessiert wre! Das mssen ja brisante Informationen sein, Kumpel. Am besten versuchst du dein Glck bei Uhu auf der Skadowsk. Das bringt dir sicher Kohle ein und du machst dir keine Feinde. + + + Nein. Denk mal nach. Auf der einen Seite sind die Wchter, auf der anderen die Freiheitler, und die Stalker sitzen mir mitten im Genick. Und da erwartest du von mir, dass ich den Himmel im Auge behalte? + + + Tja, also die Jungs haben gesagt, dass sie einen in den Kabeln des Eisenwaldes baumeln gesehen htten. Aber da drauen gibt es noch viel mehr zu sehen... Du wirst bestimmt in eine Anomalie geraten oder das Vergngen mit einem Poltergeist haben. + + + Ja, ein paar Kerle haben gesehen, wie ein Hubschrauber auf ein Plateau gestrzt ist, allerdings gibt es keinen Weg hinauf... Sie haben gesagt, er sei so komisch geflogen, dass man meinen knnte, der Pilot htte sich irgendeine Pille eingeschmissen. + + + Man hat mir gesagt, ein Hubschrauber htte U-Boot gespielt und sei direkt in einem Sumpf gelandet. Du kannst dir sicher vorstellen, wie schnell der Vogel gesunken ist, und das Wasser dort entspricht nicht unbedingt der Qualitt einer Heilquelle: Gift, Chemikalien und wei der Kuckuck. + + + Hast du hier in der Gegend Militr gesehen? + + + Wer knnte an Karten der Gegend zwischen Zaton und Jupiter interessiert sein? + + + Pilot, denke ich. Er ist der wichtigste Ortskundige in diesen Gebieten. Es wre wirklich nicht schlecht, wenn er einige Karten htte. Dann msste er sich nicht mehr an den Sternen orientieren... + + + Die Jungs haben gesagt, dass ein Armeetrupp das sdliche Plateau hinuntergeklettert ist und in Richtung Sldnerlager unterwegs war. Sie haben wohl gedacht, dass irgendeine ganz groe Scheie im Anmarsch sei, und deswegen hatten sie es ziemlich eilig. + + + Ich habe da eine Story aufgeschnappt. Die Armeeratten haben wohl versucht, Zeug aus ihrem im Sumpf abgestrzten Hubschrauber zu holen. Stell dir das mal bildhaft vor: Fnf Armeebubis in Uniform hampeln im Sumpf herum und versuchen, nicht nass zu werden... Die haben wahrscheinlich so viel geflucht, dass sich sogar ein Bandit dafr geschmt htte. + + + Jemand hat mir erzhlt, wie er einem Stalker gefolgt ist, um einen Teil seiner Beute abzustauben, als er pltzlich Schsse gehrt hat. Wie sich herausgestellt hat, haben sich die Soldaten ein Feuergefecht mit den Sldnern geliefert. Er hat sich versteckt und gewartet, bis alles vorbei war, aber in der Zwischenzeit hat sich der Stalker schon aus dem Staub gemacht. Ganz schnes Pech, was? + + + Ein Kumpel hat mir erzhlt, wie er Zeuge einer komischen Situation wurde. Stell dir diesen alten Kahn mit seinem Windrad oben drauf vor und daneben Noah, der wie ein aufgescheuchtes Huhn herumquasselt. Dazu zehn Soldaten, die versuchen, Noahs Kter so gut wie mglich auf Distanz zu halten. Mein Kumpel hat sich kstlich amsiert, bevor er diesen lustigen Haufen sich selbst berlassen hat. + + + Nein, hier in der Gegend ist es ziemlich gefhrlich und berall lungern irgendwelche Typen mit aufgemotzten Waffen herum... Bei Einstzen habe ich keine Zeit zu schauen, wer von ihnen zum Militr oder zu den Wchtern gehrt. + + + Weit du, wie man nach Pripyat gelangt? + + + Wen knnte ich anheuern, um die Wissenschaftler zu beschtzen? + + + Hah, meine Jungs und ich erledigen den Job! Wir werden die Wissenschaftler so abschirmen, dass sie niemand mehr zu Gesicht bekommt! Stalker und Mutanten werden so viel Angst haben, dass sie sich nicht mehr in die Nhe ihres verdammten Bunkers trauen, das kannst du mir glauben! Wenn du uns jede Woche bezahlst, sind wir dabei. Ah, und Weihnachtsgeld wre auch nicht schlecht! + + + Zu Fu, Kumpel. Geh weiter nach Jupiter und frag dort herum, denn es gibt keinen direkten Weg von Zaton nach Pripyat. Das ist eine Tatsache. + + + Hey Mann, sehe ich aus wie ein verdammter Ortskundiger oder was? Ich meine, siehst du auf meiner Stirn ein Schild mit der Aufschrift "Zustndig fr dumme Fragen"? Nein? Dann frag Pilot. Er wird dafr bezahlt, solche Fragen zu beantworten. + + + Nein... was soll ich denn da? Es gibt dort keine Stalker, die ich abzocken knnte! + + + Kennst du jemanden, der nicht allzu viel um die Ohren hat und nach Pripyat will? + + + Pripyat ist kein Ort fr richtige Mnner, wie wir es sind. berall Mutanten und Anomalien, so wie berall in der Zone... aber ohne Stalker und ihre Beute. Sollten Stalker in Pripyat aufkreuzen, sag uns Bescheid und wir machen uns auf den Weg, um denen zu zeigen, wer dort das Sagen hat. + + + Keine Ahnung, Kumpel. Tut mir leid. + + + Ich habe eine ungewhnliche Waffe gefunden. Kennst du vielleicht jemanden, der sich damit auskennt? + + + Ich wrde mal die Techniker fragen. Ist doch ihr Job, sich damit auszukennen, oder? + + + Da bin ich berfragt, aber die Stalker auf der Skadowsk sind der Meinung, dass Kardan ein Technikgenie ist. Rede ruhig mit ihm... aber wenn du mich fragst, ist er nur ein alter Sufer... + + + Wen knnte ich anheuern, um Messungen fr die Wissenschaftler vorzunehmen? + + + Die Frage kann ich dir leicht beantworten - unsere Jungs. Sie waren zwar nicht in der Schule und haben keine Ahnung von Messungen, aber messen knnen sie sich trotzdem mit jedem. Dass das fr die entsprechende Person ein gutes Ende nimmt, wage ich jedoch zu bezweifeln. + + + Ich habe ein ziemlich auergewhnliches Artefakt gefunden. Kennst du vielleicht jemanden, der es kaufen wrde? + + + Ein auergewhnliches Artefakt sagst du? Lass mal sehen... Du musst es mir schon geben, damit ich es mir nher anschauen kann... Gib schon her! Hah, ruhig Blut, Kumpel, war nur Spa. Ich nehme es dir schon nicht weg. Aber wenn ich du wre, wrde ich dieses Ding lieber gut verstauen. Andere Leute haben vielleicht nicht so einen guten Humor wie ich. + + + Du hast vielleicht Nerven, hier mit diesem Artefakt herumzufuchteln... Respekt. Also in solchen Angelegenheiten solltest du mit Beard drben auf der Skadowsk reden. Wir wissen noch nicht, wie er die Artefakte aus der Zone rauskriegt, daher solltest du deins verkaufen knnen, kein Problem. + + + Ich habe hier in der Nhe ein Lager gefunden, in dem es von Blutsaugern nur so wimmelt. Was sollen wir tun? + + + hm, was gibt es da schon zu tun? Nimm die Beine in die Hand und lauf so schnell du kannst! + + + Ach, schon gut. + + + Hr zu, ich will dich etwas fragen... + + + Frag einfach. + + + Was hltst du von Nimble? + + + Nimble? Noch nie gehrt. Vielleicht ist er in einem anderen Trupp oder so? + + + Schon mal von der Oase gehrt? + + + Das ist ein Stalkermrchen, und so machen sie's: Sie erfinden irgendeinen Mythos und dann machen sie sich alle auf die Suche danach! Wenn ich du wre, wrde ich nichts darauf geben. Das ist ein Fass ohne Boden: Wenn du daran glaubst, dann glaubst du auch bald, dass der Wunschgnner wirklich existiert. + + + Ah, der Ort, an dem die Verletzungen von alleine heilen und man auf wundersame Weise wieder zu Krften kommt? Ich habe Neuigkeiten fr dich, mein Freund: Dieser Ort existiert nicht. Stalker erfinden so einen Schwachsinn, um die Gefahren der Zone zu verharmlosen. Die traurige Wahrheit ist jedoch, dass man in der Zone nirgends sicher ist. Und das solltest du dir hier drauen immer vor Augen halten, Kumpel. Traumtnzer machen es in der Zone nicht lange. + + + Ja, alle Artefakte dort sind ihr Gewicht in Gold wert und werden auf einem silbernen Tablett serviert, whrend man dir die Fe massiert... Das war natrlich nicht ernst gemeint. Ich bezweifle, dass die Oase wirklich existiert, auch wenn es schn wre. Man knnte dort sogar ein Krankenhaus errichten und braucht dazu nicht einmal rzte. Die Leute kommen einfach und werden geheilt... Verdammt, was fr eine naive Schnapsidee. + + + Ist dir schon mal ein Stalker namens Magpie ber den Weg gelaufen? + + + Es fllt mir schon schwer, die Namen der Leute bei den Wchtern im Kopf zu behalten, und du willst etwas ber einen Stalker wissen? Ihr Lager ist auf der Skadowsk - hr dich dort um. + + + Nein. + + + Hast du eine Idee, wer Sachen aus einer persnlichen Kiste gestohlen haben knnte? + + + Da haben wir's! So etwas wrde im Lager der Wchter nie passieren, aber hier sind berall diese Anarchos von der Freiheit - bei denen wrde ich zuerst fragen. + + + Wer knnte mir hier beim Dechiffrieren helfen? + + + Drben in der Janow-Station lebt ein Techniker namens Nitro. Er kennt sich ziemlich gut mit Elektronik aus. Ich habe mal das Passwort meines PDAs vergessen und innerhalb von fnf Sekunden hat er das Ding geknackt! + + + Da musst du zur Janow-Station. Suche dort nach Nitro, der hat so was drauf. + + + Ich habe den PDA des Wchterhndlers. Kennst du jemanden, der Interesse daran haben knnte? + + + Ein Hndler bei den Wchtern? Das kann nicht sein! Andererseits, wenn du Informationen hast, solltest du damit besser zu Oberstleutnant Shulga gehen, damit er sich darum kmmern kann. + + + Wo findet man hier in der Gegend Werkzeug? + + + Hier in der Nhe ist eine ganze Anlage. Mittlerweile knnte dort natrlich schon alles weg sein, aber ich wrde mich an deiner Stelle trotzdem mal in den Lagerhusern der Anlage umsehen. + + + Wenn ich du wre, wrde ich mich zuerst in den alten Werksttten umsehen. Vielleicht findest du auch etwas in Geschften. + + + Hier in der Gegend sind nur Mutanten und Anomalien. Hah! In Anomalien wrde ich nicht unbedingt suchen, und die ganzen Burer und Controller werden es dir auch nicht gerade leicht machen. + + + Hier in der Nhe ist unter der Brcke ein Zug. Ich habe diese Zge schon mal gesehen. Normalerweise transportieren sie technisches Personal, insofern knntest du dort fndig werden. + + + Kann hier jemand ein Speichermodul hacken? + + + Nitro. In der Janow-Station ist er der einzige, der sich mit so etwas auskennt. + + + Dafr brauchst du einen Techniker. Der einzige fhige Mann dafr ist Nitro in der Janow-Station. + + + Wer knnte einen Stahlbehlter aufbrechen? + + + Angeblich haben die Stalker einen Techniker. Er soll zwar ein Sufer sein, versteht aber scheinbar sein Handwerk. Sprich mit ihm. + + + Hah, da kannst du ja gleich einen Tresor mit dir herumschleppen. Ich bin mir sicher, dass Nitro dir nicht helfen kann. Mit einem elektronischen Schloss wre das allerdings was anderes... + + + Ich bin auf der Suche nach einem Stalker namens Snag. Weit du, wo ich ihn finden kann? + + + Wenn er ein Stalker ist, solltest du am besten die Stalker fragen. Ich habe noch nie von einem Kerl namens Snog oder wie er heit gehrt. + + + Weit du irgendetwas ber die abgestrzten Hubschrauber? + + + Wer knnte an Informationen ber den Grnder der Wchter interessiert sein? + + + Unser Kommandeur natrlich. Sag Shulga alles, was du weit, und der Dank der Wchter ist dir gewiss. + + + Ja, unsere Spher haben gesehen, wie ein Armeehubschrauber im Anflug auf den Ausweichlandeplatz von Jupiter war. Angeblich haben sie dort dem Hubschrauber signalisiert, dass er seinen Kurs ndern soll, aber ich schtze, die Piloten hatten gerade andere Probleme. Ich frage mich, ob es die Jungs von der Armee unbeschadet durch das Minenfeld geschafft haben. + + + Nicht wirklich, nein. Wir sind hier nicht besonders viel unterwegs... Versuch es mal bei unseren Jungs nahe der Janow-Station. + + + Unsere Patrouille hat berichtet, dass ein Armeehubschrauber in der Nhe der Jupiter-Anlage eine Notlandung durchfhren wollte. Leider ist er direkt in das Dach ber den Werksttten gekracht. Wahrscheinlich gibt es keine berlebenden. Die Patrouille hat nmlich nach dem Absturz kein Notsignal empfangen. + + + Hast du hier in der Gegend Militr gesehen? + + + Wer knnte an Karten der Gegend zwischen Zaton und Jupiter interessiert sein? + + + Jemand, der sie gut gebrauchen kann. Damit meine ich Pilot. Er ist ein Ortskundiger auf der Route zwischen der Janow-Station und der Skadowsk. Deswegen wren die Karten fr ihn sicher ntzlich. + + + Militr? In dieser Gegend habe ich kein Militr gesehen, aber wir sind hier auch nicht besonders viel unterwegs. + + + Neulich wurde im Minenfeld die Leiche eines Soldaten gefunden. Wahrscheinlich war er einer von denen aus dem Hubschrauber. Zustzlich zur Besatzung knnen bis zu acht weitere Personen in einem Hubschrauber dieses Typs transportiert werden. Folglich muss es berlebende geben, auch wenn niemand wei, wohin sie gegangen sind. + + + Erst neulich wurde ein Typ vom Militr beim Bunker der Wissenschaftler gesehen. Mehr wei ich allerdings auch nicht. + + + Angeblich hat neulich jemand in Uniform ein Gebude beim Flugabwehrkomplex Wolchow betreten. Allerdings kann es gut sein, dass es ein Zombie war, der fr einen Soldaten gehalten wurde. + + + Stalker haben in der Nhe der Jupiter-Anlage Militr gesehen. Der Beschreibung nach zu urteilen, waren das Spezialeinheiten in Begleitung eines unbekannten Stalkers. Sie waren in Richtung Pripyat unterwegs. Klingt glaubhaft, aber die Erfahrung lehrt uns immer wieder, dass man Informationen wie diesen normalerweise nicht blind vertrauen sollte. + + + Weit du, wie man nach Pripyat gelangt? + + + Wen knnte ich anheuern, um die Wissenschaftler zu beschtzen? + + + Sie wren nirgends besser aufgehoben als bei den Wchtern. Schau bei Oberstleutnant Shulga in der Janow-Station vorbei. Ihr werdet euch bestimmt einig. + + + Solange sie die Freiheitler fr sich arbeiten lassen, halten wir uns von ihrem Bunker fern. Es wre schlimmer als der Tod, wenn wir uns den ganzen Tag ihre dummen Witze anhren mssten. + + + Im Moment sehen die Wchter keinen Grund, nach einem Weg Richtung Pripyat zu suchen. Dennoch sammeln wir alle Informationen, die wir kriegen knnen. Unbesttigten Berichten zufolge sollen unter der Jupiter-Anlage Tunnel nach Pripyat fhren. Um der Sache auf den Grund zu gehen, msste man jedoch die ganze Anlage und das Gebiet drum herum durchforsten. + + + Nein. Fr Informationen dieser Art musst du mit einem zivilen Ortskundigen reden - unsere Spher haben schon genug um die Ohren. + + + Unsere Spher erkunden regelmig die Gegend, um einen sicheren Weg nach Pripyat zu finden, aber bisher ohne Erfolg. + + + Kennst du jemanden, der nicht allzu viel um die Ohren hat und nach Pripyat will? + + + Die Wchter sind in dieser Gegend nicht besonders prsent. Sprich mit unseren Leuten in der Janow-Station. + + + Gerchten zufolge haben die Wissenschaftler angeblich einen Typen vom Militr in ihrem Bunker. Der drfte es schwer haben, da bald wieder rauszukommen. Die Wissenschaftler sind fr zwlf bis achtzehn Monate dort. Zu Fu und auf sich gestellt wird er es nicht zum Rand der Zone schaffen. Deswegen denke ich, dass er interessiert sein knnte. + + + Ich wrde vorschlagen, du hrst dich mal bei den Leuten um, die auf Abenteuer aus sind. Es gibt da zum Beispiel in der Janow-Station einen Stalker namens Wano. Ihm ist es egal, in welche Schwierigkeiten er hineingert, und knnte sich als ntzlich erweisen. Der Kerl findet selbst mit geschlossenen Augen einen Weg durch Anomalien. + + + Tja, also du knntest eine Rekrutierungskampagne in einem Irrenhaus starten... Andererseits wsste ich eine gute Alternative - Monolith-Kmpfer. Da wir gerade davon reden... Einer ihrer Trupps wurde in der Nhe des Flugabwehrkomplexes gesichtet und bestimmt kennen sie auch einen Weg nach Pripyat... Hey Mann, ich hoffe, du nimmst mich nicht ernst... + + + Such bei den Wchtern nach Freiwilligen. Strider zum Beispiel... er ist noch keinem Einsatz zugeteilt und ich knnte mir vorstellen, dass der Oberstleutnant ihn mit dir gehen lsst. + + + Jeder wei, dass die Wchter die besten Kmpfer sind... aber im Moment haben wir andere Dinge zu tun. + + + Ich habe eine ungewhnliche Waffe gefunden. Kennst du vielleicht jemanden, der sich damit auskennt? + + + Meine Fresse, das ist ja mal ein fettes Teil! Hast du die Waffe selbst gebaut oder wirklich gefunden? So eine Wumme habe ich ja noch nie gesehen... Frag die Techniker. + + + Wen knnte ich anheuern, um Messungen fr die Wissenschaftler vorzunehmen? + + + Was fr eine blde Frage - die Wchter, natrlich. Wir haben viele erfahrene Leute und schon mit den Wissenschaftlern zusammengearbeitet. Statte doch Oberstleutnant Shulga einen Besuch ab. Er hat sicher einen Trupp, der fr den Job geeignet ist. + + + Wer will schon da arbeiten, wenn der Bunker von Freiheitlern bewacht wird? Diese verdammten Pazifisten sind meistens so breit, dass sie mit hoher Wahrscheinlichkeit ihre eigenen Leute abknallen. + + + Ich habe ein ziemlich auergewhnliches Artefakt gefunden. Kennst du vielleicht jemanden, der es kaufen wrde? + + + Alle Artefakte sind auergewhnlich und ich wrde dir nicht raten, es mit dir herumzutragen. Gib es den Experten und lass gut sein. + + + Du solltest dieses Ding mal den Stalkern zeigen. Die kennen sich mit so was aus. Oder noch besser: Zeig es dem Kerl, der den Stalkern ihre Artefakte abkauft. + + + Ich habe hier in der Nhe ein Lager gefunden, in dem es von Blutsaugern nur so wimmelt. Was sollen wir tun? + + + Die Trupps der Wchter fhren zurzeit in diesem Gebiet keine Suberungsoperationen durch. Deswegen muss das Lager warten. + + + Ach, schon gut. + + + Hr zu, ich will dich etwas fragen... + + + Schie los. + + + Was hltst du von Nimble? + + + Hab noch nicht viel ber ihn gehrt... Am besten fragst du die Stalker. Er ist doch einer von denen, oder? + + + Schon mal von der Oase gehrt? + + + Ne ganze Menge... Ein Palast im Wstensand, eine paradiesische Insel im Nebel, ein Luftschloss... Shambhala, Eden... die Oase - nenne es, wie du willst. Jeder Mensch hat seine Trume, und ich kann es niemandem verbeln. + + + Ich habe mal eine interessante Geschichte von einem Stalker aufgeschnappt. Er war wohl der Erste, der die Oase erwhnt hat. Er meinte, dass dort laut einer Legende alle Verletzungen heilen wrden und man so ruhig und entspannt sei, als wre man gar nicht in der Zone. Erst als er weg war, ist mir wieder eingefallen, dass er gehinkt hat. Aber als er von der Oase zurckgekommen ist, ist er ganz normal gegangen und irgendwie hat er viel jnger ausgesehen. + + + Ja, freie Stalker haben mir die Koordinaten gegeben... zehn unterschiedliche Koordinaten, um genau zu sein. Wenn man sie alle bercksichtigt, erhlt man ein Gebiet, das vom Hirnschmelzer bis zum Atomkraftwerk Tschernobyl reicht, mit der Janow-Bar irgendwo in der Mitte. Es ist gut mglich, dass wir gerade in der Oase sind, also geniee es! + + + Ist dir schon mal ein Stalker namens Magpie ber den Weg gelaufen? + + + Nein, ich kenne hier in der Gegend nicht viele freie Stalker. + + + Magpie? Noch nie gehrt, aber ein cooler Name. + + + Hast du eine Idee, wer Sachen aus einer persnlichen Kiste gestohlen haben knnte? + + + Nein, hier ist keiner so drauf. Vielleicht beit einer mal von deinem Brot ab oder nimmt einen Schluck aus deiner Flasche, wenn du gerade nicht hinschaust, aber kriminelle Diebe sind sie nicht... + + + Wer knnte mir hier beim Dechiffrieren helfen? + + + Ich habe gehrt, dass Nitro in der Janow-Station sich gerne mit Kombinationen und Algorithmen beschftigen soll. Ob's stimmt, wei ich nicht, ich habe noch nie mit ihm zu tun gehabt. Er arbeitet fr die Wchter und hat deswegen nicht viel Zeit fr uns Freiheitler. + + + Ich wei nicht viel ber irgendwelche Spezialisten hier... Frag unsere Jungs drben in der Janow-Station, wenn du das nchste Mal dort bist. Die wissen sicher bescheid. + + + Ich habe den PDA des Wchterhndlers. Kennst du jemanden, der Interesse daran haben knnte? + + + Das klingt interessant! Ich wrde ihn Loki geben, unserem Anfhrer in der Janow-Station. Er wird schon dafr sorgen, dass die freien Stalker wissen, welches Gesindel die Wchter rekrutieren. + + + Wo findet man hier in der Gegend Werkzeug? + + + In der Anlage natrlich, wo sonst? Besonders schn ist es dort zwar nicht, aber die Lagerhuser werden dir gefallen. Ist dort ein bisschen sicherer und da drin muss man einfach gutes Werkzeug finden. + + + Das ist eine gute Frage, Mann. Also denken wir mal scharf nach. Wo wrde man auerhalb der Zone Werkzeug kriegen? Wer ein bisschen Hirn hat, geht in einen Laden und kauft es dort. Und wer so dmlich ist und das nicht wei, versucht es wahrscheinlich in einer Werkstatt, richtig? In der Zone ist das nicht anders. Genau an diesen Orten musst du dich umsehen. So einfach ist das, Stalker! + + + Werkzeug? Hr zu, Mann, ist das so was wie ein Code? Hier sind keine Bullen, du kannst also offen reden... Ach, du meinst es ernst? Wenn das so ist - ich habe keine Ahnung. + + + Ich habe gehrt, dass einer unserer Jungs nach Werkzeug gesucht hat und auf den Zug unter der Brcke gestoen ist. Scheinbar ist dort eine Tesla-Anomalie... Jedenfalls soll es da nicht besonders spaig gewesen sein... Warum ich dir das erzhle? Er meinte, dass dort Werkzeug herumgelegen hat. Er hat dann aber beschlossen, das Werkzeug liegen zu lassen und schnell wieder abzuhauen, weil es dort nicht sicher war. + + + Kann hier jemand ein Speichermodul hacken? + + + Nowikow im Bunker der Wissenschaftler drfte das hinkriegen. Er arbeitet schnell, macht seine Sache gut und ist freundlich. Dann gibt es da noch Nitro in der Janow-Station, diesen Wchtermitlufer. Er ist billig und ein Idiot, aber wahrscheinlich wrde er es machen. + + + Ein fhiger Techniker, denke ich mal. Der Techniker hier kmmert sich allerdings eher um mechanische Dinge. Und wenn du keinen Auspuff auf dein Speichermodul geschweit haben willst, solltest du dich lieber in Jupiter umhren. + + + Wer knnte einen Stahlbehlter aufbrechen? + + + Nun, neulich hat man mir Kardan von der Skadowsk empfohlen. Man sagt, er versteht etwas von seinem Handwerk, auch wenn er meistens betrunken ist. Vielleicht kann er dir beim Aufbrechen des Stahlbehlters behilflich sein. + + + Wahrscheinlich jemand, der beruflich Stahlbehlter aufbricht? Bei Nitro, dem rtlichen Techniker, wirst du allerdings kein Glck haben. Ich habe gehrt, er macht sich lieber an elektronischen Gerten anderer Leute zu schaffen. + + + Ich bin auf der Suche nach einem Stalker namens Snag. Weit du, wo ich ihn finden kann? + + + Noch nie von dem Kerl gehrt... Ich wrde mich mal bei den anderen freien Stalkern umhren. + + + Weit du irgendetwas ber die abgestrzten Hubschrauber? + + + Wer knnte an Informationen ber den Grnder der Wchter interessiert sein? + + + Loki, keine Frage. Er ist unser Anfhrer hier in der Janow-Station. Auch wenn er mit den Informationen vielleicht nicht viel anfangen kann - Hauptsache die Wchter kriegen sie nicht in die Finger. Kannst du dir vorstellen, was das fr eine Propagandaschlacht wird? Ich bekomme schon Kopfschmerzen, wenn ich nur daran denke. + + + Ja, hast du die Story von dem Hubschrauber im Minenfeld gehrt? Die Jungs von der Armee haben eine Bruchlandung auf dem Ausweichlandeplatz hingelegt, der sechs Jahre zuvor von ihren eigenen Kameraden vermint worden war. Einige Leute meinen, das war reine Dummheit, aber ich denke, da steckt mehr dahinter. Sieh's mal so: Niemand wird dorthin gehen, und wenn die Jungs von der Armee ihren Einsatz beendet haben, knnen sie zu ihrem Hubschrauber zurckkehren, ihn wieder in Ordnung bringen und weg sind sie. Es wrde mich wirklich interessieren, was das fr ein Einsatz ist... + + + Ich bin nicht hier aus der Gegend und habe keinen blassen Schimmer. Schau doch mal bei uns in der Janow-Station vorbei. Unsere Jungs werden dir alles erzhlen, was du wissen willst - und was du nicht wissen willst ebenso. + + + Ja, einige Jungs haben neulich einen ganz schn wackligen Hubschrauber gesehen. Der Landeplatz war auch nicht gerade ideal - ein Dach in Jupiter. Sie haben gesagt, der Vogel sei abgestrzt und htte sich dann mitsamt allem mglichen Schrott direkt durch das Dach in das Gebude gebohrt. + + + Hast du hier in der Gegend Militr gesehen? + + + Wer knnte an Karten der Gegend zwischen Zaton und Jupiter interessiert sein? + + + Pilot mit Sicherheit, Mann. Er ist der wichtigste Ortskundige der freien Stalker hier in der Gegend. Wenn du ber Karten plaudern willst, bist du bei ihm genau richtig. + + + Mach dich locker, Kumpel. Hier in der Gegend sind keine Bullen, Soldaten oder Sldner. Sicherer als hier ist es nirgends in der Zone. + + + Nein, aber ein paar Leute haben erzhlt, sie htten eine militrische Einheit gesehen, die in der Nhe des Landeplatzes durch das Minenfeld robben wollte. Sie hatten vor, ihren abgestrzten Kameraden zu helfen, haben es dann aber doch bleiben lassen. Soldaten sind wirklich unberechenbar. Man wei nie, wann sie einem in den Rcken fallen. + + + Kann ich nicht behaupten. Aber Gerchten zufolge ist ein Soldat im Bunker der Wissenschaftler. Angeblich hat Oserski - der Biologe - gesagt, dass der Kerl zur Besatzung des Hubschraubers gehrt, der in die Anlage gekracht ist... Zurzeit macht der Witz die Runde, dass sich diese Nerds den Soldaten als Haustier halten. + + + Ich selbst nicht, aber mir ist da etwas zu Ohren gekommen. Einige Stalker haben gesagt, dass ein Soldat beim Flugabwehrkomplex Wolchow gesehen wurde. Ist bestimmt ein Geist oder ein wiedererweckter Zombie, was meinst du? + + + Nein. Irgendein Typ hat behauptet, er htte gesehen, wie sieben Soldaten einem Stalker an der Funkanlage vorbei in Richtung Pripyat gefolgt sind. In der Zone gibt es schon eine ganze Weile nichts mehr zum Rauchen, deswegen nehme ich ganz stark an, dass der Typ Entzugserscheinungen hatte und einfach nur wirres Zeug gefaselt hat. + + + Weit du, wie man nach Pripyat gelangt? + + + Wen knnte ich anheuern, um die Wissenschaftler zu beschtzen? + + + Freiheitler. Mit anderen Worten - uns. Wir arbeiten stndig mit den Wissenschaftlern zusammen und deswegen wre es fr uns ein Kinderspiel, auf sie aufzupassen. Sprich mit unserem Boss Loki drben in der Janow-Station. Ihr werdet euch sicher einig. + + + Keine Ahnung, Kumpel. Soweit ich wei, haben diese bldstudierten Wissenschaftler einen Wchtertrupp angeheuert. Wir wrden sie ja gerne beschtzen, aber jeden Tag diese Fressen der Wchter sehen zu mssen... nein, das ist es einfach nicht wert. + + + Angeblich gelangt man von Jupiter aus dorthin - ich meine natrlich das Gebiet mit der Anlage, nicht den Planeten... ha ha! Du musst zugeben, der war gut! + + + Keinen blassen Schimmer... Ich habe einfach keine Zeit, dorthin zu gehen. Frag doch Pilot im Lager. Er ist ein freier Stalker und kennt die Gegend besser als jeder andere. + + + Wenn ich das wsste, Kumpel, dann wre ich schon lngst dorthin gegangen. Von den Wchtern, den Soldaten und dem ganzen Gekmpfe wegzukommen... ja, das wre es wert... + + + Kennst du jemanden, der nicht allzu viel um die Ohren hat und nach Pripyat will? + + + Tut mir leid, mein Freund. In Zaton wsste ich niemanden... Ich kann dir nur raten, unsere Jungs in der Janow-Station zu fragen. + + + Kennst du den Bunker der Wissenschaftler? Die haben da ein Problem. Zuerst hat der Stalker Gari beschlossen, nach Pripyat aufzubrechen, und jetzt hat der Soldat dort im Bunker das gleiche vor. Gari ist ein Einzelkmpfer und stolz darauf, aber dieser Soldat wre genau der Richtige fr dich. + + + Wano in der Janow-Station taugt was. Ist ein feiner Kerl und htte der Freiheit jederzeit beitreten knnen, wenn er gewollt htte. Ich schtze, er wollte nicht in unsere Querelen mit den Wchtern hineingezogen werden... generell will er keinen rger und einfach seine Ruhe haben. Ist seine Sache und wir respektieren das! + + + Klar. Einer von unseren Jungs hat am ausgetrockneten See einen Trupp gesehen und die Leute wren genau die richtigen fr dich. Die mssen Pripyat wie ihre eigene Westentasche kennen und arbeiten glaube ich im Moment fr niemanden. Mutig sind sie mit Sicherheit auch, schlielich handelt es sich um Monolith-Kmpfer! + + + Ja. Strider, der Anfhrer unserer neuen Rekruten... Scheinbar gefllt es ihm in unseren Reihen nicht. Seine Jungs haben sich schnell zurechtgefunden, aber er ist hier wohl nicht besonders glcklich... Sprich mit ihm - ein guter Mann sollte dort sein, wo er mit Leib und Seele bei der Sache ist. + + + Ne, keine Ahnung. + + + Ich habe eine ungewhnliche Waffe gefunden. Kennst du vielleicht jemanden, der sich damit auskennt? + + + Du hast keine Bedienungsanleitung fr das Ding gefunden, oder? Nein? Dann kann ich dir auch nicht weiterhelfen. + + + Wen knnte ich anheuern, um Messungen fr die Wissenschaftler vorzunehmen? + + + Ich denke, unsere Jungs knnten den Job erledigen. Bei der Freiheit sind einige helle Kpfe und wenn etwas unklar ist, fragen wir einfach im Bunker nach. Wir mchten uns die Gelegenheit nicht entgehen lassen, der Wissenschaft einen wertvollen Dienst zu erweisen! Sprich mit Loki in der Janow-Station. Ich bin mir sicher, er sieht das genauso. + + + Meine Jungs und ich wrden uns gerne darum kmmern, aber zurzeit bewachen die Wchter den Bunker. Mal bei den Wissenschaftlern vorbeizuschauen, ist schon ein Problem, aber jeden Tag dort herumzuhngen, wre einfach nicht gesund - das ist so sicher wie das Amen in der Kirche. + + + Ich habe ein ziemlich auergewhnliches Artefakt gefunden. Kennst du vielleicht jemanden, der es kaufen wrde? + + + Da brauchst du einen Sammler, Kumpel. In der Janow-Station findest du keinen, weil sogar einige Stalker nicht den Mumm haben, hierher zu kommen. Hr dich am besten mal in Zaton um. In der Gegend ist es etwas ruhiger. + + + Kennst du Beard, den Barmann im Lager der freien Stalker? Er kauft Artefakte und haut die Leute gar nicht mal so bers Ohr. Ein feiner Kerl, daran gibt es nichts zu rtteln. Wirklich ein Jammer, dass er nicht fr uns arbeitet. + + + Ich habe hier in der Nhe ein Lager gefunden, in dem es von Blutsaugern nur so wimmelt. Was sollen wir tun? + + + Mann, du musst die freien Stalker warnen. Schlielich haben sie hier in der Nhe ihr wichtigstes Lager. Die "Artenvielfalt" in der Zone sollte zwar bewahrt werden, aber ich mache mir im Moment eher Sorgen um die Leute hier... + + + Ach, schon gut. + + + Hr zu, ich will dich etwas fragen... + + + Nur zu. + + + Was hltst du von Nimble? + + + Wir hatten noch nicht das Vergngen... Du solltest dich besser bei den Leuten umhren, die regelmig auf der Skadowsk sind. + + + Schon mal von der Oase gehrt? + + + Mir sind schon alle mglichen Storys ber die Oase zu Ohren gekommen! Ist doch nur eine Legende, ein Mythos... Jeder Stalker stellt sich etwas anderes darunter vor und jeder dieser verfluchten Kerle behauptet, genau zu wissen, wo sie ist. Ein Jammer, dass diese Orte nur eines miteinander gemein haben - sie sind verdammt schwer zu erreichen. + + + Nun, man sagt, dass dort alle Verletzungen sofort heilen und man innerhalb von wenigen Minuten wieder ganz bei Krften ist... Angeblich trotzt die Oase allen Krankheiten, sogar Strahlungsschden! Aber bei all den Spekulationen wei ich eines ziemlich sicher, und zwar wo die Oase wirklich ist. Willst du's wissen? Im Zentrum der Zone! Aber behalte das fr dich und sag niemandem ein Sterbenswrtchen! + + + Ich habe gehrt, dass dort alle Mutanten einfach nur an dir vorbeigehen und dich hchstens krumm anschauen. Auerdem soll dort ein Artefakt namens Herz der Oase sein... Niemand wei genau, wozu es gut ist, aber eines ist sicher: Du solltest es nicht anfassen. Wer es nimmt, ist die lngste Zeit in der Zone gewesen... Wo die Oase ist? Mann, das wei doch jeder! In Pripyat, unter dem Riesenrad. Wo denn sonst? + + + Ist dir schon mal ein Stalker namens Magpie ber den Weg gelaufen? + + + Sicher... aber keine Ahnung, wo er gerade steckt. + + + Hm... noch nie gehrt... + + + Hast du eine Idee, wer Sachen aus einer persnlichen Kiste gestohlen haben knnte? + + + hm, nicht wirklich. Frag die erfahrenen Leute in der Janow-Station, vielleicht knnen sie dir weiterhelfen. + + + Wer knnte mir hier beim Dechiffrieren helfen? + + + Nitro in der Janow-Station, wer sonst? Er steht auf diesen komplizierten technischen Kram... mehr sogar als mit Waffen Geschfte zu machen. + + + Ich wsste niemanden. Hr dich in der Janow-Station um. Die scheinen dort irgendeinen Experten zu haben. + + + Ich habe den PDA des Wchterhndlers. Kennst du jemanden, der Interesse daran haben knnte? + + + Kennst du Uhu auf der Skadowsk? Ich denke, er wrde sich darber freuen, das Ding in die Finger zu kriegen. Er steckt gerne seine Nase in heikle Geschfte... + + + Auf der Skadowsk in Zaton gibt es einen Kerl namens Uhu, der mit Informationen Geschfte macht. Dein PDA knnte ihn interessieren. + + + Wo findet man hier in der Gegend Werkzeug? + + + Ein Stalker hat mir erzhlt, dass sein Vater vor 1986 in den Werksttten des Umspannwerks gearbeitet hat. Er meinte, die hatten dort alle mglichen Gerte, deswegen schtze ich mal, dass dort auch Werkzeug herumliegt. Mittlerweile sind die Sachen bestimmt schon verrostet, aber vielleicht kann es trotzdem nicht schaden, sich dort mal umzusehen. + + + Kennst du das Sgewerk im Wald oben auf dem Hgel? Dort findest du bestimmt Werkzeug, sofern dir nicht schon jemand zuvorgekommen ist. Allerdings bezweifle ich das. Je mehr man sich diesem Ort nhert, desto strker wird der Drang, sich in die Hose zu machen und die Beine in die Hand zu nehmen. Es ist nicht die Strahlung, die einem Angst und Bange macht. Belassen wir es dabei... + + + Nun, die Jupiter-Anlage ist gleich in der Nhe und da liegt bestimmt irgendwo Werkzeug herum. Ich fr meinen Teil wrde mich allerdings der Anlage selbst nicht nhern... Dieser Ort macht mir Angst. Du knntest dich aber in den Jupiter-Lagerhusern seitlich der Anlage umsehen. + + + Ich habe gehrt, dass es in Pripyat einige Orte gibt, an denen man den unterschiedlichsten technischen Krempel findet. Zum Beispiel in einem Gebude, das wohl das alte sowjetische Warenhaus war. Damals war das der einzige Laden, der irgendwelche ntzlichen Sachen im Angebot hatte. + + + Woher soll ich das wissen? Sieh dich in alten Werksttten oder Lden um, vielleicht findest du dort irgendetwas Ntzliches. + + + Um ehrlich zu sein, das letzte Mal habe ich gutes Werkzeug in Sidorowitschs Bunker beim Kordon gesehen. Klar, man muss dafr bezahlen, aber die Sachen sind neu und nicht allzu teuer. + + + Weit du, Kumpel, ich bin nicht in die Zone gekommen, um nach Werkzeug zu suchen. Denk mal nach: Was soll man schon mit einem radioaktiven Hammer anfangen? + + + Gerchten zufolge liegen im alten Servicezentrum alle mglichen Sachen herum... vielleicht auch Werkzeug. Aber wie bei allen anderen Dingen gilt auch hier: Wer zuerst kommt, mahlt zuerst. + + + Gute Frage... Wenn ich du wre, wrde ich mich mal im alten Zug unter der Brcke umsehen. Frag nicht warum... mein Bauchgefhl sagt mir, dass du dort fndig werden knntest. + + + Kann hier jemand ein Speichermodul hacken? + + + Lass mich nachdenken... Tja, also Nitro in der Janow-Station kriegt das bestimmt hin. Ansonsten fllt mir noch Nowikow ein, der Techniker der Wissenschaftler und ein echter Profi. Aber du solltest genau wissen, was du willst, Nitro wre um einiges billiger. + + + Dafr brauchst du einen Techniker, aber der einzige hier in der Gegend ist Kardan. Die Sache ist die... Nach all den Jahren, in denen er zu tief ins Glas geschaut hat, ist er im Umgang mit komplexer Elektronik nicht gerade der Zuverlssigste. An deiner Stelle wrde ich mich mal in Jupiter umhren - dort haben sie die richtigen Experten. + + + Wer knnte einen Stahlbehlter aufbrechen? + + + Kardan auf der Skadowsk, denke ich. Es macht wirklich Spa, ihm beim Knacken von Vorhngeschlssern zuzuschauen. + + + Wohl am ehesten ein Techniker. Nitro wird es aber nicht machen, denke ich - er ist niemand frs Grbere. + + + Hah, das fragst du in Pripyat?! Lass dir einen Rat geben und sieh dich lieber etwas weiter vom Zentrum der Zone entfernt nach jemandem um. + + + Ich bin auf der Suche nach einem Stalker namens Snag. Weit du, wo ich ihn finden kann? + + + Da solltest du besser Beard fragen, den Barmann auf der Skadowsk. Er msste wissen, wo die einzelnen Stalker sind. + + + Snag? Woher zum Teufel soll ich das wissen? Hr dich am besten in Zaton um, da hngt er ziemlich oft herum. + + + Weit du irgendetwas ber die abgestrzten Hubschrauber? + + + Wer knnte an Informationen ber den Grnder der Wchter interessiert sein? + + + Ich wrde mich mal mit Uhu unterhalten, dem Hndler auf der Skadowsk. Er handelt nicht nur mit Waren, sondern auch mit Informationen. Du kannst deinen Arsch darauf verwetten, dass er an glaubhaften Informationen ber eine Legende wie diese Interesse hat. + + + Ich habe selbst einen gesehen... Nach einem Absturz sah es zwar nicht aus, aber gut geflogen ist er auch nicht wirklich. Er ist von einer Seite zur anderen gekippt, bis er schlielich auf einem Plateau im Sden von Zaton aufgesetzt hat... Wre interessant zu wissen, ob jemand berlebt hat. Wenn wir doch nur wssten, wie man auf das Plateau gelangt... Allerdings habe ich gehrt, dass Noah vom Psychokahn einen Weg kennen soll... + + + Ich habe gehrt, dass nicht weit von hier einige Militrhubschrauber abgestrzt sein sollen... Die Leute erzhlen sich die unterschiedlichsten Dinge, aber an eine Sache erinnere ich mich noch genau. Sie haben gesagt, dass einer der Hubschrauber auf den Ausweichlandeplatz gestrzt sei, der einst vom Militr selbst vermint wurde. Was fr eine Ironie des Schicksals! Mein Opa hat immer gesagt: "Wer andern eine Grube grbt, fllt selbst hinein." Wie wahr, wie wahr... + + + Einer meiner Kumpel hat mir Folgendes erzhlt: Er war unterwegs zum Eisenwald, um dort nach Artefakten zu suchen. Als er dort ankam, hrte er hinter sich ein Gerusch. Er drehte sich um, um zu sehen, was da vor sich ging. Da sah er, wie ein Hubschrauber mit voller Geschwindigkeit auf ihn zuraste. Er tauchte wie ein Blitz aus heiterem Himmel auf, riss Strommasten und anderes Zeug mit sich, aber setzte berraschenderweise nicht auf einer Anomalie auf. Der Eisenwald ist nicht schwer zu finden, man sieht ihn schon aus groer Entfernung. Es wimmelt dort nur so von verdammten Poltergeistern, also pass auf, dass du nicht den Verstand verlierst. + + + Ich habe gehrt, dass einer auf dem sdlichen Plateau gelandet sein soll. Allerdings kommt man da nicht so einfach rauf. Aber ich habe noch etwas gehrt. Und zwar hat angeblich jemand Noah auf dem besagten Plateau gesehen, was bedeuten wrde, dass dieser Psycho einen Weg hinauf kennt. + + + Ich selbst habe keinen gesehen, aber Gerchten zufolge ist einer direkt in die Anlage gestrzt... Allerdings will niemand der Sache nachgehen - ist einfach zu gefhrlich dort. + + + Ein Stalker hat mir erzhlt, dass er gesehen hat, wie mehrere Militrhubschrauber in Schwierigkeiten geraten sind... In einem Hubschrauber hat angeblich der Motor aufgeleuchtet und dann ist er direkt in einen Sumpf voller Anomalien gerauscht. Es sollte nicht allzu schwer sein, dorthin zu gelangen, aber der Sumpf selbst ist der reinste Alptraum... Ist kein Ort fr Menschen, das kannst du mir glauben. + + + Hast du hier in der Gegend Militr gesehen? + + + Wer knnte an Karten der Gegend zwischen Zaton und Jupiter interessiert sein? + + + Pilot natrlich, wer sonst? Er ist ein Ortskundiger, musst du wissen. Er ist stndig zwischen der Skadowsk und der Janow-Station unterwegs und kann mit deinen Karten sicher etwas anfangen. + + + Das hier ist weder Zaton noch Jupiter, also sind diese Karten hier ziemlich nutzlos, oder? Frag in diesen Gegenden herum, dann hast du vielleicht mehr Glck! + + + Ich selbst habe niemanden gesehen, aber ich habe gehrt, dass angeblich einige Soldaten das sdliche Plateau in Richtung Klranlage hinuntergeklettert sind. Offensichtlich haben sie erst versucht, mithilfe von Seilen und anderen Hilfsmitteln heil herunterzukommen. Aber dann haben sie es bleiben lassen und sind auf ihren rschen runtergerutscht, ha ha! Bobfahren in der Zone - das ist mal was anderes! + + + Bei einem Gesprch auf der Skadowsk habe ich aufgeschnappt, dass ungefhr fnf Soldaten aus einem Ableitungskanal beim Sumpf gekrochen sein sollen. Die Soldaten sollen ganz schn schmutzig gewesen sein und einer von denen war scheinbar nicht einmal von einem Sumpfblutsauger zu unterscheiden. Von Kopf bis Fu soll er voller Schleim gewesen sein. + + + Ich selbst nicht, nein, aber ein Freund von mir hat beobachtet, wie sich eine Militreinheit ein Feuergefecht mit Sldnern bei der Klranlage geliefert hat. Gerade als er ein schnes Pltzchen gefunden hat, um das Spektakel besser beobachten zu knnen, war es auch schon wieder vorbei, weil sich die Soldaten zurckgezogen haben. Auf beiden Seiten gab es keine Verluste... typisch, oder? + + + Offenbar wurden etwa zehn Soldaten in Noahs altem Kahn gesehen. Falls der Psycho zu diesem Zeitpunkt noch am Leben war, hat er mit ihnen wahrscheinlich herumdiskutiert... das wrde ihm hnlich sehen. Scheinbar wollte bisher niemand Noah fragen, was genau passiert ist. Bei diesem verrckten Mistkerl wei man nie, was einen erwartet. + + + Ich habe in der Nacht eine Explosion gehrt und dann hat mir jemand in der Janow-Station gesagt, dass sie im alten Minenfeld einen toten Soldaten und dahinter einen verlassenen Armeehubschrauber gesehen haben. Scheinbar wussten sie wegen der Dunkelheit nicht, wo sie gelandet waren, und sind dann direkt durch das Minenfeld gegangen. Niemand wei, wie viele von ihnen es heil durch die Minen geschafft haben, aber ich bezweifle, dass der tote Soldat im Minenfeld den Hubschrauber alleine geflogen hat. + + + Ich habe nicht wirklich jemanden vom Militr gesehen... Aber es gibt da ein Gercht, wonach angeblich ein Soldat bei den Wissenschaftlern rumhngt. Es wird erzhlt, dass Gari - ein Stalker - auf ihn gestoen ist, als er in den Raketenkomplex gehen wollte, um dort nach seinen Kameraden zu suchen. Dort wimmelt es nur so von Zombies, die umherirrenden Menschen nicht gerade freundlich gesonnen sind. Im Grunde genommen hat Gari ihm den Arsch gerettet. + + + Nein, aber ich habe gehrt, dass ein Soldat beim Flugabwehrkomplex Wolchow gesehen worden sein soll. Allerdings glaube ich das nicht wirklich... Vielleicht war das nur eine Lge oder die Person kann einen Soldaten nicht von einem Zombie unterscheiden. + + + Militr? Tja, also einige Leute haben erzhlt, dass "eine ganze Militreinheit, angefhrt von einem Stalker" an der Jupiter-Anlage vorbeimarschiert sein soll. Allerdings gebe ich nicht viel auf dieses Geschwtz. + + + Weit du, wie man nach Pripyat gelangt? + + + Wen knnte ich anheuern, um die Wissenschaftler zu beschtzen? + + + Kennst du Spartacus und seinen Trupp? Die Stalker in Zaton? Sind feine Kerle und gute Kmpfer - die haben schon so einiges erlebt. Sie werden Gefallen an der Idee finden, die Wissenschaftler zu beschtzen, da bin ich mir ziemlich sicher. + + + Bist du schon Hatchets Trupp bei den Werksttten des Umspannwerks in Zaton ber den Weg gelaufen? Wie alle Sldner haben sie ihre Probleme, aber wenigstens fragen sie erst, bevor sie schieen. Solltest du sie fr den Job kriegen, werden die Wissenschaftler bestimmt zufrieden sein. Auerdem htten dann die Stalker eine kleine Verschnaufpause und alle wren glcklich, oder? + + + Hm... da fllt mir nichts ein, tut mir leid. + + + Was ich sicher wei, ist, dass es keinen Weg von Zaton dorthin gibt. Wer unbedingt nach Pripyat wollte, ist nach Jupiter aufgebrochen. Deswegen solltest du dich besser dort umhren. + + + Wenn man der Gerchtekche glauben schenken mag, gibt es unter der Jupiter-Anlage geheime Tunnel, die nach Pripyat fhren... Aber die Sache ist die... Gerchte wie diese erzhlt man sich fr gewhnlich, wenn man schon einige Glser intus hat, und auerdem ist Jupiter ein einziger verdammter Alptraum. Niemand wagt es, sich der Anlage auch nur zu nhern. + + + Woher soll ich das wissen, Kumpel? Frag mich was Leichteres... Ich wei nur, dass du Pilot finden und ihn fragen solltest. Wenn dir jemand helfen kann, dann er. + + + Pah, wenn ich wsste, wie man nach Pripyat gelangt, wre ich nicht mehr hier. Was glaubst du, warum ich mich sonst in Richtung Zentrum der Zone aufgemacht habe? In Pripyat wimmelt es nur so vor Artefakten, Mann! Wer es zuerst dorthin schafft, ist ein gemachter Mann! + + + Kennst du jemanden, der nicht allzu viel um die Ohren hat und nach Pripyat will? + + + Ich glaube nicht, dass du so jemanden hier in der Gegend findest. Jeder, der weiter in Richtung Zentrum der Zone vorstoen wollte, hat sich nach Jupiter aufgemacht. Dort wrde ich mich an deiner Stelle umhren. + + + Hast du von dem Soldaten gehrt, der zurzeit bei den Wissenschaftlern herumhngt? Ich denke, er hat nicht viel zu verlieren, wenn er mit dir geht. Die Wissenschaftler werden so schnell nicht aufbrechen und alleine schafft er es nicht zum Kordon. Vielleicht ist er dumm genug und geht mit dir zusammen nach Pripyat! + + + Kennst du Wano drben von der Janow-Station? Ist eine ehrliche Haut und ein guter Stalker, aber verdammt leichtglubig. Bei Anomalien wre er besser aufgehoben als unter Leuten. Solange er hier ist, wird ihn immer irgendjemand ausnutzen. + + + Hr zu, Mann, ich habe gehrt, dass am ausgetrockneten See sdlich des Flugabwehrkomplexes ein Trupp gesichtet wurde... Offensichtlich handelt es sich dabei nicht wie blich um Stalker, Freiheitler oder Wchter - es sind Monolither! Wenn du also jemanden brauchst, der mit dir nach Pripyat geht, bist du bei ihnen genau richtig. Ha ha, du hast schon gemerkt, dass ich nur Spa mache, oder? + + + Kennst du Strider, den Anfhrer des neuen Freiheitlertrupps? Wenn du seinen jmmerlichen Gesichtsausdruck gesehen httest, dann wsstest du, dass die Janow-Station nicht der richtige Ort fr ihn ist. Du solltest mal mit ihm reden. Vielleicht lsst er sich darauf ein. + + + Kennst du Strider, den Anfhrer des neuen Wchtertrupps? Wenn du seinen jmmerlichen Gesichtsausdruck gesehen httest, dann wsstest du, dass die Janow-Station nicht der richtige Ort fr ihn ist. Du solltest mal mit ihm reden. Vielleicht lsst er sich darauf ein. + + + Hm... mir fllt niemand ein. + + + Ich habe eine ungewhnliche Waffe gefunden. Kennst du vielleicht jemanden, der sich damit auskennt? + + + Keine Ahnung. Da wrde ich Spezialisten fragen. Du weit schon, Techniker und so... + + + Ich denke, es knnte nicht schaden, wenn du mal Kardan auf der Skadowsk fragst, Kumpel. Er hantiert mit Waffen rum und ist wirklich gut... Vielleicht hat er trotz seiner Sauferei sogar noch ein oder zwei Gehirnzellen brig... + + + Wen knnte ich anheuern, um Messungen fr die Wissenschaftler vorzunehmen? + + + Kennst du Gonta den Jger? Ich denke, er und seine Jungs htten nichts dagegen, fr die Wissenschaftler zu arbeiten. Ich meine, falls Mutanten anfangen zu nerven, sind diese Kerle genau das, was du brauchst, um mit ihnen fertig zu werden. + + + Hast du schon mal von Grizzly, Torba und Mitaj gehrt, den Stalkern in der Janow-Station? Sie arbeiten zusammen und sind ein unschlagbares Trio! Ich denke, fr diesen Job wren sie genau die Richtigen - solange Mitaj ausnahmsweise mal keinen rger hat. + + + Keine Ahnung, Kumpel. Wir haben hier genug Probleme, die uns Sorgen bereiten. + + + Ich habe ein ziemlich auergewhnliches Artefakt gefunden. Kennst du vielleicht jemanden, der es kaufen wrde? + + + Ich denke nicht, nein. Die Leute hier setzen eher auf Altbewhrtes. Hr dich mal in Zaton um, ist nher am Rand der Zone. + + + Ich wrde es Beard mal zeigen, dem Barmann auf der Skadowsk. Angeblich arbeitet er mit Sammlern auerhalb der Zone zusammen und diese Freaks stehen auf auergewhnliches Zeug. + + + Ich habe hier in der Nhe ein Lager gefunden, in dem es von Blutsaugern nur so wimmelt. Was sollen wir tun? + + + Wow, davon musst du Beard auf der Skadowsk erzhlen... Denn entweder kmmern wir uns um das Problem, oder sie reien uns richtig den Arsch auf. + + + Ach, schon gut. + + + Wo ist hier in der Gegend das nchste Stalkerlager? + + + Bist du bescheuert? Mit Stalkern habe ich nichts am Hut. Aber gut, das nchste Lager hier in der Gegend ist die Skadowsk. Ich gebe dir sogar die Koordinaten, und zwar umsonst. Bin ich nicht nett? + + + Wo ist hier in der Gegend das nchste Stalkerlager? + + + Ich lade die Koordinaten auf deinen PDA hoch... Das Wrack der Skadowsk ist das einzige grere Lager hier in der Nhe. + + + Man sieht sich. + + + Ich habe gehrt, dass ein paar abgestrzt sein sollen... aber Genaueres wei ich nicht. Tratschen ist nicht so mein Ding. Tut mir leid, wenn dir das nicht weiterhilft. + + + Mann, ich habe andere Sorgen als deine blden Hubschrauber... ich meine, so ein Hubschrauberabsturz drfte verdammt wehtun, aber mehr kann ich dazu auch nicht sagen. + + + Hey Bursche, was faselst du da? Du musst echt hartes Zeug rauchen, wenn du hier in der Gegend Hubschrauber gesehen haben willst. Richtige Helis gibt es hier nicht. + + + H? Ne, Mann, so ein Schei geht mich nichts an. Es ntzt mir nichts bei meiner Mission, Wissen zu verbreiten, verstehst du? + + + Unsere Patrouille hat gesehen, wie die Hubschrauber an Hhe verloren haben, aber die Details dieses Vorfalls wurden dem Oberstleutnant selbst berichtet. Wir erhalten nur so viele Informationen, wie wir brauchen, deswegen wei ich nicht viel ber diese Angelegenheit. + + + Wo kann ich einen Schutzanzug mit geschlossenem Atemkreislauf finden? + + + Keine Ahnung, wo man so ein Ding "finden" kann, aber mit genug Geld kannst du deinem Glck bestimmt auf die Sprnge helfen - wenn du weit, wo du es investieren musst. Sprich mal mit Nimble... wenn du dich mit ihm einigst, kann er dir sicher weiterhelfen. Ich hoffe, dass ihr euch einig werdet... wir wrden uns ber ein paar Tage ohne ihn auf der Skadowsk sehr freuen. + + + Woher zum Teufel soll ich das wissen? Bin ja selbst noch nicht so lange hier... frag besser in Zaton nach, unsere Brder dort haben ihre eigenen Quellen. + + + Keine Ahnung. Warum? Willst du dich in eine Anomalie verirren? Hey, wenn du dabei auf Artefakte stt, gib uns Bescheid. Wir sind dann sofort zur Stelle... und gratulieren dir zu deiner tollen Arbeit! Ha ha ha! + + + Wo kann ich einen Schutzanzug mit geschlossenem Atemkreislauf finden? + + + Woher soll ich das wissen? Aber warte... hier auf der Skadowsk gibt es einen Typen, der soll alles beschaffen knnen, was man braucht. Du findest ihn auf dem oberen Deck, er heit Nimble. + + + Ach, ich glaube nicht, dass sich irgendjemand mit so einem tollen Schutzanzug hierher verirren wrde. Schau dich lieber in Zaton um... das ist einen Schritt nher an der Zivilisation. + + + Ich habe keine Ahnung... solche Schutzanzge sind selbst unter den Wchtern sehr selten. Sie setzen sie nur als besonderes Erkennungsmerkmal im Kampf oder bei Operationen in extrem anomalen Gebieten ein. + + + Wo kann ich einen Schutzanzug mit geschlossenem Atemkreislauf finden? + + + Ich habe mal gehrt, wie ein paar Leute ber einen Typen mit guten Verbindungen gesprochen haben... Nimble oder so. Der kann dir wohl alles beschaffen. Du weit schon... Ausrstung, Waffen und so... keine Drogen. Hngt auf der Skadowsk ab, wenn du ihn finden willst. + + + Eine gute Frage, Mann... nicht mal wir hier bei der Freiheit tragen solche Anzge. An deiner Stelle wrde ich in Zaton fragen. Dort gibt es vielleicht jemanden, der solche Geschfte betreibt. + + + Ha, fr was brauchst du denn so einen Schrott? Wenn's abgeht, kannst du das Ding vergessen. Aber andererseits... wird schon seinen Nutzen haben, was? Macht das Atmen leichter und schtzt die Augen vor der Sonne... vielleicht hole ich mir selbst so einen Schutzanzug! Hey, weit du, wo ich so ein Ding finden kann? + + + Wo kann ich einen Schutzanzug mit geschlossenem Atemkreislauf finden? + + + Nun, ich wrde sagen, bei Nimble. Drittes Deck der Skadowsk. Der Typ knnte dir sogar mitten in der verdammten Wste Schnee besorgen. Aber er ist nicht gerade billig, musst du wissen. + + + Lass mich berlegen... in Zaton gab es mal einen Typen, Nimble hie der. Schau am besten mal, ob der sich noch dort herumtreibt. Er soll sich auf dieses teure Zeug spezialisiert haben. + + + Kumpel, du tust ja so, als ob das so etwas Gewhnliches wie eine Fleischkonserve wre! Nein, das kann dir niemand sicher sagen. Solche Schutzanzge sind sehr selten... kannst dich glcklich schtzen, wenn du einen findest. + + + Tschss. + + + Bis dann. + + + Wir sehen uns. + + diff --git a/gamedata/configs/text/ger/st_dialogs_jupiter.xml b/gamedata/configs/text/ger/st_dialogs_jupiter.xml new file mode 100644 index 0000000..b833fc8 --- /dev/null +++ b/gamedata/configs/text/ger/st_dialogs_jupiter.xml @@ -0,0 +1,3885 @@ + + + + Was willst du? + + + Ich muss mit Jack reden. Es geht um Wanos Schulden. + + + Dann mach. + + + OK. + + + Ich mache nur einen kleinen Spaziergang. + + + Das hier ist kein ffentlicher Park, Kumpel. Verschwinde. + + + Hast du eine Idee, wer Sachen aus einer persnlichen Kiste gestohlen haben knnte? + + + Nein, und ich habe meine eigenen Probleme... Du hast vielleicht ein paar Gegenstnde verloren, aber ich knnte mein Leben verlieren... + + + Diebstahl, Betrgereien... Mann, was ist nur aus der Welt geworden? Ich habe niemanden gesehen, aber wer auch immer der Schuldige ist, ist sicher schon lngst ber alle Berge. + + + Auf zu Zulu. + + + Natrlich. Wir sollten unterwegs Hawaiianer einen Besuch abstatten, um meinen Schutzanzug zurckzukaufen. + + + Gehen wir. + + + Wrde ich ja gerne, aber ich mchte nicht von einer Emission berrascht werden. Warten wir lieber noch ein bisschen. + + + Wir brauchen einen Schutzanzug mit geschlossenem Atemkreislauf, wenn wir nach Pripyat wollen. + + + Mann, das ist echt Scheie! Mein Schutzanzug ist damit ausgestattet - man kann damit seinen Kopf in einen Ofen stecken und trotzdem normal atmen, aber ich habe ihn an Hawaiianer verpfndet. Wenn wir ihn doch nur irgendwie zurckkriegen knnten. Ich bin pleite und wir brauchen fnf Riesen... + + + Ich knnte dir Geld fr den Schutzanzug geben. + + + Ohne mit der Wimper zu zucken? Machst du Witze? + + + Hier, fnf Riesen. + + + Du rettest mir gerade wirklich den Arsch, Kumpel. Ich schliee mich dir an, egal wohin du willst! + + + Ich wrde dir das Geld ja gerne geben, aber ich habe keine fnf Riesen. + + + Das kann jedem passieren, Kumpel... Glaub mir, ich wei, wovon ich rede. + + + Ich werde darber nachdenken. + + + Klar... ist ja schlielich dein Geld. + + + Also, gibst du mir das Geld, oder was? + + + Ich stelle einen Trupp zusammen und breche dann nach Pripyat auf. Willst du dich mir anschlieen? + + + Du hast mir geholfen, Kumpel, also helfe ich jetzt dir. + + + Wrde ich gerne, Mann, aber ich kann hier nicht weg, solange ich noch Schulden habe. Das wre nicht in Ordnung, und auerdem wrden die mich wie einen Hund abknallen, falls wir unterwegs zufllig auf sie stoen. Diesen Mistkerlen ist es egal, wen sie tten... + + + Also, bist du bereit fr den Marsch nach Pripyat? + + + Allzeit bereit und so... + + + Komm rein. Was willst du? + + + Du hast die Schulden bezahlt und jetzt raus hier. + + + Das waren arrogante Mistkerle - ich musste sie erledigen. + + + Ich habe gezahlt, deine Schulden sind also getilgt. + + + Wow, danke, Mann! Das werde ich dir nie vergessen. + + + Ganz toll, ich musste auch noch Zinsen zahlen. + + + Das klingt nicht gut... Aber mir htten sie noch mehr abgeknpft, das kannst du mir glauben. Danke fr deine Hilfe! Das werde ich dir nie vergessen. + + + Ich war noch nicht dort. + + + Beeil dich, bevor sie noch mehr Geld von dir wollen. + + + Ich war dort, aber sie verlangen fr die Schulden Zinsen. + + + Sind die verrckt geworden? Ich habe das Geld gerade so zusammengekratzt... Denkst du, du kannst sie davon berzeugen, die Sache mit den Zinsen zu vergessen? Dafr brauchst du eine gute Waffe. Bei denen geht es nur mit roher Gewalt. + + + Was war das fr eine Sache mit den Schulden? + + + Tja, also ich hatte einen alten Schutzanzug, der schon ganz schn abgenutzt war. Also habe ich daran gedacht, mir einen neuen zu kaufen. Und genau in diesem Augenblick habe ich einen brandneuen Schutzanzug gesehen, der zum Verkauf stand... Er hatte einen geschlossenen Atemkreislauf und diesen ganzen Schnickschnack... Ich habe mein Geld gezhlt - mehrmals - aber es wurde einfach nicht mehr... Dann meinte Jack, der Verkufer: "Keine Sorge, Wano, du gibst mir den Rest einfach ein andermal." Da dachte ich mir "Was fr ein netter Typ!"... + + + Und? + + + Ich habe meinen alten Schutzanzug verkauft und ihm mein ganzes Bargeld gegeben. Jack meinte dann aber: "Schn und gut, Wano, aber was ist mit den Zinsen?". Da dachte ich "Ja, er hat Recht... ich muss die Zinsen berappen..." Also habe ich noch mehr Geld zusammengekratzt und es ihm gegeben. Da hat er aber gesagt: "In der Zwischenzeit ist wieder einiges an Zinsen zusammengekommen, Wano." Die Zinsen steigen so schnell, dass ich gar nicht mit dem Bezahlen hinterherkomme... Ich musste den neuen Schutzanzug verpfnden, und meine Waffen auch... + + + Und was nun? + + + Ich will ihm das Geld geben, das ich dafr bekommen habe. Schlielich steht mein guter Ruf auf dem Spiel... Aber ich habe Angst. Knntest du nicht fr mich zu Jack gehen und meine Schulden bezahlen? + + + Gut, ich mach's. + + + Eine Sache gibt es da noch... Wenn du zu ihm gehst, solltest du eine eindrucksvolle Waffe bereithalten. Zeig ihnen, dass mit dir nicht zu spaen ist, dann werden sie dich ernst nehmen... + + + Ich kmmere mich darum. + + + Im Moment habe ich zu viel um die Ohren. + + + Ich habe genug. + + + Und, kannst du zu Jack gehen und bei ihm fr mich die Schulden bezahlen? + + + OK, OK, nicht schieen, ich bezahle die Schulden... hm, tut mir leid, ich habe dich mit jemandem verwechselt... + + + Wie ist es mit den Banditen gelaufen? + + + Hey Mann, gut, dass du gekommen bist! + + + Hey. + + + Wir haben Besuch... Ein Stalker will sich mit Schischak unterhalten... Bringst du uns Geschenke oder geht es um etwas Geschftliches? Wie auch immer, spuck's aus, Kumpel. + + + Ich htte nicht gedacht, dass du zurckkommst... Also, was hast du fr mich? + + + Was gibt es sonst noch zu bereden, Stalker? + + + Was willst du? Bist du mde vom ganzen Herumschleppen der Beute oder was? Da knnen wir Abhilfe schaffen. + + + Ich muss mit deinem Boss reden. + + + Hey, Kumpel, ich habe keine Zeit fr diesen Schei. Geh mir aus den Augen, aber schnell! Wenn du nicht sofort verschwindest, mach ich dir mit dieser Schrotflinte Beine. + + + OK, OK... ich bin schon weg. + + + Ich bin wegen des gefangenen Stalkers hier - ich will mit deinem Boss reden. + + + Hm... dann geh weiter, aber benimm dich anstndig, oder wir stampfen dich sofort in den Boden... Geh immer gerade aus und dann durch den Gang zwischen den Containern. Verstanden? + + + Ja. + + + Ich bin nur zufllig hier vorbeigegangen und schon wieder weg. + + + Ich bin wegen des gefangenen Stalkers hier - ich will mit deinem Boss reden. + + + Sonst noch was? Verschwinde! + + + OK... + + + Pass blo auf, du Trottel, willst du mich beleidigen oder was? Du hast uns zwar genug Knete fr deinen idiotischen Freund gegeben, aber nicht fr eine sichere Route bezahlt! Da hat jemand wohl nicht weit genug gedacht, was? + + + Wie viel macht das? Ich muss zum Lager, nur zur Info. + + + Oh, du bist wirklich ein Scherzkeks! Das ist hier kein Marktplatz, Kumpel, wir haben keine gottverdammte Preisliste... Mach die Taschen leer, Arschloch! + + + Hier, bitte sehr. + + + OK, ich gehe. + + + Was?! Du willst dir meine ganze Beute unter den Nagel reien? Keine Chance! + + + Ich habe das Lsegeld bezahlt. Ansonsten gibt es nichts zu diskutieren. + + + OK, Stalker, wir haben unsere Arbeit getan. Zeit zu gehen. + + + Danke, Jungs. Man sieht sich. + + + Wartet. Es knnten sich noch mehr Banditen versteckt halten. + + + OK, Zeit zu gehen. Der Junge hat es nicht geschafft, aber wir haben getan, was wir konnten... + + + Wartet, wir sind noch nicht fertig! + + + OK! + + + Kommt mit mir mit nach Pripyat. + + + Ich bleibe besser frs Erste hier und sorge dafr, dass Mitaj nicht wieder in Schwierigkeiten gert. + + + Hey, Stalker! Vielen Dank, dass du Mitaj da rausgeholt hast! Wir haben schon angefangen, einen Trupp zusammenzustellen... Hier, fr dich - als Zeichen unserer Dankbarkeit. + + + Hey, Stalker! Vielen Dank, dass du Mitaj da rausgeholt hast! Du bist wirklich ein Teufelskerl! Hast alle Banditen alleine auseinander genommen... Hier, fr dich - als Zeichen unserer Dankbarkeit. + + + Hey, Stalker! Vielen Dank, dass du dabei geholfen hast, Mitaj da rauszuholen! Ich htte nicht gedacht, dass das mit dem Lsegeld so gut funktionieren wrde... Bestimmt kannst du jetzt etwas Bargeld gut gebrauchen. Hier, fr dich - als Zeichen unserer Dankbarkeit. + + + Hey, Stalker! Vielen Dank, dass du dabei geholfen hast, Mitaj da rauszuholen! Ich lag bei der ganzen Sache also richtig. Man darf Banditen gegenber nicht nachgeben! Man muss ihnen zeigen, wo's langgeht... und du hattest den Mumm dazu. Hier, fr dich - jeder hat seinen Anteil bekommen, deswegen ist es nicht viel, aber wir sind dir wirklich dankbar. + + + Und, wie ist es mit dem Lsegeld gelaufen? + + + Ich bin noch dabei. + + + Und, was gibt's Neues? Wann wirst du's den Banditen zeigen? + + + Bald. + + + Hast du deine Meinung gendert oder gibt es Probleme mit den Banditen? ... Na ja, tu, was immer du tun musst, aber beeil dich. Wir wollen nicht, dass sie die Geduld verlieren und Mitaj dran glauben muss. + + + Ich kmmere mich darum. Wird schon klappen. + + + Ich bin froh, es mit einem Profi wie dir zu tun zu haben, Stalker! + + + Mann, wir haben einen guten Mann verloren... der arme Mitaj... Wir konnten ihn nicht retten - tolle Freunde sind wir! + + + Was will man machen... + + + Komm mit mir mit nach Pripyat. + + + Ich bin nur hierher gekommen, um meinen Kameraden Gesellschaft zu leisten. Deswegen bleibe ich hier bei ihnen. + + + Hey, danke fr die Sache mit Mitaj... Wir wollten gerade mit dem Lsegeld aufbrechen. Ist ja noch einmal gut gegangen... + + + Hey, danke fr die Sache mit Mitaj... Wie konntest du sie berzeugen? Mann, von dir kann man echt 'ne Menge lernen... + + + Hey, danke fr die Sache mit Mitaj... Ich hatte Recht, nicht wahr? Diplomatie ist der Schlssel zum Erfolg! + + + Hey, danke fr die Sache mit Mitaj... Ich bin immer noch der Meinung, dass Verhandeln der bessere Weg ist, aber am Ende ist ja alles gut gelaufen. + + + Verschwinde. Mir ist gerade nicht danach, mit dir zu reden. + + + OK, immer mit der Ruhe. + + + Hallo, Herr Profi! + + + Armer Mitaj... er war noch so jung... sein ganzes Leben hatte er noch vor sich... + + + Was will man machen... + + + Gut, wir sind alle da. Grizzly hat mir von dir erzhlt... Der Plan ist einfach: Die Jungs bringen sich in Stellung, um das Gebiet unter Beschuss zu nehmen. Ich knpfe mir von meiner Position aus die Wache vor - das ist das Signal fr den Angriff... Merke dir, wo unsere Mnner postiert sind, und mache, was du fr richtig hltst. Ich bin mir sicher, du wirst schon wissen, was zu tun ist... Bereit? + + + Verstanden. Dann mal los. + + + Moment, ich muss darber nachdenken. + + + Httest du Lust auf einen gemeinsamen Abstecher nach Pripyat, Mitaj? + + + Die Wissenschaftler wollen ein paar Leute anheuern. Knntest du dir vorstellen, fr sie zu arbeiten? + + + Worum geht es? + + + Ihr Bunker muss bewacht werden. + + + Nein danke, Mann. Mein Abenteuer bei den Banditen reicht frs Erste. Ich bleibe hier und lasse es ruhiger angehen. + + + In Anomalien mssen Messungen vorgenommen werden. + + + Hm... das klingt interessant. Ich habe schon einmal fr die Wissenschaftler gearbeitet und da du es bist, der mich fragt - klar, ich bin dabei. Grizzly, Torba und ich machen uns auf den Weg zum Bunker. + + + Erzhle mir, wie es zu deiner Gefangennahme gekommen ist. + + + Frag lieber nicht, Mann! War mein eigener Fehler. Die Banditen haben mich gewarnt, aber weit du... sie wollten einen Teil meiner Beute, und schlielich gehrt die Zone niemandem, also warum soll ich etwas abgeben? + + + Meine Jungs und ich haben gesagt, dass sie verschwinden sollen, und frs Erste waren wir sie tatschlich los. Aber wie sich herausgestellt hat, waren die Banditen ganz schn clever - und haben einen Hinterhalt vorbereitet. Als ich dumm genug war und mich alleine auf den Weg gemacht habe, um nach Artefakten zu suchen, sind sie hinter mir aus ihren Verstecken hervorgesprungen und haben mich gefesselt, bevor ich berhaupt meine Waffe ziehen konnte... So ist das gelaufen. + + + Danke, dass du das Lsegeld fr mich bezahlt hast! Das werde ich dir nie vergessen. + + + Danke, dass du mich befreit hast, Stalker! Das werde ich dir nie vergessen. + + + Danke, dass du dabei geholfen hast, das Lsegeld fr mich aufzubringen! + + + Danke, dass du dabei geholfen hast, mich zu befreien, Stalker! + + + Danke fr deine Hilfe, Stalker... Meine Kameraden werden dich sicher belohnen, wenn wir uns auf den Weg zurck machen... Lass uns gemeinsam zum Lager gehen, dann sind wir schneller da. + + + Gehen wir. + + + Geh nur, ich komme nach. Vorher muss ich hier noch etwas erledigen. + + + Mann, ich dachte, ich komme da nicht wieder lebend raus... Wow, haben Grizzly und Torba die ganzen Leute angeheuert? Heiliger Strohsack! So eine Schieerei habe ich mein ganzes Leben noch nicht gesehen! Knnen wir jetzt von hier verschwinden? + + + Warte einen Moment, hier in der Gegend knnten noch mehr Banditen sein. + + + Ja, gehen wir. + + + Mann, ich dachte, dass mein letztes Stndlein geschlagen hat... Wow, du hast die ganzen Banditen alleine fertiggemacht! Du hast's echt drauf! Wenn ich das erzhle, wird mir niemand glauben... Knnen wir jetzt von hier verschwinden? + + + Warte einen Moment, vielleicht habe ich nicht alle erwischt. + + + Ja, lass uns sofort gehen. + + + Danke, Stalker! Verschwinden wir, bevor die Banditen ihre Meinung ndern. + + + Gehen wir. + + + Wir mssen hier weg, und zwar schnell! + + + Wir drfen den Banditen gegenber nicht nachgeben. Das Problem schreit nach einer gewaltsamen Lsung. + + + Genau! Ich kenne ein paar Jungs, die uns sicher gerne helfen wrden... Und du kommst auch nicht zu kurz, wenn es dir nichts ausmacht, mit anderen zusammen zu arbeiten. + + + Ich bin bereit. + + + Groartig! Ich kenne eine Gruppe von Stalkern, die in einer Spezialeinheit der Polizei waren. Du musst dich mit ihnen nachts nach 1 Uhr an einem vereinbarten Ort treffen - sie warten dort auf dich. + + + OK. + + + Torba hat Recht. Es macht keinen Sinn, ein Blutbad anzurichten, whrend sie eine Geisel in ihrer Gewalt haben. Wir mssen mit ihnen verhandeln. + + + Hm... vielleicht habt ihr beiden Recht... Die Sache ist nur die... Wenn Torba und ich gehen, werden uns die Banditen nicht mehr gehen lassen, weil wir uns geweigert haben, nach ihrer Pfeife zu tanzen. Sie haben gesagt, sie wrden uns lebendig begraben, wenn sie uns wiedersehen. Aber wenn du mit ihnen verhandelst... + + + Klar, ich mache das. Gib mir das Artefakt. + + + Sei vorsichtig. + + + Wird schon schiefgehen. + + + Wir knnen bis in alle Ewigkeit diskutieren... Unser Erfolg hngt von der Person ab, die das durchzieht. Ich kmmere mich selbst um diese Mistkerle. + + + Mann, das htte ich nicht erwartet... Ich wnsche dir viel Glck. + + + Ich bin bald wieder zurck. + + + Einverstanden, aber ich brauche etwas Zeit, um mich vorzubereiten. + + + Stalker, hilfst du uns dabei, unserem Kumpel Mitaj aus der Patsche zu helfen? + + + Was ist passiert? + + + Mitaj steckt in ernsthaften Schwierigkeiten... Die Banditen haben angefangen, ihre Muskeln spielen zu lassen, und verlangen einen Anteil der Artefakte, die Stalker finden. Wir haben zu ihnen gesagt, dass sie verschwinden sollen. Wir waren der Meinung, dass die Stalker niemandem etwas schuldig sind, und die Sache war dann auch erst einmal erledigt... Dann haben sie jedoch den armen Kerl in einen Hinterhalt gelockt, als er sich alleine auf den Weg gemacht hat, um Beute zu machen. Und jetzt fordern sie fr seine Freilassung ein Lsegeld. + + + Und was wollt ihr tun? + + + Torba schlgt vor, ihnen ein Artefakt als Lsegeld zu geben... Ich allerdings bin der Meinung, dass wir nicht klein beigeben sollten. Das wrde ja bedeuten, dass Stalker mit den Banditen kooperieren... Wir sollten das Artefakt verkaufen und mit dem Geld eine schlagkrftige Truppe anheuern, um dann schlielich das Lager der Banditen anzugreifen. + + + Kmmern wir uns ein bisschen spter darum. + + + Wirst du uns helfen, Mitaj den Arsch zu retten? Torba vertritt immer noch die Ansicht, dass wir ihnen ein Artefakt als Lsegeld geben sollten. Und ich bestehe nach wie vor darauf, dass wir das Lager der Banditen angreifen sollten. Dafr mssten wir das Artefakt verkaufen und einige Kmpfer anheuern... Wir haben immer noch keine Entscheidung getroffen. + + + Bist du soweit? Wir geben dir das Artefakt, um Mitaj freizukaufen, und warten anschlieend auf dich an der Bar. + + + Und, hast du den Banditen schon einen Besuch abgestattet? + + + Noch nicht, ich bin noch nicht soweit. + + + Ja, aber es ist noch nicht viel dabei herausgekommen. Ich melde mich, sobald es Neuigkeiten gibt. + + + Ich war neulich in der Oase und habe dort ein Artefakt gefunden. Interesse? + + + Pah, du gehst doch nicht wirklich davon aus, dass ich dir das glaube, oder? Mir ist ja schon viel ber die Oase zu Ohren gekommen, aber ich habe noch NIE gehrt, dass wirklich jemand dort war. Nimm's mir nicht bel, aber ich glaube dir kein Wort. + + + Ich habe Dokumente aus der Jupiter-Anlage. + + + Ja, nimm sie alle. + + + Ja, nimm den Evakuierungsbefehl. + + + Ja, nimm die Besprechungsnotizen. + + + Ja, nimm den Lieferplan. + + + Ja, nimm die Notiz aus der Reparaturwerkstatt. + + + Vielleicht ein andermal. + + + Wer knnte Sachen aus einer persnlichen Kiste gestohlen haben? + + + Keiner von meinen Mnnern, soviel ist sicher. Vielleicht jemand von der Freiheit. Htten wir die Janow-Station vollstndig unter unserer Kontrolle, wrde so etwas niemals passieren. + + + Erzhle mir etwas ber die Wchter. + + + Was genau willst du wissen? + + + Was macht ihr hier? + + + Das, was wir immer machen. Wir beschtzen Stalker vor allerlei Abschaum. Du hast gesehen, wie viele Mutanten hier in der Gegend ihr Unwesen treiben, und das sind keine sen Tierchen wie beim Kordon. Letzte Nacht zum Beispiel habe ich mit meinen eigenen Augen eine Chimre gesehen. Es wurde schon dunkel, deswegen sind wir ihr nicht gefolgt... Mutanten sind hier allerdings nicht das einzige Problem... Wir mssen die verlassenen Labors genauer unter die Lupe nehmen und Hinweise sichern, bevor diese Idioten von der Freiheit da rankommen. + + + Was hat euch in das Zentrum der Zone gefhrt? + + + Machst du Witze? Und warum bist du hier? Ich wage mich mal weit aus dem Fenster und schtze, dass wir aus dem gleichen Grund hier sind. Das Zentrum der Zone war immer ein unerreichbarer Ort, von dem man sich Antworten auf alle Fragen erhofft hat. Wir wollten herausfinden, wie die Zone entstanden ist und wie sie zerstrt werden kann. Deswegen sind wir sofort in Richtung Zentrum der Zone aufgebrochen, als wir von dem Gercht gehrt haben, dass der Hirnschmelzer deaktiviert worden sein soll. + + + Und was habt ihr herausgefunden? + + + Vieles, aber das sind vertrauliche Informationen. Alles, was ich sagen kann, ist, dass hinter der Zone mehr steckt, als man vermuten mag. Einige unserer Mnner glauben, dass die Zone einem Tumor gleicht, der um jeden Preis entfernt werden muss. Wenn ich danach gehe, was ich gesehen habe, neige ich eher dazu zu glauben, dass es sich bei der Zone um einen lebenden Organismus handelt und wir nichts weiter als Bakterien sind, die in diesem Organismus leben. Selbst wenn man die militrischen Krfte aller Nationen dieses Planeten bndeln wrde, knnte man die Zone nicht zerstren. Aus diesem Grund mssen wir uns etwas Besseres einfallen lassen: Wir mssen herausfinden, warum die Zone existiert, und anschlieend dieser Ursache entgegenwirken. + + + Und was, wenn ihr dieser Ursache nicht gewachsen seid? + + + Tja, dann mssen wir uns etwas anderes einfallen lassen, aber wir sind noch guter Dinge. Wir mssen unsere Pflicht erfllen und zuversichtlich bleiben. + + + Wie bist du bei den Wchtern gelandet? + + + Ach, eine langweilige Geschichte ohne aufregende Heldentaten. Als die Zone entstanden ist, haben mein Freund Lenja und ich beschlossen, hierher zu kommen und uns die Sache genauer anzusehen. Damals war ich Stabsoffizier und Lenja hat beim Geheimdienst gearbeitet. Wir waren wirklich nicht dumm, aber dennoch sind wir in einen ganz schnen Schlamassel geraten. Stundenlang sind wir verwundet und blutberstrmt herumgekrochen, bis uns schlielich die Wchter gefunden haben. Ich bin durchgekommen, Lenja leider nicht. Ich hatte in der Zone keine Freunde, deswegen habe ich beschlossen, bei den Wchtern zu bleiben. Seitdem habe ich brigens eine Abneigung gegen die Zone. + + + Wie denkst du ber die Freiheitler? + + + Offiziell sind wir im Krieg, aber das Leben in der Zone folgt seinen eigenen Regeln. Hier ist es nur in wenigen Gegenden sicher und weder die Freiheitler noch die Wchter haben ein groes Truppenkontingent. Also warum sollen wir uns gegenseitig umbringen? Deswegen gilt das ungeschriebene Gesetz, dass wir uns gegenseitig aus dem Weg gehen. Auerhalb der Janow-Station sieht das jedoch anders aus: Da drauen herrscht immer noch Krieg und das ist kein Kinderspiel. + + + Ach, schon gut. + + + Oh... OK. + + + Ich wrde gerne ber ein Mitglied der Freiheitler namens Flint reden. + + + Die Freiheitler sind mir egal, solange sie sich von uns fernhalten. + + + Flint, auch bekannt unter dem Namen Magpie, hat in Zaton Stalker reingelegt und sich ihre ganze Beute unter den Nagel gerissen. Danach hat er das Weite gesucht. + + + Und? Das berrascht mich nicht. Bei der Freiheit wimmelt es nur so vor Abschaum wie diesem. + + + Da gibt es noch etwas. Im Steinbruch bin ich auf einen Stalker gestoen. Bevor er gestorben ist, hat er mir erzhlt, dass Flint ihn in einer Anomalie zurckgelassen hat und dann mit der Beute abgehauen ist. + + + Ah, siehst du, so etwas vergessen Stalker nicht... selbst wenn es um Freiheitler geht. Danke fr die Information. Wir kmmern uns darum, dass sie Verwendung findet. + + + Ich habe genug gegen ihn in der Hand. Ich meine, dieser Sack hat doch tatschlich den Mut, sich mit meinen Taten zu brsten. + + + Das wird dem Ruf der Freiheitler einen schweren Schlag versetzen. Danke fr die Information. Wir kmmern uns darum, dass sie Verwendung findet. + + + Schon gut. + + + OK, es ist deine Entscheidung. + + + Ich habe den PDA eures Versorgungsoffiziers Morgan. + + + Einverstanden. + + + Ich werde darber nachdenken. + + + Einverstanden. + + + OK. + + + Lass mal sehen... Dieser Mistkerl hat also heimlich Geschfte gemacht und unseren Namen als Tarnung missbraucht... Wenn das auffliegt, ist unser Ruf ruiniert. Wie wre es, wenn ich dir diesen PDA abkaufe? Ich bezahle gut dafr. Sind 4.000 in Ordnung? + + + Das ist eine gewagte Behauptung. Zeig mir den PDA. + + + Hier. + + + Ich muss sagen, er kam mir auch schon verdchtig vor... jetzt habe ich Gewissheit. Danke, Stalker! Ich hoffe, dass niemand jemals erfhrt, dass dieses Gesprch stattgefunden hat. Ich habe eine kleine Belohnung fr dich - schlielich hast du den Ruf der Wchter vor groem Schaden bewahrt. + + + Ich behalte ihn erstmal. + + + Noch etwas, interessant... Das hefte ich im Aktenordner ab. + + + Bitte sehr. + + + Danke! Hier, eine kleine Entschdigung fr deine Mhen... + + + Das behalte ich als Andenken. + + + Ich bin auf eine Gruppe von Kmpfern gestoen, die sich den Wchtern anschlieen wollen. + + + Wir sind immer auf der Suche nach guten Leuten. Sie sollen bei mir vorbeikommen und dann reden wir. + + + Allerdings gibt es da etwas... Es sind ehemalige Monolith-Kmpfer. + + + Was genau meinst du mit "ehemalige" Monolith-Kmpfer? Meines Wissens nach gibt es bei Monolithern zwei Kategorien: berzeugte und tote. Mir ist noch nie ein "ehemaliger" Monolither untergekommen. + + + Scheinbar wurden sie von jemandem manipuliert. Sie knnen sich nmlich nicht daran erinnern, was mit ihnen geschehen ist, nachdem sie zum Atomkraftwerk Tschernobyl aufgebrochen waren. Jetzt sind sie alles andere als aggressiv und wissen einfach nicht, was sie tun sollen. + + + Nun, sie sind also nicht auf Streit aus... dann klingt das gar nicht so schlecht... Ich meine, ich wrde fr sie schon irgendwelche einfacheren Aufgaben finden und dafr sorgen, dass sie diszipliniert bei der Sache bleiben. Ich bin mir im Moment nur nicht ganz sicher, wie ich sie einschtzen soll... Kannst du fr sie brgen? + + + Ja, ich habe Vertrauen in sie. + + + Hm... das Dumme ist nur, dass ich bei dir auch nicht genau wei, woran ich bin... noch nicht. Tut mir leid. + + + OK, aber denke daran, dass du dafr geradestehen musst, falls sie Mist bauen. Sie werden es nicht alleine zur Janow-Station schaffen. Schnapp dir meine Jungs und fhre sie zu dem Monolithertrupp. Dort werden sie mit ihnen reden, und wenn alles passt, werden sie bei den Wchtern aufgenommen. Sag mir Bescheid, wenn du soweit bist und aufbrechen kannst. + + + Nein, ich habe kein groes Vertrauen in sie. + + + Wir nehmen nicht jeden Dahergelaufenen in unsere Fraktion auf. + + + Ich bin soweit und kann jetzt deine Mnner zum Monolithertrupp fhren. + + + Gut. Ich gebe dir zwei meiner Mnner. + + + In Ordnung. + + + Erledigen wir das spter, mir ist etwas dazwischengekommen. + + + Halt! Mach was du willst, aber ich werde meine Jungs nicht losschicken, um dann in eine Emission zu geraten. + + + Ich habe den PDA des Wchtergrnders gefunden. Interesse? + + + Lass mal sehen... So ist das also abgelaufen... Ich denke nicht, dass die anderen das wissen mssen. Es wre besser, wenn dieser PDA verschwinden wrde. Die Legende der Wchtergrndung soll so im Gedchtnis der Leute bleiben, wie sie ist. Verkaufst du mir diesen PDA? + + + Du kannst ihn haben. + + + Danke. Hier, deine Belohnung. + + + Ich werde ber dein Angebot nachdenken. + + + Hier, der PDA des Wchtergrnders. + + + Danke! Du hast mir damit einen groen Gefallen getan. Hier, deine Belohnung. + + + Ich brauche Kmpfer, die fr die Wissenschaftler arbeiten wollen. Kannst du mir weiterhelfen? + + + Wir helfen den Wissenschaftlern immer gerne. Um was geht es? + + + Sie suchen Leute, die ihren Bunker beschtzen knnen. + + + Klar, ich schicke ein paar von meinen Jungs los. + + + Klar, ich schicke ein paar von meinen Jungs los. + + + Klingt gut, aber sie haben schon die Freiheitler engagiert. Wenn ich unseren Trupp dorthin schicke, wrde das die Spannungen nur noch verschrfen. + + + Ich habe vor, einen Abstecher nach Pripyat zu machen. Wrdest du mir dafr ein paar deiner Kmpfer geben? + + + Wir haben so schon zu wenige Leute! Sprich mit Strider. Der sieht so aus, als wrde er sich bei den Wchtern nicht wirklich wohlfhlen. Vielleicht kommt er ja mit dir besser klar. + + + Wir haben so schon zu wenige Leute und fr ein hoffnungsloses Unterfangen wie dieses sind mir meine Mnner zu kostbar. + + + Mach schnell. Was willst du? + + + Ich hre. + + + Schn, dich gesund und munter zu sehen. + + + Ich habe Dokumente aus der Jupiter-Anlage. + + + Ich bezweifle, dass dort irgendetwas Interessantes ist. Die Anlage wurde schon geplndert, bevor die Stalker dort aufgekreuzt sind. Und dennoch... hm... das hier ist interessant. Ich wrde das gerne jemandem zeigen. Verkaufst du mir die Dokumente? + + + Ja, nimm sie alle. + + + Ja, nimm den Evakuierungsbefehl. + + + Ja, nimm die Besprechungsnotizen. + + + Ja, nimm den Lieferplan. + + + Ja, nimm die Notiz aus der Reparaturwerkstatt. + + + Vielleicht ein andermal. + + + Wer knnte Sachen aus einer persnlichen Kiste gestohlen haben? + + + Ich bin keine Wache und es ist nicht mein Job, deine Kiste im Auge zu behalten! Meine Jungs waren das sicher nicht. Die werden sich hten... + + + Erzhle mir etwas ber die Freiheitler. + + + Puh, ich wei gar nicht, wo ich anfangen soll. Was willst du wissen? + + + Was genau macht ihr hier? + + + Wir sorgen dafr, dass die Behrden nichts vor den Menschen geheim halten knnen. Du weit ja, wie das ist: Sobald sie ein neues Labor oder Dokumente gefunden haben, die die Geheimnisse der Zone preisgeben wrden, leiten sie sofort einen Militreinsatz ein und lassen alles verschwinden. Man findet nur etwas heraus, wenn man zuerst an Ort und Stelle ist. + + + Was hat euch in das Zentrum der Zone gefhrt? + + + Nun ja, den Jungs war einfach danach, einen kleinen Ausflug zu machen. War nur ein Witz. Es ist eine gute Gelegenheit, Dinge zu finden, die die Welt noch nie zuvor gesehen hat. Weder die Armee noch die Stalker waren bisher hier, und aus diesem Grund gibt es berall etwas Neues zu entdecken. + + + Habt ihr etwas gefunden? + + + Ein paar verriegelte Tren und einige merkwrdige neue Artefakte. + + + Wie bist du bei der Freiheit gelandet? + + + Damals, als es die Zone noch nicht gab, war ich mit den Anfhrern der Freiheit befreundet. Wohlgemerkt waren sie zu der Zeit keine Anfhrer, sondern ganz normale Hippies. Als ich mich dann in die Zone aufgemacht habe, um dort nach Artefakten zu suchen, bin ich auf diese alten Bekannten gestoen. Und da dachte ich mir, es kann nicht verkehrt sein, in einem vertrauten Umfeld weiterzumachen. + + + Was hltst du von den Wchtern? + + + Alles Idioten, das ist meine Meinung. Warum zur Hlle wollen sie die Zone zerstren? Sie verschlingt keine wertvollen Rohstoffe und grer wird sie auch nicht. Sie knnten sich einfach entspannt zurcklehnen und die Zone bis ins kleinste Detail erforschen. Stell dir nur vor, wie viele wissenschaftliche Entdeckungen man dabei machen wrde... In der gesamten Menschheitsgeschichte ist es uns noch nicht gelungen, die Antigravitation zu verstehen, richtig? Und in der Zone liegen Antigravitationsgerte einfach so berall herum. Es knnte nicht schaden, die Wchter aus der Zone zu vertreiben, aber andererseits sind sie die Mhe doch gar nicht wert. Ach brigens, wundere dich nicht darber, dass wir hier in der Janow-Station mit ihnen klarkommen. Eigentlich herrscht zwischen uns Krieg, aber die Janow-Station gilt als neutrales Gebiet, wenn du verstehst, was ich meine. + + + Ach, schon gut. + + + Kein Problem. + + + Ich will mit dir ber einen deiner Stalker reden. + + + Ach ja? Schie los. Ich hoffe, du bist nicht gekommen, um jemanden zu verpfeifen? + + + Dein Stalker Flint ist in Zaton unter dem Namen Magpie bekannt. rtliche Stalker suchen nach ihm, weil er sie reingelegt und sich dann mit ihrer Beute aus dem Staub gemacht hat. + + + Und du erwartest von mir, dass ich dir glaube? + + + Hr dir die Geschichten an, die er an der Bar zum Besten gibt. Erst hat er diese Stalker reingelegt und jetzt lgt er deinen Leuten die Hucke voll. + + + OK, entspann dich. Ich rede mit Beard und frage ihn, was Sache ist. Wenn sich deine Behauptungen als wahr herausstellen, kmmern wir uns um Flint auf Freiheitlerart. + + + Hm... ich frage mich, wie er so schnell an das Artefakt gekommen ist. Die Hlfte von dem, was er erzhlt hat, ist bestimmt totaler Quatsch. Ich werde mit meinen Jungs reden. Wenn sich deine Behauptungen als wahr herausstellen, kmmern wir uns um ihn auf Freiheitlerart. + + + Schon gut. + + + OK. + + + Einverstanden. + + + Ich werde darber nachdenken. + + + Bitte sehr. + + + OK. + + + Ich bin auf eine Gruppe von Kmpfern gestoen, die sich der Freiheit anschlieen wollen. + + + Gute Leute knnen wir immer gebrauchen. Sie sind immer willkommen, sofern sie noch zu haben sind. + + + Es gibt da ein kleines Problem - es handelt sich dabei um ehemalige Monolith-Kmpfer. + + + Ein "kleines" Problem? Eigentlich sehe ich Monolither lieber durch mein Zielfernrohr. Alles andere steht auer Frage. + + + Die Monolither, von denen ich hier rede, sind friedlich. Scheinbar wurden sie von jemandem manipuliert. Sie knnen sich nmlich nicht daran erinnern, was mit ihnen geschehen ist, nachdem sie zum Atomkraftwerk Tschernobyl aufgebrochen waren. Sie wissen einfach nicht, was sie jetzt tun sollen. + + + Ich bin leider immer noch skeptisch. Was, wenn du mich aus irgendeinem Grund anlgst? + + + Hm, vielleicht kann es nicht schaden, mit ihnen zu reden und herauszufinden, was Sache ist. Ich gebe dir ein paar von meinen Jungs. Sie werden sich mit ihnen unterhalten und wenn alles passt, nehmen wir deine Monolith-Kmpfer bei der Freiheit auf. + + + Wie wre es, wenn du 'nen Abgang machst? Ich kann nicht glauben, dass du uns vorschlgst, jeden dahergelaufenen Abschaum bei der Freiheit aufzunehmen. + + + Ich bin wegen der Aufnahme der Monolith-Kmpfer bei der Freiheit hier. + + + Meine Mnner sind bereit fr den Abmarsch. + + + OK, sie sollen mir folgen. + + + Spter. + + + Warten wir ein wenig. Emissionen sind nicht gesund. + + + Ich habe den PDA des Wchtergrnders gefunden. Interesse? + + + Warum nicht, sofern irgendetwas Brauchbares darauf gespeichert ist... Wow, das ist wirklich interessant. Dauernd verbreiten sie ihre verdammte Propaganda in der Zone, aber wie es scheint, ist ihre eigene Fraktionsgeschichte vllig fr den Arsch. Ich wrde mir das alles gerne mal in Ruhe durchlesen. Hr zu, ich wrde gut fr diesen PDA bezahlen. + + + Du kannst ihn haben. + + + Danke. Hier, deine Kohle. + + + Ich werde darber nachdenken. + + + Hier, der PDA des Wchtergrnders. + + + Danke. Hier, deine Kohle. + + + Die Wissenschaftler wollen einige Leute anheuern. Kannst du ein paar deiner Mnner zu ihnen schicken? + + + Nun, das hngt davon ab, was die Wissenschaftler von ihnen wollen. + + + Die Wissenschaftler brauchen Leute, die ihren Bunker beschtzen. + + + Klar, ich schicke ein paar von meinen Jungs los. + + + Klar, ich schicke ein paar von meinen Jungs los. + + + Ich wrde ja gerne helfen, aber die Wchter sind schon dort. Wir haben in der Janow-Station schon genug Zeit mit diesen Bastarden verbracht, deswegen muss ich leider passen. + + + Gibst du mir einen Trupp, der mit mir nach Pripyat geht? + + + Sprich mit unserem neuen Rekruten, Strider sein Name. Er macht keinen besonders zufriedenen Eindruck. Vielleicht kommt er bei dir besser zurecht. + + + Wenn ich jemanden brig htte, wre das kein Problem, aber leider ist das nicht der Fall - tut mir leid. Wir haben hier genug um die Ohren. + + + Und, was willst du? + + + Was machst du hier? + + + Schn dich zu sehen, Mann! Ich habe bei der Freiheit schon einige gute Dinge ber dich gehrt. Was kann ich fr dich tun? + + + Ich habe im Eisenbahntunnel einen merkwrdigen Gegenstand gefunden. Interesse? + + + Hm, ne, das ist nur Schrott. Sieht zwar wie ein Artefakt aus, aber scheint keine Wirkung zu haben. Solche Sachen geben wir normalerweise den Wissenschaftlern. + + + Ich habe in Zaton einen merkwrdigen Gegenstand gefunden. Interesse? + + + Und was soll ich damit anfangen? Ich bin nicht einmal besonders an normalen Artefakten interessiert, verstehst du... Zeig das Ding doch mal den Wissenschaftlern. Die zahlen gut, selbst fr allen mglichen Schrott. + + + Ich suche Leute, die den Bunker der Wissenschaftler bewachen knnen. Kennst du jemanden? + + + Dafr ist niemand besser geeignet als die Freiheit. Du knntest es auch bei den Stalkern versuchen, aber besonders vertrauenswrdig sind die nicht. Wenn sie dich hngenlassen, wie willst du sie dann spter finden? Auf jeden Fall rate ich dir davon ab, mit den Wchtern darber zu reden. Diese Fanatiker sind nur fr die Mutantenjagd zu gebrauchen und das war's. + + + Ich suche Leute, die fr die Wissenschaftler Proben sammeln wrden. Kennst du jemanden? + + + Klar. Geh zu Loki - der hilft dir sicher gerne. Du knntest es auch bei den Stalkern versuchen, aber einige von ihnen sind nicht besonders vertrauenswrdig. + + + Jemand hat Sachen aus meiner Kiste gestohlen. Hast du 'ne Ahnung, wer das gewesen sein knnte? + + + Was ist aus dieser Gegend nur geworden, Mann? Ich bezweifle, dass jemand von den Wchtern dahinter steckt. Bei denen geht es ziemlich diszipliniert zu - fr meinen Geschmack zu diszipliniert. Und bei der Freiheit braucht niemand deinen Schrott, deswegen muss es einer von den Stalkern gewesen sein. + + + Ich bin neulich auf einen Monolithertrupp gestoen. + + + Wow, von denen habe ich noch nie jemanden zu Gesicht bekommen! Aber ich habe schon die eine oder andere ziemlich bengstigende Geschichte ber die Jungs gehrt. Die sollen vllig verrckt sein. War bestimmt ein harter Kampf, was? + + + Es gab keinen Kampf, die Jungs sind friedvolle Zeitgenossen. Sie meinten, dass es so war, als htten sie einen Schleier vor den Augen gehabt, aber jetzt htten sie sich wieder voll unter Kontrolle. Und jetzt wissen sie einfach nicht, was sie tun sollen. Deswegen versuche ich, sie bei einer Fraktion oder so unterzubringen. + + + Wow, klingt interessant. Tja, also die Stalker sind keine Option, weil die sie wahrscheinlich einfach abknallen wrden - schlielich waren sie verfeindet... Versuch es mal bei Loki. Niemand wird ihnen zu nahe treten, wenn sie die Uniform der Freiheit tragen. + + + Wer knnte an der Wahrheit ber den Grnder der Wchter interessiert sein? + + + Ich hab wirklich keine Ahnung. Das hngt ganz stark davon ab, inwieweit sich diese Wahrheit von der offiziellen Version der Wchter unterscheidet. Sprich mit Loki darber. Er wird dir sagen, was Sache ist. + + + Ich habe den PDA des Versorgungsoffiziers der Wchter. Bist du interessiert? + + + Nicht im Geringsten. Ich wei, wo ich die Sachen, die er verkauft, viel billiger kriegen kann. Und ich glaube nicht, dass auf dem PDA sonst noch irgendetwas ist, das mich interessieren knnte. + + + Kennst du jemanden, der mit mir nach Pripyat gehen wrde? + + + Pripyat? Nicht schlecht! Nun ja, ich wrde liebend gerne einfach alles stehen und liegen lassen, aber ich habe gerade wirklich viel zu tun... + + + Pripyat? Wow! Du solltest Loki fragen, ob er ein paar Leute fr dich hat. Ich glaube nicht, dass er einen guten Mann wie dich hngen lsst. + + + Du willst dich ein bisschen entspannen? Meine Drinks sind zwar nichts Besonderes, aber ruhig und gemtlich ist es hier. + + + Ich habe alles, was das Herz begehrt. Was darf's sein? Was zum Futtern, ein Drink oder doch ein paar Schsse? + + + Ich suche Leute, die den Bunker der Wissenschaftler bewachen knnen. Wsstest du jemanden? + + + Rede mit den Stalkern. Ich schtze, die wrden gerne fr diese bldstudierten Wissenschaftler arbeiten... Dann kriegen sie vielleicht sogar eine offizielle Genehmigung fr den Aufenthalt in der Zone. + + + Ich suche Leute, die fr die Wissenschaftler Proben sammeln wrden. Hast du eine Idee? + + + Ich rate dir, nicht mit unerfahrenen Stalkern zusammenzuarbeiten. Die wrden sowieso nichts finden, sondern eher etwas verlieren, wenn du verstehst, was ich meine. + + + Ich bin neulich auf einen Monolithertrupp gestoen und will dich etwas fragen. + + + Weit du, jede andere Person, die ich kenne und die an Monolith-Kmpfer geraten ist, hat ein paar Lcher im Schutzanzug und keinen Puls mehr. Du hingegen siehst noch ziemlich lebendig aus. Also, was willst du von mir wissen? + + + Auf diesen Trupp trifft das nicht zu. Ich habe mit ihnen geredet und musste nicht zur Waffe greifen. + + + Das kann nicht sein!? + + + Und ob. Sie meinten, dass es so war, als wre ein Schleier vor ihren Augen gewesen, der jetzt verschwunden sei. Und jetzt wissen sie einfach nicht, was sie tun sollen. Sie haben mich um Rat gefragt. + + + Also ich kann ihnen nur raten, sich von Stalkern fernzuhalten. Sie haben ein gutes Gedchtnis und wrden sie nicht am Leben lassen. Du knntest vielleicht versuchen, ihnen dabei zu helfen, sich einer Fraktion anzuschlieen. Allerdings wei ich nicht, ob die Wchter oder Freiheitler mit ihnen etwas zu tun haben wollen. + + + Ich habe einen PDA mit der Wahrheit ber den Grnder der Wchter. Hast du Interesse? + + + Ich kann mit Getratsche nichts anfangen, vergiss das nicht. Wenn du Informationen verkaufen willst, ist Uhu der richtige Ansprechpartner. Er steht auf so was. Andererseits wren Informationen wie diese auch etwas fr Loki oder Shulga. + + + Ich habe den PDA des Versorgungsoffiziers der Wchter. Wre das was fr dich? + + + Ich werde das Gefhl nicht los, dass mir dieser PDA rger mit den Wchtern einbringen knnte, und da bin ich nicht scharf drauf. Versuch es mal bei Uhu. + + + Ich brauche medizinische Hilfe. + + + Lass mal sehen... + + + Schon besser. + + + Kennst du jemanden, der mit mir nach Pripyat gehen wrde? + + + Sprich mit dem Stalker Wano. Er ist immer schnell dabei - weswegen er hufig in Schwierigkeiten steckt. + + + Hier in der Gegend sind nicht viele verrckte Typen. Deswegen musst du dich woanders umhren, Kumpel. + + + Brauchst du Medikamente oder bist du nur zum Plaudern gekommen? + + + Jemand hat Sachen aus meiner Kiste gestohlen. Hast du 'ne Ahnung, wer das gewesen sein knnte? + + + Kennst du den Namen dieses Stalkers? + + + Ich habe gehrt, dass er noch nicht lange hier ist... Wie hie der verdammte Kerl doch gleich? Snob? Oder Snack... nein, nein. Es liegt mir auf der Zunge... Snag, das war es! Sein Name lautet Snag. + + + Was geht, Bruder? + + + Hey. Ich muss etwas Wichtiges mit dir besprechen. + + + Cool, lass uns zuerst einen Drink nehmen, damit wir uns auch wirklich ernsthaft ber diese wichtige Sache unterhalten knnen! + + + OK, lass uns was trinken! + + + Nein, im Moment ist mir nicht nach einem Drink. + + + Also, um was geht es? + + + Ich habe vor, ber den unterirdischen Durchgang unterhalb der Jupiter-Anlage nach Pripyat zu gelangen. Nitro kann den Eingang entriegeln. + + + Hm... ein unterirdischer Weg nach Pripyat... ist eine gute Idee... das mssen wir mit einem weiteren Glas begieen. + + + Prost. + + + Hey, schmeckt richtig gut. Ich hoffe nicht, dass du deinen Plan ganz alleine in die Tat umsetzen willst? Nein... das wird nichts... ich gehe mit... und wir brauchen noch mehr Leute... Ein paar vertrauenswrdige Kameraden knnen bei einem Vorhaben wie diesem nicht schaden... + + + Nitro hat mir geraten, einen Trupp zusammenzustellen... + + + Ja, das ist keine schlechte Idee... Trinken wir noch einen auf den Erfolg dieses Vorhabens... + + + Wohl bekomms! + + + Das kriege ich schon alleine hin... Ich meine, in Zaton habe ich ein Lager voller Blutsauger alleine auseinander genommen... eine Gasflasche und dann war die Sache erledigt. + + + Wow, Respekt, Mann. Trinken wir darauf, dass man fr den Fall der Flle immer eine Gasflasche dabei hat. + + + Amen! + + + Vertrauenswrdig, was? Tja, hier findest du nur Abschaum... In Zaton habe ich einen Hndler getroffen, aber dann hat sich herausgestellt, dass er von den Wchtern ist... + + + Wow, sogar bei den Wchtern gibt es Abschaum... Was ist aus dieser Welt nur geworden? Ach, wir sollten uns darber nicht den Kopf zerbrechen, sondern lieber etwas trinken. + + + Ich erhebe mein Glas auf deine Weisheit. Prost. + + + Mmm... nicht schlecht, oder? Ein Trupp wre eine gute Idee, wir brauchen mindestens drei Leute... Hast du jemanden im Sinn? + + + Ich trommle ein paar Jungs zusammen... Auerdem brauchen wir Schutzanzge mit geschlossenem Atemkreislauf... + + + Ja, Sicherheit geht vor und so... Wenn wir schon beim Thema sind: ber mich brauchst du dir keine Gedanken machen, mein Schutzanzug ist gut. Aber wir brauchen die Dinger fr die anderen und das drfte nicht ganz einfach werden. Schutzanzge wie diese sind hier nicht wirklich leicht zu kriegen. Auf eine erfolgreiche Suche. + + + Prost. + + + Kennst du diesen Verrckten namens Noah? Er hat sich in einem alten Kahn mit allen mglichen Sachen verbarrikadiert... Zur Begrung schenkt er seinen Gsten eine Ladung Blei aus den beiden Lufen seiner Schrotflinte. + + + Ja, ich habe ihn schon lange nicht mehr gesehen. Vor einer Weile haben wir zusammengearbeitet. Er war ein fhiger Kmpfer... Ein Jammer, dass er immer so schnell austickt. Trinken wir auf ihn und seinen Geisteszustand! + + + Auf Noah! + + + Vor einiger Zeit habe ich Wano in der Janow-Station getroffen. Scheinbar konnte er seine Schulden bei den Banditen nicht begleichen... Wie auch immer, ich habe dem armen Kerl geholfen... + + + Cool, wenn er dabei ist, macht das Ganze sicher noch mehr Spa. Auerdem kann er den ganzen Proviant schleppen. Auf Wano! + + + Das kannst du laut sagen, Bruder! + + + Im Bunker der Wissenschaftler hngt ein Typ vom Militr rum... der hat dort nichts zu tun. Vielleicht schliet er sich uns ja an. + + + Ja, jemanden von der Armee knnten wir gut gebrauchen... Trinken wir darauf, dass er sich uns hoffentlich anschliet. + + + Tun wir das. + + + Du wirst es nicht glauben, aber neulich habe ich einem Monolithertrupp geholfen... Scheinbar haben sich pltzlich die lockeren Schrauben in ihren Schdeln wieder gefestigt und dann wussten sie nicht, was sie tun sollen... Also habe ich ihnen geholfen und jetzt hngen sie in der Janow-Station herum. + + + Hm... dieser Wodka ist dir wohl direkt ins Hirn gestiegen, hah! Ach, von dem guten Zeug kann man einfach nicht genug kriegen! + + + Wie wahr. + + + OK, das sollte es gewesen sein. Am Wichtigsten ist es, dass wir uns dort unten nicht verirren... + + + Keine Sorge - ich habe mir den Bauplan besorgt. + + + Cool. Trinken wir noch einen auf den Erfolg unseres Vorhabens. + + + Darauf trinke ich einen! + + + Ach, entspann dich, Mann... neulich habe ich die Oase gefunden... den Ort, den sonst niemand erreicht... + + + Wow, bist ja ein richtiger Fhrtensucher, Mann. Mit dir finden wir den Weg nach Pripyat, ohne mit der Wimper zu zucken. Prost. + + + Prost. + + + Na, alles klar? + + + Ich glaube, wir haben genug Leute. Wir knnen aufbrechen. + + + Bist du dir sicher? Noch eine helfende Hand knnte nicht schaden. + + + Ja, ich bin mir sicher. Gehen wir. + + + Du hast Recht. Ich versuche, noch ein paar Leute aufzutreiben. + + + Gut. Lassen wir's krachen, Jungs! + + + Gehen wir. + + + Kmpfer sind schn und gut, aber hast du fr Schutzmanahmen gesorgt? Du brauchst einen Schutzanzug mit geschlossenem Atemkreislauf, bevor wir gehen... Ich schleppe deinen toten Hintern nirgendwohin. Mein dickes Schieeisen und die Munition sind schon schwer genug. + + + Ja, ich verstehe. + + + Warten wir. Mit Emissionen ist nicht zu spaen! + + + Wo finde ich Kmpfer, die sich unserem Trupp anschlieen wollen? + + + Frag die Leute bei der Jupiter-Anlage... Diejenigen, die in Zaton geblieben sind, werden auch sicher nicht nach Pripyat wollen. Das mssen Kerle sein, die vor nichts zurckschrecken... die sich fr etwas begeistern lassen, das man prinzipiell als hoffnungsloses Unterfangen bezeichnen knnte. Ist dir vielleicht schon einmal so jemand ber den Weg gelaufen? Vielleicht jemand, bei dem du noch etwas gut hast. Oder kennst du jemanden, der sich noch keiner Gruppierung angeschlossen hat? + + + Das sind genug Leute. Wir mssen ja nicht gleich eine ganze Division aufstellen... Eine Guerillataktik tut's auch. + + + Was hltst du von Strider? + + + Monolither sind normalerweise fanatische und erbitterte Kmpfer... Aber was ehemalige Mitglieder betrifft, bin ich mir nicht sicher. Strider wirkt nach auen hin ruhig, aber der Schein kann trgen. + + + Wow! Eine Monolith-Panzerung. Wo zum Teufel hast du die her? + + + Das war Teil eines Sets. Darf ich vorstellen? Strider, ein ehemaliger Monolith-Kmpfer. + + + Ich wusste gar nicht, dass es "ehemalige" Monolith-Kmpfer gibt. Na ja, wir werden sehen, aus welchem Holz er geschnitzt ist, wenn es richtig losgeht. + + + Was denkst du ber Sokolow? + + + Dieser Typ trgt einen interessanten Schutzanzug, mit allerlei wissenschaftlichem Schnickschnack. So einen habe ich schon seit Jahren nicht mehr gesehen. + + + Das ist Sokolow, der Kopilot des abgestrzten Militrhubschraubers. + + + Man erkennt auf den ersten Blick, dass er kein Wissenschaftler ist. Ein guter Soldat kommt immer gelegen. + + + Wie lange kennst du Wano schon? + + + Wir sind uns einige Male in der 100 Rads Bar ber den Weg gelaufen. Man sagt, er sei ehrlich, optimistisch und ein guter Stalker... Aber er ist einfach zu leichtglubig und das kann in der Zone ein verhngnisvolles Manko sein. + + + Wano ist also dabei, ja? Gut, dann haben wir jemanden, der unseren ganzen Proviant schleppen kann... Hah, mach dich locker, war nur Spa. + + + Wer knnte Sachen aus einer persnlichen Kiste gestohlen haben? + + + Jemand hat dich beklaut? Das ist echt mies. Ich wei gar nicht, was ich sagen soll. Hier in der Gegend hat sich niemand auffllig verhalten... Sollte ich etwas herausfinden, gebe ich dir auf jeden Fall Bescheid. Ratten knnen wir in unserem Lager nicht gebrauchen. + + + Wie ich gehrt habe, hat hier vor kurzem jemand herumgeballert... + + + Ach, das war ich. Ein paar Idioten haben beschlossen, sich am Turm zu treffen... Hatten einen Streit oder so und haben angefangen herumzubrllen. Ich habe mit meinem alten MG ein paar Mal in die Luft geschossen und dann sind sie in Richtung Umspannwerk abgezischt. Das war's dann auch schon wieder mit ihrem Treffen, he he. + + + Ich habe beschlossen, das Artefakt aus der Oase herzugeben. + + + Eine kluge Entscheidung - geben Sie es bitte mir. + + + Hier. + + + Ausgezeichnet, dieses Wunder muss sofort genauer untersucht werden... Ach brigens, danke fr Ihre Mhe. Hier, Ihre Bezahlung. + + + Kann ich Ihnen irgendwie helfen? + + + Danke, wir haben schon einen Stalkertrupp, der fr uns arbeitet. Aber... es gibt da eine Theorie, oder besser gesagt eher eine Legende... Haben Sie schon einmal von der Oase gehrt? + + + Ich werde versuchen, die Oase zu finden. + + + Tut mir leid, im Moment habe ich viel zu tun. + + + Nein, noch nie davon gehrt. + + + Dann passen Sie auf. Viele Leute reden davon, aber scheinbar hat bisher niemand die Oase gesehen. Man kann sie mit einer Heilquelle vergleichen. Sobald man in der Oase ist, heilen die Wunden und man kommt wieder zu Krften. Viele Gerchte machen die Runde, eines unglaubwrdiger als das andere... Einige behaupten, sie htten die Oase in ihren Trumen gesehen... aber als Wissenschaftler muss ich die Frage stellen "Woher wollen Sie wissen, dass es wirklich die Oase war?". Also wenn Sie danach suchen wrden... ich kann zwar keine groartige Bezahlung versprechen, aber falls die Oase wirklich existiert, wrde ihre Entdeckung unsere Forschungen einen groen Schritt vorantreiben. + + + Ich habe die Oase gefunden. + + + Wirklich? Also existiert sie wirklich?! Halten Sie mich bitte nicht fr einen unbelehrbaren Skeptiker, aber haben Sie irgendetwas mitgebracht, das ihre Existenz belegt? + + + Ja, ich habe etwas gefunden, das wie ein Artefakt aussieht. + + + Geben Sie es mir, schnell! + + + Hier, bitte. + + + Ausgezeichnet, dieses Wunder muss sofort genauer untersucht werden... Ach brigens, danke fr Ihre Mhe. Hier, Ihre Bezahlung. + + + Nein, vielleicht kann ich es ja noch gebrauchen. + + + Das ist aber ziemlich egoistisch, ja sogar gefhrlich. Die genauen Eigenschaften dieses Artefakts sind gnzlich unbekannt. Was wre, wenn Sie morgen aufwachen und Ihre Beine gelhmt sind? Oder sich Ihre Haut grn verfrbt? Ich versichere Ihnen, dass derartige Objekte bei Wissenschaftlern am besten aufgehoben sind. Zumindest wrden wir versuchen, uns zu schtzen. + + + Ihre Einschchterungstaktik funktioniert bei mir nicht. Ich behalte das Artefakt. + + + Also gut, Sie knnen es haben. + + + Nein. + + + Nein? Und was soll ich dann wissenschaftlich untersuchen? Wissen Sie, was Wissenschaftler von anderen Menschen unterscheidet? Ihr Bestreben, jede Theorie mit Fakten zu belegen! Ich brauche einen Beweis! + + + OK, ich gehe noch einmal dorthin. + + + Ich habe schon genug Zeit verloren. Ich kann jetzt nicht zurck. + + + Wenn die Bezahlung fr Sie zweitrangig ist, denken Sie doch einmal an die neuen medizinischen Mglichkeiten, die sich durch die Oase ergeben wrden! Wenn ich mich nicht irre, handelt es sich dabei um eine Anomalie... so wie auch andernorts in der Zone. Und wenn das stimmt, dann wre die Oase die erste Anomalie mit Heilwirkung! + + + Was hat Sie hierher verschlagen? + + + Haben Sie die Sldner gesehen, die uns beschtzt haben? + + + Es freut mich, endlich wieder ein intelligentes Wesen zu sehen. Wie kann ich Ihnen helfen? + + + Knnen Sie das glauben? Die Sldner, die uns beschtzen sollten, wurden direkt vor unserem Bunker gettet! + + + Hermann, wissen Sie irgendetwas ber die Oase? + + + Die Oase? Pah, alles erstunken und erlogen, so einfach ist das. Die Menschen glauben gerne an irgendwelche Wundermittel, deswegen erfinden sie diese Ammenmrchen. Glauben Sie mir, die Oase ist nichts weiter als das Hirngespinst von Menschen mit zu viel Fantasie. + + + Viele reden darber. + + + Zu viele. Aber keiner von ihnen war jemals dort. Ich bleibe bei der wissenschaftlichen Sichtweise: Was nicht bewiesen werden kann, existiert nicht. + + + Gut, ich verstehe... Danke. + + + Gut. Dann mal los. + + + Cool... Wir sind wieder zurck, bevor du "Blutsauger" sagen kannst - hah! + + + Wir werden sehen. + + + Cool... Aber warten wir noch, bis die Emission vorbei ist, und dann knnen wir gehen. + + + Guten Tag, Stalker. Ich bin Onkel Jar... Bist von dem Marsch bestimmt erschpft, was... Wenn du schon hier bist, kannst du ja einen Happen essen. Hast dir auerdem einen guten Zeitpunkt ausgesucht - ich brauche Hilfe. In meinem Alter kriegt man manche Dinge nicht mehr alleine hin. Aber als ich noch jung war, da... + + + Und, bist du fit? Wie wre es mit einem Spaziergang? Knntest einem alten Mann helfen... + + + Wie geht's? Du siehst von Tag zu Tag besser aus... + + + Um was geht es? + + + Ach, ein Kinderspiel... Wir beide machen uns auf den Weg nach Kopatschi - ist nicht weit von hier. Alles Weitere wirst du selbst sehen, wenn wir dort sind... + + + Helfen dir deine Freunde von der Freiheit nicht? + + + Ich will sie mit dieser Sache nicht nerven... Wir beide kriegen das schon hin, ist kein Problem. + + + Kommst du mit nach Pripyat? + + + Ne... aber wenn ich jnger wre... ich wei noch, wie ich immer nach Sibirien und zurck gewandert bin, aber mittlerweile versuche ich, meine Ausflge etwas krzer zu halten... ich schtze, ich werde langsam alt. + + + Pass auf dich auf. + + + Warte. Falls du zur Janow-Station willst, knnen wir ja zusammen gehen. Ist immer nett, wenn man sich unterwegs mit jemandem unterhalten kann... + + + Danke, aber ich will lieber alleine gehen. + + + Auf zur Janow-Station. + + + Danke, dass du einem alten Mann geholfen hast... Hier, fr dich. Falls du irgendwelche Fragen hast, frag einfach drauflos. Ich werde sie so gut wie mglich beantworten... + + + Warum hast du nicht Mitglieder der Freiheit um Hilfe gebeten? + + + Was soll es bringen, die Sldner gegen die Freiheitler aufzubringen? Wir hatten schon einen Krieg und das sollte reichen. Das hier ist eine persnliche Angelegenheit und da will ich sie nicht mit reinziehen, verstehst du? + + + Was ist hier passiert? + + + Einige Kerle sind hierher gekommen und wollten mich tten... Ich war gerade im Gebsch bei der Arbeit, als ein Sldnertrupp aufgekreuzt ist. Ihr Anfhrer hat mit seinem PDA kommuniziert und irgendetwas von einem Zentrallabor in Pripyat gefaselt, ein Befehl mit hoher Dringlichkeitsstufe bla bla... Dann bin ich auf einen dmlichen Ast getreten und schon wussten sie, dass ich im Gebsch bin. Also habe ich mir mein Gewehr geschnappt und die Beine in die Hand genommen. Ich dachte mir schon die ganze Zeit, dass sie irgendwann kommen werden. Das ist der Preis, den man fr Lauschangriffe bezahlen muss. + + + Am Wichtigsten ist es, dass du auf alles gefasst bist und dich nicht berraschen lsst. Folge mir leise... Wenn wir unauffllig bleiben und uns nicht bewegen, wird das alles ganz einfach. + + + OK. + + + Wir mssen hier weg. Lass uns spter reden. + + + OK. + + + Ich stelle einen Trupp zusammen und breche dann auf nach Pripyat. Willst du dich mir anschlieen? + + + Klingt verlockend, aber... nein danke. Die Wissenschaftler haben mir eine Genehmigung fr den Aufenthalt in der Zone versprochen und auerdem zahlen sie gut. Tut mir leid, aber ich bleibe hier. + + + Seid ihr bereit, Messungen in Anomalien vorzunehmen? + + + Wir sind immer bereit, solange du uns Deckung gibst. Welche Anomalie sollen wir uns vorknpfen? + + + Gehen wir nach Fen. + + + Gehen wir am Dorf Kopatschi vorbei zum Aschehgel. + + + Wartet, ich habe meine Meinung gendert. + + + Wir sind bereit, aber sollten besser warten, bis die Emission vorbei ist... + + + OK. + + + Messungen vorgenommen, gehen wir. + + + Ich will hier auch nicht unbedingt lnger herumhngen. Wohin als Nchstes? + + + Gehen wir nach Fen. + + + Gehen wir am Dorf Kopatschi vorbei zum Aschehgel. + + + Zum Bunker der Wissenschaftler. + + + Moment, ich muss nachdenken. + + + Seid ihr soweit, um zurck zum Bunker zu gehen? + + + Wir knnen es gar nicht mehr erwarten... + + + Wenn das so ist, dann los. + + + OK, wartet noch eine Sekunde auf mich... + + + Ich habe einige Fragen. + + + Schie los und ich werde versuchen, deine Fragen zu beantworten. + + + Ich glaube, das war alles. + + + Ich mchte mehr ber die Mission der Wissenschaftler erfahren. + + + Ah, der Tunnel... Da ist etwas, ein merkwrdiges Artefakt oder so. Dieser Ort ist wirklich sonderbar. Zuerst war alles ruhig, aber dann habe ich etwas in meinem Kopf gesprt... Auerdem wimmelt es dort nur so von Hamstern, aber mach dir darber keine Gedanken - die werden wir ohne Probleme los. + + + Warst du schon einmal dort? + + + Ja, aber wir sind nicht tief in den Tunnel vorgedrungen. Wir haben gerade fr Hermann Messungen vorgenommen, als die Hamster in groer Anzahl aufgetaucht sind. Als wir dann wieder bei den Wissenschaftlern waren und ihnen die Messergebnisse gezeigt haben, waren sie so aufgeregt wie kleine Kinder. Sie wollten, dass wir den kompletten Tunnel unter die Lupe nehmen, aber ich gehe da nicht noch einmal rein! Jetzt haben sie dich ja angeheuert und wir sind nur hier, um dir Deckung zu geben. + + + Ich verstehe. + + + Wir haben schon einmal Messungen vorgenommen, deswegen kriegen wir das schon hin. + + + Wo habt ihr Messungen vorgenommen? + + + Nun ja, Messungen klingt wie 'ne groe Sache, war aber nur ein kleiner Job, und ehrlich gesagt bisher der einzige dieser Art. Es ging dabei um das Anomalien-Psi-Feld in diesem verdammten Tunnel. Sobald wir die Gerte eingeschaltet hatten, kamen die Hamster aus jedem gottverdammten Loch gekrochen. Mace htte es fast nicht mehr rausgeschafft, so zerbissen wie er war. + + + Findest du das nicht merkwrdig? + + + Nein, warum sollte ich? Die Zone mag keine neugierigen Leute, deswegen ist das vllig normal. Oserski hat das mal gesagt und wie du siehst, hat er Recht behalten. Frag ihn, wenn du willst, vielleicht wei er etwas, das er uns nicht gesagt hat. + + + Ich verstehe. + + + Verstehe. + + + Was kannst du mir ber die Leute sagen, die im Bunker leben? + + + Ein zusammengewrfelter Haufen ist das... Zwei Wissenschaftler - Hermann in leitender Position und Oserski. Sie haben Nowikow angeheuert, der sich um den ganzen technischen Kram kmmert, und Gari als Ortskundigen. Dann sind da noch wir... Uns haben sie neulich engagiert, um Messungen vorzunehmen und andere wissenschaftliche Dinge zu erledigen. Ach ja, Gari hat auerdem vor kurzem einen Kerl von der Armee in den Bunker gebracht. Das war's. + + + Kannst du mir mehr ber Hermann erzhlen? + + + Hermann hat hier das Sagen. Er ist Professor bei irgendeinem Institut, wahrscheinlich ein geheimes... Er hat die Expedition organisiert. Nachdem der Hirnschmelzer deaktiviert worden war, haben sie sofort diesen Bunker hier gebaut. Er ist auch derjenige, der Gari und uns angeheuert hat. Er zahlt gut und hat uns sogar eine offizielle Genehmigung fr den Aufenthalt in der Zone versprochen. + + + Reden wir ber etwas anderes. + + + Kannst du mir mehr ber Oserski erzhlen? + + + Er ist ein feiner Kerl und die rechte Hand von Hermann. Hin und wieder befolgt Hermann sogar seine Ratschlge. Viel mehr wei ich allerdings nicht ber ihn - meistens haben wir mit Hermann zu tun. + + + Kannst du mir von Nowikow erzhlen? + + + Er ist wie Einstein auf Abenteuerreise, Mann. Nowikow wei genau, was er zu tun hat, wenn er mit technischen Sachen herumhantiert. Tatschlich ist er besser als jeder andere, der dir hier ber den Weg laufen knnte. Ich wei nicht, was ihn hierher verschlagen hat, aber man kann durchaus sagen, dass die Zone fr ihn kein Buch mit sieben Siegeln ist - er wei mehr ber die Zone als wir. + + + Kannst du mir von Gari erzhlen? + + + Gari ist ein feiner Kerl und war einer der ersten, die hier aufgetaucht sind. Er hat mir erzhlt, dass die Wissenschaftler gerade abgesetzt wurden, als er hierher gekommen ist, und dann hat er sich ihnen einfach angeschlossen. In letzter Zeit langweilt er sich, weil er nicht gerne herumhockt. Allerdings kann er nicht gehen, bevor er nicht seinen Vertrag mit den Wissenschaftlern erfllt hat. Falls du sonst noch etwas ber ihn wissen willst, frag ihn am besten selbst. + + + Erzhle mir etwas ber den Typen von der Armee. + + + Hah. Gari ist auf ihn gestoen, als er vor den Zombies weggerannt ist. Er kann sich glcklich schtzen, dass es Gari war, denn die meisten anderen htten ihn sicher erledigt. Er bleibt jetzt im Bunker und da mache ich ihm keinen Vorwurf. + + + Was machen die Sldner hier? + + + Diese verdammten Halsabschneider bewachen den Bunker. Sie sind hier vor einiger Zeit aufgetaucht, haben mit Hermann geredet und sind dann geblieben. Ich habe den Eindruck, dass Hermann auch nicht gerade glcklich darber ist... Ihr Anfhrer heit Black und ist ein Thema fr sich. + + + Was kannst du mir ber diese Gegend erzhlen? + + + Nun, nicht weit von hier ist eine alte Militrbasis... Nrdlich davon liegt das Dorf Kopatschi und stlich davon eine Bahnstation, wo die Stalker herumhngen. Ach ja, auf den Schienen in der Nhe ist ein Zug... Ist kein besonders schner Ort, das kannst du mir glauben. + + + Erzhle mir von der alten Militrbasis. + + + Tja, da gibt es nicht viel zu erzhlen... Alle wertvollen Sachen wurden schon vor langer Zeit geplndert, deswegen gibt es dort jetzt nicht mehr viel zu sehen... auer Mutanten und Zombies. Da ist auch ein kleiner Bunker - genug, um sich bei einer Emission in Sicherheit zu bringen. + + + Erzhle mir von dem Dorf. + + + Man kann es nicht mehr wirklich Dorf nennen - sind nur noch ein paar kleine Hgelchen, weil das Dorf 1986 wegen der Strahlung zugeschttet wurde. In der heutigen Zeit will dort niemand mehr hin. Ist kein gesunder Ort und zu holen gibt es dort auch nichts. + + + Erzhle mir von der Bahnstation. + + + Kannst du mir etwas ber den Zug erzhlen? + + + Die Janow-Station ist einen Besuch wert, falls du noch nie dort warst. Vor allem, wenn man sich ein khles Bier genehmigen oder mit befreundeten Stalkern plaudern will. Auerdem ist sie abgesehen von unserem Bunker der einzige sichere Ort in dieser Gegend. + + + Wie ich sehe, habt ihr neue Ausrstung am Start? + + + Aber hallo, Kumpel. Wir sind jetzt offiziell unter dem Namen "Wissenschaftliches Forschungsteam Iskra" bekannt! Aber du brauchst nicht glauben, dass wir dich vergessen haben, nur weil wir jetzt Wissenschaftler sind, ha ha! Meine "Kollegen" und ich haben die Sache in aller Ausfhrlichkeit besprochen und wir sind zu dem Schluss gekommen, dass... dass du dir das wirklich verdient hast, Kumpel! Falls du in einer Anomalie landest oder von einer Emission erwischt wirst - Gott bewahre -, nimm dir einen Moment Zeit und schicke uns eine Dankesnachricht. Wir werden sie erhalten, glaub mir! + + + Hey. + + + Na, was geht ab? + + + Also, knnen wir los oder sollen wir noch ein bisschen warten? + + + Ich dachte schon, dass ich in diesem Tunnel als hirnloser Zombie enden werde! Was kann ich fr den Mann tun, der mich gerettet hat? + + + Na, willst du dir die Beine ein bisschen vertreten? + + + Hey, Bruder. + + + Wir sind dir was schuldig, und das werde ich nicht vergessen. + + + Ich glaube, wir sind hier fertig und es wird langsam Zeit, dass wir von diesem gottverdammten Ort verschwinden... + + + Was hat es mit diesem Tunnel auf sich? + + + Da ist kein bisschen Staub. Hermann sagt, dass das an der Tesla-Anomalie liegt, aber es fllt mir schwer, das zu glauben. + + + Frag den Boss. Ich wei nicht, was ich dir erzhlen darf und was ich besser fr mich behalten sollte. + + + Sag mir, was du gefunden hast, als du das Psi-Feld gemessen hast. + + + Auf dem Boden waren Fuabdrcke. Sahen aus wie von Menschen, aber wer ist schon so verrckt und latscht dort barfu herum? + + + Dein Gehirn spielt verrckt und egal wo du hinschaust, siehst du diese merkwrdigen Formen. Ist ein verdammtes Psi-Feld, verstehst du? + + + Und, was hast du unter der Erdoberflche gefunden? + + + Nicht viel, nur ein paar tote Hamster. + + + Hm... nichts, was man nicht auch woanders in der Zone finden knnte. + + + Alles OK? + + + Mir geht's gut, dank dir! Ich bertrage dir ein paar Koordinaten, als Zeichen meiner Dankbarkeit. Du kannst alles behalten, was du dort findest. Ist zwar nicht viel, aber kommt von Herzen... + + + Wie geht es dir? + + + Mann, Tausend Dank! Ich danke dir, ich... ich wei gar nicht, was ich sagen soll. Ich bertrage dir die Koordinaten unseres Verstecks - als Zeichen meiner Dankbarkeit. + + + Bist du noch am Leben? + + + Danke, das werde ich dir nie vergessen. Ich gebe dir die Koordinaten unseres Verstecks. Das hast du dir verdient... + + + Ist dein Gehirn noch intakt? + + + Man, was ich gesehen habe, als ich... Das wird mich mein ganzes Leben lang verfolgen... + + + Also, zurck zum Bunker? + + + Darauf kannst du wetten! + + + Dann los. + + + Ihr geht vor, wir sehen uns dann dort. + + + Ist dein Trupp bereit, zum Tunnel aufzubrechen? + + + Sag Bescheid, wenn es losgehen kann. + + + Jetzt. Los! + + + Warten wir noch ein wenig. + + + Ich gehe alleine. Wir treffen uns dort. + + + Ich gehe alleine. Wir treffen uns dort. + + + Nein, wir haben kein allzu groes Vertrauen in dich und Zeit ist Geld. Entweder du gehst mit uns oder wir bleiben hier. + + + Wenn das so ist, gehen wir zusammen. + + + Wenn das so ist, msst ihr warten. + + + Keine Chance... Es macht keinen Sinn, das whrend einer Emission zu riskieren. + + + So, da sind wir. + + + Also... fangen wir an? + + + Ja, natrlich. + + + Gebt mir einen Moment, ich muss mich erstmal zurechtfinden. + + + Was zum Teufel willst du? + + + Ich geh hier nur vorbei. + + + Gut, dann geh weiter. + + + OK. + + + Immer mit der Ruhe, Schwachkopf! + + + Geht dich nichts an! + + + Oh... Hallo... + + + Nimble hat mir erzhlt, dass du ein hinterlistiger Drecksack bist. Ich schtze, du hast schon so manch einen Stalker bers Ohr gehauen... + + + Ich wei gar nicht, wovon du redest! So etwas habe ich noch nie gemacht. Nimble ist wohl nicht ganz richtig im Kopf! + + + Was hast du den Banditen ber mich erzhlt? Warum haben sie bei den Dockkrnen auf mich gewartet? + + + Du musst mich mit jemandem verwechseln... Mit den Banditen habe ich nichts am Hut! + + + Nimble hat mir von dir erzhlt... Ich schlage vor, du gibst mir deine Waffe und machst es fr uns beide leichter. + + + Was hat er dir denn erzhlt?! Ich habe nichts, das nicht mir gehrt! + + + Mach dich vom Acker, Kumpel... + + + Hilf mir, Bruder - ich brauche ein Medkit! + + + Sag mir erst, wo du mein Zeug versteckt hast! + + + Tut mir leid, Mann, ich habe das Geld wirklich gebraucht... Ich sage dir alles, aber bitte hilf mir! Ehrlich, ich drehe keine krummen Dinger mehr, das war frher! + + + OK, hier. + + + Danke, Mann! Ich habe die Sachen in mein Versteck getan - in der Kanalisation hinter dem Umspannwerk. + + + Ich verstehe. + + + Ich glaube dir kein Wort. Das Medkit kannst du vergessen. + + + Hier. + + + Ich gebe dir kein Medkit. + + + Danke. Ich htte nicht gedacht, dass du mir hilfst... + + + Wen knnte ich anheuern, um die Wissenschaftler zu beschtzen? + + + Die Wchter natrlich, wen denn sonst? Schlielich sind sie die besten Kmpfer in der Zone! Schwere Kampfwachen - na, wie klingt das? + + + Sie beschftigen zurzeit Freiheitler? In diesem Fall kann ich dir nicht weiterhelfen. Ich htte die Wchter vorgeschlagen, aber die verstehen sich nicht besonders gut mit der Freiheit. + + + Wen knnte ich anheuern, um Messungen fr die Wissenschaftler vorzunehmen? + + + Versuch es mal bei Shulga. Sind zwar alles keine Superhirne, aber einige von seinen Jungs sind nicht auf den Kopf gefallen. + + + Bezahlen sie immer noch die Freiheitler dafr, dass sie sie beschtzen? Wenn ja, dann wrde ich davon abraten, die Wchter anzuheuern... Mehr kann ich dir dazu nicht sagen. + + + Als wir in der Unterfhrung angekommen sind, hat der Aufzug den Geist aufgegeben... + + + Hah, ihr seid da runtergegangen und habt den einzigen betriebsbereiten Generator benutzt... der dazu noch der Notfallgenerator ist. Ich htte ihn fast nicht zum Laufen gebracht. Er hat also seine Arbeit getan und ist dann abgeraucht. Du solltest froh sein, dass er nicht auf halbem Wege ausgegangen ist... Der Aufzug hat keinen Notausgang! + + + Wer knnte Sachen aus einer persnlichen Kiste gestohlen haben? + + + Verdammt! Ich hab wirklich keine Ahnung. Aber eins sag ich dir: Htte Shulga in der Janow-Station das Sagen, wre das sicher nicht passiert. + + + Kannst du einen Stahlbehlter aufbrechen? + + + Ich bin doch kein Tresorknacker, Mann. Metall ist nicht so mein Ding... Aber falls es um irgendetwas Elektronisches geht, melde dich bei mir. + + + Eine Gruppe friedlicher Monolith-Kmpfer will irgendwo unterkommen. Wer knnte ihnen da weiterhelfen? + + + Machst du Witze? Ich habe gehrt, die sind wie wilde Tiere... Also die Stalker wrden ihnen sicher keinen herzlichen Empfang bereiten, so viel ist sicher... Du solltest mal mit Shulga reden. Wenn der Oberstleutnant sie bei den Wchtern aufnimmt, sind sie sicher. Vielleicht knnen sie sich ja dort sogar irgendwie ntzlich machen. + + + Kannst du einen Flugschreiber entschlsseln? + + + Lass mal sehen... Das knnte knifflig werden. Ich schtze, es wird ungefhr drei Stunden dauern und dementsprechend kosten. Ich kmmere mich darum und dann reden wir... Mach du in der Zwischenzeit einen Spaziergang, damit ich mich konzentrieren kann... + + + Lass mal sehen... Das knnte knifflig werden. Ich schtze, es wird ungefhr drei Stunden dauern und dementsprechend kosten. Ich kmmere mich darum und dann reden wir... Du knntest dich ja in der Zwischenzeit nach den Komponenten umsehen, die ich brauche. Damit verdienst du ein bisschen Kohle und ich verlange weniger fr den Job. + + + Was? Ich arbeite immer noch daran. Verdammt, dieser Flugschreiber ist der reinste Alptraum... + + + Ich bin mit deinem Flugschreiber fertig... Das war wirklich eine Drecksarbeit... + + + Wie viel schulde ich dir? + + + Mindestens 3.000. + + + Hier. + + + So viel habe ich nicht. + + + Nun, ich kann dir einen Preisnachlass geben, wenn du mir die Komponenten bringst. + + + Gut, lass von dir hren. + + + Ist ja ein ganz schner Batzen... Ich werde darber nachdenken. + + + Ich gewhre dir einen Rabatt. Das macht dann nur 2.850. + + + Ich gewhre dir einen Rabatt. Das macht dann nur 2.700. + + + Ich gewhre dir einen Rabatt. Das macht dann nur 2.550. + + + Ich gewhre dir einen Rabatt. Das macht dann nur 2.400. + + + Ich gewhre dir einen Rabatt. Das macht dann nur 2.250. + + + Ich gewhre dir einen groen Rabatt. Das macht dann nur 2.100. + + + Ich gewhre dir einen groen Rabatt. Das macht dann nur 1.950. + + + Ich gewhre dir einen groen Rabatt. Das macht dann nur 1.800. + + + Dafr mache ich dir einen verdammt guten Preis. Nur 1.650. + + + Hey, ich hab zwar keine Ahnung, wozu du die Aufnahmen brauchst, aber bei den Kosten hoffe ich fr dich, dass es sich lohnt. + + + Wir werden sehen. + + + Ich sitze immer noch an dem Flugschreiber... Warum machst du dich nicht ntzlich und besorgst mir die Komponenten? + + + Senka? Als ich vor langer Zeit in Zaton war, hatte ich ihn eines Tages am Hals und seitdem ist er mit mir unterwegs... Er ist ein professioneller Trinker mit jahrelanger Berufserfahrung... hah! Ich kann ihn hin und wieder fr Besorgungen gebrauchen... + + + Wer knnte an Informationen ber den Grnder der Wchter interessiert sein? + + + Shulga natrlich... Die Wchter gedenken gerne ihrer Anfnge. Du weit doch: Solange man sich nicht mit der Geschichte auseinandersetzt, wiederholt sie sich... Am Wichtigsten ist es, dass die Freiheitler diese Informationen nicht in die Finger kriegen. Sie wrden nur alles verdrehen, so viel ist sicher. Nicht mit bsen Hintergedanken, sondern einfach, weil sie ein schlechtes Gedchtnis haben... + + + Ich habe Werkzeug fr dich. + + + Gut... und was davon ist fr mich? + + + Das einfache Werkzeug. + + + Groartig! Jetzt brauche ich nur noch Feinwerkzeug und Kalibrierungswerkzeug... + + + Das Feinwerkzeug. + + + Groartig! Jetzt brauche ich nur noch einfaches Werkzeug und Kalibrierungswerkzeug... + + + Das Kalibrierungswerkzeug. + + + Groartig! Jetzt brauche ich nur noch einfaches Werkzeug und Feinwerkzeug... + + + Im Moment nichts. + + + Cool! Werkzeug zur Kalibrierung und ich habe alles, was ich brauche. + + + Cool! Werkzeug fr feine Arbeiten und ich habe alles, was ich brauche. + + + Cool! Werkzeug fr einfache Arbeiten und ich habe alles, was ich brauche. + + + Wow! Wo zum Teufel hast du das her? + + + Falls du Werkzeug brauchst, kann ich mich darum kmmern. + + + Das wre 'ne feine Sache. Im Moment komme ich mir so vor, als wrde ich in der Steinzeit arbeiten - mit dem einzigen Unterschied, dass der Schamanenstab durch einen Ltkolben ersetzt wurde... Wenn ich gutes Werkzeug htte, knnte ich ein paar erstklassige technische Verbesserungen vornehmen. Und fr dich wrde dabei auch etwas herausspringen... + + + OK, ich versuche, Werkzeug aufzutreiben. + + + Ich habe meine Meinung gendert. + + + Gute Idee. Dann kann ich technische Verbesserungen vornehmen und du verdienst bares Geld... + + + Ich habe den PDA des Wchterhndlers. Kennst du jemanden, der Interesse daran haben knnte? + + + Ein Hndler bei den Wchtern? Im Ernst, gib Shulga den PDA und er wird sich mit der Sache befassen. Und kein Wort zu den Freiheitlern, hast du verstanden? Ein Arschloch wrde reichen, um den Ruf der ganzen Fraktion zu ruinieren... + + + Ich habe einige Dokumente gefunden. Darin wird beschrieben, wie man nach Pripyat gelangt. + + + Lass mich mal einen Blick darauf werfen... Ja, ja, ja... es gibt also eine Unterfhrung namens "Pripyat 1", die unterhalb der Stadt Pripyat verluft und unter anderem im Transportbereich der Jupiter-Anlage vor einem Aufzug endet. Beeindruckend! Laut den Notizen wurde die Unterfhrung versiegelt und mit Gas gefllt. Auerdem wurde die Stromversorgung unterbrochen. Ich knnte versuchen, den Generator wieder zum Laufen zu bringen und dadurch die Aufzugverriegelung zu ffnen. Allerdings... + + + ... Allerdings kann ich mich nicht ohne geeignete Schutzmanahmen in Jupiter aufhalten und ich rate dir, gar nicht erst daran zu denken, auf eigene Faust unter der Erde herumzuspazieren. Du brauchst wenigstens ein paar Leute an deiner Seite. Auerdem braucht ihr alle Schutzanzge mit geschlossenem Atemkreislauf, oder ihr werdet dort unten keine Minute berleben... Hr zu, Zulu lebt in einem Turm nicht weit von hier. Versuche, mit ihm zu reden. Falls ihr gut miteinander klarkommt, erklrt er dir vielleicht, wie man einen Trupp zusammenstellt. + + + Du hast Materialien erwhnt... + + + Richtig, es ist hier in der Gegend so gut wie unmglich, Materialien fr Funkgerte zu finden. Ich habe schon alles verwendet, was ich auftreiben konnte, und hier handelt niemand mit Materialien fr Funkgerte, weil man mit dem Verkauf von Waffen mehr Kohle machen kann... Aber ich habe gehrt, dass mglicherweise bei der Zementfabrik noch irgendetwas herumliegt... + + + Hier, ich habe die Materialien gefunden. Jeden Winkel der Zementfabrik habe ich abgegrast! + + + Wow, Bruder - ich bin beeindruckt! Ich mache mir gleich mal eine Notiz: Reparaturarbeiten und technische Verbesserungen fr meinen Lieblingsstalker ab jetzt kostenlos! + + + Ich habe einige der Materialien gefunden, die du haben wolltest. Hier. + + + Wow! Ab jetzt Rabatte ohne Ende fr dich, mein Freund! + + + Ich kann versuchen, die Materialien fr dich aufzutreiben. + + + Das wre groartig! Also falls du zum Beispiel Kolophonium und Kondensatoren findest, bringe die Sachen zu mir... Mann, ich wre dir sogar fr Textolit dankbar. Nen dicken Batzen Geld kann ich dir zwar nicht versprechen, aber auf jeden Fall einen Preisnachlass. + + + Fr was brauchst du all diese Sachen? + + + Nun ja, eigentlich hantiere ich mit Waffen und Ausrstung herum... von irgendetwas muss ich ja leben... Aber meine Leidenschaft ist Funkzubehr. Kennst du das Gefhl, wenn man an irgendetwas herumbastelt und es dann funktioniert? Ich wei noch, wie ich mal einen Strsender gebaut habe... war wirklich ein ntzliches Gert. Ich habe ihn eingeschaltet, als die Werbedurchsagen der 100 Rads Bar mir langsam auf die Eier gegangen sind. + + + Warum sollten gerade in der Zementfabrik Materialien fr Funkzubehr zu finden sein? + + + Zementfabrik ist nur der Name... Da wurde schon lange vor der Tschernobyl-Katastrophe kein Zement mehr hergestellt. Sie haben die Anlage umgebaut und dann angefangen, dort elektrische Gerte herzustellen. + + + Ich habe in Jupiter einige Dokumente gefunden. Magst du sie dir mal ansehen? + + + Hm... nichts Interessantes... nur verwaltungstechnischer Kram... + + + Hm... hier und da ist mal etwas Interessantes, aber alles ziemlich vage... Wir brauchen alle Informationen. Sieh dich mal an den Orten um, die in den Dokumenten erwhnt werden. + + + Ich brauche einfach Materialien, verdammt. So kann ich nicht arbeiten... Oh, hallo. Was gibt's? + + + Hallo! Geht es um etwas Technisches? Wie du siehst, habe ich keine Materialien, aber ich kann trotzdem Reparaturarbeiten oder kleinere Verbesserungen vornehmen. + + + Oh, hey. Hr zu. Wenn man bedenkt, dass all diese Materialien, die ich brauche, einfach so in der Zementfabrik herumliegen... alleine der Gedanke macht mich Wahnsinnig... + + + Hey! Ist da was zerbrochen oder hast du nen Haufen Mnzen fr eine technische Verbesserung zusammengekratzt? Vergiss nicht, dass du bei mir einen Preisnachlass auf Lebenszeit hast! + + + Hallo, Bruder! Wie kann ich dir helfen? Vergiss nicht, dass ich dir einen absolut guten Preis mache. + + + Kannst du ein Speichermodul hacken? + + + Ich denke ja... Allerdings habe ich es noch nie versucht, deswegen brauche ich mindestens drei Stunden. Ich wrde es aber gerne mal probieren... Dafr mache ich dir einen guten Preis - nur 1.000. + + + Ich kann warten, insofern abgemacht! + + + Gut! Dann mache ich mich mal an die Arbeit. Lass dir Zeit... Ich gebe dir Bescheid, wenn ich fertig bin. + + + So viel habe ich nicht. + + + Tja, dann komm spter wieder, falls du die Sache dann noch erledigt haben willst. Billiger kriegst du's auf jeden Fall nirgends. + + + Ich werde darber nachdenken. + + + Wie ich bereits gesagt habe, brauche ich dafr ungefhr drei Stunden. 1.000 ist ein guter Preis und an deiner Stelle wrde ich das Angebot annehmen. + + + Und, hast du das Speichermodul gehacked? + + + Nein, ich bin noch dabei... Keine Sorge, ich sag dir Bescheid, wenn ich soweit bin. + + + Was? Du hast das Modul nicht bekommen? Dann bist du wahrscheinlich Senka nicht ber den Weg gelaufen. Ich habe ihn in deine Richtung geschickt, damit er dir das Modul geben kann. Egal. Abgesehen von Messwerten fr die Schichtdicke des Bodens und die Vegetation waren darauf die Koordinaten von drei Funksendern gespeichert. Ich lade sie auf deinen PDA hoch... + + + Hast du versucht, die Chimren zu tten? + + + Die verwundete Chimre ist nach Zaton gelaufen. Gontas Trupp ist ihr auf den Fersen... Allerdings habe ich gehrt, dass ihnen ein erfahrener Jger fehlt. Wenn du ihnen hilfst, sorge ich dafr, dass es die Mhe wert war... Die andere Chimre, die Fox auf dem Gewissen hat... tja, also sie ist mir entwischt. Als htte sie sich pltzlich in Luft aufgelst... Der arme Fox... er war ein guter Mann, aber das Alter hat wohl seinen Tribut gefordert... + + + Um die verwundete Chimre hast du dich ja gekmmert... Die andere, die Fox auf dem Gewissen hat... tja, also sie ist mir entwischt. Als htte sie sich pltzlich in Luft aufgelst... Der arme Fox... er war ein guter Mann, aber das Alter hat wohl seinen Tribut gefordert... + + + Was machst du? + + + Nun, ich bin Trapper und bis vor kurzem habe ich Jagd auf Mutanten gemacht, die fr die Stalker eine ernsthafte Bedrohung waren... Aber jetzt nehme ich Auftrge entgegen und gebe sie an jngere Jger weiter. Ich bilde sie aus und lehre sie dabei Jagdtaktiken... + + + Erzhle mir etwas ber das Jagen von Mutanten... + + + Jeder Mutant erfordert eine andere Vorgehensweise... Burer und Poltergeister erledigt man auf die eine Art, Pseudogiganten und Controller auf die andere... und Chimren sind ein Thema fr sich. + + + Erzhle mir etwas ber Burer. + + + Burer machen sich bei ihren Angriffen die Gravitation zunutze... Aus nchster Nhe werfen sie dich und aus groer Entfernung werfen sie etwas AUF dich. Am besten fhrst du damit, wenn du sie auf mittlerer Distanz halten kannst und in Bewegung bleibst - auer es bereitet dir Freude, einen schweren Gegenstand ins Gesicht zu kriegen... Aber achte darauf, dass du bei Krften bleibst! Burer knnen gezielt Gravitationsimpulse nutzen, um dir die Waffe aus der Hand zu reien. Wenn du erschpft bist, kann das wirklich funktionieren. + + + Erzhle mir etwas ber Poltergeister. + + + Es gibt zwei Arten von Poltergeistern. Die einen knnen mithilfe der Gravitation Gegenstnde auf den Gegner schleudern, die anderen knnen Flammen manifestieren und damit ihre Opfer verbrennen. Unerfahrene Jger springen oft wie wild um die Poltergeister herum, um ihren Angriffen auszuweichen... Die ganze Kunst besteht jedoch darin, sich die Tatsache zunutze zu machen, dass Poltergeister nicht in dem Sinne sehen oder hren, wie wir es tun. Sie nehmen auf eine gewisse Weise diejenigen Lebewesen wahr, die sich im Gravitationsfeld bewegen... Aus diesem Grund rhrt sich ein erfahrener Jger nicht vom Fleck, sobald er einen Poltergeist sieht. Dann schiet er und bleibt sofort wieder wie angewurzelt stehen usw. + + + Erzhle mir etwas ber Controller. + + + Sie setzen dein eigenes Gehirn gegen dich ein. Bei der Jagd auf Controller ist es wichtig, einen Sichtschutz zu benutzen, weil Controller nur dein Gehirn manipulieren knnen, wenn sie dich sehen... Auerdem sind sie ziemlich langsam, weswegen du Granaten einsetzen solltest, falls dein Leben auf dem Spiel steht. + + + Erzhle mir etwas ber Chimren. + + + Das sind sehr gefhrliche Raubtiere, die in der Nacht ihr Unwesen treiben. Im Schutze der Dunkelheit versuchen sie, sich an dich heranzuschleichen und dann auf dich zu strzen. Wenn du weit, dass eine Chimre in der Nhe ist, dreh dich immer wieder um und gib deinen Kameraden Deckung... + + + Erzhle mir etwas ber Pseudogiganten. + + + Das Schwierigste bei der Jagd auf Pseudogiganten ist es, sie zu tten. Sie knnen unglaublich viel einstecken, ohne mit der Wimper zu zucken... Ich kann dir nur raten, es mit einer Schrotflinte aus kurzer Distanz zu versuchen. Denke aber daran, dass bei Angriffen von Pseudogiganten alles in Mitleidenschaft gezogen werden kann, was nicht niet- und nagelfest ist. Greife das Biest von oben an... und achte darauf, dass der Untergrund, auf dem du stehst, stabil ist. + + + Ach, schon gut. + + + Warum jagst du nicht mehr? + + + Ich bin nicht mehr der Jngste, Mann. Das ist auch der Grund, warum Fox draufgegangen ist... Er war mein Partner und Freund. Wir haben zusammen Jagd auf viele Bestien gemacht, Seite an Seite... bis zu dem Tag, als wir in Zaton auf diese zwei Chimren gestoen sind, die in der Zone seit achtzehn Monaten niemand mehr zu Gesicht bekommen hat... Eines dieser Biester hat Fox auf den Boden gestoen, bevor ich berhaupt meine Schrotflinte rausholen konnte. Als ich die andere Chimre angeschossen habe, haben sie das Weite gesucht... Sie sollen fr immer in der Hlle schmoren! + + + Wer knnte Sachen aus einer persnlichen Kiste gestohlen haben? + + + Hm... keine Ahnung. So was gibt's bei den Jgern nicht. Wenn man seine Kameraden gegen sich aufbringt und irgendwann einen Blutsauger an der Backe hat, knnte es sonst unter Umstnden passieren, dass sie ihre Munition nicht vergeuden wollen... + + + Ungewhnliche Zeiten erfordern ungewhnliche Mittel... Bei allem was ich ber Blutsauger wei, wrde ich denken, dass ein paar von ihnen auf Beutezug waren... Aber da sie jetzt keinen Unterschlupf mehr haben, in den sie zurckkehren knnten, stellen sie fr die Stalker keine Gefahr mehr dar. + + + Hast du sonst noch etwas fr mich zu tun? + + + Sicher. Ein Stalkertrupp ist neulich in die Tunnel nrdlich der Anlage gegangen und dort auf ein Mutantenlager gestoen. Sie waren alle so verngstigt, dass keiner von ihnen berhaupt beschreiben kann, was fr Mutanten das waren. Zwei von den Stalkern haben es nicht mehr nach drauen geschafft. Den Leuten in der Janow-Station macht dieser Vorfall wirklich Angst. Deswegen haben sie zusammengelegt und eine Belohnung von 5.000 fr denjenigen ausgesetzt, der sich um dieses Mutantenlager kmmert. Das ist nicht ungefhrlich, deswegen solltest du dir das gut berlegen... Wre das was fr dich? + + + Ich kmmere mich darum. + + + Du bist mutig... Viel Glck. Du wirst es brauchen. + + + Im Moment nicht. + + + Das kann ich dir nicht verbeln... Ich bezweifle, dass irgendjemand den Mumm dazu hat, ein ganzes Mutantenlager auseinander zu nehmen. + + + Wie gesagt, unbekannte Mutanten in den Tunneln nrdlich der Jupiter-Anlage. Dir wrden 5.000 als Belohnung winken... Willst du's doch versuchen? + + + Im Moment machen sich die Stalker groe Sorgen wegen der Mutanten in den Tunneln... + + + Die Mutanten in den Tunneln waren mutierte Zwerge. Jetzt sind es tote mutierte Zwerge. + + + Ich schtze, das waren Burer. Das erklrt, warum die Leute in der Janow-Station wegen der ganzen Sache so besorgt waren... Nun, jetzt da sie tot sind, gehrt die Belohnung dir! + + + Ich schtze, das waren Burer, die auch neulich zwei Stalker gettet haben. Das erklrt, warum die Leute in der Janow-Station fr die Eliminierung dieser Monster eine Belohnung ausgesetzt haben. Nun, jetzt da sie tot sind, gehrt die Belohnung dir! + + + Ich bin soweit und kann mich um die Chimre kmmern. + + + Gut. Es wurde gerade dunkel, als der Jger dieses Biest gesehen hat. Die Chimre war unterwegs in Richtung Belftungsanlage. Chimren sind nachtaktive Revierjger, deswegen ist sie wahrscheinlich gerade unterwegs in ihr Jagdrevier gewesen... Ich denke, dort solltest du in der Abenddmmerung nach ihr suchen. Andererseits ist sie zu dieser Zeit natrlich aufmerksamer und aktiver... Sei vorsichtig und Waidmanns Heil! + + + Die Chimre ist tot. + + + Danke... danke! Du hast Fox gercht und jetzt kann er in Frieden ruhen. Hier ist dein Geld - das hast du dir verdient. Ach, da ist noch etwas. Hier, nimm meine Schrotflinte. Du hast mir dafr etwas viel Wichtigeres gegeben - etwas Frieden... + + + Ich bin Trapper... Du musst dich nicht vorstellen. + + + Was fhrt dich hierher? + + + Danke, dass du gekommen bist... Ich brauche einen zuverlssigen und erfahrenen Jger und du bist das Beste, was die Janow-Station zu bieten hat. Nach allem, was passiert ist, darf mir die Chimre nicht noch einmal entwischen... Ich investiere in die Sache meine gesamten Ersparnisse, und zwar 10.000. Ich will sichergehen, dass das auch wirklich richtig durchgezogen wird... Fox muss gercht werden! + + + Ich bitte dich instndig darum, die Chimre zu erledigen. Falls es dir egal ist, ob die Janow-Station diesen mutierten Killer los wird oder nicht, tu es wenigstens fr das Geld... 10.000 ist 'ne Menge Knete. + + + Wie sieht's aus mit der Chimre? Die Zeit drngt, das Biest knnte sich jederzeit ein neues Jagdrevier suchen. + + + Schn, dich zu sehen! Was gibt's Neues? + + + Hast du sonst noch etwas fr mich zu tun? + + + Natrlich... In Fen wurde eine Gruppe Sumpfblutsauger gesehen, hinter der Zementfabrik. Sie scheinen sich erstmal wieder in ihre Smpfe zurckgezogen zu haben, aber Stalker vor Ort wollen sichergehen, dass sie dort fr immer bleiben - wenn du verstehst, was ich meine. Dir winken 3.000, wenn du die ganze Gruppe erledigst. Interesse? + + + Ja, ich mach's. + + + Gut. Viel Erfolg bei der Jagd... + + + Jetzt nicht. + + + Wie du willst... Du hast noch Zeit, es dir anders zu berlegen, bevor sich andere Jger um die Sache kmmern. + + + Wie gesagt... Es geht um die Gruppe Sumpfblutsauger in Fen, hinter der Zementfabrik. 3.000 wre die Belohnung... Bist du dabei? + + + Im Moment nicht, abgesehen von der Sache mit den Sumpfblutsaugern in Fen... + + + Ich habe die Sumpfblutsauger gettet. + + + Jetzt kehrt fr die Stalker wieder ein bisschen Ruhe ein. Hier wie vereinbart dein Geld. + + + Ja, die Stalker dieser Gegend werden froh sein, dass sie ihre unliebsamen Nachbarn los sind. Sie haben sogar fr eine Belohnung zusammengelegt, genau genommen 3.000... Hier. + + + Gonta und ich haben die Chimre in Zaton gettet. + + + Danke. Je weniger von diesen Bestien hier ihr Unwesen treiben, desto besser fr uns alle. Wenn du dich jetzt noch um das andere Viech kmmern knntest... + + + Danke, dass du dich auch um das zweite Biest gekmmert hast. Es ist gut zu wissen, dass diese Chimren keinen Stalker mehr ins Jenseits befrdern werden... + + + Sag mir, wie du den Controller gettet hast. + + + Hr aufmerksam zu und lerne, mein Freund... Ich war unterwegs zu meinem Versteck, um meine Beute zu holen. Als ich dort angekommen bin, habe ich gesehen, wie es sich ein Controller oben auf dem Versteck gemtlich gemacht hat. Also habe ich mir ein herumliegendes Metallgitter geschnappt und mich damit abgeschirmt, whrend ich mich langsam dem Controller genhert habe. Bis er kapiert hat, was hier eigentlich los ist, hat er schon ein halbes Magazin in seinem Schdel gehabt. Gerade als er versuchen wollte, mich zu manipulieren, habe ich mit meinem Gewehrkolben ausgeholt und ihm den Todessto versetzt. Das war's. + + + Erzhle mir von den Artefakten im Steinbruch. + + + Pah, da gibt es nicht viel zu erzhlen, weil es dort mittlerweile nichts mehr zu holen gibt. Es macht keinen Sinn, in Anomalien auf Schatzsuche zu gehen, wenn Flint schon dort war. Das wei doch jeder. + + + Also bist du derjenige, der seinen Kameraden im Steinbruch verrecken lassen hat! + + + Was?! + + + Das musst du erstmal beweisen. Du laberst doch nur Mll... Dein Wort gegen das eines Mitglieds der Freiheit - na dann viel Glck. + + + Wir werden sehen. + + + Nichts. + + + Danke, tschss. + + + Erzhle mir von den Blutsaugern in Zaton. + + + Als ich in Zaton war, haben Blutsauger den Stalkern wirklich das Leben schwer gemacht. Sie haben sie Tag und Nacht gejagt, aber das hat berhaupt nichts gebracht. Ich habe beschlossen, ihnen zu helfen, also habe ich mir meine Schrotflinte geschnappt und bin direkt in das Lager der Blutsauger marschiert. Nachdem ich mich also eine Zeit lang mit den Biestern beschftigt hatte, war das Blutsaugerproblem in Zaton Geschichte. + + + Du weit wahrscheinlich nicht einmal, wo dieses Lager ist. + + + Verschwinde. + + + Was willst du? Langweile jemand anderen mit deinem Schwachsinn! + + + Mach 'nen Abgang, Kumpel... Dein Wort gegen das eines Mitglieds der Freiheit - na dann viel Glck. + + + Wir werden sehen. + + + Danke, tschss. + + + Erzhle mir von der Abkrzung nach Jupiter. + + + Tja, also der Ortskundige hat von Zaton nach Jupiter immer einen ganz schnen Umweg gemacht. Ich hingegen dachte mir: "Warum so umstndlich?"... Also habe ich mir die Gegend genauer angesehen und konnte dann ziemlich schnell einen Weg durch die Anomalien finden. Diese Information habe ich an den Ortskundigen verkauft und jetzt bringt er jeden auf dieser Route dorthin. + + + Wie wre es, wenn wir Pilot fragen, wer ihm die Karten besorgt hat? + + + Verschwinde. + + + Was willst du? Langweile jemand anderen mit deinem Schwachsinn! + + + Du kannst mir berhaupt nichts nachweisen. Dein Wort gegen das eines Mitglieds der Freiheit - na dann viel Glck. + + + Wir werden sehen. + + + Danke, tschss. + + + Erzhle mir von deinem Abstecher zur Oase. + + + Ich war der erste, der jemals die Oase betreten hat. Keine Mutanten und Anomalien weit und breit, nur Ruhe und Frieden. Auerdem findet man dort jede Menge Artefakte. Man bedient sich und dann geht's wieder ab nach Hause. + + + Vlliger Quatsch. Ich war in der Oase und kann das alles nicht besttigen. + + + Verschwinde. + + + Was willst du? Langweile jemand anderen mit deinem Schwachsinn! + + + Leck mich doch. Dein Wort gegen das eines Mitglieds der Freiheit - na dann viel Glck. + + + Wir werden sehen. + + + Danke, tschss. + + + Erzhle mir von deiner Zusammenarbeit mit den Wissenschaftlern. + + + Ich war neulich in ihrem Bunker. Sie haben sich ber meinen Besuch gefreut und gesagt: "Genau so einen wie dich brauchen wir jetzt, Flint!". Es stellte sich heraus, dass sie jemanden gesucht hatten, der ihre Gerte in der Nhe von Anomalien aufstellt. Ich habe gesagt: "Ist doch berhaupt kein Problem" und dann ohne groe Mhen das gemacht, was sie von mir wollten. Schwierig wurde es erst, als ich von diesen Freaks mein wohlverdientes Geld haben wollte. + + + Hr auf, dich auf den Lorbeeren anderer Leute auszuruhen. Ich war das, nicht du! + + + Verschwinde. + + + Was willst du? Langweile jemand anderen mit deinem Schwachsinn! + + + Lgen... Du hast keine Beweise. Dein Wort gegen das eines Mitglieds der Freiheit - na dann viel Glck. + + + Wir werden sehen. + + + Danke, tschss. + + + Hey. Willst du auch hren, was ich alles zu erzhlen habe? + + + Willst du etwas fragen? + + + Was willst du? + + + Kumpel... verdammt... ich sterbe... + + + Nimm dieses Medkit. + + + Danke, mein Freund... aber das wird nichts ntzen... Hr zu... Ich war mit einem Mitglied der Freiheit hier, wir haben ein Artefakt gefunden. Auf dem Weg zurck bin ich in eine Gasanomalie geraten. Wenn er mir geholfen htte, wrde ich jetzt vielleicht durchkommen, aber... Er hat sich das Artefakt gekrallt und mich hier zurckgelassen. Er hat behauptet, dass er Hilfe holen wird... Finde ihn. Die Leute sollen wissen, dass man ihm nicht ber den Weg trauen kann... + + + Ich werde ihn finden. + + + Ich bezweifle, dass ich irgendetwas beweisen kann. + + + Sttz dich auf meiner Schulter ab, wir bringen dich zu einem Arzt. + + + Dumm gelaufen. Tschss. + + + Ich habe etwas fr dich... + + + Einen Fleischklumpen. Hier, nimm. + + + Danke. Die Wissenschaftler bezahlen gut, aber mir geht es eher um die Genehmigung. + + + Wow, vielen Dank, Kumpel! Jetzt kann ich endlich nach Pripyat aufbrechen - ich muss mir nur noch einfallen lassen, wie ich dorthin komme. + + + Einen Klo. Hier, nimm. + + + Danke. Die Wissenschaftler bezahlen gut, aber mir geht es eher um die Genehmigung. + + + Wow, vielen Dank, Kumpel! Jetzt kann ich endlich nach Pripyat aufbrechen - ich muss mir nur noch einfallen lassen, wie ich dorthin komme. + + + Einen Fleischklumpen und einen Klo. Hier, nimm. + + + Wow, vielen Dank, Kumpel! Jetzt kann ich endlich nach Pripyat aufbrechen - ich muss mir nur noch einfallen lassen, wie ich dorthin komme. + + + Keins. + + + Ist es hier langweilig? + + + Du hast einen Vertrag erwhnt... + + + Ja, ich habe mich dazu bereit erklrt, fr die Wissenschaftler zu arbeiten, weil ich dachte, dass das ein Kinderspiel wird. Allerdings habe ich bersehen, dass die Vertragslaufzeit erst endet, wenn alle Arbeiten erledigt sind. Die Wissenschaftler haben versprochen, mir danach eine offizielle Genehmigung fr den Aufenthalt in der Zone zu geben. + + + Ich habe jede verdammte Klausel dieses Vertrags erfllt, auer einer Kleinigkeit. Ich muss alle chemischen Artefakte finden, die es gibt. Woher htte ich denn wissen sollen, dass man hier in der Gegend keine Fleischklumpen und Kle findet? Htte ich diese zwei Artefakte gefunden, wre ich schon lngst unterwegs nach Pripyat. Aber war wohl nix! + + + Vielleicht kann ich dir mit diesen Artefakten helfen. + + + Das ist wirklich tragisch. + + + Ja... ein Fleischklumpen und ein Klo und ich bin unterwegs nach Pripyat! + + + Was ist so auergewhnlich an Pripyat? + + + Niemand wei, wie man dort hingelangt... Schlielich sind wir in der Zone, und man kann da nicht so einfach auf direktem Wege hingehen. Man sagt, dass Pripyat die reinste Fundgrube ist, was Artefakte betrifft... Wie auch immer, bei all den verschiedenen Gerchten, die ber Pripyat kursieren, bin ich schlicht und einfach neugierig. + + + Ich stelle einen Trupp zusammen und breche dann auf nach Pripyat. Willst du dich uns anschlieen? + + + Eigentlich bin ich am berlegen, ob ich nicht alleine versuchen soll, dorthin zu gelangen... auch wenn ich dann auf mich gestellt wre. Nimm's nicht persnlich, ich bin halt eher ein Einzelgnger... + + + Hah, ich will mich auch bald nach Pripyat aufmachen... allerdings alleine. Nimm's nicht persnlich, ich bin halt eher ein Einzelgnger... + + + Willkommen im Reich der Langeweile. + + + Mann, ich will unbedingt nach Pripyat! + + + Ich muss nur wissen, wie man nach Pripyat gelangt, dann bin ich ruckzuck dort. + + + Hier ist's OK! So muss das Leben sein! + + + Natrlich ist es gut, sich sicher zu fhlen. Aber wenn es doch nicht so langweilig wre! + + + Vielleicht kann ich dir mit diesen Artefakten helfen. + + + Weit du wirklich, wie man nach Pripyat gelangt? + + + Nein. Aber wenn es da wirklich von Artefakten nur so wimmelt, wie die Leute sagen, bin ich sofort bereit, es herauszufinden. Ich meine, einen Pionier wie mich gibt es nur einmal auf der Welt - schlielich war ich einer der ersten, die einen Weg nach Jupiter gefunden haben. Allerdings bin ich ein Einzelgnger - ich habe keine Zeit, auf jemanden aufzupassen. + + + Bringst du mich nach Jupiter? + + + Klar. Knnen wir los? + + + Ja. + + + Noch nicht. + + + Nicht whrend einer Emission. + + + Bringst du mich nach Pripyat? + + + Fr 5.000 wrde ich es versuchen. Mir gefllt es dort! + + + Abgemacht. + + + Nein, danke. + + + OK, deine Entscheidung. + + + Ich glaube, ich habe nicht genug Geld. + + + Fr 5.000 wrde ich es versuchen... Aber lass uns warten, bis die Emission vorbei ist. + + + Kannst du mich nach Zaton bringen? + + + Ne, Mann - ist dort einfach zu langweilig. Da ist Pilot. Er ist genau der Richtige, wenn es um ungefhrliche, aber dafr langweilige Jobs geht. + + + Nun, ich kann dich zur Janow-Station fhren und fr 3.000 Pilot engagieren, damit er dich nach Zaton bringt. Was sagst du? + + + Abgemacht. + + + Nein. + + + Wie du meinst. + + + Ich habe nicht genug Geld. + + + Nun, ich kann dich zur Janow-Station fhren und fr 1.000 Pilot engagieren, damit er dich nach Zaton bringt. Was sagst du? + + + Ne, Mann - ist dort einfach zu langweilig. Da ist Pilot. Er ist genau der Richtige, wenn es um ungefhrliche, aber dafr langweilige Jobs geht. Frag ihn nach der Emission. + + + Nun, ich kann dich zur Janow-Station fhren und fr 3.000 Pilot engagieren, damit er dich nach Zaton bringt... natrlich erst, wenn die Emission vorbei ist. + + + Nun, ich kann dich zur Janow-Station fhren und fr 1.000 Pilot engagieren, damit er dich nach Zaton bringt... natrlich erst, wenn die Emission vorbei ist. + + + Man sagt, du hast es durch die Tunnel geschafft? Ich komme auch aus Jupiter... habe einen unterirdischen Durchgang gefunden. Wenn du willst, kann ich dich umsonst dorthin zurckbringen... Weit du, ich bin froh, wenn ich den Obrigkeiten irgendwie behilflich sein kann. + + + Lange nicht mehr gesehen! Man sagt, du hast es durch die Tunnel geschafft? Ich habe einen unterirdischen Durchgang gefunden. Wenn du willst, kann ich dich umsonst zurckbringen... Weit du, ich bin froh, wenn ich den Obrigkeiten irgendwie behilflich sein kann. + + + Lange nicht mehr gesehen! Man sagt, du hast es durch die Tunnel geschafft? Du wirst es nicht glauben, aber ich bin aus meinem Vertrag rausgekommen und habe trotzdem die Genehmigung gekriegt... Ich bin danach sofort hierher gekommen und habe einen unterirdischen Durchgang gefunden. Wenn du willst, kann ich dich umsonst zurckbringen... Weit du, ich bin froh, wenn ich den Obrigkeiten irgendwie behilflich sein kann. + + + Lange nicht mehr gesehen! Man sagt, du hast es durch die Tunnel geschafft? Ich habe einen unterirdischen Durchgang gefunden. Wenn du willst, kann ich dich umsonst zurckbringen... Weit du, ich bin froh, wenn ich den Obrigkeiten irgendwie behilflich sein kann. Danke brigens, dass du mir dabei geholfen hast, den Vertrag mit den Wissenschaftlern zu erfllen... Ich habe mich hier ein wenig umgesehen und das hier gefunden - du kannst das sicher gebrauchen. + + + Topol, warum bewachst du nicht den Bunker der Wissenschaftler? + + + Wir wurden angeheuert, um Messungen vorzunehmen und Proben zu sammeln. Wir sind quasi selbst fast schon Wissenschaftler. Und obwohl ich gegen den Job an sich nichts habe, bin ich mir nicht sicher, ob ich gegen die neuen Feinde der Wissenschaftler etwas ausrichten kann. Ich hab keine Lust, von den Sldnern eine Kugel in den Kopf zu kriegen. + + + Du bist am falschen Ort, Kumpel! Und du solltest besser verschwinden, bevor es auch noch die falsche Zeit ist. + + + Suchst du Streit oder was? Verschwinde von hier, bevor du fndig wirst! + + + Mach dich vom Acker, Kumpel. Hr auf mich, dann kriegst du keinen Stress. + + + Was habt ihr jetzt vor? + + + Wir brechen bald zur Janow-Station auf. Du kannst gerne mitkommen. + + + Ja, das liegt auf dem Weg. Ich schliee mich euch an. + + + Nein, ist nicht die gleiche Richtung, in die ich will. + + + Gut, dass du sie zu uns gebracht hast. Auf sich gestellt htten die es nicht lange gemacht. + + + Danke, dass du das mit den Wchtern klargemacht hast. + + + Was habt ihr jetzt vor? + + + Wir brechen bald zur Janow-Station auf. Du kannst gerne mitkommen. + + + Ja, das liegt auf dem Weg. Ich schliee mich euch an. + + + Nein, ist nicht die gleiche Richtung, in die ich will. + + + Das war die richtige Entscheidung, Mann. Du hast diesen Typen geholfen und uns Verstrkung gebracht. Respekt. + + + Danke, dass du das mit den Freiheitlern klargemacht hast. + + + Hast du eine Idee, wer Sachen aus einer persnlichen Kiste gestohlen haben knnte? + + + Keine Ahnung. Hier tummeln sich alle mglichen Leute... Frag doch mal Knochenmann, er kennt hier fast jeden... + + + Auf zu Zulu. + + + OK. Ich hoffe, er schiet nicht, wenn er meine alte Panzerung sieht! Wir mssen sie unterwegs noch holen... und die Panzerung zurckbringen, die ich gerade trage. + + + Gehen wir. + + + Emissionen sind nicht gesund... Wir sollten ein bisschen warten. + + + Was ist passiert? + + + Tja... wir wissen nicht, wie wir hierher gekommen sind. Ich erinnere mich nur noch daran, dass wir ein Monolithertrupp waren und unbedingt das Zentrum der Zone erreichen wollten. Dort ist der Monolith - ein Meteor, der neue Lebensformen von anderen Planeten auf die Erde gebracht hat... Ich wei noch, wie wir zusammen das Atomkraftwerk Tschernobyl erreicht haben, aber dann erinnere ich mich nur noch bruchstckhaft. Da war ein helles Licht... kosmisch kalt und... eine deutliche Stimme... Es war alles so wunderschn. Allerdings wei ich nicht mehr, was diese Stimme mir befohlen hat. Mehrere Jahre meines Lebens... einfach weg. Bei den Jungs genau dasselbe... Und jetzt wissen wir nicht wohin. Auf jeden Fall brauchen wir einen Unterschlupf, damit wir uns vor Emissionen schtzen knnen... und vor Mutanten. Wsstest du einen sicheren Ort fr uns? + + + Nicht weit von hier haben die Stalker ein Lager, ich kann es euch auf der Karte zeigen. + + + Ich wei nicht, ob wir dort sicher wren... Auf dem Weg zum Atomkraftwerk Tschernobyl waren die Leute sehr misstrauisch... Ich glaube, wir haben spter sogar Stalker gettet. Weit du, wie man mit unserer Fraktion derzeit umspringt? Wahrscheinlich schieen sie gleich... Kannst du uns helfen? Du knntest allen im Lager der Stalker sagen, dass wir keine angriffslustigen Spinner mehr sind. Kannst du mit ihnen reden und dafr sorgen, dass sie uns aufnehmen? + + + Kein Problem. Ich rede mit ihnen, sobald ich das nchste Mal im Lager bin. + + + Tut mir leid, ich kann euch leider nicht helfen. + + + Wie genau kann ich euch helfen? + + + Wir brauchen einen Unterschlupf, damit wir uns vor Emissionen schtzen knnen... und vor Mutanten. Kannst du uns dabei helfen, einen sicheren Ort fr uns zu finden? + + + OK. Ich frage mal die Jungs in der Janow-Station. + + + Tut mir leid, ich kann euch leider nicht helfen. + + + Du brauchst einen Schutzanzug mit geschlossenem Atemkreislauf, wenn du nach Pripyat willst. + + + Kein Problem - ich habe noch meine Monolith-Panzerung und die ist genau damit ausgestattet. Das Problem ist nur, dass ich mich damit nicht in der Janow-Station blicken lassen sollte. + + + Ich stelle einen Trupp zusammen und breche dann auf nach Pripyat. Willst du dich uns anschlieen? + + + Wrde ich gerne... ich meine, es wrde mich brennend interessieren, was dort mit uns passiert ist. Aber ich kann jetzt meine Jungs nicht hier zurcklassen - sie wrden nicht mitkommen. Haben schon genug durchgemacht. + + + Ja, ich komme mit. Ich will unbedingt wissen, was mit uns passiert ist. Hoffentlich finde ich in Pripyat die Antwort auf diese Frage. Ich muss nur Loki Bescheid sagen, aber denke nicht, dass er etwas dagegen hat. + + + Ja, ich komme mit. Ich will unbedingt wissen, was mit uns passiert ist. Hoffentlich finde ich in Pripyat die Antwort auf diese Frage. Ich muss nur Shulga Bescheid sagen, aber denke nicht, dass er etwas dagegen hat. + + + Bereit zum Abmarsch? + + + Bereit. + + + Hallo, Stalker. Kannst du uns helfen? + + + Hallo. Hast du herausfinden knnen, ob wir ins Lager der Stalker gehen knnen? + + + Nein, ich bin noch dabei... + + + Beeil dich. Wer wei, was einem hier alles zustoen knnte. + + + Hallo. Danke fr deine Hilfe. + + + Hallo. + + + Wie geht's? + + + Alles in Ordnung mit dem Trupp, aber ich wrde wirklich gerne wissen, was mit uns geschehen ist. + + + Was machen die Sldner hier? + + + Darber sollten Sie mit Hermann sprechen. Er kmmert sich um die verwaltungstechnischen Dinge im Labor. Soweit ich wei, haben die Sldner mit Hermann eine bereinkunft bezglich der Bewachung unseres Labors getroffen. Genaueres wei ich allerdings auch nicht. Ich mchte jedoch erwhnen, dass sie sich bei zahlreichen Gelegenheiten als zuverlssige Kmpfer erwiesen haben. + + + Was machen Sie hier? + + + Das war eine rhetorische Frage, nicht wahr? Wir sind hier mit Forschungen beschftigt. Wollen Sie etwas Bestimmtes wissen? + + + Was genau erforschen Sie? + + + Wir haben nichts Bestimmtes im Sinn. Wir sind sozusagen wissenschaftliche Spher. Unser Ziel ist es, Zusammenhnge zwischen bestimmten Phnomenen zu erkennen, Theorien abzuleiten und diese dann zu belegen oder zu verwerfen. Wir sind uns darber im Klaren, dass einige unserer Theorien keinen praktischen Nutzen haben. + + + Was wissen Sie ber die Zone? + + + Da kann ich zu diesem Zeitpunkt nur mutmaen... Ich glaube, dass die Zone unter dem Einfluss einer unbekannten Kraft entstanden ist. Elektromagnetische Felder, normale physikalische Gesetzmigkeiten oder Strahlungseinflsse knnen nicht dazu gefhrt haben, dass sich die Biosphre so schnell verndert hat. Offensichtlich lassen sich einige Mutationen mit Strahlung erklren... aber Entschuldigung! Unter normalen Bedingungen wrde es hunderte, wenn nicht gar tausende Jahre dauern, bis ein Schwein zu Fleisch mutiert! Aber in der Zone kam es schon nach wenigen Jahren zu derartigen Mutationen. Es scheint fast so, als htte jemand direkt auf den genetischen Code einzelner Tiere eingewirkt. Allein bei dem Gedanken luft es mir schon kalt den Rcken runter. + + + Wie lange sind Sie schon in der Zone? + + + Nicht lnger als eine Woche. Es war ziemlich mhsam, den ganzen brokratischen Mist zu erledigen und diese Expedition zu organisieren. Wrden wir nicht fr Hermann arbeiten, wrden wir vielleicht immer noch an der Grenze zur Zone warten, whrend Stalker sich im Inneren der Zone nach Lust und Laune bedienen. + + + Das war alles, was ich wissen wollte. + + + Oserski, warum hat Hermann mich angeheuert, um den Trupp whrend der Messungen zu beschtzen? + + + Das ist auf meinen Mist gewachsen. Er hat darin keinen Nutzen gesehen, aber ich konnte ihn berzeugen. Meine Forschungen haben ergeben, dass der Einsatz unserer hochfrequenten Gerte in Anomaliefeldern bei mutierten Lebewesen in der Nhe zu einem erhhten Aggressionspotenzial und einer gesteigerten Aktivitt fhrt. In einfachen Worten: Sie machen sich auf die Suche nach Beute. + + + Oserski, ich habe Neuigkeiten. + + + Ja? Ich hre. + + + Sie hatten Recht. Die Mutanten haben uns keine Ruhe gelassen, als wir die Messungen vorgenommen haben. Aber als wir die Gerte ausgeschaltet haben, hat sich die Lage beruhigt. + + + Was?! Wenn... wenn sich meine Hypothese als richtig herausstellt, ist es wahrscheinlich, dass mutierte Tiere, die die Fhigkeit erlangt haben, auf Informationsfelder zurckzugreifen, mithilfe von Telepathie Signale von auerhalb empfangen knnen... knstlich erzeugte Signale... Das wrde bedeuten, dass die unnatrliche hnlichkeit der auftretenden Mutationen und diese typischen Vernderungen der Zellstruktur... kein Zufall sind... + + + Knnten Sie etwas konkreter werden? Und sich eventuell etwas klarer ausdrcken? + + + Nein! Das sind alles nur persnliche Vermutungen. Oh, wie unhflich von mir! Vielen Dank, dass Sie uns bei unseren Forschungen geholfen haben. + + + Was kann ich tun, damit Sie mit Hermann ber einen Schutzanzug reden? + + + In einem Gebiet am Rand des Steinbruchs wurde eine bis dato unbekannte Pflanzenanomalie entdeckt. Ich htte gerne eine Probe dieser Pflanze, aber die Stalker weigern sich, auch nur in die Nhe dieses Ortes zu gehen. Wenn ich eine dieser Pflanzen htte, knnte ich Hermann davon berzeugen, Sie mit einem brig gebliebenen Schutzanzug zu belohnen. + + + Ich werde diese Pflanze fr Sie finden. + + + Gut. Ich habe die Koordinaten der Anomalie auf Ihren PDA geladen. + + + Vielleicht ein andermal. + + + Kommen Sie vorbei, falls Sie Ihre Meinung gendert haben. + + + Hier, ich habe die Pflanze, die Sie wollten. Wie sieht es nun mit dem Schutzanzug aus? + + + Groartig. Hah, Sokolow ist herausgerutscht, dass der Schutzanzug eigentlich fr ihn ist. Aber egal. Ich zeige Hermann die Pflanze und er wird bestimmt trotzdem schnell mit dem Schutzanzug rausrcken. Sagen Sie Sokolow, dass er kommen und ihn holen soll. + + + Ich kann versuchen, neue Wachen fr Sie zu finden. + + + Das wre wirklich nett. Bitte sprechen Sie mit Hermann darber. Diese Angelegenheit fllt in seinen Zustndigkeitsbereich. + + + Ich wrde gerne meine Resistenz gegen Psi-Felder berprfen lassen. + + + Hah, hat Hermann Sie zu mir geschickt? Gut, ich versuche, Ihnen das so einfach wie mglich zu erklren. Um Ihre Resistenz gegen Psi-Emissionen anstndig analysieren zu knnen, bruchte ich ein ganzes wissenschaftliches Institut und msste jahrelang forschen. Ich habe lediglich eine Feldausrstung mit einigen schmutzigen Reagenzglsern. + + + Also ist es unmglich? + + + Nicht so schnell. Es muss ja keine vollstndige Analyse sein. Fr unsere Zwecke mssen wir nur die Resistenz Ihrer Neuronen im Gehirn gegen Psi-Emissionen messen. Eine einfache Untersuchung reicht vllig aus. Also... in Ihrem Gehirn sind keine Aufflligkeiten erkennbar, was bedeutet, dass Sie relativ starken Psi-Emissionen ausgesetzt sein knnen, ohne das Bewusstsein zu verlieren. + + + Was ist mit der Hypothese bezglich des erhhten Aggressionspotenzials der Mutanten? + + + Ich habe zwei Theorien. Die Aggressivitt der Mutanten knnte daher rhren, dass einige Leute in ihr Revier eingedrungen sind. In diesem Fall wre das selbst fr die meisten normalen Lebewesen - einschlielich der Menschen - ein normales Verhalten. Die andere Theorie ist, dass Mutanten aus irgendeinem Grund von unseren Messgerten beeinflusst werden. Letztere Theorie wre natrlich deutlich faszinierender. + + + Wie knnte man das berprfen? + + + Das Messgert msste in einem Gebiet eingeschaltet werden, in dem zuvor keine Mutanten waren. Auerdem sollte das Experiment nur von einer einzigen Person durchgefhrt werden, um zu vermeiden, dass sich das Eindringen der Menschen in das Jagdrevier auf das Messergebnis auswirkt. + + + Hier ist der Scanner. + + + Welche Ergebnisse haben Sie erhalten? + + + Ich wei nicht, was Ihr Gert anzeigen wird, aber ich glaube, dass die Theorie stimmt. Nachdem ich den Scanner eingeschaltet hatte, hat es nur fnf Minuten gedauert, bis Schnorks aufgetaucht und auf mich losgegangen sind. + + + Das habe ich mir gedacht. Aus irgendeinem Grund sind es normalerweise die unerwnschten Theorien, die sich als richtig herausstellen. Auf jeden Fall war es gut, dass Sie der Sache auf den Grund gegangen sind. Ab jetzt mssen wir dafr sorgen, dass jeder Trupp, den wir fr Messungen aussenden, vorgewarnt ist. + + + Ich bin bereit, die These zu besttigen oder zu widerlegen. + + + Ich bin hocherfreut, dass es auf der Welt immer noch Menschen gibt, die bereit sind, zum Wohle der Wissenschaft Opfer zu bringen. Der am besten geeignete Ort fr das Experiment ist der Erdrutsch am sdlichen Rand des Steinbruchs. Diese Gegend ist voller Gravitationsanomalien, die Mutanten normalerweise meiden. Das Gert, das ich Ihnen gebe, ist mit einem Sensor zur Mutantenortung ausgestattet. Wenn Sie nach der Durchfhrung des Experiments mit dem Gert zurck sind, kann ich mehr ber dessen Auswirkungen auf das Aggressionspotenzial der Mutanten herausfinden. Erklren Sie sich dazu bereit, dieses Experiment durchzufhren? + + + Ja, ich mach's. + + + Im Moment nicht. + + + Gibt es irgendeine Mglichkeit, einen wissenschaftlichen Schutzanzug zu bekommen? + + + Das wrde leider gegen die Vorschriften verstoen. Wir mssen ber alle Gegenstnde in unserem Besitz Buch fhren. Aber so wie ich Hermann kenne, hat er bestimmt mehr Ausrstung beantragt, als wir eigentlich brauchen. Unter bestimmten Umstnden kann ich ihn vielleicht berreden, einen Schutzanzug abzugeben. + + + Soll ich Artefakte fr Sie suchen? + + + Nein, tut mir leid. Wir heuern nicht mehr irgendwelche Leute zum Suchen von Artefakten an, sondern arbeiten mit einem erfahrenen Artefaktsammler zusammen. Was immer wir brauchen, besorgt er fr uns. + + + Ich kann versuchen, neue Wachen fr Sie zu finden. + + + Das wre keine schlechte Idee. In der Zone ist es nie ruhig... Sprechen Sie mit Hermann darber - er hat hier das Sagen. + + + Sie sollen mir Scanner fr die Erforschung von Anomalien aushndigen. + + + Bitte sehr. Drei Scanner, wie Hermann es gesagt hat. + + + Bitte sehr. Zwei weitere Scanner, wie Hermann es gesagt hat. + + + Wie bekommt man einen wissenschaftlichen Schutzanzug? + + + Hermann ist fr die Ausrstung verantwortlich. Aber ich kann Ihnen jetzt schon sagen, dass Sie ihn gar nicht erst fragen brauchen. Er wird Ihnen nichts geben. Versuchen Sie es lieber bei Oserski. Er ist lockerer drauf als Hermann und hat zudem einen gewissen Einfluss auf ihn. + + + Was fhrt Sie hierher? + + + Hren Sie, wo sind die Sldner, die Sie beschtzt haben? + + + Wie geht's? + + + Hren Sie... Jemand hat die Sldner, die Sie beschtzt haben, ber den Haufen geschossen. Ich habe sie zwar auch nicht besonders gemocht, aber das geht zu weit... + + + CS-3a, cool! Das ist eine verdammt gute Panzerung... Erinnert mich an die gute alte Zeit... + + + Knnen Sie ein Speichermodul hacken? + + + Lassen Sie mal sehen... Kein Problem, so etwas habe ich schon mal gemacht... Wird nicht lnger als eine Stunde dauern. Ich mache es fr... sagen wir... 2.000. Einverstanden? + + + Einverstanden. + + + Gut. Ich gebe Ihnen Bescheid, sobald ich das Speichermodul gehacked habe. + + + So viel Geld habe ich nicht. + + + Hm. Tja, Sie wissen, wo Sie mich finden. Ich bezweifle, dass das irgendjemand besser hinbekommen wrde als ich. + + + Ich werde darber nachdenken. + + + Wie gesagt, ich mache es in einer Stunde fr 2.000. + + + Und, haben Sie das Speichermodul gehacked? + + + Ich bin noch nicht soweit. Wie gesagt, ich gebe Ihnen Bescheid, wenn ich fertig bin. + + + Ja, hier. Jetzt kommen Sie an die Informationen ran. + + + Ich habe ein sonderbares Semi-Artefakt gefunden. Haben Sie Interesse? + + + Natrlich. Wo haben Sie es gefunden? + + + In Zaton, in dem verlassenen Baggerschiff. + + + Abgemacht. + + + Nein danke! Ich schau mich nach einem anderen Verkufer um. + + + Was machen die Sldner hier? + + + Sie arbeiten fr uns und bewachen das mobile Labor. Um gleich auf Ihre wahrscheinlich nchste Frage zu antworten: Ich hatte keine andere Wahl und musste sie anheuern. Aufgrund eines geheimen Militreinsatzes haben wir nicht die erforderlichen Schutzmanahmen zur Verfgung gestellt bekommen. Dieser Umstand und die Tatsache, dass Stalker pltzlich verrckt nach Artefakten sind, lieen mir keine andere Wahl. Nur so kann ich fr die Sicherheit des Labors garantieren. + + + Was machen Sie hier? + + + Wir erforschen die unterschiedlichsten Phnomene. + + + Welchem Zweck dienen Ihre Forschungen? + + + Wir fhren wichtige wissenschaftliche Untersuchungen durch. Mit anderen Worten, wir sind nicht hier, um Schutzanzge zu testen, neue Medikamente zu entwickeln usw. Unser Ziel ist es, eine logische Erklrung fr die Dinge zu finden, die wir in der Zone beobachten knnen. Selbst wenn es uns nur gelingen wrde, einen Bruchteil der Geheimnisse hinter diesen Phnomenen zu lften, wrde dies den globalen technischen Fortschritt massiv beschleunigen. + + + Was wissen Sie ber die Zone? + + + Nicht viel, wenn ich ehrlich sein soll. Wir fangen gerade erst an, die Mechanismen hinter den Phnomenen zu begreifen, die wir hier beobachten knnen. Und leider sind wir meilenweit davon entfernt, die Zone als Ganzes zu verstehen. Das wird vor allem dadurch erschwert, dass die Zone sich von Zeit zu Zeit verndert. Damit meine ich nicht das Auftauchen neuer Anomalien oder anderer Kleinigkeiten. Ich rede hier von schwerwiegenderen Vernderungen, die man nicht immer mit dem bloen Auge erkennen kann. Die abnehmende Strke des Magnetfeldes zum Beispiel. Das Dumme an der Sache ist, dass wir nicht wissen, wohin das alles fhren wird. Wir knnen nur abwarten und hilflos zusehen. + + + Wie lange sind Sie schon in der Zone? + + + Nicht lange, ungefhr eine Woche. Abgesehen davon war ich ein paar Mal in Sacharows Labor. Ich bereue es immer noch, dass wir diese Expedition nicht frher starten konnten. Ich habe den Leuten im Forschungsministerium mehrere Male gesagt, dass wir immer zwei vollstndig ausgestattete mobile Labors bereithalten mssen... Sie sind einfach nur mit ihren fetten Hintern auf den Sthlen gesessen, haben teilnahmslos genickt und das war's. Denen haben wir es zu verdanken, dass uns fast die beste Gelegenheit entgangen wre, die uns die Zone je geboten hat! + + + Ich verstehe. + + + Spucken die Scanner, die ich in den Anomalien aufgestellt habe, irgendwelche Informationen aus? + + + Welche Anomalie genau interessiert Sie? + + + Die Anomalie beim Parkplatz. + + + Ja, unsere Gerte zeigen an, dass in dieser Anomalie Artefakte sind! + + + Leider deutet nichts darauf hin, dass es in dieser Anomalie Artefakte gibt. + + + Betonbad-Anomalie + + + Asphalt-Anomalie + + + Fen-Anomalie + + + Aschehgel-Anomalie + + + Das war's erstmal. + + + Ich bin ganz Ohr. + + + Die jngsten Ereignisse haben uns klar und deutlich vor Augen gefhrt, dass unser Forschungsteam nicht ausreichend vorbereitet ist, um Feldversuche anstndig durchzufhren. Ihnen hingegen ist es gelungen, ganz alleine mit dem Controller fertigzuwerden! Wirklich erstaunlich! + + + Worauf wollen Sie hinaus? + + + In unserer Situation wre es alles andere als unvernnftig, zu versuchen, einen fhigen Experten wie Sie anzuheuern. Unser Forschungsteam braucht dringend Untersttzung. Wir mssen Messungen vornehmen, Scanner aufstellen usw. + + + Fahren Sie fort... + + + Ich versuche, einen Zusammenhang zwischen Emissionen und der Entstehung von Artefakten in Anomalien herzustellen. Ich habe eine Theorie entwickelt, wonach man die nchste Emission anhand der Anzahl und Qualitt der entstandenen Artefakte vorhersehen kann. Um genaue Berechnungen anstellen zu knnen, brauche ich jedoch statistische Werte. Dafr mssen wir nur einige Scanner im Zentrum verschiedener Anomalien aufstellen. + + + Tut mir leid, ich habe kein Interesse. + + + Das ist bedauerlich. Sie htten der Wissenschaft einen groen Dienst erweisen knnen. + + + Gut, ich helfe Ihnen. + + + Ausgezeichnet! Sie mssen die Scanner bei Nowikow holen und sie dann in den Anomalien aufstellen, die in der Karte Ihres PDAs vermerkt sind. Kommen Sie anschlieend hierher zurck - es gibt eine weitere Sache in Punkto Scanner und Messungen, die ich gerne mit Ihnen besprechen mchte. + + + Ich denke darber nach und komme spter wieder. + + + Ich habe die Scanner in den Anomalien aufgestellt. + + + Ausgezeichnet! Ich habe schon die ersten Ergebnisse und kann es gar nicht mehr bis zur nchsten Emission erwarten. Sie wird uns die statistischen Werte bringen, die wir brauchen... + + + Ich bin ganz Ohr! + + + Als ich mich der Anomalie genhert und den Forschungsdetektor ausgepackt habe, hat sich alles um mich herum gekrmmt, als wrde die Umgebung zusammengedrckt werden. Nach einer Weile sind dann wie aus dem Nichts die Leichen toter Stalker aufgetaucht! Danach war es wieder vorbei. + + + Das ist unglaublich! Natrlich sind diese Informationen sehr unwissenschaftlich und es lsst sich daraus nichts mit Gewissheit ableiten, aber wir werden diese Ausfhrungen dennoch in unseren Aufzeichnungen vermerken. Nennen wir die Anomalie "Raumblase"! + + + Wie es scheint, haben Sie neue Wachen? + + + Ja, sie leisten gute Arbeit. Mit ihnen in der Nhe fhlen wir uns sicher. Danke fr Ihre Mhe. Hier, Ihre Belohnung. + + + Sehen Sie sich diese Dokumente an. + + + Mal sehen... Ich will gar nicht fragen, wo Sie die herhaben, aber das ist einfach unglaublich! Lassen Sie mich davon eine Kopie anfertigen... Ach brigens, hier, eine kleine Belohnung. + + + Was ist mit Ihren Wachen passiert? + + + Das wei ich nicht, sie sind einfach verschwunden! + + + Ich habe in der Zone gute Kontakte. Ich knnte einige neue Wachen fr Sie auftreiben. + + + Das wre wunderbar! Als Gegenleistung fr ihre Arbeit erhalten sie unsere vollste Untersttzung und werden mit den neuesten Technologien ausgestattet! Sie gehen natrlich auch nicht leer aus! + + + Einverstanden! + + + Ich kann es gar nicht mehr erwarten! + + + Ich habe meine Meinung gendert. + + + Das ist schade. + + + Kann passieren. + + + Noch etwas? + + + Unsere Wachen wurden gettet! Man hat sie direkt auerhalb unseres Bunkers niedergeschossen! + + + Ich habe einige Dokumente in der Jupiter-Anlage gefunden. Wollen Sie einen Blick darauf werfen? + + + Interessant, aber nicht zu gebrauchen. Dennoch danke fr Ihre Mhe. Falls Sie sonst noch etwas finden, bringen Sie es hierher. + + + Ich wurde auf der Suche nach Dokumenten von Sldnern angegriffen. Hier ist der PDA ihres Anfhrers. + + + Wow. Und ich dachte, sie waren hier, um uns zu beschtzen. Ich glaube, das muss ich meinen Vorgesetzten zeigen. Vielen Dank, junger Mann. + + + Leider enthlt er keine interessanten Informationen. + + + Da ist etwas: Wir mssen alles ber die jngsten Entwicklungen in der Jupiter-Anlage herausfinden. Ich brauche diesbezglich unbedingt die technischen Dokumente. Wahrscheinlich mssen Sie im verwaltungstechnischen Bereich der Anlage danach suchen. + + + Ich werde mich dort umsehen und alles, was ich finde, zu Ihnen bringen. + + + Nein, dabei werde ich Ihnen nicht helfen. + + + Ich habe die Dokumente aus der Jupiter-Anlage. + + + Interessant, aber nicht zu gebrauchen. Dennoch danke fr Ihre Mhe. Falls Sie sonst noch etwas finden, bringen Sie es hierher. + + + Ich wurde auf der Suche nach Dokumenten von Sldnern angegriffen. Hier ist der PDA ihres Anfhrers. + + + Wow. Und ich dachte, sie waren hier, um uns zu beschtzen. Ich glaube, das muss ich meinen Vorgesetzten zeigen. Vielen Dank, junger Mann. + + + Ich werde versuchen, die Anomalie zu finden. + + + Ich habe keine Zeit. + + + Ich bin gekommen, weil ich Sie bei Ihren Forschungen untersttzen will. + + + Ich spreche bestimmt fr das gesamte Team, wenn ich sage, dass wir sehr erfreut darber wren, wenn Sie der Wissenschaft ein weiteres Mal dienen wrden. Welche Arbeit wrde Sie interessieren? + + + Ich mchte Ihnen dabei helfen, Messungen vorzunehmen. + + + Sind Sie sicher, dass Sie fr uns einen vollstndigen externen Scan durchfhren wollen? + + + Ja. Sagen Sie mir, was ich tun soll. + + + Nein, ich denke lieber noch einmal darber nach. + + + Sie haben ber das Aufstellen von Scannern gesprochen. + + + Ich versuche, einen Zusammenhang zwischen Emissionen und der Entstehung von Artefakten in Anomalien herzustellen. Ich habe eine Theorie entwickelt, wonach man die nchste Emission anhand der Anzahl und Qualitt der entstandenen Artefakte vorhersehen kann. Um genaue Berechnungen anstellen zu knnen, brauche ich jedoch statistische Werte. Dafr mssen wir nur einige Scanner im Zentrum verschiedener Anomalien aufstellen. + + + OK, ich helfe Ihnen dabei. + + + Ausgezeichnet! Sie mssen die Scanner bei Nowikow holen und sie dann in den Anomalien aufstellen, die in der Karte Ihres PDAs vermerkt sind. + + + Ich denke darber nach und komme spter wieder. + + + Die Scanner in den Anomalien bertragen Informationen. Wir mssen einfach nur die Ergebnisse abwarten. Sie knnen einige weitere Scanner in Anomalien aufstellen, wenn Sie mchten. Zustzliche Informationen knnen nie schaden. Als Gegenleistung informieren wir Sie, wenn Artefakte in Anomalien auftauchen. + + + Einverstanden. + + + Ausgezeichnet! Sie mssen die Scanner bei Nowikow holen und sie dann in den Anomalien aufstellen, die in der Karte Ihres PDAs vermerkt sind. + + + Ich denke darber nach und komme spter wieder. + + + Leider gilt bei uns die Vorschrift, dass wir einer Person nicht mehr als eine Arbeit zuteilen drfen. Tut mir leid, aber wir mssen uns an die Regeln halten. + + + Haben Sie die Ergebnisse der Anomaliefeldmessungen von dem Trupp erhalten, den ich beschtzt habe? + + + Ich mchte hinzufgen, dass Ihre Messungen definitiv die Aufmerksamkeit von Mutanten und Zombies auf sich gezogen haben. Es hat uns einiges an Zeit und Mhe gekostet, sie uns vom Leib zu halten. + + + Hm... Sie glauben also, dass sie auf die Scans reagiert haben? Interessant. Das wrde Oserskis Theorie besttigen, die besagt, dass Mutanten telepathischen Zugriff auf unterschiedlichste Felder haben. Ich denke, das sollte ich mit ihm errtern. Hier, Ihre Bezahlung fr Ihre Arbeit. Das haben Sie sich redlich verdient! + + + Hm... Sie glauben also, dass sie auf die Scans reagiert haben? Interessant. Das wrde Oserskis Theorie besttigen, die besagt, dass Mutanten telepathischen Zugriff auf unterschiedlichste Felder haben. Sie sollten Oserski davon berichten. Die Sache mit den Stalkern ist tragisch. Wir werden einen Teil unseres bescheidenen Etats ihren Familien als Entschdigung zukommen lassen. Der Rest ist fr Sie - als Bezahlung fr die Arbeit, die Sie fr uns getan haben. Danke! + + + Gibt es irgendeine Mglichkeit, einen wissenschaftlichen Schutzanzug zu bekommen? + + + Nein! Die Anzahl der uns zur Verfgung gestellten Schutzanzge ist stark begrenzt und ich kann keinen von ihnen entbehren! + + + Was kann ich fr Sie tun? + + + Haben Sie zufllig die Leute gesehen, die fr die Bewachung unseres Bunkers zustndig sind? + + + Reden Sie weiter. + + + Sie werden es mir nicht glauben, aber jemand hat unsere Wachen gettet, und zwar direkt vor unserem Bunker! + + + Brauchen Sie Hilfe? + + + Zurzeit versuchen wir, eine neue Probenart zu sammeln. Von diesen Proben gehen keine Anomalieeffekte aus, aber Experimente, die wir damit durchfhren, ziehen unglaubliche Resultate nach sich! + + + Fahren Sie fort... + + + Fassen Sie sich kurz und sagen Sie mir, was es zu tun gibt. + + + In Ordnung... Die Stalker, die das Psi-Feld gefunden haben, glauben, dass sich dort ein Mutantenunterschlupf befindet. Ich glaube ihnen nicht... Ich meine, abgesehen von Controllern kann kein Mutant in einem unregelmigen Psi-Feld berleben! Keine Sorge, unsere Jungs werden sich um die Mutanten kmmern. Wir brauchen Sie deswegen, weil der vermehrte Kontakt mit Psi-Feldern die Resistenz unserer Stalker gegen mgliche Schden verringert hat. + + + Lassen Sie mich das klarstellen: Sie wollen, dass ich ein unbekanntes Psi-Feld betrete und dort eine Probe fr Sie hole, die dort eventuell nicht einmal auffindbar sein wird. Und wenn doch, wei niemand, wie sie aussieht. Habe ich das richtig verstanden? + + + Genau! Dieser Einsatz ist fr die Wissenschaft von groer Bedeutung und fr unser Team erst recht. Ihre Hilfe wre fr uns von unschtzbarem Wert. Falls Sie Zweifel haben, reden Sie mit Oserski. Er wird die notwendige Analyse durchfhren, mit deren Hilfe Ihre Resistenz gegen Psi-Emissionen genau ermittelt werden kann. Sie knnen auch gerne unsere Stalker fragen. Sie werden Ihnen alles genau erklren. Also, mchten Sie der Wissenschaft einen groen Dienst erweisen? + + + Ja. + + + Sie wissen es noch gar nicht? Ihr Stalkertrupp ist tot. + + + Angesichts der Tatsache, dass Sie letztes Mal nicht zum Tunnel gekommen sind, drfte es fr mich uerst schwierig werden, das Team von einer Zusammenarbeit mit Ihnen zu berzeugen. + + + Das war so nicht beabsichtigt. + + + Ich glaube Ihnen, aber unser Team zum Sammeln der Proben setzt sich aus besonderen Leuten zusammen - Sie sollten sie nicht im Stich lassen. Ich werde noch einmal mit ihnen reden und sollte sie dazu bringen knnen, ihre Meinung zu ndern. Aber enttuschen Sie mich dieses Mal nicht. Ich warte auf die Probe. + + + Tut mir leid, aber ich muss leider ablehnen. Ihre Ausrstung ist einfach nicht fr den Aufenthalt in einem unregelmigen Psi-Feld geeignet. Sie wrden einen schnellen, aber schmerzhaften Tod erleiden, und das will ich nicht zu verantworten haben. + + + Ich habe die Probe. + + + Wirklich? Lassen Sie sehen, ich bin schon ganz aufgeregt! + + + Ich habe Ihre Probe. Es hat sich herausgestellt, dass ein Controller im Tunnel war. Er hat versucht, Ihren Trupp zu manipulieren, und htte damit fast Erfolg gehabt. Ich konnte ihn jedoch vorher tten. + + + Sie sind wirklich ein Teufelskerl! Sie haben einen Controller gettet und die Stalker vor einem Psi-Angriff bewahrt... Wenn ich nicht wsste, dass es wahr ist, wrde ich Ihnen nicht glauben! Eine ausgezeichnete Erfahrung und eine fantastische Probe. Ihr Engagement fr die Wissenschaft ist in der Tat bemerkenswert. Ich mchte Ihnen ganz persnlich dafr danken, auch im Namen meines Teams und aller Forscher auf der Welt! + + + Leider wurde der Trupp von einem Controller angegriffen. Ich musste mich verteidigen. Der Controller ist zwar tot, aber die Stalker haben es nicht mehr geschafft. + + + Ein Controller, sagen Sie? Wie schrecklich! Wer htte das ahnen knnen?! Ich trauere um den Verlust dieser tapferen Jungs... Sie waren loyale Diener der Wissenschaft. Auch wenn sie eigentlich keine Wissenschaftler waren, haben sie dennoch mehr fr die Wissenschaft getan als viele Professoren! Ich danke Ihnen und mchte Ihnen diese kleine Belohnung geben... + + + Leider wurde der Trupp von einem Controller angegriffen. Ich htte es fast nicht mehr rausgeschafft. + + + Was machen die Sldner hier? + + + Mir im Weg umgehen, wenn Sie mich fragen. Zuerst haben Sie mich andauernd gebeten, dieses und jenes zu reparieren... Aber seit gestern sind sie alles andere als zurckhaltend und stellen permanent Fragen ber unsere Ausrstung. Mir will einfach nicht in den Sinn kommen, wie ihnen das bei der Bewachung unseres Bunkers weiterhelfen soll. + + + Welche Modifikationen knnen Sie an Ausrstungen durchfhren? + + + Wie Sie sehen, ist das hier ein Forschungskomplex... Wir haben hier kein Kevlar und keine Waffen als Ersatzteile herumliegen. Aber ich kann mit einer meiner persnlichen Entwicklungen Krperpanzerung wieder zusammenflicken oder modifizieren. Sie knnen sich bestimmt vorstellen, dass ich eine ganze Menge Ausrstungsgegenstnde hier herumliegen habe. + + + Ihnen und Ihrer Probe aus dem Psi-Feld ist es zu verdanken, dass sich Oserski etwas einfallen lassen konnte, um die Menschen vor Emissionen zu schtzen. Ich habe seine Ideen in die Tat umgesetzt... und kann Ihren Schutzanzug damit ausstatten, wenn Sie mchten. + + + Nun, abgesehen von den gewhnlichen Verbesserungen kann ich Ihnen auch Filter- und Psi-Schutz-Modifikationen anbieten. Schlielich sind diese Dinge erst dank Ihrer Hilfe mglich... Oserski und Hermann haben sich wie kleine Kinder gefreut! + + + Abgesehen von den gewhnlichen Verbesserungen kann ich Ihnen auch Isolations- und Psi-Schutz-Modifikationen anbieten. Schlielich sind diese Dinge erst dank Ihrer Hilfe mglich... Oserski und Hermann haben sich wie kleine Kinder gefreut! + + + Ich habe eine breite Palette an Modifikationen: Isolation, Filtersystem und Psi-Schutz. Ist ein Schutzanzug mit all diesen Dingen ausgestattet, knnen Sie jede Anomalie betreten... und kommen vielleicht sogar wieder heil raus. Danke brigens, dass Sie bei Hermanns Forschungen geholfen haben. Ansonsten knnte ich Ihnen jetzt diese Modifikationen gar nicht anbieten. + + + Erzhlen Sie mir von Ihrem Bunker. + + + Hm... Was wollen Sie wissen? + + + Wozu genau dient das Labor? + + + Ich glaube, dass das nicht einmal Hermann und Oserski genau wissen. Offenbar arbeiten sie dort an allen mglichen Forschungsprojekten... Aber die Resultate sind bestenfalls bescheiden. Andererseits knnten Sie ja mal mit Oserski reden... Es ist mir gelungen, basierend auf seinen Theorien einige nette Schutzanzug-Modifikationen zu entwickeln. + + + Was wissen Sie ber die Zone? + + + Wissenschaftlich betrachtet nichts, aber praktisch gesehen kenne ich mich gut in der Zone aus. Hier sind nur Dinge von Wert, die die berlebenschancen erhhen. Der Zone ist es egal, ob Sie ein Bandit sind oder ein Stalker, der Artefakte sammelt, um seine Familie zu ernhren. Nur diejenigen, die fr den Aufenthalt in der Zone gut ausgerstet sind, berleben hier. + + + Wie lange sind Sie schon in der Zone? + + + Eine ganze Weile. Anfangs habe ich wie jeder andere Artefakte gesucht, aber mit meiner Gesundheit ging es immer mehr bergab, bis ich mir darber im Klaren wurde, dass ich nicht mehr weitermachen kann. Zum Glck bin ich nicht auf den Kopf gefallen, weswegen es fr mich nicht schwer war, Arbeit zu finden. Ich war ungefhr ein Jahr lang mit einer Fraktion unterwegs, die sich aus ehemaligen Wissenschaftlern zusammengesetzt hat. Das waren gute Leute... ein Jammer, dass sie dabei draufgegangen sind, als sie mit blindem Eifer irgendeinem fadenscheinigen Ziel hinterher gejagt sind. Danach habe ich eine Zeit lang die Zone durchstreift und dann angefangen, fr die Wissenschaftler zu arbeiten. Bisher bereue ich es nicht. + + + Das war alles, was ich wissen wollte. + + + Ich habe vor, ein unregelmiges Psi-Feld zu betreten. Haben Sie irgendwelche Ratschlge? + + + Was soll ich sagen? Ich bezweifle, dass Sie mit der Theorie ber Informationsenergiefelder vertraut sind... Jedenfalls ist es nicht gefhrlich, fr eine kurze Zeit den Wirkungen eines Psi-Feldes ausgesetzt zu sein... zumindest nicht auf lange Sicht. Aber nehmen Sie das alles nicht auf die leichte Schulter, wenn Sie dort sind. Wer Psi-Felder unterschtzt, endet als Zombie. + + + Knnen Sie einen Stahlbehlter aufbrechen? + + + Ist nicht mein Ding. Auerdem habe ich dafr nicht die richtige Ausrstung... und es wre gegen unsere Gesundheits- und Sicherheitsvorschriften. + + + Knnen Sie einen Flugschreiber entschlsseln? + + + In der Tat, aber ich werde es nicht tun. Frher habe ich das ein paar Mal gemacht, aber war einfach zu nervig... Die Wissenschaftler halten mich schon genug auf Trab. + + + Was ist an dem Schutzanzug CS-3a so besonders? + + + Abgesehen von der Tatsache, dass ich ihn entworfen habe? Ist einer der besten Schutzanzge in der gesamten Zone. Deswegen tragen Sie ihn ja, oder? Er ist leicht, schrnkt die Bewegungsfreiheit nicht ein und hat eine stabile Krperpanzerung. Ich habe ihn selbst mit dem Anomalieschutzsystem versehen... Ein Jammer, dass damals unsere Materialien knapp waren. Aber was will man auch mitten im Sumpf anderes erwarten? Ein paar Teile und das wre ein absolut moderner Schutzanzug. Ich habe 'ne Menge hochwertige Ausrstungsteile herumliegen, also wre das kein Problem. + + + Arbeiten Sie fr Uhu? + + + Nein. Er hat mir neulich bei einem Einkauf geholfen... eine Hand wscht die andere. + + + Uhu hat mich darum gebeten, Ihnen Detektoren zu bringen. Hier sind sie. + + + Gut. Ich erledige einige Arbeiten und lasse sie dann von den Ortskundigen zurck zu Uhu bringen... Alles andere ist eine Sache zwischen Ihnen und Uhu. + + + Oh! Du bist also derjenige, der den Banditen in Zaton Waffen verkauft! + + + Pssst... Bist du verrckt?! Du kannst doch hier nicht ber so etwas reden. Wir kennen uns nicht, verstanden? + + + Verstanden. + + + Wie wre es, wenn ich dem Anfhrer von deinen kleinen Nebengeschften erzhle? + + + Und was willst du zu ihm sagen? Du kannst mir nichts nachweisen. Ich meine, du warst derjenige, der geholfen hat, die Zeugen zum Schweigen zu bringen. Du hast keine Beweise und wrdest wie ein Idiot dastehen. + + + Ich habe bei einigen toten Sldnern einen PDA gefunden. Er enthlt einen Vertrag fr einen Auftragsmord. Ich sollte das Opfer sein - und du warst der Auftraggeber. + + + Mir reicht's jetzt langsam mit dir... Hr zu, gib mir den PDA und du kriegst von mir eine hervorragende Waffe, mit der ausschlielich Elitetruppen der Wchter ausgerstet sind. Wie klingt das? + + + Gut, ich nehme die Waffe. + + + Behalte sie. Ich brauche keine Almosen von einer hinterhltigen Schlange! + + + Ich habe einen weiteren PDA mit einem Vertrag fr einen Auftragsmord mit mir als Opfer. Und wieder bist du der Auftraggeber. + + + Mist... diese verdammten Sldner... auf die ist wirklich kein Verlass... Hr zu, vergessen wir die Sache doch einfach. Folgender Vorschlag: Die Sldner lassen dich in Ruhe und dafr lsst du mich in Ruhe. Als kleine Entschdigung bringe ich dich zum geheimen Lagerhaus der Wchter. Dort kannst du so viele Waffen mitnehmen, wie du tragen kannst. + + + OK, machen wir's so. + + + Gut, treffen wir uns dort. Das Versteck ist neben dem Steinbruch. + + + Ich gehe nirgendwo hin. Du wirst mir das ganze Zeug hier und jetzt geben mssen. + + + Ich habe nichts hier! So bld bin ich nicht! Entweder treffen wir uns beim Versteck oder du kriegst berhaupt nichts. + + + Nein, danke. + + + Ich brauche keine Almosen von einer hinterhltigen Schlange! + + + Ich mchte die Zone verlassen. + + + Sicher? Es gibt keinen Weg zurck. + + + Ich bin mir sicher. Gehen wir. + + + Ich glaube... ich bleibe noch. + + + Mal sehen... nun, deine Leber ist grer, als ich erwartet htte, aber das ist ja wohl ein Berufsrisiko, was? Abgesehen davon bist du topfit! + + + Wenn das Ding nicht leuchten wrde, wre wohl alles OK. So, wie der Zug jetzt aussieht, macht mir das Ganze aber etwas Angst. Geh und sieh selbst... aber ich glaube nicht, dass es dir viel Spa machen wird. + + + OK, es ist deine Entscheidung. + + + "Ehemalige" Monolither? Na ja, wenn du das sagst... brgst du fr sie? + + + "Ehemalige" Monolither? Nein, danke. Das Letzte, was ich jetzt gebrauchen kann, ist ein wilder Haufen von Fanatikern. + + + Hah! Guter Junge. Du bist nicht auf den Kopf gefallen und weit, wie du mich bei Laune hltst. Also, was hast du fr mich? Ein Artefakt oder die 15.000? + + + Ich habe dir ein Artefakt gebracht. + + + Schn, welches? + + + Ich habe kein Artefakt, das so viel wert ist. + + + Flamme. + + + Goldfisch. + + + Feuerfliege. + + + Schneeflocke. + + + Hmm... im Moment nichts. + + + Nun, ich habe gesagt, was ich zu sagen hatte. Jetzt bist du dran mit dem Reden. + + + Bis spter. + + + Natrlich! Die unregelmigen Psi-Felder mssen untersucht werden... je schneller desto besser. Sagen Sie, wie schtzen Sie die Sicherheit bei dieser Sache ein? Wir brauchen unbedingt Ihre Hilfe, um an eine Probe zu gelangen. Wollen Sie sich also in den Dienst der Wissenschaft stellen? + + + Ich knnte eventuell ein paar gute Mnner fr Ihre neue Forschungsgruppe finden. + + + Wirklich? Das wre eine groe Hilfe und wrde auch, so denke ich wenigstens, belohnt werden. + + + In Ordnung. Ich werde die passenden Leute anheuern. + + + Ich werde noch einmal darber nachdenken. + + + Hier. Ich bin in dem Tunnel auf einen Controller gestoen... und habe ihn gettet. + + + Das ist fantastisch! Sie haben einen Controller gettet und uns das beschafft, was wir brauchen... eigentlich ist das kaum zu glauben! Eine groartige Erfahrung und eine perfekte Probe. Sie haben der Wissenschaft einen sehr groen Dienst erwiesen. Im Namen aller Wissenschaftler hier mchte ich mich herzlich bei Ihnen bedanken! + + + Hier. Ich bin in dem Tunnel auf einen Controller gestoen... und konnte gerade noch entkommen. + + + Ein Controller? Wie schrecklich! Aber wer htte das wissen knnen? Das Wichtigste ist, dass Sie uns die Probe gebracht haben und damit der Wissenschaft einen groen Dienst erwiesen haben. Vielen Dank, und hier haben Sie Ihre Belohnung. + + + Wie macht sich die neue Forschungsgruppe? + + + Oh, prchtig. Das sind fhige Mnner, muss ich sagen. Bitte nehmen Sie das hier. Wir schtzen Ihre Fhigkeiten im... hhh... Personalwesen. + + + Was geht ab, Bruder? Natrlich freue ich mich, dich zu sehen, aber es wre auch nicht schlecht, wenn ich 'ne Weile alleine sein knnte. + + + Ich bin wegen dem gefangenen Stalker hier. Ich will ihn freikaufen. + + + Und ich will Respekt fr die Banditen und unsere Regeln, Kumpel. Aber ich will auch nicht unntig fr Unruhe sorgen... deswegen sage ich, dass du 15.000 locker machst oder mir ein entsprechendes Artefakt gibst. Ich bin ein fairer Geschftsmann - ich verlange nicht mehr, als er mir schuldet. + + + Hier hast du das Geld. + + + OK... ich respektiere das, was du tust. Nimm jetzt diesen Versager mit und sag den Stalkern, dass beim nchsten Mal der Preis hher sein wird. + + + So viel habe ich nicht bei mir. + + + Schn, dann hast du halt Pech gehabt. Sonst noch was? + + + Ich habe gerade nichts Passendes bei mir - ich komme spter wieder. + + + Mal sehen... hmm, ich sehe hier nichts von strategischer Wichtigkeit, aber das Zeug knnte irgendwann noch ntzlich werden. Ich biete dir 500 pro Dokument. Einverstanden? + + + Mal sehen. Ach du heilige Scheie! Diese Informationen knnten den Ruf der Wchter ruinieren! Ich biete dir 4.000 dafr. + + + Interessant. Nun, ich kann dir 2.000 dafr bieten. + + + Ja, aber der Preis ist derselbe: 2.000. + + + OK, bis spter. + + + Aber das ist ja schrecklich! Was zum Teufel knnte ihnen zugestoen sein? Hmm... vielleicht Mutanten. Ich muss Oserski fragen, was fr ein Monster es sein knnte... hmm. Trotzdem muss das Psi-Feld untersucht werden. Diese Mission ist uerst wichtig fr die Wissenschaft im Allgemeinen und fr unsere Gruppe im Besonderen. Wir brauchen unbedingt Ihre Hilfe, um an eine Probe zu gelangen. Wenn Sie irgendwelche Zweifel haben, reden Sie mit Oserski. Er wird die ntigen Untersuchungen durchfhren, um Ihre Resistenz gegen Psi-Emissionen zu ermitteln. Was sagen Sie? Wollen Sie der Wissenschaft helfen? + + + Ich werde darber nachdenken. + + + Unser Forschungsteam, das aus Stalkern hier aus der Gegend besteht, ist vor kurzem auf ein uerst auergewhnliches Psi-Feld gestoen. Laut unseren Theorien und den durchgefhrten Messungen erzeugt dieses Feld unregelmige Psi-Effekte, statt sie stndig auszusenden. + + + Leider sind die Mitglieder unserer Forschungsgruppe alle tot und wir knnen keine Messungen mehr vornehmen, solange wir keinen Ersatz finden. + + + Warten Sie bitte... wren Sie so freundlich und wrden mir einen Augenblick zuhren? + + + Wie lauten die Ergebnisse des Anomaliescans? + + + Haben Sie noch andere Arbeit fr mich? + + + Ich habe davon gehrt. + + + Leider konnte ich Hermann noch nicht davon berzeugen, einen Suchtrupp auszursten. Ich muss zugeben, die Gerchte ber dieses Phnomen sind sehr widersprchlich, aber irgendetwas sagt mir, dass die Oase wirklich existiert. Meine Intuition trgt mich sehr selten... wenn Sie also die Oase finden und mir einen Beweis fr ihre Existenz bringen wrden, wre ich Ihnen uerst dankbar. + + + Das wrde ich gerne tun, aber ich war schon in der Oase. + + + Hmm... hh... ich glaube, ich habe mich verhrt. Was haben Sie gesagt? + + + Ich bin hier, um Wanos Schulden zu begleichen. + + + Ja, ich erinnere mich an ihn. Er schuldet uns nicht gerade wenig... sieben Riesen sind's, um genau zu sein. + + + OK, hier. + + + Sag Wano, dass er uns nichts mehr schuldet. + + + OK. + + + So viel habe ich nicht bei mir. + + + Komm wieder, wenn du flssig bist. + + + Von Zinsen war aber nicht die Rede. + + + Was redest du da? Denkst du, ich bin bld und verleihe Geld, ohne Zinsen zu verlangen? Sieben Riesen, und dabei bleibt's. + + + berleg's dir lieber noch einmal. Ich hab hier meine Knarre und kein Problem damit, sie einzusetzen. Also, was wrde deine Leiche mit den ganzen Zinsen anfangen? + + + Schon gut, schon gut... nur die Ruhe! Wir knnen uns sicher einigen. Gib mir einfach fnf Riesen und die Sache ist gegessen. + + + Ha! Mit deiner Spielzeugwumme jagst du mir keine Angst ein, Vollidiot! Sieben Riesen, inklusive Zinsen. Ende der Diskussion. + + + Hast du mich vergessen? Ich habe noch immer die Knarre. + + + Ich ziehe es vor, dich ohne Bezahlung zu erschieen. + + + Ich werde darber nachdenken. + + + Sieben Riesen, inklusive Zinsen. + + + Ich kann gerade keine groen Jobs gebrauchen. Ich muss mich zusammenreien... weit du, vielleicht sogar nach Hause gehen... einen richtigen Job finden und diese beschissenen Artefakte vergessen. Ich wei nur nicht, wie ich Grizzly zurcklassen soll... und Torba. Wir sind echt gute Freunde... sind immer freinander da und so. Ich wei nicht, vielleicht muss ich einfach mal 'ne Nacht drber schlafen und den Kopf freikriegen... + + + Ich kann gerade keine groen Jobs gebrauchen. Ich muss mich zusammenreien... weit du, vielleicht sogar nach Hause gehen... einen richtigen Job finden. Ach, ich wei nicht... ich muss mich einfach mal entspannen und den Kopf freikriegen... + + + Und, bereit, Mitaj zu retten? Ich hoffe, es macht dir nichts aus, mit ein paar Leuten zusammenzuarbeiten, die ich angeheuert habe... + + + Ich habe hier den PDA von Morgan, dem Hndler der Wchter. Hast du Interesse? + + + Ich habe hier einen PDA, der beweist, dass Morgan Kontakt zu den Sldnern hat. + + + Ich denke... ich werde es behalten. + + + Ich wusste, dass Sie Ihren Wunsch, der Wissenschaft zu dienen und etwas Gutes zu leisten, am Ende nicht ignorieren wrden! In Ordnung, so lautet der Plan: Eine Forschungsgruppe aus Stalkern wird die Messungen vornehmen. Ihr Auftrag besteht darin, sie zu begleiten, zu beschtzen und durch schwieriges Gelnde zu fhren. Viel Glck. Die Stalker warten drauen auf Sie. + + + Hallo, Stalker. berrascht, hier einen alten Knacker zu treffen? He he! Ich bin mit den Jungs hierher gekommen, um ein bisschen Abwechslung zu haben. Ich repariere Ausrstung und manchmal kmmere ich mich auch um Menschen... + + + Jetzt wo du hier bist, was kann ich fr dich tun? + + + Wie bist du nach Pripyat gekommen? + + + Gari hat mir den Weg gezeigt. Diese Stalker hatten schon lange vor, hierher zu kommen, aber sie hatten keine Lust, sich mit dem Militr anzulegen. Als dann Gari gesagt hat, dass das Militr kein Problem mehr darstellt, habe ich nicht lange gefackelt. Jetzt ist Onkel Jar hier und alles wird gut. Ha ha! + + + Ich brauche medizinische Hilfe. + + + Lass den alten Mann mal sehen... + + + Na also, du wirst es berleben. Wenn es zu einer Schwellung kommen sollte, pinkle einfach drauf - das hilft! + + + Du siehst gesund genug aus. Willst wohl einen alten Mann auf den Arm nehmen... ha ha... + + + Willkommen in meinem bescheidenen Haus der Freude und des Genusses. Bist du auf der Suche nach Freude, nach Genuss oder etwa beidem? + + + Na ja, die Jungs sagen immer, das ich fast schon zu nett bin... freu dich also jetzt darber... das nchste Mal werde ich nicht so zuvorkommend sein. Und jetzt verschwinde von hier, Versager! + + + Ich war schon dort. Die Banditen sind tot. + + + Wow, du hast's echt drauf! Vielen, vielen Dank! Hier, nimm das Geld - ich wollte damit meine Schulden begleichen, aber jetzt bekommt es jemand, der es wirklich verdient. + + + Wow, du hast's echt drauf! Vielen, vielen Dank! Behalte das Geld, das fr meine Schulden gedacht war. Jetzt bekommt es jemand, der es wirklich verdient! + + + Unsere Scanner haben ungewhnliche Aktivitten nrdlich von hier registriert. Angesichts der empfangenen Daten vermute ich, dass die dortige Anomalieformation instabil ist. Leider kann ich von hier aus nicht mehr darber sagen. Wir mssen Feldmessungen vornehmen... Was ich allerdings zweifelsfrei sagen kann, ist, dass gewhnliche Detektoren der Stalker nicht in der Lage sein werden, die Anomalie zu erfassen - Sie werden einen Swarog-Detektor brauchen... eine unserer Entwicklungen. + + + Die Scanner registrieren weiterhin anomale Aktivitten nrdlich von hier. Wenn Sie ber etwas Besseres als einen gewhnlichen Detektor der Stalker verfgen - z.B. ber einen Swarog-Detektor -, knnten Sie Feldmessungen vornehmen. + + + Bisher nur von den Sumpfanomalien. Trotzdem hat Nowikow bereits eine praktische Anwendung dafr gefunden. Vielen Dank fr Ihre Mhe, wir freuen uns schon auf den zweiten Teil der Ergebnisse. + + + Bisher nur aus dem Anomaliegebiet hinter Kopatschi. Trotzdem hat Nowikow bereits eine praktische Anwendung dafr gefunden. Vielen Dank fr Ihre Mhe, wir freuen uns schon auf den zweiten Teil der Ergebnisse. + + + Natrlich. Ich habe die vollstndigen Ergebnisse erhalten. Um ehrlich zu sein, ist der Umfang der erzeugten Daten so gro, dass es Wochen oder gar Monate dauern wird, sie vollstndig zu verarbeiten. Trotzdem kann Nowikow bereits viel damit anfangen. Vielen Dank fr Ihre Mhe. + + + Nein, so etwas ist hier nicht vorgefallen. Hmm... aber vor kurzem habe ich in der Tat einen verdchtigen Typen gesehen. Ich hatte einen Spaziergang gemacht und war gerade auf dem Rckweg, als ich einen Stalker bemerkte, der gerade die Janow-Station verlie. Als er mich auch bemerkte, wurde er vollkommen ohne Grund unhflich und hat irgendetwas darber gefaselt, dass er wsste, wo ich wohne, oder so einen Bldsinn. Ich habe ihn ignoriert, weil ich dachte, er wre betrunken... aber wenn ich jetzt so darber nachdenke, ist es doch ziemlich merkwrdig. + + + Wohin ist er gegangen? + + + Nach Nordosten. Ich habe ein paar Schsse aus der Richtung gehrt, aber das ist hier in der Gegend nichts Ungewhnliches. Frag Zulu - der hockt Tag und Nacht in seinem Turm und hat vielleicht etwas gesehen. + + + Nach Nordosten. Wahrscheinlich ist er zum Umspannwerk gegangen. + + + Ich verstehe. + + + Was geht, mein Freund? + + + Wie geht es dir? + + + Ganz gut. Klar, es ist nicht einfach, aber wir werden es hier schon rausschaffen. Zusammen kriegen wir das schon hin! + + + Wie geht es dir? + + + Ich wei nicht so recht... mir geht's nicht besonders gut hier. Irgendwie habe ich das Gefhl, dass ich weitergehen sollte. Vielleicht breche ich bald wieder auf... mach mir nur keine Vorwrfe. + + + Ich habe das Blutsaugerlager in Zaton zerstrt. Komplett ausgelscht. + + + [fortfahren...] + + + [fortfahren...] + + + [fortfahren...] + + + [fortfahren...] + + + Ich suche Freiwillige, die Messungen in Anomalien vornehmen. + + + Ich bentige Messungen, die in Anomalien vorgenommen werden mssen. + + + Wer liegt denn da auf der faulen Haut? + + + Du hast das Artefakt gefunden? + + + Und wie! Hier gibt es nichts zu tun - die einzige Unterhaltung, die wir haben, ist dieses Backgammon-Brett. Das hier ist kein Vergleich zu Pripyat... mann, wenn ich doch endlich diesen verfluchten Vertrag erfllen knnte... dann wrde ich sofort dorthin gehen! + + + [fortfahren...] + + + Du kannst zum Steinbruch gehen - dort ist Splitter gestorben. Kurz vor seinem Tod hat er mir verraten, dass Flint seine Beute gestohlen und ihn in der Anomalie zurckgelassen hat. + + + Sein Name war Splitter. Er ist in eine Gasanomalie gelaufen und du bist mit seinem Artefakt abgehauen. Wie du siehst, hat er mir alles erzhlt, bevor er gestorben ist. + + + Ich will nicht wissen, woher du das hast. Machen wir es einfach: Ich gebe dir 4.000 fr diesen PDA. Schon lange habe ich mich gefragt, was unser Versorgungsoffizier so alles treibt, wenn er nicht gerade arbeitet... + + + Dann schauen wir mal. Was zum... dieses miese Stck Dreck! Er hat nicht nur unsere Waffen verkauft, sondern die Koordinaten des Lagerhauses an die Freiheit verraten!!! Verdammt, wir mssen sofort ein Begrungskomitee aufstellen. + + + Dann schauen wir mal. Das ist ja nicht zu fassen! Wir haben ber das Lagerhaus Bescheid gewusst und wollten sogar einen Abstecher dorthin wagen, aber wir hatten keine Ahnung von irgendeinem Alarm, weil die miese Ratte ihn berhaupt nicht erwhnt hat. Moment, ich werde die Jungs warnen. + + + Nun, aus reiner Neugier gebe ich dir 4.000 dafr. + + + Also er ist nicht gerade eine Kampfmaschine, kann aber trotzdem sehr gut mit einem Gewehr umgehen. Er hat allerdings immer einen angesuerten Gesichtsausdruck... fast so, als ob seine Rationen immer nur aus Zitronen bestehen wrden. + + + Ich bin beim alten Khlturm auf eine seltsame Anomalie gestoen. + + diff --git a/gamedata/configs/text/ger/st_dialogs_pripyat.xml b/gamedata/configs/text/ger/st_dialogs_pripyat.xml new file mode 100644 index 0000000..774ecdf --- /dev/null +++ b/gamedata/configs/text/ger/st_dialogs_pripyat.xml @@ -0,0 +1,906 @@ + + + + Hah! Die haben richtig eins auf den Sack gekriegt! Danke fr deine Hilfe. Wenn du nicht gewesen wrst, htten mich diese Mistkerle richtig fertiggemacht. Weit du, du bist ja doch ein guter Stalker... Tut mir leid, dass ich beleidigt war, aber du httest mir ja frher sagen knnen, dass du vom Geheimdienst bist. + + + Kein Problem. Wir sollten besser zum Militrlager aufbrechen - dort ist es sicherer. + + + Ja, das wre auf jeden Fall besser, als alleine in Pripyat rumzulaufen. + + + Dann gehen wir. + + + Ich muss hier erst noch etwas erledigen, aber geh nur. Das Lager ist in dem Gebude mit dem Waschsalon. + + + Zeit fr mich, zu gehen. + + + Warte... hier... ist das zuverlssigste MG in der gesamten Zone. + + + Aber... brauchst du es nicht mehr? + + + Ich habe immer etwas dabei, um mir Mutanten vom Leib zu halten. Auerdem habe ich beschlossen, zurckzugehen. Gari bringt mich nach Jupiter. Du kannst das MG also besser gebrauchen. Nimm es und halte es in Ehren. + + + Viel Glck. + + + Danke, das ist eine gute Waffe. + + + Pah! Das ist keine gute Waffe, sondern die beste Waffe in der gesamten Zone. Sie wurde modifiziert und ist deswegen ziemlich schwer. Andererseits, warum soll man weglaufen, wenn man dieses Ding dabei hat. Soll doch der Feind die Beine in die Hand nehmen! + + + Wiedersehen. + + + Cool! + + + Weit du, wo Zulu ist? + + + Er ist weg... Er hat mich darum gebeten, ihn nach Jupiter zu bringen. Nicht weit von der Anlage entfernt haben sich dann unsere Wege getrennt. Er hat mir nicht gesagt, wohin er geht. + + + Warte... Es gibt da eine unangenehme Sache, die ich dir erzhlen will... Einige Sldner wollten, dass ich sie nach Pripyat bringe. Sie haben mir ein nettes Smmchen geboten, also habe ich zugestimmt. Aber schon bald wurde mir klar, dass ich in der Klemme sitze... Sie haben mich keine Sekunde aus den Augen gelassen und die Waffe auf mich gerichtet. Als wir uns Pripyat genhert haben, konnte ich fliehen, aber sie mssten mittlerweile in der Stadt sein, also sei vorsichtig. + + + Hast du zufllig mitbekommen, ber was die Sldner geredet haben? + + + Ein paar Sachen, ja. Sie hatten sicher nicht vor, mich am Leben zu lassen. Deswegen gab es fr sie auch keinen Grund, ihre Plne vor mir zu verheimlichen. Hauptschlich haben sie davon geredet, die Leute des Auftraggebers zu treffen. Sie wollten ihnen das Ziel ihrer Mission klarmachen. + + + Wo findet das Treffen statt? + + + In der Nhe, im Hof der Wohnanlage. + + + Danke fr die Information. + + + Du hast die Sldner erwhnt. Hast du mitbekommen, ber was sie geredet haben? + + + Ein paar Sachen, ja. Sie hatten sicher nicht vor, mich am Leben zu lassen. Deswegen gab es fr sie auch keinen Grund, ihre Plne vor mir zu verheimlichen. Hauptschlich haben sie davon geredet, die Leute des Auftraggebers zu treffen. Sie wollten ihnen das Ziel ihrer Mission klarmachen. + + + Wo findet das Treffen statt? + + + In der Nhe, im Hof der Wohnanlage. + + + Ich habe mit den Wissenschaftlern eine Abmachung bezglich eines Schutzanzuges getroffen - reden Sie mit Hermann darber. + + + OK... Wo ist der Treffpunkt? + + + In der Nhe der Janow-Station, bei Zulu. + + + Da sind berall Stalker! Wie wre es, wenn Sie mich dorthin bringen? Wenn ich dort alleine auftauche, knnte es rger geben. Aber wenn Sie dabei sind, werden sie nicht schieen, weil sie Sie kennen. + + + Zu welcher Evakuierungsstelle sind Sie gegangen? + + + Tut mir leid, ich darf darber nicht reden - ist geheim. + + + Gehen wir zu Zulu. + + + OK. Aber zuerst mssen wir mit Hermann reden, damit wir den wissenschaftlichen Schutzanzug kriegen. + + + Gehen wir. + + + Wrde ich ja gerne... aber da drauen ist gerade eine Emission im Gange. Wir sollten ein bisschen warten. + + + Was hat Sie hierher verschlagen? + + + Mein Hubschrauber ist in Jupiter abgestrzt und durchs Dach einer Werkstatt gerauscht. Ich bin der einzige berlebende. Ich habe es aus der Jupiter-Anlage rausgeschafft und mich bis zur nchsten Evakuierungsstelle durchgeschlagen, aber dort war niemand. Dann bin ich auf Gari gestoen und er hat mich zum Bunker gebracht. + + + Sie brauchen einen Schutzanzug mit geschlossenem Atemkreislauf, wenn Sie nach Pripyat wollen. + + + Was machen Sie hier? + + + Mein Befehl lautet, zur Evakuierungsstelle zu gehen, aber die Zone ist zu gefhrlich. Ich bin Pilot und kein Fusoldat! Deswegen warte ich hier und hoffe, dass man mich aufgabelt, sobald der Einsatz abgeschlossen ist. + + + Ich stelle einen Trupp zusammen und breche dann auf nach Pripyat. Wollen Sie sich mir anschlieen? + + + Pripyat? Klingt gar nicht schlecht... Vielleicht haben ein paar unserer Jungs berlebt und sie haben es irgendwie nach Pripyat geschafft... Dort ist eine Evakuierungsstelle, also wre das sogar ein mglicher Zielort fr mich. Alleine wrde ich mich nicht auf den Weg machen, aber zusammen mit Ihrem Trupp knnte ich es versuchen. + + + Sind Sie bereit? + + + Kann man so sagen. + + + Guten Tag, Stalker. + + + Guten Tag. + + + Guten Tag. + + + Guten Tag, Major. + + + Wo haben Sie die Militruniform her? + + + Nun, ich denke, inzwischen wei jeder, dass die Militrhubschrauber abgestrzt sind... Ich bin Leutnant Sokolow, Kopilot eines der Hubschrauber. + + + Wegen dieser Wache... + + + Sein Signal kommt aus dem alten Lebensmittelgeschft, aber er antwortet nicht... Vielleicht hat er sein Funkgert verloren... Aber sicher kann man das zu diesem Zeitpunkt nicht sagen. Wir mssen ihn finden... + + + Danke, Oberst! Ich denke, ich komme schon zurecht. + + + Wegen dieser Wache... + + + Tja... alles nur wegen diesem Controller... Wahrscheinlich ist dem Aufklrungstrupp das Gleiche widerfahren. Der Controller hat sie dazu gebracht, aufeinander zu schieen... Diese Kreaturen gehren zu den schlimmsten Biestern in der Zone und wir wurden nicht fr einen Kampf gegen sie ausgebildet. Der Controller hat uns vllig kalt erwischt und wieder einmal haben wir Opfer zu beklagen... + + + Wenigstens hat man sich um den Controller gekmmert. + + + Ich hoffe, die Lage beruhigt sich jetzt etwas... Ich bin Ihnen fr Ihre Hilfe dankbar, Major. Ich schtze, Sie haben bei diesem Einsatz viel Munition verbraucht... Finden Sie Leutnant Kirilloff und bitten Sie ihn, Ihnen die ntige Ausrstung zu geben. + + + Danke, Oberst! + + + Keine Sorge, Oberst. Ich werde mich um diesen Mutanten kmmern. + + + Knnen Sie mir Genaueres zu dem Einsatz sagen? + + + Wer ist das? + + + Wenn wir die Ursache fr die Strung nicht bald finden, knnen wir nur noch abwarten, bis wir sterben. Der erste groe Angriff der Monolither wird das Militr in Stcke reien... und der Einsatz wird definitiv scheitern... + + + Ich versuche, die Ursache so schnell wie mglich zu finden. + + + Und, Major? Haben Sie die Ursache fr die Funkstrung gefunden? + + + Nein, ich bin noch dabei... + + + Gari hat mir von dem Vorfall mit den Sldnern erzhlt... + + + Ja, mir hat er auch davon berichtet... Nach seiner Flucht ist er hierher gekommen und hatte Angst, dass er verfolgt wird. Zum Glck - sowohl fr ihn, als auch fr uns - haben die Sldner seine Spur verloren... Wir beobachten den Ort, an dem sich die Sldner und die Leute des Auftraggebers treffen sollen, aber dort ist alles ruhig... Ich wrde wirklich gerne wissen, was die Sldner hier vorhaben. + + + Ich habe Informationen, dass die Sldner in Pripyat nach einem geheimen Labor suchen. + + + Ein geheimes Labor, hier in Pripyat? Wo haben Sie diese Information her? + + + Vom Notebook eines Sldners aus Zaton. Ein Stalker namens Onkel Jar hat mir auerdem eine Geschichte erzhlt, die das besttigt. + + + Hm... was wissen Sie noch? + + + Sie suchen nach dem Zentrallabor. Whrend meiner Untersuchung ist es mir gelungen, die Koordinaten herauszufinden. + + + Wenn das wahr ist, bedeutet das, dass wir neben den Zombies und Fanatikern gegen einen weiteren Feind gewappnet sein mssen... Wir mssen entscheiden, wie es weitergeht. + + + Wir mssen das Treffen beobachten und wenn mglich den Vertreter des Auftraggebers eliminieren. Das wrde sicherstellen, dass fr eine Weile niemand zum X8-Labor gelangt. + + + Das wre eine gute Lsung. Wir werden zwar nicht herausfinden, wer noch ber das Labor Bescheid wei, aber wir knnen wenigstens dafr sorgen, dass die Sldner nicht dorthin gelangen. Allerdings werden die Sldner schnell reagieren und stellen damit eine Bedrohung fr uns dar. Versuchen Sie, beide Ziele zu tten. Ich werde Leutnant Kirilloff den Befehl geben, Sie zu begleiten. + + + In Ordnung. + + + Warten Sie, vielleicht sollten wir das andere Ziel nehmen. + + + Entscheiden Sie, welches Ziel Prioritt hat. + + + Wir mssen den Anfhrer der Sldner eliminieren. Gelingt es Ihnen, sollte der geschwchte Sldnertrupp kein allzu groes Problem mehr darstellen. + + + Klingt nach einer guten Vorgehensweise, aber der Bote wird dann wahrscheinlich entkommen und die Information ber das Labor woanders an den Mann bringen. Das wrde bedeuten, dass die Sldner doch noch das Labor finden. Versuchen Sie, beide Ziele zu eliminieren. Ich werde Leutnant Kirilloff den Befehl geben, Sie zu begleiten. + + + Dafr habe ich keine Zeit. + + + Vom Notebook eines Sldners aus Zaton. + + + Eine Geschichte, die mir ein Stalker aus der Janow-Station namens Onkel Jar erzhlt hat. + + + Wegen der Sldner... + + + Gute Arbeit. Beide Ziele wurden eliminiert. Jetzt kommen uns die Sldner nicht in die Quere und lenken keine unntige Aufmerksamkeit auf das Labor. Das Gewehr knnen Sie behalten. Etwas mehr Munition dafr habe ich auch noch. + + + Gut. Der Anfhrer ist tot und die Sldner stellen kein Problem mehr fr uns dar. Aber da die Leute des Auftraggebers entkommen konnten, besteht die Gefahr, dass sie im Labor auftauchen. Bleiben Sie wachsam... Das Gewehr knnen Sie behalten. Etwas mehr Munition dafr habe ich auch noch. + + + Gut. Die Person, die den Standort des Labors gekannt hat, ist tot. Das bedeutet, die Sldner werden es nicht finden. Allerdings bezweifle ich, dass sie Pripyat verlassen werden, und somit bleiben sie eine Bedrohung fr uns. Seien Sie wachsam... Das Gewehr knnen Sie behalten. Etwas mehr Munition dafr habe ich auch noch. + + + Sie haben im letzten Moment das Ziel gendert? Das war eine gute Entscheidung. Der Anfhrer ist tot und die Sldner stellen kein Problem mehr fr uns dar. Aber da die Leute des Auftraggebers entkommen konnten, besteht die Gefahr, dass sie im Labor auftauchen. Bleiben Sie wachsam... Das Gewehr knnen Sie behalten. Etwas mehr Munition dafr habe ich auch noch. + + + Sie haben im letzten Moment das Ziel gendert? Das war eine gute Entscheidung. Die Person, die den Standort des Labors gekannt hat, ist tot. Das bedeutet, die Sldner werden es nicht finden. Allerdings bezweifle ich, dass sie Pripyat verlassen werden, und somit bleiben sie eine Bedrohung fr uns. Seien Sie wachsam... Das Gewehr knnen Sie behalten. Etwas mehr Munition dafr habe ich auch noch. + + + Das ist nicht besonders gut gelaufen. Der Anfhrer der Sldner ist am Leben und der Vertreter des Auftraggebers ebenso. Jetzt wissen die Sldner ber uns Bescheid und stellen fr uns eine ebenso groe Bedrohung dar wie die Streitkrfte der Monolither. Darber hinaus wissen sie jetzt, wo sich das Labor befindet. Es ist nur eine Frage der Zeit, bis sie dort auftauchen werden. Bleiben Sie wachsam... Das Gewehr knnen Sie behalten. Etwas mehr Munition dafr habe ich auch noch. + + + Machen Sie Ihre Soldaten bereit, Oberst. Es kann losgehen. + + + OK. Geben Sie Strelok Deckung, Major. Wir knnen auf uns selbst aufpassen. + + + Also... von allen Leuten hier haben Sie und Strelok die meiste Erfahrung in der Zone - mit dem Unterschied, dass Strelok nur vom Hrensagen her ber die Zone bescheid wei, whrend Sie auf jeden Fall ein Profi sind. Ich will damit sagen, dass ich auf Sie zhle, Major. Behalten Sie Strelok im Auge - von uns sind nicht viele brig. + + + Der Trupp ist bereit zum Abmarsch. Wir warten nur noch auf Sie, Major. + + + Sieht so aus, als seien die Verrckten alle tot. Schnappen Sie sich dieses Gewehr und dann nichts wie weg, solange wir noch knnen. + + + Klingt vernnftig. + + + Ich bin bereit, gehen wir. + + + OK. Der Trupp ist bereit. + + + Abmarsch. + + + Wir mssen warten. Ich will in der Emission keine Mnner verlieren. + + + Ich bin Hauptmann Tarasow. Sie sind vielleicht Major, aber hier habe ich das Sagen und das bedeutet, dass meine Befehle nicht zur Disposition stehen. Das Leben jedes Mannes im Trupp hngt davon ab. Der Plan lautet wie folgt: Wir bringen uns im westlichen Abschnitt des Krankenhauses in Stellung und warten, bis die Monolith-Kmpfer auftauchen. Wir mssen schnell sein, damit wir nicht unntig Aufmerksamkeit erregen. + + + Verstanden, auf geht's. + + + In Ordnung. Der Trupp ist bereit. + + + Abmarsch. + + + Wir mssen warten. Ich will in der Emission keine Mnner verlieren. + + + Warten Sie, Hauptmann. Ich bin noch nicht soweit. + + + Gibt es bezglich der Strung irgendwelche Neuigkeiten? + + + Ich habe viele Strquellen identifiziert, eine davon befindet sich irgendwo in der Nhe. Wenn wir sie zerstren, knnen wir vielleicht mit dem Hauptquartier kommunizieren. + + + Ich habe die Koordinaten der Strquelle berechnet. Es muss sich dabei um eine Art speziell angefertigten Sender im Hochfrequenzbereich handeln, wenn nicht sogar im Mikrowellenbereich. + + + Das von Ihnen zerstrte Gert war tatschlich die Strquelle. Wahrscheinlich gibt es viele davon, aber wir konnten schon den Funkkontakt zum Hauptquartier herstellen. + + + Erzhlen Sie mir von dem Signal. + + + Das Signal taucht immer wieder auf und verschwindet dann wieder. Aber jedes Mal, wenn wir es wieder empfangen, befindet es sich nher am Lager. + + + Ist das alles? + + + Nein. Das Signal wird auf Frequenzen gesendet, die nur selten fr die Funkbertragung verwendet werden. + + + Ich verstehe. + + + Nehmen Sie diese Waffe und die Munition... Sie knnen es sich erst einmal bequem machen. Ich behalte die Stelle von der anderen Seite aus im Auge und melde mich bei Ihnen, sobald sie auftauchen. + + + OK. + + + Guten Tag. Ich heie Leutnant Kirilloff und bin fr die Instandhaltung der Waffen sowie fr die Munitionslagerung zustndig. + + + Haben Sie Munition? + + + Ja, wir sind neulich in ein Lagerhaus der Monolither eingebrochen. Es war voller Munition fr jede erdenkliche Waffe, die man in der Zone kriegen kann... Ich frage mich, wie sie hier an all die Waffen rankommen... Ich schtze, dass eine der Wachen in diesem Gebiet sie ihnen verkauft... + + + Also knnen Sie auch meine Waffen reparieren? + + + Sicher. Wir wurden dafr ausgebildet, die unterschiedlichsten Waffen zu reparieren. + + + Ich verstehe. + + + Guten Tag. + + + Warum habe ich blo diese Kopfschmerzen? + + + Die Stunde der Wahrheit ist gekommen. Ich frage mich, ob wir es schaffen... + + + Ich brauche Munition. + + + Kein Problem... Was genau brauchen Sie? + + + 9x18 Pistolen-Munition... + + + Hier... sonst noch etwas? + + + Hier... + + + 9x19 Pistolen-Munition... + + + 11.43x23 Pistolen-Munition... + + + Schrotflinten-Munition... + + + 5.45x39 Sturmgewehr-Munition... + + + 5.56x45 Sturmgewehr-Munition... + + + 9x39 Sturmgewehr-Munition... + + + Scharfschtzengewehr-Munition... + + + MG-Munition... + + + Mehr darf ich Ihnen leider nicht geben, Major... Laut Befehl des Obersts mssen wir Munition sparen. + + + Ach, schon gut. + + + Ich brauche Granaten. + + + Kein Problem... welche? + + + Handgranaten. + + + Hier... + + + VOG-25 Granatwerfer-Munition. + + + M209 Granatwerfer-Munition. + + + Ach, schon gut. + + + Mehr darf ich Ihnen leider nicht geben, Major... Laut Befehl des Obersts mssen wir Munition sparen. + + + Ich brauche medizinische Hilfe. + + + Ich helfe immer gerne. Lassen Sie mal sehen... + + + Wieder ganz der Alte, gesund und munter. + + + Wie fhlen Sie sich nach dem, was passiert ist? + + + Ich bin wieder OK... Nach dem Kindergarten war ich in einem Schockzustand, aber als die Emission angefangen hat, habe ich mich ziemlich schnell wieder gefangen... + + + Guten Tag. + + + Am Wichtigsten ist es, die Hubschrauber zu erreichen. + + + Ich brauche Medizin. + + + Mal sehen, was ich habe. Hier, bitte. + + + Tut mir leid, ich habe nicht mehr viel brig, deswegen kann ich Ihnen nichts mehr geben. + + + Wir haben Ihr Funksignal verfolgt. + + + Ja. Ich habe einen Stalker namens Guide kontaktiert. Er hat mir erklrt, wie man ber die unterirdischen Tunnel an diesen Ort gelangt. + + + Wer ist Guide? + + + Ein legendrer Stalker. Man sagt, er kann einen an jeden Ort der Zone bringen... Die Jungs von der Armee knnen sich glcklich schtzen, ihn getroffen zu haben. Ohne ihn wren sie nicht weit gekommen. + + + Woher wussten Sie, dass das Militr hier ist? + + + Guide hat es mir gesagt. Er war derjenige, der Kowalski und seinen Trupp hierher gebracht hat. + + + Ich verstehe. + + + Welche Informationen wollen Sie an die Regierung weitergeben? + + + Da gibt es vieles... Ich bin mir sicher, dass man mithilfe meiner Informationen die Zone zerstren kann. Ich dachte, ich knnte das selbst tun... aber das ist viel schwieriger, als ich eigentlich vermutet htte. Die Leute, die damit angefangen haben, haben keine Kontrolle mehr darber... Ich erklre das alles, wenn wir hier raus sind. + + + Was haben Sie im Sarkophag gesehen? + + + Das ist alles ein groer Schwindel... der Monolith, der Wunschgnner, erstunken und erlogen - ein Gert, das einem die Sinne vernebelt. Und die Leute, die dahinter stecken, halten sich an irgendeinem anderen Ort verborgen... + + + Wissen Sie, wer dahinter steckt? + + + Vielleicht, vielleicht auch nicht... Ich wei nicht mehr, was ich glauben soll... Dennoch habe ich mehr herausgefunden, als ihnen lieb ist. + + + OK, das ist genug. + + + Ich sage alles, was ich wei. Solange diese Informationen an die richtigen Leute geraten. + + + Ich habe unterwegs die Verstecke Ihres Trupps gefunden... + + + Ich frage mich, wie Sie das geschafft haben... Da mssten Aufzeichnungen gewesen sein. Haben Sie welche gefunden? + + + Ja, diese drei Mitteilungen habe ich gefunden. + + + Danke... Ghost und Fang waren meine Freunde... Zusammen ist es uns gelungen, den Hirnschmelzer zu berwinden und das Atomkraftwerk Tschernobyl zu erreichen. Leider sind sie mittlerweile nicht mehr am Leben. Nach unserer Rckkehr sind wir getrennte Wege gegangen. Ich wurde verwundet und bin mit dem Doktor in den Smpfen geblieben. Ich habe die beiden nie wieder gesehen... Erst viel spter habe ich erfahren, dass Fang von Sldnern gettet wurde und Ghost sein Vertrauen in die Wissenschaftler mit dem Leben bezahlt hat... Wie auch immer, das war frher... Jetzt wei ich, was getan werden muss, um sicherzugehen, dass meine Freunde nicht umsonst gestorben sind. + + + Ja, hier ist Ihre Nachricht an Ghost. + + + Danke... Ghost war mein Freund... Zusammen mit Ghost und Fang ist es mir gelungen, den Hirnschmelzer zu berwinden und das Atomkraftwerk Tschernobyl zu erreichen. Nach unserer Rckkehr vom Zentrum der Zone sind wir getrennte Wege gegangen. Ich wurde verwundet und bin mit dem Doktor in den Smpfen geblieben. Ich habe die beiden nie wieder gesehen... Erst viel spter habe ich erfahren, dass Fang von Sldnern gettet wurde und Ghost sein Vertrauen in die Wissenschaftler mit dem Leben bezahlt hat... + + + Ja, hier ist Fangs Mitteilung an Sie. + + + Danke... Fang war mein Freund... Zusammen mit Ghost und Fang ist es mir gelungen, den Hirnschmelzer zu berwinden und das Atomkraftwerk Tschernobyl zu erreichen. Nach unserer Rckkehr vom Zentrum der Zone sind wir getrennte Wege gegangen. Ich wurde verwundet und bin mit dem Doktor in den Smpfen geblieben. Ich habe die beiden nie wieder gesehen... Erst viel spter habe ich erfahren, dass Fang von Sldnern gettet wurde und Ghost sein Vertrauen in die Wissenschaftler mit dem Leben bezahlt hat... + + + Ja, hier ist Ihre Nachricht an Fang. + + + Danke... Fang war mein Freund... Zusammen mit Ghost und Fang ist es mir gelungen, den Hirnschmelzer zu berwinden und das Atomkraftwerk Tschernobyl zu erreichen. Nach unserer Rckkehr vom Zentrum der Zone sind wir getrennte Wege gegangen. Ich wurde verwundet und bin mit dem Doktor in den Smpfen geblieben. Ich habe die beiden nie wieder gesehen... Erst viel spter habe ich erfahren, dass Fang von Sldnern gettet wurde und Ghost sein Vertrauen in die Wissenschaftler mit dem Leben bezahlt hat... + + + Ja, hier ist Ihre Mitteilung an Ghost und Fangs Mitteilung an Sie. + + + Danke... Ghost und Fang waren meine Freunde... Zusammen ist es uns gelungen, den Hirnschmelzer zu berwinden und das Atomkraftwerk Tschernobyl zu erreichen. Leider sind sie mittlerweile nicht mehr am Leben. Nach unserer Rckkehr sind wir getrennte Wege gegangen. Ich wurde verwundet und bin mit dem Doktor in den Smpfen geblieben. Ich habe die beiden nie wieder gesehen... Erst viel spter habe ich erfahren, dass Fang von Sldnern gettet wurde und Ghost sein Vertrauen in die Wissenschaftler mit dem Leben bezahlt hat... + + + Ja, hier ist Ihre Mitteilung an Ghost und eine weitere an Fang. + + + Danke... Ghost und Fang waren meine Freunde... Zusammen ist es uns gelungen, den Hirnschmelzer zu berwinden und das Atomkraftwerk Tschernobyl zu erreichen. Leider sind sie mittlerweile nicht mehr am Leben. Nach unserer Rckkehr sind wir getrennte Wege gegangen. Ich wurde verwundet und bin mit dem Doktor in den Smpfen geblieben. Ich habe die beiden nie wieder gesehen... Erst viel spter habe ich erfahren, dass Fang von Sldnern gettet wurde und Ghost sein Vertrauen in die Wissenschaftler mit dem Leben bezahlt hat... + + + Ja, hier ist Ihre Nachricht an Fang und seine Nachricht an Sie. + + + Danke... Fang war mein Freund... Zusammen mit Ghost und Fang ist es mir gelungen, den Hirnschmelzer zu berwinden und das Atomkraftwerk Tschernobyl zu erreichen. Nach unserer Rckkehr vom Zentrum der Zone sind wir getrennte Wege gegangen. Ich wurde verwundet und bin mit dem Doktor in den Smpfen geblieben. Ich habe die beiden nie wieder gesehen... Erst viel spter habe ich erfahren, dass Fang von Sldnern gettet wurde und Ghost sein Vertrauen in die Wissenschaftler mit dem Leben bezahlt hat... + + + Ja. Leider habe ich sie nicht bei mir. + + + Mal sehen... oh, Sie haben ein groes Problem, Major! Es geht Ihnen so schlecht, dass Sie die Aufnahmeprfung fr das Raumfahrtprogramm wohl nur mit Ach und Krach schaffen wrden! Ha ha! + + + Na los, Major. Die Monolither werden nicht warten. + + + Major, wir vermissen eine Wache - der Mann hat seinen Posten verlassen. Sein Funksignal kommt aus dem Lebensmittelgeschft, aber er antwortet nicht. Gott wei, was ihm dort zugestoen ist. Vielleicht ist er ja durchgedreht - der Hubschrauberabsturz hat ihn ziemlich mitgenommen. Wrden Sie das Funksignal fr mich berprfen? + + + Klar, mach ich. + + + Ich kann nichts versprechen. + + + Major, wir mssen den Sphtrupp finden. + + + Sie mssen sich zusammen mit dem Sturmtrupp zu Objekt A17 begeben - Hauptmann Tarasow wird Ihnen den Weg zeigen. Das Ziel sind zwei Krankenhausflgel, die ber einen Durchgang miteinander verbunden sind. Monolither halten sich momentan im Westflgel auf. Sie mssen im anderen Flgel einen Hinterhalt vorbereiten. Sie drften das Gewehr dabei haben, vermutlich getragen vom grten Spinner unter ihnen. + + + Er ist wahrscheinlich der Anfhrer des Trupps. Die Jungs haben mitbekommen, wie er ihnen eine Predigt gehalten hat - ohne bertreibung! Seien Sie vorsichtig... wer wei, was man von dem Kerl erwarten kann! + + + Verstanden, Oberst. + + + Guten Tag. Ich bin Oberst Kowalski, Kommandeur dieser Einheit. + + + Ich bin Major Degtarew vom ukrainischen Geheimdienst. Ich bin autorisiert, das Fehlschlagen der Operation Fairway zu untersuchen. + + + Ich verstehe. Dann hren Sie mir zu, Major. Operation Fairway ist zusammen mit unseren Hubschraubern Geschichte! Die Hlfte meiner Jungs ist draufgegangen und wir haben keinen Kontakt zum Hauptquartier. Ich will genauso wie Sie wissen, warum die Operation fehlgeschlagen ist. + + + Irgendwelche Theorien? + + + Meine einzige Theorie ist, dass die Hubschrauber abgeschossen wurden. Und zwar mit einer uerst starken Waffe, ber die wir bisher nicht viel wissen. Monolither haben sie einmal gegen uns eingesetzt, beim ersten Angriff auf das Atomkraftwerk. Ich habe vor, in den Besitz einer dieser Waffen zu kommen und sie zu untersuchen. Wenn Sie bei der Sache mitmachen wollen - der Monolithertrupp mit der Waffe wurde bereits lokalisiert und unser Sturmtrupp wartet auf meinen Befehl, die Operation zu starten. Was sagen Sie dazu? + + + Ich mache mit. Aber nur unter der Bedingung, dass Sie alle Informationen, die Sie haben, mit mir teilen und mir zudem absolute Handlungsfreiheit gewhren. + + + Ich habe Informationen ber die unbekannte Waffe, das Gaugewehr. + + + Wow! Wie funktioniert es? Kann man damit einen Hubschrauber abschieen? + + + Theoretisch ist das mglich, aber die beschleunigten Projektile htten Lcher in den Hubschraubern hinterlassen. Aber es gibt keine Lcher. + + + Verdammt... das war dann wohl eine Sackgasse. Eine andere Theorie habe ich nicht. Also knnen wir nichts weiter tun, als mitten in dieser verdammten Zone zu sitzen und zu hoffen, dass sie uns angreifen... aber OK, genug geweint! Kmmern wir uns um Dinge, auf die wir hier und jetzt einen Einfluss haben. Dank Ihnen wissen wir, dass es gegen diese beschleunigten Projektile nicht hilft, einfach irgendwo in Deckung zu gehen. Das ist doch schon mal etwas. Deswegen bedanke ich mich bei Ihnen, Major. Ich melde mich bei Ihnen, falls wir etwas Neues erfahren. + + + Theoretisch ist das mglich, aber Stingray 4 und 5 sind aufgrund eines elektronischen Ausfalls abgestrzt. Beschleunigte Projektile wren dazu nicht in der Lage gewesen. + + + Wie geht die Operation voran? + + + Feldwebel Morosow ist gefallen. Die Monolither haben uns in eine Falle gelockt, indem sie ihre eigenen Leute geopfert haben. + + + Dreckscke! Sie konnten ber unseren Plan doch gar nicht Bescheid wissen?! Wir haben also unseren Scharfschtzen verloren. Was ist mit dem Ziel der Operation? + + + Wir mussten einige Verluste hinnehmen... die Monolither haben uns in eine Falle gelockt, indem sie ihre eigenen Leute geopfert haben. + + + Dreckscke! Sie konnten ber unseren Plan doch gar nicht Bescheid wissen?! Wir haben also einige Mnner verloren. Was ist mit dem Ziel der Operation? + + + Der Trupp ist tot... die Monolither haben uns in eine Falle gelockt, indem sie ihre eigenen Leute geopfert haben. + + + Dreckscke! Sie konnten ber unseren Plan doch gar nicht Bescheid wissen?! Wir haben also Tarasow und seine Mnner verloren. Was ist mit dem Ziel der Operation? + + + Ich habe die Waffe, aber sie wurde im Kampf beschdigt. + + + D.h. wir knnen nicht feststellen, ob damit die Hubschrauber abgeschossen wurden. Hren Sie, Major: Sie haben Verbindungen zu den Stalkern. Mglicherweise hatten sie vorher mit dieser Waffe zu tun. Bei denen gibt es bestimmt auch Techniker. Wrden Sie mit ihnen reden? + + + Klar. + + + Gut... ach, bevor ich's vergesse: Ein anderer Stalker hat es von der Jupiter-Anlage hierher geschafft - unterhalten Sie sich zuerst mit ihm, wenn Sie mchten. + + + Ich bin noch dabei. + + + Verstehe. Major, wir brauchen diese Waffe. Ich bin mir sicher, dass Sie verstehen, wie wichtig diese Angelegenheit ist. + + + Ja. + + + Ich habe beim Flugabwehrkomplex Wolchow deine Nachricht gefunden. Hier. + + + Hr zu... ach, egal. Ich glaube sowieso nicht, dass irgendeiner von euch dort aufkreuzen wird. Wenn du hier in der Gegend auf Militr stt, lass es mich wissen, ja? Danke schon mal im Voraus... + + + Major... Gott sei Dank! Ich bin gerettet! + + + Wie sind Sie hier gelandet? + + + hh... ich erinnere mich nicht wirklich daran. Ich hatte solche Angst, dass ich nicht mehr klar denken konnte... und ich wei nicht mal, was mir so eine Angst eingejagt hat. Ich habe einfach den Drang versprt, mich zu verstecken, und deswegen bin ich losgerannt... ich erinnere mich an Straen, irgendwelche Kreuzungen... und dann bin ich hier gelandet. Die Tr war von auen abgeschlossen... ich dachte, ich wrde hier drinnen sterben! Wie haben Sie mich gefunden? Aber... lassen Sie uns am besten von hier verschwinden... uns der Basis nhern. Dieses Loch hier macht mich ganz verrckt! + + + Gehen wir. + + + Hallo. Brauchen Sie medizinische Hilfe? Ich bin zwar kein Arzt, aber wenn es sein muss, kann auch ich Kugeln entfernen und Wunden nhen. + + + Ich brauche Informationen. + + + Dann fragen Sie. + + + ber Operation Fairway... + + + Was ist damit? + + + Ist etwas Ungewhnliches vorgefallen, als die Hubschrauber in der Luft waren? + + + Erst, als die Maschinen langsam abgestrzt sind. Wir haben uns an den Operationsplan gehalten: Sind 90 Sekunden vor der Emission gestartet, haben unser Schutzsystem aktiviert und den Autopiloten eingeschaltet. Wir haben uns auf die krzeste Sicherheitsroute begeben, die wir mit der Anomaliekarte berechnet hatten. Dass wir so gut wie keine Sicht mehr hatten, htte keine Auswirkungen auf die Mission haben drfen, denn der Korridor war breit genug. Laut dem Plan htten wir das Atomkraftwerk nach 12,5 Minuten erreichen mssen. Nach 9 Minuten ist jedoch der Kontakt zu Stingray 4 abgebrochen... und danach sind die anderen runtergekracht wie riesige Ziegelsteine. + + + Ich habe einige weitere Fragen ber die Operation... + + + Wissen Sie, was mit den Hubschraubern passiert ist? + + + Nicht wirklich. Ich wei nicht das Geringste ber Stingray 2 und 4... wo sie genau abgestrzt sind und was mit den Mnnern an Bord passiert ist. Die Informationen ber die anderen Maschinen stammen von den Mnnern, die das Ganze berlebt haben, daher sollten Sie keine exakten Angaben erwarten. Wir hatten ganz andere Sorgen! + + + Erzhlen Sie mir von Stingray 1. + + + Wie sind Sie hierher gekommen? + + + Unweit des Minenfelds sind wir auf einen Stalker gestoen. Ich glaube, er hatte die Explosion der Mine gehrt. Ein seltsamer Bursche war das... nannte sich selbst Guide. Er hat keine Fragen gestellt und uns einfach angeboten, uns nach Pripyat zu fhren. Das passte zu unserem Plan, daher war ich einverstanden. Fr den Fall der Flle haben wir ihn immer im Auge behalten, aber es ist alles gut gegangen. Er hat kein Wort geredet, bis wir die Stadt erreicht haben... und dann ist er ganz pltzlich verschwunden. Ich habe meinen Mnnern befohlen, nicht auf die Suche nach ihm zu gehen. + + + Erzhlen Sie mir von Stingray 3. + + + Hauptmann Tarasow sagt, dass beide Triebwerke ausgefallen wren. Sie mussten auf dem Hgel bei Position B2 notlanden. Sie hatten zwar Glck und landeten einigermaen sicher, aber der Techniker hatte keine Gelegenheit mehr, die Ursache der Fehlfunktion festzustellen, weil sie von Schnorks angegriffen wurden... dabei fielen drei Mann. Die restliche Besatzung wollte nicht dort bleiben - sie kontaktierten die Stingray 5-Besatzung und machten sich auf den Weg, sie zu treffen. Unterwegs gerieten sie in ein Gefecht mit einem stark bewaffneten gegnerischen Trupp, konnten sich aber ohne Verluste aus der Affre ziehen. + + + Wie sind sie nach Pripyat gelangt? + + + Die Besatzungen von Stingray 3 und 5 trafen unweit der Absturzstellen bei einem Schiff zusammen. Man hat mir berichtet, dass dort ein Mann leben wrde, der total durchgeknallt ist: Als meine Mnner versuchten, ihn zu verhaften, versuchte er seinerseits, sie gefangen zu nehmen! berlegen Sie sich das mal, der Kerl wollte es alleine gegen elf Mann aufnehmen! Trotz allem war es ein Glcksfall, dass die Mnner auf diesen Stalker gestoen waren, denn sie konnten sich am Ende irgendwie einigen und er fhrte sie nahezu ohne Zwischenflle nach Pripyat. Lediglich Leutnant Stezenko hat auf dem Weg hierher in einer Gravitationsanomalie ein paar Zehen verloren. + + + Erzhlen Sie mir von Stingray 5. + + + Die Bordelektronik hatte eine Fehlfunktion und Stingray 5 strzte mitten in einem Sumpf ab. Fnf Mann berlebten die Katastrophe. Als sie ihre Ausrstung aus dem Wrack holten, wurden sie von der Stingray 3-Besatzung kontaktiert. Der Truppkommandeur Major Neborski ist auf dem Weg zum Treffpunkt ums Leben gekommen. Der arme Kerl wurde ganz in der Nhe der Scanstation von einem Blutsauger gettet... die anderen haben es ohne Zwischenflle geschafft. Einen weiteren Mann, den Scharfschtzen Oberfeldwebel Batjaj, verloren sie, als sie in Pripyat ankamen und in einen Kampf mit den Monolithern gerieten. + + + Wie sind sie nach Pripyat gelangt? + + + Die Besatzungen von Stingray 3 und 5 trafen unweit der Absturzstellen bei einem Schiff zusammen. Man hat mir berichtet, dass dort ein Mann leben wrde, der total durchgeknallt ist: Als meine Mnner versuchten, ihn zu verhaften, versuchte er seinerseits, sie gefangen zu nehmen! berlegen Sie sich das mal, der Kerl wollte es alleine gegen elf Mann aufnehmen! Trotz allem war es ein Glcksfall, dass die Mnner auf diesen Stalker gestoen waren, denn sie konnten sich am Ende irgendwie einigen und er fhrte sie nahezu ohne Zwischenflle nach Pripyat. Lediglich Leutnant Stezenko hat auf dem Weg hierher in einer Gravitationsanomalie ein paar Zehen verloren. + + + Nicht viel. Ich wei nicht das Geringste ber Stingray 2... wo sie genau abgestrzt sind und was mit den Mnnern an Bord passiert ist. ber Stingray 4 drften Sie mehr wissen als ich. Leutnant Sokolow - das ist der, der mit Ihnen hierher gekommen ist - ist der einzige berlebende aus dem Hubschrauber. Die Informationen ber die anderen Maschinen stammen von den Mnnern, die das Ganze berlebt haben, daher sollten Sie keine exakten Angaben erwarten. Wir hatten ganz andere Sorgen! + + + Nicht viel. Ich wei nicht das Geringste ber Stingray 2... wo sie genau abgestrzt sind und was mit den Mnnern an Bord passiert ist. ber Stingray 4 reden Sie besser mit Leutnant Sokolow. Er ist der einzige berlebende aus dem Hubschrauber, der es nach Pripyat geschafft hat. Die Informationen ber die anderen Maschinen stammen von den Mnnern, die das Ganze berlebt haben, daher sollten Sie keine exakten Angaben erwarten. Wir hatten ganz andere Sorgen! + + + Ich brauche andere Informationen. + + + Ich habe keine weiteren Fragen. + + + Wie ist die Lage in Pripyat? + + + So beschissen, wie sie nur sein kann. In Pripyat wimmelt es von fanatischen Monolithern und verfluchten Zombies. Eine Emission jagt die nchste und als ob das nicht genug wre, muss man auch immer auf Mutanten und Anomalien achten... kurz gesagt: Willkommen in der Hlle! + + + Wie sieht es mit Ausrstung und Vorrten aus? + + + Erzhlen Sie mir mehr ber die Monolither. + + + Ganz einfach: Sie sind Fanatiker. Ich wei nicht, wer oder was sie so anstachelt, aber sie sind immer auf Kampf aus. Sie ziehen sich nicht mal zurck, wenn sie in Unterzahl sind und dazu auch noch schlechter bewaffnet... was sowieso nicht allzu oft vorkommt. Wie es scheint, bekommen sie regelmig Verstrkung aus dem Atomkraftwerk. Verflucht sollen sie sein! Einige unserer besten Mnner sind diesen Wilden schon zum Opfer gefallen... + + + Haben Sie einmal versucht, einen von ihnen zu befragen? + + + Das bringt nichts. Denn sie kmpfen nicht nur bis zum Tod, nein, es ist schlimmer: Einer unserer Jungs konnte einmal einen von ihnen lebend gefangen nehmen, der von einer Granate betubt war. Spter haben wir ihn dann fr einen kurzen Moment nicht im Auge behalten und er hat sofort seinen Kopf gegen die Wand gehmmert. Und zwar so hart, dass sein Schdel aufgebrochen ist wie eine verdammte Walnuss! + + + Was werden Sie jetzt machen? + + + Ich glaube nicht, dass wir Operation Fairway fortsetzen knnen. Dass Sie hier sind, beweist das. Mein Plan ist, die Basis so lange zu halten, bis die Hubschrauber auftauchen. Ich kenne mehrere mgliche Zeitpunkte fr die Evakuierung. + + + Es werden aber keine Hubschrauber kommen, solange wir nicht herausfinden, warum die Stingrays abgestrzt sind. + + + So ist das also... nun, zu Fu kommen wir hier nie weg! Wei der Teufel, wie viele Meilen das sind... und dann wimmelt es in der Zone ja auch von Stalkern, die nicht gerade unsere Freunde sind. D.h. also, dass unsere einzige Chance darin besteht, unsere eigenen Nachforschungen anzustellen... und dabei nicht draufzugehen. Major, wir haben dasselbe Ziel! + + + Nicht jetzt. + + + Ich bin ganz Ohr, Major. + + + Die einzige Ausrstung, die wir haben, ist das, was wir selbst hierher getragen haben. Oh, und natrlich die Sachen, die wir den Monolithern abgenommen haben, hauptschlich Munition. Daher sind wir besonders vorsichtig, was wir wem geben. Das trifft auch auf Lebensmittel zu - alles, was wir haben, sind unsere Rationen und das bisschen Essen, das wir im Lagerhaus der Monolither gefunden haben. + + + Die einzige Ausrstung, die wir haben, ist das, was wir selbst hierher getragen haben. Oh, und natrlich die Sachen, die wir den Monolithern abgenommen haben, hauptschlich Munition. Daher sind wir besonders vorsichtig, was wir wem geben. Was unsere Vorrte angeht: Da sieht es nicht viel besser aus, aber ich habe eine Vereinbarung mit Gari getroffen. Er besorgt uns Konservenessen und wir erlauben ihm, in der Basis zu bleiben, und drcken ein Auge zu, wenn er nach Artefakten sucht... es ist ja nicht so, dass wir eine andere Wahl htten. + + + Wir haben unsere Jungs gercht... erledigen Sie, was Sie zu tun haben, und lassen Sie uns dann zurckgehen. Ich will hier nicht lnger als ntig bleiben. + + + Lassen Sie uns hier keine Zeit verlieren, OK? Ich mchte so schnell wie mglich zur Basis zurckkehren... + + + OK. + + + Dort drben ist das seltsame Ding! Was glaubst du, wofr sie es brauchen? Ach, ist doch egal. Komm schon, Kumpel, erledige, was du tun musst, und dann lass uns zurck zur Basis gehen. + + + Bist du fertig? Ich wrde sagen, wir machen uns auf den Weg zurck zur Basis und futtern dort was... + + + OK. + + + Wie geht es Ihnen? + + + Beschissen. Es ist toll, mit meinesgleichen zu sein, aber ich stehe nicht wirklich darauf, meine Zeit mit anderen Leuten in einem groen Loch zu verbringen. + + + Ich habe Sie hier noch nie gesehen. Sind Sie vor kurzem erst gekommen? + + + Ja. Ich bin Leutnant Sokolow, Kopilot von Stingray 4. + + + Wie sind Sie hierher gekommen? + + + Mit einem Stalker namens Gari. Ich habe ihn gebeten, mich mitzunehmen, als er auf der Suche nach einem Weg Richtung Pripyat war. Das war eine verrckte Reise, das sage ich Ihnen! Zum Glck sind wir gleich auf unseren Sphtrupp gestoen, als wir in Pripyat angekommen sind. + + + Was ist mit Stingray 4 geschehen? + + + Wei der Teufel! Ich hatte ein schlechtes Gefhl bei der ganzen Sache... wir flogen mit dem Autopiloten, die Gerte waren in Ordnung, alles bestens. Und pltzlich saen wir in einem Haufen Schrott, als die ganze Bordelektronik ausfiel. Der Pilot und ich versuchten, flaches Gelnde zu erreichen, aber das hat nicht geklappt. Wir sind mitten in die Hauptwerkstatt der Jupiter-Anlage gekracht, sauber durch das Dach! Ich bin der Einzige, der das Ganze berlebt hat. + + + Ich brauche eine Krperpanzerung. + + + OK. Als Erstes haben wir hier den Helm. Und dann die Krperpanzerung - ich hoffe, sie passt, denn wir haben nur diese eine Gre. Ich habe das Ding zusammengeflickt, also sollte es gut genug sein. + + + Natrlich, Major. Unter den gegebenen Umstnden habe ich keine andere Wahl. Ach brigens, melden Sie sich am besten bei Leutnant Kirilloff. Er wird Ihnen einiges an Ausrstung geben. + + + Wegen den Hubschraubern... + + + Ich hre. + + + Mann, das ist ziemlich verrckt... ich wei jetzt schon, dass Kirilloff mich spter um Kopfschmerztabletten anbetteln wird. + + + Das Warten ist das Schlimmste. Es macht einen mehr fertig als alles andere... + + + OK, Major, die Mnner sind bereit zum Aufbruch. Frischen Sie falls ntig bei Rogowez und Kirilloff Ihre Vorrte auf. Lassen Sie mich wissen, wenn Sie bereit sind. + + + OK. + + + Abmarsch. + + + Nun, in dem Fall muss der Schutzanzug absolut dicht sein, so wie die der Wissenschaftler. Aber auf der anderen Seite drfte es nicht einfach sein, Hermann dazu zu bringen, mir einen Schutzanzug zu geben. Wenn es nach ihm ginge, msste ich splitternackt durch die Zone wandern, statt mich in ihrem tollen Bunker breitzumachen... aber ich schtze, Sie knnten Oserski fragen. Er ist ein bisschen freundlicher und knnte sich berreden lassen, mir einen Schutzanzug zu berlassen. + + + Also Major? + + + [fortfahren...] + + + [fortfahren...] + + + Ich war an Bord des Vogels. Als die Kommunikation mit Stingray 4 abgebrochen ist, habe ich sofort die anderen ber die abgemachte Evakuierungsstelle in Pripyat informiert - ich habe geglaubt, dass wir es zu Fu zum Atomkraftwerk schaffen knnten. Kurz darauf wurde der Hubschrauber getroffen und es roch nach Rauch - das Triebwerk war in Flammen aufgegangen. Den Piloten gelang es, auf dem Hubschrauberlandeplatz bei der Jupiter-Anlage zu landen, aber sie kamen dabei beide ums Leben. Danach fiel Feldwebel Schlijatschin - denn es stellte sich heraus, dass die Gegend um den Landeplatz vermint war. In Pripyat haben wir dann beim Kampf gegen die Monolither um dieses Gebude einen weiteren Mann verloren, einen Oberleutnant. + + diff --git a/gamedata/configs/text/ger/st_dialogs_zaton.xml b/gamedata/configs/text/ger/st_dialogs_zaton.xml new file mode 100644 index 0000000..4746791 --- /dev/null +++ b/gamedata/configs/text/ger/st_dialogs_zaton.xml @@ -0,0 +1,3117 @@ + + + + Ich habe im Baggerschiff ein sonderbares Artefakt gefunden. Hier. + + + Interessant - ein Semi-Artefakt... Hier, deine Belohnung. Ich bin grozgig, wenn jemand seine Sache gut macht... Wie es scheint, wurdest du gut ausgebildet. Schau bei mir vorbei, falls du Arbeit brauchst. Ich kriege oft Bestellungen rein. Die Kunden wollen bestimmte Artefakte und bezahlen gut. + + + Hast du Arbeit fr mich? + + + Eine Kleinigkeit knntest du fr mich erledigen... Letzte Nacht haben Stalker ein merkwrdiges Leuchten im Baggerschiff gesehen... Soll selbst fr diese Gegend ziemlich komisch gewesen sein. Geh doch der Sache mal auf den Grund. + + + Mache ich. + + + Pass dort gut auf dich auf - der Ort ist vllig verstrahlt. Vergiss nicht, Medikamente mitzunehmen. Du wirst mir fr diesen Rat noch dankbar sein. + + + Jetzt nicht. + + + Ich habe alle Jobs vergeben, die ich fr heute hatte. + + + Nimm dieses Semi-Artefakt. + + + Hier ist dein Anteil. Ich bin grozgig, wenn jemand seine Sache gut macht... Wie es scheint, wurdest du gut ausgebildet. Schau bei mir vorbei, falls du Arbeit brauchst. Ich kriege oft Bestellungen rein. Die Kunden wollen bestimmte Artefakte und bezahlen gut. + + + Ich habe ein sonderbares Artefakt im Baggerschiff gefunden. Magst du es dir mal ansehen? + + + Interessant - ein Semi-Artefakt... Ich nehme es. 3.000 drfte ein fairer Preis sein. + + + Ich habe gesehen, wie dir jemand ein Artefakt gegeben hat, das ich gefunden habe. + + + Tut mir leid, aber das interessiert mich nicht. Meine Regeln sind ziemlich einfach: Wer liefert, wird bezahlt. Du weit, wie es in der Zone luft - halte die Augen offen, reagiere schnell und traue niemandem ber den Weg. Aber falls du ab und zu Arbeit brauchst, bin ich der richtige Ansprechpartner. Ich kriege oft Bestellungen rein. Die Kunden wollen bestimmte Artefakte und bezahlen gut. + + + Welche Artefakte brauchst du? + + + Gravit. + + + Ausgezeichnet, das ging ja schnell. Hier, deine Belohnung. + + + Auge. + + + Blase. + + + Muschel. + + + Goldfisch. + + + Flamme. + + + Feuerfliege. + + + Schneeflocke. + + + Ich kann dir Gravit verkaufen. + + + Irgendwas luft hier verkehrt. Die Leute nehmen Auftrge an und dann verschwinden sie... Ich kriege langsam ein schlechtes Gefhl und muss den Laden wohl dichtmachen. + + + Ich kann dir Auge verkaufen. + + + Ich kann dir Blase verkaufen. + + + Ich kann dir Muschel verkaufen. + + + Ich kann dir Goldfisch verkaufen. + + + Ich kann dir Flamme verkaufen. + + + Ich kann dir Feuerfliege verkaufen. + + + Ich kann dir Schneeflocke verkaufen. + + + Verstehe. Ich komme spter wieder. + + + Beide Teams, die fr mich gearbeitet haben, sind verschwunden... Ich habe beschlossen, erstmal keine Auftrge mehr anzunehmen. + + + Die Sache ist erledigt. + + + Ausgezeichnet! Hier ist deine Belohnung. + + + Hier. Ist zwar vielleicht nicht viel, aber immerhin. + + + Erzhle mir von deinen Artefakt-Auftrgen. + + + Wen knnte ich anheuern, um die Wissenschaftler zu beschtzen? + + + Meine Jungs - Spartacus und sein Trupp. Sie haben viel Erfahrung. Einige von ihnen waren beim Sicherheitsdienst, bevor es sie in die Zone verschlagen hat, andere sogar in einer Spezialeinheit der Polizei - ob du's glaubst oder nicht. Die wissen, wie man mit einer Waffe umgeht... Wenn sie den Job machen, sind sie sicher gute Wachen. + + + Ich htte da jemanden fr dich, aber angesichts der jngsten Ereignisse... Der Trupp von Spartacus weilt nicht mehr unter uns... Mgen sie in Frieden ruhen. + + + Wen knnte ich anheuern, um Messungen fr die Wissenschaftler vorzunehmen? + + + Kennst du Gonta und seine Jungs? Wenn nicht gerade Jagdsaison ist, sind sie... hm... froh, wenn sie was zu tun haben. Vor allem, wenn's ausnahmsweise mal nichts mit Rumgeballer zu tun hat. Ihre Einstellung ist: "Wenn mein Finger Sehnsucht nach dem Abzug hat, kann ich ja immer noch auf die Jagd gehen." + + + Da kann ich dir wirklich nicht weiterhelfen. Ich wrde Gontas Trupp empfehlen, aber ich habe schon lange nichts mehr von ihnen gehrt. + + + Erzhle mir vom Leben hier. + + + Da wei ich gar nicht, wo ich anfangen soll. Wenn du mir konkrete Fragen stellst, versuche ich, sie zu beantworten. + + + Was machen die Stalker hier? + + + Das msstest du doch am besten wissen, Kumpel. Ihr Ausgangspunkt ist die Skadowsk und von dort aus erkunden sie das Gebiet auf der Suche nach Artefakten. Wenn ihnen irgendetwas oder irgendjemand zu Nahe kommt, fackeln sie nicht lange und drcken auf den Abzug. Danach kehren sie wieder zurck zur Skadowsk, um sich vollaufen zu lassen und den Magen vollzuschlagen... Sie genieen die Ruhe, bevor es zum nchsten Beutefeldzug geht. Anders sieht es allerdings aus, wenn eine Emission im Gange ist. Dann sitzen wir alle angespannt da und sind gedanklich bei denen, die nicht rechzeitig Deckung gefunden haben... + + + Was hat die Stalker zum Zentrum der Zone gefhrt? + + + Eine komische Frage. Einige hoffen, die nchste Artefakt-Goldgrube zu entdecken. Andere wiederum verschlgt es hierher, weil sie den Gerchten um die Oase Glauben schenken, oder weil sie den Wunschgnner suchen. Und nicht zu vergessen die ureigensten menschlichen Triebe - Gier und Neugierde... Jeder hat seine Grnde und ich bin mir sicher du auch. + + + Was hat dich hierher verschlagen? + + + Ich bin mit Grouse hierher gekommen, nachdem der Hirnschmelzer deaktiviert worden war. Aber ich denke nicht, dass es wirklich das ist, was du wissen willst, richtig? Hauptschlich handle ich mit Artefakten. Die Welt auerhalb der Zone hat schon genug Schnickschnack, deswegen wollen die wichtigen Kunden auergewhnliche Sachen. Aus diesem Grund habe ich beschlossen, ein Stalkerlager zu errichten, wo immer noch mit hochwertigen Waren gehandelt wird. Und wenn ein Stalker mit seiner Beute zurckkommt, was braucht er dann? Ein khles Bier in der Hand und jemanden zum Plaudern. Und das kriegt er auf der Skadowsk. + + + Was hltst du von den Banditen? + + + Ganz einfach: Wenn sie sich an Bord der Skadowsk anstndig auffhren, habe ich nichts gegen sie. Im Grunde genommen hat man es selten mit Vollidioten zu tun. Einige von ihnen sind sogar ehemalige Stalker. Wer wei, vielleicht beschliet ja einer von den armen Kerlen, die krummen Geschfte bleiben zu lassen, bevor er eine Kugel in den Kopf kriegt... Das Leben steckt voller berraschungen. + + + Nein, ist schon gut. Vergiss es. + + + Wenn du meinst. + + + Sag, sind hier irgendwelche Leute vom Militr aufgetaucht? + + + Denk mal nach. Was wrden denn Soldaten in unserem Lager wollen? Du kannst mir glauben, wenn ich dir sage, dass sie diesen Ort lieber meiden. Viele von uns hier erinnern sich noch allzu gut daran, wie es war, als wir beim Kordon durch den Dreck kriechen mussten - whrend uns ihre MG-Kugeln um die Ohren geflogen sind... + + + Erzhl mir vom Kompass-Artefakt. + + + Das Artefakt gibt es nur in Legenden. Man sagt, Kompass htte keine schdlichen Nebenwirkungen und bringt einen unbeschadet aus jeder Anomalie raus, wenn man das Artefakt richtig einsetzt. Du verstehst also, warum die Kunden Schlange stehen wrden, um es in die Finger zu kriegen. Erst neulich hat mir jemand erzhlt, dass Noah etwas darber wissen soll. Er ist ein Stalker und lebt sdlich von hier. + + + Gut, ich werde Noah einen Besuch abstatten. + + + Ich werde darber nachdenken. + + + Ein legendres Artefakt, wie ich bereits gesagt habe. Angeblich wei ein Stalker namens Noah etwas darber. Er lebt sdlich von hier. + + + Ich habe nicht weit von der Janow-Station entfernt ein merkwrdiges Artefakt gefunden. Interesse? + + + Lass mich mal einen Blick darauf werfen... Ist auf jeden Fall ein komisches Ding, aber ich glaube nicht, dass ich dafr einen Kufer finde. Ich schlage vor, du gehst zurck zur Janow-Station und zeigst es den Wissenschaftlern. Merkwrdiges Zeug lsst ihre Herzen hher schlagen. + + + Uhu sagt, du hltst dich nicht an die Abmachung. + + + Wir haben eine ganz klare bereinkunft getroffen: Ich kriege die Detektoren, verwende sie und jeder bekommt seinen Anteil. Ich habe ihn schon fr zwei Detektoren bezahlt, insofern habe ich mich an unsere Abmachung gehalten. So war es ausgemacht. Wenn du fr Uhu arbeitest, kannst du den dritten Detektor zurckbringen - ich kaufe ihn nicht. + + + Also, was soll ich Uhu sagen? + + + Denke schon. + + + Wenn ich du wre, wrde ich mit Uhu keine Geschfte machen. Falls du gutes Geld machen willst, kann ich dir bei der Artefaktjagd einen Vorsprung geben. Zwei bis drei Stunden - genug, um alle anderen zu schlagen. Auerdem htte ich einen besonderen Auftrag, falls du Interesse hast. Ich brauche unbedingt ein Artefakt namens Kompass. + + + Sultan konnte sich das Kompass-Artefakt unter den Nagel reien. + + + Dieser Mistkerl gibt einfach keine Ruhe... gut, ist keine groe Sache. Versuch noch mal mit Noah zu reden. Den neuesten Gerchten zufolge knnte es... ntzlich sein. + + + Ich habe ein Kompass-Artefakt gefunden. Hier. + + + Du rettest mir wirklich den Arsch, Kumpel! Ich bin mir sicher, dass ich diesen wichtigen Kunden jetzt in der Tasche habe. Es hat da ein Gercht gegeben, wonach Sultan angeblich vorhatte, mich aus dem Geschft zu drngen. Der muss wohl in den sauren Apfel beien, und das zu Recht. Hier, fr dich - hast du dir redlich verdient. + + + Ich will nicht nach dem Kompass-Artefakt suchen. + + + Schade. Tja... + + + Sultan lsst dich gren. Ach brigens, alle deine Versorgungswege wurden geschlossen. + + + Jetzt ist klar, wer hinter all dem steckt... Ich werde die Skadowsk nicht verlassen. Wie es scheint, habe ich keine andere Wahl und muss fr dich und Sultan arbeiten. Er bekommt seinen Anteil an den Verkufen und du wirst auch jeden Tag kommen und die Hand aufmachen. Das Geld wird da sein. + + + Gib mir meinen Anteil. + + + Hier. + + + Du bist frh dran. Ich habe das Geld noch nicht. + + + Glaubst du, dass Nimble mit gestohlenen Waren handelt? + + + Das bezweifle ich... Soweit ich wei, berlsst er die schmutzigen Geschfte lieber anderen. Ein guter Geschftsmann legt groen Wert auf seinen Ruf und Namen. Alles in allem habe ich noch nie jemanden schlecht ber Nimble reden hren. + + + Ich suche Snag. Hast du eine Idee, wo er sein knnte? + + + Das letzte Mal habe ich ihn gesehen, als er gerade aus der Bar gekommen ist. Wenn ich die Unterhaltung noch richtig in Erinnerung habe, ist er unterwegs zu den Dockkrnen gewesen. Solltest vielleicht dort nach ihm suchen. + + + Jemand hat vor, eine Gruppe von Stalkern zu berfallen. Auch unsere Jungs. + + + Wow, Mann. Die Banditen vermehren sich wie die Fliegen und jetzt kmpfen wir sogar gegeneinander? + + + Man hat mich gefragt, ob ich bei einem Angriff auf das Lager in der Nhe der Schewtschenko mitmachen will. + + + Arschlcher... Es wre sogar gut, wenn du ihr Angebot annehmen wrdest. Verstehst du, worauf ich hinaus will? Ich knnte so meine Jungs vorwarnen, damit sie unseren Gsten einen warmen Empfang bereiten. + + + Einverstanden. + + + Gut, geh zu den Idioten und ich werde meinen Jungs Bescheid sagen. + + + Tut mir leid, da kann ich dir nicht helfen. + + + Ich habe in der Oase ein Artefakt gefunden. Interesse? + + + Das Herz der Oase? Nein, ich denke, da muss ich passen. Jeder sagt was anderes... Vielleicht ist es nur ein Aberglaube, aber ich will lieber die Finger davon lassen. Ich glaube, es wre nicht verkehrt, das Ding den Wissenschaftlern zu geben. Die sehen sich das dann bestimmt genauer an und knnen uns sagen, welche Auswirkungen das Artefakt auf Menschen hat. + + + Bist du neu hier? Das ist OK, wirst dich frh genug an alles gewhnen... Die Zone ist ein strenger Lehrmeister, musst du wissen. Ich bin Beard, der Barmann von hier. Komm zu mir, wenn du irgendwelche Fragen hast, alles klar? + + + Lass hren. + + + Wie wre es damit, Artefakte zu suchen und dabei ein bisschen Kohle zu machen? + + + Wie sieht's mit meinem Auftrag aus? Vergiss nicht: Wer zuerst kommt, mahlt zuerst... + + + Du bist spt dran, jemand hat mir schon dieses Artefakt gebracht. Ich nehme es trotzdem gerne, werde dafr aber nicht genauso viel zahlen. + + + Da ist was im Busch. Es heit, die Banditen planen einen groen Waffeneinkauf. Unsere Jungs wollen ihnen folgen und die Transaktion verhindern. Wir wren fr jede Hilfe sehr dankbar. + + + Und? + + + Warum sind in der Klranlage Sldner? + + + Du solltest dich dort nicht blicken lassen. Hat dich nicht zu interessieren. + + + Arbeitest du gerne fr die Wissenschaftler? + + + Doch, schon. Ich freue mich, dass du ausgerechnet zu uns gekommen bist. Bessere Wachen als uns knnen die Wissenschaftler nicht kriegen. + + + Ich stelle einen Trupp zusammen und breche dann auf nach Pripyat. Willst du dich uns anschlieen? + + + Nein. Ich muss auf die Wissenschaftler aufpassen. Du knntest es bei Sokolow versuchen - Wenn ich mich richtig erinnere, wollte er nach Pripyat. + + + Nein. Ich muss auf die Wissenschaftler aufpassen. Schlielich sind wir hier, um sie zu beschtzen. + + + hm... nein, fr's Erste bleibe ich hier. + + + Willst du fr die Wissenschaftler arbeiten? + + + Kommt drauf an... Um was geht es? + + + Sie brauchen Leute, die ihren Bunker beschtzen. + + + Klar, und danke fr das Angebot. + + + Sie brauchen Leute, die Messungen in Anomalien vornehmen. + + + Das ist nichts fr uns. Frag lieber die Stalker. + + + Hr zu, Stalker. Mein knurrender Magen geht mir schon tierisch auf den Senkel und dein Generve macht es nur noch schlimmer... + + + Ich knnte dir was zu Essen bringen. + + + Hah! Gut, mach das. Fleischkonserven, Wurst und Brot... jeweils sechs Rationen. Und bring nicht zu wenig, wir sind fast am Verhungern. + + + Ich habe gehrt, hier knnte Werkzeug herumliegen. + + + Was wei ich!? Aber ich will nicht, dass du hier herumspazierst. Wir haben schon genug um die Ohren - ich kann nicht einmal jemanden losschicken, um Proviant zu holen. + + + Was wei ich!? Kannst gerne den ganzen Schrott durchwhlen. Vielleicht findest du, wonach du suchst. + + + Hier ist der Proviant. + + + Wow, ich hatte die Hoffnung schon aufgegeben... danke. Wird ein feines Essen fr die Jungs. Was wolltest du noch mal? Im Schrott herumstbern? Nur zu. Vielleicht findest du, wonach du suchst. Aber hr auf, mit der Waffe herumzufuchteln! + + + Wow, ich hatte die Hoffnung schon aufgegeben... danke. Wird ein feines Essen fr die Jungs. Hr zu, wenn du dich hier umsehen willst, nur zu... Aber hr auf, mit der Waffe herumzufuchteln! + + + Du bist hier nicht willkommen. Das ist unser Lager und es gibt keinen Grund, hier herumzuschnffeln. Meine Jungs sind hungrig und die Nerven liegen blank... + + + Zisch ab! Meinen Jungs knurrt der Magen und sie sind wirklich nicht gut drauf. Ihnen juckt der Finger am Abzug... + + + Oh, Stalker... ist es wichtig? Wenn nicht, mach ich mich wieder an die Arbeit. + + + Ich bin bereit fr die Jagd. + + + Gut, gehen wir. + + + Dann los. + + + Du bist zu frh. Komm um 3 Uhr morgens wieder. + + + Ich verstehe. + + + Wir auch... abgesehen von der Emission - die Chimre schlft jetzt bestimmt nicht. Ich schtze, wir mssen unser Glck ein andermal versuchen... + + + Gonta ist tot. Wie konnte das nur passieren... Willst du zufllig zur Janow-Station? Trapper, Gontas Freund, ist dort. Du knntest ihm sagen, dass die Chimre tot ist. Ich gehe jetzt wahrscheinlich zurck. + + + Pass auf dich auf. + + + Das kann doch wohl nicht wahr sein. Gonta ist draufgegangen und du bist daran nicht ganz unschuldig... Was sollen wir jetzt machen? + + + Pass auf dich auf. + + + Erzhle mir von dir. + + + Ich bin Gonta, Anfhrer des Jagdtrupps. Wir verdienen unser Geld mit dem Tten von Mutanten. Wir knnen sie auch lebend fangen - fr wissenschaftliche Experimente oder falls jemand ein exotisches Haustier haben will... Wie Trapper immer sagte: "Jedem Tier seine Kugel..." + + + Erklre mir, wie man Mutanten jagt. + + + Also ich bin zwar nicht der erfahrenste Jger weit und breit, aber ich kann dir dennoch einiges ber Rudeltiere wie Fleisch, Wildschweine, Schattenhunde, Pseudohunde, Schnorks und Hamster erzhlen... Sogar ber Blutsauger wei ich das ein oder andere. + + + Erklre mir, wie man Fleisch und Wildschweine jagt. + + + Also, Schweine - auch "Fleisch" genannt - sind die harmlosesten Mutanten. Sie bleiben Stalkern fern, aber wenn du sie angreifst, werden sie aggressiv. Ist jedoch ein Wildschwein dabei, bedeutet das nichts Gutes. Dreihundert Kilo geballte Kraft sollte man nicht auf die leichte Schulter nehmen. Steh diesem Viech blo nicht im Weg, wenn es auf dich zuluft, sondern mache dir die Situation zunutze... Ein gewichtiges Biest wie dieses kann nicht sofort reagieren. Geh schnell auf die Seite und dann hau dem Wildschwein eine Ladung Schrot um die Ohren. + + + Erzhle mir etwas ber Schattenhunde und Pseudohunde. + + + Allein umherstreunende Hunde sind nicht besonders gefhrlich, aber im Rudel ist mit ihnen nicht zu spaen. Sie greifen nur an, wenn sie hungrig sind... Und das blde ist: Sie sind fast immer hungrig. Hast du es also mit einem ganzen Rudel zu tun, versuche, sie von einer erhhten Position aus unter Beschuss zu nehmen - ansonsten rennen sie dich einfach ber den Haufen. Das gilt vor allem dann, wenn ausgewachsene Pseudohunde dabei sind. Sie sind nicht viel krftiger als Schattenhunde, aber gerissener und deshalb sehr gefhrlich... Wenn sich ein Pseudohund pltzlich in ein ganzes Rudel verwandelt, denke daran: Du wirst von Phantomen angegriffen. Der richtige Pseudohund hlt sich wahrscheinlich eher im Hintergrund und wird nur ab und zu versuchen, dich zu beien... Versuche, ihn zu identifizieren. Sobald der richtige Pseudohund tot ist, verschwinden die Phantome einfach. + + + Erzhle mir etwas ber Schnorks. + + + berreste von Menschen... Ein einzelner Schnork ist fr einen erfahrenen Jger kein allzu groes Problem. Du wartest, bis er dir entgegen springt, und dann verpasst du ihm eine Ladung Schrot. Hast du es mit mehreren Schnorks zu tun, musst du so schnell wie mglich auf sie schieen, whrend du ihren Sprngen ausweichst. Sie wissen das, und deswegen greifen sie normalerweise zusammen an. + + + Erzhle mir etwas ber Hamster. + + + Ein Alptraum fr jeden Jger... Der grte Fehler wre, sie wegen ihrer geringen Gre zu unterschtzen. Sie sind unglaublich schnell, beweglich und immer im Rudel unterwegs. Sobald dutzende kleine Krallen in deinen Krper schneiden, ist der Zeitpunkt gekommen, an dem du sie nicht mehr unterschtzt, sondern abdrckst... Und das ist das grte Problem: Sie sind uerst schwer zu treffen. Aus diesem Grund rate ich den Stalkern immer, eine geladene Schrotflinte mit dabei zu haben. + + + Erzhle mir etwas ber Blutsauger. + + + Blutsauger sind ausgezeichnete Jger und knnen sich gut verstecken. Mit ihrer Tarnung kann man sie fast nicht mehr sehen. Wenn du einen Blutsauger jagst, versuche, ihn aufzuscheuchen. In Bewegung kann man ihn besser erkennen... Denke daran, dass Blutsauger versuchen, sich von hinten an dich heranzuschleichen und ihre Fhler um deinen Hals zu legen. Das ist richtig unheimlich, Mann... Wenn du Pech hast und einigen Blutsaugern ber den Weg lufst, sieh dich immer wieder um. + + + Ach, schon gut. + + + Sollte ich Magpie ber den Weg laufen, gebe ich dir auf jeden Fall Bescheid. + + + Es wird sich fr dich lohnen... Ich werde ihn ordentlich zurechtstutzen. + + + Was hat Magpie verbrochen? + + + Eines Tages ist er zu mir gekommen und hat gesagt, dass er wegen eines Controllers seine Beute nicht holen kann. Zu dem Zeitpunkt hat in meinem Trupp ein Mann gefehlt. Unser Fhrtensucher Danila war unterwegs, um Blutsaugern zu ihrem Lager zu folgen. Also haben wir beschlossen, Magpie mit seiner Beute zu helfen, und dafr ist er dann mit uns auf die Jagd gegangen. Er musste nur in der Nhe des Baus Ausschau nach der Chimre halten... + + + Und was ist dann passiert? + + + Ganz einfach: Dieser Bastard hat sich mit seiner Beute aus dem Staub gemacht - und nebenbei auch noch unsere eigene Beute gekrallt. Als die Chimre endlich aufgetaucht ist, waren wir darauf nicht vorbereitet, weil Magpie vorher abgehauen ist. Das ging alles so schnell, dass Garmata nicht reagieren konnte. Anstatt zu jagen, musste ich schlielich meinen Trupp verteidigen. Ich habe die Chimre zwar getroffen, aber sie hat Krabbe erwischt und ist dann verschwunden. Eine Woche Vorbereitung fr die Katz! + + + Du hast das Jagen wohl im Blut, Mann! Hier, eine persnliche Trophe von mir... Wie Trapper immer gesagt hat: "Dein Knnen ist deine wichtigste Waffe..." Ach brigens, willst du demnchst zur Janow-Station? Du knntest Trapper sagen, dass die Chimre tot ist. Ich bleibe erstmal auf der Skadowsk, bis es Krabbe wieder besser geht. Kommst du mit uns mit? + + + Ja, gehen wir. + + + Nein, ich sehe mich noch ein bisschen hier in der Gegend um. + + + Wir haben's geschafft. Hier, eine persnliche Trophe von mir... Das htte zwar alles ein bisschen reibungsloser ablaufen knnen, aber ist schon in Ordnung. Wie Trapper immer gesagt hat: "Wer Erfahrung hat, braucht keine Fallen..." Ach brigens, willst du demnchst zur Janow-Station? Du knntest Trapper sagen, dass die Chimre tot ist. Ich bleibe erstmal auf der Skadowsk, bis es Krabbe wieder besser geht. Kommst du mit uns mit? + + + Garmata ist tot... Diese Chimre ist uns teuer zu stehen gekommen. Du willst nicht zufllig demnchst zur Janow-Station, oder? Wir sollten Trapper wissen lassen, dass die Chimre tot ist. Ich bleibe erstmal auf der Skadowsk, bis es Krabbe wieder besser geht. Kommst du mit? + + + Ich habe Danila gefunden. Er ist tot. Tremor hat ihn umgebracht. + + + Oh Mann! Warum muss es immer die Guten erwischen? Tremor, dieser Mistkerl! Danila war ein verdammt feiner Kerl! + + + Glaubst du, dass Nimble mit gestohlenen Waren handelt? + + + Gestohlene Waren? Wie kommst du darauf? Ich kenne Nimble schon lange und bestelle bei ihm regelmig Waffen. Er verkauft gute Ware zu einem vernnftigen Preis. Das, was du da sagst, hre ich zum ersten Mal. Wahrscheinlich hat er Konkurrenz bekommen und die Leute sind so verzweifelt, dass sie sich nur mit Gerchten zu helfen wissen... + + + Ich stelle einen Trupp zusammen und breche dann auf nach Pripyat. Willst du dich uns anschlieen? + + + Ich habe einen Vertrag mit den Wissenschaftlern und muss ihn einhalten. Auerdem ist mir nicht wirklich danach. Rede doch mal mit Sokolow. Der nervt mich die ganze Zeit damit, dass er doch unbedingt nach Pripyat muss, aber zu viel Schiss hat, alleine zu gehen. Ein toller Soldat ist das... + + + Ich habe einen Vertrag mit den Wissenschaftlern und muss ihn einhalten. Auerdem ist mir nicht wirklich danach. Tut mir leid, Mann. + + + Ne, mir ist nicht danach. Die groe Jagd findet hier statt. Du weit besser als die meisten anderen, wie viele Mutanten nach wie vor diese Gegend unsicher machen - genug, um einem guten Jger fr den Rest seines Lebens die Zeit zu vertreiben. + + + Wollt ihr fr die Wissenschaftler arbeiten? + + + Worum geht es? + + + Sie brauchen jemanden, der ihren Bunker bewacht. + + + Nein danke. Ich bin Jger, bei mir dreht sich alles um Mutanten. Und Mutanten stellen fr den Bunker keine Bedrohung dar. Menschen allerdings schon. + + + Sie brauchen jemanden, der Messungen in Anomalien vornimmt. + + + Warum nicht? Darum knnen wir uns kmmern. Ich erklre hiermit die Jagdsaison offiziell fr beendet! Wird bestimmt 'ne nette Abwechslung zu unserem normalen Alltag - du weit schon, jedes Mal weiche Knie, wenn man sich auf den Weg zur Jagd macht... + + + Nein, im Moment nicht. Die Jagd geht vor. Ich habe mit dieser Chimre noch ein Hhnchen zu rupfen. Wir drfen nicht zulassen, dass dieser blutrnstige Mutant die Zone unsicher macht und einen Stalker nach dem anderen erwischt. + + + Das einzige, was ich jetzt will, ist Magpies Kehle, damit ich sie ihm durchschneiden kann. Dann bin ich entspannt und wir knnen uns ber geschftliche Dinge unterhalten. + + + Spter. Wir haben so schon genug um die Ohren. Eine Chimre ist auf unserer Abschussliste und wir wollen Magpie aufspren. Keine Zeit fr andere Dinge. + + + Ich habe Magpie gefunden. Er ist in der Janow-Station und gibt sich dort als "Flint" aus. + + + Dieser Mistkerl ist noch am Leben? Nun, nicht mehr lange... Hier, eine Belohnung fr deinen heien Tipp. Ich wei das sehr zu schtzen. Ich kann's gar nicht mehr erwarten, dieses Sackgesicht zu erwischen. Flint, sagst du also... + + + Ja. Danke. + + + Hey, hast du diesen Kerl namens Magpie gesehen? Kennst du ihn? Nein? Solltest du diesem Mistkerl ber den Weg laufen, kannst du ihm gerne eine Kugel in den Kopf jagen. Oder du sagst mir, wo er ist, dann kmmere ich mich selbst darum. + + + Hallo. + + + Warte! Wir haben die Chimre aufgesprt und drfen keine Zeit verlieren. Krabbe liegt immer noch flach, Danila ist noch nicht zurck und zu zweit macht es keinen Sinn, dem Biest hinterher zu jagen. Wir brauchen einen dritten Mann. Du bist ein zher Bursche und hast Magpie gefunden. Wie wre es, wenn wir diese stinkende Chimre zusammen jagen? + + + Warte! Wir haben die Chimre aufgesprt und drfen keine Zeit verlieren. Krabbe liegt immer noch flach und Danila... tja... zu zweit macht die Jagd keinen Sinn. Wir brauchen einen dritten Mann. Du scheinst ein zher Bursche zu sein. Wie wre es, wenn wir diese stinkende Chimre zusammen jagen? + + + Mit Vergngen. + + + Wie Trapper immer gesagt hat: "Beim Jagen ist das Jagen selbst nur die halbe Miete..." Wie auch immer: Wenn die Chimre in der Nacht auf Beutesuche war, kehrt sie ungefhr um drei Uhr morgens wieder in ihren Bau zurck und hlt ihren Schnheitsschlaf ab. Das ist der Moment, an dem wir zuschlagen mssen... Falls du Zeit hast, komm um drei Uhr morgens hierher und wir brechen auf zur Jagd. Wir treffen uns an der Bar. + + + Ich werde darber nachdenken. + + + Wenn du dich entschieden hast, schau gegen drei Uhr morgens in der Bar vorbei. Um diese Zeit kriecht die Chimre zurck in ihren Bau und legt sich aufs Ohr. + + + Na, alles klar? Siehst ausgeschlafen aus. + + + Ah, hallo. Die Welt ist klein, nicht wahr? + + + Und? Zeit fr die Chimrenparty. + + + Hast du vor der Jagd Muffensausen? + + + Trapper hat mich gebeten, euch bei der Jagd auf die Chimre zu helfen. + + + Ich merke schon, auf sein Bauchgefhl kann man immer noch zhlen. Folgendes: Wir haben die Chimre endlich aufgesprt. Leider liegt Krabbe immer noch flach und Danila ist auch noch nicht zurck... Deswegen sind wir nur zu dritt. Aber wenn Trapper dich ausgewhlt hat, musst du ein guter Jger sein. Also, wenn die Chimre in der Nacht auf Beutesuche war, kehrt sie ungefhr um drei Uhr morgens wieder in ihren Bau zurck und hlt ihren Schnheitsschlaf ab. Das ist der Moment, an dem wir zuschlagen mssen... Falls du Zeit hast, komm um drei Uhr morgens hierher und wir brechen auf zur Jagd. Wir treffen uns an der Bar. + + + Willst du mich fr dumm verkaufen? + + + Ja, das bist du - dumm. Und Dummkpfen muss man zeigen, wo's langgeht. + + + Egal. Die Welt ist klein und die Zone ist sogar noch kleiner. Wir werden uns schon wieder ber den Weg laufen... + + + Geh... Verschwinde. Auf der Skadowsk wird nicht geschlgert. + + + Ja, gut. + + + Ich muss zugeben, ich habe einen Fehler gemacht. Aber du hast dich nicht an die Spielregeln gehalten. + + + So luft das nun mal in der Zone. Und jetzt hr mit dem Gequassel auf. + + + Er muss ein ziemlicher Dummkopf sein, wenn er sich das Artefakt durch die Lappen gehen lassen hat. + + + OK, musst nicht gleich heulen. Man lernt nie aus. Zur Belohnung gebe ich dir einen aus. Das muntert dich wieder auf. + + + Da sag ich nicht nein. + + + Nein danke. Ein Bier kann ich mir schon noch selbst leisten. + + + Du hltst dich wohl fr den Allergrten, was?! Halt die Klappe und bleib, wo du bist! Gib mir das Artefakt, Dummkopf! + + + Arschloch. Behalte das Artefakt... Verrecken sollst du damit. + + + Verpiss dich. + + + Bruder! Hr zu, da ist irgendwo ein Artefakt, das heilende Krfte haben soll... Ich brauche es unbedingt. Einer meiner Kameraden ist todkrank und unsere Medizin bringt berhaupt nichts. Der wird's nicht mehr lange machen. Ich wollte mir das Artefakt holen, aber dann bin ich in eine Gasanomalie geraten. Du bist nicht zufllig ber dieses Artefakt gestolpert, oder? + + + Wenn es wirklich so ernst um ihn steht... hier. + + + Danke, Bruder! Das werde ich dir nie vergessen. + + + Pass auf dich auf. + + + Ich habe das Artefakt. Aber ich brauche es selbst. + + + Ach, komm schon! Mein Kamerad... er geht wirklich drauf! + + + In der Zone ist sich jeder selbst der Nchste. Pass auf dich auf. + + + Nein, ich habe es nicht gesehen. Pass auf dich auf. + + + Dieses Artefakt wird dir nicht viel bringen. Das kannst du mir glauben. + + + Wenn du es wirklich unbedingt brauchst... hier. + + + Danke, Bruder! Das werde ich dir nie vergessen. + + + Pass auf dich auf. + + + Wir werden sehen. + + + Wir haben nichts miteinander zu bereden. + + + Warum lebst du auf diesem alten Schrottkahn? + + + Das ist eine Arche! Merk dir das... und das wirst du, wenn du am Leben bleiben willst! Wenn eine Welle kommt, bleib hier. Dann hast du eine Chance, zu berleben. Kein Mutant schafft es jemals hier rein. + + + Du hast von einer Welle gesprochen... + + + Ja, die Mutantenwelle, die die Leute zermalmen und aus der Zone jagen wird! Und wer auch immer diesen Ansturm berlebt, wird von einer gigantischen Emission gettet! Sie wird alles Leben in der Zone auslschen - mit Ausnahme derjenigen, die darauf vorbereitet sind. + + + Wo hast du diesen Hund her? + + + Das ist Lassie, mein kleines, ses Mdchen... Wenn ich sie nicht htte, wre ich schon vor langer Zeit im Schlaf aufgefressen worden. Diese verdammten Mutanten... wie ich sie hasse! Sobald du die Augen zumachst, kommen sie mit ihren fiesen Klauen, Raubtierzhnen und Fhlern angekrochen... + + + Ich brauche ein Kompass-Artefakt. Weit du, wo ich es finden kann? + + + Dieser Schrott wird dir nicht helfen, wenn die Mutanten aus dem Unterholz gekrochen kommen! Hier, fr dich - und jetzt geh mir aus den Augen. + + + Danke. + + + Weit du irgendetwas ber die abgestrzten Hubschrauber? + + + ber einen von ihnen wei ich etwas... Er ist auf dem Plateau und in der Gegend wimmelt es nur so von Schnorks. Alle paar Tage mache ich Jagd auf sie... Was schaust du mich so an? Ihren ganzen Unterschlupf schaffe ich nicht an einem Tag. + + + Wie gelangt man auf das Plateau? + + + Willst wohl auch gerne ein paar Schnorks abknallen, was? Respekt... ich kann dich hinbringen. + + + Gehen wir. + + + Ein andermal. + + + Ein Stalker. + + + Verstehe. Was willst du? + + + Geht dich nichts an. + + + Ich bringe dich hin. Aber bleib erstmal hier. Eine Emission ist im Anmarsch... hast du mich verstanden? Eine Emission!!! + + + Ich war im Unterschlupf. + + + Ja? Die Mutanten sind einfach nicht tot zu kriegen... Es werden immer mehr. Und eines schnen Tages werden sie kommen! Ihre Welle wird die Zone zu einem Grab fr all jene machen, die nicht darauf vorbereitet sind! + + + Hr zu, hm... du hast nicht zufllig ein Kompass-Artefakt? + + + Du glaubst, dass es dich vor einer Emission schtzt? Hier, und jetzt verzieh dich! + + + Danke. + + + Wer bist du? + + + Ein Stalker. Wir haben uns schon gesehen. + + + Ich erinnere mich nicht... Wie auch immer, was willst du? + + + Ein Stalker. Nur ein Stalker. + + + Verstehe. Du suchst Zuflucht in der Arche? Fhl dich wie zu Hause. + + + Geht dich nichts an. + + + Ah, du bist es. Was willst du? + + + Du hast nicht zufllig noch ein Kompass-Artefakt, das du entbehren kannst? + + + Erzhle mir etwas ber Anomalien. + + + Wenn du dich einer Anomalie nherst, denke daran, dass es entweder sehr hei wird, die Luft voller giftiger Gase sein wird oder du es mit einer hohen Strahlung zu tun haben wirst. Es knnten auch Psi-Strungen auftreten, aber ich will jetzt nicht ins Detail gehen. Das alles hngt von der Beschaffenheit der Anomalie ab - sei es Hitze, Gas oder Elektrizitt... oder Gravitation. Aber ich hoffe fr dich, dass du dich damit nicht auseinandersetzen musst. Dann gibt es noch Anomalien, die sich bewegen. Aber das ist ein ganz anderes Thema. + + + Erzhle mir etwas ber Hitzeanomalien. + + + Wenn du eine Art Flimmern siehst, so wie Luft ber dem Asphalt an einem heien Sommertag, dann ist das eine Hitzeanomalie. Alles, was mit ihr in Berhrung kommt, geht in extrem heien Flammen auf. Zuerst dachte man, dass es sich dabei um natrliche Gase handelt, die an dieser Stelle austreten, aber mit dieser Theorie hat man sich schon lange nicht mehr befasst. + + + Erzhle mir etwas ber Gasanomalien. + + + Diese Anomalienart wird wegen der merkwrdigen, unaufhrlichen chemischen Prozesse, die darin ablaufen, so genannt. Dabei entsteht Sure, die deine Haut in nur wenigen Sekunden zerfrisst. Die giftigen Gase tun ihr briges und zersetzen deine Lunge mindestens genauso schnell... Glcklicherweise kann man Gasanomalien im offenen Gelnde einfach erkennen. Wenn du allerdings in einem dunklen Tunnel in eine Gasanomalie gertst, ist das keine spaige Angelegenheit. + + + Erzhle mir etwas ber Elektroanomalien. + + + Eine uerst interessante Anomalienart, die eine betrchtliche Menge an statischer Ladung erzeugt. Stalker machen sich normalerweise die Tatsache zunutze, dass Elektroanomalien mit jedem beliebigen Metallgegenstand entladen werden knnen. Deswegen werfen sie eine Schraube in die Anomalie und rennen dann schnell hindurch, bevor sich die Anomalie wieder aufldt. Ich umgehe sie lieber - die Aufladephase ist einfach zu kurz. + + + Erzhle mir etwas ber Gravitationsanomalien. + + + Sie sind normalerweise ortsgebunden. Wenn du an eine bestimmte Stelle schaust und feststellst, dass dahinter liegende Gegenstnde verzerrt sind, handelt es sich dabei um eine Gravitationsanomalie. Du solltest besser auf Distanz bleiben. Bei allen drei bekannten Varianten kommt es sofort zu einer Reaktion, wenn man mit ihnen in Berhrung kommt. Sprungbrett schleudert alles, was sich darunter befindet, nach oben - oft in groer Entfernung. Vortex bewirkt genau das Gegenteil: Alles wird nach unten gezogen und mit einem enormen Druck zerquetscht, um Sekunden spter durch die Luft gewirbelt zu werden. Karussell schleudert sein Opfer in die Luft und wirbelt es herum, bis es in Stcke gerissen ist... Kein schnes Ende, wie auch immer man es dreht und wendet. + + + Erzhl mir etwas ber bewegliche Anomalien. + + + Ich persnlich habe bisher nur Komet und Tesla zu Gesicht bekommen. Bei ersterer Anomalie handelt es sich um eine Feuerkugel mit einem Durchmesser von etwa einem Meter. Aber ich versichere dir, dass du die Hitze auch schon aus groer Entfernung sprst... Tesla hingegen ist so etwas wie eine Blitzkugel - schwer zu beschreiben. Auf jeden Fall handelt es sich dabei um eine Art Kugel, und sie ist definitiv elektrisch geladen. Beide Anomalien sind stndig in Bewegung, aber normalerweise in einer geschlossenen kreisfrmigen Bahn. Ein achtsamer Stalker sollte sie ohne Probleme umgehen knnen... Man darf sich dabei nur nicht ablenken lassen. + + + Ach, schon gut. + + + Erzhle mir von dir. + + + Ich heie Pilot, und das kommt nicht von ungefhr. Ich benutze nur sichere Routen und hab nicht das Zeug zum Artefakte sammeln oder Bekmpfen von Banditen... Jeder sollte seine Talente nutzen und andere davon profitieren lassen. Wobei jedes Talent natrlich seinen Preis hat... + + + Erzhle mir etwas ber Emissionen. + + + Ich habe einige Karten von dem Gebiet zwischen Zaton und Jupiter. Willst du mal einen Blick darauf werfen? + + + Lass mal sehen... Gut, viele Details. In unserem Geschft machen Details den feinen Unterschied zwischen Leben und Tod aus. Hm, in diese Karten ist eine sichere Route eingezeichnet, die direkt von der Skadowsk zur Janow-Station fhrt. Wenn es dir nichts ausmacht, kopiere ich die Daten auf meinen PDA. Ich kann dir dafr einen netten Preisnachlass anbieten. + + + Brauchst du vielleicht einen Ortskundigen, der dir zeigt, wie man die ganzen Anomalien umgeht und sich vor Emissionen in Sicherheit bringt? Pilot stets zu Diensten. + + + Brauchst du die Hilfe eines Ortskundigen? + + + Schn, dich zu sehen. Was kann der alte Pilot fr dich tun? + + + Willst du dich schon wieder auf den Weg machen? + + + Guten Tag. Hltst es wohl nicht lange an einem Ort aus, was? Stets zu Diensten. + + + Hallo. Falls du einen Ortskundigen brauchst, bist du bei mir richtig - sobald die Emission vorbei ist. In der Zwischenzeit knnen wir uns ja ber Anomalien unterhalten, um die Zeit totzuschlagen. + + + Leider kann ich dir im Moment nicht als Ortskundiger zur Verfgung stehen... Die Emission ist in vollem Gange. + + + Wie viel kostet es zur Janow-Station? + + + Ist von hier aus leider 'ne ganz schne Meile. Wrde 3.000 kosten. + + + Das klingt OK, gehen wir. + + + So viel habe ich nicht. + + + Ich bleibe noch hier. + + + Mit deinen Karten - nur 1.000. + + + Das klingt OK, gehen wir. + + + So viel habe ich nicht. + + + Ich bleibe noch hier. + + + Ist von hier aus 'ne ganz schne Meile. Wrde 3.000 kosten. Wir knnen los, sobald die Emission vorbei ist. + + + Mit deinen Karten - nur 1.000. Wir mssen nur noch warten, bis die Emission vorbei ist. + + + Kannst du mich nach Pripyat bringen? + + + Nein. Jeder hat sein Spezialgebiet. Siehst du Gari dort drben? Ich denke, er kann dir helfen. + + + Ich selbst nicht, nein. Aber fr 6.000 kann ich dich zur Janow-Station bringen und dort mit Gari einen Deal klarmachen. Er wrde dich dann von dort aus nach Pripyat bringen. Was meinst du? + + + OK, gehen wir. + + + So viel habe ich nicht. + + + Ich bleibe noch hier. + + + Ich selbst nicht, nein. Aber fr nur 4.000 kann ich dich zur Janow-Station bringen und dort mit Gari einen Deal klarmachen. Er wrde dich dann von dort aus nach Pripyat bringen. Was meinst du? + + + OK, gehen wir. + + + So viel habe ich nicht. + + + Ich bleibe noch hier. + + + Nein. Jeder hat sein Spezialgebiet. Siehst du Gari dort drben? Ich denke, er kann dir helfen, sobald die Emission vorbei ist. + + + Ich selbst nicht, nein. Aber fr 6.000 kann ich dich zur Janow-Station bringen und dort mit Gari einen Deal klarmachen. Er wrde dich dann von dort aus nach Pripyat bringen. Aber natrlich erst, wenn die Emission vorbei ist. + + + Ich selbst nicht, nein. Aber fr nur 4.000 kann ich dich zur Janow-Station bringen und dort mit Gari einen Deal klarmachen. Er wrde dich dann von dort aus nach Pripyat bringen. Aber natrlich erst, wenn die Emission vorbei ist. + + + Kannst du mich nach Pripyat bringen? + + + Nach Pripyat? Nein. Ich bin mit meiner aktuellen Route schon so ausgelastet, dass ich keine andere brauche. Aber ich habe einen guten Kumpel, der in der Jupiter-Anlage gearbeitet hat. Er hat mir erzhlt, dass unter der Anlage Tunnel sind, die nach Pripyat fhren. Genaueres konnte er mir dazu nicht sagen, aber er meinte, er wrde im verwaltungstechnischen Bereich der Anlage suchen. + + + Nein. Wenn du dorthin willst, versuche, die Tunnel unter der Jupiter-Anlage zu finden. + + + Wie viel kostet es zur Skadowsk? + + + Da wir einen Umweg machen mssen, kostet es 3.000. + + + Das klingt OK, gehen wir. + + + Ich bin im Moment ein bisschen knapp bei Kasse. + + + Ich bleibe noch hier. + + + Auf der neuen Route macht das nur 1.000. + + + Das klingt OK, gehen wir. + + + Ich bin im Moment ein bisschen knapp bei Kasse. + + + Ich bleibe noch hier. + + + Da wir einen Umweg machen mssen, kostet es 3.000. Wir knnen aufbrechen, sobald die Emission vorbei ist. + + + Auf der neuen Route macht das nur 1.000. Wir mssen nur noch warten, bis die Emission vorbei ist. + + + Wo kannst du mich hinbringen? + + + Zur Janow-Station, nicht weit von der Jupiter-Anlage entfernt - und von dort zurck zur Skadowsk. Lieber kenne ich nur eine Route, aber die dann wie meine eigene Westentasche. + + + Ich habe die Waffenlieferung fr die Banditen vereitelt. + + + Danke fr deine Hilfe. Ich erinnere mich noch allzu gut an die 90er und die Gangster mit ihren Granatwerfern... Hier, fr dich. Es ist immer gut, wenn man flssig ist. + + + Ich suche Grouse. Wir wollten uns hier treffen. + + + Ich soll dir etwas von ihm ausrichten. Er meinte, er will zu den Dockkrnen und htte etwas Neues ber die vermissten Stalker herausgefunden. + + + Grouse ist tot. Tremor hat ihn gettet, wie auch die beiden anderen Stalker... Und Tremor weilt auch nicht mehr unter uns. + + + Tremor? Verdammt. Diese Schlange war immer genau vor unserer Nase. Es htte jeden von uns erwischen knnen... Warum ausgerechnet Grouse... Danke, Kumpel. Du hast unser ganzes Lager gerettet. Hier. + + + Tremor?! Tut mir leid, Kumpel, aber das nehme ich dir nicht ab. Wenn es dafr einen Beweis gbe, wr's vielleicht was anderes... Der arme Grouse... + + + Hier ist Tremors PDA. Er enthlt Beweise, die besttigen, dass er damit etwas zu tun hatte. + + + Verdammt. Diese Schlange war immer genau vor unserer Nase. Es htte jeden von uns erwischen knnen... Warum ausgerechnet Grouse... Danke, Kumpel. Du hast unser ganzes Lager gerettet. Hier. + + + Ich helfe dir dabei, mit den Banditen fertig zu werden. + + + Gut. Geh zur Forststation - dort sind unsere Jungs. Sie werden dir genau sagen, was zu tun ist. + + + Was weit du ber Nimble? Knnte er mit gestohlenen Waffen handeln? + + + Ich kenne ihn nicht wirklich. Aber ich bezweifle, dass er damit etwas zu tun hat. Wenn man mit heier Ware handelt, nimmt man normalerweise keine Vorbestellungen an... + + + Ich wusste, dass ich irgendwann auffliege. Es war nur eine Frage der Zeit... + + + Tremor?! Kannst du mir sagen, was hier eigentlich los ist? + + + Ich habe nichts mehr zu verbergen. Es hat keinen Zweck. Jetzt weit du, dass ich es war, der Grouse gettet hat... genauso wie Danila und die anderen vermissten Stalker. + + + OK, ich habe verstanden. Genug geredet. + + + berhaupt nichts hast du verstanden. Niemand wird mich jemals verstehen... + + + Warum hast du das getan? + + + Ich bin abhngig von Hmoglobin... So etwas wrde ich nicht einmal meinen rgsten Feinden wnschen... Es gibt keine Mglichkeit, diese Sucht loszuwerden. Manchmal hast du das Gefhl, du knntest einen ganzen Monat berstehen, ohne auch nur einen Tropfen Blut zu trinken. Ein paar Mal war das bei mir so. Aber an anderen Tagen, da frisst dich die Sucht innerlich auf und du wrdest alles dafr tun, um an Blut ranzukommen... + + + Wie konntest du es geheim halten? + + + Als ich noch in der Klinik gearbeitet habe, war es einfach. Es gab immer einen berschuss an Blutspenden. Aber in der Zone war es anders... Ich dachte, dass mich diese raue Umgebung von der Sucht ablenken wrde. Aber da habe ich mich wohl getuscht. Ich hatte schlimmere Entzugserscheinungen als jemals zuvor und konnte einfach an nichts anderes mehr denken. Die Leichen habe ich so aussehen lassen, als wren die Leute von Blutsaugern angegriffen worden. Meistens habe ich mir Opfer gesucht, die schon verwundet waren. + + + Und was ist mit Danila und Grouse? + + + Danila ist nach dem Blutsaugerangriff zu mir gekommen, weil er medizinische Hilfe gebraucht hat. Er war verwundet. Als er und Grouse beschlossen haben, gemeinsam Jagd auf Blutsauger zu machen, wurde mir klar, dass ich die Entzugserscheinungen nicht viel lnger ertragen werde. Ich habe nach wie vor versucht, es fr mich zu behalten, aber mein Wille war fast gebrochen... Dann ist Grouse aufgetaucht. Er hat gemerkt, was los ist, und versucht, mich zu tten. Es tut mir leid um diese Leute, aber mein Bedauern bringt sie auch nicht wieder zurck. + + + OK, ich habe verstanden. Genug geredet. + + + berhaupt nichts hast du verstanden. Niemand wird mich jemals verstehen... + + + Ich hre. + + + Hallo, brauchst du Hilfe? + + + Hallo. + + + Ich brauche medizinische Hilfe. + + + Lass mal sehen... + + + So, das war's. Du kannst gehen. + + + Na, was geht? Suchst du auch nach Artefakten? + + + Hey! Bist wohl auch auf der Suche nach Artefakten. Sollten genug fr alle da sein. + + + Oh, hallo! Willst dir auch ein paar Artefakte krallen, was? + + + Hallo. Bringst du dieses Artefakt zu Beard? + + + Vielleicht, vielleicht auch nicht. Was geht dich das an? + + + Ich brauche es. + + + Nicht nur du... Aber ich wrde es gegen eine neue Waffe tauschen - sofern sie richtig gut ist. + + + Ich habe eine gute Waffe. Lass uns tauschen... + + + In Ordnung. + + + Nein, das wird nichts. + + + Dann geh mir aus den Augen. + + + OK. + + + Nichts, wirklich. + + + Was weit du ber Nimble? + + + Oh, nicht viel... Wir machen keine Geschfte miteinander. Whrend er die Zone nach einer Megawaffe durchkmmt, habe ich schon hundert normale Waffen verkauft. Auerdem ist er ziemlich dickkpfig und will nicht mit den rtlichen Banditen handeln. Er ist ein lausiger Hndler, was mir allerdings zugute kommt. + + + Beard meinte, ihr hattet eine andere Abmachung. + + + Andere Abmachung... am Arsch! Dieses brtige Schwein wird langsam grenwahnsinnig! Man sollte ihn mal daran erinnern, wer hier der Boss ist... Hr zu, drben in Zaton hngt ein ziemlich einflussreicher Typ rum, Sultan sein Name. Geh zu ihm - er wird dir sagen, was du tun sollst. + + + Ich gehe zu Sultan und rede mit ihm. + + + Sultan ist mir egal. Gib mir sofort meinen Anteil! + + + h... nun gut. Hier ist die Kohle... Aber denk dran, Beard fhrt dich hinters Licht. + + + Ich brauche Informationen. + + + Was willst du wissen? + + + Ich brauche giftiges Gas. Man hat mir gesagt, dass ich dich fragen soll. + + + Eine kluge Entscheidung. Ich sage es dir fr 2.000. + + + Hier. + + + Hr zu. Hier ist mal ein Militrkonvoi durchgefahren, der Gas transportiert hat. Er hat jedoch nie seinen Zielort erreicht und ist wahrscheinlich irgendwo verunglckt. Niemand wei, was genau passiert ist, aber die Gasflaschen mssten immer noch dort sein. Alles klar? Ach ja, da mssten auch einige Dokumente sein. Wenn du sie findest, bringe sie zu mir und du holst deine Kosten fr die Fragerei vielleicht wieder rein. + + + Das ist mir zu teuer. + + + Wie du meinst. + + + Wo finde ich einen Stalker namens Magpie? + + + Fr 1.000 kann ich dir einen Tipp geben. + + + Hier. + + + Hier wirst du ihn nicht finden, aber ein kleiner Vogel hat mir erzhlt, dass er irgendwo in Jupiter sein knnte, oder vielleicht nahe der Janow-Station. Aber merke dir Folgendes: Wenn jemand irgendwo Mist baut und dann woanders hingeht, wird sich diese Person bestimmt einen anderen Namen zulegen... Mglicherweise hat er auch seine Kleidung gewechselt, weil er davon ausgeht, dass man unter den Stalkern nach ihm sucht. + + + Ich suche Snag. Hast du eine Idee, wo er sein knnte? + + + Fr 1.000 sag ich's dir. + + + Hier. + + + Snag ist ein gieriger Dummkopf, weil er sich auf gefhrliche Leute eingelassen hat. Er hat sich aus dem Staub gemacht, daher solltest du irgendwo in Jupiter nach ihm suchen. Er kann sonst nirgends hin. Du bist nicht der einzige, der nach ihm sucht. + + + Was weit du ber die abgestrzten Hubschrauber? + + + Hm... jeder hier wei, wo sie abgestrzt sind. Einer ist auf dem sdlichen Plateau gelandet, der zweite im Sumpf und der dritte direkt auf den Strommasten des Umspannwerks. ber welche Absturzstelle willst du etwas wissen? + + + ber das sdliche Plateau. + + + ber das Umspannwerk. + + + ber den Sumpf. + + + Das wr's bezglich der Hubschrauber gewesen. + + + Du schuldest mir 200. + + + Hier. + + + Also, der Hubschrauber ist direkt neben einem Schnorkunterschlupf runtergekommen. Soweit ich wei, haben es die Soldaten vom Plateau herunter geschafft - zwar nicht alle, aber die meisten. Sie haben die Mutanten erledigt und sind dann runtergeklettert. Ach brigens, wenn du da rauf willst, kann ich dir eine nette Schrotflinte und Munition anbieten. Damit kommst du gegen diese Biester klar. Allerdings gibt es da ein kleines Problem: Nur ein verrckter Kerl namens Noah wei, wie man auf das Plateau raufkommt. + + + Das ist mir zu teuer. + + + Wie du meinst. + + + Ich sage es dir fr 200. + + + Hier. + + + Ich sage es dir fr 200. + + + Hier. + + + Im Moment will ich nichts wissen. + + + Hast du Arbeit fr mich? + + + Erstens gibt es eine Kleinigkeit fr die Wissenschaftler zu erledigen, zweitens mssen wir an Informationen aus dem Sldnerlager rankommen und drittens braucht der Hndler immer noch jemanden, der ihn beschtzt. Ist viel los zurzeit, du kannst es dir aussuchen. + + + Erzhle mir von dem Job fr die Wissenschaftler. + + + Du musst drei Veles-Detektoren auftreiben und sie in den Bunker der Wissenschaftler nahe Jupiter bringen. Sprich dort mit Nowikow. Er meinte, er will an den Dingern herumbasteln... Falls die Detektoren Kohle abwerfen, teilen wir den Gewinn gerecht auf. Verstanden? Dann los. Sollte wirklich kein Problem sein. + + + Einverstanden. + + + Vielleicht ein andermal. + + + Erzhle mir von der Sache mit dem Sldnerlager. + + + Irgendwelche Sldner sind in der Klranlage aufgetaucht und ich sterbe vor Neugierde, weil ich wissen will, was sie dort im Schilde fhren... Schleiche dich in ihr Lager und krall dir alle Informationen ber ihre Plne, die du kriegen kannst - PDAs, Dokumente usw. Bring alles zu mir, verstanden? Dann los. Das wird ein Kinderspiel, wenn du niemanden auf dich aufmerksam machst. + + + Einverstanden. + + + Im Moment nicht. + + + Erzhle mir von dem Hndler, der Schutz braucht. + + + Er braucht Wachen, whrend er ein Geschft abwickelt. Du musst eigentlich nichts tun, auer rumstehen und dafr sorgen, dass alles ernst rberkommt... OK? Der Hndler wartet in der Forststation auf dich. Er kann dir Genaueres sagen. + + + OK. + + + Warte. + + + Ein andermal. + + + Es gibt da eine Kleinigkeit fr die Wissenschaftler zu erledigen und auerdem suche ich jemanden, der mir Informationen aus dem Sldnerlager beschaffen kann. Du kannst es dir aussuchen... + + + Es gibt da eine Kleinigkeit fr die Wissenschaftler zu erledigen und der Hndler braucht noch eine Wache. Entscheide du. + + + Ich suche jemanden, der mir Informationen aus dem Sldnerlager beschaffen kann und auerdem braucht der Hndler noch eine Wache. Entscheide du. + + + Es gibt da eine Kleinigkeit fr die Wissenschaftler zu erledigen. Wirklich ein Kinderspiel - hol mir dies, bring mir das... + + + Der Hndler braucht noch eine Wache, whrend er ein Geschft ber die Bhne bringt. Ist 'ne Kleinigkeit. + + + Ich habe nichts fr dich zu tun. + + + Ich denke, du knntest interessiert sein. + + + Was hast du anzubieten? + + + Noahs PDA. + + + Der Psychopath aus dem verrosteten Kahn? Ich gebe dir dafr 1.000. + + + Abgemacht. + + + Nein, danke. Ich behalte ihn erstmal. + + + Pass auf, dass das Ding dir kein Loch in die Tasche brennt... + + + Den PDA eines Sldners, sein Spitzname lautet Hook. Ich habe ihn in der Klranlage gefunden. + + + Ich gebe dir dafr 1.000. + + + Abgemacht. + + + Sehr interessant... gute Arbeit, Stalker. + + + Den PDA eines Sldners, sein Spitzname lautet Ridge. Ich habe ihn in der Klranlage gefunden. + + + Ich gebe dir dafr 1.000. + + + Abgemacht. + + + Einen PDA mit Informationen ber die Verstecke der Monolither. + + + Ich gebe dir dafr 5.000. + + + Abgemacht. + + + Den PDA eines Mannes, der mit dem Auftraggeber der Sldner zu tun hat. + + + Ich gebe dir dafr 4.000. + + + Abgemacht. + + + Den PDA von General Taschenkow, einem der Wchtergrnder. + + + Dafr lasse ich einiges springen - 2.500. + + + Abgemacht. + + + Den PDA eines Sldners. + + + Ich gebe dir dafr 1.000. + + + Abgemacht. + + + Morgans PDA. + + + Informationen ber den Hndler der Wchter, der heimlich Waffen verkauft. Knnte sich als ntzlich erweisen. Ich gebe dir dafr 4.000. + + + Abgemacht. + + + Eine Notiz aus dem Versteck von Streloks Trupp. Sie ist fr Ghost. + + + Ich gebe dir dafr 500. + + + Abgemacht. + + + Eine Notiz aus dem Versteck von Streloks Trupp. Sie ist fr Strelok. + + + Ich gebe dir dafr 500. + + + Abgemacht. + + + Eine Notiz aus dem Versteck von Streloks Trupp. Sie ist fr Fang. + + + Ich gebe dir dafr 500. + + + Abgemacht. + + + Dokumente aus der Jupiter-Anlage - eine Akte mit dem Evakuierungsbefehl. + + + Ich gebe dir dafr 750. + + + Abgemacht. + + + Dokumente aus der Jupiter-Anlage - Besprechungsnotizen. + + + Ich gebe dir dafr 750. + + + Abgemacht. + + + Dokumente aus der Jupiter-Anlage - ein Lieferplan. + + + Ich gebe dir dafr 750. + + + Abgemacht. + + + Dokumente aus der Jupiter-Anlage - ein Brief mit einer Anweisung, die besagt, dass Forschungsobjekt 62 nur durch die Unterfhrung transportiert werden darf. + + + Ich gebe dir dafr 750. + + + Abgemacht. + + + Ne. Wenn Sultan mit drinhngt, halte ich mich lieber raus. + + + Mal sehen... Ja, nicht schlecht. Kommen wir ins Geschft? + + + Klar, ich kann damit nichts anfangen. + + + Ein Notebook aus dem Sldnerlager nahe der Klranlage. + + + Ich biete dir 2.000. + + + Abgemacht. + + + hm... Bring das zu Beard oder zu den Wissenschaftlern. Ich bin nicht scharf auf fragwrdige Ware... ich hab keine Lust, verstrahlt zu werden, whrend ich schlafe. + + + Und da soll das Ding auch bleiben. Ich gehe ungern ein unntiges Risiko ein. Wer wei, vielleicht erzeugt es um Mitternacht ein Anomaliefeld um sich herum... Warum bringst du es nicht zu den Wissenschaftlern? Sollen die sich das doch mal nher ansehen. + + + Und ich habe einen Nuklearsprengkopf in meinem Kchenschrank! Aber den Wissenschaftlern kannst du damit vielleicht 'ne Freude machen - die sammeln so ein Zeug. + + + Snags PDA. + + + Lass mal sehen... hm... nichts Besonderes. Wahrscheinlich hast du das Versteck schon leergerumt. Ich wrde dir 200 geben. + + + Einverstanden. + + + Den PDA von einem Kerl aus Sultans Reihen. + + + Interessant... knnte zu gebrauchen sein. Ich gebe dir 1.000. + + + Einverstanden. + + + Ein Speichermodul eines unbemannten Flugobjekts. + + + Ein uerst interessanter Fund... aber reich wirst du damit nicht. Woher soll ich wissen, dass ich der Erste bin, der die Informationen zu sehen bekommt? Ich gebe dir 500. + + + Abgemacht. + + + Im Moment nichts. + + + Wegen dieser Detektoren... + + + Ja? + + + Wo finde ich sie? + + + Keine Ahnung, finde sie einfach. + + + Ich habe die Detektoren. + + + Und warum bist du dann noch hier? Bring sie zu Nowikow in den Bunker der Wissenschaftler nahe Jupiter. + + + Ich habe Nowikow die Detektoren gebracht. + + + Gut. Jetzt kann er an ihnen herumbasteln. Er hat versprochen, sie dann einer vertrauenswrdigen Person zu geben, die sie zu uns bringen wird. + + + Es gibt Probleme. Unser kleines Geschft ist in der Schwebe. Nowikow hat mit den Detektoren sehr gute Arbeit geleistet. Er hat die Reichweite erhht, die Sensibilitt verbessert usw. Mit diesen Detektoren kannst du einen groen Bogen um die ganzen anderen Artefaktjger machen. Ich habe einen Deal mit Beard klargemacht, wonach die von ihm angeheuerten Stalker die neuen Detektoren benutzen drfen... + + + Und? + + + Wir haben ausgemacht, dass wir den Profit gerecht aufteilen, aber die Stalker weigern sich, uns unseren Anteil zu geben. Du musst mit Beard reden und ihn davon berzeugen, dass er sich an die Abmachung hlt... Du willst doch auch deinen Teil des Kuchens, oder? + + + Ich brauche deinen neuen Detektor. + + + Hah! Und ich brauche ein anstndiges Schieeisen. Wenn du eine gute, wertvolle Waffe hast, knnen wir tauschen. + + + Einverstanden. + + + Nein, danke. + + + Ich brauche deinen neuen Detektor. + + + Ist das eine Drohung? Wie du dir sicher denken kannst, brauche ich ihn selbst. + + + Du verstehst mich nicht ganz, oder? Deiner ist der Letzte. Es war kein allzu groes Problem, die anderen Besitzer aus dem Weg zu rumen... + + + Was?! Du hast sie kaltgemacht? Nimm den Detektor und lass mich in Ruhe. + + + Hey, wie wre es, wenn du mich am Arsch leckst? + + + Das verschieben wir besser auf ein andermal. Darf ich dich jetzt freundlich darum bitten, mir den Detektor zu geben? + + + Und ich bitte dich freundlich darum, mich am Arsch zu lecken. + + + Stalker, kannst du Arbeit gebrauchen? + + + Um was geht es? + + + Ich habe meine Beute in einem alten Saporoschez versteckt, als ich pltzlich von einem Erdbeben berrascht wurde. Der Wagen ist dann in einen Erdspalt gestrzt. Ich habe nachgesehen und man msste irgendwie an den Wagen rankommen. Nur... hm... da sind Mutanten, weit du - Schnorks. Ob du's glaubst oder nicht, ich habe nicht einmal vor Controllern Angst, aber diese verdammten Schnorks sind mir irgendwie unheimlich und einfach ekelerregend. Falls du dort unten eine Kiste mit Sicherheitsschloss findest, bring sie zu mir und wir teilen die Beute gerecht auf. + + + Abgemacht. + + + Danke, Stalker. + + + Ist das deine Kiste? + + + Ja, das ist sie! Wow, du hast's echt drauf! + + + Vielleicht ein andermal. + + + Schade. + + + Nein, ich habe im Moment zu viel zu tun. + + + OK, wie du willst. + + + Und? Irgendwelche Neuigkeiten? + + + Was willst du? Siehst du nicht, dass ich zu tun hab? + + + Hey, das ist meine Waffe! Wo hast du sie her, du Dieb? Meine wurde erst neulich gestohlen. + + + Was redest du da? Ich habe sie vor kurzem gekauft. + + + Ich habe keinen blassen Schimmer, wo oder wie du an das Ding rangekommen bist, aber es handelt sich dabei definitiv um die Waffe, die mir gestohlen wurde. Du willst mich ganz sicher nicht wtend machen, also gib mir bitte die Waffe und alles ist gut. + + + OK, hier. Ich will keinen rger. + + + Gib sie mir. + + + Diese Waffe gehrt mir. + + + Ja klar... Ich warne dich, ich habe gute Kontakte und jeder kennt mich hier! Mit einem schlechten Ruf wirst du in der Zone nicht lange berleben, Stalker. Was sagst du jetzt, h? Erwarte hier von niemandem Hilfe. Mann, du hast richtig verschissen! + + + Zisch ab! + + + Bist du sicher, dass das deine Waffe ist? + + + Ja, da bin ich mir ganz sicher. Diese Waffe sieht man in der Zone nicht wirklich oft. Das ist auf jeden Fall meine. + + + Du tuschst dich. Geh und wir vergessen die Sache einfach. + + + Was? Ich soll mich tuschen?! Denk nach, bevor du redest, Arschloch! Wenn du rger willst, sind alle auf meiner Seite, das kannst du mir glauben. Gib mir die Waffe zurck und alles ist gut. Ich werde sogar so gndig sein und niemandem von der Sache erzhlen. + + + Was?! Hast du mal dran gedacht, dass ich dir mit dieser verdammten Waffe sofort ein Loch in den Schdel pusten knnte? + + + OK, entspann dich, Kumpel. Die Sache ist ein bisschen auer Kontrolle geraten, aber jetzt bin ich die Ruhe selbst. Ich muss mich getuscht haben. + + + Wegen dieser Kiste... + + + Hast du sie gefunden? + + + Ich bin noch dabei. + + + Ich habe beschlossen, nicht lnger danach zu suchen. + + + Was fr ein Jammer. + + + OK, lass mal sehen... + + + Klar, einen Moment... + + + Ich habe beschlossen, die Kiste zu behalten. + + + Oh, du mieser... Glaub ja nicht, dass ich das vergesse! + + + Hier ist die Kiste. + + + OK, dann teilen wir jetzt die Beute auf, oder? + + + Leg los. + + + Mal sehen, was wir hier haben... Meine alte, aber todbringende Fora. Mein Onkel hat sie vor langer Zeit selbst modifiziert. Ist ja fast schon ein Familienerbstck, oder... Deswegen sollte ich sie nehmen. + + + Nein, gib sie mir! + + + Ach, dann nimm sie... + + + Was ist da noch... + + + Nein, du hast schon genug Sachen aus der Kiste. + + + Was ist da noch... + + + Von mir aus, dann nimm du sie. Was ist noch drin? + + + OK, mal sehen... Ein ausgezeichnetes Medkit. Gut genug, wenn man es mit einem Bren oder sogar mit einem Controller aufnehmen will. Das gehrt mir... + + + Eigentlich knnte ich ein Medkit gut gebrauchen! + + + Hm... na gut. + + + Was ist da noch... + + + Nein, du hast schon genug Sachen aus der Kiste. + + + Was ist da noch... + + + Du kannst es behalten. Was ist da noch? + + + OK... wow. Ich bezweifle, dass du jemals so ein Gewehr in den Hnden gehalten hast... Ein erweitertes AKM-74/2U. Ich habe diesem Kerl von den Wchtern 'ne Menge Medkits gegeben, damit er mit dieser Schnheit rausrckt. Das war damals, als die Freiheitler einem Wchtertrupp dermaen eingeheizt haben, dass ihnen die Medkits ausgegangen sind. Seitdem hat mir dieses Baby drei Mal das Leben gerettet... Das ist definitiv fr mich. + + + Kann ich das Gewehr vielleicht haben? + + + Hm... das bricht mir jetzt echt das Herz. Aber so war's abgemacht. Nimm es. + + + Was ist da noch... + + + Nein, du hast schon genug Sachen aus der Kiste. + + + Was ist da noch... + + + OK, behalte es. Was ist noch drin? + + + Ohhh... ein schnes und wertvolles Stck. Dieses Artefakt ist 'nen ganz schnen Batzen Geld wert! Ich habe es brigens selbst aus einer Anomalie geholt. Dabei habe ich mir mehr als nur einmal in die Hosen gemacht. Das ist meine Trophe, die ich mir mit Blut und Trnen verdient habe. + + + Ich glaube, ich brauche das Artefakt dringender als du. + + + Du machst mich echt fertig, Mann... Nimm es - meine Grozgigkeit wirst du in absehbarer Zeit sicher nicht vergessen. + + + Was ist da noch... + + + Du hast schon genug Sachen aus der Kiste. + + + Was ist da noch... + + + Behalte es. Was ist noch drin? + + + Und zu guter Letzt... ein hervorragender Helm, handgefertigt. Vor ner Weile haben wir beim Kordon einen neuen Stalker bekommen, ein richtiger Handwerker war das. Hat ein paar coole Sachen zusammengebastelt, bevor er draufgegangen ist. Dieser Helm hat auch dazugehrt. So einen findest du nirgendwo! Ich behalte ihn. + + + Pass auf, ich bin hier derjenige, der gegen eine Horde Schnorks sein Leben aufs Spiel gesetzt hat... Wenn hier jemand diesen Helm verdient hat, dann ich. + + + Nun gut... viel Spa damit. + + + Was ist da noch... + + + Du hast schon genug. Ein paar Sachen sollte ich schon fr mich behalten, oder? + + + Was ist da noch... + + + In Ordnung, behalte ihn. + + + Das war's, Mann. Das ist die ganze Beute. + + + Gut, man sieht sich. + + + Das war's. Aber ich kann dich doch nicht mit leeren Hnden gehen lassen... Hier, nimm meine Pistole! + + + Viel Glck. + + + Was machst du hier? + + + Ich diene und beschtze. Ich war frher bei der Polizei und hier bin ich so etwas wie der rtliche Sheriff. Ich bin mit Beard hierher gekommen, und dann hat er beschlossen, hier ein Lager einzurichten. Warum weitergehen, wenn doch eh niemand einen Weg nach Pripyat kennt? Hier gibt es genug Artefakte. Also sind wir geblieben. + + + Wen knnte ich anheuern, um die Wissenschaftler zu beschtzen? + + + Wir haben ein paar gute Mnner. Der Trupp von Spartacus zum Beispiel. Zhe Burschen, richtige Profis - viele von ihnen waren frher bei der Polizei. Falls sie Zeit haben, findest du fr diesen Job nirgends bessere Leute als sie. + + + Vor ner Weile htte ich dir noch ein paar Leute vorschlagen knnen, aber jetzt nicht mehr. Keiner der Stalker hier wrde das machen. + + + Wen knnte ich anheuern, um Messungen fr die Wissenschaftler vorzunehmen? + + + Es gibt da eine Gruppe von Stalkern, Gonta fhrt den Haufen an. Sprich mit ihm, vielleicht macht er es... Denen kann eine Abwechslung von der ganzen Mutantenabknallerei sicher nicht schaden. + + + Wenn Gonta mit seinen Jungs hier wre, wrde ich dich zu ihm schicken, aber da das nicht der Fall ist... Mir fllt ansonsten keiner ein, der dafr in Frage kommen wrde. + + + Hast du bei Nimble Waffen gekauft? Weit du, ob er mit gestohlenen Sachen handelt? + + + Du glaubst, er ist so hinterhltig, dass er hinter meinem Rcken solche Dinger dreht? Nein, auf keinen Fall. Mein Bauchgefhl sagt mir, dass Nimble kein Hehler ist. + + + Ich suche Snag. Hast du eine Idee, wo er sein knnte? + + + Snag - ich kenne ihn. Ein Dummkopf ist das. Einige Jungs haben ihn neulich drben bei den Dockkrnen gesehen. Da scheint er jetzt immer gerne herumzuhngen. Schau doch dort mal vorbei. + + + Hallo, Stalker. Hast du Lust, ein bisschen Knete zu verdienen und gleichzeitig unserem Lager zu helfen? + + + Hallo, Stalker. Immer noch hier? Wenn du weiter so herumtrdelst, machen uns die Blutsauger bald alle fertig. + + + Reden wir spter. Ich hab zu tun. + + + Was fr 'nen Job kann ich fr dich erledigen? + + + Folgendes: Einige Stalker werden vermisst. Niemand hat was von ihnen gehrt, aber erst neulich wurde eine Leiche gefunden. Keine Anzeichen von Gewalt, aber im Krper war berhaupt kein Blut mehr. Tremor hat sich die Leiche angesehen, er knnte dir mehr dazu sagen... Wie auch immer, das mssen Blutsauger gewesen sein! Ich habe mit dem Jger Danila geredet und er ist aufgebrochen, um ihr Lager zu finden. Seitdem fehlt von ihm jede Spur. + + + Was soll ich tun? + + + Du musst das Lager aufspren und findest dabei hoffentlich auch Danila. Wird kein Spaziergang, aber ich sorge dafr, dass es sich fr dich lohnt. OK? + + + Einverstanden. + + + OK, ich habe zwei Orte ins Auge gefasst, die zuerst berprft werden sollten. Die Koordinaten eines Ortes habe ich auf deinen PDA hochgeladen. Ich muss noch ein paar Sachen erledigen und dann sehe ich mir mal den anderen Ort genauer an. Ich sag dir dann Bescheid, ob ich etwas gefunden habe. + + + Einverstanden. + + + Ich glaube, da muss ich passen. + + + Komm wieder, falls du deine Meinung nderst. + + + Kein Interesse. + + + Immer noch das Gleiche... Solange da irgendwo ein Blutsaugerlager ist, haben wir alle ein groes Problem. Und von dem Jger Danila haben wir immer noch nichts gehrt. Hilfst du uns bei der Sache? + + + Grouse hat mir erzhlt, dass du die Leiche von einem der vermissten Stalker untersucht hast. Glaubst du, dass ein Blutsauger den Kerl gettet hat? + + + Ja, und ich habe mir auch die anderen Leichen angesehen... Keine andere Kreatur wre in der Lage, das ganze Blut aus einem menschlichen Krper rauszukriegen - bis zum letzten Tropfen. Alles deutet auf einen Blutsaugerangriff hin... Was sonst knnte man daraus schlieen? + + + Erzhle mir etwas ber dich. + + + Ich bin Arzt, ein ausgebildeter Gehirnchirurg. Was willst du sonst noch wissen? Ich kann einen Hypothalamus mit der Przision eines Lasers herausschneiden, aber bisher hat sich dazu in der Zone noch keine Gelegenheit geboten. Hier bin ich nur ein gewhnlicher Arzt - einer von vielen... Aber ich verstehe mein Handwerk. + + + Ich hre. + + + Kannst du einen Flugschreiber entschlsseln? + + + Tja, also das ist nicht wirklich mein Spezialgebiet - diese ganzen Zahlen und Algorithmen... nicht jedermanns Sache. Wenn du mir einfachen mechanischen Kram bringst, kriege ich das sofort hin... ein bisschen schrauben hier, ein bisschen herumhantieren dort und schon ist alles in Butter. + + + Glaubst du, dass Nimble mit gestohlenen Waren handelt? + + + Mach mal halblang... Nimble und gestohlene Waren? Nie und nimmer. Als ich mit meiner Werkstatt angefangen habe, war Nimble es, der mir geholfen hat - und wollte dafr rein gar nichts... Egal was irgendjemand behauptet: Ich wei, dass Nimble ein feiner Kerl ist. + + + Hast du was fr mich zu tun? + + + Aber sicher. Ich brauche Werkzeug, aber ich kann mich nicht selbst darum kmmern. Der Job raubt mir meine ganze Zeit. Wenn du mir ntzliches Werkzeug bringst, siehst du mal, wie man Waffen und Ausrstung anstndig aufmotzt. Und dir bringt es ein bisschen Kohle ein. + + + OK, ich halte die Augen offen. + + + Nein. Vielleicht spter. + + + Oh, sicher. Ich brauche Werkzeug, erinnerst du dich noch? Eine kleine Hilfe fr mich, ein bisschen Knete fr dich. + + + Kannst du ein Speichermodul hacken? + + + Ne, Mann, da kann ich dir nicht helfen. Dieser ganze moderne Elektronikkram, Computer usw.... Ist nicht mein Ding. Da solltest du besser einen jngeren Techniker fragen... Die saugen das Zeug mit der Muttermilch auf, Mann. + + + Kannst du einen Stahlbehlter aufbrechen? + + + Das ist kein Problem. Ich mache gute Arbeit und kostet dich nur 500. + + + Hier. + + + OK, das kriegen wir schon hin... ein bisschen rumhantieren und zack - ist die Sache erledigt. Es gibt nichts, was ich nicht mit Brecheisen und Hammer aufkriege. + + + So viel habe ich nicht. + + + Komm wieder, wenn du das Geld zusammenhast. Ich werde hier sein! + + + Ich werde darber nachdenken. + + + Ich hab was zum Saufen. Magst du 'nen Schluck? + + + Ne, ich bin trocken, Mann. Als ich Forschungsobjekt 62 gesehen habe, da habe ich mir gedacht: "Das war's, jetzt hre ich auf." Weit du, Alkohol macht einen nur fertig und gehrt bei einer gesunden Ernhrung nicht auf den Tisch. Wer soll die Munition fr dein Gaugewehr zusammenschustern, wenn ich mich tot gesoffen habe? + + + Hier ist noch eine Flasche fr dich. + + + Ich hab noch eine dritte Flasche, falls du mehr willst. + + + Ich habe Werkzeug fr dich. + + + Gut. Welches? + + + Das einfache Werkzeug. + + + Coole Sache! Jetzt brauche ich nur noch Feinwerkzeug und Kalibrierungswerkzeug. + + + Das Feinwerkzeug. + + + Coole Sache! Jetzt brauche ich nur noch einfaches Werkzeug und Kalibrierungswerkzeug. + + + Das Kalibrierungswerkzeug. + + + Coole Sache! Jetzt brauche ich nur noch einfaches Werkzeug und Feinwerkzeug. + + + Im Moment keins. + + + Gut. Jetzt nur noch Kalibrierungswerkzeug und ich habe, was ich brauche. + + + Gut. Jetzt nur noch Feinwerkzeug und ich habe, was ich brauche. + + + Gut. Jetzt nur noch einfaches Werkzeug und ich habe, was ich brauche. + + + Wow, gute Arbeit! Wie machst du das blo, Mann? Jetzt habe ich eine breite Palette an Werkzeug, hah! Kannst mir dabei zuschauen, wie ich aus Feuerzeugen ein Maschinengewehr zusammenbaue! + + + Ich habe den Bauplan und die Begleitdokumentation zu Forschungsobjekt 62. + + + Coole Sache! Ich wusste doch, dass diese Mistkerle nicht genug Zeit hatten, um alles zu zerstren. Lass mal sehen... hmm... daran haben sie also gearbeitet. Gut! Es dauert ein paar Stunden, bis ich das alles kapiert habe. Lass das Gaugewehr hier. Ich werde versuchen, es zu reparieren. Warte hier. Ich brauche nicht lange, um dieses Baby wieder zum Singen zu bringen! + + + Ich brauche Batterien fr mein Gaugewehr. + + + Dafr mache ich dir den Lieblingskundenpreis: 2.000. + + + Hier. + + + Ich werde darber nachdenken. + + + Ich bin im Moment ein bisschen knapp bei Kasse. + + + Bist du mit dem Gaugewehr fertig? + + + War ein Klacks. Die Sache mit der Stromversorgung ist klar. Falls das Gewehr Zicken macht, bring es einfach hierher zurck und ich kmmere mich darum. + + + Ich arbeite noch daran. Ich liebe es einfach, herumzuschrauben... + + + Ich habe hier ein unbekanntes Waffenmodell. + + + Was meinst du mit "unbekannt"? Gib her, lass mich mal einen Blick drauf werfen... + + + Nur zu... Hast du so ein Ding schon mal gesehen? + + + Ah, du bist es... Ich habe getrumt, dass du mir etwas aus der Vergangenheit mitgebracht hast... Gut, dass ich nichts getrunken habe. + + + War es zufllig diese Waffe hier, die du in deinem Traum gesehen hast? + + + Wow, Mann... Dann war das wohl gar kein Traum. Das ist ein Gaugewehr, oder Forschungsobjekt 62, wie es offiziell genannt wurde. Puh... Ich war damals als Leiharbeiter in der Jupiter-Anlage beschftigt - in der Waffenentwicklung, "basierend auf dem Prinzip der elektromagnetischen Projektilbeschleunigung", oder so hnlich. Siehst du die Spulen? Die habe ich entworfen... Ein Jammer, dass sie das Projekt im Jahr 2004 eingestellt haben. Wir haben nie eine Mglichkeit gefunden, die Stromversorgung kompakt umzusetzen. + + + Dieses Gewehr wurde schon benutzt. Wie ist das mglich? + + + Woher soll ich das wissen? Ehrlich gesagt wrde ich mich nicht trauen, mit einem Schraubenzieher an dieser Batterie herumzufummeln. Auerdem ist die Mechanik der Stromversorgung hinber. Der Bauplan wrde mir jetzt wirklich sehr gelegen kommen. Die Entwicklungswerkstatt, in der ich gearbeitet habe, hat den Produktionsfortschritt dokumentiert. Vielleicht liegen der Bauplan und die Begleitdokumentation noch irgendwo dort herum... Ich habe noch die Schlsselkarte fr die Werkstatt, warum auch immer... + + + Kannst du mir die Schlsselkarte geben? + + + Ja, also... ich denke schon. Aber pass auf, dass du sie nicht verlierst. Wenn du mir die Sachen bringst, kann ich dieses Gewehr vielleicht reparieren. + + + Hier hast du deine Schlsselkarte wieder - keinen einzigen Kratzer hat sie abbekommen. + + + Danke. Sie erinnert mich an die gute alte Zeit. + + + Du... hm... du kannst mir gerne deine ganzen kaputten Waffen und durchlcherten Schutzanzge vorbeibringen...Ich bin zwar nicht halb so gut, wenn ich nchtern bin, aber probieren kann ich's ja trotzdem... + + + Wo warst du? Ich hab mir schon langsam Sorgen gemacht und berall nach dir gesucht. Wo ist dieser Stalker, habe ich gesagt... Prost! + + + Na, alles klar? Fhl dich wie zu Hause... Hast du mir was zum Reparieren oder vielleicht was zum Trinken mitgebracht? + + + Wow! Coole Sache! Meine Hnde zittern zwar nicht, aber mein Kopf sagt "Ich will mehr"... Gib mir noch was zu Trinken, junger Mann! + + + Warum so zgerlich? Mach die nchste Flasche auf, na los! Lass uns auf unsere gemeinsame Sache trinken. Jawohl. Wodka weckt das Mechanikergenie in mir, ohne Schei. + + + Ach, wre Joker doch hier. Dann wrden wir gemeinsam auf Barge anstoen... Mge er in Frieden ruhen. War ein guter Mann und konnte viel wegstecken. Er war fr uns wie ein Fels in der Brandung. + + + Ach, wre Barge doch hier. Dann wrden wir gemeinsam auf Joker anstoen... Mge er in Frieden ruhen. Er war ein feiner Kerl und immer fr uns da. Auf ihn konnte man sich verlassen. + + + Uff... Barge... Joker... Wie konnte es nur soweit kommen... Eins fhrt zum anderen... + + + Hm... Was haben wir denn da? Ich kmmere mich morgen um die gepanzerten Maschinenpistolen... Keine Sorge, ist kein Ding. Auf mich warten ein paar gute Drinks... + + + Wegen der Sache mit Forschungsobjekt 62... Ich wrde wirklich gerne einen Blick auf den Bauplan werfen. + + + Eine kluge Entscheidung, mein Freund. Musst deine Waffe gut in Schuss halten. Und falls du ein oder zwei Flaschen brig hast, kann ich hier 'nen Haufen Verbesserungen machen. Du willst 'nen Fallschirm an deine Schrotflinte anbringen lassen? Kann ich machen, he he. + + + Sieh an, sieh an! Die haben ein elektrostatisches Artefakt in die Batterie eingebaut! Hah! Hab ich mir gleich gedacht, dass da irgendein komischer Anomalieschei mit im Spiel ist! Das Prinzip an sich ist einfach - jetzt kriege ich das selbst hin. + + + Du brauchst jemanden, der rumschraubt? + + + Das ist der reinste Kauderwelsch. Ich glaube, ich habe mich schon eine ganze Weile nicht mehr mit technischem Papierkram beschftigt... + + + Ja, ich bin mit zwei Kumpels nach Zaton gekommen - Barge und Joker... Die waren noch Kinder, voller Tatendrang und bisschen bermtig! Konnten es gar nicht erwarten, tonnenweise Artefakte in die Finger zu kriegen. Sie wollten die Ersten und die Schnellsten sein... Ich habe in ihre glnzenden Augen geschaut und mir gedacht: "Das tut denen gar nicht gut. Beute schn und gut, sicher, aber das ist kein Grund, sich Hals ber Kopf in die Klauen eines Mutanten zu strzen." + + + Und was ist passiert? + + + Nun... eines Nachts waren wir drauen, haben was getrunken und heftig darber diskutiert, was wir als Nchstes tun sollen - sollen wir hier bleiben oder weiterziehen, und wenn ja, wohin. Keiner von uns hat locker gelassen und wir waren richtige Sturkpfe. Die Diskussion wurde immer hitziger und schlielich haben sich unsere Wege getrennt. Ich habe ihnen vorgeworfen, dass sie doch keine Ahnung vom Leben haben... und einige andere unschne Dinge. Mann... wenn ich ihnen wieder ber den Weg laufen wrde, wrde ich mich dafr entschuldigen... und wir wrden wie vorher zusammen was trinken und ber die guten alten Zeiten plaudern... + + + Ich kann Barge deine Entschuldigung ausrichten, falls ich ihm ber den Weg laufe. + + + Das wre nett. + + + Ich kann deinen Kumpels deine Entschuldigung ausrichten, falls ich ihnen ber den Weg laufe. + + + Das wre nett. + + + Ich kann Joker deine Entschuldigung ausrichten, falls ich ihm ber den Weg laufe. + + + Das wre nett. + + + Ich habe einen PDA gefunden. Wirf mal einen Blick drauf. + + + Was soll ich mit dem Ding? Von wem ist er? + + + Barge ist tot?! Ich kann es nicht glauben! Oh, Mann! Er war einer der zhesten Burschen von allen... Oh, Barge... ruhe in Frieden. Ich hoffe, dass es Joker wenigstens gut geht. + + + Barge ist tot?! Ich kann es nicht glauben! Oh, Mann! Er war einer der zhesten Burschen von allen... Oh, Barge... und Joker auch... sie waren zu jung zum Sterben, mgen sie in Frieden ruhen. Wie konnte das nur passieren... + + + Sie sind tot? Ich kann es nicht glauben! Oh, Mann! Barge war einer der zhesten Burschen von allen... und Joker... oh, Joker... Jetzt knnen wir gar nicht mehr ber deine Witze lachen. Sie waren zu jung zum Sterben, mgen sie in Frieden ruhen. Wie konnte das nur passieren... + + + Kannst du mir einige Fragen beantworten? + + + Sicher. + + + Wie lange dauert es, bis meine Lieferung da ist? + + + Das hngt ganz davon ab, wie schwierig die Sachen zu kriegen sind. Normalerweise dauert es einen Tag, manchmal geht es auch schneller. + + + Erzhle mir etwas ber dich. + + + Da gibt es nicht viel zu erzhlen. Wie bei den meisten Leuten ist auch bei mir das Leben ein stndiges Auf und Ab. Bin in ein paar Anomalien geraten, wurde von Banditen gefangen genommen... Ich bin als junger Hpfer in die Zone gekommen, ist schon lange her. Am Anfang habe ich mir mein Geld als Laufbursche verdient - Antistrahlenkits, panzerbrechende Munition und das ganze Zeug. Dann habe ich fr Sidorowitsch gearbeitet... habe mich dafr revanchiert, dass er mir den Arsch gerettet hat. Als ich fr ihn die Drecksarbeit gemacht habe, konnte ich einige gute Kontakte knpfen und habe dann auf eigene Faust mit exklusiven Waren gehandelt. Bisher konnte ich immer wieder aufstehen, wenn das Leben mir einen harten Schlag versetzt hat. Aber irgendwie habe ich das Gefhl, dass mir das Glck nicht mehr lange die Stange halten wird. Auerdem bin ich nicht mehr scharf darauf, mir fr ein paar Mnzen den Arsch aufzureien. + + + Danke, ich verstehe. + + + Freut mich, dass ich helfen konnte. + + + Du hast mir eine gestohlene Waffe verkauft! + + + Was redest du da? Ich handle nicht mit Hehlerware und bin ein seriser Geschftsmann. Wenn du mir nicht glaubst, kannst du jeden im Lager fragen. Sie werden dir alle sagen, dass ich eine ehrliche Haut bin und niemanden verarsche. + + + Ich bin auf einen Stalker gestoen, der behauptet, dass diese Waffe ihm gehrt hat. + + + Und wie heit der Typ? + + + Snag. + + + Was geht dich das an? + + + Es ist nicht ganz unwichtig. Da nimmt dich jemand mchtig auf den Arm, Stalker. + + + Das werden wir schon sehen. + + + Jemand nimmt dich auf den Arm, Stalker. + + + Ich bin gekommen, weil ich meine Bestellung abholen will. + + + Hier ist deine Steppe Eagle. War kniffliger, als ich dachte. Irgendein Pistolenfreak hatte groes Interesse an dem Ding, ich konnte es mir gerade noch rechtzeitig krallen. Aber sieh selbst - eine handgefertigte Pistole. Die Komponenten wurden mit beispielloser Przision justiert. Hast du dich jemals gefragt, wie eine perfekte Scharfschtzenpistole aussehen knnte? Hier hast du die Antwort. Das macht noch weitere 2.800. + + + Gut, bitte sehr. + + + Hier. Es macht Spa, mit dir Geschfte zu machen. + + + So viel habe ich nicht. + + + OK, ich bewahre die Waffe eine Zeit lang fr dich auf. Ich hoffe, du kannst das Geld bald auftreiben. + + + Ich will das nicht kaufen. + + + Wenn du die Bestellung nicht entgegennimmst, kann ich dir nchstes Mal nicht ber den Weg trauen. Deswegen muss ich dann ein gewisses Risiko mit einkalkulieren und werde von dir einen hheren Vorschuss verlangen. + + + Egal, ich nehme die Bestellung nicht. + + + Gut, wie du willst. + + + Ich werde darber nachdenken. + + + Sicher, ist deine Sache. Ich bewahre die Waffe eine Zeit lang fr dich auf. + + + Hier hast du deine ultra-zielsichere Steppe Eagle-Pistole. Das macht noch weitere 2.800. + + + Hier, die Alpine-Pistole - eine wahre Schnheit. Du kannst dir sicher sein, dass es diese Waffe in der gesamten Zone nicht zwei Mal gibt. Ein einzigartiges Modell und in sehr geringer Stckzahl fr eine einzelne Spezialeinheit in Auftrag gegeben. Es war nicht einfach, da ranzukommen, ich musste sogar einen meiner Partner im Ausland einspannen. Die Pistole hat ein erweitertes Magazin, einen extrem stabilen Stahllauf und ein Gehuse aus besonders starken Polymeren. Mach die brigen 2.800 locker und das Baby gehrt dir. + + + Hier ist deine Alpine-Pistole mit erweitertem Magazin. Mach die brigen 2.800 locker und das Baby gehrt dir. + + + Das ist die March-Pistole. Sie hat einem Sldner namens Wolfshund gehrt. Es handelt sich dabei um eine kompakte, grokalibrige Pistole mit kurzem Verschlusslauf und leichtem Verschlusssystem. Wolfshund war durch und durch ein Dreckskerl, aber von Waffen hatte er Ahnung, das muss man ihm lassen. Man sagt, sein Lieblingskunststck war es, alle vier Gliedmaen seines Opfers und dann den Kopf wegzuschieen - und das bevor der arme Kerl auf dem Boden gelandet ist. Wie auch immer, das macht noch 2.800. + + + Hier ist deine March-Schnellfeuerpistole. Das macht noch weitere 2.800. + + + Bitte sehr - Cutter, eine Maschinenpistole. Eins vorneweg, lass dich vom Aussehen der Waffe nicht verunsichern. Ist ein brandneues Modell und noch nicht in Serienproduktion gegangen - ein Prototyp direkt aus der Waffenfabrik. Den Konstrukteuren ging es darum, eine neue Waffe fr kurze Distanzen zu entwickeln - mit einer Kombination aus einem groem Kaliber, Schnellfeuer und Genauigkeit. Das macht noch weitere 8.000. + + + Ja, hier hast du Cutter, eine Schnellfeuermaschinenpistole. Das macht noch weitere 8.000. + + + Hier haben wir ein ganz besonderes Stck - Karbonator, eine richtige Armeeschrotflinte. Automatikfeuer mit geringem Rcksto dank eines ausgeglichenen stofreien Systems. Leg noch 8.000 auf den Tisch und sie gehrt dir. + + + Hier, Karbonator, eine automatische Schrotflinte. Leg noch 8.000 auf den Tisch und sie gehrt dir. + + + Ich glaube, das ist genau das, was du brauchst. Eliminator, eine der neuesten Entwicklungen. Die ganze Ladung sollte eigentlich nach Zentralafrika geschickt werden, aber Freunde haben mir einen Gefallen getan und mir ein "Warenmuster" zukommen lassen. Eine automatische Schrotflinte mit einem groen Magazin und einer hervorragenden Feuerrate. Noch 8.000, dann gehrt sie dir. + + + Sicher. Die automatische Schrotflinte Eliminator mit einem erweiterten Magazin. Macht noch 8.000. + + + Sicher, hier htten wir Storm - Maschinenpistole und Granatwerfer in einem. Bei diesem Prototyp handelt es sich um eine modifizierte Version einer konventionellen Waffe, die fr Spezialeinheiten in der Zone konzipiert wurde. Technische Innovationen der Spitzenklasse von unseren slawischen Brdern... Leg 16.000 drauf und sie gehrt dir. + + + Sicher, hier htten wir Storm, Maschinenpistole und Granatwerfer in einem, mit erweitertem Magazin. Macht noch weitere 16.000. + + + Bitte sehr. GP37 - ein Sturmgewehr der neuen Generation. Schussgenau, zuverlssig und mit eingebautem optischen Zielfernrohr. Hat mal einem UN-Beobachter gehrt. Ihr Trupp wurde auf eine Erkundungsmission in die Zone geschickt. Allerdings hat der Einsatz kein gutes Ende genommen... Noch 16.000 und das Gewehr gehrt dir. + + + Bitte sehr. GP37 - ein Sturmgewehr der neuen Generation. Das macht noch weitere 16.000. + + + Eine Sekunde. Hier htten wir ein modulares FT-200M-Gewehr, konzipiert von belgischen Waffenherstellern. Es handelt sich dabei um eine Allzweckwaffe mit hoher Schussgenauigkeit, die sowohl fr Rechts- als auch fr Linkshnder geeignet ist. Sie ist mit einem optischen Zielfernrohr und einem Granatwerfer bestckt. Ich habe das Gewehr von einigen glcklosen UN-Beobachtern bekommen... Das macht noch weitere 16.000. + + + Hier htten wir ein modulares FT-200M-Gewehr. Das macht noch weitere 16.000. + + + Das ist Tide - eine Waffe, die auf Basis eines schallgedmpften Scharfschtzengewehrs fr die Armee zum Kampf gegen Zombies entwickelt wurde. Tide hat eine grere Stoppwirkung als sein Vorgngermodell, musste dafr allerdings an Feuerrate einben. Der Scharfschtze kann einen Zombie nach dem anderen ausschalten, ohne seine Position preiszugeben. Es hat sich jedoch herausgestellt, dass Stalker allein schon ausreichen, um die Zombies an der Barriere zurckzuschlagen, weswegen das Gewehr nie in Serienproduktion gegangen ist. Du kriegst das Baby fr zustzliche 16.000. + + + Das ist Tide, ein schallgedmpftes Scharfschtzengewehr mit erhhter Stoppwirkung. Gib mir noch 16.000 und hab Spa mit der Waffe. + + + Hier, SVU2-A - ein verkrztes Scharfschtzengewehr mit erhhter Feuerrate. Ich habe es Max abgekauft, dem legendren Wchter von den Freiheitlern. Er hat geschworen, dass es in der gesamten Zone kein Gewehr wie dieses gibt. Eine einzigartige Waffe, zumindest in dieser Gegend. Das macht noch weitere 16.000. + + + Ja, SVU2-A - ein verkrztes Scharfschtzengewehr mit erhhter Feuerrate. Das macht noch weitere 16.000. + + + Klar, wirf einen Blick auf Lynx. Ein rtlicher Waffenexperte hat das Scharfschtzengewehr selbst gebaut. Er weilt nicht mehr unter uns, weswegen es nur dieses eine Exemplar gibt. Sieht zwar wie jedes andere Gewehr aus, aber wenn du es einsetzt, wirst du den Unterschied merken - eine ideale Kombination aus Schussgenauigkeit und Stoppwirkung. Mach die brigen 16.000 locker und das Baby gehrt dir. + + + Ja, und zwar Lynx - ein Scharfschtzengewehr mit erhhter Schussgenauigkeit und Stoppwirkung. Fr zustzliche 16.000 gehrt es dir. + + + Hier. Ich konnte alles von meiner Liste auftreiben - eine CS-3a-Krperpanzerung mit Helm. Der Helm an sich ist nichts Besonderes, aber man kann ein mobiles Taktiksystem mit integriertem Nachtsichtgert und aktivem Infrarotsensor einbauen. Die CS-3a ist eine Krperpanzerung der ganz besonderen Sorte. Sie schtzt hervorragend gegen Beschuss und Anomalien, obwohl sie so leicht ist und die Bewegungsfreiheit kaum einschrnkt. 32.000 wrde dich der ganze Spa noch kosten. + + + Ja. Eine CS-3a-Krperpanzerung mit taktischem Helm. Macht alles in allem noch 32.000. + + + Hier, extra fr dich, ein SEVA-Schutzanzug. Alles so, wie du es in Auftrag gegeben hast - ein geschlossener Atemkreislauf, ein Hitzeschutz, ein Schutzstromkreislauf und eine Auenbeschichtung aus korrosionsbestndigem Material. Auerdem wurden einige Artefaktbehlter integriert. Dieser Schutzanzug ist ein Muss fr jeden Stalker. Gib mir wie vereinbart noch 24.000 und er gehrt dir. + + + Hier, ein SEVA-Schutzanzug. Macht noch weitere 24.000, wie vereinbart. + + + Voil, ein Kampf-Exoskelett. Der beste Schutz gegen Kugeln, Klauen oder Granatsplitter, den du in der Zone kriegen kannst - abgesehen von gepanzerten Fahrzeugen. Und mehr tragen kannst du auch. Fr 48.000 gehrt es dir - mit allem, was dazugehrt, also Batterien und Servomotoren. + + + Voil, ein Kampf-Exoskelett. Fr 48.000 gehrt es dir. + + + Ich wrde gerne etwas bestellen. + + + Kein Problem. Was brauchst du? + + + Eine Pistole. + + + Klar. Das wren 3.500 und 700 davon im Voraus. + + + OK, hier. + + + Ich melde mich bei dir, sobald die Lieferung eingetroffen ist. + + + Ich habe das Geld nicht. + + + Tja, dann komm bitte wieder, wenn du flssig bist. + + + Weit du, ich habe meine Meinung gendert. + + + Kein Problem. Falls du doch noch etwas bestellen willst, findest du mich immer hier. + + + Du bist nicht gerade ein verlsslicher Kunde... Deswegen kostet die Pistole 4.200. Auerdem will ich 1.400 davon im Voraus. + + + Leider sind die besten Pistolen ausverkauft. Falls du auch mit normalen Waffen zufrieden bist, ist Uhu der richtige Mann. + + + Eine Schusswaffe fr kurze Distanzen. + + + Sicher. Macht 10.000 und 2.000 davon im Voraus. + + + Die letzte Lieferung hast du nicht angenommen... Deswegen will ich dieses Mal 12.000 und davon 4.000 im Voraus. + + + Hm... da kann ich wahrscheinlich nichts machen. Die Nachfrage ist einfach zu gro. + + + Eine Sturmwaffe. + + + Eine grokalibrige Schnellfeuerwaffe, ich verstehe... Der regulre Preis liegt bei 20.000 und davon 4.000 im Voraus. Was meinst du? + + + Du bist ein ziemlich schwieriger Kunde. Ich muss 24.000 verlangen und 8.000 davon im Voraus. Einverstanden? + + + Ist im Moment kein guter Zeitpunkt... Das Militr beim Kordon macht Zicken. Ihr Auenposten wurde neulich von irgendjemandem angegriffen, weswegen es noch schwieriger ist, mit ihnen klarzukommen. + + + Ein Scharfschtzengewehr. + + + Fr nur 20.000 organisiere ich dir das beste Scharfschtzengewehr, aber ich brauche 4.000 davon im Voraus. + + + Mit dir Geschfte zu machen birgt ein gewisses Risiko... Ich kann versuchen, deine Bestellung fr 24.000 abzuwickeln, aber nur, wenn du mir 8.000 im Voraus bezahlst. + + + Tut mir leid, aber diese Waffe ist zurzeit schwer zu kriegen. Meine Kontaktperson fr Scharfschtzenwaffen ist... nennen wir es "verhindert". + + + Einen Kampfanzug. + + + Ja, da fllt mir bestimmt etwas... Passendes ein. Wird dich 40.000 kosten und 8.000 davon brauche ich als Vorauszahlung. + + + Ja, da fllt mir bestimmt etwas... Passendes ein. Du hast dich geweigert, die letzte Lieferung anzunehmen, deswegen kostet dich der Spa 48.000 und davon 16.000 als Vorauszahlung. + + + Ich kriege nichts Besseres als den Schutzanzug, den ich letztes Mal fr dich hatte. Er war einzigartig und hatte eine Top-Qualitt. + + + Einen Schutzanzug mit geschlossenem Atemkreislauf. + + + Das ist ja 'ne ganz schne Bestellung... Wird nicht leicht zu kriegen sein, wirklich nicht... Ich kann versuchen, eines dieser Babys fr 30.000 zu besorgen, aber ich muss dich um eine Vorauszahlung in Hhe von 6.000 bitten. + + + Du hast mich bei deiner letzten Bestellung hngenlassen, deswegen muss ich mir das dieses Mal genau berlegen. Ich kann versuchen, eines dieser Babys fr 36.000 zu besorgen, aber ich muss dich um eine Vorauszahlung in Hhe von 12.000 bitten. + + + Ich habe mir das letzte Mal den Arsch fr deine Bestellung aufgerissen. Du brauchst nicht glauben, dass ich das nochmal mache. + + + Ein Exoskelett. + + + Du hast dir das vorher bestimmt gut berlegt. Ich kann eine Kampfausfhrung besorgen, aber das wird mit 60.000 nicht ganz billig. Ich wei, ein ganz schner Batzen, aber das ist ein Exoskelett auch wert. Vergiss nicht, dass ich 12.000 als Vorauszahlung brauche. + + + Bei der letzten Bestellung hast du dich nicht korrekt verhalten, weswegen ich dieses Mal 72.000 verlange. Vergiss nicht, dass ich 24.000 als Vorauszahlung brauche. + + + Keine Chance. Seit sie die Fabrikanlage geschlossen haben, findet man Exoskelette normalerweise nur noch an Leichen... Das ist einfach nicht mein Ding. + + + Im Moment nichts. + + + Tut mir leid, mein Laden ist zurzeit geschlossen. Vorbergehende Schwierigkeiten bei der Lieferung... + + + Hallo, mein Name ist Nimble. Die Leute kommen zu mir, wenn sie einzigartige Waffen brauchen. Seltene Modelle, Prototypen, auergewhnliche Schusswaffen - solche Sachen. Auerdem Eliteausrstung und die modernsten Modifikationen von Schutz- und Kampfanzgen. Ich probiere jeden Artikel persnlich aus und kann deswegen fr eine hohe Qualitt garantieren. + + + Hallo. Willst du eine Bestellung aufgeben? + + + Hallo. + + + Deine Bestellung wird in Krze geliefert. + + + Die Bestellung ist eingetroffen. Komm vorbei und hol sie ab. + + + Hey! Bist du der Kumpel von Snag? + + + Ja, ich kenne ihn. + + + Er meinte, du bringst uns Beute... + + + Ich kann mich nicht daran erinnern, das mit ihm besprochen zu haben. + + + Ja, so ist es besser. Wir sind doch nicht so bld und warten den ganzen Tag auf Snag... + + + Tschss. + + + Keine Chance! + + + Denk gut nach. Wenn du wenigstens ein bisschen Hirn hast, dann weit du, dass man mitspielt, wenn man zahlenmig unterlegen ist. + + + Ich habe nein gesagt! + + + Nein, ich kenne ihn nicht. + + + Ahh, verdammt! Mich hat's ziemlich schlimm erwischt... Hilf mir, Kumpel, ich brauche ein Medkit... Ich halte nicht mehr lange durch... + + + Hier, nimm dieses Medkit. + + + Puh! Danke, Kumpel. Ich wre fast in einer Boiler-Anomalie draufgegangen. Die Mutantenhunde htten heute ihren groen Tag gehabt... Hier, nimm meinen Detektor. Vielleicht kannst du ihn eines Tages brauchen... Ich bin echt dankbar, dass du mir das Leben gerettet hast. Ich glaube, ich mache im Lager erst einmal eine Verschnaufpause. + + + Viel Glck! + + + Puh! Danke, Kumpel. Ich wre fast draufgegangen. Die Mutantenhunde htten heute ihren groen Tag gehabt... Hier, nimm dieses Artefakt. Vielleicht kannst du es eines Tages brauchen... Ich bin echt dankbar, dass du mir das Leben gerettet hast. Ich glaube, ich mache im Lager erst einmal eine Verschnaufpause. + + + Ich kann dir keins geben, ich brauche es selbst. + + + Ich habe kein Medkit. + + + Danke nochmal! Ohne dich wrde ich jetzt die Radieschen von unten ansehen... + + + Stalker! Schnell, du musst Petrucha helfen! Schau, am Rand des Spalts! Er wurde von einer Anomalie erwischt! Sein Schutzanzug hat berhaupt nichts gebracht! Und ich selbst habe keinen. Petrucha und ich haben unser ganzes Geld zusammengekratzt, um seinen Schutzanzug zu kaufen... Einen Schritt weiter und ich bin erledigt! Bitte hilf uns! + + + OK, bleibt wo ihr seid. Ich versuche es. + + + Kmmert euch selbst darum. + + + Danke, dass du Petrucha gerettet hast. Verdammt, warum haben wir nicht mehr Geld fr einen besseren Schutzanzug zusammengespart! + + + Geh mir aus den Augen. Du hast Petrucha sterben lassen... War ein feinerer Kerl, als du jemals sein wirst! + + + Man sieht sich. + + + Ich habe mich um das Lager der Blutsauger gekmmert. + + + Gut. Du hast unsere toten Brder gercht - mge Gott ihrer Seelen gndig sein... Diese Belohnung hast du dir redlich verdient. + + + Ich habe ein ganzes Lager voller Blutsauger unter dem Antennenkomplex entdeckt. + + + Gut. Das Lager muss gesubert werden. Lass mich nachdenken... Wer wei, wie viele Blutsauger in diesen Tunneln sind. Vielleicht knnen wir sie mit giftigem Gas erledigen. Ich erinnere mich daran, dass Uhu mal von irgendwelchen Gasflaschen gesprochen hat. Rede du mit ihm - wir haben kein besonders gutes Verhltnis zueinander... Falls du irgendwie eine der Gasflaschen in die Finger kriegen solltest, befestige sie am Belftungssystem des Antennenkomplexes. Es sollte dann nur eine Sache von ein paar Minuten sein, bis diese Biester erledigt sind. + + + Gut, ich mach's. + + + Ich werde darber nachdenken. + + + Ich habe schon eine Gasflasche. + + + Wow, du hast's echt drauf, Kumpel. + + + Ah, da ist unser Stalker. Wir haben schon auf dich gewartet. + + + Um was genau geht es? + + + Wir gehen zu einem Treffen. Fr dich wird es da nicht allzu viel zu tun geben, hoffe ich. Steh einfach rum und bleib cool. + + + OK. + + + Hah. Denen haben wir's gezeigt. Kannst gut mit der Waffe umgehen, Stalker. Hier. + + + Viel Glck. + + + Du verdammter Anfnger. Hast 'ne todsichere Sache vermasselt. Verschwinde. + + + Tschss. + + + Was willst du? + + + Ach nichts. + + + Hat Uhu dich geschickt? + + + Ja. Er meinte, du brauchst Hilfe. + + + Ja, das ist wahr. Ich denke, du kriegst das hin. + + + OK, um was geht es? + + + Fungiere bei einer geschftlichen Transaktion als Wache. Das war's. + + + Kann ich machen. + + + Bleib in meiner Nhe und gib mir Deckung. + + + Verstanden. + + + Ich rede nur mit dem Boss. + + + Wie du willst. + + + Danke, Stalker. Du warst mir eine groe Hilfe. Ich dachte mir schon, dass diese Arschlcher irgendwie alles vermasseln. Sie wurden auf dem ganzen Weg verfolgt! Hier, das ist fr deine Mhen. + + + Viel Glck. + + + Du gibst 'nen guten Nichtstuer ab, aber als Leibwchter taugst du nichts. Ich habe versprochen, dich zu bezahlen, also muss ich wohl in den sauren Apfel beien. + + + Viel Glck. + + + Du gibst 'nen guten Nichtstuer ab, aber als Leibwchter taugst du nichts. Ich habe versprochen, dich zu bezahlen, also muss ich wohl in den sauren Apfel beien. + + + Viel Glck. + + + Was willst du? Es gibt nichts, wofr ich dir zu danken habe. Ich htte es fast nicht geschafft... Zisch ab! + + + Viel Glck. + + + Guter Junge... danke, dass du gekommen bist. Wir wollen uns an die Banditen ranschleichen und mithren. Dann werden wir schon sehen, was passiert. + + + Alles klar. + + + Danke, Stalker. Hier, von uns... Der Barmann hat deine eigentliche Belohnung. + + + Alles klar. + + + Erzhle mir von eurem Leben hier. + + + Ist kein Spaziergang, so viel ist sicher... Was genau willst du wissen? + + + Was macht ihr hier? + + + Wir passen auf Stalker auf. Du musst zugeben, dass gut die Hlfte von euch eher wie Kinder sind und nicht wie echte Kerle. Ihr kommt in die Zone mit irgendwelchen dummen Trumen, oder um den Helden zu spielen - oder einfach, weil das Leben es nicht gut mit euch meint. Euch ist nicht klar, dass euch hier meistens nichts anderes erwartet als der Tod. Und genau um solche Leute kmmern wir uns. Wir finden einen bei der Mllhalde, nehmen ihm seine Sachen weg und schicken ihn zurck zum Kordon. Einige von ihnen haben dann genug und verschwinden zurck in die Welt auerhalb der Zone. Diejenigen, die genug Mumm haben, wieder hierher zurck zu kommen, nehmen wir unter unsere Fittiche - und kassieren von ihnen Steuern. Ich sag dir was: Niemand wagt es, unser Territorium zu betreten - nicht die Armee, nicht die Sldner und nicht einmal Mutanten. + + + Was hat euch in das Zentrum der Zone gefhrt? + + + Wir sind wegen der Stalker hier, warum sonst? Wenn wir nicht hier wren und fr Ordnung sorgen wrden, gbe es hier das reinste Chaos. Du machst Beute, behltst sie, klar, und dann werden Steuern fllig. Steuern fr Frieden und Sicherheit, weit du. Wenn einer von euch eine Anomalie abgrast, behalten wir die Umgebung im Auge und halten euch die Mutanten vom Leib. Luft alles glatt und ihr habt was in der Anomalie gefunden, nehmen wir uns einen Anteil... eine Art Verwaltungsgebhr sozusagen. + + + Wie wurdest du der Boss? + + + Wo soll ich anfangen... ich denke, das ging schon in der Schule los. Ich hatte einen guten Kumpel, mein bester Freund, sozusagen. Wir sind zusammen rumgehangen, haben geraucht, getrunken usw. Er wollte immer strkere Kicks und hat dann mit Drogen angefangen. Zuerst ein bisschen Gras, und als er irgendwann Kohle verdient hat, ging es mit Koks und Heroin weiter. "Du solltest den Schei lieber bleiben lassen, Toljan, bevor es zu spt ist.", habe ich gesagt. Aber er hat nicht auf mich gehrt. Eines Tages hat er schlechtes Zeug erwischt und das war's. Ich habe seine Dealer aufgesprt und fr meinen Kumpel mit ihnen abgerechnet... Ich war dafr im Knast, und danach ging's richtig los. Bandenkriege, Messerstechereien und dann wieder Knast... Bin rausgekommen, hab ein Geschft aufgemacht und bin wieder im Knast gelandet... Als ich wieder raus war, habe ich die ganze Scheie hinter mir gelassen und wollte in die Zone. Hier habe ich dann ein paar harte Monate hinter mich gebracht und immer mehr an Einfluss gewonnen. Jetzt habe ich hier das Sagen und sorge fr Recht und Ordnung. + + + Was hltst du von den Stalkern? + + + Es gibt solche und solche. Einige taugen nichts und berleben nicht lnger als eine Woche, andere sind opportunistische Profitjger... und wieder andere sind ganz in Ordnung - das Leben hat es auf beiden Seiten des Kordons nicht gut mit ihnen gemeint. Die Leichen der ersten durchsuchen wir nach Beute und die zweiten besteuern wir. Und was die dritte Kategorie anbelangt - nun ja, wir versuchen, uns aus dem Weg zu gehen. Dumm nur, dass man sie alle nicht immer auf den ersten Blick unterscheiden kann... + + + Ach, schon gut. + + + Wie du willst. + + + Beard wird jetzt fr uns arbeiten. + + + Du weit, was sie sagen: "Die Kuh gehrt uns, also melken wir sie." Statte ihm hin und wieder einen Besuch ab und erinnere ihn daran, seine Gebhr zu bezahlen. + + + Beard hat eine wichtige Bestellung fr ein Artefakt namens Kompass erhalten. + + + Wir mssen dafr sorgen, dass wir das Artefakt vor ihm in die Finger kriegen. Beard wrde sich fr irgendeinen Kleinkram nicht so ins Zeug legen. Mein Bauchgefhl sagt mir, dass er dieses Ding braucht, um seinen Arsch zu retten - also um im Geschft zu bleiben. Bring mir dieses Kompass-Artefakt, sobald du es gefunden hast. + + + Ich habe das Kompass-Artefakt gefunden. Hier. + + + Ich will nicht fr dich nach dem Kompass-Artefakt suchen. + + + Hey, du Trottel, ich will mal eins klarstellen: Wenn du sagst, dass du fr etwas zu haben bist, aber mich dann hngen lsst, werde ich danach nicht besonders gut auf dich zu sprechen sein. Und Leute, die ich nicht mag, haben es in der Regel ziemlich schwer. Hast du das kapiert? + + + Ich werde es mir merken. + + + Ich hole mir diese Detektoren von den Stalkern. + + + Gut. Ich kmmere mich in der Zwischenzeit um die anderen Kanle unseres Auftraggebers. + + + Ein kleiner Vogel hat mir erzhlt, dass du Beard ein Kompass-Artefakt gebracht hast. Jetzt hr mir mal gut zu, du Schwachkopf. Wenn du sagst, dass du fr etwas zu haben bist, aber mich dann hngen lsst, werde ich danach nicht besonders gut auf dich zu sprechen sein. Und Leute, die ich nicht mag, haben es in der Regel ziemlich schwer. Hast du das kapiert? + + + Ich werde es mir merken. + + + Beard hat jetzt keine aufgemotzten Detektoren. + + + Reizend. Whrend du weg warst, habe ich mich darum gekmmert, seine anderen Versorgungskanle zu schlieen. Jetzt gehrt der Kunde mit Haut und Haaren uns. Geh zu Beard und richte ihm Gre von Sultan aus. + + + Beard schuldet mir Geld. Uhu meinte, du knntest mir helfen. + + + Ich denke, das kann ich... Das ist mein Plan: Wir treiben Beard in den Ruin und reien uns dann sein Geschft unter den Nagel. Du bekommst dein Geld und einen Anteil am Geschft. Abgemacht? + + + Abgemacht. + + + Du musst jetzt herausfinden, mit wem Beard zurzeit Geschfte macht. Wenn wir seine Versorgungskanle schlieen, haben wir ein leichtes Spiel. + + + Ich werde darber nachdenken. + + + Kleine Info: Zu viel Nachdenken ist schlecht fr deine Gesundheit. + + + Glaubst du, dass Nimble mit gestohlenen Waren handelt? + + + Nimble? Ne, dazu hat er nicht den Mumm. Uhu ist unser rtlicher Hndler, wenn es um heie Ware geht. Egal was du ihm anbietest, er wird es kaufen, ohne Fragen zu stellen. + + + Ich suche Snag. Hast du eine Idee, wo er sein knnte? + + + Ja, habe ich. Meine Jungs haben ihn vor ein paar Tagen bei den Dockkrnen gesehen. Ich sollte ihn mir eigentlich mal vorknpfen, weil er mir Geld schuldet, aber ich vergesse es dauernd. + + + Ich habe einen Job fr dich. Meine Jungs mssen zu einem Hndler... geschftlich, versteht sich. In letzter Zeit geht es in der Zone hei her, deswegen dachte ich mir, dass ein Mann zustzlich nicht schaden kann. Sorge dafr, dass die Sache reibungslos ber die Bhne geht. + + + OK. + + + Gut. Meine Leute warten auf dich in der Nhe der Forststation. Die Koordinaten sind auf deinem PDA. + + + Alles klar. + + + Kein Interesse. + + + Warum zur Hlle bist du immer noch hier? Beweg deinen Arsch zur Forststation. + + + In Ordnung. + + + Und, hast du dich schon entschieden? Knnen wir auf dich zhlen? + + + Ich bin dabei. + + + Nein. + + + Vergiss nicht, ich bin Sultan. Alles, was du hier siehst, ist entweder unter meiner Kontrolle oder wird es bald sein. Wenn du ein angenehmes Leben haben willst, solltest du fr mich arbeiten. Wenn nicht, wird es ungemtlich. So luft hier der Hase. + + + Was willst du? + + + Was fhrt dich hierher? + + + Ja? + + + Ich habe alle Stalker gettet. + + + Wow, Kumpel... scheie, mit dir ist nicht zu spaen, was? Kommst hierher und machst sie einfach fertig, mannomann. Fr was habe ich dich eigentlich angeheuert... Hast uns keine Kohle gebracht, sondern nur rger an den Hals gejagt... Komm mal bisschen runter, Mann, hast du gehrt... + + + Arbeitest du gerne fr die Wissenschaftler? + + + Ist nicht schlecht - bisher gab es nie Probleme. Die Wissenschaftler haben uns Ausrstung beschafft, insofern luft es gut. + + + Es luft ausgezeichnet! Die Arbeit ist einfach und sie bezahlen gut. Und seit wir hier sind, ist noch niemand gekommen und hat rger gemacht - nicht einmal die Monster. + + + Ich stelle einen Trupp zusammen und breche dann auf nach Pripyat. Willst du dich uns anschlieen? + + + Ne, ich bin nicht wirklich scharf auf Pripyat - im Gegensatz zu manch anderen Leuten... Auerdem haben wir einen Job zu erledigen - wir mssen die Wissenschaftler beschtzen... Aber du knntest diesen Typen vom Militr mitnehmen. Dann hat er die Gelegenheit, nach seinen Kameraden zu suchen, und wir htten unsere Ruhe. Der Kerl ist schon ganz in Ordnung, aber das hier ist nicht der richtige Ort fr ihn... + + + Ne, ich bin nicht wirklich scharf auf Pripyat - im Gegensatz zu manch anderen Leuten... Auerdem haben wir einen Job zu erledigen - wir mssen die Wissenschaftler beschtzen... + + + Wollt ihr fr die Wissenschaftler arbeiten? + + + Um was genau geht es? + + + Ihr msstet ihren Bunker bewachen. + + + Bewachen also... wre fr uns nicht das erste Mal, einverstanden. Wir machen uns auf zum Bunker, sobald wir bereit sind. + + + Ihr msstet Messungen in Anomalien vornehmen. + + + Messungen also... Sehe ich etwa aus wie ein Laborfritze? Ist nicht wirklich mein Ding. + + + Reden wir spter darber. Hier treiben im Moment zu viele neue Ganoven ihr Unwesen. Ich muss ihnen erst zeigen, wo's langgeht, und danach denke ich vielleicht ber Arbeit nach. + + + In Ordnung, dann wollen wir mal. Denen werden wir ordentlich einheizen! + + + Gut. + + + Wir sollten uns besser in Sicherheit bringen. Die verdammte Emission! + + + Dann wollen wir mal. Denen werden wir ordentlich einheizen! Cool bleiben, wird schon alles glatt laufen. + + + War 'ne nette Schieerei, was? Hier ist das Geld, Kumpel. Ich melde mich, falls es wieder etwas zu "erledigen" gibt. + + + Wow, Kumpel... scheie, mit dir ist nicht zu spaen, was? Kommst hierher und machst sie einfach fertig, mannomann. Fr was habe ich dich eigentlich angeheuert... Hast uns keine Kohle gebracht, sondern nur rger an den Hals gejagt... Komm mal bisschen runter, Mann, hast du gehrt... + + + Bist du noch ganz sauber?! Wo waren denn die Stalker?! Was fr eine Scheie ist das denn? Du hast uns verpfiffen, oder? Das kann sonst niemand gewesen sein! Meine Jungs waren zu der Zeit alle in meiner Nhe... Jetzt versohlen wir dir den Hintern, wie wir es bei den Stalkern machen wollten! Was schaust du so bld? Leere deine Taschen aus, du Arsch! + + + Wir sollten uns auf den Weg machen... zum Schiff. + + + Hey, Meister. Tut mir leid, aber mir ist gerade nicht nach einem Plausch. + + + Ich helfe dir. + + + Gut. Wir arrangieren wie vereinbart das Treffen und du brichst auf. Wenn sie kommen, greifen wir sie von allen Seiten an. Denk daran, Abstand zu halten, damit du nicht von den eigenen Leuten erwischt wirst. + + + OK. + + + Ne, das ist nichts fr mich. + + + Hey, Stalker. Ich habe gerade zu tun. Reden wir spter, alles klar? + + + Danke fr die Warnung. Willst du vielleicht mitmachen? Wre eine nette Gelegenheit, den Bastarden sozusagen in den Rcken zu fallen. + + + Wir werden diese Dreckskerle hinterrcks berfallen. Sobald es losgeht, erffnest du von hinten das Feuer. + + + Diese Arschgesichter sind so gut wie tot. Danke fr den Tipp. + + + Danke fr deine Hilfe. + + + Hr zu. Wenn es nicht dringend ist, lass uns spter plaudern, ja? + + + Hallo. + + + Ich habe Magpie gefunden. Er war in der Janow-Station und hat sich dort als ein gewisser "Flint" ausgegeben. Ich habe mich um ihn gekmmert. + + + Um ihn gekmmert? Das ist schade. Ich htte mich liebend gerne selbst um diese miese Ratte gekmmert... aber was soll's? Dennoch sind das gute Neuigkeiten! Hier, fr dich - ich stehe zu meinem Wort. + + + Danke. + + + Ich mchte die Zone verlassen. + + + Sicher? Es gibt keinen Weg zurck. + + + Ich bin mir sicher. Gehen wir. + + + Ich glaube... ich bleibe noch. + + + Gut, nimm das Geld. Ich will keinen rger. + + + H? Gib mir alles, was du hast, Vollidiot! Und dann verzieh dich besser! + + + Ich gehe. + + + Das kann ich nicht! + + + Mal sehen... deine Gesundheit? Nun, wenn es dir schlecht geht, msste ich wohl schon so gut wie tot sein... + + + Hr zu, es gibt etwas Dringendes zu erledigen. Ein Hndler, den ich kenne, will ein Geschft abwickeln. Das Problem dabei ist, dass seine Kunden nicht sehr vertrauenswrdig sind. Deswegen will er fr den Fall der Flle einen Leibwchter anheuern. Httest du Interesse? + + + Ja. + + + Gut. Der Hndler wird bei der Forststation auf dich warten. Er wird dir dann die Details erklren. + + + Nein, nicht wirklich. + + + Wie du willst. Wenn du deine Meinung rechtzeitig nderst, knnte der Job noch zu haben sein. + + + Was fr Arbeit hast du fr mich? + + + Arbeit, die dir zumindest Geld einbringt. Denk mal nach: Warum frage ich dich? Du bist neu hier und kennst niemanden... aber wenn du dich klug verhltst, knntest du dir hier sehr schnell Respekt verschaffen. Willst du wissen, um was es geht? + + + Ja, sicher. + + + OK, dann hr zu. Wir haben vor, ein paar von Beards Stalkern hochzunehmen. Das wird echt ein Kinderspiel. Spt in der Nacht tauchst du mit unseren Mnnern auf der Schewtschenko auf und noch bevor diese Touristen kapieren, was los ist, haut ihr sie in die Pfanne. Wir kriegen das Geld, du die ganze Ausrstung... verstehst du? Gut. Siehst du Haxe dort drben? Er wird dir die ganzen Details erklren. + + + Nicht wirklich. + + + Schade. Lass dir ruhig etwas Zeit und denk darber nach... du wirst sicher mitmachen, wenn du weit, was gut fr dich ist, Kumpel. + + + Kumpel, ich hab den perfekten Job fr dich, wenn du herumkommen willst... soll ich dir verraten, um was es geht? + + + Barges PDA. Ich habe seine Leiche in den Hhlen unter dem abgebrannten Bauernhof gefunden. + + + Ich habe das hier bei ein paar Knochen in der Nhe der Pinieneiche gefunden. Es ist Jokers PDA. + + + Joker? Das ist... unmglich! Oh Gott... ich bin schockiert! Joker... ist... tot. Oh Joker, wir werden nie wieder ber deine Witze lachen... ruhe in Frieden! Ich hoffe, Barge ist wenigstens noch OK... + + + Joker? Das ist... unmglich! Oh Gott... ich bin schockiert! Joker ist also auch tot... Oh Joker, wir werden nie wieder ber deine Witze lachen... ruhe in Frieden! Und du auch, Barge. Wie konnte das nur passieren... + + + Von Barge und Joker. Einen habe ich bei einem Skelett in der Nhe der Pinieneiche gefunden und den anderen bei einer Leiche in den Hhlen unter dem abgebrannten Bauernhof. + + + Um ehrlich zu sein, gibt es nicht viel zu sagen. Emissionen sind hochgefhrlich und nahezu immer tdlich. Man kann am wechselnden Wetter spren, wenn langsam eine Emission im Anmarsch ist, aber wenn sie ihren Hhepunkt erreicht, ebbt sie auch recht schnell wieder ab. Sobald du die ersten Anzeichen einer Emission bemerkst, solltest du dich sofort in Sicherheit bringen - in eine Hhle oder irgendeinen Unterschlupf aus Beton, Ziegelsteinen oder Stahl! Ich z.B. spre, dass eine Emission naht, wenn mein Rcken anfngt zu schmerzen. Aber ber die Ursache der Emissionen selbst kann ich dir nichts sagen... ich habe einfach keine Ahnung. + + + Brauchst du Ausrstung? Informationen? Oder willst du vielleicht Informationen verkaufen? + + + Sultan sagt, dass du die Stalker ausnehmen willst. Ich bin dabei. + + + Gut. Beweg deinen Arsch nach Mitternacht zur Schewtschenko... wir werden auf dich warten. Aber kreuze dort nicht erst am Morgen auf. + + + Oh, du bist es, Bruder. Also, was hast du mit Sultan besprochen? + + + Also... komm nach Mitternacht - aber vor Sonnenaufgang - zum Schiff. Wir werden auf dich warten. + + + Ich glaube, ich sollte besser bei dir bleiben. Wir warten bis Mitternacht und dann kannst du mir den Weg zur Schewtschenko zeigen. + + + Klar, bleib ruhig hier. Sollte kein Problem sein, dich zum Schiff zu bringen. + + + Eigentlich... habe ich noch etwas zu tun. + + + Auerhalb der Zone habe ich einige wichtige Kunden, die immer wieder ausgewhlte Artefakte bestellen. Und die mssen zu vorgegebenen Zeiten geliefert werden. Wenn du mir bringst, was ich brauche, lass ich gutes Geld springen. Aber wie gesagt: Es handelt sich um sehr wichtige Bestellungen und deshalb schicke ich immer mehrere Leute los. Die volle Bezahlung bekommst du nur dann, wenn du auch als Erster lieferst. + + + ber den abgebrannten Bauernhof. Hmm... wer bist du eigentlich? + + + Der Ort wird auch Eisenwald genannt. Der Hubschrauber ist mitten in die Strommasten gerauscht. Keiner der Armeejungs hat berlebt... und selbst wenn sie den Absturz berlebt htten, wren sie da niemals lebend rausgekommen. Die Poltergeister dort lieben es, die Leute in Elektroanomalien zu hetzen... diese Viecher spren selbst die kleinste Bewegung, wie du sicher weit. + + + Hr zu... nachdem der Hubschrauber abgestrzt war, wurden dort fnf Armeetypen gesehen. Offenbar haben sie es auch geschafft, aus dem Sumpf zu entkommen. Es ist kein groes Problem, dorthin zu gelangen, halte dich nur vom Wasser fern und achte darauf, dass du immer festen Boden unter den Fen hast. Und du wirst auch chemischen Schutz brauchen. Wenn du also vorhast, dorthin zu gehen, geh vorher besser zum Arzt und kauf dir reichlich Gegengift. + + + Echt schade, dass meine Kumpels Joker und Barge nicht hier sind... wir htten 'ne Menge Spa. Wir waren wie Brder, haben immer zusammengehalten. Wie konnte es nur soweit kommen? Ich bin noch hier, aber sie sind verschwunden und nur Gott wei, wo sie sich herumtreiben... + + + Erzhl mir mehr ber Joker und Barge. + + + Ich habe schon etwas von dort. + + + Raus mit der Sprache... hast du etwas fr mich? + + + Nun, jetzt verstehe ich. Ich kenne ihn... er war schon immer ein Gauner, aber in letzter Zeit hat er es wirklich bertrieben... die Stalker so zu betrgen... jemand muss ihm seine Grenzen aufzeigen! + + + Ich brauche Informationen aus dem Sldnerlager. Das ist nicht so schwierig, wie es klingt. + + + In Ordnung, ich warte... vergiss aber nicht, dass der Job dringend ist - er muss innerhalb von zwei Tagen erledigt werden. + + + Den PDA von Sultans Boten. + + + Ist nicht besonders interessant. Ich gebe dir 500 dafr. + + + OK. + + + Detektorprototypen. Willst du sie haben? + + + Geheime Dokumente, die ich auf der Brcke beim verlassenen Konvoi gefunden habe. Willst du einen Blick darauf werfen? + + + Ein seltsames Artefakt. Ich habe es beim Baggerschiff gefunden. + + + Ein seltsames Artefakt. Ich habe es in der Nhe der Janow-Station gefunden. + + + Das Artefakt "Herz der Oase". + + + Legen wir los. + + + Halt. + + + Eine Gruppe von Stalkern hat vor, euch zu berfallen. Seid auf der Hut. + + + Miese Ratten! Aber gut, dann werden wir sie gebhrend empfangen! Pass auf, lass sie glauben, dass du auf ihrer Seite bist. Wenn du das machst, kannst du uns dabei helfen, den berfall abzuwehren. Wir werden dich dafr auch belohnen. + + + Es ist mir scheiegal, an was du dich erinnerst. Her damit! + + + OK, bitte sehr. + + + Nicht? Das ist uns verdammt egal. Her damit, Vollidiot! + + + Nur die Ruhe, ist ja schon gut... hier, bitte sehr. + + + Miese Ratten! Aber gut, dann werden wir sie gebhrend empfangen! Pass auf, du musst uns gegen diese Typen helfen. Wir werden dich dafr auch belohnen. + + + Denen haben wir's aber gezeigt, was? Du hast nichts geleistet, also kriegst du auch nichts von der Beute ab. Ich lass dich wissen, wenn wir weitere "Geschfte" zu erledigen haben... + + + Du bist zu nichts zu gebrauchen... also erwarte keine Belohnung. Na ja, immerhin bist du auf ein Schwtzchen vorbeigekommen. + + + Bis dann. + + + Sehr gut! Jetzt knnen wir unseren lieben Auftraggeber unter Druck setzen. Ich habe gehrt, dass Beard seinen Stalkern einige sehr gute Detektoren gegeben hat, mit denen man seltene Artefakte finden kann. Also musst du dich jetzt diesen Stalkern anschlieen und dir dann die Detektoren krallen. Wie klingt das fr dich? + + + Keine Chance gegen ihn. Ich habe versucht, seine Versorgungswege zu kappen, aber der brtige Halunke hat es trotzdem geschafft, an ein Kompass-Artefakt zu gelangen. Es sieht also gut fr ihn aus... vorerst. + + + [fortfahren...] + + + [fortfahren...] + + + [fortfahren...] + + + Grouse ist tot. Es sieht so aus, als ob Tremor ihn gettet htte... aber der ist auch tot. + + diff --git a/gamedata/configs/text/ger/st_generate_fnames.xml b/gamedata/configs/text/ger/st_generate_fnames.xml new file mode 100644 index 0000000..e38170b --- /dev/null +++ b/gamedata/configs/text/ger/st_generate_fnames.xml @@ -0,0 +1,492 @@ + + + + Sanek + + + Schurik + + + Wadja + + + Wasjan + + + Wasek + + + Witjucha + + + Wetal + + + Wowan + + + Schorka + + + Grischka + + + Grischko + + + Dimon + + + Lecha + + + Dimucha + + + Scheka + + + Fimka + + + Iljucha + + + Kostjan + + + Mitka + + + Michal + + + Micha + + + Michas + + + Koljan + + + Toljan + + + Pawlucha + + + Saschok + + + Stepka + + + Stepucha + + + Timocha + + + Felka + + + Juras + + + Jaschka + + + Andriucha + + + Tocha + + + Arkascha + + + Temka + + + Borjan + + + Bodja + + + Hauptmann + + + Leutnant + + + Gefreiter + + + Andrei + + + Anton + + + Oleg + + + Roman + + + Aleksandr + + + Sergei + + + Anatoli + + + Juri + + + Bogdan + + + Wenjamin + + + Witali + + + Wladimir + + + Dimitri + + + Iwan + + + Konstantin + + + Alexei + + + Sanja + + + Sanek + + + Arthur + + + Jaschka + + + Jarik + + + Jara + + + Slawa + + + Borja + + + Borka + + + Bogdan + + + Slawik + + + Wadim + + + Wadja + + + Wadik + + + Walik + + + Walera + + + Schurik + + + Wasja + + + Waska + + + Wasko + + + Wenja + + + Witja + + + Witka + + + Witalik + + + Wlad + + + Wowa + + + Wowka + + + Lenja + + + Sewa + + + Sewka + + + Gena + + + Genka + + + George + + + Goscha + + + Schora + + + Mark + + + Gleb + + + Grischa + + + Alex + + + Grischka + + + Grischko + + + Danja + + + Kirjucha + + + Danko + + + Dennis + + + Dima + + + Dimka + + + Dimitro + + + Schenja + + + Leschka + + + Schenka + + + Egor + + + Egorka + + + Fima + + + Wanja + + + Wanka + + + Igorek + + + Ilja + + + Kostja + + + Kostik + + + Tolik + + + Lewa + + + Lenja + + + Ljonka + + + Max + + + Matwei + + + Mitja + + + Mischa + + + Mischka + + + Nikita + + + Nik + + + Anton + + + Kolja + + + Oleg + + + Pascha + + + Paschka + + + Petro + + + Petja + + + Petka + + + Roma + + + Romka + + + Rostik + + + Toschka + + + Rus + + + Sawwa + + + Semjon + + + Sema + + + Serega + + + Rusik + + + Stepan + + + Stepa + + + Tima + + + Timka + + + Artem + + + Fedor + + + Fedja + + + Fedka + + + Filja + + + Filka + + + Edik + + + Jurka + + + Jurik + + + Jurko + + + Jascha + + + Hauptfeldwebel + + + Feldwebel + + diff --git a/gamedata/configs/text/ger/st_generate_snames.xml b/gamedata/configs/text/ger/st_generate_snames.xml new file mode 100644 index 0000000..032e7ff --- /dev/null +++ b/gamedata/configs/text/ger/st_generate_snames.xml @@ -0,0 +1,4836 @@ + + + + Grau + + + Berserker + + + Drecksack + + + Flachkopf + + + Spion + + + Bison + + + Biber + + + Bulldogge + + + Ochse + + + Spatz + + + Specht + + + Bestie + + + Magier + + + Buckel + + + Eber + + + Vogel + + + Sittich + + + Wanze + + + Nark + + + Elch + + + Ratte + + + Boa + + + Laib + + + Kaputt + + + Lang + + + Irrsinn + + + Blitz + + + Klinge + + + Trommel + + + Mll + + + Schraube + + + Dynamit + + + Trumpf + + + Schaufel + + + Joint + + + Tote Hose + + + Kreuz + + + Teer + + + Socke + + + Brecheisen + + + Aspirin + + + Messer + + + Schaft + + + Nickel + + + Frack + + + Tdlich + + + Hocker + + + Schleifstein + + + Ass + + + Meiel + + + Strohhalm + + + Shortstop + + + Schwelle + + + Bolzen + + + Segel + + + Faust + + + Narbe + + + Frosch + + + Hacker + + + Khan + + + Koschei + + + Rambo + + + Reisfhrer + + + Terminator + + + Tschapaj + + + Dschinghis + + + Banane + + + Laib + + + Schokoriegel + + + Papa + + + Stachel + + + Homeboy + + + Wundbrand + + + Panne + + + Diplom + + + Antilope + + + Fubar + + + Paria + + + Aspik + + + Holzkohle + + + Trumpf + + + Joint + + + Socke + + + Goblin + + + Moor + + + Khler + + + Flop + + + Ravioli + + + Chili + + + Reibeisen + + + Fettsack + + + Keks + + + Ghul + + + Geizkragen + + + Kaputt + + + Geizhals + + + Silberblick + + + Unhold + + + Krppel + + + Kicker + + + Schiefe + + + Betrger + + + Schalter + + + Toupet + + + Wild + + + Kumpel + + + Lokal + + + Schleim + + + Champ + + + Monokel + + + Bengel + + + Schnorrer + + + Heisporn + + + Bldmann + + + Leiche + + + Psycho + + + Gromaul + + + Zerrissen + + + Raffke + + + Blind + + + Rotz + + + Hipster + + + Met + + + Kadaver + + + Schlitzer + + + Ohr + + + Narr + + + Windhund + + + Lahm + + + Krftig + + + Krank + + + Connaisseur + + + Robust + + + Kavalier + + + Blutegel + + + Knstler + + + Schwindler + + + Banker + + + Penner + + + Baron + + + Hausierer + + + Unorthodox + + + Landstreicher + + + Matrose + + + Zwerg + + + Bourbon + + + Bourgeois + + + Chauffeur + + + Dieb + + + Rasiert + + + Gangster + + + Bote + + + Graf + + + Tyrann + + + Wilder + + + Wrger + + + Ratgeber + + + Spieler + + + Cheater + + + Pate + + + Veteran + + + Coach + + + Bling-bling + + + Wahnsinnig + + + Totengrber + + + Metzger + + + Ninja + + + Henker + + + Punk + + + Guerilla + + + Pazifist + + + Brocken + + + Pirat + + + Brandstifter + + + Prinz + + + Bandit + + + Kamikaze + + + Zuhlter + + + Tyrann + + + Killer + + + Posaune + + + Apotheker + + + Abdurachmanow + + + Altinnik + + + Barsak + + + Kirejew + + + Scherbin + + + Kowaltschuk + + + Koew + + + Koslow + + + Kolontarew + + + Kolontar + + + Kondratenko + + + Korkin + + + Kornejew + + + Baul + + + Krawtschenko + + + Kriwda + + + Kriwochazkij + + + Kusnezow + + + Kusmich + + + Kusjakin + + + Kultschizkij + + + Kunzew + + + Kurwits + + + Kutscheruk + + + Baschakow + + + Kuschnarew + + + Chaladze + + + Lawrik + + + Lawrow + + + Liwschitz + + + Lisitschanskij + + + Litwin + + + Limarenko + + + Masepa + + + Makarenko + + + Baschmakow + + + Malzew + + + Mamajew + + + Merslajew + + + Miltschenko + + + Mironjuk + + + Mohrer + + + Kryga + + + Mostowoj + + + Muntjan + + + Muchmakedow + + + Beschewlij + + + Miskow + + + Nawrozkij + + + Neprizkij + + + Nikanorow + + + Nikeschin + + + Nikulin + + + Futsin + + + Nordiew + + + Nosan + + + Opolew + + + Binoew + + + Orlewitsch + + + Orloff + + + Petkewitsch + + + Petrenko + + + Petrow + + + Plochenkow + + + Podjatschew + + + Poljanin + + + Poplawskij + + + Popow + + + Blinow + + + Portnich + + + Prasolow + + + Prokopenko + + + Proskurin + + + Prozenko + + + Prudow + + + Pustowar + + + Putschek + + + Rabinowitsch + + + Radkewitsch + + + Bobrow + + + Resun + + + Rogosa + + + Rodnijanskij + + + Rotan + + + Rublew + + + Rudik + + + Rusanow + + + Ritschagirskij + + + Sawtschenko + + + Sawtschuk + + + Bogdanow + + + Sagitow + + + Swiridow + + + Sedich + + + Sereda + + + Sidorenko + + + Sidorow + + + Sinij + + + Sinizin + + + Skamejka + + + Sluzkij + + + Bojko + + + Smelow + + + Smolij + + + Sorokin + + + Statsura + + + Stepkin + + + Stischinskij + + + Sikula + + + Tarnawskij + + + Tatartschuk + + + Timtschuk + + + Andreitschuk + + + Bojtschenko + + + Boldeskul + + + Bondarew + + + Borisow + + + Britsch + + + Bronstein + + + Burjak + + + Buturin + + + Bjalo + + + Walentinow + + + Andruschenko + + + Wasiljew + + + Weselow + + + Winogradow + + + Wownenko + + + Wolantschuk + + + Wolodar + + + Woloschin + + + Woronzow + + + Worochajew + + + Wjuschinskij + + + Anisiew + + + Galkin + + + Gansjuk + + + Garkowenko + + + Garkuscha + + + Georgow + + + Glebowskij + + + Gnatjuk + + + Gontscharenko + + + Gordienko + + + Gorlewoj + + + Ardaschew + + + Gorochin + + + Gorjunow + + + Grebenko + + + Gritsajenko + + + Gritsaj + + + Gritsenkow + + + Grischatschew + + + Grischuk + + + Gubar + + + Gunko + + + Babitsch + + + Gurewitsch + + + Denisenko + + + Dowgaljuk + + + Dombrik + + + Dozenko + + + Drosdusch + + + Dubentschuk + + + Dudorow + + + Duka + + + Dumko + + + Balan + + + Dunajew + + + Diklow + + + Erofejew + + + Efremow + + + Schabenko + + + Schmijew + + + Schurakowskij + + + Sabjagoda + + + Sagorodnjuk + + + Samosentschuk + + + Baranow + + + Sarubin + + + Sacharin + + + Swonnizkij + + + Sinowjew + + + Soso + + + Solotar + + + Subarew + + + Subkow + + + Iwanow + + + Ignatenko + + + Baranowskij + + + Ischenko + + + Ischuk + + + Kasakow + + + Kasanzew + + + Kandibabko + + + Kapuka + + + Kapustjanko + + + Kats + + + Kikabidze + + + Gatsula + + + Abdurachmanow + + + Altinnik + + + Barsak + + + Kirejew + + + Scherbin + + + Kowaltschuk + + + Koew + + + Koslow + + + Kolontarew + + + Kolontar + + + Kondratenko + + + Korkin + + + Kornejew + + + Baul + + + Krawtschenko + + + Kriwda + + + Kriwochazkij + + + Kusnezow + + + Kusmich + + + Kusjakin + + + Kultschizkij + + + Kunzew + + + Kurwits + + + Kutscheruk + + + Baschakow + + + Kuschnarew + + + Chaladze + + + Lawrik + + + Lawrow + + + Liwschitz + + + Lisitschanskij + + + Litwin + + + Limarenko + + + Masepa + + + Makarenko + + + Baschmakow + + + Malzew + + + Mamajew + + + Merslajew + + + Miltschenko + + + Mironjuk + + + Mohrer + + + Kryga + + + Mostowoj + + + Muntjan + + + Muchmakedow + + + Beschewlij + + + Miskow + + + Nawrozkij + + + Neprizkij + + + Nikanorow + + + Nikeschin + + + Nikulin + + + Futsin + + + Nordiew + + + Nosan + + + Opolew + + + Binoew + + + Orlewitsch + + + Orloff + + + Petkewitsch + + + Petrenko + + + Petrow + + + Plochenkow + + + Podjatschew + + + Poljanin + + + Poplawskij + + + Popow + + + Blinow + + + Portnich + + + Prasolow + + + Prokopenko + + + Proskurin + + + Prozenko + + + Prudow + + + Pustowar + + + Putschek + + + Rabinowitsch + + + Radkewitsch + + + Bobrow + + + Resun + + + Rogosa + + + Rodnijanskij + + + Rotan + + + Rublew + + + Rudik + + + Rusanow + + + Ritschagirskij + + + Sawtschenko + + + Sawtschuk + + + Bogdanow + + + Sagitow + + + Swiridow + + + Sedich + + + Sereda + + + Sidorenko + + + Sidorow + + + Sinij + + + Sinizin + + + Skamejka + + + Sluzkij + + + Bojko + + + Smelow + + + Smolij + + + Sorokin + + + Statsura + + + Stepkin + + + Stischinskij + + + Sikula + + + Tarnawskij + + + Tatartschuk + + + Timtschuk + + + Andreitschuk + + + Bojtschenko + + + Boldeskul + + + Bondarew + + + Borisow + + + Britsch + + + Bronstein + + + Burjak + + + Buturin + + + Bjalo + + + Walentinow + + + Andruschenko + + + Wasiljew + + + Weselow + + + Winogradow + + + Wownenko + + + Wolantschuk + + + Wolodar + + + Woloschin + + + Woronzow + + + Worochajew + + + Wjuschinskij + + + Anisiew + + + Galkin + + + Gansjuk + + + Garkowenko + + + Garkuscha + + + Georgow + + + Glebowskij + + + Gnatjuk + + + Gontscharenko + + + Gordienko + + + Gorlewoj + + + Ardaschew + + + Gorochin + + + Gorjunow + + + Grebenko + + + Gritsajenko + + + Gritsaj + + + Gritsenkow + + + Grischatschew + + + Grischuk + + + Gubar + + + Gunko + + + Babitsch + + + Gurewitsch + + + Denisenko + + + Dowgaljuk + + + Dombrik + + + Dozenko + + + Drosdusch + + + Dubentschuk + + + Dudorow + + + Duka + + + Dumko + + + Balan + + + Dunajew + + + Diklow + + + Erofejew + + + Efremow + + + Schabenko + + + Schmijew + + + Schurakowskij + + + Sabjagoda + + + Sagorodnjuk + + + Samosentschuk + + + Baranow + + + Sarubin + + + Sacharin + + + Swonnizkij + + + Sinowjew + + + Soso + + + Solotar + + + Subarew + + + Subkow + + + Iwanow + + + Ignatenko + + + Baranowskij + + + Ischenko + + + Ischuk + + + Kasakow + + + Kasanzew + + + Kandibabko + + + Kapuka + + + Kapustjanko + + + Kats + + + Kikabidze + + + Gatsula + + + Abdurachmanow + + + Altinnik + + + Barsak + + + Kirejew + + + Scherbin + + + Kowaltschuk + + + Koew + + + Koslow + + + Kolontarew + + + Kolontar + + + Kondratenko + + + Korkin + + + Kornejew + + + Baul + + + Krawtschenko + + + Kriwda + + + Kriwochazkij + + + Kusnezow + + + Kusmich + + + Kusjakin + + + Kultschizkij + + + Kunzew + + + Kurwits + + + Kutscheruk + + + Baschakow + + + Kuschnarew + + + Chaladze + + + Lawrik + + + Lawrow + + + Liwschitz + + + Lisitschanskij + + + Litwin + + + Limarenko + + + Masepa + + + Makarenko + + + Baschmakow + + + Malzew + + + Mamajew + + + Merslajew + + + Miltschenko + + + Mironjuk + + + Mohrer + + + Kryga + + + Mostowoj + + + Muntjan + + + Muchmakedow + + + Beschewlij + + + Miskow + + + Nawrozkij + + + Neprizkij + + + Nikanorow + + + Nikeschin + + + Nikulin + + + Futsin + + + Nordiew + + + Nosan + + + Opolew + + + Binoew + + + Orlewitsch + + + Orloff + + + Petkewitsch + + + Petrenko + + + Petrow + + + Plochenkow + + + Podjatschew + + + Poljanin + + + Poplawskij + + + Popow + + + Blinow + + + Portnich + + + Prasolow + + + Prokopenko + + + Proskurin + + + Prozenko + + + Prudow + + + Pustowar + + + Putschek + + + Rabinowitsch + + + Radkewitsch + + + Bobrow + + + Resun + + + Rogosa + + + Rodnijanskij + + + Rotan + + + Rublew + + + Rudik + + + Rusanow + + + Ritschagirskij + + + Sawtschenko + + + Sawtschuk + + + Bogdanow + + + Sagitow + + + Swiridow + + + Sedich + + + Sereda + + + Sidorenko + + + Sidorow + + + Sinij + + + Sinizin + + + Skamejka + + + Sluzkij + + + Bojko + + + Smelow + + + Smolij + + + Sorokin + + + Statsura + + + Stepkin + + + Stischinskij + + + Sikula + + + Tarnawskij + + + Tatartschuk + + + Timtschuk + + + Andreitschuk + + + Bojtschenko + + + Boldeskul + + + Bondarew + + + Borisow + + + Britsch + + + Bronstein + + + Burjak + + + Buturin + + + Bjalo + + + Walentinow + + + Andruschenko + + + Wasiljew + + + Weselow + + + Winogradow + + + Wownenko + + + Wolantschuk + + + Wolodar + + + Woloschin + + + Woronzow + + + Worochajew + + + Wjuschinskij + + + Anisiew + + + Galkin + + + Gansjuk + + + Garkowenko + + + Garkuscha + + + Georgow + + + Glebowskij + + + Gnatjuk + + + Gontscharenko + + + Gordienko + + + Gorlewoj + + + Ardaschew + + + Gorochin + + + Gorjunow + + + Grebenko + + + Gritsajenko + + + Gritsaj + + + Gritsenkow + + + Grischatschew + + + Grischuk + + + Gubar + + + Gunko + + + Babitsch + + + Gurewitsch + + + Denisenko + + + Dowgaljuk + + + Dombrik + + + Dozenko + + + Drosdusch + + + Dubentschuk + + + Dudorow + + + Duka + + + Dumko + + + Balan + + + Dunajew + + + Diklow + + + Erofejew + + + Efremow + + + Schabenko + + + Schmijew + + + Schurakowskij + + + Sabjagoda + + + Sagorodnjuk + + + Samosentschuk + + + Baranow + + + Sarubin + + + Sacharin + + + Swonnizkij + + + Sinowjew + + + Soso + + + Solotar + + + Subarew + + + Subkow + + + Iwanow + + + Ignatenko + + + Baranowskij + + + Ischenko + + + Ischuk + + + Kasakow + + + Kasanzew + + + Kandibabko + + + Kapuka + + + Kapustjanko + + + Kats + + + Kikabidze + + + Gatsula + + + Sinaew + + + Feigelmann + + + Ledenzow + + + Alferow + + + Antipin + + + Blinow + + + Bogomolow + + + Wasilewitsch + + + Geschkenbein + + + Djakonow + + + Erochin + + + Sajikin + + + Sacharow + + + Iwtschenko + + + Kabanow + + + Larin + + + Manko + + + Mironow + + + Stepanenko + + + Oganesjan + + + Tschernodub + + + Schilow + + + Tschirikow + + + Beljawin + + + Fadejew + + + Steklow + + + Andrejew + + + Spirin + + + Balizkij + + + Abdurachmanow + + + Altinnik + + + Barsak + + + Kirejew + + + Scherbin + + + Kowaltschuk + + + Koew + + + Koslow + + + Kolontarew + + + Kolontar + + + Kondratenko + + + Korkin + + + Kornejew + + + Baul + + + Krawtschenko + + + Kriwda + + + Kriwochazkij + + + Kusnezow + + + Kusmich + + + Kusjakin + + + Kultschizkij + + + Kunzew + + + Kurwits + + + Kutscheruk + + + Baschakow + + + Kuschnarew + + + Chaladze + + + Lawrik + + + Lawrow + + + Liwschitz + + + Lisitschanskij + + + Litwin + + + Limarenko + + + Masepa + + + Makarenko + + + Baschmakow + + + Malzew + + + Mamajew + + + Merslajew + + + Miltschenko + + + Mironjuk + + + Mohrer + + + Kryga + + + Mostowoj + + + Muntjan + + + Muchmakedow + + + Beschewlij + + + Miskow + + + Nawrozkij + + + Neprizkij + + + Nikanorow + + + Nikeschin + + + Nikulin + + + Futsin + + + Nordiew + + + Nosan + + + Opolew + + + Binoew + + + Orlewitsch + + + Orloff + + + Petkewitsch + + + Petrenko + + + Petrow + + + Plochenkow + + + Podjatschew + + + Poljanin + + + Poplawskij + + + Popow + + + Blinow + + + Portnich + + + Prasolow + + + Prokopenko + + + Proskurin + + + Prozenko + + + Prudow + + + Pustowar + + + Putschek + + + Rabinowitsch + + + Radkewitsch + + + Bobrow + + + Resun + + + Rogosa + + + Rodnijanskij + + + Rotan + + + Rublew + + + Rudik + + + Rusanow + + + Ritschagirskij + + + Sawtschenko + + + Sawtschuk + + + Bogdanow + + + Sagitow + + + Swiridow + + + Sedich + + + Sereda + + + Sidorenko + + + Sidorow + + + Sinij + + + Sinizin + + + Skamejka + + + Sluzkij + + + Bojko + + + Smelow + + + Smolij + + + Sorokin + + + Statsura + + + Stepkin + + + Stischinskij + + + Sikula + + + Tarnawskij + + + Tatartschuk + + + Timtschuk + + + Andreitschuk + + + Bojtschenko + + + Boldeskul + + + Bondarew + + + Borisow + + + Britsch + + + Bronstein + + + Burjak + + + Buturin + + + Bjalo + + + Walentinow + + + Andruschenko + + + Wasiljew + + + Weselow + + + Winogradow + + + Wownenko + + + Wolantschuk + + + Wolodar + + + Woloschin + + + Woronzow + + + Worochajew + + + Wjuschinskij + + + Anisiew + + + Galkin + + + Gansjuk + + + Garkowenko + + + Garkuscha + + + Georgow + + + Glebowskij + + + Gnatjuk + + + Gontscharenko + + + Gordienko + + + Gorlewoj + + + Ardaschew + + + Gorochin + + + Gorjunow + + + Grebenko + + + Gritsajenko + + + Gritsaj + + + Gritsenkow + + + Grischatschew + + + Grischuk + + + Gubar + + + Gunko + + + Babitsch + + + Gurewitsch + + + Denisenko + + + Dowgaljuk + + + Dombrik + + + Dozenko + + + Drosdusch + + + Dubentschuk + + + Dudorow + + + Duka + + + Dumko + + + Balan + + + Dunajew + + + Diklow + + + Erofejew + + + Efremow + + + Schabenko + + + Schmijew + + + Schurakowskij + + + Sabjagoda + + + Sagorodnjuk + + + Samosentschuk + + + Baranow + + + Sarubin + + + Sacharin + + + Swonnizkij + + + Sinowjew + + + Soso + + + Solotar + + + Subarew + + + Subkow + + + Iwanow + + + Ignatenko + + + Baranowskij + + + Ischenko + + + Ischuk + + + Kasakow + + + Kasanzew + + + Kandibabko + + + Kapuka + + + Kapustjanko + + + Kats + + + Kikabidze + + + Gatsula + + + Wei + + + Grn + + + Unsterblich + + + Rostig + + + Romantiker + + + Grausam + + + Muskelpaket + + + Schwtzer + + + Blind + + + Tapfer + + + Rotz + + + Debatter + + + Oldtimer + + + Berserker + + + Hipster + + + Met + + + Grimm + + + Niete + + + Trocken + + + Glckspilz + + + Sprenkel + + + Fettsack + + + Bauch + + + Kadaver + + + Kaputt + + + Klugscheier + + + Schlitzer + + + Ohr + + + Vermummter + + + Narr + + + Lahm + + + Krftig + + + Knochen + + + Zyniker + + + Typ + + + Heiter + + + Krank + + + Alarm + + + Connaisseur + + + Robust + + + Anfnger + + + Eingeborener + + + Aviator + + + Agent + + + Kavalier + + + Blutegel + + + Kumpel + + + Jnger + + + Knstler + + + Asket + + + Schwindler + + + Banker + + + Barde + + + Baron + + + Hausierer + + + Unorthodox + + + Jogger + + + Athlet + + + Kmpfer + + + Landstreicher + + + Matrose + + + Zwerg + + + Bourbon + + + Bourgeois + + + Brokrat + + + Vandale + + + Barbar + + + Pfrtner + + + Besserwisser + + + Hexer + + + Besucher + + + Wikinger + + + Chauffeur + + + Taucher + + + Chief + + + Dieb + + + Reisender + + + Seelenklempner + + + Reiter + + + Gromaul + + + Gangster + + + Geologe + + + Gladiator + + + Bote + + + Gast + + + Graf + + + Portier + + + Raffke + + + berlufer + + + Verkufer + + + Windhund + + + Dandy + + + Vertreter + + + Tyrann + + + Wilder + + + Diplomat + + + Doc + + + Doktor + + + Professor + + + Wrger + + + Wrter + + + Penner + + + Ratgeber + + + Ack-ack + + + Quacksalber + + + Spieler + + + Indianer + + + Irokese + + + Hauptmann + + + Cheater + + + Clown + + + Herzog + + + Rot + + + Rasiert + + + Kosak + + + Koch + + + Magier + + + Komantsche + + + Knig + + + Pate + + + Hndler + + + Raucher + + + Kurier + + + Coach + + + Veteran + + + Legionr + + + Heiler + + + Frster + + + Lord + + + Magnat + + + Bling-bling + + + Wahnsinnig + + + Mars + + + Steinmetz + + + Mechaniker + + + Groer + + + Totengrber + + + Moderator + + + Milchmann + + + Metzger + + + Sldner + + + Empfnger + + + Boss + + + Ninja + + + Operator + + + Waffenschmied + + + Glcklich + + + Schah + + + Henker + + + Polkan + + + Punk + + + Daddy + + + Guerilla + + + Pastor + + + Hirte + + + Alter + + + Pflger + + + Glcklicher + + + Pazifist + + + Transporter + + + Pfiff + + + Pilot + + + Pionier + + + Pirat + + + Schreiner + + + Brandstifter + + + Feuerwehr + + + Slipper + + + Bohnenstange + + + Frost + + + Botschafter + + + Postbote + + + Poet + + + Prinz + + + Prophet + + + Professor + + + Springer + + + Imker + + + Maultier + + + Loyal + + + Rabbi + + + Funken + + + Bandit + + + Rasta + + + Wrter + + + Rocker + + + Bergarbeiter + + + Samurai + + + Minensucher + + + Pfleger + + + Glotzer + + + Priester + + + Sekretr + + + Gigolo + + + Scham + + + Skythe + + + Pfadfinder + + + Maschinist + + + Kamikaze + + + Brter + + + Lebensretter + + + Brocken + + + Sportsmann + + + Fremder + + + Student + + + Richter + + + Giftpilz + + + Zuhlter + + + Erbsenzhler + + + Soldat + + + Tnzer + + + Tyrann + + + Drecksack + + + Feilscher + + + Wischer + + + Kehrer + + + Volksmensch + + + Tourist + + + Killer + + + Posaune + + + Quarterback + + + Schtze + + + Apotheker + + + Rostig + + + Verbal + + + Flachkopf + + + Maler + + + Schafhirt + + + Schamane + + + Bergmann + + + Bergbauer + + + Sheriff + + + Chief + + + Gelehrter + + + Fahrer + + + Buckel + + + Spion + + + Elektriker + + + Kadett + + + Heide + + + Alligator + + + Anakonda + + + Trottel + + + Bison + + + Biber + + + Mantis + + + Stolz + + + Bulldogge + + + Hrnchen + + + Ochse + + + Grice + + + Spatz + + + Rabe + + + Bisam + + + Wegerich + + + Aasfresser + + + Betrger + + + Bitter + + + Manul + + + Gans + + + Delfin + + + Dinosaurier + + + Drossel + + + Specht + + + Igel + + + Kfer + + + Feldhase + + + Bestie + + + Donner + + + Magier + + + Aurochs + + + Truthahn + + + Eber + + + Vogel + + + Sittich + + + Wanze + + + Kobra + + + Moskito + + + Hengst + + + Grobian + + + Katze + + + Kroko + + + Heuschrecke + + + Nark + + + Elch + + + Mammut + + + Elefant + + + Erreger + + + Mcke + + + Ameise + + + Lang + + + Nervtter + + + Spinne + + + Ratte + + + Pilger + + + Piranha + + + Python + + + Feldhase + + + Eule + + + Falke + + + Murmeltier + + + Weichling + + + Gopher + + + Fisch + + + Kakerlake + + + Tarantel + + + Hamster + + + Boa + + + Eule + + + Frettchen + + + Wurm + + + Bergmann + + + Tote Hose + + + Absolut + + + Anomalie + + + Prellbock + + + Laib + + + Kaputt + + + Irrsinn + + + Feuerball + + + Blitz + + + Klinge + + + Trommel + + + Hocker + + + Donut + + + Vakuum + + + Mll + + + Kiesel + + + Lfter + + + Beil + + + Wind + + + Schraube + + + Kragen + + + Nagel + + + Rotschopf + + + Frosch + + + Kassette + + + Globus + + + Brocken + + + Granate + + + Nebel + + + Sarg + + + Sommerzeit + + + Motor + + + Dynamit + + + Loch + + + Schokoriegel + + + Legal + + + Schloss + + + Hintern + + + Isotop + + + Felsen + + + Falle + + + Zauberer + + + Karma + + + Ziegel + + + Kleber + + + Fiesling + + + Schlssel + + + Peitsche + + + Trumpf + + + Kappe + + + Baumspalter + + + Whiskey + + + Wurzel + + + Sense + + + All + + + Schaufel + + + Gestrpp + + + Joint + + + Kreuz + + + Teer + + + Trigger + + + Socke + + + Brecheisen + + + Maschine + + + Ziel + + + Motor + + + Pumpe + + + Eisen + + + Nachtvogel + + + Flinte + + + Aspirin + + + Fallschirm + + + Rund + + + Fnf + + + Messer + + + Schaft + + + Knete + + + Schwarzpulver + + + Hardware + + + Nickel + + + Rocker + + + Rack + + + Reaktor + + + Hacke + + + Sieb + + + Frack + + + Roboter + + + Hirsch + + + Spaten + + + Holzkohle + + + Mondschein + + + Stiefel + + + Cider + + + Tdlich + + + Schnaps + + + Furche + + + Fass + + + Brust + + + Axt + + + Hintern + + + Flink + + + Schleifstein + + + Ass + + + Knoten + + + Faktor + + + Lampe + + + Meiel + + + Juni + + + Knoblauch + + + Strohhalm + + + Chance + + + Fettsack + + + Shortstop + + + Dorn + + + Schrank + + + Schwelle + + + Schabe + + + Dse + + + Stab + + + Bolzen + + + Schraube + + + Segel + + + Geizkragen + + + Hirni + + + Reizahn + + + Klaue + + + Knochen + + + Faust + + + Nerv + + + Skelett + + + Schwanz + + + Kranz + + + Narbe + + + Grau + + + Geizhals + + + Hacker + + + Khan + + + Athlet + + + Pinocchio + + + Hexer + + + Voldemort + + + Tauber + + + Drache + + + Donner + + + Gioconda + + + Silberblick + + + Nudel + + + Blechkopf + + + Ikarus + + + Casanova + + + Koschei + + + Kaiser + + + Klo + + + Kutusow + + + Kleiner + + + Bonaparte + + + Denker + + + Nelson + + + Neptun + + + Oskar + + + Prometheus + + + Puschkin + + + Freitag + + + Rambo + + + Roquefort + + + Reisfhrer + + + Terminator + + + Depp + + + Tinte + + + Kaiser + + + Tschapajew + + + Tschapaj + + + Tschebur + + + Tscheburaschka + + + Chingachgook + + + Dschinghis + + + Stirlitz + + + Banane + + + Habicht + + + Heinzel + + + Laib + + + Papa + + + Stachel + + + Homeboy + + + Bulkin + + + Bulldozer + + + Puffer + + + Kndel + + + Whist + + + Sbel + + + Wundbrand + + + Hybrid + + + Panne + + + Trommler + + + Highlander + + + Diplom + + + Kobold + + + Antilope + + + Onkel + + + Fubar + + + Frstel + + + Paria + + + Kagor + + + Kohl + + + Karbid + + + Aspik + + + Trumpf + + + Kommodore + + + Knig + + + Joint + + + Socke + + + Unhold + + + Eis + + + Goblin + + + Moor + + + Madera + + + Spaghetti + + + Meister + + + Mutant + + + Khler + + + Flop + + + Teich + + + Krppel + + + Schnffler + + + Ravioli + + + Chili + + + Gurt + + + Mehlklo + + + Blase + + + Reibeisen + + + Bohrer + + + Rijasanskij + + + Mondschein + + + Krppel + + + Morchel + + + Keks + + + Tabak + + + Zeitplan + + + Ass + + + Zucchini + + + Ghul + + + Posaune + + + Phantom + + + Stunt + + + Grau + + + Kicker + + + Koma + + + Schiefe + + + Plump + + + Rckgrat + + + Betrger + + + Regenbogen + + + Schalter + + + Busch + + + Toupet + + + Sinij + + + Kriecher + + + Wild + + + Kleiner + + + Steif + + + Nekro + + + Lokal + + + Grab + + + Schleim + + + Champ + + + Narziss + + + Black + + + Lax + + + Versager + + + Albern + + + rgernis + + + Heulsuse + + + Monokel + + + Bengel + + + Schnorrer + + + Paranoia + + + Heisporn + + + Teflon + + + Ruber + + + Bldmann + + + Leiche + + + Rechtschaffen + + + Einfaltspinsel + + + Psycho + + + Maultier + + + Zerrissen + + + Raffke + + + Harsch + + diff --git a/gamedata/configs/text/ger/st_items_artefacts.xml b/gamedata/configs/text/ger/st_items_artefacts.xml new file mode 100644 index 0000000..e347653 --- /dev/null +++ b/gamedata/configs/text/ger/st_items_artefacts.xml @@ -0,0 +1,153 @@ + + + + Dieses Artefakt ist eine Verbindung aus hohlen, organischen Strukturen. Es erzeugt eine gasartige Substanz, die radioaktive Partikel im Krper neutralisieren kann, ohne ihm Schaden zuzufgen. Aufgrund der groen Wirkung ist die Nachfrage nach diesem Artefakt enorm. + + + Blase + + + Eine rtliche Anordnung von gepressten und verformten versteinerten Pflanzen-, Erd- und Tierablagerungen. Das Artefakt kann chemische Gifte teilweise neutralisieren. Es ist strahlungsaktiv. + + + Steinblut + + + Dieses Artefakt entsteht in Anomaliezonen mit intensiver thermischer Aktivitt. Es absorbiert erhhte Hitze und bleibt selbst dennoch khl. Es ist strahlungsaktiv. + + + Dieses Artefakt besteht aus granitartigem Stein, der von gewaltigen Gravitationskrften verformt wurde. Die kristalline Struktur, die daraus resultiert, konnte bisher wissenschaftlich nicht erklrt werden. Das Artefakt bietet durchschnittlichen Schutz vor Psi-Emissionen und ist radioaktiv. + + + Steinblume + + + Kristall + + + Dieses Artefakt weist elektrostatische Elemente auf, doch Wissenschaftler konnten die genauen physikalischen Bedingungen, die fr die Entstehung notwendig sind, bisher nicht vollstndig entschlsseln. Das Artefakt ist in der Zone beliebt und wird fr seine energiespendenden Eigenschaften geschtzt, auch wenn es den Krper bei bermigem Gebrauch ermden kann. Es ist strahlungsaktiv. + + + Batterie + + + Dieses Artefakt hat man fr nutzlosen Schrott gehalten. Allerdings haben Wissenschaftler vor kurzem herausgefunden, dass es eine hervorragende belebende Wirkung auf das Nervensystem hat. Es ist strahlungsaktiv. + + + Muschel + + + Viele Aspekte dieses Artefakts stellen die Wissenschaftler noch immer vor ein Rtsel. Die Emissionen, die durch Impulse in ihren dickeren Teilen erzeugt werden, lassen das Blut an offenen Wunden schneller gerinnen und damit eine Schutzschicht bilden; dadurch wird die Wundheilung beschleunigt. Das Artefakt ist strahlungsaktiv. + + + Mamas Perlen + + + Dieses Artefakt ist ein starkes Absorbens fr elektrischen Strom, den es spter in Form von Entladungen wieder freisetzt. Blitz kann seinen Trger vor Spannungen von bis zu 5.000 Volt schtzen, ist allerdings strahlungsaktiv. + + + Blitz + + + Das einzigartige elektrostatische Artefakt kann unter der Wirkung von Psi-Wellen in Schwingung geraten. Stalker haben einen Weg gefunden, das Artefakt so einzustellen, dass es gegenphasig zu Quellen von Emissionen schwingt und damit ihre Wirkung vollstndig oder zumindest erheblich neutralisiert. Es ist strahlungsaktiv. + + + Mondlicht + + + Der Funkensprher ist ein heller Vertreter der elektrostatischen Artefaktfamilie und kann Schwankungen in elektrischen Feldern ausgleichen. Das Artefakt ist strahlungsaktiv. + + + Funkensprher + + + Dieses Artefakt erinnert entfernt an ein menschliches Auge. Es verbessert den Metabolismus des Krpers enorm und beschleunigt damit die Wundheilung. Erfahrene Stalker behaupten zudem, dass Auge Glck bringen soll. Das Artefakt ist strahlungsaktiv. + + + Auge + + + Dieses seltene Artefakt kommt in Gebieten mit hoher thermischer Aktivitt vor. Es sendet eine starke Infrarotstrahlung aus, wodurch es den Metabolismus des Trgers verbessert und damit Wunden buchstblich auf der Stelle verheilen lsst. Ein uerst seltenes und daher extrem wertvolles Artefakt, das aber strahlungsaktiv ist. + + + Flamme + + + Obwohl Feuerball ein Wrmeartefakt ist, muss man keine Angst haben, sich daran zu verbrennen. Es wird dafr geschtzt, dass es die Temperatur nahezu unabhngig von ueren Umstnden in einem kleinen Umkreis permanent auf 75 Grad halten kann. Das Artefakt ist strahlungsaktiv. + + + Feuerball + + + Ein relativ seltenes Artefakt, das in chemisch kontaminierten Gebieten vorkommt. Es wird besonders fr seine Eigenschaft geschtzt, jede Art von Wunde in wenigen Minuten heilen zu knnen. Aus unbekannten Grnden streuen Wissenschaftler das Gercht, dass sich das Artefakt auf die Gene seiner Trger auswirkt. Es ist strahlungsaktiv. + + + Klo + + + Feuerfliege + + + Goldfisch ist das Ergebnis der erhhten Wechselwirkung von zwei Gravitationsfeldern. Daher kann dieses Artefakt selbst ein starkes, gerichtetes Gravitationsfeld erzeugen und damit das Gewicht von Gegenstnden in seiner Umgebung auf ein Minimum senken. Das erhht die Tragekapazitt der Stalker enorm und ist auch der Grund, warum dieses Artefakt sehr gefragt ist. Es ist strahlungsaktiv. + + + Goldfisch + + + Gravit besteht aus metallischen Substanzen, die erhhter Gravitation ausgesetzt waren. Dadurch ist das Artefakt in der Lage, ein Antigravitationsfeld zu erzeugen, das vielen Stalkern dabei hilft, grere Lasten als blich zu tragen. Das Artefakt ist strahlungsaktiv. + + + Gravit + + + Auf den ersten Blick erinnert dieses Artefakt an Klo, manch einer behauptet sogar, dass es Klo ist, lediglich mit gesteigerten Eigenschaften, weil es einem starken elektrischen Feld ausgesetzt war. Durch einzigartige Eigenschaften erhht Schneeflocke erheblich den Muskeltonus des Trgers. Das Artefakt ist strahlungsaktiv. + + + Schneeflocke + + + Dieses Gravitationsartefakt absorbiert radioaktive Partikel und vermindert dadurch Strahlungsschden am Krper. Es ist in der Zone weit verbreitet und wird - inoffiziell - auch auerhalb der Zone bei der Behandlung von schwerwiegenden akuten Strahlenerkrankungen eingesetzt. + + + Qualle + + + Dieses organische Artefakt besteht aus versteinertem mutiertem Tiergewebe. In chemisch kontaminierter Umgebung wandelt es die chemischen Stoffe in der Luft in eine schleimige Flssigkeit um. Es ist strahlungsaktiv. + + + Fleischklumpen + + + Dieses leuchtende Artefakt kann die Gravitation in einem begrenzten, lokalen Bereich senken. Es wird von Stalkern hufig zusammen mit Gravit, einem hnlichen Artefakt, benutzt, um die maximale Tragekapazitt zu erhhen. Das Artefakt ist strahlungsaktiv. + + + Nachtstern + + + Ein einzigartiges organisches Artefakt mit einzigartigen Eigenschaften. Auf bisher ungeklrte Art und Weise verbessert es die allgemeine Regenerationsfhigkeit des menschlichen Krpers, ohne die Anreicherung von Toxinen zu verstrken. Dank eines vertretbaren Preises und des ansprechenden Aussehens gilt dieses Artefakt als ein begehrtes Sammlerobjekt. Es ist strahlungsaktiv. + + + Seele + + + Dieses seltsam geformte Artefakt kommt an Orten mit erhhter Gravitation vor. Es wirkt wie eine Art Schwamm und absorbiert radioaktive Elemente. Dadurch schtzt das Artefakt sowohl vor uerer Strahlung als auch vor radioaktiven Partikeln, die sich bereits im Krper befinden. + + + Gepresstes + + + Kompass + + + Ein seltenes Artefakt - es ist schon einige Jahre her, seit eines davon gefunden wurde. Es kann Lcken in Anomaliefeldern aufspren. Mit diesem Artefakt, so heit es, kann man die kompliziertesten Anomaliefelder unbeschadet durchqueren. Allerdings wissen nur die Wenigsten, wie man richtig mit dem Kompass-Artefakt umgeht. + + + Herz der Oase + + + Dieses Artefakt wurde im Zentrum der legendren Oase gefunden. Offenbar ist es eine kristallisierte Pflanze, die die heilenden Krfte der Oase bernommen hat. Im Gegensatz zur Oase ist dieses Artefakt jedoch extrem radioaktiv. + + + Feuerfliege interagiert mit Feldern, die bisher wissenschaftlich unbekannt sind. Dadurch werden die Regeneration von Gewebe und Organen in Lebewesen sowie die Normalisierung metabolischer Prozesse beschleunigt. Mit diesem Artefakt kann ein schwer verletzter Stalker buchstblich in Sekunden wieder auf die Beine kommen. Leider kommt Feuerfliege uerst selten vor; darber hinaus ist das Artefakt strahlungsaktiv. + + diff --git a/gamedata/configs/text/ger/st_items_equipment.xml b/gamedata/configs/text/ger/st_items_equipment.xml new file mode 100644 index 0000000..81373e2 --- /dev/null +++ b/gamedata/configs/text/ger/st_items_equipment.xml @@ -0,0 +1,156 @@ + + + + Antistrahlenmedikament + + + Das Strahlenschutzmedikament Mexaminum ist nicht unblich in der Zone. Es sorgt bei der Einnahme dafr, dass sich die peripheren Blutgefe zusammenziehen und die Sauerstoffzufuhr eingeschrnkt wird. Dies beugt der Strahlenbelastung vor bzw. hilft bei der Behandlung. Das Medikament hat keine schweren Nebenwirkungen, auch wenn in einzelnen Fllen von belkeit, Schwindelgefhlen, Krmpfen und Magenschmerzen berichtet wurde. + + + Verband + + + Gewhnlicher elastischer Verband, mit dem Blutungen gestoppt und Infektionen vermieden werden knnen. Bei einer normalen Blutung reicht es aus, den Verband sorgfltig auf der Wunde anzubringen. Bei einer arteriellen Blutung muss der betroffene Bereich besonders fest abgebunden werden. + + + Standard-Militrfernglas mit maximal 7,5-facher Vergrerung. Ntzlich in der Zone, um damit die Geschehnisse aus der Distanz zu verfolgen. + + + Fernglas + + + Brot + + + Man hat zwar niemals einen Bcker in der Zone gesehen, aber dieses Brot ist nicht verstrahlt und sogar essbar. Zumindest sind bisher keine Beschwerden bekannt geworden. + + + Touristenfrhstck + + + Konservenessen, das vermutlich von Stalkern in einem Armeedepot erbeutet wurde, aber so ganz ohne Etikett kann man das schwer sagen. Wenn man dem Mindesthaltbarkeitsdatum glauben kann, msste es noch essbar sein. + + + Echo-Detektor + + + Dieser veraltete Detektor fr Anomalien gibt ein Alarmsignal aus, wenn man sich einer Anomalie nhert und dabei Anomaliepartikel in eine spezielle Kammer des Gerts eindringen. Er kann auch Artefakte aufspren und zeigt die Entfernung zum nchsten Artefakt an (je nach Distanz ndert sich die Frequenz des ausgegebenen Tons). Um in den Artefaktsuchmodus zu gelangen, muss die vordere Abdeckung geffnet werden. Aufgrund der einfachen Bauart kann der Echo-Detektor lediglich zum Aufspren der gewhnlichsten Artefakte genutzt werden. + + + Peil-Detektor + + + Veles-Detektor + + + Ein wissenschaftlicher Detektor der neuesten Generation. Mit drei modernen Detektorkammern werden die Positionen der Artefakte auf einem speziellen Bildschirm angezeigt. Im geschlossenen Zustand registriert das Gert nur Radioaktivitt und Anomalien. Um in den Artefaktsuchmodus zu gelangen, muss die vordere LED-Anzeige geffnet werden. Im Suchmodus kann der Detektor alle wissenschaftlich bekannten Artefakte aufspren. + + + Prototyp Swarog-Detektor + + + Der Prototyp eines Scanners fr Anomaliefrequenzen mit erweiterten Funktionen. Dieses Gert bietet ein Programm, mit dem man statische Gebiete anomaler Aktivitt identifizieren und weiterhin Artefakte aufspren kann. Die Positionen der Anomaliegebiete und Artefakte werden auf einer speziellen Anzeige dargestellt. Der Artefaktsuchmodus, der durch das ffnen der vorderen LED-Anzeige aktiviert wird, wurde so eingestellt, dass Anomalieformationen entdeckt werden knnen, die momentan wissenschaftlich noch gar nicht erfasst sind. + + + Standard-Taschenlampe fr Stirnbefestigung. Ntzlich fr Stalker, die sich pltzlich im Dunkeln wiederfinden. Aber seien Sie gewarnt: Kann bei unvorsichtigem Gebrauch unliebsame Gste anlocken. + + + Taschenlampe + + + Anabiotika + + + Gegengift + + + Das IP2-Antitoxin ist ein komplexes Medikament, das aus verschiedenen Gegengiften besteht, darunter Metoclopramidum, Pyridoxin, Thiamin, Riboxin und andere pharmazeutische Mittel. Das Medikament wird benutzt, um eine Reihe von Antibiotika gegen natrliche Gifte sowie Mittel gegen synthetische Toxine in den Blutkreislauf zu bringen. IP2 ist in der Zone nicht besonders verbreitet, da die meisten Stalker lieber auf eine Gasmaske und einen Schutzanzug setzen. Dennoch gibt es gengend von ihnen, die dieses Gegengift mit sich fhren. Die Wirkung des Medikaments hlt lange an. + + + Herkules + + + Vinca + + + Ukrainisches Vikasolum - ein knstliches quivalent zu Vitamin K. Der Hauptzweck dieses Mittels ist die Beschleunigung der Blutgerinnung. Besonders bei Stalkern begehrt, die ihre langsam heilenden Wunden und Verletzungen, die ihnen von Mutanten zugefgt wurden, schneller verheilen lassen wollen. Die Wirkung des Mittels hlt lange an. + + + Psi-Blocker + + + Ein Medikament, das lawinenartige Nervenimpulse abblockt. Die Einnahme sorgt dafr, dass man fr eine kurze Zeit alle Emotionen verliert. Es wird ausschlielich in der Zone eingesetzt, um die Einflsse von anomalen Psi-Feldern auszugleichen. Die Wirkung des Medikaments hlt lange an. + + + Strahlenschutzmittel + + + Energy-Drink fr Stalker + + + Wird hufig von Stalkern auf langen Reisen getrunken, wenn keine Pausen eingelegt werden knnen. Das Getrnk enthlt leicht verdauliche Kohlenhydrate sowie bestimmte Wirkstoffe, die die Adrenalinausschttung im Krper erhhen. + + + Die gute, alte Gitarre. + + + Gitarre + + + Ditwurst + + + Diese Wurst - eine Mischung aus Hhnchen und Soja - ist oft das einzige Essen am Tag fr Stalker. Kein Gourmetessen, aber man kann ja nicht alles haben. Aufgrund der zahlreichen Konservierungsstoffe ist die Wurst lange haltbar. + + + Medkit + + + Armee-Medkit + + + Ein Medkit, das speziell fr die Behandlung von Verletzungen im Kampf gedacht ist. Es enthlt Blutstiller, Schmerzmittel, Antibiotika und Immunstimulanzien sowie Instrumente zur Entfernung von Kugeln und Splittern aus dem Krper. Dieses Medkit wird standardmig an Militrpersonen ausgegeben, teilweise aber auch von Wchtern verwendet. + + + Ein allgemeines Einweg-Medkit - ntzlich fr die Behandlung von zahlreichen Verletzungen wie z.B. Wunden, Quetschungen, herkmmlichen und chemischen Vergiftungen etc. Recht beliebt bei Stalkern. + + + Wissenschaftliches Medkit + + + Dieses Medkit ist speziell fr den Einsatz in der Zone konzipiert. Es enthlt sowohl wundheilende Prparate als auch Mittel gegen Strahlenerkrankungen und fr die Senkung der Strahlungskonzentration im Krper. Das Medkit enthlt im Gegensatz zu anderen Varianten Vikasolum, Batilolum und Naphazolin. + + + Keine gespeicherten Daten. + + + PDA + + + Cossacks-Wodka + + + Hergestellt von GSC. Trinkt sich angenehm und sorgt fr eine erhebliche Verringerung von Strahlenauswirkungen. Sollte in Maen genossen werden. + + + Dieser Anomaliedetektor der neuesten Generation kann Anomalieformationen aufspren und verfgt ber ein Farbdiodenfeld, das nicht nur die Richtung von Artefakten anzeigt, sondern auch die Entfernung. Um in den Artefaktsuchmodus zu gelangen, muss die vordere Abdeckung geffnet werden. Leider wurde das Gert mit einer veralteten Liste von erfassbaren Artefakten programmiert. + + + Ein experimentelles Medikament, das von Professor Oserski fr wissenschaftliche Forschungsteams in der Zone entwickelt wurde. Hauptschlich enthlt es Tetrodotoxin, auch "Zombiepulver" genannt, das das zentrale Nervensystem des Menschen vollstndig zum Erliegen bringt. Dadurch steigen die Chancen, auerhalb eines sicheren Unterschlupfs eine Emission zu berleben. Das Medikament hat keine Feld- oder klinischen Tests durchlaufen, was fr Zweifel an seiner Wirksamkeit sorgt und auch die Frage der Nebenwirkungen aufwirft. + + + Schraube + + + Der Hauptbestandteil dieses Produkts ist ein anaboles Androgen - ein knstliches Steroid, dessen Zusammensetzung der von Testosteron hnelt. Es wird hufig von Stalkern, die lange unterwegs sind, eingenommen, um die Muskelermdung zu verringern. Das Mittel erhht die Tragekapazitt des Konsumenten erheblich. Die Wirkung hlt lange an. + + + Das Strahlenschutzmittel B190 Indraline ist in Medkits enthalten, die an Arbeiter in Kernkraftwerken ausgegeben werden. Es wird in der Zone statt des hochgiftigen PC1 Cystaminhydrochlorids verwendet, das bei wiederholter Einnahme hufig zum Tod fhrt. Das Mittel schwcht die Wirkung von Gammastrahlung auf lebendes Gewebe ab. Es sollte mglichst vor dem Strahlenkontakt eingenommen werden, weil es nicht sofort wirkt. Die Wirkung des Medikaments hlt lange an. + + + Mundharmonika + + + Fr alle, die den Blues im Blut haben. + + diff --git a/gamedata/configs/text/ger/st_items_outfit.xml b/gamedata/configs/text/ger/st_items_outfit.xml new file mode 100644 index 0000000..6d5776d --- /dev/null +++ b/gamedata/configs/text/ger/st_items_outfit.xml @@ -0,0 +1,117 @@ + + + + CS-3a Krperpanzerung + + + PSZ-9d Wchterpanzerung + + + PS5-M Universalschutzanzug + + + Exoskelett + + + Bulat-Kampfanzug + + + Dieses Exoskelett bietet hervorragenden Schutz vor Schaden durch Projektile und Splitter, schrnkt jedoch im Gegenzug die Bewegungsfreiheit des Trgers ein. Es ist anfllig gegen panzerbrechende Munition. + + + Exoskelett + + + Dieser Armeekampfanzug ist fr Angriffsoperationen gedacht. Er bietet ausgezeichneten Schutz vor Schaden durch Vollmantelgeschosse und Splitter, ohne die Mobilitt des Trgers einzuschrnken. Der Anzug ist anfllig gegen panzerbrechende Munition. + + + Armeekampfanzug + + + Ein gewhnlicher schwarzer Ledermantel. Hat keinen weiteren Nutzen, als den Trger nachts warm zu halten oder ihn vor dem Biss eines blinden, alten Hundes zu schtzen. Obwohl der Mantel nicht besonders bequem ist, wird er von Stalkern in der Zone hufig getragen - entweder weil sie sich gut damit im Dunkeln verstecken knnen oder wegen seines "coolen" Aussehens. + + + Ledermantel + + + SEVA-Schutzanzug + + + Berill-5M Kampfanzug + + + Sphere-M12 Helm + + + Ein Aluminium-/Titan-Helm mit Stoffberzug, der Platz fr weitere Stahlplatten zur Panzerung bietet, sowie mit einer gepanzerten Gesichtsmaske. Der Sphere-M12 wird normalerweise in Kombination mit der Spetsnaz-Krperpanzerung der PSZ-Reihe eingesetzt. Aufgrund der Atemmaske und des integrierten Nachtsichtgerts der ersten Generation sowie des maximalen Schutzes fr den Kopfbereich ist der Helm in der Zone recht beliebt. Verfgt ber Elektronikfelder. + + + Stahlhelm + + + Ein total veralteter Armeestahlhelm ohne jegliche Zustze. Er schtzt weder vor Anomalien noch vor Strahlung, kann aber Projektile abwehren. Dieser Helm war nie besonders beliebt in der Zone, auer whrend einer kurzen, bewaffneten Auseinandersetzung zwischen den Fraktionen. + + + Schutzhelm + + + Ein leichter Helm mit einem luftdichten Visier, der vor Anomalien schtzen soll. Nach dem Design zu urteilen, stammt dieser Helm aus der gleichen Forschungsschmiede wie der SEVA-Schutzanzug. Der Einsatzzweck des Schutzhelms knnte durchaus in der Kombination mit Armeekampfanzgen bei Operationen in extremen Anomaliegebieten liegen. + + + Gasmaske + + + Eine gewhnliche Gasmaske aus Kunststoff und Gummi, die radioaktive Partikel und giftige Substanzen aus der Luft filtert. Dank ihrer universellen Einsetzbarkeit wird sie von vielen Anfngern wie auch Veteranen geschtzt. Die Gasmaske bietet keinen physischen Schutz. + + + Taktischer Helm + + + Ein westliches Modell eines taktischen Helms ohne Tarnbemalung. Bisher ist ungeklrt, wie dieser Helm in die Zone gelangt ist. Er ist dafr gedacht, mit zahlreichen Scannern und Gerten fr die Satellitenkommunikation einem Truppanfhrer die strategische berlegenheit ber den Gegner zu gewhrleisten. Diese Funktionen sind in diesem speziellen Helm jedoch nicht integriert. Er ist mit einer mehrschichtigen Kevlarummantelung und gepanzerten Elementen zum Schutz der elektronischen Bauteile ausgestattet. Darber hinaus bietet er einen Atemschutz und ein Nachtsichtgert der ersten Generation. + + + Sunrise-Schutzanzug + + + Freiheit-Wachanzug + + + Dieser leichte Stalkerschutzanzug wird von Handwerkern der Freiheit hergestellt. Das Material wird mit "Horizont" behandelt, einer speziellen Lsung, die die Fraktion durch systematisches Ausprobieren entwickelt hat, um den Schutz vor Anomalien zu verbessern. Wie auch der Freiheit-Wachanzug weist der Sturmanzug eine integrierte Krperpanzerung und Artefaktbehlter auf. + + + Freiheit-Sturmanzug + + + Diese moderne Version des Wchterschutzanzugs ist fr Stalkerrekruten geeignet, die an leichte Anzge gewhnt sind. Sie bietet im Gegensatz zur PSZ-Serie guten Schutz gegen Anomalien und kann zugleich den Schuss einer Pistole aufhalten. Es kann kein Artefaktbehlter an dem Anzug angebracht werden, aber er kann stattdessen mit einem Kampfhilfssystem ausgestattet werden. + + + Dieser moderne Armeekampfanzug ist fr Einstze in Anomaliegebieten gedacht. Er besteht aus einem schweren PSZ-12p Armeekampfanzug, einem integrierten Kompensationsanzug und einem Schutzanzug gegen Anomalien. Die Panzerung schtzt hervorragend vor Projektilen und Splittern, ohne die Beweglichkeit des Trgers stark zu beeintrchtigen. Weist keinen Artefaktbehlter auf. + + + Dieser Schutzanzug fr Forschungseinstze in der Zone bietet einen geschlossenen Atemkreislauf und eine uere Isolationsbeschichtung. Damit schtzt er hervorragend vor Anomalien. Wegen der recht groen Anflligkeit gegenber physikalischem Schaden ist er nicht besonders wirkungsvoll gegen Projektile und Splitter. Weist einen integrierten Artefaktbehlter auf. + + + Dieser Anzug aus einem der Kiewer Forschungsinstitute ist eine groartige Alternative zu den selbstgemachten Stalkeranzgen. Die integrierte Krperpanzerung kann zwar nur eine Pistolenkugel aufhalten, aber der Schutz gegen Anomalien und Strahlung ist unbertroffen. Dieser komplett aufrstbare Anzug mit zwei Artefaktbehltern ist die erste Wahl fr viele erfahrene Stalker. + + + Dieser Kampfanzug besteht aus einer berylliumbeschichteten Armeepanzerung der PS5-Serie, die fr den Einsatz in der Zone modifiziert wurde. Sie wurde fr Angriffsoperationen in hochradioaktiven Gebieten konzipiert und ist in Gebieten mit hoher anomaler Aktivitt ineffektiv. Stalker bekommen sie im Tausch von Beute mit Armeebediensteten. Weist keinen Artefaktbehlter auf. + + + Dieser Stalkeranzug der Marke Eigenbau besteht aus einem Schutzanzug aus doppelt geschichtetem, gummiertem Stoff mit Plexiglasfutter und einer integrierten Krperpanzerung. Obwohl er nicht einmal den Schuss einer Pistole aufhalten kann, ist er wegen seines geringen Preises und des hohen Modifikationspotenzials sehr beliebt. Weist einen integrierten Artefaktbehlter auf. + + + Dieser Stalkerschutzanzug der Freiheit mit verstrkter Krperpanzerung ist ein guter Kompromiss zwischen Kampf- und Anomalieschutz. Die integrierte Panzerung besteht aus einer Schutzplatte und 10 Kevlarschichten, die eine Pistolenkugel aufhalten knnen. Der Anzug wird mit dem recht teuren Schutzmittel "Souvern" gegen Anomalien behandelt. Weist einen Artefaktbehlter auf. + + + Diese Frhversion des Wchterschutzanzugs ist eine fr die Zone modifizierte Spetsnaz PSZ-9 Krperpanzerung. Sie kann einem Gewehrschuss widerstehen, aber diese Effektivitt wird mit hohem Gewicht, ausladender Gre und kaum vorhandenem Anomalieschutz erkauft. Der Anzug kann zwar nicht mit einem Artefaktbehlter ausgestattet werden, aber dafr mit einem Kampfhilfssystem. + + + Einst wurde diese Krperpanzerung von Clear Sky getragen, aber seit der Auslschung der Fraktion dient der Anzug nur mehr der Erinnerung daran, dass in der Zone selbst ein perfekter Schutzanzug keine Sicherheit garantiert. Dieser Anzug kann einen Pistolenschuss aufhalten, zudem ist der Trger gut geschtzt vor Anomalien. Weist einen integrierten Artefaktbehlter auf. + + + Experimenteller Prototyp eines militrischen Exoskeletts, der wegen der hohen Kosten und einiger Konstruktionsmngel nie in Serienproduktion ging. Da aber damit das maximal tragbare Gewicht enorm steigt und daher Nachfrage dafr herrscht, werden geringe Stckzahlen in unterirdischen Fabriken auerhalb der Ukraine hergestellt. Weist einen integrierten Artefaktbehlter auf. + + + SEVA-Schutzanzug + + diff --git a/gamedata/configs/text/ger/st_items_quest.xml b/gamedata/configs/text/ger/st_items_quest.xml new file mode 100644 index 0000000..f1fb9f8 --- /dev/null +++ b/gamedata/configs/text/ger/st_items_quest.xml @@ -0,0 +1,369 @@ + + + + Dokumente mit Notizen + + + In den Dokumenten wird erwhnt, dass die Unterfhrung "Pripyat 1" auf Befehl der Abteilung 1 nach der Versiegelung des Aufzugs mit einer Mischung aus Kohlenstoffdioxid und einem chemischen Zusatzstoff geflutet wurde. Folglich wurden alle Mitarbeiter angewiesen, chemische Schutzanzge mit geschlossenem Atemkreislauf zu tragen. + + + Brief ber die Lieferung von Forschungsobjekt 62 + + + "Aufgrund der anomalen Aktivitten ist der Transport von Forschungsobjekt 62 ber offenes Gelnde nicht mglich. Benutzen Sie daher die Unterfhrung 'Pripyat 1'. Der Plan der Lieferung und der darauffolgenden Schlieung der Unterfhrung wurde an die Abteilung 1 bermittelt." + + + Ordner mit Befehlen + + + In diesen Dokumenten wird die Evakuierung des Produktionskomplexes aus der Jupiter-Anlage in unterirdische Labore erwhnt. Diese Angelegenheit soll in der Laborabteilung diskutiert worden sein. + + + Lieferplan + + + "Zeitplan fr die Lieferung von Forschungsobjekt 62: 14.7. - 20 Einheiten (1 beschdigt); 21.7. - 32 Einheiten (2 beschdigt); 28.7. - 26 Einheiten (1 beschdigt). Der Versandschein mit Informationen ber die Verluste bei der Lieferung wurde an die Anlagenverwaltung geschickt. Eine Kopie davon ging auch in die Reparaturwerkstatt." + + + Notizbuchseite + + + Die folgende Entscheidung wurde bei dem Treffen gefllt: Die Versandabteilung muss sich auf die Evakuierung der Produktionsanlage von Forschungsobjekt 62 konzentrieren. + + + Dienstprotokoll + + + "... 18:30 - alle Abschnitte der P-1-Unterfhrung wurden luftdicht verschlossen. 19:00 - Eisenbahntore wurden luftdicht versiegelt; die Tore mussten verschweit werden. 19:45 - Aufzugtren wurden verriegelt; die Bedienung des Verriegelungsmechanismus hat die Aktivierung des Reservegenerators erforderlich gemacht, da der Strom in der Unterfhrung bereits abgestellt war. 20:00 - die Chemiewerkstatt hat die Flutung der Unterfhrung mit Gas eingeleitet. 22:00 - alle Arbeiten an der Versiegelung der Unterfhrung wurden abgeschlossen, alle Dokumente wurden an Abteilung 1 bermittelt." + + + Bauplne der Unterfhrung + + + Bauplne der Unterfhrung "Pripyat 1", aus denen hervorgeht, dass sich die Unterfhrung unter der Stadt Pripyat befindet. Das Dokument weist Notizen auf: 1. Aufzugstore versiegeln. 2. Unterfhrung mit Gas aus Chemiewerkstatt versiegeln. + + + Vernderter Isolator + + + Das hier war mal ein Isolator. Mittlerweile hat er sich fast in ein instabiles Artefakt verwandelt. Er ist vermutlich die Quelle der unregelmigen Psi-Emissionen. + + + Kolophonium-Dose + + + Eine Dose Kolophonium, das man beim Lten verwendet. Recht selten in der Zone, was auch der Grund dafr sein drfte, dass hiesige Techniker oft einfach nur Isolierband benutzen, um defekte Ausrstung zu reparieren. + + + Eine Packung Widerstnde + + + Eine Packung Widerstnde - eine der grundlegendsten elektrischen Komponenten. Sie sind nicht allzu selten in der Zone, da sie fr die Aufrstung von High-Tech-Ausrstung verwendet werden, aber diese Sorte von Widerstnden wird normalerweise nicht bentigt. + + + Textolitplatte + + + Textolit ist einer der wichtigsten Bestandteile von gedruckten Schaltungen. Die Gefhle eines Elektrotechnikers beim Anblick einer unbenutzten Textolitplatte sind nicht weniger intensiv als die eines Schriftstellers beim Anblick eines leeren Blattes Papier. + + + Ein Behlter mit Transistoren + + + Ein Behlter mit Transistoren - das sind Halbleiter, die elektrische Signale erzeugen, umwandeln und verstrken. Von Transistoren trumen alle Funktechniker in der Zone. + + + Kupferdrahtrolle + + + Kupferdraht ist ein hervorragender Leiter und zugleich eine Grundmetallquelle. Vor allem wegen Letzterem ist solcher Draht sehr selten in der Zone. So gut wie alle Kupferdrahtvorrte wurden in den 90er Jahren aufgesprt, eingeschmolzen und in Wiederverwertungsanlagen gebracht. + + + Mutantendetektor + + + Dieses Gert stellt eine Verbindung eines gewhnlichen Anomaliedetektors, eines Mutantensensors mit begrenzter Reichweite und einer Aufzeichnungsmglichkeit fr die erzielten Ergebnisse dar. Es weist eine automatische Abschaltung auf, die eintritt, sobald eine bestimmte Menge an Daten gesammelt wurde. + + + Verwaltungsunterlagen + + + Ein Ordner mit Unterlagen, die reine Verwaltungsinformationen enthalten. Laut diesen Dokumenten wurde die gesamte technische Dokumentation von Forschungsobjekt 62 auf Anordnung des Zentrallabors an die Testwerkstatt bergeben. + + + Blacks PDA + + + Eine Nachricht sticht aus allen anderen hervor. Sie stammt von Schakal und lautet: "Mein Mann beim Forschungsinstitut wird dich als Leiter der Expedition vorschlagen. Er wird deine Jungs zum Bewachen des Bunkers einstellen mssen, das wird die Sache einfacher fr dich machen. Vergiss nicht: Der Auftraggeber wnscht, dass die Wissenschaftler KEINERLEI Informationen ber die Bedienung der X-Objekte erhalten. Anderenfalls knnen wir die Zone nicht verlassen. Enttusch mich nicht, Black." + + + Flugschreiber + + + Der Flugschreiber von Stingray 1, der den Absturz berstanden hat. Er drfte Details ber die letzten Momente des Fluges enthalten, wenn auch in verschlsseltem Format. + + + Militrplastiksprengstoff mit einem 5-Sekunden-Timer. + + + Sprengstoff mit Timer + + + Verndertes Rad + + + Snags PDA + + + Der PDA enthlt eine Karte mit einer Markierung beim Umspannwerk, die eindeutig auf ein Versteck hindeutet, sowie einige erotische Bilder. Nichts Besonderes. + + + PDA eines Banditen + + + Die letzte Nachricht auf dem PDA lautet: "Schnapp dir diesen Snag und bring ihn zu mir - wir beide mssen uns mal eingehend unterhalten. Es ist mir egal, wo er ist... finde ihn einfach. Wenn er sich wehren sollte, erteile ihm eine Lektion! Sultan." + + + Dieser PDA enthlt Informationen ber Morgans Kunden sowie die Koordinaten des geheimen Wchterlagerhauses, aus dem er die Waffen gestohlen hat. Danach hat er die Waffen an Sldner verkauft und zudem Kontakt zu einem gewissen Sultan aufgenommen. Um seine Spuren zu verwischen, wollte Morgan die Position des Lagerhauses an die Freiheit weitergeben. Sein Komplize, ein gewisser Geier, sollte diese Information bermitteln. Der PDA erwhnt auch einen Sensor, den nur Morgan ausschalten kann; dieser alarmiert die Wchter, wenn das geheime Lager betreten wird. Fr diese Informationen drften sich sowohl die Wchter als auch die Freiheit interessieren. + + + Morgans PDA + + + Eine Notiz auf der Rckseite eines alten Dokuments: "Ghost, ich nehme meine Sachen. Danke fr das Sturmgewehr - ich werde es brauchen. Als Gegenleistung lasse ich dir einige Medikamente vom Doktor da. Ich konnte den Sldner loswerden, der mir auf den Fersen war, deswegen brauche ich das Zeug nicht mehr... hoffe ich zumindest. Ich werde mich jetzt mit Fang treffen... es ist ihm gelungen, den Decoder zusammenzusetzen. Treffen wir uns an der blichen Stelle, wenn du es schaffst. Strelok." + + + Eine Nachricht an Ghost + + + Eine Nachricht auf einem karierten Stck Papier: "Strelok, ich habe den anderen Decoder fr alle Flle in unserem Versteck in Pripyat gelassen. Ghost und ich gehen jetzt zum Agroprom-Institut, deswegen lassen wir unsere zustzliche Munition hier. Nimm sie dir, wenn du sie brauchst. Gute Jagd! Fang." + + + Eine Nachricht an Strelok + + + Eine Nachricht auf der Rckseite eines alten Dokuments: "Ich kann nicht lnger warten, Fang - ein ganzer Trupp ist mir auf den Fersen. Ich werde auf eigene Faust zum Sarkophag gehen. Meine Waffe lasse ich hier, da ich sowieso keine Munition mehr dafr habe. Falls ich nicht mehr zurckkomme, gib sie Ghost. Wenn er gut mit der Waffe umgeht, wird sie ihm gute Dienste leisten. Mach's gut. Strelok." + + + Eine Nachricht an Fang + + + Ein Speichermodul aus dem unbemannten Flugobjekt. Nowikow hat das Modul gehacked, sodass Sie Zugriff auf die Informationen haben, die das Flugobjekt gesammelt hat. Unter anderem beinhaltet das Modul die Koordinaten der drei Funksender. + + + Speichermodul (gehacked) + + + Ein Speichermodul aus dem unbemannten Flugobjekt. Trotz des Absturzes ist das Modul voll funktionstchtig, aber leider durch eine Sperre geschtzt. + + + Speichermodul (geschtzt) + + + Ein altes Blatt Papier mit dem Wachplan und der Zahl 1421 darunter. ber den alten Text wurde nachtrglich folgende Nachricht geschrieben: "Leutnant W. I. Sokolow. Nach dem Absturz des Hubschraubers habe ich mich zur Evakuierungsstelle B205 begeben. Zwei Tage lang wurde kein Evakuierungsversuch unternommen. Es ist aber zu riskant, hier zu bleiben. Daher habe ich mich entschlossen, B205 zu verlassen und zum mobilen Labor der wissenschaftlichen Expedition zu gehen. Das Labor befindet sich nordstlich der Evakuierungsstelle." + + + Sokolows Nachricht + + + Eine Pflanze, die zu einem Wldchen gehrt hat, das teilweise durch anomale Aktivitten transformiert worden ist. Das Wldchen hat aggressiv auf das Eindringen reagiert, aber die Pflanze scheint soweit nicht gefhrlich zu sein. + + + Anomale Pflanze + + + Die letzte Nachricht auf dem PDA stammt von Morgan. Es handelt sich dabei hauptschlich um den Auftrag, den Stalker Degtarew zu eliminieren. Der Nachricht sind noch mehrere Bilder angehngt. Morgans Anweisungen lauten, die Nachricht nach dem Lesen zu lschen. + + + PDA eines Sldners + + + Dieses Gert vereint einen Artefaktdetektor, eine Batterie und einen starken Sender in sich. Es scannt Anomalien und stellt die Anzahl sowie die Art der Artefakte fest, die darin vorkommen. Diese Informationen werden danach automatisch in den Bunker der Wissenschaftler bermittelt. + + + Scanner fr anomale Aktivitten + + + Der letzte Eintrag auf dem PDA ist eine Tonaufnahme: \n"... Egal welchen Weg wir einschlagen, wir landen immer genau an der gleichen Stelle. Ich habe mich immer noch nicht an diesen Nebel gewhnt. Es ist merkwrdig, dass Tschepurnij spurlos verschwunden ist. Vielleicht hat er einen Weg nach drauen gefunden? \nSechster Tag... Wir haben kein Wasser mehr. Der Oberst wurde wtend, hat zwei Leute aus krzester Distanz abgeknallt und anschlieend sich selbst eine Kugel in den Kopf gejagt. Jetzt bin ich in dieser verdammten Anomalie ganz auf mich gestellt... Htte ich unsere Funkverbindung zum Hauptquartier nicht unterbrochen, htten sie uns retten knnen... und die Wchter htten nicht existiert. Ich frage mich, wie die Dinge ihren Lauf genommen htten. Ach, was soll's. Hauptmann Taschenkow ist vor langer Zeit gestorben... Und General Taschenkow von den Wchtern wird ihm folgen... Ich vermute, das versteht man unter Gerechtigkeit..."\nDie Aufnahme endet mit einem deutlich hrbaren Schuss. + + + General Taschenkows PDA + + + Die Bedienungsanleitung beschreibt, wie das Forschungsobjekt 62 handzuhaben ist. Es wird betont, dass keinerlei nderungen wegen einer etwaigen Krmmung der Projektilflugbahn oder aufgrund des Windes notwendig sind, weil diese Aspekte innerhalb der effektiven Reichweite der Waffe keine Rolle spielen wrden.\nDiese Dokumente darf niemand in die Hnde bekommen, denn sie wren von grtem Interesse fr den ukrainischen Geheimdienst. + + + Bedienungsanleitung fr Forschungsobjekt 62 + + + Dieses Notizbuch beinhaltet die genaue Beschreibung eines Experiments, bei dem die Wirkung eines Psi-Felds auf ein Objekt in der anderen Hemisphre gemessen wurde. Eine Gruppe von Wissenschaftlern in der Karibik hat das Signal empfangen, allerdings war es gestrt. Das Signal war auf seltsame Art und Weise verndert worden, ganz so, als ob irgendjemand es korrigiert htte. Eine mgliche Erklrung dafr ist, dass die Noosphrentheorie tatschlich stimmt und die nderungen durch die Noosphre vorgenommen wurden.\nDiese Dokumente darf niemand in die Hnde bekommen, denn sie wren von grtem Interesse fr den ukrainischen Geheimdienst. + + + Notizbuch mit der Beschreibung eines Experiments + + + Diese Dokumente beschreiben die technischen Eigenschaften der Antenne und wie sie von den geplanten Werten abweichen. Auf der Rckseite befindet sich eine Notiz, aus der hervorgeht, dass die Dokumente im Labor X10 gefertigt wurden.\nDiese Dokumente darf niemand in die Hnde bekommen, denn sie wren von grtem Interesse fr den ukrainischen Geheimdienst. + + + Regenbogen-Sender - grundlegende technische Eigenschaften + + + Diese Dokumente befassen sich mit den Nebenentdeckungen der Forschungen, insbesondere der Entdeckung, dass Lebewesen gerichtete Psi-Emissionen erzeugen knnen. Als Teil der Forschungen, die im Labor X16 stattfanden, ist so ein biologischer Feldsender, im Grunde genommen ein riesiges Gehirn, entstanden.\nDiese Dokumente darf niemand in die Hnde bekommen, denn sie wren von grtem Interesse fr den ukrainischen Geheimdienst. + + + Forschungsunterlagen + + + Hierbei handelt es sich um einen Bericht ber die Studie von biologischen Proben aus dem Labor X18. Die Proben wurden informationellen Feldwirkungen unterschiedlicher Intensitt ausgesetzt. Der Bericht beschreibt hchst detailliert die Mutationen der Lebewesen, nachdem sie den Emissionen ausgesetzt wurden.\nDiese Dokumente darf niemand in die Hnde bekommen, denn sie wren von grtem Interesse fr den ukrainischen Geheimdienst. + + + Bericht einer Studie von biologischen Proben + + + Diese Dokumente beziehen sich auf den Transfer des Forschungsteams und aller Materialien in ein anderes, als X7 bezeichnetes Labor. Dieses wird fr Forschungen im Zusammenhang mit der Wirkung der Noosphre genutzt. Das Forschungsteam setzt sich aus N. A. Lebedew, E. F. Kalantscha und W. I. Suslow zusammen.\nDiese Dokumente darf niemand in die Hnde bekommen, denn sie wren von grtem Interesse fr den ukrainischen Geheimdienst. + + + Transferbefehl + + + Die letzte Nachricht auf dem PDA lautet: "Ich habe den Notfallgenerator im sechsten - dem technischen - Stockwerk gefunden. Zwei Stunden hat es gedauert, bis ich ihn wieder zum Laufen gebracht habe. Ich wrde ihn sehr gerne aktivieren, aber Serbin hat mir befohlen zu warten, bis er ein paar Leute geholt hat." + + + Bartschuks PDA + + + Eine rote Magnetschlsselkarte, markiert mit "X8". + + + Rote X8-Schlsselkarte + + + Der PDA enthlt zahlreiche bedeutungslose Eintrge, aber ein Eintrag sticht hervor: "Der Monolith kommuniziert mit dem Empfnger der Nachricht und befiehlt ihm, berschssige Munition einzusammeln und an Orten zu verwahren, die die Unglubigen nicht kennen. Diese Orte sollen mit dem Zeichen des Monolithen markiert werden. In schwierigen Zeiten sollen jene, die den Monolithen hren knnen, dann von seiner Weisheit profitieren... Ich habe den Willen des Monolithen an meine Brder weitergeleitet und ihnen gesagt, wo sie die Munition finden knnen..." + + + PDA eines Monolithers + + + Ein recht einfacher Werkzeugkasten. Wohl nicht geeignet fr feinere Arbeiten, aber angesichts des Werkzeugmangels in der Zone knnte das Werkzeugset fr gengsame Techniker von Nutzen sein. + + + Einfaches Werkzeug + + + Eine brauchbare Werkzeugsammlung. Sie scheint von einem erfahrenen Techniker sorgfltig fr seine eigenen Zwecke zusammengestellt worden zu sein. Trotz des Alters ist das Werkzeug in gutem Zustand. + + + Feinwerkzeug + + + Ein professionelles Werkzeugset fr die Feineinstellung von Ausrstungsgegenstnden. Der Hinweis auf dem Behlter besagt, dass das Werkzeug in Deutschland hergestellt wurde. Das Werkzeugset enthlt alles Notwendige, um so gut wie jede Feineinstellung und Kalibrierung vornehmen zu knnen. + + + Kalibrierungswerkzeug + + + Alte Magnetschlsselkarte + + + Kardans Magnetschlsselkarte. Sie gewhrte Zugang zur Testwerkstatt fr Forschungsobjekt 62. + + + Dokumente ber Forschungsobjekt 62 + + + Diese Dokumente beschreiben den Betriebsmechanismus und die wichtigsten technischen Eigenschaften des elektromagnetischen Gerts.\nIn den Dokumenten findet sich folgender Hinweis: "Die Dokumente mssen ins Zentrallabor X8 zurckgebracht werden. Ich werde beschftigt sein, also mssen Sie das selbst bernehmen. Benutzen Sie die Magnetkarte im Servicezentrum Jubilejni von Pripyat, um in das zweite Untergeschoss zu gelangen. Von dort aus finden Sie schon den Weg. Die Zugangskarte liegt bei.\nN. Lebedew."\nDiese Dokumente darf niemand in die Hnde bekommen, denn sie wren von grtem Interesse fr den ukrainischen Geheimdienst. + + + Gelbe X8-Schlsselkarte + + + Befehl 562 + + + Interner Befehl 423 + + + Schlssel A + + + Ein gewhnlicher Schlssel, gekennzeichnet mit dem Buchstaben "A". + + + Schlssel B + + + Ein gewhnlicher Schlssel, gekennzeichnet mit dem Buchstaben "B". + + + Eine der Tonaufnahmen klingt besonders wahnsinnig: "Hier sind also diese verdammten Mutanten! Sie sind auf das Plateau geklettert, weil sie dachten, dass Noah sie dort nicht erwischt... Vermutlich wissen sie nicht, dass ich meinen ganz persnlichen Weg dort hinauf am nrdlichen Bauernhof vorbei habe... Auf uns wartet eine Menge Spa, ihr Arschlcher!" + + + Noahs PDA + + + In einer Unmenge von Spam wurde eine Nachricht auf diesem Notebook als wichtig markiert:\n"Richte ein Lager in der Nhe der Klranlage ein und alle, die bei diesem Job mitmachen, werden dich dort treffen. Black musst du nicht erwarten, denn er und seine Mnner werden wegen einer anderen Mission bei Jupiter sein. Das Militr hat alle Flge in die Zone ausgesetzt, daher droht von der Seite keine Gefahr. Wenn die Stalker einen Weg nach Pripyat finden, schicken wir einen Ortskundigen los und warten dort auf die Mnner des Auftraggebers - sie werden uns den Weg zum Labor zeigen.\nSchakal." + + + Notebook eines Sldners + + + Die letzte empfangene Nachricht lautet:\n"Wir warten ganz ungeduldig bei irgend so 'ner Werkstatt. Ich habe zwei Jungs losgeschickt, damit sie die Strae fr dich auskundschaften. Aber dennoch werden wir hier warten, bis der Kurier des Auftraggebers auftaucht - die Luft hier ist viel angenehmer.\nTesak." + + + PDA von Hook dem Sldner + + + PDA von Rippe dem Sldner + + + Eine Flasche eines gefhrlichen chemischen Nervengases. + + + Eine Flasche Perin B3-Gas + + + Diese Kiste ist mit einem recht kniffligen Schloss versehen. Nach dem Gewicht und dem Gerusch zu urteilen, das die Kiste beim Schtteln macht, ist sie nicht leer. + + + Stahlkiste + + + Nachricht auf dem PDA: "Ich bin mir sicher, dass sich das Artefakt auf dem Baum selbst befindet. Ich knnte vom Hgel aus auf den Baum klettern... hoffentlich gibt es dort auf den Hgeln keine Mutanten. Es ist echt bld, dass ich nach dem Streit mit Kardan und Barge alleine hierher kommen musste. Aber wenn ich das Artefakt zurckbringe, werden sie sehen, dass ich Recht hatte..." + + + Jokers PDA + + + Aus der letzten Nachricht auf dem PDA geht hervor, dass ihr Verfasser wtend war: "Kardan, der alte Sufer. Er ist nicht nur ein fauler Hund, wenn er was getrunken hat - 'Hier ist es besser, wir sollten es ruhig angehen lassen' - nein, er macht sich dann auch noch lustig ber Joker und mich und sagt, wir seien noch jung und htten keine Ahnung. Hey... Joker ist auch ein Thema fr sich: Ist pltzlich 'ne beleidigte Leberwurst, schnappt sich seine Tasche und verschwindet. Whrend ich versucht habe, Kardan zu beruhigen, ist er gegangen und ich habe keinen blassen Schimmer wohin. Und was soll ich tun? Mit diesem senilen Schwachkopf trinken? Nein danke! Sein Wodka taugt nichts... Pfui Teufel..." + + + Barges PDA + + + Tremor hat auf seinem PDA Tagebuch gefhrt und seine letzten Aufnahmen sind die interessantesten: "Aufnahme 12. Ich werde bald meine Forschungen abschlieen. Die Leute im Lager schpfen langsam Verdacht. Grouse und Danila wollen einige Blutsauger jagen. Ich frage mich, wann sie es herausfinden... Ich muss die Behlter mit Blut sortieren, um festzustellen, welche von ihnen verseucht wurden. Die anderen muss ich verstecken... [hastig:] Da kommt jemand. [Gerusch, wie das Aufnahmegert ausgeschaltet und anschlieend wieder eingeschaltet wird]. Aufnahme 13 - mglicherweise meine letzte. Erst dieser neugierige Jger und jetzt Grouse... Damit komme ich nicht davon. Sie werden mich erwischen, ich wei es. Aber das ist vllig egal. Diese Hmoglobinabhngigkeit bringt mich sowieso bald um. Und lieber lasse ich mir eine Kugel in den Kopf jagen, als an einer Krankheit zu sterben..." + + + Tremors PDA + + + Streng geheim. Befehl 562 des fr die Sicherheit von Objekt 1 zustndigen HQ-Kommandeurs R. Ju. Didenko.\nChemieschutzeinheit 423: Verlegen von Sektor B103 nach Sektor A19, um Feldtests der chemischen Lsung Perin B3 unter Kampfbedingungen durchzufhren. Der Einheitskommandeur Oberst P. P. Slawin ist verantwortlich fr die Durchfhrung der Tests. Der stellvertretende Einheitskommandeur Oberstleutnant K. S. Walow ist verantwortlich fr den Transport und die Sicherheit. + + + Streng geheim. Befehl von Oberst P. P. Slawin.\nLaut diesem Befehl haben sich die Mitglieder der Chemieschutzeinheit 423 mit folgenden Informationen vertraut zu machen:\n1. Die Schlssel fr den Behlter mit der chemischen Lsung Perin B3 sind im Besitz von Oberst P. P. Slawin (Schlssel A) und Oberstleutnant K. S. Wlasow (Schlssel B).\n2. Konvoireihenfolge (beginnend vorne): Fahrzeug des stellvertretenden Einheitskommandeurs, Geleitfahrzeug 8, Schtzenpanzer 1, Transportfahrzeug 1, Schtzenpanzer 3, Geleitfahrzeug 2, Fahrzeug des Einheitskommandeurs (P. P. Slawin).\nKopien des Befehls sind Oberstleutnant K. S. Wlasow und Oberleutnant R. B. Nasarenku zu berreichen. + + + Eine gelbe Magnetschlsselkarte, markiert mit X8.\nDie Karte darf niemandem in die Hnde fallen, da man mit ihr Zugang zum Geheimlabor erhlt. + + + PDA von Sultans Boten + + + Die letzte Nachricht, die mit diesem PDA verschickt wurde, ist eine Sprachaufzeichnung: "Ich habe mich um diese Versager gekmmert, Sultan! Die werden sich nicht mehr mit uns anlegen!" + + + Dies war frher das Ruder des Baggerschiffs. Mittlerweile hat es sich teilweise in ein merkwrdiges Artefakt verwandelt. Es sind keine besonderen Eigenschaften festzustellen, auer dem sichtbaren Leuchten und etwas Radioaktivitt. + + + Eine empfangene Nachricht lautet:\n"Ich habe es geschafft, etwas wegen den Waffen in die Wege zu leiten. Der gierige Drecksack wird uns die Vorrte seiner Fraktion verkaufen. Das wird zwar schn billig, aber wir mssen schnell zur Jupiter-Anlage.\nGeier." + + diff --git a/gamedata/configs/text/ger/st_items_weapons.xml b/gamedata/configs/text/ger/st_items_weapons.xml new file mode 100644 index 0000000..42dd32a --- /dev/null +++ b/gamedata/configs/text/ger/st_items_weapons.xml @@ -0,0 +1,567 @@ + + + + .45 ACP Patronen + + + Das Vollmantelgeschoss Kaliber .45 erfreut sich dank seines hohen Gewichts und der relativ geringen Treibladung bereits seit ber hundert Jahren groer Beliebtheit. Das Geschoss ist daher vergleichsweise langsam, aber sehr schussgenau und weist eine beachtliche Stoppwirkung auf. + + + .45 ACP + + + .45 ACP Hydroschock-Patronen + + + Diese ungewhnliche .45 ACP-Munition besteht aus einem Teilmantel-Flachkopfgeschoss mit einer expandierenden Hlle und einem Stahlkern. Sie stellt eine Kombination aus einem expandierenden Teilmantel-Flachkopfgeschoss und panzerbrechender Munition dar. Daher profitiert sie von den Vorteilen beider Geschossarten, weist allerdings auch ihre Nachteile auf. + + + .45 Hydro + + + 12x70 Schrotladung + + + Standardgeschosse Kaliber 12 gefllt mit 6mm-Schrot. Tdlich auf kurze Distanz. Nur geeignet fr den Einsatz in Waffen mit glattem Lauf. + + + 12x70 Schrot + + + 12x76 Massivgeschosse + + + Diese schweren Massivgeschosse vom Kaliber 12 werden normalerweise auf der Jagd nach ganz groer Beute eingesetzt, knnen aber auch in anderen Bereichen sinnvoll sein. Die schwere Munition bohrt sich nicht wie blich durch die Panzerung, sondern durchschlgt sie einfach mit einer immensen Wucht. + + + 12x76 Massiv + + + 5,45x39 mm AP Patronen + + + Panzerbrechende Militrmunition Kaliber 5,45x39 7H22 fr automatische Gewehre aus den Lndern des Warschauer Paktes. Sie weist ein panzerbrechendes Geschoss aus Hartlegierung auf und ist besonders gegen Krperpanzerung wirksam. + + + 5,45x39 AP + + + 5,45x39 mm Patronen + + + Verbesserte Militrmunition Kaliber 5,45x39 7H10 fr automatische Gewehre aus den Lndern des Warschauer Paktes. Sie ist dank des geringeren Rckstoes schussgenauer als Geschosse vom Kaliber 7,62 und hat eine um 100 m grere Reichweite. + + + 5,45x39 + + + 5,56x45 mm AP Patronen + + + Gebruchliche panzerbrechende Militrmunition der NATO Kaliber 5,56x45. Sie ist unter der Indexnummer SS190/M855 bekannt und wird von zahlreichen westlichen Sicherheitsfirmen und Sondereinsatzkrften verwendet. Besonders wirksam gegen Krperpanzerung. + + + 5,56x45 AP + + + 5,56x45 mm Patronen + + + Standardmunition der NATO Kaliber 5,56x45, die speziell fr zielgenaues automatisches Feuern entwickelt wurde. Sie weist gute ballistische Eigenschaften auf, da sie auf der Grundlage von Jagdmunition konzipiert wurde. Allgemein unter der Indexnummer SS109 bekannt. + + + 5,56x45 + + + 7,62x54 mm 7H1 Patronen + + + Scharfschtzenmunition Kaliber 7,62 mit einem Stahlgeschoss. Wurde speziell fr das SVD entwickelt. Im Gegensatz zum Maschinengewehr-Pendant weist die 7H1-Variante eine geringe Streuung und hervorragende panzerbrechende Eigenschaften auf. + + + 7,62x54 7H1 + + + 7,62x54 mm PP Patronen + + + Gnstige Maschinengewehrmunition Kaliber 7,62. Da sie von der Form her ungeeignet fr Scharfschtzengewehre ist, wird sie nur im RP-74 Maschinengewehr eingesetzt. + + + 7,62x54 PP + + + 9x18 mm Patronen + + + Vollmantelmunition bestehend aus einem Stahlgeschoss und einem Bleikern unter einem Metallmantel. Sie weist eine gute Stoppwirkung auf, ist aber nicht sehr effektiv gegen Krperpanzerung. + + + 9x18 + + + 9x18 mm +P+ Patronen + + + Hierbei handelt es sich um Geschosse mit erhhter Stoppwirkung; die europische Bezeichnung +P+ bedeutet "berdruckmunition" - die Mndungsgeschwindigkeit ist um 30% erhht. Nicht besonders wirkungsvoll gegen Krperpanzerung. + + + 9x18 +P+ + + + 9x19 mm FMJ Patronen + + + Diese Standardmunition vom Kaliber 9x19 mit Vollmantelgeschoss weist gute Eigenschaften auf und ist zugleich einfach herzustellen. Sie ist aufgrund der Tatsache, dass expandierende Munition laut internationaler Gesetze im Kampf verboten ist, durchaus beliebt, allerdings nicht besonders wirkungsvoll gegen Krperpanzerung. + + + 9x19 FMJ + + + 9x19 mm JHP Patronen + + + Diese Teilmantel-Hohlspitzmunition vom Kaliber 9x19 mit expandierender Hlle trumpft mit hoher Stoppwirkung auf und neigt nicht allzu sehr zu Querschlgern. Sie wird fr gewhnlich von Polizeikrften und zur Selbstverteidigung eingesetzt. Allerdings ist sie aufgrund ihres Penetrationspotenzials nicht besonders effektiv gegen Krperpanzerung. + + + 9x19 JHP + + + 9x39 mm SP-6 Patronen + + + Die SP-6 ist eine Unterschallmunition fr Sturmgewehre mit Teilmantel-Flachkopfgeschoss und einem harten Stahlkern, der aus der Hlle hervorsteht. Sie erfordert einen Schalldmpfer fr geruscharmes Feuern. Wird von Sondereinsatzkrften des Warschauer Paktes eingesetzt und ist gegen Krperpanzerung wirkungsvoll. + + + 9x39 SP-6 + + + 9x39 mm SP-5 Patronen + + + Die SP-5 ist eine Unterschallmunition fr Scharfschtzengewehre mit bimetallischer Hlle. Sie weist einen Stahlkern auf, wohinter sich eine Kammer mit Blei befindet. Sie erfordert einen Schalldmpfer fr geruscharmes Feuern und wird von Sondereinsatzkrften des Warschauer Paktes eingesetzt. + + + 9x39 SP-5 + + + Batterien + + + M203 Granate + + + 40mm-Granate fr den M203 Unterlaufgranatwerfer mit einem letalen Wirkungsradius von 5 m. Kann auch im integrierten Granatwerfer des FT-200M eingesetzt werden. + + + M203 + + + OG-7V Sprengkopf + + + Splittersprengkopf fr den Antipersoneneinsatz im RPG-7u Granatwerfer. Der Hauptzweck dieses Sprengkopfes besteht darin, mit dem RPG-7u Gegner zu tten, die sich auerhalb der Reichweite von Handgranaten in Deckung befinden. + + + OG-7V + + + VOG-25 Granate + + + Gewhnliche Splittergranate fr den GP-25 Koster Unterlaufgranatwerfer mit einem letalen Wirkungsradius von 5 m. Die VOG-25 Granate wird auch im Tunder S14 sowie Bulldog 6 Granatwerfer eingesetzt. + + + VOG-25 + + + PSO-1m Zielfernrohr + + + Ein weit verbreitetes optisches Zielfernrohr mit fester 5-facher Vergrerung aus sowjetischer Produktion. Wie blich in den Lndern des Warschauer Paktes wird es mit einer Prismenschiene auf Waffen montiert. + + + PSS-2x Zielfernrohr + + + Ein optisches Zielfernrohr mit fester 5-facher Vergrerung und integriertem Wrmesucher, mit dem fr den menschlichen Krper typische Wrmequellen identifiziert werden knnen. Es wurde fr Sondereinsatzkrfte konzipiert und wird mit einer Prismenschiene auf Waffen montiert. + + + NSPU-3 Zielfernrohr + + + Ein Nachtsichtzielfernrohr mit fester 5-facher Vergrerung und Bildverstrker fr den Einsatz im Dunkeln. Es wird mit einer Prismenschiene auf Waffen montiert. + + + SUSAT 4-fach Zielfernrohr + + + Ein anpassbares Langreichweitenzielfernrohr mit 1,6- bis 4-facher Vergrerung, das eine automatische Justierung fr eine grere Effektivitt bietet. Es wird mit einer Picatinny-Schiene nach NATO-Standard auf Waffen montiert. + + + Ein Zielfernrohr mit fester 4-facher Vergrerung, das hauptschlich in westlichen Lndern hergestellt wird. Es wird mit einer Picatinny-Schiene nach NATO-Standard auf Waffen montiert und hufig auf kleineren Waffen fr zielgenaues Feuern aus mittlerer bis groer Distanz eingesetzt. + + + SUSAT Twilight 1,6-fach Zielfernrohr + + + Optisches SUSAT-Zielfernrohr mit 1,6-facher Vergrerung und hherer Kontrastdarstellung fr den Einsatz bei schlechten Lichtverhltnissen. Es wird mit einer Picatinny-Schiene nach NATO-Standard auf Waffen montiert. + + + SUSAT Night 4-fach Zielfernrohr + + + Ein Zielfernrohr mit fester 4-facher Vergrerung und Nachtsichtgert fr den Einsatz bei Dunkelheit sowie groen Distanzen. Es wird mit einer Picatinny-Schiene nach NATO-Standard auf Waffen montiert. + + + SUSAT 1,6-fach Zielfernrohr + + + Optisches SUSAT-Zielfernrohr mit 1,6-facher Vergrerung fr den Einsatz bei kurzen bis mittleren Distanzen. Es wird mit einer Picatinny-Schiene nach NATO-Standard auf Waffen montiert. + + + PSU-1 Zielfernrohr + + + Ein optisches Zielfernrohr mit 2,7-facher Vergrerung fr den urbanen Einsatz bei mittleren Distanzen. Es wird mit einer Prismenschiene auf Waffen montiert. + + + Schalldmpfer + + + Ein wirkungsvoller Schalldmpfer, der je nach Bedarf angepasst werden kann. Der Krper um den Lauf beinhaltet ein feines Messingsieb, whrend die Frontpartie aus einer Reihe von Metallwnden mit ffnungen fr den Projektildurchlass besteht. Das Schalldmpferset enthlt zudem Adapter und Abdichtungen fr die meisten Waffen. In der Regel wird der Schalldmpfer fr das Dezimieren gegnerischer Reihen eingesetzt, ohne Aufmerksamkeit zu erregen. + + + F1 Granate + + + Eine defensive Handgranate mit Splitterwirkung, die mittlere Krperpanzerung durchdringen kann. Die Granate weist einen letalen Wirkungsradius von 7 m auf. Stalker gelangen in den Besitz von F1 Granaten, indem sie mit Soldaten handeln, die vorgeben, sie im Kampf gegen Mutanten eingesetzt zu haben. + + + GP-25 Koster + + + Ein einzelschssiger Unterlaufgranatwerfer mit gezogenem Lauf fr Sturmgewehre, der in Lndern des Warschauer Paktes hergestellt wird. Der Feuermechanismus ist selbstspannend und weist einen manuellen Sicherungshebel auf. Zudem wird das Auslsen automatisch verhindert, wenn der Granatwerfer nicht korrekt am Gewehr angebracht ist. Bentigt VOG-25 Granaten. + + + M203 + + + Ein modifizierter M203 Granatwerfer, der um 3 Zoll verkrzt wurde. Er wird mit einer Picatinny-Schiene auf Waffen montiert. Aufgrund einer genderten Montierung wird dieser Granatwerfer weltweit hufig eingesetzt. + + + RGD-5 Granate + + + Eine offensive Handgranate mit einem kleinen letalen Wirkungsradius von 5 m. Stalker setzen sie aufgrund ihres geringen Anschaffungspreises hufig zum "Ausruchern" von Mutanten ein. + + + Rauchgranate + + + Eine Rauchhandgranate, die zum Vernebeln eingesetzt wird. Nach dem Wurf der Granate dauert es 10 Sekunden, bis sich der Rauch im Wirkungsbereich entfaltet hat. + + + Messer + + + AC-96/2 + + + AKM-74/2 + + + AKM-74/2U + + + Martha + + + Abgesgte Schrotflinte + + + Eine abgesgte Jagdschrotflinte mit parallelem Doppellauf. Sie ist leichter und kompakter als eine gewhnliche Schrotflinte. Aufgrund der Tatsache, dass sie sich einfach verbergen lsst und zudem im Nahkampf extrem wirkungsvoll ist, gehrt sie zu den beliebtesten Waffen unter Banditen. + + + Kora-919 + + + Steppe Eagle + + + Eine handgefertigte Pistole, die auf der Grundlage des Black Kite entworfen wurde. Die Komponenten sind fein darauf abgestimmt, dass fr eine Handfeuerwaffe dieser Art eine nahezu unglaubliche Schussgenauigkeit gewhrleistet wird. + + + Black Kite + + + FT-200M + + + Fora-12 + + + GP37 + + + Gaugewehr + + + Tunder S14 + + + Dieses Sturmgewehr ist wie die AKM-Serie mit einem Granatwerfer ausgestattet und wurde fr den Einsatz in schnellen Eingreiftrupps konzipiert. Die Hauptunterschiede bestehen in der 9x39-Munition, der Bullpup-Form und der zahlreichen Konfigurationsmglichkeiten. Das Gewehr wird dafr geschtzt, dass es im Huserkampf gepanzerte Gegner hinter improvisierter Deckung aus der Distanz ausschalten kann. Zudem hat es eine hervorragende Stoppwirkung. + + + Storm + + + Diese russische Modifikation des Tunder S14 ist ein experimentelles Sturmgewehr-Granatwerfer-System. Sie wurde speziell fr den Einsatz in der Zone entwickelt und weist insbesondere ein vergrertes Magazin auf. + + + HPSS-1m + + + Ein modifiziertes Modell einer Pistole aus der ersten Hlfte des 20. Jahrhunderts, das so zuverlssig, durchschlagskrftig und schussgenau ist wie das Original. Pistolen dieser Serie gelten als die besten Handfeuerwaffen des 20. Jahrhunderts und sind in der Zone uerst gefragt. + + + IL 86 + + + TRs 301 + + + Viper 5 + + + Diese Maschinenpistole hat sich weltweit zu einer enorm beliebten Waffe entwickelt, weil sie zuverlssig, einfach zu bedienen und schussgenau ist. In den vergangenen Jahrzehnten wurde die Viper 5 von Sondereinsatzkrften und Polizeitruppen auf der ganzen Welt eingesetzt. Da die globalen Schwarzmrkte mit der Viper 5 geradezu berflutet wurden, ist es keine groe berraschung, dass sie irgendwann auch in der Zone aufgetaucht ist. + + + Frasier + + + Prototyp einer Maschinenpistole, der auf dem hervorragenden Viper 5-Modell basiert. Die Frasier wurde fr den Kampfeinsatz bei kurzen und krzesten Distanzen konzipiert. Sie profitiert von einem greren Kaliber, einer erhhten Feuerrate und einer verbesserten Schussgenauigkeit. + + + PB-1s + + + Zulus RP-74 + + + Diese Waffe hat zuvor Zulu gehrt. Ihre Spezialfunktionen beinhalten u.a. eine erhhte Munitionierung und einen besonders verlsslichen Abzugsmechanismus. Die Modifikationen haben zwar das Gesamtgewicht der Waffe erhht, aber das war fr den letzten Besitzer kein Problem. + + + PMm + + + Ehren-PMm + + + Eine alte PMm, die Degtarew als Zeichen der Anerkennung berreicht wurde, und zwar "Fr das erfolgreiche Ausfhren hchstgefhrlicher Staatsbefehle sowie fr Tapferkeit und Mut bei der Ausbung seiner Pflichten". + + + Eliminator + + + Bulldog-6 + + + Dieser Revolver-Granatwerfer verfgt ber sechs gezogene Frontladerlufe, die alle einem Unterlaufgranatwerfer entsprechen. Die Trommel wird ebenfalls von vorne geladen. Die Waffe wird hufig fr das schnelle Unterdrcken von gegnerischen Feuerstellungen und - im freien Feld - gegen verschanzte Feinde oder besonders starke Mutanten eingesetzt. + + + RP-74 + + + Dieses Maschinengewehr mit Munitionsgurt ist eine tragbare Modifikation mit einer komplizierten Zweistufen-Munitionszufhrung. Trotz seines Gewichts und seiner niedrigen Genauigkeit hat dieses leichte MG seine Anhnger in der Zone. Es wird hauptschlich eingesetzt, um whrend Fraktionskmpfe zahlenmig berlegene feindliche Truppen abzuwehren und Mutantenverstecke zu subern. + + + RPG-7u + + + SIP-t M200 + + + Alpine + + + Ein einzigartiges Modell der SIP-t M200 Handfeuerwaffe. Teil einer kleinen, limitierten Edition, die fr eine unbekannte Sondereinheit hergestellt wurde. Dieses Modell profitiert von einem greren Magazin, einem extrem widerstandsfhigen Stahllauf und einem hchst widerstandsfhigen Polymergehuse. + + + SGI-5k + + + Ein relativ neues Sturmgewehr, das trotz des nicht besonders aufregenden Designs schnell auf der ganzen Welt Anhnger gefunden hat. Waffen dieser Serie gehren zu den besten ihrer Klasse und sind berhmt fr ihre Zuverlssigkeit, Schussgenauigkeit sowie einfache Bedienung. Obwohl dieses Sturmgewehr in der Zone recht schwierig beschafft werden kann, wird es hufig von erfahrenen Stalkern zu entsprechenden Preisen bestellt. + + + Streloks SGI-5k + + + Ein SGI-5k Sturmgewehr aus der Schweiz. Auch wenn es nicht mehr wirklich neu ist, kann man leicht erkennen, dass sich der vorherige Besitzer sehr gut um die Waffe gekmmert hat: Sie wurde auseinandergenommen und wieder zusammengesetzt, nachdem jede Komponente auf optimale Leistung hin feinjustiert wurde. Dadurch ist die Stoppwirkung erhht. Der Buchstabe "S" und 16 kleine Kerben sind in den Kolben der Waffe eingeritzt. + + + SPSA-14 + + + SPSA-AUT + + + Die selbstspannende SPSA-AUT Schrotflinte wird nur in Werksttten der Wchter hergestellt. Diese Waffe ist fr den Einsatz gegen groe Mutantengruppen gedacht. Ihre verbesserte Patronenzufhrung gewhrleistet eine hohe Feuerrate, zudem wurde die Magazingre auf 10 erhht. Bentigt Munition des Kalibers 12x70. + + + Karbonator + + + Eine Armeeschrotflinte, die auf SPA-14-Basis speziell fr Sturmtruppen entwickelt wurde. Wie auch ihr Vorgngermodell beherrscht sie Automatikfeuer, trumpft jedoch aufgrund ihres ausgeglichenen stofreien Systems mit einer besseren Rckstodmpfung auf. + + + SVDm-2 + + + Ein Armeescharfschtzengewehr, das seit ber 50 Jahren auf dem Markt ist und sich mit einer auergewhnlichen Zuverlssigkeit und einfachen Bedienung einen hervorragenden Ruf erarbeitet hat. Das SVDm-2 wird normalerweise von der Armee eingesetzt, um die effektive Reichweite ihrer Einheiten zu erhhen. Aber auch Stalker schtzen diese Waffe wegen ihrer panzerbrechenden Eigenschaft, mit der man Mutantenhaut und Armeepanzerungen durchdringen kann. + + + Lynx + + + Eine handgefertigte Version des SVDm-2 Scharfschtzengewehrs. uerlich mag es keine Unterschiede geben, aber diese Version bietet dennoch eine ideale Mischung aus Schussgenauigkeit und Stoppwirkung. + + + SVUmk-2 + + + SVU2-A + + + Dieses verkrzte Scharfschtzengewehr mit erhhter Feuerrate ist der nchste Schritt in der Evolution des SVUmk-2 Scharfschtzengewehrs. Es gehrte frher Max, der legendren Wache von den Freiheitlern. + + + Jagdschrotflinte + + + Diese weitverbreitete Jagdschrotflinte mit zwei bereinander liegenden Lufen kann dank ihrer Schussgenauigkeit und Stoppwirkung einen besseren Schutz gegen Mutanten darstellen als eine Pistole. Sie wird meist von Anfngern in den Auenbezirken der Zone eingesetzt. + + + Nicht identifizierte Waffe + + + Eine unbekannte Waffe, deren Feuermechanismus nicht greift. Sie scheint defekt zu sein - wenn man den Abzug drckt, passiert nichts. + + + UDP Compact + + + Tadellose Zuverlssigkeit, enorme Haltbarkeit und hervorragende Schussgenauigkeit sind die Hauptvorzge dieser Waffe. Ihre wenigen Nachteile liegen in ihrer nicht zu unterschtzenden Gre, ihrem relativ hohen Schwerpunkt und dem massiven Verschluss, wodurch sie nur schwierig verborgen werden kann. Aber dies wird von den Vorteilen der Waffe mehr als wettgemacht, weswegen sie unter den Veteranen der Zone besonders beliebt ist. + + + March + + + Eine kompakte, grokalibrige Pistole mit kurzer Verschlussbewegung und leichtem Verschlusssystem. Gehrte frher einem Sldner namens Wolfshund. Scheint eine modifizierte Version der UDP Compact Pistole zu sein. + + + SA Avalanche + + + Vintar BC + + + Ein spezielles Armeescharfschtzengewehr, das eigens fr geruschloses Schieen ohne Mndungsfeuer im Rahmen von Sondereinstzen entwickelt wurde, bei denen es fr den Schtzen ernste Konsequenzen haben knnte, wenn er entdeckt wrde. Das Vintar BC bietet sehr gute panzerbrechende Eigenschaften, eine groe Stoppwirkung und ein integriertes optisches Scharfschtzenzielfernrohr. Viele Stalker schtzen diese Waffe trotz ihres kleinen Magazins sehr. + + + Tide + + + Eine Waffe, die auf der Basis des schallgedmpften Scharfschtzengewehrs fr die Armee entwickelt wurde. Das Gewehr hat eine grere Stoppwirkung als sein Vorgngermodell Vintar BC, dafr allerdings eine geringere Feuerrate. Der Schtze kann mit dieser Waffe einen Gegner nach dem anderen ausschalten, ohne seine Position preiszugeben. + + + Walker P9m + + + Chaser 13 + + + Eine westliche Schrotflinte mit glattem Lauf, die dank ihrer bemerkenswerten Zuverlssigkeit und niedrigen Nachladezeit weltweit uerst beliebt ist. Vor allem wegen ihrer Funktionalitt wird sie von den Jgern in der Zone geschtzt. Alle Komponenten der Waffe sind mit einem Antikorrosionsmittel beschichtet. + + + Predator + + + Eine mageschneiderte Pump-Action-Schrotflinte, die frher Trapper gehrte. Der Jger hatte nur eine Anforderung an diese Waffe: Sie sollte Raubtiere mit einem Schuss tten knnen. Diese Philosophie beruhte auf der berzeugung, dass ein Monster, gleich wie viele Menschen es gettet hat, auch nur ein Lebewesen ist und daher nicht leiden sollte. + + + Selbst gemachte Batterien + + + SUSAT Mera Zielfernrohr + + + Ein modernes Sturmgewehr, das als Nachfolger des altgedienten AKM-74/2 entwickelt wurde. Der Hauptunterschied besteht im neuen Zweifach-Salvenmodus mit hoher Geschwindigkeit, mit dem man zwei Projektile auf eine Distanz von bis zu 100 Metern in dasselbe Ziel feuern kann. Damit steigen die Chancen, das Ziel zu treffen, erheblich. Zudem sind das Ttungspotenzial, die Stoppwirkung und die panzerbrechende Wirkung erhht. + + + Mit dieser 1974 entwickelten Waffe hielt die kleinkalibrige Munition mit Niedrigimpuls Einzug in den Warschauer Pakt. Das AKM-74/2, der Nachfolger des beliebtesten Sturmgewehrs der Welt, hat eine grere Mndungsbremse und damit einen noch geringeren Rcksto. Dies fhrt zu grerer Schussgenauigkeit und weniger Streuung, vor allem bei schnellen Einzelschssen oder Salven. Wie sein Vorgnger ist auch dieses Gewehr einfach und zuverlssig. + + + Obwohl diese Waffe im Hinblick auf Gre, Gewicht und taktische Ausrichtung einer MP hnelt, gilt sie dennoch als Sturmgewehr, weil sie denselben internen Mechanismus hat wie das AKM-74/2. Sie ist vor allem fr ihre Beweglichkeit im Huserkampf und die starke panzerbrechende Wirkung bekannt. Ihre Nachteile liegen in der geringen Wirkungsreichweite (trotz relativ groer Schussreichweite), der Neigung zum berhitzen und den hufigen Querschlgern. + + + Die verbesserte Version eines Klassikers unter den automatischen Pistolen, der alle groen bewaffneten Konflikte des 20. Jahrhunderts mit Bravour gemeistert hat und auch im neuen Jahrtausend noch lange nicht zum alten Eisen gehrt. Sie wird von vielen Herstellern weltweit in Standard- und modifizierten Konfigurationen produziert. Der einzige Nachteil - die durchschnittliche Magazingre - wird durch die starke Munition mehr als wettgemacht. + + + Die ultimative Handfeuerwaffe - gro, schwer und tdlich. Sie wurde fr die Jagd auf mittlere und groe Beute sowie fr den Einsatz bei Schiewettbewerben konzipiert, bei denen auf Stahlziele in mehr als 50 Meter Entfernung geschossen wird. Ihr eingeschrnkter Nutzen in der Zone geht auf ihren Preis, ihre Gre und ihr Gewicht zurck, die alle das Doppelte anderer Pistolen betragen. + + + Diese futuristisch anmutende Waffe im Bullpup-Design ist eigentlich ein seriengefertigtes modulares System, das aus einem Gewehr und einer Granatenvorrichtung mit einer computergesttzten Feuersteuerung und einem 40mm-Granatwerfer besteht. Trotz ihrer Gre ist die Waffe uerst ergonomisch, lsst sich einfach bedienen und profitiert von ihren guten technischen Eigenschaften. + + + Eine ukrainische Pistole, die hauptschlich von Exekutivkrften eingesetzt wird. Sie bietet eine bessere Schussgenauigkeit und Ergonomie sowie ein greres Magazin als die PMm. Diese Waffen gelangen in groen Mengen in die Zone, weil sie wegen Defekten aufgrund einiger falscher Berechnungen in der frhen Entwurfphase weiterverkauft werden. Dennoch steht sie bei Stalkern wegen ihrer guten Kampfeigenschaften hoch im Kurs. + + + Ein neues Mitglied der Gewehrfamilie aus westlicher Produktion, das sich erheblich von seinen Vorgngern unterscheidet. Es hat eine Automatikbasis mit einem halbverriegelten Verschlusssystem und hnelt mehr einem amerikanischen, gasbetriebenen automatischen Sturmgewehr mit einem kurzhubigen Gaskolben. Diese nderungen machen das Gewehr zu einem hervorragenden Beispiel einer modernen Waffe - leicht, zuverlssig und ergonomisch. + + + Wegen der vielen Nachteile wurden die meisten Waffen dieses Typs modernisiert, whrend die brigen auf dem Schwarzmarkt landeten. Die Hauptvorteile dieses Gewehrs sind das integrierte Zielfernrohr mit 4-facher Vergrerung, die groe Genauigkeit bei Einzelschuss und die zuverlssige Modifikationstechnologie. Im Salvenmodus ist die Schussgenauigkeit jedoch deutlich geringer und die Bauteile und Mechanismus des Gewehrs werden relativ unzuverlssig. + + + Eine neue Entwicklung in dieser berhmten Waffenfamilie. Die nderungen wurden im oberen Teil der Stahlkonstruktion vorgenommen, die aus dem Lauf, dem Gasrohr und dem Verschlusssystem besteht. So wurde das Gewicht der Waffe verringert, ihre Ergonomie verbessert und das Gassystem aufgewertet. Die Waffe ist uerst schussgenau, auch wenn sie zum Verschmutzen neigt und damit nicht die beste Wahl fr die schwierigen Umstnde in der Zone darstellt. + + + Diese Pistole wurde in der zweiten Hlfte des 20. Jahrhunderts auf Basis des PMm fr Sondereinsatzkrfte und Sphtrupps entwickelt. Der vordere Teil des Pistolenlaufs weist einen integrierten Schalldmpfer auf. Zudem verfgt sie ber ein kurzes Verschlusssystem, in dem kein Platz mehr fr eine rckfhrende Feder ist; die ist daher im Griff der Pistole verbaut. Sie ist zwar veraltet, kann aber in den richtigen Hnden immer noch sehr effektiv sein. + + + Dieses Sowjeterbe ist die am weitesten verbreitete Pistole in der Zone und gehrt zu den besten kompakten Handfeuerwaffen zur Selbstverteidigung berhaupt. Sie ist klein, uerst zuverlssig, leicht zu bedienen und einfach in Schuss zu halten. Demgegenber stehen die Nachteile wie etwa die kurze Reichweite, niedrige Schussgenauigkeit und geringe Stoppwirkung. Auch vom Gewicht und der Magazingre her ist sie modernen Pistolen unterlegen. + + + Eine revolverartige Sturmschrotflinte mit glattem Lauf, deren Hauptaugenmerk auf extremer Feuerkraft fr militrische Einheiten liegt. Die Waffe profitiert von ihrem groen Magazin und einer hohen Feuerrate, aber ihre Gre, ihr groes Gewicht und die lange Nachladedauer stehen den Vorteilen gegenber. Sie ist nicht sehr verbreitet in der Zone und wird hauptschlich eingesetzt, um geschlossene Rume von Mutanten zu subern. + + + Dieser Granatwerfer aus den 60er Jahren gelangte aus Armeelagern in die Zone. Die Waffe hat ein rckstofreies Einzelschusssystem mit glattem Lauf und einem hinten offenen Rohr. Sie verfgt ber ein optisches PGO-27 Zielfernrohr mit 2,7-facher Vergrerung. Obwohl sie wegen ihrer Gre und ihres Gewichts nicht gerade wie geschaffen fr Stalker ist, hat sie dank ihrer zerstrerischen Wirkung und der einfachen Handhabung ihre Anhnger in der Zone. + + + Dieses einzig verbliebene seriengefertigte Modell einer weltweit beliebten Pistole hat sich seinen guten Ruf durch exzellente Ergonomie und Schussgenauigkeit verdient. Und trotz des kleinen Magazins profitiert die Waffe von der starken Munition und dem zuverlssigen Aufbau. Viele glauben, dass die SIP-t M200 die beste seriengefertigte Handfeuerwaffe vom Kaliber .45ACP ist - bei den erfahrenen Stalkern und Sldnern ist sie auf jeden Fall beliebt. + + + Diese automatische Schrotflinte mit glattem Lauf wurde in der zweiten Hlfte des 20. Jahrhundert entwickelt und verfgt ber selbstspannende und Pump-Action-Feuermodi. Sie dient Polizei- und Sturmtrupps als Allzweckwaffe und geniet vor allem wegen ihrer Zuverlssigkeit sowie der flexiblen Einsatzmglichkeiten einen guten Ruf. Trotz ihres groen Gewichts, komplexen Aufbaus und hohen Preises ist sie dank der Effektivitt gegen Mutanten beliebt. + + + Eine modernisierte Version des SVDm-2 Scharfschtzengewehrs im kompakten Bullpup-Design fr schnelle Eingreiftruppen. Das Gewehr erlaubt schnelleres Przisionsfeuer und ist deutlich leichter, whrend seine Genauigkeit bei Einzelschssen auf kurze und mittlere Distanzen der seines Vorgngers hnelt. Wegen dieser Eigenschaften ist die Waffe bei zahllosen Stalkern sehr beliebt. + + + Eine modifizierte Version des schallgedmpften Vintar BC Scharfschtzengewehrs, die als Sturmgewehr fr Sondereinsatzkrfte konzipiert ist. Der Hauptzweck dieses Gewehrs besteht darin, auf Gegner mit moderner Schutzausrstung zu schieen, ohne die Position des Schtzen zu verraten. Dank des integrierten Schalldmpfers und der schweren Unterschallmunition vom Kaliber 9x39 sind die Lautstrke und das Mndungsfeuer der Waffe erheblich reduziert. + + + Dieses extrem schussgenaue High-Tech-Gewehr, das unter der Bezeichnung Forschungsobjekt 62 bekannt ist, wurde in Geheimlabors in der Zone entwickelt. Seine Funktionsweise besteht darin, dass die Projektile mit Elektromagneten auf sehr hohe Geschwindigkeiten beschleunigt werden, was in einer schier unglaublichen Stoppwirkung bei so gut wie keinem Rcksto resultiert. Die Waffe wird durch eingekapselte Artefaktteile in den Batterien betrieben. + + + Die Martha geniet weltweit den Ruf einer relativ zuverlssigen, jedoch recht sperrigen Pistole. Sie wird von Armee- und Polizeikrften sowie von verschiedenen Militr- und Sicherheitsorganisationen eingesetzt. Die Pistole ist dank ihrer starken Munition und des groen Magazins in der Unterwelt mindestens genauso beliebt. Marthas, die in der Zone vorkommen, sind normalerweise veraltet und stammen vermutlich aus aussortierten Bestnden. + + + Eine hervorragende Pistole westlicher Produktion, die fr ihre Zuverlssigkeit, ihr groes Magazin und ihre hohe Schussgenauigkeit bekannt ist. Darber hinaus gehrt sie zu den ergonomischsten Handfeuerwaffen ihrer Klasse. Sie ist eine der gebruchlichsten Pistolen in der Zone und wird von Profis und Anfngern gleichermaen geschtzt, die sie sich leisten knnen. + + + Batterien, die eingekapselte Teile des Artefakts "Blitz" als Energiequelle nutzen. Hergestellt mit High-Tech-Ausrstung. + + + Diese Batterien mit niedriger Kapazitt nutzen eingekapselte Teile des Artefakts "Blitz" als Energiequelle. Ihre geringe Kapazitt ist auf die provisorischen Herstellungsbedingungen und das Fehlen von professioneller Ausrstung zurckzufhren. + + diff --git a/gamedata/configs/text/ger/st_items_weapons_upgrades.xml b/gamedata/configs/text/ger/st_items_weapons_upgrades.xml new file mode 100644 index 0000000..212670e --- /dev/null +++ b/gamedata/configs/text/ger/st_items_weapons_upgrades.xml @@ -0,0 +1,2022 @@ + + + + Flachheit + + + Kaliber + + + Rcksto + + + Zuverlssigkeit + + + 1,6-fach Reflexvisier + + + Optisches 4-fach Zielfernrohr + + + Schalldmpfer + + + Unterlaufschiene + + + Gewicht + + + Dank des ueren Gewindes kann ein Schalldmpfer verwendet werden. + + + ueres Gewinde am Lauf + + + Anbringung einer Schiene, damit ein optisches Zielfernrohr angebracht werden kann. + + + Optische Schiene + + + Anbringung einer Schiene, damit ein Unterlaufgranatwerfer angebracht werden kann. + + + Schiene fr Unterlaufgranatwerfer + + + Das Standardmagazin wird durch ein greres ersetzt. + + + Erhhte Magazingre + + + Ein komplizierter, integrierter Umbau der mechanischen und automatischen Teile der Waffe, damit ihr Kaliber gendert werden kann. Dies geht auf Kosten der Zuverlssigkeit. + + + Kaliberwechsel auf 5x45 + + + Ein komplizierter, integrierter Umbau der mechanischen und automatischen Teile der Waffe, damit ihr Kaliber gendert werden kann. Dies geht auf Kosten der Zuverlssigkeit. + + + Kaliberwechsel auf 5x56 + + + Ein komplizierter, integrierter Umbau der mechanischen und automatischen Teile der Waffe, damit ihr Kaliber gendert werden kann. Dies geht auf Kosten der Zuverlssigkeit. + + + Kaliberwechsel auf 9x18 + + + Ein komplizierter, integrierter Umbau der mechanischen und automatischen Teile der Waffe, damit ihr Kaliber gendert werden kann. Dies geht auf Kosten der Zuverlssigkeit. + + + Kaliberwechsel auf 9x19 + + + Das Fassungsvermgen des Magazins wird erhht, ohne dass der Waffenteil vergrert wird. + + + Erhhtes Magazinfassungsvermgen + + + Ein leichteres Polykarbonat-Kastenmagazin mit hherer Kapazitt, das einen Teil des zustzlichen Gewichts ausgleicht. + + + Erhhtes Fassungsvermgen des Kastenmagazins + + + Eine erhhte Anzahl von Titanplatten verbessert die Haltbarkeit der Krperpanzerung enorm. + + + Zustzliche Aluminium-/Titanplatten + + + Verstrkte Platten, die mehr Schutz bieten, aber nicht mehr so haltbar sind. + + + Kevlarplatten + + + Eine Aluminium-Titan-Legierung senkt das Gewicht von Titan, das in Schutzausrstung eingesetzt wird. + + + Aluminium- und Titanplatten + + + Normalerweise hat Titan ein zu hohes Gewicht, um in Schutzausrstung verwendet zu werden, aber manchmal wird es in Exoskeletten eingesetzt. + + + Massive Titanteile + + + Indem Metall durch Kohlefaser ersetzt wird, sinkt das Gewicht von Krperpanzerung, ohne dass die Zuverlssigkeit darunter leidet. + + + Austausch von Metallteilen in Krperpanzerung durch Kohlefaser + + + Kevlar gehrt zu den gebruchlichsten Materialien, die bei der Herstellung von Krperpanzerung eingesetzt werden. + + + Kevlarplatten + + + Polykarbonat kann eine Kugel aufhalten, ist aber so leicht wie Kunststoff. + + + Polykarbonatplatten + + + Keramikplatten halten nicht lange, aber sie sind zuverlssiger als Kevlar, weil sie die Energie auftreffender Projektile besser kompensieren. + + + Einbau von Keramikplatten + + + Einfache Stahlplatten, die in einen Mantel eingenht werden. + + + Stahlplatten + + + An einer Keramikauenschicht prallen panzerbrechende Geschosse ab, die in einem Winkel auftreffen. Direkt auftreffende Geschosse lsen sich in Staub auf, wenn sie auf die Auenschicht treffen. + + + Keramikauenschicht fr Krperpanzerung + + + Eine zustzliche innere Panzerungsschicht fr den Fall, dass die uere Schicht beschdigt wird. + + + Doppelte Schutzplatte + + + Panzerung mit einer Innenschicht, die die auftreffende Energie ber einen greren Bereich verteilt und damit besser kompensiert. + + + Zustzliches Kompensationselement + + + Dieser Rahmen kann eine Kugel aufhalten, wenn die Hauptkrperpanzerung bereits beschdigt ist. + + + Zustzlicher gepanzerter Rahmen + + + Dnnere Schutzschichten sind bereinander angebracht, um die Verschleifestigkeit der Krperpanzerung zu erhhen. + + + Segmentpanzerung + + + Mehr Platten bedeuten zwar nicht automatisch einen besseren Schutz, garantieren aber eine hhere Haltbarkeit. + + + Zweite Schutzschicht + + + Mobile Schutzplatten schtzen die Gelenke vor Schussverletzungen. + + + Anbringung von mobilen Schutzplatten fr Gelenke + + + Ein leichterer Aluminiumrahmen fr Platten ersetzt den Stahlrahmen. + + + Leichterer Aluminiumrahmen + + + Verstrkte Ledereinlagen verringern die Wucht, die der Trger durch die Krperpanzerung sprt, wenn er von einer Kugel getroffen wird. + + + Verstrkte Ledereinlagen + + + Eine zustzliche Keramikschicht mit Silikonverstrkung. + + + Verstrkte Keramikplatten + + + Durch die Verwendung von leichteren Materialien wird das Gewicht der Krperpanzerung gesenkt. + + + Anbringung leichterer Kunststoff- und synthetischer Teile + + + Whrend massive Titanplatten viel zu schwer sind, um von einem Infanteristen getragen zu werden, kann ein Exoskelett das Gewicht mit seinen starken Servomotoren aushalten. + + + Titanpanzerung "Krass" + + + SBK-RKhZ.m.II - ein spezieller Kampfanzug zum Schutz vor Strahlung und Chemikalien (Version II). + + + SBK-RKhZ.m.II Strahlenschutzanzug (luftdicht) + + + Diese anstrengende und zeitraubende Verbesserung ist nicht sehr beliebt, hat jedoch schon so manches Leben gerettet. + + + Eingenhtes Kettenhemd + + + Die "Schuppe" besteht aus berstehenden Keramikplatten, die den Trger davor schtzen, an derselben Stelle getroffen zu werden. + + + Keramik-Schutzmodifikation "Schuppe" + + + Nach der Behandlung mit "Souvern" ist der Schutzanzug nahezu immun gegenber mechanischem Schaden und Faserrissen. + + + Behandlung mit dem Schutzmittel "Souvern" + + + Keramik absorbiert einen groen Teil der auftreffenden Energie, indem sie auf Fragmente abgeleitet wird, welche dann abfallen. + + + Anbringung einer Keramikschicht auf Platten + + + Ein verstrktes Gerst, in dem Beryllium statt Aluminium eingesetzt wird. Damit bietet es Infanteristen mit den besten Schutz. + + + Keramik absorbiert einen groen Teil der auftreffenden Energie, indem sie auf Fragmente abgeleitet wird, welche dann abfallen. + + + Keramikschicht auf Platten + + + Die Kohlefaser gehrt zu den widerstandsfhigsten und verschleifestesten Materialien berhaupt und wird sogar in der Luft- und Raumfahrtkonstruktion eingesetzt. + + + Eine mehrschichtige Polymer- und Keramikbeschichtung. + + + Mehrschichtige Plattenbeschichtung "Schutzschicht" + + + Eine heimische Technologie und eine der neuesten Entwicklungen im Bereich der Krperpanzerung - die Herstellung von knstlichen Saphiren. + + + Die Feineinstellung von Komponenten sorgt dafr, dass die Waffe seltener klemmt. + + + Komponentenfeineinstellung + + + Der Trend nach Kunststoffkomponenten hat sich nicht nur ausgezahlt, sie sind mittlerweile auch recht beliebte Ausrstungsverbesserungen. + + + Polymaterialkomponenten + + + Ein Feuermechanismus mit niedrigem Impuls sorgt fr einen geringeren Rcksto. + + + Feuermechanismus mit niedrigem Impuls + + + Dank der festen Positionierung der Munition whrend des Feuerns, fliegt das jeweilige Projektil auf einer geraden Bahn und trifft sein Ziel. + + + Einbau einer Positionierungseinheit fr die Munition + + + Ein Rollenverschlusssystem, das den Rcksto und die Streuung reduziert. + + + Halboffenes Rollenverschlusssystem + + + Der Einbau eines zustzlichen Gaszylinders reduziert die Waffenbelastung und erhht damit die Feuerrate enorm. + + + Einbau eines zustzlichen Gaszylinders + + + Ein Gasantrieb wird in selbstspannenden Schrotflinten fr halbautomatisches Feuer eingesetzt. + + + Einbau eines Gasantriebs + + + Eine Schutzbeschichtung schliet Fehlzndungen aufgrund einer mechanischen Fehlfunktion gnzlich aus. + + + Komponentenschutzbeschichtung + + + Wenn ein Schuss abgegeben wird, ffnet ein Bauteil mittels einer Schiebebewegung des Vorderschaftgriffs einen Durchgang in den Lauf und kehrt danach wieder in den geschlossenen Zustand zurck. + + + Laufverschlusssystem + + + Mit einem Trgheitsautomatiksystem kann der Pump-Action-Mechanismus einer gewhnlichen Schrotflinte in einen selbstspannenden Mechanismus umgewandelt werden. + + + Einbau eines Trgheitsautomatiksystems + + + Das einheitliche Rckstomodul ist eine der besten technischen Mglichkeiten, den Rcksto zu reduzieren. + + + Einheitliches Rckstomodul + + + Eine automatische Antriebsstange verbessert die Przision der Waffe + + + Einbau einer automatischen Antriebsstange + + + Ein aktives Gegengewicht bewegt sich vom Verschlussrahmen weg und kompensiert damit zum Teil den Rcksto. + + + Einbau eines aktiven Gegengewichts + + + Die Verwendung von zustzlichen Rollenteilen fhrt zu einer Reduzierung des Rckstoes. + + + Einbau eines Rollenrckstokompensators + + + Das Verschlusssystem der Waffe wird durch eine bessere Variante ersetzt, wodurch die Feuerrate erhht wird. + + + Offenes Verschlusssystem + + + Wenn die Waffe abgefeuert wird, bewegt sich das Verschlussrahmengegengewicht vom Verschluss weg, wodurch eine einfachere Handhabung der Waffe beim Schieen erreicht wird. + + + Einbau eines selbstregulierenden Gegengewichts + + + Als zustzliches Bauteil wird ein Gegengewicht im Gehuse angebracht, um mittels einer entsprechenden Gegenkraft den Rcksto zu reduzieren. + + + Einbau eines beweglichen Gegengewichts + + + Der Trend nach Polymerkomponenten hat sich nicht nur ausgezahlt, sie sind mittlerweile auch recht beliebte Ausrstungsverbesserungen. + + + Storesistente Polymerkomponenten fr Automatikelemente + + + Eine spezielle Vorrichtung wird verbaut, um die Waffe vor Verschmutzungen zu schtzen. + + + Automatischer Doppelstellung-Gasregler + + + Eine spezielle Vorrichtung verschliet den Lauf luftdicht, um den Druck beim Feuern zu erhhen. + + + Einbau einer Laufverschlussvorrichtung + + + Ein Zahnrad sorgt fr die Synchronisation, was die Flachheit der Waffe verbessert. + + + Synchronisation der Stangenbewegung + + + Eine Komponente, die am hinteren Gehuse angebracht wird und die Verschlussgeschwindigkeit reduziert. Dies fhrt dazu, dass einfacher gezielt gefeuert werden kann. + + + Trgheitsverzgerungsmechanismus + + + Eine spezielle Komponente, die in das Verschlusssystem eingebaut wird, um die Verschlussbewegung abzufedern und den Rcksto zu reduzieren. + + + Einbau einer Geschwindigkeitsreduzierung fr das Rckstoladesystem + + + Eine integrierte Verbesserung, die aufgrund des erheblich steigenden Gewichts der Waffe normalerweise meist bei Scharfschtzengewehren durchgefhrt wird. + + + Integrierte Rckstodmpfung + + + Einbau eines Mechanismus mit beweglichen Komponenten, der die Geschwindigkeit der Munitionszufhrung beim Schieen erhht. + + + Automatische Munitionszufhrung + + + Verbesserung der Automatikkomponenten der Waffe, bei der mehrere Bauteile ersetzt werden. Dadurch wird die Schussgenauigkeit erhht. + + + Ausgeglichenes stofreies System + + + Eine synthetische Komponente unmittelbar vor dem Bewegungsbereich des Verschlusses. Durch die erfolgende hohe Kompression wird die Schussgenauigkeit erhht. + + + Einbau einer Abstoppvorrichtung + + + Eine Verbindung fixiert die Position des Laufs und wenn der Lauf sich bewegt, ffnen sich zustzliche Kompensationslcher. + + + Einbau einer "intelligenten Kompensation" + + + Eine Modernisierung, mit der das Abzugssystem weicher eingestellt wird, was fr Scharfschtzen wichtig ist. + + + Einbau einer Abzugsregulierung + + + Mit dieser Komponente wird dem Schtzen der Moment besser vermittelt, in dem sich der Schuss lst. Dadurch wird die Schussgenauigkeit erhht. + + + Einbau eines Abzugs mit besserer Rckmeldung + + + Ein Rollenverschlusssystem, das in westlichen Lndern hufig eingesetzt wird, reduziert den Rcksto und die Streuung. + + + Halboffenes Rollenverschlusssystem + + + Ein spezieller Mechanismus kompensiert einen Teil der Energie, die beim Feuern freigesetzt wird, wodurch das Schieen mit der Waffe angenehmer von der Hand geht. + + + Dmpfung des Feuermechanismus + + + Weil Scharfschtzengewehre mehr Wartungsarbeit als normale Waffen erfordern, knnen sie mit einem Dreistellung-Gasregler ausgestattet werden. + + + Einbau eines automatischen Dreistellung-Gasreglers + + + Die Beschichtung sorgt dafr, dass keine Energie entweicht. Damit wird der Projektilimpuls erhht. + + + Verbesserung der Automatikteile mit einer Spezialbeschichtung + + + Durch den Einbau einer langen Feuermechanismusstange kann ein Scharfschtzengewehr im Automatikmodus abgefeuert werden. + + + Lange Feuermechanismusstange + + + Eine Abstoppvorrichtung wirkt sich auf den Rckstomechanismus aus und verbessert damit die Schussgenauigkeit. + + + Installation einer Abstoppvorrichtung + + + Den herkmmlichen Lauf durch einen lngeren Lauf zu ersetzen, verbessert die Schussgenauigkeit und die Flachheit. + + + Lngerer Lauf + + + Das Fehlen von groen Gaskammern und die Laufmontierung am Vorderschaftgriff wirken sich positiv auf die Schussgenauigkeit aus. + + + "Schwebender" Lauf + + + Diese Modifikation verringert den Schaden, der durch Modifikationen entsteht, die ihrerseits die Feuerrate erhhen. + + + Einbau eines Laufs mit Khllamellen + + + Eine veraltete Komponente wird durch eine modernere ersetzt, wodurch der Rcksto reduziert wird. + + + Optimierte Mndungsbremse + + + Einbau eines Laufs mit zustzlichen gezogenen Kanlen, die die Projektilgeschwindigkeit und die Schussgenauigkeit der Waffe erhhen. Der Nachteil ist, dass der Rcksto betrchtlich steigt. + + + Zustzliche gezogene Kanle im Lauf + + + Dieser Lauf soll den effektiven Wirkungsbereich bei sehr kurzen Distanzen vergrern und ist daher fr zielgenaues Schieen nicht geeignet. Die Feuerrate wird durch den einfacher gezogenen Lauf erhht. + + + Einbau eines einfacher gezogenen Laufs + + + Lufe mit Polygonzug werden normalerweise verwendet, um die Schussgenauigkeit zu erhhen. + + + Einbau eines Laufs mit Polygonzug + + + Durch den Sinuszug wird die Lauftemperatur gesenkt und die Feuerrate erhht. + + + Laufkammer mit Sinuszug + + + Ein besonderer Lauf fr Waffen mit guten Flachheitswerten, der die Schussgenauigkeit erhht. + + + Gezogene Scharfschtzengewehrkanle + + + Extrem widerstandsfhige Materialien sorgen fr einen langsameren Verschlei des Laufs. + + + Lauf aus extrem widerstandsfhiger Legierung + + + Die Behandlung der Laufinnenflche schtzt den Lauf vor mechanischen Schden. + + + Behandlung des Laufs + + + Die synthetische Verstrkung des Laufs sorgt fr eine betrchtliche Reduzierung der Streuung. + + + Synthetische Laufverstrkung + + + Den herkmmlichen Lauf durch einen lngeren Lauf zu ersetzen, verbessert die Flachheit. + + + Lngere Laufteile + + + Gasablasskanle im Lauf schtzen diesen nicht nur vor Verschmutzungen, sondern leiten einen Teil des Rckstoes auch auf den Lauf selbst um. + + + Gasablasskanle + + + Den herkmmlichen Lauf durch einen lngeren Lauf zu ersetzen, verbessert die Flachheit. + + + Lngerer Laufteil + + + Diese Schutzbeschichtung der Laufinnenflche verhindert die berhitzung, merzt Produktionsfehler aus und erhht die Haltbarkeit enorm. + + + Schutzbeschichtung der Laufinnenflche + + + Die Ausbalancierung des Laufs wird durch mehrere bewegliche Kolben erreicht, die dafr sorgen, dass die Waffe beim Halten stabiler in der Hand liegt. + + + Ausbalancierung des Laufs + + + Aufgrund des gezogenen Laufs ist es unmglich, Schrotmunition zu verschieen, aber die erhhte Schussgenauigkeit macht diesen Nachteil mehr als wett. + + + Gezogener Lauf + + + Durch die Verstrkung mit Polymaterialien kann der Laufdruck erhht werden, was sich in einer hheren Projektilgeschwindigkeit niederschlgt. + + + Dynamische Laufverstrkung + + + Eine zylindrische Laufbohrung erhht die Feuerrate der Waffe, ohne ihre Schussgenauigkeit zu beeintrchtigen. + + + Zylindrische Laufbohrung + + + Wenn die Waffe abgefeuert wird, bewegt sich ein Gegengewicht zum Mndungsbereich des Laufs und kompensiert damit einen Teil des Rckstoes. + + + Einbau eines aktiven Gegengewichts am Laufmantel + + + Den herkmmlichen Lauf durch einen lngeren Lauf zu ersetzen, verbessert die Schussgenauigkeit und Flachheit, verringert aber die Feuerrate. + + + Lngerer Laufteil + + + Die Laufperforation fhrt zu einer Reduzierung des Rckstoes, weil das Gas durch spezielle ffnungen entweichen kann. + + + Perforierter Lauf + + + Ein professionell verkrzter Lauf erhht die Feuerrate der Waffe, ohne die Flachheit und Schussgenauigkeit zu beeintrchtigen. + + + Verkrzter Lauf + + + Eine Chrombeschichtung der Laufinnenflche erhht die Haltbarkeit der Waffe. + + + Chrombeschichtung der Laufinnenflche + + + Diese Kunststoffelemente kompensieren einen Teil des Rckstoes. + + + Einbau von Kunststofftrennelementen + + + Ein einfacher gezogener Lauf ist bei sehr kurzen Distanzen sinnvoll, wenn es mehr auf die Feuerrate und weniger auf die Schussgenauigkeit ankommt. + + + Einbau eines einfacher gezogenen Laufs + + + Einbau eines Laufs mit zustzlichen gezogenen Kanlen, die die Projektilgeschwindigkeit und die Schussgenauigkeit der Waffe erhhen. Der Nachteil ist, dass der Rcksto betrchtlich steigt. + + + Zustzliche gezogene Kanle im Lauf + + + Die Entlastung des Laufs fhrt zu einer enormen Reduzierung des Rckstoes. + + + bertragung des Laufkompensators/Mndungsfeuerreglers auf den Rahmen + + + Durch den Sinuszug wird die Lauftemperatur gesenkt und die Feuerrate erhht, ohne die Flachheit zu beeintrchtigen. + + + Lauf mit Sinuszug + + + Lufe mit Polygonzug werden normalerweise verwendet, um die Schussgenauigkeit von Scharfschtzengewehren zu erhhen. + + + Einbau eines Laufs mit Polygonzug + + + Der pneumatische Antrieb setzt einen Teil der Rckstoenergie in einen hheren Laufdruck um, wodurch die Mndungsgeschwindigkeit erhht wird. + + + Pneumatischer Antrieb + + + Zustzliche Bewegungskomponenten erhhen das Maximalgewicht, das getragen werden kann. + + + Zustzliche Servomotoren + + + Eine Entwicklung der Freiheit-Techniker, die als Erste berhaupt Metallteile von Exoskeletten durch Kohlefaser austauschten, um das hohe Gewicht zu senken. + + + Austausch von Metallteilen durch Kohlefaser + + + Eine Panzerung schtzt die kritischen Komponenten des Exoskeletts vor Schaden durch Beschuss. + + + Antriebspanzerung + + + Das System fr einfache Fortbewegung setzt verstrkte Federn und Gelenke ein, mit denen das Gewicht des Exoskeletts selbst genutzt wird, um die Motorfunktionen zu untersttzen. + + + "Schagohod"-System fr einfache Fortbewegung + + + Die hydraulische Antriebshilfe ist eine Modifikation, die die vierte Generation der Exoskelette von der dritten Generation unterscheidet. Die Antriebshilfe ermglicht es, mit einem Exoskelett zu sprinten. + + + Hydraulische Antriebshilfe + + + Eine Stoffeinlage verhindert Gewebeschden im Falle eines Treffers. + + + Stoffeinlage zur Dmpfung + + + Die Silikonverstrkung ist wirkungsvoller als ihr Pendant aus Gummi und absorbiert Treffer so, dass der Trger weniger Schaden einstecken muss. + + + Silikonverstrkung zur Dmpfung + + + Stoff, Klammern und Verstrkungen werden durch leichtere synthetische Materialien ersetzt, um das Gewicht der Panzerung zu senken. + + + Leichtere synthetische Polymermaterialien + + + Die Gummierung verhindert Gewebeschden im Falle eines Treffers. + + + Gummierte Schicht zur Dmpfung + + + Die Unterschicht kommt ins Spiel, wenn der Hauptstoff beschdigt wird. + + + Eine mehrschichtige Einlage aus Polykarbonat, Silikon und Kohlefaser fr den Fall, dass die Hauptpanzerung durchbrochen wird. + + + Polymerschutzeinlagen + + + Der luftdichte Schutzanzug "Expanse" der Freiheit wird bei der Suche nach Artefakten in Anomaliegebieten eingesetzt. + + + Anomalieschutzanzug "Expanse" + + + Eine luftdichte Schicht aus synthetischem Material fr den Fall, dass die uere Hauptschicht beschdigt wird. + + + Synthetische Schicht + + + Eine Vielzahl von ergonomischen Anpassungen mithilfe einer Gummikonstruktion. Dabei bleibt die Mobilitt erhalten, selbst wenn schwere Panzerung getragen wird. + + + Mobilittsgummischutzanzug + + + Konstantan wird als Isolationsstoff gegen Elektrizitt eingesetzt und hat eine sehr hohe Schmelztemperatur. + + + Wrmeisolationseinlagen aus Konstantan + + + Blei ist ein verlsslicher Schutz gegen Radioaktivitt, weil es alle drei Arten von radioaktiver Strahlung absorbiert. + + + Bleizustze fr Schutzanzug + + + Allgemeiner Schutz vor Regen und tzenden Substanzen, die ansonsten in direkten Kontakt mit der Haut kommen wrden. + + + lzeugschutzanzug + + + Der mit einer feuerfesten Substanz behandelte Stoff ist besonders bei Stalkern beliebt, die nach Feuerartefakten suchen. + + + Mit einer feuerfesten Substanz behandelter Stoff + + + Magnesiumeinlagen schtzen den Trger vor Hitzegefahren. + + + Magnesiumeinlagen + + + Eine einfache Plastikinnenschicht kann den Trger vor chemischen und elektrischen Gefahren schtzen. + + + Luftdichte Plastikinnenschicht + + + Stoff, Klammern und Verstrkungen werden durch leichtere synthetische Materialien ersetzt, um das Gewicht der Panzerung zu senken. + + + Austausch von Stoff durch synthetische Materialien + + + Plexiglas absorbiert zwei Arten von radioaktiver Strahlung und ist zugleich leichter als Blei. + + + Plexiglasinnenschicht fr Strahlenschutz + + + Zuverlssiger Schutz vor chemischen und elektrischen Gefahren. + + + Elastische, luftdichte Plastikinnenschicht + + + Eine dnne Schicht aus Konstantan dient als Isolation gegen Elektrizitt. + + + Isolationsinnenschicht aus Konstantan + + + Glasfaser wird in Schutzanzgen eingesetzt, die von Einsatztruppen bei Naturkatastrophen getragen werden. + + + Glasfaserwrmeschutz + + + Imprgnierter Stoff beugt chemischen Vergiftungen vor. + + + Imprgnierter Schutzanzugsstoff + + + Gummi bietet einfachen Schutz bei kurzem Strahlenkontakt. + + + Gummierter Schutzanzugsstoff + + + Wird in Stalkerschutzanzgen eingesetzt, um die Haltbarkeit zu verbessern. + + + Widerstandsfhiger Schutzrahmen + + + Nickel ist feuerfest genug, um fr Einlagen in Krperpanzerungen verwendet zu werden. + + + Feuerfester Schutzanzug mit Nickeleinlagen + + + Diese Legierung aus Nickel und Magnesium wird in Krperpanzerungen zum Schutz vor Stromschlgen eingesetzt. + + + Isolationsschutzanzug mit Manganineinlagen + + + Luftdichter Schutzanzug mit einer Antikorrosionsbeschichtung und Kevlarpanzerung. + + + Schutzanzug "Zweite Haut" mit integrierter Panzerung + + + Ein Schutzanzug aus neuen, nicht nher angegebenen Polymeren, die zuvor im Kiewer Forschungsinstitut bei der Entwicklung des Anzugs "kologe" mit Bismuteinlagen verwendet wurden. + + + Polymerschutzanzug "kologe" mit Bismuteinlagen + + + Die Bleimasche erzeugt einen undurchdringlichen Schutz vor Strahlung und Chemikalien, ohne die Beweglichkeit zu beeintrchtigen. + + + Plexiglasschutzanzug "Lebensretter" mit flexibler Bleimasche + + + Eine einheimische Entwicklung nach der Katastrophe von Tschernobyl. Wird in Exoskeletten eingesetzt, um elektrische Fehlfunktionen zu verhindern. + + + Schutzanzug "Evakuator" mit Bleieinlagen + + + Montage eines Sturmvisiers fr den Einsatz bei kurzen Distanzen. + + + 1,6-fach Reflexvisier + + + Montage eines optischen Zielfernrohrs fr mittlere und lange Distanzen. + + + Optisches 4-fach Zielfernrohr + + + Montage eines optischen Zielfernrohrs fr lange Distanzen. + + + Optisches 5-fach Zielfernrohr + + + Montage eines optischen Zielfernrohrs fr lange Distanzen. + + + Optisches 6-fach Zielfernrohr + + + Eine Modifikation an Sturmwaffen mit Reflexvisieren, die den Visierkontrast im gelben Spektrum erhht. Dies ist besonders fr Einstze in Dmmerlicht und in schlecht beleuchteten Gebuden von Vorteil. + + + Verbesserung des Visierkontrasts + + + Ein Wrmesucher macht es mglich, die fr den menschlichen Krper typischen Wrmequellen zu entdecken und zu identifizieren. + + + Automatisches optisches Zielerfassungssystem + + + Nachtsichtgerte haben schon sehr vielen Scharfschtzen mehr als nur gute Dienste erwiesen. + + + Einbau eines Nachtsichtgerts + + + Mit dieser Modifikation kann das Visier recht einfach auf die Zielentfernung eingestellt werden. + + + Visier mit einstellbarer Distanzkontrolle + + + Ein pneumatischer Kolben reduziert den Rcksto bei Salvenfeuer. + + + Pneumatischer Kolben + + + Ein bewegliches Schulterstck verringert die Wirkung des Rckstoes auf den Krper betrchtlich. + + + Einbau einer Schulterstckdmpfung + + + Ein moderner Kolben, der der besonderen Form des menschlichen Krpers angepasst wurde. + + + Ergonomischer Kolben + + + Beim Abfeuern der Waffe wird ein Teil der Pulvergase aus dem Lauf in die ffnung hinter dem Verschluss bertragen, wodurch dieser sanfter gestoppt wird, wenn er sich wieder zurckbewegt. + + + Einbau eines Gaspuffers fr das Verschlusssystem + + + Der Verschlussrahmen wird verlngert und ragt zum Teil in den Kolben hinein. Dadurch wird die Flachheit erhht, allerdings wchst auch der Rcksto an. + + + Verlngerung des Verschlussrahmens + + + In den Kolben wird ein bewegliches Gegengewicht eingebaut, das beim Schieen dem Rcksto entgegenwirkt. + + + Bewegliches Gegengewicht + + + Mit einer greren Ablage kann zielgenauer geschossen werden. + + + Vergrerte Ablage + + + Eine Feder-Rckstodmpfung verbessert die Handhabung eines tragbaren Maschinengewehrs beim Schieen. + + + Integrierte Feder-Rckstodmpfung + + + Ein Puffer fr das Verschlusssystem, der im Kolben eingebaut wird und den grten Teil des Rckstoes absorbiert. + + + Zustzlicher Gaspuffer fr das Verschlusssystem + + + Bei grokalibrigen Scharfschtzengewehren wird am Standardkolben hufig eine gummierte Komponente zur Dmpfung des Rckstoes angebracht. + + + Dmpfungskomponente am Kolben + + + Ein einstellbarer Kolben mit einer Wangenauflage ist ntzlich, um aus komfortablen und weniger komfortablen Positionen schieen zu knnen. + + + Einstellbarer Kolben mit Wangenauflage + + + Eine im Kolben eingebaute Komponente fr grokalibrige Waffen mit starkem Rcksto. + + + Hydraulische Rckstodmpfung am Kolben + + + Aktivfilter knnen selbst mit korrosiven Chemikalien fertigwerden. + + + Aktivfilter + + + Der geschlossene Ring hat sich als Teilschutz gegen Psi-Emissionen bewhrt. + + + Psi-Schutzring aus Stahlgitterpaaren + + + Eine Maske, die bei kontaminierter Luft oder bei Temperaturen, die entweder zu hoch oder zu niedrig zum Atmen sind, eingesetzt wird. + + + Auftragung einer Abschirmungsbeschichtung + + + Auftragung einer Abschirmungsbeschichtung + + + Ein Filter mit einer verstrkten Antikorrosionsbeschichtung und einer zustzlichen Schutzschicht gegen giftige Substanzen. + + + Filter fr den Einsatz in kontaminierter Umgebung + + + Eine Plexiglasmaske schtzt teilweise vor radioaktiver Strahlung. + + + Plexiglasbeschichtung + + + Eine Plexiglasmaske schtzt teilweise vor radioaktiver Strahlung. + + + Plexiglasatemmaske + + + Eine Atemmaske, die giftige Substanzen komplett herausfiltert. + + + Imprgnierte Atemmaske + + + Diese Beryllium- und Aluminiumplatten bieten einen hervorragenden Schutz, ohne das Gewicht des Helms nennenswert zu vergrern. + + + Beryllium- und Aluminiumplatten + + + Beryllium- und Aluminiumplatten bieten einen besseren Schutz, ohne das Gewicht nennenswert zu vergrern. + + + Beryllium- und Aluminiumplatten + + + Verbesserte Filter gewhrleisten ein konstantes Sauerstoffniveau unabhngig davon, wie kontaminiert die Umgebung ist. + + + Einbau von verbesserten Filtern fr wissenschaftliche Arbeiten + + + Hochentwickelte Psi-Schutzvorrichtung, von der behauptet wird, dass sie von einem Wissenschaftler namens Sacharow erfunden wurde. + + + Einbau des Psi-Kuppelschutzes + + + Schutzrahmen aus einer Legierung gegen thermischen und elektrischen Schaden. + + + Gesichtsschutz "Thunderbird" aus Konstantan + + + Zustzliche Panzerung, die die Haltbarkeit des Helms erhht. + + + Verstrkte Helmpanzerung + + + Ein Filter mit einer zustzlichen Reinigungsschicht und einem System zur Neutralisierung von giftigen Substanzen. + + + Verstrktes Atemgert fr extreme Bedingungen + + + Einbau eines Nachtsichtgerts fr Einstze bei Nacht oder unter schlechten Lichtbedingungen. + + + Nachtsichtgert der ersten Generation + + + Im Falle einer kritischen Kontaminierung der Luft mit radioaktiven oder chemischen Partikeln wird mit diesem System in den geschlossenen Atemkreislauf gewechselt. + + + Schutzsystem gegen radioaktive und chemische Gefahren + + + Reinigungs- und Atemmaske "Dampf" + + + Einbau eines verbesserten Nachtsichtgerts fr den Einsatz in vollstndiger Dunkelheit. + + + Nachtsichtgert der zweiten Generation + + + Ein Wrmesucher macht es mglich, die fr den menschlichen Krper typischen Wrmequellen zu entdecken und zu identifizieren. + + + Automatisches Zielerfassungssystem + + + Ein wissenschaftliches Gert auf Wellenbasis, das fr den Einsatz in Anomaliegebieten mit Psi-Emissionen entwickelt wurde. + + + Psi-Stimulator "Orakel" + + + Einbau eines verbesserten Nachtsichtgerts fr den Einsatz in vollstndiger Dunkelheit. + + + Nachtsichtgert der dritten Generation + + + Ionisierte Luftpartikel bewegen sich zwischen den Elektroden des Systems entgegen der Bewegungsrichtung der Elektronen, wodurch ein Ionenwind erzeugt wird. + + + Khlsystem "Ionenwind" + + + Mit einem Infrarotscanner knnen Menschen in der Nhe entdeckt werden. + + + Infrarotscanner + + + SPB - VPZ.m.IV Psi-Schutzsystem mit psychologischen Sicherheitswellen (Version 4). + + + SPB - VPZ.m.IV Kampfsystem + + + Mit dieser verstrkten Rcklauffeder wird die Projektilgeschwindigkeit erhht. + + + Verstrkte Rcklauffeder + + + Die beweglichen Teile des Rcklaufmechanismus werden verstrkt und gedmpft, damit der Lauf sich beim Schieen ruhiger verhlt und so das Zielen vereinfacht. + + + Dmpfung des Rcklaufmechanismus + + + Einbau einer zustzlichen Rcklauffeder mit einer entgegengesetzten Windung, um den Rcksto zu reduzieren, ohne die Flachheit zu beeintrchtigen. + + + Zustzliche Rcklauffeder + + + Die Schutzbeschichtung erhht die Zuverlssigkeit und, was noch wichtiger ist, schliet den Mechanismus luftdicht ab, wodurch keine Energie entweichen kann. + + + Schutzbeschichtung fr Komponenten des Rcklaufmechanismus + + + Titanstangen knnen viel hhere Feuerraten aushalten als gewhnliche Stangen. + + + Rcklaufstangen aus Titan + + + Ein synthetisches Element wird an den Stangen angebracht, damit sie sich exakt so bewegen wie gewnscht. Dies verbessert die Schussgenauigkeit. + + + Einbau eines Ausgleichselements + + + Durch die Verstrkung der Rohrfhrungshlse kann im Lauf ein grerer Druck erreicht werden. Damit wird die Projektilgeschwindigkeit erhht. + + + Verstrkung der Rohrfhrungshlse + + + Es wird eine Verteilerkomponente eingebaut, die durch die entstehenden Gase geffnet und durch das Rcklaufsystem selbst wieder geschlossen wird. Damit kann ein Teil der freigesetzten Gasenergie im Rcklaufsystem genutzt werden. + + + Einbau eines Verteilers + + + Der Rcklaufmechanismus wird durch eine strkere Version ersetzt, die aus je zwei Fhrungsstangen und Rcklauffedern besteht. Dies erhht die Feuerrate der Waffe. + + + Umwandlung in ein Zweistangensystem + + + Spezielle Auslassffnungen um den Trommelbereich der Waffe reduzieren den Rcksto. + + + Verwendung der Gasenergie + + + Auf der Trommel werden diagonale Nutenfelder hinzugefgt. Dies erhht die Drehgeschwindigkeit des Mechanismus, der die Gasenergie nutzt. + + + Diagonale Nutenfelder auf der Trommel + + + Der Vorteil dieser europischen Standardmodifikation liegt im reduzierten Gewicht, ohne die Zuverlssigkeit zu beeintrchtigen. + + + Storesistenter Polymerkolben + + + Ein Gehuse aus einer extrem widerstandsfhigen Legierung sorgt dafr, dass das Sturmgewehr tgliche Kampfhandlungen gut bersteht. + + + Gehuse aus extrem widerstandsfhiger Legierung + + + Ein einfaches Gegengewicht am vorderen Gehuse, um den Rcksto zu reduzieren. + + + Einbau eines Gegengewichts am Stahlbehlter + + + Eine Ummantelung ist hilfreich bei erhhten Feuerraten, weil dabei zustzliche Hitze erzeugt wird, die kompensiert werden muss. + + + Zustzliche Khlummantelung + + + Eine angenehmere Griffform, die das Feuern der Waffe in Bewegung einfacher macht. + + + Ergonomische Gehuseform + + + Eine Modifikation, die ausschlielich an Waffen mit festem Bullpup-Gehuse vorgenommen wird und die Wartung der Waffe vereinfacht. + + + Modulares Gehuse + + + Diese Beschichtung verhindert das berhitzen des Laufs, beseitigt Produktionsmngel und verlngert die Haltbarkeit betrchtlich. + + + Glttbeschichtung des Gehuses und Laufs + + + Eine leichte, bewegliche Komponente wird im abgeschrgten Griff eingebaut, um dem Rcksto der Waffe entgegenzuwirken, wenn sie abgefeuert wird. + + + Abgeschrgter Griff + + + Durch die Aussparung im Griff sinkt das Gewicht der Waffe. + + + Abgeschrgter Griff + + + Eine leichtere Version des Standardkolbens. + + + Leichterer Kolben + + + Durch die Verwendung eines leichteren Polymaterials sinkt das Gewicht der Waffe. + + + Storesistenter Polymerkolben + + + Der Waffe wird ein zustzliches Gegengewicht hinzugefgt, um den Rcksto zu reduzieren. + + + Einbau eines Gegengewichts + + + Eine modernere und angenehmere Griffform erleichtert die Handhabung der Waffe. + + + Ergonomischer Griff + + + Ein Dmpfungsgriff reduziert den Rcksto. + + + Dmpfungsgriff + + + Eine modernere und angenehmere Kolbenform erleichtert die Handhabung der Waffe. + + + Ergonomischer Kolben + + + Eine spezielle Beschichtung schtzt die Waffe vor ueren Einwirkungen. + + + Antikorrosionsbeschichtung + + + Eine Quecksilber-Rckstodmpfung wird im Waffenkolben eingebaut und absorbiert einen Teil des Rckstoes, wenn die Waffe abgefeuert wird. + + + Quecksilber-Rckstodmpfung + + + Ein frei bewegliches Impulsgegengewicht, das sich vom Verschluss wegbewegt, wenn die Waffe abgefeuert wird, und damit einen Teil des Rckstoes absorbiert. + + + Einbau eines Impulsgegengewichts + + + Der Austausch des Materials reduziert den Schaden, den der Lauf durch unregelmige Temperaturanstiege beim Schieen nehmen kann. Daher kann die Feuerrate der Waffe erhht werden. + + + Extrem widerstandsfhige, hitzebestndige Legierungen + + + Eine wichtige Modifikation, die die Waffe vor den Auswirkungen der Umgebungstemperatur beim Schieen schtzt. + + + Einbau einer temperaturregelnden Ummantelung + + + Diese technologische Entwicklung der ueren Lamellierung erfordert hchste Przision, damit sich keine Punkte berdurchschnittlicher Erhitzung auf dem Lauf bilden. + + + Externe Lauflamellen + + + Der Lauf wird durch eine modernere Variante ersetzt. Dies verbessert die Schussgenauigkeit enorm. + + + nderung der Laufgeometrie + + + Ein teurer Rahmen fr eine Waffe, der lange haltbar ist. + + + Titanrahmen + + + Mit diesem Material ist der Rahmen zuverlssiger als mit Verbundwerkstoff. + + + Massivstahlrahmen + + + Der Pistolenrahmen wird durch eine leichtere Variante ersetzt, ohne die Zuverlssigkeit der Waffe zu beeintrchtigen. + + + Polymerpistolenrahmen + + + Eine modernere und angenehmere Griffform erleichtert die Handhabung der Waffe. + + + Ergonomischer Griff + + + Ein Dmpfungsgriff reduziert den Rcksto. + + + Dmpfungsgriff + + + Verstrkte Schutzklappen, die die Waffen vor Schmutz und Sten schtzen sollen. + + + Schutzverstrkung + + + Eine nderung im hinteren Teil sorgt fr eine ergonomischere Griffform. + + + nderung der Griffform mit geradem hinteren Teil + + + Die Mglichkeit, die passende Grifflnge selbst einzustellen, sorgt fr eine ergonomischere Griffform. + + + Einstellbarer Griff + + + Diese Modifikation ist nur dann mglich, wenn bereits eine Rcklauffeder in den Griff integriert wurde. + + + Einbau einer Rcklauffederdmpfung + + + Die Mglichkeit, die passenden Platten auszuwhlen, sorgt fr eine ergonomischere Griffform. + + + Griff mit genderter Form und austauschbaren Platten + + + Die Ummantelung ist fr Waffen gedacht, die hufig eingesetzt werden, und schtzt sie vor allzu frhem Verschlei. + + + Einbau einer perforierten Stahlummantelung + + + Eine technologischere und modernere Rckstodmpfung als diejenigen, die in herkmmlichen automatischen Waffen Verwendung finden. + + + Effektive Mndungsbremse + + + Ein modernerer und besser geeigneter Lauf fr Scharfschtzeneinstze bei extrem groen Distanzen. + + + Einbau eines schweren Laufs mit Polygonzug + + + Lngsrillen verhindern, dass der Lauf berhitzt und verschmutzt. + + + Lngsrillen am Lauf + + + Integrierter Schalldmpfer und Mndungsfeuerunterdrcker. Unverzichtbar fr heimliches Schieen. + + + Einbau eines integrierten Schalldmpfers + + + Normalerweise wird der Sinuszug bei Sturmwaffen verwendet, um ihre Feuerrate zu erhhen. + + + Laufkammer mit Sinuszug + + + Ein Injektor der Generation A, der in einem der Kiewer Forschungsinstitute entwickelt wurde. Er injiziert regelmig kleine Adrenalindosen in das Blut. Das mag zwar gefhrlich sein, aber es kann Ihnen im Notfall auch das Leben retten. + + + Adrenalininjektor "Rage" + + + Ein System zur Entsorgung von Kondensat mit giftigen Substanzen aus dem Reinigungsfilter. + + + Entgiftungssystem + + + Dieser kleine, von Clear Sky entwickelte Wellensender wird auf dem Rcken angebracht und erhht, falls er stndig genutzt wird, die Gerinnungsgeschwindigkeit des Blutes. + + + Hmostimulator "Ray" + + + Mit diesem System wird das uere des Schutzanzugs unter Strom gesetzt, wodurch radioaktive und chemische Partikel vom Anzug abgewiesen werden. + + + Integrierter Partikelabweiser + + + Ein Injektor der Generation B, der regelmig ein Gerinnungsmittel in den Blutkreislauf pumpt, wenn der Blutdruck stark fallen sollte. + + + Hmoglobininjektor "Hydra" + + + Dieses System behlt stets die optimale Krpertemperatur bei und verhindert damit eine etwaige Erschpfung. + + + Einbau eines Temperaturreglers + + + Dieser Wellensender wird auf der Brust angebracht und erhht, falls er stndig genutzt wird, die Geschwindigkeit der Wundheilung, die Strke des Immunsystems und die Schmerzschwelle des Trgers erheblich. + + + Biostimulator "Sonne" + + + Ein wissenschaftliches Gert auf Wellenbasis, das fr den Einsatz in Anomaliegebieten mit Psi-Emissionen entwickelt wurde. + + + Psi-Stimulator "Orakel" + + + Ein Injektor der Generation C, der im Kampf eine Mischung aus nicht nher bekannten Mitteln in den Blutkreislauf pumpt, die die Geweberegeneration beschleunigen und das Schmerzempfinden dmpfen. + + + Bioregenerator "Phnix" + + + Ein integriertes System, das die Gesundheit des Trgers berwacht und bei Bedarf Vitamine, Adrenalin oder Anabolika verabreicht. + + + Einbau eines Lebenserhaltungssystems + + + Dieser Wellensender wird am Hals angebracht. Sein Aufbau und seine Wirkungsweise sind zwar noch nicht ganz klar, aber der Sender hat nachweislich eine beruhigende Wirkung. + + + Neurostimulator "Reflex" + + + Der Zweck der Verschlussbolzendmpfung liegt darin, einen Teil des Rckstoes zu kompensieren, wodurch die Streuung bei Salvenfeuer verringert wird. + + + Verschlussbolzendmpfung + + + Eine der einfachsten und beliebtesten Modifikationen, mit denen der Abzugswiderstand reduziert wird. Einfach und ntzlich. + + + Weicher Abzug + + + Eine spezielle Auswahl an Komponenten aus verschiedenen Materialien, die an die jeweilige Waffe angepasst werden. Diese Modifikation ist zwar nicht ganz billig, aber sie verbessert die Haltbarkeit Ihrer Waffe. + + + Feuermechanismuskomponenten aus Verbundwerkstoff + + + Damit wird die Feuerrate der Waffe erhht, was allerdings auf Lasten der Schussgenauigkeit und Zuverlssigkeit geht. + + + Erzwungene Abzugsverzgerung + + + Die Entfernung der Abzugsfeder sorgt dafr, dass der erste Schuss eine halbe Sekunde frher abgegeben werden kann. Das mag nicht viel sein, kann aber im Notfall Ihr Leben retten. + + + Federloser Abzug + + + Eine Schutzbeschichtung schliet Fehlzndungen aufgrund von Fehlfunktionen des Feuermechanismus gnzlich aus. + + + Schutzbeschichtung fr Komponenten des Feuermechanismus + + + Durch den verschlusslosen Feuermechanismus wird das automatische Laden beschleunigt, was die Feuerrate der Waffe erheblich erhht. + + + Verschlussloser Feuermechanismus + + + Der stofreie Feuermechanismus durchbohrt die Munition, statt sie mit einem Bolzen zu treffen. Dadurch geht das Schieen betrchtlich sanfter von statten. + + + Einbau eines stofreien Feuermechanismus + + + Der Abzug wird mit dem ersten Schuss entsichert. Alle nachfolgenden Schsse erfolgen danach mit dem entsicherten Abzug und damit schneller. + + + Feuermechanismus mit Doppelabzug + + + Eine der einfachsten und beliebtesten Modifikationen, mit denen der Abzugswiderstand reduziert wird. Einfach und ntzlich. + + + Weicher Abzug + + + Das Vorspannen erhht die Schussgenauigkeit. + + + Feuermechanismus mit Vorspannvorrichtung + + + Sorgt dafr, dass vom ersten bis zum letzten Schuss der Abzug mit demselben Druck bettigt werden muss. Dies wirkt sich positiv auf die Handhabung aus. + + + Sicherer Abzug + + + Eine moderne Modifikation, die verhindert, dass der Verschlussbereich der Waffe Schaden nimmt. + + + Vergrerter Verschlusskopf + + + Mit einem modularen Feuermechanismus gestalten sich die Wartung und das Austauschen von Teilen einfacher. Darber hinaus wird auch die Handhabung verbessert. + + + Modularer Feuermechanismus + + + Die Spannkomponente reduziert betrchtlich den Druck, der notwendig ist, um den Abzug zu bettigen. Dadurch wird die Schussgenauigkeit verbessert. + + + Einbau einer Spannkomponente + + + Hierbei handelt es sich um eine neue technologische Entwicklung, die es ermglicht, den Feuermodus sehr einfach zu wechseln. Dies ist ein weiterer Schritt auf dem Weg zu ergonomischeren Waffen. + + + Doppelfeuermodus + + + Nachdem der erste Schuss abgegeben wurde, ist nur noch eine halbe Abzugsbewegung ntig, um nachfolgende Schsse abzugeben. + + + Feuermechanismus mit kurzer Bewegung + + + Zustzliche Bewegungskomponenten erhhen das Maximalgewicht, das getragen werden kann. + + + Zustzliche Servomotoren + + + Dieses System verabreicht antitetanische, entzndungshemmende und Sulfanilamid-Substanzen. + + + Integriertes System "Feldarzt" + + + Ein Belftungssystem fr den Schutzanzug mit einem Vorsorgefilter fr den Einsatz in kontaminierter Umgebung. + + + Interne Temperaturregelung + + + Eine ergonomische Verbesserung: Spezielle Sttzen am Schutzanzug sorgen dafr, dass das getragene Gewicht besser kompensiert wird und dadurch geringer wirkt. + + + Gewichtsverteilungsweste + + + Ein Sauerstoffbehlter ist ntig bei Einstzen in chemisch oder radioaktiv verseuchter Umgebung. + + + Einbau eines Sauerstoffbehlters + + + Einbau eines zustzlichen Artefaktbehlters. + + + Zustzlicher Artefaktbehlter + + + Ein System aus Sttzelementen, mit denen das getragene Gewicht ausgeglichener auf den gesamten Krper verteilt wird. + + + Sttzsystem fr Gewichtsverteilung + + + Ein Rahmen fr den Rcken entlastet die Schulter, indem er das getragene Gewicht auf den gesamten Krper verteilt. Dadurch wird das maximale Tragegewicht erhht. + + + Gewichtsverteilungsrahmen fr den Rcken + + + Dieses System verabreicht antiseptische, antitetanische und stimulierende Mittel. Es ist zwar selbst gemacht, aber schadet dem Krper offensichtlich nicht. + + + Integriertes System "Pflege" + + + Dieses System ldt ein spezielles Gitter mit derselben Ladung wie die einer entsprechenden Anomalie auf, um die Gefahr zu reduzieren. + + + Elektrostatisches Schutzsystem "Stingray" + + + Imprgnierte Innenschicht, die vor chemischer Vergiftung schtzen soll. + + + Imprgnierte Innenschicht fr chemischen Schutz + + + Ein experimentelles System fr Langstreckenlufe, das wegen seines hohen Preises und der zweifelhaften Umsetzung auerhalb der Zone nicht zum Einsatz kommt. + + + Integriertes System "Athlet" + + + Ein System zur Entsorgung von Kondensat mit giftigen Substanzen aus dem Reinigungsfilter. + + + Entgiftungssystem "Gegengift" + + + Einbau eines zustzlichen Artefaktbehlters mit zwei Fchern. + + + Zustzlicher Artefaktbehlter mit zwei Fchern + + + Ein Kampfuntersttzungssystem, das in den Schutzanzug integriert wird. Es wird selten verwendet, hauptschlich von den Spetsnaz. Das System bietet bereits eingebaute Adrenalin- und Gerinnungsmittelspender. + + + Felduntersttzungssystem "Warjag" + + + Bei diesem Prototypen eines Kampfuntersttzungssystems haben die Entwickler auf schdliche Adrenalinspender verzichtet. Stattdessen werden zusammen mit den Gerinnungsmitteln heilende Substanzen verabreicht. + + + Felduntersttzungssystem "Skif" + + + Diese ziemlich teure Modifikation ist relativ blich fr Waffen der neueren Generationen. + + + Einbau eines massiven Verschlusses + + + Die Verstrkung des Verschlussbereichs verhindert das Entweichen von Energie, wodurch die Flachheit der Waffe verbessert wird. + + + Verschlussverstrkung mit synthetischen Einlagen + + + Anders als die Bezeichnung vermuten lsst, wird hierbei der Verschluss ausgewechselt, weil er die Auswirkungen der erhhten Feuerrate wegstecken muss. + + + Schneller Automatikabzug + + + Das Gasventil weist ein bewegliches Teilstck auf, das sich mit derselben Geschwindigkeit bewegt und damit einen Teil des Rckstoes kompensiert. + + + Einbau eines Gasventils mit einem beweglichen Teilstck + + + Ein zweiter Kolben bewegt das Gegengewicht, das der Bewegung des Verschlusssystems entgegenwirkt. + + + Einbau eines zustzlichen Gaskolbens + + + Die Schutzbeschichtung erhht die Zuverlssigkeit und, was noch wichtiger ist, schliet den Mechanismus luftdicht ab, wodurch keine Energie entweichen kann. + + + Schutzbeschichtung fr den Verschluss + + + Mit diesen Lngsrillen im Gehuse werden die Reibung verringert und kleine Schmutzpartikel eingefangen, wodurch die Verschmutzung des Verschlusssystems verhindert wird. + + + Lngsrillen im Gehuse + + + Der Durchmesser der Gaskammer wird durch synthetische Verstrkungen verringert. Dadurch steigt die Projektilgeschwindigkeit betrchtlich an. + + + Gerichtete Gasenergie + + + Der Verschluss leitet auf dem Weg in seine Startposition die Luft durch die Laufkammer und khlt sie damit. + + + Khlsystem + + + Der Verschluss der Waffe gleitet entlang des Laufs. Damit wird verhindert, dass sich der Mndungsbereich nach oben bewegt. + + + Einbau eines gleitenden Verschlusses + + + Der Einbau eines Gaskolbens verhindert das Eindringen von Gasen in den Verschlussrahmen. Dies sorgt dafr, dass die Waffe deutlich weniger schmutzanfllig ist. + + + Einbau eines Gaskolbens + + + Dieses System fngt einen Teil der anfallenden Gase ab, wodurch die Bewegung des Verschlusssystems verbessert wird. + + + Gasauffangsystem + + + Der Austausch der Automatikteile ist mehr eine Optimierung als eine Verbesserung des Gaskolbens. Dies resultiert in einer betrchtlichen Steigerung der Feuerrate. + + + Gaskolben fr kurze Bewegungen + + + Ein Rollenverschlusssystem, das in modernen Waffen hufig eingesetzt wird, reduziert den Rcksto und die Streuung. + + + Wechsel auf ein halboffenes Verschlusssystem + + + Indem ein Teil der entstehenden Wrme absorbiert wird, werden die Temperaturschwankungen der Waffe beim Feuern reduziert. + + + Hitzeabsorbierende Komponenten + + + Eine lngere Bewegung des Gaskolbens erhht leicht die Lnge der Waffe, sorgt aber auch fr eine betrchtliche Verbesserung der Flachheit. + + + Gaskolben fr lange Bewegungen + + + Ein Puffer fr bewegliche Teile verteilt den Rcksto gleichmig auf die gesamte Waffe, sodass die Wirkung abgeschwcht wird. + + + Einbau eines Spezialpuffers fr bewegliche Teile + + + Die symmetrische Khlung eines Laufteils durch den Auswerfer sorgt dafr, dass die Waffe nicht berhitzt. + + + Gleichmiges Khlsystem + + + Sorgt fr eine erhhte Feuerrate, ohne andere Teile durch erhhten Rcksto zu beeintrchtigen. + + + Beweglicher Verschlussbereich + + + Verbessert die Flachheit der Waffe, indem der Impuls besser auf die Munition bertragen wird. + + + Laufschliesystem des Verschlussbereichs + + + Reduziert den Rcksto dadurch, dass die Verschlussbewegung verlangsamt wird. + + + Langsame Rckwrtsbewegung des Verschlusssystems + + + Die Schutzbeschichtung schtzt die Waffe vor vorzeitigem Verschlei. + + + Schutzbeschichtung fr den Verschluss + + + Verbessert die Flachheit der Waffe, indem der Impuls besser auf die Munition bertragen wird. + + + Schiefer Laufabschluss + + + Ein schwererer und geschlossener Verschluss verhindert Fehlfunktionen im Verschlussbereich der Waffe. + + + Verstrktes und komplett geschlossenes Verschlusssystem + + + Ein kleiner Puffer kompensiert einen Teil des Rckstoes. + + + Polymerrckstopuffer + + + Der Einbau einer Stahleinlage reduziert den Rcksto. + + + Einbau einer abschlieenden Einlage + + + Durch eine schnellere Verschlussbewegung und die entsprechende Verstrkung des Rcklaufmechanismus kann die Flachheit der Waffe verbessert werden. + + + Verbesserte Verschlussbewegung + + + Eine kurze Verschlussbewegung erhht die Feuerrate der Waffe betrchtlich, ohne die Flachheit zu beeintrchtigen. + + + Einbau eines Verschlusssystems mit kurzer Bewegung + + + Eine lange Verschlussbewegung sorgt dafr, dass mehr Energie auf die Munition bertragen wird. + + + Einbau eines Verschlusssystems mit langer Bewegung + + + Der Austausch der Automatikteile ist mehr eine Optimierung als eine Verbesserung des Gaskolbens. Dies resultiert in einer betrchtlichen Steigerung der Feuerrate. + + + Einbau eines Rckstoenergienutzungssystems mit kurzer Bewegung + + + Der Einbau dieses Moduls verringert erheblich die Streuung, ohne die Feuerrate zu beeintrchtigen. + + + Rcklaufmodul mit Doppelfeder + + + Der Einbau zustzlicher Kompensationsffnungen sorgt fr eine betrchtliche Reduzierung des Rckstoes. + + + Integrierter Vertikalkompensator fr den Lauf + + + Modernisierung von Automatikteilen der Pistole, sodass Automatikfeuer mglich wird. + + + Vollautomatischer Feuermodus + + + Verbesserung von Automatikteilen der Pistole, sodass Dreifach-Salvenfeuer mglich wird. + + + Dreifach-Salvenfeuermodus + + + Preis + + + Kann nicht eingebaut werden + + + Installiert + + + Wollen Sie wirklich den folgenden Einbau vornehmen: + + + Automatisches Zielerfassungssystem + + + Automatisches Zielerfassungssystem + + + Optisches 5-fach Zielfernrohr + + + Optisches 6-fach Zielfernrohr + + + Infrarotscanner + + + Gewicht der Krperpanzerung + + + Nachtsichtgert der zweiten Generation + + + Nachtsichtgert der dritten Generation + + + Schiene fr optisches Zielfernrohr + + + Integrierter Schalldmpfer + + + Unterlaufgranatwerfer + + + Wundheilung + + + Lebensregeneration + + + Nachtsichtgert der ersten Generation + + + Justierbares Visier + + + Hochkontrastvisier + + + Servomotorverstrker + + + Schutzanzughaltbarkeit + + + Es ist nicht klar, wie die Waffe funktioniert. Ohne weitere Informationen ber ihren Aufbau, kann sie nicht repariert werden. + + + Der Techniker kann diese Modifikation nicht durchfhren + + + Dieses Teil wurde bereits modifiziert + + + Nicht genug Geld + + + Verwendet keinen Schrot + + + Automatikfeuermodus + + + Dreifach-Salvenfeuermodus + + + Anzahl der Kisten + + + der Techniker braucht Wodka + + + der Techniker bentigt Werkzeug fr einfache Arbeiten + + + der Techniker bentigt Werkzeug fr feine Arbeiten + + + der Techniker bentigt Werkzeug fr Kalibrierungsarbeiten + + + der Techniker bentigt zustzliche Informationen + + + vorangehende Modifikationen erforderlich + + + Schutzschicht "Armadillo" auf Basis von Saphirkristallen + + + Verstrktes Titan- und Berylliumgerst + + + Zustzliche Kohlefaserbeschichtung + + + Gummierte Stoffunterschicht + + diff --git a/gamedata/configs/text/ger/st_land_names.xml b/gamedata/configs/text/ger/st_land_names.xml new file mode 100644 index 0000000..613d0e0 --- /dev/null +++ b/gamedata/configs/text/ger/st_land_names.xml @@ -0,0 +1,171 @@ + + + + Klaue-Anomalie + + + Eisenwald-Anomalie + + + Sgewerk + + + Antennenkomplex Krug + + + Klranlage + + + Rundkreis-Anomalie + + + Forststation + + + Skadowsk + + + Abgebrannter Bauernhof + + + Boiler-Anomalie + + + Sumpf + + + Isumrudnoje + + + Schewtschenko + + + Baggerschiff + + + Dockkrne + + + Pinieneiche-Anomalie + + + Tankstelle + + + Altes Schiff + + + Narbe-Anomalie + + + Preobraschenski-Brcke + + + Sdliches Plateau + + + Werksttten des Umspannwerks + + + Aschehgel-Anomalie + + + Khlturm + + + Umspannwerk + + + Plawni-Anomalie + + + Zementfabrik + + + Kopatschi + + + Janow-Station + + + Steinbruch + + + Bunker der Wissenschaftler + + + Flugabwehrkomplex Wolchow + + + Anomales Wldchen + + + Parkplatz + + + Checkpoint + + + Asphalt-Anomalie + + + stlicher Tunnel + + + Containerlagerhaus + + + Belftungsanlage + + + Hubschrauberlandeplatz + + + Betonbad-Anomalie + + + Jupiter-Anlage + + + Prometheus-Kino + + + Flusshafen + + + Altes Servicezentrum + + + Schule + + + Krankenhaus + + + Servicezentrum Jubilejni + + + Waschsalon + + + Kindergarten + + + Wohnanlage + + + Lebensmittelgeschft + + + Kaufhaus + + + Buchladen + + + Vulkan-Anomalie + + + Wein-Anomalie + + diff --git a/gamedata/configs/text/ger/st_mp_mapdesc.xml b/gamedata/configs/text/ger/st_mp_mapdesc.xml new file mode 100644 index 0000000..5950479 --- /dev/null +++ b/gamedata/configs/text/ger/st_mp_mapdesc.xml @@ -0,0 +1,126 @@ + + + + Fahrzeugstation + + + Ein seltsamer Ort. Dieses stille Gebude birgt sicherlich so manches Geheimnis, aber die Stalker werden aus einem anderen Grund davon angezogen: Man kann hier zahlreiche Artefakte finden. Das Risiko ist zwar hoch, aber der mgliche Gewinn ist ebenfalls enorm. Wenn Sie schnell denken und handeln, werden Sie das Glck sicher auf Ihrer Seite haben. + + + Ein seltsamer Ort. Dieses stille Gebude birgt sicherlich so manches Geheimnis, aber die Stalker werden aus einem anderen Grund davon angezogen: Man kann hier zahlreiche Artefakte finden. + + + Ein Depot beim Eingang der Zone. Die Traktoren, Busse und Lastwagen, die hier stehen, haben ihre beste Zeit bereits hinter sich. Bisher wurden hier keine Artefakte gefunden, aber der Ort ist beliebt bei Rubern, die Jagd auf Anfnger machen und sie um der Beute willen tten. Suchen Sie Deckung in den Gebuden oder hinter den Fahrzeugen... und hten Sie sich vor Gegnern auf den Dchern! + + + Ein Depot beim Eingang der Zone. Die Traktoren, Busse und Lastwagen, die hier stehen, haben ihre beste Zeit bereits hinter sich. + + + Ein verlassenes Depotgebude und das angrenzende Gebiet. Hier knnen Sie einiges an Ausrstung und Vorrten finden, wenn Sie sich anstrengen. Sehen Sie sich vor starken Anomalien und Scharfschtzen auf den Dchern vor - von dort hat man so gut wie alle Zugangswege perfekt im Blick. + + + Ein verlassenes Depotgebude und das angrenzende Gebiet. Sehen Sie sich vor starken Anomalien und Scharfschtzen auf den Dchern vor. + + + Ein geheimnisvoller und zugleich faszinierender Ort. Dieses Becken wurde fr Experimente an jemandem oder etwas gebaut, aber der genaue Zweck wird wohl fr immer ein Rtsel bleiben. Hier gibt es keine nennenswerten Artefakte, daher kommen die Stalker lediglich wegen der berreste von bizarren Bauteilen und Gerten hierher. Passen Sie gut auf die Dcher auf und vergessen Sie nicht, dass die Gegend extrem stark verstrahlt ist. + + + Ein geheimnisvoller und zugleich faszinierender Ort. Dieses Becken wurde fr Experimente an jemandem oder etwas gebaut, aber der genaue Zweck wird wohl fr immer ein Rtsel bleiben. + + + Dieser gefhrliche Teil des Dunklen Tals besteht aus einer langen Strae und einem verlassenen Institut. Wer wei, was dort frher alles gelehrt wurde! Das Einzige, was man heute hier lernen kann, ist, wie man auch unter den schlimmsten Bedingungen berlebt! Oh, zu erwhnen wre noch, dass Sie die Dcher immer im Auge behalten sollten... + + + Dieser gefhrliche Teil des Dunklen Tals besteht aus einer langen Strae und einem verlassenen Institut. + + + Diese dstere, verlassene Fabrik wurde schon zahllosen Stalkern zum Grab. Unzhlige Anomalien warten hier auf unvorsichtige Besucher... aber die Leute lassen sich nicht abschrecken und strmen weiterhin massenweise her - angelockt von den wertvollen Artefakten, die man hier finden kann. Vorsicht vor der Strahlung! + + + Diese dstere, verlassene Fabrik wurde schon zahllosen Stalkern zum Grab. + + + Die Feuerwache, deren gesamte Einsatzkrfte bei der Katastrophe im Atomkraftwerk Tschernobyl 1986 verheizt wurden. Von dem Turm hat man eine gute bersicht ber die Umgebung. Nur wenige wagen sich in die hheren Stockwerke und die Untergeschosse des Gebudes. Es wird schon einen Grund dafr geben. In dieser Gegend prallen bereits seit einiger Zeit die Fraktionen der Zone aufeinander - beim Kampf um die beste strategische Ausgangsposition. + + + Die Feuerwache, deren gesamte Einsatzkrfte bei der Katastrophe im Atomkraftwerk Tschernobyl 1986 verheizt wurden. Sie stellt eine hervorragende taktische Position dar. + + + Teil einer riesigen Mllhalde, auf der nach der Katastrophe von 1986 haufenweise radioaktive Abflle entsorgt wurden. Hier gibt es zahlreiche baufllige Krne und eine gewisse Auswahl an Ausrstung. Weitere Attraktionen sind abbruchreife Gebude und ein groer Hangar. Die Nhe zum Kordon und die relativ zahlreichen Artefakte sorgen dafr, dass vor allem Stalker hierher kommen, die einfache Arbeit bevorzugen. + + + Teil einer riesigen Mllhalde, auf der nach der Katastrophe von 1986 haufenweise radioaktive Abflle entsorgt wurden. + + + Ein kleiner Teil der rtselhaften Stadt Limansk - man findet hier verlassene Wohnblocks und ein halb fertig gestelltes Gebude vor. Als verschiedene wertvolle Artefakte gefunden wurden, breitete sich die Nachricht wie ein Lauffeuer in der Zone aus. Seitdem einige Straen nach Limansk geffnet wurden, wird hier ununterbrochen gekmpft. + + + Ein kleiner Teil der rtselhaften Stadt Limansk - man findet hier verlassene Wohnblocks und ein halb fertig gestelltes Gebude vor. + + + Ein menschenleeres, gottverlassenes Dorf mitten in der Zone. Der kleine, seichte, schmutzige See, in dem zahlreiche Fahrzeugwracks ihre letzte Ruhesttte gefunden haben, erfllt Sie mit einer unterbewussten Angst vor der Wirklichkeit der Zone. Sehen Sie sich vor Scharfschtzen vor, aber vergessen Sie auch nicht, dass die Zone die Mutigen belohnt. + + + Ein menschenleeres, gottverlassenes Dorf mitten in der Zone. Der kleine, seichte, schmutzige See, in dem zahlreiche Fahrzeugwracks ihre letzte Ruhesttte gefunden haben, erfllt Sie mit einer unterbewussten Angst vor der Wirklichkeit der Zone. + + + Eine verlassene Armeebasis mit den berresten von Lastwagen und Schtzenpanzern sowie verfallenen Hauptquartieren und Kasernen. Der trostlose Eindruck trgt allerdings, denn die Basis ist eine wahre Fundgrube fr Artefakte. Das bedeutet aber auch, dass hinter jeder Ecke ein Gegner lauern knnte. + + + Eine verlassene Armeebasis mit den berresten von Lastwagen und Schtzenpanzern sowie verfallenen Hauptquartieren und Kasernen. + + + Dieses alte Dorf ist ein wirklich unheimlicher Ort. Sollten Sie mutig genug sein, hierher zu kommen, wundern Sie sich nicht, wenn Sie mit einer Kugel begrt werden. Hier ist kein Fleck sicher! Mgen Ihr Zielfernrohr und der Schalldmpfer Ihnen gute Dienste leisten! + + + Dieses alte Dorf ist ein wirklich unheimlicher Ort. Sie haben es zwar bis hierher geschafft, aber drfen sich keine Sekunde ausruhen. + + + Dies ist kein Becken, sondern vielmehr ein Blutbad. Echos von Schssen, Explosionen und Schreien der Sterbenden hallen durch die gefliesten Korridore. Nur wenige Stalker kennen den Weg hierher, aber noch weniger kennen einen Weg heraus. + + + Dies ist kein Becken, sondern vielmehr ein Blutbad. Echos von Schssen, Explosionen und Schreien der Sterbenden hallen durch die gefliesten Korridore. + + + Eine kleine Eisenbahnstation in der Nhe der Rostok-Fabrik. + + + Eine kleine Eisenbahnstation in der Nhe der Rostok-Fabrik, voller verrosteter Waggons und Lokomotiven, die schon lange nicht mehr fahren. Eine Flle von Artefakten lockt furchtlose Stalker aus der gesamten Zone hierher. + + + Eine Reparaturbasis in der Nhe eines kleinen Dorfes. Smtliche betriebsfhigen Fahrzeuge wurden nach der Katastrophe von Tschernobyl eingesetzt. Inzwischen wurde der Rest der Ausrstung geplndert. Die Gegend ist voller Gefahren wie z.B. tckischer Smpfe und verseuchtem Schilf. Aber mit Glck kann man dort etwas Wertvolles finden. + + + Eine Reparaturbasis in der Nhe eines kleinen Dorfes. Die Gegend ist voller Gefahren wie z.B. tckischer Smpfe und verseuchtem Schilf. + + + Berge von Metall rosten hinter Betonwnden ruhig vor sich hin. Vor dem Jahrhundertwechsel war die Fabrik durchgehend in Betrieb und wurde von zahllosen Lautsprechern mit sozialistischen Slogans beschallt. Aber das Gebude wurde schon vor langer Zeit aufgegeben und verlassen. + + + Alte, verlassene Fabrik: Berge von Metall hinter Betonwnden - das ist alles, was noch brig ist. + + + Ein Sportzentrum in Pripyat, unweit der verlassenen Schule. Die Sportarten, die hier bevorzugt werden, haben sich seit 1986 grundlegend gendert, genauso wie die Zahl der Aktiven. Die Stalker zieht es wegen zweifelhaftem Ruhm, Beute und Artefakten hierher... und manche von ihnen bleiben fr immer. + + + Ein Sportzentrum in Pripyat, unweit der verlassenen Schule. + + + Ein uerst seltsamer Ort. Viele lachen ber Stalker, die behaupten, dass sie den Ort schon einmal gesehen htten, aber er existiert wirklich. Gravitationsanomalien haben dort die Erde aufgerissen und eine Mondlandschaft hinterlassen. Das Gebiet wird von drei groen Trmen bestimmt, berbleibseln der Militrprsenz, die auf groen Erdhaufen thronen. + + + Ein uerst seltsamer Ort. Gravitationsanomalien haben dort die Erde aufgerissen und eine Mondlandschaft hinterlassen. + + + Hierbei hat es sich um den Randbereich der Rostok-Fabrik gehandelt, bevor sich die Wchter hier niedergelassen haben. Ein unheimlicher Ort, der jedoch reichlich Artefakte zu bieten hat. Alle leeren Hangars und Lagerhuser sind voller tdlicher Gefahren. Seien Sie uerst vorsichtig und behalten Sie besonders den weien Turm im Auge. + + + Hierbei hat es sich um den Randbereich der Rostok-Fabrik gehandelt, bevor sich die Wchter hier niedergelassen haben. Ein unheimlicher Ort, der jedoch reichlich Artefakte zu bieten hat. + + + Nur wenige wagen sich bis in die verlassene Stadt Pripyat vor, in der frher die Angestellten des Atomkraftwerks Tschernobyl lebten. Dennoch toben auf den Straen der toten Stadt wilde Feuergefechte, und zwar in einem kleinen Gebiet zwischen dem Prometheus-Kino, dem Pier und den Husern auf der Kurschatowa-Strae. + + + In einem kleinen Teil von Pripyat zwischen dem Prometheus-Kino, dem Pier und den Husern auf der Kurschatowa-Strae toben Feuergefechte zwischen den wenigen, die es bis in die tote Stadt geschafft haben. + + diff --git a/gamedata/configs/text/ger/st_mp_speechmenu.xml b/gamedata/configs/text/ger/st_mp_speechmenu.xml new file mode 100644 index 0000000..4b2ea92 --- /dev/null +++ b/gamedata/configs/text/ger/st_mp_speechmenu.xml @@ -0,0 +1,57 @@ + + + + Alle angreifen! + + + Ich suche das Artefakt! Gib mir Deckung! + + + Mir nach! + + + Wir bewachen vorerst das Artefakt. Nicht angreifen! + + + Ich halte die Position. + + + Position halten! + + + Nimm das Artefakt! Ich gebe dir Deckung. + + + Ich brauche Hilfe. + + + Kein Geld - kauf mehr Ausrstung. + + + Nein. + + + Niemand zu sehen. + + + Meldung, sofort! + + + Rckzug! + + + Hol das Artefakt zurck! + + + Verstanden. + + + Halt's Maul! + + + Zusammenbleiben. + + + Hol das Artefakt! + + diff --git a/gamedata/configs/text/ger/st_mp_teamdesc.xml b/gamedata/configs/text/ger/st_mp_teamdesc.xml new file mode 100644 index 0000000..20963a8 --- /dev/null +++ b/gamedata/configs/text/ger/st_mp_teamdesc.xml @@ -0,0 +1,15 @@ + + + + Die Anarchisten der Zone. Sie halten die Zone fr einen Ort der Freiheit und sind der Meinung, dass alle Gesetze, Regeln und Konventionen der restlichen Welt hier nicht gelten. Ihr Motto lautet: "Tu, was du willst, und mach dein Ding." Die Freiheitler kmpfen gegen die Versuche der Regierung, Kontrolle ber die Zone zu erlangen, und sie liegen mit den Sldnern im Krieg. Ihre Mitglieder tragen hauptschlich sowjetische und russische Waffen. + + + Freiheitsfraktion (Freie Stalker) + + + Diese abenteuerlustigen Halsabschneider kommen aus aller Welt und sind sich fr nichts zu schade. Ihr Motto lautet: "Geld stinkt nicht". Solange es Bedarf an Artefakten gibt, werden sie um die vollstndige Kontrolle ber die Artefaktfelder kmpfen. Die Sldner tragen hauptschlich westliche Waffen. + + + Sldnerfraktion (Die Halsabschneider) + + diff --git a/gamedata/configs/text/ger/st_quests_general.xml b/gamedata/configs/text/ger/st_quests_general.xml new file mode 100644 index 0000000..e6d0597 --- /dev/null +++ b/gamedata/configs/text/ger/st_quests_general.xml @@ -0,0 +1,18 @@ + + + + Achtung! Emission beginnt in: + + + Sie mssen sich in den nchsten Unterschlupf begeben, um sich vor der Emission zu schtzen. + + + Sie drfen Ihren Unterschlupf whrend der Emission nicht verlassen. + + + Emission: Deckung suchen + + + Emission: In Deckung warten + + diff --git a/gamedata/configs/text/ger/st_quests_jupiter.xml b/gamedata/configs/text/ger/st_quests_jupiter.xml new file mode 100644 index 0000000..c1a88db --- /dev/null +++ b/gamedata/configs/text/ger/st_quests_jupiter.xml @@ -0,0 +1,687 @@ + + + + Schulden: Banditen Geld bringen + + + Wano schuldet Banditen Geld fr einen Schutzanzug und kann es nicht zurckzahlen, weil die Zinsen zu hoch sind. Er hat Sie daher um Hilfe gebeten. + + + Schulden: Zurck zu Wano gehen + + + Teilen Sie Wano mit, was aus seinen Schulden geworden ist. + + + Schulden: Um die Banditen kmmern + + + Die Begleichung von Wanos Schulden ist nicht wie geplant gelaufen. Schalten Sie die Banditen aus. + + + Geisel: Belohnung bei Mitajs Freunden abholen + + + Mitaj wurde befreit. Treffen Sie sich an der Bar mit seinen Freunden, um Ihre Belohnung zu erhalten. + + + Geisel: Mitaj befreien + + + Geisel: Mit Grizzly reden, damit er bereit ist + + + Sie mssen sich zuerst mit Grizzly unterhalten, bevor Sie versuchen, die Geisel zu befreien. + + + Geisel: Mitaj mit Gewalt befreien + + + Sie mssen die Banditen ausschalten, um einen Stalker namens Mitaj zu befreien. + + + Geisel: Mit den Stalkern treffen + + + Bei der Geiselbefreiung werden Sie Hilfe von Stalkern erhalten. Sie mssen sich in der Nacht mit ihnen treffen, um die Banditen gemeinsam anzugreifen. + + + Geisel: Lsegeldzahlung arrangieren, um Mitaj zu befreien + + + Arrangieren Sie eine Lsegeldzahlung an den Anfhrer der Banditen, um einen Stalker namens Mitaj zu befreien. + + + Befreien Sie einen Stalker namens Mitaj, der von Banditen gefangen gehalten wird. + + + Geisel: Mitaj aus dem Banditenlager fhren + + + Das Banditenlager ist zu gefhrlich, um sich dort lnger aufzuhalten. Sie mssen Mitaj hinauseskortieren. + + + Geisel: Mit Mitaj reden + + + Mitaj ist relativ sicher. Reden Sie mit ihm darber, was als Nchstes getan werden sollte. + + + Weg nach Pripyat: Mit dem Techniker ber die Unterfhrung unterhalten + + + Aus den Dokumenten, die Sie gefunden haben, geht eindeutig hervor, dass es unterhalb der Jupiter-Anlage einen unterirdischen Durchgang nach Pripyat gibt. In dieser Unterfhrung fliet kein Strom, sie wurde mit Gas geflutet und der Eingang ist blockiert. Sie mssen einen Techniker finden, der den Generator aktivieren und den Eingang zur Unterfhrung ffnen kann. + + + Das Speichermodul befindet sich in Expertenhand. Sie mssen warten, bis es gehacked wurde. + + + Unbemanntes Flugobjekt: Speichermodul hacken + + + Unbemanntes Flugobjekt: Speichermodul von Nitro holen + + + Unbemanntes Flugobjekt: Speichermodul von Nowikow holen + + + Nitro hat das Speichermodul gehacked. Sie sollten es sich holen, um zu erfahren, welche Informationen es enthlt. + + + Nowikow hat das Speichermodul gehacked. Sie sollten es sich holen, um zu erfahren, welche Informationen es enthlt. + + + Sie haben ein Speichermodul aus dem unbemannten Flugobjekt geborgen. Das Modul muss gehacked werden, bevor Sie auf die Informationen darauf zurckgreifen knnen. + + + Unbemanntes Flugobjekt: Warten, bis das Modul gehacked wurde + + + Oase: Beweis finden + + + Die Oase wurde gefunden und scheint wirklich eine heilende Wirkung zu haben. Sie mssen einen Beweis fr die Wissenschaftler finden. + + + Oase: Beweis zu den Wissenschaftlern bringen + + + Die Oase wurde gefunden und scheint wirklich eine heilende Wirkung zu haben. Sie mssen das Artefakt, das Sie gefunden haben, als Beweis zu den Wissenschaftlern bringen. + + + Oase: berprfen, ob die Legende wahr ist + + + Oserski, der Wissenschaftler aus dem Bunker, hat Sie gebeten, die Oase zu finden - einen legendren Ort in der Zone. Gerchte besagen, dass es dort heilendes Wasser geben soll, aber niemand wei genau, ob der Ort wirklich existiert. + + + Kopatschi: Mit Onkel Jar mitgehen + + + Onkel Jar braucht Hilfe bei irgendetwas. Begeben Sie sich mit ihm zusammen in das Dorf Kopatschi. + + + Kopatschi: Sldner ausschalten + + + Es sieht so aus, als ob Onkel Jar geahnt hat, dass die Sldner auftauchen wrden. Sie mssen sie ausschalten. + + + Kopatschi: Bei Onkel Jar bleiben + + + Onkel Jar hat Sie gebeten, in seiner Nhe zu bleiben und still zu sein. + + + Kopatschi: Mit Onkel Jar reden + + + Die Sldner sind tot. Sie sollten sich mit Onkel Jar unterhalten, um eine Erklrung dafr zu erhalten, was hier vorgefallen ist. + + + Unregelmige Psi-Emissionen: Anomalieformation zu den Wissenschaftlern bringen + + + Bringen Sie die Probe wie abgemacht zu Hermann. Offenbar ist das die Quelle der unregelmigen Psi-Emissionen - ein Objekt, das durch anomale Einwirkung teilweise transformiert worden ist. + + + Unregelmige Psi-Emissionen: Die Quelle untersuchen + + + Untersuchen Sie den Tunnel nach Anomalieformationen. Die Wissenschaftler sind der Meinung, dass das unregelmige Psi-Feld eine Quelle hat, die mglicherweise einem Artefakt hnelt. + + + Unregelmige Psi-Emissionen: Topols Trupp treffen + + + Topols Trupp hat sich zu dem Tunnel mit den unregelmigen Psi-Emissionen begeben und Sie mssen sie dort treffen. + + + Unregelmige Psi-Emissionen: Mit Topol reden + + + Gehen Sie zusammen mit Topols Trupp zum Tunnel mit den unregelmigen Psi-Emissionen. Es wurde abgemacht, dass Stalker den Tunnel bewachen, whrend Sie nach dem suchen, was die Wissenschaftler wollen. + + + Sie sollten alle Funktechnikmaterialien, die Sie finden, zu Nitro bringen. + + + Nitro braucht Funktechnikmaterialien. Sie knnen ihm das, was Sie bereits haben, geben oder versuchen, noch mehr zu finden. + + + Funkausrstung: Materialien fr Nitro finden + + + Nitro braucht Funktechnikmaterialien. Er will, dass Sie bei der Zementfabrik danach suchen. + + + Diebstahl: Herausfinden, wer fr den Diebstahl verantwortlich ist + + + Fragen Sie die Stalker in der Janow-Station, ob sie einen Verdchtigen gesehen haben, der Sachen aus einer persnlichen Kiste gestohlen haben knnte. + + + Diebstahl: Umspannwerk berprfen + + + Sie mssen das Umspannwerk berprfen, denn dorthin hat sich der verdchtige Stalker aufgemacht, der fr den Diebstahl verantwortlich sein knnte. + + + Diebstahl: Ihre Sachen wieder holen + + + Alles, was Snag gestohlen hat, msste sich in seinem Versteck in der Kanalisation hinter dem Umspannwerk befinden. + + + Anomale Pflanze: Probe einer Pflanze beschaffen + + + Am Rand des Steinbruchs ist ein Gebiet voller anomaler Pflanzen aufgetaucht. Oserski hat Sie gebeten, ihm eine Probe einer Pflanze fr seine Forschungen zu beschaffen. + + + Anomale Pflanze: Oserski die Pflanze geben + + + Sie mssen die Pflanzenprobe zu Oserski bringen. Als Gegenleistung wird er Hermann berreden, Ihnen einen wissenschaftlichen Schutzanzug zu geben. + + + Jagd: Unbekannte Mutanten tten + + + Eine Gruppe von Stalkern hat in den Tunneln nrdlich der Jupiter-Anlage unbekannte Mutanten entdeckt. Untersuchen Sie das Gebiet und schalten Sie die Mutanten aus. + + + Jagd: Belohnung fr das Tten der Mutanten im Tunnel bei Trapper holen + + + Die Mutanten in den Tunneln nrdlich der Jupiter-Anlage wurden ausgeschaltet. Sie sollten Trapper davon in Kenntnis setzen und Ihre Belohnung abholen. + + + Theorie: Scanner im Zentrum des Erdrutsches platzieren + + + Platzieren Sie den Scanner im Zentrum des Erdrutsches, um Oserskis Theorie zu besttigen. + + + Theorie: Auf das Ende des Experiments warten + + + Der Scanner ist jetzt aktiviert und hat bereits begonnen, die Gegenwart von Mutanten zu registrieren. Sie mssen warten, bis gengend Daten gesammelt wurden, um die Theorie zu besttigen oder zu widerlegen. + + + Theorie: Scanner nehmen + + + Es wurden gengend Daten gesammelt, um Oserskis Theorie zu besttigen. Nehmen Sie den Scanner. + + + Theorie: Scanner zu Oserski bringen + + + Sie mssen den Scanner zu Oserski bringen. Die gesammelten Daten sollten ausreichen, um seine Theorie zu besttigen. + + + Jagd: Sumpfblutsauger tten + + + In Fen, hinter der Zementfabrik, wurde eine Gruppe von Sumpfblutsaugern gesichtet. Die Stalker vor Ort haben Sie gebeten, sie auszuschalten. + + + Jagd: Belohnung fr das Tten der Sumpfblutsauger bei Trapper holen + + + Die Sumpfblutsauger sind tot. Sie sollten sich bei Trapper die Belohnung abholen, die die Stalker vor Ort zusammengelegt haben. + + + Jagd bei Nacht: Chimre tten + + + Chimren sind nachtaktive Raubtiere und niemand wei, wo sich diese Chimre tagsber versteckt. Sie mssen sie nachts tten, wenn sie bei der Belftungsanlage auftaucht, um zu jagen. + + + Jagd bei Nacht: Trapper mitteilen, dass die Chimre tot ist + + + Die Chimre ist tot und Fox der Jger wurde gercht. Setzen Sie Trapper davon in Kenntnis. + + + Werkzeug: Nitro Werkzeug bringen + + + Nitro hat Sie gebeten, ihm zwei Werkzeugsets zu beschaffen: Eines fr einfache Arbeiten und eines fr feinere Arbeiten. Der Techniker wird Sie fr das Werkzeug bezahlen und damit bessere Modifikationen fr Waffen und Panzerung durchfhren knnen. + + + Werkzeug: Nitro Werkzeug bringen + + + Nitro hat Sie gebeten, ihm zwei Werkzeugsets zu beschaffen: Eines fr einfache Arbeiten und eines fr Kalibrierungsarbeiten. Der Techniker wird Sie fr das Werkzeug bezahlen und damit bessere Modifikationen fr Waffen und Panzerung durchfhren knnen. + + + Werkzeug: Nitro Werkzeug bringen + + + Nitro hat Sie gebeten, ihm Werkzeug fr einfache Arbeiten zu beschaffen. Der Techniker wird Sie fr das Werkzeug bezahlen und damit bessere Modifikationen fr Waffen und Panzerung durchfhren knnen. + + + Werkzeug: Nitro Werkzeug bringen + + + Nitro hat Sie gebeten, ihm zwei Werkzeugsets zu beschaffen: Eines fr feinere Arbeiten und eines fr Kalibrierungsarbeiten. Der Techniker wird Sie fr das Werkzeug bezahlen und damit bessere Modifikationen fr Waffen und Panzerung durchfhren knnen. + + + Werkzeug: Nitro Werkzeug bringen + + + Nitro hat Sie gebeten, ihm Werkzeug fr feinere Arbeiten zu beschaffen. Der Techniker wird Sie fr das Werkzeug bezahlen und damit bessere Modifikationen fr Waffen und Panzerung durchfhren knnen. + + + Werkzeug: Nitro Werkzeug bringen + + + Nitro hat Sie gebeten, ihm Werkzeug fr Kalibrierungsarbeiten zu beschaffen. Der Techniker wird Sie fr das Werkzeug bezahlen und damit bessere Modifikationen fr Waffen und Panzerung durchfhren knnen. + + + Werkzeug: Nitro Werkzeug bringen + + + Nitro hat Sie gebeten, ihm drei Werkzeugsets zu beschaffen: Eines fr einfache, eines fr feinere und eines fr Kalibrierungsarbeiten. Der Techniker wird Sie fr das Werkzeug bezahlen und damit bessere Modifikationen fr Waffen und Panzerung durchfhren knnen. + + + Pripyat 1: Schutzanzug mit geschlossenem Atemkreislauf finden + + + Sie bentigen einen Schutzanzug mit geschlossenem Atemkreislauf, um die Unterfhrung "Pripyat 1" benutzen zu knnen, weil sie mit einer Mischung aus Kohlenstoffdioxid und einem unbekannten Zusatzstoff geflutet wurde. + + + Pripyat 1: Strider zu Zulu bringen + + + Sie mssen Strider zu Zulu bringen und ihn als neues Mitglied des Trupps vorstellen. Zulu drfte es nicht gerne sehen, wenn ein Kmpfer in einem Monolitheranzug ganz alleine auftaucht. + + + Pripyat 1: Mit Strider ber einen Schutzanzug reden + + + Die Unterfhrung "Pripyat 1" wurde mit einer Mischung aus Kohlenstoffdioxid und einem unbekannten Zusatzstoff geflutet. Sie mssen Strider darber informieren, dass er einen Schutzanzug mit geschlossenem Atemkreislauf bentigt, um durch die Unterfhrung zu gelangen. + + + Pripyat 1: Trupp fr den Weg nach Pripyat zusammenstellen + + + Nitro hat es geschafft, den Eingang zur Unterfhrung "Pripyat 1" zu ffnen, aber er weigert sich, ohne Schutz in die Jupiter-Anlage zu gehen. Darber hinaus empfiehlt er, dass Sie sich einige Mnner suchen, die Sie durch die Unterfhrung begleiten sollen. Zulu wre bereits dabei und er hat Ihnen vorgeschlagen, dass Sie neue Rekruten zu ihm schicken. + + + Pripyat 1: Mit Zulu darber reden, nach Pripyat zu gehen + + + Nitro hat es geschafft, den Eingang zur Unterfhrung "Pripyat 1" zu ffnen, aber er weigert sich, ohne Schutz in die Jupiter-Anlage zu gehen. Darber hinaus empfiehlt er, dass Sie sich einige Mnner suchen, die Sie durch die Unterfhrung begleiten sollen. Er hat Ihnen vorgeschlagen, darber mit Zulu zu reden, weil er Ihnen beim Zusammenstellen eines Trupps helfen knnte. + + + Pripyat 1: Sokolow zu Zulu bringen + + + Sokolow hat sich bereit erklrt, nach Pripyat zu gehen, und knnte einen wissenschaftlichen Schutzanzug nehmen, wenn er den Bunker verlsst. Sie sollten ihn zu Zulu bringen und ihn als ein neues Mitglied des Trupps vorstellen. + + + Pripyat 1: Mit Sokolow ber einen Schutzanzug reden + + + Pripyat 1: Mit Oserski ber einen Schutzanzug fr Sokolow reden + + + Sokolow ist bereit, einen wissenschaftlichen Schutzanzug zu tragen, aber Hermann wird ihn wohl keinen aus dem Bunker nehmen lassen. Sie sollten mit Oserski reden - er ist freundlicher und man kann sich besser mit ihm unterhalten. + + + Pripyat 1: Sokolow vom wissenschaftlichen Schutzanzug berichten + + + Oserski freut sich sehr ber die Pflanzenprobe. Er hat Sie gebeten, Sokolow mitzuteilen, dass er seinen wissenschaftlichen Schutzanzug bei Hermann abholen kann. + + + Die Unterfhrung "Pripyat 1" wurde mit einer Mischung aus Kohlenstoffdioxid und einem unbekannten Zusatzstoff geflutet. Sie mssen Sokolow darber informieren, dass er einen Schutzanzug mit geschlossenem Atemkreislauf bentigt, um durch die Unterfhrung zu gelangen. + + + Pripyat 1: Wano Geld fr den Schutzanzug geben + + + Der Schutzanzug, fr den Wano den Banditen Geld geschuldet hat, verfgt ber einen geschlossenen Atemkreislauf. Wano musste ihn als Pfand fr seine Schulden hergeben. Jetzt bentigt er 3.000, um den Schutzanzug zurckzukaufen. + + + Pripyat 1: Wano zu Zulu bringen + + + Wano erklrt sich bereit, nach Pripyat zu gehen. Sie mssen ihn zu Zulu bringen und ihn als neues Mitglied des Trupps vorstellen. Auf dem Weg kann Wano seinen Schutzanzug zurckkaufen. + + + Pripyat 1: Mit Wano ber einen Schutzanzug reden + + + Die Unterfhrung "Pripyat 1" wurde mit einer Mischung aus Kohlenstoffdioxid und einem unbekannten Zusatzstoff geflutet. Sie mssen Wano darber informieren, dass er einen Schutzanzug mit geschlossenem Atemkreislauf bentigt, um durch die Unterfhrung zu gelangen. + + + Flint, auch bekannt unter dem Namen Magpie, ist ein hinterhltiger Scheikerl. Sie sollten die Stalker in Zaton oder die anderen Fraktionen ber ihn aufklren. Das drfte eine gute Lektion fr ihn sein. + + + Flint ist ganz klar ein Angeber und redet von Dingen, die er nicht einmal mit eigenen Augen gesehen hat. Es wre nicht schlecht, seinen Schwindel auffliegen zu lassen. + + + Fremde Lorbeeren: Um Flint kmmern + + + Flint schmckt sich ganz offensichtlich mit fremden Lorbeeren. Er muss kapieren, wann er besser die Klappe halten sollte. + + + Flints Angeberei ist kaum zu fassen - Sie sollten mit ihm reden und ihn von Ihrem Standpunkt berzeugen. + + + Flint, auch bekannt unter dem Namen Magpie, ist ein hinterhltiger Scheikerl. Sie sollten die Stalker in Zaton oder die anderen Fraktionen ber ihn aufklren. Das wre die perfekte Rache. + + + Anomalieforschung: Scanner vom Techniker besorgen + + + Besorgen Sie sich Scanner von Nowikow. Hermann mchte Daten ber Artefaktformationen sammeln und die Scanner mssen dafr in den Zentren verschiedener Anomalien aufgestellt werden. + + + Anomalieforschung: Scanner in der Anomalie platzieren + + + Anomalieforschung: Belohnung abholen + + + Holen Sie sich Ihre Belohnung dafr ab, dass Sie die Scanner in den Anomalien aufgestellt haben. Jetzt kann Hermann seine Daten ber Artefaktformationen sammeln. + + + Stellen Sie den Scanner im Zentrum der Anomalie auf. Hermann mchte Daten ber Artefaktformationen sammeln und die Scanner mssen dafr in den Zentren verschiedener Anomalien aufgestellt werden. + + + Ein Vertrag mit den Wissenschaftlern: Gari das Kolobok-Artefakt bringen + + + Gari braucht das Kolobok-Artefakt, um seinen Vertrag mit den Wissenschaftlern zu erfllen. Besorgen Sie ihm dieses Artefakt. + + + Ein Vertrag mit den Wissenschaftlern: Gari das Fleischklumpen-Artefakt bringen + + + Gari braucht das Fleischklumpen-Artefakt, um seinen Vertrag mit den Wissenschaftlern zu erfllen. Besorgen Sie ihm dieses Artefakt. + + + Ein Vertrag mit den Wissenschaftlern: Gari das Kolobok- und das Fleischklumpen-Artefakt bringen + + + Gari braucht das Kolobok- und das Fleischklumpen-Artefakt, um seinen Vertrag mit den Wissenschaftlern zu erfllen. Besorgen Sie ihm diese Artefakte. + + + Ein Vertrag mit den Wissenschaftlern: Artefakte geliefert + + + Gari hat beide Artefakte erhalten und damit seinen Vertrag erfllt. + + + Wchtergeschichte: PDA des Wchtergrnders an Interessenten geben + + + Sie haben den PDA des Grnders der Wchter gefunden, der in einer Anomalie ums Leben gekommen war. Sie sollten den PDA jemandem geben, der an den letzten Momenten im Leben des Anfhrers der Wchter interessiert sein knnte. + + + Anomale Aktivitt: Das Gebiet mit einem verbesserten Detektor untersuchen + + + Die Scanner der Wissenschaftler haben nrdlich des Bunkers ungewhnliche Aktivitten registriert. Untersuchen Sie das Gebiet mit einem verbesserten Detektor. + + + Schutz der Wissenschaftler: Verlssliche Wachen finden + + + Der Bunker der Wissenschaftler wird nicht bewacht. Sie mssen verlssliche Wachen finden, die das bernehmen knnten. + + + Schutz der Wissenschaftler: Belohnung bei Hermann abholen + + + Sie haben Wachen fr den Bunker der Wissenschaftler gefunden und sollten nun zu Hermann zurckkehren, um Ihre verdiente Belohnung zu kassieren. + + + Letzte Entwicklungen: Dokumente in der Jupiter-Anlage finden + + + Hermann interessiert sich fr die letzten Entwicklungen in der Jupiter-Anlage. Finden Sie die Dokumente im Verwaltungsbereich der Anlage. + + + Letzte Entwicklungen: Dokumente zu Hermann bringen + + + Aus den Dokumenten, die Sie gefunden haben, geht hervor, dass die gesamte technische Dokumentation aus der Anlage geschafft wurde. Auch wenn das nicht gerade viel ist, sollten Sie Hermann davon in Kenntnis setzen. + + + Letzte Entwicklungen: Dokumente und Blacks PDA zu Hermann bringen + + + Whrend Ihrer Suche nach den Dokumenten kam es zu einem Angriff durch Sldner. Laut dem PDA, den Sie bei ihrem Anfhrer Black gefunden haben, hatten sie den Auftrag, die Wissenschaftler daran zu hindern, nach den Dokumenten zu suchen. Darber hinaus geht aus den Dokumenten, die Sie gefunden haben, hervor, dass die gesamte technische Dokumentation aus der Anlage geschafft wurde. Sie sollten Hermann darber in Kenntnis setzen und ihm zudem Blacks PDA zeigen. + + + Ehemalige Monolither: Mit Janow-Bewohnern ber Schutz suchende Ex-Monolither reden + + + Ein Trupp von Monolithern konnte sich von dem Bann befreien, der sie unter Kontrolle hielt. Nun suchen sie nach einem Zufluchtsort, wo sie vor Emissionen und Mutanten sicher sind. Sie mssen mit den Bewohnern der Janow-Station sprechen, ob sie die ehemaligen Monolither aufzunehmen bereit sind. + + + Bringen Sie die Rekrutierer der Wchter zu den ehemaligen Monolithern. Wenn sich diese den Wchtern anschlieen, werden sie in der Janow-Station vor Emissionen und Mutanten sicher sein. + + + Bringen Sie die Rekrutierer der Freiheit zu den ehemaligen Monolithern. Wenn sich diese der Freiheit anschlieen, werden sie in der Janow-Station vor Emissionen und Mutanten sicher sein. + + + Ehemalige Monolither: Rekrutierer zu ehemaligen Monolithern bringen + + + Anomalieforschung: Die Stalker beschtzen + + + Wie es scheint, hat das Vornehmen von Messungen in der Anomalie die Aufmerksamkeit von Mutanten erregt. Sie mssen den Stalkern Deckung geben, bis sie alle ntigen Daten gesammelt haben. + + + Anomalieforschung: Die Stalker beschtzen + + + Wie es scheint, hat das Vornehmen von Messungen in der Anomalie die Aufmerksamkeit von Zombies aus Kopatschi erregt. Sie mssen den Stalkern Deckung geben, bis sie alle ntigen Daten gesammelt haben. + + + Anomalieforschung: Mit Hermann reden + + + Die Anomaliemessungen sind abgeschlossen. Informieren Sie die Wissenschaftler und holen Sie sich Ihre Belohnung ab. + + + Anomalieforschung: Mit den Stalkern reden + + + Reden Sie mit dem Stalkertrupp, der die Messungen vornimmt - Sie mssen wissen, welche Anomalie auf dem Plan steht. + + + Anomalieforschung: Mit den Stalkern reden + + + Alle ntigen Messungen wurden vorgenommen. Daher knnen Sie sich zusammen mit dem Trupp wieder auf den Weg zum Bunker der Wissenschaftler machen. + + + Anomalieforschung: Mit den Stalkern reden + + + Die Messungen in der Anomalie wurden vorgenommen. Daher mssen Sie jetzt mit dem Trupp darber reden, wie das nchste Ziel lautet. + + + Anomalieforschung: Die Stalker beschtzen + + + Hermann hat Ihnen den Auftrag angeboten, die Stalker zu beschtzen, whrend sie Messungen in Anomalien vornehmen. + + + Stingray 4: Absturzstelle untersuchen + + + Stingray 4: Herausfinden, warum die Elektronik ausgebrannt ist + + + Untersuchen Sie die Absturzstelle von Stingray 4. + + + Sie mssen die Quelle der starken elektrischen Entladung finden, die Stingray 4 getroffen hat. + + + Stingray 1: Den Flugschreiber einem Techniker zur Entschlsselung geben + + + Der Flugschreiber von Stingray 1 hat den Absturz unbeschadet berstanden. Er muss zur Entschlsselung zu einem Techniker gebracht werden, damit Sie Zugriff auf die aufgezeichneten Informationen bekommen. + + + Stingray 1: Auf die Entschlsselung des Flugschreibers warten + + + Nitro hat sich bereit erklrt, den Flugschreiber zu entschlsseln, und geschtzt, dass es ca. drei Stunden dauern wird. Sie mssen warten, bis er seine Arbeit abgeschlossen hat. + + + Stingray 1: Zu Nitro zurckkehren, um die Flugschreiberinformationen zu erhalten + + + Nitro drfte mittlerweile den Flugschreiber entschlsselt haben. Gehen Sie zu ihm, um die Informationen zu bekommen, die der Flugschreiber enthlt. + + + Stingray 1: Absturzstelle untersuchen + + + Untersuchen Sie die Absturzstelle von Stingray 1. + + + Pripyat 1: Nach Pripyat gehen + + + Sie mssen die Unterfhrung "Pripyat 1" passieren und die militrische Evakuierungsstelle in Pripyat erreichen. + + + Weg nach Pripyat: Chemische Werkstatt in der Jupiter-Anlage untersuchen + + + In der chemischen Werkstatt mssten Informationen ber die Flutung der Unterfhrung "Pripyat 1" mit einer Art Gas zu finden sein. + + + Weg nach Pripyat: Verwaltungsbereich der Jupiter-Anlage untersuchen + + + Der Ortskundige kennt keinen sicheren Weg nach Pripyat, aber er hat eine Idee, wo Sie Informationen ber die unterirdischen Tunnels finden knnten, die von der Jupiter-Anlage zur Stadt fhren. Sie sollten Ihre Suche im Verwaltungsbereich beginnen. + + + Weg nach Pripyat: Laborbereich der Jupiter-Anlage untersuchen + + + In den Dokumenten, die Sie im Verwaltungsbereich gefunden haben, wird die Evakuierung des Produktionskomplexes aus der Jupiter-Anlage erwhnt. Die entsprechenden Informationen ber diesen Vorgang drften im Laborbereich zu finden sein. + + + Weg nach Pripyat: Den Aufzug zur Unterfhrung "Pripyat 1" berprfen + + + Der Eingang zur unterirdischen Unterfhrung befindet sich hinter dem Aufzug. Untersuchen Sie das Gebiet und halten Sie nach jeder Information ber die Unterfhrung Ausschau. + + + Weg nach Pripyat: Abteilung 1 der Jupiter-Anlage untersuchen + + + In der Abteilung 1 mssten sich Informationen ber die Unterfhrung "Pripyat 1" befinden. Diese knnten sich als sehr wichtig erweisen, deswegen sollten Sie sich dort umsehen. + + + Weg nach Pripyat: Versandabteilung der Jupiter-Anlage untersuchen + + + Laut der Notiz in der Laborwerkstatt msste die Evakuierung von der Versandabteilung durchgefhrt worden sein. Aus diesem Grund sollten Sie sich auch dort umsehen. + + + Weg nach Pripyat: Reparaturwerkstatt der Jupiter-Anlage untersuchen + + + Die Versandabteilung hatte Informationen ber Verluste bei dem Transport des sog. Forschungsobjekts 62. Laut den Unterlagen sollte sich die Reparaturwerkstatt um diese Angelegenheit kmmern - Sie sollten sich dort umsehen. + + + Weg nach Pripyat: Mit dem Ortskundigen reden + + + Aus den Aufzeichnungen des Flugschreibers aus einem der Hubschrauber geht hervor, dass die militrischen Einheiten bei der Evakuierungsstelle B28 zusammentreffen sollten. Laut den Karten aus einem der Hubschrauber, die bei der Mission eingesetzt wurden, befindet sich diese Evakuierungsstelle in Pripyat. Sie mssen einen Weg dorthin finden. Sprechen Sie mit dem Ortskundigen darber. + + + Lagerhaus der Wchter: Freie Wahl + + + Lagerhaus der Wchter: Morgan treffen + + + Der Hndler Morgan bietet Ihnen als Gegenleistung dafr, dass Sie Stillschweigen ber seine Geschfte bewahren, Zugang zum Lagerhaus der Wchter. Sie mssen sich mit ihm wie abgemacht beim Steinbruch treffen. + + + Sie mssen das Tor ffnen, um weitergehen zu knnen. + + + Sie mssen die Tr ffnen, um weitergehen zu knnen. + + + Sie mssen die Stromversorgung zum Tor aktivieren, um weitergehen zu knnen. + + + Sie mssen das Tor aufschlieen, um weitergehen zu knnen. Dies kann vermutlich im Kontrollraum erledigt werden. + + + Forschungsgruppe: Die richtigen Leute anheuern + + + Eine Forschungsgruppe, die fr die Wissenschaftler gearbeitet hat, ist verschwunden. Sie mssen eine neue Gruppe zusammenstellen, damit die Arbeit fortgesetzt werden kann. + + + Forschungsgruppe: Bei Hermann die Belohnung abholen + + + Sie haben die passenden Leute fr eine neue Forschungsgruppe aufgetrieben. Kehren Sie jetzt zu Hermann zurck, um Ihre Belohnung zu kassieren. + + + Pripyat 1: Oserskis Mission abschlieen + + + Sie mssen Oserskis Mission mit der anomalen Pflanze abschlieen, um einen Schutzanzug fr Sokolow zu bekommen. + + + Nitro braucht Funktechnikmaterialien. Sie mssen in der Zementfabrik danach suchen. + + + Es war Flint, der Splitter in der Anomalie zurckgelassen hat. Reden Sie mit ihm und finden Sie heraus, warum er das getan hat. + + + Vergeltung: Splitter rchen + + + Finden Sie heraus, wer Splitter in einer Anomalie zurckgelassen und sich mit seinem Artefakt aus dem Staub gemacht hat. Leider konnte Splitter den Namen des beltters nicht mehr verraten, daher ist ber ihn nur bekannt, dass er ein Freiheitler ist. + + + Oberstleutnant Shulga hat Ihnen die Erlaubnis erteilt, jede beliebige Ausrstung aus dem Lagerhaus der Wchter zu nehmen, wenn Sie es erobern knnen. + + + Loki hat Ihnen die Erlaubnis erteilt, jede beliebige Ausrstung aus dem Lagerhaus der Wchter zu nehmen, solange es von der Freiheit kontrolliert wird. + + diff --git a/gamedata/configs/text/ger/st_quests_pripyat.xml b/gamedata/configs/text/ger/st_quests_pripyat.xml new file mode 100644 index 0000000..fc328b0 --- /dev/null +++ b/gamedata/configs/text/ger/st_quests_pripyat.xml @@ -0,0 +1,345 @@ + + + + Forschungsobjekt 62: Dokumente in der Testwerkstatt finden + + + Sie mssen Dokumente ber Forschungsobjekt 62 finden. Diese sollten Klarheit darber bringen, ob die Hubschrauber mit dieser Waffe abgeschossen worden sein knnten. + + + Unbekannte Waffe: Schutz im Gebude suchen + + + Sie mssen Schutz in dem Gebude suchen und den Angriff der Monolither abwehren. + + + Unbekannte Waffe: Informationen finden + + + Die Waffe funktioniert nicht und es ist auch nicht klar, wie sie funktionieren knnte. Sie mssen einen Techniker finden, der mehr mit der unbekannten Waffe anfangen kann. + + + Unbekannte Waffe: Den Anfhrer des Monolithertrupps tten + + + Sie mssen den Anfhrer des Monolithertrupps tten, der die unbekannte Waffe benutzt. + + + Unbekannte Waffe: Tote Monolither durchsuchen + + + Die Monolither mssten die unbekannte Waffe bei sich haben - finden Sie sie. + + + Unbekannte Waffe: Mit Kardan reden + + + Kardan drfte seinen Kater mittlerweile ausgeschlafen haben. Sprechen Sie mit ihm ber die unbekannte Waffe. + + + Unbekannte Waffe: Warten, bis Kardan wieder zu sich kommt + + + Kardan wei vermutlich mehr ber die Waffe. Sie mssen sich mit ihm unterhalten, wenn er wieder aufwacht. + + + Gaugewehr: Kowalski von der Waffe berichten + + + Sie mssen Kowalski alles berichten, was Sie ber Forschungsobjekt 62 in Erfahrung bringen konnten. + + + Unbekannte Waffe: Dem Trupp anschlieen + + + Sie mssen sich dem Spezialtrupp anschlieen, um gemeinsam in den Besitz der Waffe zu kommen. + + + Unbekannte Waffe: Die Waffe nehmen + + + Nehmen Sie die Waffe des Anfhrers der Monolither an sich. + + + Unbekannte Waffe: Die Waffe zu Kowalski bringen + + + Sie haben die Waffe - jetzt sollten Sie sie Kowalski zeigen und herausfinden, ob die Waffe den Absturz der Hubschrauber verursacht haben knnte. + + + Unbekannte Waffe: Am Hinterhalt gegen die Monolither teilnehmen + + + Der Armeesphtrupp bereitet einen Hinterhalt gegen den Monolithertrupp vor. Sie sollten sich daran beteiligen. + + + Monolitherkmpfer: Verstrkung treffen + + + Kowalski hat Verstrkung geschickt, die Ihnen beim Ausschalten der Monolither helfen soll, die sich in den Buchladen verkrochen haben. + + + Monolitherkmpfer: Buchladen subern + + + Sie mssen alle Monolither in dem Gebude ausschalten. Groe Monolithereinheiten stellen eine Bedrohung fr das Armeelager dar. + + + Monolitherkmpfer: Seltsames Gert untersuchen + + + In dem Gebude sind Sie auf ein seltsames Gert gestoen. Untersuchen Sie es. + + + Labor X8: Dokumente ber Experimente finden + + + Die Informationen, die Sie gefunden haben, beziehen sich auf ein Zentrallabor, das als X8 bezeichnet wird. Dort knnten Sie Informationen ber geheime Experimente in der Zone finden. + + + Verschwundene Spher: Trupp finden + + + Der Sphtrupp, den Kowalski losgeschickt hatte, ist nach merkwrdigem Funkkontakt verschwunden. Sie mssen ihn finden, um herauszufinden, was geschehen ist. + + + Verschwundene Wache: Gebiet untersuchen, in dem die Wache gestorben ist + + + Die Wache benahm sich sehr seltsam. Sie sollten den Grund dafr herausfinden. + + + Verschwundene Wache: Wache finden + + + Einer der Soldaten ist nicht mehr auf seinem Posten - Sie mssen herausfinden, warum er verschwunden ist. + + + Verschwundene Wache: Controller tten + + + In der Nhe der verschwundenen Wache trieb ein Controller sein Unwesen - er muss ausgeschaltet werden. + + + Funkstrung: Verschwundenen Trupp finden + + + Der Trupp, der auf der Suche nach der Quelle der Funkstrung war, ist verschwunden - Sie mssen ihn finden. + + + Funkstrung: Leichen durchsuchen + + + Durchsuchen Sie die Leichen - vielleicht knnen Sie so herausfinden, wie die Personen gestorben sind. + + + Funkstrung: Leiche durchsuchen + + + Durchsuchen Sie die Leiche - vielleicht knnen Sie so herausfinden, wie die Person gestorben ist. + + + Funkstrung: Tr aufsprengen + + + Sie mssen mit Sprengstoff die Tr aufsprengen, um in das Gebude gelangen zu knnen. + + + Funkstrung: Gerusch untersuchen + + + Aus dem Khlschrank sind Gerusche zu hren - es scheint so, als ob jemand darin eingeschlossen wre. berprfen Sie das. + + + Funkstrung: Die Quelle der Strung zerstren + + + Sie haben die Quelle der Funkstrung entdeckt - jetzt mssen Sie sie zerstren. + + + Funkstrung: Die Quelle der Strung finden + + + In dem Gebude befindet sich eine Quelle der Funkstrung - finden Sie sie. + + + Funkstrung: Sprengstoff finden + + + Der Trupp, der auf der Suche nach der Quelle der Funkstrung war, hatte Sprengstoff dabei. Finden Sie diesen, um den Eingang in das Gebude freizusprengen. + + + Funkstrung: Das Kindergartengebude betreten + + + Die Signalquelle befindet sich irgendwo im Kindergartengebude, deswegen mssen Sie es betreten. + + + Evakuierung: Der Armee helfen + + + Strelok mag zwar tot sein, aber Sie mssen der Armee immer noch helfen, zu den Hubschraubern zu gelangen. + + + Evakuierung: Strelok helfen + + + Das Hauptquartier interessiert sich fr die Informationen, die Strelok zu bieten hat. Sie mssen ihn zu den Hubschraubern geleiten. + + + Evakuierung: Zu den Hubschraubern gelangen + + + Es ist niemand mehr am Leben - Sie mssen es alleine bis zu den Hubschraubern schaffen. + + + Evakuierung: Mit Kowalski reden + + + Sie mssen mit Kowalski reden, bevor die Evakuierung beginnt. + + + Evakuierung: Kowalski mitteilen, dass Sie bereit sind + + + Sie sollten Kowalski darber informieren, dass Sie bereit sind, die Evakuierung zu starten. + + + Evakuierung: Auf das Ende der Emission warten + + + Sie mssen warten, bis die Emission vorbei ist. + + + Unbekannt: Die Quelle des Signals finden + + + Kirilloff hat in der Nhe der Basis ein seltsames Signal geortet. Sie mssen die Quelle dieses Signals finden. + + + Unbekannt: Dem Signal folgen + + + Die Koordinaten des Signals stehen wieder zur Verfgung, folgen Sie ihnen. + + + Unbekannt: Den letzten bekannten Ort des Signals untersuchen + + + Das Signal hat im Hof des Gebudes ausgesetzt. Untersuchen Sie daher den letzten bekannten Ort des Signals. + + + Unbekannt: Bereit machen fr Angriff auf die Basis + + + Kehren Sie zur Armeebasis zurck und machen Sie sich fr einen wahrscheinlichen Angriff bereit. + + + Funkstrung: Mit Kowalski reden + + + Oberst Kowalski mchte sich mit Ihnen unterhalten. + + + Labor X8: In den Aufzugschacht gelangen + + + Der Eingang zum unterirdischen Labor befindet sich unter dem Servicezentrum Jubilejni. Und der einzige Weg dorthin fhrt durch den Aufzugschacht. + + + Labor X8: Generator finden + + + Die Stromversorgung fr die Tren des Aufzugschachts wurde unterbrochen. Um sie zu ffnen, mssen Sie den Notfallgenerator finden und aktivieren. + + + Labor X8: Ins Labor hinabsteigen + + + Sie mssen den Aufzug benutzen, um in das Labor X8 zu gelangen, das sich unter dem Servicezentrum Jubilejni befindet. + + + Ein Schuss: Boten ausschalten + + + Sie mssen den Boten eliminieren. Wenn er tot ist, werden die Sldner das Labor nicht finden knnen. + + + Ein Schuss: Auf die Mnner des Auftraggebers warten + + + Warten Sie auf die Mnner des Auftraggebers und tten Sie dann ihren Anfhrer. Wenn er tot ist, werden die Sldner das Labor nicht finden knnen. + + + Ein Schuss: Anfhrer des Sldnertrupps tten + + + Sie mssen den Anfhrer des Sldnertrupps ausschalten. Wenn er tot ist, werden die Sldner keine groe Gefahr mehr darstellen. + + + Ein Schuss: Auf die Sldner warten + + + Warten Sie auf die Sldner und tten Sie dann ihren Anfhrer. Wenn er tot ist, werden die Sldner keine groe Gefahr mehr darstellen. + + + Ein Schuss: Mit Kowalski reden + + + Berichten Sie Kowalski vom Ausgang der Mission. + + + Labor X8: Unterirdischen Komplex verlassen oder weiter nach Dokumenten suchen + + + Sie haben Dokumente gefunden und knnen jetzt das Labor verlassen. Allerdings knnten sich im Komplex noch weitere Dokumente befinden. + + + Labor X8: Unterirdischen Komplex verlassen oder weiter nach Dokumenten suchen + + + Sie haben Dokumente gefunden und knnen jetzt das Labor verlassen. Allerdings knnten sich im Komplex noch weitere Dokumente befinden. + + + Labor X8: Unterirdischen Komplex verlassen + + + Es sieht so aus, als ob Sie alle Dokumente im Labor gefunden htten. Sie knnen den unterirdischen Komplex jetzt verlassen. + + + Monolitherkmpfer: Auf Verstrkung warten + + + Sie mssen auf die Verstrkung, die Kowalski geschickt hat, warten, um die Monolither im Buchladen ausschalten zu knnen. + + + Unter vier Augen: Mit Kowalski reden + + + Sie mssen mit Kowalski reden. Es sieht so aus, als ob er etwas Wichtiges zu sagen htte. + + + Evakuierung: Bei den Hubschraubern warten + + + Sie mssen die Hubschrauber vor den Gegnern beschtzen, bis sie starten knnen. + + + Evakuierung: Den Arzt wiederbeleben + + + Es sieht so aus, als ob der Arzt erneut von Unbekannten getroffen wurde. Beleben Sie ihn so schnell wie mglich wieder. + + + Evakuierung: Zu den Hubschraubern zurckkehren + + + Sie mssen zu den Hubschraubern zurckkehren, weil sie jetzt jeden Moment starten knnten. + + + Evakuierung: Sofort zu den Hubschraubern zurckkehren + + + Die Hubschrauber sind bereit zu starten. Sie mssen sofort an Bord gehen - die Piloten knnen nicht mehr viel lnger warten. + + diff --git a/gamedata/configs/text/ger/st_quests_zaton.xml b/gamedata/configs/text/ger/st_quests_zaton.xml new file mode 100644 index 0000000..e4047b6 --- /dev/null +++ b/gamedata/configs/text/ger/st_quests_zaton.xml @@ -0,0 +1,780 @@ + + + + Sicherer Hafen: Skadowsk erreichen + + + Die einzigen sicheren Orte in der Zone sind groe Lager. Das nchstliegende Lager wre das Schiff Skadowsk - und dorthin sollten Sie sich begeben. + + + Umgebungskarten: Interessenten fr die Karten finden + + + Umgebungskarten: Pilot die Karten anbieten + + + Mglicherweise htte Pilot, der hiesige Ortskundige, Interesse an den Karten des Gebiets zwischen Zaton und Jupiter. + + + Stingray 2: Absturzstelle untersuchen + + + Untersuchen Sie die Absturzstelle von Stingray 2. + + + Stingray 5: Absturzstelle untersuchen + + + Stingray 5: Herausfinden, warum die Elektronik ausgebrannt ist + + + Stingray-Einheit: Die Quelle der Entladungen finden, die die beiden Hubschrauber getroffen haben + + + Untersuchen Sie die Absturzstelle von Stingray 5. + + + Sie mssen die Quelle der starken elektrischen Entladung finden, die Stingray 5 getroffen hat. + + + Sie mssen herausfinden, warum die Elektronik von Stingray 4 und Stingray 5 ausgebrannt ist. Offensichtlich wurden die Hubschrauber von starken elektrischen Entladungen getroffen. + + + Proviant: Lebensmittel fr die Sldner besorgen + + + Der Sldnertrupp in den Werksttten des Umspannwerks hat Sie gebeten, sechs Dosen Fleisch, Wrste oder Brot zu besorgen. + + + Proviant: Die Lebensmittel zu den Sldnern bringen + + + Sie mssen die Lebensmittel, die Sie besorgt haben, zu den Sldnern in den Werksttten des Umspannwerks bringen. + + + Werkzeug: Die Werksttten des Umspannwerks untersuchen + + + In den Werksttten des Umspannwerks soll es Werkzeug geben. Vielleicht finden Sie dort sogar das Werkzeug, das der Techniker braucht. + + + Jagd auf die Chimre: Den Mutanten finden, solange er schlft + + + Sie mssen die Chimre finden, bevor sie aufwacht. + + + Auf der Suche nach Magpie: Gonta informieren + + + Wie es scheint, wurde der Stalker namens Magpie, der Gontas Trupp hereingelegt hat, gefunden. Er hat sich mittlerweile der Freiheit angeschlossen und ist dort unter dem Namen Flint bekannt. + + + Jagd auf die Chimre: Den Mutanten tten + + + Die Chimre ist aufgewacht und Sie sollten sie tten, bevor es zu spt ist. + + + Jagd auf die Chimre: Gonta um 3:00 Uhr in der Bar treffen + + + Sie sollten sich vor Sonnenaufgang mit Gonta treffen, um sich seinem Trupp bei der Jagd auf die Chimre anzuschlieen. + + + Jagd auf die Chimre: Trapper informieren + + + Sie sollten den Stalker Trapper informieren, dass die Jagd auf die Chimre erfolgreich war. Er drfte Sie dafr belohnen. + + + Auf der Suche nach Magpie: Den Stalker finden + + + Ein Stalker namens Magpie hat Gontas Trupp hereingelegt, sodass die Mnner von einer Chimre angegriffen wurden. Sie haben Sie gebeten, den Mistkerl zu finden. + + + Evakuierungsstellen: Position B205 untersuchen + + + Auf der Karte, die Sie in einem der Hubschrauber gefunden haben, sind Evakuierungsstellen eingezeichnet. Sie sollten berprfen, ob die Soldaten zu Position B205 gegangen sind. + + + Evakuierungsstellen: Position B28 untersuchen + + + Auf der Karte, die Sie in einem der Hubschrauber gefunden haben, sind Evakuierungsstellen eingezeichnet. Sie sollten berprfen, ob die Soldaten zu Position B28 gegangen sind. + + + Evakuierungsstelle: Koordinaten von Position B28 herausfinden + + + In einer Aufnahme auf dem Flugschreiber aus einem der Stingray-Hubschrauber erwhnt der Kommandeur eine Position, bei der die Einheiten zusammentreffen sollen. Dabei handelt es sich um die Evakuierungsstelle B28 und Sie mssen die Koordinaten dieser Stelle herausfinden. + + + Evakuierungsstelle: Position B28 erreichen + + + Die Position, an der die Soldaten zusammentreffen sollen, befindet sich in Pripyat. Finden Sie einen Weg dorthin. + + + Evakuierungsstellen: Position B2 untersuchen + + + Auf der Karte, die Sie in einem der Hubschrauber gefunden haben, sind Evakuierungsstellen eingezeichnet. Sie sollten berprfen, ob die Soldaten zu Position B2 gegangen sind. + + + Seltsames Phnomen: Das Artefakt zu Beard bringen + + + Die Quelle des seltsamen Leuchtens war ein ebenso seltsames Artefakt. Es drfte fr Beard von Interesse sein. + + + Seltsames Phnomen: Stalker ber das Artefakt befragen + + + Die Stalker knnten etwas ber das seltsame Artefakt wissen oder jemanden kennen, der mehr darber wei. Sie sollten sich mit ihnen unterhalten. + + + Seltsames Phnomen: Die Quelle des Leuchtens beim Baggerschiff finden + + + Beim Baggerschiff wurde ein seltsames Leuchten beobachtet. Beard hat Sie gebeten, die Quelle dieses Phnomens zu ermitteln. + + + Seltsames Phnomen: Das Artefakt nehmen + + + Die Quelle des seltsamen Leuchtens war ein ebenso seltsames Artefakt. Sie sollten es nehmen. + + + Seltsames Phnomen: Beard vom Artefakt berichten + + + Die Quelle des seltsamen Leuchtens war ein ebenso seltsames Artefakt. Auch wenn es sich nicht in Ihrem Besitz befindet, sollten Sie Beard davon berichten. + + + Zum Plateau: In die Anomalie springen + + + Offensichtlich fhrt der Weg auf das Plateau durch die Anomalie. Sie mssen hineinspringen. + + + Zum Plateau: Noahs geheimen Weg finden + + + Auf Noahs PDA ist die Rede von seinem "geheimen Weg" auf das Plateau. Diesen mssen Sie finden. + + + Zum Plateau: Herausfinden, wie Sie von Noah aus dorthin gelangen + + + Es heit, dass ein Stalker namens Noah den Weg auf das Plateau kennt. Sie mssen in Erfahrung bringen, wie man dorthin gelangen kann. + + + Verschwundene Stalker: Beweise zurckbringen, dass Tremor etwas damit zu tun hatte + + + Sie mssen den PDA mit Tremors Aufnahmen zur Skadowsk bringen und Beard zeigen. Die Aufnahmen machen deutlich, dass der Arzt fr das Verschwinden der Stalker verantwortlich ist. + + + Verschwundene Stalker: Beweise finden, dass Tremor etwas damit zu tun hatte + + + Sie mssen berprfen, ob Tremor irgendwelche Beweise zurckgelassen hat, die besttigen, dass er fr das Verschwinden der Stalker verantwortlich ist. + + + Stingray 3: Absturzstelle untersuchen + + + Untersuchen Sie die Absturzstelle von Stingray 3. + + + Sie mssen das Artefakt zu Beard bringen, aber die Zeit, die Ihnen als Vorsprung gewhrt wurde, ist abgelaufen. Jetzt sind auch Ihre Konkurrenten auf der Suche nach dem Artefakt. + + + Sie mssen das Artefakt zu Beard bringen. Aber vergessen Sie nicht: Ihre Konkurrenten suchen ebenfalls danach. + + + Sie mssen das Artefakt zu Beard bringen, aber es wird berichtet, dass eine andere Gruppe bereits fndig geworden sei. Sie sollten dem Signal folgen und den Auftrag so schnell wie mglich ausfhren, bevor Ihre Konkurrenten es schaffen. + + + Sie mssen das Artefakt zu Beard bringen, aber eine andere Gruppe hat das bereits getan. Jetzt werden Sie nur die Hlfte fr das Artefakt bekommen. + + + Sie mssen das Artefakt zu Beard bringen. + + + Artefaktbestellung: "Gravit" abliefern + + + Artefaktbestellung: "Auge" abliefern + + + Artefaktbestellung: "Blase" abliefern + + + Artefaktbestellung: "Muschel" abliefern + + + Artefaktbestellung: "Goldfisch" abliefern + + + Artefaktbestellung: "Flamme" abliefern + + + Artefaktbestellung: "Feuerfliege" abliefern + + + Artefaktbestellung: "Schneeflocke" abliefern + + + Sie mssen fr Beard das Artefakt finden, aber die Zeit, die Ihnen als Vorsprung gewhrt wurde, ist abgelaufen. Jetzt sind auch Ihre Konkurrenten auf der Suche nach dem Artefakt. + + + Sie mssen fr Beard das Artefakt finden. Aber vergessen Sie nicht: Ihre Konkurrenten suchen ebenfalls danach. + + + Sie mssen fr Beard das Artefakt finden, aber es wird berichtet, dass eine andere Gruppe bereits fndig geworden sei. Sie sollten dem Signal folgen und den Auftrag so schnell wie mglich ausfhren, bevor Ihre Konkurrenten es schaffen. + + + Sie mssen fr Beard das Artefakt finden, aber eine andere Gruppe hat bereits geliefert. Jetzt werden Sie nur die Hlfte fr das Artefakt bekommen. + + + Sie mssen fr Beard das Artefakt finden. + + + Artefaktbestellung: "Gravit" finden + + + Artefaktbestellung: "Auge" finden + + + Artefaktbestellung: "Blase" finden + + + Artefaktbestellung: "Muschel" finden + + + Artefaktbestellung: "Goldfisch" finden + + + Artefaktbestellung: "Flamme" finden + + + Artefaktbestellung: "Feuerfliege" finden + + + Artefaktbestellung: "Schneeflocke" finden + + + Kompass: Noah finden und in Erfahrung bringen, wo Sie das seltene Artefakt finden knnen + + + Sie mssen Noah auf dem alten Schiff finden und in Erfahrung bringen, wo Sie das seltene Kompass-Artefakt finden knnen. Beard sucht schon sehr lange danach und ist bereit, viel Geld dafr zu zahlen. + + + Kompass: Das Artefakt zu Beard bringen + + + Kompass: Von Noah in Erfahrung bringen, wo Sie das seltene Artefakt finden knnen + + + Sultan interessiert sich ebenfalls fr das Artefakt, das Beard sucht. Sie mssen Noah auf dem alten Schiff finden und in Erfahrung bringen, wo Sie das Artefakt finden knnen. + + + Kompass: Das Artefakt zu Sultan bringen + + + Das Artefakt, das Sie von Noah erhalten haben, ist der Kompass, den Sultan sucht. + + + Dunkle Geschfte: Ihren Anteil bei Beard kassieren + + + Sie sollten sich Ihren Anteil an Beards Einnahmen bei ihm holen. + + + Verfhrerische Geschfte: Mit Sultan reden + + + Der Hndler Uhu glaubt, dass Beard sich nicht an die Vereinbarung hlt, und hat Ihnen vorgeschlagen, dass Sie Sultan, den rtlichen Gangsterboss, um Hilfe bitten. + + + Dunkle Geschfte: Den Stalkern die Detektoren abnehmen + + + Sie mssen den Stalkern, die fr Beard nach Artefakten suchen, um jeden Preis die Detektorprototypen abnehmen. Ohne Detektoren wird er Sultans Bedingungen akzeptieren. + + + Dunkle Geschfte: Mit Sultan reden + + + Beard hat keine Detektoren, deswegen sollten Sie mit Sultan reden, um herauszufinden, ob er das Problem mit Beards anderen Lieferanten gelst hat. + + + Dunkle Geschfte: Beard zwingen, fr Sultan zu arbeiten + + + Jetzt da Beard keine Detektoren oder Lieferanten mehr hat, sind ihm die Hnde gebunden. Zwingen Sie ihn, fr Sultan zu arbeiten. + + + Dunkle Geschfte: Mehr ber Beards momentane Geschfte herausfinden + + + Sie mssen herausfinden, welchen Geschften Beard im Moment nachgeht. Das wird Ihnen dabei helfen, seine Versorgungskanle zu schlieen. + + + Dunkle Geschfte: Den Stalkern den zweiten Detektor abnehmen + + + Sie mssen den Stalkern, die fr Beard nach Artefakten suchen, um jeden Preis die Detektorprototypen abnehmen. Ohne Detektoren wird er Sultans Bedingungen akzeptieren. + + + Verfhrerische Geschfte: Nowikow drei Veles-Detektoren bringen + + + Der Hndler Uhu hat Ihnen ein lukratives Geschft vorgeschlagen. Sie sollen drei Veles-Detektoren finden und in den Bunker der Wissenschaftler zu Nowikow bringen. + + + Verfhrerische Geschfte: Warten, bis Uhu die Detektoren erhlt + + + Nowikow hat die Detektoren angenommen und versprochen, sie Uhu zurckzuschicken. Sie mssen warten, bis er die Arbeit mit den Detektoren abgeschlossen hat, und danach von Uhu die Ergebnisse in Erfahrung bringen. + + + Verfhrerische Geschfte: Mit Uhu reden + + + Der Hndler Uhu hat Sie per Funk kontaktiert und Ihnen erzhlt, dass er Probleme hat. Er wrde Sie gerne treffen. + + + Verfhrerische Geschfte: Beard berzeugen, sich an die Vereinbarung zu halten + + + Der Hndler Uhu glaubt, dass Beard sich nicht an die Vereinbarung hlt. Sie mssen mit ihm reden und ihn davon berzeugen, nicht mehr gegen die Vereinbarung zu verstoen. + + + Verfhrerische Geschfte: Ihren Anteil von Uhu verlangen + + + Beard ist der Meinung, dass er Uhu nichts schuldet - Sie mssen herausfinden, wer Recht hat, und dann von dieser Person Ihren Anteil einfordern. + + + Snag hat Sie gebeten, ihm seine Kiste zu bringen. Er hat sie in einem alten Saporoschez-Auto versteckt, das whrend eines Erdbebens in einen Spalt gestrzt ist. Snag hat Angst, da hinunterzugehen, weil es dort von Schnorks nur so wimmelt. + + + Sie haben Snags Kiste und sollten sie ihm jetzt zurckbringen, um sich mit ihm den Inhalt brderlich zu teilen. + + + Blutsaugerlager: Die Stalker informieren + + + Informieren Sie die Stalker ber das Blutsaugerlager unter dem Antennenkomplex Krug. + + + Blutsaugerlager: Beard informieren + + + Sie mssen Beard von dem Blutsaugerlager, das unter dem Antennenkomplex Krug gefunden wurde, erzhlen, damit er entscheiden kann, wie die Stalker beschtzt werden sollen. + + + Verschwundene Stalker: Grouse folgen + + + Grouse hat Sie gebeten, mit ihm zusammen den verlassenen Antennenkomplex zu durchsuchen. Er hat Blutsauger gesehen und will berprfen, ob der Jger dort ist. + + + Verschwundene Stalker: Herausfinden, was passiert ist + + + Tremor ist wohl doch nicht so unschuldig, wie er zu sein scheint. Sie mssen herausfinden, was passiert ist. + + + Verschwundene Stalker: Grouse finden + + + Grouse ist nicht ohne Grund zu den Krnen gegangen - vielleicht hatte er etwas ber die verschwundenen Stalker herausgefunden. Deswegen sollten Sie dort nach ihm suchen. + + + Verschwundene Stalker: Herausfinden, wo sich Grouse aufhlt + + + Grouse ist nicht dort, wo er normalerweise steckt. Sie sollten Beard fragen, wohin er gegangen ist. + + + Verschwundene Stalker: Den verschwundenen Jger finden + + + Grouse hat Sie um Hilfe bei der Suche nach dem verschwundenen Jger gebeten. Dieser sollte eigentlich das Blutsaugerlager finden. Laut den neuesten Meldungen sind die Blutsauger dafr verantwortlich, dass in letzter Zeit Stalker verschwunden sind. + + + Verschwundene Stalker: Raus aus dem Blutsaugerlager + + + Im Untergeschoss haben Sie ein Blutsaugerlager entdeckt und zudem gesehen, dass sich die Blutsauger dort in einer Art Schlafzustand befinden. Sie sollten von dort verschwinden, und zwar leise. + + + Verschwundene Stalker: Grouse treffen + + + Sie sollten sich mit Grouse treffen und die Suche nach dem verschwundenen Jger besprechen. + + + Verschwundene Stalker: Grouse spter treffen + + + Im Antennenkomplex waren keine Spuren von Danila dem Jger zu finden. Allerdings war Grouse recht verblfft darber, was Sie im Gebude gefunden haben. Er hat Sie gebeten, sich spter mit ihm zu treffen, um die Sache eingehender zu besprechen. + + + Verschwundene Stalker: Grouse treffen + + + An dem Ort, den Grouse gemeint hatte, gab es einen toten Blutsauger, aber keine Spuren von Danila dem Jger. Allerdings scheint es so, als ob Grouse etwas Interessantes gefunden htte, und er bittet Sie, sich ihm anzuschlieen. + + + Es hat sich herausgestellt, dass die Blutsauger nichts mit dem Verschwinden der Stalker zu tun haben - Tremor steckt dahinter, der Arzt auf der Skadowsk. + + + Werkzeug: Kardan Werkzeug bringen + + + Kardan hat Sie gebeten, ihm zwei Werkzeugsets zu beschaffen: Eines fr einfache Arbeiten und eines fr feinere Arbeiten. Der Techniker wird Sie fr das Werkzeug bezahlen und damit bessere Modifikationen fr Waffen und Panzerung durchfhren knnen. + + + Werkzeug: Kardan Werkzeug bringen + + + Kardan hat Sie gebeten, ihm zwei Werkzeugsets zu beschaffen: Eines fr einfache Arbeiten und eines fr Kalibrierungsarbeiten. Der Techniker wird Sie fr das Werkzeug bezahlen und damit bessere Modifikationen fr Waffen und Panzerung durchfhren knnen. + + + Werkzeug: Kardan Werkzeug bringen + + + Kardan hat Sie gebeten, ihm Werkzeug fr einfache Arbeiten zu beschaffen. Der Techniker wird Sie fr das Werkzeug bezahlen und damit bessere Modifikationen fr Waffen und Panzerung durchfhren knnen. + + + Werkzeug: Kardan Werkzeug bringen + + + Kardan hat Sie gebeten, ihm zwei Werkzeugsets zu beschaffen: Eines fr feinere Arbeiten und eines fr Kalibrierungsarbeiten. Der Techniker wird Sie fr das Werkzeug bezahlen und damit bessere Modifikationen fr Waffen und Panzerung durchfhren knnen. + + + Werkzeug: Kardan Werkzeug bringen + + + Kardan hat Sie gebeten, ihm Werkzeug fr feinere Arbeiten zu beschaffen. Der Techniker wird Sie fr das Werkzeug bezahlen und damit bessere Modifikationen fr Waffen und Panzerung durchfhren knnen. + + + Werkzeug: Kardan Werkzeug bringen + + + Kardan hat Sie gebeten, ihm Werkzeug fr Kalibrierungsarbeiten zu beschaffen. Der Techniker wird Sie fr das Werkzeug bezahlen und damit bessere Modifikationen fr Waffen und Panzerung durchfhren knnen. + + + Werkzeug: Kardan Werkzeug bringen + + + Kardan hat Sie gebeten, ihm drei Werkzeugsets zu beschaffen: Eines fr einfache, eines fr feinere und eines fr Kalibrierungsarbeiten. Der Techniker wird Sie fr das Werkzeug bezahlen und damit bessere Modifikationen fr Waffen und Panzerung durchfhren knnen. + + + Sldnerlager: Mglichst viele Informationen sammeln + + + Der Hndler Uhu wird fr alle Informationen, die Sie im Sldnerlager bei der Klranlage finden, einen guten Preis zahlen. Er ist sehr interessiert an den Plnen der Sldner. + + + Sldnerlager: Mglichst viele Informationen sammeln + + + Der Hndler Uhu wird fr alle Informationen, die Sie im Sldnerlager bei der Klranlage finden, einen guten Preis zahlen. Er ist sehr interessiert an den Plnen der Sldner. + + + Drei Kameraden: Herausfinden, was mit Barge passiert ist + + + Kardan hat Sie gebeten, sich in seinem Namen bei seinem Kameraden, einem Stalker namens Barge, zu entschuldigen. Sie hatten sich gestritten und Barge war weggegangen, ohne zu sagen wohin. + + + Drei Kameraden: Herausfinden, was mit Barge und Joker passiert ist + + + Kardan hat Sie gebeten, sich in seinem Namen bei seinen Kameraden, zwei Stalkern namens Barge und Joker, zu entschuldigen. Sie hatten sich gestritten und seine Kameraden waren weggegangen, ohne zu sagen wohin. + + + Drei Kameraden: Herausfinden, was mit Joker passiert ist + + + Kardan hat Sie gebeten, sich in seinem Namen bei seinem Kameraden, einem Stalker namens Joker, zu entschuldigen. Sie hatten sich gestritten und Joker war weggegangen, ohne zu sagen wohin. + + + Sonderbefehl: Waren abholen + + + Die Waren wurden geliefert - es ist an der Zeit, sie bei Nimble abzuholen. + + + Sonderbefehl: Auf Lieferung warten + + + Die Bestellung wurde aufgegeben, daher mssen Sie jetzt nur noch darauf warten, dass Nimble die Waren bekommt. + + + Guter Ruf: Snag finden + + + Sie mssen Snag finden und dafr sorgen, dass er den Mund hlt. Nimble hat nie mit Diebesgut gehandelt, Snag hingegen lgt hufiger, als er die Wahrheit sagt. Er wurde zuletzt bei den Dockkrnen gesehen und knnte sich immer noch dort aufhalten. + + + Sie mssen Snag finden und dafr sorgen, dass er den Mund hlt. Snag hlt sich nicht bei den Dockkrnen auf, aber die Banditen knnten wissen, wo er sich herumtreibt. + + + Sie mssen Snag finden und dafr sorgen, dass er den Mund hlt. Offenbar sind die Banditen in diese Sache verwickelt, daher drften sie wissen, wo sich Snag aufhlt. + + + Sie mssen Snag finden und dafr sorgen, dass er den Mund hlt. Im Moment haben Sie keinerlei Hinweise darauf, wo er sich aufhalten knnte. + + + Sie mssen Snag finden und dafr sorgen, dass er den Mund hlt. Laut dem PDA, den Sie bei einem der Banditen gefunden haben, suchen Sultans Mnner nach Snag. Leider gibt es keinen Hinweis darauf, wo er sich aufhalten knnte. + + + Guter Ruf: Herausfinden, wohin Snag verschwunden ist + + + Snag ist nicht da, wo er sich normalerweise herumtreibt. Daher sollten Sie die Leute vor Ort fragen, ob sie gesehen haben, wohin er gegangen ist. + + + Sie mssen Snag finden und dafr sorgen, dass er den Mund hlt. Er ist nicht da, wo er sich normalerweise herumtreibt. Vielleicht wei Sultan, wo Sie ihn finden knnten. + + + Sie mssen Snag finden und dafr sorgen, dass er den Mund hlt. Er ist nicht da, wo er sich normalerweise herumtreibt. Vielleicht wei Beard, wo Sie ihn finden knnten. + + + Guter Ruf: Mit Snag reden + + + Sie mssen Snag finden und dafr sorgen, dass er den Mund hlt. Nimble hat nie mit Diebesgut gehandelt, Snag hingegen lgt hufiger, als er die Wahrheit sagt. + + + Blutsaugerlager: Belftungsschacht finden + + + Finden Sie den Belftungsschacht, damit Sie das Blutsaugerlager mit giftigem Gas fluten knnen. + + + Blutsaugerlager: Giftiges Gas finden + + + Sie bentigen giftiges Gas, um das Blutsaugerlager zu zerstren. Uhu drfte wissen, so Sie solches Gas finden knnen. + + + Sie bentigen giftiges Gas, um das Blutsaugerlager zu zerstren. Uhu behauptet, dass Sie beim verlassenen Militrkonvoi eine Gasflasche finden knnen. + + + Blutsaugerlager: Schlssel fr die Kiste finden + + + In den Dokumenten, die Sie gefunden haben, werden Schlssel fr die Kiste mit der Gasflasche erwhnt. Sie mssen sie finden. + + + Blutsaugerlager: Einen Weg finden, die Kiste mit der Gasflasche zu ffnen + + + Die Kiste mit der Gasflasche ist verschlossen. Sie mssen einen Weg finden, sie zu ffnen. + + + Blutsaugerlager: Gasflasche platzieren + + + Platzieren Sie die Gasflasche fr das Belftungssystem im Untergeschoss des Antennenkomplexes. Das Gas sollte durch den Belftungsschacht in das Untergeschoss strmen und die Blutsauger tten. + + + Blutsaugerlager: Beard informieren, dass das Lager zerstrt wurde + + + Berichten Sie Beard davon, dass Sie das Blutsaugerlager zerstrt und damit die Sicherheit der Stalker auf der Skadowsk wiederhergestellt haben. + + + Blutsaugerlager: Ventil aufdrehen + + + Drehen Sie das Ventil auf, damit das giftige Gas durch den Belftungsschacht in das Untergeschoss mit dem Blutsaugerlager strmen kann. + + + Blutsaugerlager: Warten, bis das Gas wirkt + + + Sie mssen sichergehen, dass das Gas das Lager erreicht und die Blutsauger alle tot sind. + + + Transaktion: Banditen bei der Forststation treffen + + + Sultan hat Sie gebeten, bei einer Transaktion mit einem Hndler mitzumachen. Sie mssen seine Mnner begleiten und ihnen Hilfe leisten, falls etwas passieren sollte. + + + Transaktion: Den Hndler treffen + + + Uhu hat einen Auftrag fr Sie: Sie mssen einen Hndler bei einer Transaktion beschtzen. Ganz offensichtlich handelt es sich um ein krummes Geschft und es wird nicht ohne Probleme ber die Bhne gehen. + + + Transaktion: Stalker bei der Forststation treffen + + + Treffen Sie sich mit den Stalkern bei der Forststation und helfen Sie ihnen, die Transaktion zwischen den Banditen und dem Waffenhndler zu vereiteln. + + + Transaktion: Den Hndler beschtzen + + + Der Hndler hat Ihnen Ihren Auftrag erklrt: Sie mssen ihn bei der Transaktion beschtzen. + + + Transaktion: Gesprch mithren + + + Die Stalker mchten mithren, was die Banditen und der Waffenhndler zu bereden haben. + + + Transaktion: Den Waffenhandel vereiteln + + + Tun Sie alles Ntige, um das Geschft zwischen den Banditen und dem Waffenhndler zu vereiteln. + + + Transaktion: Zeugen ausschalten + + + Aus dem Geschft des Waffenhndlers wurde nichts, daher mssen Sie alle Zeugen ausschalten. + + + Transaktion: Den Hndler beschtzen + + + Sie mssen den Hndler beschtzen. Zudem hat er Sie aufgefordert, alle Zeugen der Transaktion - inklusive seiner Kunden - auszuschalten. + + + Transaktion: Den Hndler durchsuchen + + + Der Hndler knnte wichtige Informationen bei sich haben, die Ihnen spter von Nutzen sein knnten. Lassen Sie sie sich nicht entgehen. + + + Transaktion: Den Banditen whrend der Transaktion Rckendeckung geben + + + Halten Sie die Stellung und geben Sie den Banditen Rckendeckung, whrend sie mit dem Hndler verhandeln. + + + Transaktion: Mit dem Hndler reden + + + Das Geschft mit den Banditen wurde abgewickelt, daher sollten Sie jetzt Ihre Belohnung kassieren. + + + Transaktion: Ihre Belohnung von Beard kassieren + + + Beard hatte Ihnen eine Belohnung versprochen, falls es Ihnen gelingen sollte, das Geschft zwischen den Banditen und dem Hndler zu vereiteln. Da Sie es geschafft haben, knnen Sie nun Ihre Belohnung einfordern. + + + Transaktion: Mit dem Banditenanfhrer reden + + + Sie mssen dem Anfhrer der Banditen mitteilen, dass Sie bereit sind, bei der Transaktion mitzumachen. + + + Der berfall: Entscheiden, was zu tun ist + + + Der berfall: Die Stalker angreifen + + + Der berfall: Ihre Belohnung kassieren + + + Der berfall auf das Lager wurde abgewehrt, daher knnen Sie sich jetzt wegen Ihrer Belohnung an die Stalker wenden. Diese htten es sehr schwer gehabt, wenn sie nicht gewarnt worden wren. + + + Eine Gruppe von Stalkern hat vor, wie Banditen ihre eigenen Leute zu berfallen. Sie mssen sich entscheiden, ob Sie bei dem Angriff mitmachen, die Stalker warnen oder sich berhaupt nicht einmischen. + + + Der berfall: Bis zum vereinbarten Zeitpunkt warten + + + Der berfall: Auf den richtigen Moment warten + + + Unerreichbares Versteck: Kiste zu Snag bringen + + + Transaktion: Mit dem Anfhrer des Stalkertrupps reden + + + Die Transaktion wurde sabotiert, der Waffenhndler ist tot. Reden Sie mit dem Anfhrer des Stalkertrupps. + + + Verschwundene Stalker: Den Leuten auf der Skadowsk berichten, was geschehen ist + + + Mit den Schlsseln, die Sie gefunden haben, mssen Sie die Kiste aufmachen und die Flasche mit dem giftigen Gas herausnehmen. + + + Blutsaugerlager: Flasche mit giftigem Gas aus der Kiste nehmen + + + Der berfall: Ruber angreifen + + + Die Ruber von hinten anzugreifen, wird den Stalkern helfen, den berfall abzuwehren. + + + Der berfall: Ruber treffen + + + Schlieen Sie sich den Rubern beim berfall auf das Stalkerlager an. + + + Der berfall: Den Rubern anschlieen + + + Sie wurden von Stalkern gebeten, ihnen dabei zu helfen, den berfall der Ruber abzuwehren. Sie sollten sich den Rubern anschlieen. Wenn sie dann den berfall starten, knnen Sie ihnen ohne Probleme in den Rcken fallen. + + + Die Ruber drften bei der Schewtschenko warten. Sie mssen sich mit ihnen treffen, um am berfall auf die Stalker teilnehmen zu knnen. + + + Warten Sie auf das Treffen mit den Rubern. Sie wollen das Stalkerlager nach Mitternacht berfallen, whrend es dunkel ist. Der vereinbarte Treffpunkt ist die Schewtschenko. + + + Der berfall: Ihren Anteil kassieren + + + Der berfall auf die Stalker war ein voller Erfolg und Sie sollten Ihren Anteil an der Beute kassieren. + + + Warten Sie auf den richtigen Augenblick, wenn die Ruber durch den berfall abgelenkt sind. Dann knnen Sie sie von hinten aufs Korn nehmen und damit den Stalkern auf der Schewtschenko helfen. + + + Dunkle Geschfte: Anfangen, fr Beard zu arbeiten + + + Um den Stalkern, die fr Beard arbeiten, die Detektorprototypen abzunehmen, mssen Sie sich unter sie mischen. Dadurch erfahren Sie, wo Ihre Konkurrenten sind. + + + Sie mssen die Kiste nehmen und sie zu ihrem Besitzer bringen. + + + Auf dem Bordcomputer von Stingray 2 befanden sich Karten der Gegend zwischen Zaton und der Jupiter-Anlage. Sie sollten jemanden finden, der etwas mit diesen Karten anfangen kann. + + + Zum Plateau: Mit Stalkern reden + + + Es scheint so, als ob es keinen direkten Weg zum Plateau gbe. Fragen Sie die Stalker vor Ort, wie sie dorthin gelangen. + + + Sie haben von Noah das Kompass-Artefakt erhalten, das Beard will. + + diff --git a/gamedata/configs/text/ger/st_subtitles.xml b/gamedata/configs/text/ger/st_subtitles.xml new file mode 100644 index 0000000..30618ef --- /dev/null +++ b/gamedata/configs/text/ger/st_subtitles.xml @@ -0,0 +1,156 @@ + + + + Am 26. April 1986 wird um 01:23 Uhr der Reaktor von Block 4 des Atomkraftwerks Tschernobyl durch eine Folge von thermischen Explosionen zerstrt. Die dadurch entstandene radioaktive Wolke bewegt sich ber den europischen Teil der UdSSR, Osteuropas und Skandinaviens und erreicht schlielich den amerikanischen Kontinent. + + + Die Konsequenzen dieser Katastrophe sind so fatal, dass die Regierung sich gezwungen sieht, eine Evakuierung der nahe liegenden Stdte und Drfer anzuordnen. + + + Eine Sperrzone mit einem Radius von 30 Kilometern wird errichtet, um die Bewohner daran zu hindern, in das verstrahlte Gebiet zurckzukehren. + + + Trotz der Katastrophe bleibt das Atomkraftwerk Tschernobyl in Betrieb. Die Existenz eines Kraftwerks sowie die Tatsache, dass das Gebiet nicht mehr besiedelt ist, veranlassen den Ministerrat der UdSSR dazu, in der Sperrzone ein Netzwerk aus geheimen Labors zu errichten. + + + 11. Juni 2006. Die Sperrzone wird von einem grellen Blitz erhellt, gefolgt von in den Himmel aufsteigendem Rauch. Nach einem Augenblick der totalen Stille bringt ein drhnender Donner die Erde zum Beben. Die meisten Truppen der Regierung, die dort zur Bewachung des Gebiets stationiert sind, sterben auf der Stelle. + + + 2008. Die Wissenschaftler haben immer noch keine Erklrung fr die Vorkommnisse gefunden. Die seltenen Expeditionen in die Sperrzone enden fr gewhnlich in einer Tragdie und die berlebenden berichten von mutierten Tieren mit unglaublichen Fhigkeiten, die durch das Gelnde streifen. + + + Laut verschiedener Schtzungen beheimatet die Zone im Jahr 2010 zwischen ein- und dreihundert unbekannte Personen. Sie nennen sich Stalker und verdienen sich ihren Lebensunterhalt durch das Einsammeln ungewhnlicher Gesteinsbildungen, die gemeinhin als Artefakte bekannt sind und zu stattlichen Preisen gehandelt werden. + + + 2011. Trotz der Errichtung militrischer Sperrgebiete nimmt die Zahl der Stalker immer weiter zu. Diese halten sich jedoch berwiegend in den Randgebieten der Zone auf und das Zentrum bleibt nahezu unerforscht. Die wenigen Versuche, tiefer in die Zone vorzudringen, schlagen ausnahmslos fehl. + + + 2012: Ein Stalker namens Strelok lftet das Geheimnis um den Hirnschmelzer, einen von Menschenhand geschaffenen Sender, der fr Jahre ein Betreten des Zentrums der Zone unmglich gemacht hat. Nachdem der Hirnschmelzer deaktiviert wurde, treibt es alle Stalker in das Zentrum der Zone: einige mit der Hoffnung, einen wertvollen Artefaktfund zu machen, andere auf der Suche nach dem Wunschgnner. + + + Die Regierung beschliet, eine gro angelegte Militroperation durchzufhren. Bei diesem Einsatz - Operation "Fairway" - finden Karten mit Anomaliefeldern Verwendung, um Hubschrauber unversehrt zum Atomkraftwerk Tschernobyl manvrieren zu knnen. Trotz sorgfltiger Vorbereitung missglckt die Operation und keiner der Hubschrauber kehrt zurck. + + + Major Degtarew, Agent des ukrainischen Geheimdienstes, wird in die Zone geschickt, um das Verschwinden der Hubschrauber zu untersuchen. + + + Verkleidet als Stalker, bewaffnet mit einem gewhnlichen Sturmgewehr und ausgerstet mit Verpflegung fr zwei Wochen sowie mit einem Funkgert zur Kommunikation mit dem Hauptquartier macht sich der Major auf den Weg in das Zentrum der Zone. + + + Gesprche mit Stalkern fhren zu keinem Ergebnis. Entweder haben sie keine Informationen, oder sie wollen sie fr sich behalten... + + + Die Zone lsst keine Gelegenheit aus, den Major daran zu erinnern, dass dieser Einsatz kein Erholungsurlaub ist. Kein Tag vergeht ohne einen Angriff von Mutanten oder schlimmer: Menschen. + + + Die Kommunikation mit dem Hauptquartier gibt ebenfalls keinen Anlass, optimistisch zu sein: Die Informationen sind sprlich, abgesehen von den Koordinaten der fnf abgestrzten Hubschrauber, die per Satellit bertragen wurden. + + + Als der Major nur noch 5 Kilometer vom Atomkraftwerk Tschernobyl entfernt ist, bricht der Funkkontakt ab. + + + Degtarew wurde als Belohnung dafr, dass er seine Ermittlungen erfolgreich abschlieen konnte, zum Oberst befrdert und zum Missionskoordinator ernannt. Er lehnte die Arbeit im Hauptquartier ab und bat darum, fr den ukrainischen Geheimdienst als stndiger Beobachter in die Zone geschickt zu werden. + + + Die Informationen ber die Entwicklung von PSI-Gerten, die Degtarew beschafft hatte, waren alarmierend fr den ukrainischen Geheimdienst. Alle entsprechenden Informationen wurden aus den Militrunterlagen entfernt und als streng geheim eingestuft. Das gesamte Personal, das in der Zone ttig war, wurde angewiesen, um jeden Preis zu verhindern, dass Details ber die Labors an die ffentlichkeit gelangen. + + + Auf Basis der technischen Dokumente fr Forschungsobjekt 62 wurden verschiedene experimentelle Prototypen entwickelt. Nach einer Reihe von Tests wurde auf Grund der hohen Kosten fr die Munition entschieden, dass die Waffe nicht in die Serienproduktion gehen solle. Dennoch ist es nicht unwahrscheinlich, dass die Entwicklung des Gaugewehrs fortgesetzt wurde und noch wird. + + + Nachdem es Sultan und seiner Bande nicht gelungen war, die Skadowsk zu bernehmen, verlieen sie das Schiff, um ihren krummen Geschften woanders nachzugehen. Das daraufhin eintretende Gefhl der Sicherheit unter den Stalkern fhrte zu einer enormen Steigerung der Artefaktverkufe an Beard. Dessen Geschft blhte auf und die ehemals ruhige Bar der Skadowsk wurde so beliebt wie die berhmte 100 Rads Bar, obwohl sie sich fast mitten in der Zone befindet! + + + Die Skadowsk wurde zur Heimat der Banditen. Obwohl alle Stalker zu Steuerzahlungen gezwungen wurden, gingen die Streitereien an Bord dramatisch zurck, nachdem an einigen unverbesserlichen Quertreibern ein Exempel statuiert worden war - man hatte sie ber Bord geworfen, damit sie in den Emissionen ums Leben kommen. Beard jedoch war nicht willens, einen Teil seiner Einnahmen abzugeben. Daher scharte er einen Trupp von Stalkern um sich und machte sich auf, um die unerforschten Gebiete der Zone zu erkunden. Auf der Skadowsk setzte sich Sultans Gesellschaftsordnung endgltig durch. + + + Die Skadowsk wurde zur Heimat fr all jene, die das Schiff erreichen konnten. Obwohl die Stalker erbitterten Widerstand leisteten, versuchten die Banditen immer wieder vergeblich, ihre so genannte "Ordnung" auf dem Schiff durchzusetzen. Trotz dieser andauernden Auseinandersetzungen wurde auf der Skadowsk die einzigartige Art zu leben fortgefhrt, fr die das Schiff so berhmt war. + + + Leider war dies nicht von allzu langer Dauer. Blutsauger aus einer Hhle in der Nhe der Skadowsk fanden einen Weg zum Schiff. Als sie schlielich dazu bergingen, am helllichten Tage anzugreifen, wurde die Entscheidung getroffen, den Unterschlupf der Kreaturen zu strmen. Leider schafften es die Jger nicht, tief genug in die Tunnel vorzustoen, und schon kurz darauf lschten die Blutsauger mit einer einzigen Angriffswelle alles Leben an Bord der Skadowsk aus. + + + Nach der Zerstrung der Blutsaugerhhle kann wohl kaum noch etwas den Lauf der Dinge auf der Skadowsk stren. Das alte Schiff entwickelte sich vorbergehend zu einem Hort der Stabilitt in der ansonsten vom ewigen Wandel geprgten Zone. + + + Den Freiheitlern gelang es, das Vertrauen der Stalker in der Janow-Station zu gewinnen. Die Wchter starteten einen Angriff, um verlorenen Boden wiedergutzumachen, doch Oberst Shulga wurde bei einem Feuergefecht gettet. Der Wchtertrupp konnte den Verlust seines Kommandeurs nicht verkraften und fiel schon bald auseinander. + + + Verstrkungen und die wachsende Beliebtheit unter den Stalkern sorgten dafr, dass der Angriffstrupp der Wchter die Freiheitler von der Janow-Station vertreiben konnte. Bei dieser Schlacht wurden Loki und sein Trupp ein fr allemal ausgeschaltet. + + + Die Freiheitler und die Wchter in der Janow-Station gelangten zu einem fragilen Gleichgewicht. Die Kmpfer der beiden Parteien hatten einfach genug von den endlosen Gefechten. Aus diesem Grund begannen sie, ihre Gruppierungen zu verlassen und sich den freien Stalkern anzuschlieen. + + + Die wissenschaftliche Expedition, die die Professoren Hermann und Oserski organisiert hatten, war ein voller Erfolg. Die gesammelten Daten ermglichten bahnbrechende Entwicklungen auf den Gebieten der Medizin und Technik. Dies fhrte schlielich dazu, dass das Bildungsministerium zustzliche Finanzmittel fr die Erforschung der Zone bewilligte. + + + Die Professoren Hermann und Oserski mussten ihre wissenschaftliche Forschung in der Zone wegen fehlender Daten vorzeitig beenden. Nach ihrer Rckkehr in die Welt auerhalb der Zone widmeten sie sich Arbeitsfeldern, die nichts mehr mit der Zone zu tun hatten. + + + Garis Geschichten ber den Kampf der Armee gegen die Gefahren von Pripyat ermutigten Stalker dazu, die Geisterstadt zu erkunden. Trotz der Angriffe durch die Monolither gelang es ihnen, das ehemalige Armeelager zu sichern. Sie nutzten es als Basis fr ihre weiteren Vorste tief in die Stadt, die zwar langsam vonstattengingen, aber dennoch erfolgreich waren. + + + Garis Geschichten ber das Schicksal der Armee lieen die Stalker vor Pripyat zurckschrecken. Die wenigen, die sich in die Stadt wagten, stieen auf unerklrliche Phnomene, was das bereits dstere Bild, das die Menschen von der toten Stadt hatten, weiter verfestigte. + + + Die Legende von der Oase war keine mehr. Wer schlielich den Weg zur geheimen Anomalie gefunden hatte, wurde zu einem immer beliebteren Gesprchsthema unter Stalkern. Dennoch versuchten weiterhin zahlreiche Stalker sie zu finden - was sich die Banditen schon bald zu Nutze machten. Sie boten den Stalkern an, sie zur Oase zu fhren, berfielen sie aber lediglich, wenn sie weit genug von den Stalkerlagern entfernt waren. + + + Organisierte Sldnertrupps sind weiterhin in der Zone aktiv. Ihr Interesse an den geheimen Labors zu ignorieren, fllt den Verantwortlichen des ukrainischen Geheimdienstes immer schwerer. Jeder Versuch herauszufinden, wer die Sldner angeheuert hat, ist bis jetzt gescheitert. + + + Das Gebiet um die Janow-Station zieht weiterhin viele Stalker an. Das Fehlen von gefhrlichen Mutanten und zahlreiche Anomalien haben dazu gefhrt, dass das Gebiet immer fter als "Fundgrube" bezeichnet wird. + + + Das Gebiet um die Janow-Station gehrt mittlerweile zu den gefhrlichsten Gegenden der Zone. Immer weniger Stalker kehren von Abstechern dorthin lebend zurck, viele von ihnen fallen bereits unweit des Lagers wilden Mutanten zum Opfer. Einer der Vermissten ist Trapper, der sich auf die Spuren einer Chimre gemacht hatte - das drfte seine letzte Jagd gewesen sein. + + + Zulu kehrte zur Hauptbasis der Wchter bei der Rostok-Anlage zurck. Niemand wei, was er dort mit dem Anfhrer der Wchter, General Woronin, besprach. Aber einige Tage spter wurde er an der Spitze eines groen Trupps gesehen, der ins Zentrum der Zone unterwegs war. + + + Gerchte ber Zulus Schicksal erreichten den Anfhrer der Wchter, General Woronin. Entgegen den meisten Erwartungen entschied Woronin, Zulu posthum den Silbernen Schild zu verleihen, die hchste Auszeichnung der Wchter. + + + Wano begab sich in die von den Freiheitlern kontrollierten Militrlager, wo er durch seinen freundlichen Charakter und Optimismus schnell an Beliebtheit gewann. Spter bernahm er schlielich die Leitung einer kleinen Gruppe von Wissenschaftlern, die Anomaliegebiete untersuchten. + + + Die Stalker in der Janow-Station haben Wano noch nicht vergessen und erinnern sich gern an seine Leichtherzigkeit und seine Fertigkeiten. Auch wenn man sich ber viele Aspekte seines Lebens streiten kann, ist eines gewiss: Angesichts seines allgemeinen Pechs war es ein groer Fehler, sich auf die Suche nach einem Weg nach Pripyat zu machen. + + + In der Zone ist eine neue Gruppierung aufgetaucht. Sie sind gut ausgebildet, aber ihre Ziele sind unbekannt. Gerchten zufolge handelt es sich bei ihnen um ehemalige Monolither. Ihr Anfhrer ist unter dem Namen Strider bekannt. + + + Nur wenige bekamen das Verschwinden von Strider mit. Sein Wunsch, Leuten zu helfen, die in den Bann des Monolithen geraten waren, begleitete ihn bis ins Grab. + + + Oberleutnant Sokolow nahm weiterhin an Flugmissionen ber der Zone teil. Whrend eines solchen Fluges ber Limansk wurde sein Flugzeug von Sldnern abgeschossen. Zwei Wochen spter wurde er von einer Patrouille in der Nhe des Kordons gefunden. Einen Monat nach seiner Rettung verlie Sokolow die Luftstreitkrfte und heuerte stattdessen bei einer zivilen Luftfahrtgesellschaft an. + + + Zu den zahlreichen Opfern der Operation "Fairway" kam ein weiteres hinzu: "Oberleutnant O. N. Sokolow, gefallen bei der Ausbung seiner Pflichten." + + + Uhu hat Kunden auerhalb der Zone gefunden. Er verkauft Informationen und diese landen, falls die Gerchte stimmen sollten, direkt beim ukrainischen Geheimdienst. + + + Eine Gruppe von Stalkern musste wegen einer besonders starken Emission Unterschlupf auf Noahs altem Kahn suchen. Als das Schiff von einer Horde Schnorks angegriffen wurde, stellte sich heraus, dass der Kahn die beste Verteidigungsmglichkeit gegen Mutanten war, die die Stalker je gesehen hatten. Und noch erstaunlicher war die Tatsache, dass Noah eine Reihe von Pseudohundwelpen in die Schlacht gegen die Schnorks schickte. + + + Nachdem Kardan vom Schicksal seiner Freunde gehrt hatte, gab er seine Trume von einem Leben als Stalker auf. Er besiegte seinen Alkoholismus und zog in die Janow-Station, wo er zusammen mit Nitro eine Werkstatt erffnete. Mittlerweile widmen beide Mechaniker ihre gesamte Freizeit dem Bau eines Fahrzeugs, das in der Zone eingesetzt werden kann. + + + Nachdem Kardan seine Alkoholsucht besiegt hatte, verlie er die Skadowsk. Es hie, dass er sich auf die Suche nach seinen vermissten Freunden gemacht htte. Mehrere Tage spter kehrte er - verletzt und verstrahlt - zurck. Sobald seine Verletzungen auskuriert waren, verlie er die Zone zum zweiten und wohl letzten Mal. + + + Strelok gab die Informationen, die er bei seinem Abstecher zum Atomkraftwerk Tschernobyl gesammelt hatte, an den ukrainischen Geheimdienst weiter. Dies veranlasste die Regierung, ein Forschungsinstitut fr die Erforschung des Anomaliegebiets Tschernobyl einzurichten. Strelok bernahm die Position des leitenden wissenschaftlichen Beraters im Institut. + + + Strelok hat sein Wissen mit ins Grab genommen. Die Informationen, die er beim Atomkraftwerk Tschernobyl gesammelt hatte und die zu einem besseren Verstndnis der Zone htten fhren knnen, gelangten niemals in die Auenwelt. Fast scheint es so, als ob die Zone wsste, wie sie ihre Geheimnisse zu schtzen hat. + + + Als der Kommandeur der Stingray-Staffel, Oberst Kowalski, aus der Zone zurckkehrte, musste er die Grnde fr die misslungene Operation "Fairway" erlutern. Nach einer schleppenden Untersuchung und dem vergeblichen Versuch der Fhrungsriege, den Oberst zum Sndenbock zu machen, wurde dieser schlielich ehrenvoll aus dem Dienst entlassen. + + + Die letzte Ruhesttte von Oberst Kowalski, Kommandeur der Stingray-Staffel, befindet sich unweit der seines Trupps. Die Zone nahm die Leichen zu sich und nichts weiter als alte Fotos erinnert mittlerweile noch an sie. + + diff --git a/gamedata/configs/text/ger/ui_st_credits.xml b/gamedata/configs/text/ger/ui_st_credits.xml new file mode 100644 index 0000000..418c753 --- /dev/null +++ b/gamedata/configs/text/ger/ui_st_credits.xml @@ -0,0 +1,684 @@ + + + + Sergey Chechin + + + Maciej Abramowicz + + + Armen Abroyan + + + Sprecher + + + Tester + + + AMD/ATI + + + Roman Androshiuk + + + Animationen + + + Grafikabteilung + + + Knstlerische Leitung + + + Nikita Atroshenko + + + Damian Bajorek + + + Mikhail Bastrykin + + + Kamil Bilinski + + + Krzysztof Binkowski + + + Arkadiusz Bochenek + + + Justin Boggs + + + Anatoly Bogush + + + Wojciech Borowy + + + Stanislaw Burtsau + + + Character Models + + + Aleksey Cherevatenko + + + Jerzy Chrul + + + Wojciech Ciemny + + + Musik + + + Dmitry "Abe" Davidyan + + + Aaron Davies + + + Alexander Demidenko + + + Abteilung + + + Programmierung + + + Lukasz Derewonko + + + Ruslan Didenko + + + Yuri Doroshenko + + + Elena Dovgaliuk + + + Rafal Durajczyk + + + Petr Dushinsky + + + Maciej Dziarnowski + + + Sergey Eremenko + + + Yuri "Dark" Falchenko + + + Jakub Gabryel + + + Cezary Galach + + + Gamedesign-Abteilung + + + Gameplay-Programmierung + + + CENEGA QA + + + Besonderer Dank an + + + Filip Gerasimov + + + Grigory Hermann + + + Angelica Girich + + + Pawel Golubinski + + + Marcin Gorniak + + + Tomasz Goscicki + + + Grafik-Programmierung + + + Holger Grun + + + Pawel Grzywaczewski + + + Sergiy Grygorovich + + + Marcin Gutowski + + + Dmitry Yasenev + + + Intel + + + Sergey Ivantsov + + + Norbert Jankowski + + + Alexander Kachaniuk + + + Dmitry Kalita + + + Aleksander Keska + + + Andrey "Darin" Kirienko + + + Lukasz Kobylanski + + + Andrey Kolomiets + + + Artur Komorek + + + Yuri Konstantinov + + + Maria Kotolovskaya + + + Alexander Kovach + + + Kirill Koval + + + Irina Krivchikova + + + Dmitry Krivets + + + Eugene Kuchma + + + Svetlana Kudrya + + + Sergey Kurbatov + + + Olga Kuzhel + + + Dmitry Kuzmenko + + + Aleksey Kuznetsov + + + Oleg Kuznetsov + + + Szymon Lazarski + + + Leitung Animationen + + + Leitung Grafiken + + + Leitung Gamedesign + + + Leitung Programmierung + + + Leitung Qualittssicherung + + + Leitung Experten + + + Leveldesign + + + Lektorat + + + Vladimir Litvinenko + + + Eric Lundgren + + + Sergey Maistrenko + + + Dmitry Macedon + + + Roman Malinkin + + + Projektmanager + + + Alexander Maniliuk + + + Daniel Mankowski + + + Denis Matveenko + + + Maciej Mazurek + + + Piotr Mazurkiewicz + + + Darren McPhee + + + Igor Melnikov + + + Victor Merkulov + + + Damian Mielnik + + + Pavel Mikhailov + + + Konstantin Mironov + + + Groer Dank an Oleg Fomenko + + + und BuntarMedia + + + fr die MOCAP-Beratung + + + Vladimir Morev + + + Andrey Moroz + + + Dawid Mrozowski + + + Yuri Negrobov + + + Mehrspieler-Programmierung + + + nVidia + + + Aleksey Omelchuk + + + Lukasz Osinski + + + Mikhail Parfeniuk + + + Eugene Pashin + + + Igor Pasichnyi + + + Bartosz Peas + + + Physik-Programmierung + + + Jacek Piotrowski + + + Alexander Plichko + + + PR-Abteilung + + + PR-Leitung + + + PR-Manager + + + Sergey Prishepa + + + Produzent + + + Projektmanager + + + Tester + + + Anton Ravin + + + Sebastian Rejent + + + Mateusz Rekorajski + + + Filip Resiak + + + Peter Ross + + + Ivan Rozin + + + Lukasz Ruminski + + + Denis Rutkovsky + + + Lukasz Rynkowski + + + Business Development Manager + + + Piotr Samborowski + + + Maria Shapunova + + + Sergey Shelest + + + Igor Sidorenko + + + Mikolaj Sitkiewicz + + + Yuri Skripal + + + Konstantin Slipchenko + + + Tomasz Sobotka + + + Sound-Produzent + + + Besonderer + + + Dank an + + + Oleg Stalchuk + + + Liudmila Starodub + + + Vladimir Stavitsky + + + Pawel Stempien + + + Pawel Strzelczyk + + + Mitwirkende + + + Konstantin Stupivtsev + + + Technischer + + + Kundendienst + + + Rafal Szekalski + + + Maciej Szumowski + + + Marcin Szwargolinski + + + Vladimir Tereshiuk + + + Sergey Terliuk + + + Texturen + + + Und alle anderen, die uns dabei geholfen + + + haben, das Spiel noch besser zu machen: + + + Konstantin Morozkov + + + Yaroslav "Uncle Yar" Alexandrov + + + Dmitry "Comandor" Ivanov + + + Oleg Chernov + + + Ig. Valerian (Golovchenko) aka oVal + + + M. Bystrykhin + + + Eugene "Mulder" Khaletskiy + + + Pavel "Goon" Bolotov + + + Alexander "Leks" Abramov + + + Alexander Novikov + + + Alexander Poshtaruk, Andrey Oleshk + + + Eugene "KRANZ" Goncharenko + + + Sergey Dvuzhilny + + + Aleksey "Don Reba" Badalov + + + Sergey Dvuzhilny, Tolusha + + + Artem Zuev, aka BAC9-FLCL + + + Glot, Patriot, Mers + + + Tiger, Demesis, Kharon, Moby + + + Alexander Oleinik + + + Konstantin "Inquisitor" Kriuchkov + + + Alexander Shakhovsky, Igor Dolzhenko + + + Sergey "Tur" Leshenko + + + Dmitry "Hill" Gorban + + + Mikhail Kliuev + + + Sergey "Termite" Volchanov + + + Sergey Tikhomirov + + + Ilya Tolmachev + + + Jakub Trudzik + + + Interface-Design + + + Yuri Uralsky + + + Denis "Tetri$Zs" Yusupov + + + RandyJ VanderHeyden + + + Vladimir Vazhinsky + + + Andrey Verpakhovsky + + + Alexander Vilkov + + + Anastassia Voskolovich + + + Andrzej Wardziak + + + Web-Programmierung + + + Dominik Wojcik + + + Lukasz Watroba + + + Eugene Yablon + + + Yuri Yatsenko + + + Eugene Yatsiuk + + + Oleg Yavorsky + + + Valentin Yeltyshev + + + Eugene Zaitsev + + + Andrey Zakoliukin + + + Marek Zdziarski + + + Michal Zegarski + + + Albert Zmudzki + + + Aleksey Zorin + + + Bartosz Zukowski + + + Victoria "Morrant" Yukhno + + + Sergey "ion" Kalintsev + + + Roman "RVCool" Kulikov + + + Maxim Smirnov + + + Omar Al-Shekhly + + + Roman =Marauder= Arhipov + + diff --git a/gamedata/configs/text/ger/ui_st_inventory.xml b/gamedata/configs/text/ger/ui_st_inventory.xml new file mode 100644 index 0000000..ef57c61 --- /dev/null +++ b/gamedata/configs/text/ger/ui_st_inventory.xml @@ -0,0 +1,303 @@ + + + + Nicht genug Geld + + + Der Charakter hat nicht gengend Geld + + + $$ACTION_QUICK_USE_1$$ + + + $$ACTION_QUICK_USE_2$$ + + + $$ACTION_QUICK_USE_3$$ + + + $$ACTION_QUICK_USE_4$$ + + + Artefakt aktivieren + + + Granatwerfer montieren an + + + Zielfernrohr montieren an + + + Schalldmpfer montieren an + + + Preis + + + Gruppe: + + + Zustand + + + Granatwerfer abmontieren + + + Zielfernrohr abmontieren + + + Schalldmpfer abmontieren + + + Anzug tragen + + + Fallen lassen + + + Alles fallen lassen + + + Essen + + + kg + + + An Grtel anbringen + + + In den Rucksack + + + In das Feld + + + Der Hndler hat kein Interesse an Gegenstnden dieser Art. + + + Dieser Gegenstand ist zu stark beschdigt, um damit zu handeln. + + + Spielen + + + Gegenstand verkaufen + + + Zustand der Panzerung + + + Radioaktive Verstrahlung + + + Anzug ausziehen + + + Entladen + + + Benutzen + + + G. + + + Magazingr. + + + Schussgen. + + + Normale Munition fr Pistole kaufen (Q) + + + Gewehrmunition kaufen (W) + + + Wundheilung + + + Abbrechen + + + Waffe kann nicht gekauft werden + + + Anzahlbeschrnkung + + + Schaden + + + Standard (F5) + + + Zurck + + + Unterlaufgranatwerfer fr Gewehr kaufen (D) + + + Granaten fr Unterlaufgranatwerfer kaufen (E) + + + Handhabung + + + Jetzt + + + Lebensregen. + + + Schwer + + + Letzte Zusammenstellung kaufen + + + Zuletzt (F4) + + + Geld + + + Bentigt + + + Nicht genug Geld + + + OK + + + Getragenes Gewicht + + + Wrmeschutz + + + Chemiesch. + + + Panzerung + + + Strahl.sch. + + + Elektrosch. + + + Psi-Schutz + + + Trefferabs. + + + Energieregen. + + + Zusammenstellung 1 (F1) + + + Zusammenstellung 2 (F2) + + + Zusammenstellung 3 (F3) + + + Strahlung + + + Rangbeschrnkung + + + Feuerrate + + + Reset (C) + + + Sturmgew. + + + Hungerminderung + + + Optisches Zielfernrohr fr Gewehr kaufen (S) + + + Alle Gegenstnde im Rucksack verkaufen (X) + + + Gewehre + + + Schalldmpfer fr Pistole kaufen (A) + + + Schalldmpfer fr Gewehr kaufen (F) + + + Scharfsch. + + + Zeit + + + Sie haben bereits + + + S.T.A.L.K.E.R.-Onlinedienste sind nicht verfgbar. + + + Keine Verbindung zum Master-Server. + + + Schutz: + + + Standard + + + Gekaufte Zusammenstellung gespeichert unter + + + Gesamtgewicht: + + + Trinken + + + Energieregeneration + + + Blutung + + + Maximalgewicht + + + Gesundheit + + + Munition + + + Wirkungsdauer + + + Sek + + + Ermglicht es, eine Emission zu berleben + + + Helm tragen + + + Helm absetzen + + diff --git a/gamedata/configs/text/ger/ui_st_ixray.xml b/gamedata/configs/text/ger/ui_st_ixray.xml new file mode 100644 index 0000000..11e8ced --- /dev/null +++ b/gamedata/configs/text/ger/ui_st_ixray.xml @@ -0,0 +1,62 @@ + + + + S.T.A.L.K.E.R.: Ruf von Pripyat + + + Hauptmenu + + + Stufe: + + + Schnellspeichern + + + Automatisches Speichern + + + + m + + + Schlagdistanz + + + + Kofferraum offnen ($$ACTION_USE$$) + + + Benutzen ($$ACTION_USE$$) + + + + Frei + + + + Automatisches Nachladen + + + + Mehrstr. Texturladung + + + Schattenkarte + + + 1024x1024 + + + 2048x2048 + + + 3072x3072 + + + 4096x4096 + + + Immer aktiv + + diff --git a/gamedata/configs/text/ger/ui_st_keybinding.xml b/gamedata/configs/text/ger/ui_st_keybinding.xml new file mode 100644 index 0000000..a39560e --- /dev/null +++ b/gamedata/configs/text/ger/ui_st_keybinding.xml @@ -0,0 +1,225 @@ + + + + PDA + + + Angriffsbefehl + + + Gehen + + + Artefakt + + + Rckwrts + + + Fernglas + + + Kaufmen + + + Chat + + + Teamchat + + + Konsole + + + PDA-Kontakte + + + Ducken + + + Ducken (de)aktivieren + + + Detektor + + + Nach unten + + + Fallen lassen + + + Schieen + + + Nchster Feuermodus + + + Vorheriger Feuermodus + + + Vorwrts + + + Unterlaufgranatwerfer + + + Allgemein + + + Richtung + + + Rucksack + + + Bewegung + + + Mehrspieler + + + Waffe + + + Rucksack + + + Springen + + + Nach links + + + Nach links lehnen + + + Seitwrts nach links + + + PDA-Karte + + + Waffe im nchsten Feld + + + Nachtsichtgert + + + Pause + + + PDA + + + Waffe im vorherigen Feld + + + Zurck + + + Nachladen + + + Reparieren + + + Nach rechts + + + Nach rechts lehnen + + + Seitwrts nach rechts + + + Punkte + + + Screenshot + + + Modellauswahlmen + + + Rennen + + + Teamauswahlmen + + + Taschenlampe + + + Aktivieren + + + Nach oben + + + Benutzen + + + Schneller Verband + + + Schnelles Medkit + + + Abstimmung beginnen + + + Abstimmen + + + Mit "Nein" abstimmen + + + Mit "Ja" abstimmen + + + Waffe 1 + + + Waffe 2 + + + Waffe 3 + + + Waffe 4 + + + Waffe 5 + + + Waffe 6 + + + Munitionsart wechseln + + + Vorherige Waffe dieses Typs + + + Zoomen + + + Sprachnachrichten (1) + + + Sprachnachrichten (2) + + + Schnellzugriffsfeld 1 + + + Schnellzugriffsfeld 2 + + + Schnellzugriffsfeld 3 + + + Schnellzugriffsfeld 4 + + diff --git a/gamedata/configs/text/ger/ui_st_loadscreen.xml b/gamedata/configs/text/ger/ui_st_loadscreen.xml new file mode 100644 index 0000000..e5dc099 --- /dev/null +++ b/gamedata/configs/text/ger/ui_st_loadscreen.xml @@ -0,0 +1,474 @@ + + + + 100 TIPPS FR DAS BERLEBEN IN DER ZONE + + + Wenn Sie einem Gegner ins Auge schieen, stirbt er auf der Stelle, ganz gleich wie stark seine Panzerung auch sein mag. + + + Die AC-96/2 verfgt ber einen einzigartigen Salvenmodus, in dem beide Kugeln in einer Salve abgefeuert werden und denselben Zielpunkt treffen. + + + Bei doppellufigen Schrotflinten kann man beide Lufe nahezu gleichzeitig abfeuern. + + + Pistolen sollte man nicht unterschtzen. Sie haben eine erhebliche Stoppwirkung und knnen sehr effektiv gegen schlecht gepanzerte Ziele sein. + + + Scharfschtzengewehre eignen sich dank ihrer Flachheit und Schussgenauigkeit hervorragend zum Ausschalten von Gegnern aus der Distanz. Auf kurze Entfernung sind sie weniger effektiv. + + + Schieen in Bewegung ist erheblich ungenauer als das Feuern, whrend Sie stehen oder sich zumindest ducken. + + + Waffen und Schutzanzge nutzen sich unter den schwierigen Bedingungen der Zone schnell ab. Verschlissene Waffen sind ungenauer und klemmen fter, whrend abgenutzte Schutzanzge den Trger schlechter beschtzen. + + + Drcken Sie "$$ACTION_SCREENSHOT$$", um einen Screenshot anzulegen. + + + Auf der Minimap wird das Artefakt oder der Spieler, der es trgt, angezeigt. Wenn die Entfernung zum Artefakt zu gro ist, deutet ein Pfeil auf der Minimap in die entsprechende Richtung. + + + Die AC-96/2 verfgt ber einen einzigartigen Salvenmodus, in dem beide Kugeln in einer Salve abgefeuert werden und denselben Zielpunkt treffen. + + + Bei doppellufigen Schrotflinten kann man beide Lufe nahezu gleichzeitig abfeuern. + + + Pistolen sollte man nicht unterschtzen. Sie haben eine erhebliche Stoppwirkung und knnen sehr effektiv gegen schlecht gepanzerte Ziele sein. + + + Scharfschtzengewehre eignen sich dank ihrer Flachheit und Schussgenauigkeit hervorragend zum Ausschalten von Gegnern aus der Distanz. Auf kurze Entfernung sind sie weniger effektiv. + + + Waffen und Schutzanzge nutzen sich unter den schwierigen Bedingungen der Zone schnell ab. Verschlissene Waffen sind ungenauer und klemmen fter, whrend abgenutzte Schutzanzge den Trger schlechter beschtzen. + + + Einige medizinische Produkte haben einzigartige Eigenschaften. Herkules-Pillen z.B. sorgen vorbergehend dafr, dass Sie mehr Gewicht tragen knnen, whrend Psi-Blocker Ihnen dabei helfen, Psi-Emissionen zu widerstehen. + + + Drcken Sie "$$ACTION_SCREENSHOT$$", um einen Screenshot anzulegen. + + + Tipp # + + + Wodka, eine gnstige Alternative zu Strahlenschutzmitteln, stellt den einfachsten Weg dar, die Wirkung von Strahlung auf den Krper zu verringern. + + + Sie knnen genauere Informationen ber die aktuelle Mission einblenden, indem Sie "$$ACTION_SCORES$$" gedrckt halten. + + + Um nach Artefakten zu suchen, brauchen Sie einen Detektor. Die besten Detektoren erleichtern die Suche und finden womglich wertvollere Artefakte. + + + Stalker lassen niemanden mit einer Waffe in ihr Lager. Um Ihre Waffe einzustecken, mssen Sie die entsprechende Taste drcken ("$$ACTION_WPN_1$$", "$$ACTION_WPN_2$$", "$$ACTION_WPN_3$$", "$$ACTION_WPN_4$$"). + + + Sie knnen die Grenzen von Anomalien aufspren, indem Sie Schrauben werfen. Drcken Sie "$$ACTION_WPN_6$$", um Ihre Schraube in die Hand zu nehmen. + + + Lebensmittel sind nicht nur die Lsung fr Ihren Hunger, sondern stellen auch langsam Ihre Gesundheit wieder her. + + + Energy-Drinks verbessern vorbergehend die Regeneration Ihrer Ausdauer, was sich wiederum positiv auf Ihre Beweglichkeit auswirkt. + + + Eine niedrige Ausdauer kann dazu fhren, dass Sie sich nicht mehr bewegen knnen und damit in entscheidenden Momenten sehr anfllig gegenber feindlichen Angriffen sind. + + + Mit den Gerusch- und Feinddetektoren in der linken oberen Bildschirmecke knnen Sie Ihre Heimlichkeit stets im Auge behalten. + + + Wenn Sie einen Detektor in der Hand halten, knnen Sie weiterhin ein Messer, eine Pistole oder eine Schraube mit der anderen Hand fhren. + + + Einige medizinische Mittel verbessern die Widerstandskraft des Krpers gegen schdliche Wirkungen. Die Einnahme solcher Mittel kann bei Missionen in Anomaliegebieten Ihr Leben retten. + + + Sie knnen das Kontextmen fr Gegenstnde in Ihrem Rucksack ffnen, indem Sie den Mauszeiger auf das gewnschte Objekt fhren und die rechte Maustaste drcken. + + + Die meisten Artefakte haben auer ihren ntzlichen Seiten auch die Nebenwirkung, dass sie radioaktiv sind. Dies wiederum kann dadurch ausgeglichen werden, dass Sie Artefakte benutzen, die ihrerseits Strahlung absorbieren. + + + Das Messer ist wirkungslos gegen Gegner mit Feuerwaffen. Setzen Sie es daher im Nahkampf oder bei lautlosen Angriffen ein. + + + Das Gewicht, das Sie tragen, senkt Ihre Ausdauer. Zu viel Gewicht schrnkt Ihre Bewegungsfhigkeit ein und wenn Sie vollkommen berladen sind, knnen Sie sich gar nicht mehr fortbewegen. + + + Ein Detektor ist der einzig sichere Weg, Anomaliegebiete nach Artefakten zu durchsuchen. + + + Die meisten Artefakte bleiben unsichtbar, da sie sich stndig im Anomaliegebiet bewegen. Dies ndert sich, sobald Sie sie mit Ihrem Detektor identifizieren. + + + Mutanten sind nachts aktiver, was der Grund dafr ist, dass Stalker fr gewhnlich auf den Sonnenaufgang warten, bevor Sie sich in die Zone begeben. + + + Wenn Sie starker Strahlung ausgesetzt waren, nehmen Sie Antistrahlenmedikamente ein. Sollten Sie keine haben, benutzen Sie Medkits, um die ersten Symptome zu bekmpfen, bis Sie es zu einem Arzt schaffen. + + + Die meisten Stalker knnen Sie zu Zielen in der Nhe fhren, aber nur ein erfahrener Ortskundiger ist in der Lage, Sie schnell und sicher zu weit entfernten Orten zu bringen. Und deswegen verlangen sie auch ein Vermgen fr ihre Dienste. + + + Sie knnen nicht nur mit dem Verkauf von Artefakten Geld verdienen: Auch nicht bentigte Ausrstung kann eine lukrative Einnahmequelle sein. Vergessen Sie aber nicht, dass Hndler an stark beschdigten Gegenstnden normalerweise nicht interessiert sind. + + + Um einen Schalldmpfer, ein Zielfernrohr oder einen Unterlaufgranatwerfer von Ihrer Waffe abzumontieren, mssen Sie auf die Waffe im Rucksack rechtsklicken und danach die entsprechende Aktion im Kontextmen auswhlen. + + + Wenn Sie sich mglichst leise fortbewegen mchten, drcken Sie "$$ACTION_ACCEL$$" zum Gehen oder "$$ACTION_CROUCH$$", um sich zu ducken. + + + Schrotflinten sind Waffen fr kurze Distanzen. Je weiter weg Ihr Gegner ist, desto weniger Wirkung zeigen Schrotflinten. + + + Wenn Sie vor kleineren Feuerwaffen in Deckung gehen, sollten Sie sich hinter etwas Massives begeben. Im Gegenteil zu Betonwnden stellen Holzbretter und Blechverkleidungen keine besonders undurchdringlichen Hindernisse dar. + + + Kopfschsse verursachen kritischen Schaden und sind fr die meisten Gegner tdlich. + + + Jeder Mutantentyp in der Zone weist seine eigenen Kampfeigenschaften auf. Wenn Sie diese beachten und sich ihnen entsprechend verhalten, steigen Ihre berlebenschancen enorm. + + + Sie knnen kontrollieren, wie weit Sie eine Granate werfen, indem Sie "$$ACTION_WPN_ZOOM$$" gedrckt halten. + + + Ihre Gegner knnen Granaten einsetzen und werden das auch mglichst oft tun. Wenn die Granatenwarnung angezeigt wird, sollten Sie den Explosionsbereich sofort verlassen. + + + Indem Sie mit Anlauf springen, knnen Sie groe Spalte und Erdrisse berwinden. + + + Ihre Gesundheits- und Ausdaueranzeigen werden in der rechten unteren Bildschirmecke dargestellt. + + + Die Zone lebt - d.h. Sie knnen auch in Gebieten, die Sie bereits gesubert haben, weiterhin auf Mutanten oder feindliche Stalker stoen. + + + Seien Sie in der Zone stets auf der Hut und verlassen Sie sich nicht auf alte Informationen. Wenn Sie in ein Anomaliegebiet zurckkehren, das Sie bereits erforscht haben, kann es durchaus vorkommen, dass die alten Wege nicht mehr sicher sind. + + + In Gesprchen mit anderen Stalkern knnen Sie ntzliche Informationen ber neue Gebiete oder aktuelle Ereignisse erhalten. + + + Sie knnen jede beliebige Waffe in den beiden Waffenfeldern benutzen. So knnen Sie flexible Waffenkombinationen erstellen, wie etwa Sturmgewehr/Schrotflinte oder Pistole/Scharfschtzengewehr. + + + Alle Hndler, die Sie in den verschiedenen Stalkerlagern treffen, haben ihre eigenen, besonderen Warenangebote. rzte z.B. haben normalerweise die beste Auswahl an medizinischen Produkten. + + + Wenn Sie verletzt oder verstrahlt in ein Stalkerlager kommen, knnen Sie sich vom rtlichen Arzt kostenlos behandeln lassen. + + + Sie knnen Ihre persnlichen Gegenstnde im Lager in einer persnlichen Kiste verstauen, damit Sie nicht bentigte Ausrstung nicht mit sich herumschleppen mssen. + + + Sollten Sie bis zu einer bestimmten Uhrzeit warten mssen, knnen Sie im Lager ein Nickerchen machen, damit die Zeit schneller vergeht. Finden Sie dazu den Schlafbereich, drcken Sie "$$ACTION_USE$$" und legen Sie fest, wie lange Sie schlafen wollen. + + + Das Nachtsichtgert in Ihrem Helm knnen Sie zur Version der jeweils nchsten Generation aufrsten lassen. Damit wird die Reichweite des Gerts erheblich vergrert. + + + Wenn Sie sich in der Zone aufhalten, sollten Sie stets Extramunition mit sich fhren - Sie knnten sie schneller brauchen, als Ihnen lieb ist. + + + Vergessen Sie nicht, Ihren Spielfortschritt regelmig zu speichern - damit verhindern Sie, dass Sie dieselben Abschnitte wieder und wieder spielen mssen. + + + Um Medikamente sinnvoll zu konsumieren, sollten Sie wissen, wie sie wirken. Lesen Sie dazu die Beschreibungen der Medikamente und finden Sie heraus, was genau sie bewirken. + + + Greifen Sie Gegner, die in Deckung sind, mit Granaten an. Beachten Sie dabei aber den Explosionsradius der Granate, um keine Verbndeten in Mitleidenschaft zu ziehen. + + + Um einen Gegenstand aus Ihrem Rucksack zu entfernen, rechtsklicken Sie darauf und whlen Sie die entsprechende Aktion aus. + + + Sie knnen in den Spieloptionen festlegen, dass das Spiel an wichtigen Punkten automatisch gespeichert werden soll. + + + Wenn Sie ins Lager zurckkehren, sollten Sie Ihre Ausrstung reparieren lassen, unntige Beute verkaufen und sich mit Munition sowie Medikamenten eindecken. + + + Verwenden Sie bei Abstechern in die Zone Schutzanzge, Artefakte oder entsprechende Medikamente, um die schdliche Wirkung von Anomaliegebieten zu mildern. + + + Sie knnen an den Leichen Ihrer Gegner neben Waffen und Munition auch wertvolle Gegenstnde wie PDAs mit wichtigen Informationen finden. + + + Artefakte sind nicht einfach nur eine Art von Beute: Neben der Tatsache, dass sie leicht und teuer sind, knnen sie hufig auch uerst ntzliche Wirkungen aufweisen. + + + Wegen der Umweltbedingungen in der Zone sind viele Mutanten radioaktiv verseucht. Es ist daher extrem gefhrlich, sich ihnen ohne entsprechenden Strahlenschutz zu nhern. + + + Mit Verbandszeug, einem Armee-Medkit oder Vinca-Mitteln knnen Sie Blutungen stoppen. Wenn Sie nmlich nicht schnell genug handeln, kann eine Blutung schwere gesundheitliche Folgen nach sich ziehen. + + + Auf manchen Waffen knnen justierbare Zielfernrohre mit langer Reichweite montiert werden. Drcken Sie "$$ACTION_NEXT_SLOT$$" oder "$$ACTION_PREV_SLOT$$", um die Reichweite zu ndern. + + + Manche Orte sind unzugnglich, selbst wenn Sie sich ducken. Um so tief wie mglich zu kommen, mssen Sie "$$ACTION_CROUCH$$" und "$$ACTION_ACCEL$$" gleichzeitig drcken und gedrckt halten. + + + Um die Wahrscheinlichkeit zu verringern, von gegnerischem Feuer getroffen zu werden, sollten Sie sich beim Schieen um die Ecke lehnen. Halten Sie dafr "$$ACTION_LLOOKOUT$$" oder "$$ACTION_RLOOKOUT$$" gedrckt. + + + Dank eines integrierten Zielerkennungssystems in Ihrem Fernglas, knnen Sie nicht nur weit entfernte Objekte betrachten, sondern auch Gegner aufspren. Drcken Sie "$$ACTION_WPN_5$$", um Ihr Fernglas zu benutzen. + + + Ihre Taschenlampe schalten Sie mit "$$ACTION_TORCH$$" ein bzw. aus. + + + Um eine Schraube in die Hand zu nehmen, mssen Sie "$$ACTION_WPN_6$$" drcken. + + + Wenn Ihr Helm ein Nachtsichtgert aufweist, knnen Sie es mit "$$ACTION_NIGHT_VISION$$" ein- bzw. ausschalten. + + + Drcken Sie "$$ACTION_QUICK_USE_1$$", "$$ACTION_QUICK_USE_2$$", "$$ACTION_QUICK_USE_3$$" oder "$$ACTION_QUICK_USE_4$$", um den entsprechenden Gegenstand im Schnellzugriffsfeld zu benutzen. + + + Die Wirkung von Medikamenten setzt nicht sofort ein und kann in manchen Fllen eine lange Zeit anhalten. + + + Ihr PDA bietet Ihnen eine Kartenansicht, Informationen ber Ihre aktuellen Missionen, Ihre persnlichen Statistiken und ein Nachrichtenprotokoll. Drcken Sie zum ffnen des PDAs "$$ACTION_ACTIVE_JOBS$$". + + + Um nach Artefakten zu suchen, mssen Sie Ihren Detektor einsetzen. Drcken Sie dafr "$$ACTION_SHOW_DETECTOR$$". + + + Drcken Sie zum Pausieren des Spiels "$$ACTION_PAUSE$$". + + + Drcken Sie zum Schnellspeichern "$$ACTION_QUICK_SAVE$$". Mit "$$ACTION_QUICK_LOAD$$" knnen Sie den letzten Schnellspeicherstand laden. + + + Rennen ist die schnellste Fortbewegungsart, aber auch die anstrengendste. Drcken Sie "$$ACTION_SPRINT_TOGGLE$$" zum Rennen. + + + Wenn Sie beim Schieen zielen, treffen Sie genauer, als wenn Sie einfach drauflos feuern. Drcken Sie zum Zielen "$$ACTION_WPN_ZOOM$$". + + + Wenn Sie ber einen Unterlaufgranatwerfer verfgen, knnen Sie zwischen diesem und dem normalen Feuermodus wechseln, indem Sie "$$ACTION_WPN_FUNC$$" drcken. + + + Wenn Sie ber unterschiedliche Munitionsarten fr Ihre Waffe verfgen, knnen Sie mit "$$ACTION_WPN_NEXT$$" zwischen diesen wechseln. + + + Drcken Sie "$$ACTION_WPN_RELOAD$$", um Ihre Waffe nachzuladen, bevor das Magazin leer ist. + + + Zum Ablegen Ihrer aktuellen Waffe mssen Sie "$$ACTION_DROP$$" drcken. + + + Um eine Emission unbeschadet zu berstehen, sollten Sie in einem stabilen Gebude oder unter der Erde Unterschlupf suchen. Wenn eine Emission ansteht, wird die Unterschlupfmglichkeit, die am nchsten liegt, auf Ihrem PDA angezeigt. + + + Um einen Gegenstand ber das Schnellzugriffsfeld zu benutzen, mssen Sie ihn aus Ihrem Rucksack in eines der vier Felder ber den Artefaktbehltern ziehen. + + + Das Bluttropfensymbol in der rechten unteren Bildschirmecke weist Sie auf eine Blutung hin, die gestoppt werden muss. Die Farbe des Symbols gibt an, wie stark die Blutung ist. + + + Ein Strahlungssymbol in der rechten unteren Bildschirmecke weist Sie darauf hin, dass Sie einer Strahlung ausgesetzt sind. Wenn dies geschieht, sollten Sie Strahlenschutzmittel einnehmen. Die Farbe des Symbols gibt an, wie stark die Strahlung ist. + + + Sie knnen mit Hilfe von Filtern verschiedene Markierungen auf Ihrem PDA ein- bzw. ausblenden. Die Filterschaltflchen befinden sich ber der Karte, unter der Zeile mit der aktuellen Mission. + + + Artefakte sind fr gewhnlich nicht statisch: Sie bewegen sich innerhalb eines Anomaliegebiets. Plumpe Versuche, ein Artefakt in die Hnde zu bekommen, werden Sie schneller in eine Anomalie fhren, als Sie "Detektor" sagen knnen. + + + Einige Stalker knnen Ihnen ihre Dienste anbieten, wie z.B. Informationen oder exklusive Waren. Eine andere Mglichkeit ist, dass Sie bestimmte Artefakte bei Ihnen in Bestellung geben. + + + Nach einer Emission knnen neue Artefakte in Anomaliegebieten erscheinen, die Sie zuvor bereits erforscht hatten. + + + In den Spieloptionen knnen Sie den Schwierigkeitsgrad jederzeit anpassen. + + + Techniker in Stalkerlagern knnen Ihre Waffen, Schutzanzge und Helme verbessern + + + Wenn Sie berleben mchten, sollten Sie immer das Gerusch des Geigerzhlers beachten, das Sie vor Strahlung warnt. Ebenso wichtig ist das Anomaliegefahrensignal, das Sie warnt, wenn Sie sich in die Nhe einer Anomalie begeben. + + + Ihre Beziehung zu anderen Personen wirkt sich direkt auf den Preis von Waren und Diensten aus. Haben Sie ein schlechtes Verhltnis, knnen Sie keinen Rabatt erwarten. Wenn Sie gut mit dem Hndler auskommen, knnte er Ihnen sogar etwas Besonderes anbieten. + + + Sie knnen die Waffen, die Sie finden, entladen, um an mehr Munition zu gelangen. Rechtsklicken Sie dafr auf die Waffe in Ihrem Rucksack und whlen Sie danach die entsprechende Aktion im Kontextmen aus. + + + Indem Sie Gegner ausschalten und Artefakte sammeln, erhalten Sie Punkte, mit denen Sie Ihren Rang verbessern knnen. Wenn Sie im Rang aufsteigen, erhalten Sie Zugriff auf neue Waffen, Ausrstung und Panzerung. + + + Rauchgranaten werden eingesetzt, um das Artefakt zu stehlen oder Deckung zu erzeugen. + + + Der linke Bereich des Kaufmens besteht aus folgenden fnf Reitern (von oben nach unten): Pistolen, Hauptwaffen, Ausrstung, Munition und Medikamente. Wenn Sie einen Reiter auswhlen, werden die fr Ihren Rang verfgbaren Gegenstnde angezeigt. + + + Der rechte Bereich des Kaufmens enthlt 4 Schnellkauffelder. Mit dem Disksymbol speichern Sie die Zusammenstellung, whrend Sie mit der entsprechenden Zahl die jeweilige Zusammenstellung laden. Im 4. Feld wird der letzte Kauf automatisch gespeichert. + + + Wenn Sie ber mehr als eine Waffe verfgen, knnen Sie zwischen ihnen wechseln, indem Sie wiederholt "$$ACTION_WPN_3$$" drcken. + + + Ein Artefakt kann aktiviert werden, um eine Anomalie zu erzeugen. Machen Sie es dazu mit "$$ACTION_ARTEFACT$$" bereit und halten Sie danach "$$ACTION_WPN_FIRE$$" gedrckt. Die erzeugte Anomalie ist sowohl fr Gegner als auch fr den Erzeuger gefhrlich. + + + Ein wissenschaftlicher Schutzanzug wird Ihnen dabei helfen, in Anomalie- und radioaktiven Gebieten zu berleben. + + + ARTEFAKTJAGD: Um zu gewinnen, mssen Sie eine bestimmte Anzahl von Artefakten in Ihre Basis bringen. + + + Um einen Schalldmpfer, ein Zielfernrohr oder einen Unterlaufgranatwerfer von Ihrer Waffe abzumontieren, mssen Sie auf die Waffe im Rucksack rechtsklicken und danach die entsprechende Aktion im Kontextmen auswhlen. + + + Wenn Sie sich mglichst leise fortbewegen mchten, drcken Sie "$$ACTION_ACCEL$$" zum Gehen oder "$$ACTION_CROUCH$$", um sich zu ducken. + + + Schrotflinten sind Waffen fr kurze Distanzen. Je weiter weg Ihr Gegner ist, desto weniger Wirkung zeigen Schrotflinten. + + + Wenn Sie vor kleineren Feuerwaffen in Deckung gehen, sollten Sie sich hinter etwas Massives begeben. Im Gegenteil zu Betonwnden stellen Holzbretter und Blechverkleidungen keine besonders undurchdringlichen Hindernisse dar. + + + Kopfschsse verursachen kritischen Schaden und sind fr die meisten Gegner tdlich. + + + Schnelles Laufen, Springen und Verletzungen senken Ihre Ausdauer betrchtlich. + + + Sie knnen kontrollieren, wie weit Sie eine Granate werfen, indem Sie "$$ACTION_WPN_ZOOM$$" gedrckt halten. + + + Ihre Gegner knnen Granaten einsetzen und werden das auch mglichst oft tun. Wenn die Granatenwarnung angezeigt wird, sollten Sie den Explosionsbereich sofort verlassen. + + + DEATHMATCH: Sammeln Sie mglichst viele Punkte durch gettete Gegner, um zu gewinnen. + + + Indem Sie mit Anlauf springen, knnen Sie groe Spalte und Erdrisse berwinden. + + + Ihre Gesundheits- und Ausdaueranzeigen werden in der rechten unteren Bildschirmecke dargestellt. + + + Auf der Minimap wird die Richtung des Artefakts angezeigt. Wenn der Pfeil nach oben gerichtet ist, befindet sich das Artefakt oberhalb Ihrer Position. Zeigt er nach unten, liegt das Artefakt unterhalb Ihrer Position. + + + Sie knnen die Ruckscke Ihrer Gegner einsammeln, um zustzliches Geld zu erhalten. berschssige Ausrstung kann in der Basis verkauft werden. + + + Das Mitglied Ihres Teams, das das Artefakt trgt, sollte um jeden Preis beschtzt werden. + + + Greifen Sie Gegner, die in Deckung sind, mit Granaten an. Beachten Sie dabei aber den Explosionsradius der Granate, um keine Verbndeten in Mitleidenschaft zu ziehen. + + + Sie knnen innerhalb Ihres Teams mit Sprachnachrichten kommunizieren. Drcken Sie "$$ACTION_SPEECH_MENU_0$$" oder "$$ACTION_SPEECH_MENU_1$$", um in das Sprachnachrichtenmen zu gelangen. + + + TEAM DEATHMATCH: Ihr Team muss mglichst viele Punkte durch gettete Gegner sammeln, um zu gewinnen. + + + Eine Abstimmung wird mit "$$ACTION_VOTE_BEGIN$$" gestartet. + + + Wenn Sie den Punktestand einsehen mchten, drcken Sie "$$ACTION_SCORES$$". + + + Drcken Sie zum Respawnen "$$ACTION_JUMP$$", nachdem die Wartezeit abgelaufen ist. + + + Drcken Sie zum ffnen des Kaufmens "$$ACTION_BUY_MENU$$", whrend Sie sich in der Basis aufhalten. + + + Sie knnen den allgemeinen Chat mit "$$ACTION_CHAT$$" aufrufen. Um lediglich mit Ihrem Team zu chatten, mssen Sie "$$ACTION_CHAT_TEAM$$" drcken. + + + Rennen ist die schnellste Fortbewegungsart, aber auch die anstrengendste. Drcken Sie "$$ACTION_SPRINT_TOGGLE$$" zum Rennen. + + + Wenn Sie beim Schieen zielen, treffen Sie genauer, als wenn Sie einfach drauflos feuern. Drcken Sie zum Zielen "$$ACTION_WPN_ZOOM$$". + + + Wenn Sie ber einen Unterlaufgranatwerfer verfgen, knnen Sie zwischen diesem und dem normalen Feuermodus wechseln, indem Sie "$$ACTION_WPN_FUNC$$" drcken. + + + Wenn Sie ber unterschiedliche Munitionsarten fr Ihre Waffe verfgen, knnen Sie mit "$$ACTION_WPN_NEXT$$" zwischen diesen wechseln. + + + Drcken Sie "$$ACTION_WPN_RELOAD$$", um Ihre Waffe nachzuladen, bevor das Magazin leer ist. + + + ARTEFAKTEROBERUNG: Um zu gewinnen, mssen Sie eine bestimmte Anzahl von gegnerischen Artefakten in Ihre Basis bringen. + + + Zum Ablegen Ihrer aktuellen Waffe mssen Sie "$$ACTION_DROP$$" drcken. + + + Drcken Sie "$$ACTION_INVENTORY$$", um Ihren Rucksackinhalt anzuzeigen. + + + Die meisten Waffen haben mehrere Feuermodi. Drcken Sie zum Wechseln der Modi "$$ACTION_WPN_FIREMODE_NEXT$$" oder "$$ACTION_WPN_FIREMODE_PREV$$". + + + Manche Orte sind unzugnglich, selbst wenn Sie sich ducken. Um so tief wie mglich zu kommen, mssen Sie "$$ACTION_CROUCH$$" und "$$ACTION_ACCEL$$" gleichzeitig drcken und gedrckt halten. + + + Um die Ecke knnen Sie sehen, wenn Sie Sie "$$ACTION_LLOOKOUT$$" oder "$$ACTION_RLOOKOUT$$" drcken. Beachten Sie, dass Sie dabei nicht schieen knnen. + + + ARTEFAKTEROBERUNG: Um ein gestohlenes Artefakt wieder in Ihre Basis zu bringen, mssen Sie den Gegner, der das Artefakt trgt, ausschalten und danach mit "$$ACTION_USE$$" das Artefakt aufheben. + + + ARTEFAKTJAGD: Sie knnen das Artefakt zerstren, indem Sie es aktivieren. Nehmen Sie es dazu in die Hand, indem Sie "$$ACTION_ARTEFACT$$" drcken, und halten Sie dann "$$ACTION_WPN_FIRE$$" gedrckt. + + + Sie knnen nicht rennen, whrend Sie das Artefakt tragen. + + + Drcken Sie "$$ACTION_INVENTORY$$", um Ihren Rucksackinhalt anzuzeigen. + + + Um eine Waffe, einen Anzug oder einen Helm zu reparieren, mssen Sie einen Techniker finden und auf "Reparieren" klicken, nachdem Sie den gewnschten Gegenstand im Modifikationsfenster ausgewhlt haben. + + + Die meisten Waffen haben mehrere Feuermodi und Sie knnen mit Modifikationen weitere hinzufgen. Drcken Sie zum Wechseln der Modi "$$ACTION_WPN_FIREMODE_NEXT$$" oder "$$ACTION_WPN_FIREMODE_PREV$$". + + + Die Flachheit der Waffe beeinflusst die Flugbahn des Projektils, whrend die Handhabung die Zeit bestimmt, die nach einem Schuss vergeht, bis das Visier wieder an seiner ursprnglichen Position ist. + + + Einige Schutzanzge verfgen ber integrierte Helme. Bei solchen Anzgen ist es nicht mglich, andere Helme zu tragen. + + + Jede Waffe weist ihre eigenen Werte in den Bereichen Schussgenauigkeit, Handhabung, Schaden und Feuerrate auf. Dadurch knnen Sie stets diejenige Waffe auswhlen, die Ihren aktuellen Anforderungen am besten entspricht. + + + Schieen in Bewegung ist erheblich ungenauer als das Feuern, whrend Sie stehen oder sich zumindest ducken. + + + Dieser Energy-Drink verbessert vorbergehend Ihre Energieregeneration, wodurch Sie ber einen lngeren Zeitraum sprinten knnen. + + + Im Deathmatch-Modus verfgen Sie ber unendlich viel Munition. + + + Strahlung gehrt zu den hufigsten Gefahren in der Zone. Der Kontakt mit starker Strahlung zieht Ihre Gesundheit in Mitleidenschaft und kann sogar zum Tod fhren, wenn nichts dagegen unternommen wird. + + + Nehmen Sie Nahrung mit, wenn Sie lange unterwegs sein werden. Bei sehr groem Hunger wird Ihre Ausdauerregeneration in Mitleidenschaft gezogen. + + diff --git a/gamedata/configs/text/ger/ui_st_mm.xml b/gamedata/configs/text/ger/ui_st_mm.xml new file mode 100644 index 0000000..40367dc --- /dev/null +++ b/gamedata/configs/text/ger/ui_st_mm.xml @@ -0,0 +1,936 @@ + + + + Klar + + + Bewlkt + + + Mittel + + + Maximal + + + Hoch + + + Niedrig + + + Minimal + + + Nacht + + + Regen + + + SPIELART + + + Meister + + + Anfnger + + + Veteran + + + SYMBOLE + + + KARTE + + + Zurck durch Aktivierung + + + Abstimmungen zulassen + + + Anomaliezeit (Min.) + + + Artefakteroberung + + + Artefaktverzgerung + + + Anzahl der Artefakte + + + Artefaktzeit + + + Artefakt-Return + + + Automatische Teambalance + + + Automatischer Teamtausch + + + VERFGBARE KARTEN + + + Abbrechen + + + CD-Schlssel + + + CD-Schlssel prfen + + + Client + + + Erstellen + + + Unverwundbarkeit (Sek.) + + + Unverwundbarkeitsanzeige + + + Tode + + + Dediziert + + + Demoliste + + + Spielerstatistiken + + + Demo aufzeichnen + + + Demoaufzeichnung + + + Leer + + + Filter + + + Respawn (Sek.) + + + Kill-Limit + + + Kills + + + Delay-Zeit + + + Schaden durch Freunde + + + Freundesanzeige + + + Freundesnamen + + + Voll + + + Modus + + + IP/Host:port + + + Internet + + + Verbinden + + + LAN + + + Abfragen + + + Wiederholen + + + Kartenliste + + + Spielerlimit + + + Netzwerkverbindung + + + Keine Anomalien + + + Optionen + + + Passwort + + + Spielername: + + + Spieler + + + Anzahl der Spieler + + + Internetserver + + + Schnelle Aktual. + + + Wechsel-Koeffizient + + + Alle aktualisieren + + + Verstrkung (Sek.) + + + Respawn-Optionen + + + AUSGEWHLTE KARTEN + + + Server + + + Serverliste + + + Servereigenschaften + + + Serverinformation + + + Server + + + Servername + + + Servereinstellungen + + + Zuschauer + + + Erste Person + + + Freie Kamera + + + Dritte Person Rotation + + + Dritte Person + + + Zuschauereinstellungen + + + Nur Team + + + Anfangswetter + + + Punktzahl + + + Zeitlimit (Min.) + + + Aufwrmen (Sek.) + + + Wetteroptionen + + + Ohne Fr.schaden + + + Ohne Passwort + + + Ohne PunkBuster + + + Mit Passwort + + + LAN + + + Internet + + + Agroprom-Fabrik + + + Fahrzeugstation + + + Becken + + + Eindeutiger Name wurde erfolgreich gendert! + + + Dunkles Tal + + + Jantar-Fabrik + + + Fehler bei der Verbindung zum Statistikserver + + + Fehler bei der Verbindung zum Protokollserver + + + Autorisation erfolgreich + + + Verlassenes Dorf + + + Militrlager + + + Falscher Name + + + Becken + + + Eisenbahnstation + + + Rostok-Fabrik + + + Falscher eindeutiger Name + + + Wollen Sie dies wirklich lschen: + + + Verlassene Fabrik + + + PING + + + SPIELER + + + Statische Beleuchtung + + + Dynamische Beleuchtung + + + Erweit. dyn. Beleuchtung + + + Dynamische Objektbeleuchtung + + + Erweiterte dyn. Objektbel. (DX10) + + + SERVERNAME + + + Artefaktjagd + + + Artefakteroberung + + + Jeder gegen Jeden + + + Filter: + + + Hoch + + + Niedrig + + + Mittel + + + aus + + + Erfahren + + + Legendrer Stalker + + + Anfnger + + + Profi + + + Veteran + + + Teamspiel + + + Frequenz 60 Hz + + + Aktion + + + Erweitert + + + Alternative + + + Anisotropes Filtern + + + bernehmen + + + Zurck + + + Blut + + + Helligkeit + + + Abbrechen + + + Updatesuche + + + Kontrast + + + Steuerung + + + Mitwirkende + + + Zieldistanz einblenden + + + Standard + + + Lschen + + + Wollen Sie diese Datei wirklich lschen? + + + Grasdetaildichte + + + Schwierigkeitsgrad + + + Verbindung trennen + + + Wollen Sie die Verbindung wirklich trennen? + + + Tiefenschrfe + + + Dynamisches Fadenkreuz + + + Dynamische Musik + + + EAX + + + Vollbild + + + Spiel + + + Gamma + + + Objektdetails + + + Maus umkehren + + + Taste + + + Tastatureinstellungen + + + Letzter Spielstand + + + Beleuchtungsdistanz + + + Laden + + + Spiel laden + + + Profil verlassen + + + Meister + + + Effektlautstrke + + + Mausempfindlichkeit + + + Smooth A-test objects + + + Optimize smoothing + + + MEHRSPIELER + + + Mehrspieler + + + Musiklautstrke + + + Die nderungen werden erst nach einem Neustart des Spiels wirksam. + + + Mehrspieler + + + Neues Spiel + + + Anfnger + + + NSC-Taschenlampen + + + OPTIONEN + + + Optionen + + + Partikeldistanz + + + Qualittseinstellungen + + + Zurck zu Windows + + + Spiel beenden + + + Wollen Sie das Spiel wirklich beenden? + + + Wollen Sie wirklich zu Windows zurckkehren? + + + Detailliertes Bump + + + Steep Parallax + + + Sonnenschatten + + + Grasschatten + + + Sonnenqualitt + + + DX10.1 benutzen + + + Vollbild-Smoothing + + + Nasse Oberflchen + + + Geometriepuffer optimieren + + + Volumetrischer Rauch + + + Render 2 + + + Render-Art + + + Auflsung + + + Zurck zum Spiel + + + Speichern + + + Spiel speichern + + + Fadenkreuz darstellen + + + Waffe darstellen + + + Einfach + + + Soundkarte + + + Weiche Partikel + + + Weiches Wasser + + + Sound + + + Soundqualitt + + + Stalker + + + Schattenqualitt + + + Sonnenstrahlen + + + Anti-Aliasing + + + KI verwendet Taschenlampen + + + Texturdetails + + + NSC-Identifizierung + + + Veteran + + + Grafik + + + Sichtweite + + + Volumetrisches Licht + + + Vertik. Synchronis. + + + Eindeutigen Namen ndern + + + Diese E-Mail-Adresse wird bereits verwendet. + + + ber das Internet + + + Im LAN + + + In den Rcken getroffen + + + Wegen Blutverlust + + + In einer Explosion + + + Ins Auge getroffen + + + Kopfschuss + + + Spielstandversion stimmt nicht mit der Spielversion berein. + + + Kills hintereinander + + + Messer + + + Letz. Zus.stel. + + + In den Mehrspielermodus wechseln + + + Name + + + ndern + + + Zus.stell. 1 + + + Zus.stell. 2 + + + Zus.stell. 3 + + + Zurcksetzen + + + Alles verkaufen + + + Version + + + Pripyat + + + Ducken/Stehen + + + Automat. Speicherung + + + Detaillierte Texturen + + + Videos + + + Betreten + + + Verlassen + + + Erstellen + + + E-Mail-Adresse oder Passwort falsch + + + Falsches Profil + + + Verbindungsfehler + + + Server vorbergehend nicht erreichbar + + + Profilanmeldung erforderlich + + + Verbindungsfehler + + + Verbindungsfehler + + + Verbindungsfehler + + + Falscher Profilname + + + Falsches Passwort + + + Falscher eindeutiger Name + + + Eindeutiger Name wird bereits verwendet + + + Bitte zuerst in Ihrem Profil anmelden + + + Bitte zuerst aus Ihrem Profil abmelden + + + Fehler bei der Verbindung zum Profilserver + + + Sie knnen das Profil nicht mehr lschen, wenn Sie es erstellt haben + + + SSAO-Qualitt + + + SSAO-Modus + + + Standard + + + HDAO + + + HBAO + + + Interface anzeigen + + + Nicht registrierter eindeutiger Name. Bitte registrieren Sie ihn. + + + Eindeutiger Name abgelaufen. Bitte registrieren Sie ihn erneut. + + + Stalker + + + maximal + + + Erweiterte dyn. Objektbel. (DX11) + + + Bitte melden Sie sich an, um eine Verbindung mit dem externen Server herzustellen. + + + Diese GameSpy-ID wird bereits verwendet. Bitte verwenden Sie eine andere GameSpy-ID. + + + Falsche E-Mail-Adresse + + + Falsches Passwort + + + Sie knnen mit einer GameSpy-ID keine Verbindung zu einem lokalen Server aufbauen. Bitte benutzen Sie den Netzwerkspielmodus. + + + Sie wurden vom Server gekickt. + + + Sie wurden gesperrt durch den Administrator: + + + Sie wurden durch den Server gesperrt. + + + Serverinformationen + + + Die E-Mail-Adresse ist zu lang. Sie darf nicht lnger als 50 Zeichen sein. + + + Falsche E-Mail-Adresse + + + Dieses Passwort ist zu kurz + + + Dieses Passwort ist zu lang + + + E-Mail-Adresse nicht gefunden + + + Eindeutiger Name nicht festgelegt + + + Der eindeutige Name ist zu lang. Er darf nicht lnger als 30 Zeichen sein. + + + Der eindeutige Name darf Ziffern, lateinische Buchstaben und die folgenden Sonderzeichen enthalten: "#$&'()*+-./:;<=>?@[]^_`{|}~ + + + Der eindeutige Name darf keine Leerzeichen enthalten. + + + Der eindeutige Name darf nicht mit einer Ziffer oder einem der folgenden Zeichen beginnen: '@', '+', ':', '#' + + + sehr hoch + + + Tessellation + + + nderungen bernehmen? Alle nderungen werden rckgngig gemacht in + + diff --git a/gamedata/configs/text/ger/ui_st_mp.xml b/gamedata/configs/text/ger/ui_st_mp.xml new file mode 100644 index 0000000..b5b85ae --- /dev/null +++ b/gamedata/configs/text/ger/ui_st_mp.xml @@ -0,0 +1,741 @@ + + + + Artefakt + + + Freund + + + Max. Ping + + + Profil + + + Modi + + + Das Artefakt wurde zerstrt. + + + Das Artefakt ist aufgetaucht. Bringen Sie es in die Basis, um zu punkten. + + + Das Artefakt wurde verloren. + + + Das Artefakt befindet sich in unserer Basis. + + + Das Artefakt befindet sich in der gegnerischen Basis. + + + Artefakte + + + Artefakte + + + Autom. Auswahl + + + Zurck + + + 4. Sperren + + + Nach Anomalie + + + Abbrechen + + + hat das Artefakt erobert + + + 5. Karte wechseln + + + 6. Wetter ndern + + + Wetter ndern in + + + Chat + + + Verbunden + + + Tode + + + Beschreibung + + + Nicht verbunden + + + Text fr Abstimmung eingeben + + + ist dem Spiel beigetreten + + + Feuerwache + + + (Erste-Person-Ansicht) + + + Kills + + + Kills + + + (Freie Kamera) + + + (Dritte-Person-Ansicht) + + + mit + + + 7. Modus + + + Abfall + + + LOS! + + + hat das Artefakt %s fallen gelassen + + + hat das Artefakt fallen gelassen + + + hat das Artefakt % genommen + + + Sldner + + + ist jetzt + + + ist beigetreten + + + 3. Kicken + + + Limansk + + + Lade Auszeichnungen... + + + Lade Rekorde... + + + (Free-Locked) + + + Kartenbeschreibung + + + Die Partie hat begonnen! + + + Altes Dorf + + + Modi + + + Name + + + Weiter + + + Nicht abgestimmt + + + Ping + + + %s hat die Partie gewonnen! + + + Spieler + + + Zum Wechseln in den Zuschauermodus "Feuern" drcken + + + Zum Kaufen eines sofortigen Respawns "Springen" drcken + + + Zum Auswhlen eines Skins "Springen" drcken + + + Zum Auswhlen der Teams "Springen" drcken + + + Zum Spawnen "Springen" drcken + + + Zum Starten "Springen" drcken + + + Zum ffnen des Kaufmens ($$ACTION_BUY_MENU$$) drcken + + + Sie haben %d$. Fr %d$ knnen Sie respawnen. Klicken Sie auf "Ja", um zu spielen. + + + Bereit... + + + Reparaturbasis + + + 1. Neustart + + + 2. Schneller Neustart + + + hat das Artefakt zurckgebracht + + + hat einen Punkt erzielt + + + Spieler auswhlen, der per Abstimmung gesperrt werden soll + + + Abstimmungskategorie auswhlen + + + Spieler auswhlen, der per Abstimmung gekickt werden soll + + + Spieler auswhlen, der per Abstimmung gekickt werden soll + + + Karte auswhlen, ber die abgestimmt werden soll + + + Rennen mit Artefakt nicht mglich + + + - Count + + + - Stay time + + + - Respawnzeit + + + Anomalien + + + Anomalieperiode + + + Jederzeit + + + Artefakt erobert + + + Artefakte: + + + Automatische Teambalance + + + Automatischer Teamtausch + + + BattlEye + + + Deaktiviert + + + Aktiviert + + + - Erste Person + + + Zwangsrespawn + + + Kill-Limit + + + - Free Fly + + + - Free Look + + + Schaden durch Freunde + + + Freundesanzeige + + + Freundesnamen + + + Unendlich + + + Unsichtbarkeit + + + - Anzeigen + + + - Zeit + + + - Dritte Person + + + Kartenrotation + + + Max. Ping + + + Min. + + + Nein + + + Respawn + + + Spieler zurck in der Basis + + + Sek. + + + Servername: + + + Shielded Bases + + + Zuschauermodi: + + + - Nur Team + + + Zeitlimit + + + Version: + + + Abstimmung + + + Aufwrmen + + + Ja + + + Skin-Auswahl + + + Zuschauer + + + ZUSCHAUER + + + Sportzentrum + + + Status + + + hat gewechselt zu + + + Freiheit + + + Teamauswahl + + + Team %s hat GEWONNEN! + + + Text + + + Zeit bis zum Respawn + + + Zeit bis zum Start: + + + Verbleibende Zeit: %d:%d; Vereinbart: %2.f + + + Trainingslager + + + DAFR stimmen - [$$ACTION_VOTE_YES$$]\nDAGEGEN stimmen - [$$ACTION_VOTE_NO$$]\nErgebnis - [$$ACTION_VOTE$$] + + + Nein + + + Ja + + + Abgestimmt + + + Nein + + + Ja + + + Abstimmung von Server abgebrochen! + + + Abstimmung "%s" gestartet durch %s. + + + Die Abstimmung hat begonnen! + + + 1. Klar + + + 2. Bewlkt + + + 3. Nacht + + + 4. Regen + + + Von hinten getroffen! + + + Kopfschuss! + + + Sie haben das gegnerische Artefakt erobert, tragen Sie es jetzt in Ihre Basis! + + + Sie haben das Artefakt. Aktivieren Sie es, um es in Ihre Basis zurckzubringen! + + + Ihr Rang lautet jetzt + + + Das sind Sie + + + Auf diesem Server sind Abstimmungen nicht mglich. + + + Keine laufenden Abstimmungen. + + + Nur eine aktive Abstimmung gestattet. + + + Bereit + + + An alle + + + Ans Team + + + Abstimmung fehlgeschlagen! + + + Abstimmung erfolgreich! + + + Freiheitsbasis + + + Sldnerbasis + + + 2. Artefaktjagd + + + 4. Artefakteroberung + + + 1. Jeder gegen Jeden + + + Neues Profil erstellen + + + Accountprofile werden geladen + + + Hallo + + + Verbindung mit Profil wird hergestellt + + + Profil wurde erfolgreich erstellt. Bitte verbinden Sie sich damit. + + + Eindeutiger Name wird verifiziert... + + + Wollen Sie das folgende vorhandene Profil benutzen: + + + Account gefunden. Registrierte Profile werden geladen... + + + Sie haben bereits ein Profil. Bitte verbinden Sie sich damit. + + + Account wird verifiziert... + + + Dieser eindeutige Name wird bereits verwendet. Bitte whlen Sie aus der Auswahlliste eine Alternative aus oder geben Sie einen neuen Namen ein. + + + Passwrter stimmen nicht berein! + + + 3. Teamspiel + + + Link kopieren + + + Karte laden + + + Beschreibung + + + Karte nicht korrekt oder beschdigt + + + Karte nicht gefunden + + + Auszeichnungen + + + Rekorde + + + berprfen + + + Passwort besttigen + + + E-Mail-Adresse + + + Passw. vergessen? + + + GameSpy-Seite + + + Passwort + + + Speichern + + + Eindeutiger Name + + + Eindeutiger Name wurde erfolgreich gendert in + + + Team + + + Freiheit + + + Sldner + + + Neues Profil + + + GameSpy-Autorisation + + + Abspielen + + + Zurck + + + Neu starten + + + An den Anfang + + + Zum Kill + + + Zum Tod + + + Zur Artefakteroberung + + + Zum Artefaktverlust + + + Zur Artefaktlieferung + + + beliebig + + + Anmelden + + + Screenshot (alle) + + + Konfigurationen fr alle + + + Pinglimit: + + + Pinglimit + + + Screens. (ausg. Spieler) + + + Konf. fr ausg. Spieler + + + Ausgew. Spieler kicken + + + Ausgew. Spieler sperren + + + Neu starten + + + Schneller Neustart + + + Wetter ndern + + + Geschwindigk. Wetterwechsel + + + Spielart ndern + + + Spieleinstellungen ndern + + + Laufende Abstimmung stoppen + + + Zeitlimit (0, 180) + + + Kill-Limit (0, 1000) + + + Artefaktlimit (0, 100) + + + Aufwrmzeit (0, 3600) + + + Unverwundbarkeit (0, 60 AE) + + + Unverwundbark. (0, 600 T/DM) + + + Respawn-Zeit (-1, 3600) + + + Unbekannter Profilfehler (Code: 4) + + + 10 Minuten + + + 30 Minuten + + + 1 Stunde + + + 6 Stunden + + + 1 Tag + + + 1 Woche + + + 1 Monat + + + 3 Monate + + + Permanent + + + Der Benutzername ist zu kurz + + + Profilfehler + + diff --git a/gamedata/configs/text/ger/ui_st_other.xml b/gamedata/configs/text/ger/ui_st_other.xml new file mode 100644 index 0000000..89dd720 --- /dev/null +++ b/gamedata/configs/text/ger/ui_st_other.xml @@ -0,0 +1,501 @@ + + + + Abbrechen + + + Nein + + + OK + + + Ja + + + Schlecht + + + Feind + + + Hervorragend + + + Erfahren + + + Freund + + + Karte der Zone + + + Gut + + + Gleichgltig + + + Meister + + + PDA-Bonus + + + Nur eine aktive Abstimmung gestattet. + + + Neutral + + + Anfnger + + + Spiel + + + Verwendet + + + Stufe + + + KI-Objekte werden geladen + + + Server: alife-Simulator werden geladen + + + CFORM wird geladen + + + Details werden geladen + + + Geometrie wird geladen + + + Spielstand wird geladen + + + Sektoren & Portale werden geladen + + + Shaders werden geladen + + + Spatial-DB wird geladen + + + Texturen werden geladen + + + Direkte IP + + + Kein aktiver Task + + + Nicht gengend Speicher + + + Der NSC hat nicht gengend Geld + + + Stream wird geffnet + + + Objekte werden abgerufen + + + Rubel. + + + SERVER: Verbindung wird aufgebaut + + + SERVER: Wird gestartet + + + CD-Schlssel wird geprft + + + Grafik + + + Schrecklich + + + Reparieren + + + Render 2 kann auf Ihrem PC nicht ausgefhrt werden. + + + Fraktion + + + Verbindungsfehler: Ihr CD-Schlssel ist deaktiviert. Kontaktieren Sie den Kundenservice. + + + Verbindungsfehler: CD-Schlssel wird bereits verwendet. + + + Verbindungsfehler: Ungltiger CD-Schlssel. + + + Verbindungsfehler: Ungltiger Host. + + + Verbindungsfehler: Falsches Passwort. + + + Ein neuer Patch steht zur Verfgung.\nVersion: %s\nQuelle: %s\Wollen Sie den Patch herunterladen? + + + Momentan ist kein neuer Patch verfgbar. + + + Verbindungsfehler: Der Server hat die Verbindung abgelehnt. + + + Verbindungsfehler: Der Server ist voll. + + + Verbindungsfehler: Unterschiedliche Version. + + + Verbindung zum Masterserver wird aufgebaut. + + + Tage + + + Fehler + + + Fehler beim Laden + + + Eine Datei mit diesem Namen existiert bereits. Wollen Sie sie berschreiben? + + + Es wurde kein Dateiname eingegeben + + + Stunden + + + Verbindung wurde durch das BattlEye-Schutzsystem getrennt: + + + Verbindung wurde getrennt. Grund: + + + Verlassen + + + Wenn Sie diesen Spielstand laden, verlieren Sie alle nicht gespeicherten Daten. Fortfahren? + + + Min. + + + Monate + + + Rucksack + + + Parameter + + + Patch kann nicht heruntergeladen werden. + + + Der Patch wurde erfolgreich heruntergeladen. Wollen Sie ihn installieren? + + + Preis + + + Rang + + + Gesinnung + + + Ruf + + + Sek. + + + Whlen Sie bitte mindestens eine Karte aus + + + Alles nehmen + + + Verbleibend + + + Abstimmung fehlgeschlagen + + + Wollen Sie das Spiel wirklich verlassen? + + + Gesamt + + + Sehr schlecht + + + Sehr gut + + + Veteran + + + Reparieren + + + Ausgewhlten Gegenstand reparieren + + + ... + + + unterwegs in einem Gebiet + + + unterwegs von Zaton zur Janow-Station + + + unterwegs von Zaton nach Pripyat + + + unterwegs von der Janow-Station nach Zaton + + + unterwegs von der Janow-Station nach Pripyat + + + unterwegs von Pripyat nach Zaton + + + unterwegs von Pripyat zur Janow-Station + + + unterwegs von Pripyat zum Labor X8 + + + unterwegs vom Labor X8 nach Pripyat + + + Emission + + + Anfang des Spiels + + + Ankunft auf der Skadowsk + + + Stingray 1 untersucht + + + Stingray 2 untersucht + + + Stingray 3 untersucht + + + Stingray 4 untersucht + + + Stingray 5 untersucht + + + unterwegs zum Plateau + + + Ankunft in der Janow-Station + + + Weg nach Pripyat gefunden + + + Zulu hat sich dem Trupp angeschlossen + + + Wanos Schulden wurden beglichen + + + Wano hat sich dem Trupp angeschlossen + + + anomale Pflanze eingesammelt + + + Sokolow hat sich dem Trupp angeschlossen + + + Strider hat sich dem Trupp angeschlossen + + + Trupp zusammengestellt + + + Ankunft in der Unterfhrung + + + Ankunft in Pripyat + + + Militreinheiten entdeckt + + + unbekannte Waffe sichergestellt + + + Sphtrupp gefunden + + + Verstrkung eingetroffen + + + "Antenne" untersucht + + + Vermisste Wache gefunden + + + Controller bei der Wache ausgeschaltet + + + Testwerkstatt betreten + + + Gaugewehrdokumente gefunden + + + toten Kmpfer gefunden + + + Eingang zum Kindergarten + + + Armeearzt gerettet + + + Kommunikation mit dem HQ hergestellt + + + Evakuierung von Pripyat eingeleitet + + + Evakuierungshubschrauber erreicht + + + Evakuierung abgeschlossen + + + Mutantendetektor + + + Lsegeld fr Geisel gezahlt + + + Geisel befreit + + + Aschehgel-Anomalie-Messungen + + + Plawni-Anomalie-Messungen + + + Blutsaugerlager + + + nach Kopatschi geschickt + + + Zugang zur Klranlage + + + Stalker getroffen + + + Kiste in Versteck gefunden + + + jagt die Chimre + + + Oase gefunden + + + Operation "Ein Schuss" eingeleitet + + + Suche nach der Quelle der Psi-Emission + + + Verwaltungsunterlagen + + + Zugang zu den Werksttten des Umspannwerks + + + Geschft bei der Forststation + + + Wchterlagerhaus + + + Quelle des seltsamen Leuchtens gefunden + + + Zulu gefunden + + + gefhrliche Hhle + + + Reparieren/Modifikationen + + + Kaufen + + + Verkaufen + + + Handeln + + + Fenster schlieen ($$ACTION_USE$$) + + + Handelsfenster ffnen ($$ACTION_SPRINT_TOGGLE$$) + + + Reparatur- und Modifikationsfenster ffnen ($$ACTION_SPRINT_TOGGLE$$) + + + Alle Gegenstnde in den Rucksack legen ($$ACTION_SPRINT_TOGGLE$$) + + + Ausgewhlte Gegenstnde kaufen + + + Ausgewhlte Gegenstnde verkaufen + + + Start des Evakuierungshubschraubers + + diff --git a/gamedata/configs/text/ger/ui_st_pda.xml b/gamedata/configs/text/ger/ui_st_pda.xml new file mode 100644 index 0000000..b91ec88 --- /dev/null +++ b/gamedata/configs/text/ger/ui_st_pda.xml @@ -0,0 +1,279 @@ + + + + Zeit + + + Freier Stalker + + + Militr + + + Bandit + + + Wchter + + + Wissenschaftler + + + Nebenmissionen + + + Verstecke + + + Freiheit + + + Sldner + + + Missionsprotokoll + + + Monolither + + + Mutant + + + April + + + August + + + Dezember + + + Februar + + + Januar + + + Juli + + + Juni + + + Mrz + + + Mai + + + November + + + Oktober + + + September + + + PDA ausschalten + + + Nachrichtenverlauf + + + Nachrichtenverlauf anzeigen + + + Gebietskarte + + + Zonenkarte und Missionsprotokoll anzeigen + + + Statistik + + + Persnliche Statistiken anzeigen + + + Aktuelle Zeit: + + + Datenfilter + + + News anzeigen + + + Dialoge anzeigen + + + Legende + + + Zeit in der Zone + + + berstandene Emissionen: + + + Abgeschlossene Missionen: + + + Gettete Mutanten: + + + Gettete Stalker: + + + Gefundene Artefakte: + + + Gefundene Verstecke: + + + Bevorzugte Waffe + + + Strkster getteter Mutant + + + Position: + + + Missionsziel + + + Nebenmission + + + Feinde + + + Freunde + + + Fraktionsanfhrer + + + Hauptmission + + + Neutrale + + + Ortskundiger + + + Verstecke + + + Truppkommandeur + + + Hndler + + + Freier Stalker + + + Nachrichtenverlauf + + + Auf Spieler zentrieren + + + Nach unten + + + Nach links + + + Legende anzeigen + + + Nach rechts + + + Nach oben + + + Maximal Herauszoomen + + + Hineinzoomen + + + Herauszoomen + + + Erfolge + + + Karte auf Mission zentrieren + + + Karte auf Mission zentrieren + + + Zombie + + + Gre + + + + Gre - + + + Techniker + + + Arzt + + + Aktuelle Missionen + + + Missionen anzeigen/ausblenden + + + Persnliche Kiste + + + Zaton + + + Die Gegend um die Jupiter-Anlage + + + Pripyat + + + Unterfhrung "Pripyat 1" + + + Labor X8 + + + Gebiete + + + Wichtige Gegenstnde + + + Gebiet + + + Die Scanner haben Artefakte registriert: + + + Die Scanner haben keine Artefakte registriert + + + Versteck + + + Schlafbereich + + diff --git a/gamedata/configs/text/ger/ui_st_screen.xml b/gamedata/configs/text/ger/ui_st_screen.xml new file mode 100644 index 0000000..037a6f4 --- /dev/null +++ b/gamedata/configs/text/ger/ui_st_screen.xml @@ -0,0 +1,348 @@ + + + + Persnliche Kiste ffnen ($$ACTION_USE$$) + + + Sie sind zu erschpft, um weiterzugehen + + + Sie sind zu berladen, um weiterzugehen + + + Tr ffnen ($$ACTION_USE$$) + + + Reden ($$ACTION_USE$$) + + + Leiche durchsuchen ($$ACTION_USE$$) + + + Leiche durchsuchen ($$ACTION_USE$$)\nLeiche aufheben (Umschalt + $$ACTION_USE$$) + + + Mission abgeschlossen: + + + Mission fehlgeschlagen: + + + Gegenstand erhalten: + + + Geld erhalten: + + + Neue Mission: + + + Gegenstand verloren: + + + Geld abgegeben: + + + Mission abgebrochen: + + + Mission aktualisiert: + + + Ihre Waffe klemmt. Bitte nachladen. + + + Behlter durchsuchen ($$ACTION_USE$$) + + + Gegenstand aufheben ($$ACTION_USE$$) + + + Flugobjekt durchsuchen ($$ACTION_USE$$) + + + Tr klemmt + + + Die Tr ist von innen verschlossen + + + Tresor verschlossen + + + Code notwendig + + + Code eingeben ($$ACTION_USE$$) + + + Pflanze nehmen ($$ACTION_USE$$) + + + Scanner aufstellen ($$ACTION_USE$$) + + + Scanner nehmen ($$ACTION_USE$$) + + + Regenbogen Aggressionsunterdrcker\nModell des externen Emissionskomplexes\nMastab 1:20 + + + Schalter aktivieren ($$ACTION_USE$$) + + + Gert untersuchen ($$ACTION_USE$$) + + + Sprengstoff anbringen ($$ACTION_USE$$) + + + Erholen ($$ACTION_USE$$) + + + Aufzug hat keinen Strom + + + Generator aktivieren ($$ACTION_USE$$) + + + Schlafen + + + Sie knnen nicht schlafen! Sie bluten bedrohlich stark und waren radioaktiver Strahlung ausgesetzt. Nehmen Sie Medikamente ein oder konsultieren Sie einen Arzt. + + + Sie knnen nicht schlafen! Sie bluten bedrohlich stark. Nehmen Sie Medikamente ein oder konsultieren Sie einen Arzt. + + + Sie knnen nicht schlafen! Sie waren radioaktiver Strahlung ausgesetzt. Nehmen Sie Medikamente ein oder konsultieren Sie einen Arzt. + + + Schlafen ($$ACTION_USE$$) + + + Sie haben folgenden Erfolg errungen: Mann des Gleichgewichts. + + + Sie haben folgenden Erfolg errungen: Experte fr Waffensysteme. + + + Sie haben folgenden Erfolg errungen: Detektiv. + + + Sie haben folgenden Erfolg errungen: Diplomat. + + + Sie haben folgenden Erfolg errungen: Freund der Wchter. + + + Sie haben folgenden Erfolg errungen: Freund der Freiheit. + + + Sie haben folgenden Erfolg errungen: Freund der Stalker. + + + Sie haben folgenden Erfolg errungen: Verfechter der Gerechtigkeit. + + + Sie haben folgenden Erfolg errungen: High-Tech-Experte. + + + Sie haben folgenden Erfolg errungen: Informationsmakler. + + + Sie haben folgenden Erfolg errungen: Bewahrer von Geheimnissen. + + + Sie haben folgenden Erfolg errungen: Boss. + + + Sie haben folgenden Erfolg errungen: Anfhrer. + + + Sie haben folgenden Erfolg errungen: Mutantenjger. + + + Sie haben folgenden Erfolg errungen: Einer von uns. + + + Sie haben folgenden Erfolg errungen: Pionier. + + + Sie haben folgenden Erfolg errungen: Wissenschaftlicher Mitarbeiter. + + + Sie haben folgenden Erfolg errungen: Artefaktjger. + + + Sie haben folgenden Erfolg errungen: Erfahrener Stalker. + + + Sie haben folgenden Erfolg errungen: Reicher Kunde. + + + Automatische Speicherung... + + + Sie knnen Ihre Waffe jetzt wieder herausnehmen. + + + Code lock ($$ACTION_USE$$) + + + Als Belohnung dafr, dass Sie das Geheimnis der verschwundenen Stalker lften konnten, wurden medizinische Vorrte in Ihrer persnlichen Kiste auf der Skadowsk hinterlegt. + + + Als Belohnung fr die Hilfe, die Sie den Wchtern geleistet haben, wurde ein PS5-M Universalschutzanzug in Ihrer persnlichen Kiste in der Janow-Station hinterlegt. + + + Als Belohnung fr die Hilfe, die Sie den Wchtern geleistet haben, wurde eine PSZ-9d Wchterpanzerung in Ihrer persnlichen Kiste in der Janow-Station hinterlegt. + + + Als Belohnung fr die Hilfe, die Sie der Freiheit geleistet haben, wurde ein Freiheit-Sturmanzug in Ihrer persnlichen Kiste in der Janow-Station hinterlegt. + + + Als Belohnung fr die Hilfe, die Sie der Freiheit geleistet haben, wurde ein Freiheit-Wachanzug in Ihrer persnlichen Kiste in der Janow-Station hinterlegt. + + + Sie haben es nicht bis zum Hubschrauber geschafft und das Evakuierungsteam hat die Zone ohne Sie verlassen. + + + Sind Sie bereit, die Zone zu verlassen? Es gibt keinen Weg zurck. + + + Game Over + + + Drcken Sie ($$ACTION_JUMP$$), um ins Hauptmen zurckzukehren. + + + Pause + + + Spiel gespeichert + + + Als Belohnung fr Ihre Hilfe dabei, Magpie zu berfhren, wurde ein Artefakt in Ihrer persnlichen Kiste auf der Skadowsk hinterlegt. + + + Sie mssen warten, bis das Dock luftdicht verschlossen ist + + + Zugang gewhrt + + + Aufzug nach oben ($$ACTION_USE$$) + + + Aufzug nach unten ($$ACTION_USE$$) + + + Kritisches Psi-Emissionsniveau. Begeben Sie sich sofort aus der Gefahrenzone. + + + Kritisches Strahlungsniveau. Um weiterzugehen, wird Schutz bentigt. + + + Hubschrauber untersuchen ($$ACTION_USE$$) + + + Versteck durchsuchen ($$ACTION_USE$$) + + + h + + + Nachricht + + + Tr blockiert + + + Tr schlieen ($$ACTION_USE$$) + + + Tr verschlossen - das Lager befindet sich im Alarmzustand + + + Tr verschlossen - Sie mssen Ihre Waffe einstecken + + + Tr verschlossen + + + Stromzufuhr der Tr ist unterbrochen + + + Tr ffnen ($$ACTION_USE$$) + + + Tor blockiert + + + Zugangskarte benutzen ($$ACTION_USE$$) + + + Zugangskarte erforderlich + + + Die Tr kann nicht von dieser Seite aus geffnet werden + + + - + + + Die Kiste ist verschlossen. Es werden zwei Schlssel bentigt. + + + Schlssel benutzen ($$ACTION_USE$$) + + + Schlssel benutzen ($$ACTION_USE$$) + + + Die Kiste ist verschlossen. Sie bentigen den zweiten Schlssel, um sie zu ffnen. + + + Kiste ffnen ($$ACTION_USE$$) + + + Der Trmechanismus wurde von innen blockiert + + + Gastank verbinden ($$ACTION_USE$$) + + + Achtung! Chemische Gefahr! + + + Ventil drehen ($$ACTION_USE$$) + + + Fahrzeug durchsuchen ($$ACTION_USE$$) + + + Sie knnen bei Leutnant Rogowez und Leutnant Kirilloff Ihre Vorrte an Medikamenten und Munition auffrischen. + + + Vor kurzem fand eine Emission in der Zone statt. + + + Sie haben folgenden Erfolg errungen: Gezeichnet von der Zone. + + + Als Dank dafr, dass Sie gefhrliche Mutanten gettet haben, wurde Munition in Ihrer persnlichen Kiste in der Janow-Station hinterlegt. + + + Koordinaten eines Verstecks erhalten, das schon bekannt ist. + + + Versteck gefunden + + + Versteckkoordinaten erhalten + + + Zum Spielen beliebige Taste drcken + + diff --git a/gamedata/configs/text/ita/st_achievement.xml b/gamedata/configs/text/ita/st_achievement.xml new file mode 100644 index 0000000..ecca491 --- /dev/null +++ b/gamedata/configs/text/ita/st_achievement.xml @@ -0,0 +1,372 @@ + + + + Il tuo nemico si sentir umiliato, dopo essere stato ucciso per dieci volte di fila senza riuscire a ucciderti neppure una volta! Comunque, la tua non crudelt: lo stai semplicemente spronando ad allenarsi. + + + Il mietitore + + + Sei inarrestabile! Hai preso due piccioni con una fava... falciati entrambi con il tuo fucile Gauss. + + + Doppio colpo + + + La tua calma e la tua attenta pianificazione sono letali per il nemico: nel giro di un paio di secondi, sei riuscito ad abbattere due bersagli sparando per due volte con la tua doppietta. + + + Due colpi, due morti + + + Tu sai che cosa significhi essere uno stalker, ed per questo che sei diventato un'autentica leggenda! + + + Arrampicatore sociale + + + Vuoi sfondare un esoscheletro usando un coltello? Sembra che ti piacciano le imprese difficili, eh? + + + Apriscatole + + + Pensavano di averti fregato, ma gli hai fatto capire chi comanda, ammazzandone cinque nonostante fossi a un passo dalla morte! + + + Duro a morire + + + Che scarica di adrenalina! Hai fatto a pezzi il tuo nemico con una pioggia di proiettili: 5 uccisioni in 5 secondi, incredibile! + + + Furia scatenata + + + Wow, che mira strepitosa! Hai ucciso due nemici con un colpo negli occhi, senza morire nel frattempo. + + + Specialista degli occhi + + + Che si nascondano pure dietro gli angoli per tenderti un'imboscata: non ti fermeranno! Tu sai colpire un bersaglio in movimento, senza neppure mirare! + + + Riflessi fulminei + + + Che scappi pi forte che pu: tanto alla fine i tuoi proiettili lo raggiungeranno. + + + Ferma il fuggiasco + + + Hai massacrato venti nemici di fila, senza morire! Accidenti, che bagno di sangue! + + + Massacro + + + Erano in tre e avevano dei fucili di precisione, ma alla fine la tua grande abilit ha avuto ragione di loro. + + + Tiratore scelto + + + Lasciando che siano i nemici a comportarsi da barbari, hai mostrato loro che sei in grado di vincere anche senza sparare un solo colpo. + + + Messaggero di pace + + + La distanza non un problema per un vero cecchino! Sai centrare il bersaglio anche da oltre 120 metri. + + + Precisione letale + + + Il nemico riuscito ad abbatterti, ma tu gli hai lasciato come ricordino una bella granata! + + + Non ti scordar di me + + + Hanno ucciso i tuoi amici, la tua vendetta stata pi che legittima. Tre cadaveri di nemici per i tuoi tre amici morti: giustizia fatta. + + + Vendicatore + + + Sei il difensore del tuo amico: lo hai salvato per due volte da un attacco, mentre trasportava il manufatto. + + + Angelo custode + + + Sei riuscito a difendere il tuo onore e quello della tua squadra, mettendo a segno alcuni punti. + + + L'onore salvo + + + Per caso sapevi dove sarebbe comparso il prossimo manufatto? Beh, fatto sa che sei riuscito a prenderlo, nel giro di pochi secondi! + + + Intuito da stalker + + + Sei stato fortunato: hai ucciso il nemico con l'ultimo proiettile del caricatore! Beh, alla fine quello che conta il risultato. + + + Lucky Bastard + + + Hai ucciso otto nemici di fila. Bene, hai lanciato la sfida: ora vediamo cosa sapranno fare loro. + + + La sfida + + + Nessuno riuscito a ucciderti, grazie alla tua grande cautela. Non sei mai morto nel corso della partita e hai ottenuto pi di 15 punti. + + + Paranoia + + + Sai come fare il tuo lavoro senza attirare l'attenzione: non scordi mai il silenziatore. Perch far sapere al nemico da che direzione giunge la sua morte? + + + Morte silente + + + Hai annichilito il tuo nemico, vincendo e ottenendo il doppio dei punti del loro miglior rappresentante. + + + Superiorit schiacciante + + + Il tuo piano per catturare all'istante il manufatto ha avuto successo: hai segnato per la tua squadra entro tre minuti dall'inizio della partita. + + + Guerra lampo + + + Non hai lasciato scampo al nemico, dato che non gli hai lasciato mettere le mani su neppure un manufatto. Cos impareranno a che cosa serve il lavoro di squadra! + + + Nessuna speranza! + + + Hai ottenuto il massimo dei punti in ogni area: il maggior numero di uccisioni, pi manufatti e il minor numero di morti! Continua cos! + + + Campione completo + + + Con una lama in mano sai fare meraviglie! Hai sbudellato 3 nemici in 20 secondi, dimostrando di essere una macchina della morte anche senza armi da fuoco. + + + Furia + + + Ogni nemico ha un punto debole, e tu hai trovato quello di questo sventurato colpendo un nemico corazzato nell'occhio, con la tua fida arma. + + + Tallone d'Achille + + + I proiettili nemici non riescono neppure a sfiorarti! Li hai superati senza neppure un graffio e hai risolto il problema! + + + Pi veloce di un proiettile + + + Sei disposto a eseguire ricerche sugli ultimi sviluppi della Zona. Ci hai aiutato a comprendere meglio la Zona scoprendo nuove formazioni anomale precedentemente sconosciute alla scienza. + + + Pioniere + + + Ora gli stalker hanno una considerazione molto pi alta di te.\nPer ringraziarti dei tuoi sforzi, ti hanno lasciato delle munizioni nel tuo ripostiglio personale della stazione Yanov. + + + Tu non cerchi di evitare i mutanti pericolosi: gli dai la caccia e sei anche molto bravo. I bravi cacciatori sono molto stimati tra gli stalker. + + + Cacciatore di mutanti + + + Ora gli stalker hanno una considerazione molto pi alta di te.\nPer ringraziarti dei tuoi sforzi, ti hanno lasciato dei medicinali nel tuo ripostiglio personale sulla Skadovsk. + + + Hai scoperto il segreto dietro le scomparse degli stalker sulla Skadovsk. Il gruppo di colpevoli non era affatto composto da mutanti, ma da un nemico molto pi pericoloso: l'uomo. Ora che hai scoperto la verit ti sei guadagnato il rispetto degli stalker. + + + Detective + + + Ora gli stalker hanno una considerazione molto pi alta di te.\nGli stalker hanno chiesto a Owl di farti uno sconto.\nOra Beard ti propone i prezzi migliori per i suoi manufatti. + + + Hai dimostrato ai banditi e a Sultan, il loro capo, chi comanda da queste parti. Ora sei famoso tra gli stalker. Sulla Skadovsk sei sempre il benvenuto. + + + Uno dei nostri + + + Ti sei guadagnato il rispetto dei banditi.\nOwl ti ha fatto uno sconto per paura di essere la tua prossima vittima.\nCome d'accordo, ora Beard ti dar una parte dei suoi profitti. + + + Hai aiutato Sultan a sconfiggere gli stalker e hai preso l'attivit di Beard sotto il tuo controllo. Ora a Zaton tutti ti temono e ti rispettano. + + + Boss + + + Gli stalker hanno deciso di dare il bottino di Magpie, che lui aveva ottenuto con le menzogne e l'inganno, a qualcuno che lo meritasse di pi. Hanno messo la sua roba nel tuo ripostiglio personale a Yanov. + + + Hai consegnato quel sacco di immondizia alla giustizia. Magpie ha ingannato molti stalker, e ora giunta la sua ora. + + + Corriere della giustizia + + + Ora gli stalker hanno una considerazione pi alta di te.\nI banditi ti daranno la caccia non appena ti avventurerai nella Zona. + + + Hai trovato ogni tipo di manufatto conosciuto ai ricercatori della Zona. Questo ti valso il rispetto degli stalker e l'attenzione dei banditi. + + + Cacciatore di manufatti + + + Cardan pu eseguire solo una modifica, che ti permetter di muoverti pi velocemente quando indossi un esoscheletro, installando dei potenziatori idraulici al servomotore. + + + Ora Cardan ha tutti gli strumenti che gli serviranno. Questo gli permetter di eseguire potenziamenti nuovi e pi complessi. + + + Esperto di sistemi d'armi + + + Azot pu eseguire una sola modifica all'elmo tattico: uno scanner a infrarossi che permette di individuare gli umani vicini. + + + Azot ha tutti gli strumenti che un tecnico della Zona potrebbe desiderare. Ora pu eseguire anche le modifiche tecnologiche pi sofisticate. + + + Esperto di tecnologia + + + La tua esperienza ti permette di trovare pi spesso manufatti rari. + + + Nei pressi del centro della Zona sei stato praticamente dappertutto. Hai visitato praticamente tutte le anomalie locali. + + + Stalker esperto + + + Le tue qualit di leader migliorano le possibilit di sopravvivenza della tua squadra. + + + Dovevi svolgere un lavoro di squadra, quindi hai radunato grandi uomini e dimostrato che sei un vero leader. + + + Leader + + + La Freedom, la Duty, gli stalker liberi e persino i banditi riconoscono le tue capacit di negoziazione, e hanno una grande considerazione di te. + + + Sai come risolvere un problema in modo pacifico. A che serve la forza bruta quando bastano le parole a risolvere le dispute? Nonostante questo, guardati da quelli che prima sparano poi fanno domande. + + + Diplomatico + + + Hai lavorato con gli scienziati talmente a lungo che non sarebbe fuori luogo definirti un assistente ricercatore. Tutti, nel bunker degli scienziati, ti considerano uno di loro. + + + Assistente ricercatore + + + I tuoi rapporti con la Duty sono migliorati. Se dovessi trovarti nei guai, i combattenti della Duty cercheranno di aiutarti.\nAzot, il tecnico che sostiene la Duty, ti ha offerto uno sconto.\nI tuoi rapporti con la Freedom si sono deteriorati. \nHawaiian, il commerciante che sostiene la Freedom, ti far pagare di pi la sua merce. + + + Hai aiutato molto la Duty, e questo ti valso il rispetto dei combattenti della Duty e dei loro amici. Ma ricorda che nella Zona non tutti sono dei sostenitori della Duty. + + + Un amico della Duty + + + \nI tuoi rapporti con la Freedom sono migliorati. Se dovessi trovarti nei guai, i combattenti della Freedom cercheranno di aiutarti.\nHawaiian, il commerciante che sostiene la Freedom, ti ha offerto uno sconto.\nI tuoi rapporti con la Duty si sono deteriorati. \nAzot, il tecnico che sostiene la Duty, ti far pagare di pi per i suoi servizi. + + + Hai aiutato molto la Freedom, e questo ti valso il rispetto dei combattenti della Freedom e dei loro amici. Ma ricorda che nella Zona non tutti sono dei sostenitori della Freedom. + + + Un amico della Freedom + + + Gli stalker di Yanov fanno molta attenzione a che ci sia un equilibrio di forze tra la Duty e la Freedom, ecco perch sia il tecnico che il commerciante ti hanno offerto uno sconto. + + + Non ti sei schierato con nessuna fazione e hai scelto di agire come stalker libero. Non ti sei fatto alcun nemico, ma nemmeno nessun nuovo amico. + + + Un uomo equilibrato + + + I commercianti ti offrono merci pi rare e costose. + + + Anche se sai cosa vuol dire "essere al verde", al momento non navighi in cattive acque. Infatti, ci sono volte, quando la tua ricchezza pu essere considerevole, che i commercianti ti vedono come un cliente importante. + + + Un ricco cliente + + + Dopo aver ricevuto gli appunti, Strelok ha trovato un nuovo motivo di vita e ha scelto di perseguire i suoi obiettivi, a qualunque costo. + + + La tua previsione ti stata utile: dopo aver trovato gli appunti nei ripostigli del gruppo di Strelok, li hai tenuti finch non li hai consegnati al legittimo proprietario. + + + Custode di segreti + + + Sei riuscito a sopravvivere a un'emissione senza metterti al riparo grazie alle pillole anabiotiche. Gli effetti sulla tua psiche non sono chiari, e senti uno strano silenzio nella tua mente. A quanto pare non percepisci pi un flusso di pensieri costante. + + + Segnato dalla zona + + + Owl il commerciante ti ha offerto uno sconto perch sei il suo socio e informatore migliore. + + + Quando metti le mani su un'informazione trovi sempre l'acquirente giusto. Ovviamente, quando vendi le informazioni hai sempre a mente il tuo profitto personale. + + + Trafficante d'informazioni + + + Il tuo rapporto con gli stalker migliorato. Se ti trovi nei guai, gli stalker cercheranno di aiutarti.\nI medici degli stalker hanno accettato di venderti i medicinali a prezzo di costo. + + + Hai sempre aiutato gli stalker in difficolt. Anche se la loro fazione molto unita e chiusa, ora hai degli alleati nell'ufficiosa fratellanza degli stalker che ti aiuteranno in combattimento e anche dopo. + + + Amico degli stalker + + + Varie nuove informazioni hanno permesso ai professori Hermann e Ozersky di creare una nuova droga, un anabiotico, nella Zona. + + + A patto che tu disponga di sufficiente salute, puoi riuscire a sopravvivere a un'emissione anche senza utilizzare droghe anti-radiazioni. + + + Considerata la tua utilit, il professor Hermann ti offre dei medicinali e degli equipaggiamenti solitamente riservati al peronale del bunker, a prezzo di costo.\nNovikov si cos abituato alla tua presenza che ti chiede solo il pagamento delle parti utilizzate per le modifiche. + + diff --git a/gamedata/configs/text/ita/st_characters.xml b/gamedata/configs/text/ita/st_characters.xml new file mode 100644 index 0000000..d850308 --- /dev/null +++ b/gamedata/configs/text/ita/st_characters.xml @@ -0,0 +1,336 @@ + + + + Jack + + + Vano + + + Ten Col Shulga + + + Loki + + + Hawaiano + + + Conciaossa + + + Senka + + + Zulu + + + Zio Yar + + + Topol + + + Mace + + + Spirit + + + Snake + + + Vulture + + + Nitro + + + Trapper + + + Flint + + + Generale Tachenko + + + Ten Bunchuk + + + Col Kosmach + + + Ten Zakharchuk + + + Black + + + Duplet + + + Surgeon + + + Skull + + + Stake + + + Koshey + + + Corpse + + + Strider + + + Armatura + + + Sickle + + + Walrus + + + Meeker + + + Foma + + + Professor Ozersky + + + Novikov + + + Professor Hermann + + + Serg Shlyachin + + + Ten Sergeev + + + Serg Valiushok + + + Serg Ostrovsky + + + Capitano Klimenko + + + Ten Sokolov + + + Capitano Tarasov + + + Col Kovalsky + + + Ten Podorozhny + + + Ten Skelya + + + Serg Merkulov + + + Ten Stetsenko + + + Serg Yarmoshuk + + + Ten Rogovets + + + Ten Smirnov + + + Strelok + + + Barchuk + + + Maggiore Degtyarev + + + Dwarf + + + Shishak + + + Grizzly + + + Torba + + + Mitay + + + Ten Gavrilenko + + + Kremen + + + Gaiduk + + + Garry + + + Ten Kirillov + + + Serbin + + + Jackal + + + Nimble + + + Crab + + + Garmata + + + Gonta + + + Sledgehammer + + + Crest + + + Owl + + + Grouse + + + Danila + + + Sultan + + + Morgan + + + Knuckles + + + Spartacus + + + Beard + + + Cardan + + + Goblin + + + Oak + + + Pianist + + + Mower + + + Kirzach + + + Tank + + + Mug + + + Hatchet + + + Tuna + + + Noah + + + Pilot + + + Tremor + + + Ten Drapei + + + Sott. Umerov + + + Snag + + + Hook + + + Ridge + + + Mirone + + + Barge + + + Petruha + + + Awl + + + Maggiore Chepurny + + + Sottuff. Valentir + + + Sergente Morozov + + + Tenente Smolyak + + + Scheggia + + + Sergente Gazda + + + Capitano Furtez + + + Serg. Magg. Shveiko + + diff --git a/gamedata/configs/text/ita/st_dialog_manager.xml b/gamedata/configs/text/ita/st_dialog_manager.xml new file mode 100644 index 0000000..b0b1f74 --- /dev/null +++ b/gamedata/configs/text/ita/st_dialog_manager.xml @@ -0,0 +1,993 @@ + + + + A Zaton c' un punto in cui le anomalie di calore appaiono sott'acqua. Lo chiamano il "boiler" perch c' molto vapore che fuoriesce dal terreno. Se pensi che il vapore non possa fare danni, allora ti sbagli. Gli stalker pi esperti dicono che questa anomalia di vapore ti colpisce con la stessa potenza di un'anomalia di calore, se non peggio. La temperatura di poco pi bassa, ma ti strina ugualmente. E riguardo ai manufatti, hanno trovato i soliti di fuoco. + + + Dicono che alla cava ci sia un bel posticino con tanti manufatti, seppur ricco di anomalie. Sul fondo ci sono talmente tante bolle generate dalle anomalie gassose che fanno male agli occhi, anche se si indossa una maschera antigas. + + + Cumulo di cenere il vecchio cimitero nei pressi di Kopachy. Vi si trovano un sacco di anomalie di calore e ogni tanto anche degli zombi. La gente cerca di stare alla larga da quel posto, ma ci vanno quando hanno bisogno di manufatti. + + + Dicono che sono stati rinvenuti dei manufatti anche nel parcheggio. Ci sono ancora dei veicoli risalenti al primo disastro di Chernobyl... quei ferri mandano su di giri il contatore di radiazioni. Inoltre, quel posto anche pieno di anomalie elettriche. + + + Nel Boschetto putrido, dove gli alberi sono deformati per via dell'acido. La gente che c' stata dice che pieno di anomalie gassose. C' talmente tanto gas nell'aria che impossibile vedere bene, ma con l'esperienza giusta comunque possibile trovare i manufatti che si stavano cercando. + + + Se vuoi dei manufatti, cerca quelli di tipo acido. Il posto migliore per procurarseli il Bagno di cemento. Non avrai molta concorrenza: a nessuno piace quel posto perch troppo vicino all'edificio Jupiter. + + + Non lontano dallo stabilimento Jupiter c' un tratto di strada sprofondato. Lo chiamano Bitume perch l l'asfalto si sciolto. In quel punto ci sono parecchie anomalie, per esempio anomalie di calore mescolate ad anomalie gravitazionali. E poich sono due tipi di anomalie diversi, anche i manufatti lo saranno. + + + Dietro lo stabilimento di cemento c' un piccolo porto chiamato Fen. diventato una fetida palude e l'acqua piena di anomalie gassose. Non nemmeno pi definibile acqua, quanto pi acido. L sono stati ritrovati dei manufatti, ma quel posto brulica anche di mostri. + + + Cerca nel vecchio stabilimento di cemento. Ci sono parecchie anomalie, ma ne vale la pena. Certo, ci sono dei punti dove i manufatti sono pi facili da raggiungere, ma c' anche pi concorrenza. Qui l'unico intralcio sono i criceti, e li incontrerai solo se vai sottoterra. + + + Ti conviene cercare vicino alla Pinquercia. quella cosa che cresce tra le colline, sopra le anomalie gassose. Tutti la chiamano cos da quando un secchione ha scoperto che la corteccia di quell'albero sia di pino che di quercia. Se vuoi cercare dei manufatti in quel posto ti servir una buona protezione dalle sostanze chimiche. Portati anche parecchie munizioni, perch su quelle colline vivono branchi e branchi di cani. + + + A volte non necessario infilarsi in un'anomalia per trovare un manufatto. Mi stato detto che qualcuno ne ha trovato uno in mezzo a un campo. Questo stalker aveva un rilevatore che iniziava a fare le bizze, cos ha cambiato le batterie. Fatto questo il rilevatore ha subito individuato qualcosa e lui si ritrovato un manufatto per le mani. Una bella fortuna, vero? Ecco come va la Zona: a volte ti punisce e altre ti ricompensa. + + + Degli stalker esperti hanno detto che a volte i manufatti si spostano all'esterno delle anomalie. Il tuo rilevatore inizia a emettere dei suoni, tu controlli ma non trovi niente. Significa che un manufatto "nomade" ti passato accanto, ma non ha senso mettersi a inseguirlo. la Zona a decidere a chi assegnarlo. + + + Per il momento nessuno ha cercato dei manufatti a Pripyat. Tutti quelli che conosco sono arrivati da poco, quindi per il momento sono prudenti. + + + Non so se qualcuno conosce i punti giusti in cui cercare. Finora Pripyat stata esplorata poco. + + + Io cercherei nelle gallerie sotterranee. Dicono che sotto la citt ce ne sono a centinaia. + + + Non si sa molto di quei posti, a parte le storie di Garry. Lui dice che c' un posto dove un'enorme vite sbuca da un'anomalia acida, alta dieci piani. Forse ci sta solo prendendo in giro, ma fossi in te cercherei dei manufatti in quella vite. + + + Il posto dove andare a colpo sicuro la palude acida. piena di anomalie gravitazionali, ma sono semplici da individuare. Tieni d'occhio la superficie dell'acqua e non ti potrai sbagliare. Le anomalie gassose sono pi problematiche, perch non ti tolgono tutta l'aria da respirare. Finirci dentro non affatto divertente, credimi. Quella roba attraversa le tute pi rapidamente dell'acido solforico. + + + Ci sono numerose anomalie di calore alla fattoria bruciata, in cima alla collina. L sono stati ritrovati dei manufatti di fuoco. Cerca nelle case: quella che contiene il maggior numero di anomalie dopo un'emissione sar anche quella dove troverai i manufatti. + + + Probabilmente ce ne sono parecchi nelle caverne sotto la fattoria bruciata. Se sali sulla collina con un rilevatore non smetter pi di emettere segnali. Raggiungerle facile: infilati dall'apertura in alto. La parte difficile uscire, con tutte le anomalie che ci sono l sotto. Sono per lo pi vortici e acidi. Alcuni dicono di aver visto in quel buco qualcosa che ricorda una cometa. Un bell'insieme di pericoli, in effetti, ma probabilmente ci sar anche una bella variet di manufatti. + + + Hai mai visto un'anomalia Circo? un enorme trampolino con due comete che gli girano intorno: un vero spettacolo. Per bisogna guardarlo da lontano, perch il Circo incandescente come l'inferno, formato da numerose anomalie di calore. Contiene anche numerosi manufatti, ma sono protetti da un feroce poltergeist di fuoco che cercher di arrostirti non appena ti avvicinerai. + + + Se ti interessano i manufatti gravitazionali, cercali nell'anomalia Zanna. Non difficile trovarla: le anomalie hanno mutato il terreno, spaccando mezza collina. Si sono create delle caverne riempitesi immediatamente di snork. Fortunatamente escono di rado. + + + Nella Zona, amico, nella Zona. Non arrenderti mai. + + + Ottima domanda. Fammi sapere quando avrai trovato la risposta! + + + Dove, quando, perch... Ricorda, una volta trovato il tuo posto d'oro, tienitelo per te. + + + Dove posso trovarli? + + + Te l'ho gi detto. + + + No, non so nient'altro. + + + tutto quello che so. Chiedi a qualcun altro. + + + Che si dice, fratello? + + + Salve! + + + Salve, stalker. + + + Salve. + + + Che cosa vuoi? + + + Cosa? + + + Comincia a parlare. + + + Buon pomeriggio, maggiore, signore! + + + Buon pomeriggio! + + + Ti ascolto, maggiore, signore! + + + S, ciao. + + + Cosa? + + + Ma guarda chi c'. + + + Ehi, stalker. Perch tanta fretta? + + + Come va? + + + Salve, amico. + + + Ehi, ciao, amico. + + + Salve. + + + Ehi! + + + Aiutami, amico! + + + Salvami, fratello, sto morendo... + + + Mi serve assistenza medica! + + + Un kit di pronto soccorso... presto! + + + Aiutami, amico... Aah, che male! + + + Dammi un kit di pronto soccorso... presto... + + + Amico... argh... ti prego, aiutami! + + + Ehi, mi serve un kit di pronto soccorso... svelto... + + + Aiutami, stalker... un kit di pronto soccorso, ti prego... + + + Sono ferito... aiutami! + + + Mi serve un kit di pronto soccorso! + + + Un kit di pronto soccorso! + + + Hai sentito della stazione di drenaggio a est della Skadovsk? Dicono che di notte si vede luccicare qualcosa di strano... troppo strano anche per la Zona, pensa. Non so se vale la pena di andare a controllare. Potrei scoprire qualcosa di valore, ma non so se il caso di rischiare le chiappe... Che dilemma... + + + Da queste parti c' solo vecchia roba arrugginita. Prendi per esempio quell'autocolonna in rovina sul ponte Preobrazhensky... coperta di ruggine, proprio come il ponte. Molti vorrebbero ispezionare quell'area, se non fosse per gli snork e le anomalie... + + + Hai sentito che Sultan ha intenzione di rilevare l'attivit di Beard? La Skadovsk non abbastanza grande per soddisfare la sua bramosia di denaro, vuole una fetta ancora pi grande della torta... Ma noi gli abbiamo detto "Non se ne parla, Jos!". Beard e i nostri ragazzi gliel'hanno fatta vedere. L'operazione criminale di Sultan non attecchir in questo posto. + + + Wow, hai sentito la notizia? Quel verme di Sultan ha stretto la sua morsa intorno a Beard... non so di preciso cosa abbia fatto, ma ha messo Beard alle strette! Cosa sta diventando la Zona? Se andiamo avanti cos la Skadovsk si trasformer in men che non si dica in un covo di banditi! + + + Hai sentito parlare dell'Oasi, fratello? Dicono che un posto difficilissimo da trovare e, anche quando sai dov', ancora pi difficile da raggiungere. Dicono che ci sia un lago. Se ci entri guarirai da ogni male e tutte le ferite scompariranno all'istante! Ah, stare a parlare non serve a niente. Hai visto quanti stalker novellini sono venuti qui, al centro della Zona? Alcuni cercano un tesoro di manufatti, altri sono semplicemente curiosi, ma la maggior parte di loro spera di trovare l'Oasi. Si dice che sia nascosta da qualche parte... + + + Dicono che la Zona stia per morire... Qualcuno ha trovato l'Oasi e si preso il suo manufatto, il Cuore dell'Oasi. Ora la Zona si sposter in un'altra dimensione e gli stalker non riusciranno mai pi a uscirvi... Sto scherzando, amico. Ma hanno trovato davvero un nuovo manufatto. Gli scienziati ci stanno lavorando nel loro bunker in questo preciso istante. + + + Hai sentito di Topol? Ha trovato un nuovo posto in cui inviare i suoi uomini, i quali sono stati ben felici di ubbidire. La loro scappatella si conclusa con un controllore che gli ha messo a ferro e fuoco il cervello. Sarebbero tutti in un ospedale se non fosse stato per questo stalker che era con loro. Quando Topol ha ripreso i sensi in seguito al processo di zombificazione, quello stalker era accovacciato accanto al controllore e gli stava tagliando le orecchie. + + + Hai sentito del villaggio di Kopachy? Quando il primo disastro colp la centrale di Chernobyl, quell'area fu colpita al punto che decisero di seppellire tutto il villaggio. Ora non resta altro che piccoli cumuli radioattivi, al posto delle case. Dicono che prima del disastro era un posto da favola. Tremo a pensare cosa ci si potrebbe trovare oggi. Tutti hanno troppa paura per andare a controllare. Ma se si sbagliano... potrebbe essere una miniera d'oro di manufatti! + + + Sai, a Yanov ci sono solo due stalker che possono percepire l'avvicinarsi di un'emissione. Conciaossa, il nostro medico, e Zulu, un ex membro della Duty. Il prefisso ex un'aggiunta recente... Quando la Duty arrivata alla stazione Yanov, i combattenti della Freedom si trovavano gi l. Come prevedibile, la situazione si scaldata in fretta. Entrambe le fazioni hanno subito gravi perdite, e persino alcuni stalker liberi sono stati colpiti da dei proiettili vaganti. A quel punto Zulu ha annunciato l'avvicinarsi di un'emissione. Senza altra scelta, la Duty e la Freedom hanno dichiarato una tregua e si sono nascoste nella stazione. Terminata l'emissione, Zulu ha lasciato la Duty e si stabilito nella torre vicino alla stazione. + + + Si raccontano ogni genere di strambe storie... non ti conviene credere a tutto quello che senti. La gente che racconta storie dappertutto nella Zona. Ma la cosa strana che alcuni stalker della stazione Yanov hanno segnalato di aver visto un UFO. Dicono che come un piatto nero di circa cinque metri di diametro. Altri sostengono che abbia l'aspetto di un aeroplano visto da lontano, quindi dicono che non sia nulla di cui preoccuparsi. Uno dei testimoni, per, un ex pilota e giura di non aver mai visto nulla del genere in tutta la sua vita. + + + Ultimamente arrivano solo brutte notizie. Gli uomini pi in gamba spariscono uno dopo l'altro, poi ritroviamo i loro cadaveri completamente prosciugati dal sangue. Devono essere quei maledetti succhiasangue, e chi se no? Oh, quanto vorrei trovare la loro tana e riempirli di piombo! Presto ci toccher andare in bagno due alla volta. Tanti saluti alla storia dello stalker solitario. + + + Ho una notizia per te. I tizi della Freedom hanno messo le mani sul PDA del leggendario fondatore della Duty. E sai una cosa? Hanno scoperto che lui aveva ingannato i suoi uomini, raccontando loro che il comando dell'esercito li aveva abbandonati nella Zona. Si inventato tutto in modo da poter fondare la sua fazione! Ma storie del genere non durano nella Zona. Poco dopo il nostro eroe si trovato in una bolla di spazio ed uscito di scena. Cos va la vita... e pensare che io avevo seriamente pensato di unirmi alla Duty! Bah, che sputino le loro stupidaggini ipocrite senza di me! + + + Hai presente quella nuova squadra della Duty? Sembra siano apparsi dal nulla. Pensaci: un gruppo di combattenti della Duty parte da Yanov e torna tre volte pi numeroso. Ma si clonano o cosa? Immagino che una cosa del genere sia tipica della Duty. L'unico modo di distinguerli gli uni dagli altri il rango! + + + Hai presente quella nuova squadra della Freedom? Sembra siano apparsi dal nulla. Pensaci: un gruppo di combattenti della Duty parte da Yanov e torna tre volte pi numeroso. Io mi sono fatto un'idea: germogliano. Non sei d'accordo? Con tutta l'erba che fumano, tra poco metteranno radici e si riprodurranno come le piante! + + + Conosci Gonta e i suoi ragazzi? Per un po' sembrava che la sfortuna li avesse presi di mira, tra la scomparsa di Danila e Crab fuori gioco. Ma ora si sono rimessi in carreggiata. Eseguono delle misurazioni per conto degli scienziati e sembra che si trovino bene. Non male, no? Un lavoro sicuro e un bel passo avanti verso l'ottenimento del permesso. + + + Hai saputo degli stalker Mitay, Torba e Grizzly? Io ho sentito dire che si erano messi a eseguire delle misurazioni per gli scienziati. Ma che razza di storia ? Se vuoi il mio parere, quelle teste d'uovo sono dei buoni a nulla. Ma almeno ora quei ragazzi si sono messi in riga. Forse un giorno potrebbero persino ottenere il permesso ufficiale. + + + Conosci Spartacus e i suoi uomini? Beh, non li vedrai pi alla Skadovsk... ora difendono il bunker degli scienziati. Buon per loro, sanno come occuparsi dei mutanti e sanno tenere a bada i banditi. La scienza una degna causa che necessita di un po' di pace e tranquillit. + + + Hai visto i mercenari rigirarsi i pollici alla sotto-stazione? No, di sicuro non di recente. Sono andati a Jupiter a difendere il bunker degli scienziati. Prima di loro c'erano altri mercenari, ma ho sentito dire che successo qualcosa a quel gruppo. Se vuoi il mio parere, non un brutto giro! Alcuni mercenari scompaiono, altri ne prendono il posto e via dicendo... Ancora un po' e a Zaton ci saremo sbarazzati completamente dei mercenari. + + + Si dice che ora il bunker degli scienziati sia protetto dai valorosi combattenti della Duty... Mi chiedo cos'abbiano da guadagnarci. Credono davvero che quegli "scienziati" li ricompenseranno con una pistola al plasma nuova di zecca con cui andare a caccia di criceti? Ma che proteggano le mie chiappe, va'... + + + Dicono che ora il bunker degli scienziati sia protetto dalla Freedom. Gli scienziati non hanno paura che i loro campioni da studio possano andare in fumo... letteralmente? Per c' un aspetto positivo di questa faccenda: se qualcuno vorr attaccare il bunker, prima dovr superare una cortina di fumo! Ah ah! + + + Sei stato a Jupiter, lo stabilimento di componenti elettronici e radio? Un posto da brividi. Nessuno sa con precisione cosa succeda l dentro. Ci sono anomalie e mutanti come in tutti gli altri posti... ma non ho il coraggio di andarci. Ho la sensazione che quel posto significhi guai. + + + Ehi, tu non sei quello che ha smascherato il medico della Skadovsk? Te ne sono grato, davvero. Avrei potuto essere il suo prossimo paziente, sai... Pensavamo tutti che fosse colpa dei mostri, ma forse certa gente non molto diversa da loro. un mondo fatto di cane mangia cane, non trovi? + + + Dovrei essere io a chiedertelo. Dopo che tu sei entrato in quelle gallerie sotto Jupiter, sono iniziate a circolare voci sul fatto che tu fossi arrivato fino al centro della Zona. Hai sollevato un gran polverone. Almeno una dozzina di persone non vedevano l'ora di seguire i tuoi passi. Nitro li ha convinti a darsi una calmata, dicendo che i cancelli delle gallerie si erano chiusi e lui non avrebbe potuto fare nulla per riaprirli. Certo, alcune teste calde vorrebbero farli saltare, ma sono ancora l a chiedersi dove potersi procurare la dinamite e come faranno a respirare una volta l sotto. + + + Ehi, hai saputo le ultime novit su Garry, lo stalker che lavorava per gli scienziati? Non pi un "trasgressore". Che tu ci creda o no, ha ottenuto un permesso ufficiale per restare nella Zona! A questo punto penseresti che ha raccolto il suo bottino e se n' andato a casa, no? Invece quel pazzo bastardo partito per Pripyat. Tutti pensavano che fosse spacciato, come gli altri, e invece si sbagliavano! arrivato a destinazione, ma i suoi servizi non interessavano granch agli stalker, quindi si unito a un gruppo di militari. Adesso felice insieme ai marine, con il suo bel permesso, ma l'accesso a quell'area ancora proibito agli stalker normali. + + + Beh... la Freedom e la Duty si sono rimesse a combattere, stavolta per via di un grosso deposito. Dicono che contenesse abbastanza equipaggiamento da armare tre divisioni di fanteria. Non so di chi fosse originariamente quel deposito, ma lo spettacolo stato notevole. Gli stalker di Yanov si sono messi in agitazione, ma per fortuna sono riusciti a farsi da parte in tempo, altrimenti sarebbe stata una bella mischia. Credo che la Duty abbia avuto la peggio, perch ora l'area protetta da squadre della Freedom. + + + Beh... la Freedom e la Duty si sono rimesse a combattere, stavolta per via di un grosso deposito. Dicono che contenesse abbastanza equipaggiamento da armare tre divisioni di fanteria. Non so di chi fosse originariamente quel deposito, ma lo spettacolo stato notevole. Gli stalker di Yanov si sono messi in agitazione, ma per fortuna sono riusciti a farsi da parte in tempo, altrimenti sarebbe stata una bella mischia. Credo che la Freedom abbia avuto la peggio, perch ora l'area protetta da squadre della Duty. + + + Ultimamente successo qualcosa. Un gruppo di stalker stava esplorando le gallerie sotto Jupiter ed incappato in qualcosa, cio in qualcuno. Le pistole gli sono schizzate via dalle mani, poi gli piombato addosso di tutto. Non hanno idea di che cosa sia successo veramente, ma hanno perso due uomini. + + + Ho sentito che nelle gallerie a nord di Jupiter hanno trovato disgustose tracce di mutanti. Trapper ha inviato uno stalker per indagare, e hanno scoperto che era una tana di seppellitori. Perch "era", mi chiedi? Perch quello stesso stalker ha spazzato via tutti i seppellitori. Da solo... Tu corrisponderesti anche alla sua descrizione, se non fosse che lui un po' pi alto e porta sempre un lanciagranate con s. + + + Gli stalker sono finiti... stanno arrivando dei mostri da Fen. Gli stalker allo stabilimento di cemento li hanno visti trascinare via uno dei nostri ragazzi. Erano almeno una dozzina, talmente enormi da non riuscire neanche a immaginarli. Sembravano dei succhiasangue, solo che erano grossi il doppio e molto pi veloci. Preghiamo che Trapper riesca a capire come eliminare quelle bestie... + + + Hai sentito dei succhiasangue della palude? Quelli a Fen? Beh, non ci sono pi. Ci ha pensato Trapper... non personalmente, per, ha assunto degli stalker. Dicono che abbia radunato una squadra di circa dieci uomini e abbia passato pi e pi volte al pettine la palude: ogni volta che trovavano uno di quei bastardi lo rimandavano al creatore. Non sopravvissuta nemmeno una rana. + + + Poco dopo il diffondersi di voci riguardo una chimera qualcuno l'ha tolta di mezzo. I mutanti uccidevano stalker a dozzine, ma direi che stiamo invertendo la tendenza. Da altre fonti ho saputo che quel tipo era un esperto cacciatore, che nella sua vita ha ammazzato pi mostri di quanto io e te abbiamo ucciso delle mosche. + + + Hai sentito che gente recluta oggigiorno la Freedom? C'era questo Flint che millantava a destra e a manca i suoi successi e i suoi trofei... beh, si scoperto che un vero bastardo. Ha lasciato il suo compagno a morire in un'anomalia, ha preso il suo bottino e se l' data a gambe. In seguito hanno scoperto che a Zaton aveva praticamente dato un gruppo di cacciatori in pasto a una chimera. Avevo una considerazione pi alta della Freedom... dannazione, preferirei essere senza una fazione che avere amici del genere. + + + Il gruppo di Gonta e uno stalker sconosciuto hanno eliminato la Chimera di Zaton. Aspetta, quello stalker eri tu, vero? Non che potresti fornirmi un racconto dettagliato? A proposito, grazie mille... ora avremo un mutante divoratore di uomini in meno di cui preoccuparci! + + + Non so se la cosa ti interessi, ma qui abbiamo un certo Noah, un pazzo ubriacone. Possiede una brutta, vecchia chiatta, sulla quale pare esegua dei traffici illegali. Guardati da lui, uno che prima spara poi non si prende neanche la briga di chiederti chi sei. Che vada al diavolo. + + + Conosci questo Nimble? S, proprio un verme. Di sicuro per vende le armi migliori in circolazione. Chiss come fa a contrabbandarle. Cio, come si fa a trasportare un Vintar senza farsi notare? Dove te lo infili? Roba da maghi, credimi. + + + Si dice che Sultan sia nei guai fino al collo. Voleva rilevare l'attivit di Beard e toglierlo di mezzo, ma ha fatto il passo pi lungo della gamba. Ed inciampato. Gli aspetta un periodo difficile, ora che tutti i suoi uomini lo guardano di sbieco e che non ha pi l'influenza di una volta. + + + Si dice che Sultan tenga in pugno Beard, spremendolo fino all'ultima goccia. una buona notizia, e Sultan ha una certa importanza adesso, ma la cosa migliore che finalmente possiamo gestire la Skadovsk in libert. Sar bellissimo. Cerchi riparo da un'emissione? Nessun problema, ma prima sgancia il dazio! + + + Ehi, amico, hai sentito parlare dell'Oasi? Immagina, un posto che guarisce all'istante ogni ferita e malattia. Deve esserci un qualche trucco o magia... Per io mi sono fatto un'idea diversa. Si fa un gran parlare dell'Oasi, ma nessuno pi interessato all'Esauditore di desideri come una volta. E se l'Oasi fosse il desiderio di qualcuno diventato realt? + + + Tra le teste d'uovo si parla di un manufatto arrivato fin qui dall'Oasi. Ma senti questa: dopo che lo avranno studiato useranno i risultati delle ricerche per trovare una cura per il cancro! Mica male! + + + Stessa storia di tutti i giorni... La gente non fa che tirare fuori vecchie storie sul centro della Zona. Come quella sull'Oasi, un posto che ti guarisce all'istante tutte le ferite e ti ripristina l'energia. Sono pure e semplici stronzate, anche se starle ad ascoltare divertente. Soprattutto quando parlano della sua posizione. Oh, quanto vorrei che esistesse davvero un posto del genere... avremmo salvato tanti dei nostri ragazzi. + + + Voci di corridoio dicono che qualcuno abbia trovato l'Oasi. Non pensavo esistesse davvero, ma davanti ai fatti non si discute. Si dice che abbiano trovato anche un manufatto sul posto. Gli scienziati lo stanno studiando proprio adesso. Forse possono usarlo per costruire un congegno che faccia guarire alla velocit della luce... Ai nostri ragazzi farebbe sicuramente comodo. + + + Kopachy. Niente di nuovo per la Zona, ma nuovo per me. Immagina: un intero villaggio completamente sepolto. La storia risale al 1986: le case emettevano un livello di radiazioni talmente alto che dovettero seppellire le case fino ai tetti. Che spettacolo da brividi... + + + Sai come abbiamo fatto noi e quelli della Duty a finire di stanza insieme a Yanov? stato merito di Zulu. Al tempo lavorava per la Duty, ed era uno specialista nel percepire l'avvicinarsi di un'emissione... Noi per arrivammo per primi a Yanov, seppur dopo gli stalker. Non abbiamo avuto nemmeno il tempo di accenderci una sigaretta che sono arrivati quei militari, agitando le loro armi contro di noi. L'ultima volta che ho visto un simile massacro stato alla Discarica pi di un anno fa. Decine e decine di morti per entrambe le fazioni, tra cui il nostro specialista di emissioni, possa riposare in pace. Poi Zulu dice, "Arriva un'emissione! Tutti al riparo!", e noi cosa avremmo dovuto fare, buttarli fuori e lasciarli a morire? Della Duty o no, sono pur sempre esseri umani. E ora viviamo cos: quando tutto tranquillo battibecchiamo, ma quando arriva un'emissione lottiamo fianco a fianco. Zulu ha lasciato la Duty e ora vive come un'eremita nei pressi di Yanov. + + + Non una novit e nemmeno un segreto, ma Cardan il tecnico finir per ammazzarsi di alcol. Quando arrivato alla Skadovsk beveva solo nelle occasioni speciali o per liberarsi dalle radiazioni. Solo in seguito ha iniziato a darci dentro, quando la morte dei suoi due amici lo ha sconvolto. Erano molto uniti, scommetto... + + + Ho una storia buffa da raccontarti. C' un tipo che racconta di aver visto un UFO sopra a Yanov. La Zona pu davvero far impazzire la gente, eh? I poltergeist e i controllori non gli bastano, macch, proprio non riescono a fare a meno delle vecchie storie di UFO. Almeno non ci sono ancora dei pazzi che fanno degli esorcismi sulla vodka. Immagina sentirli dire: "Oh, Signore! Allontana gli spiriti malvagi! Trattieni gli spiriti alcolici!". Ah ah! + + + Hai sentito del villaggio di Kopachy? Quando il primo disastro colp la centrale di Chernobyl, quell'area fu colpita al punto che decisero di seppellire tutto il villaggio. Ora non resta altro che piccoli cumuli radioattivi, al posto delle case. Dicono che prima del disastro era un posto da favola. Tremo a pensare cosa ci si potrebbe trovare oggi. Tutti hanno troppa paura per andare a controllare. + + + Questa storia non nuova, ma forse tu non l'hai mai sentita. Non abbiamo unito le forze con la Freedom perch ci piace coccolarci. Lo dobbiamo alle circostanze. Quando siamo arrivati qui la Freedom ci ha attaccati... Ci sono state ingenti perdite per entrambi gli schieramenti, anche se noi stavamo conquistando un piccolo vantaggio su quegli anarchici... Proprio mentre la battaglia era al suo apice, Zulu ha percepito l'approssimarsi di un'emissione. Lui non si sbaglia mai, sai... Fummo quindi costretti a sospendere il combattimento. Non capisco per perch, dopo quella volta, Zulu ha lasciato la Duty... + + + Ultimamente i nostri esploratori hanno avvistato un oggetto non identificato volare sopra la stazione Yanov. Un UFO, in altre parole. Prima che tu faccia domande stupide, un UFO non solo un disco volante con dentro dei marziani. Potrebbe essere un oggetto volante qualunque, da un pezzo di cartone al frammento di una meteora, purch i testimoni non siano riusciti a identificarlo. Capito? + + + Sei stato tu a portare quel PDA a Loki, vero? Cacchio, il massimo. Il leggendario fondatore della Duty, il Generale Tachenko, ha fregato i suoi stessi soldati. Ha rotto la radio in modo che non potessero essere raggiunti dall'esterno e ha formato il suo seguito di idioti... Solo per fare la fine di un vero idiota in una bolla di spazio! Roba del genere davvero incredibile, amico! + + + Hai visto la nuova squadra schierata da quelle mezze seghe di soldati? Non possono essere rinforzi provenienti dalla loro base... l'ideologia non ha ancora sostituito il buonsenso. Sono troppo addestrati per essere semplici stalker. Bah, chi lo sa. Forse sono della Monolith? Lo so, sembra incredibile! + + + Hai visto i nostri nuovi combattenti? Oh, sei stato tu a portarli qui, vero? Sei un grande. Sono tipi a posto, anche se un po' nervosi... Ma va bene cos, qualche mese in nostra compagnia e si rilasseranno. Inizieranno ad adeguarsi al nostro stile di vita e presto diventeranno come noi. + + + Abbiamo delle nuove reclute niente male: una squadra di ex combattenti della Monolith. E non sono dei novellini, ma combattenti esperti. Certo, dopo aver lasciato la Monolith non sono del tutto a posto, ma non c' problema. In mezzo a noi si adatteranno in un batter d'occhio. + + + Dicono che la Freedom ha reclutato degli ex combattenti Monolith. Fatico a crederci, ma in effetti hanno una nuova squadra, che di sicuro non proviene dall'esterno della Zona. Immagino siano piuttosto disperati... oppure tutte quelle droghe gli hanno spappolato definitivamente il cervello. Adesso chi recluteranno, un gruppo di zombi? Un battaglione di seppellitori? + + + Presto in quest'area torneranno a esserci legge e ordine. La Duty ha assunto il controllo delle posizioni chiave. Ci siamo assicurati un punto fermo a Yanov e l'incarico di proteggere costantemente il bunker degli scienziati. ora che la Freedom faccia i bagagli e levi le tende... qui gli anarchici non sono pi i benvenuti. + + + Ecco la nuova meraviglia del mondo: un Cardan sobrio. Riesci a credere che sia sul vagone? Quelli alla Skadovsk gli hanno chiesto se ha messo le mani sul numero di un centro per alcolisti anonimi, e lui ha risposto, "L'unico numero che mi serviva era il sessantadue". + + + Sei stato tu ad aiutare i nostri ragazzi a procurarsi il lavoro presso gli scienziati, vero? Te ne sono grato. stato bello vedere i nostri uomini, anzich quei dannati mercenari, al loro bunker. Bella storia! + + + Vediamo... possiamo attingere a un deposito segreto della Duty. Ora useremo quel deposito per il suo scopo originale: vi terremo prigionieri quegli schifosi della Duty e li costringeremo a rivelare tutti i loro segreti. Eh eh. Ah, grazie per il suggerimento sul sistema di allarme... senza rinforzi non avremmo avuto una sola possibilit. + + + Un'altra vittoria per la Duty! Quegli anarchici hanno davvero esagerato... si sono intrufolati nel nostro magazzino segreto convinti di poterla passare liscia. Col cavolo! Li abbiamo colti di sorpresa e gli abbiamo fatto saltare la testa come fossero criceti rabbiosi. + + + Non una novit il fatto che la Freedom sia composta da pura feccia, ma abbiamo scoperto qualcosa di nuovo riguardo uno dei loro svitati pi noti. Si faceva chiamare Flint nella Freedom, ma prima di unirsi a loro usava il nome Magpie ed era uno stalker. Almeno, Magpie era il suo nome quando arriv a Zaton e per poco non port un gruppo di cacciatori dritto nelle fauci dei mutanti. Li freg e per poco una chimera non li sbran, e intanto quel bastardo si prese la loro attrezzatura e venne a Yanov. Dopo essersi unito alla Freedom, gett il suo compagno in un'anomalia per rubargli il suo manufatto. Ecco che cosa riserva la Freedom. + + + Un nuovo progetto di costruzione navale, condotto da Noah. Ecco l'ultima attrazione di Zaton: uno stalker di nome Noah. Con esperienza, motivato e del tutto pazzo. La sua ultima e folle idea era quella di salvare tutti gli stalker dall'Apocalisse. Per riuscirci, sta trasformando una vecchia chiatta in una "arca". Un vero svitato. Se decidi di passare a trovarlo, stai attento a non infastidirlo. Se non lo farai non ti far alcun male. + + + Hai gi incontrato Nimble? Adesso sulla Skadovsk. un vero professionista nel suo campo. Pu procurarti tutto quello che ti serve. Beh, quasi tutto. Ultimamente si occupa per lo pi di armi e tute, ma la sua merce sempre di ottima qualit! Oggetti speciali, progetti sperimentali, articoli realizzati a mano... Non ha certo prezzi convenienti, ma perch dovrebbe averli? L'esclusivit ha un suo prezzo! + + + Sapevi che Pilot sta usando un nuovo percorso per spostarsi tra Zaton e Jupiter? Una volta era una strada molto lunga: bisognava salire le colline, evitare le anomalie e via dicendo. Ora invece come una passeggiata nel parco, oltre al fatto che molto pi corta. Ma Pilot non uno da prendersi meriti che non gli spettano: non stato lui a scoprire quella strada. stato uno stalker a mostrargli le mappe. Si fatto pagare, certo, ma non un occhio della testa. + + + Non molto, a essere sincero. + + + Ovunque si guardi, nella Zona c' sempre qualcosa di nuovo. + + + Beh, adesso sei qui. Questa gi di per s una novit, direi. + + + Che si dice di nuovo nella Zona? + + + Non so altro che potrebbe interessarti. + + + Te lo direi con piacere, ma non so altro. + + + Ti ho detto tutto quello che so. + + + Mmm... forse ti conviene chiedere a Grouse sulla Skadovsk. Cerca qualcuno che lo aiuti a scoprire come mai gli stalker stiano tutti sparendo senza lasciare traccia. Tutti danno la colpa ai succhiasangue, perch i cadaveri vengono ritrovati completamente prosciugati. Ma qui si esagera... praticamente scompare qualcuno tutti i giorni. E generalmente i succhiasangue non agiscono in questo modo... Grouse ha assunto anche un cacciatore esperto che individui questi succhiasangue. + + + Sai, quando a uno stalker servono dei soldi ha due modi per procurarseli: trovare dei manufatti e portarli ai mercanti per 30 copechi per ogni rublo del loro valore o lavorare per gli scienziati. Quelle teste d'uovo si inventano sempre qualcosa da farti fare, che sia la consegna di un manufatto raro o di una carcassa mutante. Ma, soprattutto, se entri nelle loro simpatie, possono emetterti un permesso di soggiorno permanente nella Zona, del tutto ufficiale e legittimo! Immaginati a superare un blocco militare, con lo zaino pieno di tesori, e ricevere in cambio il saluto militare! Che meraviglia! Comunque, il bunker degli scienziati a ovest della stazione Yanov. C' gi un altro stalker che lavora per loro, magari assumeranno anche uno come te. + + + Il tuo successo dipende da quello che fai. Se non disdegni dare la caccia ai mutanti, riceverai una valanga di offerte. Fai un salto nel seminterrato della stazione Yanov e chiedi di Trapper: lui paga bene chi uccide i mutanti, ma non sparare al primo psicocane che vedi solo per ricevere una ricompensa. Trapper chiede di uccidere mostri specifici che interferiscono con la raccolta dei manufatti o che bazzicano nei posti usati dagli stalker come nascondiglio dalle emissioni. + + + La gente come te che arriva alla Skadovsk deve andare da Beard. Lui paga bene i manufatti che gli vengono consegnati, ma ti dir una cosa: ha un pessimo senso degli affari. Non ha voluto dividere i suoi profitti con gente di una certa importanza... e questo gli si ritorcer presto contro. Intesi? + + + Se ti servono dei contanti, vai da Owl. Lui vende tutto quello che serve a un vero uomo alla Skadovsk: informazioni, armi, di tutto. Se hai roba che scotta o di valore, come dei documenti o il PDA di uno stalker, portalo a Owl e lui ti pagher. Puoi anche racimolare un po' di grana svolgendo dei lavori per lui. Chiedigli se ha bisogno di qualcosa. + + + Ti conviene chiedere a Gonta. Lui e i suoi uomini hanno una bella storia da raccontare. Una chimera arriv a Zaton non molto tempo fa, cos Gonta e il suo gruppo andarono a cercarla. Si divisero in due squadre per individuarla e inviarono uno dei cacciatori in cerca della tana di succhiasangue. Quando finalmente trovarono la chimera erano un po' a corto di uomini, cos presero con loro un altro stalker, Magpie. Non so bene come and la faccenda, ma si dice che Magpie se la diede a gambe non appena vide la chimera. Gonta si salv per miracolo, e uno dei suoi uomini fu gravemente ferito. Ma la chimera ancora in libert, e loro sono in cerca di persone che gli diano una mano. + + + Semplice: se vuoi fare soldi, Sultan l'uomo che fa per te. il capo da queste parti, quindi se entrerai nelle sue simpatie ti trover senz'altro un lavoro. + + + Se sei un bravo stalker, cio se sei bravo a recuperare i manufatti, parla con Beard. Qui molto rispettato. l'unico sulla Skadovsk che ti pagher bene i manufatti che gli porti. Ha anche le conoscenze giuste per trasportarli fuori dalla Zona. E poi un brav'uomo... sa sempre darti il consiglio giusto o trovarti un lavoro adatto alle tue esigenze. + + + Alla Skadovsk c' un mercante di nome Owl. Non esattamente una persona gradevole. Si lamenta sempre del fatto che tutti i manufatti finiscono a Beard e mai a lui, ma se ti servono dei soldi puoi chiedergli cos'ha da offrirti. Quel furbastro non traffica solo le munizioni. Lui ti pu dire cose, vendere cose, comprare le tue cose e pagarti bene per quello che gli interessa sapere. Vallo a trovare, sul secondo ponte di poppa. Sono sicuro che troverete modo di collaborare. + + + Puoi chiedere a Vano, bazzica dalle parti del bar di Yanov. Si inguaiato con i banditi, e sono gi tre volte che cerca di ripagare il suo debito. Ha parecchia esperienza e pu individuare un'anomalia a occhi chiusi... eppure riesce sempre a ficcarsi nei guai. C' stato chi gli ha suggerito di filare via. La Zona troppo grande perch la mala riesca a trovarlo, ma lui troppo orgoglioso per darsi alla macchia, e non sono in molti disposti ad aiutarlo a risolvere i suoi problemi con i banditi... + + + Dimenticati i lavori, amico... I banditi sono ormai fuori controllo: hanno catturato Mitay e chiedono un riscatto. Mitay uno dei primi stalker a essere arrivati qui a Yanov, e ha costruito questo posto perch la gente avesse un posto dove rifugiarsi durante le emissioni. Ora che ha bisogno di aiuto, per, tutti gli voltano le spalle. Chiedere alla Freedom o alla Duty sarebbe inutile, quelli sono troppo impegnati ad azzannarsi tra loro... Ma gli altri dovrebbero fare qualcosa! Ah, che senso ha stare qui a parlare... Nemmeno gli uomini di Mitay riescono a escogitare un modo per liberarlo. Se vuoi renderti utile parla con Grizzly, lo troverai al bar della stazione. + + + A Nitro, il tecnico di Yanov, servono dei materiali da lavoro. Nel caso non lo sapessi, ci sa fare sia con le armi che con i congegni elettronici. Ma a volte la sola abilit non basta: gli occorrono i materiali giusti, quindi ha iniziato a chiedere in giro. Il problema che tutti i posti sicuri sono gi stati ripuliti, e gli altri sono troppo pericolosi per la maggior parte della gente. Nitro spera che qualcuno sia disposto a correre questi rischi, e sono certo che pagher bene un simile disturbo. + + + Ho sentito che Zio Yar alla stazione Yanov stava cercando uno stalker che gli dia una mano per un lavoro. Non so perch non chieda aiuto ai suoi amici della Freedom... Comunque, un bravo vecchio, quindi forse ti conviene parlargli e vedere se riuscite a trovare un accordo. + + + Mmm... non conosco nessuno del genere. + + + Non sei l'unico che vorrebbe saperlo. + + + E perch dovrei saperlo? + + + Sai se qualcuno ha un lavoro per me? + + + Me l'hai gi chiesto. + + + Non ho niente di nuovo da dirti. + + + Ti ho gi risposto. + + + OK, lascia perdere. + + + Vorrei chiederti una cosa. + + + Chiedi pure. + + + Sputa il rospo. + + + Spara. + + + Ti ascolto. + + + Aiuto! + + + Prendi questo kit di pronto soccorso. + + + Mi dispiace, non ho nulla. + + + Capisco. + + + Cosa hai in mente? + + + Posso venire con te? + + + Certo. Pi siamo meglio . + + + No, spiacente. Io viaggio da solo. + + + Allora muoviamoci. + + + Devo andare in un posto. Se ti pago saresti disposto a portarmici? + + + Nessun problema. Dove devi andare? Scegli. + + + D'accordo. Andiamo. + + + Ho cambiato idea. + + + No, ho altre cose urgenti di cui occuparmi. + + + Me la sto prendendo comoda. + + + Niente di particolare, me la sto solo spassando un po'. + + + Secondo te cosa sto facendo? Niente di niente. + + + Rintraccio mutanti. + + + Sto pedinando un paio di stronzi. Dannati ritardati... + + + Sto seguendo alcuni mercenari. Quelli s che sono veri bastardi. + + + Sono alle calcagna di un gruppo di fanatici. Combattenti Monolith, ecco chi... + + + Sono a caccia di zombi. Quei poveri diavoli sono davvero troppi... + + + OK. Ti coster + + + Sai, ho cambiato idea. + + + Non ho tutti quei contanti. + + + Oh, niente, direi. + + + Sto seguendo dei mutanti. Qualcuno deve pur insegnar loro a stare al posto. + + + Sto dando la caccia ad alcuni criminali del posto. + + + Sono a caccia di scalpi mercenari. Hanno un debito che deve essere saldato. + + + Do la caccia a quei maledetti Monolith. + + + Sto cercando di rintracciare alcuni dei miei debitori. + + + Al momento non sto facendo nulla. + + + Do la caccia ai mutanti, nel tentativo di ripulire quest'area dal loro sudiciume. + + + Sono in missione, devo individuare una squadra di banditi. + + + Il mio bersaglio sono i mercenari. Sto seguendo le tracce della loro squadra. + + + Sto dando la caccia a una squadra di Monolith. + + + Do la caccia a quegli stupidi stronzi. Quelli della Freedom, ecco chi... + + + Sono a caccia di manufatti. + + + Non vado mica a funghi... Diciamo piuttosto a manufatti. + + + Cerco manufatti. + + + Sono diretto verso l'anomalia Boiler, quella accanto a un boschetto. + + + Mi sto per dirigere al lago settentrionale... trascorrer un po' di tempo sulla penisola. + + + Mi diriger oltre il lago settentrionale. L c' un buon punto dove mettere le tende. + + + Mi diriger ai boschi oltre il lago settentrionale. + + + Sono diretto a una piccola foresta a ovest della segheria. + + + Sono diretto alla collina a ovest della palude. L non potr essere raggiunto dall'inquinamento della palude. + + + Sono diretto al complesso dell'antenna. A ovest c' un bel posticino. + + + Sono diretto ai boschi a ovest della Pinquercia... vieni con me, se vuoi. Un po' di compagnia mi farebbe piacere. + + + A un boschetto tra la Foresta d'acciaio e le officine. + + + Verso il grande ponte... Si dice che a est si trovi un punto tranquillo e sicuro. + + + A un parcheggio a sud della vecchia chiatta. + + + Niente di speciale, sono un viaggiatore. Mi accamper su una collina a est della Skadovsk. + + + A un boschetto tra Izumrudnoye e la stazione di rifornimento. + + + A un incrocio sulla strada nei pressi dell'impianto dei rifiuti. + + + All'anomalia Boiler. + + + Alla stazione dei ranger. C' un complesso di edifici l, probabilmente lo avrai anche visto. In uno ci sono persino delle fornaci... chiss cosa combinano laggi. + + + A un boschetto a ovest della fattoria bruciata. + + + A un boschetto a est dell'anomalia Boiler. + + + A una collinetta poco dopo il lago settentrionale. + + + A un piccolo boschetto a sud della fattoria bruciata. + + + Sono diretto a ovest della Skadovsk... dove spuntano le tubature. + + + Sono diretto a un punto a met strada tra la Skadovsk e la stazione di drenaggio. + + + A un lago paludoso nei pressi della vecchia chiatta. + + + A una baia nei pressi dell'anomalia Cicatrice. + + + Alla stazione di rifornimento. + + + Alle gole della Pinquercia. + + + Voglio cercare dei manufatti nell'anomalia Artiglio. + + + Sono diretto a una collina a ovest dell'anomalia Boiler. + + + All'anomalia Foresta d'acciaio. + + + Sono diretto all'anomalia Foresta d'acciaio per cercare manufatti. + + + Sono diretto alla palude. Certo, non sar facile respirare con tutto quel gas, ma i manufatti sono un buon incentivo. + + + Sono diretto alle officine della sotto-stazione. Dicono che sia un buon posto dove nascondersi dalle emissioni, quindi andr a fare un tentativo. + + + Hai presente la segheria qui vicino? Ecco, l che sono diretto. Voglio controllare se c' qualcosa di valore. + + + Voglio passare un po' di tempo all'albergo Izumrudnoye. Oh, non niente male... per la carne e i cinghiali! Ah ah! Comunque, sono sicuro che per un po' potr accamparmici. + + + A un ponte. Credo che sulla mappa sia indicato come Preobrazhensky. + + + Alla stazione di drenaggio. Scommetto che in quell'area c' ancora qualcosa di valore da trovare. + + + Alla vecchia chiatta. + + + Voglio passare dalla fattoria bruciata, nel caso sia spuntato qualche nuovo manufatto. + + + All'altopiano meridionale. + + + Al crepaccio accanto alla stazione di rifornimento. + + + Sono diretto al complesso dell'antenna Krug. Mi serve un posto sicuro dove nascondermi dalle emissioni. Purtroppo si dice che l ci siano parecchi mostri. + + + Sono diretto al complesso dell'antenna Krug. Mi serve un posto sicuro dove nascondermi dalle emissioni. Purtroppo si dice che l ci siano parecchi mostri. + + + Vado a cercare manufatti dalle parti della Pinquercia. Spero che i mutanti se ne staranno buoni. + + + Al pozzo nero... Sai, l'impianto dei rifiuti. Per nascondersi dalle emissioni un posto vale l'altro. + + + Sono diretto al molo delle navi sul lago settentrionale. Una volta l improvviser. + + + Sono diretto al porto, dove si trovano le gru. Non un brutto posto per accamparsi. + + + Voglio cercare manufatti nell'anomalia Boiler. Spero che la mia tuta resista a questo giretto in mezzo alle sorgenti termali. + + + All'anomalia Cicatrice. + + + Voglio vedere se la mia attrezzatura ignifuga e cercare manufatti... tutto questo nell'anomalia Circo. + + + Alla stazione dei ranger. + + + Mi accamper a Shevchenko. L sar al sicuro dalle emissioni, e per i mutanti non sar facile attaccarmi. + + + Mi accamper a Shevchenko. L sar al sicuro dalle emissioni, e per i mutanti non sar facile attaccarmi. + + + Sono diretto al porto, dove si trovano le gru. Non un brutto posto per accamparsi. + + + Voglio scaricare il mio bottino e bermi un paio di drink. La Skadovsk il posto che fa al caso mio. + + + Sono diretto al checkpoint dell'esercito, accanto allo stabilimento Jupiter. + + + Al magazzino dei contenitori. + + + Sono diretto a un'area niente affatto appariscente tra il magazzino dei contenitori e il tunnel meridionale. + + + Alla stazione Yanov. Finalmente un po' di tempo per riposarmi. + + + Al tunnel a nord di Kopachy. + + + Sono diretto a un posto davvero spaventoso, il villaggio di Kopachy... o quello che ne resta. S, ho fatto scorta di munizioni e antiradiazioni... Ne avr bisogno! + + + Alla fabbrica di cemento. Un buon punto di osservazione e lass nessuno potr attaccarmi alle spalle. + + + Alla fabbrica di cemento. Voglio controllare cosa c' nel seminterrato. + + + Alla sotto-stazione dalle parti di Yanov. + + + Sono diretto a un punto nei pressi del tunnel ferroviario a sud. + + + Sono diretto a uno stagno di raffreddamento nei pressi dello stabilimento Jupiter. + + + Sono diretto al complesso Volkhov AA, dove dar la caccia agli zombi. + + + Al bunker. Sai, quello al complesso Volkhov AA. + + + Al boschetto anomalo nei pressi della cava. Magari trover un paio di manufatti. + + + Sono diretto alla cava, dove ci sono i furgoni degli operai. + + + C' un punto tra la cava e la stazione Yanov dove andr a riposare per un po'. + + + Sono diretto al tunnel orientale, quello che passa sotto lo stabilimento Jupiter. + + + All'anomalia Bitume. Voglio vedere se la mia tuta davvero ignifuga. + + + Sono diretto all'anomalia Plavni per cercare dei manufatti. Ho antidoti a sufficienza, ma sono i mostri che mi preoccupano. + + + Al complesso di ventilazione, tra la fabbrica e il magazzino dei contenitori. Perch? Ah, magari lo sapessi. + + + Sono diretto alle officine di Jupiter. Forse scoprir perch quel posto ha una pessima reputazione. + + + Sono diretto al fondo della cava. Gli stalker dicono che da quelle parti si trovano un sacco di manufatti. + + + Al parcheggio, dove si trovano i vecchi veicoli. Andr a caccia di manufatti nelle anomalie elettriche. + + + C' un bel posticino tra il complesso Volkhov AA e il magazzino dei contenitori. l che sono diretto. + + + Al bunker degli scienziati. + + + Alla torre di raffreddamento a nordovest della stazione Yanov. + + + Verso lo stabilimento Jupiter, ma non ho nessuna intenzione di entrare. Far un giro per gli edifici dell'amministrazione e cercher di capire cosa posso fare. + + + Sono diretto all'anomalia Cumulo di cenere, oltre Kopachy. + + + Sono diretto alle officine di Jupiter. Dicono che in quell'area sia precipitato un elicottero, quindi andr a controllare. + + + Sono diretto al treno in rovina tra il complesso Volkhov AA e il parcheggio. + + + Sono diretto al tunnel meridionale, per non correre rischi in caso di emissione. + + + Sono diretto a un punto tra Yanov e Kopachy. + + + Sono diretto a un punto nei pressi del canale, a sud della fabbrica di cemento. + + + Sono diretto a un punto nei pressi del canale, a nord dello stabilimento Jupiter. + + + Andr a controllare la cava. + + + Andr a controllare la cava. + + + Andr a controllare l'area a nord di Yanov. + + + Verso il complesso Volkhov AA. C' un buon punto dove accamparsi, tra il complesso e Kopachy. + + + Oh, sono semplicemente in viaggio... Sono diretto al magazzino dei contenitori. + + + Sto controllando l'area. Al momento sto andando a controllare cosa reste del checkpoint dell'esercito. + + + Alla piattaforma di atterraggio degli elicotteri, quella tra la fabbrica e il magazzino dei contenitori. + + + Sono diretto a un punto a sud della stazione Yanov, accanto alla ferrovia. + + + A un punto a nord della stazione Yanov. + + + Al boschetto anomalo. + + + A un punto a sud del complesso AA. + + + Allo stagno di raffreddamento accanto all'anomalia Bagno di cemento. + + + Vado a controllare l'area intorno allo stabilimento. + + + Vado a controllare l'area intorno allo stabilimento. + + + Al cortile dietro la lavanderia. + + + Alla lavanderia, il posto pi sicuro da queste parti. + + + All'ospedale. Spero di non incappare in quei pazzi Monolith... + + + Alla libreria... Ho sentito dire che un buon riparo dalle emissioni. + + + Vado a vedere l'attrazione locale... il simbolo dell'Amicizia tra tutte le genti. Non lontano dalla libreria. + + + Alla vecchia macelleria. Non troverai certo del pane fresco di questi tempi, ma almeno un buon posto per nascondersi dalle emissioni. + + + Al negozio di Berezka. + + + Al vecchio asilo. + + + Alla piazza del cinema, nei pressi del monumento di Prometheus. + + + Sono diretto alla scuola. Dicono che sia piena di mostri, ma potrebbe essere un buon riparo da un'emissione. + + + Sono diretto al vecchio centro di servizio. Dovrebbe esserci un'anomalia al primo piano, e forse anche qualche manufatto. + + + Sto esplorando questa parte della citt. Al momento sono diretto alla vecchia macelleria. + + + Sto esplorando questa parte della citt. Al momento sono diretto alla vecchia macelleria. + + + Sto dando un'occhiata in giro. Voglio controllare quell'edificio dietro il complesso di appartamenti. + + + Voglio ispezionare il centro d'intrattenimento pubblico. Credo si chiamasse Yubileiny. + + + Sto ispezionando quest'area alla ricerca di anomalie. Credo ce ne sia una di fuoco in un cortile, a ovest dell'asilo. + + + Oh, faccio solo un giro per la citt. Al momento sono diretto al complesso di appartamenti. + + + Oh, faccio solo un giro per la citt. Al momento sono diretto al complesso di appartamenti. + + + Oh, faccio solo un giro per la citt. Al momento sono diretto al complesso di appartamenti. + + + Faccio solo un giro. Adesso sono diretto al porto del fiume. Spero di non incappare in qualche fanatico Monolith... + + + Sto cercando un posto a Pripyat con molti manufatti e senza mostri n combattenti Monolith... Eh eh. Andr a controllare quest'anomalia di cui ho sentito parlare, a sud del porto del fiume. + + + Verso il cinema Prometheus + + + Alla piazza del cinema, nei pressi del monumento di Prometheus. + + + Voglio riposare un po' e riprendere fiato. C' un bel posticino in un cortile a nord dell'asilo che farebbe proprio al caso mio. + + + A sud del complesso di appartamenti. + + + Sono diretto in questo posto tra l'asilo e il complesso di appartamenti. + + + C' questo posto chiamato Cicatrice, dove il terreno sembra colpito da una scure. L sono stati ritrovati dei manufatti, ma una volta che ci entri comincia a succedere qualcosa di strano. Il tuo cervello subisce una botta tale che quasi ti dimentichi di respirare, quando invece dovresti dartela a gambe. + + + Sai dove si trova la stazione di drenaggio? stata sottoposta a parecchie anomalie gravitazionali, ma niente che uno stalker esperto non possa affrontare. Continua a lanciare bulloni, come al solito. Ci sono anche delle radiazioni, dentro e fuori. per via dell'acqua... quel posto sembra un piccolo reattore all'uranio. + + + Qui c' una vecchia sotto-stazione, anche nota come Foresta d'acciaio. Capirai il perch di questo nome quando la vedrai. Certa gente sostiene di aver trovato numerosi manufatti dopo un'emissione. Non un posto molto pericoloso, pi che altro ci sono anomalie elettriche mescolate a radiazioni. Ci sono anche dei poltergeist. Se non ti nascondi in tempo ti seppelliranno in men che non si dica. + + + Lavorare? A essere onesto non saprei. Ma se hai la possibilit di aiutare la Freedom, parla con il nostro capo a Yanov. Vai all'ala sud e parla con Loki, lui la persona giusta. Ricorda, se credi nell'evoluzione della specie umana, in una verit superiore e nel significato dei doni della Zona, farai la scelta giusta. + + + Non ne ho idea, ma se trovi qualcosa che ci aiuti a combattere la Zona e quelli che la considerano un dono anzich una maledizione, parla con il comandante dell'unit della Duty, il Tenente Colonnello Shulga. Lui a capo della stazione Yanov. Lo troverai nell'ala nord. Una cosa certa: tutti i civili che contribuiranno al successo della Duty riceveranno una generosa ricompensa. + + + Tutti dicono che stanno succedendo cose strane alla vecchia torre di raffreddamento. Se ti sintonizzi sulla frequenza comune potrai sentire frammenti di chiamate... sembra che un povero diavolo stia cercando di uscire da un'anomalia. Quando chiedi delle coordinate, per, nessuno ti sa rispondere. La cosa pi strana il suono. Quel tipo di distorsione non pu proprio essere spiegato... + + + Sono diretto a un luogo a met strada tra la Skadovsk e Shevchenko. + + + A Jupiter. Anche se probabilmente non mi spinger troppo avanti. + + diff --git a/gamedata/configs/text/ita/st_dialogs.xml b/gamedata/configs/text/ita/st_dialogs.xml new file mode 100644 index 0000000..376f879 --- /dev/null +++ b/gamedata/configs/text/ita/st_dialogs.xml @@ -0,0 +1,978 @@ + + + + Ascolta, ho una domanda per te... + + + Parla, allora. + + + Che cosa ne pensi di Nimble? + + + Nimble? Penso che uno di questi giorni lo beccheremo in un posticino tranquillo, carico di mercanzie, e daremo una ripassata a quel bastardo! + + + Hai sentito qualcosa a proposito dell'Oasi? + + + Beh, una volta ho sentito questa storia... per farla breve, i ragazzi della Discarica avevano messo in giro la voce sulla posizione dell'Oasi, rendendola anche credibile. Poi sono andati l e si sono messi ad aspettare... Sai una cosa? Un sacco di idioti si sono presentati e quelli si sono arricchiti cos tanto che poco dopo hanno lasciato la Zona. E perch non farlo, d'altronde? Si erano sistemati per la vita. Solo uno di loro rimasto qui, un tizio di nome Yoga... + + + Che se riesci a trovarla, trovi anche la cura per tutti i tuoi malanni... non dev'essere male, niente pi postumi da sbornia, niente emorroidi... Basta trovarla, aprire un albergo e vivere di rendita. + + + Perch dovrei perdere tempo con storie del genere? Sono solo idiozie per gli imbecilli... i veri uomini non ci credono. Ti ritrovi seduto in un bar, con qualcosa da bere in mano e gli stalker tutti attorno, a discutere di dove si trovi l'Oasi: e tutti quanti quegli idioti giurano di conoscerne la posizione... Chiss perch cambia sempre passando da uno stalker all'altro. + + + Hai mai incontrato uno stalker di nome Magpie? + + + Ma certo... Mi bastato guardarlo un attimo per inquadrarlo: persino gli altri stalker lo trattano con disprezzo. Per non so dove si trovi... se lo stai cercando, dovrai darti da fare da solo. + + + No. la prima volta che sento questo nome, amico. + + + Sai chi potrebbe rubare qualcosa da un ripostiglio personale? + + + Un bastardo. Per faresti meglio a chiederlo ai capi, da Yanov. Loro sono famosi per dare la caccia a creature del genere. + + + Chi pu darmi una mano a decifrare una cosa? + + + Beh, ho sentito che Nitro, da Yanov, in gamba. Sembra che quando non lavorasse per la Duty, abbia violato un paio di PDA degli stalker. Ah, i bei vecchi tempi... + + + Non metterti a parlare difficile: per una cosa del genere avrai bisogno di un hacker. Una volta, mentre ero in gattabuia, ne ho conosciuto uno. Per quando io sono uscito a lui restavano ancora cinque anni... + + + Ho il PDA del mercante della Duty: conosci qualcuno a cui potrebbe interessare? + + + Sulla Skadovsk c' un mercante di nome Owl: paga piuttosto bene e i ragazzi di tanto in tanto gli vendono PDA di alcuni stalker. Non fa neppure troppe domande, il che un bene. + + + A chiunque, amico. Prova a pensarci: quelli della sua fazione lo stenderanno, per questo, mentre le altre fazioni si scannerebbero per averlo. Per Owl, a Zaton, potrebbe far sparire il PDA in pochi istanti... e soltanto lui saprebbe dove andrebbe a finire. Sta a te scegliere. + + + Dove posso trovare qualche strumento, qua attorno? + + + Beh, se hai bisogno di strumenti chirurgici, io guarderei negli ospedali e nei pronto soccorso. Se invece ti interessano strumenti per lavori pesanti, vai alla cava, da Jupiter. Per gli strumenti di precisione, dai un'occhiata nelle vecchie officine. + + + Come diavolo faccio a saperlo? Io non ho bisogno di strumenti per dare una lezione agli stalker... Ah, calmati, sto scherzando... + + + Chi potrebbe sbloccare un modulo di memoria? + + + Bella domanda! Sai, in fondo questa la mia specialit, no? Ma sei scemo o cosa? Ti serve un tecnico, oppure uno scienziato... non che hai creduto davvero che io lo sapessi fare, eh? + + + Voglio essere sincero: l'ultima volta che ho sbloccato un modulo di memoria andavo ancora a scuola, e si trattava di un fottuto floppy disk. Vai a parlare con qualche esperto, che meglio. + + + Chi potrebbe aprire un contenitore d'acciaio? + + + Conosci Cardan, della Skadovsk? Beh, l'altro giorno lo hanno fregato e ha iniziato a inseguire l'idiota responsabile con una sbarra da scasso. Secondo me potrebbe usarla anche per sfasciarci qualcosa, volendo. + + + Beh, con gli strumenti giusti potrei riuscirci anche io, ma chi cavolo se li portati nella Zona? Vai a parlare con qualche tecnico, amico, loro avranno quello di cui hai bisogno. + + + Sto cercando uno stalker chiamato Snag: sai dove posso trovarlo? + + + Chiss! Chiedi a Sultan, alla Skadovsk: il capo di solito sa dove sono tutti quanti. + + + S, ho sentito parlare di quel verme. Di solito perde il suo tempo a Zaton, per cui qui non lo troverai di certo. + + + Sai qualcosa degli elicotteri che sono precipitati? + + + A chi potrebbero interessare delle informazioni sul fondatore della Duty? + + + Interesserebbero a tutti, poco ma sicuro! Si tratta di notizie che scottano, amico, per cui la cosa migliore credo sia vendere a Owl, alla Skadovsk: in questo modo incasserai qualcosa senza farti dei nemici. + + + No. Prova a pensarci: ho la Duty da una parte, la Freedom dall'altra e gli stalker che mi stanno addosso. Come pensi che potrei trovare il tempo per guardare il cielo? + + + Beh, i ragazzi dicono di averne visto uno appeso ai cavi, nella Foresta d'acciaio, ma l fuori potrai vedere ben altro... Di sicuro finirai dentro un'anomalia, oppure un poltergeist ti far a pezzi. + + + S, dei tizi che conoscono ne hanno visto cadere uno su un altopiano, per non c' modo di arrivarci... dicono che volava in modo cos strano che sembrava il pilota fosse ubriaco. + + + Mi hanno detto che un elicottero ha voluto fare il sottomarino e si schiantato dritto in una palude. Come puoi immaginare, si incagliato piuttosto in fretta. Da quelle parti l'acqua non un granch per la salute, tra i veleni, le sostanze chimiche e tutto il resto. + + + Hai visto dei militari in giro? + + + A chi potrebbero interessare delle mappe della zona tra Zaton e Jupiter? + + + A Pilot, immagino. lui la guida principale da queste parti. Una mappa gli farebbe comodo, e non dovrebbe affidarsi pi alle stelle, come fa adesso...... + + + I ragazzi hanno detto che una squadra dell''esercito ha attraversato l'altopiano meridionale, diretta all'accampamento mercenario. Hanno pensato che le cose stessero per mettersi male, quindi se ne sono andati in fretta e furia. + + + Ho sentito di come quegli scarafaggi dell'esercito stessero cercando di tirare fuori della roba dal loro elicottero schiantatosi nella palude. Immagina, cinque soldati in uniforme che saltellano in una palude cercando di non bagnarsi. Probabilmente ci sono state abbastanza imprecazioni da far impallidire un bandito. + + + Un ragazzo mi ha detto che stava seguendo uno stalker per rubargli una parte del suo bottino, quando ha udito degli spari e roba del genere. Ha poi scoperto che l'esercito stava combattendo contro i mercenari. Si nascosto e ha atteso il risolversi del conflitto, ma a quel punto lo stalker era gi fuggito. Bella sfortuna, eh? + + + Un fratello mi ha raccontato di aver assistito a una scena divertente. Immagina quella chiatta con sopra un mulino e Noah che uggiola l accanto, tutto eccitato, e intanto dieci ragazzi dell'esercito che cercano di allontanarsi il pi possibile dal cane di Noah. Beh, questo mio fratello si fatto una bella risata e ha abbandonato quel circo. + + + Macch, questo un posto poco raccomandabile, pieno di gente con armi da fuoco e cose cos... Non ho ancora avuto il tempo di controllare quali sono i militari e quali gli uomini della Duty in missione. + + + Sai come arrivare a Pripyat? + + + Chi potrei assumere per proteggere gli scienziati? + + + Ah, ci penseremo io e i ragazzi! Li proteggeremo come fossero dei bambini! Gli stalker e i mutanti avranno una fifa cane e non si avvicineranno nemmeno, fidati di me! Pagaci regolarmente ogni settimana e saremo tutti tuoi. Ah, e non dimenticare la mancia per Natale! + + + A piedi, amico. Cammina verso Jupiter e fai l le tue domande, perch non ci sono strade dirette tra Zaton a Pripyat. Questo un fatto scientifico. + + + Ehi, amico, ti sembro una guida turistica? Cio, ho un tatuaggio con su scritto, "Rispondo a domande stupide" sulla fronte? Vallo a chiedere Pilot, lui pagato per rispondere a domande del genere. + + + No... Cosa ci farei? Non ci sono degli stalker da fregare l! + + + Puoi indicami qualcuno che non sia troppo vincolato e che sia disposto ad andare a Pripyat? + + + Pripyat non un posto per veri uomini come noi. Pensaci, pieno di mutanti e anomalie... come il resto della Zona... ma l non ci sono gli stalker e i loro bottini. Quando gli stalker si fanno vedere a Pripyat, facci un fischio e ci andremo subito per mantenere l'ordine naturale delle cose. + + + Non ne ho idea, amico. Mi dispiace. + + + Ho trovato un'arma insolita. Conosci qualcuno che magari se ne intende? + + + Beh, fossi in te chiederei ai tecnici. Cio, roba del genere di loro competenza, no? + + + Non saprei, ma gli stalker della Skadovsk credono che Cardan sia una specie di genio della tecnica. Se vuoi puoi parlare con lui... A mio parere solo un vecchio ubriacone... + + + Chi potrei assumere per eseguire delle misurazioni per conto degli scienziati? + + + Facile: ci penseranno i nostri ragazzi. Cio, forse non saranno laureati ma eseguiranno tutte le misurazioni che vuoi. Fatto questo avranno solo bisogno di una bella tomba, ma nemmeno quello sar un problema! + + + Ho trovato uno strano manufatto. Puoi suggerirmi un acquirente? + + + Uno strano manufatto, dici? Vediamo un po'... dammi qui, cos posso vederlo meglio. Ah ah, rilassati amico... sto scherzando, ma ti conviene tenere quella roba ben nascosta. Certa gente potrebbe non avere tutto questo senso dello humor. + + + Hai del fegato a far vedere in giro quel manufatto. Ti rispetto. Ecco come stanno le cose: l'uomo a cui far vedere quella roba Beard, alla Skadovsk. Non sappiamo ancora come faccia a far uscire i manufatti dalla Zona, ma dovresti riuscire a vendere il tuo senza problemi. + + + Ho trovato una tana di succhiasangue. Cosa facciamo? + + + Ehm, cosa c' da fare? Darsela a gambe levate, ecco cosa! + + + OK, lascia perdere. + + + Ascolta, ho una domanda per te... + + + Chiedi pure. + + + Che cosa ne pensi di Nimble? + + + Nimble? Mai sentito. Forse fa parte di un'altra squadra. + + + Hai sentito qualcosa a proposito dell'Oasi? + + + Favole da stalker. Ecco cosa fanno: si inventano cose che non sono vere, poi formano dei gruppi per cercarle! Fossi in te farei finta di niente. Roba da leggenda: credici e presto crederai anche l'Esauditore di desideri esista veramente. + + + Ah, quel posto dove le ferite guariscono da sole e la tua energia viene magicamente ripristinata? Ho delle notizie per te, amico: non esiste. Gli stalker si inventano quella roba per far sembrare la Zona meno pericolosa di quanto non sia, ma la cruda realt che nella Zona non ci sono posti sicuri. E da queste parti bisogna non perdere di vista la realt. I sognatori non durano a lungo nella Zona. + + + S, e tutti i manufatti che vi si trovano valgono tanto oro quanto pesano e ti vengono presentati su un piatto d'argento, mentre magari ti massaggiano anche i piedi. Dai, sto scherzando. Dubito che esista, anche se sarebbe bello. Potremmo anche allestire un ospedale senza avere bisogno dei medici: alla gente basterebbe passare di l per guarire... Cavolo, che fantasticheria. + + + Hai mai incontrato uno stalker di nome Magpie? + + + Fatico a ricordare tutti gli uomini della Duty e tu mi fai delle domande sugli stalker? Hanno la loro base alla Skadovsk... vai a chiedere l. + + + No, mai. + + + Sai chi potrebbe rubare qualcosa da un ripostiglio personale? + + + Ecco! Una cosa cos non succederebbe mai alla base della Duty, ma questo posto pieno di teppisti della Freedom. Io inizierei a indagare tra loro. + + + Chi pu darmi una mano a decifrare una cosa? + + + C' un tecnico di nome Nitro alla stazione Yanov. piuttosto in gamba con l'elettronica. Una volta mi sono dimenticato la password del PDA e lui l'ha recuperata in cinque secondi netti! + + + Devi andare a Yanov... e l cercare Nitro. Lui in gamba con questa roba. + + + Ho il PDA del mercante della Duty: conosci qualcuno a cui potrebbe interessare? + + + Un mercante nella Duty? Ma impossibile! Comunque, se hai delle informazioni ti conviene darle al Tenente Colonnello Shulga. Se ne occuper lui. + + + Dove posso trovare qualche strumento, qua attorno? + + + Qui vicino c' un intero stabilimento. Certo, forse a quest'ora gi stato saccheggiato, ma se fossi in te controllerei comunque i magazzini. + + + Fossi in te comincerei la ricerca dalle vecchie officine. Forse troverai qualcosa anche nei negozi. + + + Da queste parti ci sono solo mutanti e anomalie. Ah! Io non mi addentrerei nelle anomalie, e i seppellitori e i controllori non ti saranno di alcuna utilit. + + + In realt, c' un treno sotto il ponte da queste parti. Li ho gi visti... di solito trasportano personale tecnico, quindi forse l troverai degli strumenti. + + + Chi potrebbe sbloccare un modulo di memoria? + + + Nitro... lui l'unico alla stazione Yanov che si intende di questo genere di cose. + + + Devi parlare con un tecnico. E l'unico tecnico bravo Nitro a Yanov. + + + Chi potrebbe aprire un contenitore d'acciaio? + + + Dicono che c' un tecnico tra gli stalker. un ubriacone ma sa il fatto suo. Prova a parlare con lui. + + + Ah, come se andassi in giro con una cassaforte. Sono sicuro che Nitro non potr fare niente per te... se avesse una serratura elettronica, allora sarebbe un altro paio di maniche... + + + Sto cercando uno stalker chiamato Snag: sai dove posso trovarlo? + + + Ti conviene chiedere agli stalker, si conoscono tutti tra loro. Io non ho mai sentito parlare di nessuno Snog o come accidenti si chiama. + + + Sai qualcosa degli elicotteri che sono precipitati? + + + A chi potrebbero interessare delle informazioni sul fondatore della Duty? + + + Al nostro comandante, naturalmente. Racconta tutto quello che sai a Shulga e riceverai la gratitudine della Duty. + + + S, i nostri esploratori hanno visto un elicottero militare scendere verso le riserve di Jupiter. Dicono di avergli segnalato di cambiare rotta, ma immagino che i piloti avessero altro di cui preoccuparsi. Chiss se i ragazzi dell'esercito sono riusciti a uscire dal campo di mine sani e salvi. + + + Non da queste parti, no. Qui la nostra presenza limitata... prova a chiederlo ai nostri ragazzi vicino a Yanov. + + + La nostra pattuglia ha individuato un elicottero militare tentare un atterraggio di fortuna nei pressi dello stabilimento di Jupiter. Purtroppo, l'elicottero si schiantato proprio sul tetto sopra le officine. Probabilmente non ci sono sopravvissuti: dopo lo schianto la pattuglia non ha ricevuto alcuna richiesta di soccorso. + + + Hai visto dei militari in giro? + + + A chi potrebbero interessare delle mappe della zona tra Zaton e Jupiter? + + + Qualcuno saprebbe come usarle. Parlo di Pilot: lui fa da guida sul percorso tra Yanov e Skadovsk, quindi troverebbe sicuramente utili quelle mappe. + + + Militari? Da queste parti non ne ho visti molti, ma non trascorriamo molto tempo in quest'area. + + + Di recente stato individuato il cadavere di un soldato nel campo minato. Probabilmente faceva parte dell'equipaggio di quell'elicottero. Gli elicotteri trasportano fino a otto persone, oltre all'equipaggio, quindi devono aver trovato un modo per uscire, anche se nessuno sa dove sono finiti. + + + Un militare stato visto nel bunker degli scienziati, e sicuramente arrivato da poco. Non conosco i dettagli. + + + L'altro giorno un tizio con indosso un'uniforme militare stato visto entrare in un edificio accanto al complesso Volkhov AA. probabile che fosse solo uno zombi scambiato per un soldato. + + + Gli stalker hanno individuato un'unit militare vicino allo stabilimento Jupiter. A giudicare dalla descrizione si trattava di forze speciali. Erano accompagnate da uno stalker non meglio identificato e si dirigevano verso Pripyat. La descrizione sembra affidabile, ma l'esperienza mi insegna che di solito conviene non fidarsi di informazioni del genere. + + + Sai come arrivare a Pripyat? + + + Chi potrei assumere per proteggere gli scienziati? + + + Non puoi trovare una protezione migliore di quella offerta dalla Duty. Vai a parlare con il Tenente Colonnello Shulga a Yanov... sono sicuro che voi due troverete un accordo. + + + Meglio di no. Finch quelli della Freedom lavorano per loro, faremo meglio a tenerci alla larga da quel posto. Ascoltare le stupidaggini di quegli idioti per tutto il giorno un destino peggiore della morte. + + + Al momento la Duty non ha motivo di cercare una strada per Pripyat, ma stiamo raccogliendo comunque delle informazioni. Ci sono dei rapporti non confermati in cui si parla di gallerie che corrono verso Pripyat sotto lo stabilimento Jupiter. Per verificare quest'informazione dovremmo ispezionare lo stabilimento da cima a fondo. + + + No. Se ti serve un'informazione del genere dovrai parlare con una guida civile... I nostri esploratori sono gi abbastanza indaffarati. + + + I nostri esploratori cercano regolarmente dei sentieri sicuri per Pripyat in quella zona, ma non abbiamo ancora scoperto nulla. + + + Puoi indicami qualcuno che non sia troppo vincolato e che sia disposto ad andare a Pripyat? + + + La presenza della Duty in quest'area limitata. Parla con la nostra gente a Yanov. + + + Si dice che gli scienziati nascondano un militare nel loro bunker. Non ha via d'uscita, per. Vedi, gli scienziati staranno l dai dodici ai diciotto mesi e lui da solo non capace di arrivare al confine della Zona. Detto questo, scommetto che sarebbe interessato. + + + Ti suggerisco di cercare tra chi vuole un'avventura. Per esempio, c' uno stalker di nome Vano alla stazione di Yanov. un vero imprudente e potrebbe tornarti utile... quel ragazzo potrebbe trovare l'uscita di un'anomalia a occhi chiusi. + + + Beh, potresti dare il via a una campagna di reclutamento in un manicomio. Anche se, in effetti, conosco una valida alternativa: i combattenti Monolith. A proposito, una loro squadra stata individuata nei pressi del complesso AA. Probabilmente conoscono la strada per Pripyat... Ehi, amico, spero che tu non mi prenda troppo sul serio... + + + Cerca dei volontari nella Duty. Strider, per esempio. Non ancora stato assegnato a una missione, quindi immagino che il tenente colonnello gli permetter di venire con te. + + + Sanno tutti che i migliori combattenti stanno con la Duty... ma al momento abbiamo altri obiettivi. + + + Ho trovato un'arma insolita. Conosci qualcuno che magari se ne intende? + + + Beh, io! Che bel cannone! L'hai fatto tu o l'hai davvero trovato? Non avevo mai visto niente del genere... ti conviene chiedere ai tecnici. + + + Chi potrei assumere per eseguire delle misurazioni per conto degli scienziati? + + + Che domanda stupida... La Duty, ovvio. Abbiamo un sacco di uomini esperti e abbiamo gi lavorato con gli scienziati. Vai a parlare con il Tenente Colonnello Shulga... sono sicuro che riuscir a trovarti una squadra per il lavoro. + + + Chi vorrebbe lavorare in un bunker protetto dalla Freedom? Quei dannati pacifisti sono talmente drogati che hanno le stesse possibilit di spararsi tra loro che ai nemici. + + + Ho trovato uno strano manufatto. Puoi suggerirmi un acquirente? + + + I manufatti sono tutti strani. Ti sconsiglio di portarlo con te. Dallo agli esperti e fine dei giochi. + + + Dovresti farlo vedere agli stalker... sono degli esperti in materia. Ancora meglio, fallo vedere alla persona a cui vendono i loro manufatti. + + + Ho trovato una tana di succhiasangue. Cosa facciamo? + + + Al momento le squadre della Duty non sono impegnate in operazioni di disinfestazione, quindi la tana dovr aspettare. + + + OK, lascia perdere. + + + Ascolta, ho una domanda per te... + + + Spara. + + + Che cosa ne pensi di Nimble? + + + Non ho sentito molto su di lui... Ti conviene chiedere agli stalker. Lui uno di loro, no? + + + Hai sentito qualcosa a proposito dell'Oasi? + + + Parecchie cose... una bella storia, te lo concedo. Un palazzo in mezzo al deserto, un'isola nella nebbia, un castello nel cielo, Shambhala, l'Eden... l'Oasi. Ogni persona libera di coltivarsi un sogno, e non sta a me biasimare nessuno. + + + Uno stalker una volta mi ha raccontato una storia interessante. Credo sia stato il primo a nominarmi l'Oasi. Diceva che, secondo la leggenda, l guariscono tutte le ferite e ci si sente subito calmi e rilassati, come se non ci si trovasse affatto nella Zona. Da quella volta non l'ho pi visto... Solo pi tardi mi sono ricordato che camminava zoppicando, ma quando se ne andato camminava dritto e sembrava anche parecchio pi giovane. + + + S, gli stalker liberi mi hanno dato le coordinate... Dieci gruppi di coordinate diversi! Mettendoli insieme si ottiene un'area che va dal Bruciacervella alla centrale di Chernobyl, con il bar di Yanov pi o meno al centro. Per quanto ne sappiamo, potremmo trovarci nell'Oasi anche adesso, quindi goditela! + + + Hai mai incontrato uno stalker di nome Magpie? + + + Macch. Da queste parti non conosco molti stalker liberi. + + + Magpie? No, ma un bel nome. + + + Sai chi potrebbe rubare qualcosa da un ripostiglio personale? + + + No, da queste parti non c' nessuno che farebbe una cosa simile. Ci sono persone che ti ruberebbero un tozzo di pane o un sorso da bere mentre non guardi, ma non c' nessun ladro nel vero senso del termine... + + + Chi pu darmi una mano a decifrare una cosa? + + + Ho sentito che Nitro alla stazione Yanov un amante delle combinazioni e degli algoritmi. Non ne sono sicuro, per. Non gli ho mai parlato. Lui lavora per la Duty, quindi non ha molto tempo da dedicare a noi liberi. + + + Non sono un esperto di esperti del luogo... Chiedi ai nostri ragazzi a Yanov la prossima volta che passi da l. Loro lo sapranno di sicuro. + + + Ho il PDA del mercante della Duty: conosci qualcuno a cui potrebbe interessare? + + + Mi sembra interessante! Lo darei a Loki, il nostro capo alla stazione Yanov. Far in modo che quegli stalker liberi sappiano che gente recluta la Duty! + + + Dove posso trovare qualche strumento, qua attorno? + + + Allo stabilimento, amico, e dove se no? Non un posto esattamente vivace, ma i magazzini ti tireranno su il morale. Sono posti un po' pi sicuri e l troverai senz'altro degli strumenti niente male. + + + Buona domanda, amico. Pensiamoci un attimo. Dove si trovano degli strumenti fuori dalla Zona? Dunque, se hai un briciolo di cervello li compri in negozio. Se invece non ce l'hai, cerchi sia gli strumenti che il cervello in un'officina. Giusto? Lo stesso discorso si applica alla Zona: i posti dove cercare sono gli stessi. semplice, stalker! + + + Strumenti? Ehi, per caso una parola in codice? Qui non ci sono sbirri, puoi parlare liberamente... Ah, dici sul serio? Allora non ne ho proprio idea. + + + Beh, ho sentito che uno dei nostri ragazzi stava cercando degli strumenti ed finito nel treno sotto il ponte. A quanto pare l c' un tesla di induzione magnetica. Comunque, ha detto che quel posto non gli piaciuto affatto... Ma perch te lo sto raccontando? Ah, beh, ha detto di aver visto degli strumenti sparsi in giro, ma ha deciso di lasciarli l perch non si sentiva sicuro. + + + Chi potrebbe sbloccare un modulo di memoria? + + + Beh, sicuramente Novikov nel bunker degli scienziati. veloce, abile ed educato. C' anche Nitro a Yanov, il parassita della Duty. un merdoso taccagno, ma probabilmente in grado di svolgere il lavoro. + + + Un buon tecnico, direi. Quello del posto si intende pi di roba meccanica, quindi a meno che tu non voglia farti distruggere il modulo di memoria, ti conviene chiedere a Jupiter. + + + Chi potrebbe aprire un contenitore d'acciaio? + + + Vediamo, l'altro giorno mi hanno raccomandato Cardan della Skadovsk. Dicono che sappia il fatto suo, anche se per la maggior parte del tempo sbronzo. Forse lui potrebbe aiutarti ad aprire quel contenitore. + + + Chiunque lo faccia di mestiere. Nitro, il tecnico locale, per, non lo far. Ho sentito dire che preferisce mettere le mani sugli strumenti elettronici altrui. + + + Sto cercando uno stalker chiamato Snag: sai dove posso trovarlo? + + + Mai sentito nominare... Fossi in te proverei a chiedere agli altri stalker liberi. + + + Sai qualcosa degli elicotteri che sono precipitati? + + + A chi potrebbero interessare delle informazioni sul fondatore della Duty? + + + A Loki, senza dubbio. il nostro capo qui a Yanov. Probabilmente non sapr che farsene di quelle informazioni, ma l'importante che non finiscano nelle mani della Duty. Riesci a immaginare quante stronzate di propaganda salterebbero fuori? Mi viene il mal di testa solo a pensarci. + + + S, hai sentito la storia di quell'elicottero nel campo minato? Praticamente, i marine sono precipitati sulla piattaforma di atterraggio della riserva, minata sei anni fa dai loro commilitoni. Ora c' chi dice che l'hanno fatto per stupidit, ma io scommetto che sotto c' dell'altro. Vedila in questo modo: in quel posto non ci andr nessuno, quindi dopo che i soldati avranno completato la loro missione potranno tornare all'elicottero, rimetterlo in sesto e levare le tende. Quello che vorrei sapere in che cosa consiste la loro missione... + + + Io non sono del posto, non so un bel niente. Vieni a trovarci a Yanov, i nostri ragazzi ti diranno tutto quello che vuoi sapere... e anche quello che non vuoi sapere. + + + S, dei ragazzi hanno avvistato un elicottero piuttosto malridotto, l'altro giorno. Non atterrato in un bel posto: dritto su uno dei tetti di Jupiter. Dicono che si schiantato, ha sfondato il tetto ed entrato nell'edificio, portandosi dietro di tutto. + + + Hai visto dei militari in giro? + + + A chi potrebbero interessare delle mappe della zona tra Zaton e Jupiter? + + + A Pilot, senza dubbio. Lui la principale guida degli stalker liberi da queste parti. Se vuoi vendere delle mappe, devi parlare con lui. + + + Calmati, fratello. Da queste parti non ci sono poliziotti, marine e nemmeno la guardia nazionale. Considerato che sei nella Zona, non potresti essere pi al sicuro di cos. + + + No, ma dei ragazzi mi hanno detto di aver visto un'unit dell'esercito infiltrarsi attraverso il campo minato accanto alle piattaforme di atterraggio degli elicotteri. Volevano aiutarli, ma poi ci hanno ripensato. I marine sono tipi imprevedibili, non sai mai quando potrebbero uscire di senno e spararti alle spalle. + + + Personalmente non l'ho visto, ma si dice che ci sia un marine nel bunker degli scienziati. Ozersky, il biologo, ha detto che era sull'elicottero schiantatosi sullo stabilimento. Noi lo prendiamo in giro dicendo che non aveva mai avuto un soldatino come animaletto domestico. + + + Personalmente no, ma ho sentito delle voci circolare tra gli stalker liberi. Dicono di aver visto un marine nei pressi del complesso Volkhov AA. + + + No, questo ragazzo diceva di aver visto sette soldati seguire uno stalker libero oltre lo stabilimento radio, verso Pripyat. Sono un po' di mesi che nella Zona non circola dell'erba, quindi mi sa che sono solo deliri privi di fondamento. + + + Sai come arrivare a Pripyat? + + + Chi potrei assumere per proteggere gli scienziati? + + + La Freedom. Ovvero noi, in altre parole. Lavoriamo spesso con gli scienziati, quindi proteggerli sarebbe un gioco da ragazzi. Parla con il nostro capo, Loki, a Yanov... accetter di sicuro. + + + Non ne sono sicuro, amico, perch da quello che ho sentito dire le teste d'uovo hanno gi assunto una squadra della Duty... Ci piacerebbe proteggere gli scienziati, ma non ne vale la pena se tutti i giorni ci tocca vedere quelle facce stitiche degli uomini della Duty. + + + Dicono che puoi arrivarci da Jupiter... Parlo dello stabilimento, non del pianeta... Ah ah! Bella battuta, vero? + + + Sai, non ne ho idea. Non trovo mai il tempo per andarci... Perch non chiedi a Pilot all'accampamento? uno stalker libero e conosce la zona meglio di chiunque altro. + + + Fratello, se lo sapessi ci sarei andato da un pezzo. Lo farei volentieri, pur di allontanarmi dalla Duty, dai marine e da tutto questo combattere... + + + Puoi indicami qualcuno che non sia troppo vincolato e che sia disposto ad andare a Pripyat? + + + Spiacente, amico, a Zaton non conosco nessuno... Segui il mio consiglio, chiedi ai nostri ragazzi a Yanov. + + + Hai presente il bunker degli scienziati? L c' in ballo qualcosa. Prima Garry, lo stalker, ha deciso di andare a Pripyat e ora il marine che si trova l ha avuto la stessa idea. Garry un solitario ed felice di esserlo, ma quel marine fa proprio al caso tuo. + + + Vano a Yanov pu fare al caso tuo. un tipo a posto e si sarebbe potuto persino unire alla Freedom se avesse voluto. Immagino non veda di buon occhio la nostra lotta contro la Duty... o qualunque lotta, per quel che pu contare. Questo il suo punto di vista e noi lo rispettiamo! + + + Certo. Uno dei nostri ragazzi ha individuato una squadra nei pressi del lago prosciugato. Loro conoscono Pripyat come il palmo della loro mano e credo che non lavorino per nessuno. Sicuramente sono anche coraggiosi, perch sono combattenti Monolith! + + + S. Strider, il capo delle nostre nuove reclute... sembra che non si senta a suo agio nei nostri ranghi. I suoi ragazzi si sono adattati alla perfezione, ma lui non affatto felice. Parla con lui, detesto vedere un brav'uomo costretto a stare dove non vuole... + + + No, non ne ho idea. + + + Ho trovato un'arma insolita. Conosci qualcuno che magari se ne intende? + + + Non che per caso c'era anche un manuale? No? Allora non ne ho idea. + + + Chi potrei assumere per eseguire delle misurazioni per conto degli scienziati? + + + Immagino che i nostri ragazzi potrebbero svolgere questo lavoro. Alla Freedom c' un sacco di gente sveglia e, se non sappiamo qualcosa, chiederemo al bunker. Sarebbe bello avere l'opportunit di aiutare la scienza! Parla con Loki a Yanov... sono sicuro che la penser allo stesso modo. + + + Io e i ragazzi lo faremmo molto volentieri, ma ultimamente la Duty controlla il bunker. Entrare di tanto in tanto per parlare con gli scienziati gi di per s un problema, ma andare l tutti giorni sarebbe decisamente pericoloso. + + + Ho trovato uno strano manufatto. Puoi suggerirmi un acquirente? + + + Devi trovare un collezionista, amico. A Yanov non ne troverai nessuno, visto che persino alcuni stalker hanno paura di venire qui. Ti conviene chiedere a Zaton, da quelle parti la situazione pi tranquilla. + + + Hai presente Beard, il barista nell'accampamento degli stalker liberi? Lui acquista manufatti e non cerca di fregarti. Non troppo, almeno. Un bravo ragazzo, da tutti i punti di vista. Peccato che non lavori per noi. + + + Ho trovato una tana di succhiasangue. Cosa facciamo? + + + Amico, devi avvisare gli stalker liberi... da queste parti c' il loro accampamento principale. La fauna della Zona preziosa, questo vero, ma mi preoccupa di pi la gente che vive qui. + + + OK, lascia perdere. + + + Ascolta, ho una domanda per te... + + + Chiedi pure. + + + Che cosa ne pensi di Nimble? + + + Non ho mai avuto il piacere... Ti conviene chiedere ai soldati di stanza alla Skadovsk. + + + Hai sentito qualcosa a proposito dell'Oasi? + + + Ho sentito tutto a proposito dell'Oasi! una leggenda, un mito... Da essa ogni stalker si aspetta qualcosa di diverso, e tutti sostengono di conoscerne la posizione esatta. Peccato che l'unica cosa che quelle posizioni hanno in comune tra loro il fatto di essere difficilissime da raggiungere. + + + Beh, dicono che le ferite guariscono all'istante e che tutta la tua energia ritorna nel giro di pochi minuti... A sentire loro nell'Oasi non esistono malattie, nemmeno l'avvelenamento da radiazioni! L'unica cosa che so per certo, per, dove si trova. Vuoi saperlo anche tu? al centro della Zona! Ma devi tenere quest'informazione per te, non spifferarla a nessuno! + + + Ho sentito dire che se l incontri un mutante, questi cambier strada senza nemmeno guardarti. Dicono anche che esiste un manufatto chiamato Cuore dell'Oasi... Nessuno sa con precisione cosa faccia, ma una cosa sicura: non devi toccarlo. Chiunque lo prenda non avr pi posto nella Zona... Dove si trova? Ehi, lo sanno tutti che a Pripyat, sotto la ruota del Ferris! Cio, altrimenti dove potrebbe essere? + + + Hai mai incontrato uno stalker di nome Magpie? + + + Certo... Per non ho idea di dove sia adesso. + + + Mmm... mai sentito nominare... + + + Sai chi potrebbe rubare qualcosa da un ripostiglio personale? + + + Ehm, no? Chiedi a quelli pi anziani a Yanov, forse loro potranno aiutarti. + + + Chi pu darmi una mano a decifrare una cosa? + + + Nitro a Yanov, chi altri? Ama questa roba tecnologica complicata... e soprattutto ama trafficare con le armi. + + + Nessuno che io conosca. Chiedi a Yanov... Credo ci abiti una specie di esperto. + + + Ho il PDA del mercante della Duty: conosci qualcuno a cui potrebbe interessare? + + + Conosci Owl sulla Skadovsk? Scommetto che lui sarebbe felice di metterci sopra le mani. Ama farsi coinvolgere in affari spinosi... + + + Una volta sulla Skadovsk a Zaton c'era un certo Owl. Lui gestisce giri di informazioni... forse il tuo PDA potrebbe interessargli. + + + Dove posso trovare qualche strumento, qua attorno? + + + Uno stalker mi ha detto che il suo vecchio lavorava nelle officine delle sottostazioni prima dell'86. Ha detto che l c'era ogni sorta di attrezzatura, quindi immagino troverai anche degli strumenti. Probabilmente ormai sar stato mangiato tutto dalla ruggine, ma forse vale comunque la pena dare un'occhiata. + + + Hai presente la segheria nel bosco sulla collina? L dovresti trovare degli strumenti, a meno che non se li sia gi presi qualcuno, ovvio. Comunque ne dubito: pi ti avvicini a quel posto e pi ti viene voglia di fartela addosso e dartela a gambe. Non sono neanche le radiazioni a fare paura, e non aggiungo altro... + + + Beh, l si trova lo stabilimento Jupiter, dove sicuramente ci saranno degli strumenti. Personalmente non mi avvicinerei, quel posto mi d i brividi. Per potresti dare un'occhiata nei magazzini Jupiter, quelli sul lato dello stabilimento. + + + Ho sentito dire che a Pripyat ci sono un paio di posti dove possibile trovare ogni sorta di spazzatura tecnologica. Uno deve essere un vecchio grande magazzino russo. Era praticamente l'unico posto che a quel tempo vendeva qualcosa di utile. + + + E io cosa ne so? Controlla le vecchie officine o i negozi. L potresti trovare qualcosa di utile. + + + A essere onesto, l'ultimo posto dove ho visto degli strumenti decenti stato nel bunker di Sidorovich al Cordon. Certo, devi pagare per averli, ma sono nuovi e in fondo nemmeno troppo costosi. + + + Sai, amico, non sono mica venuto nella Zona per cercare strumenti o attrezzi. Pensaci un attimo, a cosa serve un martello radioattivo? + + + Ho sentito dire che al vecchio centro di servizio puoi prendere tutto quel che trovi... Forse potresti trovare qualcosa di utile. Ma anche in questo caso vale il solito discorso: per arrivare alla roba buona prima devi raggiungere il posto. + + + Buona domanda. Fossi in te controllerei nel vecchio treno sotto il ponte. Non chiedermi perch, ma ho la sensazione che potresti trovarci qualcosa di buono. + + + Chi potrebbe sbloccare un modulo di memoria? + + + Fammi pensare... Beh, Nitro a Yanov ci riuscir sicuramente. A parte lui, c' anche Novikov, il tecnico degli scienziati. Lui un vero professionista. Pensaci bene, per, perch Nitro molto pi economico. + + + Beh, avrai bisogno di un tecnico, ma da queste parti c' solo Cardan. Il fatto che dopo anni e anni di eccessi con l'alcol non pi affidabile come una volta. Fossi in te chiederei dalle parti di Jupiter: l ci sono gli esperti giusti. + + + Chi potrebbe aprire un contenitore d'acciaio? + + + Cardan alla Skadovsk, credo. Cio, il modo in cui rompe i lucchetti una gioia per gli occhi. + + + Un qualche tecnico, credo. Probabilmente Nitro per non la persona adatta, lui non ama i lavori duri. + + + Ah ah, e lo cerchi a Pripyat? Segui il mio consiglio e allontanati un po' dal centro della Zona. + + + Sto cercando uno stalker chiamato Snag: sai dove posso trovarlo? + + + Ti conviene chiedere a Beard, il barista sulla Skadovsk. Di solito lui sa dove sono gli stalker. + + + Snag? E io perch dovrei saperlo? Ti conviene chiederlo a Zaton, lui passa un sacco di tempo da quelle parti. + + + Sai qualcosa degli elicotteri che sono precipitati? + + + A chi potrebbero interessare delle informazioni sul fondatore della Duty? + + + Io mi farei una chiacchierata con Owl, il commerciante di informazioni alla Skadovsk. Ci scommetto le chiappe che vorr mettere le mani su delle informazioni credibili riguardo una leggenda come quell'uomo. + + + Ne ho visto uno di persona... Non sembrava stesse precipitando, ma non volava nemmeno troppo bene. Ondeggiava da una parte all'altra, poi atterrato su un altopiano nella parte meridionale di Zaton... Sarei curioso di sapere se sopravvissuto qualcuno... Se solo ci fosse un modo di arrivare fin lass. In realt, ho sentito che Noah della chiatta degli svitati potrebbe saperlo. + + + Ho sentito dire che alcuni elicotteri militari sono precipitati poco lontano da qui... La gente racconta versioni diverse, ma una la ricordo bene. Hanno detto che in realt sono atterrati sulle piattaforme della riserva, minate anni fa da altri marine. Una bella ironia della sorte, eh? Il mio vecchio diceva sempre: "Non scavare una buca per qualcun altro, perch sarai tu stesso a finirci dentro". Non aveva tutti i torti, eh? + + + Un mio amico mi ha raccontato questa storia: era andato alla Foresta d'acciaio per procurarsi dei manufatti e appena arrivato ha udito uno schianto dietro di s. Si girato e ha visto un elicottero venire verso di lui a tutta velocit, abbattendo tralicci dell'elettricit e tutto il resto. Il mio amico schizzato via come un fulmine... Anzi, mi sorprende che sia riuscito a non finire su un'anomalia. Non avrai problemi a trovare la Foresta d'acciaio... la si vede da miglia di distanza. anche piena di poltergeist, quindi tieni gli occhi ben aperti. + + + Ne ho sentito uno atterrare sull'altopiano meridionale, ma arrivare fin lass non semplice. Inoltre, a quanto pare, qualcuno ha visto Noah ai confini di quell'altopiano, quindi quel pazzo sa come arrivarci. + + + Io non ho visto niente, ma si dice che un elicottero si sia schiantato dritto sullo stabilimento... Nessuno, per, vuole andare a controllare. Quel posto troppo pericoloso. + + + Uno stalker mi ha detto di aver visto parecchi elicotteri militari cacciarsi nei guai. Ha visto il motore di uno di questi avvamparsi, e un attimo dopo il mezzo precipitato in una palude piena di anomalie. Non sar difficile arrivarci, ma la palude un vero e proprio incubo. Credimi, non un posto adatto agli umani. + + + Hai visto dei militari in giro? + + + A chi potrebbero interessare delle mappe della zona tra Zaton e Jupiter? + + + A Pilot, naturalmente. Lui una guida, sai? Si sposta continuamente tra la Skadovsk e Yanov, quindi sapr sicuramente come fare buon uso delle tue mappe. + + + Qui non siamo n a Zaton n a Jupiter, quindi queste mappe non servono a niente, dico bene? Prova a venderle in quei posti e forse avrai pi fortuna! + + + Non l'ho visto di persona, ma ho sentito di alcuni soldati che sono scesi dall'altopiano meridionale alla fognatura. A quanto pare inizialmente hanno cercato di scendere seguendo ogni precauzione, con funi e tutto il resto, ma presto si sono arresi e sono scivolati sulle loro chiappe. Ah! Andare in bob nella Zona... dev'essere uno spasso! + + + Alla Skadovsk ho sentito della gente che parlava di cinque o sei marine che sono stati visti uscire da una galleria di scolo nei pressi delle fogne. Dicono che erano sporchi da far schifo, e uno era identico a un succhiasangue di palude, coperto com'era di melma. + + + Non di persona, ma un mio amico ha visto un'unit militare affrontare un gruppo di mercenari nei pressi della stazione di lavorazione. Proprio quando era riuscito a trovare un bel punto da cui godersi lo spettacolo, la festa era gi finita perch i marine si erano ritirati. Nessuna vittima in entrambi gli schieramenti... tipico, no? + + + A quanto pare sono stati individuati una decina di marine nei pressi della chiatta di Noah. Ora, considerato che il pazzo era ancora vivo, probabilmente riuscito a trovare una sorta di accordo con loro... proprio come fa di solito. Ovviamente nessuno ha voluto chiedere a Noah cosa successo. Non sai mai cosa aspettarti da quel pazzo bastardo. + + + Una notte ho sentito un'esplosione, poi qualcuno a Yanov mi ha detto di aver visto un marine morto nel vecchio campo minato e un elicottero militare abbandonato dietro di lui. A quanto pare non sono riusciti a vedere dove atterravano e sono finiti dritti nel campo minato. Nessuno sa in quanti siano sopravvissuti, ma dubito che quel marine fosse da solo sull'elicottero. + + + Io non ho visto nessun militare... ma ho sentito dire che con gli scienziati vive un marine. Stando a quanto si dice, Garry, uno stalker, lo ha trovato quando entrato nel complesso missilistico per cercare i suoi compagni. Ora il complesso brulica di zombi non esattamente amichevoli, quindi come se Garry lo avesse salvato da morte certa. + + + No, ma ho sentito dire che nei pressi del complesso Volkhov AA stato individuato un marine. Ma io non ci credo... Magari stanno mentendo o semplicemente non sanno distinguere uno zombi da un soldato. + + + Militari? Ho sentito dire che "un'intera unit militare guidata da uno stalker" era diretta oltre lo stabilimento Jupiter, ma non ho prestato molta attenzione a quelle chiacchiere. + + + Sai come arrivare a Pripyat? + + + Chi potrei assumere per proteggere gli scienziati? + + + Hai presente Spartacus e la sua squadra? Hai presente, gli stalker di Zaton? Sono brave persone e buoni combattenti: sanno il fatto loro, hanno una buona esperienza e hanno vinto pure una maglietta. Ho la sensazione che a loro non dispiacerebbe proteggere gli scienziati. + + + Sei incappato nella squadra di Hatchet alle officine della sottostazione di Zaton? Hanno i loro problemi, come tutti i mercenari, ma almeno prima ti fanno le domande e poi ti sparano. Immagino che, se riuscirai ad assumerli per questo lavoro, gli scienziati saranno soddisfatti e gli stalker potranno rilassarsi un po'. E cos saremo tutti contenti, no? + + + Ehm... proprio non saprei... Niente, mi spiace. + + + Quello che so per certo che non c' modo di arrivarci da Zaton. Tutti quelli che volevano raggiungere Pripyat si sono diretti verso Jupiter, quindi ti conviene chiedere da quelle parti. + + + Beh, si dice che sotto lo stabilimento Jupiter ci siano delle gallerie segrete che portano fino a Pripyat... Il fatto che di solito queste voci vengono raccontate dopo il secondo bicchiere, e poi Jupiter un tale posto da incubo che nessuno osa avvicinarcisi. + + + E io cosa ne so, amico? Non hai una domanda di riserva, magari pi facile? Posso solo dirti che ti conviene trovare Pilot e parlare con lui. Se c' qualcuno che pu aiutarti, lui la persona giusta. + + + Ah! Se sapessi come arrivare a Pripyat non sarei certo qui. Secondo te perch mi sono diretto verso il centro della Zona? Pripyat piena di manufatti, amico! Il primo che ci mette le mani sopra vivr da re! + + + Puoi indicami qualcuno che non sia troppo vincolato e che sia disposto ad andare a Pripyat? + + + Penso che da queste parti non ci sia nessuno che soddisfi questi requisiti. Chi voleva avvicinarsi al centro della Zona partito per Jupiter. Fossi in te andrei a informarmi da quelle parti. + + + Hai sentito del marine che al momento vive con gli scienziati? Scommetto che non ha molto da perdere, quindi potrebbe anche venire con te. Loro non se ne andranno di certo presto, e lui non pu raggiungere il Cordon da solo, quindi potrebbe essere abbastanza stupido da venire a Pripyat con te! + + + Conosci Vano alla stazione Yanov? un tipo a posto, un buon stalker e ingenuo da matti. Ci sa pi fare con le anomalie che con le persone... quindi ci sar sempre qualcuno che si approfitta di lui. + + + Ascolta, amico, ho sentito dire che una squadra stata avvistata nei pressi del lago prosciugato, a sud del complesso AA... Pare che non siano i soliti stalker della Freedom o della Duty... sono dei Monolith! Quindi se ti serve qualcuno con cui andare a Pripyat, loro faranno al caso tuo. Ah ah, hai capito che sto scherzando, vero? + + + Hai presente Strider, il capo della nuova squadra della Freedom? Se lo hai visto in faccia, saprai anche tu che Yanov non un posto adatto a quel poveraccio. Ti conviene scambiare due parole con lui, forse riuscirai a convincerlo. + + + Hai presente Strider, il capo della nuova squadra della Freedom? Se lo hai visto in faccia, saprai anche tu che Yanov non un posto adatto a quel poveraccio. Ti conviene scambiare due parole con lui, forse riuscirai a convincerlo. + + + Mmm... non mi viene in mente nessuno. + + + Ho trovato un'arma insolita. Conosci qualcuno che magari se ne intende? + + + Chi lo sa? Io chiederei agli esperti... cio, ai tecnici e gente del genere... + + + Scommetto che chiedere a Cardan sulla Skadovsk sarebbe una buona idea, amico. Lui traffica con le armi ed bravo... E magari, nonostante tutto l'alcol, forse gli rimane comunque un neurone o due... + + + Chi potrei assumere per eseguire delle misurazioni per conto degli scienziati? + + + Conosci Gonta il cacciatore? Credo che a lui e ai suoi ragazzi non dispiacerebbe lavorare per gli scienziati. Cio, se i mutanti dovessero diventare una scocciatura, quei ragazzi sono proprio quelli che fanno al caso tuo. + + + Hai sentito parlare di Grizzly, Torba e Mitay, gli stalker di Yanov? Lavorano in gruppo e sono veramente tosti! Penso che siano le persone giuste per questo lavoro... purch Mitay sia riuscito a tenersi fuori dai guai una volta tanto. + + + Non ne ho idea, amico. Qui abbiamo gi abbastanza cose di cui preoccuparci. + + + Ho trovato uno strano manufatto. Puoi suggerirmi un acquirente? + + + Non penso. Qui la gente diffida degli estranei. Chiedi dalle parti di Zaton: pi vicino al bordo della Zona e potrebbe essere un luogo pi adatto a te. + + + Io lo farei vedere a Beard, il barista della Skadovsk. Dicono che lavori con i collezionisti del mondo esterno, gente disposta a pagare bene per queste cose strane. + + + Ho trovato una tana di succhiasangue. Cosa facciamo? + + + Wow, devi dirlo a Beard alla Skadovsk... perch o li sistemiamo o saranno loro a sistemare noi. + + + OK, lascia perdere. + + + Dov' l'accampamento stalker pi vicino? + + + Ma sei stupido? ... Io non so niente di accampamenti di stalker, ma l'accampamento pi vicino a qui la Skadovsk. Ti dar le coordinate e lo far pure gratis. Sono gentile, eh? + + + Dov' l'accampamento stalker pi vicino? + + + Caricher le coordinate sul tuo PDA... La Skadovsk l'unico grande accampamento che si trova da queste parti. + + + Alla prossima. + + + Ho sentito di alcuni schianti, ma non conosco i dettagli. I pettegolezzi non fanno per me. Scusa se non ti sono di grande aiuto. + + + Amico, ho altro di cui preoccuparmi, altro che i tuoi elicotteri... Cio, scommetto che un elicottero che si schianta fa un bel botto, ma a parte questo non so che dire. + + + Di cosa stai parlando, teppista? Devi aver fumato roba andata a male per vedere un elicottero da queste parti, perch qui non ci azzeccano proprio per niente. + + + Eh? No, amico, non mi impiccio di cose del genere. Non c'entra niente con la mia missione di diffondere la conoscenza, mi capisci? + + + La nostra pattuglia ha visto gli elicotteri precipitare, ma i dettagli sono stati riferiti direttamente al tenente colonnello in persona. Noi comunichiamo le informazioni solo ai diretti interessati, e io non sono tra quelli. + + + Dove posso trovare una tuta provvista di modulo respiratorio a ciclo chiuso? + + + Non so dove cercare, ma con la giusta quantit di denaro si fanno miracoli... se sai come investirla. Fai due chiacchiere con Nimble... Se vi mettete d'accordo sui dettagli, lui si procurer i tuoi stracci in un modo o nell'altro. Spero che tu ce la faccia, qualche giorno senza di lui qui sulla Skadovsk sarebbe una liberazione. + + + E io cosa ne so? Non molto che sono qui... Ti conviene chiedere a Zaton, i nostri fratelli da quelle parti hanno i loro contatti. + + + Non ne ho idea. Perch, hai intenzione di infilare il naso in un'anomalia? Ascolta, se ti dovessi imbattere in qualche manufatto, facci un fischio. Arriveremo in men che non si dica... Per congratularci dell'ottimo lavoro! Ah ah ah! + + + Dove posso trovare una tuta provvista di modulo respiratorio a ciclo chiuso? + + + E io come faccio a saperlo? Aspetta... Sulla Skadovsk c' un tipo che si dice sia in grado di procurarti tutto quello che ti serve. Sta sul ponte superiore e si chiama Nimble. + + + No, nessuno viene fino a qui con una tuta del genere in pi... Ti conviene chiedere a Zaton, un passo pi vicino alla civilt. + + + Non so proprio dove ne potresti cercare una... Tute del genere sono rare anche tra i membri della Duty. Le assegnano solo a chi si distingue in battaglia o a chi compie delle operazioni in zone altamente anomale. + + + Dove posso trovare una tuta provvista di modulo respiratorio a ciclo chiuso? + + + Ho sentito parlare di quest'uomo che sembra avere un sacco di conoscenze, tale Nimble, che pu procurarti praticamente tutto. Sai, attrezzatura, armi e cose del genere... ma non fumo. Se hai bisogno di lui lo troverai sulla Skadovsk. + + + Ottima domanda, amico... Qui alla Freedom non le indossiamo nemmeno... Fossi in te chiederei agli stalker a Zaton. Forse l troverai qualcuno che gestisce affari del genere. + + + Eh eh, e a cosa ti serve? In azione non vale niente. Comunque... forse pu tornarti utile. Con quella respiri pi facilmente, e il sole non ti arriva dritto negli occhi... Magari me ne posso procurare una pure io. Ehi, sai mica dove potrei trovarla? + + + Dove posso trovare una tuta provvista di modulo respiratorio a ciclo chiuso? + + + Beh, fossi in te proverei da Nimble. Terzo ponte sulla Skadovsk. Quel tipo riuscirebbe a procurarti la neve nel deserto. Certo, i suoi servizi non sono adatti a tutte le tasche. + + + Fammi pensare... A Zaton c'era un uomo che avrebbe fatto al caso tuo, si chiamava Nimble. Vai a vedere se ancora da quelle parti. Ho sentito che specializzato in oggetti particolari. + + + Amico, ne parli come fosse cancelleria... Nessuno saprebbe risponderti con sicurezza. Pezzi del genere sono scarsi, per non dire rari. Se riesci a procurartene uno puoi ritenerti fortunato. + + + Ciao. + + + Ci si vede. + + + A pi tardi. + + diff --git a/gamedata/configs/text/ita/st_dialogs_jupiter.xml b/gamedata/configs/text/ita/st_dialogs_jupiter.xml new file mode 100644 index 0000000..c060ede --- /dev/null +++ b/gamedata/configs/text/ita/st_dialogs_jupiter.xml @@ -0,0 +1,3885 @@ + + + + Che cosa vuoi? + + + Devo parlare con Jack riguardo il debito di Vano. + + + Vai pure, allora. + + + OK. + + + Faccio solo due passi. + + + Questo non un parco pubblico, amico. Perch non vai da un'altra parte? + + + Sai chi potrebbe rubare qualcosa da un ripostiglio personale? + + + No, ma ho gi i miei problemi a cui pensare... Tu hai perso del materiale, ma io potrei rimetterci la pelle... + + + Furti, imbrogli... Cielo, dove andremo a finire? Non ho visto nessuno, ma sono sicuro che chiunque sia stato gi lontano. + + + Vai a trovare Zulu. + + + Certo. Dovremmo passare dall'Hawaiano per ricomprare la mia tuta. + + + Muoviamoci. + + + Ne sarei felice, ma non mi va di farmi beccare da un'emissione mentre ho i pantaloni abbassati. Aspettiamo un po'. + + + Ci servir una tuta con un modulo respiratorio a ciclo chiuso per arrivare a Pripyat. + + + Ah, ma no! La mia tuta ne ha uno: ti fa respirare tranquillamente anche se infili la testa in un forno, ma l'ho data in pegno all'Hawaiano. Se solo riuscissi a riaverla... ma sono al verde e ci serviranno cinque bigliettoni... + + + Posso darti io i soldi per la tuta. + + + Darmeli e basta? Dici sul serio? + + + Certo. Ecco cinque bigliettoni. + + + Amico, mi stai davvero salvando il culo. Adesso ti seguir anche in capo al mondo! + + + Te li darei io, ma non ho cinque bigliettoni. + + + Succede anche ai migliori, amico mio... Credimi, lo so bene. + + + Ci penser. + + + Certo... Dopotutto sono soldi tuoi. + + + Allora, me li dai o no? + + + Sto raccogliendo una squadra per andare a Pripyat. Vuoi unirti a me? + + + Tu hai aiutato me, amico, e ora io aiuter te. + + + Mi piacerebbe, amico, ma non posso andarmene finch ho questo debito che mi grava sulle spalle. Non sarebbe giusto e poi, se li incontrassimo, mi ucciderebbero come un cane. A quei bastardi non importa chi fanno fuori... + + + Allora, sei pronto per andare a Pripyat? + + + Sono pi che pronto! + + + Beh, entra. Cosa vuoi? + + + Hai pagato il tuo debito, ora smamma. + + + Erano dei bastardi arroganti... li ho dovuti eliminare. + + + Ho pagato, quindi non sei pi in debito. + + + Ehi, grazie, amico! Non lo dimenticher. + + + Non benissimo, mi hanno anche fatto pagare gli interessi. + + + Cos non va bene... Ma mi farebbero pagare ancora di pi, credimi. Grazie dell'aiuto! Non lo dimenticher. + + + Non sono ancora stato da loro. + + + Sbrigati prima che aumentino gli interessi. + + + Sono andato da loro, ma vogliono degli interessi sul debito. + + + Ma sono pazzi? Gi ho faticato a raccogliere quella cifra... Credi di poterli convincere a dimenticare gli interessi? Ti servir una buona arma. La forza l'unica cosa che rispettano. + + + Cosa hai detto riguardo il tuo debito? + + + Beh... Avevo una vecchia tuta che iniziava a logorarsi, cos ho pensato che fosse il caso di comprarne una nuova. Poco dopo ne ho vista una nuova di zecca in vendita, con tanto di modulo respiratorio a ciclo chiuso e tutto quanto... Ho contato i miei soldi, ma non arrivavo alla cifra richiesta... Poi Jack, il venditore, mi ha detto, "Non ti preoccupare, Vano, il resto me lo potrai pagare con comodo". E io ho pensato, "Che brava persona!"... + + + OK, e dopo? + + + Ho venduto la tuta vecchia, ho raccolto tutti i miei contanti e sono andato da lui. Jack mi ha detto, "Bravo, Vano, ma come la mettiamo con gli interessi?" E io ho pensato, "S, ha ragione... devo pagargli gli interessi..." Cos ho raccolto altro contante e gliel'ho portato. Al che lui mi ha detto, "Mentre eri fuori l'interesse cresciuto, Vano. A quanto pare gli interessi aumentano cos in fretta che non riesco a starci dietro... Ho dovuto dare in pegno la tuta nuova e anche le mie armi... + + + E adesso? + + + Lo voglio pagare con i soldi che ho guadagnato. Per Vano nulla pi importante della sua reputazione... Ma ho paura. Potresti andare tu da Jack a pagare il mio debito? + + + OK, nessun problema. + + + Per, quando vai da lui, assicurati di portare con te un'arma bella potente. Fai vedere che non sei uno da prendere alla leggera e ti tratteranno con rispetto... + + + Ci penso io. + + + Adesso ho da fare. + + + Ne ho avuto abbastanza. + + + Allora, puoi andare tu da Jack a pagare il debito al posto mio? + + + OK, OK, non sparare, pagher il debito... Ehm, scusa, ti avevo scambiato per un altro... + + + Com' andata con i banditi? + + + Ehi, amico, sono contenuto che tu sia venuto! + + + Ehi. + + + Abbiamo visite... Uno stalker vuole parlare con Shishak... Sei venuto per portargli dei regali o devi parlare di affari? In entrambi i casi sputa il rospo, amico. + + + Non pensavo saresti tornato... Allora, che cos'hai per me? + + + Di cos'altro dobbiamo parlare, stalker? + + + Cosa vuoi? Ti sei forse stancato di trascinare il tuo bottino in giro? Se vuoi possiamo darti una mano noi. + + + Devo parlare con il tuo capo. + + + Ehi, amico, non ho tempo per questa roba. Togliti subito di torno o ti aiuter a trovare la strada con questo bel fucile. + + + OK, OK... me ne vado. + + + Sono qui per lo stalker prigioniero... voglio parlare con il tuo capo. + + + Mmm... Fai pure, ma vedi di non fare scherzi o ti seppelliremo in men che non si dica... Vai dritto poi entra nel passaggio in mezzo ai container. Tutto chiaro? + + + S. + + + Passavo solo di qui, ora smammo. + + + Sono qui per lo stalker prigioniero... voglio parlare con il tuo capo. + + + Cos'altro vuoi? Sparisci! + + + OK... + + + Ascolta, babbeo, stai cercando di insultarmi? Hai portato abbastanza grana per le chiappe del tuo amico, ma non ci hai pagato per lasciarti passare! Un po' ingenuo da parte tua, no? + + + Di quanti soldi stiamo parlando? Ricorda per che devo arrivare alla base. + + + Oh, sei proprio spassoso! Qui non siamo in un bordello, amico, non abbiamo un listino prezzi... Svuota le tasche, stronzo! + + + D'accordo, ecco qui. + + + OK, ora vado. + + + Cosa?!? Vuoi prenderti tutto il mio bottino? Non se ne parla! + + + Ho pagato il riscatto. Non c' altro di cui discutere. + + + OK, stalker, abbiamo incassato la nostra somma. ora di andare. + + + Grazie ragazzi, alla prossima. + + + Aspetta. Ci potrebbero essere altri banditi nascosti in giro. + + + Bene, ora di andare. Il ragazzino non ce l'ha fatta, ma noi abbiamo fatto del nostro meglio... + + + Aspetta, non abbiamo ancora finito! + + + Preso! + + + Vieni a Pripyat con me. + + + Per ora sar meglio che resti qui e faccia in modo che Mitay si tenga alla larga dai guai. + + + Ehi, stalker! Grazie mille per aver tirato fuori Mitay! Stavamo gi iniziando a radunare una squadra... Tieni, consideralo un modo per dimostrarti la nostra gratitudine. + + + Ehi, stalker! Grazie mille per aver tirato fuori Mitay! Sei una vera belva! Affrontare tutti quei banditi da solo... Tieni, consideralo un modo per dimostrarti la nostra gratitudine. + + + Ehi, stalker! Grazie per averci aiutato a tirare fuori Mitay! Personalmente, non pensavo che pagare il riscatto avrebbe dato buoni risultati... Sono sicuro che un po' di contanti ti farebbero comodo, quindi prendi questi. Ti siamo riconoscenti. + + + Ehi, stalker! Grazie per averci aiutato a tirare fuori Mitay! Avevo ragione su tutta la faccenda. Mai cedere ai banditi! Bisogna mettergli un po' di pepe al culo... e tu hai avuto le palle per farlo. Tieni, prendi questo... tutti hanno voluto qualcosa, quindi non granch, ma ti siamo riconoscenti. + + + Com' andata con il riscatto? + + + Ci sto ancora lavorando su. + + + Allora, che si dice? Quand' che metterai un po' di pepe al culo ai banditi? + + + Presto. + + + Hai cambiato idea o stai avendo dei problemi con i banditi? Oh, beh, fai quel che devi fare ma fallo alla svelta... Non vogliamo che perdano la pazienza e uccidano Mitay. + + + Sistemer tutto. Andr tutto bene. + + + Sono felice di vedere un professionista come te, stalker! + + + Abbiamo perso un gran bravo ragazzo... Povero Mitay... Non siamo riusciti a salvarlo... begli amici che siamo! + + + Cosa puoi fare? + + + Vieni a Pripyat con me. + + + Sono venuto qui solo per tenere compagnia ai miei amici, quindi rester qui con loro. + + + Ehi, grazie per Mitay. Stavamo per andare a pagare il riscatto. Le cose si sono risolte per il meglio, non ci sono dubbi... + + + Ehi, grazie per Mitay... Come sei riuscito a convincerli? Cavoli, ho davvero molto da imparare da te... + + + Ehi, grazie per Mitay... Avevo ragione, vero? La negoziazione la chiave per il successo! + + + Ehi, grazie per Mitay... Continuo ancora a pensare che sia meglio negoziare, ma tutto bene quel che finisce bene. + + + Stai indietro... Adesso non ho nessuna voglia di parlarti. + + + OK, basta che ti calmi. + + + Salve, signor professionista! + + + Povero Mitay... era solo un ragazzino... aveva ancora tutta la vita davanti... + + + Cosa puoi fare? + + + Bene, siamo tutti qui. Grizzly mi ha parlato di te... Il piano semplice: i ragazzi si metteranno in posizione per attaccare intorno al perimetro e io, dalla mia posizione, eliminer la sentinella: quello sar il segnale di inizio dell'attacco. Prendi nota delle nostre posizioni e di tutto quello che pensi ti possa servire. Sono sicuro che sai gi cosa fare... Sei pronto? + + + Lo terr a mente. Andiamo. + + + Aspetta, dammi un po' di tempo per pensarci su. + + + Te la senti di fare un viaggetto fino a Pripyat con me, Mitay? + + + Gli scienziati stanno assumendo gente. Che ne diresti di lavorare per loro? + + + Qual il lavoro? + + + Difendere il loro bunker. + + + No, amico, la mia avventura tra i banditi mi bastata. Me ne star seduto qui e cercher di rilassarmi. + + + Eseguire delle misurazioni nelle anomalie. + + + Mmm, interessante. Ho gi lavorato per gli scienziati e, visto che sei tu a chiedermelo, accetto. Io, Grizzly e Torba andremo al bunker. + + + Dimmi come mai sei stato catturato. + + + Amico, non toccare questo tasto! stata tutta colpa mia. I banditi mi avevano avvertito, per poi... Hanno iniziato a prendere una fetta del mio bottino, ma la Zona non appartiene mica a nessuno! Perch avrei dovuto pagarli? + + + Io e i ragazzi li abbiamo mandati al diavolo e per un po' tutto filato liscio. Ma i banditi si sono rivelati tipi piuttosto furbi: mi hanno teso un'imboscata: una volta sono stato cos stupido da andare a cercare manufatti da solo, loro mi sono saltati addosso e mi hanno legato le mani ancora prima che potessi estrarre l'arma... Ecco com' andata. + + + Grazie per aver pagato il mio riscatto! Non lo dimenticher! + + + Grazie per avermi liberato, stalker! Non lo dimenticher! + + + Grazie per aver pagato il mio riscatto! + + + Grazie per aver contribuito alla mia liberazione, stalker! + + + Grazie dell'aiuto, stalker... I miei amici ti ricompenseranno sicuramente... Torniamo alla base insieme, ci metteremo meno. + + + Muoviamoci. + + + Tu vai, io passer pi tardi. Ho ancora delle questioni da sbrigare, qui. + + + Cavoli, credevo che ci avrei rimesso la pelle in questo posto... Wow, Grizzly e Torba hanno assunto tutte queste persone?!? Santo cielo! Non avevo mai assistito a una sparatoria simile in vita mia! Adesso possiamo andarcene? + + + Aspetta, potrebbero esserci ancora dei banditi in giro. + + + S, andiamo. + + + Cavoli, credevo fosse giunta la mia ora... Grandioso, hai eliminato tutti questi banditi da solo! Sei un vero osso duro! Quando racconter questa storia non mi creder nessuno... Adesso possiamo andarcene da qui? + + + Aspetta, potrebbe esserci ancora qualcuno in giro. + + + S. Andiamocene da questo posto. + + + Grazie, stalker! Sbrighiamoci, prima che i banditi cambino idea. + + + Muoviamoci. + + + Dobbiamo andarcene da qui alla svelta! + + + Non possiamo cedere alle richieste dei banditi. Questo problema va risolto con la forza. + + + Esatto! Conosco un po' di gente che sarebbe ben felice di aiutarci... Pagheremo anche te, se non ti dispiace agire in squadra. + + + Sono pronto. + + + Bene! Conosco un gruppo di stalker che operava in un'unit di polizia speciale. Dovrai incontrarli in un punto prestabilito dopo l'una del mattino. Ti aspetteranno. + + + OK. + + + Torba ha ragione. Non ha senso scatenare un bagno di sangue mentre hanno un ostaggio. Dobbiamo negoziare. + + + Mmm, forse voi due avete ragione... Il fatto che se io e Torba andiamo dai banditi, loro non ci lasceranno pi uscire, visto che ci siamo rifiutati di seguire le loro regole. Hanno detto che ci avrebbero seppelliti vivi. Ora, se tu potessi fare da negoziatore... + + + Certo, ci penso io. Dammi il manufatto. + + + Sii prudente. + + + Andr tutto bene. + + + Possiamo stare a discutere fino alle calende greche... Il nostro successo in mano a chi guider la baracca. Mi occuper di persona di quei bastardi. + + + Cavoli, proprio non me l'aspettavo... Buona fortuna. + + + Torner presto. + + + Concordo, ma mi serve del tempo per prepararmi. + + + Stalker, aiuta il nostro amico Mitay a uscire dai guai, ti spiace? + + + Cosa successo? + + + Mitay in un mare di guai... I banditi hanno iniziato a pretendere una parte dei manufatti trovati dagli stalker. Noi gli abbiamo detto di farsi un giro, perch abbiamo pensato che gli stalker non devono niente a nessuno, e sembrava che la storia fosse finita l... Loro invece hanno teso un'imboscata a quel povero diavolo una volta che era andato a caccia di tesori da solo, e ora chiedono un riscatto. + + + Che cosa farete? + + + Torba propone di cedere un manufatto come pagamento del riscatto... Io dico che non gli dobbiamo dare un bel niente. Se lo faremo, sar come se gli stalker lavorassero per i banditi... Meglio vendere il manufatto, assumere un bel gruppo di uomini e attaccare la base dei banditi. + + + Ce ne occuperemo pi tardi. + + + Allora, ci aiuterai a salvare Mitay? Torba continua a sostenere di voler pagare il riscatto con un manufatto. E io insisto nel dire che dobbiamo attaccare la base dei banditi. Meglio vendere il manufatto e con i soldi acquistare i servizi di un gruppo di combattenti... Non abbiamo ancora deciso il da farsi. + + + Sei pronto? Ti daremo il manufatto con cui pagare la libert di Mitay e ti aspetteremo al bar. + + + Sei gi stato dai banditi? + + + No, mi sto ancora preparando. + + + S, ma per il momento non successo ancora nulla. Vi far sapere non appena la situazione sar pi chiara. + + + Ultimamente sono stato all'Oasi, dove ho trovato un manufatto. Ti interessa? + + + Ah, non ti aspetterai mica che ti creda, vero? Ho sentito parlare spesso dell'Oasi, ma non ho MAI sentito qualcuno dire di esserci stato davvero. Senza offesa, ma non ti credo sulla parola. + + + Ho dei documenti dello stabilimento Jupiter. + + + S, prendili tutti. + + + S, prendi l'ordine di evacuazione. + + + S, prendi l'ordine del giorno delle riunioni. + + + S, prendi il programma delle consegne. + + + S, prendi l'appunto delle officine di riparazione. + + + Magari la prossima volta. + + + Chi avrebbe potuto rubare qualcosa da un ripostiglio personale? + + + Di sicuro non i miei uomini. Forse qualcuno della Freedom. Se avessimo il controllo completo di Yanov cose del genere non succederebbero mai. + + + Parlami della Duty. + + + Cosa vuoi sapere, di preciso? + + + Cosa fate in questo posto? + + + La stessa cosa che facciamo da sempre. Proteggiamo gli stalker da ogni genere di parassita. Hai visto quanti mutanti ci sono da queste parti, e non sono come i bei cucciolotti che si trovano al Cordon. Per esempio, ieri sera ho visto una chimera con i miei stessi occhi. Iniziava a fare buio, quindi non l'abbiamo inseguita... E i mutanti non sono l'unico problema da queste parti. Dobbiamo anche indagare e raccogliere prove dai laboratori abbandonati prima che quegli idioti della Freedom ci mettano su le mani. + + + Come mai sei finito nel centro della Zona? + + + Vuoi scherzare? E tu come mai ci sei finito? Tirer a indovinare e dir che siamo qui per lo stesso motivo. Il centro della Zona sempre stato un obiettivo irraggiungibile, un luogo dove speriamo di trovare le risposte a tutte le nostre domande. Volevamo scoprire in che modo la Zona era stata creata e come pu essere distrutta. Ecco perch non appena abbiamo sentito dire che il Bruciacervella era stato disabilitato, ci siamo diretti verso il centro. + + + E cosa avete scoperto? + + + Un sacco di roba, ma sono informazioni riservate. Posso solo dire che nella Zona c' molto pi di quanto salti all'occhio. Alcuni dei nostri credono che la Zona sia un tumore da rimuovere a ogni costo. Considerato quello che ho visto, sono pi incline a credere che la Zona sia un organismo vivente e che noi non siamo altro che batteri che vivono al suo interno. Anche se unissimo le forze militari di tutte le nazioni del pianeta, non riusciremmo comunque a distruggere la Zona. Ecco perch dobbiamo farci furbi: dobbiamo scoprire il motivo dell'esistenza della Zona ed eliminarlo. + + + E se non fosse possibile eliminare tale motivo? + + + Beh, allora dovremo escogitare qualcos'altro, ma c' comunque una speranza. Dobbiamo compiere il nostro dovere e mantenere un atteggiamento positivo. + + + Come sei finito nella Duty? + + + una storia noiosa, oltretutto priva di gesta eroiche. Subito dopo la comparsa della Zona io e Lenya, una mia amica, abbiamo deciso di venire qui a dare un'occhiata. Al tempo lavoravo come ufficiale di campo e Lenya era nel servizio di intelligence. Non eravamo degli sprovveduti, ma ci siamo cacciati comunque in un bel casino. Abbiamo strisciato per ore, feriti e sanguinanti, finch alla fine la Duty ci ha raccattato. Io ce l'ho fatta, Lenya no. Non avevo nessun amico nella Zona, cos ho deciso di restare con la Duty. Da allora, ho avuto un motivo valido per odiare la Zona. + + + In che rapporti siete con la Freedom? + + + Ufficialmente siamo in guerra, ma al centro della Zona vigono regole molto particolari. C' ancora qualche posto sicuro sparso qua e l, ma n la Duty n la Freedom possono contare su una grande disponibilit di uomini. Quindi che senso ha uccidersi a vicenda? Ecco perch la tacita regola di non intralciarsi a vicenda. Questa regola non si applica fuori da Yanov, per: l siamo ancora in guerra, e facciamo sul serio. + + + OK, lascia perdere. + + + Oh... OK. + + + Volevo parlare di un membro della Freedom di nome Flint. + + + Non mi interessa la gente della Freedom purch stia alla larga da noi. + + + Flint, altrimenti noto come Magpie, si messo in affari con dei cacciatori stalker a Zaton, poi ha rubato tutto il loro bottino ed fuggito. + + + E allora? La cosa non mi sorprende. La Freedom piena di feccia del genere. + + + C' dell'altro: ho incontrato uno stalker alla cava. Prima di morire, mi ha detto che Flint lo aveva lasciato in un'anomalia, si era preso il bottino e se n'era andato. + + + Ah, vedi, questo il genere di cose che gli stalker non dimenticano... nemmeno alla Freedom. Grazie per tutte le informazioni... faremo in modo di sfruttarle al meglio. + + + Non lo sopporto. Cio, quel bastardo ha perfino le palle per vantarsi di cose che ho fatto io! + + + Sar un brutto colpo per la reputazione della Freedom. Grazie per l'informazione. Faremo in modo di sfruttarla al meglio. + + + Lascia perdere. + + + OK, come ti pare. + + + Ho il PDA del vostro ufficiale delle scorte, Morgan. + + + D'accordo. + + + Ci penser. + + + D'accordo. + + + OK. + + + Diamo un'occhiata... Quindi quel bastardo faceva degli affari di nascosto e usava il nostro nome come copertura... Se questa storia dovesse saltare fuori, la nostra reputazione andr gi per il cesso. E se ti comprassi questo PDA? Ti pagher 4000. + + + Questa un'accusa seria. Fammi vedere il PDA. + + + Ecco qui. + + + giusto dire che avevo i miei sospetti su di lui... E ora avremo modo di portarli allo scoperto. Grazie, stalker! Spero che nessuno verr mai a sapere di questa conversazione. Ho una piccola ricompensa per te... Dopotutto hai salvato la reputazione della Duty! + + + Per il momento lo terr io. + + + Un altro... Molto interessante... Lo aggiunger al file del caso. + + + Ecco qui. + + + Grazie! Ecco una piccola ricompensa per i tuoi sforzi... + + + Permettimi di tenerlo come pegno. + + + Ho incontrato un gruppo di combattenti che vuole unirsi alla Duty. + + + Noi cerchiamo sempre uomini che sappiano il fatto loro. Di' loro che mi vengano a trovare e scambieremo due parole. + + + C' una cosa, per... Sono ex-combattenti Monolith. + + + Cosa intendi dire con "ex" combattenti Monolith? Per quanto ne so i combattenti Monolith appartengono a due categorie: quelli ancora in attivit e quelli morti. Non ho mai incontrato nessun "ex". + + + A quanto pare erano sotto il controllo di qualcuno, perch non ricordano cosa sia successo loro dopo essere partiti per Chernobyl. Non che siano aggressive o altro, comunque: semplicemente non sanno cosa fare. + + + Beh, se non sono aggressivi un bene... Cio, troverei subito un modo per tenerli occupati e li farei rigare dritto. che al momento non sono sicuro al cento per cento. Puoi garantire per loro? + + + S, mi fido di loro. + + + Mmm... il problema che io non posso fidarmi neanche di te. Spiacente. + + + OK, ma ricorda che se succede un casino sarai tu a doverne rispondere. Il fatto che da soli non saprebbero come arrivare a Yanov. Tu dovrai prendere i miei ragazzi e condurli fino alla squadra dei Monolith. Si parleranno e, se tutto andr bene, verranno accettati nella Duty. Dimmi quando sei pronto per partire. + + + No, non mi fido granch di loro. + + + Nella nostra fazione non accettiamo i primi venuti. + + + Sono pronto a portare i tuoi uomini alla squadra dei Monolith. + + + Bene. Mander due uomini con te. + + + Bene. + + + Facciamolo dopo, sta per succedere qualcosa. + + + Aspetta! Tu fai quel che vuoi, ma non permetter ai miei ragazzi di farsi colpire da un'emissione. + + + Ho trovato il PDA del fondatore della Duty. Ti interessa? + + + Vediamo un po'... Allora cos che andata... Non penso che gli altri debbano saperlo. Sarebbe meglio se nessuno mettesse mai le mani su questo PDA. La leggenda della creazione della Duty deve restare tale. Sei disposto a vendermi questo PDA? + + + Prendilo. + + + Grazie! Ecco la tua ricompensa. + + + Prender in considerazione la tua offerta. + + + Prendi il PDA del fondatore della Duty. + + + Grazie! Mi hai fatto un grande favore. Ecco la tua ricompensa. + + + Mi occorrono dei combattenti che lavorino per gli scienziati. Puoi aiutarmi? + + + Siamo sempre felici di aiutare gli scienziati. Cosa dobbiamo fare? + + + Cercano delle persone che proteggano il loro bunker. + + + Certamente. Invier alcuni dei miei ragazzi. + + + Certamente. Invier alcuni dei miei ragazzi. + + + Lo farei volentieri, ma lavorano gi con la Freedom. Inviare anche una nostra squadra non farebbe che rendere pi tesa una situazione che lo gi. + + + Voglio partire per Pripyat. Sei disposto a concedermi alcuni combattenti per questa missione? + + + Siamo gi a corto di personale! Parla con Strider... a quanto pare lui non si sente a suo agio nella Duty, quindi forse potr trovare la sua strada insieme a te. + + + Siamo gi a corto di personale! Non invier nessuno in una missione senza speranza. + + + Parla in fretta, e vattene ancora pi in fretta. Cosa vuoi? + + + Ti ascolto. + + + Sono felice di vedere che sei ancora vivo. + + + Ho dei documenti dello stabilimento Jupiter. + + + Dubito che contengano nulla di interessante. Quando sono arrivati gli stalker, qualcuno aveva gi saccheggiato lo stabilimento. Per... mmm, vedo che qualche informazione decente c'. Vorrei farli vedere a una persona. Sei disposto a vendermeli? + + + S, prendili tutti. + + + S, prendi l'ordine di evacuazione. + + + S, prendi l'ordine del giorno delle riunioni. + + + S, prendi il programma delle consegne. + + + S, prendi l'appunto delle officine di riparazione. + + + Magari la prossima volta. + + + Chi avrebbe potuto rubare qualcosa da un ripostiglio personale? + + + Io non sono una guardia, e non tocca a me sorvegliare il tuo ripostiglio! Di sicuro non sono stati i miei ragazzi... loro sanno bene che certe cose non si fanno. + + + Parlami della Freedom. + + + una storia lunga. Cosa vuoi sapere? + + + Cosa fate in questo posto? + + + Ci assicuriamo che i vari ufficiali non nascondano niente alla gente comune. Sai come funziona: non appena trovano un nuovo laboratorio o dei documenti che gettano una nuova luce sui segreti della Zona, organizzano subito un'operazione militare e ripuliscono tutto al volo, meglio di un dannato aspirapolvere. L'unico modo di scoprire qualcosa arrivare per primi sul posto. + + + Come mai sei finito nel centro della Zona? + + + Sai, i ragazzi avevano voglia di fare una passeggiata in un posto nuovo. Sto scherzando. Qui hai l'opportunit di trovare cose mai viste prima. Qui non ci sono mai stati n l'esercito n gli stalker prima d'ora, quindi c' qualcosa di nuovo dietro ogni angolo. + + + Hai trovato qualcosa? + + + Un paio di porte chiuse a chiave e alcuni nuovi, strambi manufatti. + + + Come sei finito nella Freedom? + + + Quando la Zona non esisteva ancora ero amico dei capi della Freedom. Bada per, a quei tempi non erano affatto capi, ma semplici hippy. Cos quando sono entrato nella Zona a cercare manufatti e facce conosciute, ho pensato che tanto valeva restare con gente che conoscevo gi. + + + Che cosa ne pensi della Duty? + + + Sono degli idioti, ecco che cosa penso. Cio, perch cavolo vorrebbero distruggere la Zona? Non consuma mica preziose fonti energetiche n diventa pi grande col passare dei giorni. Potrebbero starsene seduti e studiarla: pensa a quante scoperte scientifiche si potrebbero fare... Cio, in tutta la storia dell'umanit non si mai riusciti a comprendere l'assenza di gravit, giusto? E nella Zona si trovano dei congegni anti-gravit bell'e pronti sparsi dappertutto. Non mi dispiacerebbe cacciarli da qui a calci in culo, ma una scocciatura eccessiva. A proposito, non farti confondere dai rapporti che vedi qui a Yanov. Siamo in guerra, ma Yanov stata dichiarata zona neutra, se mi capisci. + + + OK, lascia perdere. + + + Nessun problema. + + + Volevo parlarti di uno dei tuoi stalker. + + + Davvero? Dimmi pure. Spero che tu non sia qui per fare una soffiata su qualcuno. + + + Il tuo stalker Flint conosciuto a Zaton con il nome di Magpie. I cacciatori locali lo stanno cercando perch lui li ha fregati e se l' data a gambe con il loro bottino. + + + E ti aspetti che ti creda? + + + Ascolta le storie che racconta al bar. Prima ha fregato quegli stalker e ora mente anche a te. + + + OK, calmati. Contatter Beard e andr a fondo della questione. Se quanto dici corrisponde al vero, ci occuperemo dell'atteggiamento di Flint cos tipico degli uomini della Freedom. + + + Mmm... Mi stavo proprio chiedendo come era riuscito a procurarsi quel manufatto cos alla svelta. Immagino che met della sua storia fossero tutte balle. Parler con i miei ragazzi. Se quanto dici corrisponde al vero, ci occuperemo di questo atteggiamento cos tipico degli uomini della Freedom. + + + Lascia perdere. + + + OK. + + + D'accordo. + + + Ci penser. + + + Prendilo. + + + OK. + + + Ho incontrato un gruppo di combattenti che vuole unirsi alla Freedom. + + + Bene, accogliamo sempre gli uomini di valore. Se sono all'altezza dell'incarico sono i benvenuti. + + + C' un piccolo problema, per... Sono ex-combattenti Monolith. + + + Un "piccolo" problema? I combattenti Monolith preferisco vederli da dietro un mirino. Tutto il resto fuori questione. + + + Questi sono pacifici. Sembra che fossero sotto il controllo di qualcuno, perch non ricordano cosa sia successo loro dopo la partenza per Chernobyl. Ora non sanno proprio cosa fare. + + + Spiacente, ma continuo a essere scettico. E se mi stessi mentendo di proposito? + + + Mmm... Magari potrei scambiare due parole con loro e scoprire di cosa si tratta. Invier un paio dei miei uomini con te. Parleranno con loro e se tutto andr bene li accetteremo nella Freedom. + + + Ma perch non te ne vai? Non riesco a credere che tu stia davvero proponendo di accettare una simile feccia nella Freedom. + + + Sono qui per l'ammissione di quella squadra dei Monolith nella Freedom. + + + I miei uomini sono pronti per partire. + + + OK, di' loro di seguirmi. + + + Tra un po'. + + + Aspettiamo un attimo, le emissioni non fanno bene alla salute. + + + Ho trovato il PDA del fondatore della Duty. Ti interessa? + + + S, purch contenga qualcosa di utile... Wow, davvero interessante! Loro continuano a diffondere le loro stronzate di propaganda per tutta la Zona, ma a quanto pare la loro storia piena di stronzate. Mi piacerebbe leggermi questa roba con attenzione. Ascolta, sono disposto a pagarti bene per questo PDA. + + + Prendilo. + + + Grazie! Ecco i tuoi contanti. + + + Ci penser. + + + Prendi il PDA del fondatore della Duty. + + + Grazie! Ecco i tuoi contanti. + + + Gli scienziati stanno cercando gente da assumere. Hai qualcuno da inviare? + + + Beh, dipende dal lavoro che deve essere svolto. + + + Agli scienziati serve qualcuno che protegga il loro bunker. + + + Certamente. Invier alcuni dei miei ragazzi. + + + Certamente. Invier alcuni dei miei ragazzi. + + + Mi piacerebbe aiutarti, ma la Duty gi sul posto. Trascorriamo gi abbastanza tempo con quei bastardi a Yanov, quindi credo che lasceremo perdere. Grazie comunque. + + + Puoi darmi una squadra con cui andare a Pripyat? + + + Parla con la nostra nuova recluta, Strider. Qui non si sente felice, quindi forse tu potrai dargli quel che cerca. + + + Se avessi qualche uomo disponibile probabilmente lo farei, ma purtroppo non cos. Abbiamo gi abbastanza guai da queste parti. + + + Allora, cos'hai da dire? + + + Che cosa ci fai qui? + + + Sono felice di vederti, amico! Nella Freedom ho sentito parlare bene di te. Allora, come posso aiutarti? + + + Ho trovato uno strano oggetto in una galleria della ferrovia. Ti interessa? + + + Mmm, no. spazzatura. Sembra un manufatto ma non ha alcun effetto. Normalmente regalo questa robaccia agli scienziati. + + + Ho trovato uno strano oggetto a Zaton. Ti interessa? + + + E cosa dovrei farci? Non mi interessano nemmeno i manufatti normali, quindi capirai... Fallo vedere agli scienziati, loro pagano bene per questo tipo di spazzatura. + + + Sto cercando uomini per proteggere il bunker degli scienziati. Conosci nessuno adatto al lavoro? + + + Non troverai nessuno migliore della Freedom. Potresti anche cercare di trovare un accordo con gli stalker, ma non sempre sono degni di fiducia. Se ti abbandonano a met del lavoro, poi come farai a ritrovarli? Ti suggerisco di non parlare della cosa con la Duty. Quei fanatici sono bravi solo a disinfestare i mutanti e nient'altro. + + + Sto cercando uomini per raccogliere dei campioni per gli scienziati. Conosci nessuno adatto al lavoro? + + + Certo. Vai da Loki... lui sar felice di aiutarti. Potresti anche cercare di trovare un accordo con gli stalker, ma alcuni di loro non sono particolarmente degni di fiducia. + + + Qualcuno ha rubato qualcosa dal mio ripostiglio. Sai chi potrebbe essere stato? + + + Cosa sta diventando questo posto, amico? Dubito che sia stato qualcuno della Duty. Loro seguono severe regole di disciplina, anche troppo rigide per i miei gusti. A quelli della Freedom non serve la tua spazzatura, quindi stato sicuramente uno stalker. + + + Di recente ho incontrato una squadra dei Monolith. + + + Wow, io non ne ho mai incontrati! Anche se i ragazzi mi hanno raccontato delle storie da far gelare il sangue. Tipo che i Monolith sono dei veri pazzi. Dev'essere stata una dura lotta, vero? + + + Non c' stata nessuna lotta. Sono persone pacifiche. Mi hanno detto che come se un velo fosse stato sollevato dai loro occhi e grazie a questo hanno ripreso il controllo di loro stessi. Ora per non sanno che fare, quindi sto cercando di inserirli in una fazione per aiutarli. + + + Wow, interessante. Beh, degli stalker non se ne parla perch probabilmente gli sparerebbero a vista a causa dei loro precedenti incontri e via dicendo... Prova a parlare con Loki. Nessuno li toccher se indossano uniformi della Freedom. + + + A chi potrebbe interessare la verit riguardo il fondatore della Duty? + + + Proprio non saprei. Dipende da quanto questa verit diversa dalla storia ufficiale. Parlane con Loki, lui sapr consigliarti. + + + Ho il PDA dell'ufficiale delle scorte della Duty. Ti interessa? + + + Neanche per sogno. So dove comprare a un prezzo migliore tutta la merce che vende. Non c' altro che potrebbe interessarmi. + + + Chi potrebbe venire a Pripyat con me? + + + Pripyat? Wow! Cavolo, mi piacerebbe mollare tutto e partire, ma al momento ho davvero molto da fare... + + + Pripyat? Wow! Dovresti chiedere a Loki se sa consigliarti qualcuno di adatto. Scommetto che non rifiuter di aiutare un brav'uomo come te. + + + Sei venuto per rilassarti? I miei drink non sono niente di speciale, ma questo un posto accogliente e dall'atmosfera amichevole. + + + Ho tutto quello di cui avrai bisogno. Cosa vuoi? Preferisci un boccone, un drink o vuoi sparare due colpi? + + + Sto cercando uomini per proteggere il bunker degli scienziati. Conosci nessuno adatto al lavoro? + + + Parla con gli stalker. Immagino che sarebbero felici di lavorare per le teste d'uovo... Dopotutto, questo gli darebbe un permesso ufficiale per entrare nella Zona. + + + Sto cercando uomini per raccogliere campioni per gli scienziati. Conosci nessuno adatto al lavoro? + + + Meglio lasciar stare gli stalker inesperti. Non troverebbero niente, anzi, potrebbero anche perdere qualcosa, se mi capisci. + + + Ultimamente ho incontrato una squadra dei Monolith e ti volevo chiedere una cosa. + + + Sai, per quanto ne so chi incontra dei combattenti Monolith si ritrova con qualche buco in pi in corpo e resta senza battito cardiaco. Tu, invece, mi sembri piuttosto in forma. Allora, cosa volevi chiedermi? + + + Questa squadra non affatto cos. Ho parlato con loro, non ho dovuto affrontarli. + + + Ma non mi dire! + + + S, invece. Mi hanno detto che come se un velo fosse stato sollevato dai loro occhi. Ora non sanno che fare, cos hanno chiesto il mio consiglio. + + + Beh, il mio consiglio di stare alla larga dagli stalker. Hanno una memoria troppo buona per lasciarli in vita. Potresti aiutarli a entrare in una fazione, ma non so se la Duty o la Freedom accetterebbero di farsi coinvolgere in questa storia. + + + Ho un PDA contenente la verit sul fondatore della Duty. Ti interessa? + + + Ricorda che a me non interessano i pettegolezzi. Se vuoi vendere delle informazioni, vai da Owl. Adora questo genere di cose. anche vero che, considerato il tipo di informazioni, anche Loki o Shulga potrebbero essere interessati. + + + Ho il PDA dell'ufficiale delle scorte della Duty. Ti interessa? + + + Ho la sensazione che questo PDA mi procurerebbe dei problemi con la Duty, e questa l'ultima cosa che voglio. Perch non provi a parlare con Loki? + + + Mi serve assistenza medica. + + + Diamo un'occhiata... + + + Cos va meglio. + + + Chi potrebbe venire a Pripyat con me? + + + Parla con Vano, uno stalker. un gran bravo ragazzo, al punto che spesso questo gli procura un sacco di guai. + + + Da queste parti non ci sono molti pazzoidi, amico, quindi dovrai cercare altrove. + + + Cerchi dei medicinali o sei qui solo per chiacchierare? + + + Qualcuno ha rubato qualcosa dal mio ripostiglio. Sai chi potrebbe essere stato? + + + Sai come si chiama quello stalker? + + + Ho sentito dire che qui non da tanto... Com' che si chiama... Snob? Snap... No, no. Qualcosa tipo snack... Snag, ecco! Si chiama Snag. + + + Che si dice, fratello? + + + Ehi. Ho importanti questioni di lavoro da discutere con te. + + + Bene, prima facciamoci una bevuta per prendere questi affari davvero sul serio! + + + OK, beviamo. + + + No, adesso non ho nessuna voglia di bere. + + + Allora, di quali affari parlavi? + + + Ho intenzione di andare a Pripyat attraverso il passaggio sotterraneo che corre sotto lo stabilimento di Jupiter. Nitro mi far entrare. + + + Mmm... andare a Pripyat passando sottoterra... Questa s che una buona idea... che richiede un'altra bevuta. + + + Salute. + + + Ehi, questa roba buona. Spero che tu non voglia avventurarti in questa missione da solo, vero? No... non il caso. Verr io con te... e ti serviranno anche altri uomini. Un paio di persone fidate fanno comodo, in queste situazioni... + + + Nitro mi ha suggerito di mettere insieme una squadra... + + + S, una buona idea... Facciamoci un'altra bevuta, al successo di questa missione... + + + Alla goccia! + + + Posso farcela anche da solo, sai... Cio, a Zaton ho massacrato una tana di succhiasangue tutto da solo... Un paio di taniche di gas e inizia la festa! + + + Wow, hai il mio rispetto, amico. Beviamo all'importanza di avere sempre una tanica di gas a portata di mano! + + + Amen! + + + Uomini fidati, hai detto? Beh, questo posto un covo di feccia... Ho incontrato un mercante a Zaton ma ho scoperto che faceva parte della Duty... + + + Wow, quindi la Duty cova delle serpi in seno... Cosa sta succedendo al mondo? Bah, smettiamola di preoccuparci e facciamoci una bevuta. + + + Mi inchino alla tua saggezza. Salute. + + + Mmm... Mica male, vero? Una squadra una buona idea, ci serviranno almeno tre persone. Hai gi in mente qualcuno? + + + Trover qualcuno... Ci serviranno anche delle tute con dei moduli respiratori a ciclo chiuso... + + + S. La sicurezza innanzitutto e via dicendo... A proposito: non ti preoccupare per me, la mia tuta a posto, ma ce ne serviranno per gli altri e forse dovremo faticare un po' per trovarle: quelle tute non sono molto comuni da queste parti. A una ricerca proficua! + + + Salute. + + + Conosci quello strano tipo di nome Noah? Vive tutto solo su una chiatta con ogni genere di merce... Anzich salutarti ha la tendenza a scaricarti addosso un paio di colpi di fucile. + + + S, un po' che non lo vedo. Avevamo lavorato insieme tempo fa. Era un bravo combattente... peccato si sia ridotto cos. Beviamo a lui e alla sua sanit mentale! + + + A Noah! + + + Ho incontrato Vano a Yanov un po' di tempo fa. Mi aveva detto che non riusciva a pagare il suo debito ai banditi. Comunque, ho aiutato quel povero bastardo... + + + Bene, con lui il viaggio sar sicuramente pi divertente, e poi faremo trasportare a lui tutte le provviste. A Vano! + + + Puoi dirlo forte, fratello! + + + Nel bunker degli scienziati vive un militare... Non ha niente da fare, quindi forse accetter di venire con noi... + + + S, uno dell'esercito ci farebbe comodo... Beviamo alla speranza che si unisca a noi! + + + Beviamo! + + + Non ci crederai, ma l'altro giorno ho aiutato una squadra dei Monolith... A quanto pare avevano recuperato tutte le rotelle che gli mancavano e non sapevano cosa fare. Li ho aiutati e adesso sono a Yanov. + + + Mmm... A quanto pare la vodka ti ha dato alla testa! Oh, beh, di certe cose non se ne ha mai abbastanza! + + + Questo vero. + + + OK, sembra che non ci sia altro... La cosa pi importante fare in modo di non perderci sottoterra... + + + Non ti preoccupare... ho le mappe. + + + Bene. Beviamo al successo della nostra missione! + + + Questo s che un brindisi! + + + Ah, amico, rilassati... L'altro giorno ho trovato l'Oasi... Proprio quella a cui nessuno riesce ad arrivare... + + + Wow, sei un vero esploratore! Con il tuo aiuto troveremo la strada per Pripyat in un batter d'occhio. Salute! + + + Salute. + + + Salve! + + + Credo di avere uomini a sufficienza. Possiamo partire. + + + Sei sicuro? Un altro paio di mani farebbero comodo. + + + Sono sicuro. Andiamo. + + + Hai ragione. Cercher di trovare altri uomini. + + + Bene. Diamoci dentro, gente! + + + Muoviamoci. + + + I combattenti sono fondamentali, ma sei sicuro di avere abbastanza protezioni per te stesso? Prima di partire dovrai procurarti una tuta con modulo respiratorio a ciclo chiuso... Non ho intenzione di trascinare da nessuna parte il tuo culo morto... Ho gi abbastanza roba da trascinare: il mio cannone e le munizioni pesanti. + + + S, ho capito. + + + Aspettiamo che passi questa emissione. In genere non sono molto salutari! + + + Dove posso trovare dei combattenti per formare la nostra squadra? + + + Chiedi alla gente dalle parti di Jupiter... Quelli che stavano a Zaton di sicuro non vorranno venire a Pripyat. Ci serve qualcun che non abbia motivo di restare... Devono essere disposti a unirsi a quella che, di fatto, una missione disperata. Ricordi qualcuno cos? Forse ci sono persone che sono in debito con te o magari conosci qualcuno che non si ancora stabilito. + + + Adesso abbiamo uomini a sufficienza. Non ha senso radunare un'intera divisione. Useremo piccole squadre tattiche. + + + Che cosa ne pensi di Strider? + + + I Monolith sono generalmente combattenti fanatici e feroci... Non so nulla degli ex-membri, per. All'apparenza Strider sembra calmo, ma l'aspetto inganna, si sa. + + + Wow! Un'armatura Monolith. Dove te la sei procurata? + + + Faceva parte di un carico. Lui Strider, un ex-combattente Monolith. + + + Non mi ero reso conto che ci fossero "ex" combattenti Monolith. Oh, beh, vedremo come se la caver quando il gioco si far duro. + + + Cosa ne pensi di Sokolov? + + + Quel tipo ha una bella tuta, molto scientifica. Erano un paio d'anni che non ne vedevo una cos. + + + Quello Sokolov, il copilota dell'elicottero militare che si schiantato. + + + Beh, da come si comporta evidente che non uno scienziato. Un buon soldato fa sempre comodo. + + + Da quanto tempo conosci Vano? + + + Ci siamo incontrati un paio di volte al 100 Rads. Dicono sia un tipo onesto, ottimista e anche un bravo stalker... ma troppo ingenuo, e questo un difetto fatale nella Zona. + + + E cos Vano dei nostri? Bene, abbiamo qualcuno che trasporter le provviste... Ah ah, rilassati, amico. Sto scherzando. + + + Chi avrebbe potuto rubare qualcosa da un ripostiglio personale? + + + Ti hanno derubato? Che peccato. Non so cosa dire. Non ho visto niente di sospetto da queste parti... Se scopro qualcosa te lo far sapere, stanne certo. Non vogliamo spie alla base. + + + Ho sentito che da queste parti ci sono state delle sparatorie... + + + Ah, ero io. Degli idioti si sono messi a discutere vicino alla torre e hanno iniziato a gridare. Io ho sparato un paio di colpi del vecchio MG e loro sono scappati verso la sottostazione. Era proprio una riunione di idioti, eh eh. + + + Ho deciso di cedere il manufatto dell'Oasi. + + + Una saggia decisione. Dallo a me, per favore. + + + Tieni. + + + Splendido, questo miracolo deve essere studiato immediatamente. Oh, a proposito, grazie per i tuoi servizi: ecco quanto pattuito. + + + Ti serve aiuto? + + + Grazie, abbiamo gi una squadra di stalker che lavora per noi. Anche se... sarebbe una teoria, di fatto pi una leggenda... Hai mai sentito parlare dell'Oasi? + + + Cercher di trovare l'Oasi. + + + Scusa, al momento ho troppo da fare. + + + No, non ne ho mai sentito parlare. + + + Allora ascolta. Ne parlano in molti, ma a quanto pare nessuno l'ha mai vista. come la fonte dell'eterna giovinezza. Se passi da l, le tue ferite guariscono all'istante e la tua energia viene ripristinata. Ci sono molte voci, una pi incredibile delle altre... Alcuni sostengono di averla vista in sogno, ma in quanto scienziato sono tenuto a domandare, "Come facevi a sapere che era proprio l'Oasi?" Se accetti di cercarla... Beh, non posso prometterti un fiume d'oro, ma se l'Oasi esiste davvero, la sua scoperta sarebbe un passo da gigante nella nostra ricerca. + + + Ho trovato l'Oasi. + + + Davvero?!? Quindi esiste? Non voglio fare lo scettico, ma hai riportato qualche prova? + + + S, ho portato una specie di manufatto. + + + Dammelo, presto! + + + Prendilo. + + + Splendido, questo miracolo deve essere studiato immediatamente. Oh, a proposito, grazie per i tuoi servizi: ecco quanto pattuito. + + + Non ci penso proprio. Potrebbe tornarmi utile. + + + Sei un vero egoista. E anche pericoloso. Le propriet di questo manufatto sono sconosciute. Cosa farai se domani dovessi svegliarti con le gambe paralizzate? O con la pelle verde? Ti assicuro che meglio lasciare che siano gli scienziati a maneggiare oggetti del genere... almeno noi facciamo di tutto per proteggerci dai loro effetti. + + + Cercare di spaventarmi non servir a nulla. Mi terr il manufatto. + + + OK, va bene. Prendilo. + + + No, non l'ho fatto. + + + No? Allora cosa dovrei studiare, secondo te? Sai cosa differisce gli scienziati dagli altri? Il fatto che per noi ogni teoria deve essere supportata dai fatti! Mi servono delle prove! + + + OK, allora ci torner. + + + Ci ho gi trascorso fin troppo tempo. Adesso non posso tornarci. + + + Se non ti interessa essere pagato, almeno pensa alle possibilit che l'Oasi aprirebbe per la medicina! Se non mi sbaglio, l'Oasi possiede una natura anomala, tipica della Zona. Se davvero cos, la prima anomalia in grado di guarire! + + + Come mai da queste parti? + + + Hai visto i mercenari che ci facevano da guardie? + + + splendido vedere un'altra persona intelligente. Come posso aiutarti? + + + Riesci a crederci? I mercenari che ci facevano da guardie sono stati uccisi fuori dal bunker! + + + Hermann, tu sai niente dell'Oasi? + + + L'Oasi? Ah! una menzogna, pura e semplice. Alla gente piace credere in una panacea in grado di curare ogni male, cos si inventano queste favole. Credimi, l'Oasi non altro che il frutto della fervida immaginazione di qualcuno. + + + Sono in molti a parlarne. + + + Anche troppi. Ma nessuno c' mai stato. Io mi attengo a un punto di vista scientifico: ci di cui non stata dimostrata l'esistenza, non esiste. + + + OK, capisco. Grazie. + + + OK, andiamo. + + + Bene... Torneremo prima che tu possa dire "succhiasangue"... Ah! + + + Vedremo. + + + Bene. Ma prima di andare aspettiamo che finisca l'emissione. + + + Buona giornata a te, stalker. Sono lo Zio Yar... immagino che tu sia stanco per il viaggio. Mangia un boccone, gi che sei qui. Hai scelto un bel momento per arrivare: mi serve aiuto. Alla mia et ci sono cose che non posso pi fare da solo. Ai vecchi tempi, per... + + + Allora, ti senti fresco? Hai voglia di fare due passi? Potresti aiutare un povero vecchio... + + + Come va la vita? Tra l'altro, ti trovo meglio... + + + Qual il lavoro? + + + Un gioco da ragazzi... Noi due andiamo fino a Kopachy. Non lontano e il resto lo vedrai con i tuoi occhi arrivati sul posto... + + + I tuoi amici della Freedom non vogliono aiutarti? + + + Non voglio seccarli con questa roba... Noi due saremo pi che sufficienti. + + + Verresti a Pripyat con me? + + + No... Se solo fossi pi giovane... Mi ricordo che facevo avanti e indietro fino alla Siberia a piedi, ma ultimamente cerco di fare solo viaggi brevi... Probabilmente sto invecchiando. + + + Fai attenzione. + + + Aspetta. Se vai a Yanov che ne dici di fare il viaggio insieme? sempre piacevole avere qualcuno con cui scambiare due chiacchiere... + + + Grazie, ma preferisco andare da solo. + + + Andiamo a Yanov. + + + Grazie per aver aiutato un povero vecchio... Prendi questo. Se hai delle domande chiedi pure. Ti risponder come meglio posso... + + + Perch non hai chiesto aiuto ai membri della Freedom? + + + Che senso avrebbe far incavolare i mercenari con la Freedom? Abbiamo gi fatto una guerra, e ci bastata. Questa una faccenda personale... Non ha senso coinvolgerli, capisci? + + + Ma si pu sapere cos' successo qui? + + + Sono venuti dei tizi per uccidermi... Sai, ero nascosto nei cespugli a farmi i fatti miei quando dal nulla sbucata una squadra di mercenari. Il loro capo cianciava qualcosa nel suo PDA riguardo un laboratorio centrale a Pripyat, un ordine urgente e via dicendo... A quel punto ho calpestato un dannato ramo, rivelando la mia presenza. Allora ho impugnato il fucile e ho tentato la fuga, ma sapevo che sarebbero venuti a prendermi. Ecco il prezzo che si paga a origliare, oggigiorno. + + + Non devi stupirti di niente, questo l'importante. Seguimi in silenzio... Se non faremo rumore filer tutto liscio. + + + OK. + + + Dobbiamo andarcene da qui. Parleremo dopo. + + + OK. + + + Sto raccogliendo una squadra per andare a Pripyat. Vuoi unirti a me? + + + Invitante... ma no, grazie. Gli scienziati mi hanno promesso un permesso per restare nella Zona e mi pagano pure bene. Spiacente, ma credo che rimarr qui. + + + Sei pronto per fare delle misurazioni nelle anomalie? + + + Siamo sempre pronti, purch tu ci copra. Di quale anomalia vogliamo occuparci? + + + Andiamo a Fen. + + + Superiamo il villaggio di Kopachy, fino al Cumulo di cenere. + + + Aspetta, non voglio pi partire subito. + + + OK, siamo pronti, ma probabilmente conviene aspettare che passi l'emissione... + + + OK. + + + Abbiamo terminato le misurazioni, andiamocene. + + + Neanche a me piace stare qui a perdere tempo. Adesso dove andiamo? + + + Andiamo a Fen. + + + Superiamo il villaggio di Kopachy, fino al Cumulo di cenere. + + + Al bunker degli scienziati. + + + Aspetta, fammi pensare. + + + Sei pronto per tornare al bunker? + + + Siamo pi che pronti... + + + Beh, in tal caso, andiamo. + + + OK, aspettami solo un istante... + + + Ho un paio di domande. + + + Chiedi pure e far del mio meglio per risponderti. + + + Credo non ci sia altro. + + + Voglio chiederti alcune cose sulla missione degli scienziati. + + + Ah, la galleria... In quel posto c' qualcosa, uno strano manufatto o qualcosa del genere. Comunque il posto troppo misterioso. Inizialmente tutto era tranquillo, poi ho iniziato a sentire qualcosa dentro alla testa... Brulicava di criceti, ma di loro non devi preoccuparti... li elimineremo alla svelta. + + + Ci sei gi stato? + + + S. Non ci siamo addentrati molto, stavamo facendo delle misurazioni per Hermann quando sono usciti i criceti. Quando siamo tornati, gli scienziati erano cos eccitati per i risultati che pensavo se ne sarebbero andati. Invece, volevano che esplorassimo tutta la galleria da cima a fondo, ma io l non ci entro pi! Adesso che hanno assunto te, noi serviamo solo per fornire copertura. + + + Capisco. + + + Beh, abbiamo gi fatto delle misurazioni, quindi sapremo cavarcela. + + + Dove avete gi eseguito le misurazioni? + + + Beh, misurazioni un parolone per un semplice lavoretto. In realt lo abbiamo fatto solo una volta, nello psico-campo di quel maledetto tunnel. Anche allora, non appena abbiamo acceso i dispositivi, i criceti sono sbucati da ogni dove. Mace riuscito a malapena a uscire tutto intero da l. + + + Non trovi che sia strano? + + + No, perch dovrei? Alla Zona non piacciono gli impiccioni, quindi normale. Ecco cosa mi ha detto una volta Ozersky, quindi si pu dire che le sue parole si sono rivelate esatte. Chiedi pure a lui, se vuoi, forse sa qualcosa che non vuole condividere con noi. + + + Capisco. + + + Capisco. + + + Cosa puoi dirmi delle persone che vivono nel bunker? + + + Quello s che un bel gruppetto... Due scienziati, Hermann, il capo da queste parti, e Ozersky. Novikov si occupa della parte tecnica e Garry la guida. Poi ci siamo noi, reclutati da poco per eseguire le misurazioni e altre cose scientifiche. Ah, l'altro giorno Garry ha portato nel bunker un tizio dell'esercito. Questo tutto. + + + Puoi dirmi di pi su Hermann? + + + Hermann il capo da queste parti. un professore, probabilmente in un qualche istituto segreto. Ha organizzato la spedizione, quindi hanno abbandonato questo bunker subito dopo la disattivazione del Bruciacervella. Inoltre, stato lui ad assumere noi e Garry. Ci paga bene e ci ha persino promesso un permesso ufficiale per entrare nella Zona. + + + Parliamo d'altro. + + + Puoi dirmi di pi su Ozersky? + + + un bravo ragazzo, amichevole, ed il numero due da queste parti. Hermann ogni tanto ascolta i suoi consigli. Non so molto altro su di lui, sai, per lo pi abbiamo a che fare con Hermann. + + + Puoi dirmi di pi su Novikov? + + + una specie di Einstein, amico. Sa davvero il fatto suo quando si tratta di installare roba tecnica. il migliore che c' sul campo. Non so come sia finito qui, ma appare subito ovvio che conosce bene la Zona, meglio di noi. + + + Puoi dirmi di pi su Garry? + + + Garry un ragazzo in gamba, ed stato uno dei primi ad arrivare qui. Mi ha raccontato che gli scienziati sono arrivati poco dopo di lui, e si unito subito a loro. Ultimamente per si annoia, perch non ha pi nessuno con cui chiacchierare, ma non pu andarsene prima dello scadere del suo contratto con gli scienziati. Se vuoi sapere altro, chiedi direttamente a lui. + + + Parlami del tizio dell'esercito. + + + Ah ah. Garry lo ha incontrato mentre fuggiva dagli zombi. stato fortunato a incontrare proprio Garry, perch molti altri lo avrebbero sicuramente tolto di mezzo. Non esce mai dal bunker e non lo biasimo. + + + Cosa ci fanno qui i mercenari? + + + Quei dannati tagliagole difendono il bunker. Sono arrivati un po' di tempo fa, hanno parlato con Hermann e non se ne sono pi andati. Ho l'impressione che nemmeno a Hermann piaccia la loro presenza... Il loro capo si chiama Black e ha un vero caratteraccio. + + + Cosa puoi dirmi su quest'area? + + + Vediamo, non lontano da qui c' una vecchia base militare. A nord della base c' il villaggio e a est una stazione ferroviaria, dove si riuniscono gli stalker. Ah, e c' anche un treno sulla ferrovia l vicino... Non un bel posto, credimi. + + + Parlami della vecchia base militare. + + + Beh, non c' molto da dire... Qualunque cosa di valore gi stata saccheggiata da un pezzo, quindi al momento non restano altro che mutanti e zombi. C' anche un piccolo bunker, sufficiente per proteggere da un'emissione. + + + Parlami del villaggio. + + + Beh, non esattamente un villaggio, quanto pi una serie di collinette. stato sepolto nell'86 per impedire il diffondersi delle radiazioni. Oggi la gente non ci va pi perch non un posto salutare e non vi si trova niente di valore. + + + Parlami della stazione ferroviaria. + + + Cosa puoi dirmi del treno? + + + Beh... se non sei mai andato alla stazione Yanov vale la pena farci un salto. un bel posto per bere qualcosa e incontrare altri stalker. Inoltre l'unico posto sicuro, oltre il bunker, da queste parti. + + + Vedo che hai nuovi strumenti. + + + S, tesoro. Ora siamo ufficialmente noti come la squadra investigativa e di ricerca Iskra! Non credere che ci siamo dimenticati di te, ora che siamo scienziati! Io e i miei "colleghi" abbiamo discusso la questione in modo approfondito e la nostra conclusione che... te lo sei guadagnato, amico! Se dovessi mai trovarti in un'anomalia o in un'emissione, che Dio te ne scampi, prenditi un momento per mandarci un biglietto di ringraziamento. Riceveremo il messaggio, fidati di me! + + + Ehi. + + + Salve. + + + Allora, sei pronto per partire o vogliamo aspettare un po'? + + + Pensavo che sarei rimasto in quel tunnel, trasformato in uno zombi senza cervello! Come posso aiutare l'uomo che mi ha salvato? + + + Ti va di sgranchirti un po' le gambe? + + + Ehi, fratello. + + + Siamo in debito con te, e non lo dimenticheremo. + + + Ho la sensazione che qui non ci sia pi niente da fare. Andiamocene da questo posto... + + + Allora, che mi dici di questo tunnel? + + + Qui non c' polvere, nemmeno un granello. Hermann attribuisce la colpa all'induzione magnetica, ma io fatico a crederci. + + + Chiedi al capo, io non so cosa dovrei e cosa non dovrei dirti. + + + Dimmi cosa hai scoperto mentre stavi eseguendo le misurazioni nello psico-campo. + + + Ho visto delle impronte sul terreno. Sembravano lasciate da un umano, ma chi potrebbe essere cos pazzo da camminare scalzo in un posto del genere? + + + La mente ti si annebbia e tutto inizia ad assumere strane forme. colpa di quel dannato psico-campo, sai cosa voglio dire? + + + E cosa hai scoperto sottoterra? + + + Non molto, solo un paio di criceti morti. + + + Eh eh... Nient'altro che non si trovi dappertutto nella Zona. + + + Stai bene? + + + Sto bene, grazie a te! Ti dar delle coordinate come segno della mia gratitudine. Potrai tenere tutto quello che troverai. Non molto, ma te lo dono con il cuore... + + + Come ti senti? + + + Amico, grazie mille! Grazie... Sono senza parole. Ecco le coordinate del nostro deposito: un segno della nostra gratitudine. + + + Sei ancora vivo? + + + Grazie, non me lo dimenticher. Ecco, prendi le coordinate del nostro deposito... te le meriti! + + + Il tuo cervello funziona ancora? + + + Cavolo, quello che ho visto quando ero... Non lo dimenticher per tutta la vita. + + + Allora, si torna al bunker? + + + Puoi scommetterci! + + + Allora muoviamoci. + + + Tu vai avanti, ci vediamo l. + + + La tua squadra pronta per dirigersi al tunnel? + + + Dimmi solo quando. + + + Quando. Ci Muoviamo. + + + Aspetta ancora un po'. + + + Andr da solo. Ci vediamo l. + + + Andr da solo. Ci vediamo l. + + + No, non ci fidiamo di te e il tempo denaro. Quindi o vieni con noi o non si va da nessuna parte. + + + In tal caso, andiamo subito insieme. + + + In tal caso dovrai attendere. + + + Non se ne parla... Non ha senso correre rischi durante un'emissione. + + + Allora, eccoci qui. + + + Allora... andiamo? + + + S, certamente! + + + Dammi un secondo per orientarmi. + + + Cosa diavolo vuoi? + + + Passavo solo di qui. + + + Allora continua per la tua strada. + + + OK. + + + Rilassati, idiota. + + + Non sono affari tuoi! + + + Oh... ciao... + + + Nimble mi ha detto che sei un bastardo traditore. Immagino tu abbia ingannato parecchi stalker. + + + Di cosa stai parlando? Non ho mai fatto niente del genere in vita mia! Nimble fuori di testa! + + + Cos'hai raccontato ai banditi sul mio conto? Perch mi stavano aspettando vicino alle gru del porto? + + + Devi avermi scambiato per qualcun altro, io non ho niente a che fare con i banditi! + + + Nimble mi ha parlato di te... Ti suggerisco di darmi l'arma e rendere tutto pi semplice per entrambi. + + + Cosa ti ha detto? Tutto quello che ho roba mia! + + + Fatti un giro, amico... + + + Aiutami, fratello... Mi serve un kit di pronto soccorso! + + + Prima dimmi dove hai nascosto la mia roba! + + + Mi spiace, amico, ma avevo un gran bisogno di soldi... Ti dir tutto, ma aiutami! Davvero, ho chiuso con quella roba, mi sono redento! + + + OK, tieni. + + + Grazie, amico! La roba nel mio nascondiglio nelle fogne dietro la sotto-stazione. + + + Capisco. + + + Non ti credo. Niente kit di pronto soccorso. + + + Prendi. + + + Non te lo dar. + + + Grazie. Non pensavo che mi avresti aiutato... + + + Chi potrei assumere per proteggere gli scienziati? + + + La Duty, naturalmente. Chi altri, se no? Dopotutto sono i migliori combattenti nella Zona! Guardie d'assalto pesanti, che ne dici? + + + Al momento lavorano con la Freedom? In tal caso proprio non saprei. Volevo suggerirti la Duty, ma so che non vanno tanto d'accordo. + + + Chi potrei assumere per eseguire delle misurazioni per conto degli scienziati? + + + Prova a parlare con Shulga. I suoi uomini non sono tutti scienziati nucleari, e alcuni sono piuttosto svegli e potrebbero fare al caso tuo. + + + Pagano ancora la Freedom per proteggerli? In tal caso eviterei di assumere la Duty... il miglior consiglio che posso darti al riguardo. + + + Quando siamo entrati nel sottopasso l'ascensore ha smesso di funzionare... + + + Ah, sei sceso usando l'unico generatore funzionante... Che pure quello di scorta. Gi stata una fatica riuscire a farlo funzionare, mi sa che ha fatto il suo lavoro poi si spento definitivamente. Dovresti essere contento che non si fermato a met strada... Quell'ascensore non ha un'uscita di emergenza! + + + Chi avrebbe potuto rubare qualcosa da un ripostiglio personale? + + + Dannazione! Proprio non saprei. Posso solo dirti che se Shulga fosse il capo a Yanov, cose del genere non succederebbero. + + + Chi potrebbe aprire un contenitore d'acciaio? + + + Non sono mica uno scassinatore, amico! Il metallo non fa per me... Se invece hai dei problemi di elettronica fammi un fischio. + + + Un gruppo di pacifici combattenti Monolith cerca un rifugio. Chi potrebbe aiutarli? + + + Dici sul serio? Ho sentito dire che sono come degli animali... Beh, di sicuro gli stalker non gli hanno reso la vita facile. Probabilmente dovresti parlare con Shulga. Se il tenente colonnello permette loro di unirsi alla Duty saranno al sicuro. Forse potrebbero persino trovare qualcosa di utile da fare. + + + Sai come decifrare una scatola nera? + + + Vediamo un po'... Non sar un lavoro facile. Ci vorranno almeno tre ore e non ti coster poco. Far il lavoro poi parleremo... Intanto tu fatti una passeggiata, io ho bisogno di concentrarmi. + + + Vediamo un po'... Non sar un lavoro facile. Ci vorranno almeno tre ore e non ti coster poco. Far il lavoro poi parleremo... Intanto perch non vai a cercare i pezzi che mi servono? Guadagnerai qualcosa e ti ridurr il costo del lavoro. + + + Cosa? Ci sto ancora lavorando su. Dannazione, questa scatola un vero incubo. + + + Finalmente ho finito con la tua scatola nera... stata una vera scocciatura... + + + Quanto ti devo? + + + Almeno 3.000. + + + Prendi. + + + Non ho tutti quei contanti. + + + Beh, ti far uno sconto quando mi porterai i componenti. + + + Fai come se fossi a casa tua. + + + Troppo caro per le mie tasche... Ci penser su. + + + Ti far uno sconto. Solo 2850. + + + Ti far uno sconto. Solo 2.700. + + + Ti far uno sconto. Solo 2.550. + + + Ti far uno sconto. Solo 2.400. + + + Ti far uno sconto. Solo 2.250. + + + Ti far uno sconto vantaggioso. Solo 2.100. + + + Ti far uno sconto vantaggioso. Solo 1.950. + + + Ti far uno sconto vantaggioso. Solo 1.800. + + + Ti far un prezzo di favore per un lavoro del genere. Solo 1650. + + + Eh eh, naturalmente non so a cosa ti serve la registrazione, ma visto quanto l'hai pagata spero bene che ti sia utile. + + + Vedremo. + + + Sono ancora al lavoro sulla scatola nera... Perch non ti rendi utile e mi vai a cercare i componenti? + + + Parli di Senka? L'ho incontrato la prima volta che passavo attraverso Zaton e da allora rimasto sempre con me... un ubriacone professionista con anni e anni di esperienza sulle spalle... Ah ah! Lo sfrutto per svolgere dei lavoretti qua e l... + + + A chi potrebbero interessare delle informazioni sul fondatore della Duty? + + + A Shulga, naturalmente... La Duty tiene molto alle proprie origini. Sai come si dice: se non studiamo la storia, siamo destinati a ripeterne gli errori. L'importante che la Freedom non metta le mani su queste informazioni. Non farebbero che distorcerle, non ci sono dubbi. Mica per malignit, ma semplicemente perch hanno una pessima memoria. + + + Ti ho portato gli strumenti. + + + Perfetto... Quali sono per me? + + + Quelli per il lavoro di base. + + + Grandioso! Adesso mi servono gli strumenti per la calibrazione e il lavoro di precisione... + + + Quelli per il lavoro di precisione. + + + Grandioso! Adesso mi servono gli strumenti per la calibrazione e il lavoro di base... + + + Quelli per la calibrazione. + + + Grandioso! Adesso mi servono strumenti per il lavoro di base e quelli per il lavoro di precisione... + + + Nessuno, per adesso. + + + Bene! Ora mancano solo degli strumenti per la calibrazione e sar a posto. + + + Bene! Ora mancano solo degli strumenti per il lavoro di precisione e sar a posto. + + + Bene! Ora mancano solo degli strumenti per il lavoro di base e sar a posto. + + + Wow! Ma come sei riuscito a trovarli? + + + Se ti servono degli strumenti posso procurarteli io. + + + Sarebbe grandioso. Adesso mi sembra di lavorare nell'et della pietra. L'unica differenza che al posto della bacchetta dello sciamano ho il ferro da saldatura... Se avessi gli strumenti adatti potrei eseguire notevoli potenziamenti, e stai pur certo che ne verrebbe in tasca qualcosa anche a te... + + + OK. Vado a cercarli. + + + Ho cambiato idea. + + + Buona idea. Io potr eseguire i potenziamenti e tu guadagnerai qualcosa... + + + Ho il PDA del mercante della Duty: conosci qualcuno a cui potrebbe interessare? + + + Un mercante nella Duty? Ma non mi dire... Dai il PDA a Shulga, sapr lui cosa farne. Ma non devi dire nulla alla Freedom, mi hai capito bene? Ricorrerebbero a ogni meschinit pur di sabotare la reputazione di tutta la fazione... + + + Ho trovato dei documenti. Descrivono un modo per arrivare a Pripyat. + + + Diamo un'occhiata... Bene, bene, bene... Quindi, per riassumere, c' un passaggio sotterraneo chiamato Pripyat 1 che corre sotto la citt di Pripyat, con una sezione che finisce nella zona di trasporto dello stabilimento Jupiter. Notevole! A giudicare dagli appunti, stato sigillato, riempito di gas e privato della corrente elettrica. Immagino che potremmo cercare di ripristinare il generatore e aprire la serratura. Solo che... + + + ...Solo che io non ho intenzione di entrare a Jupiter senza protezione, e ti inviterei caldamente a non andare sottoterra da solo. Dovrai portare con te almeno un paio di uomini. Avrete tutti bisogno di tute con moduli respiratori a ciclo chiuso, altrimenti non durereste nemmeno un minuto l sotto. Ascolta, Zulu vive in una torre non lontano da qui, prova a parlare con lui. Se gli farai una buona impressione ti dir come radunare una squadra. + + + Hai parlato di materiali... + + + Giusto, da queste parti pressoch impossibile trovare dei materiali da usare con un'attrezzatura radio funzionante. Ho sfruttato tutto quello che sono riuscito a trovare, ma nessuno fornisce i materiali adatti perch si guadagna di pi a vendere pistole... Ho sentito dire che potrebbe essere rimasto qualcosa alla fabbrica di cemento, per... + + + Ecco, ho trovato i materiali. Ho esplorato la fabbrica di cemento da cima a fondo! + + + Wow, fratello... Sono senza parole! Mi scrivo subito un promemoria: mano d'opera gratuita su tutte le riparazioni e i potenziamenti per il mio stalker preferito! + + + Sono riuscito a trovare alcuni dei materiali che volevi. Ecco qui. + + + Wow! Avrai sconti a profusione, amico mio! + + + Posso procurarti io i materiali. + + + Sarebbe splendido! Se riesci a trovare della colofonia o dei condensatori, portameli... Diamine, ti sarei grato perfino se mi portassi della textolite. Non posso prometterti contanti a palate, ma di sicuro avrai un ottimo sconto. + + + Per cosa ti servono i materiali? + + + Io lavoro con le armi e le attrezzature... Insomma, bisogna pur fare qualcosa per campare... Ma la mia vera passione sono le radio. Sai cosa si prova a costruire qualcosa e vedere che funziona? Ricordo che una volta ho costruito un'emittente di disturbo... Mi tornata molto utile: l'accendevo quando gli annunci del 100 Rads non mi lasciavano dormire. + + + Perch dovrebbero esserci dei componenti radio alla fabbrica di cemento? + + + Fabbrica di cemento ormai solo un nome... Aveva smesso di produrre cemento fin da prima del disastro di Chernobyl. Hanno smantellato il possibile e hanno iniziato a sfruttare l'edificio per costruire applicazioni elettriche. + + + A Jupiter ho trovato dei documenti. Vuoi dare un'occhiata? + + + Allora... Qui non c' niente di interessante... solo scartoffie amministrative... + + + Mmm... di tanto in tanto c' qualcosa di interessante, ma niente di certo... Ci occorrono informazioni complete. Prova a controllare nei posti menzionati nei documenti. + + + Mi servono dei materiali, dannazione! Come faccio a lavorare in queste condizioni?... Ah, salve. Come va? + + + Salve! Ti occorre qualche lavoretto tecnico? Naturalmente non dispongo dei materiali, ma posso sempre riparare il tuo kit ed eseguire piccoli potenziamenti. + + + Ah, salve. Ascolta, ho pensato... A quanto pare tutti i materiali che mi servono stanno prendendo polvere alla fabbrica di cemento... Il solo pensiero mi d sui nervi... + + + Ehi! Ti si rotto qualcosa o hai racimolato i soldi per un potenziamento? Ricorda che hai uno sconto a vita! + + + Ciao, fratello, come posso aiutarti? Ricorda, per te solo prezzi di favore! + + + Puoi sbloccare un modulo di memoria? + + + Penso di s... Non l'ho mai fatto prima d'ora, quindi mi ci vorranno almeno tre ore. Comunque sar felice di provarci. Tutto considerato, ti far un buon prezzo: solo 1.000. + + + Non ho fretta, quindi direi affare fatto! + + + Grandioso! Mi metto subito al lavoro... Tu intanto fai pure quello che vuoi, ti far sapere quando avr finito. + + + Non ho tutti quei contanti. + + + Torna pure quando vuoi e ti far il lavoro. Tanto non troverai un prezzo migliore. + + + Ci penser. + + + Ti ho detto che ci riuscir in tre ore. Inoltre, 1.000 un ottimo prezzo, quindi fossi in te accetterei. + + + Allora, hai sbloccato il modulo di memoria? + + + No, ci sto ancora lavorando... Non ti preoccupare, appena avr finito te lo far sapere. + + + Come? Non hai ricevuto il modulo? Allora non hai incrociato Senka. Te lo avevo mandato incontro perch ti consegnasse il modulo... Beh, fa lo stesso. Oltre ai dati sui livelli di densit del terreno e della vegetazione conteneva anche le coordinate di tre radiofari. Caricher tutto sul tuo PDA... + + + Hai rintracciato le chimere? + + + Quella ferita andata a Zaton. Il gruppo di Gonta la sta seguendo... Ma ho sentito che a loro manca un cacciatore esperto. Se li aiuti ti ricompenser lautamente... L'altra, quella che ha ucciso Fox... quella l'ho persa. come se fosse svanita... Povero Fox... era un brav'uomo, ma l'et esige il suo dazio... + + + Beh, tu ti sei occupato di una, quella ferita... L'altra, invece, quella che ha ucciso Fox... l'ho persa. come se fosse svanita... Povero Fox... era un brav'uomo, ma l'et esige il suo dazio... + + + Tu che cosa fai? + + + Beh, sono Trapper e fino a poco tempo fa cacciavo i mutanti che costituivano un pericolo per gli stalker. Oggi prendo ordini e li impartisco ai cacciatori pi giovani. Li addestro e insegno loro tattiche di caccia... + + + Parlami della caccia ai mutanti... + + + Beh, i mutanti richiedono approcci diversi... Per i seppellitori e i poltergeist ne serve uno, mentre per gli pseudogiganti e i controllori un altro... e le chimere sono casi tutti speciali. + + + Parlami dei seppellitori. + + + I seppellitori usano attacchi gravitazionali... Quando sono lontani cercano di lanciarti qualcosa contro, mentre quando sono vicini lanciano direttamente te. La cosa migliore da fare tenersi a una distanza media e non smettere mai di muoversi, a meno che non ti piaccia farti colpire da qualcosa di grosso e pesante... Ma non dimenticare di conservare la tua energia! I seppellitori possono usare degli impulsi gravitazionali per strapparti le armi dalle mani, e se sei stanco potrebbero riuscirci senza fatica. + + + Parlami dei poltergeist. + + + Ci sono due tipi di poltergeist. Il primo lancia degli oggetti contro il nemico usando campi gravitazionali, mentre il secondo, detto poltergeist del fuoco, usa le fiamme per ardere le proprie vittime. I cacciatori inesperti gli girano intorno per evitare i loro attacchi... Ma il trucco sta nel sapere che i poltergeist non vedono n sentono nel senso tradizionale del termine: sfrutta quindi questo fatto a tuo vantaggio. Loro percepiscono gli oggetti all'interno del campo gravitazionale... Quindi un cacciatore pi esperto si ferma non appena vede un poltergeist, spara e si ferma di nuovo, e avanti cos. + + + Parlami dei controllori. + + + Usano la tua stessa mente contro di te. Quando cacci un controllore, importante mettersi al riparo, perch per influenzare la tua mente deve vederti. Inoltre, sono piuttosto lenti, quindi se sei in pericolo di vita usa pure le granate. + + + Parlami delle chimere. + + + Sono predatori notturni alquanto pericolosi. Sfruttano le tenebre per aggirarti e balzarti addosso da dietro. Se sai che c' una chimera nei dintorni, non smettere mai di guardarti le spalle tue e quelle dei tuoi amici... + + + Parlami degli pseudogiganti. + + + La cosa pi difficile della caccia agli pseudogiganti ucciderli. Possono subire ingenti danni senza battere ciglio... Posso solo dirti che probabilmente la cosa pi utile usare un fucile a distanza ravvicinata. Ricorda che gli attacchi degli pseudogiganti possono sradicare tutto ci che non ben piantato. Attaccali dall'alto... e assicurati che il tuo punto d'appoggio possa subire dei danni senza crollare. + + + OK, lascia perdere. + + + Perch non vai pi a caccia? + + + Amico mio, sto invecchiando. Ecco perch Fox morto... Lui era il mio amico e il mio compagno di caccia. Insieme, spalla a spalla, abbiamo ucciso dozzine di bestie. Poi, nei pressi di Zaton, ci siamo imbattuti in due chimere che non venivano avvistate nella Zona da diciotto mesi... Una ha buttato Fox a terra ancor prima che riuscissi a estrarre il fucile. Ho ferito l'altra e sono scappate... Spero possano ardere per sempre all'inferno! + + + Chi avrebbe potuto rubare qualcosa da un ripostiglio personale? + + + Mmm... non saprei. Cose del genere non succedono tra i cacciatori. Piuttosto, se fai incazzare qualcuno puoi fare la scoperta che le persone sanno essere piuttosto avare di proiettili quando hai un succhiasangue attaccato alle chiappe. + + + A mali estremi, estremi rimedi... Considerato quello che so dei succhiasangue, direi che almeno un paio erano usciti a caccia... Ma ora che non hanno pi una tana dove tornare non costituiscono pi una minaccia per gli stalker. + + + Hai del lavoro per me? + + + Certo. L'altro giorno una squadra di stalker si addentrata nelle gallerie a nord dello stabilimento e si imbattuta in una tana di mutanti. I ragazzi erano tutti cos sconvolti che nessuno ha saputo spiegare di quale tipo di mutanti si trattasse, ma due stalker non sono riusciti a uscirne vivi. Dopo questo episodio la gente di Yanov si spaventata a morte e ha istituito una ricompensa di 5.000 per chi disposto a occuparsi di questa tana. un lavoro pericoloso, quindi sta a te decidere... Cosa vuoi fare? + + + Ci sto. + + + Sei un uomo coraggioso. Buona fortuna, ne avrai bisogno. + + + Non adesso. + + + Non ti biasimo... Dubito che qualcuno avr mai il fegato per occuparsi di un'intera tana di mutanti. + + + Stessa storia. Mutanti non identificati nelle gallerie a nord dello stabilimento Jupiter. Ricompensa di 5.000... Ti va di accettare l'incarico? + + + Al momento gli stalker sono preoccupati per i mutanti nelle gallerie... + + + I mutanti nelle gallerie erano nani mutati. Ora sono nani mutati morti. + + + Direi che si trattava di seppellitori. Questo spiega perch la gente di Yanov si era tanto agitata... Beh, ora che sono morti la ricompensa tutta tua! + + + Direi che si trattava di seppellitori... Quelli che di recente hanno ammazzato due stalker. Questo spiega perch la gente di Yanov aveva fissato una ricompensa per la loro uccisione. Beh, ora che sono morti, la ricompensa tutta tua! + + + Sono pronto per occuparmi della chimera. + + + Grandioso. Il cacciatore che ha trovato quella bastarda l'ha vista proprio mentre faceva buio. Era diretta verso il complesso di ventilazione. Le chimere sono animali notturni e territoriali, quindi probabilmente stava andando nella sua zona di caccia... Penso che sia il caso di cercarla l, una volta calate le tenebre. anche vero che quando fa buio pi attiva... Sii prudente e buona caccia. + + + La chimera morta. + + + Grazie... grazie! Hai vendicato Fox, che ora pu riposare in pace. Ecco il tuo denaro, te lo sei guadagnato. Non tutto, prendi anche il mio fucile. Mi hai portato qualcosa di pi importante: dopo tanto tempo, finalmente un po' di pace... + + + Sono Trapper... non c' bisogno che ti presenti. + + + Come mai da queste parti? + + + Grazie per essere venuto... Mi serviva un cacciatore esperto e affidabile, e tu sei quanto di meglio Yanov ha da offrire. Dopo tutto quello che successo, non posso permettere alla chimera di fuggire di nuovo. Investir tutti i miei risparmi in questa missione: 10.000. Voglio assicurarmi che il lavoro venga svolto bene... Fox deve essere vendicato! + + + Ti supplico di uccidere la chimera. Se non vuoi farlo per liberare Yanov da questo mutante omicida, allora fallo per i soldi: 10.000 sono un bel po' di contanti. + + + Ci sono aggiornamenti sulla chimera? Il tempismo essenziale, poich potrebbe dirigersi verso nuove zone di caccia. + + + Che bello vederti! Che si dice di nuovo? + + + Hai del lavoro per me? + + + Certo... A Fen stato individuato un gruppo di succhiasangue della palude, dietro la fabbrica di cemento. Sembra che per il momento non si muovano dalla loro palude... Ma gli stalker del posto vogliono assicurarsi che ci restino per sempre, se capisci cosa voglio dire. Il pagamento per tutto il gruppo 3.000. Che ne dici? + + + Ci sto. + + + Bene. Buona caccia, allora... + + + Non adesso. + + + A te la scelta. Hai ancora tempo per cambiare idea prima che altri cacciatori accettino il lavoro. + + + Stesso discorso di prima... Il gruppo di succhiasangue della palude a Fen, dietro la fabbrica di cemento. La ricompensa 3.000... ci stai? + + + Al momento a Fen ci sono solo i succhiasangue... + + + Ho ucciso i succhiasangue della palude. + + + Ora gli stalker potranno finalmente rilassarsi. Ecco la tua ricompensa, come pattuito. + + + S, gli stalker del posto saranno felici di essersi sbarazzati di questi scomodi vicini. Hanno anche messo insieme i soldi della ricompensa, 3.000 per essere precisi. Ecco, prendili. + + + Io e Gonta abbiamo ucciso la chimera a Zaton. + + + Grazie mille. Meno bestie di quella risma ci sono in giro, meglio per tutti. Ora, se potessi individuare anche l'altra... + + + Grazie per esserti occupato anche della seconda bestia. bello sapere che quelle chimere non si prenderanno pi le vite degli stalker... + + + Dimmi come hai ucciso il controllore. + + + Ascolta e impara, amico, ascolta e impara... Sono andato al mio nascondiglio per recuperare il bottino e, una volta arrivato, ho visto un controller seduto sopra di esso. Cos ho preso una grata di metallo da terra e l'ho usata come scudo mentre mi avvicinavo. Quando quello stronzo si reso conto di cosa stava succedendo, gli avevo gi scaricato mezzo caricatore in testa. Proprio mentre iniziava a cercare di controllarmi, gli ho dato un'ultima botta con il calcio del fucile. Fine della storia. + + + Parlami dei manufatti alla cava. + + + Ah! Non c' molto da dire, perch ormai alla cava non c' rimasto pi un cazzo! Non ha senso ispezionare le anomalie gi esplorate da Flint, questo lo sanno tutti. + + + Allora sei stato tu a lasciare il tuo amico a morire nella cava! + + + Cosa?!? + + + Non puoi dimostrare nulla. Sono tutte balle. la tua parola contro quella di un membro della Freedom... tanti auguri. + + + Vedremo. + + + Niente. + + + Grazie, ciao. + + + Raccontami la storia dei succhiasangue di Zaton. + + + Quando ero a Zaton, i succhiasangue rendevano un inferno la vita degli stalker. Questi li combattevano giorno e notte, ma i succhiasangue tornavano sempre. Io decisi di aiutarli, presi il fucile e andai dritto alla tana dei succhiasangue. Mi bast passare un po' di tempo con i nostri cari affezionati e il problema a Zaton fu del tutto risolto. + + + Probabilmente non sai neanche dov' la tana. + + + Sparisci. + + + Cosa vuoi? Vai a sparare le tue fregnacce da un'altra parte! + + + Fatti un giro, amico... la tua parola contro quella di un membro della Freedom... tanti auguri. + + + Vedremo. + + + Grazie, ciao. + + + Raccontami la storia della scorciatoia per Jupiter. + + + La guida faceva sempre delle lunghe deviazioni dalla strada di Zaton. Io, invece, volevo andare dritto... e l'ho fatto. Ho provato alcune strade e sono riuscito a districarmi abbastanza velocemente tra le anomalie. Poi ho venduto le indicazioni alla guida, che ora prende sempre quella strada. + + + E se chiedessimo a Pilot chi gli ha procurato le mappe? + + + Sparisci. + + + Cosa vuoi? Vai a sparare le tue fregnacce da un'altra parte! + + + Non puoi dimostrare un bel niente... la tua parola contro quella di un membro della Freedom... tanti auguri. + + + Vedremo. + + + Grazie, ciao. + + + Raccontami del tuo viaggio all'Oasi. + + + Sono stato il primo a raggiungere l' Oasi. un posto privo di mutanti e anomalie: ci sono solo pace e quiete dappertutto. E di manufatti se ne trovano in abbondanza, puoi scegliere quello che pi ti piace e portarlo a casa. + + + Stronzate. Sono stato all'Oasi e non affatto cos. + + + Sparisci. + + + Cosa vuoi? Vai a sparare le tue fregnacce da un'altra parte! + + + Fottiti. la tua parola contro quella di un membro della Freedom... tanti auguri. + + + Vedremo. + + + Grazie, ciao. + + + Raccontami del tuo lavoro con gli scienziati. + + + L'altro giorno sono stato al loro bunker. Erano molto contenti e mi hanno detto, "sei proprio quello di cui abbiamo bisogno, Flint!" Insomma, volevano qualcuno che piazzasse i loro congegni sotto le anomalie. Allora io ho detto, "ma un gioco da ragazzi!" e in quattro e quattr'otto ho fatto quello che volevano. La parte difficile stata far sganciare i soldi della ricompensa a quei secchioni. + + + Piantala di prenderti il merito per il successo altrui. Quello l'ho fatto io, non tu! + + + Sparisci. + + + Cosa vuoi? Vai a sparare le tue fregnacce da un'altra parte! + + + Balle... non puoi dimostrare un bel niente. la tua parola contro quella di un membro della Freedom... tanti auguri. + + + Vedremo. + + + Grazie, ciao. + + + Ehi, vuoi stare a sentire anche le mie storie? + + + Vuoi chiedermi qualcosa? + + + Che cosa vuoi? + + + Amico... merda... sto morendo... + + + Prendi questo kit di pronto soccorso. + + + Grazie, amico... ma non servir... Ascolta... sono venuto qui con un membro della Freedom... abbiamo trovato un manufatto... tornando indietro sono incappato in un'anomalia gassosa... se mi avesse aiutato me la sarei potuta cavare... invece... ha preso il manufatto e mi ha abbandonato qui. Diceva che sarebbe andato a chiedere aiuto... Devi trovarlo. Voglio che tutti sappiano che non ci si pu fidare di lui... + + + Lo trover. + + + Dubito che riuscir a dimostrare qualcosa. + + + Aggrappati alle mie spalle, ti porto da un medico. + + + Sono cose che capitano. Stammi bene. + + + Ho qualcosa per te... + + + Un Pezzo di carne. Ecco, prendilo. + + + Grazie. Gli scienziati pagano bene, ma a me interessa di pi il permesso. + + + Grazie mille, amico! Finalmente ora posso andare a Pripyat... devo solo trovare il modo di arrivarci. + + + Un Kolobok. Ecco, prendilo. + + + Grazie. Gli scienziati pagano bene, ma a me interessa di pi il permesso. + + + Grazie mille, amico! Finalmente ora posso andare a Pripyat... devo solo trovare il modo di arrivarci. + + + Un Pezzo di carne e un Kolobok. Ecco, prendili. + + + Grazie mille, amico! Finalmente ora posso andare a Pripyat... devo solo trovare il modo di arrivarci. + + + Nessuno. + + + Da queste parti ci si annoia parecchio? + + + Parlavi del tuo contratto... + + + Beh, ho firmato per lavorare per gli scienziati, pensando che sarebbe stata una passeggiata. Peccato che non mi fossi accorto che il contratto valido solo al termine di tutto il lavoro, alla fine del quale gli scienziati mi hanno promesso un permesso per restare nella Zona. + + + Ho rispettato ogni dannata clausola del contratto, tranne un maledetto dettaglio. Devo trovare tutti i manufatti chimici esistenti. Chi poteva sapere che da queste parti non si trovano n Pezzi di carne n Kolobok? Se ne avessi trovati, me ne sarei gi andato a Pripyat da un pezzo, ma non posso! + + + Forse potrei aiutarti io a procurarti quei manufatti. + + + Che peccato. + + + S... Un Pezzo di carne e un Kolobok e potr partire per Pripyat! + + + Cosa c' di tanto speciale a Pripyat? + + + Nessuno sa come arrivarci... Siamo nella Zona, dopotutto, quindi non che ci si pu andare tranquillamente a piedi. Dicono che un vero tesoro di manufatti. E poi, intorno a Pripyat circolano talmente tante leggende che sono semplicemente curioso. + + + Sto raccogliendo una squadra per andare a Pripyat. Vuoi unirti a me? + + + In realt anche io stavo pensando di andarci... Ma preferirei farlo da solo. Niente di personale, che sono abituato a lavorare cos... + + + Ah, anche io presto partir per Pripyat... ma viagger da solo. Niente di personale, che sono abituato a lavorare cos... + + + Benvenuto nel regno della noia. + + + Cavoli, quanto vorrei andare a Pripyat! + + + Devo solo escogitare un modo per arrivare a Pripyat e ci sar in un batter d'occhio. + + + Qui si sta bene! cos che la vita deve essere vissuta! + + + bello sentirsi al sicuro, certo. Solo che vorrei fosse meno noioso! + + + Forse potrei aiutarti io a procurarti quei manufatti. + + + Sai davvero come arrivare a Pripyat? + + + No, ma se quel posto pieno di manufatti come si dice in giro, allora sono pronto a scoprire subito una strada. Sono un apripista di prima qualit, sono stato uno dei primi a trovare la strada per Jupiter. Ma lavoro sempre da solo, non ho tempo di guardare le spalle anche a qualcun altro. + + + Mi porterai a Jupiter? + + + Certo. Sei pronto per partire? + + + S. + + + Non ancora. + + + Non durante un'emissione. + + + Mi porterai a Pripyat? + + + Ci sto per 5.000. Mi piace quel posto! + + + Affare fatto. + + + No, grazie. + + + OK, come ti pare. + + + Non penso di avere abbastanza denaro. + + + Ci sto per 5.000... Per aspettiamo che l'emissione finisca. + + + Puoi portarmi a Zaton? + + + No, amico... l ci si annoia a morte. Parla con Pilot, lui lo specialista dei lavori sicuri ma noiosi. + + + Beh, posso portarti fino a Yanov e per 3.000 posso convincere Pilot a portarti fino a Zaton. Che ne dici? + + + D'accordo. + + + No. + + + Come vuoi. + + + Non ho tutti quei contanti. + + + Beh, posso portarti fino a Yanov e per 1.000 posso convincere Pilot a portarti fino a Zaton. Che ne dici? + + + No, amico... l ci si annoia a morte. Parla con Pilot, lui lo specialista dei lavori sicuri ma noiosi. Parla con lui una volta terminata l'emissione. + + + Beh, posso portarti fino a Yanov e per 3.000 posso convincere Pilot a portarti fino a Zaton... Una volta finita l'emissione, ovvio. + + + Beh, posso portarti fino a Yanov e per 1.000 posso convincere Pilot a portarti fino a Zaton... Una volta finita l'emissione, ovvio. + + + Dicono che sei passato dalle gallerie, vero? Anche io sono arrivato da Jupiter, attraverso un passaggio sotterraneo. Posso riportarti indietro gratis, se ti serve... Sai, sono felice di fornire qualunque tipo di assistenza alle autorit. + + + un pezzo che non ci si vede! Dicono che sei passato dalle gallerie, vero? Io ho trovato un passaggio sotterraneo. Posso riportarti indietro gratis, se ti serve... Sai, sono felice di fornire qualunque tipo di assistenza alle autorit. + + + un pezzo che non ci si vede! Dicono che sei passato dalle gallerie, vero? Non ci crederai, ma sono riuscito a liberarmi del mio contratto e a ottenere comunque il permesso... Non appena l'ho ricevuto mi sono diretto qui e ho trovato un passaggio sotterraneo. Posso riportarti indietro gratis, se ti serve... Sai, sono felice di fornire qualunque tipo di assistenza alle autorit. + + + un pezzo che non ci si vede! Dicono che sei passato dalle gallerie, vero? Io ho trovato un passaggio sotterraneo. Posso riportarti indietro gratis, se ti serve... Sai, sono felice di fornire qualunque tipo di assistenza alle autorit. A proposito, grazie per avermi aiutato a portare a termine il contratto con gli scienziati... Ho dato un'occhiata in giro e ho trovato questo. Prendilo, sono sicuro che ne farai buon uso. + + + Topol, perch non proteggi il bunker degli scienziati? + + + Siamo assunti per eseguire delle misurazioni e raccogliere campioni. Praticamente siamo scienziati anche noi. E poi, anche se non ho niente contro quel tipo di lavoro, non so se sarei in grado di gestire i nuovi nemici delle teste d'uovo. Non ho voglia di morire per colpa del proiettile di un mercenario. + + + Sei nel posto sbagliato, amico! E ti conviene andartene prima che diventi anche il momento sbagliato! + + + Cerchi forse dei guai? Vattene prima che siano loro a trovare te! + + + Sparisci, amico. Fallo in fretta e rimarremo in buoni rapporti. + + + Adesso cosa farete? + + + Presto andremo alla stazione di Yanov. Vieni con noi, se vuoi. + + + S, sulla mia strada. Verr con voi. + + + No, non sulla mia strada. + + + una fortuna che tu li abbia portati da noi... Da soli non sarebbero durati a lungo. + + + Grazie per aver fatto da tramite con la Duty. + + + Adesso cosa farete? + + + Presto andremo alla stazione di Yanov. Vieni con noi, se vuoi. + + + S, sulla mia strada. Verr con voi. + + + No, non sulla mia strada. + + + Hai fatto la cosa giusta, amico. Hai aiutato quegli uomini e ci hai portato dei rinforzi. Hai il mio rispetto. + + + Grazie per aver fatto da tramite con la Freedom. + + + Sai chi potrebbe rubare qualcosa da un ripostiglio personale? + + + Non lo so. Da queste parti c' gente di ogni tipo... Puoi chiedere a Conciaossa, lui conosce praticamente tutti in questo posto... + + + Vai a trovare Zulu. + + + OK. Spero che non mi spari al vedere la mia vecchia armatura! Dobbiamo prenderla lungo la strada... e restituire quella che indosso. + + + Muoviamoci. + + + Aspettiamo un attimo, le emissioni non fanno bene alla salute. + + + Cosa successo? + + + Non ci ricordiamo come siamo arrivati qui. Ricordo che facevamo parte di una squadra dei Monolith, e avevamo questo grande desiderio di raggiungere il centro della Zona. l che si trova il Monolite: una meteora che ha portato germogli di una nuova vita da altri pianeti... Ricordo che avevamo raggiunto insieme la centrale di Chernobyl... Poi ho immagini frammentate. Ricordo una luce intensa... un gelo cosmico... una voce... Tutto era... perfetto. Non ricordo cosa mi aveva ordinato di fare quella voce. Cos tanti anni della mia vita... andati. E ai ragazzi successa la stessa cosa. Non sappiamo cosa fare. Ci serve un posto dove rifugiarci dalle emissioni... e dai mutanti, dico bene? Non che conosci un posto del genere? + + + Non lontano da qui si trova una base Staller, posso indicarvela sulla mappa. + + + Non sono certo sia un posto sicuro... Mentre andavamo alla centrale di Chernobyl, eravamo trattati con sospetto... Forse abbiamo anche ucciso degli stalker. Sai come la gente tratta la nostra fazione? Probabilmente ci sparerebbero addosso... Puoi aiutarci? Potresti dire a quelli dell'accampamento degli stalker che non siamo pi assassini? Potresti convincerli ad accettarci? + + + Nessun problema, parler loro la prossima volta che andr alla base. + + + Spiacente, non posso esservi d'aiuto. + + + Che genere di aiuto vi occorre? + + + Ci serve un posto dove ripararci dalle emissioni... e dai mutanti, dico bene? Puoi trovarci un rifugio dove stare al sicuro? + + + OK. Chieder a quelli di Yanov. + + + Spiacente, non posso esservi d'aiuto. + + + Ti servir una tuta con un modulo respiratorio a ciclo chiuso per arrivare a Pripyat. + + + Nessun problema, ho ancora la mia armatura Monolith, dotata proprio di un modulo di quel tipo. Il problema che non posso indossarla a Yanov. + + + Sto raccogliendo una squadra per andare a Pripyat. Vuoi unirti a me? + + + Verrei... Cio, sono molto curioso di scoprire cosa ci sia successo in quel luogo, ma adesso non posso. Non posso lasciare i miei ragazzi qui, e loro non mi seguirebbero. Ne hanno gi passate abbastanza cos. + + + S, verr con te. Voglio sapere cosa ci successo. Spero di trovare la risposta a questa domanda a Pripyat. Devo solo avvisare Loki, ma dubito che avr da obiettare. + + + S, verr con te. Voglio sapere cosa ci successo. Spero di trovare la risposta a questa domanda a Pripyat. Devo solo avvisare Shulga, ma dubito che avr da obiettare. + + + Sei pronto per partire? + + + S. + + + Salve, stalker. Puoi aiutarci? + + + Salve. Hai scoperto se possiamo andare alla base degli stalker? + + + No, ci sto ancora lavorando... + + + Sbrigati. Non si sa mai cosa potrebbe succedere in questo posto. + + + Salve. Grazie per il tuo aiuto. + + + Salve. + + + Come va? + + + Bene, la squadra in ordine, ma voglio scoprire cosa ci successo. + + + Cosa ci fanno qui i mercenari? + + + Di questo devi parlarne con Hermann. Lui si occupa di tutti gli aspetti amministrativi del laboratorio. Per quanto ne so, i mercenari hanno raggiunto un accordo con Hermann riguardante la protezione del nostro laboratorio. Non conosco i dettagli dell'accordo, per. Devo comunque ammettere che in numerose occasioni si sono rivelati combattenti affidabili. + + + Cosa ci fate qui? + + + Una domanda alquanto retorica, non trovi? Conduciamo delle ricerche. Ti interessa qualcosa in particolare? + + + Qual lo scopo della vostra ricerca? + + + Non abbiamo un obiettivo specifico in mente. Puoi chiamarci scienziati esploratori. Cerchiamo di identificare elementi che colleghino tra loro determinati fenomeni, sviluppare teorie per poi dimostrarle o confutarle. Alcune delle nostre teorie non hanno alcuno scopo pratico, per quanto ne sappiamo. + + + Cosa sai della Zona? + + + A questo punto posso solo fare delle ipotesi... Credo che la Zona si sia formata come conseguenza di un nuovo tipo di forza. Dei campi elettromagnetici, una forza fisica o delle radiazioni non avrebbero potuto modificare la biosfera a una simile velocit. Naturalmente, alcune delle mutazioni possono essere attribuite alle radiazioni... Tu che dici! Un maiale impiegherebbe centinaia, se non migliaia di anni per mutare la propria carne! Nella Zona, invece, le mutazioni hanno avuto luogo nel giro di due anni. come se qualcuno avesse alterato direttamente le informazioni genetiche dei singoli animali! Basta questo pensiero per farmi venire i brividi. + + + Da quanto sei nella Zona? + + + Da non pi di una settimana. Ci sono voluti terribili sforzi per superare tutte le pratiche burocratiche e organizzare questa spedizione. Se non fosse stato per Hermann, forse saremmo ancora al confine della Zona ad aspettare, mentre gli stalker si appropriavano di oggetti di valore inestimabile. + + + Non mi occorre sapere altro. + + + Ozersky, perch Hermann mi ha assunto per proteggere la squadra mentre loro eseguono le misurazioni? + + + stata una mia idea. Lui non ne vedeva l'utilit, ma sono riuscito a convincerlo. La mia ricerca indica che gli effetti della nostra strumentazione a onde potenziate sui campi di anomalie provoca uno stato aggressivo nelle specie mutate che si trovano nelle vicinanze, oltre ad aumentare i loro livelli di attivit. Detta in parole semplici, si mettono alla ricerca di qualcosa da uccidere. + + + Ozersky, ho delle novit. + + + Davvero? Ti ascolto. + + + Avevi ragione. I mutanti non ci hanno lasciato in pace nemmeno per un secondo mentre eseguivamo le misurazioni, ma non appena abbiamo spento i dispositivi si sono calmati. + + + Cosa?!? Se... se le mie ipotesi si sono rivelate corrette, probabile che gli animali mutati acquistano la capacit di accedere ai campi informazioni e possono ricevere segnali telepatici dall'esterno... segnali artificiali... In tal caso... l'innaturale somiglianza nelle mutazioni e questi cambiamenti tipici nella struttura cellulare... non avvengono per caso... + + + Puoi essere pi specifico? O magari dire qualcosa che abbia senso? + + + No! Queste sono solo le mie congetture. Oh, ma quanto sono maleducato! Grazie per il tuo aiuto nella nostra ricerca. + + + Cosa deve succedere perch tu parli a Hermann di una tuta? + + + Nei pressi della cava comparsa un'area piena di una pianta anomala precedentemente sconosciuta. Voglio un campione di questa pianta, ma gli stalker si rifiutano di avvicinarsi a quel luogo. Se avessi una di quelle piante, potrei convincere Hermann a ricompensarci con una delle tute di scorta. + + + Ti procurer io la pianta. + + + OK, caricher le coordinate dell'anomalia al tuo PDA. + + + Magari la prossima volta. + + + Fammi sapere se cambi idea. + + + Ecco, ti ho portato la pianta che ti serviva. Allora, per quella tuta? + + + Grandioso. Ah, Sokolov si lasciato sfuggire che la tuta serve a lui. Beh, non importa. Mostrer la pianta a Hermann e lui accetter sicuramente di darmi la tuta. Di' a Sokolov di passare a prenderla. + + + Posso trovarti nuove guardie. + + + Sarebbe molto gentile da parte tua. Per favore, parla di questa faccenda con Hermann... rientra nelle sue responsabilit. + + + Vorrei controllare la mia resistenza allo psico-campo. + + + Ah, e cos Hermann ti ha mandato da me? Va bene, cercher di essere il pi chiaro possibile. Per poter analizzare correttamente la tua resistenza alle psico-emissioni, mi occorrerebbero un complesso di ricerca scientifica e anni di studio. E io dispongo solo di un kit da campo con un paio di vecchie provette. + + + Quindi impossibile? + + + Non correre. Non si parla di un'analisi completa. Per i nostri scopi dobbiamo solo valutare la resistenza dei tuoi neuroni alle psico-emissioni. Un esame di base andr benissimo. Allora... Sembra che la tua testa sia a posto. Questo significa che puoi essere colpito da livelli piuttosto alti di psico-emissioni senza perdere conoscenza. + + + E che mi dici dell'ipotesi riguardo l'aumento dell'aggressivit nei mutanti? + + + Ho due teorie al riguardo. La prima che l'aggressivit dei mutanti sia provocata dall'intrusione di numerose persone nel loro territorio, nel cui caso un comportamento normale anche per le specie non mutate, compresi gli umani. L'altra teoria che i mutanti sono in qualche modo in grado di ricevere le emissioni attive dei nostri congegni di misurazione. Chiaramente, quest'ultima teoria molto pi affascinante. + + + Com' possibile eseguire dei test? + + + Il congegno di misurazione deve essere attivato in un'area dove non si sono mai verificate attivit mutanti. Inoltre, per poter minimizzare gli effetti dell'intrusione umana, l'esperimento deve essere condotto da una persona al massimo. + + + Ho portato lo scanner. + + + Che risultati hai ottenuto? + + + Non so cosa mostrer il tuo congegno, ma credo che l'ipotesi sia corretta. Cinque minuti dopo aver attivato lo scanner gli pseudo cani mi hanno attaccato. + + + Proprio come pensavo. Per un qualche motivo, sono sempre le teorie pi sgradevoli a rivelarsi corrette. In ogni caso, un bene che tu abbia fatto questa prova. Ora dobbiamo assicurarci che ogni squadra che inviamo a eseguire le misurazioni sappia cosa l'aspetta. + + + Sono pronto per cercare di confermare o confutare l'ipotesi. + + + Mi fa piacere che al mondo ci sia ancora qualcuno disposto a compiere un sacrificio per un bene scientifico superiore. Il posto migliore per condurre l'esperimento lo smottamento al confine meridionale della cava: quell'area piena di anomalie gravitazionali che i mutanti cercano solitamente di evitare. Il congegno che ti dar integra un sensore di rilevazione dei mutanti. Quando mi riporterai il congegno dopo aver completato l'esperimento potr rintracciare gli effetti dell'emissione sull'aggressivit mutante. Sei pronto per questa missione? + + + S, ci sto. + + + Adesso no. + + + C' un modo per procurarmi una tuta scientifica? + + + Questo va contro il protocollo. Dobbiamo rendere conto di ogni equipaggiamento di cui disponiamo. Comunque, conoscendo Hermann, probabilmente ne ha ordinate pi di quante ce ne servano. Credo che, in determinate circostanze, potrebbe accettare di dartene una. + + + Hai bisogno che recuperi dei manufatti? + + + No, mi dispiace. Non mandiamo pi gente sconosciuta a caccia di manufatti. Abbiamo firmato un contratto con un esperto cacciatore di manufatti, ed lui a procurarci tutto quello che ci serve. + + + Posso trovarti nuove guardie. + + + Sarebbe ottimo. La Zona non mai tranquilla... Parlane con Hermann, lui il capo da queste parti. + + + Dovresti darmi degli scanner per le ricerche delle anomalie. + + + Prendi questi. Sono tre, come stabilito da Hermann. + + + Prendi questi. Sono altri due, come stabilito da Hermann. + + + Come posso procurarmi una tuta scientifica? + + + Hermann il responsabile dell'inventario. Ma ti risparmier il disturbo di chiederglielo, tanto da lui non otterresti nulla. Prova piuttosto a parlare con Ozersky. Da una parte pi accomodante e dall'altra ha anche una certa influenza su Hermann. + + + Come mai da queste parti? + + + Ascolta, dove sono andati quei mercenari? Quelli che ti proteggevano? + + + Come va la vita? + + + Ascolta... Qualcuno ha freddato i mercenari che ti proteggevano. Nemmeno a me piacevano granch, ma qui si esagera... + + + CS-3a... fico! un'armatura niente male... Mi ricorda i bei tempi andati... + + + Puoi sbloccare un modulo di memoria? + + + Vediamo un po'... nessun problema. L'ho gi fatto parecchie volte, mi baster un'ora. Te lo far per... mmm, 2.000. Affare fatto? + + + Affare fatto. + + + Bene. Ti far sapere appena l'avr sbloccato. + + + Non ho tutti quei soldi. + + + Mmm. Beh, sai sempre dove trovarmi. Dubito che qualcuno riuscirebbe a fare questo lavoro meglio di me. + + + Ci penser. + + + Come ho detto, lo far in un'ora per 2.000. + + + Allora, hai sbloccato il modulo di memoria? + + + L'ora non mica passata. Ti ho detto che ti avrei contattato io a lavoro terminato. + + + S, ecco. Ora puoi accedere alle informazioni + + + Ho trovato uno strano semi-manufatto. Ti interessa? + + + Certamente. Dove l'hai trovato? + + + A Zaton, nella stazione di drenaggio abbandonata. + + + Affare fatto. + + + No, grazie! Cercher un altro acquirente. + + + Cosa ci fanno qui i mercenari? + + + Abbiamo un contratto con loro per la protezione del laboratorio mobile. Anticipando la tua domanda, ti dir subito che sono stato costretto a reclutarli. A causa di una qualche operazione militare segreta, non ci stata fornita la protezione adeguata all'allestimento del laboratorio. A questo aggiungi il fatto che gli stalker sono improvvisamente impazziti per la caccia ai manufatti, quindi volendo tenere al sicuro il laboratorio, ho dovuto per forza ricorrere ai mercenari. + + + Cosa fate qua? + + + Eseguiamo delle ricerche su vari fenomeni. + + + Qual lo scopo della vostra ricerca? + + + Conduciamo ricerche di fondamentale importanza. In altre parole, non siamo qui per fare test sulle tute, per inventare nuove droghe o cose del genere. Cerchiamo di trovare una spiegazione logica a quanto accade nella Zona. Se riuscissimo a svelare i segreti che si celano dietro almeno il dieci per cento dei fenomeni che osserviamo, potremmo compiere dei passi da gigante nello sviluppo tecnologico globale. + + + Cosa sai della Zona? + + + Non molto, a essere sincero. Abbiamo appena iniziato a comprendere i meccanismi che sovrintendono alcuni dei fenomeni che osserviamo, e purtroppo siamo ancora lontani dal capire la Zona nel suo insieme, cosa resa ancora pi complicata dal fatto che essa muta costantemente. Non mi riferisco alla comparsa di nuove anomalie o cosucce del genere. Parlo di mutamenti pi notevoli, mutamenti spesso invisibili a occhio nudo. L'indebolimento del campo magnetico ne un esempio. La cosa pi triste che non sappiamo dove tutto questo ci porter. Non ci resta che sedere e aspettare. + + + Da quanto sei nella Zona? + + + Non molto, circa una settimana. Comunque, ho gi visitato varie volte il laboratorio di Sakharov. Ancora mi pento di non essere riuscito a far decollare questa spedizione pi velocemente. Ho detto un sacco di volte a quelli del Ministero dell'Educazione che avremmo avuto bisogno di due laboratori mobili pronti da un momento all'altro, ma loro si limitavano ad annuire con le loro testone grasse. A causa loro abbiamo rischiato di perdere la pi grande occasione mai fornitaci dalla Zona! + + + Capisco. + + + Sono arrivate delle informazioni dagli scanner che ho collocato nelle anomalie? + + + A quale anomalia ti riferisci, nello specifico? + + + A quella accanto al parcheggio. + + + S, i nostri congegni indicano la presenza di manufatti in quell'anomalia! + + + Purtroppo, non ci sono tracce di manufatti in quell'anomalia. + + + Anomalia Bagno di cemento + + + Anomalia Bitume + + + Anomalia Fen + + + Anomalia Cumulo di cenere + + + Per ora tutto. + + + Sono tutto orecchie. + + + Gli ultimi eventi hanno dimostrato chiaramente che la nostra squadra di ricerca non pronta a condurre un adeguato lavoro sul campo. Tu, d'altro canto, ti sei occupato del controllore tutto da solo! Davvero notevole! + + + Dove vuoi arrivare? + + + Voglio arrivare a dire che per noi sarebbe quanto meno logico cercare di reclutare esperti come te. Il nostro gruppo di scienziati ha un grande bisogno del tuo aiuto. Dobbiamo eseguire delle misurazioni, collocare gli scanner... + + + Continua... + + + Sto cercando di trovare il collegamento tra le emissioni e la comparsa dei manufatti nelle anomalie. Ho una teoria secondo la quale possibile prevedere la prossima emissione usando il numero e il tipo di manufatti che compaiono. Per poter eseguire calcoli scientifici precisi, per, devo formulare delle statistiche. Dobbiamo solo collocare alcuni scanner al centro di anomalie di vario tipo. + + + Spiacente, non mi interessa. + + + Che peccato. Avresti reso un grande servizio alla scienza. + + + OK, ti aiuter. + + + Eccellente! Fatti dare gli scanner da Novikov e collocali nelle anomalie indicate sul tuo PDA. Quando hai fatto torna da me... Dobbiamo discutere di un altro lavoro riguardante gli scanner e le misurazioni. + + + Ci penser su e torner pi tardi. + + + Ho collocato gli scanner nelle anomalie. + + + Eccellente! Ho gi i primi risultati. Non vedo l'ora che arrivi un'emissione... ci fornir tutti i campioni statistici che ci servono. + + + Sono tutto orecchie! + + + Quando mi ci sono avvicinato e ho estratto il rilevatore scientifico, tutto intorno a me ha iniziato a distorcersi, come se fosse compresso. Poi, dopo un po', cadaveri di stalker sono comparsi dal nulla. Poi tutto si fermato. + + + Ma incredibile! Naturalmente, un'informazione terribilmente limitata da cui non possibile dedurre nulla di certo, ma inseriremo questa descrizione nel nostro database. Chiameremo quell'anomalia Bolla spaziale! + + + Vedo che hai delle nuove guardie. + + + S, sono piuttosto in gamba. Ci sentiamo molto pi sicuri con loro a proteggerci. Grazie per i tuoi sforzi, ecco la tua ricompensa. + + + Guarda un po' questi documenti. + + + Vediamo... Non ti chieder come te li sei procurati, ma sono semplicemente incredibili! Lascia che faccia una copia... Oh, a proposito, ecco la tua piccola ricompensa. + + + Cosa successo alle tue guardie? + + + Non lo so, sono scomparse! + + + Ho delle conoscenze nella Zona. Potrei procurarti nuove guardie. + + + Sarebbe splendido! Gli forniremmo un sostegno scientifico completo e le ultime novit tecnologiche in cambio del loro lavoro! E anche tu riceveresti una ricompensa! + + + Affare fatto! + + + Non vedo l'ora! + + + Ho cambiato idea. + + + Che peccato. + + + Capita. + + + Nient'altro? + + + Le nostre guardie sono state assassinate! Freddate sulla soglia del bunker! + + + Allo stabilimento Jupiter ho trovato dei documenti. Vuoi dare un'occhiata? + + + Interessanti, ma non molto utili. Grazie comunque per lo sforzo. Se trovi altro portalo pure qui. + + + Mentre cercavo i documenti sono stato attaccato dai mercenari. Ecco il PDA del loro capo. + + + Wow, e io che pensavo fossero qui per proteggerci. A quanto pare dovr riferirlo ai miei superiori... Grazie mille, giovanotto. + + + Purtroppo non contiene alcuna informazione utile. + + + Ecco qualcosa: dobbiamo saperne di pi sugli ultimi sviluppi fatti allo stabilimento Jupiter. Mi servono i documenti tecnici riguardanti questi sviluppi. Probabilmente ti conviene cercarli nell'ala amministrativa dello stabilimento. + + + Li cercher e ti riporter tutto quello che riuscir a trovare. + + + No, in questo caso non posso aiutarti. + + + Ho riportato i documenti da Jupiter. + + + Interessanti, ma non molto utili. Grazie comunque per lo sforzo. Se trovi altro portalo pure qui. + + + Mentre cercavo i documenti sono stato attaccato dai mercenari. Ecco il PDA del loro capo. + + + Wow, e io che pensavo fossero qui per proteggerci. A quanto pare dovr riferirlo ai miei superiori... Grazie mille, giovanotto. + + + Cercher di trovare l'anomalia. + + + Non ho tempo. + + + Voglio parlare con te del mio coinvolgimento nella tua ricerca. + + + So di parlare per tutta la squadra quando dico che ci farebbe molto piacere se tu accettassi di servire ancora una volta la scienza. Cosa ti interesserebbe fare? + + + Vorrei aiutarvi a eseguire le misurazioni. + + + Sei davvero disposto ad assisterci durante una scansione esterna completa? + + + S, vi aiuter. Dimmi cosa devo fare. + + + No, devo riordinare i miei pensieri. + + + Hai parlato di posizionare degli scanner. + + + Sto cercando di trovare il collegamento tra le emissioni e la comparsa dei manufatti nelle anomalie. Ho una teoria secondo la quale possibile prevedere la prossima emissione usando il numero e il tipo di manufatti che compaiono. Per poter eseguire calcoli scientifici precisi, per, devo formulare delle statistiche. Dobbiamo solo collocare alcuni scanner al centro di anomalie di vario tipo. + + + OK, ti aiuter. + + + Eccellente! Fatti dare gli scanner da Novikov e collocali nelle anomalie indicate sul tuo PDA. + + + Ci penser su e torner pi tardi. + + + Gli scanner nelle anomalie stanno trasmettendo le informazioni. Ora non dobbiamo fare altro che attendere i risultati. Se vuoi puoi collocare altri scanner nelle anomalie, le informazioni extra ci fanno sempre comodo. Riguardo la tua ricompensa, ti faremo sapere quando i manufatti compaiono nelle anomalie. + + + D'accordo. + + + Eccellente! Fatti dare gli scanner da Novikov e collocali nelle anomalie indicate sul tuo PDA. + + + Ci penser su e torner pi tardi. + + + Purtroppo, abbiamo una ferrea regola che ci vieta di assegnare pi di un incarico alla volta alla stessa persona. Mi dispiace ma dobbiamo rispettarla. + + + La squadra che ho protetto ti ha consegnato i risultati delle misurazioni delle anomalie eseguite sul campo? + + + Volevo aggiungere che le tue misurazioni hanno attirato l'attenzione di zombi e mutanti. Abbiamo dovuto faticare parecchio per respingerli. + + + Mmm, quindi credi che abbiano reagito alle scansioni? Interessante. Beh, a quanto pare anche tu hai confermato le ipotesi di Ozersky: i mutanti possono accedere telepaticamente a vari campi. Credo che valga la pena di discuterne con lui. Ecco il pagamento per il lavoro svolto. Te lo sei guadagnato! + + + Mmm, quindi credi che abbiano reagito alle scansioni? Interessante. Beh, a quanto pare anche tu hai confermato le ipotesi di Ozersky: i mutanti possono accedere telepaticamente a vari campi. Credo che valga la pena di discuterne con lui. Peccato per gli stalker. Una parte dei nostri modesti fondi verr usata per ripagare le loro famiglie. Il resto il tuo pagamento per il lavoro svolto. Grazie! + + + C' un modo per procurarmi una tuta scientifica? + + + No! Il numero di tute limitato e non posso proprio permettermi di distribuirle in giro! + + + Cosa volevi dirmi? + + + Non che per caso hai visto quelli che dovrebbero difendere il nostro bunker? + + + Continua. + + + Non ci crederai, ma qualcuno ha ucciso le nostre guardie, proprio accanto al bunker! + + + Ti serve aiuto? + + + Al momento stiamo raccogliendo un nuovo tipo di campioni. Non possiedono alcun effetto anomalo, ma gli esperimenti che conduciamo su di essi danno risultati da non credere! + + + Vai avanti... + + + Taglia corto e dimmi cosa c' da fare. + + + OK... Gli stalker che hanno trovato lo psico-campo dicono che contenga una tana mutante. Io non gli credo... Cio, in uno psico-campo intermittente potrebbe sopravvivere solo un controllore! Non ti preoccupare, i nostri ragazzi si occuperanno dei mutanti. Abbiamo bisogno di te solo perch il contatto costante con gli psico-campi ha ridotto la resistenza dei nostri stalker ai loro effetti. + + + Vediamo di capirci: vuoi che entri in uno psico-campo sconosciuto e ti procuri dei campioni di qualcosa che forse non c' neanche, e anche se c' nessuno sa com' fatta? + + + Esatto! Questa missione essenziale per la scienza in generale e per la nostra squadra nello specifico. Il tuo aiuto sarebbe inestimabile. Se hai dei dubbi, vai da Ozersky. Lui condurr le analisi necessarie, con cui valuter la tua attuale resistenza alle psico-emissioni. Se vuoi parla anche con i nostri stalker, loro ti spiegheranno tutto quello che c' da sapere. Allora, sei disposto ad aiutare la scienza? + + + S. + + + Non lo sai? La nostra squadra di stalker morta. + + + Considerato che l'ultima volta non ti sei presentato al tunnel, sar molto difficile convincere la squadra a lavorare con te. + + + stato un incidente. + + + Ti credo, ma la nostra squadra di raccolta dei campioni composta da gente strana... non ti conviene fregarli. Parler di nuovo con loro e forse riuscir a convincerli a cambiare idea. Ma stavolta vedi di non deludermi. Aspetto il campione. + + + Perdonami, ma devo rifiutare. Il tuo equipaggiamento semplicemente inadatto a uno psico-campo intermittente... Incontreresti una morte rapida e dolorosa, e non voglio averti sulla coscienza. + + + Ti ho procurato il campione. + + + Davvero? Dammelo, non vedo l'ora! + + + Ti ho procurato il campione e ho trovato un controllore nel tunnel. Ha cercato di sopraffare la tua squadra e per poco non ci riuscito. L'ho ammazzato appena in tempo. + + + Sei straordinario! Hai ucciso un controllore e salvato gli stalker da uno psico-attacco... Se non sapessi che tutto vero non ci crederei mai! un'ottima esperienza e un campione fantastico. Il tuo contributo alla scienza senz'altro degno di nota! Ti ringrazio personalmente, a nome della mia squadra e di tutti gli scienziati del mondo! + + + Purtroppo la squadra stata attaccata da un controllore. Mi sono dovuto difendere. Il controllore morto, ma anche gli stalker. + + + Un controllore, dici? Ma terribile! Non c'era modo di saperlo, e piango la perdita di quegli uomini coraggiosi... Erano fedeli servitori della scienza. Anche se tecnicamente non erano scienziati, hanno contribuito pi loro alla scienza che molti professori! Ti ringrazio e ti prego di accettare questa modesta ricompensa... + + + Purtroppo la squadra stata attaccata da un controllore. Io me la sono cavata per un pelo. + + + Cosa ci fanno qui i mercenari? + + + Si mettono tra i piedi. Ma questa solo la mia opinione personale. All'inizio non facevano che chiedermi come riparare questo o come sistemare quello... Poi ieri hanno abbandonato qualunque pudore e hanno iniziato a chiedermi come funziona la nostra attrezzatura. Proprio non riesco a capire come questo possa aiutarli a proteggere il bunker. + + + Quali modifiche all'equipaggiamento puoi eseguire? + + + Come puoi vedere, questo un complesso scientifico... Non abbiamo kevlar n parti di ricambio delle armi. Al massimo posso riparare un'armatura o modificarla usando uno dei miei ritrovati. Come puoi immaginare, dispongo di abbondanti attrezzature di prima qualit! + + + Grazie a te e al campione che hai riportato dallo psico-campo, Ozersky riuscito a escogitare qualcosa che protegga le persone dalle psico-emissioni. Io ho convertito la sua idea in qualcosa di concreto... Che se vuoi posso installare nella tua tuta. + + + Beh, a parte i soliti potenziamenti, posso offrirti un sistema di filtraggio e di psico-protezione. Dopotutto, anche grazie a te che sono possibili... Ozersky e Hermann erano contenti come delle Pasque! + + + Beh, a parte i soliti potenziamenti, posso offrirti un sistema di isolamento e di psico-protezione. Dopotutto, anche grazie a te che sono possibili... Ozersky e Hermann erano contenti come delle Pasque! + + + Dispongo di tutte le modifiche: isolamento, filtraggio e psico-protezione. Una tuta che le installi tutte e tre ti permetter di entrare in qualunque anomalia... E forse riuscirai anche a uscirne vivo. A proposito, grazie per aver partecipato alla ricerca di Hermann. Senza di te non potrei offrirti tutte queste possibilit. + + + Parlami del vostro bunker. + + + Cosa vuoi sapere, di preciso? + + + Cosa fate nel laboratorio? + + + Dubito che Hermann e Ozersky siano in grado di rispondere a questa domanda. Ovviamente conducono ogni genere di ricerca... ma il risultato misero, nella migliore delle ipotesi. Comunque, potresti scambiare due parole con Ozersky... Basandomi sulle sue teorie sono riuscito a ottenere un paio di modifiche niente male per la tuta. + + + Cosa sai della Zona? + + + Nulla, in senso scientifico, ma ho fatto molta esperienza pratica nella Zona. Qui l'unica cosa di valore ci che aumenta le tue possibilit di sopravvivenza. Alla Zona non interessa se sei un bandito o uno stalker che raccoglie manufatti per dar da mangiare alla propria famiglia. Qui nella Zona sopravvivono solo i pi forti. + + + Da quanto sei nella Zona? + + + Ormai da un po'. Inizialmente cercavo manufatti come tutti gli altri, ma la mia salute peggiorata al punto che ho dovuto smettere. Fortunatamente i neuroni non mi mancano, quindi non ho faticato a trovare un lavoro. Ho trascorso quasi un anno in una formazione composta da ex scienziati. Erano brave persone... peccato che siano morti nell'inseguimento di una vana meta. Poi ho vagato nella Zona per un po', dopodich ho iniziato a lavorare per gli scienziati. Finora il bilancio in positivo. + + + Non mi occorre sapere altro. + + + Ho intenzione di andare nello psico-campo intermittente. Hai qualche consiglio per me? + + + Cosa posso dire? Dubito che tu abbia familiarit con la teoria del campo di energia a impulsi... Puoi stare certo che una breve esposizione allo psico-campo non pericolosa... a lungo termine, almeno. Ma non rilassarti troppo quando sei l dentro. Chi sottovaluta gli psico-campi finisce trasformato in zombi. + + + Chi potrebbe aprire un contenitore d'acciaio? + + + Non io. Non ho l'equipaggiamento adatto... e va contro le nostre regole di salute e sicurezza. + + + Sai come decifrare una scatola nera? + + + S, ma non lo far. Una volta era il mio pane quotidiano... e non mi piaceva. Troppe seccature... gli scienziati mi procurano lavoro a sufficienza. + + + Cos'ha di tanto speciale la CS-3a? + + + Oltre al fatto che l'ho progettata io? una delle tute migliori della Zona. Ecco perch la indossi, no? leggera, trasportabile ed resistente come un'armatura militare. Ho aggiunto le protezioni alle anomalie di persona... Peccato che a quei tempi ci fosse penuria di materiali... Ma, dopotutto, cosa puoi pretendere quando si lavora in mezzo a una palude? Comunque, un paio di rattoppi e sar come avere una bella tuta moderna... Ho attrezzature di qualit in abbondanza, quindi non c' nessun problema. + + + Lavori per Owl? + + + No. L'altro giorno mi ha aiutato a procurarmi qualcosa... Un favore in cambio di un favore. + + + Owl mi ha chiesto di portarti dei rilevatori. Eccoli qui. + + + Bene. Li user poi chieder alle guide di restituirli a Owl... Qualunque altra cosa sono faccende personali tra te e lui. + + + Oh! Quindi eri tu a vendere armi ai banditi di Zaton! + + + Shh... Sei pazzo a dire cose simili qui? Noi non ci conosciamo, intesi? + + + Capito. + + + E se raccontassi al comandante che hai un secondo lavoro? + + + E cosa gli dirai? Non hai niente contro di me. Cio, sei stato tu a contribuire all'eliminazione dei testimoni. Non hai prove e accusandomi farai solo la figura dell'idiota. + + + Ho trovato un PDA addosso a dei mercenari morti. Contiene un incarico per assassinarmi. E tu sei il committente. + + + Ne ho avuto abbastanza di te... Ascolta, dammi il PDA e ti dar un'eccellente arma usata esclusivamente dalle truppe elite della Duty. Allora, che ne dici? + + + OK, prender l'arma. + + + Tienila. Non mi serve la carit di un serpente traditore! + + + Ho un altro PDA contenente l'incarico di assassinarmi. E tu sei di nuovo il committente. + + + Dannazione... dannati mercenari... non ci si pu proprio fidare di loro. Senti, facciamola finita. Ecco cosa faremo: i mercenari smetteranno di cercarti e tu mi lascerai in pace. Per compensare le tue perdite, ti condurr al magazzino segreto della Duty dove potrai prendere tutte le armi che riuscirai a trasportare. + + + OK, ci sto. + + + Bene, incontriamoci l. Il deposito accanto alla cava. + + + Non andr da nessuna parte. Dovrai portarmi tutto qui. + + + Qui non ho niente! Non sono cos stupido! O ci incontriamo al deposito o non avrai niente. + + + No, grazie. + + + Non mi serve la carit di un serpente traditore! + + + Voglio andarmene dalla Zona. + + + Sicuro? Poi non potrai pi tornare. + + + Sono sicuro. Andiamo. + + + In effetti... per ora rester. + + + Diamo un'occhiata... Beh, il tuo fegato pi grosso di quanto pensassi, ma uno dei rischi del mestiere, no? A parte questo, sei sano come un pesce. + + + Sarebbe normale se solo non fosse fluorescente. Cos com' fa paura. Vai a controllare tu stesso... anche se dubito che ti piacer. + + + OK, come ti pare. + + + Ex combattenti Monolith? Beh, come ti pare... Garantirai per loro? + + + Ex combattenti Monolith? No, grazie. L'ultima cosa di cui ho bisogno un branco di fanatici morbosi. + + + Ah. Bravo ragazzo. Sai badare a te stesso, e questo significa che non mi deluderai. Allora, cosa mi hai portato? Un manufatto o i 15.000? + + + Ho portato un manufatto. + + + Bene. Quale? + + + Non ho un manufatto che valga tanto. + + + Fiamma. + + + Pesce rosso. + + + Lucciola. + + + Fiocco di neve. + + + Nessuno, per adesso. + + + Beh, ho detto quel che dovevo dire. Ora tocca a te parlare. + + + Ci si vede. + + + Ma certo! Lo psico-campo intermittente deve essere ancora studiato e prima lo facciamo meglio . Lascia che ti faccia una domanda, per. Come sai che questa avventura sicura, almeno per quanto possibile? Ci serve quasi sicuramente la tua assistenza per ottenere un campione sperimentale. Allora, sei disposto ad aiutare la scienza? + + + Potrei riuscire a trovare dei bravi uomini per formare il vostro nuovo gruppo di ricerca. + + + Davvero? Un aiuto del genere sarebbe molto apprezzato e, immagino, degno di una ricompensa. + + + Va bene. Assumer le persone giuste. + + + Ci penser ancora un po'. + + + Eccolo qui. In quel tunnel ho trovato un controllore. Poi l'ho ammazzato. + + + Sei fantastico! Hai ucciso un controllore e ti sei procurato quel che ci serviva... Se non ne avessi le prove, non ti avrei mai creduto! Un'eccellente esperienza e un campione fantastico. Il tuo contributo alla scienza davvero degno di nota. A nome mio e di tutti gli scienziati, ti prego di accettare la mia pi sincera gratitudine! + + + Eccolo qui. In quel tunnel ho trovato un controllore. Mi sono salvato per miracolo. + + + Un controllore, hai detto? Davvero terribile, ma chi avrebbe potuto immaginarlo? L'importante che tu ci abbia portato il campione, contribuendo cos in modo significativo alla scienza. Grazie, ti prego di accettare questa modesta ricompensa. + + + Che ne dici del nostro nuovo gruppo di ricercatori? + + + Oh, perfetto. Devo ammettere che sono giovani competenti. Ti prego di accettare questo. Ti siamo grati per la tua, ehm, abilit nel campo delle risorse umane. + + + Come va, fratello? Ovviamente sono felice di vederti, ma ogni tanto non mi dispiacerebbe nemmeno stare per i fatti miei. + + + Sono qui per comprare lo stalker prigioniero. + + + Esigo rispetto per i banditi e le nostre regole, amico, ma non cerco nemmeno guai inutili... Per il momento andranno bene quindicimila bigliettoni o un buon manufatto... Sono un uomo onesto, e non ti chieder pi di quanto devo avere. + + + Ecco il contante. + + + OK... rispetto quel che fai. Prendi questo perdente e di' agli stalker che la prossima volta gli interessi saranno pi alti. + + + Non ho tutti quei contanti. + + + OK, non hai un bel niente. Che altro c' di nuovo? + + + Al momento non ho nulla di adatto... Torner pi tardi. + + + Vediamo un po'... Beh, qui non c' nulla di importanza strategica, ma potrebbe tornare utile. Ti compro tutto a 500 ogni documento. Affare fatto? + + + Diamo un po' un'occhiata. Santo cielo... Queste informazioni danneggerebbero la reputazione della Duty... e di parecchio! Te le pagher quattro bigliettoni. + + + Interessante. Beh, sono disposto a pagartele due bigliettoni. + + + S, ma il prezzo non cambia: duemila. + + + OK, allora, ci vediamo. + + + Ma terribile! Cosa mai potrebbe essergli successo? Mmm... i mutanti sono una buona ipotesi. Dovr chiedere a Ozersky di che tipo di mostro potrebbe trattarsi... Mmm, comunque, necessario studiare lo psico-campo. Questa missione essenziale per la scienza e soprattutto per la nostra squadra. Per acquisire un campione abbiamo un tremendo bisogno del tuo aiuto. Se hai dei dubbi, vai da Ozersky. Lui condurr le analisi necessarie, con cui valuter la tua attuale resistenza alle psico-emissioni. Allora, sei disposto ad aiutare la scienza? + + + Ci penser. + + + La nostra squadra di ricerca, composta da stalker del posto, ha da poco trovato uno psico-campo alquanto insolito. Stando alle nostre teorie e alle misurazioni eseguite, la natura del campo genera psico-effetti intermittenti, anzich emetterli in modo permanente. + + + Purtroppo, la squadra di spedizione morta finch non troveremo dei sostituti non potremo eseguire nessuna misurazione. + + + Aspetta... Saresti cos gentile da concedermi un momento di attenzione? + + + Quali sono i risultati della scansione dell'anomalia? + + + Hai del lavoro per me? + + + Ne ho sentito parlare. + + + Purtroppo, non sono ancora riuscito a convincere Hermann a radunare una squadra di ricerca... Lo ammetto, le voci su questo fenomeno sono troppo contraddittorie, ma qualcosa mi dice che l'Oasi esiste. Raramente il mio intuito sbaglia, quindi se riesci a trovare la prova della sua esistenza e a riportarmela te ne sarei profondamente grato. + + + La cercherei, ma sono gi stato nell'Oasi. + + + Mmm... ehm... forse ho capito male. Cos'hai detto? + + + Sono qui per pagare il debito di Vano. + + + S, mi ricordo di lui. Il suo debito non poco e con gli interessi si arriva fino a sette bigliettoni. + + + OK, tieni. + + + Di' a Vano che non ci deve pi niente. + + + OK. + + + Non ho tutti quei contanti. + + + Allora torna quando li avrai. + + + Gli interessi non facevano parte dell'accordo. + + + Di cosa stai parlando? Mi prendi per scemo? Credi che presti dei soldi senza applicare un interesse? Sette bigliettoni e non si discute. + + + Ora ascoltami bene. Ho un'arma e non mi preoccupo di usarla. Dimmi, cosa se ne far il tuo cadavere di tutti quegli interessi? + + + OK, OK, calmati, capo! Sicuramente possiamo raggiungere un accordo. Pagami cinque bigliettoni e considereremo il debito risolto. + + + Ah! Infilati quel giocattolo dove dico io, idiota! Sette bigliettoni, compresi gli interessi. Fine della storia. + + + Ti sei dimenticato di me? Sono ancora armato. + + + Preferisco ammazzarti gratis. + + + Ci penser. + + + Sette bigliettoni, compresi gli interessi. + + + Al momento non mi va di accettare lavori impegnativi. Voglio riordinare le idee... Sai, forse me ne torner persino a casa... Mi trover un vero lavoro e mi lascer alle spalle questi maledetti manufatti... Solo che non so come farei a lasciare Grizzly... e Torba... Ormai siamo molto uniti, e ci aiutiamo sempre a vicenda... Non so, forse ho solo bisogno di riposare e riordinare i pensieri... + + + Al momento non mi va di accettare lavori impegnativi. Per un po' lavorer per gli scienziati... Sai, forse me ne torner persino a casa... Mi trover un lavoro all'esterno... Non so, forse ho solo bisogno di riposare e riordinare i pensieri... + + + Allora, sei pronto a salvare Mitay? Spero non ti dispiaccia lavorare con alcuni uomini che ho assunto. + + + Ho il PDA del mercante della Duty, Morgan. Ti interessa? + + + Ho un PDA che dimostra che Morgan ha dei collegamenti con i mercenari. + + + In realt... lo terr io. + + + Sapevo che alla fine in te avrebbe prevalso il desiderio di far avanzare la scienza e fare del bene nel mondo! E va bene, ecco il piano. Un gruppo di ricerca di stalker eseguir tutte le misurazioni. Tu dovrai scortarli, proteggerli e guidarli nelle zone impervie. Buona fortuna. Gli stalker ti aspettano qui fuori. + + + Salve, stalker. Sorpreso di vedere un vecchio da queste parti? Eh eh. Sono venuto con i ragazzi per cambiare un po' aria. Posso rimettere in sesto gli equipaggiamenti e a volte anche le persone... + + + Ora che sei qui, cosa posso fare per te? + + + Come sei arrivato a Pripyat? + + + Garry mi ha mostrato la strada. Quegli stalker un pezzo che pianificano di venire qui, ma non volevano avere niente a che fare con i militari. Non appena Garry ha detto che l'esercito aveva levato le tende, non ci ho pensato su due volte! Non temere, lo Zio Yar qui! Ah ah! + + + Mi serve assistenza medica. + + + Lascia che questo vecchio ti dia un'occhiata... + + + Ecco qui, sopravvivrai. Se si dovesse gonfiare, facci un goccio di pip sopra... ho sentito dire che serve. + + + A me sembri in perfetta salute! Vuoi prendere in giro questo vecchio? + + + Benvenuto nel mio piccolo regno del piacere e della gioia. Vuoi la gioia, il piacere o entrambe le cose in egual misura? + + + I ragazzi dicono sempre che sono troppo buono, come una specie di fata madrina, quindi ti conviene esserne contento... La prossima volta non sar altrettanto gentile. Ora fuori da qui, perdente! + + + Ci sono gi stato. I banditi sono morti. + + + Ehi, sei un osso duro! Grazie mille! Ecco, prendi questo denaro... sarebbe servito per pagare il debito, ma ora andr a qualcuno che se lo merita davvero. + + + Ehi, sei un osso duro! Grazie mille! Ecco, prendi il denaro che sarebbe servito per pagare il debito. Ora andr a qualcuno che se lo merita davvero. + + + I nostri scanner hanno registrato un'attivit insolita a nord... A giudicare dai dati ricevuti, mi aspetto che la formazione anomala sia instabile. Purtroppo da qui non riesco a stabilire altro. Dobbiamo condurre delle ricerche sul campo... Posso solo dire che i rilevatori stalker standard non riusciranno a individuare l'anomalia. Avrai bisogno di uno Svarog, uno dei nostri gioiellini. + + + Gli scanner continuano a registrare un'attivit anomala instabile a nord. Se hai di meglio di un normale rilevatore stalker, come per esempio uno Svarog, potresti cercare di condurre una ricerca sul campo. + + + Finora solo dalla palude anomala. Nonostante questo, Novikov ha gi trovato un'applicazione pratica. Grazie per il lavoro svolto e aspettiamo con ansia il secondo gruppo di risultati. + + + Finora solo dall'area anomala oltre Kopachy. Nonostante questo, Novikov ha gi trovato un'applicazione pratica. Grazie per il lavoro svolto e aspettiamo con ansia il secondo gruppo di risultati. + + + Certo. Ho ricevuto i risultati completi. A essere sincero, la quantit dei dati prodotti tale che occorreranno settimane se non mesi per elaborarla. Nonostante questo, Novikov ha gi trovato ottime applicazioni pratiche. Grazie mille per il tuo aiuto. + + + No, qui non successo nulla del genere. Mmm... In effetti ho visto un tipo sospetto di recente. Ero andato a fare una passeggiata e al ritorno ho individuato uno stalker che se ne andava da Yanov. Non appena mi ha visto, ha iniziato a comportarsi da maleducato e ha detto qualcosa come?"so dove abiti" o cose di questo tipo. Io l'ho ignorato, perch pensavo fosse sbronzo o drogato, ma ora che ci penso piuttosto strano. + + + Dov' andato? + + + A nordest. Ho sentito degli spari provenire da quella direzione, ma da queste parti normale. Chiedi a Zulu... passa giorno e notte nella sua torre, quindi forse ha visto qualcosa. + + + A nordest. Probabilmente andato alla sotto-stazione. + + + Capisco. + + + Che si dice, amico? + + + Come butta? + + + Me la passo bene. Cio, non facile ma ce la caveremo. Insieme possiamo tutto! + + + Come butta? + + + Non so come risponderti... Qui non mi sento molto a mio agio. Ho la sensazione di dover cambiare aria. Presto potrei andarmene... non volermene. + + + Ho spazzato via la tana di succhiasangue a Zaton. Completamente. + + + [continua...] + + + [continua...] + + + [continua...] + + + [continua...] + + + Ho bisogno di persone per eseguire misurazioni nelle anomalie. + + + Ho bisogno di misurazioni eseguite nelle anomalie. + + + Chi la bella addormentata? + + + Hai trovato il manufatto? + + + Puoi scommetterci! Non abbiamo niente da fare, e l'unico passatempo sono le partite a backgammon. Qui non siamo a Pripyat... Dannazione, se solo riuscissi a portare a termine questo dannato contratto ci andrei di corsa! + + + [continua...] + + + Puoi andare alla cava, l che morto Scheggia. Prima di morire, riuscito a dirmi che Flint gli ha rubato il manufatto e lo ha lasciato a crepare in un'anomalia... + + + Si chiamava Scheggia. finito in una anomalia gassosa e tu sei fuggito con il manufatto. Come puoi vedere, riuscito a dirmi tutto, prima di morire. + + + Non ti chieder dove hai preso questa roba. Facciamola semplice: ti comprer questo PDA per 4.000. Sono davvero curioso di scoprire che cosa combina il nostro ufficiale delle scorte, quando non in servizio... + + + Vediamo un po'... Accidenti, che bastardo! Non solo vendeva le nostre armi, ha addirittura consegnato il magazzino alla Freedom! Dannazione... metto subito insieme una squadra per andare a porgere i nostri saluti. + + + Vediamo un po'... Dannazione, non ci credo! Sapevamo del magazzino e avevamo intenzione di farci un gro, ma non avevamo idea dell'allarme, visto che quel bastardo non ce ne ha parlato. Aspetta un secondo, avviso i ragazzi. + + + Guarda, te ne dar 4.000, giusto perch sono curioso. + + + Beh, non un soldato d'assalto, ma con la pistola se la cava bene. Per ha sempre un'aria piuttosto depressa, sempre imbronciato, come se mangiasse soltanto limoni. + + + Ho trovato una strana anomalia, vicino alla vecchia torre di raffreddamento. + + diff --git a/gamedata/configs/text/ita/st_dialogs_pripyat.xml b/gamedata/configs/text/ita/st_dialogs_pripyat.xml new file mode 100644 index 0000000..cbc3eed --- /dev/null +++ b/gamedata/configs/text/ita/st_dialogs_pripyat.xml @@ -0,0 +1,906 @@ + + + + Ah! Gliel'hai fatta vedere! Grazie dell'aiuto! Se non fosse stato per te, quei bastardi mi avrebbero fatto la festa. Sai, in fondo sei un bravo stalker... Scusa per prima, ma anche tu avresti potuto dirlo subito che sei un soldato americano. + + + Nessun problema. Ora dirigiamoci all'accampamento militare... l pi sicuro. + + + S, sicuramente sar meglio che vagare per Pripyat da solo. + + + Allora muoviamoci. + + + Ho delle cose da finire qui, tu vai pure avanti. L'accampamento nella lavanderia. + + + ora che io vada. + + + Aspetta... Prendi questo... il mitra pi affidabile di tutta la Zona. + + + Aspetta, a te non serve pi? + + + Un paio di armi per respingere i mutanti non mi mancheranno mai. E poi ho deciso di tornare indietro... Garry mi porter a Jupiter. Quindi tu ne avrai pi bisogno. Prendilo e usalo bene. + + + Buona fortuna a te. + + + Grazie, un'ottima arma. + + + Ah! Non solo ottima, la migliore di tutta la Zona! modificata, quindi un po' pi pesante del solito, ma tanto con questo cannone non avrai certo bisogno di correre... lascia che sia il nemico a fuggire! + + + Ciao. + + + Bene! + + + Sai dov' andato Zulu? + + + Se n' andato... Mi ha chiesto di portarlo a Jupiter e ci siamo separati non lontano dallo stabilimento. Non mi ha detto dove si sarebbe diretto. + + + Aspetta... Ho avuto una brutta esperienza che voglio raccontarti. Dei mercenari mi hanno chiesto di portarli a Pripyat. All'inizio mi avevano fatto gola con un pagamento generoso, ma mi sono presto accorto di esserci dentro fino al collo, se capisci a cosa mi riferisco... Non mi perdevano di vista nemmeno per un secondo e mi tenevano costantemente sotto tiro. Sono riuscito a fuggire nei pressi di Pripyat, ma loro saranno sicuramente arrivati in citt, quindi sii prudente. + + + Per caso hai sentito di cosa stavano parlando i mercenari? + + + In parte s. Non avevano nessuna intenzione di lasciarmi in vita, quindi non si sforzavano per nascondere i loro piani. Discutevano principalmente di incontrare gli uomini del cliente, i quali avrebbero dovuto spiegare loro lo scopo della missione. + + + Dove si sarebbe tenuto l'incontro? + + + Qui vicino, nel cortile del complesso di appartamenti. + + + Grazie delle informazioni. + + + Hai parlato dei mercenari... Hai sentito di cosa stavano parlando? + + + In parte s. Non avevano nessuna intenzione di lasciarmi in vita, quindi non si sforzavano per nascondere i loro piani. Discutevano principalmente di incontrare gli uomini del cliente, i quali avrebbero dovuto spiegare loro lo scopo della missione. + + + Dove si sarebbe tenuto l'incontro? + + + Qui vicino, nel cortile del complesso di appartamenti. + + + Ho raggiunto un accordo con gli scienziati per una tuta. Vai a parlarne con Hermann. + + + OK... dov' il punto d'incontro? + + + Vicino alla stazione di Yanov, a casa di Zulu. + + + pieno di stalker! Perch non mi ci porti tu? Se ci vado da solo saranno guai. Se invece ci sarai anche tu non spareranno perch ti conoscono. + + + A quale punto d'evacuazione sei andato? + + + Spiacente, non posso parlarne... segreto. + + + Vai a trovare Zulu. + + + OK. Ma prima dobbiamo andare da Hermann per procurarci la tuta scientifica. + + + Muoviamoci. + + + Verrei... Ma c' un'emissione in corso. E se aspettassimo un po'? + + + Come sei finito qui? + + + Il mio elicottero si schiantato su un'officina di Jupiter e ha attraversato il tetto. Io sono l'unico sopravvissuto. Sono riuscito a uscire dallo stabilimento e mi sono diretto al punto di evacuazione pi vicino ma era deserto. Poi ho incontrato Garry che mi ha portato al bunker degli scienziati. + + + Ti servir una tuta con un modulo respiratorio a ciclo chiuso per arrivare a Pripyat. + + + Cosa fate qua? + + + I miei ordini sono di procedere fino al punto di evacuazione, ma la Zona troppo pericolosa. Sono un pilota, non un soldato d'assalto. Ecco perch aspetto qui con la speranza che mi vengano a prendere una volta terminata l'operazione. + + + Sto raccogliendo una squadra per andare a Pripyat. Vuoi unirti a me? + + + Pripyat? Sai, credo proprio che verr... Forse qualcuno dei nostri ragazzi sopravvissuto ed andato l... C' un punto d'evacuazione a Pripyat, quindi di fatto proprio quella la mia destinazione. Non ce la farei mai da solo, ma insieme a te sono disposto a fare un tentativo. + + + Sei pronto per partire? + + + Immagino di s. + + + Salve, stalker. + + + Ehi. + + + Salve. + + + Salve, maggiore. + + + Dove ti sei procurato un'uniforme militare? + + + Eh eh... Immagino che ormai lo sappiano tutti che gli elicotteri militari si sono schiantati... Sono il tenente Sokolov, copilota di uno degli elicotteri. + + + Riguardo quella sentinella... + + + Il suo segnale proviene dalla vecchia macelleria, ma non risponde... Forse ha perso la radio... A questo punto difficile saperlo con certezza. Dobbiamo trovarlo. + + + Grazie, colonnello! Credo che ce la far. + + + Riguardo quella sentinella... + + + Beh... tutto per colpa di quel controllore. Probabilmente alla squadra di ricognizione successa la stessa cosa. Si sono sparati a vicenda... Quelle creature sono tra le peggiori della Zona, inoltre non siamo stati addestrati per combatterle. Il controllore ci ha colti di sorpresa e abbiamo perso altri uomini. + + + Almeno spero che questo controllore sia stato tolto di mezzo. + + + Spero che ora le cose si calmeranno un po'... Ti sono grato per l'aiuto, maggiore. Immagino che tu abbia consumato un bel po' di munizioni nel corso di questa missione... Vai dal Tenente Kirillov e chiedigli di fornirti il kit necessario. + + + Grazie, colonnello! + + + Non ti preoccupare, colonnello... Penser io a quel mutante. + + + Puoi darmi altri dettagli su questa missione? + + + Lui chi ? + + + Se non ci sbrighiamo a trovare la fonte dell'interferenza, non ci rester altro da fare che aspettare di morire. Il primo attacco di massa della Monolith far a pezzi l'esercito... e l'operazione sar un fallimento totale. + + + Cercher di trovare la fonte il prima possibile. + + + Allora, maggiore? Hai trovato la fonte dell'interferenza radio? + + + No, ci sto ancora lavorando... + + + Garry mi ha parlato dell'incidente con i mercenari... + + + S, ne ha parlato anche a me... Non appena Garry fuggito venuto qui per paura di essere inseguito. Fortunatamente per noi e per lui, i mercenari non sono riusciti a seguirlo. Ora sorvegliamo il luogo dove dovrebbero incontrarsi i mercenari e gli uomini del cliente, ma tutto tranquillo... Vorrei proprio sapere perch i mercenari vogliono questo posto... + + + Secondo le mie informazioni i mercenari stanno cercando un laboratorio segreto a Pripyat. + + + Un laboratorio segreto qui a Pripyat? Ma dove ti sei procurato questa informazione? + + + Dal notebook di un mercenario a Zaton. Poi uno stalker chiamato Zio Yar mi ha raccontato una storia che l'ha confermata. + + + Mmm... sai altro? + + + Stanno cercando il laboratorio centrale. Sono riuscito a trovare le coordinate durante la mia indagine. + + + Se questo vero, significa che abbiamo un nuovo nemico, oltre agli zombi e ai fanatici... Dobbiamo stabilire un piano d'azione. + + + Dobbiamo osservare l'incontro ed eliminare il rappresentante del cliente, se possibile... Cos ci assicureremo che nessuno vada al laboratorio X8 per un po'. + + + una buona soluzione, anche se cos non scopriremo chi altri a conoscenza del laboratorio. Almeno, per, avremo la certezza che i mercenari non lo raggiungeranno. Allo stesso tempo, i mercenari reagiranno rapidamente e diventeranno una minaccia. Se puoi cerca di uccidere entrambi i bersagli. Io ordiner al Tenente Kirillov di venire con te. + + + OK. + + + Aspetta, forse dovremmo scegliere l'altro bersaglio. + + + Decidi quale bersaglio ha la priorit. + + + Dobbiamo eliminare il capo dei mercenari... Fatto questo la squadra di mercenari sar priva di una guida e non costituir pi un grosso problema. + + + una buona soluzione, ma il messaggero probabilmente riuscir a scappare e diffonder altrove le informazioni sui laboratori. Prima o poi i mercenari ci arriverebbero comunque. Se puoi cerca di eliminare entrambi i bersagli. Ordiner al Tenente Kirillov di venire con te. + + + Non ho tempo per queste cose. + + + Dal notebook di un mercenario a Zaton. + + + Una storia che mi ha raccontato Zio Yar, uno stalker della stazione Yanov. + + + Riguardo i mercenari... + + + Ottimo lavoro, entrambi i bersagli sono stati assassinati. Ora i mercenari non ci staranno pi tra i piedi ed eviteranno di interessarsi inutilmente al laboratorio. Tieni pure il fucile. Ecco un altro po' di munizioni. + + + Bene, ora che il capo morto i mercenari non costituiranno pi un problema. Ma, considerato che gli uomini del cliente se la sono cavata, potrebbero arrivare al laboratorio. Stai all'erta... e tieni pure il fucile. Ecco un altro po' di munizioni. + + + Bene, ora che la persona che conosceva l'ubicazione del laboratorio morta, i mercenari non lo troveranno. Comunque, dubito che se ne andranno da Pripyat, il che significa che continueranno a minacciarci. Stai all'erta... e tieni pure il fucile. Ecco un altro po' di munizioni. + + + Hai cambiato bersaglio all'ultimo secondo? Beh, credo tu abbia fatto bene. Ora che il capo morto, i mercenari non costituiranno pi un problema. Ma, considerato che gli uomini del cliente se la sono cavata, potrebbero arrivare al laboratorio. Stai all'erta... e tieni pure il fucile. Ecco un altro po' di munizioni. + + + Hai cambiato bersaglio all'ultimo secondo? Beh, credo tu abbia fatto bene. Ora che la persona che conosceva l'ubicazione del laboratorio morta, i mercenari non lo troveranno. Comunque, dubito che se ne andranno da Pripyat, il che significa che continueranno a minacciarci. Stai all'erta... e tieni pure il fucile. Ecco un altro po' di munizioni. + + + Non andata granch bene. Il capo dei mercenari e l'uomo del cliente sono ancora vivi. Ora i mercenari sanno di noi e costituiranno una minaccia tanto quanto le forze della Monolith. Inoltre, ora conoscono anche l'ubicazione del laboratorio, quindi solo una questione di tempo prima che ci arrivino. Stai all'erta... e tieni pure il fucile. Ecco un altro po' di munizioni. + + + Prepara i tuoi soldati, colonnello. Sono pronto per partire. + + + OK. Maggiore, tu copri Strelok. Noi sapremo badare a noi stessi. + + + Quindi... Tra noi tu e Strelok siete quelli con la maggiore esperienza nella Zona. La differenza che mentre l'esperienza di Strelok solo una diceria, il fatto che tu sia un professionista ovvio. Quello che sto cercando di dire che conto su di te, maggiore. Tieni d'occhio Strelok, non siamo rimasti in molti. + + + La squadra pronta per partire. Aspettiamo te, maggiore. + + + A quanto pare tutti i pazzi sono morti. Prendi quel fucile e andiamocene da qui finch possiamo. + + + Mi sembra giusto. + + + Sono pronto, andiamo. + + + OK. La squadra pronta. + + + Muoversi. + + + Dovremo aspettare. Non voglio perdere degli uomini nell'emissione. + + + Sono il Capitano Tarasov. Tu sarai anche un maggiore, ma qui comando io e questo significa che i miei ordini non si discutono. Da essi dipendono le vite di tutti gli uomini della squadra. Ecco il piano: ci metteremo in posizione nella sezione occidentale dell'ospedale e aspetteremo l'arrivo delle forze dei Monolith. Dobbiamo agire in fretta per non attirare attenzioni indesiderate. + + + Ricevuto, andiamo. + + + OK. La squadra pronta. + + + Muoversi. + + + Dovremo aspettare. Non voglio perdere degli uomini nell'emissione. + + + Aspetta, capitano, non sono ancora pronto. + + + Niente di nuovo sul fronte interferenza? + + + Ho identificato molte fonti, una delle quali qui vicino. Se venisse distrutta, probabilmente riusciremmo a comunicare con il quartier generale. + + + Ho trovato le coordinate della fonte dell'interferenza. Deve essere una sorta di frequenza alta e specializzata o forse una trasmittente a microonde. + + + Il congegno che hai distrutto era la fonte dell'interferenza... probabilmente ce ne sono a tonnellate, ma siamo gi riusciti a contattare il quartier generale. + + + Parlami del segnale. + + + Il segnale continua a comparire e scomparire, ma ogni volta sempre pi vicino alla base. + + + Tutto qui? + + + Non proprio... il fatto che il segnale viene trasmesso su frequenze raramente usate per le comunicazioni radio. + + + Capisco. + + + Prendi quest'arma e queste munizioni... Per il momento puoi rilassarti. Io sorveglier la posizione dall'altra parte e ti contatter non appena arriveranno. + + + OK. + + + Salve. Sono il Tenente Kirillov. Sono il responsabile della manutenzione delle armi e del deposito munizioni. + + + Hai delle munizioni? + + + S, l'altro giorno abbiamo trovato un magazzino dei Monolith pieno di munizioni per ogni tipo di arma presente nella Zona... Chiss come fanno a procurarsi tutti quegli armamenti... Immagino che glieli venda una delle guardie del perimetro... + + + Quindi puoi riparare anche le mie armi? + + + Certo. Siamo stati addestrati per riparare ogni tipo di arma. + + + Capisco. + + + Salve! + + + Ma da dove arriva questo mal di testa... + + + Ecco il momento della verit... chiss se ce la faremo o no... + + + Mi servono delle munizioni. + + + Nessun problema... Di quale tipo? + + + Munizioni per pistola 9x18... + + + Ecco... Nient'altro? + + + Tieni... + + + Munizioni per pistola 9x19... + + + Munizioni per pistola 11.43x23... + + + Munizioni per il fucile... + + + Munizioni per il fucile d'assalto 5.45x39... + + + Munizioni per il fucile d'assalto 5.56x45... + + + Munizioni per il fucile d'assalto 9x39... + + + Munizioni per il fucile da cecchino... + + + Munizioni per il mitra... + + + Non posso dartene altre, maggiore... Il colonnello ha ordinato di limitare l'uso delle munizioni. + + + OK, lascia perdere. + + + Mi servono delle granate. + + + Nessun problema... Di che tipo? + + + Granate a mano. + + + Tieni... + + + Munizioni per il lanciagranate VOG-25. + + + Munizioni per il lanciagranate M209. + + + Anzi, lascia perdere. + + + Non posso dartene altre, maggiore... Il colonnello ha ordinato di limitare l'uso delle munizioni. + + + Mi serve assistenza medica. + + + Sono sempre felice di rendermi utile. Diamo un'occhiata... + + + Ecco qui, pronto allazione. + + + Come ti senti, dopo quello che successo? + + + Ora sto bene... Dopo l'asilo ero sotto shock, ma non appena cominciata l'emissione mi sono ripreso immediatamente... + + + Salve! + + + La cosa pi importante raggiungere gli elicotteri. + + + Mi servono dei medicinali. + + + Vediamo che cosa ho. Tieni, prendi questo... + + + Mi spiace, non me ne sono rimasti molti. Non te ne posso dare pi di cos. + + + Abbiamo intercettato il tuo segnale radio. + + + S. Ho contattato uno stalker chiamato Guide. Mi ha spiegato lui come raggiungere questo posto passando dalle gallerie sotterranee. + + + Chi Guide? + + + Uno stalker leggendario. Dicono che ti possa accompagnare ovunque, nella Zona... Quelli dell'esercito sono stati fortunati ad averlo incontrato. Senza di lui non sarebbero durati a lungo. + + + Come facevi a sapere che qui ci sono i militari? + + + Me l'ha detto Guide... stato lui a portare qui Kovalski e la sua squadra. + + + Capisco. + + + Che informazioni vuoi da consegnare al governo? + + + Parecchie cose... Sono sicuro che le mie informazioni possono essere usate per distruggere la Zona. Pensavo di poterlo fare da solo, ma ho scoperto che la cosa molto pi complicata. Le persone che hanno dato via a tutto quanto non sono pi in grado di controllare quanto sta succedendo... Ti spiegher tutto quando saremo fuori da qui. + + + Cosa hai visto nel sarcofago? + + + tutta una farsa... Il Monolite, l'Esauditore di desideri... Sono solo balle che obnubilano la tua mente. E le persone che ci stanno dietro sono spariti dalla circolazione chiss dove... + + + E tu sai chi c' dietro tutto questo? + + + Forse s, forse no... Non so pi a cosa credere... Nonostante questo, ho scoperto pi cose di quante loro avrebbero voluto. + + + OK, basta cos. + + + Ti dir tutto quello che so, purch queste informazioni raggiungano le persone giuste. + + + Mentre venivo qui ho trovato i nascondigli del tuo gruppo... + + + Mi chiedo come tu sia riuscito a trovarli... l dentro avrebbero dovuto esserci dei dossier. Li hai trovati? + + + S, ho trovato questi tre appunti. + + + Grazie... Ghost e Fang erano miei amici... Insieme siamo riusciti a superare il Bruciacervella e raggiungere la centrale di Chernobyl. Purtroppo sono morti entrambi. Dopo essere tornati ci siamo separati... io ero ferito e sono rimasto con Doctor alle paludi. Non li ho pi rivisti... Solo pi tardi ho scoperto che Fang era stato ucciso dai mercenari e Ghost era morto perch si era fidato degli scienziati... Comunque, ormai acqua passata... Ora so cosa va fatto perch i miei amici non siano morti invano. + + + S, ecco il tuo messaggio per Ghost. + + + Grazie... Ghost era mio amico... Insieme a lui e a Fang siamo riusciti a superare il Bruciacervella e raggiungere la centrale di Chernobyl. Dopo essere tornati al centro ci siamo separati... io ero ferito e sono rimasto con Doctor alle paludi. Non li ho pi rivisti... Solo pi tardi ho scoperto che Fang era stato ucciso dai mercenari e Ghost era morto perch si era fidato degli scienziati... + + + Ecco il biglietto di Fang per te. + + + Grazie... Fang era mio amico... Insieme a lui e a Ghost siamo riusciti a superare il Bruciacervella e raggiungere la centrale di Chernobyl. Dopo essere tornati al centro ci siamo separati... io ero ferito e sono rimasto con Doctor alle paludi. Non li ho pi rivisti... Solo pi tardi ho scoperto che Fang era stato ucciso dai mercenari e Ghost era morto perch si era fidato degli scienziati... + + + S, ecco il tuo messaggio per Fang. + + + Grazie... Fang era mio amico... Insieme a lui e a Ghost siamo riusciti a superare il Bruciacervella e raggiungere la centrale di Chernobyl. Dopo essere tornati al centro ci siamo separati... io ero ferito e sono rimasto con Doctor alle paludi. Non li ho pi rivisti... Solo pi tardi ho scoperto che Fang era stato ucciso dai mercenari e Ghost era morto perch si era fidato degli scienziati... + + + Ecco il tuo biglietto a Ghost e il biglietto di Fang per te. + + + Grazie... Ghost e Fang erano miei amici... Insieme siamo riusciti a superare il Bruciacervella e raggiungere la centrale di Chernobyl. Purtroppo sono morti entrambi. Dopo essere tornati ci siamo separati... io ero ferito e sono rimasto con Doctor alle paludi. Non li ho pi rivisti... Solo pi tardi ho scoperto che Fang era stato ucciso dai mercenari e Ghost era morto perch si era fidato degli scienziati... + + + Ecco il tuo biglietto a Ghost e il biglietto di Fang per te. + + + Grazie... Ghost e Fang erano miei amici... Insieme siamo riusciti a superare il Bruciacervella e raggiungere la centrale di Chernobyl. Purtroppo sono morti entrambi. Dopo essere tornati ci siamo separati... io ero ferito e sono rimasto con Doctor alle paludi. Non li ho pi rivisti... Solo pi tardi ho scoperto che Fang era stato ucciso dai mercenari e Ghost era morto perch si era fidato degli scienziati... + + + Ecco il tuo biglietto per Fang e il suo per te. + + + Grazie... Fang era mio amico... Insieme a lui e a Ghost siamo riusciti a superare il Bruciacervella e raggiungere la centrale di Chernobyl. Dopo essere tornati al centro ci siamo separati... io ero ferito e sono rimasto con Doctor alle paludi. Non li ho pi rivisti... Solo pi tardi ho scoperto che Fang era stato ucciso dai mercenari e Ghost era morto perch si era fidato degli scienziati... + + + S. Purtroppo non li ho con me. + + + Diamo un'occhiata... Maggiore, sei nei guai... Cio, probabilmente supereresti l'esame medico per l'ammissione al programma spaziale, ma a parte questo sei in pessima forma! Ah! + + + Andiamo, maggiore. I Monolith non aspetteranno. + + + Maggiore, manca una sentinella: ha lasciato la sua postazione. Il suo segnale radar proviene dalla macelleria, ma non risponde. Chiss cosa successo laggi. Forse si spaventato... lo schianto dell'elicottero lo ha spaventato per bene. Puoi controllare il suo segnale? + + + Lo far. + + + Non posso promettere nulla. + + + Maggiore, dobbiamo trovare l'unit di ricognizione. + + + Tu e la squadra di assalto dovete procedere verso l'oggetto A17. Il Capitano Tarasov vi indicher i dettagli. Il bersaglio sono due ali d'ospedale collegate da un passaggio. I combattenti Monolith sono al momento nell'ala ovest. Dovete allestire un'imboscata nell'altra ala. Dovrebbero essere armati di fucile, probabilmente portato dal pi pazzo tra loro. + + + Probabilmente il capo della squadra. I ragazzi l'hanno visto impartire un sermone ai combattenti. Letteralmente! Sii prudente... non sappiamo cosa aspettarci da uno come lui. + + + Ricevuto, colonnello. + + + Salve. Sono il Colonnello Kovalski, comandante di quest'unit. + + + Sono il Maggiore Degtyarev, dell'esercito americano. Sono autorizzato a indagare sul fallimento dell'Operazione Fairway. + + + Capisco. Allora ascoltami bene, maggiore. L'Operazione Fairway precipitata insieme ai nostri elicotteri. Met dei miei ragazzi ci hanno lasciato le penne e non abbiamo pi ricevuto comunicazioni dal quartier generale. Voglio sapere perch la missione fallita almeno quanto te. + + + Qualche idea? + + + La mia unica idea che gli elicotteri siano stati abbattuti. Abbattuti da un'arma molto potente su cui non sappiamo molto. I combattenti Monolith ne hanno usata una contro di noi durante il primo assalto alla centrale di Chernobyl. Voglio rubare una di quelle armi e indagare. Se vuoi prendere parte all'azione, abbiamo localizzato la squadra di Monolith e la squadra di assalto aspetta il mio segnale per dare il via all'operazione. Che ne dici? + + + Accetto a condizione che tu mi fornisca tutte le informazioni che possiedi e che mi conceda completa libert di azione. + + + Ho delle informazioni sull'arma non identificata, il fucile Gauss. + + + Wow! Come funziona? Pu essere usato per abbattere un elicottero? + + + Tecnicamente s, ma il proiettile accelerato avrebbe lasciato dei buchi nell'elicottero, mentre non ne sono stati rinvenuti. + + + Dannazione... allora siamo in un vicolo cieco. Non ho altre idee. Ora possiamo solo starcene ad aspettare nel bel mezzo della Zona e sperare che ci vengano a prendere... OK, basta frignare. Preoccupiamoci piuttosto di cosa possiamo fare qui. Grazie a te sappiamo che stare al riparo non ci protegger da quei proiettili accelerati, e questo gi qualcosa. Quindi grazie, maggiore. Ti contatter se scopriremo qualcosa di nuovo. + + + Tecnicamente s, ma gli Stingray 4 e 5 si sono schiantati per via di malfunzionamenti elettronici. I proiettili accelerati non avrebbero avuto quell'effetto. + + + Come procede l'operazione? + + + Il Sergente Morozov stato ucciso. I combattenti Monolith ci hanno attirato in una trappola sacrificando la propria gente. + + + Bastardi! Non potevano sapere del nostro piano... Quindi abbiamo perso il cecchino. Che mi dici dello scopo dell'operazione? + + + Abbiamo subito alcune perdite. I combattenti Monolith ci hanno attirato in una trappola sacrificando la propria gente. + + + Bastardi! Non potevano sapere del nostro piano... Quindi abbiamo perso alcuni uomini. Che mi dici dello scopo dell'operazione? + + + La squadra morta. I combattenti Monolith ci hanno attirato in una trappola sacrificando la propria gente. + + + Bastardi! Non potevano sapere del nostro piano... Quindi abbiamo perso Tarasov e i suoi uomini. Che mi dici dello scopo dell'operazione? + + + Ho preso l'arma. Durante lo scontro rimasta danneggiata. + + + Quindi non possiamo determinare se stata usata per abbattere gli elicotteri. Ascolta, maggiore: tu hai delle conoscenze tra gli stalker. Forse loro si sono gi imbattuti in quest'arma. Tra di loro dovrebbero esserci dei tecnici. Puoi cercare di parlare con loro? + + + OK. + + + Bene... Ah, a proposito, arrivato un altro stalker da Jupiter... Prima parla con lui, se ti va. + + + Ci sto ancora lavorando. + + + Capisco. Maggiore, ci serve quell'arma. Sono sicuro che tu capisca quanto sia importante. + + + D'accordo. + + + Ho trovato il tuo biglietto al complesso Volkhov AA. Prendilo. + + + Ascolta... Oh, lascia stare. Tanto non credo che qualcuno dei nostri si far vedere nel punto stabilito. Se vedi dei militari da queste parti fammi un fischio, d'accordo? Grazie fin d'ora... + + + Maggiore... grazie al cielo! Sono salvo! + + + Come sei finito qui? + + + Ehm... non ricordo molto... Avevo talmente tanta paura da non riuscire quasi a pensare e non so nemmeno cosa mi abbia spaventato. Avevo la sensazione di dovermi nascondere, cos sono scappato... Ricordo strade, curve... Sono finito in questo buco. La porta era chiusa dall'esterno... Credevo che sarei morto. Come hai fatto a trovarmi? Anzi, andiamocene da qui e torniamo alla base. Questo posto mi d i brividi... + + + Andiamo. + + + Salve. Ti serve assistenza medica? Non sono un medico, ma se serve posso rimuovere i proiettili e ricucire le ferite. + + + Mi servono delle informazioni. + + + Chiedi pure. + + + Riguardo l'Operazione Fairway... + + + Cosa vuoi sapere? + + + successo qualcosa di strano mentre gli elicotteri erano in volo? + + + Solo da quando gli elicotteri hanno iniziato a schiantarsi. Noi ci siamo attenuti al piano dell'operazione: siamo partiti 90 secondi prima dell'emissione, abbiamo attivato il nostro sistema di protezione e impostato il pilota automatico. Stavamo seguendo la rotta pi breve e sicura, calcolata usando la mappa della anomalia. Il fatto che non avessimo alcuna visibilit non avrebbe dovuto influenzare l'esito della missione, perch il corridoio era ampio a sufficienza. Secondo il piano, avremmo dovuto raggiungere la centrale energetica in dodici minuti e mezzo. Dopo nove minuti abbiamo perso le comunicazioni con lo Stingray 4, poi gli altri hanno iniziato a cadere come mosche. + + + Ho altre domande sull'operazione. + + + Sai cosa successo agli elicotteri? + + + Non molto. Gli Stingray 2 e 4 sono un vero mistero. Non so dove si siano schiantati o cosa sia successo agli uomini a bordo. Le informazioni sugli altri elicotteri provengono da quelli che sono sopravvissuti, quindi non aspettarti un quadro dettagliato. Avevamo altre cose di cui preoccuparci. + + + Parlami dello Stingray 1. + + + Come sei arrivato qui? + + + Incontrammo uno stalker non lontano dal campo minato. Credo che abbia sentito la mina esplodere. Un tipo strano... si faceva chiamare Guide. Non ha fatto domande e si offerto di portarci fino a Pripyat. La cosa rientrava nel nostro piano, quindi ho accettato. L'abbiamo tenuto d'occhio perch la prudenza non mai troppa, ma tutto andato per il meglio... Non ha detto una parola finch non abbiamo raggiunto la citt, e a quel punto sparito all'improvviso. Ho ordinato ai miei uomini di lasciarlo in pace. + + + Parlami dello Stingray 3. + + + Il Capitano Tarasov dice che entrambi i motori sono andati in avaria. Sono stati costretti ad atterrare sulla collina intorno alla posizione B2. Per loro fortuna hanno fatto un atterraggio morbido, ma il tecnico non ha avuto tempo di risalire alle cause del malfunzionamento perch sono stati attaccati dagli snork e hanno perso tre uomini. Gli altri hanno deciso di levare le tende... Hanno contattato quelli dello Stingray 5 e si sono diretti verso di loro. Durante il percorso hanno dovuto affrontare una squadra di uomini ben armati, ma sono riusciti a cavarsela senza subire perdite. + + + Come sei arrivato a Pripyat? + + + Gli equipaggi degli Stingray 3 e 5 sono riusciti a riunirsi non lontano dai punti di schianto, nei pressi di una specie di chiatta. Mi stato comunicato che l'uomo che ci viveva era pazzo da legare: quando i miei uomini hanno cercato di arrestarlo, lui ha cercato di arrestare loro! Cio, quel povero diavolo era da solo contro undici! Comunque, l'esserci imbattuti in questo stalker stata una fortuna, perch le due parti sono riuscite a trovare un accordo e lui ha condotto tutta la squadra a Pripyat praticamente illesa. L'unico a subire danni stato il Tenente Stetsenko, che ha perso due dita di un piede in un'anomalia gravitazionale mentre veniva qui. + + + Parlami dello Stingray 5. + + + I sistemi elettronici sono andati in avaria e lo Stingray 5 precipitato in una palude. Cinque uomini sono sopravvissuti allo scontro. Sono stati contattati dallo Stingray 3 mentre tiravano fuori l'attrezzatura dall'elicottero. Il comandante della squadra, il Maggiore Neborsky, morto durante il tragitto al punto d'incontro. Quel povero diavolo stato ammazzato da un succhiasangue nei pressi della stazione di scansione... Gli altri ce l'hanno fatta senza problemi. Hanno perso un altro uomo, il Sergente Batyai, uno dei cecchini, quando hanno raggiunto Pripyat e hanno dovuto affrontare le forze della Monolith. + + + Come sei arrivato a Pripyat? + + + Gli equipaggi degli Stingray 3 e 5 sono riusciti a riunirsi non lontano dai punti di schianto, nei pressi di una specie di chiatta. Mi stato comunicato che l'uomo che ci viveva era pazzo da legare: quando i miei uomini hanno cercato di arrestarlo, lui ha cercato di arrestare loro! Cio, quel povero diavolo era da solo contro undici! Comunque, l'esserci imbattuti in questo stalker stata una fortuna, perch le due parti sono riuscite a trovare un accordo e lui ha condotto tutta la squadra a Pripyat praticamente illesa. L'unico a subire danni stato il Tenente Stetsenko, che ha perso due dita di un piede in un'anomalia gravitazionale mentre veniva qui. + + + Non molto. Lo Stingray 2 un vero mistero. Non so dove si siano schiantati o cosa sia successo agli uomini a bordo. Dello Stingray 4 dovresti saperne pi tu di me. Il Tenente Sokolov, quello che venuto qui con te, l'unico sopravvissuto di quell'elicottero. Le informazioni sugli altri elicotteri provengono da quelli che sono sopravvissuti, quindi non aspettarti un quadro dettagliato. Avevamo altre cose di cui preoccuparci. + + + Non molto. Lo Stingray 2 un vero mistero. Non so dove si siano schiantati o cosa sia successo agli uomini a bordo. Dello Stingray 4 puoi chiedere direttamente al Tenente Sokolov, l'unico sopravvissuto di quell'elicottero che arrivato fino a Pripyat. Le informazioni sugli altri elicotteri provengono da quelli che sono sopravvissuti, quindi non aspettarti un quadro dettagliato. Avevamo altre cose di cui preoccuparci. + + + Mi servono altre informazioni. + + + Non ho altre domande. + + + Qual la situazione a Pripyat? + + + Pi schifosa di cos si muore. Pripyat brulica di un misto di fanatici Monolith e di zombi. Le emissioni arrivano una dopo l'altra, e ci sono sempre dei mutanti e delle anomalie da cui scappare... Benvenuto all'inferno. + + + Come siete messi ad attrezzature e scorte? + + + Parlami dei Monolith. + + + Sono puri e semplici fanatici. Non so cosa gli prenda, ma sono sempre in cerca di uno scontro. Non si ritirano nemmeno quando sono in svantaggio numerico o il nemico ha maggiore potenza di fuoco... E questo piuttosto raro da queste parti. Sembra che ricevano rinforzi regolari dalla centrale di Chernobyl. Che vadano al diavolo, a causa dei loro attacchi abbiamo gi perso cinque uomini. + + + Avete cercato di interrogarne uno? + + + Non serve a niente. Innanzitutto, combattono fino alla morte. I nostri ragazzi sono riusciti a prenderne uno vivo, stordito da una granata, ma stato inutile. Ci siamo distratti un secondo e lui ha picchiato la testa contro il muro con talmente tanta forza da spappolarsi il cranio come fosse un uovo. + + + Adesso cosa farete? + + + Non credo sia possibile proseguire l'Operazione Fairway. La tua presenza lo conferma. Il mio piano difendere la base fino all'arrivo degli elicotteri. Ho numerose date di evacuazione possibili. + + + Non arriver nessun elicottero finch non avremo scoperto le cause dello schianto degli Stingray. + + + Allora cos che stanno le cose... Beh, non potremo certo andarcene a piedi! Solo il cielo sa quante miglia di questo schifo abbiamo davanti, e la Zona piena di stalker che non sono esattamente i nostri migliori amici. Questo significa che la nostra sola possibilit di salvezza di procedere con l'indagine cercando di non lasciarci la pelle. Maggiore, qui lavoriamo per lo stesso scopo. + + + Non adesso. + + + Ti ascolto, maggiore. + + + L'unico equipaggiamento di cui disponiamo quello che abbiamo portato noi. Oh, siamo anche riusciti a rubare qualcosa ai Monolith, soprattutto munizioni. Questo significa che siamo molto attenti nel dare via quanto abbiamo. Lo stesso vale per il cibo... abbiamo solo razioni e della sbobba proveniente dal magazzino dei Monolith. + + + L'unico equipaggiamento di cui disponiamo quello che abbiamo portato noi. Oh, siamo anche riusciti a rubare qualcosa ai Monolith, soprattutto munizioni. Questo significa che siamo molto attenti nel dare via quanto abbiamo. Riguardo le scorte il discorso pi o meno uguale, a parte che ho fatto un accordo con Garry. Lui ci porta del cibo in scatola e noi lo lasciamo stare alla base e chiudiamo un occhio quando esce a cercare manufatti. Non che abbiamo molta scelta. + + + Abbiamo vendicato i nostri ragazzi. Fai quel che devi fare e torniamo indietro. Non mi va di restare qui. + + + Non perdiamo tempo qui, OK??Voglio tornare alla base il prima possibile... + + + OK. + + + Laggi c' quella strana cosa!?Secondo te a cosa serve??Ah, non fa niente. Forza, amico, fai quel che devi fare e torna alla base. + + + Hai finito??Io voto per tornare alla base e mangiare un boccone... + + + OK. + + + Come butta? + + + Merda. bello essere con la propria gente, ma non trovo grande conforto nello stare insieme in una topaia come questa. + + + Non ti avevo mai visto qui prima d'ora. Sei arrivato da poco? + + + S. Sono il Tenente Sokolov, copilota dello Stingray 4. + + + Come sei arrivato qui? + + + Sono venuto con uno stalker di nome Garry. Gli ho chiesto di portarmi con lui quando fosse andato a cercare una strada per Pripyat. Che viaggio stato, credimi!?Meno male che abbiamo incontrato il nostro gruppo di ricognizione appena arrivati a Pripyat. + + + Cosa successo allo Stingray 4? + + + E chi lo sa??Io ho sempre avuto una brutta sensazione al riguardo... Stavamo volando con il pilota automatico, gli strumenti funzionavano bene e all'improvviso ci siamo ritrovati a volare in un pezzo di metallo con tutti gli strumenti in corto. Io e il pilota abbiamo cercato di atterrare ma non ha funzionato. Siamo caduti dritti nelle officine dello stabilimento Jupiter, passando dal tetto. Io sono stato l'unico a salvarsi. + + + Mi serve un'armatura. + + + OK. Tanto per cominciare ecco l'elmo. Ora passiamo all'armatura... spero sia della tua taglia perch comunque l'unica che abbiamo. L'ho sistemata, quindi dovrebbe starti. + + + Certo, maggiore. Considerate le circostanze, non ho molta scelta. A proposito, vai dal Tenente Kirillov. Lui ti fornir un po' di equipaggiamento. + + + Riguardo gli elicotteri... + + + Ti ascolto. + + + Cavoli, roba da pazzi... Gi vedo Kirillov che mi chieder dell'aspirina. + + + La parte peggiore l'attesa. + + + OK, maggiore, i ragazzi sono pronti per partire. Fai scorte da Rogovets e da Kirillov se ne hai bisogno. Fammi sapere quando sei pronto. + + + OK. + + + Muoversi. + + + Mmm, in tal caso ce ne serve una resistente come la roccia, come quelle che hanno gli scienziati. Comunque, convincere Hermann a cederla non sar facile. Ho la sensazione che preferirebbe mandarmi con le chiappe scoperte fino ai confini della Zona piuttosto che vedermi occupare dello spazio nel loro prezioso bunker... Prova a chiedere a Ozersky. pi gentile e forse accetter di darmi una tuta. + + + Allora, maggiore? + + + [continua...] + + + [continua...] + + + Io ero a bordo. Non appena le comunicazioni con Stingray 4 sono cessate, ho informato gli altri del punto di evacuazione designato, a Pripyat: credevo che avremmo potuto raggiungere la centrale a piedi. Subito dopo l'elicottero stato colpito e ho sentito odore di bruciato: il motore aveva preso fuoco. I piloti sono riusciti a farci posare sull'eliporto vicino allo stabilimento Jupiter, ma sono morti entrambi nell'impatto. Poi abbiamo perso il Sergente Shlyachin, dato che il tragitto di avvicinamento agli eliporti era minato... Un altro soldato, un tenente, morto a Pripyat, combattendo contro forze Monolith per conquistare quest'edificio. + + diff --git a/gamedata/configs/text/ita/st_dialogs_zaton.xml b/gamedata/configs/text/ita/st_dialogs_zaton.xml new file mode 100644 index 0000000..6524cd3 --- /dev/null +++ b/gamedata/configs/text/ita/st_dialogs_zaton.xml @@ -0,0 +1,3117 @@ + + + + C'era uno strano manufatto alla stazione di drenaggio. Tieni. + + + Interessante, un semi-manufatto... Ecco quanto pattuito. Per un lavoro svolto bene pago bene... A quanto pare sai il fatto tuo. Vieni da me quando ti serve un lavoro. Spesso ricevo ordinazioni per determinati manufatti, e la paga pi che discreta. + + + Hai un lavoro per me? + + + Qualcosa... Ieri notte gli stalker hanno visto uno strano bagliore alla stazione di drenaggio... Troppo strano anche per queste parti. Perch non vai a controllare? + + + Lo far. + + + Non dimenticare di essere prudente. Ti avverto, quel posto pieno di radiazioni. Non ti dimenticare le medicine, pi tardi mi ringrazierai. + + + Non adesso. + + + Ho gi assegnato tutti i lavori di cui disponevo per oggi. + + + Prendi questo semi-manufatto. + + + Ecco la tua fetta di torta. Per un lavoro svolto bene pago bene... A quanto pare sai il fatto tuo. Vieni da me quando ti serve un lavoro. Spesso ricevo ordinazioni per determinati manufatti, e la paga pi che discreta. + + + Alla stazione di drenaggio ho trovato uno strano manufatto. Vuoi dare un'occhiata? + + + Interessante... un semi-manufatto. Lascia che te lo compri: 3.000 mi sembra un prezzo adeguato. + + + Ho visto che qualcuno ti ha portato un manufatto che ho trovato io. + + + Spiacente, ma non mi far trascinare in questa storia. Le mie regole sono molto semplici: tu consegni e io ti pago. Sai come funziona la Zona. Tieni gli occhi aperti, sii veloce e non fidarti di nessuno pi dello stretto necessario. Ma se ti serve un lavoro fisso, conta su di me. Spesso ricevo ordinazioni per determinati manufatti, e la paga pi che discreta. + + + Quali manufatti ti servono? + + + Ti procurer un Gravi. + + + Eccellente! Sei stato veloce. Ecco il tuo compenso. + + + Ti procurer un Occhio. + + + Ti procurer una Bolla. + + + Ti procurer una Conchiglia. + + + Ti procurer un Pesce rosso. + + + Ti procurer una Fiamma. + + + Ti procurer una Lucciola. + + + Ti procurer un Fiocco di neve. + + + Posso venderti un Gravi. + + + C' qualcosa che non mi quadra. I ragazzi accettano le ordinazioni poi scompaiono... ho una brutta sensazione. Meglio chiudere bottega. + + + Posso venderti un Occhio. + + + Posso venderti una Bolla. + + + Posso venderti una Conchiglia. + + + Posso venderti un Pesce rosso. + + + Posso venderti una Fiamma. + + + Posso venderti una Lucciola. + + + Posso venderti un Fiocco di neve. + + + Capisco. Torner pi tardi. + + + Entrambe le squadre che lavoravano per me sono scomparse... Ho deciso che d'ora in poi non accetter altri ordini. + + + Il lavoro svolto. + + + Fantastico! Ecco la tua ricompensa. + + + Ecco. Forse non molto, ma pur sempre qualcosa. + + + Parlami degli ordini di manufatti. + + + Chi potrei assumere per proteggere gli scienziati? + + + I miei ragazzi, Spartacus e il suo gruppo. Sono gente che sa il fatto suo. Alcuni erano nel campo della sicurezza, prima di venire nella Zona, altri erano addirittura nelle forze speciali della polizia. Sanno come si usano le armi... sarebbero la soluzione migliore per avere le spalle coperte. + + + Avrei potuto darti un consiglio, ma dopo gli ultimi eventi... Spartacus e il suo gruppo non ci sono pi... Che riposino in pace. + + + Chi potrei assumere per eseguire delle misurazioni per conto degli scienziati? + + + Conosci Gonta e i suoi ragazzi? Quando non vanno a caccia sono... ehm... felici di accettare altri lavoretti. Soprattutto se non c' bisogno di sparare. Il loro motto "Se mi devo far venire i calli per colpa del grilletto, meglio farlo quando vado a caccia". + + + Proprio non saprei. Ti consiglierei gli uomini di Gonta, ma un pezzo che non ho loro notizie. + + + Raccontami com' la vita da queste parti. + + + Non un argomento che si esaurisce in due parole. Prova a farmi delle domande specifiche e far del mio meglio per risponderti. + + + Cosa fanno qui gli stalker? + + + Prova a indovinare, amico. Partono dalla Skadovsk per esplorare il territorio e cercare manufatti, mettendosi a sparare a tutto e a tutti quelli che si mettono sulla loro strada. Poi tornano alla Skadovsk per ubriacarsi... e spassarsela un po' prima della missione successiva. Per quando c' un'emissione le cose cambiano: ce ne stiamo tutti buoni buoni e ricordiamo quelli che non sono riusciti a mettersi in salvo in tempo... + + + Cosa ha portato gli stalker nel centro della Zona? + + + Domanda buffa. Alcuni sono partiti per cercare una nuova miniera di manufatti. Altri sono venuti per scoprire la verit sulle voci riguardo l'Oasi. Altri cercavano l'Esauditore di desideri. Poi ci sono le pi semplici pulsioni umane: la curiosit e la bramosia... Hanno tutti le loro ragioni. Sono sicuro che anche tu hai le tue, no? + + + Come sei finito qui? + + + Sono venuto qui con Grouse dopo che il Bruciacervella stato disabilitato. Ma sono sicuro che non questo che vuoi sapere, dico bene? Mi occupo principalmente di manufatti. I gingilli sono dappertutto, quindi i clienti vogliono la roba rara. Ecco perch ho deciso di allestire un accampamento per gli stalker, dove trovare gli articoli di valore. Cio, quando uno stalker torna indietro con il suo bottino, cos' che gli serve veramente? Un bicchiere e un po' di calore umano, ecco cosa. Ed questo che trova sulla Skadovsk. + + + Che cosa ne pensi dei banditi? + + + Beh, piuttosto semplice. Non ho niente contro la loro presenza sulla Skadovsk, purch si comportino con decenza. Dopotutto, non si incontrano spesso simili idioti. Alcuni di loro un tempo erano stalker. Chi lo sa, uno di quei poveri bastardi potrebbe ancora abbandonare quel tipo di vita prima di beccarsi una pallottola... La vita piena di sorprese. + + + No, va bene. Lascia perdere. + + + Se lo dici tu. + + + Dimmi, hai visto dei militari da queste parti? + + + Pensaci un attimo. Perch i marine dovrebbero venire nel nostro accampamento? Credimi quando ti dico che preferiscono stare alla larga da questo posto. Qui in molti ricordano ancora com'era strisciare nel fango al Cordon, sotto il fuoco dei loro maledetti mitra... + + + Parlami della Bussola. + + + Intorno a quel manufatto ci sono un sacco di leggende. Dicono che la Bussola non abbia effetti collaterali dannosi e che, se usata nel modo giusto, pu condurti fuori da qualunque anomalia. Ora capisci anche tu perch i clienti farebbero la fila pur di accaparrarsene una. Proprio l'altro giorno qualcuno mi ha detto che Noah ne sa di pi al riguardo. uno stalker che vive pi a sud. + + + OK, lo andr a trovare. + + + Ci penser. + + + Come ti ho gi detto, un manufatto leggendario. Dicono che uno stalker di nome Noah ne sappia di pi al riguardo. Vive pi a sud. + + + Non lontano da Yanov ho trovato uno strano manufatto. Ti interessa? + + + Fammi dare un'occhiata... sicuramente un oggetto strano, ma non credo che riuscirei a trovare un acquirente. Ti consiglio di tornare a Yanov e mostrarlo agli scienziati. Roba bizzarra come questa li manda sempre in brodo di giuggiole. + + + Owl dice che non mantieni la tua parte dell'accordo. + + + Il nostro accordo era molto chiaro: io prendo i rilevatori e li attivo sul campo, e lui si prende una fetta dei guadagni. L'ho gi pagato per due rilevatori, quindi l'accordo lo sto rispettando eccome. Nel mio accordo con Owl non c' altro. Se lavori per lui puoi riprendere il terzo rilevatore... ma io non ci casco. + + + Quindi cosa dovrei dire a Owl? + + + Immagino di s. + + + Fossi in te non mi immischierei con Owl. Se vuoi fare un po' di soldi posso darti un vantaggio nella ricerca dei manufatti. Due o tre ore, sufficienti a battere tutti gli altri. E poi, se ti interessa, ho un'ordinazione speciale. Vedi, ho urgente bisogno di un manufatto chiamato Bussola. + + + Sultan riuscito a intercettare la Bussola. + + + Quel bastardo una vera scocciatura... Va bene, stiamo calmi. Cerca di parlare di nuovo con Noah. Stando alle ultime voci di corridoio, potrebbe risultare... utile. + + + Ho trovato una Bussola. Ecco. + + + Mi hai salvato la vita, amico! Adesso posso dire con sicurezza di essermi accaparrato un importante cliente. Voci di corridoio dicevano che Sultan voleva rubarmi il mercato. Mi sa che si beccher una bella delusione. Tieni, prendi questo... te lo sei guadagnato. + + + Mi rifiuto di cercarti una Bussola. + + + Peccato. Oh, pazienza. + + + Sultan ti manda i suoi saluti. A proposito, tutti i tuoi fornitori ti sono stati preclusi. + + + Ora ovvio chi c' dietro tutto questo... Beh, non me ne andr dalla Skadovsk. A quanto pare non ho altra scelta se non lavorare per te e Sultan. Lui avr la sua parte delle vendite e tu passerai ogni giorno a prenderti la tua. I soldi possono aspettare. + + + Dammi la mia parte. + + + Eccola qui. + + + Sei in anticipo. Non ho ancora i contanti. + + + Pensi che Nimble traffichi merce rubata? + + + Ne dubito... da quello che so su di lui, preferisce lasciare gli affari loschi ad altri. Un bravo uomo d'affari tiene molto alla propria reputazione. Tutto sommato, non ho mai sentito nessuno parlare male di Nimble. + + + Sto cercando Snag: sai dove posso trovarlo? + + + L'ultima volta che l'ho visto stava uscendo da un bar. Se ricordo bene, era diretto alle gru del porto. Forse ti conviene cercarlo l. + + + Qualcuno vuole incastrare un gruppo di stalker. Sono anche ragazzi nostri. + + + Ehi, amico. Ci sono banditi che si moltiplicano peggio di conigli e adesso ci mettiamo anche a litigare tra di noi? + + + Mi stato offerto di attaccare l'accampamento nei pressi di Shevchenko di notte. + + + Stronzi... Sarebbe stato bello se avessi accettato davvero la loro offerta. Capisci dove voglio arrivare? Cos posso avvisare i miei ragazzi e allestire un caloroso benvenuto ai nostri ospiti. + + + D'accordo. + + + OK, vai a vedere quegli sfigati e io avviso i ragazzi. + + + Spiacente, ma dovrai fare da solo. + + + Ho un manufatto proveniente dall'Oasi. Ti interessa? + + + Il Cuore dell'Oasi? No, grazie. La gente dice cose diverse... potrebbe trattarsi semplicemente di superstizione, ma preferirei tenermi a distanza. Credo che faresti bene a darlo agli scienziati. Che lo studino e ci dicano con maggiore sicurezza che effetto ha sulle persone. + + + Sei nuovo da queste parti? Non ti preoccupare, ti abituerai in fretta... Sai, la Zona una severa maestra. Io sono Beard, il barista del posto. Se hai delle domande vieni pure da me, capito? + + + Continua. + + + Che ne diresti di tirare su due soldi cercando dei manufatti? + + + Come va la mia ordinazione? Ricorda, pi uno stalker veloce, pi guadagna... + + + Sei in ritardo, il manufatto l'ha gi consegnato qualcun altro. Ma se hai completato l'ordinazione posso pagarti comunque, anche se meno. + + + appena arrivata una notizia. Si dice che i banditi vogliano acquistare un carico di armi. I nostri ragazzi vogliono seguirli e mandare all'aria la transazione. Accetteremo volentieri ogni tipo di aiuto. + + + Allora? + + + Cosa ci fanno i mercenari all'impianto dei rifiuti? + + + Dovresti stare alla larga da quel posto. Non sono affari tuoi. + + + Ti piace lavorare per gli scienziati? + + + Abbastanza. Sono felice che, tra tutti, sia venuto proprio tu. Sei la miglior protezione in cui gli scienziati potevano sperare. + + + Sto raccogliendo una squadra per andare a Pripyat. Vuoi unirti a me? + + + No. Devo tenere d'occhio gli scienziati... Prova a chiedere a Sokolov, se non ricordo male lui voleva andare a Pripyat. + + + No. Devo tenere d'occhio gli scienziati... Dopotutto, siamo qui per proteggerli. + + + Ehm... No, per ora il mio posto qui. + + + Ti piacerebbe lavorare per gli scienziati? + + + Dipende... di che lavoro si tratta? + + + Difendere il loro bunker. + + + Certo. Grazie per l'offerta! + + + Eseguire delle misurazioni nelle anomalie. + + + Quel tipo di lavoro non fa per noi. Ti conviene chiedere agli stalker. + + + Ascolta, stalker. Ho gi dei lancinanti crampi allo stomaco per la fame e il tuo ronzarmi intorno non mi d'aiuto... + + + Potrei portarti del cibo. + + + Ah ah! OK, ci sto. Della carne in scatola, delle salsicce e del pane... Sei di ciascun tipo. E ricordati di portarne un po' in giro, perch abbiamo una fame fottuta. + + + Ho sentito che da queste parti potrebbero esserci degli strumenti. + + + E chi lo sa? Ma vorrei che la piantassi di correre in giro come una trottola. Abbiamo gi abbastanza lavoro cos... tanto che non riesco a mandare nessuno a procurarsi del cibo. + + + E chi lo sa? Comunque sentiti pure libero di scavare in mezzo a queste cianfrusaglie. Forse potresti trovare proprio quello che ti serve. + + + Ecco il cibo. + + + Wow, avevo perso ogni speranza... Grazie. I ragazzi apprezzeranno questo pranzetto. Allora, cosa volevi? Scavare in mezzo alle cianfrusaglie? Prego, serviti pure. Forse potresti trovare quello che ti serve. Ma piantala di agitare quell'arma in giro! + + + Wow, avevo perso ogni speranza... Grazie. I ragazzi apprezzeranno questo pranzetto. Ascolta, se volevi scavare in mezzo alle cianfrusaglie, serviti pure. Ma piantala di agitare quell'arma in giro! + + + Qui non sei il benvenuto. Questo il nostro accampamento e tu non hai il diritto di gironzolare liberamente. I miei ragazzi stanno morendo di fame e sono gi abbastanza tesi... + + + Fila via. I miei ragazzi hanno talmente tanta fame che le loro dita potrebbero scivolare facilmente su quei grilletti... + + + Oh, stalker... una faccenda importante? Altrimenti devo proprio tornare al lavoro. + + + Sono pronto per andare a caccia. + + + OK, andiamo. + + + Muoviamoci. + + + Non ancora ora. Torna alle tre, di notte. + + + Capisco. + + + Siamo pronti... tranne che per l'emissione... sicuramente la chimera non sta dormendo adesso. Credo che dovremo tentare la sorte un'altra notte... + + + Gonta morto. Com' successo? Non che per caso stai andando a Yanov? Trapper, l'amico di Gonta, si trova l. Potresti dirgli che la chimera morta? Probabilmente io me ne torner a casa adesso. + + + Fai attenzione. + + + Devo andarmene da qui. Gonta morto anche a causa tua... Cosa faremo adesso? + + + Fai attenzione. + + + Parlami di te. + + + Sono Gonta, il capo del gruppo di caccia. Uccidiamo mutanti per denaro. Possiamo anche catturarli vivi, per fare esperimenti scientifici o nel caso qualcuno voglia un animale domestico esotico... Come diceva Trapper, "A ciascun animale il suo proiettile". + + + Parlami della caccia ai mutanti. + + + Beh, non sono il pi esperto dei cacciatori, ma posso parlarti degli animali che si muovono in branco. Mostri carnivori, cinghiali, cani ciechi, pseudo cani, snork, criceti... So anche un paio di cose sui succhiasangue. + + + Parlami dei cinghiali e dei mostri carnivori. + + + OK, i mostri carnivori sono i mutanti pi innocui. Cercano di stare alla larga dagli stalker, ma non si fanno problemi a reagire se vengono attaccati. Se invece dovesse esserci un cinghiale in mezzo a quei mostri carnivori, la cosa potrebbe creare problemi. Trecento chili di rabbia non sono qualcosa da prendere alla leggera. Cerca di non stare sulla sua strada quando ti carica... Usa la sua spinta a tuo vantaggio. Un bestione del genere non riuscir mica a curvare all'ultimo secondo, no? Schiva di lato, poi riempilo di piombo. + + + Parlami dei cani ciechi e degli pseudo cani. + + + Presi da soli non sono pericolosi, ma in branco sono una vera scocciatura. Ti attaccano solo se hanno fame, peccato che ce l'abbiano quasi sempre. Se ti ritrovi a dover affrontare un branco, cerca di attaccarli dall'alto o ti caricheranno. Soprattutto se in mezzo a loro ci sono degli pseudo cani adulti. Non sono molto pi forti di quelli ciechi, ma molto pi scaltri e pericolosi... Se uno si trasforma in un branco ricorda che in realt sei attaccato da fantasmi. Lo pseudo cane vero rester indietro e cercher solo di morderti di tanto in tanto... Cerca di riconoscerlo. Non appena il cane reale morto, i fantasmi scompariranno. + + + Parlami degli snork. + + + Resti di esseri umani... Uno snork solitario non un gran problema per un cacciatore esperto. Basta aspettare che ti salti addosso e riempirlo di piombo. Invece, quando sono in tanti... devi sparargli addosso il pi velocemente possibile mentre eviti i loro salti. Lo sanno e di solito cercano di attaccare insieme. + + + Parlami dei criceti. + + + L'incubo di ogni cacciatore... La cosa peggiore che puoi fare sottovalutarli per via della loro stazza ridotta. Sono incredibilmente veloci, agili e si muovono sempre in branco. Quando senti dozzine di piccole fauci sbranarti la carne allora il caso di smettere di sottovalutarli e iniziare a sparare... E questa la parte pi difficile: sono incredibilmente difficili da colpire. Ecco perch dico sempre agli stalker di portare con s una doppietta carica. + + + Parlami dei succhiasangue. + + + Sono esperti cacciatori, molto abili nel nascondersi. Quando sono mimetizzati si fatica a vederli. Se dai la caccia a un succhiasangue, prova a spaventarlo. Potrai vederlo meglio se si muove... Ricorda, un succhiasangue cercher di arrivarti alle spalle per avvolgerti i tentacoli intorno al collo. Roba da paura, amico... Se hai la sfortuna di imbatterti in un gruppo di succhiasangue, guardati sempre le spalle! + + + OK, lascia perdere. + + + Se vedo Magpie te lo dir sicuramente. + + + Gliela far vedere... lo concer per le feste! + + + Che male ti ha fatto Magpie? + + + OK, una volta venuto da me che non riusciva a recuperare il suo bottino per colpa di un controllore. Al tempo al mio equipaggio mancava un uomo. Il nostro esploratore era partito per seguire dei succhiasangue fino alla loro tana. Cos abbiamo deciso di aiutare Magpie a recuperare il bottino e l'abbiamo preso a caccia con noi. Lui doveva solo fare da vedetta nel caso si fosse avvicinata la chimera... + + + Poi cosa successo? + + + successo che quel bastardo se l' data a gambe, prendendosi il suo bottino e rubando anche il nostro. Ci siamo rimasti di sasso quando la chimera arrivata. Garmata, per esempio, non ha neanche avuto il tempo di reagire. Cio, chi l'avrebbe avuto? Anzich cacciare la nostra preda mi sono ritrovato a difendere il mio gruppo. Ho ferito la chimera, ma lei riuscita a conciare Crab per le feste prima di scappare. Abbiamo perso una settimana intera di preparativi. + + + Hai la caccia nel sangue, amico! Ecco un trofeo da parte mia! Come diceva Trapper, "L'abilit la tua arma principale". A proposito, sei diretto a Yanov? Sarebbe bello dire a Trapper che la chimera morta. Io rester qui alla Skadovsk per il momento, ad aspettare che Crab guarisca. Verrai con noi? + + + S, andiamo. + + + No. Gironzoler ancora un po'. + + + Ce l'abbiamo fatta. Questo piccolo trofeo da parte mia... Sarebbe potuta andare meglio, ma va bene cos. Come diceva Trapper, "Con l'esperienza, a cosa servono le trappole?". A proposito, sei diretto a Yanov? Sarebbe bello dire a Trapper che la chimera morta. Io rester qui alla Skadovsk per il momento, ad aspettare che Crab guarisca. Tu sarai dei nostri? + + + Garmata morto... Quella chimera ci costata parecchio. Non che per caso sei diretto a Yanov? Dovremmo dire a Trapper che la chimera morta. Io rester qui alla Skadovsk per il momento, ad aspettare che Crab guarisca. Vieni con noi? + + + Ho trovato Danila. morto. Ucciso dal fu Tremor. + + + Oh, cavolo! Perch sono sempre i migliori ad andarsene per primi... E quel figlio di cagna di Tremor! Ha ucciso Danila... era un brav'uomo! + + + Pensi che Nimble traffichi merce rubata? + + + Merce rubata? Cosa te lo fa pensare? Conosco Nimble da un bel pezzo, gli ordino le armi con frequenza regolare. Ottima roba a prezzi buoni. la prima volta che sento un'accusa del genere. A quanto pare ha nuovi concorrenti un po' disperati, che spargono in giro voci false e via dicendo... + + + Sto raccogliendo una squadra per andare a Pripyat. Vuoi unirti a me? + + + Devo rispettare il mio accordo con gli scienziati. E poi non mi va di partire. Ti conviene parlare con Sokolov. Va avanti da un pezzo a dire che vuole andare a Pripyat ma non ha le palle per andarci da solo. Quello s che un vero soldato. + + + Devo rispettare l'accordo con gli scienziati. E poi non mi va di andare. Mi spiace, amico. + + + No, non mi va. La caccia concentrata qui. Sai bene che molti mutanti vagano ancora da queste parti... abbastanza da tenere occupato a vita un buon cacciatore. + + + Ti piacerebbe lavorare per gli scienziati? + + + Qual il lavoro? + + + Difendere il loro bunker. + + + No, grazie. Sono un cacciatore, e il mio lavoro occuparmi dei mutanti. E i mutanti non costituiscono una minaccia per il bunker. La gente, s, quella un'altra storia. + + + Eseguire delle misurazioni nelle anomalie. + + + Perch no? Possiamo farlo. Dichiaro ufficialmente chiusa la stagione di caccia! Sar un diversivo gradevole rispetto alla routine, sai, avere un po' di quei brividi che si provano quando si esce... + + + No, adesso no. Vedi, per via della caccia. Devo regolare i conti con questa chimera. Non possiamo permettere che quel mutante assetato di sangue vaghi per la Zona e uccida stalker a destra e a manca. + + + Adesso voglio solo mettere le mani intorno alla gola di Magpie. Poi sar perfettamente calmo e pronto per discutere di lavoro con te. + + + Pi tardi. Adesso abbiamo gi abbastanza cose per le mani. Dobbiamo ammazzare una chimera e trovare Magpie. Non abbiamo tempo per altri lavori. + + + Ho trovato Magpie. alla stazione Yanov, e si fa chiamare Flint. + + + Quel figlio di cagna ancora vivo? Beh, non lo rimarr a lungo. Prendi questo, per ringraziarti della dritta. Non vedo l'ora di incontrare quella testa di cazzo. Flint, hai detto... + + + S. Grazie. + + + Amico, hai visto questo Magpie? Lo conosci? No? Beh, se dovessi incrociare quel sacco di immondizia, sentiti pure libero di piantargli un proiettile in fronte. Oppure dimmi dove posso trovarlo e ci penser io. + + + Beh, salve. + + + Aspetta! Abbiamo individuato la chimera, quindi non possiamo perdere altro tempo! Crab ancora impossibilitato a combattere, Danila non ancora tornato e inseguire quella bestia solo in due pura follia. Ci serve un terzo uomo. Tu sei in gamba, hai trovato Magpie. Che ne dici di cacciare quella fetida chimera insieme? + + + Aspetta! Abbiamo individuato la chimera, quindi non possiamo perdere altro tempo! Crab ancora impossibilitato a combattere, e Danila... beh... inseguire quella bestia solo in due pura follia. Ci serve un terzo uomo. Tu sei in gamba, che ne dici di cacciare quella fetida chimera insieme? + + + Con piacere. + + + Come diceva Trapper, "Quando cacci, il cacciare solo met del lavoro". Comunque, guarda, dopo una notte di caccia, la chimera torna alla sua tana intorno alle tre del mattino, sfinita. in quel momento che dobbiamo colpire... Quando sei pronto, vieni qui alle tre del mattino e faremo un tentativo. Ci troverai al bar. + + + Ci penser. + + + Beh, se cambi idea passa al bar verso le tre del mattino. a quell'ora che la chimera torna nella sua tana per dormire. + + + Salve. Come butta? Mi sembri riposato. + + + Ah, bene. Com' piccolo il mondo, eh. + + + Allora? ora di andare ad ammazzare la chimera... + + + Prima della caccia hai i crampi allo stomaco per l'emozione? + + + Trapper mi ha chiesto di aiutarti a cacciare la chimera. + + + Vedi, il suo sesto senso funziona ancora. Abbiamo finalmente individuato la chimera. Purtroppo Crab ancora in convalescenza, e Danila non ancora tornato... Quindi siamo solo noi tre. Ma se sei stato scelto da Trapper, allora devi essere per forza in gamba. Ascolta, dopo una notte di caccia, verso le tre del mattino la chimera torna alla sua tana, sfinita. in quel momento che dobbiamo colpire... Quando sei pronto, vieni qui alle tre del mattino e faremo un tentativo. Ci troverai al bar. + + + Mi prendi per uno sciocco? + + + quello che sei. E gli sciocchi vanno educati. + + + Non importa. Il mondo piccolo e la Zona lo ancora di pi. Ci incroceremo di nuovo. + + + Vai... vai via da qui. Niente risse sulla Skadovsk. + + + S, certo. + + + Lo ammetto, ho fatto un errore. Ma tu hai infranto le regole. + + + Questa la Zona per te. E va bene, ora piantala con le chiacchiere. + + + Se si lasciato sfuggire il manufatto deve essere un vero idiota. + + + OK, adesso non metterti a frignare. Una lezione imparata non la si dimentica pi. E perch ti rimanga in mente, ti offro una birra... ti tirer su di morale. + + + Prendo quello che mi viene dato. + + + No, grazie, l'alcol me lo posso ancora permettere. + + + Ti credi il migliore, eh?!? Ora chiudi il becco e stai al tuo posto! Dammi il manufatto, nullit! + + + Stronzo. Tieniti pure il manufatto... spero che ti ci strozzi. + + + Fottiti. + + + Fratello! Ascolta, c' un manufatto in grado di guarire le persone... ne ho un disperato bisogno. Un mio amico sta per tirare le cuoia per via di una malattia che le nostre medicine non scalfiscono nemmeno... Ho cercato di recuperare il manufatto ma sono finito in un'anomalia gassosa. Non che per caso tu l'hai trovato? + + + Se cos importante, eccolo qui. + + + Ehi, grazie, amico! Non lo dimenticher. + + + Fai attenzione. + + + Ne ho trovato uno, ma serve a me. + + + Oh, andiamo! Il mio amico... davvero in punto di morte! + + + Nella Zona ciascuno deve badare a se stesso. Stammi bene. + + + No, non l'ho visto. Stammi bene. + + + Quel manufatto non ti servir comunque a niente. Credimi sulla parola. + + + Se ti serve tanto... eccolo, prendilo. + + + Ehi, grazie, amico! Non lo dimenticher. + + + Fai attenzione. + + + Vedremo. + + + Non ho niente da discutere con te. + + + Perch vivi in questo immondezzaio? + + + un'arca! Ricordatelo... Lo farai, se vuoi vivere! Quando parte un'Ondata, resta qui vicino e avrai una possibilit di sopravvivere. Nessun mutante riuscir mai a entrare qui dentro. + + + Hai parlato di un'Ondata... + + + S, l'ondata di mutanti che schiaccer e scaccer tutti quanti dalla Zona! E i pochi bastardi che sopravvivranno verranno spazzati via da un'enorme emissione! Decimer ogni essere vivente nella Zona... tranne quelli che saranno preparati. + + + Dove hai preso questo cane? + + + Questa Lassie, un'adorabile stronzetta... Se non fosse stato per lei, mi avrebbero gi divorato nel sonno da un pezzo... Dannati mutanti, li odio! Non appena chiudi gli occhi cercano subito di ammazzarti con i loro maledetti artigli, le fauci e i tentacoli... + + + Mi serve un manufatto Bussola. Sai dove potrei trovarlo? + + + Questa merda non servir a niente, quando i mutanti strisceranno allo scoperto... Ecco: prendi, e sparisci dalla mia vista. + + + Grazie. + + + Sai qualcosa degli elicotteri che sono precipitati? + + + So che ce n' uno sull'altopiano e l'area intorno a esso brulica di snork. Vado a sparargli piuttosto spesso... Che hai da guardare cos? Non mica possibile sterminare tutta la tana in un giorno solo! + + + Come faccio ad arrivare all'altopiano? + + + Anche tu hai voglia di ammazzare un po' di snork, eh? Tranquillo... ti ci porto io. + + + Muoviamoci. + + + Un'altra volta. + + + Uno stalker. + + + Capisco. E cosa vuoi? + + + Non sono affari tuoi. + + + Ti ci porter io. Per il momento aspetta qui. C' un'emissione... hai capito? Un'emissione!!! + + + Sono stato alla tana. + + + Ah, s? Non c' modo di calmarli... I mutanti diventeranno sempre pi numerosi. E un bel giorno attaccheranno! La loro furia spazzer via dalla Zona chiunque non sia pronto... + + + Ascolta, non che per caso hai una Bussola? + + + Credi che basterebbe a proteggerti da un'emissione? Eh eh, prendila e sparisci! + + + Grazie. + + + Chi sei? + + + Uno stalker. Ci siamo gi incontrati. + + + Non ricordo... Comunque, cosa ti serve? + + + Uno stalker. Uno stalker qualunque. + + + Capisco. Cerchi rifugio nell'Arca? Fai come se fossi a casa tua. + + + Non sono affari tuoi. + + + Ah, sei tu. Cosa vuoi? + + + E se ti dicessi che mi avanza una Bussola? + + + Parlami delle anomalie. + + + Quando ti avvicini a un'anomalia, non dimenticare mai che sar molto calda o che l'aria sar piena di gas tossici oppure di radiazioni. Puoi incappare anche nelle psico-distorsioni, ma per il momento non parliamone. Dipende tutto dalla natura dell'anomalia, che pu essere di calore, gassosa o elettrica... o anche gravitazionale, ma spero che tu non debba mai avere a che fare con una di quelle. Esistono anche anomalie semoventi, ma quello un altro paio di maniche. + + + Parlami delle anomalie di calore. + + + Se vedi una specie di baluginio, come l'aria su una strada asfaltata d'estate, allora avrai trovato un'anomalia di calore. Quando qualcosa vi entra, in quel punto esplode una fiamma estremamente calda. Inizialmente si pensavano fossero scariche di gas naturali, ma da allora questa teoria finita nel dimenticatoio. + + + Parlami delle anomalie gassose. + + + Questa anomalia prende il suo nome dai suoi bizzarri e infiniti procedimenti chimici. Essi producono un acido che ti divora la pelle in pochi secondi, oltre a gas tossici che ti distruggono i polmoni con altrettanta velocit. Fortunatamente quando si all'aperto facile individuare le anomalie gassose... quando invece ti trovi in una galleria buia, ecco, l pi problematico. + + + Parlami delle anomalie elettriche. + + + Un tipo di anomalia molto interessante che accumula una notevole quantit di elettricit statica. Gli stalker di solito sfruttano il fatto che un'anomalia elettrica pu essere scaricata con qualsiasi oggetto metallico. Ci buttano dentro un bullone e l'attraversano prima che si ricarichi. Io preferisco girarci intorno... la fase di ricarica troppo veloce. + + + Parlami delle anomalie gravitazionali. + + + Di solito sono stazionarie. Quando guardi un punto con attenzione e ti accorgi che gli oggetti dietro di esso appaiono distorti, allora ne hai trovata una. E ti conviene tenerti alla larga. Tutte le tre variet conosciute reagiscono all'istante, non appena qualcosa le tocca. Trampolino scaglia ogni cosa che si trova sotto di s, e spesso molto lontano. Gorgo fa l'esatto contrario: risucchia un oggetto e lo schiaccia con la sua terribile pressione per poi spargerne in giro i brandelli. Mulinello solleva la vittima in aria, la fa vorticare e la riduce in pezzi... Sono tutte morti piuttosto cruente. + + + Parlami delle anomalie semoventi. + + + Personalmente mi sono imbattuto solo in una Cometa e in una Tesla. La prima una palla di fuoco di poco meno di un metro di diametro. Ma ti assicuro che il calore lo si percepisce da molto pi lontano. La seconda , per cos dire, una sfera di fulmini. senza dubbio una sfera e sicuramente di natura elettrica. Entrambe le anomalie sono in continuo movimento, ma di solito seguono percorsi predefiniti. Uno stalker attento dovrebbe riuscire ad aggirarle facilmente... ma non perdere la concentrazione. + + + OK, lascia perdere. + + + Parlami di te. + + + Mi chiamo Pilot per una ragione. Io percorro solo strade sicure. Non ho le palle per raccogliere manufatti o combattere contro i banditi, quindi... Tutti usano le proprie abilit o fanno in modo che gli altri ne traggano giovamento. Ogni abilit ha il suo prezzo, questo ovvio. + + + Parlami delle emissioni. + + + Ho alcune mappe dell'area tra Zaton e Jupiter. Vuoi dare un'occhiata? + + + Vediamo... Bene, sono molto dettagliate. Nel nostro lavoro i dettagli possono fare la differenza tra la vita e la morte. E va bene! Queste mappe indicano la presenza di una strada tra la Skadovsk e Yanov. Copier i dati sul mio PDA, se non ti dispiace. Ora posso offrirti uno sconto sostanzioso. + + + Ti serve per caso una guida che ti faccia attraversare le anomalie e ti protegga dalle emissioni? Pilot qui per servirti. + + + Ti serve l'aiuto di una guida? + + + bello vederti. Cosa pu fare per te il caro vecchio Pilot? + + + Ti rimetti in viaggio? + + + Buona giornata. Non riesci proprio a stare nello stesso posto troppo a lungo, eh? Considerami al tuo servizio. + + + Salve. Se ti serve una guida, io sono la persona giusta per te. Non appena sar terminata l'emissione. Intanto possiamo parlare delle anomalie per ammazzare il tempo... + + + Al momento credo di non poterti essere molto utile come guida... L'emissione al suo apice. + + + Quanto costa arrivare alla stazione Yanov? + + + Purtroppo molto lontana da qui. Il prezzo 3.000. + + + Va bene, andiamo. + + + Non ho tutti quei contanti. + + + Non sono pronto per partire. + + + Con le tue mappe solo 1.000. + + + Va bene, andiamo. + + + Non ho tutti quei contanti. + + + Non sono pronto per partire. + + + molto lontana da qui, ti coster 3.000. Sar pronto per partire non appena terminer l'emissione. + + + Con le tue mappe solo 1.000. Dobbiamo solo aspettare che l'emissione si calmi. + + + Puoi portarmi a Pripyat? + + + No. Tutti hanno una specialit. Vedi Garry, quello laggi? Credo che lui sar in grado di aiutarti. + + + Personalmente no. Ma per 6.000 posso portarti alla stazione Yanov e da l prendere accordi con Garry, che ti porter fino a Pripyat. Che ne dici? + + + OK, andiamo. + + + Non ho tutti quei contanti. + + + Non sono pronto per partire. + + + Personalmente no. Ma per 4.000 posso portarti alla stazione Yanov e da l prendere accordi con Garry, che ti porter fino a Pripyat. Che ne dici? + + + OK, andiamo. + + + Non ho tutti quei contanti. + + + Non sono pronto per partire. + + + No. Tutti hanno una propria specialit. Vedi Garry, quello laggi? Credo che lui sar in grado di aiutarti. + + + Personalmente no. Ma per 6.000 posso portarti alla stazione Yanov e da l prendere accordi con Garry, che ti porter fino a Pripyat. Che ne dici? + + + Personalmente no. Ma per 4.000 posso portarti alla stazione Yanov e da l prendere accordi con Garry, che ti porter fino a Pripyat. Che ne dici? + + + Puoi portarmi a Pripyat? + + + Pripyat? No. Ho gi sufficienti richieste per il percorso che batto di solito senza doverne cercare un altro. Ma un mio buon amico lavorava allo stabilimento Jupiter. Mi ha detto che ci sono delle gallerie sotto lo stabilimento che portano fino a Pripyat. Non mi ha saputo fornire altri dettagli, ma ha detto che avrebbe iniziato le ricerche dalla sezione amministrativa dello stabilimento. + + + No. Se vuoi arrivarci devi trovare le gallerie sotto lo stabilimento Jupiter. + + + Quanto costa arrivare alla Skadovsk? + + + Visto che dovremo fare una deviazione, il prezzo di 3.000. + + + Va bene, andiamo. + + + Al momento sono un po' a corto di denaro. + + + Non sono pronto per partire. + + + Con il nuovo percorso il prezzo solo 1.000. + + + Va bene, andiamo. + + + Al momento sono un po' a corto di denaro. + + + Non sono pronto per partire. + + + Visto che dovremo fare una deviazione, ti coster 3.000. Sar pronto per partire non appena terminer l'emissione. + + + Con il nuovo percorso ti coster solo 1.000. Per dobbiamo aspettare che l'emissione si calmi. + + + Dove puoi portarmi? + + + Alla stazione Yanov, non lontano dallo stabilimento Jupiter. E poi da l alla Skadovsk. Preferisco conoscere bene un percorso che sostenere di conoscerne molti. + + + Ho mandato a monte la transazione di armi dei banditi. + + + Grazie per l'aiuto. Ripenso agli anni Novanta, ai criminali con i lanciagranate e rabbrividisco... Ecco, prendi questo. I contanti fanno sempre comodo. + + + Sto cercando Grouse. Dovevamo incontrarci qui. + + + Grouse ha lasciato un messaggio per te. Ha detto che si sarebbe diretto alle gru del porto. E che aveva scoperto qualcosa di nuovo sugli stalker scomparsi. + + + Grouse morto. L'ha ucciso Tremor, proprio come ha fatto con gli altri stalker... Ed morto anche Tremor. + + + Tremor? Dannazione. Avevamo quel verme proprio sotto il naso. Poteva essere chiunque di noi... Cio, se Grouse, tra tutti... Grazie, amico. Hai salvato il nostro accampamento. Ecco. + + + Tremor?!? Mi spiace, amico, ma non me la bevo. Se avessi qualche prova, allora forse... Povero Grouse. + + + Ecco il PDA di Tremor. Contiene le prove del suo coinvolgimento. + + + Tremor? Dannazione. Avevamo quel verme proprio sotto il naso. Poteva essere chiunque di noi... Cio, se Grouse, tra tutti... Grazie, amico. Hai salvato il nostro accampamento. Ecco. + + + Ti aiuter a occuparti dei banditi. + + + Perfetto. Vai alla stazione dei ranger, l che si trovano i nostri ragazzi. Ti forniranno tutti i dettagli. + + + Cosa sai di Nimble? possibile che trafficasse in armi rubate? + + + Non lo conosco bene. Dubito che sia coinvolto in traffici del genere. Se hai per le mani roba che scotta, non prendere mai ordinazioni da loro in anticipo... + + + Sapevo che prima o poi mi sarei esposto. Era solo una questione di tempo... + + + Tremor?!? Ti spiacerebbe spiegarmi cosa sta succedendo? + + + Non sto nascondendo pi nulla. Tanto inutile. Ormai sai che sono stato io a uccidere Grouse... E lo stesso vale per Danila e gli altri stalker scomparsi. + + + OK, ho capito. Basta parlare. + + + Non hai capito niente, nessuno mi capir mai... + + + Perch l'hai fatto? + + + Dipendenza all'emoglobina... non la auguro a nessuno... impossibile liberarsene. A volte mi sento in grado di tirare avanti un mese intero senza bere una goccia di sangue, poi per... Mi sento esplodere dentro e ho questo disperato bisogno di sangue... + + + Come sei riuscito a tenere la cosa segreta? + + + Quando lavoravo alla clinica era semplice da tenere nascosta. C'era sempre del sangue donato in abbondanza. Ma la Zona un'altra cosa... credevo che questo ambiente cos inospitale avrebbe messo alle corde la mia patologia, ma mi sbagliavo. Qui ho avuto la crisi peggiore della mia vita, e non riuscivo a pensare ad altro. Ho deciso di camuffare gli omicidi da attacchi di succhiasangue. Generalmente sceglievo bersagli che erano gi feriti. + + + E che mi dici di Danila e Grouse? + + + Danila venuto a chiedermi aiuto dopo la missione contro i succhiasangue. Era ferito. Quando io e Grouse abbiamo deciso di tornare a caccia di succhiasangue mi sono reso conto che non sarei riuscito a durare ancora a lungo. Ho cercato di proteggere comunque il mio segreto, ma la mia determinazione andava calando... Poi arrivato Grouse. Ha capito la situazione e ha cercato di uccidermi. E ora eccoci qui. Mi dispiace per tutte queste persone, ma il mio dispiacere non le riporter indietro. + + + OK, ho capito. Basta parlare. + + + Non hai capito niente, nessuno mi capir mai... + + + Ti ascolto. + + + Ti serve aiuto? + + + Salve. + + + Mi serve assistenza medica. + + + Diamo un'occhiata... + + + Beh, direi che tutto. Puoi andare. + + + Salve! Anche tu in cerca di manufatti? + + + Ehi! Andiamo a caccia di manufatti? Beh, ce ne dovrebbero essere per tutti. + + + Ehi, salve! Anche tu cerchi di accaparrarti dei manufatti, eh? + + + Salve. Porti quel manufatto a Beard? + + + Forse s, forse no. A te che importa? + + + Mi serve. + + + Anche a me... Ma te lo dar in cambio di un'arma nuova, di qualit. + + + Ho un'arma niente male. Facciamo lo scambio... + + + Bene. + + + No, non ci sto. + + + Allora togliti subito di torno. + + + OK. + + + Beh, a dire il vero niente. + + + Che cosa sai di Nimble? + + + Oh, non molto... Non lavoriamo insieme. Mentre lui passa al pettine la Zona in cerca di una super-arma, io riesco a venderne un centinaio di modelli semplici. anche piuttosto presuntuoso, e si rifiuta di fare affari con i criminali del posto. Quindi di fatto un pessimo trafficante, cosa che naturalmente gioca a mio favore. + + + Beard mi ha detto che avevate un accordo diverso. + + + Diverso un accidenti! Quel maiale barbuto vuole fare il passo pi lungo della gamba! Dovr ricordargli chi che comanda da queste parti... Ascolta, a Zaton c' un tipo piuttosto importante, si fa chiamare Sultan. Vallo a trovare... ti dir lui cosa fare. + + + Andr a parlare con Sultan. + + + Niente sultani. Voglio la mia parte adesso! + + + Uhm... d'accordo. Ecco i contanti... Ma ricorda, Beard ti sta foderando gli occhi di prosciutto. + + + Mi servono delle informazioni. + + + Che cosa vuoi sapere? + + + Mi serve del gas velenoso e mi stato detto che tu sei l'uomo giusto a cui chiedere. + + + cos. Te lo dir per 2.000. + + + Tieni. + + + Ascolta. Una volta c'era un'autocolonna militare che portava il gas fino a qui, ma che non ce l'ha fatta. Nessuno sa cosa sia successo, ma le taniche di gas dovrebbero essere ancora al loro posto. Tutto chiaro? S, forse troverai anche dei documenti. In tal caso, riportameli e potresti rientrare del tuo investimento. + + + Troppo caro per le mie tasche. + + + Come vuoi. + + + Dove posso trovare uno stalker chiamato Magpie? + + + Posso darti un indizio... per 1.000. + + + Tieni. + + + Qui non lo troverai di sicuro, ma un uccellino mi ha detto che potrebbe essere dalle parti di Jupiter, magari nei pressi della stazione Yanov. Ricorda che chi combina guai in un posto cambia nome quando si sposta in un altro... Probabilmente ha mutato anche il suo aspetto, pensando che la gente l'avrebbe cercato in mezzo agli stalker. + + + Sto cercando Snag: sai dove posso trovarlo? + + + Te lo dir per 1.000. + + + Tieni. + + + Snag uno sciocco avido e si immischiato con gente poco raccomandabile. Ha tagliato tutti i ponti con il suo passato, quindi ti conviene cercarlo dalle parti di Jupiter. Non ha altro posto dove andare, e tu non sei l'unico a cercarlo. + + + Cosa sai degli elicotteri che si sono schiantati? + + + Mmm... da queste parti sappiamo tutti che sono precipitati. Uno caduto sull'altopiano meridionale, il secondo atterrato nella palude e il terzo finito dritto sui tralicci della sotto-stazione. Quale posto ti interessa? + + + L'altopiano meridionale. + + + La sotto-stazione. + + + La palude. + + + Per ora tutto. + + + Pagami subito, mi devi 200. + + + Tieni. + + + Dunque, questo elicottero caduto accanto a una tana di snork. Per quanto ne so, i militari sono riusciti a mettersi in salvo... non tutti ma una buona parte. Hanno spazzato via i mutanti e sono scesi. A proposito, se hai intenzione di salire da quelle parti, posso proporti una bella doppietta e un po' di munizioni per sistemare quelle bestiacce. L'unico problema che nessuno tranne Noah, quel pazzo bastardo, sa come salire sull'altopiano. + + + Troppo caro per le mie tasche. + + + Come vuoi. + + + Te lo dir per 200. + + + Tieni. + + + Te lo dir per 200. + + + Tieni. + + + Adesso no. + + + Hai un lavoro per me? + + + Innanzitutto, c' un lavoretto per gli scienziati. Poi, dobbiamo procurarci delle informazioni dall'accampamento dei militari e, infine, il mercante ha bisogno di protezione. Come vedi le possibilit sono numerose, scegli quella che pi preferisci. + + + Raccontami del tuo lavoro con gli scienziati. + + + Devi trovare tre rilevatori Veles e portarli al bunker degli scienziati, vicino a Jupiter. Una volta l parla con Novikov, che li riparer... Quando i rilevatori cominceranno a fruttare, divideremo equamente. Tutto chiaro? Allora vai. un gioco da ragazzi. + + + Affare fatto. + + + Magari la prossima volta. + + + Parlami dell'accampamento dei mercenari. + + + Dei mercenari sono arrivati all'impianto dei rifiuti e non vedo l'ora di sapere cosa bolle in pentola... Infiltrati nel loro accampamento e recupera quante pi informazioni possibile sui loro piani. PDA, documenti, portami tutto quello che riesci a trovare. Hai capito? Ora vai. Se farai piano sar come rubare le caramelle a un bambino. + + + D'accordo. + + + Non adesso. + + + Parlami del mercante da proteggere. + + + Al mercante servono delle guardie che lo proteggano durante uno scambio d'affari. Praticamente non dovrai fare nulla, baster che tu te ne stia l e dia alla faccenda un'aria di legittimit... Intesi? Il mercante ti aspetta alla stazione dei ranger. Ti fornir lui tutti i dettagli. + + + OK. + + + Aspetta. + + + Un'altra volta. + + + C' un piccolo lavoro da svolgere per gli scienziati e inoltre mi serve qualcuno che mi procuri le informazioni dall'accampamento dei mercenari. A te la scelta... + + + C' un piccolo lavoro da svolgere per gli scienziati e al mercante serve una guardia. Andiamo, a te la scelta. + + + Mi occorre qualcuno che recuperi delle informazioni dall'accampamento dei mercenari e al mercante serve una guardia. Andiamo, a te la scelta. + + + Un lavoretto per gli scienziati. un vero gioco da ragazzi... prendi questo, porta quello... + + + Al mercante serve una guardia per una transazione di lavoro. Una vera passeggiata. + + + Basta lavori. + + + Credo che la cosa potrebbe interessarti. + + + Che cosa hai? + + + Il PDA di Noah. + + + Quel pazzo della chiatta? Ti dar 1.000. + + + Affare fatto. + + + No, grazie. Per il momento lo terr io. + + + Attento che non ti faccia un buco in tasca. + + + Il PDA di un mercenario di nome Hook. L'ho trovato all'impianto dei rifiuti. + + + Ti dar 1.000. + + + Affare fatto. + + + Molto interessante... Ottimo lavoro, stalker. + + + Il PDA di un mercenario di nome Ridge. L'ho trovato all'impianto dei rifiuti. + + + Ti dar 1.000. + + + Affare fatto. + + + Un PDA contenente le informazioni sui nascondigli dei Monolith. + + + Ti dar 5.000. + + + Affare fatto. + + + Il PDA di un uomo collegato al cliente dei mercenari. + + + Ti dar 4.000. + + + Affare fatto. + + + Il PDA di uno dei fondatori della Duty, il Generale Tachenko. + + + Per quello ti pagher bene: 2.500. + + + Affare fatto. + + + Il PDA di un mercenario. + + + Ti dar 1.000. + + + Affare fatto. + + + Il PDA di Morgan. + + + Informazioni sul mercante della Duty che vende armi a destra e a manca. Serviranno pure a qualcosa. Ti pagher 4.000. + + + Affare fatto. + + + Un biglietto proveniente dal nascondiglio del gruppo di Strelok. Indirizzato a Ghost. + + + Ti dar 500. + + + Affare fatto. + + + Un biglietto proveniente dal nascondiglio del gruppo di Strelok. Indirizzato a Strelok. + + + Ti dar 500. + + + Affare fatto. + + + Un biglietto proveniente dal nascondiglio del gruppo di Strelok. Indirizzato a Fang. + + + Ti dar 500. + + + Affare fatto. + + + Documenti provenienti dallo stabilimento Jupiter, una cartella contenente l'ordine di evacuazione generale. + + + Ti dar 750. + + + Affare fatto. + + + Documenti provenienti dallo stabilimento Jupiter, un appunto da taccuino. + + + Ti dar 750. + + + Affare fatto. + + + Documenti provenienti dallo stabilimento Jupiter, un programma di consegne. + + + Ti dar 750. + + + Affare fatto. + + + Documenti provenienti dallo stabilimento Jupiter, una lettera con l'ordine di trasportare l'oggetto 62 solo attraverso il sottopassaggio. + + + Ti dar 750. + + + Affare fatto. + + + No, se c' di mezzo Sultan io preferisco restarne fuori. + + + Vediamo... S, questa roba buona. Posso comprartela? + + + Certo, tanto io non so che farmene. + + + Un taccuino proveniente dall'accampamento dei mercenari all'impianto dei rifiuti. + + + Ti offro 2.000. + + + Affare fatto. + + + Eh eh... Portalo da Beard o agli scienziati. A me non piace la mercanzia di dubbia provenienza... Non voglio stare male per colpa di intossicazione da radiazioni. + + + E l dovrebbe rimanere. Non mi piace correre rischi superflui. Chi lo sa, magari a mezzanotte quell'affare former intorno a s un campo di anomalie... Perch non lo porti agli scienziati? Che se lo studino loro. + + + E io ho una testata nucleare in cucina! Per forse gli scienziati si faranno una risata... loro vanno matti per questa roba. + + + Il PDA di Snag. + + + Vediamo un po'. Mmm... niente di speciale. Probabilmente hai gi ripulito quel nascondiglio, quindi il mio prezzo 200. + + + D'accordo. + + + Il PDA di uno degli uomini di Sultan. + + + Interessante... Potrebbe tornarmi utile. Ti offro 1.000. + + + D'accordo. + + + Il modulo di memoria di un veicolo aereo senza equipaggio. + + + Un ritrovamento molto interessante... Ma non ti render ricco. Come faccio a sapere che sono io il primo a leggere le informazioni che contiene? Ti pagher 500. + + + Affare fatto. + + + Adesso no. + + + Riguardo quei rilevatori... + + + S? + + + Dove posso trovarli? + + + Non lo so, arrangiati! + + + Ho i rilevatori. + + + Allora cosa ci fai ancora qui? Portali a Novikov, al bunker degli scienziati vicino a Jupiter. + + + Ho portato i rilevatori a Novikov. + + + Ottimo. Ora aspettiamo che ci mettano sopra le mani. Novikov ha promesso che me li avrebbe fatti recapitare da una persona di fiducia. + + + Abbiamo dei problemi. La nostra piccola attivit a rischio. Novikov ha fatto un ottimo lavoro su quei rilevatori: ha espanso il raggio di funzionamento, ha migliorato la sensibilit e cose varie... Quei rilevatori ti danno un vantaggio straordinario su tutti gli altri cacciatori di manufatti. Ho fatto un accordo con Beard perch gli stalker che assume usino questi nuovi rilevatori... + + + E? + + + Il nostro accordo era di dividere equamente il bottino, ma gli stalker si rifiutano di consegnare la nostra met. Devi andare da Beard e convincerlo a rispettare la sua parte di accordo... Forza, anche tu vuoi quel che ti spetta, no? + + + Mi serve il tuo nuovo rilevatore. + + + Ah ah. E a me serve un'arma ad alta potenza. Se hai un'arma costosa e di qualit possiamo fare uno scambio. + + + Affare fatto. + + + No, grazie. + + + Mi serve il tuo nuovo rilevatore. + + + forse una minaccia? Serve anche a me, ovvio. + + + Non mi segui, vero? Il tuo l'ultimo. Non ho faticato troppo a sistemare gli altri proprietari... + + + Cos'hai fatto? Li hai tolti di mezzo? Allora prendilo e lasciami in pace. + + + Ehi, perch non vai a prenderlo in quel posto? + + + Magari un'altra volta. Ora quello che ti chiedo di darmi il rilevatore senza fare storie. + + + E io ti chiedo di andare a prenderlo in quel posto senza fare storie. + + + Stalker, che ne diresti di un po' di soldi? + + + Qual il lavoro? + + + Ho nascosto un bottino in questa vecchia Zaporozhets. Per c' stato un terremoto e l'auto sprofondata sottoterra. Ho controllato e sembra sia possibile raggiungerla... Solo che, ehm, ci sono dei mutanti, sai, degli snork. Che tu ci creda o no, io non ho paura neanche dei controllori, ma quei maledetti snork sono talmente disgustosi che mi mettono i brividi. Se riuscirai a mettere le mani sul contenitore con la serratura di sicurezza, ci divideremo il bottino a met. + + + Affare fatto. + + + Grazie. + + + questo il tuo contenitore? + + + S! Wow, sei un grande! + + + Un'altra volta. + + + Peccato. + + + No, adesso ho da fare. + + + OK, come ti pare. + + + Allora? Novit? + + + Cosa vuoi? Non vedi che ho da fare? + + + Ehi, quella la mia arma! Dove l'hai presa, brutto ladro? Me l'hanno rubata proprio l'altro giorno. + + + Di cosa stai parlando? L'ho appena comprata. + + + Non so dove o come ci hai messo le mani sopra, ma la stessa che mi hanno rubato. Quindi, se non vuoi farmi arrabbiare, restituiscimi la pistola e ce ne andremo per la nostra strada. + + + OK, ecco qui. Non voglio guai. + + + Dammela. + + + Quest'arma mia. + + + Ah, s?!? Ti avverto, io ho conoscenze importanti! Tutti sanno chi sono! Credi che dureresti molto nella Zona con una brutta reputazione, stalker? Eh, cosa rispondi? Non aspettarti che qualcuno ti aiuti da queste parti, perch nessuno vorr saperne di te! + + + Fottiti. + + + Sei sicuro che sia la tua arma? + + + Certo che sono sicuro. Non molto comune nella Zona, trovi? E quella senza dubbio la mia. + + + Hai commesso un errore. Ora fatti indietro e non ci sar bisogno di agitarsi. + + + Cosa? Io avrei commesso un errore?!? Prova a pensare prima di aprire bocca, stronzo! Se combini qualche casino si metteranno tutti dalla mia parte. Restituiscimi quell'arma e ce ne andremo per la nostra strada. Sar anche cos gentile da non raccontare a nessuno di questa faccenda. + + + Cosa? Hai mai pensato che con quest'arma potrei aprirti un buco in testa seduta stante? + + + OK, calmati, amico. Ci eravamo scaldati, ma adesso sono tranquillo. Rilassati anche tu. Devo aver commesso uno sbaglio. + + + Riguardo quel contenitore... + + + L'hai trovato? + + + No, ci sto ancora lavorando. + + + Ho deciso di interrompere la ricerca. + + + Peccato. + + + OK, vediamo un po'... + + + Certo. Solo un attimo... + + + Ho deciso di tenere il contenitore. + + + Ah, tu, piccolo insignificante... Non pensare che me ne dimenticher! + + + Ecco il contenitore. + + + OK, dividiamoci subito il bottino, d'accordo? + + + Beviamo! + + + Vediamo cosa abbiamo qui... la cara, vecchia, letale Fora. Molto tempo fa mio zio l'ha modificata con le sue stesse mani. quasi un cimelio di famiglia... quindi la terr io. + + + No, dalla a me! + + + Oh, beh, d'accordo... + + + Vediamo che altro c'. + + + No, hai gi preso abbastanza. + + + Vediamo che altro c'. + + + E va bene, prendila. Cos'altro c'? + + + OK... vediamo. Un eccellente kit di pronto soccorso. Sufficiente per affrontare un orso o anche un controllore. Lo prendo io... + + + In realt a me farebbe proprio comodo un kit di pronto soccorso! + + + Mmm... OK. + + + Vediamo che altro c'. + + + No, hai gi preso abbastanza. + + + Vediamo che altro c'. + + + Tienilo pure. Cos'altro c'? + + + OK... wow. Dubito che tu abbia mai avuto un'arma del genere. Un AKM-74/2U migliorato. Ho dato una tonnellata di kit di pronto soccorso a uno della Duty per poter mettere le mani su questo gioiellino. stato quando la Freedom gliele aveva suonate al punto da fargli esaurire i kit di pronto soccorso. Da allora questa bellezza mi ha salvato la vita tre volte... Me la tengo io. + + + E se la prendessi io? + + + Mi spezza il cuore, ma un patto un patto. Prendila. + + + Vediamo che altro c'. + + + No, hai gi preso abbastanza. + + + Vediamo che altro c'. + + + OK, tienila tu. Che altro c'? + + + Oooh... un bellissimo oggetto di grande valore. Questo manufatto vale una montagna d'oro! L'ho preso in un'anomalia, bada, e me la sono fatta addosso pi di una volta. il mio trofeo, ottenuto con il sangue e le lacrime. + + + Credo che a me serva pi che a te. + + + Amico, cos mi uccidi... Prendilo, sono sicuro che non dimenticherai facilmente la mia generosit. + + + Vediamo che altro c'. + + + No, hai gi preso abbastanza. + + + Vediamo che altro c'. + + + Tienilo. Che altro c'? + + + E infine... un ottimo elmo, fatto a mano. Un po' di tempo fa al Cordon era arrivato un nuovo stalker, un vero tuttofare. Prima di morire ha realizzato un sacco di oggetti niente male, tra cui questo elmo. Non ne troverai uno uguale da nessuna parte! Lo terr io. + + + Ascolta, sono io che ho rischiato la vita contro un'orda di snork... Merito di tenere l'elmo. + + + Beh... OK. Goditelo. + + + Vediamo che altro c'. + + + Hai gi preso abbastanza. Devo pur tenere qualcosa anche per me! + + + Vediamo che altro c'. + + + E va bene, tienilo. + + + Non c' altro, amico. Il mio tesoro tutto l. + + + OK, allora, ci vediamo. + + + Non c' altro. Ma non posso lasciarti andare via a mani vuote... Ecco, prendi la mia pistola! + + + Buona fortuna. + + + Tu che cosa fai? + + + Servo e proteggo. Una volta ero un detective della polizia, e qui sono una specie di sceriffo. Sono arrivato insieme a Beard, poi lui ha deciso di accamparsi. Perch addentrarsi ulteriormente se nessuno conosce la strada per Pripyat? Qui ci sono un sacco di manufatti ugualmente, e cos siamo rimasti. + + + Chi potrei assumere per proteggere gli scienziati? + + + Posso consigliarti della gente in gamba. Il gruppo di Spartacus, tanto per cominciare. Persone fidate, veri professionisti, con grande esperienza alle spalle. Se sono disponibili, non troverai una protezione migliore di quella che possono fornirti loro. + + + Un po' di tempo fa avrei potuto consigliarti dei nomi, ma ora non pi. Nessuno degli stalker del posto accetter un lavoro simile. + + + Chi potrei assumere per eseguire delle misurazioni per conto degli scienziati? + + + C' un gruppo di stalker, comandati da Gonta. Parla con lui, forse accetter... Sono sicuro che non gli dispiacer fare qualcosa di diverso dal massacrare mutanti. + + + Se Gonta fosse qui con il suo gruppo ti indirizzerei da lui... ma visto che non c'... non saprei proprio chi consigliarti. + + + Hai comprato delle armi da Nimble? Sai se traffica anche in armi rubate? + + + Credi che sia cos vile da fare una cosa del genere alle mie spalle? No. impossibile. Ho la netta sensazione che Nimble non sia un trafficante. + + + Sto cercando Snag: sai dove posso trovarlo? + + + Snag... certo, lo conosco. Un vero incapace. Alcuni dei miei ragazzi l'hanno visto alle gru del porto l'altro giorno. Probabilmente ora bazzica da quelle parti. Prova a cercarlo l. + + + Salve, stalker. Che ne diresti di guadagnare due soldi e intanto aiutare anche il nostro accampamento? + + + Salve, stalker. Ancora qui? Se vai avanti di questo passo i succhiasangue ci spazzeranno via tutti. + + + Parleremo pi tardi. Ho delle cose da controllare. + + + Che tipo di lavoro puoi offrirmi? + + + Ecco come stanno le cose. Di recente sono scomparsi parecchi stalker. Nessuno ha avuto loro notizie, ma proprio l'altro giorno stato ritrovato un corpo. Non c'erano tracce di violenza, ma era completamente prosciugato. Tremor ha ispezionato il corpo, lui ti sapr dare pi dettagli... Comunque, devono essere stati per forza i succhiasangue! Ho parlato con Danila, il cacciatore, e lui partito in cerca della loro tana. Da allora non ho pi avuto sue notizie. + + + E io cosa devo fare? + + + Devi trovare la tana e, possibilmente, anche Danila. Non un bel lavoro, ma te lo pagher bene. Ci stai? + + + D'accordo. + + + OK, OK. Ho individuato due posti da controllare. Ho caricato le coordinate del primo sul tuo PDA. Ora andr a svolgere alcune commissioni poi controller l'altro. Ti far sapere se scopro qualcosa. + + + Affare fatto. + + + Credo che lascer perdere. + + + Fammi sapere se cambi idea. + + + Non mi interessa. + + + Come al solito... Non appena si parla di una tana di succhiasangue, tutti se la danno a gambe. E non abbiamo ancora ricevuto notizie di Danila il cacciatore. Ci daresti una mano a cercarlo? + + + Grouse mi ha detto che hai ispezionato il cadavere di uno degli stalker scomparsi. Credi sia stato un succhiasangue a ucciderlo? + + + S, esatto... proprio come ho fatto con tutti gli altri cadaveri... Non esistono altre creature capaci di prosciugare il sangue di un uomo fino all'ultima goccia. Tutte le prove indicano l'attacco di un succhiasangue... Quali altre conclusioni potrei trarre? + + + Parlami di te. + + + Sono un medico. Un chirurgo del cervello. Cos'altro vuoi sapere? Posso asportare un ipotalamo con precisione millimetrica, ma finora non ho ricevuto richieste del genere nella Zona. Qui sono solo un medico qualunque, uno dei tanti, che sa il fatto suo. + + + Ti ascolto. + + + Sai come decifrare una scatola nera? + + + Beh, non esattamente la mia specialit. Tutte quelle tabelle e algoritmi... Non fa per me. Portami qualcosa che si basi sulla semplice fisica e prover a darci un'occhiata... Una sistematina qui, un'aggiustatina l e tutto funziona alla grande. + + + Pensi che Nimble traffichi merce rubata? + + + Ehi, ehi... Nimble con la merce rubata? Sono due cose che non vanno d'accordo. Mentre costruivo la mia officina stato proprio Nimble ad aiutarmi. E non mi ha fatto pagare un solo centesimo... Non importa cosa dice la gente, io so per certo che Nimble un brav'uomo. + + + Hai del lavoro per me? + + + Oh, certo. Mi servono degli strumenti ma non ho tempo per cercarli. La ferramenta ti porta via un sacco di tempo. Se mi porti dei gingilli utili ti far vedere come si fanno i veri potenziamenti. E guadagnerai anche qualche soldo. + + + OK, terr gli occhi aperti. + + + No, magari pi tardi + + + Oh, certo. Mi servono degli strumenti, ricordi? Un aiuto per me e un po' di soldi per te. + + + Puoi sbloccare un modulo di memoria? + + + No, amico, proprio non posso aiutarti. Tutta questa roba elettronica moderna, i computer... non fanno per me. Ti conviene cercare qualcuno di pi giovane... quei ragazzi sono cresciuti a pane ed elettronica, credimi. + + + Chi potrebbe aprire un contenitore d'acciaio? + + + un'inezia. Ti coster solo 500. + + + Tieni. + + + OK, fammi dare un'occhiata... Sposta questo, tira quello... E voil! Ecco fatto! Non hanno ancora inventato qualcosa che io non possa aprire con un martello e un piede di porco. + + + Non ho tutti quei contanti. + + + Allora torna quando li avrai, tanto io non vado da nessuna parte! + + + Ci penser. + + + Ho dell'alcol. Vuoi un cicchetto? + + + No, ho smesso con la bottiglia, amico. Quando ho visto l'oggetto 62 ho pensato, "Ecco, sto avendo le allucinazioni"... Vedi, l'alcol ti fa solo del male. E non nemmeno inseribile in una dieta salutare. Se dovessi morire, chi ti fornir le munizioni per il tuo fucile Gauss? + + + Eccoti un'altra bottiglia. + + + Ne ho anche una terza, se ne vuoi dell'altro. + + + Ti ho portato gli strumenti. + + + Bene. Quali? + + + Quelli per il lavoro di base. + + + Grandioso! Adesso mi servono gli strumenti per la calibrazione e il lavoro di precisione. + + + Quelli per il lavoro di precisione. + + + Grandioso! Adesso mi servono gli strumenti per la calibrazione e il lavoro di base. + + + Quelli per la calibrazione. + + + Grandioso! Adesso mi servono gli strumenti per il lavoro di base e quello di precisione. + + + Nessuno, per adesso. + + + Grandioso. Procurami degli strumenti per la calibrazione e sar a posto. + + + Grandioso. Procurami degli strumenti per il lavoro di precisione e sar a posto. + + + Grandioso. Procurami degli strumenti per il lavoro di base e sar a posto. + + + Splendido! Cos si fa! Qual il tuo segreto, amico? Ora ho la gamma completa di attrezzi! Ammirami mentre ti trasformo un accendino in un mitra! + + + Ho portato degli schemi e la documentazione per l'oggetto 62. + + + Ce l'hai fatta! Grandioso! Sapevo che quei bastardi non avrebbero avuto il tempo di distruggere tutto. Fammi dare un'occhiata... mmm... ecco cos'hanno in mente quei figli di cagna. Bene! Mi basteranno un paio d'ore per mettere in fila tutta la questione. Lasciami il fucile Gauss, cercher di sistemartelo. Aspetta qui, mi serve un minuto per rimettere in sesto questa bellezza! + + + Mi servono delle batterie per il mio fucile Gauss. + + + Ti far un prezzo di favore: 2.000. + + + Ecco qui. + + + Ci penser. + + + Al momento sono proprio al verde. + + + Hai finito con il fucile Gauss? + + + Un gioco da ragazzi. Il sistema di alimentazione come nuovo. Se dovesse fare di nuovo le bizze, riportamelo e te lo sistemer. + + + Ci sto ancora lavorando. Quanto mi piace darmi da fare... + + + Ho un modello di arma sconosciuto. + + + Come sarebbe a dire sconosciuto? Dammi qui, fammi dare un'occhiata... + + + Guarda pure... Hai mai visto niente del genere prima d'ora? + + + Ah, sei tu... Ce la siamo proprio spassata. Ho sognato che mi portavi qualcosa dal passato... Che bella bevuta... + + + Nel tuo sogno non c'era quest'arma, vero? + + + Ehi, amico... Forse dopotutto non era un sogno. Questo un fucile Gauss o, per usare il nome ufficiale, oggetto 62. Al tempo lavoravo a un progetto per lo stabilimento Jupiter. Progettavo armi che, se la memoria non mi inganna, "Erano basate sul principio dell'accelerazione del proiettile attraverso un campo magnetico". Vedi questi mulinelli? Li ho realizzati io... Peccato che abbiano chiuso il progetto nel 2004. Non siamo riusciti a trovare una fonte energetica sufficientemente compatta. + + + Questo fucile ha gi sparato. Cosa potrebbe essere cambiato? + + + E chi lo sa? A essere sincero, non toccherei quella batteria nemmeno con un cacciavite. Anche il sistema di alimentazione danneggiato. Gli schemi mi farebbero molto comodo, adesso. Nell'officina in cui lavoravo avevamo tutta la documentazione del prodotto a nostra disposizione. Forse gli schemi e la documentazione di supporto per questo fucile si trovano ancora l... Buffo, io ho ancora la tessera magnetica per accedere all'officina... + + + Mi daresti la tessera magnetica? + + + S, beh... credo di s. Per vedi di non perderla. Con quei documenti potrei provare ad aggiustare la pistola. + + + Ecco la tua carta d'accesso, come nuova. + + + Grazie. Tutto questo mi ricorda i bei tempi andati. + + + Allora? Tu, ehm... portami pure tutte le tue armi rotte, le tute piene di buchi e quant'altro... Da sobrio non sono bravo neanche la met, ma ci prover comunque... + + + Dove sei stato? Iniziavo a preoccuparmi e ti ho cercato dappertutto. Ma dov' quello stalker, mi chiedevo... Salute! + + + Salve. Gentile da parte tua passare da qui. Fai come se fossi a casa tua... Mi hai portato qualcosa da aggiustare o da bere? + + + Whew! Grandioso! Le mie mani non tremano, ma una vocina nella mia testa dice, "Ne voglio ancora"... versamene un altro, giovanotto! + + + Perch tanta lentezza? Forza, apri un'altra bottiglia! Beviamo alla nostra causa comune! S, la vodka tira fuori il genio della meccanica che in me, credimi. + + + Vorrei che Joker fosse qui, faremmo un brindisi alla salute di Barge... Beh, che possa riposare in pace. Era un brav'uomo, un vero osso duro. Duro come la roccia. + + + Vorrei che Joker fosse qui, faremmo un brindisi alla salute di Barge... Beh, che possa riposare in pace. Era sempre pronto ad aiutarti, e non si rimangiava mai la parola data. + + + Ooh... Barge... Joker... Come siamo arrivati a questo... Beh, da una cosa nasce l'altra... + + + Mmm? Cosa abbiamo qui di bello? Mi occuper domani dei mitragliatori corazzati... Non ti preoccupare, una cosa da nulla. Ho del buon liquore che mi aspetta... + + + Quel numero sessantadue... Mi piacerebbe dare un'occhiata agli schemi dei circuiti. + + + Saggia scelta, amico mio. Devi tenere la pistola in condizioni impeccabili. E se ti avanzano un paio di bottiglie posso potenziartela alla grande. Vuoi attaccare un paracadute alla tua doppietta? Io posso farlo. + + + Ma guarda! Hanno inserito un manufatto elettrostatico nella batteria! Ah ah! Sapevo che era una roba davvero strana! Il principio una bazzecola... ora posso sistemare anche io queste cellule. + + + Ti serve qualche lavoretto tecnico? + + + Mi sembra scritto in arabo. Mi sa che sono un po' fuori allenamento nella lettura dei documenti tecnici... + + + Sono venuto a Zaton con due miei amici, Barge e Joker... Ragazzi giovani, pieni di entusiasmo e vitalit! Gli prudevano le mani... volevano accaparrarsi una montagna di manufatti, essere i primi e i pi veloci... Sapevo che quegli sguardi pieni di speranze non gli avrebbero portato alcun bene. Certo, bello accumulare bottini, ma non se per farlo bisogno buttarsi a capofitto nelle fauci di un mutante. + + + Allora, cos' successo? + + + Beh... Una sera eravamo fuori a bere e ci siamo messi a discutere sul da farsi: se andare o restare e, nel caso, dove andare. Eravamo tutti inamovibili sulle rispettive posizioni. Cos le cose si sono scaldate e, finita la discussione, siamo andati ciascuno per la propria strada. Dissi loro che non sapevano niente della vita... e altre cose sgradevoli. Cavolo... se solo potessi rivederli, gli direi quanto mi dispiace per quelle parole... Ci rimetteremmo a bere e a ricordare i vecchi tempi... + + + Se vuoi posso portare le tue scuse a Barge, dovessi incontrarlo... + + + Sarebbe gentile da parte tua. + + + Se vuoi posso portare le tue scuse ai tuoi amici, dovessi incontrarli... + + + Sarebbe gentile da parte tua. + + + Se vuoi posso portare le tue scuse a Joker, dovessi incontrarlo... + + + Sarebbe gentile da parte tua. + + + Ho trovato questo PDA... vuoi dare un'occhiata? + + + E cosa me ne faccio di un PDA? Di chi ? + + + Barge morto?!? Non posso crederci... Oh, dannazione! Era un tipo cos in gamba... Povero Barge, riposa in pace. Spero che almeno Joker stia bene. + + + Barge morto?!? Non posso crederci... Oh, dannazione! Era un tipo cos in gamba... Povero Barge... e anche Joker... ragazzi, riposate in pace. Come siamo potuti arrivare a tanto... + + + Sono morti?!? Non posso crederci... Oh, dannazione! Barge era un tipo cos in gamba... E Joker... Oh, Joker, non rideremo pi alle tue battute. Ragazzi, riposate in pace. Come siamo potuti arrivare a tanto... + + + Ti va di rispondere a un paio di domande? + + + Certo. + + + Quanto ci vorr perch la mia ordinazione sia pronta? + + + Dipende da quanto complicata. Generalmente mi ci vuole un giorno, a volte meno. + + + Parlami di te. + + + Non ho molto da dire. Ho avuto periodi belli e periodi brutti, come succede a chiunque. Sono finito in qualche anomalia, sono stato preso in ostaggio dai banditi... Sono arrivato nella Zona che ero solo un ragazzino, un sacco di tempo fa. Poi ho lavorato per Sidorovich... per ringraziarlo di avermi salvato il culo. Mentre gli toglievo le castagne dal fuoco, ho conosciuto persone interessanti e mi sono messo in proprio non appena ho avuto i mezzi per soddisfare le ordinazioni dei miei clienti. Finora sono riuscito a evitare tutto lo schifo che la vita mi ha tirato addosso, ma ho la sensazione che la mia fortuna stia per esaurirsi. Allo stesso tempo, non ho pi voglia di rischiare le chiappe per due spiccioli. + + + Ho capito, grazie. + + + Mi fa piacere esserti stato d'aiuto. + + + Mi hai venduto un'arma rubata! + + + Di cosa stai parlando? Io non traffico merci rubate. I miei affari sono tutti puliti. Se non mi credi, parla con chi vuoi alla base e ti diranno che sono un onesto mercante che non ha mai deluso nessuno. + + + Ho incontrato uno stalker che sosteneva che quest'arma era sua. + + + E come si chiama? + + + Snag. + + + Cosa ti importa? + + + Importa eccone. Qualcuno ti sta prendendo in giro, stalker. + + + Vedremo. + + + Qualcuno ti sta prendendo in giro, stalker. + + + Sono qui per ritirare la mia ordinazione. + + + Ecco la tua Aquila delle steppe. stato pi difficile del previsto. Un patito di pistole si era mostrato parecchio interessato, ma sono riuscito ad accaparrarmela appena in tempo. Guarda pure: una pistola fatta a mano, con i componenti montati con precisione millimetrica. Se ti sei mai chiesto che aspetto avrebbe la pistola da cecchino perfetta, ecco la risposta. Mi devi 2.800 in pi. + + + OK, ecco qui. + + + Ecco qui. bello fare affari con te. + + + Non ho tutti quei contanti. + + + OK, ti terr la pistola da parte per un po'. Spero che troverai presto i soldi. + + + Non voglio comprarla. + + + Se rifiuti di ritirare l'ordinazione, non potr pi fidarmi di te. Dovr includere il rischio nel costo e chiederti un anticipo pi sostanzioso. + + + Come ti pare, ma non ritirer l'ordinazione. + + + Va bene, come ti pare. + + + Ci penser. + + + Certo, come vuoi. Ti terr la pistola da parte per un po'. + + + Ecco la tua Aquila delle steppe, ultra-precisa. Mi devi 2.800 in pi. + + + Ecco a te l'Alpina: una vera bellezza. Credimi, questa pistola unica nel suo genere nella Zona. Un modello inimitabile, prodotto in modo limitato per una singola unit speciale. Non stato facile procurarmela, ho anche dovuto coinvolgere uno dei miei soci d'oltreoceano. Caricatore ampliato, canna d'acciaio extra temperato, telaio in polimero extra resistente. Aggiungi i 2.800 mancanti e questo gioiellino sar tuo. + + + Ecco la tua pistola Alpina con caricatore ampliato. Aggiungi i 2.800 mancanti e questo gioiellino sar tuo. + + + Ecco la Marcia. Questa pistola apparteneva a un mercenario di nome Wolfhound. Un'arma compatta d'alto calibro con un rinculo ridotto e un otturatore alleggerito. Wolfhound era pura feccia, ma di armi se ne intendeva, bisogna concederglielo. Dicono che gli piacesse far saltare i quattro arti delle sue vittime, e infine la testa... prima che toccasse terra. Comunque, fanno 2.800. + + + Ecco la tua pistola Marcia a fuoco rapido. Mi devi 2.800 in pi. + + + Ecco qui il mitragliatore Cutter. Lascia che te lo dica subito: non badare alle apparenze. un modello nuovo di zecca, che ancora non viene prodotto in serie. un prototipo, arrivato dritto dall'armeria. I progettisti volevano creare un'arma a distanza ravvicinata di nuova generazione: una combinazione di alto calibro, fuoco rapido e precisione. Ti coster 8.000 in pi. + + + S, questo il Cutter, un mitragliatore a fuoco rapido. Ti coster 8.000 in pi. + + + Ecco un bell'esemplare: il Fuciliere. Una vera doppietta dell'esercito. In grado di fare fuoco automatico pur mantenendo un rinculo ridotto grazie a un sistema equilibrato anti-shock. Aggiungi 8.000 e sar tuo. + + + Ecco il Fuciliere, una doppietta automatica. Aggiungi 8.000 e sar tua. + + + Scommetto che questo proprio quello che ti serve. L'Eliminatore, l'ultima novit in fatto di armi. In teoria il carico doveva essere spedito in Africa centrale, ma sono riuscito a ottenere un 'campione' grazie all'aiuto di alcuni amici. Una doppietta automatica con caricatore ampliato e un'eccellente velocit di fuoco. Tua per solo 8.000. + + + Certo. La doppietta automatica Eliminatore, con caricatore ampliato, per 8.000. + + + Certo. Ti presento Tempesta: mitragliatore e lanciagranate in un'unica arma. Questo prototipo la versione modificata di un'arma convenzionale progettata per le unit speciali attive nella Zona. Il massimo dell'innovazione tecnica offerta dai nostri fratelli slavi. Aggiungi 16.000 ed tua. + + + Certo. Ecco Tempesta: mitragliatore e lanciagranate con un caricatore ampliato, per 16.000 in pi. + + + Ecco qui GP37, un fucile d'assalto di ultima generazione. Preciso, affidabile e dotato di un mirino ottico. Il suo ultimo proprietario era un osservatore delle Nazioni Unite, il cui gruppo era stato inviato nella Zona per investigare. Poi la situazione si messa male, e... Beh, 16.000 e il fucile tuo. + + + Ecco qui il GP37, un fucile d'assalto di ultima generazione. Il prezzo 16.000. + + + Aspetta un attimo. Ecco un fucile modulare FT-200M, frutto dell'ingegno degli armieri belgi. Preciso, adatto a tutte le situazioni, perfetto anche per i mancini e dotato di un mirino ottico e di un lanciagranate. L'ho ottenuto da uno sfortunato osservatore delle Nazioni Unite... Ti coster 16.000 in pi. + + + Ecco il fucile modulare FT-200M. Ti coster 16.000 in pi. + + + Ecco Marea. Basata su un fucile da cecchino silenziato, stata progettata specificamente per le unit militari che dovevano affrontare gli zombi. Marea rinuncia alla velocit di fuoco in favore di una maggiore capacit di arresto del bersaglio, permettendo al cecchino di uccidere gli zombi uno a uno senza rivelare la propria posizione. In seguito si capito che per eliminare gli zombi alla Barriera sarebbero bastati gli stalker, quindi il fucile non mai stato prodotto in serie. Pu essere tuo per 16.000 in pi. + + + Ecco Marea, un fucile da cecchino silenziato con capacit d'arresto del bersaglio migliorata. Aggiungi 16.000 in pi e goditelo. + + + Questo un SVU2-A, un fucile da cecchino compatto con elevata velocit di fuoco. L'ho comprato da Mac, la leggendaria guardia della Freedom. Mi ha giurato che in tutta la Zona non ne esistono altri uguali. un oggetto esclusivo, almeno da queste parti. Ti coster 16.000 in pi. + + + S. SVU2-A, un fucile da cecchino compatto con elevata velocit di fuoco. Ti coster 16.000 in pi. + + + Certo, guarda questa Lince, fatta a mano da un esperto del luogo. Ora morto, quindi non verranno mai pi fabbricate altre copie. come qualunque altro fucile, ma prova a usarlo e noterai subito la differenza. Combina alla perfezione precisione e potenza d'arresto. Aggiungi altri 16.000 ed tuo. + + + S, Lince: un fucile da cecchino con potenza e precisione migliorate. Aggiungi altri 16.000 ed tuo. + + + Guarda. Sono riuscito a procurarmi anche qualcosa che non era sulla lista: una CS-3a dotata di elmetto. L'elmo non niente di speciale da solo, ma permette di installare un'unit tattica mobile, che comprende un sistema per la visione notturna d'alta qualit e un sensore a infrarossi. L'armatura CS-3a una vera bellezza. Ti protegge alla grande dai proiettili e dalle anomalie ed raro trovare un'armatura leggera e comoda come questa. Tutto il pacchetto ti coster 32.000. + + + S, un'armatura CS-3a e un elmetto tattico. 32.000 in tutto. + + + Solo per te, una tuta SEVA. Tutto come avevi ordinato: modulo respiratorio a ciclo chiuso, termo-resistente, circuito elettrico protettivo e materiali anticorrosione per la superficie esterna. Oltre a numerosi contenitori per manufatti gi integrati. Un oggetto imprescindibile per qualunque stalker. Sgancia 24.000 come avevamo concordato e sar tutta tua. + + + Ecco qui. Una tuta SEVA. Il prezzo 24.000, come concordato. + + + Ecco qui, un fantastico esoscheletro da combattimento. Nella Zona non esiste protezione migliore da proiettili, artigli o frammenti di granata... tutto tranne i veicoli corazzati, insomma. Ma in un certo senso somiglia anche a un veicolo corazzato, perch alleggerisce il carico che porti... fino a un certo punto. 48.000 ed tutta tua, verruche e... cio, volevo dire, batterie e servomotori. + + + Ecco qui, un fantastico esoscheletro da combattimento. 48.000 ed tutto tuo. + + + Vorrei comprare qualcosa. + + + Non c' problema. Di cosa hai bisogno? + + + Una pistola. + + + Ma certo. Te ne basteranno 3.500, per ne voglio 700 come anticipo. + + + OK, ecco qui. + + + Mi far vivo io non appena l'ordine sar pronto. + + + Non ho i soldi con me. + + + Beh, allora torna quando li avrai. + + + Sai, ho cambiato idea. + + + Va bene. Quando ti sarai deciso a comprare qualcosa, sar qui ad aspettarti. + + + Non sei un cliente affidabile, per cui la pistola ti coster 4.200. E di questi, 1.400 me li dovrai dare in anticipo. + + + Purtroppo ho gi venduto le pistole migliori... se ti accontenti di merce normale, vai pure da Owl. + + + Un'arma a corto raggio. + + + Ma certo. Il costo 10.000 e di questi 2.000 in pagamento anticipato. + + + Non hai ritirato il tuo ultimo ordine... per questo, stavolta ne voglio 12.000. E 4.000 come pagamento anticipato. + + + Mh... sai, penso proprio di non poterti aiutare. Ho troppe richieste. + + + Un'arma d'assalto. + + + Qualcosa di grosso calibro e con un rateo di fuoco elevato, OK... il prezzo normale 20.000, con 4.000 versati in anticipo. Che ne dici? + + + Sei un cliente difficile. Dovr farti pagare 24.000, e chiederne 8.000 come anticipo. Ci stai? + + + Questo un momentaccio... l'esercito tiene il Cordon sotto pressione. Qualcuno ha attaccato il loro avamposto, l'altro giorno, e questo ha complicato ulteriormente le cose. + + + Un'arma di precisione. + + + Posso fornirti qualcosa di bello a 20.000. Per dovrai darmene 4.000 come anticipo. + + + A lavorare con te si corrono dei rischi... posso cercare di arrangiare la cosa per 24.000, per me ne serviranno 8.000 in anticipo. + + + In questo momento non facile trovare un'arma del genere, il mio contatto per i fucili di precisione stato... beh... messo a riposo. + + + Una tuta corazzata. + + + S, potrei trovare qualcosa che fa al caso tuo. Ti coster 40.000 per, e me ne serviranno 8.000 come caparra. + + + S, credo di poter trovare qualcosa per te. Per non hai ritirato lultimo ordine, per cui il prezzo non sar pi basso di 48.000. E ne voglio 16.000 in anticipo. + + + Non riuscir a trovare nulla di meglio dell'ultima tuta che ti ho procurato. Quella era gi il massimo, che vuoi di pi? + + + Una tuta con modulo respiratorio a ciclo chiuso. + + + Un ordine difficile... non sar facile metterci le mani sopra, per niente! Potrei riuscire a procurarti questa bellezza per 30.000, ma solo se ne sganci 6.000 in anticipo. + + + L'ultima volta non hai mantenuto i patti, devo pensarci bene. Posso provare a procurarti quello che chiedi per 36.000, per avr bisogno di un pagamento in anticipo da 12.000. + + + L'ultima volta ho fatto un autentico miracolo. Beh, amico, Paganini non ripete. + + + Un esoscheletro. + + + Certo che hai delle belle pretese. Posso procurartene uno da combattimento, ma il costo di 60.000. Piuttosto caro, lo so, ma li vale fino all'ultimo. Tieni presente che 12.000 vanno versati sull'unghia subito. + + + Con l'ultimo ordine non sei stato per niente corretto: stavolta dovrai scucirne 72.000. E ne voglio 24.000 subito. + + + Impossibile. Da quando hanno chiuso la fabbrica, gli unici esoscheletri rimasti si trovano addosso a qualche cadavere. E quello non il mio stile. + + + Adesso no. + + + Scusami, ma adesso sono chiuso. Ho alcune difficolt con la spedizione degli ordini... + + + Ciao, io sono Nimble. La gente viene da me, quando cerca un'arma particolare: modelli rari, prototipi, pezzi unici, roba del genere. E poi offro equipaggiamenti perfetti, gli ultimi modelli di tute protettive e da combattimento. Controllo tutto di persona: qualit garantita! + + + Salve. Vuoi fare un'ordinazione? + + + Salve. + + + Il tuo ordine sar consegnato molto presto. + + + L'ordine disponibile: vieni pure a ritirarlo. + + + Ehi! Sei amico di Snag? + + + S, lo conosco. + + + Mi ha detto che ci stai portando qualcosa... + + + Non mi ricordo nulla del genere. + + + Bene, bravo. Guarda che a noi non piace aspettare i comodi di Snag. + + + Ciao. + + + Non posso! + + + Pensaci bene... se hai anche solo met cervello, capirai che ti conviene fare il bravo, in una situazione come questa. + + + Ti ho detto di no! + + + No. Non lo conosco. + + + Aaah... dannazione... sono messo male. Aiutami, amico, mi serve un kit di pronto soccorso... o morir presto. + + + Prendi questo kit di pronto soccorso. + + + Phew! Grazie, ancora un po ed ero bello che fregato. Ma di sicuro avrei venduto cara la pellaccia... Ecco, prendi il mio rilevatore, vedrai, prima o poi ti torner utile... Grazie per avermi salvato la vita! Ora penso che andr a riposare un po' alla base. + + + Buona fortuna. + + + Phew! Grazie, ancora un po ed ero bello che fregato. Ma di sicuro avrei venduto cara la pellaccia... Ecco, prendi questo manufatto, vedrai, prima o poi ti torner utile... Grazie per avermi salvato la vita! Ora penso che andr a riposare un po' alla base. + + + Non posso, mi serve. + + + Non ho un kit di pronto soccorso. + + + Grazie ancora! Senza di te, adesso starei due metri sotto terra... + + + Stalker! Presto, vieni ad aiutare Petrukha! Guarda l, al margine della fenditura! rimasto colpito da unanomalia! Neppure la tuta servita a qualcosa! Per quanto riguarda me, io non ce lho... io e Petrukha abbiamo messo insieme i soldi, per comprare quella... se faccio un altro passo, sono morto! Aiutaci, ti prego! + + + OK, tu resta qui: ci provo. + + + Cavatevela da soli. + + + Grazie per aver salvato Petrukha. Accidenti, dovevamo risparmiare di pi e comprare una tuta migliore! + + + Sparisci. Hai lasciato morire Petrukha... lui si che era un uomo, al contrario di te! + + + Alla prossima. + + + Ho ripulito la tana di succhiasangue. + + + Bene. Hai vendicato i nostri fratelli morti, pace all'anima loro... ti sei guadagnato questa ricompensa. + + + Ho trovato un'intera tana di succhiasangue sotto il complesso dell'antenna. + + + OK, bisogna spazzare via la tana. Lasciami pensare... chiss quanti dannati succhiasangue ci sono, in quei budelli. Magari potremmo gassarli... mi ricordo che Owl aveva parlato di alcune taniche piene di gas. Vai a parlare con lui, noi non siamo in buoni rapporti... Se riuscirai a trovare una tanica, collegala al sistema di ventilazione del complesso dellantenna e sar tutto finito nel giro di pochi minuti. + + + OK, va bene. + + + Ci penser. + + + Ho gi una tanica di gas. + + + Wow. Sei in gamba, amico. + + + Ah, ecco il nostro stalker. Ti stavamo aspettando. + + + Qual il piano? + + + Stiamo andando a un incontro. Tu non dovrai fare molto, almeno spero... solo restare l, con i nervi saldi. + + + OK. + + + Ah, gli abbiamo dato una bella lezione. Ci sai fare con il grilletto, stalker. Tieni. + + + Buona fortuna. + + + Dannato dilettante, hai mandato in fumo un'operazione sicura. Sparisci! + + + Ciao. + + + Che fretta hai? + + + Niente. + + + Ti manda Owl? + + + S, mi ha detto che ti serviva aiuto. + + + Ah, poco ma sicuro. Vedrai, te la caverai benissimo. + + + OK, cosa devo fare? + + + Fornire protezione durante un incontro d'affari. Tutto qui. + + + Non c' problema. + + + Stammi vicino e coprimi. + + + Capito. + + + Parler solo con il capo. + + + Come vuoi. + + + Grazie, stalker, mi sei stato molto utile. Sapevo che quegli stronzi avrebbero provato a giocarmi qualche scherzetto. Li ho sempre tenuti sotto controllo! Ecco, per il tuo disturbo. + + + Buona fortuna. + + + Sei un bello scansafatiche, altro che guardia del corpo. Ma ti pagher: io mantengo la parola. + + + Buona fortuna. + + + Sei un bello scansafatiche, altro che guardia del corpo. Ma ti pagher: io mantengo la parola. + + + Buona fortuna. + + + Che cosa vuoi? Ti aspetti anche che ti ringrazi? Sono vivo per miracolo...! Sparisci. + + + Buona fortuna. + + + Ecco il mio ragazzo: bravo. Vogliamo avvicinarci di nascosto ai banditi, per sentire cosa dicono. Poi vedremo cosa fare. + + + Capisco. + + + Grazie, stalker. Ecco, prendi questo... Il barista si preso la tua ricompensa pi grossa. + + + Capisco. + + + Parlami della tua vita qui. + + + Non certo una passeggiata... che cosa vuoi sapere di preciso? + + + Cosa fate in questo posto? + + + Controlliamo gli stalker. Sai, devi riconoscere che una buona parte di voialtri solo un branco di ragazzini: venite nella Zona inseguendo qualche stupido sogno, o per fare gli eroi, o perch la vita vi ha giocato qualche brutto tiro. Non capite che qui c' soltanto la morte, ad attendervi. Ecco, questi sono quelli che ci interessano: ne troviamo uno nella Discarica, prendiamo la sua roba e la rivendiamo al Cordon. Certo, ci sono anche quelli furbi, che se ne vanno. Quelli che riescono a tornare qui finiscono sotto la nostra protezione, a pagamento. Nel nostro territorio comandiamo noi, nessuno osa entrarci: n l'esercito, n i mercenari, n i mutanti. + + + Come mai sei finito nel centro della Zona? + + + Le nostre gambe. Siamo venuti qui per gli stalker, cosa credi? Senza noialtri a tenere un po dordine, qui regnerebbe il caos. Chi cerca trova, certo, ma... a pagare le tasse chi pensa? Sai, le tasse per la pace e la sicurezza. Mentre voialtri vi divertite con le anomalie, noi stiamo qui a tenere a bada i mutanti: se lo stalker ritorna, ci prendiamo una fetta dei suoi guadagni... perch lo abbiamo protetto, capisci? + + + Come hai fatto a diventare il capo? + + + Vediamo, da dove comincio... Dai tempi dei liceo, mi sa: avevo un buon amico, il mio migliore amico. Eravamo un bel duo : si usciva, si fumava, si beveva, cose cos. Solo che a lui le emozioni non bastavano mai e cos ha cominciato a drogarsi, iniziando dallerba e passando poi a cose pi pesanti, non appena ha avuto i soldi per farlo. Io gli ho detto: Tolyan, tirati fuori da questa merda, prima che sia tardi, ma lui non mi ha ascoltato. Un giorno ha preso una dose tagliata male... ed finita l. Ho dato la caccia ai suoi spacciatori, per pareggiare il conto... e ho dato inizio alla guerra. I massacri, gli scontri, quella sensazione in fondo alla pancia. Me ne sono tirato fuori, ho avviato un'attivit, mi hanno fregato di nuovo. Quando sono uscito, mi sono lasciato alle spalle quello schifo e sono venuto nella Zona, dove dopo un paio di mesi di gavetta sono stato promosso. E cos eccomi qui, incaricato di far rispettare la legge del posto. + + + Che cosa ne pensi degli stalker? + + + Beh, sono tutti diversi fra loro: alcuni sono dei teppisti che non durano una settimana, altri sono qui per fare soldi... e altri ancora sono gente per bene presa a calci dalla vita, su entrambi i lati del Cordon. Noi schiacciamo i primi e tassiamo i secondi: per quanto riguarda il terzo tipo, cerchiamo di non pestarci i piedi a vicenda. Peccato che a volte sia difficile capire chi si ha di fronte... + + + Oh, non fa niente. Lascia perdere. + + + Come vuoi. + + + Ora Beard lavorer per noi. + + + Sai come si dice, "Hai voluto la bicicletta, ora pedala". Vai a trovarlo di tanto in tanto e ricordagli che deve pagare i suoi debiti. + + + A Beard stato richiesto un importante manufatto chiamato Bussola. + + + Dobbiamo individuare il manufatto. Beard non si agiterebbe tanto se la cosa non fosse importante. Ho la sensazione che gli serva per salvarsi le chiappe... per restare in affari, diciamo. Portami questa Bussola non appena l'avrai trovata. + + + Ho trovato la Bussola. Ecco. + + + Mi rifiuto di cercarti la Bussola. + + + Ehi, stronzetto, vediamo di capirci. Se dici che farai un lavoro per me e poi invece mi lasci a piedi, beh, diciamo che dopo non mi starai molto simpatico. E quelli che non mi stanno simpatici tendono a non avere una bella vita. Ci siamo capiti? + + + Lo terr a mente. + + + Andr a prendere quei rilevatori dagli stalker. + + + Bene. Io intanto mi occuper degli altri canali del nostro cliente. + + + Un uccellino mi ha detto che hai consegnato una Bussola a Beard. Ora ascoltami bene, mezza sega. Se dici che farai un lavoro per me e poi invece mi lasci a piedi, beh, diciamo che dopo non mi starai molto simpatico. E quelli che non mi stanno simpatici tendono a non avere una bella vita. Ci siamo capiti? + + + Lo terr a mente. + + + Ora Beard senza rilevatori avanzati. + + + Benissimo. Mentre eri via mi sono dato da fare per tagliare gli altri canali di Beard. Ora il cliente tutto nostro. Vai da Beard e digli che Sultan gli porta i suoi saluti. + + + Beard mi deve dei soldi. Owl ha detto che mi avresti potuto aiutare. + + + Immagino di s... Ecco il mio piano: mandiamo in rovina Beard e prendiamo il suo posto nel giro degli affari, tu ricevi il denaro pattuito e una fetta della torta. Affare fatto? + + + Affare fatto. + + + Allora adesso devi scoprire cos' che tiene Beard occupato. Dopodich baster tagliare i canali con i suoi fornitori. + + + Ci penser. + + + Ricorda che pensare troppo fa male alla salute. + + + Pensi che Nimble traffichi merce rubata? + + + Nimble? No, non ha le palle per farlo. Owl il nostro trafficante locale per la roba che scotta. Qualunque cosa tu venda lui te la comprer, e senza fare domande. + + + Sto cercando Snag: sai dove posso trovarlo? + + + S. I miei ragazzi l'hanno visto alle gru del porto un paio di giorni fa. Dovrei dargli una lezioncina per dei soldi che mi deve, ma continuo a dimenticarmene. + + + Ho io un lavoro per te. I miei ragazzi devono incontrarsi con un mercante... sai, questioni di affari. Ultimamente nella Zona la situazione un po' tesa, quindi ho pensato che un altro uomo armato potrebbe fare comodo. Assicurati che tutto fili liscio come l'olio. + + + OK. + + + Bene. I miei uomini ti aspetteranno nei pressi della stazione dei ranger. Troverai le coordinate caricate sul tuo PDA. + + + Capisco. + + + Non mi interessa. + + + Cosa diavolo ci fai ancora qui? Porta le tue chiappe alla stazione dei ranger. + + + D'accordo. + + + Allora, ti sei deciso? Sei dei nostri o no? + + + Sono dei vostri. + + + Preferisco restare per i fatti miei. + + + Ricorda, io sono Sultan. Tutto quello che passa da qui sotto il mio controllo, o comunque lo sar presto. Se vuoi vivere una bella vita, devi lavorare per me. Se non lo farai vivrai una vita di merda. cos che va la vita, fratello. + + + Cosa ti serve? + + + Come mai da queste parti? + + + Allora? + + + Ho ucciso io tutti gli stalker. + + + Ehi, amico... merda, sei un vero osso duro. Arrivi qui e li ammazzi come se niente fosse, merda. Cosa diavolo ti ho assunto a fare? Non ci hai procurato dei contanti, ma solo un sacco di guai. Devi calmarti, amico, hai capito? + + + Ti piace lavorare per gli scienziati? + + + Non male. Per il momento sembra tutto tranquillo, non ci sono stati problemi. Gli scienziati ci hanno fornito un po' di attrezzature, quindi ce la caviamo bene. + + + Eccellente! Il lavoro semplice e ben pagato. Nessuno, neanche i mostri, verr a cercare gli scienziati finch ci saremo noi! + + + Sto raccogliendo una squadra per andare a Pripyat. Vuoi unirti a me? + + + No... A differenza degli altri, Pripyat non mi attira... E poi abbiamo gi un lavoro, dobbiamo proteggere gli scienziati... Perch non porti con te quel soldato? Cos potrebbe rivedere i suoi amici dell'esercito e noi potremmo rilassarci un po'. Quel tipo a posto, ma questo non di certo il posto pi adatto a lui... + + + No... A differenza degli altri, Pripyat non mi attira... E poi abbiamo gi un lavoro, dobbiamo proteggere gli scienziati... + + + Ti piacerebbe lavorare per gli scienziati? + + + Qual il lavoro? + + + Difendere il loro bunker. + + + Beh, difenderlo... eh eh... non sarebbe la prima volta. Ci sto. Partiremo per il bunker non appena saremo pronti. + + + Eseguire delle misurazioni nelle anomalie. + + + Delle misurazioni, Eh? Ti sembro un tecnico di laboratorio? Non fa proprio per me. + + + Ne parleremo pi tardi. Ci sono troppi farabutti nuovi in giro. Devo rimetterli in riga, poi magari potremo pensare al lavoro. + + + Va bene, facciamo saltare questa baracca. Gliela faremo vedere noi! + + + Bene. + + + Sar meglio trovare subito un riparo. una dannata emissione! + + + Facciamo saltare questa baracca. Gliela faremo vedere! Basta mantenere la calma e andr tutto bene. + + + Gliel'abbiamo fatta vedere, eh? Ecco il grano, amico. Ti far un fischio se avremo bisogno di una mano per altri "affari". + + + Ehi, amico... merda, sei un vero osso duro. Arrivi qui e li ammazzi come se niente fosse, merda. Cosa diavolo ti ho assunto a fare? Non ci hai procurato dei contanti, ma solo un sacco di guai. Devi calmarti, amico, hai capito? + + + Non sei pulito?!? Che razza di stronzate sono queste? Hai fatto la spia, vero? Non avrebbe potuto essere nessun altro! I miei fratelli mi sono rimasti sempre accanto... Ora il tuo stupido culo si beccher il trattamento che sarebbe dovuto toccare agli stalker! Cosa cavolo guardi... vuota subito le tasche, stronzo! + + + Meglio andare... alla chiatta. + + + Ehil, capo. Scusa, ma adesso non ho voglia di parlare. + + + Ti aiuter io. + + + Ottimo. Noi prepareremo il comitato di benvenuto e tu ti allontanerai. Quando arriveranno li attaccheremo da tutte le parti. Assicurati di stare a distanza debita, o verrai colpito dal fuoco amico. + + + OK. + + + No. Non ci sto. + + + Salve, stalker. Adesso ho da fare. Possiamo parlare pi tardi? + + + Grazie dell'avvertimento. Vuoi aderire al nostro piano? una bella occasione per colpire quei bastardi alle spalle, per cos dire. + + + Tenderemo loro un'imboscata. Quando lo faremo, tu sparerai a quei bastardi da dietro. + + + Quei bastardi sono gi morti. Grazie dell'avvertimento. + + + Grazie per il tuo aiuto. + + + Salve. Ascolta, se non una cosa urgente, possiamo parlarne dopo? + + + Salve. + + + Ho trovato Magpie. Era alla stazione Yanov, dove si faceva chiamare 'Flint'. L'ho gi sistemato. + + + Sistemato? Che peccato. Mi sarebbe piaciuto dare una lezione a quello scarafaggio... Oh, beh, comunque una buona notizia. Ecco, prendi questo. Io sono un uomo di parola. + + + Grazie. + + + Voglio andarmene dalla Zona. + + + Sicuro? Poi non potrai pi tornare. + + + Sono sicuro. Andiamo. + + + In effetti... per ora rester. + + + OK, prendi i soldi. Non voglio combattere. + + + Eh? Dammi tutto quello che hai, stronzo! Poi sparisci e non farti pi vedere! + + + Me ne vado. + + + Non posso! + + + Diamo un'occhiata... Con il tuo stato di salute? Beh, se tu te la passi male, io devo essere morto o qualcosa del genere... + + + Ascolta, c' una faccenda urgente. Un commerciante di mia conoscenza vuole chiudere un affare. Il problema che i suoi clienti sono di quelli difficlii, quindi vuole assumere una guardia del corpo per stare pi tranquillo. Ti interessa? + + + S. + + + Bene. Il commerciante ti aspetter alla stazione dei ranger e ti spiegher tutti i dettagli. + + + Non direi. + + + Come vuoi. Se cambi idea, forse farai ancora in tempo ad avere il lavoro. + + + Che tipo di lavoro puoi offrirmi? + + + Un genere di lavoro di quelli ben pagati. Pensaci un attimo: perch mi rivolgo a te? Tu sei uno nuovo, senza nessuna conoscenza, ma se giochi bene le tue carte potresti ottenere alla svelta il rispetto della gente del posto. Vuoi sapere cosa sto pensando? + + + Certo, spara. + + + E va bene, allora scolta. Vogliamo dare una lezione agli stalker di Beard. Una passeggiata. A notte fonda tu e i nostri ragazzi andrete a Shevchenko e ancora prima che quei turisti capiscano cosa sta succedendo, li portate a fare un giro. Noi ci becchiamo i quattrini e tu la fama... Afferrato il discorso? Bene, allora. Vedi Knuckles laggi? Lui ti spiegher tutti i dettagli. + + + Non direi. + + + Peccato. Prenditi un po' di tempo per pensarci... Se sei uno che sa cosa gli conviene tornerai da me. + + + Un lavoro di quelli adatti a chi ama viaggiare... Vuoi sapere cosa sto pensando? + + + Il PDA di Barge. Ho trovato il suo cadavere nelle grotte sotto la fattoria bruciata. + + + L'ho trovato vicino a delle ossa non lontano dalla Pinquercia. il PDA di Joker. + + + Di Joker? Ma impossibile! Ehi, che tragedia... Oh, Joker, non rideremo pi delle tue battute... riposa in pace... Spero che almeno Barge stia bene... + + + Di Joker? Ma impossibile! Ehi, che tragedia... Oh, Joker, non rideremo pi delle tue battute... riposa in pace... E anche tu, Barge... Come siamo potuti arrivare a questo? + + + Di Barge e di Joker. Ne ho trovato uno accanto a uno scheletro nei pressi della Pinquercia, e un altro addosso a un cadavere nelle caverne sotto la fattoria bruciata. + + + A essere sincero, non c' molto da dire. Le emissioni sono molto pericolose e quasi sempre letali. Puoi percepire gradualmente l'avvicinarsi di un'emissione a causa dei cambiamenti climatici, ma dopo aver raggiunto il suo picco passa piuttosto in fretta. Non appena ne percepisci l'arrivo, corri al rifugio pi vicino: una caverna, qualcosa fatto di cemento, mattoni o acciaio... Alcune persone, me compreso, sentono arrivare un'emissione quando gli fa male la schiena. Riguardo la natura delle emissioni, non ho niente di utile da dirti... perch non so niente. + + + Ti serve della merce? Delle informazioni? O forse hai tu delle informazioni da vendere? + + + Sultan dice che stai pianificando di derubare gli stalker. Considerami dei tuoi. + + + Grandioso. Porta le chiappe a Shevchenko dopo mezzanotte. Ti aspetteremo. Ma non farci aspettare fino al mattino. + + + Oh, sei tu, fratello. Allora, cosa hai concordato con Sultan? + + + Allora... Vai alla chiatta dopo mezzanotte ma prima dell'alba. Ti aspetteremo. + + + Forse far meglio a stare con te. Aspetteremo la mezzanotte, poi potrai mostrarmi la strada per Shevchenko. + + + Nessun problema, tu resta da queste parti. Portarti alla chiatta non un problema. + + + In realt... Voglio sistemare alcune cose. + + + All'interno della Zona lavoro con importanti clienti che regolarmente mi richiedono specifici manufatti che devono essere consegnati con puntualit. Tu portami quello che ti chiedo e ti pagher bene. Ricorda che questi ordini sono importanti per me, ecco perch cerco di commissionarli a pi agenti alla volta... Verrai pagato interamente solo se mi consegni il manufatto per primo. + + + Attraverso la fattoria bruciata. Mmm... ma tu chi sei? + + + Chiamano quel posto Foresta d'acciaio. L'elicottero si schiantato contro i tralicci della corrente elettrica. I marine sono morti tutti... E anche se qualcuno fosse sopravvissuto, sarebbe impossibile uscire vivi da l. Quei poltergeist hanno la fissa di spingere la gente nelle anomalie elettriche... Come sicuramente saprai anche tu, quei sacchi d'immondizia reagiscono al minimo movimento. + + + Ascolta, dopo che l'elicottero precipitato, solo cinque militari sono stati visti uscire da quella palude. Raggiungere quel posto non difficile, basta stare lontano dall'acqua e restare sulla terraferma. E ti occorrer anche una protezione dalle sostanze chimiche. Se hai intenzione di metterti in viaggio, compra degli antidoti dal medico. + + + Peccato che Barge e Joker non siano qui... ce la spasseremmo alla grande. Siamo come fratelli e ci proteggiamo sempre a vicenda... Come siamo arrivati a questo punto? Io sono ancora qui e loro se ne sono andati chiss dove... + + + Parlami di Joker e Barge. + + + Mi sono gi procurato qualcosa. + + + Comincia a parlare... Hai qualcosa per me? + + + Beh, questo spiega tutto. Lo conosco. sempre stato un imbroglione, ma ultimamente sta davvero esagerando, a imbrogliare gli stalker a quel modo... Deve essere rimesso in riga. + + + Mi servono informazioni sull'accampamento dei mercenari. Non difficile come sembra. + + + OK, aspetter... Ma ricorda che il lavoro urgente, deve essere portato a termine entro due giorni. + + + PDA del messaggero di Sultan. + + + Non particolarmente interessante. Te lo pagher 500. + + + OK. + + + Prototipi di rilevatori. Ti interessa comprarli? + + + Documenti segreti. Li ho trovati sul ponte accanto alla colonna motore. Vuoi dare un'occhiata. + + + Uno strano manufatto. L'ho trovato alla stazione di drenaggio. + + + Uno strano manufatto. L'ho trovato alla stazione Yanov. + + + Manufatto Cuore dell'Oasi + + + Diamoci dentro. + + + Aspetta. + + + Un gruppo di stalker vuole fregarti. Stai all'erta. + + + Maledetti bastardi... E va bene, gli daremo un caloroso benvenuto... Ascolta, fagli credere di essere dalla loro parte. Se ci riuscirai ci darai un grande aiuto nel respingerli... Sapremo come ricompensarti... + + + Non mi interessa cosa hai concordato. Dammi qui, e subito! + + + OK, ecco qui. + + + Ah, no? Me ne frego. Dammi qui, idiota! + + + Calma, calma... tieni. + + + Maledetti bastardi... E va bene, gli daremo un caloroso benvenuto... Ascolta, aiutaci a respingerli, se puoi. Sapremo come ricompensarti... + + + Li abbiamo conciati per le feste, eh!?Tu non hai voluto partecipare, quindi non avrai nulla. Se avremo altri "affari" ti far un fischio. + + + Sei inutile... Non aspettarti una ricompensa. Beh, almeno sei venuto per fare due chiacchiere. gi qualcosa. + + + Ci si vede. + + + Bravo ragazzo. Ora abbiamo il coltello dalla parte del manico. Ho sentito dire che Beard ha dotato i suoi stalker di potenti rilevatori programmati per trovare manufatti rari. Devi unirti a quegli stalker e fare in modo che quei rilevatori non vedano quello che hai in tasca. Ci siamo capiti? + + + Con la forza non ce la possiamo fare. Ho provato a bloccare le sue linee di rifornimento, ma quel dannato bastardo barbuto riuscito a trovare una Bussola. Se la sta cavando senza problemi... per ora. + + + [continua...] + + + [continua...] + + + [continua...] + + + Grouse morto. Sembra che sia stato Tremor a ucciderlo... ma morto anche lui. + + diff --git a/gamedata/configs/text/ita/st_generate_fnames.xml b/gamedata/configs/text/ita/st_generate_fnames.xml new file mode 100644 index 0000000..0ea67ed --- /dev/null +++ b/gamedata/configs/text/ita/st_generate_fnames.xml @@ -0,0 +1,492 @@ + + + + Sanek + + + Shurik + + + Vadya + + + Vasyan + + + Vasek + + + Vityukha + + + Vetal + + + Vovan + + + Zhorka + + + Grishka + + + Grishko + + + Dimon + + + Lekha + + + Dimukha + + + Zheka + + + Fimka + + + Ilyukha + + + Kostyan + + + Mitka + + + Mikhal + + + Mikha + + + Mikhas + + + Kolyan + + + Tolyan + + + Pavlukha + + + Sashok + + + Stepka + + + Stepukha + + + Timokha + + + Felka + + + Yuras + + + Yashka + + + Andryukha + + + Tokha + + + Arkasha + + + Temka + + + Boryan + + + Bodya + + + Capitano + + + Tenente + + + Soldato + + + Andrey + + + Anton + + + Oleg + + + Roman + + + Aleksandr + + + Sergey + + + Anatoly + + + Yuri + + + Bohdan + + + Veniamin + + + Vitaly + + + Vladimir + + + Dmitry + + + Ivan + + + Konstantin + + + Alexey + + + Sanya + + + Sanek + + + Arthur + + + Yashka + + + Yarik + + + Yara + + + Slava + + + Borya + + + Borka + + + Bohdan + + + Slavik + + + Vadim + + + Vadya + + + Vadik + + + Valik + + + Valera + + + Shurik + + + Vasya + + + Vaska + + + Vasko + + + Venya + + + Vitya + + + Vitka + + + Vitalik + + + Vlad + + + Vova + + + Vovka + + + Lenya + + + Seva + + + Sevka + + + Gena + + + Genka + + + George + + + Gosha + + + Zhora + + + Mark + + + Gleb + + + Grisha + + + Alex + + + Grishka + + + Grishko + + + Danya + + + Kiryukha + + + Danko + + + Dennis + + + Dima + + + Dimka + + + Dmitro + + + Zhenya + + + Leshka + + + Zhenka + + + Egor + + + Egorka + + + Fima + + + Vanya + + + Vanka + + + Igorek + + + Ilya + + + Kostya + + + Kostik + + + Tolik + + + Leva + + + Lenya + + + Lyonka + + + Max + + + Matvei + + + Mitya + + + Misha + + + Mishka + + + Nikita + + + Nik + + + Anton + + + Kolya + + + Oleg + + + Pasha + + + Pashka + + + Petro + + + Petya + + + Petka + + + Roma + + + Romka + + + Rostik + + + Toshka + + + Rus + + + Savva + + + Semyon + + + Sema + + + Serega + + + Rusik + + + Stepan + + + Stepa + + + Tima + + + Timka + + + Artem + + + Fedor + + + Fedya + + + Fedka + + + Filya + + + Filka + + + Edik + + + Yurka + + + Yurik + + + Yurko + + + Yasha + + + Sergente maggiore + + + Sergente + + diff --git a/gamedata/configs/text/ita/st_generate_snames.xml b/gamedata/configs/text/ita/st_generate_snames.xml new file mode 100644 index 0000000..b99a0ff --- /dev/null +++ b/gamedata/configs/text/ita/st_generate_snames.xml @@ -0,0 +1,4836 @@ + + + + Gray + + + Berserk + + + Rotten + + + Patty + + + Spy + + + Bison + + + Beaver + + + Bulldog + + + Ox + + + Sparrow + + + Woodpecker + + + Beast + + + Warlock + + + Humpback + + + Boar + + + Crucian + + + Canary + + + Bedbug + + + Nark + + + Moose + + + Rat + + + Boa + + + Loaf + + + Broken + + + Long John + + + Mayhem + + + Bolt + + + Razor + + + Drum + + + Junk + + + Screw + + + Dynamite + + + Trump + + + Shovel + + + Joint + + + Dead Duck + + + Cross + + + Tar + + + Sock + + + Crowbar + + + Panadol + + + Shiv + + + Piston + + + Nickel + + + Tails + + + Lethal + + + Percher + + + Grindstone + + + Ace + + + Chisel + + + Jackstraw + + + Shortstop + + + Crosstie + + + Stud + + + Jiggers + + + Pugno + + + Bruise + + + Tadpole + + + Hacker + + + Khan + + + Koschei + + + Rambo + + + Tour Guide + + + Terminator + + + Chapai + + + Genghis + + + Banana + + + Loaf + + + Butterfingers + + + Papa + + + Spike + + + Homeboy + + + Gangrene + + + Glitch + + + Degree + + + Antelope + + + Fubar + + + Pariah + + + Aspic + + + Charcoal + + + Trump + + + Joint + + + Sock + + + Goblin + + + Moro + + + Reefer + + + Flop + + + Ravioli + + + Chili + + + Grater + + + Fatso + + + Biscuit + + + Ghoul + + + Miser + + + Broken + + + Tightwad + + + Squint + + + Fiend + + + Cripple + + + Kicker + + + Skew + + + Crooked + + + Shifter + + + Toupee + + + Fierce + + + Crony + + + Local + + + Slime + + + Champ + + + Monocle + + + Rascal + + + Deadbeat + + + Hotshot + + + Turd + + + Defunct + + + Psycho + + + Loudmouth + + + Torn + + + Grabber + + + Blind + + + Snot + + + Hipster + + + Met + + + Corpse + + + Slasher + + + Ears + + + Jester + + + Greyhound + + + Lame + + + Sturdy + + + Cranky + + + Connoisseur + + + Robust + + + Squire + + + Leech + + + Artist + + + Conman + + + Banker + + + Hobo + + + Baron + + + Peddler + + + Unorthodox + + + Tramp + + + Bosun + + + Pigmy + + + Bourbon + + + Bourgeois + + + Chauffeur + + + Thief + + + Shaven + + + Gangster + + + Messenger + + + Count + + + Tyrant + + + Savage + + + Strangler + + + Counselor + + + Player + + + Cheat + + + Godfather + + + Veterano + + + Coach + + + Bling-bling + + + Maniac + + + Undertaker + + + Butcher + + + Ninja + + + Executioner + + + Punk + + + Guerilla + + + Pacifist + + + Boulder + + + Pirate + + + Arsonist + + + Prince + + + Brigand + + + Kamikaze + + + Pimp + + + Tyrant + + + Hitman + + + Trombone + + + Chemist + + + Abdurakhmanov + + + Altynnik + + + Barsak + + + Kireev + + + Scherbin + + + Kovalchuk + + + Koev + + + Kozlov + + + Kolontarev + + + Kolontar + + + Kondratenko + + + Korkin + + + Korneev + + + Baul + + + Kravchenko + + + Krivda + + + Krivokhatsky + + + Kuznetsov + + + Kuzmich + + + Kuzyakin + + + Kulchitsky + + + Kuntsev + + + Kurvitz + + + Kucheruk + + + Bashakov + + + Kushnarev + + + Khaladze + + + Lavrik + + + Lavrov + + + Livshits + + + Lisichansky + + + Litvin + + + Lymarenko + + + Mazepa + + + Makarenko + + + Bashmakov + + + Maltsev + + + Mamaev + + + Merzlayev + + + Milchenko + + + Mironyuk + + + Mohrer + + + Kryga + + + Mostovoi + + + Muntyan + + + Mukhamedov + + + Beshevly + + + Myskov + + + Navrotsky + + + Nepritsky + + + Nikanorov + + + Nikeshin + + + Nikulin + + + Futzin + + + Nordiev + + + Nosan + + + Opolev + + + Binoev + + + Orlevich + + + Orlov + + + Petkevich + + + Petrenko + + + Petrov + + + Plokhenko + + + Podyachev + + + Polyanin + + + Poplavsky + + + Popov + + + Blinov + + + Portnykh + + + Prasolov + + + Prokopenko + + + Proskurin + + + Protsenko + + + Prudov + + + Pustovar + + + Puchek + + + Rabinovich + + + Radkevich + + + Bobrov + + + Rezun + + + Rogoza + + + Rodnyansky + + + Rotan + + + Rublev + + + Rudik + + + Rusanov + + + Rychagirsky + + + Savchenko + + + Savchuk + + + Bogdanov + + + Sagitov + + + Sviridov + + + Sedykh + + + Sereda + + + Sidorenko + + + Sidorov + + + Siniy + + + Sinitzyn + + + Skameika + + + Slutsky + + + Boiko + + + Smelov + + + Smoly + + + Sorokin + + + Statzura + + + Stepchin + + + Stychinsky + + + Sykula + + + Tarnavsky + + + Tatarchuk + + + Timchuk + + + Andreychuk + + + Boichenko + + + Boldeskul + + + Bondarev + + + Borisov + + + Brich + + + Bronshtein + + + Buryak + + + Buturin + + + Byalo + + + Valentinov + + + Andruschenko + + + Vasiljev + + + Veselov + + + Vinogradov + + + Vovnenko + + + Volanchuk + + + Volodar + + + Voloshin + + + Vorontsov + + + Vorokhaev + + + Vyushinsky + + + Anisiev + + + Galkin + + + Ganzyuk + + + Garkovenko + + + Garkusha + + + Georgov + + + Glebovsky + + + Gnatyuk + + + Goncharenko + + + Gordienko + + + Gorlevoy + + + Ardashev + + + Gorokhin + + + Goryunov + + + Grebenko + + + Gritzaenko + + + Gritzay + + + Gritzenkov + + + Grishachev + + + Grischuk + + + Gubar + + + Gunko + + + Babich + + + Gurevich + + + Denisenko + + + Dovgalyuk + + + Dombrik + + + Dotsenko + + + Drozdush + + + Dubenchuk + + + Dudorov + + + Duka + + + Dumko + + + Balan + + + Dunaev + + + Dyklov + + + Erofeev + + + Efremov + + + Zhabenko + + + Zhmyev + + + Zhurakovsky + + + Zabyagoda + + + Zagorodnyuk + + + Zamosenchuk + + + Baranov + + + Zarubin + + + Zakharin + + + Zvonnitsky + + + Zinoviev + + + Zozo + + + Zolotar + + + Zubarev + + + Zubkov + + + Ivanov + + + Ignatenko + + + Baranovsky + + + Izhenko + + + Ischuk + + + Kazakov + + + Kazantsev + + + Kandybabko + + + Kapuka + + + Kapustyanko + + + Katz + + + Kikabidze + + + Gatzula + + + Abdurakhmanov + + + Altynnik + + + Barsak + + + Kireev + + + Scherbin + + + Kovalchuk + + + Koev + + + Kozlov + + + Kolontarev + + + Kolontar + + + Kondratenko + + + Korkin + + + Korneev + + + Baul + + + Kravchenko + + + Krivda + + + Krivokhatsky + + + Kuznetsov + + + Kuzmich + + + Kuzyakin + + + Kulchistky + + + Kuntsev + + + Kurvitz + + + Kucheruk + + + Bashakov + + + Kushnarev + + + Khaladze + + + Lavrik + + + Lavrov + + + Livshits + + + Lisichansky + + + Litvin + + + Lymarenko + + + Mazepa + + + Makarenko + + + Bashmakov + + + Maltsev + + + Mamaev + + + Merzlayev + + + Milchenko + + + Mironyuk + + + Mohrer + + + Kryga + + + Mostovoi + + + Muntyan + + + Mukhamedov + + + Beshevly + + + Myskov + + + Navrotsky + + + Nepritsky + + + Nikanorov + + + Nikeshin + + + Nikulin + + + Futzin + + + Nordiev + + + Nosan + + + Opolev + + + Binoev + + + Orlevich + + + Orlov + + + Petkevich + + + Petrenko + + + Petrov + + + Plokhenko + + + Podyachev + + + Polyanin + + + Poplavsky + + + Popov + + + Blinov + + + Portnykh + + + Prasolov + + + Prokopenko + + + Proskurin + + + Protsenko + + + Prudov + + + Pustovar + + + Puchek + + + Rabinovich + + + Radkevich + + + Bobrov + + + Rezun + + + Rogoza + + + Rodnyansky + + + Rotan + + + Rublev + + + Rudik + + + Rusanov + + + Rychagirsky + + + Savchenko + + + Savchuk + + + Bogdanov + + + Sagitov + + + Sviridov + + + Sedykh + + + Sereda + + + Sidorenko + + + Sidorov + + + Siniy + + + Sinitzyn + + + Skameika + + + Slutsky + + + Boiko + + + Smelov + + + Smoly + + + Sorokin + + + Statzura + + + Stepchin + + + Stychinsky + + + Sykula + + + Tarnavsky + + + Tatarchuk + + + Timchuk + + + Andreychuk + + + Boichenko + + + Boldeskul + + + Bondarev + + + Borisov + + + Brich + + + Bronshtein + + + Buryak + + + Buturin + + + Byalo + + + Valentinov + + + Andruschenko + + + Vasiljev + + + Veselov + + + Vinogradov + + + Vovnenko + + + Volanchuk + + + Volodar + + + Voloshin + + + Vorontsov + + + Vorokhaev + + + Vyushinsky + + + Anisiev + + + Galkin + + + Ganzyuk + + + Garkovenko + + + Garkusha + + + Georgov + + + Glebovsky + + + Gnatyuk + + + Goncharenko + + + Gordienko + + + Gorlevoy + + + Ardashev + + + Gorokhin + + + Goryunov + + + Grebenko + + + Gritzaenko + + + Gritzay + + + Gritzenkov + + + Grishachev + + + Grischuk + + + Gubar + + + Gunko + + + Babich + + + Gurevich + + + Denisenko + + + Dovgalyuk + + + Dombrik + + + Dotsenko + + + Drozdush + + + Dubenchuk + + + Dudorov + + + Duka + + + Dumko + + + Balan + + + Dunaev + + + Dyklov + + + Erofeev + + + Efremov + + + Zhabenko + + + Zhmyev + + + Zhurakovsky + + + Zabyagoda + + + Zagorodnyuk + + + Zamosenchuk + + + Baranov + + + Zarubin + + + Zakharin + + + Zvonnitsky + + + Zinoviev + + + Zozo + + + Zolotar + + + Zubarev + + + Zubkov + + + Ivanov + + + Ignatenko + + + Baranovsky + + + Izhenko + + + Ischuk + + + Kazakov + + + Kazantsev + + + Kandybabko + + + Kapuka + + + Kapustyanko + + + Katz + + + Kikabidze + + + Gatzula + + + Abdurakhmanov + + + Altynnik + + + Barsak + + + Kireev + + + Scherbin + + + Kovalchuk + + + Koev + + + Kozlov + + + Kolontarev + + + Kolontar + + + Kondratenko + + + Korkin + + + Korneev + + + Baul + + + Kravchenko + + + Krivda + + + Krivokhatsky + + + Kuznetsov + + + Kuzmich + + + Kuzyakin + + + Kulchistky + + + Kuntsev + + + Kurvitz + + + Kucheruk + + + Bashakov + + + Kushnarev + + + Khaladze + + + Lavrik + + + Lavrov + + + Livshits + + + Lisichansky + + + Litvin + + + Lymarenko + + + Mazepa + + + Makarenko + + + Bashmakov + + + Maltsev + + + Mamaev + + + Merzlayev + + + Milchenko + + + Mironyuk + + + Mohrer + + + Kryga + + + Mostovoi + + + Muntyan + + + Mukhamedov + + + Beshevly + + + Myskov + + + Navrotsky + + + Nepritsky + + + Nikanorov + + + Nikeshin + + + Nikulin + + + Futzin + + + Nordiev + + + Nosan + + + Opolev + + + Binoev + + + Orlevich + + + Orlov + + + Petkevich + + + Petrenko + + + Petrov + + + Plokhenko + + + Podyachev + + + Polyanin + + + Poplavsky + + + Popov + + + Blinov + + + Portnykh + + + Prasolov + + + Prokopenko + + + Proskurin + + + Protsenko + + + Prudov + + + Pustovar + + + Puchek + + + Rabinovich + + + Radkevich + + + Bobrov + + + Rezun + + + Rogoza + + + Rodnyansky + + + Rotan + + + Rublev + + + Rudik + + + Rusanov + + + Rychagirsky + + + Savchenko + + + Savchuk + + + Bogdanov + + + Sagitov + + + Sviridov + + + Sedykh + + + Sereda + + + Sidorenko + + + Sidorov + + + Siniy + + + Sinitzyn + + + Skameika + + + Slutsky + + + Boiko + + + Smelov + + + Smoly + + + Sorokin + + + Statzura + + + Stepchin + + + Stychinsky + + + Sykula + + + Tarnavsky + + + Tatarchuk + + + Timchuk + + + Andreychuk + + + Boichenko + + + Boldeskul + + + Bondarev + + + Borisov + + + Brich + + + Bronshtein + + + Buryak + + + Buturin + + + Byalo + + + Valentinov + + + Andruschenko + + + Vasiljev + + + Veselov + + + Vinogradov + + + Vovnenko + + + Volanchuk + + + Volodar + + + Voloshin + + + Vorontsov + + + Vorokhaev + + + Vyushinsky + + + Anisiev + + + Galkin + + + Ganzyuk + + + Garkovenko + + + Garkusha + + + Georgov + + + Glebovsky + + + Gnatyuk + + + Goncharenko + + + Gordienko + + + Gorlevoy + + + Ardashev + + + Gorokhin + + + Goryunov + + + Grebenko + + + Gritzaenko + + + Gritzay + + + Gritzenkov + + + Grishachev + + + Grischuk + + + Gubar + + + Gunko + + + Babich + + + Gurevich + + + Denisenko + + + Dovgalyuk + + + Dombrik + + + Dotsenko + + + Drozdush + + + Dubenchuk + + + Dudorov + + + Duka + + + Dumko + + + Balan + + + Dunaev + + + Dyklov + + + Erofeev + + + Efremov + + + Zhabenko + + + Zhmyev + + + Zhurakovsky + + + Zabyagoda + + + Zagorodnyuk + + + Zamosenchuk + + + Baranov + + + Zarubin + + + Zakharin + + + Zvonnitsky + + + Zinoviev + + + Zozo + + + Zolotar + + + Zubarev + + + Zubkov + + + Ivanov + + + Ignatenko + + + Baranovsky + + + Izhenko + + + Ischuk + + + Kazakov + + + Kazantsev + + + Kandybabko + + + Kapuka + + + Kapustyanko + + + Katz + + + Kikabidze + + + Gatzula + + + Sinaev + + + Feigelman + + + Ledentsov + + + Alferov + + + Antipin + + + Blinov + + + Bogomolov + + + Vasilevich + + + Geshkenbein + + + Dyakonov + + + Erokhin + + + Zaikin + + + Zakharov + + + Ivchenko + + + Kabanov + + + Larin + + + Manko + + + Mironov + + + Stepanenko + + + Oganesyan + + + Chernodub + + + Shilov + + + Chirikov + + + Belyavin + + + Fadeev + + + Steklov + + + Andreev + + + Spirin + + + Balitsky + + + Abdurakhmanov + + + Altynnik + + + Barsak + + + Kireev + + + Scherbin + + + Kovalchuk + + + Koev + + + Kozlov + + + Kolontarev + + + Kolontar + + + Kondratenko + + + Korkin + + + Korneev + + + Baul + + + Kravchenko + + + Krivda + + + Krivokhatsky + + + Kuznetsov + + + Kuzmich + + + Kuzyakin + + + Kulchistky + + + Kuntsev + + + Kurvitz + + + Kucheruk + + + Bashakov + + + Kushnarev + + + Khaladze + + + Lavrik + + + Lavrov + + + Livshits + + + Lisichansky + + + Litvin + + + Lymarenko + + + Mazepa + + + Makarenko + + + Bashmakov + + + Maltsev + + + Mamaev + + + Merzlayev + + + Milchenko + + + Mironyuk + + + Mohrer + + + Kryga + + + Mostovoi + + + Muntyan + + + Mukhamedov + + + Beshevly + + + Myskov + + + Navrotsky + + + Nepritsky + + + Nikanorov + + + Nikeshin + + + Nikulin + + + Futzin + + + Nordiev + + + Nosan + + + Opolev + + + Binoev + + + Orlevich + + + Orlov + + + Petkevich + + + Petrenko + + + Petrov + + + Plokhenko + + + Podyachev + + + Polyanin + + + Poplavsky + + + Popov + + + Blinov + + + Portnykh + + + Prasolov + + + Prokopenko + + + Proskurin + + + Protsenko + + + Prudov + + + Pustovar + + + Puchek + + + Rabinovich + + + Radkevich + + + Bobrov + + + Rezun + + + Rogoza + + + Rodnyansky + + + Rotan + + + Rublev + + + Rudik + + + Rusanov + + + Rychagirsky + + + Savchenko + + + Savchuk + + + Bogdanov + + + Sagitov + + + Sviridov + + + Sedykh + + + Sereda + + + Sidorenko + + + Sidorov + + + Siniy + + + Sinitzyn + + + Skameika + + + Slutsky + + + Boiko + + + Smelov + + + Smoly + + + Sorokin + + + Statzura + + + Stepchin + + + Stychinsky + + + Sykula + + + Tarnavsky + + + Tatarchuk + + + Timchuk + + + Andreychuk + + + Boichenko + + + Boldeskul + + + Bondarev + + + Borisov + + + Brich + + + Bronshtein + + + Buryak + + + Buturin + + + Byalo + + + Valentinov + + + Andruschenko + + + Vasiljev + + + Veselov + + + Vinogradov + + + Vovnenko + + + Volanchuk + + + Volodar + + + Voloshin + + + Vorontsov + + + Vorokhaev + + + Vyushinsky + + + Anisiev + + + Galkin + + + Ganzyuk + + + Garkovenko + + + Garkusha + + + Georgov + + + Glebovsky + + + Gnatyuk + + + Goncharenko + + + Gordienko + + + Gorlevoy + + + Ardashev + + + Gorokhin + + + Goryunov + + + Grebenko + + + Gritzaenko + + + Gritzay + + + Gritzenkov + + + Grishachev + + + Grischuk + + + Gubar + + + Gunko + + + Babich + + + Gurevich + + + Denisenko + + + Dovgalyuk + + + Dombrik + + + Dotsenko + + + Drozdush + + + Dubenchuk + + + Dudorov + + + Duka + + + Dumko + + + Balan + + + Dunaev + + + Dyklov + + + Erofeev + + + Efremov + + + Zhabenko + + + Zhmyev + + + Zhurakovsky + + + Zabyagoda + + + Zagorodnyuk + + + Zamosenchuk + + + Baranov + + + Zarubin + + + Zakharin + + + Zvonnitsky + + + Zinoviev + + + Zozo + + + Zolotar + + + Zubarev + + + Zubkov + + + Ivanov + + + Ignatenko + + + Baranovsky + + + Izhenko + + + Ischuk + + + Kazakov + + + Kazantsev + + + Kandybabko + + + Kapuka + + + Kapustyanko + + + Katz + + + Kikabidze + + + Gatzula + + + White + + + Green + + + Immortal + + + Rusty + + + Romantic + + + Atrocious + + + Brawny + + + Storyteller + + + Blind + + + Brave + + + Snot + + + Debater + + + Oldtimer + + + Berserk + + + Hipster + + + Met + + + Grim + + + Slouch + + + Dry + + + Lucky Bastard + + + Flecked + + + Fatso + + + Belly + + + Corpse + + + Broken + + + Smart Aleck + + + Slasher + + + Ears + + + Mummer + + + Jester + + + Lame + + + Sturdy + + + Bone + + + Cynic + + + Dude + + + Blithe + + + Cranky + + + Alert + + + Connoisseur + + + Robust + + + Sophomore + + + Native + + + Aviator + + + Agent + + + Squire + + + Leech + + + Crony + + + Disciple + + + Artist + + + Ascetic + + + Conman + + + Banker + + + Bard + + + Baron + + + Peddler + + + Unorthodox + + + Jogger + + + Athlete + + + Fighter + + + Tramp + + + Bosun + + + Pigmy + + + Bourbon + + + Bourgeois + + + Bureaucrat + + + Vandal + + + Barbarian + + + Janitor + + + Zinger + + + Witcher + + + Visitor + + + Viking + + + Chauffeur + + + Diver + + + Chief + + + Thief + + + Voyager + + + Shrink + + + Horseman + + + Loudmouth + + + Gangster + + + Geologist + + + Gladiator + + + Messenger + + + Guest + + + Count + + + Porter + + + Grandpa + + + Defector + + + Salesman + + + Greyhound + + + Dandy + + + Deputato + + + Tyrant + + + Savage + + + Diplomatico + + + Doc + + + Dottore + + + Professore + + + Strangler + + + Warden + + + Hobo + + + Counselor + + + Ack-ack + + + Ciarlatano + + + Player + + + Indiano + + + Iroquois + + + Capitano + + + Cheat + + + Clown + + + Duke + + + Rosso + + + Shaven + + + Cosacco + + + Cook + + + Warlock + + + Comanche + + + Re + + + Godfather + + + Merchant + + + Smoker + + + Courier + + + Coach + + + Veterano + + + Legionnaire + + + Healer + + + Forester + + + Lord + + + Tycoon + + + Bling-bling + + + Maniac + + + Marziano + + + Muratore + + + Meccanico + + + Bigtime + + + Undertaker + + + Moderatore + + + Lattaio + + + Butcher + + + Merc + + + Accordatore + + + Boss + + + Ninja + + + Operatore + + + Gunsmith + + + Lucky + + + Shah + + + Executioner + + + Polkan + + + Punk + + + Daddy + + + Guerilla + + + Pastore + + + Pecoraio + + + Elder + + + Aratore + + + Fortunate + + + Pacifist + + + Trasportatore + + + Whistle + + + Pilot + + + Apripista + + + Pirate + + + Falegname + + + Arsonist + + + Firefighter + + + Slipper + + + Beanpole + + + Subzero + + + Ambasciatore + + + Postino + + + Poeta + + + Prince + + + Profeta + + + Professore + + + Saltatore + + + Apicoltore + + + Workhorse + + + Leale + + + Rabby + + + Sparks + + + Brigand + + + Rasta + + + Warden + + + Rockettaro + + + Minatore + + + Samurai + + + Minesweeper + + + Orderly + + + Bugeyed + + + Prete + + + Segretario + + + Gigolo + + + Sham + + + Scythian + + + Pathfinder + + + Machinist + + + Kamikaze + + + Breeder + + + Lifesaver + + + Boulder + + + Sportsman + + + Straniero + + + Studente + + + Giudice + + + Toadstool + + + Pimp + + + Beancounter + + + Trooper + + + Danzatore + + + Tyrant + + + Rotten + + + Mercanteggiatore + + + Mopper-up + + + Sweeper + + + Ethnic + + + Turista + + + Hitman + + + Trombone + + + Quarterback + + + Fucili da cecchino + + + Chemist + + + Rusty + + + Verbal + + + Patty + + + Pittore + + + Sheep Herder + + + Sciamano + + + Cavatore + + + Coalminer + + + Sceriffo + + + Chief + + + Studioso + + + Cabby + + + Humpback + + + Spy + + + Elettricista + + + Cadet + + + Heathen + + + Alligatore + + + Anaconda + + + Babbuino + + + Bison + + + Beaver + + + Mantis + + + Orgoglioso + + + Bulldog + + + Chipmunk + + + Ox + + + Grice + + + Sparrow + + + Corvo + + + Topo muschiato + + + Plantain + + + Scavenger + + + Cornacchia + + + Aspro + + + Manul + + + Oca + + + Delfino + + + Dinosauro + + + Tordo + + + Woodpecker + + + Porcospino + + + Maggiolino + + + Lepre + + + Beast + + + Thunder + + + Warlock + + + Aurochs + + + Tacchino + + + Boar + + + Crucian + + + Canary + + + Bedbug + + + Cobra + + + Zanzara + + + Stallion + + + Bully + + + Gatto + + + Croc + + + Cavalletta + + + Nark + + + Moose + + + Mammut + + + Elephant + + + Germ + + + Moscerino + + + Formica + + + Long John + + + Tafano + + + Ragno + + + Rat + + + Pellegrino + + + Piranha + + + Python + + + Lepre + + + Owl + + + Falcone + + + Marmotta + + + Softie + + + Roditore + + + Minnow + + + Scarafaggio + + + Tarantola + + + Hamster + + + Boa + + + Owl + + + Furetto + + + Verme + + + Cavatore + + + Dead Duck + + + Assoluto + + + Anomalia + + + Paraurti + + + Loaf + + + Broken + + + Mayhem + + + Ardente + + + Bolt + + + Razor + + + Drum + + + Percher + + + Ciambella + + + Vuoto + + + Junk + + + Pebble + + + Fan + + + Elicottero + + + Vento + + + Screw + + + Colletto + + + Chiodo + + + Redhead + + + Tadpole + + + Cartridge + + + Globo + + + Boulder + + + Granata + + + Nebbia + + + Bara + + + Summertime + + + Engine + + + Dynamite + + + Crivellato + + + Butterfingers + + + Legal + + + Serratura + + + Breech + + + Isotopo + + + Rock + + + Trappola + + + Stregone + + + Karma + + + Mattone + + + Colla + + + Meany + + + Chiave + + + Frusta + + + Trump + + + Cap + + + Log Splitter + + + Whiskey + + + Radice + + + Falce + + + Space + + + Shovel + + + Scrub + + + Joint + + + Cross + + + Tar + + + Grilletto + + + Sock + + + Crowbar + + + Macchina + + + Bersaglio + + + Motore + + + Pump + + + Ferro + + + Notturno + + + Doppietta + + + Panadol + + + Paracadute + + + Round + + + Five + + + Shiv + + + Piston + + + Putty + + + Polvere da sparo + + + Hardware + + + Nickel + + + Razzo + + + Rack + + + Reattore + + + Hatchet + + + Setaccio + + + Tails + + + Robot + + + Stag + + + Spade + + + Charcoal + + + Moonshine + + + Stivale + + + Sidro + + + Lethal + + + Booze + + + Gouge + + + Barile + + + Forziere + + + Ascia + + + Botte + + + Swifty + + + Grindstone + + + Ace + + + Knot + + + Fattore + + + Lamp + + + Chisel + + + Giugno + + + Aglio + + + Jackstraw + + + Fortuito + + + Fatso + + + Shortstop + + + Spina + + + Cripto + + + Crosstie + + + Roach + + + Beccuccio + + + Rod + + + Stud + + + Screw + + + Jiggers + + + Miser + + + Brainiac + + + Zanna + + + Artiglio + + + Bone + + + Pugno + + + Nervo + + + Scheletro + + + Coda + + + Crest + + + Bruise + + + Gray + + + Tightwad + + + Hacker + + + Khan + + + Athlete + + + Pinocchio + + + Witcher + + + Voldemort + + + Omero + + + Dragon + + + Thunder + + + Gioconda + + + Squint + + + Noodle + + + Tin Man + + + Icaro + + + Casanova + + + Koschei + + + Cesare + + + Kolobok + + + Kutuzov + + + Peewee + + + Bonaparte + + + Thinker + + + Nelson + + + Nettuno + + + Oscar + + + Prometeo + + + Pushkin + + + Venerd + + + Rambo + + + Roquefort + + + Tour Guide + + + Terminator + + + Dork + + + Ink + + + Cesare + + + Chapaev + + + Chapai + + + Chebur + + + Cheburashka + + + Chingachgook + + + Genghis + + + Shtirlitz + + + Banana + + + Hawk + + + Brownie + + + Loaf + + + Papa + + + Spike + + + Homeboy + + + Bulkin + + + Bulldozer + + + Tampone + + + Bombolo + + + Silenzioso + + + Saber + + + Gangrene + + + Ibrido + + + Glitch + + + Drummer + + + Highlander + + + Degree + + + Gremlin + + + Antelope + + + Uncle + + + Fubar + + + Gelido + + + Pariah + + + Kagor + + + Cavolo + + + Carburo + + + Aspic + + + Trump + + + Commodoro + + + Re + + + Joint + + + Sock + + + Fiend + + + Ghiaccio + + + Goblin + + + Moro + + + Madera + + + Spaghetti + + + Maestro + + + Mutante + + + Reefer + + + Flop + + + Pond + + + Cripple + + + P.I. + + + Ravioli + + + Chili + + + Strap + + + Doughboy + + + Bolla + + + Grater + + + Zeppola + + + Ryazansky + + + Moonshine + + + Cripple + + + Morel + + + Biscuit + + + Tabacco + + + Cartellino + + + Ace + + + Zucchini + + + Ghoul + + + Trombone + + + Spettro + + + Stunt + + + Gray + + + Kicker + + + Coma + + + Skew + + + Maldestro + + + Spine + + + Crooked + + + Rainbow + + + Shifter + + + Bush + + + Toupee + + + Siniy + + + Brown Nose + + + Fierce + + + Peewee + + + Stiff + + + Necro + + + Local + + + Grave + + + Slime + + + Champ + + + Narciso + + + Black + + + Fiacco + + + Perdente + + + Goofy + + + Nuisance + + + Crybaby + + + Monocle + + + Rascal + + + Deadbeat + + + Paranoia + + + Hotshot + + + Teflon + + + Carogna + + + Turd + + + Defunct + + + Virtuoso + + + Simpleton + + + Psycho + + + Workhorse + + + Torn + + + Grabber + + + Harsh + + diff --git a/gamedata/configs/text/ita/st_items_artefacts.xml b/gamedata/configs/text/ita/st_items_artefacts.xml new file mode 100644 index 0000000..8c9f7bd --- /dev/null +++ b/gamedata/configs/text/ita/st_items_artefacts.xml @@ -0,0 +1,153 @@ + + + + Un composto di numerose formazioni organiche cave, questo manufatto emette una sostanza gassosa che pu neutralizzare le particelle radioattive nel corpo senza danneggiarlo. Questa sua efficacia lo rende uno dei manufatti pi ricercati. + + + Bolla + + + Una formazione rossastra di residui animali, geologici e vegetali, compressi e fossilizzati. Neutralizza parzialmente i veleni chimici. Emette radiazioni. + + + Sangue di pietra + + + Questo manufatto si forma in zone anomale dove l'attivit termica intensa. Consuma attivamente il calore in eccesso, restando sempre fresco al tatto. Emette radiazioni. + + + Questo manufatto composto da un tipo di pietra simile al granito deformata da un'intensa forza gravitazionale, che d origine a una formazione cristallina che la scienza non ha ancora saputo spiegare. Pu fornire una protezione limitata contro le psico-emissioni. Emette radiazioni. + + + Fiore di pietra + + + Cristallo + + + Questo manufatto composto da elementi elettrostatici, ma gli scienziati devono ancora stabilire le precise condizioni fisiche richieste per la sua formazione. Molto popolare nella Zona e apprezzato da residenti e visitatori per le sue propriet energizzanti, l'uso prolungato pu tuttavia affaticare il corpo. Emette radiazioni. + + + Batteria + + + Un tempo questo manufatto era considerata spazzatura priva di qualsiasi utilit. Tuttavia, di recente gli scienziati hanno scoperto che, se tenuto a costante contatto con il corpo, ha un eccellente effetto stimolante sul sistema nervoso. Emette radiazioni. + + + Conchiglia + + + La natura di questo manufatto ancora un enigma per gli scienziati, per noto che le emissioni prodotte dagli impulsi delle sezioni pi spesse accelerano la coagulazione del sangue nelle ferite aperte, formando una sorta di crosta protettiva. Uno degli effetti pi importanti di questo manufatto l'aumento della velocit di guarigione delle ferite. Emette radiazioni. + + + Spirale di perle + + + Questo manufatto elettrostatico in grado di assorbire, e successivamente scaricare, grandi quantit di elettricit. in grado di proteggere l'utilizzatore da scariche elettriche fino a 5.000 volt. Emette radiazioni. + + + Lampo + + + Questo straordinario manufatto elettrostatico pu risuonare sotto l'influsso di psico-onde. Gli stalker hanno imparato a perfezionarlo in modo da farlo risuonare nella fase opposta a quella della principale fonte di emissioni, riducendone o annullandone completamente gli effetti. Emette radiazioni. + + + Chiaro di luna + + + Un "brillante" rappresentante della famiglia dei manufatti elettrostatici, in grado di ridurre le fluttuazioni nella densit dei campi elettrici. Emette radiazioni. + + + Scintilla + + + Questo manufatto, che ricorda la forma di un occhio umano, aumenta in modo considerevole il metabolismo del corpo, accelerando la guarigione delle ferite. Gli stalker pi esperti sostengono che porti anche fortuna. Emette radiazioni. + + + Occhio + + + Questo manufatto si forma in zone con intensa attivit termica. Emette potenti emissioni a infrarossi che intensificano i processi metabolici e accelerano la guarigione delle ferite. un manufatto estremamente raro e quindi altrettanto prezioso. Emette radiazioni. + + + Fiamma + + + Pur essendo un manufatto termico, lo si pu tenere in mano senza rischiare di bruciarsi. tenuto in grande considerazione per la sua capacit di mantenere la temperatura di 75 F in una zona circoscritta, indipendentemente dall'ambiente circostante. Emette radiazioni. + + + Ardente + + + Un manufatto relativamente raro che si forma nelle zone contaminate da sostanze chimiche e considerato molto utile per la sua capacit di guarire rapidamente ogni tipo di ferita. Per motivi ignoti, gli scienziati hanno diffuso delle voci tra gli stalker secondo cui il manufatto pu interagire con il codice genetico dell'utilizzatore. Emette radiazioni. + + + Kolobok + + + Lucciola + + + Risultato di un'interazione tra numerosi campi gravitazionali, il Pesce rosso produce a sua volta un potente campo gravitazionale che rende gli oggetti nel raggio d'azione leggeri come una piuma. Si dimostra particolarmente utile per ridurre il peso dell'equipaggiamento trasportato, e questo spiega la sua grande popolarit. Emette radiazioni. + + + Pesce rosso + + + Manufatto formato da sostanze metalliche esposte a campi gravitazionali prolungati. Ci lo rende in grado di generare un campo antigravitazionale che pu ridurre il peso dello zaino degli stalker. Emette radiazioni. + + + Gravi + + + A prima vista, questo manufatto somiglia al Kolobok. Alcuni sostengono che si tratti in effetti del Kolobok, ma con le propriet di base amplificate dall'esposizione a un potente campo elettrico. Grazie alle sue caratteristiche uniche, questo manufatto pu aumentare sensibilmente il tono muscolare dell'utilizzatore. Emette radiazioni. + + + Fiocco di neve + + + Questo manufatto gravitazionale attrae e assorbe le particelle radioattive, riducendo gli effetti delle radiazioni sul corpo. Molto comune nella Zona e usato altrove in modo "non ufficiale" per curare le contaminazioni pi gravi, ma solo in casi di estrema necessit. + + + Medusa + + + Questo manufatto organico formato da tessuti animali mutati e deformati. Se posizionato in un'area contaminata da sostanze chimiche, pu trasformare le particelle chimiche aeree in una sorta di fluido mucoso. Emette radiazioni. + + + Pezzo di carne + + + Questo manufatto luminoso pu generare un piccolo campo localizzato a gravit ridotta. Molto usato dagli stalker insieme al Gravi, un manufatto con propriet simili, per aumentare il carico massimo trasportabile. Emette radiazioni. + + + Stella della notte + + + Un manufatto organico unico, dalle propriet altrettanto uniche. Riesce ad aumentare la velocit di guarigione del corpo da ogni tipo di danno, senza accelerare l'accumulo di tossine. Grazie ai suoi effetti e all'aspetto accattivante, questo manufatto un prezioso oggetto da collezione. Emette radiazioni. + + + Anima + + + Questo manufatto dalla forma bizzarra compare in luoghi dove l'attivit gravitazionale pi intensa. Funziona come una spugna che assorbe elementi radioattivi, proteggendo sia dalle radiazioni esterne sia dalle particelle radioattive che hanno gi raggiunto il corpo. + + + Contorto + + + Bussola + + + Un manufatto raro. Sono anni che non se ne trovava una. Pu individuare degli spazi sicuri tra i campi di anomalie. Si ritiene che consenta di farci uscire del tutto illesi anche dai campi di anomalie pi complessi. A ogni modo, pochi sanno come usarla correttamente. + + + Cuore dell'Oasi + + + Questo manufatto, rinvenuto al centro della leggendaria Oasi, sembra essere una pianta cristallizzata che ha acquisito le propriet curative dell'Oasi stessa. A differenza di quest'ultima, tuttavia, emette intense radiazioni. + + + Questo manufatto interagisce con campi di natura sconosciuta, accelerando notevolmente la rigenerazione di tessuti e organi e normalizzando i processi metabolici. Pu rimettere in piedi in pochi secondi uno stalker ferito gravemente, ma un manufatto estremamente raro. Emette radiazioni. + + diff --git a/gamedata/configs/text/ita/st_items_equipment.xml b/gamedata/configs/text/ita/st_items_equipment.xml new file mode 100644 index 0000000..c1afea6 --- /dev/null +++ b/gamedata/configs/text/ita/st_items_equipment.xml @@ -0,0 +1,156 @@ + + + + Droghe anti-radiazioni + + + Le Droghe anti-radiazioni a base di mexamin sono comuni nella Zona. Causano la contrazione dei vasi sanguigni periferici e la riduzione dei livelli di ossigeno, in modo da curare e prevenire l'esposizione alle radiazioni. Non hanno gravi effetti collaterali, anche se in alcuni casi possono provocare nausea, vertigini, crampi e dolori addominali. + + + Fasciatura + + + Una normale fascia elastica usata per bloccare le emorragie e prevenire l'infezione delle ferite. Nei casi meno gravi, basta applicare la fasciatura sulla ferita; in caso di emorragie arteriose, necessario fasciare accuratamente l'area interessata. + + + Binocolo militare standard con un fattore di ingrandimento massimo x7.5. Particolarmente utile nella Zona per osservare gli oggetti pi distanti. + + + Binocolo + + + Pane + + + Nella Zona non sono mai stati trovati dei fornai, ma questo pane non contaminato n radioattivo. Anzi, sembra fresco e commestibile. Finora non sono state segnalate lamentele. + + + Barattolo "Colazione del turista" + + + Pare che questo cibo in scatola sia stato rubato dagli stalker in un deposito di razioni militari. Senza alcun tipo di etichetta, per, difficile stabilirlo con certezza. Se ci si attiene alla data di scadenza, dovrebbe essere ancora commestibile. + + + Rilevatore "Eco" + + + Questo rilevatore di attivit anomale piuttosto antiquato emette un segnale d'allarme quando particelle anomale entrano in una camera speciale, nei pressi di un'anomalia. Inoltre in grado di rilevare la presenza di manufatti e misurare la distanza dal pi vicino, indicata dalla frequenza dei segnali acustici emessi dallo strumento. Per attivare la modalit di ricerca dei manufatti basta sollevare il coperchio anteriore. Il rilevatore "Eco" un dispositivo rudimentale, quindi pu rilevare la presenza solo dei manufatti pi comuni. + + + Rilevatore "Orso" + + + Rilevatore "Veles" + + + Uno scanner scientifico di nuova generazione. Grazie alle sue tre camere di rilevazione, la posizione dei manufatti viene indicata su uno schermo speciale. In posizione chiusa, lo strumento registra solo radiazioni e anomalie. Per attivare la modalit di ricerca dei manufatti basta aprire il display LED anteriore. In questa modalit, il rilevatore pu individuare tutti i manufatti noti alla scienza. + + + Rilevatore sperimentale "Svarog" + + + Prototipo di uno scanner di anomalie potenziato. Possiede un programma integrato in grado identificare aree statiche che presentano attivit anomale registrate nel database, mantenendo la capacit di individuare i manufatti. La posizione delle aree anomale e dei manufatti viene indicata su uno schermo speciale. La modalit di ricerca dei manufatti, attivabile aprendo il display LED anteriore, stata modificata per rilevare anche le formazioni anomale attualmente sconosciute alla scienza. + + + Una torcia standard da applicare in testa. Utile per gli stalker rimasti bloccati all'esterno dopo il tramonto, ma potrebbe attirare guai se usata con scarsa prudenza. + + + Torcia + + + Anabiotico + + + Antidoto + + + L'antitossina IP2 una sostanza complessa che include numerosi antidoti, come la metoclopramide, la piridossina, la tiamina, la ribossina e altri composti farmaceutici. Viene utilizzata per iniettare nel flusso sanguigno una vasta gamma di antibiotici che neutralizzano i veleni naturali, insieme a diversi assorbitori di veleni sintetici. L'antitossina IP2 non molto comune nella Zona, dato che gli stalker preferiscono usare maschere antigas e tute protettive, ma alcuni conservano gelosamente scorte di questo antidoto. Gli effetti durano molto a lungo. + + + Ercole + + + Vinca + + + Vikasol di fabbricazione ucraina, equivalente artificiale della vitamina K. La funzione principale di questa sostanza accelerare la coagulazione del sangue. Molto richiesto dagli stalker per rimarginare in fretta le ferite pi gravi e le lacerazioni inflitte dai mutanti. Gli effetti durano molto a lungo. + + + Psico-bloccante + + + Una sostanza che blocca gli impulsi nervosi "a valanga". La somministrazione provoca l'annullamento temporaneo di qualsiasi sensazione. Utilizzato esclusivamente nella Zona per contrastare gli effetti degli psico-campi anomali. Gli effetti durano molto a lungo. + + + Radioprotettore + + + Bevanda energetica + + + Usata spesso dagli stalker durante i lunghi viaggi in cui non ci si pu concedere delle soste. La bevanda contiene carboidrati facilmente digeribili e sostanze che stimolano il rilascio di adrenalina nel flusso sanguigno. + + + Una semplice chitarra. + + + Chitarra + + + Salsiccia dietetica + + + Nel bene o nel male, spesso questa salsiccia (un misto di pollo e surrogato di soia) costituisce la colazione, il pranzo e la cena degli stalker. Praticamente non ha una data di scadenza, per via dell'alto contenuto di conservanti. + + + Kit di pronto soccorso + + + Kit di pronto soccorso militare + + + Un kit di pronto soccorso speciale per fornire assistenza medica ai feriti di guerra. Include coagulanti a base di menadione, antidolorifici, antibiotici e immunostimolanti, oltre a un kit per rimuovere proiettili e frammenti dal corpo. Questo kit di pronto soccorso fornito come standard al personale militare e talvolta viene utilizzato dalle forze della Duty. + + + Un kit di pronto soccorso generico e monouso. Utile per trattare vari tipi di ferite, ustioni termiche, ustioni chimiche e i pi comuni sintomi da avvelenamento. molto popolare tra gli stalker. + + + Kit di pronto soccorso scientifico + + + Un kit di pronto soccorso progettato specificamente per la Zona. Contiene prodotti per curare le ferite, prevenire gli sviluppi della contaminazione da radiazioni e ridurre l'accumulo di radiazioni nel corpo. A differenza degli altri kit di pronto soccorso, include anche vikasol, batilol e nafazolina. + + + Nessun dato presente. + + + PDA + + + Vodka "Cosacchi" + + + Prodotta dalla GSC. Si beve volentieri e riduce in modo significativo gli effetti delle radiazioni. Da consumare con moderazione. + + + Questo rilevatore di anomalie di ultima generazione pu localizzare formazioni anomale e ha un pannello a diodi a colori, che non solo ti indica la direzione in cui si trovano i manufatti, ma calcola anche la distanza. Per passare alla modalit ricerca manufatti, apri il pannello frontale del dispositivo. Purtroppo, programmato con una lista di manufatti piuttosto datata. + + + Una sostanza sperimentale sviluppata dal professor Ozersky per le squadre di ricerca scientifica che lavorano nella Zona. L'ingrediente principale la tetradotossina, nota anche come "polvere zombi", che provoca il blocco totale del sistema nervoso centrale per consentire di sopravvivere all'esposizione diretta alle emissioni. La sostanza non stata ancora sperimentata clinicamente o sul campo, e ci solleva qualche dubbio sulla sua efficacia e sui possibili effetti collaterali. + + + Bolt + + + Il componente principale di questo prodotto un androgeno anabolico, uno steroide artificiale, la cui composizione chimica ricorda il testosterone. Viene spesso usato dagli stalker durante i lunghi attacchi per ridurre l'affaticamento muscolare. Aumenta notevolmente la capacit di trasportare pesi. Gli effetti della droga sono di lunga durata. + + + L'indralina B190 un radioprotettore incluso nei kit medici forniti al personale degli impianti nucleari. Viene utilizzata nella Zona al posto del cloridato di cistamina PC1, eccessivamente tossico e potenzialmente letale se usato troppo spesso. Riduce gli effetti delle radiazioni gamma sui tessuti viventi. Va assunta prima dell'esposizione, dato che non agisce immediatamente. Gli effetti durano molto a lungo. + + + Armonica + + + Per gli amanti del blues. + + diff --git a/gamedata/configs/text/ita/st_items_outfit.xml b/gamedata/configs/text/ita/st_items_outfit.xml new file mode 100644 index 0000000..07a89ec --- /dev/null +++ b/gamedata/configs/text/ita/st_items_outfit.xml @@ -0,0 +1,117 @@ + + + + Armatura CS-3a + + + Armatura Duty PSZ-9d + + + Protezione universale PS5-M + + + Esoscheletro + + + Tuta corazzata Bulat + + + Questo esoscheletro fornisce un'eccellente protezione contro i proiettili e i danni da frammentazione, limitando per la mobilit. Vulnerabile ai proiettili perforanti. + + + Esoscheletro + + + Una tuta corazzata militare progettata per le operazioni d'assalto. Fornisce una protezione straordinaria contro i proiettili blindati e i danni da frammentazione, senza ridurre la mobilit. Vulnerabile ai proiettili perforanti. + + + Tuta corazzata militare + + + Un normale impermeabile nero. Non ha funzioni particolari, a parte quelle di scaldare il corpo dell'utilizzatore di notte e di proteggerlo dai morsi dei cani ciechi. Pur non essendo particolarmente comodo, spesso viene utilizzato dai banditi della Zona per le sue capacit di mimetizzazione al buio o, semplicemente, per il suo aspetto "da duri". + + + Impermeabile in pelle + + + Tuta SEVA + + + Tuta corazzata Berill-5M + + + Casco Sphere M12 + + + Un casco in alluminio/titanio con un rivestimento in tessuto fornito di tasche per parti di armatura aggiuntive e una maschera corazzata. Di norma viene usato insieme all'armatura Spetsnaz PSZ. Molto popolare nella Zona grazie al suo respiratore e al dispositivo di prima generazione per la visione notturna, garantisce il livello di protezione massimo per la zona della testa. Include degli scomparti elettronici. + + + Casco d'acciaio + + + Un casco d'acciaio terribilmente obsoleto e privo di qualsiasi miglioria. Non fornisce alcuna protezione contro le radiazioni o le anomalie, ma pu deviare i proiettili. Non mai stato particolarmente popolare nella Zona, se non durante i brevi conflitti armati tra le fazioni. + + + Casco schermato + + + Un casco leggero con un visore ermetico per proteggersi dalle anomalie. A giudicare dal suo aspetto, stato prodotto dagli stessi istituti di ricerca responsabili della tuta SEVA. Il suo utilizzo ideale in combinazione con le tute militari per le operazioni in aree altamente anomale. + + + Maschera antigas + + + Una normale maschera antigas in plastica e gomma, utilizzata per filtrare l'aria da sostanze tossiche e particelle radioattive. Utilizzata comunemente da reclute e veterani di tutte le fazioni, per via della sua funzionalit universale. Non fornisce alcuna protezione fisica. + + + Casco tattico + + + Modello di produzione occidentale del tutto privo di camuffamento, arrivato inspiegabilmente nella Zona. I sistemi di comunicazione satellitare e i diversi scanner di questo casco, non installati nella versione della Zona, forniscono al leader della squadra un notevole vantaggio strategico sulle forze nemiche. composto da varie piastre in kevlar e alcuni elementi corazzati che proteggono i componenti elettronici. Include un respiratore e un dispositivo di prima generazione per la visione notturna. + + + Tuta "Alba" + + + Tuta "Guardia della Freedom" + + + Una tuta da stalker leggera realizzata dagli artigiani della Freedom. Il tessuto trattato con una soluzione speciale chiamata "Orizzonte", sviluppata dalla fazione con esperimenti pi o meno casuali per aumentare la resistenza alle anomalie. Come la tuta "Alba", la tuta "Vento della Freedom" include un'armatura integrata e un contenitore di manufatti. + + + Tuta "Vento della Freedom" + + + Questa versione moderna della tuta della Duty particolarmente adatta alle reclute, abituate alle protezioni leggere. A differenza del modello PSZ, questa tuta fornisce una buona protezione contro le anomalie. Non pu essere modificata con un contenitore di manufatti, ma possibile potenziarla con un sistema di supporto da battaglia. + + + Questa tuta corazzata militare stata progettata per gli assalti nelle aree anomale. Comprende una tuta corazzata pesante PSZ-12p, una tuta di compensazione e un rivestimento protettivo contro le anomalie. Fornisce una protezione eccellente contro i proiettili e i danni da frammentazione, senza ridurre eccessivamente la mobilit. Non include un contenitore di manufatti. + + + Questa tuta, progettata per condurre ricerche nella Zona, combina un modulo respiratorio a ciclo chiuso e un rivestimento isolante esterno, in modo da offrire una protezione eccellente. Per via della sua scarsa resistenza agli impatti fisici, la tuta non offre una difesa efficace contro i proiettili e i danni da frammentazione. Include un contenitore di manufatti. + + + Questa tuta, prodotta da uno degli istituti di ricerca di Kiev, un'ottima alternativa alle altre tute da stalker "fatte in casa". L'armatura pu resistere solo ai colpi di pistola, ma il sistema di protezione contro anomalie e radiazioni non ha rivali. Pu essere migliorata e vanta due contenitori di manufatti. Ci la rende una delle tute pi ricercate dagli stalker. + + + Questo comprende la tuta militare serie PS5 con uno sputter al berillio modificato per essere usato nella Zona. Pensata per le operazioni d'assalto nelle aree altamente radioattive, inefficace in aree particolarmente anomale. La tuta viene fornita agli stalker dai militari in cambio di bottini. Non include un contenitore di manufatti. + + + Una tuta da stalker "fai-da-te" che unisce un doppio strato di tessuto gommato rivestito in plexiglas a un'armatura integrata. Pur non essendo in grado di proteggere l'utilizzatore nemmeno dai colpi di pistola, la tuta molto popolare grazie al suo prezzo contenuto e alle potenziali modifiche apportabili. Include un contenitore di manufatti. + + + Questa tuta da stalker dispone di un'armatura migliorata, creata dagli artigiani della Freedom: un buon compromesso tra combattimento e protezione dalle anomalie. L'armatura integrata resiste ai colpi di pistola e comprende un rivestimento corazzato e piastre in kevlar. La tuta usa un composto denominato "Sovrano" contro le anomalie. Include un contenitore di manufatti. + + + Il modello originario della tuta Duty la Spetsnaz PSZ-9, modificata per la Zona. La tuta resiste ai colpi di pistola, ma questo livello di protezione si paga con scarsa manovrabilit e protezione dalle anomalie pressoch inesistente. La tuta non pu essere modificata con un contenitore per manufatti, ma pu essere potenziata con un sistema di supporto da battaglia. + + + Un tempo usata dalle squadre d'assalto Clear Sky, dopo l'eliminazione della fazione questa armatura serve a ricordare che persino un'eccellente tuta non pu garantire la tua sicurezza in questa parte di mondo. L'armatura in grado di resistere ai colpi di pistola e fornire una buona protezione dalle anomalie. Dotata di un contenitore di manufatti. + + + Un campione sperimentale di esoscheletro militare, mai entrato in produzione in serie per via dei costi e di alcuni difetti. Nonostante questo, ancora richiesto per la sua capacit di reggere tutta l'attrezzatura trasportata, e perci ne vengono realizzati dei piccoli quantitativi negli stabilimenti all'esterno dei confini ucraini. Dotato di un contenitore per manufatti. + + + Tuta SEVA + + diff --git a/gamedata/configs/text/ita/st_items_quest.xml b/gamedata/configs/text/ita/st_items_quest.xml new file mode 100644 index 0000000..18212bd --- /dev/null +++ b/gamedata/configs/text/ita/st_items_quest.xml @@ -0,0 +1,369 @@ + + + + Documenti con annotazioni + + + I documenti affermano che in base a un ordine del Dipartimento 1, in seguito alla chiusura del blocco di trasporto, il sottopasso di Pripyat 1 stato riempito di anidride carbonica mista a un certo additivo chimico. Di conseguenza, a tutto il personale stato ordinato di indossare tute per la protezione chimica con moduli respiratori a ciclo chiuso. + + + Lettera sulla consegna dell'oggetto 62 + + + A causa delle attivit anomale, il trasporto dell'oggetto 62 in campo aperto non possibile. Usare il sottopasso di Pripyat 1 per la consegna. Il piano per la consegna e la successiva chiusura del sottopasso stato inoltrato al Dipartimento 1. + + + Cartella con l'ordine + + + I documenti riguardano l'evacuazione del complesso di produzione dallo stabilimento Jupiter ai laboratori sotterranei. La questione deve essere stata discussa nella sezione dei laboratori. + + + Programma delle consegne + + + Programma delle consegne dell'oggetto 62: 14/07 20 unit (1 danneggiata); 21/07 32 unit (2 danneggiate); 28/07 26 unit (1 danneggiata). La nota di consegna riguardante le perdite stata inviata all'amministrazione dello stabilimento, e in copia all'officina riparazioni. + + + File notebook + + + Durante la riunione stata presa la seguente decisione: il reparto consegne deve concentrarsi sull'evacuazione del complesso di produzione dell'oggetto 62. + + + Registro del turno + + + ...18:30 Chiusura ermetica di tutte le sezioni del sottopasso P-1 completata. 19:00 Chiusura ermetica delle porte del blocco ferroviario completata. stato necessario saldare le porte. 19:45 Porte del blocco di trasporto chiuse. L'utilizzo del meccanismo della porta ha richiesto l'attivazione del generatore ausiliario, poich era gi stata tagliata la corrente al sottopasso. 20:00 L'officina chimica ha avviato la diffusione del gas nel sottopasso. 22:00 Chiusura del sottopasso completata. Tutti i documenti inviati al Dipartimento 1. + + + Schemi tecnici del sottopasso + + + Schemi tecnici del sottopasso di Pripyat 1. Mostrano che il sottopasso sotto la citt di Pripyat. Il documento presenta varie annotazioni: 1. Chiudere porte blocco di trasporto. 2. Usare gas officina chimica per chiudere sottopasso. + + + Isolante modificato + + + Questo era un isolante, ma ora sembra pi un manufatto instabile. Deve essere la fonte delle psico-emissioni intermittenti. + + + Barattolo di colofonia + + + Un barattolo di colofonia usato per le saldature. Piuttosto raro nella Zona, e questo spiega perch i tecnici locali usano spesso il nastro adesivo per riparare le attrezzature. + + + Gruppo di condensatori + + + I condensatori sono dei componenti elettrici di base. Non sono molto rari nella Zona, essendo utilizzati per migliorare i dispositivi pi sofisticati, ma in genere questo potenziale non richiesto. + + + Base di textolite + + + La textolite uno dei componenti di base dei circuiti stampati. Le sensazioni provate da un tecnico radioamatore che tocca una base di textolite ancora "vergine" sono simili a quelle di uno scrittore davanti a una pagina bianca. + + + Scatola di transistor + + + Semiconduttori che generano, trasformano e amplificano le oscillazioni elettriche. I transistor sono il sogno di ogni tecnico radio della Zona. + + + Rocchetto di filo di rame + + + Il filo di rame un eccellente conduttore e allo stesso tempo una preziosa fonte di metallo. Ecco perch molto raro nella Zona. Tutte le scorte di filo di rame sono state fuse e consegnate ai centri di riciclaggio negli anni '90. + + + Scanner per la rilevazione di mutanti + + + Basato su un normale scanner di attivit anomale, questo dispositivo include un rilevatore di mutanti a corto raggio e uno strumento per la memorizzazione dei risultati. equipaggiato con un sistema di disattivazione automatica che entra in azione quando stata raccolta una certa quantit di dati. + + + Documenti amministrativi + + + Una cartella di documenti che contengono informazioni puramente amministrative. Affermano che tutte le documentazioni tecniche relative all'oggetto 62 sono state trasferite all'officina collaudi in seguito a un ordine del laboratorio centrale. + + + PDA di Black + + + C' un messaggio particolarmente interessante. Il mittente un certo Jackal e il testo del messaggio il seguente: "Il mio uomo all'istituto di ricerca far in modo che sia tu a guidare la spedizione. Dovr ingaggiare i tuoi ragazzi per difendere il bunker. Questo dovrebbe facilitarti le cose. Ricorda che il cliente esige che QUALSIASI informazione sull'operazione degli oggetti con designazione X non raggiunga gli scienziati. In caso contrario, non potremo lasciare la Zona. Non deludermi, Black". + + + Scatola nera + + + La scatola nera di Stingray 1 sopravvissuta allo schianto. Dovrebbe contenere dettagli sugli ultimi istanti di volo, anche se in formato criptato. + + + Esplosivi al plastico militari con un timer di 5 secondi. + + + Esplosivi con timer + + + Ruota modificata + + + PDA di Snag + + + Il PDA contiene una mappa con un segno vicino alla sotto-stazione, sicuramente un nascondiglio, e un paio di foto erotiche. Niente di speciale. + + + PDA del bandito + + + L'ultimo messaggio sul PDA il seguente: "Cattura quel bastardo di Snag e portalo qui da me. Faremo una bella chiacchierata. Non mi interessa sapere dov'. Trovalo e basta. Se si oppone, dagli una lezione. Sultan". + + + Questo PDA contiene dettagli sui clienti di Morgan, oltre alle coordinate del magazzino segreto della Duty da cui ha preso le armi. In seguito Morgan ha venduto le armi ai mercenari ed entrato in contatto con un certo Sultan. Per confondere le acque, Morgan ha poi deciso di comunicare la posizione del magazzino alla Freedom. Vulture, il suo complice, avrebbe dovuto portare queste informazioni. Il PDA accenna anche a un sensore che solo Morgan pu disattivare e che allerter la Duty se il nascondiglio viene aperto. Queste informazioni dovrebbero interessare molto sia alla Duty sia alla Freedom. + + + PDA di Morgan + + + C' un messaggio sul retro di un vecchio documento: "Prendo le mie cose, Ghost. Grazie per il fucile d'assalto, ne avr bisogno. In cambio ti lascio un po' di medicinali del dottore. Sono riuscito a liberarmi del mercenario che avevo alle costole, quindi non mi serviranno... spero. Ora devo incontrarmi con Fang. riuscito a montare il decodificatore. Troviamoci al solito posto, se puoi. Strelok". + + + Messaggio per Ghost + + + C' un messaggio su un foglio a quadretti: "Strelok, ho lasciato l'altro decodificatore nel nostro nascondiglio di Pripyat, per sicurezza. Io e Ghost andremo all'Agroprom, quindi lasceremo qui le munizioni extra. Prendile pure. Buona caccia! Fang". + + + Messaggio per Strelok + + + C' un messaggio sul retro di un vecchio documento: "Fang, non posso pi aspettarti. Ho un'intera squadra alle calcagna. Raggiunger il sarcofago da solo. Lascer qui la mia arma fortunata, tanto rimasta senza colpi. Se non dovessi tornare, dalla a Ghost. Ha bisogno di mille cure, ma un'arma che non tradisce mai. Stammi bene. Strelok". + + + Messaggio per Fang + + + Un modulo di memoria dell'UAV. Novikov riuscito a sbloccarlo, consentendoti di accedere alle informazioni raccolte dall'UAV. Tra le altre cose, contiene le coordinate di tre radiofari. + + + Modulo di memoria (sbloccato) + + + Un modulo di memoria dell'UAV. Nonostante lo schianto, il modulo ancora pienamente operativo. Peccato sia bloccato. + + + Modulo di memoria (bloccato) + + + Un vecchio foglio con i turni di guardia e i numeri 1421 nella parte inferiore. Sopra i vecchi testi stato scritto il seguente messaggio con un pennarello: "Tenente V.I. Sokolov. Dopo lo schianto dell'elicottero ho raggiunto il punto di evacuazione B205. Dopo due giorni di inutile attesa, ritengo che restare in questa posizione sia rischioso. Perci ho deciso di lasciare B205 per procedere verso il laboratorio mobile della spedizione scientifica. Il laboratorio situato a nordest del punto di evacuazione". + + + Messaggio di Sokolov + + + Una pianta che faceva parte di un boschetto, parzialmente trasformato da un'attivit anomala. Il boschetto ha reagito aggressivamente all'intrusione, ma per ora la pianta non sembra pericolosa. + + + Pianta anomala + + + L'ultimo messaggio ricevuto sul PDA da parte di Morgan. In pratica un contratto per l'assassinio di uno stalker chiamato Degtyarev. Il messaggio ha diverse fotografie allegate. Le istruzioni finali di Morgan chiedono di eliminare il messaggio, una volta letto. + + + PDA del mercenario + + + Questo strumento include un rilevatore di manufatti, una batteria e una potente trasmittente. Pu analizzare le anomalie per determinare il numero e il tipo di manufatti che compaiono. Tutte queste informazioni vengono poi inviate automaticamente al bunker degli scienziati. + + + Scanner di anomalie + + + I dati pi recenti sul PDA riguardano una registrazione audio:\n"...Da qualsiasi parte andiamo, finiamo sempre nello stesso punto. Non riesco ad abituarmi a questa nebbia... strano che Chepurny sia scomparso senza lasciare tracce: che abbia trovato un'uscita?\n...Sesto giorno... Abbiamo finito l'acqua. Il colonnello impazzito: ha ucciso due persone a sangue freddo e poi si suicidato... cos sono rimasto solo, in questa dannata anomalia... se non avessi fatto in modo che i contatti con il quartier generale si interrompessero, avrebbero potuto salvarci... e la Duty non sarebbe mai esistita. Chiss come sarebbero andate le cose... Ah, al diavolo. Quel Capitano Tachenko morto molto tempo fa... e il Generale Tachenko della Duty lo seguir presto... giusto che sia cos... credo...".\nLa registrazione termina con un colpo d'arma da fuoco. + + + PDA del Generale Tachenko + + + Un manuale che spiega come usare l'oggetto 62. Le istruzioni sottolineano che non sono necessarie regolazioni per la traiettoria del proiettile o il vento, non essendo rilevanti all'interno del raggio d'azione dell'arma.\nQuesti documenti non devono finire in altre mani, poich sarebbero di grande interesse per gli analisti dell'USS. + + + Manuale per l'oggetto 62 + + + Il notebook contiene la descrizione dettagliata di un esperimento sull'effetto di uno psico-campo su un oggetto in un altro emisfero. Un gruppo di scienziati ai Caraibi ha ricevuto il segnale, anche se distorto. Il segnale risultava alterato in modo anomalo, come se fosse stato corretto da qualcuno. Una possibile spiegazione potrebbe essere che la teoria della noosfera corretta, e che le modifiche siano state effettuate dalla noosfera stessa.\nQuesti documenti non devono finire in altre mani, poich sarebbero di grande interesse per gli analisti dell'USS. + + + Notebook con la descrizione di un esperimento + + + I documenti descrivono le caratteristiche tecniche dell'antenna e la loro variazione rispetto ai valori previsti. Un'annotazione sul retro indica che questi documenti sono stati preparati nel laboratorio X10.\nQuesti documenti non devono finire in altre mani, poich sarebbero di grande interesse per gli analisti dell'USS. + + + Emettitore "Arcobaleno" Dati tecnici principali + + + I documenti riguardano una delle scoperte collaterali della ricerca, cio la capacit delle creature viventi di generare psico-emissioni. Nell'ambito della ricerca condotta nel laboratorio X16 stato creato un emettitore biologico, essenzialmente un cervello gigante.\nQuesti documenti non devono finire in altre mani, poich sarebbero di grande interesse per gli analisti dell'USS. + + + Documenti sulla ricerca + + + Il rapporto descrive lo studio dei campioni biologici inviati dal laboratorio X18, sottoposti agli effetti di campi informazionali di varia intensit. Il rapporto espone meticolosamente la mutazione degli esseri viventi in seguito all'esposizione alle emissioni.\nQuesti documenti non devono finire in altre mani, poich sarebbero di grande interesse per gli analisti dell'USS. + + + Rapporto sullo studio dei campioni + + + Il documento riguarda il trasferimento di una squadra scientifica e di tutti i materiali in un altro laboratorio denominato X7, che verr usato per effettuare ricerche sull'influenza della noosfera. La squadra scientifica include: N.A. Lebedev, E.F. Kalancha e V.I. Suslov.\nQuesti documenti non devono finire in altre mani, poich sarebbero di grande interesse per gli analisti dell'USS. + + + Ordine di trasferimento + + + L'ultima annotazione sul PDA la seguente: "Ho trovato il generatore di emergenza al sesto piano, il piano tecnico. Ci sono volute due ore per rimetterlo in funzione. Io vorrei accenderlo, ma Serbin mi ha ordinato di attendere finch non mander qualcuno". + + + PDA di Barchuk + + + Una tessera magnetica rossa con la sigla "X8". + + + Tessera X8 rossa + + + Il PDA contiene molte annotazioni prive di senso, ma una sembra interessante: "Il Monolite sta comunicando con il destinatario del messaggio, ordinandogli di raccogliere munizioni extra e conservarle in luoghi ignoti ai miscredenti. Queste localit devono essere contrassegnate con il simbolo del Monolite. In caso di necessit, coloro che sentono il Monolite potranno beneficiare della sua saggezza... Ho comunicato la volont del Monolite ai miei fratelli, dicendo loro dove mettere le munizioni...". + + + PDA di un combattente Monolith + + + Kit di attrezzi giocattolo. Sono inutili per i lavori pi complessi, ma considerata la mancanza di attrezzi nella Zona, un tecnico esperto potrebbe inventarsi qualcosa. + + + Attrezzi di base + + + Un kit di attrezzi di qualit. Pare sia stato creato e utilizzato da un tecnico esperto. Gli attrezzi sono piuttosto vecchi, ma ancora in buone condizioni. + + + Attrezzi avanzati + + + Un kit di attrezzi professionali per la calibrazione dei macchinari. La nota sul contenitore indica che il kit stato fabbricato in Germania. Contiene tutti gli strumenti necessari per qualsiasi lavoro di perfezionamento o calibrazione. + + + Attrezzi di precisione + + + Vecchia tessera magnetica + + + Tessera magnetica di Cardan. Veniva usata per accedere all'officina collaudi dell'oggetto 62. + + + Documenti sull'oggetto 62 + + + Documenti che descrivono il meccanismo operativo e le principali caratteristiche tecniche del dispositivo elettromagnetico.\nAll'interno dei documenti c' la seguente annotazione: "I documenti vanno restituiti a X8, il laboratorio centrale. Io ho da fare, quindi consegnali tu. Usa la tessera magnetica al centro servizi Yubileiny di Pripyat per scendere al secondo piano interrato. Poi riuscirai a cavartela da solo. Allego la tessera d'accesso.\nN. Lebedev".\nQuesti documenti non devono finire in altre mani, poich sarebbero di grande interesse per gli analisti dell'USS. + + + Tessera X8 gialla + + + Ordine n562 + + + Ordine interno n423 + + + Chiave A + + + Una chiave normale contrassegnata con la lettera "A". + + + Chiave B + + + Una chiave normale contrassegnata con la lettera "B". + + + Una delle registrazioni audio sembra particolarmente bizzarra: "Allora ecco dove sono quei dannati mutanti...! Si sono arrampicati sull'altopiano pensando che Noah non li avrebbe trovati... Evidentemente non sanno che conosco un sentiero che arriva fin l, dalla fattoria a nord... Presto vi far ballare, maledetti bastardi!". + + + PDA di Noah + + + Il notebook contiene un messaggio contrassegnato come importante tra una marea di spam:\n"Crea un campo vicino all'impianto dei rifiuti e tutti coloro che parteciperanno al lavoro si uniranno a te. Non aspettare Black, perch sar a Jupiter con i suoi uomini per un'altra missione. L'esercito ha sospeso ogni volo nella Zona, quindi loro non ci daranno fastidio. Non appena gli stalker troveranno un accesso a Pripyat, manderemo una guida e aspetteremo gli uomini del cliente. Cos ci mostreranno dove si trova il laboratorio.\nJackal". + + + Notebook mercenari + + + Questo l'ultimo messaggio in arrivo:\n"Siamo in attesa presso alcune vecchie officine. Ho mandato avanti due ragazzi a perlustrare la strada per te. Aspetteremo finch non arriver il corriere del cliente. Qui l'aria molto pi fresca.\nTesak". + + + PDA del mercenario Hook + + + PDA del mercenario Ridge + + + Contiene un pericoloso agente chimico. + + + Contenitore di gas perin B3 + + + La scatola chiusa con un meccanismo piuttosto ingegnoso. A giudicare dal peso e dal rumore che fa se viene scossa, deve contenere qualcosa. + + + Scatola di metallo + + + Nota nel PDA: "Credo proprio che il manufatto si trovi sull'albero. Da qui si capisce benissimo che potrei salirci, dalla collina. Spero solo che l non ci siano mutanti. Peccato che sia dovuto venire qui da solo, dopo il litigio con Cardan e Barge, per quando torner con il manufatto dovranno riconoscere che avevo ragione...". + + + PDA di Joker + + + L'ultima annotazione sul PDA fa capire che il suo autore era fuori di s per la rabbia: "Cardan, quel vecchio ubriacone. Non solo un bastardo, ma dopo aver bevuto... 'Qui le cose vanno meglio, stiamo tranquilli', dice, e poi parte con una tirata contro me e Joker, dicendo che siamo giovani e non sappiamo un cavolo... Eh... Anche Joker un bel tipo: si incazza, prende le sue cose e sparisce. Se n' andato mentre cercavo di calmare Cardan, non so proprio dove sia finito. E io che cosa dovrei fare adesso? Stare qui a bere con quel vecchio scemo? Ah, no, grazie! La sua vodka fa schifo... Eeew...". + + + PDA di Barge + + + Tremor teneva un diario sul suo PDA, e le ultime registrazioni sono le pi interessanti: "Registrazione 12. Presto la mia ricerca si concluder... Gli uomini all'accampamento cominciano a sospettare qualcosa. Grouse e Danila vogliono andare a caccia di succhiasangue... Chiss quando lo capiranno... Devo sistemare i contenitori di sangue per scoprire quali sono stati contaminati, poi nascondere gli altri... [rapidamente:] Arriva qualcuno. [si sente il congegno che viene spento, poi riacceso]. Registrazione 13... forse sar l'ultima. Non la passer liscia. Verranno a prendermi, lo so. Ma non mi importa... tanto questa dipendenza dalla emoglobina mi avrebbe ucciso comunque. E preferisco morire per un proiettile che per una malattia..." + + + PDA di Tremor + + + Top secret.\nOrdine n562 del comandante del quartier generale responsabile della sicurezza dell'oggetto n1, R.Yu. Didenko.\nL'unit di protezione chimica n423 deve trasferirsi dal settore B103 al settore A19. Motivo: test sul campo della soluzione chimica "Perin B3" in condizioni di battaglia.\nIl Colonnello P.P. Slavin, comandante dell'unit, responsabile dell'esecuzione dei test.\nIl Tenente Colonnello K.S. Valov, vice comandante dell'unit, responsabile del trasporto e della sicurezza. + + + Top secret.\nOrdine del Colonnello P.P. Slavin.\nIn base al presente ordine, i membri dell'unit di protezione chimica n423 devono essere al corrente delle seguenti informazioni:\n1. Le chiavi dei contenitori con la soluzione chimica "Perin B3" sono in custodia al Colonnello P.P. Slavin (chiave A) e al Tenente Colonnello K.S. Vlasov (chiave B).\n2. Ordine di marcia a partire dalla testa del convoglio: veicolo del vice comandante dell'unit, veicolo di scorta n8, trasporto blindato n1, veicolo da trasporto n1, trasporto blindato n3, veicolo di scorta n2, veicolo del comandante dell'unit (P.P. Slavin).\nCopie dell'ordine da consegnare al Tenente Colonnello K.S. Vlasov e al Tenente R.B. Nazarenku. + + + Una tessera magnetica denominata X8\nLa tessera non deve cadere nelle mani di nessun altro, perch pu essere usata per accedere al laboratorio segreto. + + + PDA del messaggero di Sultan + + + L'ultimo messaggio inviato da questo PDA un messaggio audio: "Sultan, ho sistemato per bene quel perdente! Questo gli insegner a non immischiarsi con noi!" + + + Quella che un tempo era la ruota di una stazione di drenaggio, ora una sorta di strano manufatto. Oltre alla sua luminescenza e all'assenza di radioattivit, non sembra avere particolari propriet. + + + C' il seguente messaggio:\n"Sono riuscito a organizzare qualcosa per le armi. Quell'avido bastardo ci vender la scorta della sua fazione. Non sar costoso, ma dovremo andare fino a Jupiter.\nVulture". + + diff --git a/gamedata/configs/text/ita/st_items_weapons.xml b/gamedata/configs/text/ita/st_items_weapons.xml new file mode 100644 index 0000000..1b3a34b --- /dev/null +++ b/gamedata/configs/text/ita/st_items_weapons.xml @@ -0,0 +1,567 @@ + + + + Munizioni .45 ACP + + + Avendo una massa molto pesante e una carica propellente relativamente piccola, i proiettili blindati calibro .45 sono stati ampiamente utilizzati per pi di un secolo. I colpi sono relativamente lenti ma altamente precisi, oltre che dotati di una notevole capacit d'arresto. + + + .45 ACP + + + Munizioni .45 ACP hydro-shock + + + Questi insoliti proiettili calibro .45 ACP hanno una punta soffice blindata con una cavit di espansione e un nucleo d'acciaio. Essendo un incrocio tra i proiettili a punta soffice blindati e i proiettili perforanti, presentano gli stessi pro e contro di questi due tipi di munizioni. + + + .45 hydro-shock + + + Munizioni a pallettoni 12x70 + + + Munizioni standard calibro 12 riempite con pallettoni da 6 mm. Micidiali a distanza ravvicinata. Da usare solo con le armi ad anima liscia. + + + Munizioni 12x70 + + + Munizioni slug 12x76 + + + Munizioni slug pesanti calibro 12 usate di norma per la caccia grossa, ma efficaci anche in altre circostanze. Invece di perforare il bersaglio, i proiettili pesanti esercitano un'azione di sfondamento. + + + Slug 12x76 + + + Munizioni 5.45x39 mm AP + + + Munizioni perforanti militari calibro 5.45x39 7H22 per i fucili automatici dei paesi del Patto di Varsavia. Il proiettile contiene un elemento perforante blindato in lega pesante. Efficaci contro le armature. + + + 5.45x39 AP + + + Munizioni 5.45x39 mm + + + Munizioni perforanti militari potenziate calibro 5.45x39 7H10 per i fucili automatici dei paesi del Patto di Varsavia. Garantiscono una maggiore precisione rispetto ai colpi calibro 7.62, per via del rinculo ridotto e ai 100 metri di gittata in pi. + + + 5.45x39 + + + Munizioni 5.56x45 mm AP + + + Munizioni perforanti calibro 5.56x45 in dotazione standard alla NATO, con la denominazione SS190/M855, ampiamente utilizzate dai servizi speciali e dalle agenzie di sicurezza occidentali. Efficaci contro le armature. + + + 5.56x45 mm AP + + + Munizioni 5.56x45 mm + + + Munizioni standard della NATO calibro 5.56x45 progettate specificamente per il fuoco automatico di precisione. Presentano ottime caratteristiche balistiche, avendo origine da un tipo di munizioni da caccia. Meglio note con la denominazione SS109. + + + 5.56x45 + + + Munizioni 7.62x54 mm 7H1 + + + Munizioni di precisione calibro 7.62 con un elemento penetrante in acciaio progettate specificamente per gli SVD. A differenza delle munizioni da mitragliatore, le 7H1 sono efficaci nei colpi multipli e presentano eccellenti capacit di penetrazione. + + + 7.62x54 7H1 + + + Munizioni 7.62x54 mm PP + + + Munizioni da mitragliatore calibro 7.62, poco costose. La forma le rende inadatte al fucile da cecchino, quindi sono utilizzabili solo con il mitragliatore RP-74. + + + 7.62x54 PP + + + Munizioni 9x18 mm + + + Munizioni blindate con elemento penetrante in acciaio e un nucleo di piombo rivestito. Forniscono una buona capacit d'arresto, ma risultano inefficaci contro le armature. + + + 9x18 + + + Munizioni 9x18 mm +P+ + + + Questo tipo di proiettile dispone di una maggiore capacit d'arresto. La designazione europea "+P+" significa "munizioni in sovrappressione" con un aumento del 30% della velocit di volata. Inefficaci contro le armature. + + + 9x18 +P+ + + + Munizioni 9x19 mm FMJ + + + Munizioni blindate di base calibro 9x19 con buone caratteristiche e semplici da produrre. Sono diventate popolari dopo che le convenzioni internazionali hanno vietato l'uso di munizioni a espansione in battaglia. Inefficaci contro le armature. + + + 9x19 FMJ + + + Munizioni 9x19 mm JHP + + + Questi proiettili calibro 9x19 a punta cava con cavit di espansione garantiscono un'elevata capacit d'arresto a fronte di una ridotta probabilit di rimbalzo. Sono usati dalle forze di polizia e dai singoli individui a scopo di autodifesa. Inefficaci contro le armature per via del potenziale penetrante ridotto. + + + 9x19 JHP + + + Munizioni 9x39 mm SP-6 + + + Le munizioni subsoniche SP-6 per fucili d'assalto presentano una punta soffice blindata e un nucleo d'acciaio rinforzato che sporge dall'involucro. Richiede un silenziatore per l'uso furtivo. Utilizzate dai servizi speciali dei paesi del Patto di Varsavia. Efficaci contro le armature. + + + 9x39 SP-6 + + + Munizioni 9x39 mm SP-5 + + + Le munizioni subsoniche SP-5 per fucili da cecchino dispongono di un involucro bimetallico e di un nucleo in acciaio con una cavit sul retro riempita di piombo. Richiedono un silenziatore per l'uso furtivo. Utilizzate dai servizi speciali dei paesi del Patto di Varsavia. + + + 9x39 mm SP-5 + + + Batterie + + + Granata M203 + + + Granata da 40 mm per il lanciagranate sottocanna M203 con un raggio di esplosione di 5 metri. Utilizzabile anche con il lanciagranate integrato dell'FT-200M. + + + M203 + + + Testata OG-7V + + + Testata a frammentazione anti-uomo per il lanciagranate RPG-7u. La funzione principale della testata, in combinazione con il lanciagranate RPG-7u, l'eliminazione dei nemici al riparo e fuori dalla portata delle granate a mano. + + + OG-7V + + + Granata VOG-25 + + + Granata a frammentazione standard per il lanciagranate sottocanna GP-25 Koster con un raggio di esplosione di 5 metri. La granata VOG-25 pu essere utilizzata anche con il Tunder S14 e il lanciagranate a revolver Bulldog 6. + + + VOG-25 + + + Mirino PSO-1m + + + Un mirino ottico fisso 5.0x di fabbricazione sovietica con tacche di mira. Si collega all'arma tramite un incastro a coda di rondine, uno standard nei paesi del Patto di Varsavia. + + + Mirino PSS-2x + + + Un mirino ottico fisso 5.0x con un visore termico integrato per identificare le fonti di calore emesse dal corpo umano. Progettato per le forze speciali. Si collega all'arma tramite un incastro a coda di rondine. + + + Mirino NSPU-3 + + + Un mirino notturno fisso 5.0x a immagini intensificate che consente di combattere in assenza di luce. Si collega all'arma tramite un incastro a coda di rondine. + + + Mirino SUSAT 4x + + + Un mirino regolabile a lungo raggio con ingrandimento 1.6-4x che pu usare la regolazione automatica per aumentare l'efficacia di fuoco. Si collega all'arma tramite l'incastro Picatinny, standard per la NATO. + + + Un mirino fisso 4.0x prodotto principalmente nei paesi occidentali. Si collega all'arma tramite l'incastro Picatinny, standard per la NATO. Utilizzato spesso nelle armi leggere per eseguire colpi di precisione a medio-lungo raggio. + + + Mirino SUSAT x1.6 "Tramonto" + + + Un mirino ottico SUSAT 1.6x a contrasto elevato per combattere in condizioni di luminosit ridotta. Si collega all'arma tramite l'incastro Picatinny, standard per la NATO. + + + Mirino SUSAT x4 "Notte" + + + Un mirino fisso 4.0x con un visore notturno per gli scontri a fuoco a lungo raggio in assenza di luce. Si collega all'arma tramite l'incastro Picatinny, standard per la NATO. + + + Mirino SUSAT 1.6x + + + Un mirino ottico SUSAT 1.6x per gli scontri a fuoco a corto-medio raggio. Si collega all'arma tramite l'incastro Picatinny, standard per la NATO. + + + Mirino PSU-1 + + + Un mirino ottico 2.7x per i combattimenti urbani a medio raggio. Si collega all'arma tramite un incastro a coda di rondine. + + + Silenziatore + + + Un efficace silenziatore che pu essere modificato in azione in base alle attuali necessit. Il corpo del silenziatore intorno alla canna contiene una bobina di fine maglia d'ottone, mentre la parte anteriore comprende una serie di diaframmi metallici con una cavit al centro. Il kit completo include adattatori e sigillanti per gran parte delle armi. Di norma, il silenziatore viene usato per colpire il nemico senza attirare troppa attenzione. + + + Granata F1 + + + Una granata a mano difensiva, con frammenti in grado di perforare le armature di livello intermedio e un raggio di esplosione di 7 metri. Gli stalker si procurano le granate F1 dal personale militare, che si giustifica dicendo di averle usate per combattere i mutanti. + + + GP-25 Koster + + + Un lanciagranate scanalato sottocanna, a carica frontale e a colpo singolo per i fucili d'assalto costruiti nei paesi del Patto di Varsavia. Il meccanismo di fuoco semi-automatico, con una sicura manuale e un sistema automatico per evitare i colpi accidentali, se il lanciagranate non installato correttamente. Utilizza le granate VOG-25. + + + M203 + + + Un lanciagranate M203 modificato che stato accorciato di circa 8 centimetri, collegato all'arma tramite un incastro Picatinny. Grazie a questa modifica, oggi viene ampiamente utilizzato in ogni parte del mondo. + + + Granata RGD-5 + + + Una granata a mano offensiva con un raggio di esplosione di soli 5 metri. Avendo un costo relativamente ridotto, spesso gli stalker la utilizzano per "stanare" i mutanti. + + + Granata fumogena + + + Una granata a mano fumogena, utile per creare coperture di fumo. Dopo il lancio, impiega circa 10 secondi per creare la coltre di fumo. + + + Coltello + + + AC-96/2 + + + AKM-74/2 + + + AKM-74/2U + + + Martha + + + Doppietta a canne mozze + + + Una doppietta da caccia a canne mozze con due canne affiancate, pi leggera e compatta della doppietta standard. una delle armi pi utilizzate dai banditi, essendo facile da nascondere ed estremamente efficace a distanza ravvicinata. + + + Kora-919 + + + Aquila delle steppe + + + Una pistola artigianale basata sul modello dell'Aquilone nero. I vari componenti sono perfettamente calibrati per garantire una precisione eccezionale per un'arma di questo tipo. + + + Aquilone nero + + + FT-200M + + + Fora-12 + + + GP37 + + + Fucile Gauss + + + Tunder S14 + + + Un fucile d'assalto con lanciagranate, simile alla serie AKM, progettato specificamente per le unit a intervento rapido. Le differenze principali sono le munizioni calibro 9x39, la configurazione "bullpup" e le opzioni di modifica. molto ricercato dagli stalker militari per via della sua efficacia contro i nemici con armatura mentre si nascosti dietro coperture negli scenari urbani, ma anche per la sua eccezionale capacit d'arresto. + + + Tempesta + + + Versione sperimentale russa di un sistema integrato fucile d'assalto/lanciagranate, basata sul Tunder S14 standard, progettata per le unit operanti nella Zona. Da notare la maggiore capienza del caricatore. + + + HPSS-1m + + + Modello modificato di una pistola della prima met del 20 secolo, affidabile, potente e preciso come l'originale. Le pistole di questa serie, giustamente considerate tra le migliori del 20 secolo, sono molto richieste nella Zona. + + + IL 86 + + + TRs 301 + + + Viper 5 + + + Questo mitragliatore apprezzato a livello mondiale per la facilit d'uso, l'affidabilit e la precisione. Negli ultimi decenni il Viper 5 stato utilizzato dalle forze armate speciali e dalle unit di polizia di tutto il mondo. Per questo motivo ha letteralmente invaso i mercati neri, arrivando in seguito anche nella Zona. + + + Frasier + + + Un mitragliatore sperimentale basato sull'eccellente modello Viper 5. Progettato per essere un'arma da battaglia a corto raggio di nuova generazione, si distingue per il grosso calibro, la cadenza di fuoco e la precisione. + + + PB-1s + + + RP-74 di Zulu + + + Quest'arma apparteneva a Zulu. Presenta diverse caratteristiche speciali, come il caricatore pi capiente e un meccanismo di estrazione particolarmente affidabile. Le varie modifiche hanno aumentato il peso dell'arma, ma questo non era un problema per il precedente proprietario. + + + PMm + + + PMm onoraria + + + Un'antica PMm ricevuta da Degtyarev come ricompensa per la "perfetta esecuzione di ordini di stato estremamente rischiosi, e per il valore e il coraggio dimostrati in servizio". + + + Eliminatore + + + Bulldog-6 + + + Questo lanciagranate a revolver utilizza sei canne scanalate a carica frontale, identiche a quelle montate sotto la canna dei fucili. Anche il tamburo a carica frontale. Il Bulldog-6 viene usato per neutralizzare rapidamente le postazioni nemiche e, in campo aperto, per attaccare bersagli fissi ben difesi o combattere mostri particolarmente forti. + + + RP-74 + + + Questo mitragliatore a nastro una versione portatile con un complesso sistema di ricarica a due fasi. Nonostante il peso e la scarsa precisione, pu vantare molti estimatori nella Zona. Viene usato prevalentemente per respingere folti gruppi di nemici durante i conflitti tra fazioni e per ripulire le tane dei mutanti. + + + RPG-7u + + + SIP-t M200 + + + Alpina + + + Un modello unico della pistola SIP-t M200, parte di un'edizione limitata progettata per un'unit speciale non meglio identificata. Questo modello offre un caricatore pi capiente, una canna d'acciaio ad alta durabilit e un corpo polimerico ultradurevole. + + + SGI-5k + + + Un fucile d'assalto relativamente recente che si conquistato molti ammiratori in tutto il mondo, malgrado il suo aspetto un po' anonimo. Le armi di questa serie sono tra le migliori della loro classe, celebri per l'affidabilit, la precisione e la facilit d'uso. Nonostante sia piuttosto difficile da reperire nella Zona, spesso questo fucile d'assalto viene ordinato dagli stalker pi esperti a prezzi molto elevati. + + + SGI-5k di Strelok + + + Un fucile d'assalto SGI-5k di fabbricazione svizzera. Pur essendo tutt'altro che nuovo, evidente che il precedente proprietario l'ha curato con la massima attenzione. L'arma stata smontata e rimontata, calibrando ogni singolo componente e aumentando di conseguenza la capacit d'arresto. Nel calcio dell'arma stata incisa la lettera "S", e si possono notare anche 16 piccole tacche. + + + SPSA-14 + + + SPSA-AUT + + + La doppietta SPSA-AUT semi-automatica viene prodotta solo nelle officine della Duty, ed l'ideale per combattere gruppi numerosi di mutanti. Il suo meccanismo di ricarica migliorato assicura un'elevata cadenza di fuoco, mentre la capienza del caricatore stata aumentata a 10 colpi. Utilizza munizioni calibro 12x70. + + + Fuciliere + + + Una doppietta militare progettata specificamente per le unit d'assalto. Possiede una modalit di fuoco automatico come la doppietta SPSA-AUT, il suo diretto predecessore, ma fornisce una migliore compensazione del rinculo grazie a un sofisticato sistema anti-urto. + + + SVDm-2 + + + Un fucile da cecchino militare sul mercato da oltre 50 anni e noto per l'eccezionale affidabilit e facilit d'uso. In genere l'SVDm-2 viene impiegato dai militari per aumentare la gittata effettiva delle unit in campo. Gli stalker, tuttavia, apprezzano quest'arma soprattutto per le sue capacit perforanti, che consentono di penetrare la pelle dei mutanti e le armature militari. + + + Lince + + + Una versione artigianale del fucile da cecchino SVDm-2. Apparentemente identico all'originale, fornisce la stessa combinazione ideale tra precisione e capacit d'arresto. + + + SVUmk-2 + + + SVU2-A + + + Un fucile da cecchino accorciato e dalla notevole cadenza di fuoco, evoluzione del fucile SVUmk-2. Quest'arma apparteneva a Max, il leggendario guardiano della Freedom. + + + Doppietta da caccia + + + Una normalissima doppietta da caccia che pu dimostrarsi pi efficace contro i mutanti rispetto a una pistola, grazie ai suoi valori di precisione e capacit d'arresto. Utilizzata soprattutto dai principianti ai margini della Zona. + + + Arma non identificata + + + Un'arma sconosciuta con un meccanismo di fuoco non identificato. Potrebbe essere rotta, visto che la pressione del grilletto non produce alcun risultato. + + + UDP Compact + + + I valori impeccabili di affidabilit e durabilit, oltre all'eccellente precisione, sono le caratteristiche principali di quest'arma. Presenta tuttavia alcuni difetti minori, come le dimensioni considerevoli, il baricentro relativamente alto e l'otturatore enorme, difetti che rendono l'arma difficile da nascondere ma che non riescono a oscurare i suoi tanti pregi. L'UDP Compact molto popolare soprattutto tra i veterani della Zona. + + + Marcia + + + Una pistola compatta a grosso calibro con l'otturatore a movimento breve e un meccanismo di scatto leggero. Apparteneva a un mercenario chiamato Wolfhound. Sembra una pistola UDP Compact modificata. + + + SA "Valanga" + + + Vintar BC + + + Un fucile da cecchino speciale progettato per garantire la massima furtivit durante le operazioni in cui la posizione delle forze in campo non deve essere rivelata al nemico. Il Vintar BC garantisce un'elevata capacit d'arresto e di perforazione, ed equipaggiato con un mirino ottico integrato. Apprezzato da moltissimi stalker, nonostante il caricatore poco capiente. + + + Marea + + + Un'arma progettata per le unit militari sulla base del fucile da cecchino silenzioso. La sua capacit d'arresto superiore a quella del Vintar BC, il diretto predecessore, a scapito per della cadenza di fuoco. Consente di eliminare le forze nemiche, un'unit alla volta, senza rivelare la posizione dell'utilizzatore. + + + Walker P9m + + + Chaser 13 + + + Una doppietta occidentale ad anima liscia, estremamente popolare in tutto il mondo per l'eccellente affidabilit e l'ottima velocit di ricarica. La sua funzionalit particolarmente apprezzata dai cacciatori della Zona. Tutti i suoi componenti sono trattati con un composto anti-corrosione. + + + Predatore + + + Una doppietta a pompa personalizzata che apparteneva a Trapper, un cacciatore che aveva solo bisogno di un'arma in grado di uccidere i predatori con un singolo colpo. Secondo lui, infatti, anche gli animali considerati pi feroci e pericolosi hanno il diritto di morire senza soffrire. + + + Batterie fatte in casa. + + + Mirino SUSAT tipo Mera + + + Un fucile d'assalto moderno sviluppato per sostituire l'AKM 74/2. La differenza principale la modalit di fuoco rapido a 2 colpi, che consente di sparare due proiettili verso la stessa zona del bersaglio a una distanza di 100 metri. Ci aumenta nettamente la probabilit di colpire il bersaglio rispetto alla modalit a colpo singolo, incrementando di conseguenza la letalit dell'arma, la capacit d'arresto e il potenziale di perforamento. + + + Quest'arma, progettata nel 1974, introdusse le munizioni a piccolo calibro e impulso ridotto nei paesi del Patto di Varsavia. Successore del fucile pi famoso al mondo, l'AKM-74/2, possiede un freno di bocca pi grande, che riduce un rinculo gi relativamente gestibile. Ci aumenta precisione e facilit dei colpi multipli, specialmente con raffiche o colpi singoli rapidi. Questo fucile semplice e affidabile come il suo predecessore. + + + Pur simile ai mitragliatori per peso e dimensioni, nonch per l'uso tattico, quest'arma un fucile d'assalto per via del suo meccanismo, uguale a quello dell'AKM-74/2. Viene apprezzato per la mobilit nei combattimenti ravvicinati e la capacit penetrante. I suoi difetti, invece, sono il raggio d'effetto ridotto (anche se la gittata relativamente lunga), la tendenza a surriscaldarsi durante le raffiche e l'elevata probabilit di rimbalzo. + + + Una versione migliorata dell'arma automatica che ha superato con successo i maggiori conflitti armati del 20 secolo ed entrata con decisione nel nuovo millennio. Centinaia di aziende di tutto il mondo continuano a produrre l'arma originale e le sue varie modifiche. L'unico difetto, vale a dire la scarsa capienza del caricatore, ampiamente compensato dall'estrema potenza delle munizioni utilizzate. + + + La pistola definitiva: grossa, pesante e incredibilmente letale. stata progettata come arma speciale per la caccia di prede medio-grandi e per le gare di tiro con bersagli d'acciaio posizionati a pi di 50 metri di distanza. La sua scarsa diffusione nella Zona pu essere dovuta al prezzo elevato, alle sue dimensioni e al peso eccessivo rispetto alle altre pistole disponibili. un'arma che non passa certo inosservata. + + + Quest'arma di tipo "bullpup" e dall'aspetto futuristico in realt un sistema modulare prodotto in massa. Include un fucile, un sistema di controllo del fuoco computerizzato e un lanciagranate 40 mm. Nonostante il suo aspetto ingombrante, un'arma molto ergonomica, facile da usare e con ottime caratteristiche tattiche. Nella Zona non ha ancora raggiunto la popolarit che merita per via del prezzo elevato e la scarsa reperibilit. + + + Una pistola di fabbricazione ucraina utilizzata dalle forze di sicurezza. Presenta una maggiore precisione, una migliore ergonomia e un caricatore pi capiente rispetto alla PMm. molto diffusa nella Zona in seguito alla vendita di numerose partite di armi difettose, che presentano gli stessi errori tecnici dei primi modelli sviluppati. Ciononostante, la pistola apprezzata dagli stalker per via delle sue buone prestazioni in battaglia. + + + Una nuova aggiunta alla famiglia dei fucili d'assalto occidentali. sensibilmente diverso dai precedenti modelli della serie, fondamentalmente automatici e con un meccanismo di scatto semi-aperto, somigliante da vicino ai fucili d'assalto automatici a recupero di gas di fabbricazione americana con pistoni a corsa breve. Queste modifiche rendono il GP37 un perfetto esempio di arma moderna: leggera, affidabile ed ergonomica. + + + Il numero considerevole di difetti di questo fucile ha richiesto la modernizzazione dell'arma, mentre le serie ritirate dal mercato sono finite sul mercato nero della Zona. I principali vantaggi del fucile sono il mirino integrato 4.0x, l'elevata precisione a colpo singolo e la possibilit di modifica. Durante le raffiche prolungate, la precisione cala sensibilmente e i principali meccanismi interni diventano piuttosto inaffidabili. + + + Un nuovo passo in avanti in questa celebre famiglia di armi americane. Sono state apportate modifiche alla met superiore della struttura in acciaio che comprende la canna, la camera del gas e il meccanismo di scatto, in modo da ridurre il peso dell'arma e migliorare sia l'ergonomia sia il sistema a gas. un'arma molto precisa, anche se la sua propensione a sporcarsi non la rende ideale alle condizioni difficili della Zona. + + + Pistola sviluppata nella seconda met del 20 secolo sulla base del modello PMm per l'uso da parte di forze speciali e unit da ricognizione. La parte anteriore della canna coperta dal silenziatore, mentre il meccanismo di scatto troppo corto perch vi sia spazio per la molla di ritorno, che posizionata nell'impugnatura della pistola. Ormai obsoleta, la PB-1s rimane efficace nelle mani giuste. + + + Questo cimelio sovietico la pistola pi comune nella Zona e una delle migliori armi compatte in assoluto. piccola, molto affidabile e facile da usare e mantenere. Presenta tuttavia numerosi difetti come la gittata limitata, la scarsa precisione dei colpi e la ridotta capacit d'arresto. Inoltre, rispetto ai suoi equivalenti moderni, piuttosto pesante e possiede un caricatore poco capiente. + + + Una doppietta da battaglia a revolver con anima liscia, progettata per fornire alle unit militari un'eccellente potenza di fuoco unita a un'elevata cadenza di tiro e una grande capienza del caricatore. Il suo ingombro e il peso considerevole, tuttavia, oltre al lungo tempo di ricarica, sono difetti da tenere in considerazione. Non molto diffusa nella Zona, viene usata principalmente per neutralizzare i mutanti negli spazi chiusi. + + + Lanciagranate degli anni '60, giunto nella Zona dai depositi di armi. L'arma un sistema di lancio privo di rinculo, a colpo singolo e con un tubo di lancio aperto sul retro. Include un mirino PGO-7 2.7x. Le dimensioni e il peso notevoli costituiscono un difetto, ma nella Zona molti apprezzano il suo potenziale distruttivo, la semplicit della sua struttura e la relativa facilit d'uso. + + + Unico modello ancora prodotto di una pistola conosciuta ovunque, nota per l'eccellente ergonomia e la precisione. Nonostante il caricatore sia poco capiente, il meccanismo dell'arma infallibile. Un altro vantaggio la potenza delle munizioni utilizzate. Secondo alcuni, il SIP-t M200 il miglior modello di pistola calibro .45 ACP prodotto in massa, e anche gli stalker e i mercenari pi esperti sembrano apprezzare le sue caratteristiche. + + + Una doppietta automatica speciale ad anima liscia progettata nella seconda met del 20 secolo, con un meccanismo di fuoco a pompa semi-automatico. Viene utilizzata come arma multiuso dai corpi di polizia e dalle truppe d'assalto. Pur essendo molto affidabile e versatile, anche un'arma pesante, complessa e costosa, ma questo non ha impedito la sua diffusione nella Zona grazie alla sua efficacia contro i mutanti. + + + Una versione aggiornata del fucile da cecchino SVDm-2 con un design "bullpup" pi compatto, progettata per le forze di intervento rapido. un fucile da cecchino che consente di sparare pi rapidamente e notevolmente pi leggero, mentre la precisione in modalit colpo singolo a medio-lungo raggio simile a quella del suo predecessore. Grazie a queste qualit, si conquistato l'ammirazione di moltissimi stalker. + + + Versione modificata del fucile da cecchino Vintar BC, questo fucile d'assalto un'arma per le forze speciali. La sua funzione primaria l'eliminazione di nemici che utilizzano equipaggiamento protettivo avanzato senza rivelare la posizione di chi sta sparando. Grazie alle sue munizioni pesanti subsoniche calibro 9x39 e al silenziatore integrato, il rumore e la fiammata emessa dalla bocca dell'arma sono stati ridotti al minimo. + + + Un'arma tecnologica conosciuta come oggetto 62, questo fucile fu sviluppato nei laboratori segreti all'interno della Zona. L'arma, molto precisa, accelera i proiettili ad altissime velocit tramite un sistema di elettromagneti che forniscono un'incredibile potenza di arresto senza pressoch alcun rinculo. L'arma potenziata dall'uso di frammenti di manufatti incapsulati nelle batterie. + + + Le pistole Martha sono famose per essere relativamente affidabili, anche se ingombranti. Sono in dotazione alle forze armate e di polizia d'oltreoceano e vengono usate anche da eserciti e organizzazioni di sicurezza in tutto il mondo. La pistola Martha diffusa anche nella criminalit, grazie a potenza e capienza del caricatore. Di solito le Martha della Zona sono molto datate, forse perch provenienti da serie ritirate dal mercato. + + + Un'eccellente pistola occidentale nota per l'affidabilit, la grande capienza del caricatore e l'ottima precisione. Inoltre, considerata la pistola pi ergonomica della sua classe. La Walker P9m una delle pistole pi diffuse nella Zona, ma solo tra i principianti o i professionisti che possono permettersela. + + + Batterie che utilizzano un frammento capsulato del manufatto Lampo come fonte d'alimentazione. Prodotte utilizzando attrezzature a elevata tecnologia. + + + Queste cellule a bassa capacit usano frammenti capsulati del manufatto Lampo come fonte energetica. La loro bassa capacit dovuta alle condizioni improvvisate in cui sono state realizzate e alla mancanza di attrezzatura specialistica. + + diff --git a/gamedata/configs/text/ita/st_items_weapons_upgrades.xml b/gamedata/configs/text/ita/st_items_weapons_upgrades.xml new file mode 100644 index 0000000..917ffc6 --- /dev/null +++ b/gamedata/configs/text/ita/st_items_weapons_upgrades.xml @@ -0,0 +1,2022 @@ + + + + Stabilit + + + Calibro + + + Rinculo + + + Affidabilit + + + Ottica reflex 1.6x + + + Mirino ottico 4.0x + + + Silenziatore + + + incastro sottocanna + + + Peso + + + La filettatura esterna consente l'installazione di un silenziatore. + + + Filettatura esterna della canna + + + Installazione di un incastro per il collegamento di un mirino ottico. + + + Incastro per ottica + + + Installazione di un incastro per il collegamento di un lanciagranate sottocanna. + + + Incastro per lanciagranate sottocanna + + + Sostituzione del caricatore standard con uno pi capiente. + + + Capienza caricatore aumentata + + + Una modifica complessa e integrata delle parti meccaniche e automatiche dell'arma, in modo da cambiare il calibro a scapito dell'affidabilit. + + + Passaggio al calibro 5x45 + + + Una modifica complessa e integrata delle parti meccaniche e automatiche dell'arma, in modo da cambiare il calibro a scapito dell'affidabilit. + + + Passaggio al calibro 5x56 + + + Una modifica complessa e integrata delle parti meccaniche e automatiche dell'arma, in modo da cambiare il calibro a scapito dell'affidabilit. + + + Passaggio al calibro 9x18 + + + Una modifica complessa e integrata delle parti meccaniche e automatiche dell'arma, in modo da cambiare il calibro a scapito dell'affidabilit. + + + Passaggio al calibro 9x19 + + + Capienza del caricatore aumentata senza incrementare la lunghezza dell'arma. + + + Aumento capienza caricatore + + + Un caricatore in policarbonato pi leggero ma pi capiente, in modo da compensare parzialmente l'inevitabile aumento di peso. + + + Capienza caricatore aumentata + + + Numero di piastre in titanio aumentato per migliorare notevolmente la durabilit dell'armatura. + + + Piastre in alluminio/titanio aggiuntive + + + Piastre rinforzate decisamente pi resistenti, pur non essendo molto pi durevoli. + + + Piastre in kevlar + + + Una lega di alluminio e titanio consente di ridurre il peso del titanio per l'uso nell'equipaggiamento di difesa personale. + + + Piastre in alluminio e titanio + + + Di norma il titanio troppo pesante per l'uso nell'equipaggiamento di difesa personale, ma talvolta viene utilizzato negli esoscheletri. + + + Componenti in titanio massiccio + + + La sostituzione del metallo con la fibra di carbonio consente di ridurre il peso dell'armatura senza sacrificare l'affidabilit. + + + Sostituzione componenti metallici dell'armatura con fibra di carbonio + + + Il kevlar uno dei materiali pi comuni usati per costruire le armature. + + + Piastre in kevlar + + + Il policarbonato pu resistere ai colpi di pistola ed leggero come la plastica. + + + Piastre in policarbonato + + + Le piastre in ceramica non durano a lungo ma sono pi affidabili di quelle in kevlar, essendo in grado di assorbire meglio la forza d'urto dei proiettili. + + + Installazione di piastre in ceramica + + + Semplici piastre in acciaio cucite in un impermeabile. + + + Piastre in acciaio + + + Uno strato esterno in ceramica pu deviare i proiettili perforanti che colpiscono di taglio e disintegrare quelli che effettuano un impatto diretto. + + + Strato esterno in ceramica per armatura + + + Uno strato corazzato interno aggiuntivo, in caso di danneggiamento dello strato esterno. + + + Strato corazzato protettivo di riserva + + + Armatura con uno strato interno che distribuisce la forza d'urto in un'area pi ampia. + + + Aggiunta di un elemento di compensazione + + + Il telaio pu resistere ai colpi di pistola, se l'armatura principale viene danneggiata. + + + Telaio corazzato aggiuntivo + + + Strati corazzati pi sottili che aumentano la resistenza all'usura dell'armatura. + + + Protezione segmentata + + + L'aggiunta di piastre non migliora la protezione, ma garantisce una maggiore durabilit. + + + Strato di riserva aggiuntivo + + + Piastre mobili che proteggono le articolazioni dalle ferite d'arma da fuoco. + + + Installazione di piastre protettive mobili per le articolazioni + + + Un telaio in alluminio pi leggero per le piastre che sostituisce il telaio in acciaio. + + + Telaio in alluminio pi leggero + + + Inserti ispessiti che riducono la forza d'urto del proiettile percepita sotto l'armatura. + + + Inserti in pelle ispessiti + + + Strato in ceramica aggiuntivo con silicone ammortizzante. + + + Piastre in ceramica rinforzate + + + Utilizzo di materiali pi leggeri per ridurre il peso dell'armatura. + + + Installazione di componenti in plastica e sintetici pi leggeri + + + Mentre le piastre in titanio massiccio sono troppo pesanti per un soldato di fanteria, i potenti servomotori di un esoscheletro sono perfettamente in grado di gestire il peso. + + + Armatura in titanio corazzata + + + SBK-RKhZ.m.II Una tuta da battaglia speciale per la protezione radiochimica, seconda versione. + + + Tuta protettiva ermetica anti-radiazioni SBK-RKhZ.m.II + + + Questo potenziamento laborioso e lungo da eseguire non molto popolare, ma in passato ha salvato molte vite. + + + Maglia corazzata + + + Comprende delle piastre in ceramica sovrapposte per fare in modo che l'utilizzatore non venga colpito nello stesso punto. + + + Rivestimento in ceramica deflettente "Scaglia" + + + Una volta trattata con il composto "Sovrano", la tuta diventa praticamente invulnerabile ai danni meccanici e alle lacerazioni del tessuto. + + + Trattamento con composto rinforzante "Sovrano" + + + La ceramica attutisce notevolmente l'impatto dei proiettili, che vengono deviati e ridotti in frammenti. + + + Applicazione di uno strato di ceramica sulle piastre + + + La matrice rinforzata che usa il berillio al posto dell'alluminio uno dei sistemi pi affidabili per proteggere i soldati di fanteria. + + + La ceramica attutisce notevolmente l'impatto dei proiettili, che vengono deviati e ridotti in frammenti. + + + Strato di ceramica sulle piastre + + + La fibra di carbonio uno dei materiali pi durevoli e resistenti all'usura, tanto che viene usata anche in campo aeronautico. + + + Rivestimento combinato multi-strato in ceramica e polimeri. + + + Rivestimento schermante combinato + + + Uno degli ultimi sviluppi nel campo della protezione personale: la crescita "artigianale" di zaffiri sintetici. + + + La regolazione dei componenti consente all'arma di durare pi a lungo senza incepparsi. + + + Regolazione componenti + + + L'inserimento di componenti in plastica uno dei potenziamenti pi utili e richiesti. + + + Componenti poli-materiali + + + Un meccanismo di fuoco a impulso ridotto che riduce il rinculo rispetto alle versioni precedenti. + + + Meccanismo di fuoco a impulso ridotto + + + L'efficace posizionamento del proiettile al momento dello sparo consente di mantenere la traiettoria di tiro e di colpire il bersaglio con maggiore precisione. + + + Installazione di un'unit di posizionamento del proiettile + + + Un sistema di bloccaggio a rulli che riduce il rinculo e migliora i colpi multipli. + + + Otturatore semi-libero con sistema a rulli + + + L'installazione di un cilindro a gas aggiuntivo riduce il tempo di caricamento dell'arma, in modo da aumentare sensibilmente la cadenza di fuoco. + + + Installazione di un cilindro a gas aggiuntivo + + + Un motore a gas utilizzato nelle doppiette semi-automatiche per alzare automaticamente il cane. + + + Installazione motore a gas + + + Uno sputter protettivo che rende impossibili i colpi accidentali dovuti a un guasto meccanico. + + + Sputter protettivo + + + Quando il proiettile viene sparato, un componente apre un varco nella canna e torna in posizione chiusa tramite un movimento scarrellante dell'impugnatura anteriore lungo l'asse dell'arma. + + + Sistema di chiusura della canna + + + Un sistema automatico inerziale che consente di trasformare le normali doppiette a pompa in armi semi-automatiche. + + + Installazione di un sistema automatico inerziale + + + Un modulo di massa battente unificato un'ottima soluzione tecnologica per ridurre il rinculo. + + + Modulo di massa battente unificato + + + La bacchetta automatica migliora la precisione dell'arma. + + + Installazione di una bacchetta automatica + + + Un contrappeso attivo si sposta dal blocco dell'otturatore, compensando parzialmente il rinculo. + + + Aggiunta di un contrappeso attivo + + + L'installazione di rulli aggiuntivi riduce il rinculo. + + + Installazione di un sistema di compensazione a rulli + + + La sostituzione del meccanismo di scatto dell'arma con un otturatore pi efficace migliora la cadenza di fuoco. + + + Meccanismo di fuoco a otturatore aperto + + + Quando il proiettile viene sparato, il contrappeso del blocco dell'otturatore si muove nella direzione opposta dell'otturatore, in modo da aumentare la facilit d'uso del mitragliatore. + + + Installazione di un contrappeso autoregolante + + + Un contrappeso viene inserito come componente aggiuntivo nel castello per ridurre il rinculo applicando una forza contraria. + + + Aggiunta di un contrappeso mobile + + + L'inserimento di componenti polimerici uno dei potenziamenti pi utili e richiesti. + + + Componenti polimerici resistenti all'impatto per elementi automatici + + + Viene installato un meccanismo speciale che protegge l'arma dalla sporcizia. + + + Regolatore automatico a gas e a due posizioni + + + Un componente speciale chiude ermeticamente la canna per aumentare la pressione quando il proiettile viene sparato. + + + Installazione di un meccanismo di chiusura ermetica della canna + + + La sincronizzazione viene garantita da una ruota dentata, in modo da raddrizzare la traiettoria di tiro. + + + Sincronizzazione movimento bacchetta + + + Un componente installato nella parte posteriore del castello riduce la velocit dell'otturatore per migliorare l'efficacia del fuoco di precisione. + + + Meccanismo ritardante inerziale + + + Un componente speciale installato nel meccanismo di scatto per rendere pi fluido il movimento dell'otturatore e ridurre il rinculo. + + + Aggiunta di un dispositivo di rallentamento della massa battente + + + Un miglioramento integrato che in genere viene applicato nei fucili da cecchino per compensare il notevole peso dell'arma. + + + Ammortizzatore integrato del rinculo + + + L'installazione di un meccanismo con componenti mobili aumenta la velocit di ricarica. + + + Ricarica automatica + + + Miglioramento dei componenti automatici dell'arma che richiede la sostituzione di molte parti. Aumenta la precisione. + + + Sistema bilanciato anti-impatto + + + Un componente sintetico posizionato davanti alla zona di movimento dell'otturatore, che viene notevolmente ridotta per migliorare la precisione dell'arma. + + + Aggiunta di un dispositivo bloccante + + + Un ponte regola la posizione della canna e, se questa si muove, vengono aperti dei fori di compensazione aggiuntivi. + + + Installazione di un componente di "compensazione intelligente" + + + Una miglioria che rende pi fluido il meccanismo del grilletto, molto importante per i cecchini. + + + Installazione di un meccanismo di regolazione del grilletto + + + Questo componente consente di avvertire meglio il momento in cui il colpo viene sparato, migliorando la precisione del tiro. + + + Installazione di un grilletto pi sensibile + + + Un sistema di bloccaggio a rulli, inserito spesso nelle armi occidentali, che riduce il rinculo e migliora i colpi multipli. + + + Otturatore semi-libero con sistema a rulli + + + Un meccanismo speciale assorbe parte della forza d'urto generata dal colpo, aumentando la facilit d'uso e la comodit dell'arma. + + + Sistema di ammortizzazione del colpo + + + Dato che i fucili da cecchino sono pi difficili da mantenere rispetto agli altri tipi di armi, possono essere migliorati con dispositivi di regolazione a gas a tre posizioni. + + + Installazione di un dispositivo di regolazione automatica a gas a tre posizioni + + + Lo sputter previene la dispersione dell'energia cinetica, aumentando l'impulso del proiettile. + + + Perfezionamento delle parti automatiche con uno sputter + + + L'installazione di una bacchetta pi lunga consente di usare i fucili da cecchino in modalit automatica. + + + Meccanismo di fuoco con bacchetta lunga + + + Un dispositivo frenante applicato al meccanismo della massa bloccante, per migliorare la precisione. + + + Installazione di un dispositivo frenante + + + La sostituzione della canna normale con una canna pi lunga migliora la precisione e la stabilit della traiettoria di tiro. + + + Canna pi lunga + + + L'assenza di grosse camere a gas e di incastri sull'impugnatura anteriore contribuisce a migliorare la precisione. + + + Installazione di una canna "libera" + + + Questa modifica riduce i danni causati dalle modifiche "estreme" che aumentano la cadenza di fuoco. + + + Installazione di una canna con alette di raffreddamento + + + Un componente obsoleto viene sostituito con un modello pi moderno per ridurre il rinculo. + + + Freno di bocca con compensazione ottimizzata + + + L'installazione di una canna con scanalature aggiuntive migliora la velocit del proiettile e la precisione dell'arma, aumentando tuttavia il rinculo. + + + Canna con scanalature aggiuntive + + + Questa canna aumenta il raggio d'azione nei combattimenti ravvicinati, quindi non adatta al fuoco di precisione. Migliora la cadenza di fuoco grazie alla semplificazione della parte scanalata della canna. + + + Installazione di una canna con la sezione scanalata semplificata + + + La scanalatura poligonale serve ad aumentare la precisione. + + + Installazione di una canna con la sezione scanalata poligonale + + + Riduce il surriscaldamento della canna aumentando al tempo stesso la cadenza di fuoco. + + + Scanalatura sinusoidale della canna + + + Una canna speciale per le armi con un'ottima stabilit della traiettoria di tiro. Migliora la precisione. + + + Canna scanalata per fucili da cecchino + + + I materiali ad alta durabilit riducono l'usura della canna dell'arma. + + + Canna in lega ad alta durabilit + + + Un trattamento della superficie interna della canna per proteggerla dai danni meccanici. + + + Trattamento della canna + + + Un addensamento sintetico della cavit della canna che migliora sensibilmente i colpi multipli. + + + Addensante sintetico per la canna + + + La sostituzione della canna normale con una canna pi lunga migliora la stabilit della traiettoria. + + + Sezioni della canna pi lunghe + + + L'introduzione di canali di ventilazione del gas nella canna previene l'accumulo di sporcizia e trasmette parzialmente il rinculo alla canna stessa. + + + Canali di ventilazione longitudinali + + + La sostituzione della canna normale con una canna pi lunga migliora la stabilit della traiettoria. + + + Sezione della canna pi lunga + + + Questo sputter previene il surriscaldamento dell'arma, elimina i difetti di fabbricazione e aumenta notevolmente la durabilit della canna. + + + Applicazione di uno sputter protettivo nella parte interna della canna + + + Il sistema di bilanciamento della canna include diversi pistoni mobili che rendono l'arma pi stabile. + + + Sistema di bilanciamento della canna + + + La parte scanalata della canna impedisce di sparare pallettoni, ma garantisce una precisione eccezionale. + + + Canne scanalate + + + L'addensamento con poli-materiali consente di incrementare la pressione nella canna, aumentando la velocit del proiettile. + + + Addensante dinamico per la canna + + + La foratura cilindrica della canna migliora la cadenza di fuoco senza ridurre la precisione. + + + Foratura cilindrica della canna + + + Quando il proiettile viene sparato, un contrappeso attivo si sposta verso la parte anteriore della canna, compensando parzialmente il rinculo. + + + Aggiunta di un contrappeso attivo all'involucro della canna + + + La sostituzione della canna normale con una canna pi lunga migliora la precisione e la stabilit della traiettoria, ma riduce la cadenza di fuoco. + + + Sezione della canna pi lunga + + + La foratura della canna riduce il rinculo facendo fuoriuscire il gas attraverso delle cavit speciali. + + + Sezione della canna forata + + + Una canna accorciata migliora la cadenza di fuoco dell'arma senza sacrificare la precisione e la stabilit della traiettoria. + + + Sezione della canna accorciata + + + Il rivestimento in cromo aumenta la durabilit dell'arma. + + + Rivestimento in cromo della parte interna della canna + + + I separatori assorbono parte del rinculo. + + + Aggiunta di separatori in gomma + + + La parte scanalata semplificata utile nei combattimenti ravvicinati, dove la cadenza di fuoco pi importante della precisione. + + + Installazione di una canna con la sezione scanalata semplificata + + + L'installazione di una canna con scanalature aggiuntive migliora la velocit del proiettile e la precisione dell'arma, aumentando tuttavia il rinculo. + + + Canna con scanalature aggiuntive + + + L'alleggerimento della canna consente di ridurre sensibilmente il rinculo. + + + Trasferimento del compensatore/riduttore di fiammata dalla canna al telaio + + + Riduce il calore prodotto dalla canna aumentando al tempo stesso la cadenza di fuoco, senza sacrificare la stabilit della traiettoria. + + + Scanalatura sinusoidale della canna + + + La scanalatura poligonale serve ad aumentare la precisione dei fucili da cecchino. + + + Installazione di una canna con la sezione scanalata poligonale + + + Il potenziatore pneumatico consente di convertire parte del rinculo aumentando la pressione nella canna e accelerando la velocit di volata. + + + Installazione di un potenziatore pneumatico + + + I dispositivi di movimento aggiuntivi aumentano la capacit di carico. + + + Servomotori aggiuntivi + + + Un'invenzione dei tecnici della Freedom, che sono stati i primi a sostituire il metallo con la fibra di carbonio per ridurre il peso degli esoscheletri. + + + Sostituzione dei componenti metallici con fibra di carbonio + + + La blindatura evita che i componenti vitali dell'esoscheletro vengano danneggiati dai colpi di precisione nemici. + + + Blindatura dispositivi di guida + + + Questo sistema di movimento facilitato utilizza giunture e ammortizzatori rinforzati, consentendo di sfruttare il peso dell'esoscheletro per ottimizzare le funzioni di guida. + + + Sistema di movimento facilitato Shagohod + + + L'installazione dei potenziamenti idraulici una modifica che distingue gli esoscheletri di terza generazione da quelli di quarta. Consente di eseguire movimenti scattanti con l'esoscheletro. + + + Aggiunta di potenziatori idraulici nei dispositivi di movimento + + + L'inserto in tessuto riduce l'entit del danno subito in caso di impatto contro la piastra. + + + Strato di tessuto ammortizzante + + + Pi efficaci degli equivalenti in gomma, gli addensanti in silicone assorbono l'impatto riducendo i danni subiti. + + + Addensanti in silicone ammortizzanti + + + Il tessuto, le chiusure e gli addensanti vengono sostituiti con materiali sintetici per ridurre il peso dell'armatura. + + + Materiali polimerici sintetici e pi leggeri + + + Lo strato in gomma riduce l'entit del danno subito in caso di impatto contro la piastra. + + + Strato in gomma ammortizzante + + + Lo strato inferiore utile in caso di lacerazione del tessuto principale. + + + Uno strato in policarbonato, silicone e fibra di carbonio utile in caso di penetrazione dell'armatura principale. + + + Inserti polimerici protettivi + + + La tuta ermetica "Espansione" della Freedom serve a individuare i manufatti nelle aree anomale. + + + Tuta protettiva anti-anomalie "Espansione" + + + Strato ermetico in materiali sintetici, utile in caso di danneggiamento dello strato esterno. + + + Strato sintetico + + + Varie modifiche ergonomiche che usano componenti in gomma, per conservare la mobilit anche indossando le armature pi pesanti. + + + Tuta in gomma per aumentare la mobilit + + + La constantana un ottimo isolante elettrico e ha un punto di fusione molto elevato. + + + Inserti in constantana per isolamento termico + + + Il piombo un'ottima difesa contro le radiazioni, essendo in grado di assorbirne tutte e tre le tipologie. + + + Aggiunta di piombo nella tuta + + + Protezione di base contro la pioggia e le sostanze corrosive che entrano in contatto con la pelle. + + + Tuta in tessuto + + + Tessuto trattato con una sostanza ignifuga, molto apprezzato dagli stalker che cercano manufatti di fuoco. + + + Tessuto trattato con sostanza ignifuga + + + Gli inserti in magnesio offrono una buona protezione dai picchi di calore. + + + Inserti in magnesio + + + Anche un semplice strato interno in plastica pu proteggere l'indossatore dai pericoli chimici ed elettrici. + + + Strato interno ermetico in plastica + + + Il tessuto, le chiusure e gli addensanti vengono sostituiti con materiali sintetici per ridurre il peso dell'armatura. + + + Sostituzione del tessuto con materiali sintetici + + + Il plexiglas assorbe solo due tipi di radiazioni, ma molto pi leggero del piombo. + + + Strato interno in plexiglas anti-radiazioni + + + Una buona protezione dai pericoli chimici ed elettrici. + + + Strato interno in plastica, ermetico ed elastico + + + Un sottile strato in constantana per garantire un ottimo isolamento elettrico. + + + Strato interno in constantana per isolamento elettrico + + + La lana di vetro viene utilizzata nelle tute indossate dalle squadre di intervento nei luoghi colpiti da disastri naturali. + + + Protezione termica in lana di vetro + + + Il tessuto impregnato previene la contaminazione chimica. + + + Tessuto della tuta impregnato + + + La gomma il materiale di base per proteggersi dalle brevi esposizioni alle radiazioni. + + + Tessuto della tuta in gomma + + + Utilizzato dagli stalker per aumentare la durabilit. + + + Telaio protettivo schermante ad alta durabilit + + + Il nichel un materiale sufficientemente ignifugo per essere utilizzato negli inserti delle armature. + + + Tuta ignifuga con inserti in nichel + + + Questa lega di nichel e magnesio viene usata nelle armature per prevenire le scosse elettriche. + + + Tuta isolante con inserti in manganina + + + Tuta ermetica con uno strato anti-corrosione e blindatura in kevlar. + + + Tuta blindata integrata "Seconda pelle" + + + Una tuta creata usando i polimeri innovativi precedentemente impiegati dall'istituto di ricerca di Kiev per sviluppare la tuta "Ecologista", con le cavit riempite di bismuto. + + + Tuta polimerica "Ecologista" con inserti in bismuto + + + La maglia in piombo crea una protezione impenetrabile contro le radiazioni e le contaminazioni chimiche, senza sacrificare la mobilit. + + + Tuta in plexiglas "Salvavita" con maglia piombata flessibile + + + Una tuta artigianale sviluppata dopo il disastro di Chernobyl. Utilizzata negli esoscheletri per prevenire i guasti elettronici. + + + Tuta "Evacuatore" con inserti in piombo + + + Installazione di un mirino d'assalto per i combattimenti ravvicinati. + + + Ottica reflex 1.6x + + + Installazione di un mirino ottico per i combattimenti a medio-lungo raggio. + + + Mirino ottico 4.0x + + + Installazione di un mirino ottico per i combattimenti a lungo raggio. + + + Mirino ottico 5.0x + + + Installazione di un mirino ottico per i combattimenti a lungo raggio. + + + Mirino ottico 6.0x + + + Una modifica effettuata nelle armi d'assalto con ottica reflex migliorando semplicemente il livello di contrasto nella scala del giallo. Essenziale in condizioni di luce crepuscolare o all'interno di edifici poco illuminati. + + + Livello di contrasto dell'ottica migliorato + + + Il visore termico consente di rilevare e identificare le fonti di calore. + + + Acquisizione ottica automatica del bersaglio + + + I dispositivi di visione notturna hanno salvato la vita a molti cecchini. + + + Installazione dispositivo visione notturna + + + Questa modifica consente di regolare facilmente l'ottica in base alla distanza di tiro. + + + Ottica regolabile con indicatore di distanza + + + Un calcio pneumatico che riduce il rinculo durante le raffiche. + + + Calcio pneumatico + + + Il poggiaspalla mobile riduce notevolmente l'impatto del rinculo sul corpo. + + + Installazione di un poggiaspalla ammortizzante + + + Un calcio pi moderno sviluppato in seguito a studi approfonditi sull'anatomia umana. + + + Calcio ergonomico + + + Quando il proiettile viene sparato, parte dei gas di scarico vengono spostati dalla canna alla cavit dietro l'otturatore, in modo da rendere pi fluido il suo arresto mentre torna in posizione. + + + Installazione di un tampone per i gas nel blocco dell'otturatore + + + L'allungamento del telaio dell'otturatore nel calcio migliora la stabilit della traiettoria, aumentando per il rinculo. + + + Allungamento del telaio dell'otturatore nel calcio + + + L'installazione di un componente mobile nel calcio genera un contro-effetto quando il colpo viene sparato. + + + Contrappeso mobile + + + Un supporto pi ampio aumenta la precisione. + + + Supporto pi ampio + + + Il tampone ammortizzante a molla riduce parzialmente il fastidioso rinculo prodotto dai mitragliatori portatili. + + + Tampone ammortizzante a molla integrato + + + L'inserimento di un tampone per l'otturatore nel calcio riduce e assorbe gran parte del rinculo. + + + Tampone a gas aggiuntivo per l'otturatore + + + Una parte ammortizzante in gomma viene spesso inserita nei calci di produzione industriale dei fucili da cecchino pi grandi. + + + Componente ammortizzante per il calcio + + + Il calcio regolabile con cuscinetto integrato utile per sparare anche nelle posizioni meno confortevoli. + + + Calcio regolabile con cuscinetto + + + Un componente installato nel calcio delle armi a grosso calibro con un potente rinculo. + + + Ammortizzatore idraulico per calcio + + + I filtri attivi possono resistere anche alle sostanze chimiche corrosive. + + + Filtri attivi + + + stato dimostrato che la fascia chiusa fornisce una protezione parziale contro le psico-emissioni dirette. + + + Fascia psico-protettiva con griglie d'acciaio sovrapposte + + + Una maschera utilizzata in presenza di aria contaminata o temperature critiche che non consentono di respirare normalmente. + + + Applicazione di un rivestimento schermante + + + Applicazione di un rivestimento schermante + + + Un filtro con un rivestimento rinforzato anti-corrosione e uno strato aggiuntivo precauzionale per la rimozione dei veleni. + + + Filtro per operazioni in aree contaminate + + + Una maschera in plexiglas che protegge parzialmente dalle radiazioni. + + + Rivestimento in plexiglas + + + Una maschera in plexiglas che protegge parzialmente dalle radiazioni. + + + Maschera respiratoria in plexiglas + + + Un respiratore in grado di filtrare qualsiasi tipo di veleno. + + + Maschera respiratoria impregnata + + + Questa matrice in berillio e alluminio fornisce un'eccellente protezione senza aumentare troppo il peso del casco. + + + Piastre in berillio e alluminio + + + Una matrice in berillio e titanio che assicura una protezione pi efficace senza aumentare troppo il peso. + + + Piastre in berillio e titanio + + + Filtri migliorati che mantengono il livello di ossigeno anche nelle aree pi contaminate. + + + Installazione di filtri migliorati per operazioni scientifiche + + + Una sofisticata psico-protezione che pare sia stata inventata da uno scienziato di nome Sakharov. + + + Installazione della fascia "Psico-difensore" + + + Un telaio in lega protettiva che previene i danni termici ed elettrici. + + + Protezione facciale in constantana "Uccello di fuoco" + + + Blindatura aggiuntiva che aumenta la durabilit del casco. + + + Blindatura casco aggiuntiva + + + Un filtro con un rivestimento purificatore aggiuntivo e un sistema per la rimozione dei veleni. + + + Respiratore rinforzato per condizioni estreme + + + Installazione di un dispositivo di visione notturna per le operazioni notturne o in condizioni di scarsa illuminazione. + + + Dispositivo di prima generazione per la visione notturna + + + Un sistema che attiva la respirazione a ciclo chiuso in caso di grave contaminazione dell'aria a causa di particelle radioattive o chimiche. + + + Sistema di prevenzione per minacce radioattive e chimiche + + + Maschera di respirazione e purificazione + + + Installazione di un dispositivo per la visione notturna pi avanzato che consente di operare anche in totale assenza di luce. + + + Dispositivo di seconda generazione per la visione notturna + + + Il visore termico consente di rilevare e identificare le fonti di calore. + + + Sistema di acquisizione automatica del bersaglio + + + Un dispositivo scientifico a onde sviluppato per le operazioni in aree anomale con psico-emissioni. + + + Psico-stimolatore "Oracolo" + + + Installazione di un dispositivo per la visione notturna pi avanzato che consente di operare anche in totale assenza di luce. + + + Dispositivo di terza generazione per la visione notturna + + + Le particelle d'aria ionizzate si muovono tra gli elettrodi del sistema in senso inverso rispetto agli elettroni, creando un vento ionico. + + + Sistema di raffreddamento a vento ionico + + + Uno scanner a infrarossi che consente di rilevare gli umani nelle vicinanze. + + + Scanner a infrarossi + + + L'SPB VPZ.m.IV la quarta versione di un sistema psico-protettivo di sicurezza psicologica. + + + Sistema da battaglia SPB VPZ.m.IV + + + La molla rinforzata serve ad aumentare la velocit del proiettile. + + + Molla di ritorno rinforzata + + + L'applicazione di addensanti sulle parti mobili del meccanismo riduce la deviazione della canna dalla traiettoria di tiro durante il fuoco. + + + Meccanismo di ritorno ammortizzato + + + L'installazione di una molla aggiuntiva a spirale inversa riduce il rinculo senza sacrificare la stabilit della traiettoria di tiro. + + + Molla di ritorno aggiuntiva + + + Lo sputter protettivo aumenta l'affidabilit e, soprattutto, assicura l'ermeticit, in modo da prevenire la dissipazione di energia. + + + Sputter protettivo per meccanismo di ritorno + + + Le bacchette in titanio possono sopportare cadenze di fuoco pi intense rispetto a quelle normali. + + + Bacchette meccanismo di ritorno in titanio + + + Un elemento sintetico installato sulle bacchette le fa muovere nel modo pi efficace, aumentando la precisione. + + + Aggiunta di un elemento di bilanciamento + + + L'ispessimento dell'involucro consente di aumentare la pressione nella canna e la velocit del proiettile. + + + Addensante involucro meccanismo di ritorno + + + Un ponte che viene aperto dai gas e chiuso dal meccanismo di ritorno, in modo da usare parte dell'energia del gas per azionare lo stesso meccanismo di ritorno. + + + Installazione di un ponte di distribuzione + + + Sostituzione del meccanismo di ritorno con una versione pi potente con due bacchette di guida e molle di ritorno. Aumenta la cadenza di fuoco dell'arma. + + + Conversione al sistema a due bacchette + + + I canali di uscita speciali per il gas vicino al tamburo dell'arma consentono di ridurre il rinculo. + + + Utilizzo dell'energia del gas + + + Le camere diagonali aggiunte al tamburo accelerano la rotazione del meccanismo che usa l'energia del gas. + + + Aggiunta di camere diagonali al tamburo + + + Questa modifica standard europea consente di ridurre il peso senza rinunciare all'affidabilit. + + + Calcio polimerico anti-impatto + + + Un castello altamente durevole che consente l'uso frequente dei fucili d'assalto in battaglia. + + + Castello in lega ad alta durabilit + + + Un semplice aumento di peso nella parte anteriore del castello per ridurre il rinculo. + + + Aggiunta di un contrappeso al castello + + + L'installazione di questi involucri aiuta a ridurre il surriscaldamento prodotto quando la cadenza di tiro dell'arma particolarmente elevata. + + + Involucri raffreddanti aggiuntivi + + + Una maniglia pi ergonomica consente di impugnare meglio l'arma quando si spara in movimento. + + + Castello ergonomico + + + Una modifica utilizzata esclusivamente per le canne con castello "bullpup", per semplificare la manutenzione dell'arma. + + + Castello modulare + + + Questo sputter previene il surriscaldamento dell'arma, elimina i difetti di fabbricazione e aumenta notevolmente la durabilit della canna. + + + Sputter dentellato con solco liscio + + + Un componente mobile leggero viene installato sulla maniglia inclinata per stabilizzare l'arma e compensare il rinculo. + + + Maniglia inclinata + + + La cavit all'interno della maniglia consente di ridurre il peso dell'arma. + + + Maniglia inclinata + + + Versione pi leggera del calcio standard. + + + Calcio pi leggero + + + Un materiale polimerico pi leggero che consente di ridurre il peso dell'arma. + + + Calcio polimerico anti-impatto + + + L'aggiunta di un contrappeso all'arma aiuta a ridurre il rinculo. + + + Aggiunta di un contrappeso + + + Una maniglia pi moderna e confortevole che aumenta l'ergonomia dell'arma. + + + Maniglia ergonomica + + + Una maniglia ammortizzante che riduce il rinculo. + + + Maniglia ammortizzante + + + Un calcio pi moderno e confortevole che aumenta l'ergonomia dell'arma. + + + Calcio ergonomico + + + Un rivestimento speciale che protegge l'arma dalle intemperie. + + + Rivestimento anti-corrosione + + + Un assorbitore in mercurio posizionato nel calcio dell'arma che elimina parzialmente il rinculo. + + + Assorbitore in mercurio + + + Un contrappeso mobile che si sposta dall'otturatore quando il proiettile viene sparato e assorbe parte del rinculo. + + + Aggiunta di un contrappeso di impulso + + + La sostituzione dei materiali serve a ridurre il danno subito dalla canna dovuto al surriscaldamento, aumentando di conseguenza la cadenza di fuoco. + + + Leghe a resistenza termica e alta durabilit + + + Una modifica importante che protegge l'arma dagli effetti della temperatura dell'aria durante l'uso. + + + Aggiunta di involucri di regolazione termica + + + L'alettatura una miglioria tecnica che richiede la massima precisione per evitare la formazione di punti di surriscaldamento sulla canna. + + + Alettatura esterna della canna + + + La sostituzione della canna con una versione pi moderna consente di aumentare notevolmente la precisione. + + + Modifica della geometria della canna + + + Un telaio costoso che aumenta enormemente la durabilit dell'arma. + + + Telaio in titanio + + + Questo telaio pi affidabile di quello composito. + + + Telaio in acciaio massiccio + + + Una sostituzione tecnica del telaio della pistola con una versione pi leggera che non riduce l'affidabilit dell'arma. + + + Telaio polimerico per pistola + + + Una maniglia pi moderna e confortevole che aumenta l'ergonomia dell'arma. + + + Maniglia ergonomica + + + Una maniglia ammortizzante che riduce il rinculo. + + + Maniglia ammortizzante + + + Flap addensanti che proteggono l'arma dalla sporcizia e dagli impatti. + + + Addensanti protettivi per il corpo dell'arma + + + Una modifica nella sezione posteriore per aumentare l'ergonomia della maniglia. + + + Maniglia con sezione posteriore dritta + + + La possibilit di regolare la lunghezza della maniglia aumenta l'ergonomia dell'arma. + + + Maniglia regolabile + + + Questa modifica possibile solo se nella maniglia stata installata una molla di ritorno. + + + Installazione di un componente ammortizzante per la molla di ritorno + + + La possibilit di scegliere la piastra pi adatta aumenta l'ergonomia dell'arma. + + + Maniglia modificata con piastre sostituibili + + + Questo involucro protegge le armi dall'usura, soprattutto se vengono usate spesso. + + + Installazione di un involucro in acciaio perforato + + + Un componente pi sofisticato e pi efficace nello smorzamento del rinculo rispetto a quelli utilizzati nelle armi automatiche standard. + + + Freno di bocca con compensazione migliorata + + + Una canna pi adatta e moderna per i colpi di precisione a lunghissimo raggio. + + + Installazione di una canna pesante con scanalatura poligonale + + + I fuller longitudinali sulla canna prevengono il surriscaldamento e l'accumulo di sporcizia. + + + Fuller longitudinali sulla canna + + + Silenziatore e soppressore della fiammata integrati, essenziali per il fuoco furtivo. + + + Installazione di un silenziatore integrato + + + In genere la scanalatura sinusoidale della canna viene eseguita nelle armi d'assalto per aumentare la cadenza di fuoco. + + + Scanalatura sinusoidale della canna + + + L'iniettore "Generazione A", sviluppato da un istituto di ricerca di Kiev, inietta regolarmente nel flusso sanguigno piccole dosi di adrenalina. Decisamente pericoloso, ma in casi di emergenza pu salvare la vita. + + + Iniettore di adrenalina "Furia" + + + Un sistema per la rimozione di particelle tossiche dal filtro di purificazione. + + + Sistema per rimuovere sostanze tossiche + + + Se viene portato costantemente sulla schiena, questo piccolo emettitore di onde sviluppato dalla Clear Sky pu aumentare la velocit di coagulazione del sangue. + + + Emostimolatore "Raggio" + + + Un sistema che carica elettricamente l'esterno della tuta, respingendo le particelle radioattive e chimiche. + + + Sistema anti-particelle integrato + + + Un iniettore "Generazione B" che introduce periodicamente nel flusso sanguigno un agente coagulante quando la pressione cala notevolmente. + + + Iniettore di emoglobina "Idra" + + + Questo sistema previene l'affaticamento mantenendo la temperatura corporea ottimale. + + + Installazione di un sistema di regolazione termica + + + Questo emettitore di onde da portare costantemente sul petto aumenta notevolmente la velocit di guarigione delle ferite, la risposta del sistema immunitario e la soglia del dolore dell'utilizzatore. + + + Biostimolatore "Sole" + + + Un dispositivo scientifico a onde sviluppato per le operazioni in aree anomale con psico-emissioni. + + + Psico-stimolatore "Oracolo" + + + Un iniettore "Generazione C" che introduce un insieme di sostanze non meglio identificate nel flusso sanguigno, accelerando la rigenerazione dei tessuti e lenendo il dolore. + + + Sistema di recupero "Fenice" + + + Un sistema integrato che controlla le condizioni di salute dell'utilizzatore, somministrando vitamine, adrenalina e sostanze anaboliche in caso di necessit. + + + Installazione di un sistema di supporto vitale + + + Questo emettitore di onde va posizionato sul collo. Nonostante il suo funzionamento sia poco chiaro, esercita un potente effetto calmante. + + + Neurostimolatore "Riflesso" + + + Lo scopo del compensatore del cane quello di assorbire parte del rinculo, migliorando l'efficacia dei colpi multipli durante le raffiche. + + + Compensatore per il cane dell'otturatore + + + Una delle modifiche pi facili e popolari che consente di ridurre la resistenza del grilletto. Semplice e utile. + + + Grilletto morbido + + + Una selezione speciale di componenti fatti con i vari materiali presenti nell'arma. Non sono affatto economici, ma aumentano la durabilit dell'arma. + + + Componenti misti per il meccanismo di fuoco + + + Consente di aumentare la cadenza di fuoco, a scapito di precisione e affidabilit. + + + Dispositivo ritardante per il grilletto + + + La rimozione della molla da battaglia consente di sparare il primo colpo mezzo secondo prima. Non molto, ma pu salvare la vita. + + + Rilascio senza molla + + + Uno sputter protettivo che rende impossibili i colpi accidentali dovuti a un guasto del meccanismo di fuoco. + + + Sputter protettivo meccanismo di fuoco + + + La rimozione dell'otturatore consente di migliorare la carica automatica, aumentando di conseguenza la cadenza di fuoco dell'arma. + + + Rimozione dell'otturatore dal meccanismo di fuoco + + + Questo sistema privo di impatto perfora il proiettile con un cane speciale invece di colpirlo, rendendo meno violento l'intero processo di fuoco. + + + Installazione di un meccanismo di fuoco privo di impatto + + + Il grilletto viene armato dal primo colpo, mentre tutti quelli successivi avvengono durante l'innesco automatico del grilletto. + + + Meccanismo di fuoco a doppio grilletto + + + Una delle modifiche pi facili e popolari che consente di ridurre la resistenza del grilletto. Semplice e utile. + + + Grilletto morbido + + + L'innesco parziale consente di aumentare la precisione. + + + Meccanismo di fuoco a innesco parziale + + + Consente di applicare la stessa pressione al grilletto dal primo all'ultimo colpo, migliorando la facilit d'uso. + + + Dispositivo di rilascio sicuro + + + Una modifica moderna che previene il distacco della sezione dell'otturatore. + + + Testa dell'otturatore migliorata + + + Un meccanismo di fuoco modulare che semplifica la manutenzione e la sostituzione delle parti, migliorando al tempo stesso la facilit d'uso. + + + Meccanismo di fuoco modulare + + + Il componente di innesco riduce sensibilmente la quantit di pressione da applicare sul grilletto, migliorando la precisione. + + + Installazione di un componente di innesco + + + Un nuovo ritrovato tecnologico che consente di modificare la modalit del meccanismo di fuoco con una semplice modifica. Un altro passo in avanti per migliorare l'ergonomia e la facilit d'uso. + + + Modalit di fuoco doppia + + + Dopo il primo colpo, basta premere il grilletto a met per sparare i colpi successivi. + + + Meccanismo di fuoco a corsa breve + + + I dispositivi di movimento aggiuntivi aumentano la capacit di carico. + + + Servomotori aggiuntivi + + + Il sistema somministra sostanze anti-tetaniche, anti-infiammatorie e antibiotiche. + + + Sistema integrato "Dottore da campo" + + + Un sistema di ventilazione per la tuta con un filtro precauzionale per le operazioni in aree contaminate. + + + Sistema interno di regolazione termica + + + Un miglioramento dell'ergonomia: gli agganci speciali collegati alla tuta riducono il peso percepito dell'equipaggiamento trasportato. + + + Corpetto per la distribuzione del peso + + + Le bombole d'ossigeno sono necessarie nelle zone con l'aria contaminata da particelle chimiche o radioattive. + + + Installazione di una bombola d'ossigeno + + + Installazione di un contenitore di manufatti aggiuntivo. + + + Contenitore di manufatti aggiuntivo + + + Un sistema di agganci che consente di distribuire il peso su tutto il corpo in modo uniforme. + + + Sistema per la distribuzione del peso + + + Un supporto posteriore riduce la concentrazione del peso sulle spalle, distribuendolo in tutto il corpo e aumentando di conseguenza il carico massimo. + + + Supporto posteriore per la distribuzione del peso + + + Un sistema che somministra sostanze antisettiche, anti-tetaniche e stimolanti. Pur essendo artigianale, non sembra avere effetti negativi sull'organismo. + + + Sistema integrato "Cura" + + + Questo sistema carica una griglia speciale con la stessa carica dell'anomalia, riducendone la pericolosit. + + + Sistema di contromisura elettrostatica "Trigone" + + + Lo strato interno impregnato previene la contaminazione chimica. + + + Strato interno impregnato per protezione chimica + + + Modello sperimentale di un sistema di corsa per maratone, non impiegato fuori dalla Zona per via del costo eccessivo e la dubbia utilit. + + + Sistema integrato "Atleta" + + + Questo sistema rimuove le sostanze tossiche dalle cavit respiratorie. + + + Sistema di rimozione sostanze tossiche "Antidoto" + + + Installazione di un contenitore di manufatti aggiuntivo. + + + Contenitore di manufatti a due compartimenti aggiuntivo + + + Un sistema di supporto da battaglia integrato nell'intera tuta. Usato raramente, soprattutto dagli Spetsnaz. Include dei sistemi per la somministrazione di adrenalina e la coagulazione del sangue. + + + Sistema di supporto da campo "Varyag" + + + Con questo sistema di supporto da battaglia sperimentale, i progettisti hanno eliminato le pericolose iniezioni di adrenalina, preferendo includere delle sostanze curative nel sistema dedicato alla coagulazione del sangue. + + + Sistema di supporto da campo "Skif" + + + Questa modifica piuttosto costosa in realt molto comune nelle armi di nuova generazione. + + + Installazione di un otturatore massiccio + + + L'ispessimento dell'otturatore previene la dissipazione di energia e migliora la stabilit della traiettoria di tiro. + + + Ispessimento dell'otturatore con inserti sintetici + + + Nonostante il nome, la parte sostituita quella dell'otturatore, che deve sopportare l'aumento della cadenza di fuoco. + + + Rilascio automatico rapido + + + Oltre allo sfiatatoio per il gas, viene inserito un blocco che si muove alla stessa velocit, assorbendo parte del rinculo. + + + Installazione di uno sfiatatoio con blocco mobile + + + Un secondo pistone muove il contrappeso per compensare l'impulso generato dal movimento dell'otturatore. + + + Installazione di un pistone a gas aggiuntivo + + + Lo sputter protettivo aumenta l'affidabilit e, soprattutto, assicura l'ermeticit, in modo da prevenire un'eccessiva dissipazione di energia. + + + Sputter protettivo per l'otturatore + + + La funzione dei solchi sul castello quella di ridurre la frizione e raccogliere le particelle pi piccole, prevenendo la contaminazione della sezione dell'otturatore. + + + Aggiunta di solchi longitudinali + + + La riduzione del diametro della camera del gas mediante addensanti sintetici aumenta notevolmente la velocit dei proiettili. + + + Energia del gas concentrata + + + Tornando nella posizione iniziale, l'otturatore ridireziona il flusso d'aria attraverso la canna, raffreddandola. + + + Raffreddamento forzato + + + L'otturatore dell'arma scivola lungo la canna, impedendo alla parte anteriore di muoversi verso l'alto. + + + Installazione di un otturatore scarrellante + + + L'installazione di un pistone a gas impedisce ai gas di entrare nella sezione dell'otturatore, migliorando notevolmente la pulizia dell'arma. + + + Installazione di un pistone a gas + + + Questo sistema raccoglie parte dei gas usando la sezione dell'otturatore per migliorarne il movimento. + + + Sistema di raccolta dell'energia del gas + + + Una sostituzione delle parti automatiche che pi un'ottimizzazione che un miglioramento del pistone a gas. Aumenta notevolmente la cadenza di fuoco dell'arma. + + + Pistone a gas a corsa breve + + + Un sistema di bloccaggio a rulli che riduce il rinculo e migliora i colpi multipli, usato spesso nelle armi moderne. + + + Passaggio a un sistema a rulli con otturatore semi-libero + + + Assorbendo parte del calore, questi componenti riducono il surriscaldamento dell'arma. + + + Componenti ad assorbimento termico + + + Il movimento pi lungo del pistone a gas aumenta leggermente la lunghezza dell'arma, migliorando molto la stabilit della traiettoria di tiro. + + + Movimento lungo del pistone a gas + + + Un tampone per le parti mobili che distribuisce uniformemente il rinculo in tutta l'arma, riducendone gli effetti. + + + Installazione di un tampone speciale per le parti mobili + + + Il raffreddamento forzato simmetrico di una parte della canna avviene grazie a un espulsore, prevenendo il surriscaldamento dell'arma. + + + Sistema di raffreddamento forzato simmetrico + + + Aumenta la cadenza di fuoco senza sovraccaricare le altre parti con un maggiore rinculo. + + + Otturatore mobile + + + Aumenta la stabilit della traiettoria di tiro migliorando il trasferimento dell'impulso al proiettile. + + + Sistema di chiusura della canna nella sezione dell'otturatore + + + Riduce il rinculo rallentando il movimento dell'otturatore. + + + Sistema di rallentamento dell'otturatore + + + Lo sputter previene l'usura dell'arma. + + + Sputter protettivo per l'otturatore + + + Aumenta la stabilit della traiettoria di tiro migliorando il trasferimento dell'impulso al proiettile. + + + Sistema di chiusura obliqua della canna + + + Un otturatore chiuso e pi pesante che garantisce il corretto funzionamento dell'intera sezione. + + + Otturatore chiuso e rinforzato + + + Un piccolo tampone che assorbe parte del rinculo. + + + Tampone anti-rinculo polimerico + + + L'installazione di un inserto in acciaio aiuta a ridurre il rinculo. + + + Installazione di un inserto di chiusura con solco a spirale + + + Aumentando il movimento dell'otturatore e rinforzando correttamente il meccanismo di ritorno possibile migliorare la stabilit della traiettoria di tiro. + + + Aumento del movimento dell'otturatore + + + Il movimento ridotto migliora notevolmente la cadenza di fuoco senza ridurre la stabilit della traiettoria di tiro. + + + Installazione di un limitatore di movimento per l'otturatore + + + Il movimento pi lungo dell'otturatore applica al proiettile una maggiore energia. + + + Installazione di un amplificatore di movimento per l'otturatore + + + Una sostituzione delle parti automatiche che pi un'ottimizzazione che un miglioramento del pistone a gas. Aumenta notevolmente la cadenza di fuoco dell'arma. + + + Installazione di un dispositivo a corsa breve per il recupero dell'energia + + + L'installazione di questo modulo migliora notevolmente i colpi multipli senza sacrificare la velocit di fuoco. + + + Modulo di ritorno a due molle combinate + + + L'inserimento di fori di compensazione aggiuntivi riduce sensibilmente il rinculo. + + + Compensatore di sollevamento della canna integrato + + + Una modernizzazione delle parti automatiche della pistola per il fuoco automatico. + + + Modalit di fuoco totalmente automatica + + + Una modernizzazione delle parti automatiche della pistola per sparare raffiche di tre colpi. + + + Modalit di fuoco con raffica a tre colpi + + + Costo + + + Installazione impossibile + + + Installato + + + Sei sicuro di voler installare: + + + Sist. acq. aut. bersaglio + + + Sist. acq. aut. bersaglio + + + Mirino ottico 5.0x + + + Mirino ottico 6.0x + + + Scanner a infrarossi + + + Peso dell'armatura + + + Visore notturno 2a gen. + + + Visore notturno 3a gen. + + + Aggancio mirino ottico + + + Silenziatore integrato + + + Lanciagranate sottocanna + + + Guarigione ferite + + + Ripristino salute + + + Visore notturno 1a gen. + + + Ottica regolabile + + + Ottica ad alto contrasto + + + Potenziatori servomotore + + + Durabilit della tuta + + + Non chiaro come funzioni quest'arma. Non pu essere riparata senza maggiori informazioni sulla sua progettazione. + + + Il tecnico non pu eseguire questa modifica + + + Questa parte gi stata modificata + + + Denaro insufficiente + + + Non usa i colpi + + + Modalit fuoco automatico + + + Mod. fuoco raff. 3 colpi + + + Numero di contenitori + + + al tecnico serve della vodka + + + al tecnico servono gli strumenti per il lavoro di base + + + al tecnico servono gli strumenti per il lavoro di precisione + + + al tecnico servono gli strumenti per la calibrazione + + + al tecnico servono maggiori informazioni + + + sono necessarie modifiche precedenti + + + Rivestimento protettivo "Armadillo", basato su zaffiri + + + Matrice rinforzata in titanio e berillio + + + Rivestimento extra in fibra di carbonio + + + Strato inferiore in tessuto gommato + + diff --git a/gamedata/configs/text/ita/st_land_names.xml b/gamedata/configs/text/ita/st_land_names.xml new file mode 100644 index 0000000..18dfac5 --- /dev/null +++ b/gamedata/configs/text/ita/st_land_names.xml @@ -0,0 +1,171 @@ + + + + Anomalia Artiglio + + + Anomalia Foresta d'acciaio + + + Segheria + + + Complesso dell'antenna Krug + + + Impianto dei rifiuti + + + Anomalia Circo + + + Stazione dei ranger + + + Skadovsk + + + Fattoria bruciata + + + Anomalia Boiler + + + Palude + + + Izumrudnoye + + + Shevchenko + + + Stazione di drenaggio + + + Gru del porto + + + Anomalia Pinquercia + + + Stazione di rifornimento + + + Vecchia chiatta + + + Anomalia Cicatrice + + + Ponte di Preobrazhensky + + + Altopiano meridionale + + + Officine delle sotto-stazioni + + + Anomalia Cumulo di cenere + + + Torre di raffreddamento + + + Sotto-stazione + + + Anomalia Plavni + + + Fabbrica di cemento + + + Kopachy + + + Yanov + + + Cava + + + Bunker degli scienziati + + + Complesso Volkhov AA + + + Boschetto anomalo + + + Parcheggio + + + Checkpoint + + + Anomalia Bitume + + + Tunnel orientale + + + Magazzino dei contenitori + + + Complesso di ventilazione + + + Piattaforme di atterraggio degli elicotteri + + + Anomalia Bagno di cemento + + + Stabilimento Jupiter + + + Cinema Prometheus + + + Porto del fiume + + + Vecchio centro servizio + + + Scuola + + + Ospedale + + + Centro servizi Yubileiny + + + Lavanderia + + + Asilo + + + Complesso di appartamenti + + + Macelleria + + + Grande magazzino + + + Libreria + + + Anomalia Vulcano + + + Anomalia Vite + + diff --git a/gamedata/configs/text/ita/st_mp_mapdesc.xml b/gamedata/configs/text/ita/st_mp_mapdesc.xml new file mode 100644 index 0000000..cd6a171 --- /dev/null +++ b/gamedata/configs/text/ita/st_mp_mapdesc.xml @@ -0,0 +1,126 @@ + + + + Stazione dei veicoli + + + Uno strano posto. Questo edificio tranquillo nasconde numerosi segreti, ma gli stalker sono attratti qui per un altro motivo... in quest'area ad alto rischio, ma anche ad alto profitto, si trova un'abbondante scorta di manufatti. Pensa alla svelta e agisci altrettanto alla svelta e la fortuna sar sicuramente dalla tua parte. + + + Uno strano posto. Questo edificio tranquillo nasconde numerosi segreti, ma gli stalker sono attratti qui per un altro motivo... un'abbondante scorta di manufatti. + + + Un deposito all'ingresso della Zona. I trattori, gli autobus e i camion che vi si trovano hanno gi percorso il loro ultimo chilometro... Finora non sono stati individuati manufatti in questo luogo, ma famoso per i predoni che danno la caccia ai principianti e li uccidono per rubare il loro bottino. Cerca riparo negli edifici e dietro i veicoli, e attento ai nemici sui tetti! + + + Un deposito all'ingresso della Zona. I trattori, gli autobus e i camion che vi si trovano hanno gi percorso il loro ultimo chilometro. + + + Un deposito deserto e il territorio adiacente. Qui possibile trovare alcune scorte e dell'equipaggiamento, se si cerca con impegno. Attento alle potenti anomalie e ai cecchini sul tetto del deposito... un ottimo punto di osservazione dal quale si pu controllare chiunque si avvicini all'area. + + + Un deposito deserto e il territorio adiacente. Fai attenzione ai cecchini nemici e alle anomalie potenti. + + + Un luogo enigmatico e affascinante. Questa piscina stata costruita per condurre esperimenti su qualcuno o qualcosa, ma il suo scopo preciso rimarr per sempre un mistero. Qui non ci sono manufatti, quindi gli stalker sono stati attirati qui per quel che resta di bizzarri congegni e assemblati. Attento ai tetti e ricorda che nell'area i livelli di radiazione sono elevatissimi. + + + Un luogo enigmatico e affascinante. Questa piscina stata costruita per condurre esperimenti su qualcuno o qualcosa, ma il suo scopo preciso rimarr per sempre un mistero. + + + Questa pericolosa frazione della Valle Oscura formata da una lunga strada e da un istituto abbandonato. Solo il cielo sa cosa si insegnava all'istituto. L'unica cosa che si pu imparare in questi giorni la sopravvivenza! Oh, e tieni d'occhio i tetti... + + + Questa pericolosa frazione della Valle Oscura formata da una lunga strada e da un istituto abbandonato... + + + Questa fabbrica desolata il luogo di riposo di innumerevoli stalker. Una schiera di anomalie attende i visitatori a ogni passo, ma questi continuano ad arrivare a frotte attirati dai suoi preziosi manufatti. Attento alle radiazioni! + + + Questa fabbrica desolata il luogo di riposo di innumerevoli stalker. + + + La stazione dei pompieri i cui uomini furono inviati a salvare la centrale di Chernobyl nel 1986. La torre un eccellente punto di osservazione, dal quale si possono tenere d'occhio le aree vicine e lontane. Sono in pochi ad avventurarsi ai piani alti degli edifici o nei seminterrati, anche se forse meglio cos. Da un po' di tempo in quest'area le fazioni della Zona si azzannano a vicenda, nel tentativo di conquistare questa posizione strategica. + + + La stazione dei pompieri i cui uomini furono inviati a salvare la centrale di Chernobyl nel 1986. La stazione un eccellente punto strategico. + + + Parte di un immenso immondezzaio, dove cumuli di rifiuti radioattivi vennero scaricati dopo il disastro del 1986, pieno di gru decrepite e varie attrezzature. Le altre attrazioni del luogo comprendono vecchi edifici in rovina e un enorme hangar. La vicinanza al Cordon e una relativa abbondanza di manufatti attirano gli stalker che cercano missioni poco impegnative. + + + Parte di un immenso immondezzaio, dove cumuli di rifiuti radioattivi vennero scaricati dopo il disastro del 1986. + + + Un piccolo quartiere nell'enigmatica citt di Limansk: condomini abbandonati e un edificio lasciato a met tra di loro. Quando in questo luogo vennero rinvenuti numerosi manufatti di valore, la notizia si diffuse molto rapidamente in tutta la Zona. Furono aperte alcune strade per Limansk e da allora le sparatorie non si sono fermate nemmeno per un minuto. + + + Un piccolo quartiere nell'enigmatica citt di Limansk: condomini abbandonati e un edificio lasciato a met tra di loro. + + + Un villaggio abbandonato e dimenticato da tutti nelle profondit della Zona. Un piccolo e cupo lago, poco profondo, che ospita rottami di veicoli e ti infonde fino al tuo subconscio tutto il terrore della Zona. Attento ai cecchini, ma ricorda: la Zona favorisce i coraggiosi. + + + Un villaggio abbandonato e dimenticato da tutti nelle profondit della Zona. Un piccolo e cupo lago, poco profondo, che ospita rottami di veicoli e ti infonde fino al tuo subconscio tutto il terrore della Zona. + + + Una base militare abbandonata piena di camion e veicoli militari in disuso, caserme e quartieri generali in rovina. L'aspetto desolato, per, ingannevole: questa una vera e propria miniera di manufatti, il che significa che il nemico potrebbe essere nascosto dietro ogni angolo. + + + Una base militare abbandonata piena di camion e veicoli militari in disuso, caserme e quartieri generali in rovina. + + + Questo vecchio villaggio un luogo alquanto sinistro. Se sei abbastanza coraggioso da spingerti fin qui, tieniti pronto a evitare un benvenuto sotto forma di proiettile alla testa. Qui non esistono posti sicuri, quindi che il mirino e il silenziatore siano con te! + + + Questo vecchio villaggio un luogo alquanto sinistro. Forse sei riuscito ad arrivare fino a qui, ma ora non pensare di rilassarti. + + + Questa non una piscina, ma pi un bagno di sangue. Echi di proiettili, esplosioni e strilli dei moribondi vagano per i corridoi piastrellati... Sono pochi gli stalker che sanno come arrivare qui, ma ancora meno sono quelli che sanno come uscire. + + + Questa non una piscina, ma pi un bagno di sangue. Echi di proiettili ed esplosioni vagano per i corridoi piastrellati. + + + Una piccola stazione ferroviaria nei pressi della fabbrica Rostok. + + + Una piccola stazione ferroviaria nei pressi della fabbrica Rostok, piena di locomotive e vagoni arrugginiti, per sempre immobili sui binari. Un'abbondanza di manufatti attira gli impavidi stalker da ogni angolo della Zona. + + + Un centro riparazioni nei pressi di un piccolo villaggio. Tutti i veicoli ancora agibili sono stati sistemati per gestire le conseguenze di Chernobyl. Col tempo, il resto dell'attrezzatura stata saccheggiata per ottenere pezzi di ricambio. L'area piena di pericoli, come paludi insidiose e canneti contaminati nei quali, se hai fortuna, potresti trovare qualcosa di valore. + + + Un centro riparazioni nei pressi di un piccolo villaggio. L'area piena di pericoli, come paludi insidiose e canneti contaminati. + + + Cataste di metallo arrugginiscono dietro mura di cemento. Prima della fine del secolo, lo stabilimento era operativo accompagnato da slogan socialisti emessi dagli altoparlanti, ma l'edificio venne abbandonato molto tempo fa. + + + Un vecchio stabilimento deserto: silenziose cataste di metallo dietro mura di cemento sono tutto quello che rimane. + + + Un centro sportivo di Pripyat, non lontano dalla scuola deserta. I tipi di sport qui praticati sono cambiati radicalmente dal 1986, cos come il numero dei partecipanti. Gli stalker sono attratti dalla gloria facile, dai bottini, dai manufatti... e a volte restano qui per sempre. + + + Un centro sportivo di Pripyat, non lontano dalla scuola deserta. + + + Un luogo alquanto insolito. Molti ridono degli stalker che sostengono di averlo visto, eppure esiste. Le anomalie gravitazionali hanno deturpato il terreno e creato un panorama che pare alieno. L'area dominata da tre enormi torri, resti di attrezzature militari e zolle di terra fluttuanti, strappate dal terreno. + + + Un luogo alquanto insolito. Le anomalie gravitazionali hanno deturpato il terreno e creato un panorama che pare alieno. + + + Prima che la Duty si stabilisse qui, questi erano i settori periferici della fabbrica Rostok. Un luogo misterioso, ma ricco di manufatti. Ogni hangar deserto del magazzino colmo di pericoli letali. Sii prudente e tieni d'occhio la torre bianca... + + + Prima che la Duty si stabilisse qui, questi erano i settori periferici della fabbrica Rostok. Un luogo misterioso, ma ricco di manufatti. + + + Pochi osano avventurarsi nella citt deserta di Pripyat, un tempo casa degli impiegati alla centrale di Chernobyl. Nonostante questo, le strade della citt fantasma sono state recentemente teatro di violenti scontri a fuoco in un quartiere tra il cinema Prometheus, il molo e le case di Kurchatova Street. + + + Una piccola zona di Pripyat, tra il cinema Prometheus, il molo e le case di Kurchatova Street stata teatro di violenti scontri a fuoco tra i pochi che sono riusciti ad arrivare in citt. + + diff --git a/gamedata/configs/text/ita/st_mp_speechmenu.xml b/gamedata/configs/text/ita/st_mp_speechmenu.xml new file mode 100644 index 0000000..ec984b1 --- /dev/null +++ b/gamedata/configs/text/ita/st_mp_speechmenu.xml @@ -0,0 +1,57 @@ + + + + Gente, attaccare! + + + Vado a prendere il manufatto! Coprimi! + + + Seguimi! + + + Per ora proteggi il manufatto. Aspetta a prenderlo! + + + Mantengo la posizione! + + + Mantenete la posizione! + + + Prendi il manufatto! Ti copro io! + + + Mi serve aiuto! + + + Non ho soldi... comprami dell'equipaggiamento! + + + No. + + + Nessuno in vista! + + + Rapporto, subito! + + + Ritirata! + + + Restituisci il manufatto! + + + Ricevuto. + + + Taci! + + + Restiamo uniti. + + + Prendi il manufatto! + + diff --git a/gamedata/configs/text/ita/st_mp_teamdesc.xml b/gamedata/configs/text/ita/st_mp_teamdesc.xml new file mode 100644 index 0000000..0f9f33e --- /dev/null +++ b/gamedata/configs/text/ita/st_mp_teamdesc.xml @@ -0,0 +1,15 @@ + + + + Gli anarchici della Zona. Sostengono che la Zona sia un santuario di libert e credono che qui tutte le leggi, le regole e le convenzioni del mondo esterno non siano valide. Il loro motto "Fai quel che vuoi e pensa ai fatti tuoi". La Freedom combatte i tentativi del governo di controllare la Zona ed in guerra con i mercenari. I suoi membri sono equipaggiati principalmente con armi da fuoco russe e sovietiche. + + + Fazione della Freedom (stalker liberi) + + + Questi tagliagole in cerca di avventura provengono da tutto il mondo e accettano persino i lavori pi sporchi. Il loro motto , prevedibilmente, "Pecunia non olet". Continueranno a combattere per avere il controllo completo dei campi di manufatti, finch ce ne sar richiesta. I mercenari sono equipaggiati principalmente con armi da fuoco occidentali. + + + Fazione dei mercenari (tagliagole) + + diff --git a/gamedata/configs/text/ita/st_quests_general.xml b/gamedata/configs/text/ita/st_quests_general.xml new file mode 100644 index 0000000..6165a9f --- /dev/null +++ b/gamedata/configs/text/ita/st_quests_general.xml @@ -0,0 +1,18 @@ + + + + Attenzione! Inizio emissione tra: + + + Devi raggiungere subito la copertura pi vicina per ripararti dall'emissione. + + + Non devi mai uscire allo scoperto durante un'emissione. + + + Emissione: trova un riparo + + + Emissione: attendi al riparo + + diff --git a/gamedata/configs/text/ita/st_quests_jupiter.xml b/gamedata/configs/text/ita/st_quests_jupiter.xml new file mode 100644 index 0000000..6090dc9 --- /dev/null +++ b/gamedata/configs/text/ita/st_quests_jupiter.xml @@ -0,0 +1,687 @@ + + + + Debiti: consegna il denaro ai banditi + + + Vano deve dei soldi ai banditi per una tuta, ma non pu saldare il debito perch gli interessi aumentano troppo in fretta. Ti ha chiesto di risolvere questo problema. + + + Debiti: torna da Vano + + + Riferisci a Vano come hai risolto il problema del suo debito. + + + Debiti: affronta i banditi + + + La questione del debito di Vano si complicata troppo. Elimina i banditi. + + + Ostaggio: ricevi la tua ricompensa dagli amici di Mitay + + + Mitay stato liberato. Parla con i suoi amici al bar per incassare la ricompensa. + + + Ostaggio: libera Mitay + + + Ostaggio: parla con Grizzly per assicurarti che sia pronto + + + Devi parlare con Grizzly prima di provare a liberare l'ostaggio. + + + Ostaggio: libera Mitay con la forza + + + Devi eliminare i banditi per liberare uno stalker chiamato Mitay. + + + Ostaggio: raggiungi gli stalker + + + Gli stalker ti aiuteranno a liberare l'ostaggio. Devi incontrarti con loro di notte per attaccare insieme i banditi. + + + Ostaggio: organizza un riscatto per la liberazione di Mitay + + + Organizza un riscatto con il leader dei banditi per liberare uno stalker chiamato Mitay. + + + Libera uno stalker chiamato Mitay, preso in ostaggio dai banditi. + + + Ostaggio: conduci Mitay fuori dal campo dei banditi + + + Il campo dei banditi troppo pericoloso. Devi scortare Mitay all'esterno del campo. + + + Ostaggio: parla con Mitay + + + Mitay relativamente al sicuro. Parla con lui per decidere come procedere. + + + Verso Pripyat: parla con il tecnico riguardo al sottopasso + + + I documenti che hai trovato indicano chiaramente l'esistenza di un sottopasso che conduce a Pripyat, sotto lo stabilimento Jupiter. Il sottopasso privo di energia e pieno di gas, e l'ingresso stato bloccato. Devi trovare un tecnico che possa attivare il generatore e aprire il blocco del sottopasso. + + + Il modulo di memoria in buone mani. Ora devi attendere che venga sbloccato. + + + UAV: sblocca il modulo di memoria + + + UAV: ottieni il modulo di memoria da Nitro + + + UAV: ottieni il modulo di memoria da Novikov + + + Nitro ha sbloccato il modulo di memoria. Ottieni il modulo per scoprire cosa contiene. + + + Novikov ha sbloccato il modulo di memoria. Ottieni il modulo per scoprire cosa contiene. + + + Sei riuscito a recuperare un modulo di memoria dall'UAV. necessario sbloccarlo per accedere alle informazioni che contiene. + + + UAV: attendi che il modulo di memoria venga sbloccato + + + Oasi: trova delle prove + + + L'Oasi stata trovata, e in effetti possiede davvero delle propriet curative. Raccogli delle prove da portare agli scienziati. + + + Oasi: porta la prova agli scienziati + + + L'Oasi stata trovata, e in effetti possiede davvero delle propriet curative. Consegna agli scienziati il manufatto che hai trovato, come prova. + + + Oasi: scopri se la leggenda vera + + + Ozersky, lo scienziato del bunker, ti ha chiesto di cercare un luogo leggendario della Zona chiamato "l'Oasi". Pare che contenga una specie di fonte curativa, ma nessuno mai riuscito a dimostrarne l'esistenza. + + + Kopachy: parti con Zio Yar + + + Zio Yar ha bisogno d'aiuto. Vai a Kopachy insieme a lui. + + + Kopachy: elimina i mercenari + + + Pare che Zio Yar abbia anticipato l'arrivo dei mercenari. Devi eliminarli. + + + Kopachy: resta vicino a Zio Yar + + + Zio Yar ti ha chiesto di stargli vicino senza fare rumore. + + + Kopachy: parla con Zio Yar + + + I mercenari sono morti. Parla con Zio Yar e fatti spiegare cosa successo. + + + Psico-emissioni intermittenti: porta la formazione anomala agli scienziati + + + Porta a Hermann il campione che hai trovato, come concordato. Pare che la fonte delle psico-emissioni intermittenti sia proprio questo oggetto, parzialmente trasformato dall'esposizione alle anomalie. + + + Psico-emissioni intermittenti: indaga sulla fonte + + + Perlustra la galleria in cerca di formazioni anomale. Gli scienziati ritengono che lo psico-campo intermittente abbia una fonte precisa, probabilmente un manufatto. + + + Psico-emissioni intermittenti: incontra la squadra di Topol + + + Devi incontrare la squadra di Topol nella galleria con le psico-emissioni intermittenti. + + + Psico-emissioni intermittenti: parla con Topol + + + Unisciti alla squadra di Topol per esplorare la galleria con le psico-emissioni intermittenti. Gli stalker sorveglieranno la galleria mentre tu andrai in cerca di ci che ti hanno chiesto gli scienziati. + + + Devi portare a Nitro tutti i dispositivi radio che riesci a trovare. + + + A Nitro servono dei dispositivi radio. Puoi dargli quelli che possiedi o cercarne degli altri. + + + Equipaggiamento radio: trova materiali per Nitro + + + A Nitro servono dei dispositivi radio. Ha detto che dovresti cercarli nella fabbrica di cemento. + + + Furto: scopri chi il responsabile del furto + + + Chiedi agli stalker di Yanov se hanno visto una persona sospetta che potrebbe aver derubato un ripostiglio personale. + + + Furto: controlla la sotto-stazione + + + Devi controllare la sotto-stazione, il luogo in cui si diretto lo stalker che potrebbe aver commesso il furto. + + + Furto: prendi le tue cose + + + Tutti gli oggetti rubati da Snag dovrebbero essere nel suo nascondiglio, nelle fogne dietro la sotto-stazione. + + + Pianta anomala: ottieni un campione della pianta + + + Un'area piena di vegetazione anomala comparsa vicino al margine della cava. Ozersky ti ha chiesto di portargli un campione di pianta per le sue ricerche. + + + Pianta anomala: consegna il campione a Ozersky + + + Devi portare il campione di pianta a Ozersky, che in cambio convincer Hermann a darti una tuta scientifica. + + + Caccia: elimina i mutanti non identificati + + + Un gruppo di stalker ha incontrato dei mutanti non identificati nelle gallerie a nord dello stabilimento Jupiter. Perlustra l'area ed elimina i mutanti. + + + Caccia: ottieni da Trapper la tua ricompensa per aver ucciso i mutanti nella galleria + + + I mutanti nelle gallerie a nord dello stabilimento Jupiter sono stati eliminati. Informa Trapper o ottieni la tua ricompensa. + + + Teoria: posiziona lo scanner al centro della frana + + + Posiziona lo scanner al centro della frana per verificare la teoria di Ozersky. + + + Teoria: attendi la fine dell'esperimento + + + Ora lo scanner in modalit attiva e ha iniziato a registrare la presenza di mutanti. Attendi che vengano raccolti abbastanza dati per confermare o smentire la teoria. + + + Teoria: prendi lo scanner + + + Sono stati raccolti dati a sufficienza per confermare la teoria di Ozersky. Prendi lo scanner. + + + Teoria: consegna lo scanner a Ozersky + + + Devi dare lo scanner a Ozersky. I dati raccolti dovrebbero bastare per confermare la sua teoria. + + + Caccia: uccidi i succhiasangue delle paludi + + + Un gruppo di succhiasangue delle paludi stato avvistato a Fen, dietro la fabbrica di cemento. Gli stalker locali ti hanno chiesto di eliminarli. + + + Caccia: ottieni da Trapper la tua ricompensa per aver ucciso i succhiasangue delle paludi + + + I succhiasangue delle paludi sono morti. Vai da Trapper per incassare la ricompensa offerta dagli stalker locali. + + + Caccia notturna: uccidi la chimera + + + Le chimere sono predatrici notturne, ma nessuno sa dove si trova la tana diurna di questo esemplare. Devi ucciderla di notte, quando esce dalla tana per cacciare vicino al complesso di ventilazione. + + + Caccia notturna: riferisci a Trapper che la chimera morta + + + La chimera assassina morta e Fox, il cacciatore, stato vendicato. Informa Trapper. + + + Attrezzi: porta gli attrezzi a Nitro + + + Nitro ti ha chiesto di portargli due kit di attrezzi: uno per i lavori di base e uno per quelli avanzati. In cambio, il tecnico ti pagher e potr eseguire modifiche pi complesse per armi e armature. + + + Attrezzi: porta gli attrezzi a Nitro + + + Nitro ti ha chiesto di portargli due kit di attrezzi: uno per i lavori di base e uno per quelli di precisione. In cambio, il tecnico ti pagher e potr eseguire modifiche pi complesse per armi e armature. + + + Attrezzi: porta gli attrezzi a Nitro + + + Nitro ti ha chiesto di portargli un kit di attrezzi per i lavori di base. In cambio, il tecnico ti pagher e potr eseguire modifiche pi complesse per armi e armature. + + + Attrezzi: porta gli attrezzi a Nitro + + + Nitro ti ha chiesto di portargli due kit di attrezzi: uno per i lavori avanzati e uno per quelli di precisione. In cambio, il tecnico ti pagher e potr eseguire modifiche pi complesse per armi e armature. + + + Attrezzi: porta gli attrezzi a Nitro + + + Nitro ti ha chiesto di portargli un kit di attrezzi per i lavori avanzati. In cambio, il tecnico ti pagher e potr eseguire modifiche pi complesse per armi e armature. + + + Attrezzi: porta gli attrezzi a Nitro + + + Nitro ti ha chiesto di portargli un kit di attrezzi per i lavori di precisione. In cambio, il tecnico ti pagher e potr eseguire modifiche pi complesse per armi e armature. + + + Attrezzi: porta gli attrezzi a Nitro + + + Nitro ti ha chiesto di portargli tre kit di attrezzi: uno per i lavori di base, uno per quelli avanzati e uno per quelli di precisione. In cambio, il tecnico ti pagher e potr eseguire modifiche pi complesse per armi e armature. + + + Pripyat 1: trova una tuta provvista di modulo respiratorio a ciclo chiuso + + + Ti servir una tuta con un modulo respiratorio a ciclo chiuso per attraversare il sottopasso di Pripyat 1, essendo stato riempito con anidride carbonica mista a una sostanza sconosciuta. + + + Pripyat 1: accompagna Strider da Zulu + + + Devi accompagnare Strider da Zulu e presentarlo come un nuovo membro della squadra. Se un combattente Monolith come lui si presentasse da solo, Zulu non lo accoglierebbe certo a braccia aperte. + + + Pripyat 1: parla con Strider riguardo a una tuta protettiva + + + Il sottopasso di Pripyat 1 stato riempito con anidride carbonica mista a una sostanza sconosciuta. Devi dire a Strider che necessario indossare una tuta con un modulo respiratorio a ciclo chiuso per attraversare il sottopasso. + + + Pripyat 1: forma una squadra per raggiungere Pripyat + + + Nitro potrebbe aprire il blocco del sottopasso di Pripyat 1, ma si rifiuta di entrare nello stabilimento Jupiter senza una protezione adeguata. Inoltre, ti sconsiglia di attraversare il sottopasso da solo. Potresti chiedere aiuto a Zulu, e Nitro ti ha suggerito di inviargli nuove reclute. + + + Pripyat 1: parla con Zulu riguardo alla spedizione verso Pripyat + + + Nitro potrebbe aprire il blocco del sottopasso di Pripyat 1, ma si rifiuta di entrare nello stabilimento Jupiter senza una protezione adeguata. Inoltre, ti sconsiglia di attraversare il sottopasso da solo. Secondo Nitro, Zulu potrebbe aiutarti a formare una squadra. Vai a parlare con lui. + + + Pripyat 1: accompagna Sokolov da Zulu + + + Sokolov ha accettato di andare a Pripyat, e potrebbe prendere una tuta scientifica prima di lasciare il bunker. Accompagnalo da Zulu e presentalo come un nuovo membro della squadra. + + + Pripyat 1: parla con Sokolov riguardo a una tuta protettiva + + + Pripyat 1: parla con Ozersky riguardo a una tuta per Sokolov + + + Sokolov vuole indossare una tuta scientifica per proteggersi, ma Hermann non vuole dargli una di quelle conservate nel bunker. Parla con Ozersky, sicuramente pi aperto e ragionevole. + + + Pripyat 1: informa Sokolov riguardo alla tuta scientifica + + + Ozersky molto soddisfatto del campione di pianta. Ti ha chiesto di dire a Sokolov che pu prendere la sua tuta scientifica da Hermann. + + + Il sottopasso di Pripyat 1 stato riempito con anidride carbonica mista a una sostanza sconosciuta. Devi dire a Sokolov che necessario indossare una tuta con un modulo respiratorio a ciclo chiuso per attraversare il sottopasso. + + + Pripyat 1: porta a Vano il denaro per la tuta + + + La tuta per la quale Vano aveva contratto un debito con i banditi include un modulo respiratorio a ciclo chiuso. Vano ha dovuto impegnarla per saldare il debito. Ora ha bisogno di 3.000 rubli per riaverla indietro. + + + Pripyat 1: accompagna Vano da Zulu + + + Vano disposto ad andare a Pripyat. Devi accompagnarlo da Zulu e presentarlo come un nuovo membro della squadra. Cos Vano avr anche occasione di ricomprare la sua tuta. + + + Pripyat 1: parla con Vano riguardo a una tuta protettiva + + + Il sottopasso di Pripyat 1 stato riempito con anidride carbonica mista a una sostanza sconosciuta. Devi dire a Vano che necessario indossare una tuta con un modulo respiratorio a ciclo chiuso per attraversare il sottopasso. + + + Flint, noto anche come Magpie, un vile bastardo. Devi mettere in guardia gli stalker di Zaton o le altre fazioni, cos avr la lezione che si merita. + + + Flint solo un pallone gonfiato che parla di cose che non ha mai visto. Qualcuno dovrebbe smascherarlo pubblicamente. + + + Menzogne: sistema Flint + + + Flint si assume il merito di imprese che non ha mai compiuto. Deve imparare a tenere la bocca chiusa. + + + Flint uno spaccone di prima categoria. Parla con lui e cerca di farlo ragionare. + + + Flint, noto anche come Magpie, un vile bastardo. Devi mettere in guardia gli stalker di Zaton o le altre fazioni. Sarebbe una vendetta con i fiocchi. + + + Ricerca sulle anomalie: ottieni gli scanner dal tecnico + + + Ottieni gli scanner da Novikov. Hermann vuole raccogliere dati sulla formazione dei manufatti, e per questo necessario posizionare gli scanner al centro di varie anomalie. + + + Ricerca sulle anomalie: posiziona lo scanner nell'anomalia + + + Ricerca sulle anomalie: ottieni la tua ricompensa + + + Ottieni la ricompensa che ti spetta per aver posizionato gli scanner nelle anomalie. Ora che gli scanner sono in posizione, Hermann pu iniziare a raccogliere dati sulla formazione dei manufatti. + + + Posiziona lo scanner al centro dell'anomalia. Hermann vuole raccogliere dati sulla formazione dei manufatti, e per questo necessario posizionare gli scanner al centro di varie anomalie. + + + Un contratto con gli scienziati: porta il manufatto Kolobok a Garry + + + Garry ha bisogno del manufatto Kolobok per onorare il suo contratto con gli scienziati. Portagli questo manufatto. + + + Un contratto con gli scienziati: porta il manufatto Pezzo di carne a Garry + + + Garry ha bisogno del manufatto Pezzo di carne per onorare il suo contratto con gli scienziati. Portagli questo manufatto. + + + Un contratto con gli scienziati: porta i manufatti Kolobok e Pezzo di carne a Garry + + + Garry ha bisogno dei manufatti Kolobok e Pezzo di carne per onorare il suo contratto con gli scienziati. Portagli questi manufatti. + + + Un contratto con gli scienziati: manufatti consegnati + + + Garry ha ottenuto entrambi i manufatti, onorando il suo contratto. + + + Storia della Duty: consegna il PDA del fondatore della Duty a un potenziale interessato + + + Hai trovato il PDA personale del fondatore della Duty, morto in un'anomalia. Consegnalo a qualcuno che potrebbe essere interessato agli ultimi istanti di vita del leader della fazione. + + + Attivit anomala: perlustra l'area usando un rilevatore migliorato + + + Gli scanner degli scienziati hanno registrato un'insolita attivit a nord del bunker. Perlustra l'area usando un rilevatore migliorato. + + + Proteggere gli scienziati: trova persone affidabili + + + Il bunker degli scienziati indifeso. Trova delle persone affidabili che possano sorvegliarlo. + + + Proteggere gli scienziati: torna da Hermann per ricevere la tua ricompensa + + + Hai trovato delle guardie per il bunker degli scienziati. Torna da Hermann per ricevere la ricompensa che ti spetta. + + + Ultimi sviluppi: cerca documenti allo stabilimento Jupiter + + + Hermann interessato agli ultimi sviluppi riguardanti lo stabilimento Jupiter. Cerca dei documenti nella sezione amministrativa dello stabilimento. + + + Ultimi sviluppi: porta i documenti a Hermann + + + I documenti che hai trovato indicano che l'intera documentazione tecnica stata trasferita fuori dallo stabilimento. Non molto, ma meglio riferire tutto a Hermann. + + + Ultimi sviluppi: porta i documenti e il PDA di Black a Hermann + + + Mentre cercavi i documenti, i mercenari hanno sferrato un attacco. Secondo il PDA che hai trovato addosso a Black, il loro leader, sono stati inviati per impedire agli scienziati di cercare i documenti. Allo stesso tempo, i documenti che hai trovato indicano che l'intera documentazione tecnica stata trasferita fuori dallo stabilimento. Riferisci tutto a Hermann e mostragli il PDA di Black. + + + Superstiti Monolith: parla con gli abitanti di Yanov riguardo al riparo + + + Una squadra di combattenti Monolith si liberata dal condizionamento mentale. Ora cercano un riparo dalle emissioni e dai mutanti. Chiedi agli abitanti della stazione Yanov se sono disposti ad accogliere la squadra Monolith. + + + Accompagna gli ufficiali di reclutamento della Duty dalla ex squadra Monolith. Se i combattenti Monolith si uniranno alla Duty, potranno ripararsi dalle emissioni e dai mutanti alla stazione Yanov. + + + Accompagna gli ufficiali di reclutamento della Freedom dalla ex squadra Monolith. Se i combattenti Monolith si uniranno alla Freedom, potranno ripararsi dalle emissioni e dai mutanti alla stazione Yanov. + + + Superstiti Monolith: accompagna gli ufficiali di reclutamento dalla ex squadra Monolith + + + Ricerca sulle anomalie: copri gli stalker + + + Pare che le operazioni nell'anomalia abbiano attirato dei mutanti. Devi coprire gli stalker finch non avranno raccolto tutti i dati richiesti. + + + Ricerca sulle anomalie: copri gli stalker + + + Pare che le operazioni nell'anomalia abbiano attirato degli zombi da Kopachy. Devi coprire gli stalker finch non avranno raccolto tutti i dati richiesti. + + + Ricerca sulle anomalie: parla con Hermann + + + Le misurazioni nelle anomalie sono state completate. Informa gli scienziati e ottieni la tua ricompensa. + + + Ricerca sulle anomalie: parla con gli stalker + + + Parla con la squadra di stalker responsabile delle misurazioni. Bisogna scegliere quale anomalia analizzare. + + + Ricerca sulle anomalie: parla con gli stalker + + + Sono state eseguite tutte le misurazioni necessarie. Ora puoi tornare al bunker degli scienziati insieme alla squadra. + + + Ricerca sulle anomalie: parla con gli stalker + + + Le misurazioni nell'anomalia sono state completate. Parla con la squadra per decidere la prossima destinazione. + + + Ricerca sulle anomalie: copri gli stalker + + + Hermann ti chiesto di difendere gli stalker mentre eseguono delle misurazioni nelle anomalie. + + + Stingray 4: perlustra il luogo dello schianto + + + Stingray 4: scopri il motivo del guasto elettronico + + + Perlustra il luogo dello schianto di Stingray 4. + + + Devi trovare la fonte della potente scarica elettrica che ha colpito l'elicottero Stingray 4. + + + Stingray 1: consegna la scatola nera a un tecnico per farla decriptare + + + La scatola nera di Stingray 1 sopravvissuta allo schianto. Se vuoi accedere alle informazioni che contiene, devi consegnarla a un tecnico per farla decriptare. + + + Stingray 1: attendi che la scatola nera venga decriptata + + + Nitro ha accettato di decriptare la scatola nera. Ha detto che ci vogliono circa tre ore. Non ti resta che attendere che finisca. + + + Stingray 1: torna da Nitro per accedere alle informazioni nella scatola nera + + + Nitro deve aver completato il processo di decriptazione. Vai da lui per accedere alle informazioni contenute nella scatola nera. + + + Stingray 1: perlustra il luogo dello schianto + + + Perlustra il luogo dello schianto di Stingray 1. + + + Pripyat 1: raggiungi Pripyat + + + Devi attraversare il sottopasso di Pripyat 1 e raggiungere il punto di evacuazione dei militari a Pripyat. + + + Verso Pripyat: perlustra l'officina composti chimici allo stabilimento Jupiter + + + L'officina composti chimici dovrebbe contenere informazioni utili sulla diffusione di un gas nel sottopasso di Pripyat 1. + + + Verso Pripyat: perlustra la sezione amministrativa dello stabilimento Jupiter + + + La guida non conosce un passaggio sicuro per Pripyat, ma ti ha detto dove potresti trovare informazioni sulle gallerie sotterranee che collegano lo stabilimento Jupiter alla citt. Dovresti iniziare dalla sezione amministrativa. + + + Verso Pripyat: perlustra la sezione dei laboratori dello stabilimento Jupiter + + + I documenti trovati nella sezione amministrativa accennano all'evacuazione del complesso di produzione dallo stabilimento Jupiter. Le informazioni che riguardano questo trasferimento dovrebbero essere nella sezione dei laboratori. + + + Verso Pripyat: controlla il blocco di trasporto del sottopasso di Pripyat 1 + + + L'ingresso del sottopasso dietro il blocco di trasporto. Perlustra l'area e cerca informazioni riguardanti il sottopasso. + + + Verso Pripyat: perlustra il Dipartimento 1 dello stabilimento Jupiter + + + Nel Dipartimento 1 dovrebbero esserci informazioni sul sottopasso di Pripyat 1. Potrebbero rivelarsi molto utili, quindi vai a perlustrare l'area. + + + Verso Pripyat: perlustra il reparto consegne dello stabilimento Jupiter + + + Stando al messaggio trovato nell'officina sperimentale, l'evacuazione stata organizzata dal reparto consegne. Controlla anche questa zona. + + + Verso Pripyat: perlustra l'officina riparazioni dello stabilimento Jupiter + + + Il reparto consegne possedeva informazioni sulla perdita di un certo quantitativo di "oggetto 62" durante il trasporto. Secondo i registri, l'officina riparazioni doveva occuparsi del problema. Vai a controllare. + + + Verso Pripyat: parla con la guida + + + Secondo la registrazione nella scatola nera di un elicottero, le unit militari dovevano convergere verso il punto di evacuazione B28. Le mappe trovate nell'altro elicottero che ha partecipato alla missione indicano che questo punto di evacuazione si trova a Pripyat. Dovrai trovare un modo per arrivarci. Parlane con la guida. + + + Magazzino della Duty: prendi ci che ti spetta + + + Magazzino della Duty: incontra Morgan + + + Morgan il mercante ti ha proposto di accedere al magazzino della Duty in cambio del tuo silenzio sull'intera questione. Devi incontrarlo vicino alla cava, come stabilito. + + + Per procedere devi aprire il cancello. + + + Per procedere devi aprire la porta. + + + Devi attivare il sistema di alimentazione del cancello per procedere. + + + Per procedere devi sbloccare il cancello. Probabilmente puoi farlo dalla sala di controllo. + + + Gruppo di ricerca: assumi le persone giuste + + + Tutti i membri di un gruppo di ricerca che lavorava per gli scienziati sono morti. Devi formare un nuovo gruppo perch la ricerca possa proseguire. + + + Gruppo di ricerca: torna da Hermann per ricevere la ricompensa + + + Hai trovato le persone giuste per formare la nuova squadra di ricercatori. Ora torna da Hermann per ricevere la tua ricompensa. + + + Pripyat 1: completa la missione di Ozersky + + + Devi completare la missione di Ozersky riguardante lo stabilimento anomalo per ottenere una tuta protettiva per Sokolov. + + + A Nitro servono dei dispositivi radio. Dovresti cercarli nella fabbrica di cemento. + + + Flint ha lasciato morire Scheggia nell'anomalia. Parla con lui e cerca di scoprirne il motivo. + + + Castigo: vendica Scheggia + + + Scopri chi ha lasciato morire Scheggia, scappando dopo aver preso il manufatto. Purtroppo, Scheggia morto prima di poter dire il suo nome, l'unica cosa che si sa che era un membro della Freedom. + + + Il Tenente Colonnello Shulga ti ha permetto di prelevare tutti gli equipaggiamenti che vorrai dal magazzino della Duty, se riuscirai a conquistarlo. + + + Loki ti ha permetto di prelevare tutti gli equipaggiamenti che vorrai dal magazzino della Duty, a patto che non siano di propriet dei combattenti della Freedom. + + diff --git a/gamedata/configs/text/ita/st_quests_pripyat.xml b/gamedata/configs/text/ita/st_quests_pripyat.xml new file mode 100644 index 0000000..4e90d97 --- /dev/null +++ b/gamedata/configs/text/ita/st_quests_pripyat.xml @@ -0,0 +1,345 @@ + + + + Oggetto 62: cerca documenti nell'officina collaudi + + + Devi cercare dei documenti riguardanti l'oggetto 62. Dovrebbero spiegare se l'arma pu essere stata utilizzata per abbattere gli elicotteri. + + + Arma non identificata: riparati nell'edificio + + + Devi ripararti nell'edificio e respingere l'attacco dei Monolith. + + + Arma non identificata: cerca informazioni + + + L'arma non operativa, e il suo funzionamento non chiaro. Trova un tecnico che possa identificarla. + + + Arma non identificata: uccidi il leader della squadra Monolith + + + Devi uccidere il leader della squadra Monolith, quello che utilizza l'arma non identificata. + + + Arma non identificata: perquisisci i cadaveri dei combattenti Monolith + + + I combattenti Monolith devono avere con s l'arma non identificata. Trovala. + + + Arma non identificata: parla con Cardan + + + Cardan dovrebbe aver smaltito la sbornia. Parla con lui riguardo all'arma non identificata. + + + Arma non identificata: attendi che Cardan si riprenda + + + Cardan potrebbe sapere qualcosa sull'arma, ma prima dovrai aspettare che si svegli. + + + Fucile Gauss: informa Kovalsky riguardo all'arma + + + Devi riferire a Kovalsky tutto ci che hai scoperto sull'oggetto 62. + + + Arma non identificata: unisciti alla squadra + + + Devi unirti alla squadra speciale e andare insieme a prendere l'arma. + + + Arma non identificata: ottieni l'arma + + + Devi ottenere l'arma del leader della squadra Monolith. + + + Arma non identificata: porta l'arma a Kovalsky + + + Hai ottenuto l'arma. Ora devi mostrarla a Kovalsky e scoprire se potrebbe aver causato lo schianto degli elicotteri. + + + Arma non identificata: partecipa all'imboscata contro i Monolith + + + L'unit di ricognizione militare sta preparando un'imboscata alla squadra Monolith. Partecipa all'operazione. + + + Forze Monolith: incontra i rinforzi + + + Kovalsky ha inviato dei rinforzi per aiutarti a eliminare la squadra Monolith trincerata nella libreria. + + + Forze Monolith: ripulisci la libreria + + + Devi eliminare tutte le forze Monolith nell'edificio. Le unit Monolith cos numerose sono un pericolo per il campo militare. + + + Forze Monolith: indaga sullo strano dispositivo + + + Nell'edificio c'era uno strano dispositivo. Indaga su di esso. + + + Laboratorio X8: cerca documenti che riguardano gli esperimenti + + + Le informazioni che hai trovato fanno riferimento a un laboratorio centrale denominato "X8". Questo luogo potrebbe custodire delle informazioni sugli esperimenti segreti condotti nella Zona. + + + Unit di ricognizione scomparsa: trova la squadra + + + L'unit di ricognizione inviata da Kovalsky scomparsa dopo uno strano scambio di comunicazioni. Devi trovarla e scoprire cosa successo. + + + Sentinella scomparsa: perlustra l'area in cui la sentinella morta + + + La sentinella si comportava in modo piuttosto strano. Cerca di scoprirne il motivo. + + + Sentinella scomparsa: trova la sentinella + + + Uno dei soldati scomparso dalla propria postazione. Devi trovarlo e scoprire il motivo della sparizione. + + + Sentinella scomparsa: uccidi il controllore + + + C'era un controllore vicino alla sentinella scomparsa. Deve essere eliminato. + + + Interferenza radio: trova la squadra dispersa + + + La squadra che stava cercando la fonte dell'interferenza radio scomparsa. Devi trovarla. + + + Interferenza radio: perquisisci i cadaveri + + + Perquisisci i cadaveri per indagare sul motivo del decesso. + + + Interferenza radio: perquisisci il cadavere + + + Perquisisci il cadavere per indagare sul motivo del decesso. + + + Interferenza radio: fai saltare la porta + + + Dovrai far saltare la porta con degli esplosivi per poter accedere all'edificio. + + + Interferenza radio: indaga sul rumore + + + Il frigorifero emette un rumore sospetto, come se qualcuno fosse chiuso al suo interno. Controlla. + + + Interferenza radio: elimina la fonte dell'interferenza + + + Hai individuato la fonte dell'interferenza radio. Devi eliminarla. + + + Interferenza radio: trova la fonte dell'interferenza + + + Nell'edificio c' una fonte di interferenza radio. Trovala. + + + Interferenza radio: trova gli esplosivi + + + La squadra inviata a cercare la fonte dell'interferenza aveva degli esplosivi. Usali per liberare l'ingresso dell'edificio. + + + Interferenza radio: entra nell'asilo + + + La fonte del segnale si trova nell'asilo. Entra nell'edificio. + + + Evacuazione: copri i militari + + + Anche se Strelok pu essere morto, devi comunque aiutare i militari a raggiungere gli elicotteri. + + + Evacuazione: copri Strelok + + + Il quartier generale interessato alle informazioni di Strelok. Devi scortarlo fino agli elicotteri. + + + Evacuazione: raggiungi gli elicotteri + + + Sono tutti morti. Dovrai raggiungere gli elicotteri da solo. + + + Evacuazione: parla con Kovalsky + + + Devi parlare con Kovalsky prima che l'evacuazione abbia inizio. + + + Evacuazione: di' a Kovalsky che sei pronto + + + Informa Kovalsky che sei pronto a iniziare l'evacuazione. + + + Evacuazione: attendi la fine dell'emissione + + + Devi attendere la fine dell'emissione. + + + Mistero: indaga sulla fonte del segnale + + + Kirillov ha identificato uno strano segnale non lontano dalla base. Devi indagare sulla fonte del segnale. + + + Mistero: segui il segnale + + + Le coordinate del segnale sono tornate disponibili. Seguile. + + + Mistero: indaga sull'ultima posizione conosciuta del segnale + + + Il segnale scomparso nello spiazzo dell'edificio. Indaga sull'ultima posizione conosciuta del segnale. + + + Mistero: preparati a un attacco contro la base + + + Torna alla base militare e preparati a un eventuale attacco. + + + Interferenza radio: parla con Kovalsky + + + Il Colonnello Kovalsky vuole parlare con te. + + + Laboratorio X8: entra nel pozzo dell'ascensore + + + L'ingresso del laboratorio sotterraneo si trova sotto il centro servizi Yubileiny. L'unico modo per accedervi dal pozzo dell'ascensore. + + + Laboratorio X8: trova il generatore + + + Le porte del pozzo dell'ascensore sono senza energia. Trova e attiva il generatore di emergenza per aprirle. + + + Laboratorio X8: scendi fino al laboratorio + + + Usa l'ascensore per arrivare al laboratorio X8, che si trova sotto il centro servizi Yubileiny. + + + Occasione unica: elimina il messaggero + + + Devi eliminare il messaggero, cos i mercenari non potranno trovare il laboratorio. + + + Occasione unica: attendi gli uomini del cliente + + + Attendi gli uomini del cliente e uccidi il loro leader, cos i mercenari non potranno trovare il laboratorio. + + + Occasione unica: uccidi il leader della squadra dei mercenari + + + Devi uccidere il leader della squadra dei mercenari, cos i mercenari saranno allo sbando e molto meno pericolosi. + + + Occasione unica: attendi l'arrivo dei mercenari + + + Attendi i mercenari e uccidi il loro leader, cos i mercenari saranno allo sbando e molto meno pericolosi. + + + Occasione unica: parla con Kovalsky + + + Aggiorna Kovalsky sull'esito della missione. + + + Laboratorio X8: esci dal complesso sotterraneo o continua a cercare i documenti. + + + Hai trovato i documenti. Ora puoi lasciare il laboratorio, anche se forse ce ne sono altri all'interno del complesso. + + + Laboratorio X8: esci dal complesso sotterraneo o continua a cercare i documenti. + + + Hai trovato i documenti. Ora puoi lasciare il laboratorio, anche se forse ce ne sono altri all'interno del complesso. + + + Laboratorio X8: esci dal complesso sotterraneo + + + A quanto pare hai raccolto tutti i documenti nel laboratorio. Ora puoi uscire dal complesso sotterraneo. + + + Forze Monolith: aspetta i rinforzi + + + Dovrai aspettare i rinforzi inviati da Kovalsky per eliminare le forze Monolith nella libreria. + + + Una conversazione tranquilla: parla con Kovalsky + + + Devi parlare con Kovalsky: a quanto pare ha qualcosa di importante da dire. + + + Evacuazione: resisti vicino agli elicotteri + + + Devi proteggere gli elicotteri dagli attacchi nemici, finch non saranno pronti al decollo. + + + Evacuazione: rianima il medico + + + Sembra che il medico sia stato nuovamente colpito da delle forze non identificate. Rianimalo il pi rapidamente possibile. + + + Evacuazione: torna agli elicotteri + + + Devi tornare agli elicotteri, ormai saranno pronti al decollo da un momento all'altro. + + + Evacuazione: torna subito agli elicotteri + + + Gli elicotteri sono pronti al decollo, devi salire immediatamente a bordo, i piloti non potranno aspettare a lungo. + + diff --git a/gamedata/configs/text/ita/st_quests_zaton.xml b/gamedata/configs/text/ita/st_quests_zaton.xml new file mode 100644 index 0000000..1a0aa1c --- /dev/null +++ b/gamedata/configs/text/ita/st_quests_zaton.xml @@ -0,0 +1,780 @@ + + + + Rifugio sicuro: raggiungi la Skadovsk + + + Gli unici luoghi relativamente sicuri della Zona sono i campi pi grandi. Quello pi vicino si trova sulla Skadovsk, e sar la tua prossima meta. + + + Mappe dell'area: trova qualcuno interessato alle mappe + + + Mappe dell'area: offri le mappe a Pilot + + + Pilot, la guida locale, potrebbe essere interessato alle mappe dell'area tra Zaton e Jupiter. + + + Stingray 2: perlustra il luogo dello schianto + + + Perlustra il luogo dello schianto di Stingray 2. + + + Stingray 5: perlustra il luogo dello schianto + + + Stingray 5: scopri il motivo del guasto elettronico + + + Squadra Stingray: trova la fonte delle scariche che hanno colpito i due elicotteri + + + Perlustra il luogo dello schianto di Stingray 5. + + + Devi trovare la fonte della potente scarica elettrica che ha colpito l'elicottero Stingray 5. + + + Devi scoprire cosa ha provocato il guasto elettronico di Stingray 4 e 5. Pare siano stati colpiti da potenti scariche elettriche. + + + Cibo: ottieni del cibo per i mercenari + + + La squadra dei mercenari nelle officine della sotto-stazione ti ha chiesto di portare sei scatole di carne, pezzi di salsiccia o del pane. + + + Cibo: porta il cibo ai mercenari + + + Devi portare ai mercenari nelle officine della sotto-stazione il cibo che hai trovato. + + + Attrezzi: perlustra le officine della sotto-stazione + + + Pare ci siano degli attrezzi nelle officine della sotto-stazione. Forse l troverai quelli richiesti dal tecnico. + + + A caccia della chimera: sorprendi il mutante mentre dorme + + + Devi trovare la chimera prima che si svegli. + + + In cerca di Magpie: informa Gonta + + + Pare che Magpie, lo stalker che ha imbrogliato la squadra di Gonta, sia stato trovato. Si unito alla Freedom e ora si fa chiamare Flint. + + + A caccia della chimera: uccidi il mutante + + + La chimera sveglia. Uccidila prima che sia troppo tardi. + + + A caccia della chimera: incontrati con Gonta al bar alle 3 del mattino + + + Devi incontrare Gonta prima dell'alba per andare a cacciare la chimera insieme alla sua squadra. + + + A caccia della chimera: informa Trapper + + + Devi riferire a uno stalker chiamato Trapper che la caccia alla chimera riuscita. Lui dovrebbe darti una ricompensa. + + + In cerca di Magpie: trova lo stalker + + + Uno stalker chiamato Magpie ha imbrogliato la squadra di Gonta, facendola attaccare da una chimera. Ti hanno chiesto di trovare quel bastardo. + + + Punti di evacuazione: controlla il punto B205 + + + La mappa che hai trovato in uno degli elicotteri indicava vari punti di evacuazione. Controlla se i soldati hanno raggiunto il punto B205. + + + Punti di evacuazione: controlla il punto B28 + + + La mappa che hai trovato in uno degli elicotteri indicava vari punti di evacuazione. Controlla se i soldati hanno raggiunto il punto B28. + + + Punto di evacuazione: trova le coordinate del punto B28 + + + La scatola nera di uno degli elicotteri Stingray conteneva una registrazione in cui il comandante della squadra indicava un punto di evacuazione verso cui convergere. Trova le coordinate di questo punto, designato "B28". + + + Punto di evacuazione: raggiungi il punto B28 + + + Il punto verso cui i soldati dovevano convergere si trova a Pripyat. Cerca di raggiungerlo. + + + Punti di evacuazione: controlla il punto B2 + + + La mappa che hai trovato in uno degli elicotteri indicava vari punti di evacuazione. Controlla se i soldati hanno raggiunto il punto B2. + + + Strano fenomeno: porta il manufatto a Beard + + + La fonte dello strano bagliore era un manufatto altrettanto insolito. Dovrebbe interessare a Beard. + + + Strano fenomeno: chiedi informazioni sul manufatto agli stalker + + + Gli stalker potrebbero avere informazioni sullo strano manufatto, o indicarti qualcuno che ne sappia qualcosa. Vai a parlare con loro. + + + Strano fenomeno: trova la fonte del bagliore alla stazione di drenaggio + + + Dalla stazione di drenaggio proviene uno strano bagliore. Beard ti ha chiesto di trovare la fonte. + + + Strano fenomeno: prendi il manufatto + + + La fonte dello strano bagliore era un manufatto altrettanto insolito. Prendilo. + + + Strano fenomeno: parla con Beard riguardo al manufatto + + + La fonte dello strano bagliore era un manufatto altrettanto insolito. Anche se non l'hai ottenuto, devi riferire tutto a Beard. + + + Verso l'altopiano: salta nell'anomalia + + + Pare che l'unico modo per raggiungere l'altopiano sia attraverso l'anomalia. Devi saltarci dentro. + + + Verso l'altopiano: trova il sentiero segreto di Noah + + + Il PDA di Noah parlava di un "sentiero segreto" per raggiungere l'altopiano. Devi trovarlo. + + + Verso l'altopiano: chiedi a Noah come raggiungerlo + + + Pare che uno stalker chiamato Noah conosca un sentiero per l'altopiano. Devi scoprire come raggiungerlo. + + + Stalker scomparsi: consegna la prova del coinvolgimento di Tremor + + + Devi portare alla Skadovsk il PDA con le registrazioni di Tremor e mostrarlo a Beard. Le registrazioni dimostrano chiaramente il coinvolgimento del medico nelle sparizioni degli stalker. + + + Stalker scomparsi: trova una prova del coinvolgimento di Tremor + + + Devi scoprire se Tremor ha lasciato qualche prova del suo coinvolgimento nelle sparizioni degli stalker. + + + Stingray 3: perlustra il luogo dello schianto + + + Perlustra il luogo dello schianto di Stingray 3. + + + Devi portare il manufatto a Beard, ma non hai pi un vantaggio sui tuoi avversari. Ora anche loro stanno cercando il manufatto. + + + Devi portare il manufatto a Beard. Ricorda che anche i tuoi avversari lo stanno cercando. + + + Devi portare il manufatto a Beard, ma pare che un gruppo ne abbia gi trovato uno. Segui il segnale e cerca di completare l'incarico prima dei tuoi avversari. + + + Devi portare il manufatto a Beard, ma un altro gruppo ti ha gi preceduto. Ora avrai solo met della ricompensa che ti spetta per il manufatto. + + + Devi portare il manufatto a Beard. + + + Recupero manufatti: consegna un Gravi + + + Recupero manufatti: consegna un Occhio + + + Recupero manufatti: consegna una Bolla + + + Recupero manufatti: consegna una Conchiglia + + + Recupero manufatti: consegna un Pesce rosso + + + Recupero manufatti: consegna una Fiamma + + + Recupero manufatti: consegna una Lucciola + + + Recupero manufatti: consegna un Fiocco di neve + + + Devi trovare il manufatto per Beard, ma non hai pi un vantaggio sui tuoi avversari. Ora anche loro stanno cercando il manufatto. + + + Devi trovare il manufatto per Beard. Ricorda che anche i tuoi avversari lo stanno cercando. + + + Devi trovare il manufatto per Beard, ma pare che un gruppo ne abbia gi trovato uno. Segui il segnale e cerca di completare l'incarico prima dei tuoi avversari. + + + Devi trovare il manufatto per Beard, ma un altro gruppo ti ha gi preceduto. Ora avrai solo met della ricompensa che ti spetta per il manufatto. + + + Devi trovare il manufatto per Beard. + + + Recupero manufatti: trova un Gravi + + + Recupero manufatti: trova un Occhio + + + Recupero manufatti: trova una Bolla + + + Recupero manufatti: trova una Conchiglia + + + Recupero manufatti: trova un Pesce rosso + + + Recupero manufatti: trova una Fiamma + + + Recupero manufatti: trova una Lucciola + + + Recupero manufatti: trova un Fiocco di neve + + + Bussola: trova Noah e scopri dove puoi ottenere il manufatto raro + + + Devi trovare Noah al vecchio barcone e scoprire dove puoi ottenere il raro manufatto Bussola. Beard lo sta cercando da molto tempo, ed disposto a pagare bene per averlo. + + + Bussola: porta il manufatto a Beard + + + Bussola: chiedi a Noah dove puoi trovare il manufatto raro + + + Sultan vuole mettere le mani sul manufatto che Beard sta cercando. Devi trovare Noah al vecchio barcone e scoprire dove puoi ottenere il manufatto. + + + Bussola: porta il manufatto a Sultan + + + Il manufatto che hai ricevuto da Noah la Bussola che Sultan sta cercando. + + + Affare losco: ottieni la tua parte da Beard + + + Vai a ottenere la tua parte dei profitti di Beard. + + + Affare interessante: parla con Sultan + + + Owl il commerciante crede che Beard non stia rispettando l'accordo. Ti consiglia di chiedere aiuto a Sultan, il boss criminale dell'area. + + + Affare losco: ottieni i rilevatori dagli stalker + + + Devi fare il possibile per prendere i rilevatori sperimentali agli stalker che stanno cercando manufatti per Beard. Senza rilevatori, Beard dovr sottostare alle richieste di Sultan. + + + Affare losco: parla con Sultan + + + Beard non ha i rilevatori, quindi devi parlare con Sultan per scoprire se ha risolto il problema degli altri fornitori di Beard. + + + Affare losco: costringi Beard a lavorare per Sultan + + + Ora che Beard rimasto senza fornitori e rilevatori, non pu pi lavorare da solo. Costringilo a lavorare per Sultan. + + + Affare losco: indaga sull'attuale attivit di Beard + + + Devi scoprire in che genere di attivit coinvolto Beard, in modo da tagliare i suoi canali di rifornimento. + + + Affare losco: porta via il secondo rilevatore agli stalker + + + Devi fare il possibile per prendere i rilevatori sperimentali agli stalker che stanno cercando manufatti per Beard. Senza rilevatori, Beard dovr sottostare alle richieste di Sultan. + + + Affare interessante: porta a Novikov tre rilevatori Veles + + + Owl il commerciante ti ha offerto di partecipare a un affare molto redditizio. Devi trovare tre rivelatori Veles e consegnarli a Novikov, al bunker degli scienziati. + + + Affare interessante: attendi che Owl riceva i rilevatori + + + Novikov ha accettato i rilevatori, promettendo di rimandarli a Owl. Devi attendere che finisca di lavorare sui rilevatori e poi tornare da Owl per scoprire i risultati. + + + Affare interessante: parla con Owl + + + Owl il commerciante ti ha contattato via radio per dirti che ha qualche problema. Vuole vederti subito. + + + Affare interessante: convinci Beard a rispettare l'accordo + + + Owl il commerciante crede che Beard non stia rispettando l'accordo. Devi parlare con lui e convincerlo a rigare dritto. + + + Affare interessante: chiedi una percentuale a Owl + + + Beard convinto di non dovere niente a Owl. Scopri chi ha ragione e chiedi una percentuale. + + + Snag ti ha chiesto di portargli il suo contenitore. L'ha nascosto in una vecchia automobile ZAZ, precipitata in un crepaccio durante un terremoto. Snag ha paura di scendere laggi, essendo pieno di pseudo cani. + + + Hai ottenuto il contenitore di Snag. Portalo al suo legittimo proprietario per dividere equamente il suo contenuto. + + + Tana dei succhiasangue: informa gli stalker + + + Devi informare gli stalker riguardo alla tana dei succhiasangue sotto il complesso dell'antenna Krug. + + + Tana dei succhiasangue: informa Beard + + + Devi informare Beard riguardo alla tana dei succhiasangue sotto il complesso dell'antenna Krug, cos potr decidere come proteggere gli stalker. + + + Stalker scomparsi: segui Grouse + + + Grouse ti ha chiesto di perlustrare insieme a lui il complesso dell'antenna abbandonato. Ha visto dei succhiasangue e vuole controllare se il cacciatore si trova l. + + + Stalker scomparsi: scopri cosa successo + + + Pare che Tremor non sia innocente come sembrava. Devi scoprire cosa successo. + + + Stalker scomparsi: trova Grouse + + + Grouse si diretto verso le gru del porto. Forse ha scoperto qualcosa sugli stalker scomparsi, quindi dovresti raggiungerlo. + + + Stalker scomparsi: scopri dove si trova Grouse + + + Grouse non al solito posto. Chiedi a Beard dove andato. + + + Stalker scomparsi: trova il cacciatore disperso + + + Grouse ti ha chiesto di cercare il cacciatore disperso, che aveva il compito di trovare la tana dei succhiasangue. In base alle attuali informazioni, si tratta degli stessi succhiasangue responsabili delle recenti sparizioni degli stalker. + + + Stalker scomparsi: esci dalla tana dei succhiasangue + + + Hai scoperto una tana di succhiasangue nel seminterrato, ma le creature sono come stordite. Esci dalla tana senza farti notare. + + + Stalker scomparsi: incontra Grouse + + + Vai da Grouse per parlare della ricerca del cacciatore disperso. + + + Stalker scomparsi: torna da Grouse in seguito + + + Nel complesso dell'antenna non c'era traccia di Danila il cacciatore. Tuttavia, Grouse sembra turbato da quello che hai trovato all'interno dell'edificio e ti ha chiesto di tornare in seguito per discutere la faccenda nel dettaglio. + + + Stalker scomparsi: incontra Grouse + + + Nel luogo indicato da Grouse c'era solo un succhiasangue morto, ma nessuna traccia di Danila il cacciatore. Tuttavia, Grouse ha trovato qualcosa di interessante e ti ha chiesto di unirti a lui. + + + I succhiasangue non c'entravano nulla con gli stalker scomparsi. stato Tremor, il medico della Skadovsk. + + + Attrezzi: porta gli attrezzi a Cardan + + + Cardan ti ha chiesto di portargli due kit di attrezzi: uno per i lavori di base e uno per quelli avanzati. In cambio, il tecnico ti pagher e potr eseguire modifiche pi complesse per armi e armature. + + + Attrezzi: porta gli attrezzi a Cardan + + + Cardan ti ha chiesto di portargli due kit di attrezzi: uno per i lavori di base e uno per quelli di precisione. In cambio, il tecnico ti pagher e potr eseguire modifiche pi complesse per armi e armature. + + + Attrezzi: porta gli attrezzi a Cardan + + + Cardan ti ha chiesto di portargli un kit di attrezzi per i lavori di base. In cambio, il tecnico ti pagher e potr eseguire modifiche pi complesse per armi e armature. + + + Attrezzi: porta gli attrezzi a Cardan + + + Cardan ti ha chiesto di portargli due kit di attrezzi: uno per i lavori avanzati e uno per quelli di precisione. In cambio, il tecnico ti pagher e potr eseguire modifiche pi complesse per armi e armature. + + + Attrezzi: porta gli attrezzi a Cardan + + + Cardan ti ha chiesto di portargli un kit di attrezzi per i lavori avanzati. In cambio, il tecnico ti pagher e potr eseguire modifiche pi complesse per armi e armature. + + + Attrezzi: porta gli attrezzi a Cardan + + + Cardan ti ha chiesto di portargli un kit di attrezzi per i lavori di precisione. In cambio, il tecnico ti pagher e potr eseguire modifiche pi complesse per armi e armature. + + + Attrezzi: porta gli attrezzi a Cardan + + + Cardan ti ha chiesto di portargli tre kit di attrezzi: uno per i lavori di base, uno per quelli avanzati e uno per quelli di precisione. In cambio, il tecnico ti pagher e potr eseguire modifiche pi complesse per armi e armature. + + + Campo dei mercenari: ottieni tutte le informazioni che trovi + + + Owl il commerciante ti ha promesso un'ottima ricompensa per qualsiasi tipo di informazioni che riuscirai a trovare nel campo dei mercenari, all'impianto dei rifiuti. interessato ai loro piani. + + + Campo dei mercenari: ottieni tutte le informazioni che trovi + + + Owl il commerciante ti ha promesso un'ottima ricompensa per qualsiasi tipo di informazioni che riuscirai a trovare nel campo dei mercenari, all'impianto dei rifiuti. interessato ai loro piani. + + + Tre compagni: indaga sulla sorte di Barge + + + Cardan ti ha chiesto di portare le sue scuse a uno stalker chiamato Barge, un suo vecchio compagno. Dopo un'accesa discussione, Barge partito per una localit ignota. + + + Tre compagni: indaga sulla sorte di Barge e Joker + + + Cardan ti ha chiesto di portare le sue scuse a due stalker chiamati Barge e Joker, suoi vecchi compagni. Dopo un'accesa discussione, Barge e Joker sono partiti per una localit ignota. + + + Tre compagni: indaga sulla sorte di Joker + + + Cardan ti ha chiesto di portare le sue scuse a uno stalker chiamato Joker, un suo vecchio compagno. Dopo un'accesa discussione, Joker partito per una localit ignota. + + + Ordine speciale: ottieni la merce + + + La merce stata consegnata. Ora il momento di ottenerla da Nimble. + + + Ordine speciale: attendi la consegna + + + L'ordine stato eseguito. Ora devi attendere che Nimble riceva la merce. + + + Reputazione: trova Snag + + + Devi trovare Snag e costringerlo a tenere la bocca chiusa. Nimble non si mai occupato di merce rubata, mentre Snag non certo un santo. L'ultima volta stato visto alle gru del porto. Potrebbe essere ancora l. + + + Devi trovare Snag e costringerlo a tenere la bocca chiusa. Non si trova alle gru del porto, ma forse i banditi potrebbero sapere dov'. + + + Devi trovare Snag e costringerlo a tenere la bocca chiusa. Pare che i banditi siano coinvolti nella faccenda, quindi dovrebbero sapere dove si trova. + + + Devi trovare Snag e costringerlo a tenere la bocca chiusa. Al momento non c' alcun indizio sulla sua attuale posizione. + + + Devi trovare Snag e costringerlo a tenere la bocca chiusa. A giudicare dal PDA di un bandito, gli uomini di Sultan gli stanno alle costole. Al momento, per, non ci sono indizi sulla sua attuale posizione. + + + Reputazione: scopri dove si nascosto Snag + + + Snag non al suo solito posto. Scopri se qualche locale ha visto dove si diretto. + + + Devi trovare Snag e costringerlo a tenere la bocca chiusa. Non al suo solito posto, ma forse Sultan sa dove si trova. + + + Devi trovare Snag e costringerlo a tenere la bocca chiusa. Non al suo solito posto, ma forse Beard sa dove si trova. + + + Reputazione: parla con Snag + + + Devi trovare Snag e costringerlo a tenere la bocca chiusa. Nimble non si mai occupato di merce rubata, mentre Snag non certo un santo. + + + Tana dei succhiasangue: trova il condotto di ventilazione + + + Trova il condotto di ventilazione per riempire la tana dei succhiasangue con del gas velenoso. + + + Tana dei succhiasangue: trova il gas velenoso + + + Ti serve del gas velenoso per distruggere la tana dei succhiasangue. Owl dovrebbe sapere dove recuperarne un po'. + + + Ti serve del gas velenoso per distruggere la tana dei succhiasangue. Owl ha detto che puoi trovarne un po' al convoglio militare abbandonato. + + + Tana dei succhiasangue: trova le chiavi del contenitore + + + I documenti che hai trovato accennano a delle chiavi per il contenitore del gas. Devi trovarle. + + + Tana dei succhiasangue: trova un modo per aprire il contenitore del gas + + + Il contenitore del gas chiuso. Devi trovare un modo per aprirlo. + + + Tana dei succhiasangue: posiziona il gas + + + Posiziona il gas nel sistema di ventilazione del seminterrato del complesso dell'antenna. Il gas dovrebbe riempire il seminterrato passando attraverso il condotto di ventilazione, uccidendo tutti i succhiasangue. + + + Tana dei succhiasangue: riferisci a Beard che la tana stata distrutta + + + Riferisci a Beard che hai distrutto la tana dei succhiasangue. Ora gli stalker della Skadovsk sono al sicuro. + + + Tana dei succhiasangue: gira la valvola + + + Gira la valvola per riempire di gas velenoso il seminterrato con la tana dei succhiasangue, sfruttando il condotto di ventilazione. + + + Tana dei succhiasangue: attendi che il gas faccia effetto + + + Devi assicurarti che il gas abbia riempito la tana uccidendo tutti i succhiasangue. + + + Transazione: incontra i banditi alla stazione dei ranger + + + Sultan ti ha chiesto di partecipare a una transazione con un mercante. Accompagna i suoi uomini e proteggili in caso di necessit. + + + Transazione: incontra il mercante + + + Owl ti ha chiesto di proteggere un mercante durante una transazione. L'intera faccenda un po' losca, e qualcosa potrebbe andare storto. + + + Transazione: incontra gli stalker alla stazione dei ranger + + + Incontra gli stalker alla stazione dei ranger e aiutali a bloccare la transazione tra i banditi e il mercante di armi. + + + Transazione: proteggi il mercante + + + Il mercante ti ha chiesto di proteggerlo durante la transazione. + + + Transazione: origlia la conversazione + + + Gli stalker vogliono origliare la conversazione tra i banditi e il mercante di armi. + + + Transazione: blocca la vendita delle armi + + + Fai il possibile per bloccare la transazione tra i banditi e il mercante. + + + Transazione: elimina i testimoni + + + La transazione del mercante non andata a buon fine, quindi devi eliminare tutti i testimoni. + + + Transazione: proteggi il mercante + + + Devi proteggere il mercante. Inoltre ti ha chiesto di eliminare tutti i testimoni della transazione, inclusi i suoi clienti. + + + Transazione: perquisisci il mercante + + + Il mercante potrebbe avere con s delle informazioni utili. Perquisiscilo. + + + Transazione: proteggi i banditi durante la transazione + + + Tieni gli occhi aperti e proteggi i banditi durante la trattativa con il mercante. + + + Transazione: parla con il mercante + + + La transazione con i banditi finita, quindi puoi ottenere la tua ricompensa. + + + Transazione: ottieni la tua ricompensa da Beard + + + Beard ti aveva promesso una ricompensa se fossi riuscito a bloccare la transazione tra i banditi e il mercante. Cos stato, quindi ora puoi incassare ci che ti spetta. + + + Transazione: parla con il leader dei banditi + + + Riferisci al leader dei banditi che sei pronto a partecipare alla transazione. + + + Il colpo: decidi cosa fare + + + Il colpo: attacca gli stalker + + + Il colpo: prendi la tua ricompensa + + + L'attacco contro il campo stato respinto, quindi puoi ottenere la tua ricompensa dagli stalker. Se non fossero stati avvertiti dell'assalto, probabilmente non ce l'avrebbero fatta. + + + Degli stalker hanno deciso di cambiare vita, diventando dei banditi a tutti gli effetti. Devi decidere se partecipare al loro assalto, avvisare gli stalker o restarne fuori. + + + Il colpo: aspetta l'ora concordata + + + Il colpo: aspetta il momento giusto. + + + Nascondiglio irraggiungibile: porta il contenitore a Snag + + + Transazione: parla con il capo della squadra di stalker + + + La transazione stata sabotata e il mercante di armi morto. Parla con il capo della squadra di stalker. + + + Stalker scomparsi: spiega alla gente della Skadovsk cosa successo + + + Devi aprire il contenitore usando le chiavi che hai trovato ed estrarre la tanica di gas velenoso. + + + Tana dei succhiasangue: estrai la tanica di gas dal contenitore. + + + Il colpo: attacca i rapinatori + + + Attaccando i rapinatori alle spalle aiuterai gli stalker a respingere il loro assalto. + + + Il colpo: incontra i rapinatori + + + Unisciti ai rapinatori nell'attacco all'accampamento degli stalker. + + + Il colpo: unisciti i rapinatori + + + Gli stalker ti hanno chiesto di aiutarli a respingere l'attacco dei rapinatori. Unisciti ai rapinatori, cos potrai attaccarli alle spalle di sorpresa non appena sferrano l'attacco. + + + I rapinatori dovrebbero essere in attesa a Shevchenko. Devi raggiungerli per partecipare al loro assalto contro gli stalker. + + + Aspetta di incontrare i rapinatori. Vogliono attaccare l'accampamento degli stalker dopo la mezzanotte, ma prima dell'alba. Il luogo d'incontro Shevchenko. + + + Il colpo: ottieni la tua parte. + + + L'attacco contro gli stalker riuscito. Ora puoi ottenere la tua parte del bottino. + + + Aspetta il momento giusto, quando i rapinatori sono distratti dall'attacco. A quel punto puoi colpirli alle spalle per aiutare gli stalker di Shevchenko. + + + Affare losco: inizia a lavorare per Beard + + + Per prendere i prototipi di rilevatori dagli stalker che lavorano per Beard dovrai mescolarti a loro. In questo modo potrai scoprire chi sono i tuoi rivali in affari. + + + Devi prendere il contenitore e consegnarlo al proprietario. + + + Il computer di bordo di Stingray 2 conteneva delle mappe dell'area tra Zaton e Jupiter. Trova qualcuno a cui potrebbero interessare. + + + Verso l'altopiano: parla con gli stalker + + + Sembra che non ci sia modo di raggiungere direttamente l'altopiano. Chiedi agli stalker del posto come puoi fare per arrivarci. + + + Il manufatto che hai ricevuto da Noah la Bussola che Beard sta cercando. + + diff --git a/gamedata/configs/text/ita/st_subtitles.xml b/gamedata/configs/text/ita/st_subtitles.xml new file mode 100644 index 0000000..bdd4ba0 --- /dev/null +++ b/gamedata/configs/text/ita/st_subtitles.xml @@ -0,0 +1,156 @@ + + + + La mattina del 26 aprile 1986, il reattore del blocco energetico 4 della centrale nucleare di Chernobyl viene distrutto da una massiccia esplosione termica. La polvere radioattiva trasportata dal vento si posa sull'USSR, si diffonde parzialmente sull'Europa e raggiunge persino l'America. + + + Le conseguenze del disastro sono gravi al punto che il governo dell'Unione Sovietica si vede costretto a evacuare d'urgenza i residenti delle citt e dei villaggi vicini. + + + Le aree contaminate entro un raggio di 30 chilometri dalla centrale sono poste in una rigida Zona d'Esclusione. + + + Le operazioni della centrale di Chernobyl riprendono in seguito alla costruzione di un sarcofago di cemento armato sopra il blocco energetico distrutto. L'esistenza di un'enorme fonte energetica, unita al fatto che l'area non pi abitata, porta alla creazione di una rete di laboratori segreti. + + + 10 giugno 2006. La Zona si illumina con un flash accecante. Questa esplosione di luce seguita da un momento di silenzio totale e da nuvole che evaporano nel cielo. Uno scroscio di tuoni scuote il terreno. La maggior parte dei soldati a guardia del perimetro sono uccisi all'istante. + + + 2007. Gli scienziati non riescono a spiegare l'accaduto. Le rare spedizioni nella Zona si concludono generalmente in tragedia, e i pochi sopravvissuti narrano storie di animali mutati dotati di incredibili capacit. + + + 2009. Secondo varie stime, la Zona ospita tra i cento e i trecento individui non identificati. Queste persone si fanno chiamare stalker e vivono raccogliendo le formazioni anomale note come manufatti, rivendibili per ingenti somme di denaro. + + + 2010. Nonostante i militari sorveglino il perimetro della Zona, il fenomeno degli stalker in crescita. A ogni modo, solo le aree intorno ai confini della Zona sono state esplorate: ogni tentativo di addentrarsi verso il suo centro si concluso con il fallimento. + + + 2012. Uno stalker di nome Strelok risolve il segreto del Bruciacervella, una potente emittente in grado di distruggere le menti umane, e lo disattiva. Dopo questo evento, gli stalker si affrettano numerosi verso il centro della Zona: alcuni sperano di trovare un tesoro di manufatti, altri cercano il leggendario Esauditore di desideri. + + + In queste circostanze in continuo cambiamento, la Sicurezza Nazionale e il Consiglio per la difesa dell'Ucraina decidono di lanciare un'operazione speciale, definita Operazione Fairway. Dozzine di elicotteri militari, carichi di truppe, si dirigono alla centrale di Chernobyl, usando una mappa delle anomalie per volare in cielo. Nonostante la preparazione meticolosa, l'operazione un fallimento e nessuno degli elicotteri fa ritorno. + + + Il Maggiore Degtyarev, un agente speciale dell'esercito americano ed ex-stalker d'esperienza, viene inviato nella Zona per investigare sui motivi del fallimento dell'operazione. + + + Armato di fucile d'assalto, scorte per sopravvivere due settimane e una radio per comunicare con il quartier generale, il maggiore inizia il suo viaggio verso il centro della Zona. + + + Parlare con gli stalker non porta ad alcun risultato... O non possiedono le informazioni o non sono disposti a condividerle... + + + La Zona coglie ogni occasione per ricordare al maggiore che non un luogo di vacanze. Non passa giorno senza un attacco da parte dei mutanti o, ancora peggio, della gente. + + + Anche le comunicazioni con il quartier generale non servono a nulla: le uniche informazioni affidabili riguardano le coordinate dei cinque elicotteri schiantatisi. Nel raggio di molti chilometri dalla centrale di Chernobyl, la radio inutilizzabile. + + + Degtyarev solo. + + + Per aver completato con successo la sua indagine, Degtyarev venne ricompensato con una promozione a colonnello. Rifiut l'offerta di un comodo posto in ufficio e chiese invece di essere inviato nella Zona come osservatore di sicurezza permanente. + + + Le informazioni sugli psico-congegni ottenute da Degtyarev allertarono i suoi superiori. Tutte le informazioni su un determinato numero di laboratori vennero rimosse dagli archivi militari e catalogate come top secret. Al personale americano al lavoro nella Zona fu ordinato di impedire a ogni costo la fuga di informazioni sul lavoro svolto in questi laboratori. + + + Sulla base dei documenti tecnici riguardanti l'oggetto 62 vennero creati numerosi campioni da esperimento. In seguito a una serie di prove, si decise di non proseguire lo sviluppo su larga scala dell'arma a causa dell'alto costo delle munizioni. Nonostante questo, prove dimostrano che uno sviluppo segreto del fucile Gauss ancora in corso. + + + Sultan e la sua banda lasciarono la Skadovsk dopo che i loro tentativi di conquistare la nave fallirono. La conseguente sensazione di relativa sicurezza fra gli stalker port a un vertiginoso aumento nel numero dei manufatti venduti a Beard. Questo provoc un'impennata nelle sue vendite, mentre la Skadovsk divenne famosa quasi quanto il bar 100 Rads. + + + L'ordine sociale voluto da Sultan si impose sulla Skadovsk, e la nave divenne una base militare. Riluttante a continuare a pagare il pizzo in cambio di protezione, Beard part insieme a un gruppo di stalker per esplorare le aree ancora sconosciute della Zona. I tentativi degli stalker di riprendere il controllo della nave si sono interrotti rapidamente, allorch, perch servisse da esempio, alcuni elementi indisciplinati furono gettati fuori bordo a morire nelle emissioni. + + + La Skadovsk rimasta una casa per tutti quelli abbastanza fortunati da raggiungerla. I banditi hanno cercato di stabilire il loro cosiddetto "ordine" sulla nave, ma gli stalker li hanno tenuti a bada. Sulla nave si quindi stabilita una fragile pace. + + + Purtroppo, non durata a lungo. I succhiasangue della tana vicina alla Skadovsk hanno raggiunto la nave. Quando i loro attacchi iniziarono ad avvenire anche in pieno giorno, fu istituita una missione per gestire il problema. Purtroppo, l'operazione non riusc a ripulire i tunnel, e poco dopo un'ondata di predatori massacr gli abitanti della nave. + + + In seguito alla distruzione della tana dei succhiasangue, i mutanti smisero di disturbare in modo significativo la vita della Skadovsk. Per un po', la vecchia nave divenne un centro relativamente tranquillo nel mondo in continuo cambiamento che la Zona. + + + La Freedom riusc a guadagnarsi la fiducia degli stalker alla stazione Yanov. La Duty organizz un assalto nel tentativo di recuperare il terreno perduto, ma il Tenente Colonnello Shulga fu ucciso nel conseguente scontro a fuoco. La squadra della Duty non resistette a lungo senza il suo comandante. + + + Nuove reclute e una popolarit crescente tra gli stalker consentirono alla Duty di scacciare la Freedom dalla stazione Yanov. Loki e la sua squadra della Freedom furono uccisi dopo una feroce battaglia. + + + Alla stazione Yanov si raggiunse un delicato equilibrio tra le fazioni Freedom e Duty. Stanchi di una lotta senza senso, i combattenti di entrambe le parti cominciarono a lasciare le rispettive squadre e a unirsi agli stalker liberi. + + + La spedizione di ricerca scientifica organizzata dai professori Hermann e Ozersky fu un successo. I dati raccolti facilitarono lo sviluppo di numerosi congegni unici nel loro genere e di molte droghe. Alla luce di questi eventi, i fondi per i programmi di ricerca nella Zona ricevettero un'impennata. + + + La spedizione di ricerca scientifica organizzata dai professori Hermann e Ozersky non raccolse dati a sufficienza e fu sospesa. Tornati nel mondo esterno, i due scienziati proseguirono a lavorare ognuno per conto proprio. + + + Le storie di Garry sulle lotte dell'esercito contro i pericoli di Pripyat suscitarono grande interesse, e vari gruppi presero a esplorare la citt fantasma. Nonostante i continui attacchi dei Monolith, gli stalker riuscirono a stabilirsi nel vecchio accampamento dell'esercito, che usarono come base da cui partire per le esplorazioni nel cuore della citt, dove fecero notevoli progressi. + + + Le storie di Garry sul destino dell'esercito scoraggiarono i tentativi degli stalker di entrare a Pripyat. I pochi che osarono avventurarsi in citt incapparono in fenomeni terribili e inspiegabili, che non fecero che gettare ulteriore mistero sul gi cupo ritratto della citt. + + + L'Oasi non costituiva pi una leggenda. L'identit di coloro che erano riusciti a raggiungere l'anomalia segreta divenne un argomento di discussione sempre pi regolare tra gli stalker. Il numero degli avventurieri che cercarono di seguire i loro passi rimase alto, una cosa di cui i banditi continuarono ad approfittarsi. I principianti sono ingannati dalle loro offerte di accompagnarli fino all'Oasi, che generalmente si concludono con rapine da parte di altri stalker. + + + Le squadre di mercenari continuano a essere attive nella Zona. Il loro interesse per i laboratori segreti cresciuto e ha attirato l'attenzione dell'esercito americano. Nonostante questo, i tentativi di stabilire l'identit del committente dietro le azioni dei mercenari non hanno dato frutti. + + + L'area intorno alla stazione Yanov continua ad attirare un numero sempre crescente di stalker. La mancanza di mutanti pericolosi e l'abbondanza di aree anomale hanno fatto s che quell'area venisse definita dagli stalker un "covo di tesori". + + + L'area intorno alla stazione Yanov si fatta la reputazione di essere uno dei posti pi pericolosi della Zona. Erano sempre meno gli stalker che riuscivano a tornare dagli attacchi, e molti morivano per mano dei mutanti nei pressi degli accampamenti. Uno degli stalker scomparsi Zveroboi, partito per cacciare una chimera. + + + Zulu torn alla base principale della Duty, allo stabilimento Rostok. Nessuno sa di cosa abbia discusso con il capo della Duty, il Generale Voronin, ma molti giorni dopo fu avvistato a capo di una squadra numerosa diretta al centro della Zona. + + + Voci sul destino di Zulu arrivarono alle orecchie del capo della Duty, il Generale Voronin. Con grande sorpresa di tutti, Voronin decise di conferire a Zulu, in modo postumo, lo Scudo d'argento, la massima riconoscenza della Duty. + + + Vano si diretto ai magazzini della Freedom controllati dai militari, e qui la sua personalit allegra e il suo ottimismo gli sono valsi rapidamente la popolarit che meritava. Infine, si messo a capo di un piccolo gruppo di ricercatori coinvolti nelle indagini delle aree anomale. + + + Gli stalker della stazione Yanov ogni tanto ricordano ancora l'allegro Vano, e non hanno dimenticato la sua personalit bonaria e le sue capacit di stalker. Sono tutti d'accordo nel sostenere che, considerata la sua fine, Vano abbia commesso un grosso errore a decidere di cercare una strada per Pripyat. + + + Nella Zona comparso un nuovo gruppo di stalker. Sono ben addestrati ma i loro obiettivi restano ignoti. Voci non confermate indicano che un tempo erano combattenti Monolith, la cui squadra era guidata da un certo Strider. + + + In pochi si sono accorti della scomparsa di Strider, l'unico che sapeva cosa accadeva a chi rimaneva affascinato dai Monolith e li aiutava. + + + Il Tenente Sokolov continu a sorvolare la Zona e fu abbattuto da dei mercenari sopra Limansk. Due settimane dopo fu recuperato da una pattuglia nei pressi del Cordon. La sua sopravvivenza fu considerata un piccolo miracolo. Sokolov lasci le forze aeree poco dopo e si un a una compagnia di linea civile. + + + Alla lista delle vittime subite nel corso dell'Operazione Fairway fu aggiunto un altro nome: "Tenente O.N. Sokolov. Morto nell'adempimento del suo dovere." + + + Owl riusc a stabilire buoni contatti con clienti esterni alla Zona. Trafficava informazioni e, se le voci sono vere, uno dei suoi clienti pi importanti sono gli Stati Uniti. + + + Un gruppo di stalker fu costretto a rifugiarsi sulla vecchia chiatta di Noah durante un'emissione particolarmente intensa. La chiatta fu attaccata da un'orda di snork poco dopo e gli stalker capirono subito che si trovavano in una piccola ma efficace fortezza. La cosa ancora pi stupefacente fu il gruppo di cuccioli di pseudocani che Noah guid in battaglia contro gli snork. + + + Scoperte le sorti dei suoi amici, Cardan rinunci ai sogni di una carriera come stalker. Superato il problema della dipendenza da alcol, si trasfer a Yanov, dove si un a Nitro per gestire un centro riparazioni. Nel tempo libero entrambi i tecnici si dedicarono con passione allo sviluppo di un veicolo adatto all'ambiente inospitale della Zona. + + + Superata la propria dipendenza dall'alcol, Cardan lasci la Skadovsk. Gli stalker dicono che part alla ricerca dei suoi amici scomparsi. Torn molti giorni dopo, ferito e contaminato dalle radiazioni. Le sue ferite guarirono e lui lasci la Zona per sempre. + + + Strelok pass le informazioni ottenute alla centrale di Chernobyl ai comandanti dell'esercito americano. Questo spinse il Governo alla creazione di un Istituto scientifico per la ricerca dell'area anomala di Chernobyl. Strelok assunse la posizione di Consulente scientifico capo dell'Istituto. + + + La conoscenza di Strelok si perse insieme a lui. Le informazioni che trov alla centrale di Chernobyl si sarebbero potute sfruttare per risolvere gli enigmi della Zona, ma non raggiunsero mai il mondo esterno. A quanto pare la Zona sa come mantenere i propri segreti. + + + Quando il Colonnello Kovalsky, comandante del gruppo degli Stingray, torn dalla Zona, fece rapporto ai suoi comandanti sulle ragioni del fallimento dell'Operazione Fairway. In seguito a un'indagine e ai tentativi falliti di addossare a lui la colpa, il colonnello fu infine congedato con onore. + + + Il Colonnello Kovalsky, comandante del gruppo degli Stingray, trov il suo luogo di riposo non lontano dalla sua squadra. I loro corpi furono presi dalla Zona, e a ricordare il loro sacrificio non rimase che qualche foto sbiadita in un museo militare specializzato. + + diff --git a/gamedata/configs/text/ita/ui_st_credits.xml b/gamedata/configs/text/ita/ui_st_credits.xml new file mode 100644 index 0000000..69d0ae3 --- /dev/null +++ b/gamedata/configs/text/ita/ui_st_credits.xml @@ -0,0 +1,684 @@ + + + + Sergey Chechin + + + Maciej Abramowicz + + + Armen Abroyan + + + Attori + + + Tester + + + AMD/ATI + + + Roman Androshiuk + + + Animatore + + + Dipartimento grafico + + + Direttore artistico + + + Nikita Atroshenko + + + Damian Bajorek + + + Mikhail Bastrykin + + + Kamil Bilinski + + + Krzysztof Binkowski + + + Arkadiusz Bochenek + + + Justin Boggs + + + Anatoly Bogush + + + Wojciech Borowy + + + Stanislaw Burtsau + + + Modelli personaggi + + + Aleksey Cherevatenko + + + Jerzy Chrul + + + Wojciech Ciemny + + + Compositore + + + Dmitry "Abe" Davidyan + + + Aaron Davies + + + Alexander Demidenko + + + Dipartimento + + + programmazione + + + Lukasz Derewonko + + + Ruslan Didenko + + + Yuri Doroshenko + + + Elena Dovgaliuk + + + Rafal Durajczyk + + + Petr Dushinsky + + + Maciej Dziarnowski + + + Sergey Eremenko + + + Yuri "Dark" Falchenko + + + Jakub Gabryel + + + Cezary Galach + + + Dipartimento progettazione + + + Programmazione azione di gioco + + + CQ CENEGA + + + Ringraziamenti speciali + + + Filip Gerasimov + + + Grigory Hermann + + + Angelica Girich + + + Pawel Golubinski + + + Marcin Gorniak + + + Tomasz Goscicki + + + Programmatori grafica + + + Holger Grun + + + Pawel Grzywaczewski + + + Sergiy Grygorovich + + + Marcin Gutowski + + + Dmitry Yasenev + + + Intel + + + Sergey Ivantsov + + + Norbert Jankowski + + + Alexander Kachaniuk + + + Dmitry Kalita + + + Aleksander Keska + + + Andrey "Darin" Kirienko + + + Lukasz Kobylanski + + + Andrey Kolomiets + + + Artur Komorek + + + Yuri Konstantinov + + + Maria Kotolovskaya + + + Alexander Kovach + + + Kirill Koval + + + Irina Krivchikova + + + Dmitry Krivets + + + Eugene Kuchma + + + Svetlana Kudrya + + + Sergey Kurbatov + + + Olga Kuzhel + + + Dmitry Kuzmenko + + + Aleksey Kuznetsov + + + Oleg Kuznetsov + + + Szymon Lazarski + + + Animatore capo + + + Grafico capo + + + Capo progettista di gioco + + + Capo programmatore + + + Capi tester + + + Esperti di riferimento + + + Progettazione livelli + + + Correzione dei testi + + + Vladimir Litvinenko + + + Eric Lundgren + + + Sergey Maistrenko + + + Dmitry Macedon + + + Roman Malinkin + + + Responabili di progetto + + + Alexander Maniliuk + + + Daniel Mankowski + + + Denis Matveenko + + + Maciej Mazurek + + + Piotr Mazurkiewicz + + + Darren McPhee + + + Igor Melnikov + + + Victor Merkulov + + + Damian Mielnik + + + Pavel Mikhailov + + + Konstantin Mironov + + + Un sentito ringraziamento a Oleg Fomenko + + + e BuntarMedia + + + per i consigli relativi al MOCAP + + + Vladimir Morev + + + Andrey Moroz + + + Dawid Mrozowski + + + Yuri Negrobov + + + Programmazione multigiocatore + + + nVidia + + + Aleksey Omelchuk + + + Lukasz Osinski + + + Mikhail Parfeniuk + + + Eugene Pashin + + + Igor Pasichnyi + + + Bartosz Peas + + + Programmazione fisica + + + Jacek Piotrowski + + + Alexander Plichko + + + Dipartimento PR + + + Direttore PR + + + Responsabili PR + + + Sergey Prishepa + + + Produttore + + + Responsabile di progetto + + + Testing + + + Anton Ravin + + + Sebastian Rejent + + + Mateusz Rekorajski + + + Filip Resiak + + + Peter Ross + + + Ivan Rozin + + + Lukasz Ruminski + + + Denis Rutkovsky + + + Lukasz Rynkowski + + + Responsabile sviluppo relazioni commerciali + + + Piotr Samborowski + + + Maria Shapunova + + + Sergey Shelest + + + Igor Sidorenko + + + Mikolaj Sitkiewicz + + + Yuri Skripal + + + Konstantin Slipchenko + + + Tomasz Sobotka + + + Produttore audio + + + Ringraziamenti + + + speciali a + + + Oleg Stalchuk + + + Liudmila Starodub + + + Vladimir Stavitsky + + + Pawel Stempien + + + Pawel Strzelczyk + + + Riconoscimenti + + + Konstantin Stupivtsev + + + Servizio + + + clienti + + + Rafal Szekalski + + + Maciej Szumowski + + + Marcin Szwargolinski + + + Vladimir Tereshiuk + + + Sergey Terliuk + + + Texture + + + E a tutti coloro che ci hanno aiutato a + + + creare un gioco migliore dei precedenti: + + + Konstantin Morozkov + + + Yaroslav "Uncle Yar" Alexandrov + + + Dmitry "Comandor" Ivanov + + + Oleg Chernov + + + Ig. Valerian (Golovchenko) aka oVal + + + M. Bystrykhin + + + Eugene "Mulder" Khaletskiy + + + Pavel "Goon" Bolotov + + + Alexander "Leks" Abramov + + + Alexander Novikov + + + Alexander Poshtaruk, Andrey Oleshk + + + Eugene "KRANZ" Goncharenko + + + Sergey Dvuzhilny + + + Aleksey "Don Reba" Badalov + + + Sergey Dvuzhilny, Tolusha + + + Artem Zuev, aka BAC9-FLCL + + + Glot, Patriot, Mers + + + Tiger, Demesis, Kharon, Moby + + + Alexander Oleinik + + + Konstantin "Inquisitor" Kriuchkov + + + Alexander Shakhovsky, Igor Dolzhenko + + + Sergey "Tur" Leshenko + + + Dmitry "Hill" Gorban + + + Mikhail Kliuev + + + Sergey "Termite" Volchanov + + + Sergey Tikhomirov + + + Ilya Tolmachev + + + Jakub Trudzik + + + Progettazione interfaccia + + + Yuri Uralsky + + + Denis "Tetri$Zs" Yusupov + + + RandyJ VanderHeyden + + + Vladimir Vazhinsky + + + Andrey Verpakhovsky + + + Alexander Vilkov + + + Anastassia Voskolovich + + + Andrzej Wardziak + + + Programmazione web + + + Dominik Wojcik + + + Lukasz Watroba + + + Eugene Yablon + + + Yuri Yatsenko + + + Eugene Yatsiuk + + + Oleg Yavorsky + + + Valentin Yeltyshev + + + Eugene Zaitsev + + + Andrey Zakoliukin + + + Marek Zdziarski + + + Michal Zegarski + + + Albert Zmudzki + + + Aleksey Zorin + + + Bartosz Zukowski + + + Victoria "Morrant" Yukhno + + + Sergey "ion" Kalintsev + + + Roman "RVCool" Kulikov + + + Maxim Smirnov + + + Omar Al-Shekhly + + + Roman =Marauder= Arhipov + + diff --git a/gamedata/configs/text/ita/ui_st_inventory.xml b/gamedata/configs/text/ita/ui_st_inventory.xml new file mode 100644 index 0000000..11942d0 --- /dev/null +++ b/gamedata/configs/text/ita/ui_st_inventory.xml @@ -0,0 +1,303 @@ + + + + Denaro insufficiente + + + Il personaggio non ha denaro a sufficienza + + + $$ACTION_QUICK_USE_1$$ + + + $$ACTION_QUICK_USE_2$$ + + + $$ACTION_QUICK_USE_3$$ + + + $$ACTION_QUICK_USE_4$$ + + + attiva manufatto + + + aggancia lanciagranate a + + + attacca mirino a + + + attacca silenziatore a + + + Prezzo + + + Gruppo: + + + Condizione + + + stacca lanciagranate + + + stacca mirino + + + stacca silenziatore + + + indossa tuta + + + lascia + + + lascia tutto + + + mangia + + + kg + + + attacca alla cintura + + + sposta nello zaino + + + sposta nello slot + + + Al mercante non interessano oggetti come questi. + + + L'oggetto troppo danneggiato per essere scambiato. + + + gioca + + + vendi oggetto + + + Condizione dell'armatura + + + Contaminazione radioattiva + + + rimuovi tuta + + + scarica + + + usa + + + Peso + + + Dim. caric. + + + Precisione + + + Acquista munizioni di base per la pistola.(Q) + + + Acquista munizioni per il fucile (W) + + + Guarig. ferite + + + Annulla + + + Impossibile acquistare l'arma + + + Restrizioni alla quantit + + + Danno + + + Predefinito (F5) + + + Indietro + + + Acquista il lanciagranate sottocanna per il fucile (D) + + + Acquista le granate per il lanciagranate sottocanna (E) + + + Ergonomia + + + Ora + + + Riprist. salute + + + Pesante + + + Compra l'ultima configurazione acquistata + + + Precedente (F4) + + + Denaro + + + Richiesto + + + Denaro insufficiente + + + OK + + + Peso trasportato + + + Prot. term. + + + Prot. chim. + + + Armatura + + + Prot. rad. + + + Prot. el. + + + Prot. psic. + + + Ass. imp. + + + Rec. energetico + + + Configurazione 1 (F1) + + + Configurazione 2 (F2) + + + Configurazione 3 (F3) + + + Radiazione + + + Restrizione del rango + + + Cad. fuoco + + + Cancella (C) + + + Fuc. d'assalto + + + Eliminaz. fame + + + Acquista il mirino ottico per il fucile (S) + + + Vendi tutti gli oggetti nello zaino (X) + + + Fucili + + + Acquista il silenziatore per la pistola (A) + + + Acquista il silenziatore per il fucile (F) + + + Fuc. di prec. + + + Tempo + + + Ne hai gi uno + + + I servizi online di S.T.A.L.K.E.R. non sono accessibili. + + + Impossibile connettersi con il server principale. + + + Protezione: + + + Predefinito + + + Configurazione acquistata salvata come + + + Peso totale + + + drink + + + Recupero energetico + + + Emorragia + + + Peso massimo + + + Salute + + + Munizioni + + + Durata + + + sec + + + Consente di sopravvivere a un'emissione + + + indossa il casco + + + rimuovi il casco + + diff --git a/gamedata/configs/text/ita/ui_st_ixray.xml b/gamedata/configs/text/ita/ui_st_ixray.xml new file mode 100644 index 0000000..469ff50 --- /dev/null +++ b/gamedata/configs/text/ita/ui_st_ixray.xml @@ -0,0 +1,62 @@ + + + + S.T.A.L.K.E.R.: Chiamata di Pripyat + + + Menu principale + + + Livello: + + + Salvataggio rapido + + + Salvataggio automatico + + + + m + + + Distanza di colpo + + + + Apri il bagagliaio ($$ACTION_USE$$) + + + Usa ($$ACTION_USE$$) + + + + Libero + + + + Ricarica automatica + + + + Caricamento texture multithread + + + Mappa delle ombre + + + 1024x1024 + + + 2048x2048 + + + 3072x3072 + + + 4096x4096 + + + Sempre attivo + + diff --git a/gamedata/configs/text/ita/ui_st_keybinding.xml b/gamedata/configs/text/ita/ui_st_keybinding.xml new file mode 100644 index 0000000..7d36e4b --- /dev/null +++ b/gamedata/configs/text/ita/ui_st_keybinding.xml @@ -0,0 +1,225 @@ + + + + PDA + + + Ordina di attaccare + + + Cammina + + + Manufatto + + + Indietro + + + Binocolo + + + Menu di acquisto + + + Chat + + + Chat a squadre + + + Console + + + Contatti nel PDA + + + Accovacciati + + + Attiva/Disattiva accovacciati + + + Rilevatore + + + Gi + + + Lascia + + + Fuoco + + + Modalit di fuoco successiva + + + Modalit di fuoco precedente + + + Avanti + + + Lanciagranate sottocanna + + + Generale + + + Direzione + + + Zaino + + + Movimento + + + Multigiocatore + + + Arma + + + Zaino + + + Salto + + + Sinistra + + + Inclina a sinistra + + + Spostamento a sinistra + + + Mappa nel PDA + + + Arma nello slot successivo + + + Dispositivo visione notturna + + + Pausa + + + PDA + + + Arma nello slot precedente + + + Indietro + + + Ricarica + + + Ripara + + + Destra + + + Inclina a destra + + + Spostamento a destra + + + Punti + + + Schermata + + + Menu di selezione del modello + + + Corri + + + Menu di selezione della squadra + + + Torcia + + + Attiva + + + Su + + + Usa + + + Fasciatura veloce + + + Kit di pronto soccorso veloce + + + Avvia votazione + + + Vota + + + Vota "No" + + + Vota "S" + + + Arma 1 + + + Arma 2 + + + Arma 3 + + + Arma 4 + + + Arma 5 + + + Arma 6 + + + Modifica tipo di munizioni + + + Precedente arma di questo tipo + + + Avvicina visuale + + + Messaggi vocali (1) + + + Messaggi vocali (2) + + + Slot rapido 1 + + + Slot rapido 2 + + + Slot rapido 3 + + + Slot rapido 4 + + diff --git a/gamedata/configs/text/ita/ui_st_loadscreen.xml b/gamedata/configs/text/ita/ui_st_loadscreen.xml new file mode 100644 index 0000000..1b504d5 --- /dev/null +++ b/gamedata/configs/text/ita/ui_st_loadscreen.xml @@ -0,0 +1,474 @@ + + + + 100 CONSIGLI PER SOPRAVVIVERE NELLA ZONA + + + Colpisci il nemico all'occhio per ucciderlo all'istante, a prescindere dal livello della sua armatura. + + + L'AC-96/2 dispone di una modalit di fuoco a due colpi molto particolare. In questa modalit, entrambi i proiettili della raffica colpiranno il bersaglio nello stesso punto. + + + Le doppiette a canna doppia possono sparare due colpi quasi simultaneamente. + + + Non sottovalutare le pistole. Forniscono una notevole capacit d'arresto e possono essere molto efficaci contro i bersagli scarsamente corazzati. + + + I fucili da cecchino, stabili e precisi, sono l'ideale per eliminare i nemici da lontano. A corto raggio, tuttavia, sono meno efficaci. + + + I colpi sparati in movimento sono molto meno precisi rispetto a quelli da posizione fissa in piedi o abbassata. + + + Le armi e le tute protettive si usurano in fretta nelle condizioni proibitive della Zona. Le armi usurate sono meno precise e tendono a incepparsi, mentre le tute ti proteggeranno con minore efficacia. + + + Premi "$$ACTION_SCREENSHOT$$" per catturare un'immagine. + + + La posizione del manufatto o del giocatore che lo possiede viene indicata sulla minimappa. Se il manufatto lontano, sulla minimappa compare una freccia che ne indica la direzione. + + + L'AC-96/2 dispone di una modalit di fuoco a due colpi molto particolare. In questa modalit, entrambi i proiettili della raffica colpiranno il bersaglio nello stesso punto. + + + Le doppiette a canna doppia possono sparare due colpi quasi simultaneamente. + + + Non sottovalutare le pistole. Forniscono una notevole capacit d'arresto e possono essere molto efficaci contro i bersagli scarsamente corazzati. + + + I fucili da cecchino, stabili e precisi, sono l'ideale per eliminare i nemici da lontano. A corto raggio, tuttavia, sono meno efficaci. + + + Le armi e le tute protettive si usurano in fretta nelle condizioni proibitive della Zona. Le armi usurate sono meno precise e tendono a incepparsi, mentre le tute ti proteggeranno con minore efficacia. + + + Alcuni medicinali hanno caratteristiche uniche. Le pillole Ercole, per esempio, aumentano temporaneamente la capacit di carico, mentre le sostanze psico-bloccanti migliorano la tua resistenza alle psico-emissioni. + + + Premi "$$ACTION_SCREENSHOT$$" per catturare un'immagine. + + + Consiglio n + + + La vodka, un'alternativa economica alle medicine antiradiazioni, il modo pi semplice per ridurre gli effetti delle radiazioni sul corpo. + + + Puoi accedere alle informazioni dettagliate della missione in corso tenendo premuto "$$ACTION_SCORES$$". + + + Per cercare i manufatti ti occorre un rilevatore. I rilevatori migliori semplificano le ricerche e potrebbero rilevare manufatti ancora pi preziosi. + + + Gli stalker non fanno entrare nei loro accampamenti gente con le armi in bella vista. Per nascondere le tue armi premi il tasto appropriato ("$$ACTION_WPN_1$$", "$$ACTION_WPN_2$$", "$$ACTION_WPN_3$$", "$$ACTION_WPN_4$$"). + + + Puoi identificare i confini di un'anomalia lanciando dei bulloni. Per tirare fuori i tuoi bulloni, premi "$$ACTION_WPN_6$$". + + + Oltre a placare la fame, il cibo ripristiner parte della tua salute. + + + Le bevande energetiche migliorano temporaneamente il tuo recupero di resistenza, che aumenta il tuo potenziale di mobilit. + + + Una resistenza ridotta pu renderti immobile e vulnerabile agli attacchi nemici in momenti cruciali. + + + Puoi controllare quanto sei nascosto usando gli indicatori di rumore e di rilevamento dei nemici che si trovano nell'angolo in alto a sinistra dello schermo. + + + Impugnare un rilevatore non ti impedisce di usare un coltello, una pistola o un otturatore con l'altra. + + + Alcuni prodotti medici aumentano la resistenza del fisico agli effetti dannosi. Usare questi prodotti pu salvarti la vita durante le emissioni nelle aree anomale. + + + Puoi richiamare il menu contestuale degli oggetti nel tuo zaino collocando il puntatore del mouse sull'oggetto desiderato e premendo il pulsante destro. + + + Oltre ai loro soliti effetti, molti manufatti sono anche radioattivi. Puoi annullare questo effetto usando manufatti che assorbono le radiazioni. + + + Il tuo coltello inutile contro nemici dotati di armi da fuoco. Usalo nei combattimenti corpo a corpo o per un'uccisione furtiva. + + + Il peso che trasporti riduce la tua resistenza. Un peso eccessivo limiter la tua mobilit, mentre se sarai troppo sovraccarico non potrai muoverti affatto. + + + Un rilevatore l'unico modo affidabile per controllare se nelle aree anomale sono presenti manufatti. + + + La maggior parte dei manufatti restano invisibili mentre si spostano nell'area anomala, finch non vengono localizzati dal tuo rilevatore. + + + I mutanti sono pi attivi di notte, il che spiega perch gli stalker preferiscono attendere la luce del sole prima di avventurarsi nella Zona. + + + Se sei stato esposto alle radiazioni, usa le droghe anti-radiazioni. Se non ne hai, usa i kit di pronto soccorso per gestire i sintomi iniziali finch non potrai andare da un medico. + + + La maggior parte degli stalker possono portarti in un luogo vicino, ma una guida esperta pu condurti velocemente e in tutta sicurezza ad aree lontane. Per, ti faranno pagare i loro servizi un occhio della testa. + + + Vendere manufatti non l'unico modo per fare contanti. Anche liberarti dell'attrezzatura inutile pu essere proficuo. Ricorda che di solito ai mercanti non interessano gli oggetti gravemente danneggiati. + + + Per staccare un silenziatore, un mirino o un lanciagranate sottocanna dalla tua arma, clicca con il pulsante destro del mouse sull'arma nel tuo zaino e seleziona l'azione desiderata dal menu contestuale. + + + Se vuoi muoverti facendo il minimo rumore, premi "$$ACTION_ACCEL$$" per camminare o "$$ACTION_CROUCH$$" per accovacciarti. + + + Le doppiette sono armi per i combattimenti ravvicinati. Pi lontano il nemico, minore sar il loro effetto. + + + Quando ti metti al riparo dalle piccole armi da fuoco, assicurati di ripararti dietro qualcosa di solido. A differenza dei muri di cemento, le assi di legno e le lastre di metallo non sono un gran riparo. + + + I colpi alla testa infliggono ingenti danni e sono letali per gran parte dei nemici. + + + Ciascun tipo di mutante nella Zona ha il suo stile di combattimento. Tienilo a mente e avrai molte pi possibilit di sopravvivere. + + + Puoi regolare la distanza di lancio di una granata tenendo premuto "$$ACTION_WPN_ZOOM$$". + + + I nemici possono usare le granate e non si risparmieranno dal farlo. Quando vedi l'indicatore di granata, allontanati immediatamente dal raggio di esplosione. + + + Se acceleri prima di saltare riuscirai a superare crepacci e fenditure pi grandi. + + + Gli indicatori chiave che indicano i tuoi livelli di salute e resistenza si trovano nell'angolo in basso a destra dello schermo. + + + La Zona vive di vita propria, il che significa che c' sempre la possibilit di incappare in mutanti o in stalker nemici nelle zone che hai gi ripulito. + + + Tieni sempre gli occhi aperti nella Zona e non fare affidamento alle vecchie informazioni. Quando torni in un'area anomala gi esplorata, potresti scoprire che il vecchio sentiero gi battuto non esiste pi. + + + Parla con gli stalker locali per ricevere informazioni utili sulle nuove aree o sugli eventi recenti. + + + Puoi usare qualunque arma presente in entrambi gli spazi per le armi. In questo modo potrai creare combinazioni flessibili di armi, per esempio fucile d'assalto/doppietta o pistola/fucile da cecchino. + + + Ciascun mercante che incontri nei vari campi di stalker ti offrir la sua merce caratteristica. Per esempio, i medici avranno le migliori selezioni di prodotti medicinali. + + + Se arrivi in un campo di stalker ferito o avvelenato dalle radiazioni, puoi sfruttare gratuitamente l'assistenza del medico locale. + + + Puoi lasciare le tue cose in un ripostiglio personale all'accampamento per evitare di portarti in giro roba inutile. + + + Se devi aspettare una determinata ora, puoi fare un sonnellino all'accampamento per far passere il tempo. Per farlo, trova l'area dormitorio, premi "$$ACTION_USE$$" e scegli per quanto tempo vuoi dormire. + + + Il dispositivo di visione notturna nel tuo elmo pu essere potenziato alla versione di nuova generazione. In questo modo amplierai notevolmente il suo raggio d'azione. + + + Quando sei nella Zona, portati sempre un paio di caricatori di riserva... ti torneranno sicuramente utili. + + + Ricorda di salvare la partita regolarmente. In questo modo non dovrai giocare pi e pi volte la stessa parte. + + + Per usare le droghe nel modo giusto ti conviene conoscere bene i loro effetti. Consulta la descrizione delle droghe per scoprire quali sono gli utilizzi pi adeguati. + + + Usa le granate per attaccare i nemici al riparo. Ricorda il raggio d'azione delle granate per non colpire combattenti amici. + + + Per scartare un oggetto dallo zaino clicca su di esso con il pulsante destro del mouse e seleziona l'azione dal menu contestuale. + + + Nel menu opzioni possibile impostare il gioco affinch salvi i tuoi progressi in punti determinati. + + + Quando torni all'accampamento ti conviene riparare la tua attrezzatura, vendi il bottino di cui non hai bisogno e fai rifornimento di munizioni e medicinali. + + + Per ridurre gli effetti dannosi delle aree anomale durante gli attacchi nella Zona, usa una tuta protettiva, i manufatti e assumi le droghe adeguate. + + + Oltre alle armi e alle munizioni, sui corpi dei cadaveri potresti trovare oggetti preziosi come i PDA contenenti informazioni. + + + I manufatti non sono solo un bottino prezioso: oltre a essere leggeri e costosi, spesso possiedono effetti estremamente utili. + + + A causa dell'ambiente della Zona, molti mutanti sono radioattivi. Avvicinarli senza un'adeguata protezione estremamente pericoloso. + + + Per fermare l'emorragia puoi usare una fasciatura, un kit di pronto soccorso militare o le droghe Vinca. Se non te ne occupi in fretta, un'emorragia potrebbe danneggiare seriamente la tua salute. + + + Alcune armi ti permettono di montare un mirino a lungo raggio. Per regolare la distanza, premi "$$ACTION_NEXT_SLOT$$" or "$$ACTION_PREV_SLOT$$". + + + Passare attraverso alcuni posti impossibile, anche quando sei accovacciato. Per accovacciarti il pi in basso possibile, tieni premuti "$$ACTION_CROUCH$$" e "$$ACTION_ACCEL$$" contemporaneamente. + + + Per ridurre il rischio di essere colpito dal fuoco nemico, rispondi al fuoco nascondendoti dietro gli angoli. Per farlo, tieni premuto "$$ACTION_LLOOKOUT$$" or "$$ACTION_RLOOKOUT$$". + + + Grazie a un meccanismo di individuazione del bersaglio integrato, il tuo binocolo ti permette di vedere bene gli oggetti lontani e di individuare i nemici. Per estrarre il binocolo, premi "$$ACTION_WPN_5$$". + + + Per accendere e spegnere la torcia, premi "$$ACTION_TORCH$$". + + + Per tirare fuori l'otturatore, premi "$$ACTION_WPN_6$$". + + + Se hai un congegno di visione notturna integrato nel tuo elmo, puoi attivarlo e disattivarlo premendo "$$ACTION_NIGHT_VISION$$". + + + Premi "$$ACTION_QUICK_USE_1$$", "$$ACTION_QUICK_USE_2$$", "$$ACTION_QUICK_USE_3$$", "$$ACTION_QUICK_USE_4$$" per usare l'oggetto appropriato nel pannello d'accesso rapido. + + + Le droghe non fanno effetto immediatamente e alcune hanno una durata notevole. + + + Il tuo PDA contiene una mappa, delle informazioni sulla missione in corso, le tue statistiche personali e un diario. Per aprire il PDA, premi "$$ACTION_ACTIVE_JOBS$$". + + + Devi estrarre il tuo rilevatore per cercare i manufatti. Per farlo, premi "$$ACTION_SHOW_DETECTOR$$". + + + Per mettere in pausa il gioco, premi "$$ACTION_PAUSE$$". + + + Per eseguire un salvataggio veloce, premi "$$ACTION_QUICK_SAVE$$". Premi "$$ACTION_QUICK_LOAD$$" per caricarlo. + + + Correre il modo pi veloce per muoversi, ma anche il pi stancante. Premi "$$ACTION_SPRINT_TOGGLE$$" per correre. + + + Sparare mirando ti garantisce una precisione maggiore che sparando con la pistola al fianco. Per mirare, premi "$$ACTION_WPN_ZOOM$$". + + + Se possiedi un lanciagranate sottocanna, puoi passare dal fuoco normale alle granate premendo "$$ACTION_WPN_FUNC$$". + + + Se possiedi diversi tipi di munizione per l'arma equipaggiata, puoi passare da un tipo all'altro premendo "$$ACTION_WPN_NEXT$$". + + + Per ricaricare la tua arma prima che il caricatore si svuoti, premi "$$ACTION_WPN_RELOAD$$". + + + Per scartare l'arma equipaggiata, premi "$$ACTION_DROP$$". + + + Per aspettare che passi un'emissione, nasconditi in un edificio sicuro o sottoterra. Quando si avvicina un'emissione, sul tuo PDA sar indicato il nascondiglio pi vicino. + + + Per usare un oggetto attraverso lo slot rapido, trascinalo dal tuo zaino a uno dei quattro slot sopra il contenitore di manufatti. + + + Il simbolo a forma di goccia di sangue nell'angolo in basso a destra dello schermo ti avvisa di un'emorragia e della necessit di fermarla. Il colore del simbolo indica la gravit dell'emorragia. + + + Un simbolo di pericolo radiazioni nell'angolo in basso a destra del tuo schermo ti avviser che sei stato esposto alle radiazioni. Quando questo succede, devi usare le medicine anti-radiazioni. Il colore del simbolo indica la gravit dell'esposizione. + + + Puoi nascondere e mostrare diversi indicatori sul tuo PDA usando i filtri. I pulsanti dei filtri si trovano sopra la mappa, sotto la riga della missione in corso. + + + Normalmente i manufatti non sono statici: tendono infatti a muoversi all'interno di un'area anomala. Tentativi sconsiderati di recuperarli ti faranno finire senza dubbio in un'anomalia. + + + Alcuni stalker potrebbero venderti servizi come informazioni, merci esclusive o darti ordini per recuperare specifici manufatti. + + + I nuovi manufatti potrebbero apparire in aree anomale che hai gi esplorato dopo un'emissione. + + + Puoi variare la difficolt del gioco in qualunque momento attraverso il menu opzioni di gioco. + + + I tecnici negli accampamenti degli stalker possono potenziare le armi, le tute e gli elmi. + + + Se vuoi sopravvivere, controlla sempre il crepitio emesso dal contatore Geiger, che ti avvisa delle radiazioni, e il segnale di pericolo anomalia che ti avvisa quando sei nei pressi di un'anomalia. + + + Il tuo rapporto con le persone influenza il prezzo delle merci e dei servizi che puoi comprare. Se i rapporti non sono buoni, non avrai sconti. Se invece vai d'accordo con un mercante, questi potrebbe anche essere disposto a offrirti qualcosa di speciale. + + + Puoi scaricare le armi che trovi per ottenere altre munizioni. Per farlo, clicca con il pulsante destro del mouse sull'arma nello zaino e seleziona l'azione adeguata dal menu contestuale. + + + Uccidi i nemici e acquisisci nuovi manufatti per ottenere i punti necessari ad aumentare il tuo rango, che ti permetter di accedere a nuove armi, attrezzature e armature. + + + Le granate fumogene sono usate per rubare manufatti o per creare una copertura. + + + La parte sinistra del menu di acquisto contiene cinque schede, che dall'alto in basso sono: pistole, armi principali, equipaggiamento, munizioni e medicinali. Seleziona la scheda desiderata e ti verranno mostrati gli oggetti disponibili per il tuo rango. + + + Il menu di acquisto sulla destra dello schermo contiene quattro slot di acquisto veloce. Premi l'icona disco per salvare la configurazione, mentre con il numero caricherai la configurazione. Il quarto slot usato per salvare l'ultima configurazione. + + + Se possiedi pi di un'arma, puoi passare da una all'altra premendo "$$ACTION_WPN_3$$". + + + Un manufatto pu essere attivato per creare un'anomalia. Per farlo prendi il manufatto premendo "$$ACTION_ARTEFACT$$" e tenendo premuto "$$ACTION_WPN_FIRE$$". L'anomalia che compare pericolosa tanto per il nemico quanto per il giocatore che l'ha creata. + + + Una tuta scientifica ti aiuter a sopravvivere nelle anomalie e nelle aree radioattive. + + + CACCIA AI MANUFATTI: per vincere devi riportare alla tua base un determinato numero di manufatti. + + + Per staccare un silenziatore, un mirino o un lanciagranate sottocanna dalla tua arma, clicca con il pulsante destro del mouse sull'arma nel tuo zaino e seleziona l'azione desiderata dal menu contestuale. + + + Se vuoi muoverti facendo il minimo rumore, premi "$$ACTION_ACCEL$$" per camminare o "$$ACTION_CROUCH$$" per accovacciarti. + + + Le doppiette sono armi per i combattimenti ravvicinati. Pi lontano il nemico, minore sar il loro effetto. + + + Quando ti metti al riparo dalle piccole armi da fuoco, assicurati di ripararti dietro qualcosa di solido. A differenza dei muri di cemento, le assi di legno e le lastre di metallo non sono un gran riparo. + + + I colpi alla testa infliggono ingenti danni e sono letali per gran parte dei nemici. + + + I movimenti rapidi, i salti e le ferite riducono significativamente la tua resistenza. + + + Puoi regolare la distanza di lancio di una granata tenendo premuto "$$ACTION_WPN_ZOOM$$". + + + I nemici possono usare le granate e non si risparmieranno dal farlo. Quando vedi l'indicatore di granata, allontanati immediatamente dal raggio di esplosione. + + + SCONTRO MORTALE: totalizza il massimo punteggio per vincere. + + + Se acceleri prima di saltare riuscirai a superare crepacci e fenditure pi grandi. + + + Gli indicatori chiave che indicano i tuoi livelli di salute e resistenza si trovano nell'angolo in basso a destra dello schermo. + + + La minimappa ti mostra la direzione in cui si trova il manufatto. Se la freccia rivolta verso l'alto, il manufatto sopra la tua posizione attuale. Se rivolta verso il basso, sotto di te. + + + Per ottenere contanti extra puoi raccogliere gli zaini dei nemici. L'equipaggiamento in eccesso pu essere venduto alla base. + + + Proteggi a ogni costo il membro della tua squadra che trasporta i manufatti. + + + Usa le granate per attaccare i nemici al riparo. Ricorda il raggio d'azione delle granate per non colpire combattenti amici. + + + Puoi comunicare con la tua squadra tramite messaggi vocali. Per accedere al menu dei messaggi vocali, premi "$$ACTION_SPEECH_MENU_0$$" or "$$ACTION_SPEECH_MENU_1$$". + + + SCONTRO MORTALE A SQUADRE: per poter vincere, la tua squadra deve totalizzare pi punti uccisione del nemico. + + + possibile dare il via a una votazione premendo "$$ACTION_VOTE_BEGIN$$". + + + Per visualizzare i punteggi di gioco, premi "$$ACTION_SCORES$$". + + + Per rigenerarti, premi "$$ACTION_JUMP$$" una volta terminato il periodo di attesa. + + + Per aprire il menu di acquisto, premi "$$ACTION_BUY_MENU$$" quando sei nella tua base. + + + Apri la chat generica premendo "$$ACTION_CHAT$$". Per comunicare solo con i membri della tua squadra attraverso la chat testuale, premi "$$ACTION_CHAT_TEAM$$". + + + Correre il modo pi veloce per muoversi, ma anche il pi stancante. Premi "$$ACTION_SPRINT_TOGGLE$$" per correre. + + + Sparare mirando ti garantisce una precisione maggiore che sparando con la pistola al fianco. Per mirare, premi "$$ACTION_WPN_ZOOM$$". + + + Se possiedi un lanciagranate sottocanna, puoi passare dal fuoco normale alle granate premendo "$$ACTION_WPN_FUNC$$". + + + Se possiedi diversi tipi di munizione per l'arma equipaggiata, puoi passare da un tipo all'altro premendo "$$ACTION_WPN_NEXT$$". + + + Per ricaricare la tua arma prima che il caricatore si svuoti, premi "$$ACTION_WPN_RELOAD$$". + + + CATTURA IL MANUFATTO: per vincere devi riportare alla tua base un determinato numero di manufatti. + + + Per scartare l'arma equipaggiata, premi "$$ACTION_DROP$$". + + + Per guardare nel tuo zaino, premi "$$ACTION_INVENTORY$$". + + + La maggior parte delle armi dispongono di varie modalit di fuoco. Per passare da una modalit all'altra, premi "$$ACTION_WPN_FIREMODE_NEXT$$" o "$$ACTION_WPN_FIREMODE_PREV$$". + + + Passare attraverso alcuni posti impossibile, anche quando sei accovacciato. Per accovacciarti il pi in basso possibile, tieni premuti "$$ACTION_CROUCH$$" e "$$ACTION_ACCEL$$" contemporaneamente. + + + Per guardare dietro un angolo, premi "$$ACTION_LLOOKOUT$$" o "$$ACTION_RLOOKOUT$$". Mentre guardi dietro un angolo non puoi sparare. + + + CATTURA IL MANUFATTO: per riportare un manufatto rubato alla tua base, devi uccidere il nemico che lo trasporta e raccogliere il manufatto premendo "$$ACTION_USE$$". + + + CACCIA AI MANUFATTI: puoi distruggere il manufatto attivandolo. Per farlo, estrai il manufatto premendo "$$ACTION_ARTEFACT$$" e tieni premuto "$$ACTION_WPN_FIRE$$". + + + Mentre trasporti il manufatto non puoi correre. + + + Per guardare nel tuo zaino, premi "$$ACTION_INVENTORY$$". + + + Per riparare un oggetto, una tuta o un casco, dovrai trovare un tecnico e cliccare sul pulsante di riparazione, dopo averlo selezionato nella schermata di modifica. + + + La maggior parte delle armi dispone di varie modalit di fuoco ed possibile acquistare modifiche per aggiungerne altre in seguito. Per passare da una modalit di fuoco all'altra, premi "$$ACTION_WPN_FIREMODE_NEXT$$" o "$$ACTION_WPN_FIREMODE_PREV$$". + + + La stabilit di un'arma influisce sulla traiettoria del proiettile, mentre l'ergonomia determina il tempo che il mirino impiega a tornare nella posizione originale dopo aver sparato. + + + Alcune tute sono dotate di elmi. Non possibile usare altri elmi con queste tute. + + + Ciascuna arma ha una sua precisione, ergonomia, cadenza di fuoco e quantit di danni inflitti, quindi potrai selezionare quella pi adatta a te in un'ampia gamma di scelte. + + + La precisione nel tiro cala notevolmente, se spari mentre ti muovi. Resta fermo, oppure accovacciati, per aumentarla. + + + Questa bevanda energetica aumenta temporaneamente la velocit di recupero, consentendoti di correre pi a lungo. + + + Quando giochi in modalit Scontro mortale, disponi di munizioni illimitate. + + + Una delle minacce maggiori nella Zona costituita dalle radiazioni. L'esposizione eccesiva riduce la tua salute e pu portarti alla morte, se non viene curata adeguatamente. + + + Quando intraprendi una lunga missione porta sempre del cibo con te. Quando sei affamato, la velocit di recupero della resistenza caler notevolmente. + + diff --git a/gamedata/configs/text/ita/ui_st_mm.xml b/gamedata/configs/text/ita/ui_st_mm.xml new file mode 100644 index 0000000..6047029 --- /dev/null +++ b/gamedata/configs/text/ita/ui_st_mm.xml @@ -0,0 +1,936 @@ + + + + Cancella + + + Nuvoloso + + + medio + + + massimo + + + alto + + + basso + + + minimo + + + Notte + + + Pioggia + + + TIPO DI PARTITA + + + maestro + + + principiante + + + veterano + + + ICONE + + + MAPPA + + + Restituisci tramite attivazione + + + Consenti votazione + + + Tempo dell'anomalia (min) + + + Cattura manufatto + + + Ritardo del manufatto + + + Numero di manufatti + + + Tempo del manufatto + + + Restituisci il manufatto + + + Bilanciamento automatico della squadra + + + Cambiamento automatico della squadra + + + MAPPE DISPONIBILI + + + Annulla + + + Chiave CD + + + controlla chiave CD + + + Client + + + Crea + + + Invulnerabilit (sec) + + + Indicatore di invulnerabilit + + + Morti + + + Dedicato + + + Lista demo + + + statistiche del giocatore + + + Registra la demo + + + Registrazione della demo + + + Vuoto + + + Filtri + + + Rigenerazione forzata (sec) + + + Limite alle uccisioni + + + Uccisioni + + + Tempo di ritardo + + + Danno amico + + + Indicatori amici + + + Nomi amici + + + Pieno + + + Modalit + + + IP/host:porta + + + Internet + + + Connetti + + + LAN + + + Ascolta + + + Ripeti + + + Lista delle mappe + + + Limite giocatori + + + Connessione alla rete + + + Nessuna anomalia + + + Opzioni + + + Password + + + Nome del giocatore: + + + Giocatori + + + numero di giocatori + + + Server Internet + + + Aggiorn. veloce + + + Modifica coefficiente + + + Aggiorna tutto + + + Rinforzi (sec) + + + Opzioni rigenerazione + + + MAPPE SELEZIONATE + + + Server + + + Lista dei server + + + Propriet del server + + + Info sul server + + + Server + + + Nome del server + + + Impostazioni + + + Spettatore + + + Prima persona + + + Visuale libera + + + Libera-bloccata + + + Terza persona + + + Impostazioni spettatore + + + Solo squadra + + + Clima iniziale + + + punteggio + + + Tempo limite (min) + + + Riscaldamento (sec) + + + Opzioni clima + + + No fuoco amico + + + Nessuna password + + + Nessun PunkBuster + + + Con password + + + LAN + + + Internet + + + Fabbrica Agroprom + + + Stazione dei veicoli + + + Piscina + + + Modifica del nome unico avvenuta con successo! + + + Valle Oscura + + + Fabbrica Yantar + + + errore nella connessione al server delle statistiche + + + errore nella connessione al server d'accesso + + + Autorizzazione riuscita + + + Villaggio deserto + + + Magazzini militari + + + nome errato + + + Piscina + + + Stazione ferroviaria + + + Fabbrica Rostok + + + nome unico errato + + + Sei sicuro di voler rimuovere + + + Fabbrica deserta + + + PING + + + GIOCATORI + + + Illuminazione statica + + + Illuminazione dinamica completa + + + Illum. dinam. completa potenziata + + + Illuminaz. dinamica degli oggetti + + + Ill. din. completa potenz. (DX10) + + + NOME DEL SERVER + + + Caccia ai manufatti + + + Cattura manufatto + + + Tutti contro tutti + + + Filtro: + + + alto + + + basso + + + medio + + + spento + + + esperto + + + stalker leggendario + + + principiante + + + professionista + + + veterano + + + Gioco a squadre + + + Frequenza 60Hz + + + Azione + + + Avanzato + + + Alternativo + + + Filtro anisotropico + + + Applica + + + Indietro + + + Sangue + + + Luminosit + + + Annulla + + + Agg. gioco + + + Contrasto + + + Comandi + + + Riconoscimenti + + + Dist. bers. dal mirino + + + Predefinito + + + Cancella + + + Vuoi davvero cancellare questo file? + + + Densit dettaglio dell'erba + + + Difficolt + + + Disconnetti + + + Sei sicuro di volerti disconnettere? + + + Profondit di campo + + + Mirino dinamico + + + Musica dinamica + + + EAX + + + Schermo intero + + + Partita + + + Gamma + + + Dettaglio oggetti + + + Inverti pulsanti del mouse + + + Pulsante + + + Impostazioni della tastiera + + + Ultimo salvataggio + + + Distanza illuminazione + + + Carica + + + Carica partita + + + Esci dal profilo + + + Maestro + + + Volume effetti + + + Sensibilit del mouse + + + Fluidit oggetti test-A + + + Ottimizza fluidit + + + MULTIGIOCATORE + + + Multigiocatore + + + Volume musica + + + Le modifiche avranno effetto dopo che il sistema verr riavviato + + + Multigiocatore + + + Nuova partita + + + Principiante + + + Torce PNG + + + OPZIONI + + + Opzioni + + + Distanza delle particelle + + + Impostazioni qualit + + + Torna a Windows + + + Esci dalla partita + + + Sei sicuro di voler interrompere la partita? + + + Sei sicuro di voler tornare a Windows? + + + Dettaglio degli scontri + + + Parallasse ripida + + + Ombra sole + + + Ombra erba + + + Qualit sole + + + Usa DX10.1 + + + Fluidit schermo intero + + + Superfici umide + + + Ottimizza buffer geometrico + + + Fumo volumetrico + + + Render 2 + + + Tipo di render + + + Risoluzione + + + Torna alla partita + + + Salva + + + Salva partita + + + Disegna mirino + + + Mostra arma + + + Base + + + Dispositivo audio + + + Particelle morbide + + + Acqua morbida + + + Suono + + + Qualit suono + + + Stalker + + + Qualit ombra + + + Raggi del sole + + + Antialiasing + + + IA usa le torce + + + Dettaglio delle texture + + + Identificazione dei PNG + + + Veterano + + + Video + + + Distanza visuale + + + Luce volumetrica + + + Sincronia verticale + + + Modifica nome unico + + + Questa e-mail gi in uso + + + Attraverso Internet + + + Attraverso LAN + + + pugnalato alla schiena + + + di perdita di sangue + + + in un'esplosione + + + in un occhio + + + alla testa + + + La versione del file di salvataggio non corrisponde alla versione di gioco. + + + fila di uccisioni + + + coltello + + + Ultima config. + + + Entra in multigiocatore + + + Nome + + + Modifica + + + Config. 1 (F1) + + + Config. 2 (F1) + + + Config. 3 (F1) + + + Ripristina + + + Vendi tutto + + + Versione + + + Pripyat + + + Mod. accov./in piedi + + + Autosalv. in corso + + + Texture dettagliate + + + Filmati + + + Entra + + + Esci + + + Crea + + + E-mail o password errata + + + Profilo errato + + + Errore di connessione + + + Il server non attualmente disponibile + + + necessario connettersi al profilo + + + Errore di connessione + + + Errore di connessione + + + Errore di connessione + + + Nome profilo errato + + + Password errata + + + Soprannome errato + + + Il soprannome gi in uso + + + Collegati prima al tuo profilo + + + Esegui prima la disconnessione dal profilo + + + Errore nella connessione al server del profilo + + + Dopo aver creato il profilo non sarai in grado di cancellarlo + + + Qualit SSAO + + + Modalit SSAO + + + predefinito + + + HDAO + + + HBAO + + + Mostra interfaccia + + + Soprannome non registrato. Registralo. + + + Soprannome scaduto. Registralo di nuovo. + + + stalker + + + massimo + + + Ill. din. completa potenz. (DX11) + + + Collegati per accedere al server esterno. + + + Questo ID GameSpy in uso. Utilizza un altro ID GameSpy. + + + E-mail errata + + + Password errata + + + Non puoi uare un ID GameSpy per collegarti a un server locale. Utilizza la modalit LAN. + + + Sei stato espulso dal server. + + + Sei stato bandito dall'amministratore. + + + Sei stato bandito dal server. + + + Informazioni sul server + + + L'indirizzo e-mail troppo lungo, non pu superare i 50 caratteri. + + + E-mail errata + + + La password troppo breve + + + La password troppo lunga + + + E-mail non trovata + + + Soprannome non impostato + + + Il soprannome troppo lungo, non pu superare i 30 caratteri. + + + Il soprannome pu contenere solo numeri, lettere dell'alfabeto latino e i seguenti caratteri speciali: "#$&'()*+-./:;<=>?@[]^_`{|}~ + + + Il soprannome non pu contenere degli spazi. + + + Il soprannome non pu cominciare con un numero, n con un dei seguenti simboli: @, +, : e #. + + + molto elevata + + + Mosaico + + + Vuoi applicare le modifiche? Le impostazioni precedenti saranno ripristinate in + + diff --git a/gamedata/configs/text/ita/ui_st_mp.xml b/gamedata/configs/text/ita/ui_st_mp.xml new file mode 100644 index 0000000..8689201 --- /dev/null +++ b/gamedata/configs/text/ita/ui_st_mp.xml @@ -0,0 +1,741 @@ + + + + Manufatto + + + Amichevole + + + Ping massimo + + + Profilo + + + Modalit + + + Il manufatto stato distrutto. + + + Il manufatto si generato. Portalo alla base per ottenere i punti. + + + Il manufatto andato perduto. + + + Il manufatto alla nostra base. + + + Il manufatto alla base nemica. + + + Manufatti + + + Manufatti + + + Selez. automat. + + + Indietro + + + 4. Bandisci + + + Per anomalia + + + Annulla + + + manufatto catturato + + + 5. Modifica mappa + + + 6. Modifica clima + + + Modifica clima in + + + Chat + + + Connesso + + + Morti + + + Descrizione + + + Disconnesso + + + Inserisci il testo per la votazione + + + unito alla partita + + + Stazione dei pompieri + + + (visuale in prima persona) + + + uccisioni + + + Uccisioni + + + (visuale libera) + + + (visuale in terza persona) + + + con + + + 7. Modalit + + + Spazzatura + + + AVANTI! + + + lost%s il manufatto + + + perso il manufatto + + + got%s il manufatto + + + Mercenari + + + adesso + + + si unito + + + 3. Lascia + + + Limansk + + + Caricamento dei tuoi premi... + + + Caricamento dei tuoi record... + + + (Libera-bloccata) + + + Descrizione della mappa + + + Scontro iniziato + + + Vecchio villaggio + + + Modalit + + + Nome + + + Successivo + + + Non hai votato + + + Ping + + + %s ha vinto la partita! + + + Giocatori + + + Premi il pulsante di fuoco per passare alla modalit Spettatore + + + Premi il pulsante di salto per acquistare una rigenerazione istantanea + + + Premi il pulsante di salto per selezionare una skin + + + Premi il pulsante di salto per selezionare le squadre + + + Premi il pulsante di salto per generarti + + + Premi il pulsante di salto per iniziare + + + Premi ($$ACTION_BUY_MENU$$) per accedere al menu di acquisto + + + Hai %d$. Puoi rigenerarti per %d$. Clicca su S per pagare. + + + Pronto... + + + Centro riparazioni + + + 1. Ricomincia + + + 2. Riavvio rapido + + + restituito il manufatto + + + messo a segno un punto + + + Seleziona il giocatore da bandire tramite votazione + + + Seleziona categoria di voto + + + Seleziona il giocatore da espellere tramite votazione + + + Seleziona il giocatore da espellere tramite votazione + + + Seleziona la mappa per cui votare + + + Nessuna corsa con il manufatto + + + - Conteggio + + + - Tempo di permanenza + + + - Tempo di rigenerazione + + + Anomalie + + + Periodo dell'anomalia + + + Qualunque momento + + + Manufatto catturato + + + Manufatti: + + + Bilanciamento automatico della squadra + + + Cambiamento automatico della squadra + + + BattlEye + + + Disabilitato + + + Abilitato + + + - Prima persona + + + Rigenerazione forzata + + + Limite alle uccisioni + + + - Volo libero + + + - Visuale libera + + + Fuoco amico + + + Indicatori amici + + + Nomi amici + + + Infinito + + + Invisibilit: + + + - Indicatori + + + - Tempo + + + - Terza persona + + + Rotazione della mappa + + + Ping massimo + + + min + + + No + + + Rigenerazione + + + Giocatori tornati alla base + + + sec + + + Nome del server: + + + Basi protette + + + Modalit spettatore: + + + - Solo squadra + + + Tempo limite + + + Versione: + + + Votazione + + + Riscaldamento + + + S + + + Selezione della skin + + + Spettatore + + + SPETTATORI + + + Centro sportivo + + + Status + + + passato a + + + Freedom + + + Selezione della squadra + + + La squadra %s HA VINTO! + + + Testo + + + Tempo prima della rigenerazione + + + Tempo prima dell'inizio: + + + Tempo restante: %d:%d; Accettato: %.2f + + + Campo d'addestramento + + + Vota PER-[$$ACTION_VOTE_YES$$]\nVota CONTRO-[$$ACTION_VOTE_NO$$]\nRisultati-[$$ACTION_VOTE$$] + + + No + + + S + + + Votato + + + No + + + S + + + Voto cancellato dal server + + + Votazione '%s' iniziata da %s. + + + La votazione iniziata! + + + 1. Cancella + + + 4. Nuvoloso + + + 3. Notte + + + 2. Pioggia + + + Pugnalato alle spalle! + + + Colpito alla testa! + + + Hai catturato il manufatto nemico, ora portalo alla tua base! + + + Hai preso il manufatto!?Attivalo per riportarlo alla tua base! + + + Ora il tuo rango + + + Sei tu + + + La votazione non disponibile su questo server. + + + Nessun voto attivo. + + + permesso solo un voto attivo. + + + Pronto + + + A tutti + + + Alla squadra + + + Voto fallito! + + + Voto riuscito! + + + Base della Freedom + + + Base dei mercenari + + + 2. Caccia ai manufatti + + + 4. Cattura il manufatto + + + 1. Tutti contro tutti + + + Crea un nuovo profilo + + + Acquisizione profili account + + + Salve + + + Connessione al profilo + + + Profilo creato con successo. Connettiti a esso. + + + Verifica del nome unico in corso... + + + Vuoi usare il profilo esistente con il nome + + + Account trovato. Acquisizione profili registrati... + + + Hai gi un profilo. Connettiti a esso. + + + Verifica dell'account... + + + Questo nome unico gi in uso. Scegline uno dalla lista a tendina sottostante o inseriscine un altro. + + + Le password non corrispondono! + + + 3. Gioco a squadre + + + Copia link + + + Carica mappa + + + Descrizione + + + Mappa non corretta o corrotta + + + Mappa non trovata + + + Premi + + + Record + + + Controlla + + + Conferma password + + + E-mail + + + Dimentic. la pw? + + + Pagina di creazione ID GameSpy + + + Password + + + Ricorda + + + Nome unico + + + Nome unico modificato con successo + + + Squadra + + + Freedom + + + Mercenari + + + Nuovo profilo + + + Autorizzazione ID GameSpy + + + gioca + + + riavvolgi + + + ricomincia + + + all'inizio + + + all'uccisione + + + alla morte + + + alla conquista del manufatto + + + alla perdita del manufatto + + + alla consegna del manufatto + + + qualsiasi + + + Login + + + Immagine generale + + + Configurazioni generali + + + Limite ping: + + + Limite ping + + + Imm. gioc. selezionato + + + Conf. gioc. selezionato + + + Espelli gioc. selez. + + + Bandisci gioc. selez. + + + Ricomincia + + + Riavvio rapido + + + Modifica clima + + + Velocit variazione meteo + + + Cambia tipo di partita + + + Cambia impostazioni gioco + + + Interrompi il voto attuale + + + Tempo limite (0, 180) + + + Limite uccisioni (0, 1000) + + + Limite ai manufatti (0, 100) + + + Tempo di prep. (0, 3600) + + + Tempo prot. gen. (0, 60 CTA) + + + Protez. gen. (0, 600 T/DM) + + + Tempo rigenera. (-1, 3600) + + + Errore ignoto profilo (codice: 4) + + + 10 minuti + + + 30 minuti + + + 1 ora + + + 6 ore + + + 1 giorno + + + 1 settimana + + + 1 mese + + + 3 mesi + + + Permanente + + + Il soprannome troppo breve + + + Errore profilo + + diff --git a/gamedata/configs/text/ita/ui_st_other.xml b/gamedata/configs/text/ita/ui_st_other.xml new file mode 100644 index 0000000..526fb25 --- /dev/null +++ b/gamedata/configs/text/ita/ui_st_other.xml @@ -0,0 +1,501 @@ + + + + Annulla + + + No + + + OK + + + S + + + Male + + + Nemico + + + Eccellente + + + Esperto + + + Amico + + + Mappa della Zona + + + Bene + + + Indifferente + + + Maestro + + + Bonus PDA + + + permesso solo un voto attivo. + + + Neutrale + + + Principiante + + + Partita + + + Usato + + + Livello + + + Caricamento degli oggetti di IA + + + Server: caricamento del simulatore alife + + + Caricamento CFORM + + + Caricamento dei dettagli + + + Caricamento della geometria + + + Caricamento della partita salvata + + + Caricamento dei settori e dei portali + + + Caricamento degli shader + + + Caricamento dei DB-spaziali + + + Caricamento delle texture + + + IP diretto + + + Nessuna attivit in corso + + + Denaro insufficiente + + + Il PNG?non ha denaro a sufficienza + + + Flusso di apertura + + + Pre-cattura oggetti + + + rubli. + + + SERVER: connessione in corso + + + SERVER: avvio in corso + + + Validazione chiave CD + + + Video + + + Terribile + + + Ripara + + + Non puoi eseguire Render 2 sul tuo PC + + + Fazione + + + Errore di connessione: la tua chiave CD disabilitata. Contatta il servizio clienti. + + + Errore di connessione: chiave CD gi in uso + + + Errore di connessione: chiave CD non valida. + + + Errore di connessione: host non valido + + + Errore di connessione: password non valida + + + disponibile una nuova patch.\n Versione: %s\n Posizione: %s\nVuoi scaricarla adesso? + + + Non ci sono nuove patch disponibili + + + Errore di connessione: connessione rifiutata dal server + + + Errore di connessione: server pieno + + + Errore di connessione: versione diversa + + + Connessione al server principale + + + Giorni + + + Errore + + + Carica errore + + + Un file con questo nome esiste gi. Vuoi sovrascriverlo? + + + Il nome file vuoto + + + Ore + + + stato disconnesso dal sistema di protezione BattleEye: + + + Disconnesso. Motivo: + + + Abbandona + + + Caricando questa partita tutti i dati non salvati andranno persi. Vuoi procedere? + + + min + + + mesi + + + Zaino + + + Parametri + + + Impossibile scaricare la patch. + + + Patch caricata con successo. Vuoi installarla? + + + Prezzo + + + Rango + + + Attitudine + + + Reputazione + + + sec + + + Seleziona almeno una mappa + + + Prendi tutto + + + Restante + + + Voto fallito + + + Vuoi davvero abbandonare la partita? + + + Totale + + + molto male + + + molto bene + + + Veterano + + + Ripara + + + Ripara l'oggetto selezionato + + + ... + + + in movimento all'interno di un'area + + + in movimento da Zaton a Yanov + + + in movimento da Zaton a Pripyat + + + in movimento da Yanov a Zaton + + + in movimento da Yanov a Pripyat + + + in movimento da Pripyat a Zaton + + + in movimento da Pripyat a Yanov + + + in movimento da Pripyat a X8 + + + in movimento da X8 a Pripyat + + + emissione + + + inizio del gioco + + + arrivo alla Skadovsk + + + Stingray 1 esaminato + + + Stingray 2 esaminato + + + Stingray 3 esaminato + + + Stingray 4 esaminato + + + Stingray 5 esaminato + + + verso l'altopiano + + + arrivo a Yanov + + + strada per Pripyat scoperta + + + Zulu si unisce alla squadra + + + debito di Vano ripagato + + + Vano si unisce alla squadra + + + pianta anomala recuperata + + + Sokolov si unisce alla squadra + + + Strider si unisce alla squadra + + + squadra assemblata + + + arrivo nel sottopasso + + + arrivo a Pripyat + + + unit militari individuate + + + arma non identificata recuperata + + + squadra di ricognizione individuata + + + rinforzi arrivati + + + "antenna" esaminata + + + sentinella scomparsa individuata + + + controllore vicino alla sentinella ucciso + + + ingresso nell'officina collaudi + + + documenti sul fucile Gauss recuperati + + + combattente morto individuato + + + ingresso nell'asilo + + + medico militare salvato + + + comunizazioni con il QG stabilite + + + evacuazione di Pripyat iniziata + + + elicotteri per l'evacuazione raggiunti + + + evacuazione completata + + + rilevatore di mutanti + + + riscatto per l'ostaggio pagato + + + ostaggio liberato + + + misurazioni anomalia Cumulo di cenere + + + misurazioni anomalia Plavni + + + tana dei succhiasangue + + + in viaggio verso Kopachy + + + avvicinamento all'impianto dei rifiuti + + + attacco stalker + + + contenitore trovato nel ripostiglio + + + a caccia della chimera + + + Oasi trovata + + + operazione Occasione unica avviata + + + ricerca della fonte della psico-emissione + + + documenti amministrativi + + + avvicinamento all'officina della sotto-stazione + + + accordo vicino alla stazione dei ranger + + + magazzino Duty + + + fonte dello strano bagliore individuata + + + Zulu individuato + + + caverna pericolosa + + + Riparazioni/Modifiche + + + Compra + + + Vendi + + + Scambia + + + Chiudi la finestra ($$ACTION_USE$$) + + + Apri la finestra del commercio ($$ACTION_SPRINT_TOGGLE$$) + + + Apri la finestra di riparazioni e modifiche ($$ACTION_SPRINT_TOGGLE$$) + + + Sposta tutti gli oggetti nel tuo zaino ($$ACTION_SPRINT_TOGGLE$$) + + + Compra gli oggetti selezionati + + + Vendi gli oggetti selezionati + + + decollo elicottero di evacuazione + + diff --git a/gamedata/configs/text/ita/ui_st_pda.xml b/gamedata/configs/text/ita/ui_st_pda.xml new file mode 100644 index 0000000..ab4c89e --- /dev/null +++ b/gamedata/configs/text/ita/ui_st_pda.xml @@ -0,0 +1,279 @@ + + + + Tempo + + + Stalker libero + + + Militare + + + Bandito + + + Duty + + + Scienziato + + + Missioni secondarie + + + Nascondigli + + + Freedom + + + Mercenari + + + Diario delle missioni + + + Monolith + + + Mutante + + + Aprile + + + Agosto + + + Dicembre + + + Febbraio + + + Gennaio + + + Luglio + + + Giugno + + + Marzo + + + Maggio + + + Novembre + + + Ottobre + + + Settembre + + + Disattiva PDA + + + Diario dei messaggi + + + Mostra cronologia dei messaggi + + + Mappa dell'area + + + Mostra la mappa della Zona e il diario delle missioni + + + Statistiche + + + Mostra statistiche personali + + + Tempo effettivo: + + + Filtro data + + + Mostra notizie + + + Mostra dialoghi + + + Legenda + + + Tempo della Zona: + + + Emissioni a cui sei sopravvissuto: + + + Missioni completate: + + + Mutanti uccisi: + + + Stalker uccisi: + + + Manufatti trovati: + + + Nascondigli trovati: + + + Arma preferita + + + Mutante pi potente ucciso + + + Luogo: + + + Obiettivo + + + Missione secondaria + + + Nemici + + + Amici + + + Leader della fazione + + + Missione principale + + + Neutrali + + + Guida + + + Nascondigli + + + Comandante della squadra + + + Mercante + + + Stalker + + + Diario dei messaggi + + + Giocatore al centro + + + Muoviti indietro + + + Muoviti a sinistra + + + Mostra legenda + + + Muoviti a destra + + + Muoviti avanti + + + Distanza massima della visuale + + + Avvicina visuale + + + Allontana visuale + + + Obiettivi + + + Mappa della missione al centro + + + Mappa della missione al centro + + + Zombi + + + scala + + + + scala - + + + Tecnico + + + Medico + + + Missioni in corso + + + Mostra/Nascondi missioni + + + Ripostiglio personale + + + Zaton + + + Area circostante Jupiter + + + Pripyat + + + Pripyat 1, sottopasso + + + Laboratorio X8 + + + Aree + + + Oggetti importanti + + + Area + + + Gli scanner hanno rilevato dei manufatti: + + + Gli scanner non hanno rilevato alcun manufatto. + + + Ripostiglio + + + Area dormitorio + + diff --git a/gamedata/configs/text/ita/ui_st_screen.xml b/gamedata/configs/text/ita/ui_st_screen.xml new file mode 100644 index 0000000..006b6da --- /dev/null +++ b/gamedata/configs/text/ita/ui_st_screen.xml @@ -0,0 +1,348 @@ + + + + Apri ripostiglio personale ($$ACTION_USE$$) + + + Sei troppo esausto per muoverti + + + Sei troppo sovraccarico per muoverti + + + Apri porta ($$ACTION_USE$$) + + + Parla ($$ACTION_USE$$) + + + Ispeziona corpo ($$ACTION_USE$$) + + + Ispeziona corpo ($$ACTION_USE$$)\nTrascina corpo (SHIFT+$$ACTION_USE$$) + + + Missione completa: + + + Missione fallita: + + + Oggetto ricevuto: + + + Denaro ricevuto: + + + Nuova missione: + + + Oggetto perduto: + + + Denaro perduto: + + + Missione annullata: + + + Missione aggiornata: + + + La tua arma si inceppata. Ricaricala. + + + Ispeziona ripostiglio ($$ACTION_USE$$) + + + Raccogli oggetto ($$ACTION_USE$$) + + + Ispeziona velivolo ($$ACTION_USE$$) + + + Porta bloccata + + + La porta chiusa dall'interno + + + Cassaforte chiusa + + + Codice richiesto + + + Inserisci codice ($$ACTION_USE$$) + + + Prendi pianta ($$ACTION_USE$$) + + + Imposta scanner ($$ACTION_USE$$) + + + Prendi scanner ($$ACTION_USE$$) + + + Riduttore di aggressivit Arcobaleno\nmodello del complesso di emissioni esterne\nscala 01:20 + + + Attiva interruttore ($$ACTION_USE$$) + + + Esamina congegno ($$ACTION_USE$$) + + + Piazza esplosivi ($$ACTION_USE$$) + + + Recupera ($$ACTION_USE$$) + + + L'ascensore non ha corrente + + + Attiva generatore ($$ACTION_USE$$) + + + Dormi + + + Non puoi dormire!?Perdi molto sangue e sei stato esposto alle radiazioni! Usa le droghe o contatta un medico. + + + Non puoi dormire!?Perdi molto sangue. Usa le droghe o contatta un medico. + + + Non puoi dormire! Sei stato esposto alle radiazioni! Usa le droghe o contatta un medico. + + + Dormi ($$ACTION_USE$$) + + + Hai ottenuto l'obiettivo Uomo equilibrato. + + + Hai ottenuto l'obiettivo Maestro dei sistemi delle armi. + + + Hai ottenuto l'obiettivo Detective. + + + Hai ottenuto l'obiettivo Diplomatico. + + + Hai ottenuto l'obiettivo Amico della Duty. + + + Hai ottenuto l'obiettivo Amico della Freedom. + + + Hai ottenuto l'obiettivo Amico degli stalker. + + + Hai ottenuto l'obiettivo Corriere della giustizia. + + + Hai ottenuto l'obiettivo Esperto di tecnologia. + + + Hai ottenuto l'obiettivo Trafficante d'informazioni. + + + Hai ottenuto l'obiettivo Custode di segreti. + + + Hai ottenuto l'obiettivo Boss. + + + Hai ottenuto l'obiettivo Leader. + + + Hai ottenuto l'obiettivo Cacciatore di mutanti. + + + Hai ottenuto l'obiettivo Uno dei nostri. + + + Hai ottenuto l'obiettivo Pioniere. + + + Hai ottenuto l'obiettivo Assistente ricercatore. + + + Hai ottenuto l'obiettivo Cacciatore di manufatti. + + + Hai ottenuto l'obiettivo Stalker esperto. + + + Hai ottenuto l'obiettivo Un ricco cliente. + + + Salvataggio automatico in corso... + + + Ora puoi estrarre l'arma. + + + Codice di blocco ($$ACTION_USE$$) + + + I medicinali sono stati collocati nel ripostiglio personale sulla Skadovsk per aver risolto il mistero degli stalker scomparsi. + + + Una tuta di protezione universale PS5-M stata collocata nel tuo ripostiglio personale a Yanov per aver aiutato la Duty. + + + Una tuta corazzata PSZ-9d della Duty stata collocata nel tuo ripostiglio personale a Yanov per aver aiutato la Duty. + + + Una tuta "Vento della Freedom" stata collocata nel tuo ripostiglio personale a Yanov per aver aiutato la Freedom. + + + Una tuta "Guardiano della Freedom" stata collocata nel tuo ripostiglio personale a Yanov per aver aiutato la Freedom. + + + Non sei riuscito a raggiungere gli elicotteri e la squadra di evacuazione ha lasciato la Zona senza di te. + + + Sei pronto per lasciare la Zona??Non potrai pi tornare indietro. + + + Fine della partita. + + + Premi ($$ACTION_JUMP$$) per tornare al menu principale. + + + Pausa + + + Partita salvata + + + stato collocato un manufatto nel tuo ripostiglio personale sulla Skadovsk per aver smascherato Magpie. + + + Devi aspettare che il porto sia sigillato + + + Accesso consentito + + + Prendi l'ascensore che sale ($$ACTION_USE$$) + + + Prendi l'ascensore che scende ($$ACTION_USE$$) + + + Livello di psico-emissione critico. Abbandonare immediatamente l'area a rischio. + + + Livelli di radiazione pericolosi. necessaria una protezione per avanzare. + + + Esamina elicottero ($$ACTION_USE$$) + + + Ispeziona il ripostiglio ($$ACTION_USE$$) + + + h + + + Messaggio + + + Porta bloccata + + + Chiudi porta ($$ACTION_USE$$) + + + Porta chiusa - l'accampamento in all'erta + + + Porta chiusa - devi rinfoderare l'arma + + + Porta chiusa + + + La porta non alimentata + + + Apri porta ($$ACTION_USE$$) + + + Cancello bloccato + + + Usa la tessera d'accesso ($$ACTION_USE$$) + + + Tessera d'accesso richiesta + + + Impossibile aprire la porta da questa parte + + + - + + + Il contenitore chiuso a chiave. Servono due chiavi per aprirlo. + + + Usa chiave ($$ACTION_USE$$) + + + Usa chiavi ($$ACTION_USE$$) + + + Il contenitore chiuso a chiave. Ti serve la seconda chiave per aprirlo. + + + Apri contenitore ($$ACTION_USE$$) + + + Il meccanismo della porta stato bloccato dall'interno + + + Collega tanica del gas ($$ACTION_USE$$) + + + Attenzione!?Pericolo chimico! + + + Gira la valvola ($$ACTION_USE$$) + + + Ispeziona automobile ($$ACTION_USE$$) + + + Puoi fare scorta di medicinali e munizioni dal Tenente Rogovets e dal Tenente Kirillov. + + + Da poco si verificata un'emissione nella Zona + + + Hai ottenuto l'obiettivo Marcato dalla Zona + + + Delle munizioni sono state collocate nel tuo ripostiglio personale a Yanov per aver eliminato i mutanti. + + + Hai ricevuto le coordinate di un ripostiglio gi scoperto. + + + Ripostiglio individuato + + + Coordinate del ripostiglio ricevute + + + Premi un tasto per giocare + + diff --git a/gamedata/configs/text/pol/st_achievement.xml b/gamedata/configs/text/pol/st_achievement.xml new file mode 100644 index 0000000..2aed180 --- /dev/null +++ b/gamedata/configs/text/pol/st_achievement.xml @@ -0,0 +1,372 @@ + + + + Co za upokorzenie dla wroga! Udao ci si zabi dziesiciu przeciwnikw pod rzd, nie ginc przy tym! Nie mona jednak nazwa tego okruciestwem. Po prostu dajesz im powody do dalszego doskonalenia umiejtnoci. + + + Pora niw + + + Jeste wcielon mierci! Udao ci si upiec dwie pieczenie przy jednym ogniu, zabijajc dwch wrogw jednym strzaem z karabinu Gaussa. + + + Szaszyk + + + Eliminujesz swoich wrogw ze spokojem i wyrachowaniem, dziki czemu udao ci si trafi dwch wrogw z dwururki w odstpie ledwie kilku sekund. + + + Dwa strzay, dwa trupy + + + Doskonale wiesz, na czym polega bycie stalkerem, dlatego te jeste pierwszym z okolicznych stalkerw, ktry zyska miano legendy. + + + Awans spoeczny + + + Przeci egzoszkielet noem? Uwielbiasz stawia sobie trudne cele i je realizowa. + + + Otwieracz do puszek + + + Wydawao im si, e ju po tobie, ale nie zdawali sobie sprawy, z kim maj do czynienia. Nawet na skraju mierci udao ci si zabi piciu z nich. + + + Drogo sprzeda swoj skr + + + Co za przypyw adrenaliny! Udao ci si zebra krwawe niwo wrd wrogw, eliminujc pi osb w pi sekund! Niewiarygodne! + + + Nieokieznana furia + + + Niesamowita celno! Udao ci si zabi dwch wrogw strzaami w oko, nie ginc przy tym. + + + Okulista + + + Niech si kryj za wgami i szykuj zasadzki, dla ciebie to aden problem. Potrafisz trafi nawet ruchomy cel bez przymierzenia! + + + Byskawiczny refleks + + + Niech biegnie tak szybko, jak tylko potrafi... I tak dogoni go twoje pociski. + + + Zatrzyma uciekiniera + + + Udao ci si zabi dwudziestu wrogw pod rzd, nie ginc przy tym! Co za masakra! + + + Masakra + + + Moe i byo ich trzech, moe i mieli karabiny snajperskie, ale przy twoich umiejtnociach i tak byli bez szans. + + + Najcelniejszy strzelec + + + Pozostawiajc barbarzyskie zachowania wrogom, udao ci si pokaza, e nie trzeba odda ani jednego strzau, aby wygra. + + + Zwiastun pokoju + + + Dystans to nie problem dla prawdziwego snajpera! Potrafisz trafi w cel z ponad 120 metrw. + + + miercionona celno + + + Wrogowie zdoali ci pokona, ale zostaa po tobie pamitka w postaci odbezpieczonego granatu! + + + Co na pamitk + + + Zabili twoich przyjaci i zasugiwali na krwaw zemst. Trzech wrogw za trzech przyjaci to sprawiedliwy przelicznik. + + + Mciciel + + + Jeste anioem strem jednego ze swoich przyjaci. Dwa razy udao ci si ocali go przed atakiem, podczas gdy nis artefakt. + + + Cherubin + + + Udao ci si ocali honor swj i swojej druyny poprzez zdobycie kilku punktw. + + + Obroca honoru + + + Naprawd wiesz, gdzie pojawi si nastpny artefakt? Udao ci si go podnie w cigu kilku sekund od pojawienia si. + + + Intuicja stalkera + + + Ale fart! Udao ci si zabi wroga ostatnim nabojem w magazynku! Za to w jego przypadku trudno mwi o farcie + + + Cholerny szczciarz + + + Udao ci si zabi omiu wrogw pod rzd. Zobaczymy teraz, czy odwa si podj rkawic. + + + Czarna lista + + + Nikt nie zdoa ci zabi przez ca gr, poniewa cechujesz si ostronoci i rozwag. Przy tym moesz si poszczyci zdobyciem pitnastu punktw. + + + Paranoja + + + Dziki tumikowi zaatwiasz spraw nie przycigajc uwagi. Po co wrg ma wiedzie, skd nadchodzi mier? + + + Bezgona mier + + + Udao ci si rozbi przeciwnikw w py, zwyciajc i zdobywajc przy tym dwa razy wicej punktw ni najlepszy z nich. + + + Przytaczajca przewaga + + + Twj miay plan natychmiastowego zdobycia artefaktu zakoczy si sukcesem, dziki czemu twoja druyna zdobya punkt w cigu trzech minut od rozpoczcia gry. + + + Blitzkrieg + + + Nie pozostawilicie przeciwnikom nawet cienia nadziei, zwyciajc zanim zdoali oni zdoby cho jeden artefakt. To dla nich prawdziwa lekcja pracy zespoowej! + + + Pobieda! + + + Udao ci si uzyska najlepszy wynik w kadej dziedzinie, eliminujc najwicej wrogw i zdobywajc najwicej artefaktw przy najmniejszej liczbie mierci. Tak trzymaj! + + + Wszechstronne uzdolnienia + + + Twoje umiejtnoci walki noem s niezrwnane! Udao ci si wypatroszy trzech przeciwnikw w cigu dwudziestu sekund, udowadniajc, e masz prawdziwy talent do walki wrcz. + + + Furia + + + Kady wrg ma czuy punkt w swoim opancerzeniu. Tobie udao si go znale, trafiajc z pistoletu w oko w peni opancerzonego przeciwnika. + + + Pita achillesowa + + + Wrogim kulom si nie kaniasz! Przechodzisz przez ich grad bez zadranicia i rozbijasz przeciwnikw w py! + + + Szybciej ni pocisk + + + Chtnie zajmujesz si ledzeniem rozwoju wydarze w Zonie. Udao ci si powikszy zasb wiedzy o niej przez odkrycie anomalii wczeniej nieznanych nauce. + + + Pionier + + + Inni stalkerzy maj o tobie coraz lepsz opini. \nCzasami zostawiaj oni amunicj w twojej skrytce na stacji Janw jako wyraz szacunku. + + + Nie unikasz niebezpiecznych mutantw - polujesz na nich i to z dobrymi wynikami. Dobrzy owcy s szanowani wrd stalkerw. + + + owca mutantw + + + Inni stalkerzy maj o tobie coraz lepsz opini. \nCzasami zostawiaj oni rodki medyczne w twojej skrytce na Skadowsku jako wyraz szacunku. + + + Udao ci si odkry sekret stojcy za zaginiciami stalkerw na Skadowsku: winni byli nie mutanci, lecz duo groniejszy wrg - czowiek. Udane dochodzenie przysporzyo ci szacunku wielu stalkerw. + + + Detektyw + + + Inni stalkerzy maj o tobie coraz lepsz opini. \nPoprosili oni handlarza Sow, aby udzieli ci zniki. \Brodacz z kolei oferuje ci teraz najwysze stawki za artefakty. + + + Pokazae bandytom i ich przywdcy Sutanowi, kto jest szefem, co przysporzyo ci popularnoci wrd stalkerw. Na Skadowsku zawsze czeka ci serdeczne przyjcie. + + + Jeden z nas + + + Udao ci si zdoby szacunek bandytw. \nHandlarz Sowa udzieli ci zniki ze strachu . \nZgodnie z umow, Brodacz bdzie od teraz paci ci haracz od swoich dochodw. + + + Z twoj pomoc Sutan wymanewrowa stalkerw i przej kontrol nad interesem Brodacza. Budzisz teraz strach i szacunek w mieszkacach Zatonu. + + + Szef + + + Stalkerzy zdecydowali si odda upy, ktre Sroka zdoby kamstwami i podstpem, komu bardziej wartociowemu. Umiecili je w twojej skrytce na stacji Janw. + + + Udao ci si wymierzy sprawiedliwo zoczycy. Sroka oszuka i zwid wielu stalkerw, ale teraz wybia jego godzina. + + + Wysannik sprawiedliwoci + + + Inni stalkerzy maj o tobie coraz lepsz opini. \nBandyci bd na ciebie polowa podczas twoich wypraw w gb Zony. + + + Udao ci si zdoby wszystkie typy artefaktw znane badaczom Zony. To osignicie wzbudzio szacunek stalkerw, ale z drugiej strony cigno na ciebie uwag bandytw. + + + owca artefaktw + + + Kardan moe wykona unikaln modyfikacj, ktra pozwoli ci na zachowanie mobilnoci przy noszeniu egzoszkieletu dziki instalacji hydraulicznych wzmacniaczy serwomotorw. + + + Kardan ma teraz wszystkie narzdzia, jakich potrzebuje. Pozwoli mu to na wykonywanie nowych, bardziej skomplikowanych ulepsze. + + + Ekspert systemw obronnych + + + Azot moe wykona unikaln modyfikacj hemu taktycznego: monta skanera podczerwieni pozwalajcego na wykrywanie ludzi znajdujcych si w pobliu. + + + Azot posiada wszystkie narzdzia, o jakich moe marzy technik pracujcy w Zonie. Moe on wykonywa zaawansowane technologicznie modyfikacje. + + + Ekspert wysokiej technologii + + + Dowiadczenie pozwala ci czciej znajdowa artefakty. + + + Udao ci si odwiedzi praktycznie wszystkie dostpne obszary pooone w pobliu centrum Zony. Zdarzyo ci si wpa w prawie kad anomali. + + + Dowiadczony stalker + + + Twoje umiejtnoci przywdcze zwikszaj szanse przeycia twojej druyny. + + + Kiedy zasza potrzeba dziaania w grupie, udao ci si zgromadzi wietn druyn i dowie swoich umiejtnoci przywdczych. + + + Przywdca + + + Wolno, Powinno, wolni stalkerzy, a nawet bandyci poznali twoje zdolnoci negocjacyjne i darz ci z ich powodu szacunkiem. + + + Wiesz, jak rozwiza problem bez rozlewu krwi. Kto potrzebuje siy, kiedy sowa mog rozwiza spor rwnie skutecznie? Nadal jednak musisz wystrzega si osb, ktre najpierw strzelaj, a pniej zadaj pytania. + + + Dyplomata + + + Wsppracujesz z naukowcami ju tak dugo, e mona ci uzna za penoprawnego asystenta. Wszyscy w bunkrze naukowcw uwaaj ci za jednego ze swoich. + + + Asystent + + + Twoje stosunki z Powinnoci ulegy poprawie. Jeli napytasz sobie biedy, bojownicy tej frakcji bd prbowali ci pomc. \nAzot, technik sympatyzujcy z Powinnoci, zaoferowa ci znik. \nTwoje stosunki z Wolnoci ulegy pogorszeniu. \Hawajczyk, handlarz sympatyzujcy z t frakcj, od tej chwili bdzie da od ciebie wyszych cen. + + + Pomoc udzielona przez ciebie Powinnoci sprawia, e bojownicy i sympatycy tej frakcji nabrali do ciebie szacunku. Musisz jednak pamita, e nie kada osoba, jak napotkasz w Zonie, jest pozytywnie nastawiona do Powinnoci. + + + Przyjaciel Powinnoci + + + Twoje stosunki z Wolnoci ulegy poprawie. Jeli napytasz sobie biedy, bojownicy tej frakcji bd prbowali ci pomc. \nHawajczyk, technik sympatyzujcy z Wolnoci, zaoferowa ci znik. \nTwoje stosunki z Powinnoci ulegy pogorszeniu. \Azot, handlarz sympatyzujcy z t frakcj, od tej chwili bdzie da od ciebie wyszych cen. + + + Pomoc udzielona przez ciebie Wolnoci sprawia, e bojownicy i sympatycy tej frakcji nabrali do ciebie szacunku. Musisz jednak pamita, e nie kada osoba, jak napotkasz w Zonie, jest pozytywnie nastawiona do Wolnoci. + + + Przyjaciel Wolnoci + + + Stalkerzy ze stacji Janw ceni sobie rwnowag si midzy Powinnoci a Wolnoci, dlatego te zarwno technik, jak i handlarz udzielili ci zniki. + + + Nie stoisz po stronie adnej z frakcji i zawsze dziaasz jako wolny stalker. Nie masz adnych nowych wrogw z tego powodu, ale nie udao ci si te zyska nowych przyjaci. + + + Obroca rwnowagi + + + Handlarze oferuj ci rzadkie i kosztowne towary. + + + Wiesz, jak to jest nie mie grosza przy duszy, ale obecnie nie masz powodw do narzeka. Jako e zdarza ci si dysponowa znaczcymi sumami pienidzy, handlarze ceni sobie ciebie jako klienta. + + + Bogaty klient + + + Po otrzymaniu notatek, Strieok odzyska ch do ycia i dojcia do celu, niezalenie od kosztw. + + + Moesz poszczyci si dalekowzrocznoci: przechowywane przez ciebie zapiski znalezione w schowkach grupy Strieoka wrciy do prawowitego waciciela. + + + Stranik sekretw + + + Udao ci si przey emisj bez ukrywania si dziki lekom anabiotycznym. Wpyw tego zdarzenia na twoj psychik nie jest do koca zrozumiay, poniewa twj umys wypenia dziwna cisza. Wydaje si, e ju nie syszysz cigego strumienia myli. + + + Naznaczony przez Zon + + + Handlarz Sowa zaoferowa ci znik, poniewa jeste jego najlepszym informatorem i partnerem. + + + Kiedy zdobdziesz wan informacj, zawsze znajdujesz dla niej odpowiedniego nabywc. Oczywicie sprzedajc informacje odpowiednim osobom kierujesz si wasn korzyci. + + + Handlarz informacjami + + + Twoje stosunki ze stalkerami ulegy poprawie. Jeli kiedykolwiek napytasz sobie biedy, bd oni prbowali ci pomc. \nStalkerscy medycy zgodzili si sprzedawa ci lekarstwa po kosztach. + + + Zawsze pomagasz stalkerom w potrzebie. Mimo e ich frakcja nie jest specjalnie zyta, masz teraz w nieoficjalnym bractwie sojusznikw, ktrzy bd udziela ci pomocy w walce i poza ni. + + + Przyjaciel stalkerw + + + Rne nowe informacje pozwoliy profesorom Hermanowi i Oziorskiemu na stworzenie w Zonie nowego eksperymentalnego leku, tak zwanego anabiotyku. + + + Istnieje szansa przeycia emisji nawet bez pomocy lekarstw, pod warunkiem, e jeste w peni zdrowia. + + + Ze wzgldu na twoj uyteczno, profesor Herman oferuje ci teraz po kosztach rodki medyczne i wyposaenie przeznaczone tylko dla personelu bunkra. \nNowikow na tyle do ciebie przywyk, e przy wykonywaniu modyfikacji oczekuje tylko zwrotu kosztu uytych czci. + + diff --git a/gamedata/configs/text/pol/st_characters.xml b/gamedata/configs/text/pol/st_characters.xml new file mode 100644 index 0000000..024a5ce --- /dev/null +++ b/gamedata/configs/text/pol/st_characters.xml @@ -0,0 +1,336 @@ + + + + Walet + + + Wano + + + Podpukownik Szulga + + + Loki + + + Hawajczyk + + + Kostopraw + + + Senka + + + Zulus + + + Wujek Jar + + + Topol + + + Buawa + + + Spirol + + + W + + + Sp + + + Azot + + + Traper + + + Flint + + + Genera Taczenko + + + Porucznik Bunczuk + + + Pukownik Kosmacz + + + Porucznik Zakarczuk + + + Czarny + + + Duplet + + + Chirurg + + + Czacha + + + Sztos + + + Kociej + + + Truposz + + + Wczga + + + Pancerniak + + + Sierp + + + Mors + + + Cichy + + + Foma + + + Profesor Oziorski + + + Nowikow + + + Profesor Herman + + + Sierant Szliaczin + + + Porucznik Siergiejew + + + Sierant Waliuszok + + + Sierant Ostrowski + + + Kapitan Klimenko + + + Porucznik Sokoow + + + Kapitan Tarasow + + + Pukownik Kowalski + + + Porucznik Podorony + + + Porucznik Skelia + + + Sierant Merkulow + + + Porucznik Stecenko + + + Sierant Jarmoszuk + + + Porucznik Rogowiec + + + Porucznik Smirnow + + + Strieok + + + Barczuk + + + Major Diegtiariow + + + Karze + + + Szyszak + + + Grizli + + + Torba + + + Mitaj + + + Porucznik Gawrylenko + + + Flint + + + Gajduk + + + Garri + + + Porucznik Kiryow + + + Serbin + + + Szakal + + + wawy + + + Krab + + + Garmata + + + Gonta + + + Mot + + + Grzebie + + + Sowa + + + Guszec + + + Dania + + + Sutan + + + Morgan + + + Kastet + + + Spartakus + + + Brodacz + + + Kardan + + + Goblin + + + Db + + + Pianista + + + Kosiarz + + + Kirzacz + + + Czog + + + Bandzior + + + Tasak + + + Potka + + + Noe + + + Pilot + + + Wstrzs + + + Porucznik Drapej + + + Chory Umerow + + + Sk + + + Hak + + + Prga + + + Majron + + + Stg + + + Pietrucha + + + Szydo + + + Major Czepurny + + + Chory Walentir + + + St. sierant Morozow + + + St. porucznik Smoliak + + + Drzazga + + + Sierant Gazda + + + Kapitan Furtez + + + St. sierant Szwejko + + diff --git a/gamedata/configs/text/pol/st_dialog_manager.xml b/gamedata/configs/text/pol/st_dialog_manager.xml new file mode 100644 index 0000000..148817f --- /dev/null +++ b/gamedata/configs/text/pol/st_dialog_manager.xml @@ -0,0 +1,993 @@ + + + + Na Zatonie jest miejsce, w ktrym pod wod pojawiy si anomalie termiczne. Nazywaj je Kotem, bo leci tam spod ziemi para i rne takie. Jeli mylisz, e para to fraszka, pomyl dwa razy. Dowiadczeni stalkerzy mwi, e taki rodzaj parowej anomalii moe ci przywali co najmniej tak mocno, jak standardowa anomalia termiczna, jeli nie mocniej. Temperatura moe i jest nisza, ale przysmaa ci duej. Znajdowano tam gwnie standardowe artefakty typu ogniowego. + + + Mwi, e w kamienioomach jest nieze miejsce z mnstwem artefaktw, chocia anomalii te tam nie brakuje. Na dole jest tyle bbli z anomalii gazowych, e a oczy bol, nawet w masce przeciwgazowej. + + + Na starym cmentarzu w pobliu Kopaczi jest Popielisko. Jest tam mnstwo anomalii termicznych, a od czasu do czasu trafi si te kilka zombi. Ludzie staraj si omija to miejsce, ale jednak znajduj tam artefakty. + + + Mwi, e znaleziono jakie artefakty na parkingu. Cigle s tam pojazdy z pierwszej katastrofy Czarnobyla - te malestwa potrafi przyprawi czujniki promieniowania o zgag. W dodatku parking jest peen anomalii elektrycznych. + + + W Gnijcym Zagajniku, gdzie kwas zdeformowa drzewa. Ludzie, ktrzy tam byli, twierdz, e jest peen anomalii gazowych. W powietrzu jest tyle gazu, e nie sposb zobaczy nic przed sob, ale z odpowiednim dowiadczeniem znajdziesz tam artefakty, ktrych szukasz. + + + Jeli szukasz artefaktw, poluj na kwasowe. Najlepsze miejsce, by je znale, to Betonowa Wanna. Konkurencja nie bdzie dua: nikt nie lubi tego miejsca, bo ley blisko budynku fabryki Jupiter. + + + Niedaleko fabryki Jupiter obsun si kawaek drogi. Nazwano to miejsce Bitumin, poniewa stopia si tam nawierzchnia. W szczelinie jest mnstwo anomalii - zarwno termicznych, jak i grawitacyjnych. Poniewa s ich dwa rodzaje, artefakty te musz by rne. + + + Za cementowni jest maa zatoczka zwana Mokradem. Zmienia si w okropne, mierdzce bagno, a woda pena jest anomalii gazowych. Waciwie to ju nawet nie jest woda, tylko kwas. Ludzie znajdowali tam artefakty, ale to miejsce obfituje te w potwory. + + + Szukaj w starej cementowni. Peno tam anomalii, ale jednak warto. Oczywicie s miejsca, w ktrych atwiej o artefakty, ale atwiej tam te o konkurencj. Tutaj twoimi jedynymi konkurentami bd chomiki i to tylko wtedy, gdy zejdziesz do piwnic. + + + Poszukaj w okolicach Sosnodbu. To to co rosnce midzy wzgrzami, ponad anomaliami gazowym. Wszyscy tak to nazywaj, odkd jaki mdrala zidentyfikowa kor tego drzewa jako zarwno sosnow, jak i dbow. Jeli chcesz tam szuka artefaktw, przyda ci si dobra ochrona przeciwchemiczna. We te sporo amunicji, bo wrd tych wzgrz yj cae hordy psw. + + + Czasami nie trzeba wpada na anomalie, eby zdoby artefakt. Powiedziano mi kiedy o artefakcie znalezionym w rodku pola. Jeden ze stalkerw mia detektor, ktry zacz rozrabia, wic postanowi zmieni w nim baterie. Jak tylko to zrobi, detektor co wykry i prosz, artefakt praktycznie sam wpad mu w rce. Mia gnojek szczcie, co? Taka jest Zona: czasami karze, a czasami nagradza. + + + Dowiadczeni stalkerzy mwi, e czasami artefakty oddalaj si od anomalii. Detektor zaczyna robi piip", wycigasz go, ale nic nie znajdujesz. To znaczy, e wanie min ci artefakt wdrowny. Nie ma jednak sensu za nim pdzi, bo to Zona decyduje, kogo nim nagrodzi. + + + Nikt jeszcze nie szuka artefaktw w Prypeci. aden z ludzi, ktrych znam, nie by tam duej ni chwil, wic zachowaj ostrono. + + + Nie wiem, czy ktokolwiek zna dobre miejsca. Prype jest jeszcze sabo zbadana. + + + Proponuj poszuka w podziemnych tunelach. Mwi, e jest ich mnstwo pod miastem. + + + Niewiele wiadomo o tych okolicach. Tyle, co z opowiada Garriego. Twierdzi, e jest pewne miejsce, gdzie z kwasowej anomalii wyrasta olbrzymia winorol, wysoka na dziesi piter. Pewnie nas nabiera, ale moe warto na wszelki wypadek sprawdzi t winorol pod ktem artefaktw. + + + Najpewniejsze miejsce to kwasowe bagno. Peno w nim anomalii grawitacyjnych, ale atwo je zauway. Wystarczy patrze uwanie na powierzchni wody i nie mona si pomyli. Anomalie gazowe to troch wikszy problem, bo praktycznie nie ma tam czym oddycha. Dosta tak to nie przelewki, moesz mi wierzy. Potrafi przere na wylot kamizelk szybciej ni kwas siarkowy. + + + Sporo anomalii termicznych jest w spalonym gospodarstwie na wzgrzu. Ludzie znajduj tam artefakty. Szukaj w domach: w tych, w ktrych po emisji jest najwicej anomalii, bd artefakty. + + + Prawdopodobnie jest ich sporo w jaskiniach pod spalonym gospodarstwem. Jeli pjdziesz tam z detektorem, nie przestanie pika. Dosta si do nich to nie problem - po prostu wskocz od gry. Gorzej jest si wydosta z tymi wszystkimi anomaliami na dole. Gwnie wirami i kwasem. Niektrzy twierdz, e widzieli w szczelinie co przypominajcego komet. Caa gama niebezpieczestw, bez dwch zda, ale to prawdopodobnie oznacza rwnie ca gam artefaktw. + + + Wiesz, co to za anomalia, Cyrk? To olbrzymia trampolina z dwiema okrajcymi j kometami - niezy widok do podziwiania. Podziwiaj jednak z daleka, bo Cyrk, z mnstwem anomalii termicznych, jest gorcy jak diabli. Ma te sporo artefaktw, ale s one chronione przez paskudnego poltergeista, ktry sprbuje ci usmay, jak tylko si zbliysz. + + + Jeli interesujesz si artefaktami grawitacyjnymi, poszukaj ich w anomalii zwanej Kem. atwo to miejsce zauway - anomalie zrobiy swoje i oderway poow wzgrza. Otworzyo si tam kilka jaski, w ktrych od razu zamieszkay snorki. Na szczcie rzadko wychodz na zewntrz. + + + W Zonie, czowieku, w Zonie. Wystarczy si nie poddawa. + + + wietne pytanie. Daj zna, jak poznasz odpowied! + + + Gdzie, kiedy, dlaczego... Pamitaj: jak znajdziesz y zota, zachowaj j dla siebie. + + + Gdzie mog znale artefakty? + + + Nie bd dwa razy powtarza. + + + Nie, nic wicej ju nie wiem. + + + To wszystko, co wiem. Zapytaj kogo innego. + + + Co tam, bracie? + + + Witaj. + + + Witaj, stalkerze. + + + Witaj. + + + Czego chcesz? + + + Co? + + + Gadaj. + + + Dzie dobry, majorze! + + + Dzie dobry! + + + Sucham, majorze. + + + No cze. + + + Co? + + + We wasnej osobie. + + + Hej, stalkerze. Gdzie si spieszysz? + + + Co tam? + + + Co tam, brachu? + + + Och, hej, stary. + + + Siemano. + + + Hej! + + + Pom mi, bracie! + + + Uratuj mnie, bracie, ja umieram... + + + Potrzebuj pomocy medycznej! + + + Apteczk!... Szybko! + + + Pom mi, przyjacielu... Aaa, co za bl! + + + Dajcie mi apteczk... apteczk, szybko... + + + Stary... argh... dalej, pom mi! + + + Hej, potrzebuj apteczki... szybko... + + + Pom mi, stalkerze... apteczka, prosz... + + + Jestem ranny... pomocy! + + + Potrzebuj apteczki! + + + Apteczka! + + + Kojarzysz pogbiark na wschd od Skadowska? Mwi, e w nocy wieci tam co dziwnego... Zbyt dziwnego, nawet jak na Zon. Naprawd nie wiem, czy warto to sprawdza. Moe si okaza, e to co wartociowego, ale czy warto dla tego ryzykowa wasnym tykiem? Oto jest pytanie... + + + Nic tu nie ma poza starymi, zniszczaymi rupieciami. Wemy na przykad ten rozklekotany konwj na mocie Przemienienia Paskiego - jest kompletnie zardzewiay. Most te. Wielu chtnie by w tym miejscu poszperao, gdyby nie snorki i anomalie... + + + Wiesz, e Sutan planowa przej interes Brodacza? Skadowsk jest za may, eby pomieci jego chciwy tyek, wic postanowi ugry jeszcze wikszy kawaek tortu... Ale powiedzielimy mu nie ma mowy, Jos!" Brodacz i reszta naszych chopakw sprawili im nieze pieko. Sutan i jego bandyckie plany nie maj tu szans powodzenia. + + + Wiesz, e ta szuja, Sutan, przycisn Brodacza? Nie wiem dokadnie, co zrobi, ale wyglda na to, e niele si z Brodaczem rozprawi! Co si dzieje z t Zon? Jeli tak dalej pjdzie, ani si obejrzymy, jak Skadowsk stanie si baz dla bandytw! + + + Wiesz co o Oazie? Mwi, e to miejsce, ktre bardzo ciko znale, a gdy ju wiesz, gdzie jest, jeszcze ciej si do niego dosta. Podobno jest tam jezioro. Wystarczy do niego wej, a natychmiast min ci wszystkie dolegliwoci i zagoj si rany. Ach, prno gada. Widzisz, ilu niedowiadczonych stalkerw przychodzi tutaj, do centrum Zony? Dla niektrych celem jest polowanie na artefakty, inni s po prostu ciekawi, ale wikszo ma nadziej znale Oaz. Plotka mwi, e jest ukryta gdzie w pobliu... + + + Podobno Zona ma wkrtce znikn... Kto znalaz Oaz i zabra z niej artefakt - Serce Oazy. Teraz Zona przeniesie si w inny wymiar i aden ze stalkerw nie bdzie mg si z niej wydosta... Spoko, tylko artuj. Znaleziono jednak jaki nowy rodzaj artefaktu. Naukowcy wanie majstruj przy nim w swoim bunkrze. + + + Kojarzysz Topola? Znalaz dla swoich ludzi jakie nowe zadupie do pozwiedzania i oczywicie poszli tam z radoci. Ich eskapady skoczyy si tym, e kontroler przesmay im mzgi. Sikaliby teraz pod siebie w bunkrach szpitalnych, gdyby nie byo tam z nimi pewnego stalkera. Gdy Topol doszed do siebie po tej caej zombifikacji, stalker kuca koo kontrolera i obcina mu uszy. + + + Wiesz co o wiosce Kopaczi? Gdy wydarzya si pierwsza katastrofa elektrowni w Czarnobylu, ten obszar ucierpia tak bardzo, e postanowiono zasypa ca wiosk. Nic tam teraz nie ma oprcz maych, radioaktywnych had w miejscu domw. Mwi, e byo tam upiornie nawet przed katastrof. Strach pomyle, co mona tam teraz znale. Nikt nie jest do odwany, eby to sprawdzi. Ale co jeli si myl? Teraz to moe by kopalnia artefaktw! + + + Jest tylko dwch stalkerw w Janowie, ktrzy s w stanie wyczu zbliajc si emisj. Kostopraw, nasz medyk, i Zulus, byy czonek Powinnoci. Sowo 'byy' to niedawna zmiana... Gdy Powinno przybya do Janowa, bojownicy Wolnoci ju tu byli. atwo zgadn, e sprawy szybko przybray paskudny obrt. Obie frakcje poniosy due straty. Kilku niezalenych stalkerw dostao nawet zabkan kul. Wtedy Zulus powiedzia im, e nadchodzi emisja. Nie majc wyboru, Powinno i Wolno ogosiy rozejm i okopay si na stacji. Kiedy byo po wszystkim, Zulus odszed z Powinnoci i zamieszka w wiey niedaleko stacji. + + + Peno jest dziwnych historii... Nie naley we wszystkie wierzy. W dzisiejszych czasach w Zonie roi si od bajarzy. Dziwne jednak, e kilku stalkerw ze stacji Janw twierdzi, e widziao UFO. Mwi, e wygldao jak czarny spodek o rednicy okoo 5 metrw. Inni twierdz, e z daleka wygldao jak samolot, ale nie s pewni, co to byo. Niezaprzeczalny fakt jest taki, e jeden z naocznych wiadkw jest byym pilotem i mwi, e nigdy w yciu czego takiego nie widzia. + + + Ostatnio nic tylko ze wieci. Dobrzy ludzie znikaj jeden po drugim, a potem znajdujemy ich ciaa bez nawet kropli krwi. To na pewno te cholerne pijawki, bo kto inny? Ooch, marz, eby znale ich legowisko i napakowa te szmaty oowiem! Niedugo bdziemy parami chodzi do kibla, zobaczysz. Samotni stalkerzy, cholera jasna. + + + Mam dla ciebie co nowego. Gocie z Wolnoci pooyli ap na PDA legendarnego zaoyciela frakcji Powinno. I wiesz co? Okazao si, e oszuka swoich ludzi, mwic im, e dowdztwo armii zostawio ich w Zonie. Wymyli to tylko po to, eby stworzy wasn frakcj! Jednak w Zonie taka ciema nie przejdzie. Niedugo potem, nasz bohater skoczy w Bblu przestrzennym. Tak si losy tocz... Pomyle, e rozwaaem wstpienie do Powinnoci! A tam, niech wygaszaj swoje patetyczne bzdury beze mnie. + + + Ta nowa zaoga Powinnoci... Waciwie pojawili si znikd. Tylko pomyl: grupa bojownikw Powinnoci opuszcza Janw i powraca w trzy razy wikszym skadzie. Klonuj si, czy co? W sumie mona by si tego spodziewa po Powinnoci. Mona ich odrni tylko po rangach! + + + Ta nowa zaoga Wolnoci... Waciwie pojawili si znikd. Tylko pomyl: grupa bojownikw Wolnoci opuszcza Janw i powraca w trzy razy wikszym skadzie. Wiem! Rozmnaaj si przez pczkowanie! Mona by tak pomyle, nie? Pal tyle trawy, e niedugo wypuszcz korzonki i zaczn si rozmnaa wegetatywnie! + + + Znasz Gont i jego chopakw? Troch ostatnio mieli pecha. Dania znikn, a Krab zosta ranny. Teraz ju chyba idzie im lepiej. Dobrze si dogadali z naukowcami i robi dla nich pomiary. Niele, co? Ciepa posadka i duy krok w stron oficjalnych przepustek. + + + Znasz takich stalkerw jak Mitaj, Torba i Grizli? Podobno znaleli robot u naukowcw i robi dla nich pomiary. O co tu do diaba chodzi? Moim zdaniem jajogowi nie planuj nic dobrego, ale przynajmniej chopaki s teraz w niezej sytuacji. Moe kiedy nawet dostan oficjalne przepustki. + + + Znasz Spartakusa i jego ekip? Ju ich w Skadowsku nie zobaczysz - ochraniaj teraz bunkier naukowcw. W sumie, czemu nie - potrafi poradzi sobie z mutantami i wiedz, jak odstraszy bandytw. Nauka to szlachetne zajcie, do ktrego potrzebne s cisza i spokj. + + + Kojarzysz najemnikw, ktrzy utknli na stacji? Ostatnio zniknli. Wyruszyli do Jupitera, by ochrania bunkier naukowcw. Przed nimi inni najemnicy strzegli tego miejsca, ale podobno co im si stao. Nie za dobra tendencja, moim zdaniem! Najemnicy znikaj, inni ich zastpuj, i tak w kko... Jeszcze kilka takich rund i na Zatonie w ogle nie bdzie najemnikw. + + + Ludzie mwi, e bunkier naukowcw jest teraz ochraniany przez mnych wojownikw Powinnoci... Ciekawe, co bd z tego mieli. Naprawd wierz, e ci 'ologowie' dadz im w rewanu nowiuteki karabin plazmowy, eby mogli sobie popolowa na chomiki? Te mi ochroniarze. + + + Mwi, e bunkier naukowcw jest teraz ochraniany przez Wolno. Czy ci naukowcy si nie boj, e ich obiekty dowiadczalne pjd z dymem? I to dosownie. Ma to te swoje dobre strony. Jeli kto sprbuje zaatakowa bunkier, bdzie musia si najpierw przedrze przez zason dymn! Ha ha ha! + + + Wiesz, gdzie jest fabryka radioelektroniczna Jupiter? Straszne miejsce. Nikt tak naprawd nie wie, co tam si dzieje. Anomalie i mutanty s takie same jak wszdzie... Ale jako nie mam ochoty si tam wybra. Czuj, e to miejsce oznacza kopoty. + + + Hej, czy to tobie zawdziczam zdemaskowanie skadowskiego medyka? Doceniam to, naprawd. Nie wiadomo, kto byby jego nastpnym pacjentem... Wszyscy mylelimy, e to sprawka potworw, ale, jak wida, niektrzy ludzie mog by rwnie li. Czowiek czowiekowi wilkiem, prawda? + + + Kto tu kogo powinien pyta? Po twoim wejciu do tuneli pod Jupiterem syszelimy plotki, e udao ci si dotrze a do centrum Zony. Powstao nieze zamieszanie. Z tuzin ludzi chciao pj za twoim przykadem. Azot ich uspokoi - powiedzia, e bramy tunelu si zatrzasny i nie moe nic zrobi, eby je otworzy. Oczywicie znalazo si kilku szalecw, ktrzy chcieli wysadzi bram, ale cigle kombinuj, skd wzi wystarczajc ilo dynamitu i jak waciwie bd oddycha, kiedy ju tam wejd. + + + Znasz ostatnie wieci o Garrim? To ten stalker, ktry pracowa dla naukowcw. Ju nie przekracza granicy nielegalnie - dosta oficjaln przepustk do Zony, uwierzysz? Mylisz sobie, e powinien by zabra swj up i wrci do domu? C, zamiast tego ten wariat wybra si do Prypeci. Wszyscy myleli, e przepad na dobre, tak jak reszta, ale gdzie tam. Udao mu si, ale jego wyczyn niewiele da stalkerom. Wpad na jakich wojskowych. Teraz Garri jest w dobrych stosunkach z onierzami, ma przepustk i w ogle, ale ten rejon jest cigle niedostpny dla zwykych stalkerw. + + + No c... Wolno i Powinno znowu walcz, tym razem o jaki powany schowek. Mwi, e jest tam do broni, by wyposay trzy dywizje piechoty. Nie wiadomo, kto to wszystko w ogle schowa, ale ich ostateczne stracie to byo naprawd co. Poruszyo wszystkich stalkerw w Janowie, ktrzy na szczcie sobie odpucili, bo mielibymy kolejn zadym, kady na kadego. Wydaje mi si, e Powinno oberwaa najbardziej, bo teraz teren jest chroniony przez oddziay Wolnoci. + + + No c... Powinno i Wolno znowu walcz, tym razem o jaki powany schowek. Mwi, e jest tam do broni, by wyposay trzy dywizje piechoty. Nie wiadomo, kto to wszystko w ogle schowa, ale ich ostateczne stracie to byo naprawd co. Poruszyo wszystkich stalkerw w Janowie, ktrzy na szczcie sobie odpucili, bo mielibymy kolejn zadym kady na kadego. Wydaje mi si, e Wolno oberwaa najbardziej, bo teraz teren jest chroniony przez oddziay Powinnoci. + + + Co si ostatnio wydarzyo. Grupa stalkerw przeszukiwaa tunele pod Jupiterem i wpada na co - to znaczy na kogo. Najpierw spluwy wyleciay im z rk, a pniej wszystkie mieci zaczy lecie w ich kierunku. Nie mieli pojcia, co si tak waciwie stao, ale stracili tam dwch chopakw. + + + Podobno znaleli jakiego zasranego mutanta w tunelach na pnoc od Jupitera. Traper wysa tam stalkera, eby to sprawdzi. Okazao si, e byo tam kiedy legowisko burerw. Dlaczego byo? Bo ten stalker wymit wszystkich. Sam... Nawet pasujesz do jego opisu, tylko tamten jest wyszy i zawsze nosi ze sob granatnik. + + + Ju po stalkerach... Potwory wya z Mokrade. Stalkerzy z cementowni widzieli je, jak wloky jednego z naszych. Byo ich co najmniej tuzin, ogromne sukinsyny, a trudno uwierzy. Wyglday jak pijawki, tylko dwa razy wiksze i duo szybsze. Modlimy si, eby Traper wymyli, jak sobie poradzi z tymi bestiami... + + + Wiesz co o bagiennych pijawkach? Tych z Mokrade? Ju ich nie ma. Traper si do nich dobra... Nie osobicie - wynaj kilku stalkerw. Mwi, e zebra ekip okoo dziesiciu ludzi, ktrzy przeczesali te bagna wzdu i wszerz, a wszystko, co wyskoczyo, wysali na tamten wiat. Nawet ab ju tam nie ma. + + + Niedugo po tym, jak rozesza si wie o chimerze, kto j rozwali. Mutanty zabijay stalkerw tuzinami, ale chyba si wreszcie wycwanilimy i odwracamy t tendencj. Wiadomo mi te z innych rde, e go by dowiadczonym owc, ktry zabi w yciu wicej potworw ni my razem komarw. + + + Wiesz, jakich ludzi Wolno teraz rekrutuje? By jeden go zwany Flintem. Chwali si swoimi wyprawami na prawo i lewo... c, okazao si, e by niezym mieciem. Da kumplowi umrze w anomalii, zabra up i odszed. Pniej dowiedziano si wicej o jego wyczynach na Zatonie, gdzie praktycznie nakarmi chimer grup owcw. Kiedy moje zdanie o Wolnoci byo lepsze. Kurna, ju lepiej nie nalee do adnej frakcji, ni mie takich przyjaci. + + + Zabili t chimer z Zatonu. Ekipa Gonty razem z nieznanym stalkerem. Czekaj, to chyba ty, prawda? Mog liczy na relacj z pierwszej rki? Stokrotne dziki. Przy okazji jest o jednego mutanta mniej! + + + Nie wiem, czy warto o tym gada, ale mamy tu tego gocia, Noego, najbardziej zakrcony wir, jakiego w zobaczysz w yciu. Ma paskudn bark, ktra wyglda, jakby mu j paru ludzi zbudowao w tydzie na lewo. Uwaaj na niego, bo najpierw strzela, a pniej nawet nie zawraca sobie gowy zadawaniem pyta. Moim zdaniem - w choler z takim dupkiem. + + + Kojarzysz wawego? Podstpny go. Sprzedaje najlepsze spluwy w okolicy, bez dwch zda. Ciekawe, jak je przemyca. Jak mona przenie Wintara, eby nie byo wida, e to robisz? Gdzie go sobie wetkniesz? To jakie cholerne czary. + + + Chodzi plotka, e Sutan wdepn w jakie nieze gwno. Chcia zniszczy Brodacza i przej jego interes, ugryz jednak wicej, ni jest w stanie przeu. Zamiast tego dosta w pysk. Ma przed sob trudne czasy, bo jego ekipa przyglda mu si ze wszystkich stron. Ju si tak nie liczy jak kiedy. + + + Mwi, ze Sutan trzyma Brodacza w garci i wykorzystuje jego interes. wietna sprawa. Sutan duo bardziej si teraz liczy. A najlepsze w tym wszystkim jest to, e teraz moemy rzdzi Skadowskiem po swojemu. Bdzie piknie. Szukasz schronienia przed emisj? Nie ma sprawy, wystarczy zapaci! + + + Hej, wiesz co o Oazie? Tylko sobie wyobra, miejsce, ktre natychmiast leczy wszystkie ble i choroby. To na pewno jaka magiczna sztuczka... Ja mam jednak jeszcze inny pomys. Tyle jest zamieszania wok tej Oazy, a nikt ju nie mwi o Speniaczu ycze. Moe Oaza to po prostu czyje spenione yczenie? + + + Jajogowi gadaj o jakim artefakcie przywleczonym z Oazy. Ale suchaj tego: jak go przestudiuj, wykorzystaj wyniki swoich bada, eby wymyli lekarstwo na raka! Powaga! + + + Codziennie to samo gwno... Wszyscy wykopuj stare historie na temat centrum Zony. Na przykad t o Oazie - miejscu, ktre natychmiastowo przywraca ci energi i leczy rany. To bujda w czystej postaci, ale przyjemnie si jej sucha. Szczeglnie jak gdybaj, gdzie znale to miejsce. Och, fajnie by byo, gdyby istniao naprawd... Uratowalibymy tylu chopakw. + + + Plotka gosi, e odnaleziono Oaz. Kto by przypuszcza, e naprawd istnieje. Z faktami jednak nie mona polemizowa. Znaleziono tam jaki artefakt. Naukowcy badaj go w tej chwili. By moe bd mogli go wykorzysta, aby stworzy jakie superszybkie lekarstwo... Przydaoby si naszym chopakom. + + + Kopaczi. W Zonie to nic nowego, ale dla mnie to nowo. Wyobra sobie tylko - caa wioska z domami zakopanymi pod ziemi a po dachy... Wszystko z roku 1986... Domy emitoway tyle promieniowania, e musieli je zasypa. Okropny widok... + + + Znasz t histori, jak razem z Powinnoci musielimy stacjonowa w Janowie? To wszystko przez Zulusa. Wtedy by w Powinnoci. Jak nikt inny potrafi wyczu zbliajc si emisj... Ale my przybylimy do Janowa pierwsi, po stalkerach, oczywicie. Nie mielimy nawet czasu zapali fajki, gdy si zjawili ci niewydarzeni szeregowcy, wymachujc spluwami. Ostatni raz taka rze miaa miejsce ponad rok temu na Wysypisku. Mnstwo ludzi zgino po obu stronach. W tym nasz specjalista od emisji, wie Panie nad jego dusz. I wtedy Zulus zacz krzycze Emisja si zblia! Kry si!" Co mielimy robi? Wywali ich i pozwoli umrze? Powinno czy nie, to cigle ludzie. Tak wanie yjemy: kcimy si, kiedy jest cicho, a gdy przychodzi emisja, siedzimy razem, jedni obok drugich. Zulus ostatecznie opuci Powinno. Zosta pustelnikiem i mieszka niedaleko Janowa. + + + Ani to nowo, ani aden sekret, ale Kardan, technik, wkrtce zapije si na mier. Mwi, e zacz spokojnie, gdy przyby do Skadowska. Pi tylko okazjonalnie i dla ochrony przed promieniowaniem. Dopiero pniej zacz si zalewa w trupa, ogarnity alem po mierci dwojga przyjaci. Musieli by mu bardzo bliscy. + + + mieszna historia. By jeden go, ktry opowiada, e widzia UFO latajce nad Janowem. Zona potrafi doprowadzi ludzi do wariactwa, nie? Poltergeisty i kontrolerzy to jeszcze dla nich za mao. Nie mog si obej bez starych, dobrych opowieci o UFO. C, przynajmniej nie mamy adnych psychicznych dziwakw, wyganiajcych ze duchy z wdki. Wyobra sobie takiego: O Panie, przegnaj ze duchy! Zostaw tylko czysty spirytus sanctus!"... Ha ha. + + + Wiesz co o wiosce Kopaczi? Gdy wydarzya si pierwsza katastrofa elektrowni w Czarnobylu, ten obszar ucierpia tak bardzo, e postanowiono zasypa ca wiosk. Nic tam teraz nie ma oprcz maych, radioaktywnych had w miejscu domw. Mwi, e byo tam upiornie nawet przed katastrof. Strach pomyle, co mona tam teraz znale. Nikt nie ma do odwagi, eby to sprawdzi. + + + To adna nowina, ale moe o tym nie wiesz. Nie wskoczylimy do jednego ka z Wolnoci, bo lubimy si przytula. Wszystkiemu winne s okolicznoci. Kiedy tu przybylimy, Wolno napada na nas znienacka... Straty byy ogromne po obu stronach, chocia powoli zdobywalimy przewag nad anarchistami. Gdy walka trwaa w najlepsze, Zulus wyczu zbliajc si emisj. On si nigdy nie myli. Nie mielimy wyjcia. Musielimy przerwa walk. Nie rozumiem jednak, dlaczego Zulus opuci Powinno po tym incydencie. + + + Nasi zwiadowcy donieli o niezidentyfikowanym obiekcie latajcym nad stacj w Janowie. Innymi sowy, o UFO. Zanim zaczniesz zadawa gupie pytania, UFO to nie jaki tam latajcy spodek z Marsjanami na pokadzie. To moe by cokolwiek, od kawaka tektury do sondy meteorologicznej, o ile naoczni wiadkowie nie s w stanie tego zidentyfikowa. Kapujesz? + + + Dostarczenie Lokiemu PDA to twoja sprawka, prawda? Czowieku, po prostu bomba. Legendarny zaoyciel Powinnoci, genera Taczenko, wrobi swoich onierzy jak jakich frajerw. Zepsu radio, eby nie mona byo si z nimi skontaktowa, i zaoy wasn band suchajcych go idiotw... tylko po to, eby zej w prawdziwie kretyski sposb w jakim pieprzonym Bblu przestrzennym! Samemu by si takiej historii nie wymylio! + + + Widzisz, jakich nowych ludzi ci niewydarzeni onierze znaleli sobie do ekipy? Na pewno nie s to posiki z bazy - ideologia jeszcze nie do koca zastpia zdrowy rozsadek. S jednak zbyt dobrze wyszkoleni jak na zwykych stalkerw. Kto to, do diaba, moe wiedzie? Moe s z Monolitu? Wiem, e to brzmi wariacko! + + + Widzisz, jakich mamy nowych wojownikw? Ach, to twoja sprawka, prawda? Naprawd rzdzisz. S cakiem nieli, chocia troch spici... Spoko, kilka miesicy z nami oczyci im umysy. Zaczn y naszym trybem i wkrtce stan si tacy jak my. + + + Mamy kilku nowych, wietnych rekrutw: ekipa byych bojownikw Monolitu. To nie s jakie todzioby, tylko wyszkoleni wojownicy. Oczywicie maj troch poprzestawiane w gowach po opuszczeniu Monolitu, ale to nie szkodzi, mamy na t okazj specjalne, intensywne szkolenia z podstaw Ideologii i nie tylko. + + + Mwi, e Wolno zwerbowaa kilku byych wojownikw Monolitu. Ciko w to uwierzy, ale rzeczywicie maj now ekip, ktra na pewno nie przyjechaa z zewntrz Zony. Chyba s niele zdesperowani... albo mzgi ju im kompletnie zaniky od tych wszystkich narkotykw. Kogo zrekrutuj w nastpnej kolejnoci? Brygad zombiakw? A moe batalion burerw? + + + Wkrtce w tej okolicy znw zapanuje prawo i porzdek. Powinno przeja kontrol nad kluczowymi pozycjami w regionie. Zapewnilimy stabiln sytuacj w Janowie i sprawujemy sta ochron nad bunkrem naukowcw. Czas ju, by Wolno spakowaa manatki i wyniosa si std - anarchici nie s tu mile widziani. + + + Najnowszy cud wiata - trzewy Kardan. Potrafisz sobie wyobrazi, e w ogle nie pije? Ludzie ze Skadowska pytali go, czy znalaz numer na telefon zaufania, na co odpowiedzia, e jedyny numer, jakiego potrzebuje, to szedziesit dwa. + + + Wdaje mi si, e to dziki tobie nasi dostali t robot przy ochronie naukowcw, zgadza si? Dziki ci za to. Przyjemnie byo oglda naszych ludzi przy bunkrze, zamiast tych pieprzonych najemnikw. wietna sprawa! + + + Zobaczmy... mamy niez jazd dziki tajnemu schowkowi Powinnoci. Teraz uyjemy tego schowka do tego, do czego jest przeznaczony - jako wizienie dla szumowin Powinnoci, aby zmusi ich do wydania wszystkich tajemnic. He, he. Aha, dziki za cynk o alarmie - bez posikw nie mielibymy szans. + + + Kolejne zwycistwo Powinnoci! Ci anarchici zrobili si naprawd zarozumiali... Wkradli si do naszego sekretnego magazynu, przekonani, e ujdzie im to na sucho. Nie ma mowy! Zaskoczylimy ich i rozwalilimy, jak si rozwala wcieke chomiki. + + + To adna nowina, e Wolno to banda zwyrodnialcw, ale odkrylimy co nowego na temat jednego z ich najwikszych szajbusw. W Wolnoci go by znany jako Flint, ale zanim do niej wstpi, by stalkerem i woali na niego Sroka. Przynajmniej tak si nazywa, gdy przyby do Zatonu i prawie zaprowadzi ekip owcw prosto w szczki mutantw. Wystawi ich i chimera prawie rozdara ich na strzpy, a ten gnojek zabra ich sprzt i przyby tutaj, do Janowa. Po doczeniu do Wolnoci wepchn swojego partnera do anomalii, eby zabra mu artefakt. Taka wanie jest Wolno. + + + Nowy projekt budowy statku pod kierownictwem Noego. To najnowsza atrakcja na Zatonie - stalker imieniem Noe. Dowiadczony, zmotywowany i w stu procentach szalony. Ostatnim jego wariackim pomysem jest uratowanie wszystkich stalkerw przed Apokalips. Dlatego wanie przebudowuje star bark na ark". Doprawdy, istny szaleniec. Jeli zdecydujesz si do niego wpa, uwaaj, eby go nie rozdrani. Dopki bdziesz o tym pamita, jest praktycznie niegrony. + + + Znasz wawego? Jest teraz w Skadowsku. To prawdziwy handlowy profesjona. Moe dla ciebie zdoby wszystko, czego potrzebujesz. No, prawie wszystko. Ostatnio skupi si na spluwach i kombinezonach, wszystko z grnej pki! Wyspecjalizowany towar, eksperymentalne wzory, artykuy rcznie robione... Tanio u niego nie jest, ale dlaczego miaoby by? Za ekskluzywno trzeba paci! + + + Wiesz, e Pilot uywa nowej cieki midzy Zatonem i Jupiterem? Kiedy trzeba byo powici sporo czasu - wazi pod gr, unika anomalii i tak dalej. Teraz to buka z masem. To ju nie wyprawa, tylko spacer po parku, nie mwic o tym, e idzie si o poow krcej. Ale Pilot potrafi odda honor, gdy si komu naley - to nie on odkry t tras. Pewien stalker pokaza mu swoje mapy. Za opat, oczywicie, ale nie zada jakiej astronomicznej kwoty. + + + Niewiele, szczerze mwic. + + + W Zonie zawsze znajdzie si co nowego, gdziekolwiek by nie szuka. + + + C, jeste tutaj. To co nowego, jak sdz. + + + Co nowego w Zonie? + + + Nie wiem ju niczego, co by ci zainteresowao. + + + Lubi gada, ale nic ju wicej nie wiem. + + + Nie wiem ju nic wicej. + + + Hmm... moe zapytaj Guszca w Skadowsku. Szuka kogo, kto pomoe mu wyjani spraw gincych w tajemniczy sposb stalkerw. Wszyscy wini pijawki, bo znajdowane ciaa s kompletnie pozbawione krwi. Ale to ju zbyt wiele... Ludzie s porywani kadego dnia, co zupenie nie pasuje do pijawek... Guszec wynaj nawet dowiadczonego owc, eby namierzy te pijawki. + + + Kiedy stalker potrzebuje pienidzy, ma dwie moliwoci: poszuka artefaktw i odda je handlarzom za 30 procent wartoci lub popracowa dla naukowcw. Zawsze wymyl co, co stalker moe dla nich zrobi, na przykad dostarczy rzadki artefakt albo zwoki mutanta. Najwaniejsze jednak jest to, e jeli przejdziesz na ich stron, mog ci wyda przepustk do Zony, wszystko oficjalnie i legalnie. Wyobra sobie, e mijasz posterunek wojskowy, niosc plecak peen upw, i jeszcze ci salutuj! A si ciepo na sercu robi! W kadym razie, bunkier naukowcw usytuowany jest na zachd od stacji Janw. Pracuje dla nich jeden stalker, moe ciebie te zatrudni. + + + Twoje sukcesy zale od tego, czym si zajmujesz. Jeeli nie masz nic przeciwko polowaniu na mutanty, bdziesz mie mnstwo zlece. Wpadnij do piwnic w Janowie i zapytaj o Trapera - paci niez kas za pozbywanie si mutantw. Tylko nie zwracaj si do niego po nagrod za zabicie pierwszego z brzegu nibypsa. Traper daje zlecenia na konkretne potwory, ktre przeszkadzaj w zbieraniu artefaktw lub nawiedzaj miejsca, ktrych stalkerzy uywaj jako kryjwek przed emisj. + + + Ludzie tacy jak ty, ktrzy przyjedaj do Skadowska, czsto odwiedzaj Brodacza. Potrafi odpali adn dol za artefakty... ale powiem ci jedno - jego wyczucie interesu jest kompletnie do dupy. Nie chce si podzieli zyskami z pewnymi wpywowymi ludmi... i dlatego wanie bdzie mia przesrane. Kumasz? + + + Jeli potrzebujesz gotwki, odwied Sow. Handluje wszystkim, czego czowiek moe w Skadowsku potrzebowa - informacjami, spluwami, wszystkim. Jeli masz co ciekawego i wartociowego, jak dokumenty albo PDA stalkera - zabierz to do Sowy i zgarnij kas. Moesz te dosta adn sumk za wykonywanie jego osobistych polece. Zapytaj po prostu, czy nie potrzebuje, eby co dla niego zrobi. + + + Radz pogada z Gont. On i jego druyna maj niez histori do opowiedzenia. Niedawno temu na Zatonie pojawia si chimera, wic Gonta i jego ludzie wyruszyli, eby si z ni rozprawi. Rozdzielili si na dwie druyny, by namierzy besti i wysali owc, eby odszuka legowisko pijawek. Mieli troch mao ludzi, kiedy wreszcie trafili na lad chimery, wic poszed z nimi jeszcze jeden stalker, Sroka. Nie wiem jak to si dokadnie odbyo, ale z wikszoci relacji wynika, e Sroka prysn jak tylko zobaczy chimer. Gonta ledwo si stamtd wydosta, a jeden z jego ludzi zosta ciko ranny. Jednak chimera wci grasuje, szukaj wic ludzi, ktrzy by im pomogli. + + + Proste: szukasz powanej gotwki, id do Sutana. On jest szefem w tej okolicy, wicej jeli bdziesz si dobrze zachowywa, znajdzie dla ciebie robot. + + + Jeli jeste dobrym stalkerem - to znaczy umiesz znajdowa artefakty - pogadaj z Brodaczem. Cieszy si tu duym szacunkiem. Jest jedynym czowiekiem w Skadowsku, ktry dobrze ci zapaci za twoje artefakty. Ma kontakty, dziki ktrym transportuje je na zewntrz Zony. Poza tym - jest dobrym czowiekiem... zawsze bdzie mia dla ciebie rad albo odpowiedni prac. + + + W Skadowsku jest pewien handlarz, nazywa si Sowa. Nie jest najsympatyczniejszym czowiekiem na wiecie. Cigle narzeka, e wszystkie artefakty id do Brodacza, a nie do niego, ale jeli potrzebujesz pienidzy, moesz zobaczy, co ma do zaoferowania. Cwaniak handluje nie tylko amunicj. Moe udzieli ci informacji, co ci sprzeda, kupi co od ciebie i zapaci za co, co wiesz, a co go interesuje. Wpadnij do niego z wizyt - moesz go znale na drugim pokadzie na rufie. Na pewno jako si dogadacie. + + + Zapytaj Wano, bywa w barze w Janowie. Ma na pieku z bandytami - ju trzy razy prbowa spaci swj dug. Jest dowiadczony i w ogle, potrafi dostrzec anomalie z zamknitymi oczami... a i tak cigle pakuje si w kopoty. Wielu ludzi sugerowao mu, eby po prostu uciek. Zona jest za dua, eby mafia go znalaza, ale on jest zbyt dumny, eby ucieka. Nie ma jednak zbyt wielu chtnych do pomocy w rozwizaniu kwestii z bandytami... + + + Zapomnij o robocie, czowieku... Bandyci naprawd wymknli si spod kontroli - wzili Mitaja na zakadnika i daj okupu. Mitaj by jednym z pierwszych stalkerw w Janowie, zbudowa to miejsce, eby ludzie mogli si schroni przed emisj, a teraz, kiedy potrzebuje pomocy, wszyscy si na niego wypili. Na Wolno i Powinno nie ma co liczy - zbyt s zajte skakaniem sobie nawzajem do garde... Ale reszta - oni powinni co zrobi! Ech, nie ma co... Nawet zaoga Mitaja nie wie, jak go uwolni. Jeli chcesz im pomc, pogadaj z Grizlim. Znajdziesz go w barze na stacji. + + + Azot, technik z Janowa, potrzebuje materiaw do pracy. Zna si na broniach i elektronice. Czasem jednak umiejtnoci to za mao - potrzeba mu odpowiednich materiaw, wic rozpytuje w okolicy. Problem w tym, e wszystkie bezpieczne miejsca ju s wyczyszczone, a pozostae s dla wikszoci zbyt niebezpieczne. Azot ma nadziej znale kogo, kto byby chtny podj to ryzyko. Na pewno niele zapaci za przysug. + + + Pono Wujek Jar ze stacji Janw szuka niezbyt ciekawskiego stalkera, ktry by mu w czym pomg. Nie wiem, czemu nie zapyta swoich kumpli z Wolnoci... W kadym razie - jest porzdnym, starszym czowiekiem, wic pogadaj z nim i moe si dogadacie. + + + Hmm... Nie znam nikogo takiego. + + + Kt nie chciaby tego wiedzie? + + + Skd do diaba mam wiedzie? + + + Znasz kogo, kto miaby dla mnie prac? + + + Pytasz znowu o to samo. + + + Nic nowego nie jestem ci w stanie powiedzie. + + + Znasz ju moj odpowied. + + + OK, zapomnij o tym. + + + Mam do ciebie pytanie. + + + Pytaj miao. + + + Dawaj. + + + Strzelaj. + + + Sucham. + + + Pomocy! + + + We t apteczk. + + + Przepraszam, nic nie mam. + + + Rozumiem. + + + Co robisz? + + + Mog pj z tob? + + + Pewnie. W kupie raniej. + + + Przykro mi, ale nie. Id swoj wasn drog. + + + No to chodmy. + + + Musz si dosta w pewne miejsce. Zaprowadzisz mnie tam za opat? + + + Nie ma sprawy. Wybieraj, jakie miejsce ci interesuje? + + + Zgoda. Chodmy. + + + Zmieniem zdanie. + + + Nie, mam inne pilne sprawy do zaatwienia. + + + Odpoczywam sobie. + + + Nic wielkiego, zaywam odrobiny relaksu. + + + A na co to wyglda? Absolutnie nic. + + + Tropi mutanty. + + + ledz kilku dupkw. Pieprzone przygupy... + + + Tropi kilku najemnikw. Nieze z nich sukinsyny. + + + ledz druyn fanatykw. To znaczy wojownikw Monolitu... + + + Poluj na zombi. Za duo tych skubacw w okolicy... + + + Dobra. To bdzie kosztowa + + + Wiesz... zmieniem zdanie. + + + Nie mam tyle. + + + Och, nic takiego. + + + Poluj na mutanty. Kto musi im pokaza, gdzie jest ich miejsce. + + + cigam miejscowych bandytw. + + + Poluj na najemnikw. Maj dug, ktry trzeba odebra. + + + cigam tych popapracw z Monolitu. + + + Prbuj namierzy kilku moich dunikw. + + + Nic w tej chwili nie robi. + + + Poluj na mutanty. Prbuj oczyci okolic z tego plugastwa. + + + Jestem na misji. Tropi druyn bandytw. + + + Moim celem s najemnicy. Podam za ladami ich druyny. + + + Podam za druyn Monolitu. + + + cigam tych niedorobionych dupkw z Wolnoci... + + + Poszukuj artefaktw. + + + Grzybw nie zbieram... raczej artefakty. + + + Szukam artefaktw. + + + Id w stron anomalii zwanej Kotem, tej niedaleko maego zagajnika. + + + Wyruszam w stron pnocnego jeziora... odpoczn sobie troch na pwyspie. + + + Id za pnocne jezioro - jest tam przyzwoite miejsce na obz. + + + Id do lasu za pnocnym jeziorem. + + + Id do maego lasku na zachd od tartaku. + + + Id w stron tego wzgrza na zachd od bagna. adne bagienne trucizny mnie tam nie dostan. + + + Id w stron stacji antenowej. Na zachd od niej znajduje si cakiem przyjemne miejsce. + + + Id do lasu na zachd od Sosnodbu... Chod ze mn, jeli chcesz - nie mam nic przeciwko towarzystwu. + + + Do zagajnika pomidzy elaznym Lasem i warsztatami. + + + W stron wielkiego mostu... Podobno na wschd od niego znajduje si bezpieczne, odosobnione miejsce. + + + Na parking na poudnie od starej barki. + + + Nic wielkiego, troch podruj. Zamierzam rozbi obz na wzgrzu na wschd od Skadowska. + + + Do zagajnika pomidzy Izumrudnoje i stacj benzynow. + + + Do rozwidlenia niedaleko zakadu utylizacji odpadw. + + + Do anomalii zwanej Kotem. + + + Do stranicy. Jest tam kompleks budynkw, pewnie go kojarzysz. W jednym z nich s piece - ciekawe, co tam si kiedy dziao. + + + Do zagajnika na zachd od spalonego gospodarstwa. + + + Do zagajnika na wschd od anomalii zwanej Kotem. + + + W stron wzniesienia zaraz za pnocnym jeziorem. + + + Do maego zagajnika na poudnie od spalonego gospodarstwa. + + + Id w pewne miejsce na zachd od Skadowska... tam, gdzie wychodzi rurocig. + + + Id w stron miejsca, ktre znajduje si w p drogi pomidzy Skadowskiem i pogbiark. + + + Do rzeczki niedaleko starej barki. + + + Do kanau niedaleko anomalii zwanej Szram. + + + Do stacji benzynowej. + + + Do jarw Sosnodbu. + + + Chc poszuka artefaktw w anomalii zwanej Pazurem. + + + Id w stron wzgrza na zachd od anomalii zwanej Kotem. + + + Do anomalii zwanej elaznym Lasem. + + + Id do anomalii zwanej elaznym Lasem, eby poszuka artefaktw. + + + Id na bagna. Pewnie, e ciko tam oddycha przez ten cay gaz, ale artefakty s niez rekompensat. + + + Id do warsztatw podstacji. Mwi, e to dobre miejsce, by si ukry przed emisj. Zamierzam je przetestowa. + + + Niedaleko std jest tartak. Tam wanie id. Chc si rozejrze i sprawdzi, czy nie ma tam czego wartociowego. + + + Mam ochot wzi sobie troch wolnego w Izumrudnoje. Och, oczywicie, e to wietny orodek... dla ciaa i dzikw! Cha, cha! Mam jednak nadziej, e uda mi si rozbi tam obz. + + + Na most. Wydaje mi si, e na mapie jest oznaczony jako most Przemienienia Paskiego. + + + Do pogbiarki. Zao si, e cigle mona tam znale co wartociowego. + + + Do starej barki. + + + Chc si pokrci po spalonym gospodarstwie, zobaczy, czy nie pojawiy si tam jakie nowe artefakty. + + + Na poudniowy paskowy. + + + Do rozpadliny przy stacji benzynowej. + + + Id do stacji antenowej Krug - potrzebuj bezpiecznej kryjwki przed emisjami. Niestety, podobno jest tam mnstwo potworw. + + + Id do stacji antenowej Krug - potrzebuj bezpiecznej kryjwki przed emisjami. Niestety, podobno jest tam mnstwo potworw. + + + Id poszuka artefaktw w okolicach Sosnodbu. Mam nadziej, e kundle bd si trzyma z daleka. + + + Do szamba... no wiesz, do zakadu utylizacji odpadw. To miejsce rwnie dobre jak kade inne, aby si schowa przed emisj. + + + Id w stron przystani na pnocnym jeziorze. Jak ju si tam dostan, bd improwizowa. + + + Id do portu, tam gdzie s dwigi. To dobre miejsce na obz. + + + Planuj poszuka artefaktw w anomalii zwanej Kotem. Mam nadziej, e mj kombinezon przetrwa te wakacje w gorcych rdach. + + + Do anomalii zwanej Szram. + + + Chc sprawdzi odporno mojego sprztu na ogie i poszuka artefaktw - wszystko to w anomalii zwanej Cyrkiem. + + + Do stranicy. + + + Zamierzam rozbi obz na Szewczence. To dobre schronienie przed emisjami i trudne miejsce do zaatakowania dla mutantw. + + + Zamierzam rozbi obz na Szewczence. To dobre schronienie przed emisjami i trudne miejsce do zaatakowania dla mutantw. + + + Id do portu, tam gdzie s dwigi. To dobre miejsce na obz. + + + Chc zostawi up i wypi zimne piwko. Skadowsk to idealne miejsce do tego celu. + + + Id w stron posterunku wojskowego obok fabryki Jupiter. + + + Do magazynu kontenerw. + + + Id w stron pewnego niepozornego miejsca pomidzy magazynem kontenerw i poudniowym tunelem. + + + Id na Janw. Wreszcie jest czas na odpoczynek. + + + Do tunelu na pnoc od Kopaczi. + + + Id do naprawd strasznego miejsca - do wioski Kopaczi... lub tego, co z niej zostao. Mam dodatkowy zapas amunicji i lekw przeciwpromiennych - na pewno bd mi potrzebne! + + + Do cementowni. To niezy punkt obserwacyjny, a na dodatek nikt si tam do ciebie nie podkradnie. + + + Do cementowni. Zamierzam sprawdzi piwnic. + + + Do podstacji niedaleko Janowa. + + + Id do miejsca w pobliu poudniowego tunelu kolejowego. + + + Id do stawu chodzcego w pobliu fabryki Jupiter. + + + Id do kompleksu przeciwlotniczego Wochow, zapolowa na zombi. + + + Do bunkra, no wiesz, tego w kompleksie przeciwlotniczym Wochow. + + + Do zagajnika anomalii w pobliu kamienioomu. Moe znajd tam jakie artefakty. + + + Id do kamienioomu, tam gdzie znajduj si baraki robotnikw. + + + Jest takie miejsce pomidzy kamienioomem i stacj Janw. Mam zamiar si tam przyczai przez jaki czas. + + + Id do wschodniego tunelu, tego, ktry biegnie pod fabryk Jupiter. + + + Do anomalii zwanej Bituminem. Sprawdz odporno mojego kombinezonu na ogie. + + + Id do anomalii zwanej Mokradem, eby poszuka artefaktw. Antidotum mam do - bardziej martwi si potworami. + + + Do kompleksu wentylacyjnego pomidzy fabryk i magazynem kontenerw. Po co? Ech, diabli wiedz. + + + Id do warsztatw fabryki Jupiter. Moe uda mi si odkry, dlaczego to miejsce ma tak paskudn reputacj. + + + Id na sam d kamienioomu. Stalkerzy mwi, e znajduj tam sporo artefaktw. + + + Na parking, gdzie stoj te stare pojazdy. Poszukam artefaktw w anomaliach elektrycznych. + + + Jest takie mae, przyjemne miejsce pomidzy kompleksem przeciwlotniczym Wochow i magazynem kontenerw. Tam wanie id. + + + Do bunkra naukowcw. + + + Do chodni kominowej na pnocny zachd od stacji Janw. + + + W stron fabryki Jupiter, ale nie zamierzam wchodzi do rodka. Pokrc si przy budynkach administracji i zobacz, co bdzie mona dalej zrobi. + + + Id do anomalii zwanej Popieliskiem, za Kopaczi. + + + Id do warsztatw fabryki Jupiter. Mwi, e w tych okolicach spad migowiec, wic myl sobie, e moe warto by to sprawdzi. + + + Id do tego zniszczonego pocigu pomidzy kompleksem przeciwlotniczym Wochow i parkingiem. + + + Id do poudniowego tunelu, eby si zabezpieczy na wypadek emisji. + + + Id w pewne miejsce pomidzy Janowem i Kopaczi. + + + Id w pewne miejsce niedaleko kanau, na poudnie od cementowni. + + + Id w pewne miejsce niedaleko kanau, na pnoc od fabryki Jupiter. + + + Id sprawdzi kamienioom. + + + Id sprawdzi kamienioom. + + + Id rozejrze si po okolicy na pnoc od Janowa. + + + W stron kompleksu przeciwlotniczego Wochow. Jest tam nieze miejsce na obz, pomidzy kompleksem i wiosk Kopaczi. + + + Och, podruj tylko... Id w stron magazynu kontenerw. + + + Badam okolic. Teraz zamierzam sprawdzi, co znajduje si na poudnie od posterunku wojskowego. + + + Na ldowisko dla helikopterw, to pomidzy fabryk i magazynem kontenerw. + + + Id w to miejsce na poudnie od stacji Janw, przy torach kolejowych. + + + W pewne miejsce na pnoc od stacji Janw. + + + Do zagajnika anomalii. + + + W pewne miejsce na poudnie od kompleksu przeciwlotniczego. + + + Do stawu chodzcego, zaraz obok anomalii zwanej Betonow Wann. + + + Id rozejrze si po okolicy wok fabryki. + + + Id rozejrze si po okolicy wok fabryki. + + + W stron placu za pralni samoobsugow. + + + Do pralni samoobsugowej. To najbezpieczniejsze miejsce w okolicy. + + + Do szpitala. Mam nadziej, e nie wpadn po drodze na tych szalecw z Monolitu... + + + Do ksigarni... Podobno wietnie si sprawdza jako kryjwka przed emisjami. + + + Id zobaczy lokaln atrakcj - pomnik przyjani narodw. To niedaleko ksigarni. + + + Do dawnego sklepu spoywczego. Nie dostaniesz tam teraz wieego chleba, ale to dobra kryjwka na wypadek emisji. + + + Do sklepu Bieriezka. + + + Do dawnego przedszkola. + + + Na plac przed kinem, w pobliu pomnika Prometeusza. + + + Id w stron budynku szkoy. Pono roi si tam od potworw, ale dobrze si sprawdzi na wypadek emisji. + + + Id w stron dawnego centrum usugowego. Podobno na parterze znajduje si anomalia, a moe te jakie artefakty. + + + Badam t cz miasta. Teraz id w stron dawnego sklepu spoywczego. + + + Badam t cz miasta. Teraz id w stron dawnego sklepu spoywczego. + + + Badam okolic. Teraz chc sprawdzi ten budynek za osiedlem. + + + Chc przeszuka centrum usugowe, nazywao si chyba Jubilejny. + + + Szukam anomalii w okolicy. Podobno na placu na zachd od przedszkola jest anomalia ogniowa. + + + Och, tak tylko zwiedzam miasto. Id teraz w stron osiedla. + + + Och, tak tylko zwiedzam miasto. Id teraz w stron osiedla. + + + Och, tak tylko zwiedzam miasto. Id teraz w stron osiedla. + + + Chodz sobie tu i tam. Teraz id w stron portu rzecznego. Mam nadziej, e nie wpadn na jakich szalecw z Monolitu... + + + Szukam w Prypeci miejsca z mnstwem artefaktw, ale bez potworw i wojownikw Monolitu... He, he... A na powanie, zamierzam sprawdzi pewn anomali, o ktrej syszaem, na poudnie od portu rzecznego. + + + W stron kina Prometeusz. + + + Na plac przed kinem, w pobliu pomnika Prometeusza. + + + Chc si przyczai przez jaki czas i zapa oddech. Jest do tego idealne miejsce na placu na pnoc od przedszkola. + + + Na poudnie od osiedla. + + + Id w pewne miejsce pomidzy przedszkolem i osiedlem. + + + Jest pewne miejsce, zwane Szram, gdzie ziemia wyglda, jakby kto j przeci siekier. Ludzie znajdowali tam artefakty, ale gdy si tam wejdzie, zaczynaj si dzia dziwne rzeczy. To co tak dziaa na mzg, e zapominasz, jak si oddycha, nie mwic ju o tym, eby si stamtd wydosta. + + + Wiesz, gdzie jest pogbiarka? Zostaa zniszczona przez anomalie grawitacyjne, ale dla dowiadczonego stalkera to nic wielkiego. Po prostu rzucaj rubami, jak zwykle. Peno tam te promieniowania, zarwno wewntrz, jak i na zewntrz - jak przy wielkim kawaku wzbogaconego uranu. + + + Jest tu stara podstacja, zwana te elaznym Lasem. Zrozumiesz dlaczego, jak j zobaczysz. Niektrzy twierdz, e po emisji znajdowali tam po kilka artefaktw. Nie jest tam a tak niebezpiecznie, gwnie anomalie elektryczne i troch promieniowania... Znajdzie si te kilka poltergeistw, ktre zasypi ci wszystkim, czym tylko si da, jeeli si w por nie schowasz. + + + Prac? Szczerze mwic, nie wiem. Ale jeli nadarzy ci si szansa, eby pomc Wolnoci, id do naszego szefa w Janowie. Skieruj si do poudniowego skrzyda i spotkaj si z Lokim - to on. Pamitaj, jeli wierzysz w postp rodzaju ludzkiego, wysz wiadomo i znaczenie darw Zony, dokonasz susznego wyboru. + + + Nie mam pojcia. Ale jeli znajdziesz co, co moe nam pomc w walce przeciwko Zonie i przeciwko tym, ktrzy uwaaj j za dar, a nie za przeklestwo, spotkaj si z dowdc jednostki ekspedycyjnej Powinnoci, podpukownikiem Szulg. On zarzdza stacj Janw. Znajdziesz go w pnocnym skrzydle. Jedno jest pewne - kady cywil, ktry przyczyni si do zwycistwa Powinnoci, zostanie naleycie nagrodzony. + + + Wszyscy gadaj o jakich dziwnych wydarzeniach w dawnej chodni kominowej. Jeli wczysz ogln czstotliwo, zapiesz fragmenty woania o pomoc, ktre brzmi jakby jaki biedak prbowa si wydosta z anomalii. Gdy zapytasz o wsprzdne, nikt nie odpowiada. Najdziwniejszy w tym wszystkim jest dwik. Taki rodzaj zakce ciko wytumaczy... + + + Id do pewnego miejsca w p drogi midzy Skadowskiem i Szewczenk. + + + Do fabryki Jupiter. Ale raczej nie bd wchodzi zbyt daleko do rodka. + + diff --git a/gamedata/configs/text/pol/st_dialogs.xml b/gamedata/configs/text/pol/st_dialogs.xml new file mode 100644 index 0000000..638b5f2 --- /dev/null +++ b/gamedata/configs/text/pol/st_dialogs.xml @@ -0,0 +1,978 @@ + + + + Mam do ciebie pytanie w jednej sprawie + + + Pytaj miao. + + + Co sdzisz o wawym? + + + O wawym? Sdz, e pewnego dnia dorwiemy go z towarem w jakim ustronnym miejscu i porzdnie temu zamasowi dooymy! + + + Syszae co na temat Oazy? + + + Syszaem raz przemieszn histori. Krtko mwic, chopaki na Wysypisku rozpucili plotk o lokalizacji Oazy - brzmiaa bardzo wiarygodnie. Potem poszli w to miejsce i zaczaili si. Co tu duo mwi, tylu frajerw przyszo podzieli si swoim towarem, e wielu z chopakw, ktrzy rozpucili plotk, niedugo pniej cakiem wynioso si z Zony. A czemu by nie? Ustawili si do koca ycia. Zosta tylko jeden z nich, niejaki Joga... + + + e jeli tam pjdziesz, znikn wszystkie twoje przypadoci... Odpowiadaoby mi co takiego - adnego kaca ani hemoroidw do koca ycia - to byoby co! Znajd j, za tam orodek wypoczynkowy i licz zarobion kas. + + + Czemu miabym cokolwiek o niej sysze? To tylko czcze gadanie dla frajerw... Prawdziwi faceci nie wierz w takie bzdury. Siedzisz sobie w barze z siwuch w doni, a nad gow krc ci si stalkerzy, dyskutujcy nad pooeniem Oazy. A kady z tych pajacw przysiga, e wie, gdzie ona jest... Tylko jako tak si skada, e kady mwi co innego. + + + Znasz stalkera, ktrego nazywaj Sroka? + + + Jasne, na pierwszy rzut oka wiedziaem, e to zupeny frajer, do tego usyszaem, jak stalkerzy mwi, e to te ostatnia kanalia... Ale nie mam pojcia, gdzie jest... Jeli go szukasz, musisz sam go znale. + + + Ni cholery... Pierwszy raz o nim sysz. + + + Wiesz, kto mg ukra zawarto osobistej skrytki? + + + Jaki szczur. Pogadaj z tymi, co rzdz w Janowie, oni s znani z owienia szczurw. + + + Kto moe pomc mi co rozszyfrowa? + + + Syszaem, e Azot w Janowie jest niezy. Podobno jak jeszcze nie pracowa dla Powinnoci, par razy hakowa stalkerskie PDA dla chopakw... Stare, dobre czasy. + + + Ja tam si nie znam na tych naukowych sprawach. Potrzebny ci do tego haker. Poznaem jednego w czasie odsiadki, ale innych nie znam. Jak wyszedem, jemu zostaa jeszcze pitka... + + + Mam PDA handlarza Powinnoci. Znasz kogo, kto byby nim zainteresowany? + + + Na Skadowsku jest handlarz Sowa. Chopaki od czasu do czasu sprzedaj mu stalkerskie PDA, niele paci. Poza tym nie zadaje zbyt wielu pyta, wic nie ma si o co martwi. + + + Waciwie kady. Zastanw si: kumple z frakcji bd chcieli go pogrzeba ywcem, inne frakcje narobi dymu, ale Sowa na Zatonie moe sprawi, e PDA przepadnie jak kamie w wod. Rzecz w tym, e tylko Sowa wie, gdzie pniej ten PDA wypynie... To twoja sprawa. + + + Gdzie tu znajd narzdzia? + + + Jeli potrzebujesz narzdzi chirurgicznych, szukaj w szpitalach i na pogotowiu. Jeli chodzi o narzdzia budowlane, zajrzyj do kamienioomw koo Jupitera. A jeli szukasz narzdzi lusarskich, przeszukaj stare warsztaty. + + + Skd mam do cholery wiedzie? Suchaj, ja od stalkerw i bez narzdzi wycigam fors... Spokojnie, tylko artuj. + + + Kto moe odblokowa modu pamici? + + + Dobre pytanie! Przecie si w tym specjalizuj, nie? Ha, ha! Z byka spade, kolego? Pewnie jaki technik albo naukowiec... Chyba ci si naprawd nie wydaje, e ja dubi w takich rzeczach? + + + Bd z tob szczery: ostatni raz odblokowaem modu pamici, jak byem w szkole, a tym moduem pamici bya dyskietka. Id do specw i im zawracaj gow. + + + Kto mgby si wama do stalowego kontenera? + + + Znasz Kardana ze Skadowska? Ktrego dnia si narba i zacz gania z omem jakiego pacana. Myl, e Kardan mgby uy tego omu do czego poyteczniejszego i wyway dla ciebie to i owo. + + + Majc odpowiednie narzdzia, nawet ja bym mg, ale kto zabiera ze sob sprzt do Zony? Odwied technikw, oni s dobrzy w te klocki. + + + Szukam stalkera Ska. Wiesz, gdzie go znale? + + + A kto to wie? Zapytaj Sutana na Skadowsku. Szef zwykle wie, gdzie si szwendaj wszyscy frajerzy. + + + Tak, syszaem o tym palancie. Zwykle krci si po Zatonie, wic tutaj go nie znajdziesz. + + + Wiesz co na temat rozbitych migowcw? + + + Kto moe by zainteresowany informacjami na temat zaoyciela Powinnoci? + + + Nie wiem, kto nie byby zainteresowany! Takie informacje to dynamit, kolego, wic najlepiej pogadaj z Sow na Skadowsku - co ci jeszcze za to wpadnie, a nie narobisz sobie wrogw. + + + Nie. Zastanw si, mam Powinno na lewo, Wolno na prawo i stalkerw na tyku - mam si jeszcze rozglda po niebie? + + + Chopcy mwili, e widzieli, jak jeden z nich wisi na kablach w elaznym Lesie, ale tam zobaczysz o wiele wicej... Na sto procent wpadniesz w jak anomali albo poltergeist rozbije ci czaszk. + + + Tak, paru chopakw widziao, jak jeden z nich rozbi si na paskowyu, ale problem w tym, e nie ma tam jak wej... Podobno lata tak dziwnie, jakby pilot by na prochach czy co. + + + Podobno jaki migowiec chcia udawa okrt podwodny i wlecia prosto w bagna. Jak mona sobie wyobrazi, zaraz zaliczy gleb. Zreszt woda te nie jest tam zbyt zdrowa - trucizny, chemikalia i tak dalej. + + + Widziae tu jakie wojsko? + + + Kto moe by zainteresowany mapami obszaru pomidzy Zatonem i Jupiterem? + + + Podejrzewam, e Pilot - jest gwnym przewodnikiem w tej okolicy. Przydayby mu si jakie mapy zamiast patrzenia na gwiazdy... + + + Syszaem od chopakw, e oddzia wojska zszed z poudniowego paskowyu do obozu najemnikw. Chopaki wyczuli, e bdzie zadyma, i wzili nogi za pas. + + + Syszaem, e armijne mendy prboway co wydosta ze swojego rozbitego migowca na bagnach. Wyobra sobie piciu onierzykw skaczcych po bagnie, eby sobie mundurkw nie zamoczy... Na pewno puszczali takie wichy, e zawstydziliby niejednego bandyt. + + + Jeden go opowiada mi, jak szed za stalkerem, eby go obrobi z upu, a tu nagle usysza strzay. Okazao si, e armia walczy z najemnikami. Schowa si i przeczeka strzelanin, ale stalker by ju wtedy daleko. Pecha mia chopina, co? + + + Kumpel opowiada mi, e widzia zabawn scen. Jest ta barka z wiatrakiem na dachu, obok niej Noe lata jak nakrcony machajc apami, a dziesiciu wojakw spieprza przed psem Noego. Mj kumpel zdrowo si umia i poszed sobie od tej szopki. + + + Nie, to niespokojne miejsce, peno tu nerwusw z naadowanymi strzelbami... Nie pali mi si do sprawdzania, ktrzy s z wojska, a ktrzy wykonuj misj dla Powinnoci. + + + Wiesz, jak si dosta do Prypeci? + + + Kogo mona wynaj do ochrony naukowcw? + + + Ha, zrobi to ja z chopakami! Damy im ochron, jakiej w yciu nie widzieli! Stalkerzy i mutanty bd zwiewa przed nami, gdzie pieprz ronie! Co tydzie odpalasz kas i jestemy do twojej dyspozycji. Nie zapomnij te o premii na wita! + + + Na piechot, kolego. Id w stron Jupitera i tam zadawaj swoje pytania, bo nie ma bezporedniej drogi z Zatonu do Prypeci i taka jest prawda. + + + Suchaj no, czy ja ci wygldam na jakiego przewodnika czy co? Mam na czole wytatuowane sowa Tutaj zadawa gupie pytania? Pogadaj z Pilotem, jemu pac za odpowiadanie na takie pytania. + + + Nie... Czego w ogle miabym tam szuka? Nie ma tam stalkerw do obrobienia! + + + Moesz zaproponowa kogo, kto nie jest zbyt zajty i chciaby ruszy do Prypeci? + + + Prype to nie miejsce dla prawdziwych mczyzn jak my. Pomyl tylko, peno tam mutantw i anomalii... jak w caej Zonie... ale nie ma stalkerw z ich dobytkiem. Jak stalkerzy poka si w Prypeci, daj zna, a ruszymy tam zachowa naturalny ad rzeczy. + + + Przykro mi, nie mam pojcia. + + + Znalazem dziwn bro. Znasz kogo, kto moe co o niej wiedzie? + + + Zapytaj technikw. W kocu od tego s, eby si na tym zna. + + + Nie mam pojcia, ale stalkerzy ze Skadowska uwaaj Kardana za jakiego technicznego geniusza. Pogadaj z nim, jeli chcesz... Moim zdaniem to tylko stary pijaczyna... + + + Kto moe wykona pomiary dla naukowcw? + + + Prosta sprawa - nasi chopcy to zrobi. Oni szk nie koczyli ani nic, ale mog pacjenta obmierzy z gry na d i w poprzek przez plecy, a wtedy tylko zbi par desek, do ziemi i gotowe! + + + Znalazem bardzo dziwny artefakt. Komu mog go sprzeda? + + + Dziwny artefakt, powiadasz? Poka no... Daj mi go, ebym mg si lepiej przyjrze... Spokojnie, kolego - artuj tylko, ale na twoim miejscu nie trzymabym go na widoku. Inni mog mie gorsze poczucie humoru. + + + Odwany, e tak tu wiecisz po oczach tym artefaktem. Twardziel z ciebie. Dobra, suchaj: powiniene z tym i do Brodacza w Skadowsku. Nie dowiedzielimy si jeszcze, jak przemyca artefakty poza Zon, wic masz szans sprzeda mu swj. + + + Znalazem niedaleko legowisko pijawek. Co robi? + + + A niby co? Bierz nogi za pas! + + + Dobra, niewane. + + + Suchaj, mam tak spraw + + + Wal miao. + + + Co sdzisz o wawym? + + + O wawym? Nigdy o nim nie syszaem. Moe jest w innym oddziale? + + + Syszae co na temat Oazy? + + + To bajeczka dla stalkerw. Tacy oni wanie s: wymylaj niestworzon bzdur, potem si zbieraj i id jej szuka! Na twoim miejscu dabym sobie z tym spokj, bo jak uwierzysz w to, to niedugo zaczniesz wierzy w istnienie Speniacza ycze. + + + Chodzi o to miejsce, gdzie rany same si lecz i magicznie odzyskujesz siy? Mam dla ciebie nowin, koleko: Oaza nie istnieje. Stalkerzy wymylaj takie brednie, eby oswoi si z Zon, ale gorzka prawda jest taka, e w Zonie nie ma bezpiecznych miejsc. Tutaj trzeba mocno sta nogami na ziemi - marzyciele nie wytrzymuj w Zonie zbyt dugo. + + + Aha, wszystkie artefakty stamtd s warte tyle co zoto i przynosz ci je na srebrnym pmisku, a pikne panie w tym czasie robi ci masa stp... Jaja sobie robi. Wtpi, by istniaa, chocia byoby mio. Moglibymy nawet zaoy tam szpital bez lekarzy - ludzie by przychodzili i sami zdrowieli... Ale to tylko bajeczka. + + + Znasz stalkera, ktrego nazywaj Sroka? + + + Ciko mi zapamita wszystkich ludzi z Powinnoci, a ty mnie pytasz o stalkerw? Maj swoj baz na Skadowsku - tam pytaj. + + + Nie znam takiego. + + + Wiesz, kto mg ukra zawarto osobistej skrytki? + + + No adnie! Co takiego nie zdarzyoby si w bazie Powinnoci, ale tutaj peno jest tych mtw z Wolnoci - wrd nich bym szuka. + + + Kto moe pomc mi co rozszyfrowa? + + + Na stacji Janw jest pewien technik, Azot. Ma smykak do elektroniki. Jak raz zapomniaem haso do PDA, to zama go w pi sekund! + + + Musisz i do Janowa. Szukaj tam Azota, jest dobry w te klocki. + + + Mam PDA handlarza Powinnoci. Znasz kogo, kto byby nim zainteresowany? + + + Handlarz w Powinnoci? Nie moe by! Ale jeli masz jakie informacje, przeka je podpukownikowi Szuldze i niech on si tym martwi. + + + Gdzie tu znajd narzdzia? + + + Niedaleko jest caa fabryka. Oczywicie, pewnie ju j cakiem rozszabrowali, ale na twoim miejscu sprawdzibym w tamtejszych magazynach. + + + Na twoim miejscu poszukabym w starych warsztatach. Moe te znajdziesz co w sklepach. + + + Tutaj znajdziesz tylko mutantw i anomalie. Ha! W anomaliach lepiej nie szuka, a burery i kontrolerzy te nie pomog ci w szukaniu. + + + Gdzie tu pod mostem stoi skad. Widziaem ju takie - czsto wo nimi personel techniczny. A gdzie technicy, tam i narzdzia. + + + Kto moe odblokowa modu pamici? + + + Azot - to jedyna osoba na stacji Janw, ktra si na tym zna. + + + Id z tym do technika. Jedynym przyzwoitym technikiem w okolicy jest Azot w Janowie. + + + Kto mgby si wama do stalowego kontenera? + + + Podobno wrd stalkerw jest jaki technik. To moczymorda, ale zna si na robocie. Pogadaj z nim. + + + Ha, jeszcze sejf chcesz na plecach nosi. Gdyby mia elektroniczny zamek, Azot mgby ci z nim pomc. + + + Szukam stalkera Ska. Wiesz, gdzie go znale? + + + Popytaj stalkerw - znaj si midzy sob. Nigdy nie syszaem o adnym Sku czy jak mu tam. + + + Wiesz co na temat rozbitych migowcw? + + + Kto moe by zainteresowany informacjami na temat zaoyciela Powinnoci? + + + Nasz dowdca, naturalnie. Przeka Szuldze wszystko, co wiesz, a Powinno na pewno bdzie ci wdziczna. + + + Tak, nasi zwiadowcy widzieli, jak wojskowy migowiec schodzi do ldowania na rezerwowych ldowiskach przy Jupiterze. Dawali mu znaki, eby zmieni kurs, ale piloci mieli chyba inne zmartwienia. Ciekawe, czy wojakom udao si wydosta w jednym kawaku z pola minowego. + + + W tej okolicy - nie. Nasza obecno jest tu ograniczona... Popytaj naszych chopakw koo Janowa. + + + Nasz patrol zgosi, e wojskowy migowiec prbowa ldowa awaryjnie koo fabryki Jupiter. Niestety, migowiec rozbi si na dachu hal fabrycznych. Raczej nikt nie przey - patrol nie odebra po wypadku adnych sygnaw alarmowych. + + + Widziae tu jakie wojsko? + + + Kto moe by zainteresowany mapami obszaru pomidzy Zatonem i Jupiterem? + + + Kto, kto miaby z nich jaki uytek. Mam na myli Pilota - jest przewodnikiem na trasie pomidzy Janowem i Skadowskiem, wic te mapy na pewno by mu si przyday. + + + Wojsko? Nie widziaem tu adnego, ale my tu rzadko bywamy. + + + Niedawno kto widzia zwoki onierza na polu minowym. To pewnie jeden z tych, ktrzy lecieli tym migowcem. Oprcz zaogi w migowcu mieci si osiem osb, wic musieli si jako wydosta, ale nikt nie wie, gdzie si podziali. + + + W bunkrze uczonych pojawi si niedawno jaki onierz. Ale nic wicej nie wiem. + + + Niedawno widziano, jak czowiek w wojskowym mundurze wchodzi do budynku przy kompleksie obrony przeciwlotniczej Wochow. Moliwe te, e kto wzi zombi za onierza. + + + Stalkerzy widzieli oddzia wojska koo fabryki Jupiter. Sdzc z opisu, byy to siy specjalne. Towarzyszy im niezidentyfikowany stalker. Kierowali si w stron Prypeci. Opis brzmia wiarygodnie, ale z dowiadczenia wiem, e takim informacjom zwykle nie mona ufa. + + + Wiesz, jak si dosta do Prypeci? + + + Kogo mona wynaj do ochrony naukowcw? + + + Nikt im nie da lepszej ochrony ni Powinno. Porozmawiaj z podpukownikiem Szulg w Janowie - na pewno si dogadacie. + + + Dopki pracuj dla nich ludzie Wolnoci, trzymamy si stamtd z dala. Suchanie cay dzie przygupich dowcipw tej bandy debili jest gorsze ni mier. + + + Powinno nie ma w tej chwili powodu, eby szuka drogi do Prypeci, ale na wszelki wypadek zbieramy informacje. Dotary do nas niepotwierdzone raporty, e tunele pod fabryk Jupiter prowadz do Prypeci. eby to sprawdzi, trzeba by dokadnie przeszuka cay obszar fabryki. + + + Nie. Takie informacje moesz uzyska od cywilnych przewodnikw - nasi zwiadowcy i tak maj co robi. + + + Nasi zwiadowcy regularnie poszukuj bezpiecznych cieek do Prypeci, ale na razie bez rezultatu. + + + Moesz zaproponowa kogo, kto nie jest zbyt zajty i chciaby ruszy do Prypeci? + + + Obecno Powinnoci na tym terenie jest ograniczona. Porozmawiaj z naszymi ludmi w Janowie. + + + Podobno jaki onierz siedzi u naukowcw w bunkrze. Nie ma za bardzo innego wyjcia. Naukowcy maj program badawczy na rok-ptora, a on sam nie dotrze na piechot do obrzey Zony. Dlatego myl, e mgby by zainteresowany. + + + Sprbuj znale jakiego poszukiwacza przygd. Na przykad na stacji Janw jest stalker Wano. Jemu wszystko jedno, w jaki bajzel wdepnie, a moe si do czego przyda. Potrafi omija anomalie nawet z zamknitymi oczami. + + + Moesz zacz kampani werbunkow w psychuszce... Ale jest te inny dobry sposb - onierze Monolitu. A wanie, ich oddzia widziano niedaleko stanowiska przeciwlotniczego. Drog do Prypeci te pewnie znaj... Suchaj, mam nadziej, e nie bierzesz tego na powanie... + + + Szukaj ochotnikw w Powinnoci. Na przykad taki Wczga. Nie dosta jeszcze przydziau, wic podpukownik moe puci go z tob. + + + Wszyscy wiedz, e najlepsi bojownicy s w Powinnoci... Ale w tej chwili mamy inne zadania. + + + Znalazem dziwn bro. Znasz kogo, kto moe co o niej wiedzie? + + + A niech mnie! Co za rusznica! Sam j zrobie czy naprawd j znalaze? Nigdy czego takiego nie widziaem... Zapytaj technikw. + + + Kto moe wykona pomiary dla naukowcw? + + + Gupie pytanie - oczywicie, e Powinno. Mamy wielu dowiadczonych ludzi i pracowalimy ju z naukowcami. Porozmawiaj z podpukownikiem Szulg. Na pewno wybierze oddzia do tego zadania. + + + Kto by chcia tam pracowa, skoro bunkier jest ochraniany przez Wolno? Ci chromoleni pacyfici przez wikszo czasu s tak napani, e mog zacz strzela do siebie zamiast do przeciwnika. + + + Znalazem bardzo dziwny artefakt. Komu mog go sprzeda? + + + Wszystkie artefakty s dziwne, a w ogle nie radz ci nosi go przy sobie. Przeka go ekspertom i miej to z gowy. + + + Powiniene pokaza go stalkerom - oni s ekspertami od takich rzeczy. A jeszcze lepiej bdzie, jak pokaesz go osobie, ktrej oni sprzedaj artefakty. + + + Znalazem niedaleko legowisko pijawek. Co robi? + + + Oddziay Powinnoci nie prowadz teraz operacji oczyszczania na tym obszarze, wic legowisko musi poczeka. + + + Dobra, niewane. + + + Mam do ciebie pytanie w jednej sprawie + + + Strzelaj. + + + Co sdzisz o wawym? + + + Nie syszaem o nim zbyt wiele... Najlepiej popytaj wrd stalkerw, to chyba jeden z nich? + + + Syszae co na temat Oazy? + + + Od cholery... Musz przyzna, to adna historyjka. Paac wrd piasku, wyspa we mgle, zamek sigajcy nieba... Szambala, Eden... Oaza. Wszyscy wolni ludzie o czym marz i czy mona ich za to wini? + + + Syszaem interesujc histori od jednego stalkera. On chyba jako pierwszy wspomnia o Oazie. Powiedzia, e wedug legendy wszystkie lecz si tam wszystkie rany i stajesz si spokojny i wyluzowany, jakby wcale nie by w Zonie. Od tego czasu go nie widziaem... Dopiero jak znikn, przypomniaem sobie, e wczeniej kula, a kiedy odszed, chodzi prosto i wyglda o wiele modziej. + + + Tak, wolni stalkerzy podali mi wsprzdne... Dziesi razy, a za kadym razem inne. Jak si je zoy do kupy, powstaje obszar od Zwglacza do CEJ, a bar w Janowie jest gdzie porodku. Cakiem moliwe, e w tej chwili jestemy w Oazie, wic korzystaj z tego! + + + Znasz stalkera, ktrego nazywaj Sroka? + + + Nie. Nie znam tu zbyt wielu wolnych stalkerw. + + + Sroka? Nie, ale fajnie si nazywa. + + + Wiesz, kto mg ukra zawarto osobistej skrytki? + + + Nie... Tutaj takich nie ma. Zdarzaj si tacy, co podgryz ci chleb albo pocign z twojej manierki, jak nie patrzysz, ale nie zodzieje. + + + Kto moe pomc mi co odszyfrowa? + + + Syszaem, e Azot w Janowie lubi szyfry i algorytmy. Ale nie jestem pewny, nigdy z nim nie rozmawiaem - pracuje dla Powinnoci, wic dla nas, wolnych ludzi, nie ma czasu. + + + Nie jestem specem od miejscowych specw... Popytaj chopakw w Janowie, jak tam bdziesz - oni na pewno bd wiedzie. + + + Mam PDA handlarza Powinnoci. Znasz kogo, kto byby nim zainteresowany? + + + Brzmi ciekawie! Dabym go Lokiemu, naszemu przywdcy w Janowie. On ju si postara, eby wolni stalkerzy si dowiedzieli, jakich ludzi rekrutuje Powinno. + + + Gdzie tu znajd narzdzia? + + + W fabryce, gdzieby indziej? To niebezpieczne miejsce, ale w magazynach znajdziesz pocieszenie. W nich jest troch spokojniej i na pewno znajdziesz tam jakie przyzwoite narzdzia. + + + Dobre pytanie. Zastanwmy si. Gdzie mona znale narzdzia poza Zon? Jeli nie masz dwch lewych rk, kupisz je w sklepie... W innym przypadku idziesz szuka narzdzi i naprostowa rce w jakim warsztacie. Zgadza si? W Zonie jest tak samo - musisz szuka w tych samych miejscach. To takie proste, stalkerze! + + + Narzdzia? Suchaj no, czy to jaki szyfr? Nie ma tu glin ani niczego takiego, moesz mwi otwarcie... A, ty tak powanie? W takim razie naprawd nie wiem. + + + Syszaem, e jeden z naszych szuka narzdzi i trafi do pocigu stojcego pod mostem. Najwyraniej jest tam Tesla... W kadym razie nie jest zbyt mio. Czemu ci to mwi? Powiedzia, e widzia tam narzdzia, ale nie bra ich, bo nie byo bezpiecznie. + + + Kto moe odblokowa modu pamici? + + + Nowikow w bunkrze naukowcw si to tego nadaje. Jest szybki, doby i uprzejmy. Jest te Azot w Janowie, on wsppracuje z Powinnoci. Jest tani i do dupy, ale powinien da sobie rad. + + + Pewnie jaki zdolny technik. Tutejszy zna si lepiej na mechanice, wic o ile nie chcesz przegwintowa lufy swojego moduu pamici, popytaj w okolicach Jupitera. + + + Kto mgby si wama do stalowego kontenera? + + + Niedawno kto mi poleca Kardana ze Skadowska. Podobno zna si na robocie, chocia prawie cigle jest pijany. Moe on ci pomoe w otwarciu tego pojemnika. + + + Kady kto zarabia na ycie otwieraniem stalowych kontenerw? Ale Azot, miejscowy technik, si nie nada. Podobno bardziej interesuje go wamywanie si do elektroniki. + + + Szukam stalkera Ska. Wiesz, gdzie go znale? + + + Nigdy o nim nie syszaem... Popytaj innych wolnych stalkerw. + + + Wiesz co na temat rozbitych migowcw? + + + Kto moe by zainteresowany informacjami na temat zaoyciela Powinnoci? + + + Na pewno Loki. To nasz przywdca w Janowie. Nawet jeli nie bdzie wiedzia, co zrobi z tymi informacjami - najwaniejsze, eby Powinno nie pooya na nich ap. Wyobraasz sobie, ile powstanie z tego bzdurnej propagandy? A mnie gowa boli na myl o tym. + + + Tak, syszae histori o migowcu na polu minowym? Krtko mwic, wojacy rozbili si na rezerwowym ldowisku, ktre inni wojacy zaminowali sze lat temu. Niektrzy mwi, e wyldowali tam z gupoty, ale moim zdaniem jest w tym co wicej. Popatrz: nikt si tam nie zapuci, wic jak onierze skocz swoj misj, mog wrci do migowca, troch go poata i fru do domu. Strasznie mnie ciekawi, co to za misja... + + + Nie jestem std, wic gwno wiem. Wpadnij do naszych w Janowie - powiedz ci wszystko, co chcesz wiedzie, a nawet wszystko, czego nie chcesz. + + + Tak, chopaki widzieli ostatnio migowiec latajcy jak szalony. Wyldowa te nie najlepiej - na jednym z dachw Jupitera. Mwili, e waln w dach i spad do rodka budynku, cignc za sob kup rnego miecia. + + + Widziae tu jakie wojsko? + + + Kto moe by zainteresowany mapami obszaru pomidzy Zatonem i Jupiterem? + + + Na pewno Pilot. On tu jest gwnym przewodnikiem wolnych stalkerw - jeli chcesz rozmawia o mapach, id do niego. + + + Spokojnie, kolego. Nie ma tu glin, wojska ani adnej stray obywatelskiej. A my jestemy pokojowo nastawieni - bez powodu nie bdziemy do ciebie strzela. + + + Nie, ale paru chopakw mwio mi, e widzieli, jak oddzia armii przedziera si przez pole minowe przy ldowiskach migowcw. Chopaki zastanawiali si, czy im nie pomc, ale im przeszo. Z wojakami nigdy nie wiadomo, czy co im nie odwali i nie strzel ci w plecy. + + + Sam nie widziaem, ale podobno jaki wojak siedzi w bunkrze naukowcw. Oziorski, ten biolog, mwi, e chopak by w tym migowcu, ktry rozbi si w fabryce... Kry dowcip, e jajogowi przygarnli zwierztko z armii. + + + Osobicie nie, ale syszaem co nieco od wolnych stalkerw. Podobno widziano wojaka przy kompleksie przeciwlotniczym Wochow. Pewnie to jaki duch albo przebudzony zombi... Jak sdzisz? + + + Nie. By taki jeden, co mwi, e widzia, jak siedmiu onierzy szo za wolnym stalkerem w kierunku Prypeci. Trawy od dawna u nas nie ma, wic musiao mu si pomiesza w gowie i tyle. + + + Wiesz, jak si dosta do Prypeci? + + + Kogo mona wynaj do ochrony naukowcw? + + + Wolno, czyli nas. Cay czas wsppracujemy z naukowcami, wic danie im ochrony to dla nas pestka. Pogadaj z naszym szefem Lokim w Janowie - na pewno si zgodzi. + + + Waciwie nie wiem, bo syszaem, e jajogowi wynajli oddzia Powinnoci... Z chci ochranialibymy naukowcw, ale trudno by wytrzyma patrzenie cay dzie na kamienne twarze ludzi z Powinnoci. + + + Podobno mona si tam dosta z Jupitera... To znaczy, z fabryki, nie z planety... Ha, ha! Niezy art, co? + + + Wiesz, nie mam pojcia. Nie mam czasu si tam wybra... Sprbuj zapyta Pilota w obozie. To wolny stalker i zna teren jak nikt inny. + + + Brachu, gdybym wiedzia, dawno bym si tam wybra. Dobrze byoby oderwa si od Powinnoci, wojakw i caej tej walki... + + + Moesz zaproponowa kogo, kto nie jest zbyt zajty i chciaby ruszy do Prypeci? + + + Przykro mi, nie znam nikogo na Zatonie... Dam ci rad, popytaj naszych chopakw w Janowie. + + + Kojarzysz bunkier naukowcw? Maj tam kiepsk sytuacj. Najpierw Garri, wolny stalker, postanowi ruszy do Prypeci, a teraz ichni onierz wpad na ten sam pomys. Garri to zatwardziay samotnik, ale ten wojak bdzie dla ciebie w sam raz. + + + Wano w Janowie si do tego nada. Przyzwoity z niego go i gdyby chcia, w kadej chwili mgby wstpi do Wolnoci. Ale chyba nie podoba mu si nasza walka z Powinnoci... ani w ogle adna walka. Taki ma punkt widzenia i my to szanujemy! + + + Jasne. Jeden z naszych natkn si przy wyschnitym jeziorze na oddzia, ktry bdzie ci idealnie pasowa. Na pewno znaj Prype jak wasn do i dla nikogo nie pracuj. Musz by te odwani, bo to bojownicy Monolitu! + + + Owszem. Wczg, przywdc naszych nowych rekrutw... W naszych szeregach niezbyt mu dobrze. Jego ludzie si dostosowali, ale on nie jest tu zbyt szczliwy... Porozmawiaj z nim - nie lubi, kiedy dobry czowiek robi co wbrew swemu sercu... + + + Nie, nie mam pojcia. + + + Znalazem dziwn bro. Znasz kogo, kto moe co o niej wiedzie? + + + Nie byo przy niej instrukcji? No to nie mam pojcia. + + + Kto moe wykona pomiary dla naukowcw? + + + Nasi chopcy nadaliby si do tego. W Wolnoci nie brakuje bystrych gw, a jak czego nie bdziemy wiedzie, zapytamy w bunkrze. Bardzo chcielibymy przysuy si nauce! Porozmawiaj z Lokim w Janowie - na pewno to potwierdzi. + + + Z chci bymy to zrobili z chopakami, ale bunkra naukowcw pilnuje ostatnio Powinno. Wpadanie do naukowcw z wizyt i tak jest ju problemem, a siedzenie tam caymi dniami na pewno nie odbioby si dobrze na naszym zdrowiu. + + + Znalazem bardzo dziwny artefakt. Komu mog go sprzeda? + + + Musisz znale kolekcjonera. W Janowie takiego nie ma, bo nawet niektrzy stalkerzy boj si tu przychodzi. Najlepiej zapytaj na Zatonie, tam jest troch spokojniej. + + + Znasz Brodacza, barmana w obozie wolnych stalkerw? Skupuje artefakty, a paci te nie najgorzej. Jak by nie patrze, miy go. Szkoda, e nie pracuje dla nas. + + + Znalazem niedaleko legowisko pijawek. Co robi? + + + Musisz ostrzec wolnych stalkerw - przecie maj tu niedaleko swj gwny obz. Fauna Zony jest na pewno wana, ale bardziej przejmuj si tutaj ludmi. + + + Dobra, niewane. + + + Suchaj, mam tak spraw + + + Pytaj miao. + + + Co sdzisz o wawym? + + + Nie miaem przyjemnoci... Popytaj staych bywalcw na Skadowsku. + + + Syszae co na temat Oazy? + + + Czego ja nie syszaem na temat Oazy! To legenda, mit... Kady stalker spodziewa si po niej czego innego i kady co do jednego twierdzi, e zna jej dokadne pooenie. Szkoda tylko, e wszystkie te miejsca maj jedn cech wspln - cholernie ciko do nich dotrze. + + + Podobno natychmiast lecz si tam rany i w oczach odzyskujesz siy... Mwi, e w Oazie adna choroba nie ma szans, nawet choroba popromienna! Jedno tylko wiem na pewno - wiem, gdzie si znajduje... Chcesz wiedzie? Jest w samym rodku Zony! Ale zachowajmy to midzy nami, ani swka nikomu! + + + Podobno jeli napotkasz tam mutanta, w ogle si tob nie zainteresuje. Mwi te, e jest tam artefakt nazywany Sercem Oazy... Nikt nie wie, jakie ma dziaanie, ale jedno jest pewne - nie naley go dotyka. Nie ma w Zonie miejsca dla tego, kto go zabierze... Pytasz, gdzie ta Oaza? Wszyscy wiedz, e w Prypeci pod diabelskim mynem! Gdzie niby miaaby by? + + + Znasz stalkera, ktrego nazywaj Sroka? + + + Jasne... Ale nie mam pojcia, co teraz porabia. + + + Hm... Nigdy o nim nie syszaem. + + + Wiesz, kto mg ukra zawarto osobistej skrytki? + + + Nie mam pojcia. Popytaj starszyzn w Janowie, moe oni ci pomog. + + + Kto moe pomc mi co rozszyfrowa? + + + Azot w Janowie, ktby inny? Uwielbia grzebanie w technicznych pierdkach... Duo bardziej ni dubanie w broni. + + + Nikt, kogo znam. Zapytaj w Janowie - maj tam jakiego speca. + + + Mam PDA handlarza Powinnoci. Znasz kogo, kto byby nim zainteresowany? + + + Znasz Sow ze Skadowska? On powinien by tym zainteresowany. Lubi miesza si w delikatne sprawy... + + + Na Skadowsku na Zatonie by niejaki Sowa. On handluje informacjami... Twj PDA moe go zainteresowa. + + + Gdzie tu znajd narzdzia? + + + Jeden stalker mwi mi, e jego stary pracowa w warsztatach podstacji przed '86. Mwi, e mieli tam najrniejszy sprzt, wic chyba i narzdzia. Teraz ju pewnie wszystko w choler zardzewiao, ale moe warto tam zajrze. + + + Znasz tartak w lesie na wzgrzu? Powinny by tam jakie narzdzia, chyba e kto si ju na nie poakomi. Ale wtpi. Im bliej tartaku podejdziesz, tym wiksz masz ochot narobi w portki i zwia, gdzie pieprz ronie. I to nawet nie chodzi o promieniowanie... + + + Jest tu fabryka Jupiter, tam na pewno s jakie narzdzia. Ale lepiej si do samej fabryki nie zblia... Strasznie tam jest. Moesz za to zajrze do magazynw Jupitera z boku fabryki. + + + Syszaem, e w Prypeci jest kilka miejsc, w ktrych mona znale najrniejszy techniczny szajs. Jedno z nich to stary radziecki dom handlowy. Dawniej tylko tam mona byo kupi cokolwiek przydatnego. + + + Skd mam wiedzie? Szukaj w starych warsztatach i sklepach, tam moe by co uytecznego. + + + Szczerze mwic, porzdne narzdzia ostatni raz widziaem w bunkrze Sidorowicza w Kordonie. Jasne, trzeba za nie zapaci, ale s nowe i wcale nie takie drogie. + + + Wiesz, kolego, nie przyszedem do Zony szuka narzdzi. Ile poytku bdziesz mia z napromieniowanego motka? + + + Syszaem plotk, e mona co nieco znale w starym centrum usugowym... Moe znajdziesz tam te narzdzia. Ale zasada jest taka jak wszdzie - kto pierwszy, ten lepszy. + + + Dobre pytanie... Na twoim miejscu sprawdzibym w starym pocigu pod mostem. Nie pytaj dlaczego... Przeczucie mwi mi, e moesz tam co znale. + + + Kto moe odblokowa modu pamici? + + + Niech pomyl... Na pewno Azot w Janowie da rad. Oprcz niego jest jeszcze Nowikow, technik naukowcw, prawdziwy fachura. Ale zastanw si, na czym ci zaley, bo Azot jest duo taszy. + + + Potrzebny ci bdzie technik, a jedyny, ktrego tu znam to Kardan. Problem w tym, e po tylu latach zagldania w kieliszek nie najlepiej radzi sobie ze zoon elektronik. Na twoim miejscu popytabym w okolicach Jupitera - maj tam prawdziwych fachowcw. + + + Kto mgby si wama do stalowego kontenera? + + + Moe Kardan ze Skadowska. A mio patrze, jak przecina kdki. + + + Chyba jaki technik. Ale Azot raczej tego nie zrobi - nie lubi siowej roboty. + + + Pytasz o to w Prypeci?! Posuchaj mojej rady i poszukaj kogo dalej od centrum Zony. + + + Szukam stalkera Ska. Wiesz, gdzie go znale? + + + Zapytaj Brodacza, barmana na Skadowsku. On zwykle wie, gdzie znale stalkerw. + + + Ska? Skd mam wiedzie, do diaba? Zapytaj na Zatonie, czsto si tam krci. + + + Wiesz co na temat rozbitych migowcw? + + + Kto moe by zainteresowany informacjami na temat zaoyciela Powinnoci? + + + Pogadaj z Sow, handlarzem informacji ze Skadowska. Zao si, e bdzie zainteresowany wiarygodnymi informacjami na temat takiej legendy. + + + Sam jeden widziaem... Nie wyglda, jakby si rozbi, ale zbyt prosto te nie lata. Buja si na boki, a w kocu wyldowa na paskowyu na poudnie od Zatonu... Ciekawe, czy kto przey... Gdyby tylko byo jak tam wej. Syszaem, e Noe z wariackiej barki moe wiedzie... + + + Syszaem, e niedaleko std rozbio si par migowcw... Ludzie mwi rne rzeczy, ale jedno pamitam dobrze. Mwili, e wyldowa na rezerwowym ldowisku, ktre sami wojacy zaminowali par lat temu. Dasz gow, co za ironia? Mj stary mawia Kto pod kim doki kopie, ten sam w nie wpada". Szczera prawda, nie? + + + Kumpel opowiedzia mi tak histori... Poszed do elaznego Lasu szuka artefaktw i jak tylko tam doszed, usysza za sob wielki huk. Odwrci si i zobaczy, e prosto na niego leci migowiec, cinajc po drodze supy energetyczne. Kole wia, a si za nim kurzyo... A dziw bierze, e nie wpad po drodze w adn anomali. elazny Las nietrudno znale - wida go z daleka. Roi si w nim od cholernych poltergeistw, wic musisz mie oczy dookoa gowy. + + + Podobno jeden wyldowa na poudniowym paskowyu, ale ciko bdzie si tam dosta. Syszaem te, e kto widzia Noego na krawdzi tego paskowyu, co oznacza, e ten wariat wie, jak tam wej. + + + Sam adnego nie widziaem, ale kry plotka, e jeden rozbi si w fabryce... Nikt nie chce tego sprawdzi - jest tam zbyt niebezpiecznie. + + + Pewien stalker opowiada mi, e widzia kilka wojskowych migowcw w kiepskiej sytuacji... Jeden spad z poncym silnikiem na bagno pene anomalii. Dosta si tam atwo, ale samo bagno to istny koszmar... To nie miejsce dla ludzi, moesz mi wierzy. + + + Widziae tu jakie wojsko? + + + Kto moe by zainteresowany mapami obszaru pomidzy Zatonem i Jupiterem? + + + Pilot, ktby inny? To przewodnik. Cigle kry pomidzy Skadowskiem i Janowem, wic na pewno przydadz mu si twoje mapy. + + + To nie Zaton ani Jupiter, wic te mapy s tu bezuyteczne. Popytaj w ktrym z tych miejsc, a moe bardziej ci si poszczci! + + + Sam nic nie widziaem, ale syszaem histori o onierzach schodzcych z poudniowego paskowyu po stronie oczyszczalni ciekw. Podobno na pocztku prbowali schodzi jak naley, za pomoc lin i caej reszty. Potem dali sobie spokj i zjechali na dupach! Bobsleje w Zonie - rewelacja! + + + Syszaem na Skadowsku rozmow, e kto widzia, jak pitka onierzy wychodzi z kanau ciekowego koo bagna. Mwili e onierze byli piekielnie umorusani, a jednego z nich nie odrniby od bagiennej pijawki, bo by pokryty szlamem od stp do gw. + + + Osobicie nie, ale mj kumpel widzia, jak oddzia onierzy atakuje grup najemnikw koo oczyszczalni. Zanim znalaz dobry punkt widokowy, byo ju po zabawie, bo wojacy si wycofali. Po obu stronach nie byo adnych ofiar... Typowe, co? + + + Podobno jakich dziesiciu onierzy widziano koo barki Noego. Skoro ten wariat przey to spotkanie, musia si z nimi jako dogada... jak to on. Oczywicie, nikt nie pyta Noego, co si stao - nigdy nie wiadomo, czego si spodziewa po tym rbnitym sukinsynu. + + + Syszaem w nocy wybuch, a potem kto w Janowie powiedzia mi, e widzia martwego onierza na starym polu minowym i porzucony armijny helikopter za nim. Wyglda na to, e po ciemku nie widzieli, gdzie lduj, i wlecieli prosto na miny. Nikt nie wie, ilu si stamtd wydostao, ale wtpi, eby tamten przylecia sam tym helikopterem. + + + Nie widziaem adnych onierzy... ale syszaem pogoski, e jaki wojak krci si u naukowcw. Podobno znalaz go stalker Garri, jak poszed szuka swoich kumpli na stanowisku rakietowym. Tam roi si od zombi, ktre nie s zbyt przyjazne dla zbkanych ludzi, wic Garri waciwie uratowa go od pewnej mierci. + + + Nie, ale syszaem, e widziano onierza przy kompleksie przeciwlotniczym Wochow. Tak naprawd w to nie wierz... Moe to kamstwo, a moe kto nie potrafi odrni onierza od zombi. + + + Wojsko? Syszaem, jak ludzie mwili, e cay oddzia onierzy prowadzony przez stalkera przeszed obok fabryki Jupiter, ale nie zwracaem wikszej uwagi na te plotki. + + + Wiesz, jak si dosta do Prypeci? + + + Kogo mona wynaj do ochrony naukowcw? + + + Znasz Spartakusa i jego oddzia? Wiesz, tych stalkerw z Zatonu? Dobrzy z nich ludzie, walcz te cakiem niele - nieraz rnym bykom dawali odpr. Czuj, e odpowiadaoby im pilnowanie naukowcw. + + + Spotkae oddzia Tasaka koo warsztatw podstacji na Zatonie? S z nimi problemy, jak ze wszystkimi najemnikami, ale ci przynajmniej najpierw zadaj pytania, a dopiero potem strzelaj. Jeli si z nimi dogadasz co do tej roboty, naukowcy si uciesz, a i stalkerzy troch odetchn. Wszyscy bd zadowoleni. + + + Eee... Nic mi nie przychodzi do gowy... Przykro mi. + + + Wiem na pewno, e nie mona si tam dosta z Zatonu. Wszyscy, ktrych pilio do Prypeci, szli w kierunku Jupitera, wic popytaj w tamtych okolicach. + + + Kr plotki, e pod fabryk Jupiter s ukryte tunele prowadzce do Prypeci... Rzecz w tym, e takie plotki zwykle wychodz na jaw po drugiej kolejce, a do tego Jupiter to taki koszmar, e nikt nie odway si tam podej. + + + Skd mam wiedzie, brachu? Nie masz prostszych pyta? Mog tylko powiedzie, e powiniene znale Pilota i z nim pogada - jeli kto moe ci pomc, to na pewno on. + + + Gdybym zna drog do Prypeci, nie byoby mnie tu. Jak mylisz, czemu poszedem w stron centrum Zony? Prype jest pena artefaktw, bracie! Kto dotrze tam pierwszy, bdzie y jak krl! + + + Moesz zaproponowa kogo, kto nie jest zbyt zajty i chciaby ruszy do Prypeci? + + + Nie sdz, eby by tu kto taki. Wszyscy, ktrzy chcieli by bliej centrum Zony, poszli do Jupitera. Na twoim miejscu tam bym popyta. + + + Syszae o onierzu, ktry siedzi teraz u naukowcw? On nie miaby wiele do stracenia, idc z tob. Naukowcy prdko si stamtd nie rusz, a sam nie dotrze do Kordonu, wic moe bdzie na tyle gupi, eby pj z tob do Prypeci! + + + Znasz Wano ze stacji Janw? To uczciwy czowiek i dobry stalker, do tego strasznie atwowierny. Jemu lepiej wrd anomalii ni wrd ludzi - dopki tam siedzi, zawsze znajdzie si kto, kto go wycycka. + + + Suchaj, podobno widziano jaki oddzia nad wyschnitym jeziorem na poudnie od stanowiska przeciwlotniczego... Nie byli to zwykli stalkerzy, Powinno ani Wolno - to ludzie z Monolitu! Jeli potrzebujesz towarzyszy podry do Prypeci, oni bd jak znalaz. Ha, ha, rozumiesz chyba, e artuj? + + + Znasz Wczg, przywdc nowego oddziau Wolnoci? Gdyby widzia jego aosn gb, sam by wiedzia, e Janw to nie miejsce dla niego. Powiniene z nim porozmawia. Moe si nawet zgodzi. + + + Znasz Wczg, przywdc nowego oddziau Powinnoci? Gdyby widzia jego aosn gb, sam by wiedzia, e Janw to nie miejsce dla niego. Powiniene z nim porozmawia. Moe si nawet zgodzi. + + + Hm... Nikt mi nie przychodzi do gowy. + + + Znalazem dziwn bro. Znasz kogo, kto moe co o niej wiedzie? + + + Cholera wie. Zapytaj fachowcw... Moe technicy co wiedz... + + + Nie zaszkodzi zapyta Kardana na Skadowsku. On ma smykak do broni... Wszystkich szarych komrek moe jeszcze nie przepi... + + + Kto moe wykona pomiary dla naukowcw? + + + Znasz myliwego Gont? Myl, e jemu i jego chopakom nie przeszkadzaaby praca dla naukowcw. Znaczy si, jeli mutanty bd przeszkadza w pracy, ci chopcy wietnie sobie z nimi poradz. + + + Syszae o stalkerach Grizlim, Torbie i Mitaju z Janowa? Pracuj we trzech i lepszych ciko znale! Myl, e nadaj si do takiej pracy... O ile Mitaj nie wpakuje si znowu w jakie kopoty. + + + Nie mam pojcia, bracie. Mamy tu do wasnych zmartwie. + + + Znalazem bardzo dziwny artefakt. Komu mog go sprzeda? + + + Nie wiem. Tutejsi ludzie handluj tylko z zaufanymi osobami. Popytaj na Zatonie, tam jest bliej skraju Zony. + + + Poka go Brodaczowi, barmanowi ze Skadowska. Podobno wsppracuje z kolekcjonerami z zewntrznego wiata, a oni zawsze chtnie ykaj dziwne okazy. + + + Znalazem niedaleko legowisko pijawek. Co robi? + + + Ho, ho! Powiedz o tym Brodaczowi na Skadowsku... Bo albo si z nimi rozprawimy, albo one nas zaatwi w trymiga. + + + Dobra, niewane. + + + Gdzie jest najbliszy obz stalkerw? + + + Co ty, gupi?... Nie znam si na obozach stalkerw, ale najbliszy obz jest na Skadowsku. Dam ci wsprzdne, i to za darmo. Dobry ze mnie chop, co? + + + Gdzie jest najbliszy obz stalkerw? + + + Przel ci wsprzdne na PDA... Skadowsk to jedyny duy obz w okolicy. + + + Do zobaczenia. + + + Syszaem, e kilka si rozbio... Nie znam szczegw - nie zajmuj si plotkami. Przykro mi, e nie mog bardziej ci pomc. + + + Czowieku, mam wystarczajco wiele na gowie i bez twoich migowcw... Zakadam, e rozbicie takiej maszyny to nic przyjemnego, ale poza tym nie bardzo wiem, co miabym ci powiedzie. + + + O czym ty mwisz, do cholery? Trzeba si napali mocnego towaru, eby zobaczy tu migowiec, bo prawdziwych tutaj nie uwiadczysz. + + + H? Nie, nie zawracam sobie gowy takimi rzeczami. Ani troch nie pomagaj mi w mojej misji rozpowszechniania wiedzy. + + + Nasz patrol widzia spadajce migowce, ale szczegy przekaza podpukownikowi osobicie. Nic wicej o tym nie wiem, to problem podpukownika. + + + Gdzie znajd kombinezon z aparatem tlenowym o zamknitym obiegu? + + + Nie wiem, jak ze znalezieniem, ale odpowiednia kwota potrafi zdziaa cuda - o ile si wie, gdzie j zainwestowa. Porozmawiaj ze wawym... Jeli si dogadacie, zdobdzie dla ciebie strj. Mam nadziej, e tak si stanie... Przydaoby si nam na Skadowsku par dni bez niego... + + + Skd mam wiedzie, do diaba? Sam jestem tu od niedawna... Najlepiej zapytaj na Zatonie, nasi bracia maj tam swoje kontakty. + + + Nie mam pojcia. A co, zamierzasz wetkn nos w anomali? Suchaj, jeli znajdziesz jakie artefakty, daj nam zna. Dotrzemy na miejsce raz-dwa... eby pogratulowa ci dobrej roboty! Ha, ha! + + + Gdzie znajd kombinezon z aparatem tlenowym o zamknitym obiegu? + + + Skd mam wiedzie? Czekaj... Jest w Skadowsku pewien go, podobno jest w stanie zaatwi wszystko, o co zapytasz. Siedzi na grnym pokadzie, nazywa si wawy. + + + Nie, nikt tu nie przytaszczy ze sob dodatkowego kombinezonu... Zapytaj na Zatonie - jest o krok bliej cywilizacji. + + + Nie mam pojcia, gdzie go szuka... Takie kombinezony s rzadkoci wrd czonkw Powinnoci. Mona taki dosta tylko za wyrnienie si w walce albo gdy si prowadzi dziaania wrd skupisk anomalii. + + + Gdzie znajd kombinezon z aparatem tlenowym o zamknitym obiegu? + + + Syszaem, jak stalkerzy mwili o czowieku z kontaktami, chyba nazywali go wawy. Moe ci zaatwi niemal wszystko, sprzt, spluwy, tego typu rzeczy... Trawy ci nie zaatwi. Siedzi w Skadowsku, jeli chcesz go odwiedzi. + + + Dobre pytanie... W Wolnoci takich nie nosimy. Na twoim miejscu zapytabym stalkerw na Zatonie. Tam moe by kto, kto zajmuje si takimi sprawami. + + + A na choler ci to? Do walki si nie nadaje. Ale na co chyba moe si przyda. atwiej w nim oddycha i soce tak nie wieci w oczy. Sam z chci bym sobie zaatwi taki kombinezon. Nie wiesz, gdzie mona go dosta? + + + Gdzie znajd kombinezon z aparatem tlenowym o zamknitym obiegu? + + + Myl, e u wawego. Trzeci pokad Skadowska. On ci moe zaatwi nieg na pustyni... Ale portfel ciko znosi jego usugi. + + + Niech pomyl... By taki jeden na Zatonie, niejaki wawy. Sprawd, czy cigle tam jest. Podobno specjalizuje si w ekskluzywnym towarze. + + + Czowieku, pytasz, jakby to by zszywacz do papieru albo co. Nikt nie wie. Taki towar to rarytas, pojawia si rzadko. Jeli go zdobdziesz, moesz uwaa si za szczciarza. + + + Cze. + + + Na razie. + + + Do zobaczenia. + + diff --git a/gamedata/configs/text/pol/st_dialogs_jupiter.xml b/gamedata/configs/text/pol/st_dialogs_jupiter.xml new file mode 100644 index 0000000..04dbdc4 --- /dev/null +++ b/gamedata/configs/text/pol/st_dialogs_jupiter.xml @@ -0,0 +1,3885 @@ + + + + Czego chcesz? + + + Musz porozmawia z Waletem. Chodzi o dug Wano. + + + Dobra, nie zatrzymuj ci. + + + Ju id. + + + Tak tylko si przechadzam. + + + To nie miejsce na spacery. Zmiataj std. + + + Wiesz, kto mg ukra zawarto osobistej skrytki? + + + Nie , ale mam wasne zmartwienia... Ty stracie troch przedmiotw, a ja mog straci ycie... + + + Wszyscy kradn, wszyscy kami... Do czego zmierza ten wiat? Nikogo nie widziaem, ale sprawca na pewno ju dawno znikn. + + + Chodmy do Zulusa. + + + Oczywicie. Powinnimy po drodze zajrze do Hawajczyka i odkupi mj kombinezon. + + + Chodmy. + + + Z chci, ale nie mam ochoty natkn si na emisj. Poczekajmy jaki czas. + + + eby si dosta do Prypeci, potrzebujemy kombinezonu z aparatem tlenowym o obiegu zamknitym. + + + A niech to! Mam taki - moesz wsadzi eb do piekarnika i swobodnie oddycha, ale zastawiem go u Hawajczyka. Gdybymy mogli go odzyska... Jestem bez grosza, a potrzeba na to 5 tysicy + + + Mog da ci pienidze na kombinezon. + + + Tak po prostu? Mwisz powanie? + + + Prosz, masz tu 5 tysicy. + + + Ratujesz mi skr, przyjacielu. Teraz pjd za tob na koniec wiata! + + + Dabym ci pienidze, ale nie mam 5 tysicy. + + + Nawet najlepszym si to zdarza, przyjacielu... Dobrze o tym wiem. + + + Zastanowi si nad tym. + + + Oczywicie. W kocu to twoja kasa. + + + To co, dasz mi pienidze, czy co? + + + Zbieram oddzia, eby ruszy do Prypeci. Chcesz si przyczy? + + + Pomoge mi, przyjacielu, wic ja pomog tobie. + + + Bardzo bym chcia, ale nie mog ruszy si std, dopki wisi nade mn ten dug. To nie byoby w porzdku, poza tym, gdybymy po drodze na nich wpadli, ubiliby mnie jak psa. Tym sukinsynom wszystko jedno, kogo zabij... + + + To co, jeste gotw ruszy do Prypeci? + + + Nigdy nie byem tak gotw! + + + Wejd. Czego chcesz? + + + Spacie dug, to zmiataj std. + + + Bezczelne z nich byy dranie - musiaem ich rozwali. + + + Zapaciem im, wic nie masz ju dugu. + + + A niech to, dziki! Nie zapomn ci tego. + + + Musiaem jeszcze zapaci odsetki. + + + Niedobrze... Ale mnie kazaliby zapaci jeszcze wicej, uwierz mi. Dzikuj za pomoc! Nie zapomn ci tego. + + + Jeszcze u nich nie byem. + + + Popiesz si, bo ka ci wicej zapaci. + + + Poszedem do nich, ale daj odsetek od dugu. + + + Co oni, poszaleli? Ledwo udao mi si tyle nazbiera... Mylisz, e przekonasz ich do zrezygnowania z odsetek? Przyda ci si dobra bro - oni szanuj tylko si. + + + Co mwie o swoim dugu? + + + Mj stary kombinezon by ju w kiepskim stanie, wic uznaem, e przyda mi si nowy. Jak tylko o tym pomylaem, zobaczyem w sprzeday zupenie nowiutki kombinezon... Mia aparat tlenowy o zamknitym obiegu i w ogle... Liczyem oszczdnoci na wszystkie strony, ale zawsze mi brakowao... Wtedy sprzedawca, Walet, powiedzia mi Nie przejmuj si, Wano, reszt oddasz pniej". Pomylaem sobie zoty czowiek!"... + + + No i? + + + Sprzedaem stary kombinezon, zebraem ca swoj gotwk i poszedem z ni do niego. Walet mwi Piknie, Wano, ale gdzie odsetki?". Pomylaem, e ma racj - powinienem zapaci mu odsetki. Zebraem jeszcze troch i poszedem do niego. Jak byem na miejscu, powiedzia Kiedy ci nie byo, narosy dalsze odsetki, Wano". Najwyraniej odsetki rosn tak szybko, e nie mog nady... Musiaem zastawi nowy kombinezon i bro te... + + + I co teraz? + + + Chc zapaci mu to, co zarobiem. Reputacja to dla Wano najwaniejsza rzecz pod socem... Ale si boj. Moesz i do Waleta i spaci mj dug za mnie? + + + Dobrze, pjd. + + + Tylko jest jedna rzecz, jak do nich pjdziesz, wycignij jakiego wielkiego gnata. Poka im, e z tob nie ma artw, to bd ci szanowa... + + + Poradz sobie. + + + Jestem teraz zbyt zajty. + + + Mam ju do. + + + Moesz i do Waleta i spaci mj dug za mnie? + + + Dobrze, nie strzelaj, spac dug... Przepraszam, mylaem, e to kto inny... + + + Jak poszo u bandytw? + + + Cze! Dobrze, e przyszede! + + + Cze. + + + Mamy goci... Stalker przyszed na sowo do Szyszaka. Przychodzisz z podarkami czy masz jaki interes do omwienia? Tak czy siak, mw szybko. + + + Nie sdziem, e wrcisz... Co dla mnie masz? + + + O czym jeszcze chciae mwi, stalkerze? + + + Czego chcesz? Znudzio ci si taskanie wszdzie zdobyczy? Moemy ci od niej uwolni. + + + Musz porozmawia z waszym szefem. + + + Koleko, nie mam czasu na takie bzdury. No ju, wypad std! Wyno si natychmiast, bo przyo ci na popd ze strzelby. + + + Dobrze, dobrze - id sobie. + + + Przychodz w sprawie wizionego stalkera - chc rozmawia z twoim szefem. + + + Dobra, id, ale bez numerw, bo polemy ci zaraz do piachu... Id dalej prosto, a potem wejd midzy kontenery. Kapujesz? + + + Tak. + + + Tylko przechodziem, ju znikam. + + + Przychodz w sprawie wizionego stalkera - chc rozmawia z twoim szefem. + + + Czego jeszcze chcesz? Zjedaj! + + + Dobrze... + + + Suchaj, frajerzyno, prbujesz mnie obrazi? Przyniose okup za tego osia, ale nie zapacie nam za bezpieczne przejcie! Nie przemylae tego, kapujesz? + + + O jak kwot chodzi? Ale musz dotrze do bazy, pamitaj o tym. + + + Ale dowcipni z ciebie! To nie burdel, kolego, nie mamy cennika... Oprnij kieszenie, frajerze! + + + Prosz bardzo. + + + Dobrze, id sobie. + + + Co?! Chcecie zabra moj zdobycz? Nie ma mowy! + + + Zapaciem okup. Nie ma o czym wicej mwi. + + + Dobrze, stalkerze, zarobilimy swoj stawk. Czas i. + + + Dziki, chopaki. Do zobaczenia. + + + Czekaj. Mog tu si kry kolejni bandyci. + + + Dobra, czas i. Chopakowi sie nie udao, ale zrobilimy, co tylko byo mona... + + + Czekaj, to jeszcze nie wszystko! + + + Rozumiem! + + + Chodmy razem do Prypeci. + + + Lepiej bdzie, jak tu zostan i przypilnuj, eby Mitaj nie wpad w kopoty. + + + Stalkerze! Dzikuj za wydostanie Mitaja! Zaczlimy ju zbiera oddzia... Prosz, przyjmij to na znak naszej wdzicznoci. + + + Stalkerze! Dzikuj za wydostanie Mitaja! Maszyna do zabijania z ciebie, sam rozwalie wszystkich tych bandytw... Prosz, przyjmij to na znak naszej wdzicznoci. + + + Stalkerze! Dzikuj za pomoc w uwolnieniu Mitaja! Ja sam nie sdziem, e zapacenie okupu mogo przynie dobry skutek... Na pewno przyda ci si par groszy, wic prosz. Jestemy ci wdziczni. + + + Stalkerze! Dzikuj za pomoc w uwolnieniu Mitaja! Miaem racj co do caej sprawy. Nie mona ulega daniom bandytw! Trzeba im przykrci rub... A ty miae odwag to zrobi. Prosz, we to - kady dosta swoj dziak, wic nie jest tego duo, ale jestemy ci bardzo wdziczni. + + + Jak poszo z tym okupem? + + + Jeszcze nad tym pracuj. + + + Co tam? Kiedy przyoysz bandytom? + + + Niedugo. + + + Zmienie zdanie czy masz problem z bandytami? Niewane, rb, co musisz, ale szybko - nie chcemy, eby stracili cierpliwo i zabili Mitaja. + + + Zaatwi to. Wszystko bdzie w porzdku. + + + Mio spotka takiego fachowca jak ty, stalkerze! + + + Takiego dobrego czowieka stracilimy... Biedny Mitaj... Nie uratowalimy go - co z nas za przyjaciele! + + + Co poradzi? + + + Chod ze mn do Prypeci. + + + Przyszedem tu tylko po to, eby dotrzyma towarzystwa przyjacioom, wic zostan z nimi. + + + Dzikuj za uratowanie Mitaja... Ju mielimy rusza z okupem. Wszystko dobrze si skoczyo... + + + Dzikuj za uratowanie Mitaja... Jak udao ci si ich przekona? Moglibymy wiele si od ciebie nauczy... + + + Dzikuj za uratowanie Mitaja... Miaem racj, prawda? Negocjacje to klucz do sukcesu! + + + Dzikuj za uratowanie Mitaja... Wci uwaam, e lepiej byo negocjowa, ale i tak si udao, wic nie szkodzi. + + + Odejd - nie mam ochoty teraz z tob rozmawia. + + + Dobrze, spokojnie. + + + Czoem, panie fachuro! + + + Biedny Mitaj... Mody chopak z niego by... Mia cae ycie przed sob... + + + Co poradzi? + + + wietnie, jestemy w komplecie. Grizli powiedzia mi o tobie... Plan jest prosty: chopcy rozstawi si na pozycjach do ataku, a ja zdejm wartownika - to bdzie sygna do natarcia... Zwr uwag na nasze pozycje i rb, co ci si ywnie podoba. Mam nadziej, e orientujesz si, co zrobisz... Gotw? + + + Dobrze, wezm to pod uwag. Ruszajmy. + + + Chwila, niech si zastanowi. + + + Masz ochot ruszy ze mn do Prypeci, Mitaj? + + + Naukowcy szukaj ludzi do pracy, moe zatrudnisz si u nich? + + + Co to za robota? + + + Strzeenie ich bunkra. + + + Nie, wystarczy mi ju ta przygoda z bandytami. Bd tu siedzia spokojnie na tyku. + + + Wykonywanie pomiarw anomalii. + + + Hm... Ciekawe. Pracowaem ju dla naukowcw, a skoro ty prosisz - zgodz si. Ja, Grizli i Torba pjdziemy do bunkra. + + + Powiedz mi, jak ci zapali. + + + Nie pytaj nawet! To tylko moja wina. Bandyci ostrzegali mnie przed tym, ale wiesz... Zaczli da czci mojej zdobyczy, ale Zona przecie nie jest niczyj wasnoci, wic czemu miabym im paci? + + + Powiedzielimy im z chopakami, gdzie nas mog pocaowa, i mylelimy, e ujdzie nam na sucho. Bandyci okazali si cakiem sprytni - urzdzili zasadzk. Byem na tyle gupi, e poszedem samemu szuka artefaktw, a wtedy oni wyskoczyli mi zza plecw i zwizali rce, nim zdyem wyj bro... i tyle. + + + Dzikuj, e wpacie za mnie okup! Nie zapomn ci tego. + + + Dzikuj, e mnie uwolnie, stalkerze! Nie zapomn ci tego. + + + Dzikuj, e pomoge wpaci za mnie okup, stalkerze! + + + Dzikuj, e pomoge mnie uwolni, stalkerze! + + + Dzikuj za pomoc, stalkerze... Moi przyjaciele wynagrodz ci, jak wrcimy... Chodmy razem do bazy, tak bdzie szybciej. + + + Ruszajmy. + + + Id, ja wpadn pniej. Mam tu sprawy do dokoczenia. + + + Mylaem, e ju po mnie... Grizli i Torba wynajli wszystkich tych ludzi?! A niech mnie! W yciu nie widziaem takiej strzelaniny! Moemy ju std i? + + + Chwileczk, mog by tu jeszcze jacy bandyci. + + + Tak. Chodmy. + + + Mylaem, e nie wyjd z tego ywy... Rany, sam zaatwie wszystkich tych bandytw! Chwat z ciebie! Nie uwierz mi, jak opowiem o tym... Moemy ju std i? + + + Chwileczk, mg jeszcze kto zosta. + + + Tak. Chodmy std natychmiast. + + + Dzikuj, stalkerze! Chodmy std, zanim bandyci zmieni zdanie. + + + Ruszajmy. + + + Musimy std szybko zwiewa! + + + Nie moemy zgodzi si na dania bandytw. Potrzebne jest rozwizanie siowe. + + + Wanie! Znam kilku chopcw, ktrzy z chci pomog... Zapacimy ci, jeli zechcesz nam towarzyszy. + + + Jestem gotowy. + + + wietnie! Znam grup stalkerw, ktrzy suyli kiedy w jednostce specjalnej policji. Spotkasz si z nimi w umwionym miejscu po pierwszej w nocy - bd na ciebie czeka. + + + Dobrze... + + + Torba ma racj. Nie ma co wszczyna wojny, dopki maj zakadnika. Musimy negocjowa. + + + Moe i macie racj... Rzecz w tym, e jeli pjd tam z Torb, bandyci nie wypuszcz ju nas, bo nie przestrzegalimy ich zasad. Powiedzieli, e przy nastpnym spotkaniu zakopi nas ywcem. Ale gdyby ty mg przeprowadzi negocjacje... + + + Jasne, zrobi to. Daj mi artefakt. + + + Bd ostrony. + + + Wszystko bdzie dobrze. + + + Moemy si kci do samego rana... Powodzenie zaley od tego, kto poprowadzi spraw. Sam zajm si tymi draniami. + + + Nie spodziewaem si tego... Powodzenia. + + + Niedugo wrc. + + + Zgadzam si, ale potrzebuj czasu na przygotowanie. + + + Stalkerze, nie pomgby wydosta naszego kumpla Mitaja z kopotw? + + + Co si stao? + + + Mitaj wpad jak liwka w kompot... Bandyci zaczli si panoszy i zadali dziaki od artefaktw znajdowanych przez stalkerw. Powiedzielimy im, eby si bujali, bo uwaamy, e stalkerzy nie s nikomu nic winni, i wydawao si, e na tym koniec... Ale sukinsyny napadli na tego biedaka, kiedy sam poszed szuka towaru, i teraz daj okupu. + + + Co zamierzacie zrobi? + + + Torba chce im odda artefakt jako okup... Ja uwaam, e gwno im si naley. Jeli im go oddamy, wyjdzie na to, e stalkerzy pracuj dla bandytw... Powinnimy sprzeda artefakt, wynaj porzdn ekip i wjecha do bazy bandytw. + + + Zajmijmy si tym troch pniej. + + + To co, pomoesz nam uratowa Mitaja? Torba wci uwaa, e powinnimy odda im artefakt. Ja cigle nalegam, eby im zrobi wjazd do bazy. W tym celu musielibymy sprzeda artefakt i zatrudni ekip... Nadal nie zdecydowalimy, co zrobi. + + + Jeste gotowy? Damy ci artefakt na wykupienie Mitaja i bdziemy czeka na ciebie przy barze. + + + Bye ju u bandytw? + + + Jeszcze nie, przygotowuj si. + + + Tak, ale niewiele z tego wyszo. Dam wam zna, jak bdzie co wiadomo. + + + Byem niedawno w Oazie i znalazem tam artefakt. Jeste zainteresowany? + + + Ha, ha, mam w to uwierzy? Niemao syszaem na temat Oazy, ale nigdy nie syszaem, eby kto w niej faktycznie by. Bez urazy, ale nie uwierz ci na sowo. + + + Mam dokumenty z fabryki Jupiter. + + + Tak, we wszystkie. + + + Tak, we rozkaz ewakuacji. + + + Tak, we protok z zebrania. + + + Tak, we harmonogram dostaw. + + + Tak, we notatk z warsztatu naprawczego. + + + Moe nastpnym razem. + + + Kto mg ukra zawarto osobistej skrytki? + + + Na pewno nie moi ludzie. Moe to kto z Wolnoci. Gdybymy mieli pen kontrol nad Janowem, do takich rzeczy by nie dochodzio. + + + Opowiedz mi o Powinnoci. + + + Co dokadnie chcesz wiedzie? + + + Co tu robicie? + + + To samo, co zawsze. Ochraniamy stalkerw przed wszelkim paskudztwem. Widziae, ile tu jest mutantw, i to nie s milutkie pieski, jak przy Kordonie. Na przykad wczoraj wieczorem na wasne oczy widziaem chimer. Zmierzchao, wic nie gonilimy jej... Mutanty to nie jedyny problem. Musimy te bada i zbiera materiay z opuszczonych laboratoriw, zanim pacany z Wolnoci do nich dotr. + + + Co sprowadzio was do centrum Zony? + + + arty sobie robisz? A ty czemu tu jeste? Strzelam w ciemno, e jestemy tu z tego samego powodu. Centrum Zony zawsze byo nieosigalnym celem, miejscem, w ktrym miay znale si odpowiedzi na wszystkie nasze pytania. Chcielimy si dowiedzie, jak Zona powstaa i jak mona j zniszczy. Dlatego, jak tylko usyszelimy pogosk o wyczeniu Mzgozwglacza, ruszylimy do centrum. + + + I dowiedzielicie si czego? + + + Cakiem sporo, ale to tajne. Mog tylko powiedzie, e Zona kryje w sobie wicej, ni si wydaje. Niektrzy z naszych ludzi uwaaj, e Zona jest jak rak, ktrego naley wyci za wszelk cen. Na podstawie tego, co widziaem, powiedziabym raczej, e Zona to ywy organizm, a my jestemy niczym yjce w niej bakterie. Gdybymy nawet poczyli potg wojskow wszystkich pastw wiata, nie bylibymy w stanie zniszczy Zony. Dlatego musimy by sprytniejsi: musimy odnale przyczyn istnienia Zony i j usun. + + + A jeli nie da si usun tej przyczyny? + + + Jeli nie, bdziemy musieli wymyli co innego, ale wci jest nadzieja. Musimy peni nasz powinno i myle optymistycznie. + + + Jak trafie do Powinnoci? + + + To nudna historia, nie ma w niej nic bohaterskiego. Jak tylko pojawia si Zona, postanowiem z moim kumplem Leni do niej zajrze. Ja byem wtedy oficerem polowym, a Lenia by w wywiadzie. Nie bylimy frajerami, ale wpakowalimy si w nieze tarapaty. Czogalimy si godzinami ranni i zakrwawieni, a znaleli nas ludzie Powinnoci. Ja przeyem, Lenia nie. Nie miaem przyjaci w Zonie, wic zostaem tutaj, w Powinnoci. No i od tamtego czasu mam z Zon na pieku. + + + Jak wygldaj wasze stosunki z Wolnoci? + + + Oficjalnie jestemy w stanie wojny, ale ycie w centrum Zony kieruje si wasnymi zasadami. Tutaj jest mniej bezpiecznych miejsc, a ani Wolno, ani Powinno nie maj zbyt wielu ludzi. Jaki jest wic sens zabija si nawzajem? Dlatego przyjlimy niewypowiedzian zasad, e nie wchodzimy sobie w drog. Poza Janowem ta zasada nie ma znaczenia - na zewntrz wci toczymy ze sob wojn, i to nie na arty. + + + Dobra, niewane. + + + W porzdku. + + + Chciaem porozmawia o Flincie z Wolnoci. + + + Nie mam nic do ludzi Wolnoci, o ile trzymaj si od nas z dala. + + + Flint, zwany take Srok, przekrci myliwych na Zatonie, zabra ich towar i z nim zwia. + + + No i? Nie dziwi mnie to, bo w Wolnoci roi si od takich kanalii. + + + Jest jeszcze co. W kamienioomach spotkaem stalkera. Przed mierci powiedzia mi, e Flint zostawi go w anomalii, zabra jego zdobycz i da nog. + + + Widzisz, czego takiego stalkerzy nie zapominaj... Nawet w Wolnoci. Dziki za informacj - postaramy si dobrze j wykorzysta. + + + Mam na jego temat do brudw. Ten palant ma czelno otwarcie chwali si rzeczami, ktre zrobiem ja. + + + To powanie osabi reputacj Wolnoci. Dziki za informacj. Postaramy si dobrze j wykorzysta. + + + Niewane. + + + Dobra, jak chcesz. + + + Mam PDA twojego zaopatrzeniowca Morgana. + + + Zgadzam si. + + + Zastanowi si nad tym. + + + Zgadzam si. + + + Dobrze. + + + Popatrzmy... A wic ten skurczybyk robi interesy na boku i posugiwa si nasz nazw... Jeli to wyjdzie na jaw, nasza reputacja legnie w gruzach. Moe kupi od ciebie ten PDA? Dobrze zapac. Wystarczy 4000? + + + To powane oskarenie. Poka mi PDA. + + + Prosz. + + + Przyznam, e miaem pewne podejrzenia wzgldem niego... Teraz si nimi zajmiemy na dobre. Dzikuj, stalkerze! Mam nadziej, e nikt nie pozna szczegw tej rozmowy. Mam dla ciebie skromn nagrod - w kocu uratowae reputacj Powinnoci. + + + Na razie go zatrzymam. + + + Kolejny... Bardzo ciekawe... Dodam to do akt sprawy. + + + Prosz. + + + Dzikuj! Oto skromne wynagrodzenie za twj trud... + + + Zatrzymam to jako pamitk. + + + Spotkaem grup bojownikw, ktrzy chc wstpi do Powinnoci. + + + Cay czas szukamy dobrych ludzi. Niech do mnie wpadn, to pogadamy. + + + Jest tylko jeden problem... To byli czonkowie Monolitu. + + + Jak to byli czonkowie Monolitu? O ile wiem, czonkowie Monolitu dziel si na dwie kategorie: obecni i martwi. Byych jeszcze nie spotkaem. + + + Wyglda na to, e byli pod czyj kontrol - nie pamitaj, co si z nimi dziao, odkd wyruszyli do CEJ. Teraz nie s wcale agresywni, po prostu nie wiedz, co robi. + + + To dobrze, e nie s agresywni... Znajd im co atwego do roboty i zadbam, eby poukadao im si w gowach. Ale nie jestem do nich w tej chwili cakiem przekonany... Porczysz za nich? + + + Tak. Ufam im. + + + Hm... Problem w tym, e tobie te nie ufam... Jeszcze nie. Przykro mi. + + + Dobrze, ale pamitaj, e jeli nawal, ty za to odpowiesz. Prawda jest taka, e sami nie dotr do Janowa. Wemiesz moich chopakw i zaprowadzisz ich do oddziau Monolitu. Chopaki z nimi porozmawiaj i jeli wszystko bdzie w porzdku, przyjmie si ich do Powinnoci. Powiedz, kiedy bdziesz gotw rusza. + + + Nie. Nie ufam im zbytnio. + + + Nie przyjmujemy do naszej frakcji byle kogo. + + + Jestem gotw poprowadzi twoich ludzi do oddziau Monolitu. + + + Dobrze. Pol z tob dwch ludzi. + + + W porzdku. + + + Zaatwimy to pniej. Co mi wypado. + + + Czekaj! Rb, co chcesz, ale nie puszcz moich chopakw na pastw emisji. + + + Znalazem PDA zaoyciela Powinnoci. Jeste zainteresowany? + + + Popatrzmy... A wic tak to byo... Myl, e inni nie musz tego wiedzie. Byoby lepiej, gdyby dane z tego PDA nie wpady w niczyje inne rce. Niech legenda powstania Powinnoci pozostanie bez zmian. Sprzedasz mi ten PDA? + + + Trzymaj. + + + Dzikuj. Masz tu zapat. + + + Rozwa twoj propozycj. + + + We PDA zaoyciela Powinnoci. + + + Dzikuj! Wywiadczye mi wielk przysug. Oto zapata. + + + Potrzebuj bojownikw do pracy dla naukowcw. Moesz mi pomc? + + + Zawsze z chci pomagamy naukowcom. Co trzeba zrobi? + + + Szukaj kogo do ochrony bunkra. + + + Oczywicie, pol moich chopakw. + + + Oczywicie, pol moich chopakw. + + + Z chci bym pomg, ale naukowcy zatrudnili ju Wolno. Posanie tam naszego oddziau zaognioby tylko konflikt pomidzy nami. + + + Zamierzam wybra si do Prypeci. Dasz mi kilku ludzi do towarzystwa? + + + I tak mamy braki kadrowe! Porozmawiaj z Wczg - najwyraniej czuje si nieswojo w Powinnoci, wic moe bdzie mu raniej u twojego boku. + + + I tak mamy braki kadrowe! Nie pol nikogo na stracecz wypraw. + + + Mw szybko i znikaj jeszcze szybciej. Czego chcesz? + + + Sucham. + + + Dobrze ci widzie ywego. + + + Mam dokumenty z fabryki Jupiter. + + + Wtpi, by byo tu cokolwiek ciekawego. Fabryka zostaa spldrowana, nim dotarli do niej stalkerzy. Chocia... jest tu co ciekawego. Chc pokaza komu te dokumenty. Sprzedasz mi je? + + + Tak, we wszystkie. + + + Tak, we rozkaz ewakuacji. + + + Tak, we protok z zebrania. + + + Tak, we harmonogram dostaw. + + + Tak, we notatk z warsztatu naprawczego. + + + Moe innym razem. + + + Kto mg ukra zawarto osobistej skrytki? + + + Czy ja jestem strem twojej skrytki? Moi ludzie na pewno jej nie okradli - nie s tacy gupi. + + + Opowiedz mi o Wolnoci. + + + To duga historia. Co chcesz wiedzie? + + + Co tu robicie? + + + Pilnujemy, eby rni oficjele nie ukrywali nic przed zwykymi ludmi. Wiesz, jak to jest, jak tylko znajd nowe laboratorium albo dokumenty rzucajce wiato na tajemnice Zony, od razu organizuj operacj wojskow i zbieraj wszystko jak odkurzacz. Jedyny sposb, eby si czego dowiedzie, to dotrze tam wczeniej. + + + Co sprowadzio was do centrum Zony? + + + Chopcy mieli ochot przej si po nowej okolicy. artuj. To sposobno do znalezienia rzeczy, jakich wiat dotd nie widzia. Ani armii, ani stalkerw wczeniej tu nie byo, wic gdzie tylko spojrzysz, znajdujesz co nowego. + + + Znalelicie co? + + + Kilka zamknitych drzwi i dziwne nowe artefakty. + + + Jak trafie do Wolnoci? + + + Przyjaniem si z przywdcami Wolnoci, kiedy nie byo jeszcze Zony. Ale wtedy nie byli przywdcami, tylko zwykymi hipisami. Kiedy przyszedem do Zony szuka artefaktw i napotkaem znajome twarze, pomylaem, e lepiej mi bdzie wrd swoich. + + + Co sdzisz o Powinnoci? + + + Sdz, e to kretyni. Czemu chcieliby zniszczy Zon? Nie pochania cennych zasobw ani si nie powiksza. Mogliby w niej siedzie i bada j do woli - pomyl, ilu odkry naukowych mona by dokona... Na przykad do tej pory ludzkoci nie udao si opanowa antygrawitacji, prawda? A w Zonie roi si od gotowych urzdze antygrawitacyjnych. Nie zaszkodzioby wykopa std Powinno, ale za duo byoby z tym zachodu. Przy okazji, niech nie zwiod ci nasze stosunki tutaj w Janowie. Jestemy w stanie wojny... tyle e Janw to, powiedzmy, terytorium neutralne. + + + Dobra, niewane. + + + Nie ma sprawy. + + + Chciaem porozmawia z tob o jednym z twoich stalkerw. + + + Naprawd? Wal miao. Mam nadziej, e nie chcesz na ktrego donosi? + + + Twj stalker Flint jest znany na Zatonie jako Sroka. Lokalni myliwi szukaj go, bo wystawi ich i uciek z ich towarem. + + + I mam w to uwierzy? + + + Posuchaj historii, ktre opowiada przy barze. Najpierw oszuka tych stalkerw, a teraz okamuje was. + + + Dobrze, spokojnie. Porozumiem si z Brodaczem i zobacz co i jak. Jeli twoje sowa si potwierdz, policzymy si z Flintem po swojemu. + + + Hm... Zastanawiaem si, jak udao mu si tak szybko zdoby ten artefakt. Poowa jego opowieci musiaa by wyssana z palca. Porozmawiam z chopakami. Jeli twoje sowa si potwierdz, policzymy si z nim po swojemu. + + + Niewane. + + + W porzdku. + + + Zgadzam si. + + + Zastanowi si nad tym. + + + Trzymaj. + + + W porzdku. + + + Spotkaem grup bojownikw, ktrzy chc wstpi do Wolnoci. + + + Zawsze jestemy otwarci na dobrych ludzi. Mog do nas doczy, jeli chc. + + + Jest drobny problem - to byli czonkowie Monolitu. + + + Drobny problem? Czonkw Monolitu wol oglda przez celownik karabinu. Inaczej nie da rady. + + + Ci s pokojowo nastawieni. Byli pod czyj kontrol - nie pamitaj, co si z nimi dziao, odkd ruszyli w stron CEJ. Nie maj pojcia, co teraz robi. + + + Wybacz, ale jestem sceptyczny. A jeli celowo mnie okamujesz? + + + Moe nie zaszkodzi porozmawia z nimi i si przekona. Pol z tob paru moich chopakw. Pogadaj sobie i jeli wszystko bdzie w porzdku, przyjmiemy tych twoich czonkw Monolitu. + + + Moe ju sobie pjdziesz, co? Jak moesz sugerowa, e przyjmiemy do Wolnoci kad swoocz? + + + Przychodz w sprawie przyjcia tych ludzi z Monolitu do Wolnoci. + + + Moi ludzie s gotowi do drogi. + + + Dobrze, niech za mn id. + + + Troch pniej. + + + Zaczekajmy. Emisje szkodz zdrowiu. + + + Znalazem PDA zaoyciela Powinnoci. Jeste zainteresowany? + + + O ile jest na nim co ciekawego... O, to naprawd interesujce. Rozgaszaj swoj bzdurn propagand w caej Zonie, a tu si okazuje, e ich historia jest wyssana z palca. Z chci dokadnie si z tym zapoznam. Dobrze ci zapac za ten PDA. + + + Trzymaj. + + + Dziki. Oto pienidze. + + + Zastanowi si nad tym. + + + We PDA zaoyciela Powinnoci. + + + Dziki. Oto pienidze. + + + Naukowcy szukaj ludzi do pracy. Moesz do nich kogo wysa? + + + Zaley, co to za robota. + + + Potrzebny jest kto do ochrony bunkra naukowcw. + + + Oczywicie, pol moich chopakw. + + + Oczywicie, pol moich chopakw. + + + Z chci bym pomg, ale s tam ju sukinsyny z Powinnoci. I tak mamy ju do siedzenia z nimi w Janowie. + + + Dasz mi oddzia, eby pj do Prypeci? + + + Porozmawiaj z naszym nowym rekrutem, Wczg. Nie jest tu szczliwy, wic moe lepiej mu bdzie z tob. + + + Gdybym mia wolnych ludzi, dabym ci ich, ale nikogo nie mam. Wybacz. Tutaj mamy do roboty. + + + Co masz do powiedzenia? + + + Z jak spraw przychodzisz? + + + Dobrze ci widzie! W Wolnoci syszaem o tobie dobre rzeczy. Czym mog ci suy? + + + Znalazem dziwny przedmiot w tunelu kolejowym. Jeste zainteresowany? + + + Hm, nie. To mie. Wyglda jak artefakt, ale nie ma adnego dziaania. Zwykle dajemy taki szmelc naukowcom. + + + Znalazem na Zatonie dziwny przedmiot, jeste zainteresowany? + + + Co mam z nim zrobi? Nawet normalne artefakty nie bardzo mnie interesuj. Poka go naukowcom - oni dobrze pac za wszelki szmelc. + + + Szukam ludzi do ochrony bunkra naukowcw. Moesz kogo podpowiedzie? + + + Nie znajdziesz nikogo lepszego od Wolnoci. Moesz sprbowa dogada si ze stalkerami, ale im nie mona za bardzo ufa. Jeli ci zawiod, jak ich pniej znajdziesz? Zdecydowanie odradzam rozmow na ten temat z Powinnoci. Ci fanatycy nadaj si tylko do oczyszczania terenu z mutantw. + + + Szukam ludzi do zbierania prbek dla naukowcw. Moesz kogo podpowiedzie? + + + Oczywicie. Porozmawiaj z Lokim - on ci z chci w tym pomoe. Moesz sprbowa dogada si ze stalkerami, ale im nie mona za bardzo ufa. + + + Kto ukrad zawarto mojego schowka. Wiesz, kto to mg by? + + + Do czego tu ju dochodzi? Wtpi, e by to kto z Powinnoci, bo oni utrzymuj cis dyscyplin, jak dla mnie za cis. Nikomu z Wolnoci niepotrzebne twoje graty, wic pewnie by to ktry stalker. + + + Spotkaem niedawno oddzia Monolitu. + + + Do licha, ja ich nigdy nie spotkaem! Ale chopaki opowiadali mi takie rzeczy, e ciarki przechodz. Podobno Monolit to kompletni szalecy. Walka pewnie bya cika, co? + + + W ogle nie byo walki. S pokojowo nastawieni. Powiedzieli mi, e spada im zasona z oczu i odzyskali nad sob panowanie. Nie wiedz, co teraz robi, wic chc im znale miejsce w jakiej frakcji. + + + A to ciekawe. Stalkerzy odpadaj, bo pewnie powystrzelaliby ich z powodu dawnych konfliktw... Pogadaj z Lokim. Nikt ich nie tknie, jeli przywdziej mundury Wolnoci. + + + Kto moe by zainteresowany prawd na temat zaoyciela Powinnoci? + + + Nie mam pojcia. Zaley, jak bardzo rni si ta prawda od oficjalnej wersji Powinnoci. Poka to Lokiemu, on ci dokadniej powie. + + + Mam PDA zaopatrzeniowca Powinnoci. Jeste zainteresowany? + + + Za Chiny Ludowe. Wiem, gdzie duo taniej mona kupi wszystko, co sprzedaje. A poza tym nie ma tam nic ciekawego. + + + Kto mgby ruszy ze mn do Prypeci? + + + Do Prypeci? A niech mnie, chciabym mc wszystko rzuci i pj z tob, ale jestem teraz bardzo zajty... + + + Do Prypeci? A niech mnie! Popro Lokiego o ludzi. Takiemu poczciwcowi jak ty nie odmwi. + + + Przyszede si odpry? Napitki mam liche, ale atmosfera jest serdeczna i przyjacielska! + + + Mam wszystko, czego dusza zapragnie. Czego ci potrzeba? Chcesz co zje, wypi, a moe postrzela? + + + Szukam ludzi do ochrony bunkra naukowcw. Moesz kogo podpowiedzie? + + + Porozmawiaj ze stalkerami. Podejrzewam, e bd chtni do pracy dla jajogowych... W kocu zyskaliby oficjalne pozwolenie na pobyt w Zonie. + + + Szukam ludzi do zbierania prbek dla naukowcw. Moesz kogo podpowiedzie? + + + Radzibym nie wchodzi w ukady z nieopierzonymi stalkerami. Nie do, e nic nie znajd, to jeszcze mog co zgubi. + + + Spotkaem niedawno oddzia Monolitu i chc ci o co spyta. + + + Wiesz co, jak widz kogo, kto si zetkn z czonkami Monolitu, to zawsze ma w sobie par dziur po kulach. Za to ty wygldasz na cakiem ywego. O co chcesz zapyta? + + + Ten oddzia jest inny. Rozmawiaem z nimi, nie walczyem. + + + Nie moe by! + + + Moe, moe. Powiedzieli mi, e zasona spada im z oczu i teraz nie wiedz, co robi. Zapytali mnie o rad. + + + Ja im radz, eby trzymali si z dala od stalkerw, bo ci maj zbyt dobr pami, eby puci ich ywcem. Moesz pomc im wstpi do ktrej frakcji, ale nie wiem, czy Powinno albo Wolno bd chciay mie z nimi co wsplnego. + + + Mam PDA z prawd na temat zaoyciela Powinnoci. Jeste zainteresowany? + + + Nie zajmuj si plotkami, zapamitaj sobie. Jeli masz informacje do sprzedania, id do Sowy. On uwielbia takie rzeczy. Znowu z uwagi na charakter twoich informacji moe by nimi zainteresowany Loki albo Szulga. + + + Mam PDA zaopatrzeniowca Powinnoci. Jeste zainteresowany? + + + Mam przeczucie, e ten PDA oznacza kopoty z Powinnoci, a tego bym nie chcia. Porozmawiaj z Sow. + + + Potrzebuj opieki medycznej. + + + Popatrzmy... + + + Ju lepiej. + + + Kto mgby ruszy ze mn do Prypeci? + + + Porozmawiaj ze stalkerem Wano. Jest czysty jak za, do tego stopnia, e cigle wpada przez to w tarapaty. + + + Nie ma tu zbyt wielu wariatw, wic bdziesz musia poszuka gdzie indziej. + + + Szukasz rodkw medycznych czy przyszede pogada? + + + Kto ukrad zawarto mojego schowka. Wiesz, kto to mg by? + + + Wiesz, jak nazywa si ten stalker? + + + Podobno jest tu do nowy... Jak on si nazywa, zaraz... Strk? Stek?... Nie, nie. To co zwizanego z drewnem... Sk, o wanie! Nazywa si Sk. + + + Cze, brachu. + + + Cze. Mam do ciebie wan spraw. + + + Super, najpierw si napijmy, ebymy mogli potraktowa tak wan spraw z naleyt powag! + + + Dobrze, napijmy si! + + + Nie, nie mam teraz ochoty. + + + Co to za sprawa? + + + Zamierzam wyruszy do Prypeci tunelem, ktry przechodzi pod fabryk Jupiter. Azot moe otworzy wejcie. + + + Hm... Wyprawa tunelem do Prypeci... Ciekawy pomys... Trzeba go opi. + + + Do dna! + + + Ech, dobrze wchodzi. Mam nadziej, e nie zamierzasz ruszy w tak misj sam? Nie... Tak si nie da... Pjd z tob.... Potrzebny bdzie jeszcze kto. Na takiej wyprawie zawsze przyda si par godnych zaufania osb... + + + Azot poradzi mi, ebym zebra oddzia... + + + Tak, to dobry pomys... Napijmy si za powodzenie misji... + + + Twoje zdrowie! + + + Dabym rad sam... na Zatonie bez niczyjej pomocy zaatwiem pijawk... Par butli z gazem i po sprawie. + + + Zuch z ciebie. Wypijmy, eby butla z gazem zawsze bya pod rk. + + + Tak jest! + + + Godnych zaufania? Tutaj peno mtw... na Zatonie spotkaem handlarza, okazao si, e jest z Powinnoci... + + + No patrz, to i Powinno gnije od rodka... Do czego to doszo? Trudno, nie zawracajmy sobie tym gowy i napijmy si. + + + Co racja, to racja. Zdrowie. + + + Uch... wchodzi jak woda, co? Oddzia to dobry pomys, potrzebujemy co najmniej trzech ludzi... Mylisz o kim konkretnym? + + + Znajd kogo... Bdziemy te potrzebowa kombinezonw z aparatami tlenowymi o zamknitym obiegu. + + + Tak, bezpieczestwo przede wszystkim... Jeli o to chodzi, nie przejmuj si, bo mj kombinezon si nada, ale dla innych bdziemy musieli poszuka - nie bdzie atwo, bo takie kombinezony to rzadko. Za udane poszukiwania. + + + Zdrowie. + + + Znasz niejakiego Noego? Zamkn si na barce z mnstwem rnego towaru... Na przywitanie wali do ciebie z dwururki. + + + Tak, nie widziaem go jaki czas. Kiedy pracowalimy razem. Potrafi walczy... Szkoda, e tak mu odbio. Wypijmy za niego, eby mu si uoyo pod kopu. + + + Za Noego! + + + Jaki czas temu spotkaem w Janowie Wano. Nie mg spaci dugu bandytom... Pomogem biedakowi... + + + W porzdku, na pewno bdzie z nim weselej, poza tym moe dwiga zapasy. Za Wano! + + + Wypijmy za to! + + + W bunkrze naukowcw jest onierz... Nie ma nic do roboty, moe si zgodzi... + + + Tak, wojskowy moe si przyda... Wypijmy za to, eby si zgodzi. + + + Zdrowie. + + + Nie uwierzysz, ale ostatnio pomogem oddziaowi Monolitu... Nagle nastawiy im si poluzowane klepki czy co i nie wiedzieli, co robi... Pomogem im i teraz siedz w Janowie. + + + Hm... Widz, e wdka niele daa ci w dekiel. Musz ci odtd nalewa po p. To cyk! + + + No to cyk. + + + To by byo z grubsza tyle - najwaniejsze, ebymy si nie zgubili pod ziemi... + + + Nie bj si - mam plany. + + + Super. Napijmy si jeszcze za powodzenie misji. + + + Zdrowie! + + + Spokojnie... Niedawno znalazem Oaz... T sam, do ktrej nikt inny nie mg dotrze... + + + Ale z ciebie tropiciel. Z tob bez problemu znajdziemy drog do Prypeci. Zdrwko. + + + Zdrwko. + + + Cze! + + + Mamy ju chyba do ludzi. Moemy rusza. + + + Na pewno? Kolejna para rk by nie zaszkodzia. + + + Na pewno. Chodmy. + + + Masz racj. Sprbuj znale kogo jeszcze. + + + Dobrze. Ruszamy! + + + Chodmy. + + + Ludzie to jedna sprawa, ale czy zadbae o swoje bezpieczestwo? Potrzebujesz kombinezonu z aparatem tlenowym o zamknitym obiegu... Nie bd cign twojego trupa - moja rusznica i amunicja wa wystarczajco duo. + + + Jasne. + + + Zaczekajmy. Emisje szkodz zdrowiu. + + + Gdzie znajd ludzi do naszego oddziau? + + + Popytaj ludzi w okolicach Jupitera... Ci, ktrzy zostali na Zatonie, na pewno nie wybior si do Prypeci. Potrzebujemy ludzi, ktrych nic tu nie trzyma... Musz si zgodzi na desperack misj. Pamitasz, czy spotkae kogo takiego? Moe kto jest ci co duny albo znasz kogo, kto nie zapuci korzeni... + + + Wystarczy nam ju ludzi. Nie zbieramy dywizji... Posuymy si taktyk maych oddziaw. + + + Co sdzisz o Wczdze? + + + Ludzie Monolitu to zwykle zaciekli, fanatyczni bojownicy... Nie wiem, czy z byymi czonkami jest tak samo. Z wierzchu Wczga wyglda na spokojnego, ale pozory myl. + + + A niech to! Pancerz Monolitu. Skd go wytrzasne? + + + By w komplecie. To jest Wczga, byy czonek Monolitu. + + + Nie sdziem, e istniej byli czonkowie Monolitu. No nic, przekonamy si, co potrafi, jak przyjdzie co do czego. + + + Co sdzisz o Sokoowie? + + + Ma ciekawy kombinezon, taki naukowy. Nie widziaem takiego ju adnych par lat. + + + To Sokoow, drugi pilot rozbitego migowca wojskowego. + + + Wida po nim, e aden z niego naukowiec. Dobry onierz zawsze si przyda. + + + Od dawna znasz Wano? + + + Spotkalimy si par razy w barze 100 Radw. Mwi, e to uczciwy czowiek, optymista i do tego dobry stalker... Ale jest zbyt atwowierny, a w Zonie to zgubna wada. + + + A wic idzie z nami Wano? wietnie, nie bdziemy musieli sami taszczy zapasw... Spokojnie, artuj tylko. + + + Kto mg ukra zawarto osobistej skrytki? + + + Ukradli ci co? Pech. Nie wiem, co powiedzie. Nie widziaem tu nic podejrzanego... Jeli si czego dowiem, na pewno dam ci zna. Nie potrzebujemy szczurw w naszej bazie. + + + Podobno gdzie tu doszo niedawno do strzelaniny... + + + Tak, to ja strzelaem. Jacy idioci zebrali si pod wie... Zaczli si kci i wrzeszcze. Puciem par serii ze starego kaemu i dali drapaka w kierunku podstacji. I tak si skoczyo sympozjum kretynw. + + + Postanowiem odda artefakt z Oazy. + + + Rozsdnie - daj mi go. + + + Prosz. + + + wietnie, trzeba natychmiast zbada to cudo... Przy okazji, dzikuj za trud - masz tu zapat. + + + Potrzebujecie jakiej pomocy? + + + Dzikuj, pracuje ju dla nas oddzia stalkerw. Chocia... Istnieje pewna teoria, waciwie raczej legenda... Syszae kiedykolwiek o Oazie? + + + Sprbuj znale Oaz. + + + Przepraszam, w tej chwili mam za duo na gowie. + + + Nie, nie syszaem o niej. + + + Wic posuchaj. Wielu ludzi o niej mwi, ale najwyraniej nikt jej nie widzia. Jest jak uzdrawiajce rdeko. Kiedy do niej wejdziesz, goj ci si rany i odzyskujesz siy. Kry wiele plotek, a kada bzdurniejsza od poprzedniej... Niektrzy twierdz, e widzieli Oaz w snach... Jako naukowiec musz jednak zapyta: skd wiesz, e to naprawd bya Oaza? Jeli zgodzisz si jej poszuka... Nie obiecuj wysokiej nagrody, ale jeli Oaza istnieje, odkrycie jej pomoe nam wykona duy krok naprzd w naszych badaniach. + + + Znalazem Oaz. + + + Naprawd? Wic jednak istnieje? Wybacz mj sceptycyzm, ale masz jaki dowd? + + + Tak, znalazem tam co. Wyglda jak artefakt. + + + Daj mi go szybko! + + + Trzymaj. + + + wietnie, trzeba natychmiast zbada to cudo... Przy okazji, dzikuj za trud - masz tu zapat. + + + Nic z tego. Moe mi si przyda. + + + To bardzo egoistyczne. Nie mwic ju, e niebezpieczne. Waciwoci tego artefaktu nie s znane. Co zrobisz jutro, jeli si okae, e nie masz czucia w nogach? Albo skra ci zzielenieje? Zapewniam ci, e takie przedmioty najlepiej odda w opiek naukowcom - my przynajmniej prbujemy odpowiednio si zabezpieczy. + + + Nie przestraszysz mnie. Zatrzymam artefakt. + + + Dobrze ju. We go. + + + Nie. + + + Nie przyniose nic? To co mam bada? Wiesz, co odrnia naukowcw od innych? My musimy poprze kad teori faktami! Potrzebuj dowodw! + + + Dobrze, wrc tam. + + + I tak dugo mi si przy tym zeszo. Nie mog tam teraz wrci. + + + Jeli nie zaley ci na zapacie, pomyl o nowych moliwociach, jakie Oaza daaby medycynie! Jeli si nie myl, Oaza ma natur anomalii... tak to ju w Zonie jest. Jeli to prawda, byaby to pierwsza anomalia o waciwociach leczniczych! + + + Co ci tu sprowadza? + + + Widziae najemnikw, ktrzy nas strzeg? + + + Jak cudownie zobaczy inteligentn osob. W czym mog ci pomc? + + + Wyobra sobie, e najemnicy, ktrzy nas ochraniali, zostali zabici przy samym bunkrze! + + + Herman, wiesz cokolwiek na temat Oazy? + + + Oazy? To wszystko zwyke kamstwa. Ludzie lubi wierzy w panacea, wic wymylaj takie bajki. Uwierz mi, Oaza to tylko wytwr czyjej wybujaej wyobrani. + + + Wielu ludzi o niej mwi. + + + Zbyt wielu. A aden z nich nigdy w niej nie by. Trzymam si naukowego punktu widzenia: czego istnienia nie udowodniono, to nie istnieje. + + + Aha, rozumiem... Dzikuj. + + + Dobrze. Chodmy. + + + Super... Nie zorientujesz si, kiedy bdziemy z powrotem. + + + Zobaczymy. + + + Super... Ale poczekajmy, a przejdzie emisja, i dopiero ruszymy. + + + Dzie dobry, stalkerze. Jestem Wujek Jar... Pewnie zmczony z drogi... Zap co na zb, skoro ju tu jeste. Pojawie si w dobrym momencie - potrzebuj pomocy. W tym wieku nie wszystko ju mog zrobi sam. Nie to co kiedy... + + + Czujesz si odwieony? Masz ochot na spacer? Pomgby starszemu czowiekowi... + + + Jak yjesz? Z kadym dniem wygldasz lepiej... + + + Co to za robota? + + + To procizna... Przejdziemy si we dwch do wioski Kopaczi - to niedaleko std. Jak bdziemy na miejscu, wszystkiego si dowiesz... + + + A przyjaciele z Wolnoci nie mog ci pomc? + + + Nie chc zawraca im gowy takimi bzdurami... Poradzimy sobie we dwch. + + + Pjdziesz ze mn do Prypeci? + + + Nie... Gdybym by modszy... Kiedy chodziem na Syberi i z powrotem, ale ostatnio staram si zbytnio nie oddala... Staro nie rado. + + + Trzymaj si. + + + Czekaj. Jeli idziesz do Janowa, moe moglibymy i razem? Mio mie do kogo gb otworzy... + + + Dzikuj, wolabym i sam. + + + Chodmy do Janowa. + + + Dzikuj za pomoc... We to. Jeli masz jakie pytania, nie powstrzymuj si. Postaram si odpowiedzie... + + + Czemu nie poprosie ludzi Wolnoci o pomoc? + + + Po co nastawia najemnikw przeciw Wolnoci? Mielimy jedn wojn i wystarczy. To sprawa osobista... Nie ma co ich do tego miesza. + + + Co tu si w ogle wydarzyo? + + + Paru chopcw przyszo mnie zabi... Siedziaem w krzakach, nie wadzc nikomu, kiedy pojawi si oddzia najemnikw. Ich przywdca gada przez PDA o centralnym laboratorium w Prypeci, nagym zamwieniu i tak dalej... Wtedy przypadkiem stanem na jakim patyku i zwrciem na siebie ich uwag. Zapaem karabin i daem chodu, ale nie opuszczao mnie uczucie, e przyjd po mnie. Tak si teraz cen paci za podsuchiwanie. + + + Najwaniejsze, eby nie da si niczemu zaskoczy. Id za mn po cichu... Jeli nie narobimy haasu i nie bdziemy za bardzo si rusza, pjdzie gadko. + + + Dobrze. + + + Musimy std zwiewa. Porozmawiamy pniej. + + + Dobrze. + + + Zbieram oddzia na wypraw do Prypeci. Chcesz si przyczy? + + + Kuszce, ale podzikuj. Naukowcy obiecali mi zezwolenie na pobyt w Zonie, a pac te niele. Przykro mi, zostan tutaj. + + + Gotowi do wykonywania pomiarw w anomaliach? + + + Zawsze jestemy gotowi, jeli bdziesz nas osania. Do ktrej anomalii idziemy? + + + Idmy do Mokrada. + + + Idmy za Kopaczi do Popieliska. + + + Chwila, zmieniem zdanie, nie chc jeszcze rusza. + + + Jestemy gotowi, ale raczej powinnimy zaczeka, a emisja przejdzie... + + + Dobrze. + + + Pomiary wykonane, idziemy dalej. + + + Mnie te si tu nie podoba. Dokd teraz? + + + Idmy do Mokrada. + + + Idmy za Kopaczi do Popieliska. + + + Do bunkra naukowcw. + + + Chwila, niech si zastanowi. + + + Gotowi na powrt do bunkra? + + + W kadej chwili moemy rusza... + + + W takim razie chodmy. + + + Dobrze, zaczekajcie na mnie chwil. + + + Mam kilka pyta. + + + Wic pytaj, a ja postaram si odpowiedzie. + + + To ju wszystko. + + + Chc zapyta o misj naukowcw. + + + Ach, tunel... Tam co jest, dziwny artefakt albo co takiego. To miejsce jest bardzo dziwne. Najpierw byo tam spokojnie, a potem zaczem co czu w gowie... Roio si tam te od chomikw, ale nimi si nie przejmuj - atwo sobie z nimi poradzimy. + + + Bye tam ju? + + + Tak. Nie weszlimy gboko - robilimy pomiary dla Hermana, kiedy wyskoczya zgraja chomikw. Jak wrcilimy, naukowcy tak si podjarali wynikami, e mylelimy, e odlec. Chcieli, ebymy przeszukali caluki tunel, ale ja tam nie wejd. Teraz zatrudnili ciebie, a my mamy ci tylko osania. + + + Rozumiem. + + + Wykonywalimy wczeniej pomiary, wic damy sobie rad. + + + Gdzie wykonywalicie te pomiary? + + + Pomiary to duo powiedziane. Na powanie robilimy to tylko raz - mierzylimy anomali pola psionicznego w tym cholernym tunelu. Wtedy te jak tylko wczylimy urzdzenia, z kadej dziury zaczy wyazi dziesitki chomikw. Buawie mao jajek nie odgryzy. + + + Nie wydaje ci si to dziwne? + + + Nie, a niby czemu? Zona nie lubi wcibskich ludzi, wic to nic dziwnego. Oziorski mi tak kiedy powiedzia i wida, e jego sowa si sprawdziy. Jeli chcesz, zapytaj go, moe co wie, tylko nie chce si tym podzieli z reszt. + + + Jasne. + + + Rozumiem. + + + Moesz opowiedzie mi o mieszkacach bunkra? + + + To nieza zbieranina... Dwch naukowcw - Herman, tutejszy szef, i Oziorski. Zatrudniaj Nowikowa, ktry zajmuje si sprawami technicznymi, a Garri jest ich przewodnikiem. No i jestemy my - zatrudnili nas niedawno do pomiarw i innych naukowych rzeczy. Jest jeszcze wojak, ktrego niedawno przyprowadzi Garri. + + + Moesz opowiedzie mi o Hermanie? + + + Herman jest tu szefem - to profesor jakiego instytutu, pewnie tajnego... To on zorganizowa t ekspedycj. Ich bunkier pojawi si tu zaraz po wyczeniu Mzgozwglacza. On te zatrudni Garriego i mnie - paci niele, poza tym obieca nam oficjalne zezwolenie na pobyt w Zonie. + + + Porozmawiajmy o czym innym. + + + Moesz opowiedzie mi o Oziorskim? + + + Dobry z niego czowiek, towarzyski, jest tu numerem dwa. Herman czasem nawet sucha jego rad. Nie wiem o nim wiele wicej - zazwyczaj mamy do czynienia z Hermanem. + + + Moesz opowiedzie mi o Nowikowie? + + + Jest jak Einstein na wakacjach, tyle ci powiem. To zota rczka w kwestiach instalacji technicznych, drugiego takiego nie znajdziesz. Nie wiem, jak trafi tutaj, ale wida, e Zona nie jest mu obca - wie o niej wicej ni my. + + + Moesz opowiedzie mi o Garrim? + + + Garri to czowiek dusza. Pojawi si tu jako jeden z pierwszych. Powiedzia mi, e akurat przylecieli naukowcy, jak tu dotar, wic od razu do nich doczy. Ostatnio si nudzi, bo nie lubi siedzenia na tyku, ale nie moe odej przed kocem kontraktu z naukowcami. Jeli chcesz wiedzie co wicej, zapytaj go. + + + Opowiedz mi o onierzu. + + + Ha. Garri znalaz go uciekajcego przed zombi. Mia szczcie, e trafi na Garriego, bo inni pewnie by go rozwalili. Teraz nie wyciubia nosa z bunkra i wcale mu si nie dziwi. + + + Co tu robi najemnicy? + + + Te zbiry pilnuj bunkra. Pojawili sie jaki czas temu, pogadali z Hermanem i ju zostali. Mam wraenie, e Herman te nie jest z nich zbyt zadowolony... Ich przywdc nazywaj Czarnym i taki te ma charakter. + + + Co moesz mi opowiedzie o tej okolicy? + + + Niedaleko std jest stara baza wojskowa. Na pnoc od niej jest wioska Kopaczi, a na wschd od wioski jest stacja kolejowa, na ktrej siedz stalkerzy. Poza tym niedaleko na torach stoi pocig... To niezbyt mie miejsce... + + + Opowiedz mi o bazie wojskowej. + + + Nie ma o czym opowiada... Wszystko, co miao jak warto, dawno rozgrabiono, wic teraz jest tam niewiele poza mutantami i zombi. Stoi tam te may bunkier - wystarczy, eby ukry si przed emisj. + + + Opowiedz mi o wiosce. + + + Co z niej za wioska? Jest tam tylko kilka pagrkw. W '86 zasypano j, eby nie emitowaa promieniowania. Ludzie tam teraz nie chodz, bo to szkodzi zdrowiu, a nie ma tam nic cennego. + + + Opowiedz mi o stacji kolejowej. + + + Moesz powiedzie mi co o pocigu? + + + Stacj Janw warto odwiedzi, jeli jeszcze tam nie bye. Mona tam wypi kielicha i pogada z innymi stalkerami, poza tym to jedyne bezpieczne miejsce w tej okolicy, nie liczc naszego bunkra. + + + Widz, e masz nowy sprzt. + + + Tak jest! Jestemy teraz oficjalnie znani jako naukowo-operacyjna grupa badawcza Iskra. Nie myl sobie, e jak zostalimy naukowcami, to zapomnielimy o tobie. Odbylimy z kolegami narad i doszlimy do wniosku... e naley ci si to! Jeli wejdziesz w anomali lub, nie daj Boe, dopadnie ci emisja, przelij nam podzikowania. Nie bj si, odbierzemy wiadomo! + + + Czoem. + + + Cze. + + + Jeste gotw rusza czy zaczekamy jeszcze? + + + Mylaem, e zostan w tym tunelu przemieniony w zombi. Jak mog pomc czowiekowi, ktry mnie uratowa? + + + Masz ochot rozprostowa nogi? + + + Cze, bracie. + + + Jestemy ci duni, nie zapomn tego. + + + Czuj, e tutaj nic ju po nas i czas si std wynie... + + + O co chodzi z tym tunelem? + + + Nie ma tam w ogle kurzu, ani odrobinki. Herman mwi, e to przez Tesl, ale mnie si nie chce wierzy. + + + Zapytaj szefa, nie wiem, co mog ci powiedzie, a czego nie wolno mi wyjawi. + + + Powiedz mi, co odkrylicie, mierzc pole psioniczne. + + + Widziaem na ziemi odciski stp. Wyglday jak ludzkie, ale kto byby na tyle szalony, eby chodzi tam boso? + + + W gowie si czowiekowi miesza, a wszystko, na co spojrzysz, przybiera dziwne ksztaty. To przez to pole psioniczne, rozumiesz. + + + Co znalelicie pod ziemi? + + + Niewiele, tylko par martwych chomikw. + + + Hm... Nic, czego nie da si znale w innych miejscach Zony. + + + Dobrze si czujesz? + + + W normie, dziki tobie! Dam ci wsprzdne pewnego miejsca. Wszystko, co tam znajdziesz, jest twoje - niewiele tego, ale oddaj ci to z wdzicznoci. + + + Jak si czujesz? + + + Czowieku, wielkie dziki! Gdyby nie ty... Brak mi sw. We wsprzdne naszego schowka na znak mojej wdzicznoci. + + + yjesz? + + + Dzikuj, nie zapomn ci tego. We wsprzdne naszego schowka - nale ci si... + + + Twj mzg jeszcze dziaa? + + + Cholera, co ja widziaem, jak byem... Nie otrzsn si z tego do koca ycia... + + + To co, wracamy do bunkra? + + + Jasne! + + + Chodmy. + + + Idcie sami, spotkamy si tam. + + + Wasz oddzia jest gotw wej do tunelu? + + + W kadej chwili. + + + No to ju. Chodmy. + + + Zaczekajcie jeszcze. + + + Pjd sam. Spotkamy si na miejscu. + + + Pjd sam. Spotkamy si na miejscu. + + + Nie, nie ufamy ci, a czas to pienidz, wic albo pjdziesz z nami, albo si std nie ruszymy. + + + W takim razie chodmy. + + + W takim razie musicie poczeka. + + + Nic z tego... Nie bdziemy ryzykowa podczas emisji. + + + No to jestemy. + + + To co, zaczynamy? + + + Tak, oczywicie. + + + Niech no si rozejrz. + + + Czego chcesz, do cholery? + + + Tylko przechodziem. + + + To id dalej. + + + Ju id. + + + Spokojnie, kretynie. + + + Nie twoja sprawa! + + + O, cze. + + + wawy powiedzia mi, e podstpny z ciebie typek. Musiae ju oszuka niejednego stalkera. + + + O czym ty mwisz? Nigdy w yciu czego takiego nie zrobiem! wawy ma nierwno pod sufitem! + + + Co powiedziae o mnie bandytom? Czemu czekali na mnie przy dwigach portowych? + + + Musiae mnie z kim pomyli - nie zadaj si z bandytami! + + + wawy powiedzia mi o tobie... Radz ci odda mi spluw po dobroci, tak bdzie lepiej dla nas obu. + + + Co on ci nagada? Nie mam nic, co nie jest moj wasnoci! + + + Spadaj, koleko... + + + Pom mi, brachu - potrzebuj apteczki! + + + Powiedz mi najpierw, gdzie s moje rzeczy! + + + Wybacz, bardzo potrzebowaem pienidzy... Powiem ci wszystko, tylko mi pom! Przysigam, skoczyem z tym, bd juz uczciwy! + + + Dobrze, trzymaj. + + + Dziki! Ukryem towar w moim schowku w kanaach za podstacj. + + + Rozumiem. + + + Nie wierz ci. Nie dostaniesz apteczki. + + + Trzymaj. + + + Nie dostaniesz jej. + + + Dziki. Nie sdziem, e mi pomoesz. + + + Kogo mona wynaj do ochrony naukowcw? + + + Powinno, oczywicie, kogby innego! To najlepsi bojownicy w Zonie! Cika stra szturmowa - jak to brzmi? + + + W tej chwili zatrudniaj Wolno? W takim razie nie wiem. Miaem zaproponowa Powinno, ale oni si gryz midzy sob. + + + Kto moe wykona pomiary dla naukowcw? + + + Porozmawiaj z Szulg. Nie wszyscy u niego s naukowymi ekspertami, ale jest tam paru bystrych chopakw. + + + Wci pac Wolnoci za ochron? Jeli tak, odradzam zatrudnianie Powinnoci... Nic wicej ci nie doradz. + + + Jak dotarlimy do tunelu, winda przestaa dziaa... + + + Ha, wykorzystalicie jedyny dziaajcy generator, w dodatku zapasowy. Ledwo go uruchomiem, wic zrobi swoje i wysiad. Powinnicie by wdziczni, e nie przesta dziaa w p drogi... Z tej windy nie ma wyjcia awaryjnego! + + + Kto mg ukra zawarto osobistej skrytki? + + + Do licha, naprawd nie wiem. Powiem ci tylko, e gdyby w Janowie rzdzi Szulga, nie doszoby do tego. + + + Potrafisz wama si do stalowego kontenera? + + + Nie jestem kasiarzem. Nie pracuj w metalu... Przyjd do mnie, jeli masz kopoty z elektronik. + + + Grupa pokojowo nastawionych czonkw Monolitu szuka azylu. Kto moe im pomc? + + + Mwisz powanie? Syszaem, e to zwierzta... Stalkerzy nie dadz im y, to na pewno... Powiniene porozmawia z Szulg. Jeli podpukownik wpuci ich do Powinnoci, bd bezpieczni. Moe nawet znajd jakie poyteczne zajcie. + + + Potrafisz odszyfrowa czarn skrzynk? + + + Niech popatrz... Bdzie przy tym troch pracy. Potrwa to ze trzy godziny i bdzie niemao kosztowa. Zrobi, co trzeba, i porozmawiamy... Id si przej, dopki nie skocz, ebym mg si skupi. + + + Niech popatrz... Bdzie przy tym troch pracy. Potrwa to ze trzy godziny i bdzie niemao kosztowa. Zrobi, co trzeba, i porozmawiamy... A tym czasem moe poszukasz potrzebnych mi komponentw? Zarobisz troch, a ja dam ci rabat na t robot. + + + Co? Jeszcze nad tym pracuj. Ta skrzynka to koszmar... + + + Rozpracowaem twoj czarn skrzynk... Niech szlag trafi tak robot... + + + Ile ci jestem winien? + + + Co najmniej 3000. + + + Prosz. + + + Nie mam tyle. + + + Mog da ci znik, jeli przyniesiesz mi komponenty. + + + W razie czego przychod. + + + Troch drogo... Musz si zastanowi. + + + Dam ci znik. Tylko 2850. + + + Dam ci znik. Tylko 2700. + + + Dam ci znik. Tylko 2550. + + + Dam ci znik. Tylko 2400. + + + Dam ci znik. Tylko 2250. + + + Dam ci du znik. Tylko 2100. + + + Dam ci du znik. Tylko 1950. + + + Dam ci du znik. Tylko 1800. + + + Taniej si nie da. Tylko 1650. + + + Ha, nie mam pojcia, na co ci to nagranie, ale za tak cen oby byo uyteczne. + + + Zobaczymy. + + + Wci pracuj nad czarn skrzynk... Moe si do czego przydasz i zdobdziesz mi te komponenty? + + + Senka? Jak szedem przez Zaton, Senka przyczy si do mnie i odtd ze mn jest... To zawodowy pijaczyna z wieloletnim dowiadczeniem... Ha, ha! Wykorzystuj go do drobnych prac typu przynie, podaj, pozamiataj... + + + Kto moe by zainteresowany informacjami na temat zaoyciela Powinnoci? + + + Oczywicie Szulga... Powinno pamita swoje pocztki. Wiesz, co mwi: kto nie zna przeszoci, jest skazany na jej powtarzanie... Rzecz w tym, eby Wolno nie dostaa tych informacji w swoje rce, bo na pewno je zafaszuj. Nie przez ze zamiary, tylko przez sab pami... + + + Przyniosem ci narzdzia. + + + wietnie... Ktre s dla mnie? + + + Te podstawowe. + + + Doskonale! Teraz potrzebuj jeszcze narzdzi do precyzyjnej pracy i do kalibracji... + + + Te do precyzyjnej pracy. + + + Doskonale! Teraz potrzebuj jeszcze podstawowych narzdzi i narzdzi do kalibracji... + + + Te do kalibracji. + + + Doskonale! Teraz potrzebuj jeszcze narzdzi podstawowych i tych do precyzyjnej pracy... + + + Na razie adne. + + + Super! Jeszcze narzdzia do kalibracji i bd mia komplet. + + + Super! Jeszcze narzdzia do precyzyjnej pracy i bd mia komplet. + + + Super! Jeszcze narzdzia podstawowe i bd mia komplet. + + + A niech mnie! Gdzie je znalaze! + + + Jeli potrzebujesz narzdzi, mog je zdoby. + + + Byoby wietnie. W tej chwili pracuj jak w epoce kamiennej. Jedyna rnica jest taka, e mam lutownic zamiast szamaskiego kostura... Gdybym mia narzdzia, mgbym zrobi nieze ulepszenia, a i tobie co z tego by wpado... + + + Dobrze. Poszukam ich. + + + Zmieniem zdanie. + + + Dobry pomys. Bd mg robi ulepszenia, a ty zarobisz. + + + Mam PDA handlarza Powinnoci. Znasz kogo, kto byby nim zainteresowany? + + + Handlarz w Powinnoci? Nie mog... Daj PDA Szuldze, a on si tym zajmie. Ani sowa Wolnoci, rozumiesz? Posu si jednym osiem, eby popsu reputacj caej frakcji... + + + Znalazem dokumenty. Opisuj drog do Prypeci. + + + Popatrzmy... Tak, tak, tak... Krtko mwic, pod Prypeci biegnie tunel o nazwie Prype 1, ktrego jeden odcinek koczy si luz w czci transportowej fabryki Jupiter. Niesamowite! Sdzc z tych notatek, zosta szczelnie zamknity i wypeniony gazem, oprcz tego odcito zasilanie. Mgbym sprbowa uruchomi generator i otworzy luz. Tyle e... + + + Tyle e nie przejd przez Jupiter bez zabezpieczenia, a tobie nie radz myle o zejciu pod ziemi w pojedynk. Potrzebujesz przynajmniej paru ludzi. Wszystkim bd potrzebne kombinezony z aparatami tlenowymi o zamknitym obiegu, bo inaczej nie wytrzymacie tam minuty... Suchaj, na wiey niedaleko std mieszka Zulus - sprbuj z nim porozmawia. Jeli si dogadacie, powie ci, jak zebra oddzia. + + + Wspomniae o materiaach... + + + Wanie, tutaj waciwie nie da si znale materiaw do pracy na sprzcie radiowym. Zuyem wszystko, co udao mi si znale, a dostaw nikt tu nie robi, bo mona si bardziej obowi na sprzeday broni... Ale syszaem, e co mogo zosta w cementowni... + + + Znalazem materiay, prosz bardzo. Przeszukaem kady kt cementowni! + + + No, brachu, jestem pod wraeniem! Zanotuj sobie: darmowa robocizna przy wszystkich naprawach i ulepszeniach dla mojego ulubionego stalkera! + + + Znalazem cz materiaw, ktre chciae. Prosz. + + + Brawo! Dostaniesz niezy rabat, przyjacielu! + + + Mog zdoby dla ciebie materiay. + + + Byoby wietnie! Jeli znajdziesz kalafoni albo kondensatory, przynie je mi... Bybym wdziczny nawet za tekstolit. Nie mam zbyt wiele pienidzy, ale na pewno dostaniesz znik. + + + Do czego ci potrzebne te materiay? + + + Dubi w broni i sprzcie... Trzeba jako zarobi na kawaek chleba... Ale moj pasj jest sprzt radiowy. Wiesz, jakie to uczucie, jak uda si co poskada i nawet dziaa? Pamitam, e raz zbudowaem zaguszacz... By bardzo przydatny - wczaem go, kiedy nagonienie w 100 Radach" nie dawao mi spa. + + + Skd komponenty radiowe w cementowni? + + + Cementownia to tylko nazwa... Przestali robi cement na dugo przed katastrof w Czarnobylu. Rozebrali, co si dao, i zaczli produkowa w zakadzie urzdzenia elektryczne. + + + Znalazem w Jupiterze dokumenty. Rzucisz na nie okiem? + + + Tak... Nie ma tu nic ciekawego... To jakie administracyjne pierdoy... + + + Hm... Tu i wdzie jest co ciekawego, ale niczego nie mog by pewien... Potrzebujemy caoci informacji. Sprbuj poszuka w miejscach wspomnianych w dokumentach. + + + Do cholery, potrzebuj materiaw. Jak mam pracowa w tych warunkach?... O, cze. Co sycha? + + + Czoem! Potrzebujesz pomocy w kwestiach technicznych? Materiaw oczywicie nie mam, ale mog naprawi ci sprzt i dokona niewielkich ulepsze. + + + O, cze. Suchaj, tak sobie mylaem... Okazuje si, e potrzebne mi materiay kurz si spokojnie w cementowni... Na sam myl dostaj szau. + + + Witaj! Co ci si popsuo czy uzbierae pienidze na ulepszenie? Pamitaj, masz doywotni znik! + + + Czoem, bracie! Czym mog suy? Pamitaj, u mnie masz najlepsze moliwe ceny. + + + Moesz odblokowa modu pamici? + + + Tak sdz... Nigdy wczeniej tego nie robiem, wic potrzebuj co najmniej trzech godzin. Z chci sprbuj... W zwizku z tym zaproponuj atrakcyjn cen - tylko 1000. + + + Mog zaczeka, wic umowa stoi! + + + wietnie! Zabieram si do pracy, a ty si nie piesz... Dam ci zna, jak skocz. + + + Nie mam tyle. + + + Wr, jeli chcesz, ebym to zrobi. Nikt si tego taniej nie podejmie. + + + Zastanowi si. + + + Powiedziaem ci, e zrobi to w trzy godziny. 1000 to wietna cena, na twoim miejscu bym si zgodzi. + + + I co, odblokowae modu pamici? + + + Nie, jeszcze nad tym pracuj... Nie bj si, dam ci zna, jak skocz. + + + Co? Nie dostae moduu? Musiae si rozmin z Senk - posaem go do ciebie z moduem. Niewane. Oglnie rzecz biorc, poza pomiarami gruboci warstw gruntu i gstoci rolinnoci zawiera wsprzdne trzech radiolatarni. Przel ci je na PDA... + + + Prbowae namierzy chimery? + + + Ranna posza do Zatonu. Grupa Gonty za ni idzie... Ale syszaem, e brakuje im dowiadczonego myliwego. Jeli im pomoesz, odwdzicz ci si... Ta druga, ktra zabia Lisa... Zgubiem j. Tak jakby si rozpyna... Biedny Lis... Dobry by z niego chop, ale staro nie rado... + + + Z t zranion si rozprawie... Ta druga, ktra zabia Lisa... Zgubiem j. Tak jakby si rozpyna... Biedny Lis... Dobry by z niego chop, ale staro nie rado... + + + Co robisz? + + + Jestem Traper, do niedawna polowaem na mutanty, ktre stanowiy zagroenie dla stalkerw... Obecnie odbieram rozkazy i przekazuj je modszym myliwym. Szkol ich i ucz myliwskiej taktyki... + + + Opowiedz mi o polowaniu na mutanty. + + + Rne mutanty wymagaj rnego podejcia. Burery i poltergeisty wymagaj jednego, a nibyolbrzymy i kontrolerzy innego... A chimery s wyjtkowe. + + + Opowiedz mi o burerach. + + + Burery wykorzystuj ataki grawitacyjne... Na krtkim dystansie rzucaj tob, a gdy s daleko, prbuj rzuci czym w ciebie... Najlepiej trzyma je na redni dystans i cigle si rusza, chyba e lubisz dostawa cikimi przedmiotami. Ale staraj si oszczdza siy! Burery wykorzystuj impulsy grawitacyjne do wyrywania ludziom broni z rk, a jak bdziesz zmczony, moe im si uda. + + + Opowiedz mi o poltergeistach. + + + Poltergeisty dziel si na dwa rodzaje. Pierwszy ciska w przeciwnika przedmioty za pomoc grawitacji, a drugi to poltergeist ogniowy, ktry podpala przeciwnikw. Niedowiadczeni myliwi kr wok nich, by unikn atakw... Rzecz w tym, eby wiedzie, e poltergeisty nie widz ani nie sysz w normalnym tych sw znaczeniu, i umie to wykorzysta. Wyczuwaj ruch obiektw w polu grawitacyjnym... Wic dowiadczony myliwy zamiera w bezruchu, gdy tylko zobaczy poltergeista, po czym strzela i znowu zamiera, i tak w kko. + + + Opowiedz mi o kontrolerach. + + + Wykorzystuj twj umys przeciwko tobie. Kiedy polujesz na kontrolera, trzeba wykorzystywa osony, bo on musi ci widzie, eby mc wpywa na twj umys... Oprcz tego kontrolerzy s do wolni, wic jeli way si twj los, uywaj granatw. + + + Opowiedz mi o chimerach. + + + To niebezpieczne nocne drapieniki. Prbuj zaj ci od tyu pod oson nocy i wskoczy na ciebie. Jeli wiesz, e w okolicy jest chimera, ogldaj si za siebie i osaniaj kumplom tyki... + + + Opowiedz mi o nibyolbrzymach. + + + Najtrudniejsz rzecz w polowaniu na nibyolbrzyma jest zabicie go. Potrafi zebra potne cigi bez mrugnicia okiem... Powiem tylko, e warto sprbowa strzaw ze strzelby z maej odlegoci. Pamitaj, e uderzenia nibyolbrzyma potrafi zmie wszystko, co nie jest przytwierdzone do betonu. Atakuj z gry i postaraj si, eby to, na czym stoisz, byo do wytrzymae. + + + Dobra, niewane. + + + Czemu ju nie polujesz? + + + Starzej si. Przez to te zgin Lis... By moim partnerem i przyjacielem. Wiele razem upolowalimy, rami w rami... Niedaleko Zatonu natknlimy si na dwie chimery, ktrych nie widziano w Zonie od ptora roku... Jedna z nich powalia Lisa na ziemi, zanim zdyem wyj strzelb. Jak zraniem t drug, obie ucieky... Oby si smayy w piekle na wieki! + + + Kto mg ukra zawarto osobistej skrytki? + + + Hm... Nie mam pojcia... Takie rzeczy nie zdarzaj si wrd myliwych. Rozumiesz, wkurzysz ludzi, to mog zacz oszczdza amunicj, kiedy pijawka bdzie dobiera ci si do tyka. + + + Wyjtkowe sytuacje wymagaj wyjtkowych rodkw. Znajc pijawki, pomylabym, e dwie wybray si na polowanie. Ale teraz nie maj dokd wraca, wic nie bd stanowi zagroenia dla stalkerw. + + + Masz dla mnie jak inn prac? + + + Pewnie. Niedawno oddzia stalkerw wszed do tuneli na pnoc od fabryki i natkn si na legowisko mutantw. Byli w takim szoku, e aden z nich nie mg powiedzie, co to byy za mutanty, ale dwch z nich nie wrcio stamtd ywych. Pniej ludzie w Janowie wystraszyli si caej sprawy i zebrali 5000 nagrody dla tego, kto zrobi porzdek z tym legowiskiem. To niebezpieczna praca, sam zdecyduj... Zajmiesz si tym? + + + Zajm. + + + Odwany z ciebie chop. ycz szczcia. Przyda ci si. + + + Nie teraz. + + + Rozumiem ci... Wtpi, by ktokolwiek mia odwag stawi czoo caemu legowisku mutantw. + + + Jak wczeniej. Niezidentyfikowane mutanty w tunelach na pnoc od fabryki Jupiter. 5000 nagrody... Zajmiesz si tym jednak? + + + W tej chwili stalkerw niepokoj mutanty w tunelach... + + + W tunelach byy zmutowane kary. Teraz to martwe zmutowane kary. + + + Podejrzewam, e to burery. To wyjania, czemu w Janowie tak si sposzyli... Poniewa sprawa zostaa zaatwiona, nagroda jest twoja! + + + Podejrzewam, e to burery. Te, ktre niedawno zabiy dwch stalkerw. To wyjania, czemu w Janowie wyznaczyli nagrod za ich zabicie... Poniewa sprawa zostaa zaatwiona, nagroda jest twoja! + + + Jestem gotw zmierzy si z chimer. + + + wietnie. Myliwy, ktry natkn si na t choler, widzia j o zmierzchu. Sza w stron kompleksu wentylacyjnego. Chimery s stworzeniami nocnymi i terytorialnymi, wic pewnie sza na swoje tereny owieckie... Tam powiniene jej szuka po zmroku. Ale pamitaj, e w ciemnociach jest bardziej aktywna... Uwaaj na siebie i udanych oww. + + + Chimera nie yje. + + + Dzikuj... Dzikuj! Pomcie Lisa, moe teraz spoczywa w pokoju. Oto twoja nagroda - zasuye na ni... Jest jeszcze co. We moj strzelb. Dae mi co o wiele waniejszego - odrobin wyczekiwanego spokoju. + + + Jestem Traper... Nie musisz si przedstawia. + + + Co ci tu sprowadza? + + + Dzikuj za przyjcie. Potrzebuj solidnego i dowiadczonego myliwego, a w Janowie lepszego od ciebie nie ma. Po tym wszystkim, co si stao, nie mog pozwoli, by ta chimera znowu ucieka... Przeznaczam na to wszystkie swoje oszczdnoci: 10000. Chc mie pewno, e robota bdzie porzdnie wykonana. Lis musi zosta pomszczony! + + + Bagam ci, zajmij si chimer. Jeli nie chcesz uwolni Janowa od tego morderczego mutanta, zrb to dla pienidzy... 10000 to spora suma. + + + Jak si przedstawia sytuacja z chimer? Liczy si czas, bo ona moe przenie si na inne tereny oww. + + + Dobrze ci widzie! Co nowego? + + + Masz dla mnie jak inn prac? + + + Oczywicie. W Mokradle za cementowni zauwaono grup bagiennych pijawek. Na razie trzymaj si swojego bagna... Ale miejscowi stalkerzy chc mie pewno, e pozostan tam na zawsze, e tak powiem. Cena za ca grup wynosi 3000. Podejmiesz si tego? + + + Zrobi to. + + + wietnie. Pomylnych oww... + + + Nie teraz. + + + Twoja sprawa. Masz jeszcze czas zmieni zdanie, nim inni myliwi wezm si za to. + + + Jak wczeniej. Grupa bagiennych pijawek w Mokradle za cementowni. Nagroda wynosi 3000. Wchodzisz w to? + + + W tej chwili nie ma nic poza pijawkami w Mokradle. + + + Zabiem bagienne pijawki. + + + Teraz stalkerzy mog si odpry. Oto twoja nagroda zgodnie z umow. + + + Tak, miejscowi stalkerzy z chci pozbd si takiego ssiedztwa. Nawet zebrali nagrod, konkretnie 3000. Prosz, jest twoja. + + + Zabilimy z Gont chimer na Zatonie. + + + Dzikuj wam za to. Im mniej tych bestii w okolicy, tym lepiej dla nas. Gdyby teraz jeszcze wyledzi t drug... + + + Dzikuj za rozprawienie si te z drug besti. Dobrze wiedzie, e te chimery nie odbior ju ycia adnemu stalkerowi... + + + Powiedz mi, jak zabie kontrolera. + + + Suchaj i ucz si, przyjacielu... Poszedem do schowka po swj towar i jak dotarem na miejsce, patrz, a tam - kontroler. Znalazem jak metalow kratk, eby si osoni, i zakradem si do potwora. Zanim si zorientowa, wadowaem mu w eb p magazynka. Jak tylko sprbowa przej nade mn kontrol, wykoczyem go kolb karabinu. I po krzyku. + + + Opowiedz mi o artefaktach w kamienioomach. + + + Ha! Nie ma o czym opowiada, bo nic ju tam nie ma. Nie ma sensu szpera w anomaliach, ktre przeczesa Flint. Kady to wie. + + + A wic to ty zostawie swojego kumpla na mier w kamienioomach? + + + Co?! + + + Nie moesz niczego mi udowodni. Wygadujesz jakie brednie... Masz swoje sowo przeciwko sowu czonka Wolnoci - czarno widz twoje szanse. + + + Przekonamy si. + + + Nic. + + + Dziki, na razie. + + + Opowiedz mi o pijawkach na Zatonie. + + + Jak byem na Zatonie, pijawki bardzo uprzykrzay ycie stalkerom. Stalkerzy polowali na nie dzie i noc, ale nic to nie dao. Postanowiem im pomc, wic wziem strzelb i poszedem prosto do legowiska pijawek. Troch si z nimi zabawiem i problem pijawek na Zatonie przesta istnie. + + + Pewnie nawet nie wiesz, gdzie jest to legowisko. + + + Zjedaj. + + + Czego chcesz? Rozpowiadaj swoje brednie gdzie indziej! + + + Spadaj, koleko... Masz swoje sowo przeciwko sowu czonka Wolnoci - czarno widz twoje szanse. + + + Przekonamy si. + + + Dziki, na razie. + + + Opowiedz mi histori o skrcie do Jupitera. + + + Przewodnik nadkada duo drogi, idc z Zatonu. Postanowiem pj na wprost... i tak zrobiem. Wyprbowaem par miejsc i szybko znalazem drog pomidzy anomaliami. Sprzedaem te informacje przewodnikowi i teraz on prowadza wszystkich t drog. + + + A moe zapytamy Pilota, od kogo ma mapy? + + + Zjedaj. + + + Czego chcesz? Rozpowiadaj swoje brednie gdzie indziej! + + + Nic mi nie udowodnisz. Masz swoje sowo przeciwko sowu czonka Wolnoci - czarno widz twoje szanse. + + + Przekonamy si. + + + Dziki, na razie. + + + Opowiedz mi o swojej wyprawie do Oazy. + + + Byem pierwszym czowiekiem, ktry dotar do Oazy. Nie ma w niej mutantw ani anomalii - tylko cisza i spokj. A artefaktw tam jak mrwek - do wyboru, do koloru. + + + Wciskasz kit. Byem w Oazie i wcale tak nie wyglda. + + + Zjedaj. + + + Czego chcesz? Rozpowiadaj swoje brednie gdzie indziej! + + + Sam wciskasz kit. Masz swoje sowo przeciwko sowu czonka Wolnoci - czarno widz twoje szanse. + + + Przekonamy si. + + + Dziki, na razie. + + + Opowiedz mi o swojej pracy dla naukowcw. + + + Niedawno odwiedziem ich bunkier. Bardzo si ucieszyli i powiedzieli wanie ciebie teraz potrzebujemy, Flint!. Okazao si, e chcieli ustawi swoje urzdzenia pod anomaliami. Ja na to mwi buka z masem i zrobiem bez problemu wszystko, o co prosili. Najtrudniej byo wydusi z tych jajogowcw wynagrodzenie. + + + Przesta przypisywa sobie dokonania innych ludzi. Ja to zrobiem, nie ty! + + + Zjedaj. + + + Czego chcesz? Rozpowiadaj swoje brednie gdzie indziej! + + + Kamstwa... Nie moesz niczego udowodni. Masz swoje sowo przeciwko sowu czonka Wolnoci - czarno widz twoje szanse. + + + Przekonamy si. + + + Dziki, na razie. + + + Cze. Ty te chcesz posucha moich opowieci? + + + Chcesz o co zapyta? + + + Czego ci potrzeba? + + + Cholera, czowieku... Umieram... + + + We t apteczk. + + + Dziki, przyjacielu, ale to nie pomoe... Suchaj... Byem tu z czowiekiem z Wolnoci... Znalelimy artefakt... Jak wracalimy, wszedem w anomali gazow... Gdyby mi pomg, dabym sobie rad... Ale wzi artefakt i zostawi mnie tu. Powiedzia, e idzie po pomoc... Znajd go. Chc, eby ludzie wiedzieli, e nie mona mu ufa... + + + Znajd go. + + + Wtpi, bym mg mu cokolwiek udowodni. + + + Zap mnie za rami, zaprowadzimy ci do medyka. + + + Wypadki chodz po ludziach. Na razie. + + + Mam co dla ciebie... + + + Trzymaj. To Kotlet. + + + Dziki. Naukowcy dobrze pac, ale bardziej zaley mi na zezwoleniu. + + + Wielkie dziki, przyjacielu! W kocu mog ruszy do Prypeci - musz tylko znale drog. + + + To Kulebiak. We go. + + + Dziki. Naukowcy dobrze pac, ale bardziej zaley mi na zezwoleniu. + + + Wielkie dziki, przyjacielu! W kocu mog ruszy do Prypeci - musz tylko znale drog. + + + Kotlet i Kulebiak. We je. + + + Wielkie dziki, przyjacielu! W kocu mog ruszy do Prypeci - musz tylko znale drog. + + + Nie. + + + Nudno ci tu jest? + + + Wspomniae o swoim kontrakcie... + + + Zatrudniem si u naukowcw. Mylaem, e bdzie atwo. Nie zauwayem tylko, e kontrakt wygasa dopiero po wykonaniu wszystkich prac. Naukowcy obiecali, e na koniec dadz mi oficjalne zezwolenie na pobyt w Zonie. + + + Wykonaem kady ustp kontraktu poza jednym drobiazgiem. Musz znale wszystkie istniejce artefakty chemiczne. Kto mg wiedzie, e nie da si tu znale Kotletw ani Kulebiakw? Gdybym zdoby te dwa, mgbym ju dawno temu ruszy do Prypeci, ale nic z tego! + + + Moe mgbym pomc ci w szukaniu tych artefaktw. + + + Szkoda. + + + Tak... Tylko Kotlet i Kulebiak i mog rusza do Prypeci! + + + Co takiego jest w Prypeci? + + + Nikt nie wie, jak tam doj... W kocu jestemy w Zonie, wic nie da si i na wprost. Podobno jest tam istne zagbie artefaktw... Tak czy siak, o Prypeci kry tyle opowieci, e jestem po prostu ciekaw. + + + Zbieram oddzia na wypraw do Prypeci. Chcesz si przyczy? + + + Sam mylaem, eby si tam wybra. Ale bez adnego towarzystwa. Nic do ciebie nie mam, ale przyzwyczaiem si do pracy w pojedynk. + + + Ha, niedugo sam ruszam do Prypeci. Ale bez adnego towarzystwa. Nic do ciebie nie mam, ale przyzwyczaiem si do pracy w pojedynk. + + + Witaj w siedlisku nudy. + + + Czowieku, naprawd chc i do Prypeci! + + + Musz tylko znale drog do Prypeci i dotr tam raz-dwa. + + + Tutaj jest dobrze! Tutaj mona y jak naley! + + + Na pewno dobrze czu si bezpiecznie. Gdyby tylko nie byo tak nudno! + + + Moe mgbym pomc ci w szukaniu tych artefaktw. + + + Naprawd znasz drog do Prypeci? + + + Nie, ale jeli jest tam tak duo artefaktw, jak ludzie mwi, jestem gotw szuka jej choby zaraz. Jestem starym przecieraczem szlakw - to ja pierwszy znalazem drog do Jupitera. Ale zawsze pracuj sam - nie mam czasu pilnowa komu tyka. + + + Zabierzesz mnie do Jupitera? + + + Jasne. Jeste gotw do drogi? + + + Tak. + + + Jeszcze nie. + + + Nie w czasie emisji. + + + Zaprowadzisz mnie do Prypeci? + + + Za 5000 mog sprbowa. Podoba mi si tam! + + + Umowa stoi. + + + Nie, dzikuj. + + + Dobra, twoja sprawa. + + + Nie mam tyle pienidzy. + + + Za 5000 mog sprbowa. Poczekajmy tylko, a przejdzie emisja. + + + Moesz zaprowadzi mnie do Zatonu? + + + Nie, tam jest zbyt nudno. Tam stoi Pilot, on jest od bezpiecznej, ale nudnej pracy. + + + Mog zaprowadzi ci do Janowa i za 3000 dogada si z Pilotem, eby zabra ci do Zatonu. Co ty na to? + + + Zgadzam si. + + + Nie. + + + Twoja sprawa. + + + Nie mam tyle pienidzy. + + + Mog zaprowadzi ci do Janowa i za 1000 dogada si z Pilotem, eby zabra ci do Zatonu. Co ty na to? + + + Nie, tam jest zbyt nudno. Tam stoi Pilot, on jest od bezpiecznej, ale nudnej pracy. Zapytaj go po emisji. + + + Mog zaprowadzi ci do Janowa i za 3000 dogada si z Pilotem, eby zabra ci do Zatonu. Oczywicie, jak przejdzie emisja. + + + Mog zaprowadzi ci do Janowa i za 1000 dogada si z Pilotem, eby zabra ci do Zatonu. Oczywicie, jak przejdzie emisja. + + + Podobno przeszede tunelami?... Ja te przyszedem z Jupitera - znalazem przejcie pod ziemi. Mog ci zaprowadzi z powrotem za darmo, jeli chcesz... Wiesz, z chci su pomoc przedstawicielom wadzy. + + + Kop lat! Podobno przeszede tunelami?... Znalazem przejcie pod ziemi. Mog ci zaprowadzi z powrotem za darmo, jeli chcesz... Wiesz, z chci su pomoc przedstawicielom wadzy. + + + Kop lat! Podobno przeszede tunelami?... Nie uwierzysz, ale pomimo niewypenienia kontraktu, udao mi si dosta zezwolenie... Jak tylko si to stao, ruszyem tutaj i znalazem przejcie pod ziemi. Mog ci zaprowadzi z powrotem za darmo, jeli chcesz... Wiesz, z chci su pomoc przedstawicielom wadzy. + + + Kop lat! Podobno przeszede tunelami?... Znalazem przejcie pod ziemi. Mog ci zaprowadzi z powrotem za darmo, jeli chcesz... Wiesz, z chci su pomoc przedstawicielom wadzy. Przy okazji, dzikuj za pomoc w wypenieniu warunkw kontraktu z naukowcami... Troch si tu rozejrzaem i znalazem to - prosz. Na pewno ci si do czego przyda. + + + Topol, czemu nie ochraniasz bunkra naukowcw? + + + Zostalimy zatrudnieni do wykonywania pomiarw i zbierania prbek. W tej chwili jestemy prawie naukowcami. Poza tym nie mam nic przeciwko samej pracy, ale nie wiem, czy dam rad nowym wrogom jajogowych. Nie mam ochoty zgin od kuli najemnika. + + + Jeste w niewaciwym miejscu! Lepiej std zmiataj, zanim pora te okae si niewaciwa. + + + Szukasz guza czy co? Zjedaj std, zanim go znajdziesz! + + + Spadaj, koleko... Rozejdmy si w pokoju. + + + Co teraz zrobicie? + + + Niedugo idziemy na stacj Janw. Chod nami, jeli chcesz. + + + Dobrze, jest mi po drodz. Docz do was. + + + Nie, jest mi nie po drodze. + + + Dobrze, e przyprowadzie ich do nas - sami nie wytrzymaliby dugo. + + + Dziki za dogadanie si z Powinnoci. + + + Co teraz zrobicie? + + + Niedugo idziemy na stacj Janw. Chod nami, jeli chcesz. + + + Dobrze, jest mi po drodze. Docz do was. + + + Nie, jest mi nie po drodze. + + + Dobrze zrobie. Pomoge tym chopakom i przyprowadzie nam posiki. To si chwali. + + + Dziki za dogadanie si z Wolnoci. + + + Wiesz, kto mg ukra zawarto osobistej skrytki? + + + Nie wiem - s tu ludzie najrniejszego sortu... Zapytaj Kostoprawa, on zna tu prawie kadego. + + + Chodmy do Zulusa. + + + Dobrze. Mam nadziej, e nie zacznie strzela, jak zobaczy mj stary pancerz. Musimy go po drodze odebra... i zwrci ten, ktry nosz. + + + Chodmy. + + + Czekaj. Emisje szkodz zdrowiu... Zaczekajmy troch. + + + Co si stao? + + + Nie pamitamy, jak si tu znalelimy. Pamitam, e stanowilimy oddzia Monolitu... Ogromnie chcielimy dotrze do centrum Zony. Tam wanie jest Monolit - to meteor, ktry przynis z innych planet zalki nowego ycia... Pamitam, e dotarlimy razem do CEJ... A potem ju tylko wyrywki. Pamitam jasne wiato... kosmiczne zimno... i czysty gos... Wszystko byo wprost doskonae. Nie pamitam, co gos kaza mi teraz robi. Kilka lat mojego ycia przepado. Z chopakami jest tak samo. Nie wiemy, co robi. Musimy znale jakie schronienie przed emisjami... i mutantami, tak? Masz jaki pomys, gdzie bdziemy bezpieczni? + + + Niedaleko std jest baza stalkerw. Mog pokaza ci j na mapie. + + + Nie wiem, czy tam bdzie bezpiecznie. Gdy szlimy do CEJ, traktowano nas podejrzliwie... Pniej chyba zabilimy jakich stalkerw. Wiesz, jak ludzie traktuj teraz nasz frakcj? Pewnie zaczn strzela. Moesz nam pomc? Moesz powiedzie wszystkim w obozie stalkerw, e ju nie zabijamy? Moesz namwi ich, eby nas przyjli? + + + Nie ma sprawy, porozmawiam z nimi przy najbliszej okazji, jak bd w bazie. + + + Przykro mi, nie mog wam pomc. + + + Jakiej pomocy potrzebujecie? + + + Potrzebujemy schronienia przez emisjami... i mutantami, tak? Moesz znale miejsce, gdzie bdziemy bezpieczni? + + + Dobrze. Popytam w Janowie. + + + Przykro mi, nie mog wam pomc. + + + eby dotrze do Prypeci, potrzebny bdzie kombinezon z aparatem tlenowym o zamknitym obiegu. + + + W porzdku - mam cigle swj kombinezon z Monolitu, a w nim jest co takiego. Tyle tylko, e nie mog si w nim pokaza w Janowie. + + + Zbieram oddzia na wypraw do Prypeci. Chcesz si przyczy? + + + Poszedbym... Bardzo mnie ciekawi, co si nam tam przydarzyo. Ale teraz nie mog. Nie mog zostawi tu chopakw, a oni nie pjd. I tak duo przeszli. + + + Tak, pjd z tob. Bardzo chc si dowiedzie, co si nam przydarzyo. Mam nadziej, e znajd odpowied w Prypeci. Musz tylko ostrzec Lokiego, ale na pewno nie bdzie protestowa. + + + Tak, pjd z tob. Bardzo chc si dowiedzie, co si nam przydarzyo. Mam nadziej, e znajd odpowied w Prypeci. Musz tylko ostrzec Szulg, ale na pewno nie bdzie protestowa. + + + Jeste gotw do drogi? + + + Tak. + + + Cze, stalkerze. Moesz nam pomc? + + + Czoem. Dowiedziae si, czy moemy i do bazy stalkerw? + + + Nie, cigle nad tym pracuj... + + + Popiesz si, bo tutaj nie wiadomo co si moe zdarzy. + + + Cze. Dzikuj, e nam pomoge. + + + Cze. + + + Jak leci? + + + Niele, oddzia jest w porzdku, ale naprawd chciabym si dowiedzie, co si nam przydarzyo. + + + Co tu robi najemnicy? + + + Powiniene o tym porozmawia z Hermanem. On si zajmuje kwestiami administracyjnymi dziaania laboratorium. O ile mi wiadomo, najemnicy dogadali si z Hermanem co do ochrony naszego laboratorium. Nie znam szczegw tej umowy. Musz jednak podkreli, e wiele razy pokazali swoj sprawno w boju. + + + Co tu robicie? + + + To chyba retoryczne pytanie? Prowadzimy badania. Interesuje ci co konkretnie? + + + Jaki jest cel waszych bada? + + + Nie mamy konkretnego celu. Mona powiedzie, e jestemy naukowymi zwiadowcami. Chcemy rozpozna korelacje pomidzy pewnymi zjawiskami, opracowa teorie i dowie ich lub je sfalsyfikowa. Niektre z naszych teorii nie maj waciwie adnego praktycznego celu. + + + Co wiecie na temat Zony? + + + Mog tylko snu hipotezy... Uwaam, e Zona powstaa w wyniku dziaania jakiej nowej siy. Pola elektromagnetyczne, sia fizyczna ani promieniowanie nie mogy tak szybko zmieni biosfery. Oczywicie, cz mutacji da si wyjani promieniowaniem... Ale, przepraszam bardzo, zwyka winia potrzebowaaby setek, jeli nie tysicy lat, eby zmieni si w misacza! W Zonie mutacja ta przebiega w cigu kilku lat. Jakby kto bezporednio zmieni informacj genetyczn poszczeglnych osobnikw. Ciarki mnie przechodz na t myl. + + + Od dawna jestecie w Zonie? + + + Niecay tydzie. Potrzeba byo ogromnego wysiku, eby pokona biurokracj i zorganizowa t ekspedycj. Gdyby nie Herman, pewnie cigle czekalibymy na obrzeach Zony, podczas gdy stalkerzy wynosz z niej bezcenne przedmioty. + + + Nie mam wicej pyta. + + + Oziorski, czemu Herman zatrudni mnie do ochrony oddziau podczas wykonywania oblicze? + + + To by mj pomys. On nie widzia w tym sensu, ale udao mi si go przekona. Moje badania wskazuj, e oddziaywanie naszego wysokofalowego sprztu na pola anomalii podnosi poziom agresji u znajdujcych si w pobliu mutantw oraz pobudza ich aktywno. Krtko mwic, zaczynaj szuka czego do zabicia. + + + Oziorski, przynosz nowiny. + + + Tak? Sucham. + + + Miae racj. Mutanty nie daway nam ani na chwil spokoju, kiedy robilimy pomiary, ale jak tylko urzdzenia zostay wyczone, wszystko si uspokoio. + + + Co?! Jeli moja hipoteza si potwierdzia, moliwe jest, e zmutowane zwierzta, ktre posiady zdolno odczytywania pl informacyjnych, mog telepatycznie otrzymywa sygnay z zewntrz... Sztuczne sygnay... Co oznacza, e nienaturalne podobiestwo mutacji i te charakterystyczne zmiany budowy komrek nie s przypadkowe... + + + Moesz mwi konkretniej? I tym razem z sensem? + + + Nie! To tylko moje domysy. Och, ale jestem niegrzeczny! Bardzo dzikuj za pomoc w naszych badaniach. + + + Czego potrzeba, eby porozmawia z Hermanem o kombinezonie? + + + Niedawno na skraju kamienioomw pojawi si obszar anomalii wypeniony nieznan dotd rolinnoci. Bardzo chciabym uzyska prbk tej roliny, ale stalkerzy nie chc si tam zbliy. Gdybym mia tak rolin, mgbym porozmawia z Hermanem o nagrodzeniu ci jednym z zapasowych kombinezonw. + + + Znajd dla ciebie t rolin. + + + Dobrze, przesaem ci na PDA wsprzdne tej anomalii. + + + Moe nastpnym razem. + + + Wpadnij, jeli zmienisz zdanie. + + + Prosz, przyniosem rolin, o ktr prosie. To jak bdzie z tym kombinezonem? + + + Doskonale. Sokoow wygada si, e kombinezon jest dla niego. To bez znaczenia. Jak poka Hermanowi rolin, zaraz zgodzi si odda kombinezon. Powiedz Sokoowowi, eby po niego przyszed. + + + Znajd wam now ochron. + + + Byoby bardzo mio z twojej strony. Porozmawiaj w tej sprawie z Hermanem - to naley do jego obowizkw. + + + Chciabym sprawdzi swoj odporno na pole psioniczne. + + + A wic Herman ci do mnie przysa? Dobrze, wyjani ci to tak prosto, jak tylko si da. eby prawidowo przeanalizowa twoj odporno na emisje psioniczne, potrzebuj kompleksu naukowo-badawczego i wielu lat bada. A mam tylko zestaw polowy z kilkoma brudnymi probwkami. + + + Wic to niemoliwe? + + + Nie tak szybko. Nie chodzi o pen analiz. Do naszych celw musimy tylko okreli odporno twoich neuronw na emisje psioniczne. Wystarczy podstawowe badanie. Wyglda na to, e twoja gowa jest w porzdku. To znaczy, e moesz znale si pod wpywem stosunkowo wysokiego poziomu emisji psionicznych bez utraty przytomnoci. + + + Co z hipotez dotyczc zwikszonej agresji mutantw? + + + Mam na ten temat dwie teorie. Pierwsza mwi, e agresja mutantw jest powodowana wtargniciem kilku osb na ich terytorium, co jest normalnym zachowaniem w przypadku niezmutowanych gatunkw, w tym ludzi. Druga teoria mwi, e mutanty w jaki sposb s w stanie odbiera aktywne emisje naszych urzdze pomiarowych. Rzecz jasna, ta druga teoria jest bardziej frapujca. + + + Jak mona to sprawdzi? + + + Urzdzenie pomiarowe powinno zosta wczone w miejscu, w ktrym wczeniej nie stwierdzono aktywnoci mutantw. Co wicej, by zmniejszy efekt wywoany wtargniciem na teren ludzi, eksperyment powinna przeprowadzi najwyej jedna osoba. + + + Przyniosem skaner. + + + Jakie otrzymae wyniki? + + + Nie wiem, co pokae twoje urzdzenie, ale myl, e twoja hipoteza si potwierdzia. Wystarczyo 5 minut od wczenia skanera, eby natary na mnie snorki. + + + Tak mylaem. Z jakiego powodu najmniej podane teorie zwykle okazuj si suszne. Tak czy siak, dobrze, e to sprawdzie. Teraz musimy dopilnowa, eby kady oddzia wysyany na pomiary by przygotowany na cisze warunki. + + + Jestem gotw sprawdzi suszno tej hipotezy. + + + Bardzo si ciesz, e s jeszcze ludzie gotowi do powice dla dobra nauki. Najlepszym miejscem na ten eksperyment jest osuwisko na poudniowym skraju kamienioomw - ten obszar peen jest anomalii grawitacyjnych, ktre mutanty staraj si omija. Urzdzenie, ktre ci daj, ma wbudowany wykrywacz mutantw. Kiedy zwrcisz urzdzenie po przeprowadzeniu dowiadczenia, bd mg przeledzi wpyw poziomw emisji na agresj mutantw. Jeste gotw? + + + Tak, zrobi to. + + + Nie w tej chwili. + + + Mgbym w jaki sposb dosta jeden z waszych kombinezonw? + + + To niezgodne z przepisami. Musimy rozliczy si z kadej sztuki wyposaenia. Z drugiej strony, znajc Hermana, pewnie zamwi wicej, ni potrzebujemy. Myl, e w pewnych okolicznociach daoby si go przekona, by si z jednym rozsta. + + + Potrzebujecie jakich artefaktw? + + + Przykro mi, nie. Nie wysyamy ju przypadkowych ludzi ze zleceniami na poszukiwanie artefaktw. Podpisalimy kontrakt z dowiadczonym owc artefaktw, ktry przynosi nam to, czego potrzebujemy. + + + Mog znale wam now ochron. + + + To by si przydao. W Zonie nigdy nie jest spokojnie... Porozmawiaj o tym z Hermanem - on tu jest szefem. + + + Mam od ciebie dosta skanery do badania anomalii. + + + Prosz. Jak powiedzia Herman, trzy sztuki. + + + Prosz. Jak powiedzia Herman, jeszcze dwa. + + + Jak mog zdoby jeden z waszych kombinezonw? + + + Od wyposaenia jest tutaj Herman. Ale oszczdz ci zachodu - nic od niego nie wycigniesz. Sprbuj raczej porozmawia z Oziorskim. Z jednej strony, jest bardziej wyluzowany, z drugiej - moe wywrze wpyw na Hermana. + + + Co ci tu sprowadza? + + + Suchaj, gdzie si podziali najemnicy? Ci, ktrzy was ochraniali? + + + Jak leci? + + + Suchaj... Kto zastrzeli najemnikw, ktrzy was ochraniali. Sam nie przepadaem za nimi, ale to ju przesada... + + + CS-3a - super! To niezy pancerz... Przypominaj mi si dawne czasy... + + + Moesz odblokowa modu pamici? + + + Popatrzmy... Nie ma problemu. Robiem ju takie rzeczy... To nie potrwa duej ni godzin. Zrobi to za... 2000. Zgoda? + + + Zgoda. + + + Dobrze. Dam ci zna, jak go odblokuj. + + + Nie mam tyle pienidzy. + + + Hm. Wiesz, gdzie mnie znale. Wtpi, by kto poradzi sobie z tym lepiej ni ja. + + + Zastanowi si. + + + Jak powiedziaem, zrobi to w godzin za 2000. + + + I co, odblokowae modu pamici? + + + Godzina jeszcze nie mina. Powiedziaem, e si z tob skontaktuj, jak skocz. + + + Tak, prosz. Jest przygotowany do odczytu informacji. + + + Znalazem dziwny partefakt. Jeste zainteresowany? + + + Oczywicie. Skd go masz? + + + Z Zatonu, z opuszczonej pogbiarki. + + + Zgoda. + + + Nie, dzikuj! Poszukam innego nabywcy. + + + Co tu robi najemnicy? + + + Mamy z nimi umow na ochron naszego mobilnego laboratorium. Wyprzedzajc twoje pytanie, odpowiem, e musiaem ich zatrudni, nie miaem wyboru. Z powodu jakiej operacji wojskowej nie otrzymalimy odpowiedniej ochrony dla naszego laboratorium. Jeli do tego doda, e stalkerzy nagle dostali hyzia na punkcie szukania artefaktw, nie miaem innego wyboru, musiaem zatrudni najemnikw, eby zapewni bezpieczestwo laboratorium. + + + Co tu robicie? + + + Badamy rozmaite zjawiska. + + + Jaki jest cel waszych bada? + + + Prowadzimy badania podstawowe. Innymi sowy, nie testujemy tu nowych kombinezonw, nie wynajdujemy nowych lekarstw ani nic takiego. Prbujemy znale logiczne wyjanienie rzeczy napotykanych w Zonie. Jeli uda nam si odkry tajemnice kryjce si za choby dziesicioma procentami obserwowalnych tutaj zjawisk, wiatowy rozwj techniczny zostanie pchnity mocno do przodu. + + + Co wiecie na temat Zony? + + + Niewiele, szczerze mwic. Dopiero zaczynamy rozumie mechanizmy stojce za niektrymi spotykanymi zjawiskami, ale niestety jestemy jeszcze daleko od zrozumienia Zony jako systemu. Dodatkowo utrudniaj to zmiany, ktrym co pewien czas podlega Zona. Nie chodzi o pojawianie si nowych anomalii i inne takie drobiazgi. Mwi o powaniejszych zmianach, ktre nie zawsze wida goym okiem. Jednym z przykadw jest sabnicie pola magnetycznego. Najsmutniejsze jest to, e nie wiemy, do czego to wszystko zmierza. Moemy tylko siedzie i czeka. + + + Od dawna jestecie w Zonie? + + + Niedugo, mniej wicej tydzie. Owszem, odwiedziem wczeniej kilka razy laboratorium Sacharowa. Wci auj, e wczeniej nie ruszylimy z t ekspedycj. Tyle razy mwiem ludziom z Ministerstwa Edukacji, e musimy mie w pogotowiu dwa w peni wyposaone mobilne laboratoria... Kiwali tylko swoimi nadtymi gowami i tyle! Przez nich prawie przegapilimy najwiksz szans, jak kiedykolwiek daa nam Zona! + + + Rozumiem. + + + S jakie informacje o skanerach, ktre umieciem w anomaliach? + + + Ktra konkretnie anomalia ci interesuje? + + + Anomalia obok parkingu. + + + Tak, nasze urzdzenia wskazuj obecno artefaktw w tej anomalii! + + + Niestety, w tej anomalii nie ma ladu artefaktw. + + + Anomalia Betonowa Wanna. + + + Anomalia Bitumin. + + + Anomalia Mokrado. + + + Anomalia Popielisko. + + + To na razie tyle. + + + Sucham uwanie. + + + Ostatnie wydarzenia pokazay jasno, e nasz zesp badawczy nie jest odpowiednio przygotowany do prowadzenia waciwych prac polowych. Z drugiej strony ty wasnorcznie poradzie sobie z kontrolerem! To zdumiewajce! + + + Do czego zmierzasz? + + + Do tego, e logicznym wyjciem bdzie dla nas prba zatrudnienia takiego wykwalifikowanego eksperta jak ty. Nasza grupa naukowa potrzebuje twojej pomocy. Musimy wykona pomiary, rozmieci skanery... + + + Mw dalej... + + + Prbuj znale korelacj pomidzy emisjami i pojawianiem si artefaktw w anomaliach. Mam teori, e nastpn emisj da si przewidzie na podstawie iloci i jakoci artefaktw, ktre si pojawiaj. W celu przeprowadzenia dokadnych oblicze musz zebra dane statystyczne. Musimy tylko rozmieci kilka skanerw w rodku anomalii rnych rodzajw. + + + Przykro mi, nie jestem zainteresowany. + + + Szkoda. Przysuyby si nauce. + + + Dobrze, pomog wam. + + + Doskonale! Musisz wzi skanery od Nowikowa i rozmieci je w anomaliach oznaczonych w twoim PDA. Gdy skoczysz, wr do mnie - musz omwi z tob jeszcze jedn kwesti dotyczc skanerw i pomiarw. + + + Zastanowi si nad tym i wrc pniej. + + + Umieciem skanery w anomaliach. + + + Doskonale! Mam ju pierwsze wyniki. Nie mog si doczeka emisji - dostarczy nam koniecznej prbki statystycznej... + + + Zamieniam si w such! + + + Gdy si do niej zbliyem i wyjem detektor, wszystko wok mnie zaczo si zakrzywia, jakby byo ciskane. Po pewnym czasie zupenie znikd zaczy pojawia si ciaa martwych stalkerw! Potem wszystko ustao. + + + Niesamowite! Oczywicie, to tylko okruszki informacji i nie da si z nich ustali nic pewnego, ale wprowadzimy ten opis do naszych rejestrw. Nazwiemy t anomali Bblem przestrzennym! + + + Widz, ze macie now ochron. + + + Tak, jest cakiem nieza. Dziki nim czujemy si bardzo bezpiecznie. Dzikuj ci za pomoc - oto twoje wynagrodzenie. + + + Prosz spojrze na te dokumenty. + + + Popatrzmy... Nie bd pyta, skd je masz, ale to po prostu niesamowite! Musz zrobi kopie... Przy okazji, oto twoje skromne wynagrodzenie. + + + Co si stao z wasz ochron? + + + Nie wiem, zwyczajnie znikna! + + + Mam kontakty w Zonie. Znajd wam now ochron. + + + Byoby wspaniale! W zamian za prac otrzymaj pene wsparcie naukowe i najnowsze osignicia techniczne! Ty te dostaniesz nagrod! + + + Zgoda! + + + Nie mog si doczeka! + + + Zmieniem zdanie. + + + Szkoda. + + + Zdarza si. + + + Co jeszcze? + + + Zabito naszych stranikw! Zastrzelono ich przed samym bunkrem! + + + W fabryce Jupiter znalazem troch dokumentw. Chcesz na nie rzuci okiem? + + + To ciekawe, ale niezbyt przydatne. Dzikuj za trud. Jeli znajdziesz co jeszcze, przynie to do mnie. + + + Kiedy szukaem dokumentw, zaatakowali mnie najemnicy. Oto PDA ich przywdcy. + + + No adnie, a mylaem, e s tu, eby nas ochrania. Wyglda na to, e bd musia poruszy t spraw u swoich zwierzchnikw... Bardzo ci dzikuj, mody czowieku. + + + Niestety, nie zawieraj adnych interesujcych informacji. + + + Jest co takiego: musimy pozna ostatnie osignicia dokonane w fabryce Jupiter. Potrzebne s mi dokumenty techniczne dotyczce tych prac. Zapewne naley ich szuka w czci administracyjnej fabryki. + + + Poszukam ich i przynios wszystko, co znajd. + + + Nie bd mg pomc ci w tej sprawie. + + + Przyniosem dokumenty z Jupitera. + + + To ciekawe, ale niezbyt przydatne. Dzikuj za trud. Jeli znajdziesz co jeszcze, przynie to do mnie. + + + Kiedy szukaem dokumentw, zaatakowali mnie najemnicy. Oto PDA ich przywdcy. + + + No adnie, a mylaem, e s tu, eby nas ochrania. Wyglda na to, e bd musia poruszy t spraw u swoich zwierzchnikw... Bardzo ci dzikuj, mody czowieku. + + + Sprbuj znale anomali. + + + Nie mam czasu. + + + Przyszedem w sprawie mojego udziau w waszych badaniach. + + + Wiem, e wszyscy si uciesz, jeli zgodzisz si jeszcze raz przysuy nauce. Co ci interesuje? + + + Chciabym pomc w wykonywaniu pomiarw. + + + Naprawd chcesz nam pomc w przeprowadzeniu penego zewntrznego skanowania? + + + Tak, pomog - powiedzcie mi, co mam robi. + + + Nie, musz to jeszcze raz przemyle. + + + Wspomniae o rozmieszczeniu skanerw. + + + Prbuj znale korelacj pomidzy emisjami i pojawianiem si artefaktw w anomaliach. Mam teori, e nastpn emisj da si przewidzie na podstawie iloci i rodzaju artefaktw, ktre si pojawiaj. W celu przeprowadzenia dokadnych oblicze musz zebra dane statystyczne. Musimy tylko rozmieci kilka skanerw w rodku anomalii rnych rodzajw. + + + Dobrze, pomog wam. + + + Doskonale! Musisz wzi skanery od Nowikowa i rozmieci je w anomaliach oznaczonych w twoim PDA. + + + Zastanowi si nad tym i wrc pniej. + + + Skanery w anomaliach przesyaj informacje. Teraz musimy tylko zaczeka na wyniki. Jeli chcesz, moesz rozmieci skanery w kolejnych anomaliach. Dodatkowe informacje zawsze nam si przydadz, a w nagrod powiadomimy ci, kiedy w anomaliach pojawi si artefakty. + + + Zgadzam si. + + + Doskonale! Musisz wzi skanery od Nowikowa i rozmieci je w anomaliach oznaczonych w twoim PDA. + + + Zastanowi si nad tym i wrc pniej. + + + Niestety, mamy przepis, ktry zabrania nam przydzielania tej samej osobie wicej ni jednego zadania. Przykro mi, ale musimy trzyma si przepisw. + + + Otrzymalicie wyniki pomiarw pola anomalii od oddziau, ktry ochraniaem? + + + Chciaem jeszcze doda, e pomiary przycigny uwag mutantw i zombi. Odparcie ich kosztowao nas wiele czasu i zachodu. + + + Wic twoim zdaniem reagoway na pomiary? Ciekawe. W takim razie wyglda na to, e rwnie ty potwierdzasz hipotez Oziorskiego, e mutanty telepatycznie odczytuj rne pola. Myl, e warto porozmawia z nim o tym. Oto twoje wynagrodzenie za wykonan prac. Zasuye na nie! + + + Wic twoim zdaniem reagoway na pomiary? Ciekawe. W takim razie wyglda na to, e rwnie ty potwierdzasz hipotez Oziorskiego, e mutanty telepatycznie odczytuj rne pola. Powiniene mu o tym powiedzie. Przykro mi z powodu stalkerw. Cz naszych skromnych funduszy przeznaczymy na odszkodowania dla ich rodzin. Reszta jest twoim wynagrodzeniem za wykonan prac. Dzikuj! + + + Mgbym w jaki sposb dosta jeden z waszych kombinezonw? + + + Wykluczone! Liczba kombinezonw jest ograniczona i nie mog sobie pozwoli na ich rozdawanie! + + + Co chcesz mi powiedzie? + + + Widziae moe ludzi odpowiedzialnych za pilnowanie naszego bunkra? + + + Mw dalej. + + + Nie uwierzysz, ale kto zabi naszych stranikw, przed samym bunkrem! + + + Potrzebujecie pomocy? + + + W tej chwili prbujemy zebra prbki nowego typu. Same z siebie nie zachowuj si jak anomalie, ale w przeprowadzanych na nich eksperymentach uzyskujemy niewiarygodne wyniki! + + + Mw dalej... + + + Prosz powiedzie wprost, co trzeba zrobi. + + + Dobrze... Stalkerzy, ktrzy znaleli pole psioniczne, uwaaj, e znajduje si w nim legowisko mutantw. Nie wierz im... To znaczy, aden mutant poza kontrolerem nie przeyby w zmiennym polu psionicznym! Nie przejmuj si, nasi chopcy zajm si mutantami. Jeste nam potrzebny, bo regularny kontakt z polami psionicznymi obniy odporno naszych stalkerw na ich dziaanie. + + + To znaczy, e chcecie, ebym wszed w nieznane pole psioniczne i przynis wam prbk czego, czego moe tam w ogle nie ma, a jeli jest, to nikt nie wie, jak to wyglda? + + + Wanie! Ta misja jest ogromnie wana dla nauki w ogle i dla naszej grupy w szczeglnoci. Twoja pomoc bdzie nieoceniona. Jeli masz wtpliwoci, porozmawiaj z Oziorskim. On przeprowadzi konieczne analizy, ktre okrel twoj obecn odporno na emisje psioniczne. Moesz te zapyta naszych stalkerw, oni ci wszystko wyjani. To co, przysuysz si nauce? + + + Tak. + + + Nie wiecie? Wasz oddzia stalkerw nie yje. + + + Poniewa nie pojawie si ostatnim razem w tunelu, bdzie mi bardzo trudno przekona oddzia do pracy z tob. + + + To by wypadek. + + + Wierz ci, ale nasza grupa do zbierania materiaw skada si z osobliwych ludzi, nie powiniene ich sprawia im zawodu. Porozmawiam z nimi jeszcze i chyba uda mi si namwi ich do zmiany zdania. Tym razem mnie nie zawied, czekam na prbk. + + + Wybacz mi, ale musz odmwi. Twj sprzt nie nadaje si do zmiennego pola psionicznego - spotka ci szybka i bolesna mier, a nie chc mie ciebie na sumieniu. + + + Mam prbk. + + + Naprawd? Poka, nie mog si doczeka! + + + Przyniosem ci prbk. Jak si okazao, w tunelu by kontroler. Prbowa przej kontrol nad waszym oddziaem i prawie mu si udao. Ale zdyem go zabi. + + + Jeste niesamowity! Zabie kontrolera i uratowae stalkerw od ataku psionicznego... Gdybym nie wiedzia, e to prawda, nie uwierzybym ci. To poyteczne dowiadczenie i cenna prbka. Dzikuj w imieniu wasnym, zaogi i wszystkich naukowcw wiata! + + + Niestety, oddzia zosta zaatakowany przez kontrolera. Musiaem si broni. Kontroler nie yje, ale stalkerzy te. + + + Kontroler, powiadasz? To straszne, kto mg to przewidzie? al mi tych dzielnych chopcw... Wiernie suyli nauce. Chocia waciwie nie byli naukowcami, zrobili dla nauki wicej ni niejeden profesor! Dzikuj, zechciej przyj t skromn nagrod. + + + Niestety, oddzia zosta zaatakowany przez kontrolera. Ledwo uszedem z yciem. + + + Co tu robi najemnicy? + + + Wchodz mi w drog, ale to moje prywatne zdanie. Najpierw prosili mnie, eby im przykrci albo naprawi to czy tamto. A wczoraj wyzbyli si ju resztek wstydu i zaczli wypytywa, jak dziaa nasz sprzt. Nie rozumiem, jak to ma im pomc w ochronie bunkra. + + + Jakie modyfikacje sprztu moesz wykona? + + + Jak widzisz, to orodek naukowy... Nie ma tu kevlaru ani broni na czci zapasowe. Mog najwyej poata kamizelk kuloodporn albo zmodyfikowa j za pomoc jednego z moich wasnych wynalazkw. Jak moesz sobie wyobrazi, sprztu mi nie brakuje. + + + Dziki tobie i prbce z pola psionicznego Oziorskiemu udao si wymyli sposb ochrony ludzi przed emisjami. Zastosowaem jego pomys w praktyce. Wynik mog zainstalowa ci w kombinezonie, jeli chcesz. + + + Poza zwykymi ulepszeniami mog zaproponowa ci filtry i ochron psioniczn. W kocu to dziki tobie powstay... Oziorski i Herman cieszyli si, jakby im kto w kiesze narobi! + + + Poza zwykymi ulepszeniami mog zaproponowa ci izolacj i ochron psioniczn. W kocu to dziki tobie powstay... Oziorski i Herman cieszyli si, jakby im kto w kiesze narobi! + + + Mam peen zakres modyfikacji: izolacja, filtry i ochrona psioniczna. W kombinezonie wyposaonym w nie wszystkie moesz wej w kad anomali... Moe nawet uda ci si z niej wyj. Przy okazji, dzikuj, e wzie udzia w badaniach Hermana. Bez tego nie miabym dla ciebie takiej oferty. + + + Opowiedz mi o waszym bunkrze. + + + Hm. Co chcesz wiedzie? + + + Czym zajmuje si laboratorium? + + + Wtpi, by nawet Herman i Oziorski byli w stanie odpowiedzie. Na pewno prowadz tu rozmaite badania... Ale rezultaty s marne. Moesz porozmawia z Oziorskim. Na podstawie jego teorii udao mi si opracowa kilka przyzwoitych modyfikacji kombinezonw. + + + Co wiesz na temat Zony? + + + W naukowym sensie nic, ale mam due dowiadczenie praktyczne w Zonie. Tutaj liczy si tylko to, co zwiksza twoje szanse przeycia. Zony nie obchodzi, czy jeste bandyt, czy stalkerem zbierajcym artefakty, eby wyywi rodzin. Tutaj przeywaj tylko najlepiej przystosowani. + + + Dugo jeste w Zonie? + + + Ju jaki czas. Na pocztku polowaem na artefakty jak kady, ale pogarszao mi si zdrowie, a wreszcie uznaem, e dalej nie dam rady. Na szczcie mam troch oleju w gowie, wic nietrudno mi znale prac. Okoo roku spdziem we frakcji zoonej z byych naukowcw. Dobrzy z nich byli ludzie... Szkoda, e zginli w lepej pogoni za jakim niejasnym celem. Pniej przez pewien czas wdrowaem po Zonie i w kocu zaczem pracowa dla naukowcw. Na razie nie auj. + + + Nie mam wicej pyta. + + + Zamierzam wej do zmiennego pola psionicznego. Masz dla mnie jakie rady? + + + Co mog powiedzie? Wtpi, eby by obeznany z teori pola informacyjno-energetycznego. Krtki kontakt z polem psionicznym nie jest grony... na dusz met. Ale nie rozluniaj si za bardzo, gdy tam bdziesz. Kto lekceway pola psioniczne, koczy jako zombi. + + + Moesz wama si do stalowego kontenera? + + + To nie dla mnie. Nie mam odpowiedniego sprztu... Poza tym to wbrew naszym przepisom BHP... + + + Moesz odszyfrowa czarn skrzynk? + + + Mog, ale nie zrobi tego. Dawniej robiem takie rzeczy... I nie odpowiadao mi to. Zbyt wiele kopotw... Mam do zaj u naukowcw. + + + Czym wyrnia si CS-3a? + + + Poza tym, e go skonstruowaem? To jeden z najlepszych kombinezonw w Zonie. Dlatego go nosisz, nie? Jest lekki, przenony i oparty na solidnej kamizelce kuloodpornej. Sam dodaem do niego ochron przed anomaliami.. Szkoda, e brakowao nam wtedy materiaw. Ale czego innego si spodziewa w rodku bagna. Tak czy siak, wystarczyoby kilka poprawek i miaby zupenie nowoczesny kombinezon. Mam do dyspozycji mnstwo sprztu, wic nie byoby z tym problemu. + + + Pracujesz dla Sowy? + + + Nie. Niedawno pomg mi co zdoby... Przysuga za przysug. + + + Sowa poprosi, ebym przynis ci detektory. Prosz. + + + Dobrze. Popracuj na nich i oddam je Sowie przez przewodnikw... Reszta to ju twoje osobiste interesy z Sow. + + + O! Wic to ty sprzedawae bro bandytom na Zatonie! + + + Cicho... Co ci do ba strzelio, e gadasz o tym tutaj? Nie znamy si, rozumiesz? + + + Jasne. + + + Moe powiem dowdcy o twoim interesie na boku? + + + Co mu powiesz? Nic na mnie nie masz. To ty pomoge mi zaatwi wiadkw. Wyjdziesz na durnia, oskarajc mnie bez dowodw. + + + Znalazem u martwych najemnikw PDA. Zapisano w nim kontrakt na zabicie mnie. Ty jeste klientem. + + + Mam ci ju do... Suchaj, daj mi ten PDA, a dostaniesz ode mnie doskona bro uywan tylko przez elitarne oddziay Powinnoci. Co ty na to? + + + Dobra, wezm t pukawk. + + + Zatrzymaj j sobie. Nie chc prezentw od takiego dwulicowego drania! + + + Mam kolejnego PDA z kontraktem na zabicie mnie. Znowu jeste klientem. + + + Cholera... Przeklci najemnicy... Nie mona im zaufa. Suchaj, zakoczmy to ju. Zrobimy tak. Najemnicy przestan ci szuka, a ty zostawisz mnie w spokoju. W ramach odszkodowania zaprowadz ci do tajemnego magazynu Powinnoci, skd bdziesz mg wzi tyle broni, ile uniesiesz. + + + Dobrze, zrbmy tak. + + + No i w porzdku, spotkajmy si tam. Schowek jest obok kamienioomw. + + + Nigdzie si nie rusz. Dasz mi cay towar tutaj. + + + Nic tu nie mam! Nie jestem taki gupi! Albo spotkamy si przy schowku, albo odejdziesz z kwitkiem. + + + Nic z tego. + + + Nie chc prezentw od takiego dwulicowego drania! + + + Chc opuci Zon. + + + Na pewno? Nie bdzie ju powrotu. + + + Na pewno. Chodmy. + + + Moe jednak na razie zostan. + + + Popatrzmy... Twoja wtroba jest wiksza, ni oczekiwaem, ale to ju ryzyko zawodowe, nie? Nie liczc tego, jeste zdrw jak burer. + + + Byby cakiem normalny, gdyby si nie wieci. A tak - robi okropne wraenie. Id sam sobie go obejrzyj... Nie sdz, eby bya to mia wycieczka. + + + Dobrze, twoja sprawa. + + + Byli czonkowie Monolitu? No popatrz... Porczysz za nich? + + + Byli czonkowie Monolitu? Nie, dzikuj. Potrzeba mi zgrai wciekych fanatykw jak wrzodu na tyku. + + + Ha. Zuch chopak. Troszczysz si o swoich, wic rozumiesz e musisz mi posmarowa. Co dla mnie masz, artefakt czy 15000? + + + Przyniosem artefakt. + + + W porzdku. Jaki? + + + Nie mam tak cennego artefaktu. + + + Pomie. + + + Zota rybka. + + + wietlik. + + + nieynka. + + + Hm... W tej chwili nie mam adnego. + + + Powiedziaem, co miaem do powiedzenia. Teraz ty mw. + + + Na razie. + + + Oczywicie! Wci trzeba zbada zmienne pole psioniczne, im szybciej, tym lepiej. Pozwl, e zapytam - jeste pewien, przekonae si ju, e ta wyprawa jest stosunkowo bezpieczna? Potrzebujemy twojej pomocy w uzyskaniu prbki. Jeste skonny przysuy si nauce? + + + Moe uda mi si znale kilku dobrych ludzi do waszej nowej grupy badawczej. + + + Naprawd? Byoby to bardzo mile widziane, a pewnie i nagroda by si znalaza. + + + Dobrze. Znajd odpowiednich ludzi. + + + Zastanowi si jeszcze nad tym. + + + Prosz. Znalazem w tym tunelu kontrolera. Potem go zabiem. + + + Jeste niesamowity! Zabie kontrolera i zdobye to, czego nam potrzeba... Gdybym nie wiedzia, e to prawda, nie uwierzybym ci. To poyteczne dowiadczenie i cenna prbka. Twj wkad w rozwj nauki jest ogromny. Przyjmij najszczersze wyrazy wdzicznoci ode mnie i wszystkich naukowcw wiata! + + + Prosz. Znalazem w tym tunelu kontrolera. Ledwo uszedem z yciem. + + + Kontroler, powiadasz? To straszne, kto mg to przewidzie? Najwaniejsze, e przyniose prbk, dziki czemu masz ogromny wkad w rozwj nauki. Dzikuj, zechciej przyj t skromn nagrod. + + + Jak wam si podoba nowa grupa badawcza? + + + Cakiem w porzdku. Kompetentni modzi ludzie. Prosz, we to. To za dobr personelu, e tak powiem. + + + Cze, brachu. Ciesz si, e ci widz, ale chciabym jaki czas poby w samotnoci. + + + Przychodz w sprawie wizionego stalkera. Chc go wykupi. + + + A ja chc, by szanowano bandytw i nasze zasady, ale nie cignie mnie do niepotrzebnych kopotw... Na razie wystarczy 15000 albo odpowiedni artefakt. Jestem uczciwym czowiekiem, nie wezm wicej, ni mi si naley. + + + Oto pienidze. + + + Szanuj to, co robisz. Zabierz tego frajera i powiedz stalkerom, e nastpnym razem stawka bdzie wysza. + + + Nie mam tyle przy sobie. + + + Jasne, jeste goy i wesoy. Co jeszcze masz do powiedzenia? + + + Nie mam w tej chwili nic odpowiedniego - wrc pniej. + + + Popatrzmy... Nie ma tu nic o znaczeniu strategicznym, ale moe si to przyda. Kupimy wszystko po 500 za dokument. Zgoda? + + + Popatrzmy... Do licha... Te informacje mogyby nadszarpn reputacj Powinnoci... i to powanie! Kupi je za 4000. + + + Ciekawe. Mog kupi to od ciebie za 2000. + + + Tak, ale cena jest taka jak wczeniej: 2000. + + + W porzdku, na razie. + + + Ale to straszne! C mogo im si sta? Hm... Moliwe, e to sprawka mutantw. Musz zapyta Oziorskiego, o ktry rodzaj mutantw moe chodzi. W kadym razie pole psioniczne trzeba zbada. Ta misja jest ogromnie wana dla nauki w ogle i dla naszej grupy w szczeglnoci. Potrzebujemy twojej pomocy w zdobyciu prbki. Jeli masz wtpliwoci, porozmawiaj z Oziorskim. On przeprowadzi konieczne analizy, ktre okrel twoj obecn odporno na emisje psioniczne. To co, przysuysz si nauce? + + + Zastanowi si nad tym. + + + Nasza grupa badawcza, zoona z miejscowych stalkerw, znalaza niedawno bardzo dziwne pole psioniczne. Wedug naszych teorii i wykonanych pomiarw pole to wywouje zmienne, a nie stae efekty psioniczne. + + + Niestety, czonkowie naszej grupy badawczej nie yj. Dopki nie znajdziemy zastpstwa, nie wykonamy adnych pomiarw. + + + Zaczekaj... Zechciaby powici mi chwil? + + + Jakie wyniki przynioso skanowanie anomalii? + + + Masz dla mnie jak inn prac? + + + Syszaem o niej. + + + Niestety, nie udao mi si jeszcze nakoni Hermana, by zorganizowa grup poszukiwawcz... Przyznaj, plotki na temat tego zjawiska czsto sobie przecz, ale co mi mwi, e Oaza istnieje. Intuicja rzadko mnie zawodzi, wic jeli znajdziesz Oaz i przyniesiesz mi dowd jej istnienia, bd ci bardzo wdziczny. + + + Poszukabym jej, ale ju byem w Oazie. + + + Hm... Chyba si przesyszaem. Co powiedziae? + + + Przyszedem spaci dug Wano. + + + Tak, pamitam go. Jego dug jest spory, a odsetki cigle lec. Doszed ju do 7000. + + + W porzdku, prosz. + + + Powiedz Wano, e dug jest spacony. + + + W porzdku. + + + Nie mam tyle. + + + Wr, jak bdziesz mia. + + + Odsetek nie byo w umowie. + + + O czym ty mwisz? Masz mnie za frajera, ktry poycza fors na zero procent? 7000, i ani grosza mniej. + + + Zastanw si dobrze. Mam tu moj pukawk i nie zawaham si jej uy... Powiedz mi, co twj trup zrobi z tymi odsetkami? + + + Dobrze, dobrze, spokojnie, panie szefie! Na pewno si dogadamy. Zapa mi 5000, i bdziemy kwita. + + + Ha... Wsad sobie swojego korkowca w tyek, gnojku! Z odsetkami bdzie 7000, koniec gadania. + + + Zapomniae o mnie? Cigle mam pukawk. + + + Wol ci zastrzeli za darmo. + + + Zastanowi si nad tym. + + + Z odsetkami - 7000. + + + Na razie nie bior si za wiksze zlecenia. Musz doj do siebie. Wiesz, moe nawet wrc do domu... Znajd porzdn prac i zapomn o tych wszystkich artefaktach... Nie wiem tylko, czy mgbym zostawi Grizliego i Torb... Bardzo si do siebie zbliylimy, zawsze sobie pomagamy... Nie wiem, moe wystarczy, e odpoczn i poukadam sobie wszystko w gowie. + + + Na razie nie bior si za wiksze roboty. Musz doj do siebie. Wiesz, moe nawet wrc do domu... Znajd sobie jak prac na zewntrz... Nie wiem, musz si odpry i poukada sobie wszystko w gowie. + + + Jeste gotw uratowa Mitaja? Mam nadziej, e nie masz nic przeciwko pracy z ludmi, ktrych wynajem... + + + Mam PDA handlarza Powinnoci, Morgana. Jeste zainteresowany? + + + Mam PDA z dowodami, e Morgan ma powizania z najemnikami. + + + A waciwie zostawi go sobie. + + + Wiedziaem, e w kocu zwyciy w tobie ch popchnicia nauki do przodu i czynienia dobra na wiecie! Dobrze, oto nasz plan. Grupa badawcza stalkerw wykona pomiary. Ty masz ich eskortowa, to znaczy ochrania i prowadzi przez trudny teren. Powodzenia. Stalkerzy czekaj na ciebie na zewntrz. + + + Witaj, stalkerze. Dziwi ci widok starego czowieka tutaj? He, he. Przyszedem z chopakami, eby rozprostowa koci. Naprawiam sprzt, a czasami take ludzi... + + + Skoro tu jeste, co mog dla ciebie zrobi? + + + Jak dostae si do Prypeci? + + + Garri pokaza mi drog. Ci stalkerzy od dawna planowali si tu wybra, ale nie mieli ochoty zadawa si z wojskiem. Jak Garri powiedzia, e onierze sobie poszli, dugo si nie zastanawiaem. Nie bj nic, Wujek Jar jest na posterunku! Ha, ha! + + + Potrzebuj pomocy medycznej. + + + Niech no rzuc okiem... + + + Prosz bardzo, wyjdziesz z tego. Jeli pojawi si opuchlizna, nasikaj na ni - syszaem, e to pomaga. + + + Wygldasz mi na zdrowego! Chyba robisz sobie arty ze staruszka, ha, ha... + + + Witaj w moim osobistym zaktku raju. Chcesz zasmakowa rajskich rozkoszy? + + + Chopaki zawsze mwi, e jestem zbyt serdeczny, jak dobra wrka z bajki, wic si ciesz, bo nastpnym razem nie bd taki miy. Teraz std zjedaj, frajerze! + + + Byem tam ju. Bandyci nie yj. + + + Twardziel z ciebie! Wielkie dziki! We te pienidze - miaem nimi spaci dug, ale teraz dostanie je kto, kto na nie zasuy. + + + Twardziel z ciebie! Wielkie dziki! Zatrzymaj pienidze, ktre miay i na spat dugu. Teraz dostanie je kto, kto na nie zasuy. + + + Nasze skanery zarejestroway dziwn aktywno na pnoc std... Sdzc z otrzymanych danych, spodziewam si, e powstaa tam anomalia jest niestabilna. Niestety, std nie mog nic wicej stwierdzi. Musimy przeprowadzi badania w terenie... Powiem tylko tyle, e zwyke detektory stalkerw nie wykryj tej anomalii - musisz uy Swaroga, jednego z naszych wynalazkw. + + + Skanery wci rejestruj dziwn aktywno anomalii na pnoc std... Jeli masz co lepszego ni zwyky stalkerski detektor, na przykad Swaroga, moesz sprbowa przeprowadzi badania w terenie. + + + Na razie tylko z obszaru anomalii na bagnie. Mimo to Nowikow znalaz ju dla nich praktyczne zastosowanie. Dzikuj ci za wykonan prac, czekamy na drug parti wynikw. + + + Na razie tylko z obszaru anomalii za wiosk Kopaczi. Mimo to Nowikow znalaz ju dla nich praktyczne zastosowanie. Dzikuj ci za wykonan prac, czekamy na drug parti wynikw. + + + Oczywicie. Otrzymaem pene wyniki. Szczerze mwic, danych jest tak wiele, e przetwarzanie ich bdzie cign si tygodniami, jeli nie miesicami. Mimo to Nowikow znalaz ju dla nich praktyczne zastosowanie. Dzikuj ci bardzo za pomoc. + + + Niestety nie. Ale, hm... Widziaem tu niedawno bardzo podejrzanego gocia. Wracajc ze spaceru, zobaczyem stalkera wychodzcego ze stacji Janw. Jak tylko mnie dostrzeg, zacz mi wymyla i mwi, e wie, gdzie mieszkam, i takie tam. Wtedy go zignorowaem, bo mylaem, e pewnie jest nawalony, ale jak teraz si nad tym zastanawiam, wydaje mi si to podejrzane. + + + Dokd poszed? + + + Na pnocny wschd. Syszaem stamtd odgosy strzaw, ale to tutaj normalne. Zapytaj Zulusa - caymi dniami i nocami siedzi w swojej wiey, wic moe co widzia. + + + Na pnocny wschd. Pewnie poszed do podstacji. + + + Rozumiem. + + + Co powiesz, przyjacielu? + + + Co u ciebie? + + + Nie najgorzej. atwo nie jest, ale wydostaniemy si std. Razem moemy wszystko! + + + Co u ciebie? + + + Trudno powiedzie... Nie jest mi tu zbyt dobrze. Czuj, e musz si std ruszy. Moe niedugo odejd... Nie miej mi tego za ze. + + + Rozwaliem legowisko pijawek na Zatonie. Zupenie. + + + [Dalej....] + + + [Dalej....] + + + [Dalej....] + + + [Dalej....] + + + Potrzebuj ludzi do wykonywania pomiarw w anomaliach. + + + Potrzebuj wykona pomiary w anomaliach. + + + A co to za pica krlewna? + + + Znalaze artefakt? + + + I to jak! Nie ma tu nic do roboty - jedyna rozrywka to plansza do cymbergaja. To nie Prype... Gdybym tylko mg wypeni warunki kontraktu, ju bym tam siedzia! + + + [Dalej....] + + + Moesz i do kamienioomw - to tam zgin Drzazga. Przed mierci powiedzia mi, e Flint ukrad jego towar i zostawi go na mier w anomalii. + + + Nazywa si Drzazga. Wszed w anomali gazow, a ty dae chodu z jego artefaktem. Jak widzisz, zdy mi wszystko przed mierci powiedzie. + + + Nie bd ci pyta, skd to masz. Zaatwmy to prosto: kupi od ciebie PDA za 4000. Od dawna mnie ciekawio, co nasz zaopatrzeniowiec robi w wolnych chwilach... + + + Popatrzmy... A to swoocz! Nie do, e sprzedawa nasz bro, to jeszcze odda Wolnoci magazyn! Cholera, bdziemy musieli natychmiast zorganizowa ekip powitaln. + + + Popatrzmy... Nie mog w to uwierzy! Wiedzielimy o magazynie i nawet zaplanowalimy wizyt, ale nie mielimy pojcia o alarmie, bo ten sukinsyn nie pisn o nim ani swkiem. Poczekaj chwil, ostrzeg chopcw. + + + Dam ci 4000 z czystej ciekawoci. + + + Szturmowiec z niego nie bdzie, ale potrafi obchodzi si z broni. Tylko zawsze ma skrzywion min, jakby wcina same cytryny. + + + Znalazem dziwn anomali w starej chodni kominowej. + + diff --git a/gamedata/configs/text/pol/st_dialogs_pripyat.xml b/gamedata/configs/text/pol/st_dialogs_pripyat.xml new file mode 100644 index 0000000..673ca16 --- /dev/null +++ b/gamedata/configs/text/pol/st_dialogs_pripyat.xml @@ -0,0 +1,906 @@ + + + + Ha! No to im si dostao! Dziki za pomoc. Gdyby nie ty, te gnojki ju dawno by mnie poary. Jednak dobry z ciebie stalker... Przepraszam, e si wtedy wkurzyem, ale moge mi wczeniej powiedzie, e jeste z SBU. + + + Drobiazg. Wracajmy lepiej do obozu wojskowego - tam jest bezpieczniej. + + + Tak, na pewno wyjd na tym lepiej, ni samotnie patajc si po Prypeci. + + + No to chodmy. + + + Musz tu co skoczy, ale ty id. Obz mieci si w budynku pralni. + + + Musz ju i. + + + Czekaj... We to... To najporzdniejszy karabin maszynowy w Zonie. + + + A ty go ju nie potrzebujesz? + + + Zawsze znajd co do odpdzenia paru mutantw. Poza tym postanowiem wrci - Garri zabierze mnie do Jupitera. Wic tobie bardziej si przyda. We go i niech ci dobrze suy. + + + Powodzenia. + + + Dziki, to wietna bro. + + + Ha! Nie wietna, tylko najlepsza w Zonie. Jest zmodyfikowana, wic troch przycika, ale w kocu z takim dziakiem nie bdziesz musia biega - to wrg bdzie zmyka! + + + Cze. + + + Super! + + + Dokd poszed Zulus? + + + Odszed... Poprosi, ebym zabra go do Jupitera, i rozdzielilimy si niedaleko niego. Nie powiedzia mi, dokd idzie. + + + Czekaj... Spotkao mnie co nieprzyjemnego i chc ci o tym opowiedzie... Paru najemnikw poprosio, ebym poprowadzi ich do Prypeci. Najpierw skusili mnie grub kas, ale szybko si zorientowaem, e wdepnem w mikkie i brzowe... Nawet na chwil nie spuszczali mnie z oka i grozili mi broni. W pobliu Prypeci udao mi si uciec, ale teraz musz ju by w miecie, wic uwaaj. + + + Syszae moe, o czym ci najemnicy rozmawiali? + + + Troch syszaem. Na pewno nie zamierzali puci mnie ywcem, wic nie ukrywali swoich planw. Rozmawiali gwnie o spotkaniu z ludmi klienta, ktrzy mieli przedstawi im przedmiot i cel ich misji. + + + Gdzie ma si odby spotkanie? + + + Niedaleko std, na dziedzicu osiedla. + + + Dziki za informacj. + + + Wspomniae o najemnikach - syszae, o czym rozmawiali? + + + Troch syszaem. Na pewno nie zamierzali puci mnie ywcem, wic nie ukrywali swoich planw. Rozmawiali gwnie o spotkaniu z ludmi klienta, ktrzy mieli przedstawi im przedmiot i cel ich misji. + + + Gdzie ma si odby spotkanie? + + + Niedaleko std, na dziedzicu osiedla. + + + Rozmawiaem z naukowcami o kombinezonie - poszukaj Hermana, powie ci, co i jak. + + + Dobra... Gdzie ma doj do spotkania? + + + Niedaleko stacji Janw, u Zulusa. + + + Tam roi si od stalkerw! Odprowad mnie, bo jeli pjd sam, mog mie kopoty. Jeli ze mn pjdziesz, nie zastrzel mnie, bo ci znaj. + + + Do ktrego punktu ewakuacyjnego poszede? + + + Niestety nie mog o tym rozmawia - to cile tajne. + + + Chodmy do Zulusa. + + + Dobra. Ale najpierw musimy i do Hermana po ten naukowy kombinezon. + + + Chodmy. + + + Poszedbym... Ale tam jest emisja. Moe troch poczekamy? + + + Jak tu trafie? + + + Mj helikopter rozbi si o warsztat fabryki Jupiter i run do rodka przez dach. Tylko ja przeyem - udao mi si wydosta z Jupitera i dotrze do najbliszego punktu ewakuacyjnego, ale nikogo tam nie byo. A potem spotkaem Garriego, ktry zaprowadzi mnie do bunkra. + + + eby dotrze do Prypeci, bdziesz potrzebowa kombinezonu z aparatem tlenowym z zamknitym obiegiem powietrza.. + + + Co tu robisz? + + + Mam rozkaz uda si do punktu ewakuacyjnego, ale w Zonie jest zbyt niebezpiecznie. Jestem pilotem, nie szturmowcem! Dlatego tu czekam - mam nadziej, e zabior mnie std, kiedy operacja zostanie wykonana. + + + Zbieram oddzia, z ktrym wybior si do Prypeci. Przyczysz si? + + + Do Prypeci? A wiesz, e chyba tak... Moe kto z naszych przey i zdoa tam dotrze... W Prypeci jest punkt ewakuacyjny, wic waciwie to tam powinienem i. Samemu mi si nie uda, ale z twoim oddziaem mog sprbowa. + + + Jeste gotowy? + + + Mona tak powiedzie. + + + Witaj, stalkerze. + + + Cze. + + + Witaj. + + + Witaj, stalkerze. + + + Skd masz mundur wojskowy? + + + Ha... Ju chyba wszyscy wiedz o katastrofie helikopterw wojskowych... Jestem porucznik Sokoow, pilot jednego z nich. + + + Jeli chodzi o tego wartownika... + + + Jego sygna dochodzi ze starego sklepu spoywczego, ale on nie odpowiada... Moe straci nadajnik... Trudno to stwierdzi na pewno. Musimy go znale... + + + Dzikuj, pukowniku! Chyba dam rad. + + + Co do tego wartownika... + + + To wszystko przez tego kontrolera... Pewnie to samo przydarzyo si oddziaowi zwiadowczemu. Powystrzelali si nawzajem... To jedne z najgorszych stworze w Zonie, a w dodatku nigdy nas nie szkolono do walki z nimi. Kontroler zupenie nas zaskoczy i znowu stracilimy ludzi... + + + Przynajmniej ten kontroler jest ju zaatwiony. + + + Mam nadziej, e teraz wszystko si troch uspokoi... Dzikuj wam za pomoc, majorze. Ta misja musiaa was kosztowa mnstwo amunicji... Znajdcie porucznika Kiryowa, niech was zaopatrzy w potrzebny sprzt. + + + Dzikuj, pukowniku! + + + Nie trzeba si niepokoi, pukowniku... Rozprawi si z tym mutantem. + + + Czy mog pozna wicej szczegw misji? + + + Kim on jest? + + + Jeli szybko nie znajdziemy rda zakce, pozostanie nam ju tylko czeka na mier. Pierwszy zmasowany atak Monolitu rozniesie wojsko na strzpy... A operacja skoczy si totaln klsk. + + + Postaram si jak najszybciej znale rdo. + + + No i co, majorze? Znalelicie rdo zakce radiowych? + + + Nie, wci nad tym pracuj... + + + Garri opowiedzia mi o incydencie z najemnikami... + + + Tak, mi te o nim opowiedzia... Jak tylko uciek, schroni si tutaj ze strachu przed pocigiem. Na szczcie - dla niego i dla nas - najemnicy go nie znaleli. Obserwujemy miejsce, w ktrym maj si spotka z ludmi klienta, ale na razie spokj... Chciabym wiedzie, po co ci najemnicy tu przyszli. + + + Mam informacj, e szukaj tajnego laboratorium w Prypeci. + + + Tajnego laboratorium, tutaj, w Prypeci? Ale skd si tego dowiedziae? + + + Z notesu najemnika na Zatonie. Potwierdzia to te opowie, ktr usyszaem od stalkera zwanego Wujkiem Jarem. + + + Hm... Wiesz o czym jeszcze? + + + Szukaj laboratorium centralnego. W toku ledztwa udao mi si pozna jego wsprzdne... + + + Jeli to prawda, to znaczy, e oprcz zombi i fanatykw mamy jeszcze jednego wroga... Musimy zdecydowa, co dalej. + + + Trzeba obserwowa spotkanie i jeli si da, wyeliminowa przedstawicieli klienta - dziki temu nikt przez jaki czas nie wejdzie do laboratorium X8. + + + To dobre rozwizanie, bo chocia nie dowiemy si, kto jeszcze wie o laboratorium, przynajmniej zadbamy o to, e nie znajd go najemnicy. Jednak ci ostatni szybko zareaguj i bd dla nas zagroeniem. Jeli si uda, zlikwiduj obydwa cele. Wyl z tob porucznika Kiryowa. + + + Dobrze. + + + Zaraz, moe powinnimy si zdecydowa na drugi cel. + + + Trzeba zdecydowa, ktry cel jest waniejszy. + + + Musimy zlikwidowa przywdc najemnikw - jeli tego dokonasz, pozbawiony szefa oddzia nie bdzie ju stanowi duego problemu. + + + To nieze rozwizanie, ale posaniec prawdopodobnie ucieknie i przekae informacj o laboratoriach gdzie indziej, wic najemnicy i tak w kocu tam dotr. Jeli si uda, zlikwiduj obydwa cele. Wyl z tob porucznika Kiryowa. + + + Nie mam na to czasu. + + + Z notesu najemnika na Zatonie. + + + Z historii, ktr opowiedzia mi Wujek Jar, stalker ze stacji Janw. + + + Co do najemnikw... + + + wietna robota - obydwa cele zabite. Teraz najemnicy nie bd wchodzi nam w drog i przestan interesowa si laboratorium. Moesz zatrzyma karabin. A tu masz do niego troch amunicji. + + + Dobrze, teraz, gdy ich szef nie yje, najemnicy nie bd ju dla nas problemem. Ale skoro ludzie klienta uciekli, mog zjawi si w laboratorium. Nie tra czujnoci... Moesz zatrzyma karabin. A tu masz do niego troch amunicji. + + + Dobrze - teraz, gdy nie yje osoba, ktra znaa pooenie laboratorium, najemnicy go nie znajd. Ale wtpi, eby opucili Prype, co oznacza, e bd dla nas zagroeniem. Nie tra czujnoci... Moesz zatrzyma karabin. A tu masz do niego troch amunicji. + + + A wic w ostatniej chwili zmienie cel? C, decyzja bya suszna. Teraz, gdy ich szef nie yje, najemnicy nie bd ju dla nas problemem. Ale skoro ludzie klienta uciekli, mog zjawi si w laboratorium. Nie tra czujnoci... Moesz zatrzyma karabin. A tu masz do niego troch amunicji. + + + A wic w ostatniej chwili zmienie cel? C, decyzja bya suszna. Teraz, gdy nie yje osoba, ktra znaa pooenie laboratorium, najemnicy go nie znajd. Ale wtpi, eby opucili Prype, co oznacza, e bd dla nas zagroeniem. Nie tra czujnoci... Moesz zatrzyma karabin. A tu masz do niego troch amunicji. + + + To nie poszo najlepiej. Przywdca najemnikw yje, czowiek klienta te. Teraz najemnicy o nas wiedz i bd dla nas takim samym zagroeniem, jak siy Monolitu. A w dodatku znaj pooenie laboratorium, wic ich pojawienie si w nim jest tylko kwesti czasu. Nie tra czujnoci... Moesz zatrzyma karabin. A tu masz do niego troch amunicji. + + + Przygotujcie onierzy, pukowniku. Jestem gotowy. + + + Dobrze. Osaniajcie Strieoka, majorze. My sami o siebie zadbamy. + + + A wic... Z nas wszystkich to wy i Strieok macie najwiksze dowiadczenie w Zonie. Rnica polega na tym, e o dowiadczeniu Strieoka kr tylko pogoski, a w was od razu mona pozna zawodowca. Chc powiedzie, e na was licz, majorze. Miejcie Strieoka na oku - niewielu nas ju zostao. + + + Oddzia gotw do wyruszenia. Czekamy ju tylko na was, majorze. + + + Zdaje si, e wszystkie wiry ju nie yj. ap karabin i wynomy si std, dopki jeszcze moemy. + + + Brzmi rozsdnie. + + + Jestem gotw, ruszajmy. + + + Dobrze. Oddzia jest gotowy. + + + Ruszamy. + + + Musimy poczeka. Nie chc straci ludzi przez emisj. + + + Nazywam si kapitan Tarasow. Moe i jestecie majorem, ale to ja tu dowodz i moje rozkazy nie podlegaj dyskusji. Zaley od tego ycie caego oddziau. Plan jest nastpujcy: zajmujemy pozycj w zachodniej czci szpitala i czekamy na pojawienie si si Monolitu. Musimy dziaa szybko, eby nie zwraca na siebie niepotrzebnej uwagi. + + + Przyjem, chodmy. + + + Dobrze. Oddzia jest gotowy. + + + Ruszamy. + + + Musimy poczeka. Nie chc straci ludzi przez emisj. + + + Czekajcie, kapitanie, nie jestem jeszcze gotowy. + + + Co nowego na froncie zakce? + + + Namierzyem wiele rde, jedno z nich jest gdzie w pobliu. Jeli zostanie zniszczone, moe nam si uda porozumie z dowdztwem. + + + Obliczyem wsprzdne rda zakce. To musi by jaki wyspecjalizowany przekanik wysokich czstotliwoci, moe nawet mikrofal. + + + Zniszczone przez ciebie urzdzenie byo rdem zakce - jest ich pewnie mnstwo, ale udao nam si ju odzyska kontakt z dowdztwem. + + + Powiedz mi o sygnale. + + + Sygna pojawia si i znika, ale za kadym razem pojawia si coraz bliej bazy. + + + To wszystko? + + + Niezupenie - chodzi o to, e sygna jest przekazywany na czstotliwociach rzadko uywanych do komunikacji radiowej. + + + Rozumiem. + + + We t bro i naboje... Na razie moesz si wyluzowa - bd obserwowa pozycj z drugiej strony i dam ci zna, jak tylko si pojawi. + + + Dobrze. + + + Witam. Jestem porucznik Kiryow. Odpowiadam za konserwacj broni i skad amunicji. + + + Macie jakie naboje? + + + Tak, kilka dni temu wamalimy si do magazynu Monolitu, ktry by wyadowany amunicj do kadego typu broni, jaki mona znale w Zonie... Ciekawe, skd maj tyle broni... Sdz, e musi im j sprzedawa ktry ze stranikw... + + + Moecie te naprawi moj bro? + + + Oczywicie. Jestemy szkoleni w naprawianiu wszelkiego rodzaju broni. + + + Rozumiem. + + + Witam. + + + Skd si wzi ten bl gowy... + + + Oto chwila prawdy - ciekawe, czy wyjdziemy z tego cao... + + + Potrzebuj amunicji. + + + Nie ma sprawy... Co wam dokadnie potrzebne? + + + Naboje do pistoletu 9x18... + + + Prosz... Co jeszcze? + + + Prosz... + + + Naboje do pistoletu 9x19... + + + Naboje do pistoletu 11.43x23... + + + Naboje do strzelby. + + + Naboje do karabinu szturmowego 5.45x39... + + + Naboje do karabinu szturmowego 5.56x45... + + + Naboje do karabinu szturmowego 9x39... + + + Naboje do karabinu snajperskiego... + + + Naboje do karabinu maszynowego... + + + Nie mog da wam ju nic wicej, majorze... Pukownik wyda rozkaz, eby oszczdza naboje. + + + Dobrze, niewane. + + + Potrzebuj granatw. + + + Nie ma sprawy... Jakie granaty s wam potrzebne? + + + Granaty rczne. + + + Prosz... + + + Amunicja do wyrzutni VOG-25. + + + Amunicja do wyrzutni M209. + + + Waciwie niewane + + + Nie mog da wam ju nic wicej, majorze... Pukownik wyda rozkaz, eby oszczdza naboje. + + + Potrzebuj pomocy medycznej. + + + Chtnie pomog. Zobaczmy... + + + Prosz bardzo, jestecie ju zdrowi i gotowi do akcji. + + + Jak si czujecie po tym, co si stao? + + + Teraz ju dobrze... Po tym, co zaszo w przedszkolu, byem w szoku, ale jak tylko zacza si emisja, szybko odzyskaem wiadomo. + + + Witam. + + + Najwaniejsze, eby dotrze do helikopterw. + + + Potrzebuj rodkw medycznych. + + + Zobaczmy, co tu mamy. Prosz... + + + Przykro mi, niewiele ju mi zostao, wic nie mog da nic wicej. + + + Monitorowalimy twj sygna radiowy. + + + Tak. Skontaktowaem si ze stalkerem imieniem Przewodnik. Powiedzia mi, jak dotrze do tego miejsca podziemnymi tunelami. + + + Kim jest Przewodnik? + + + To legendarny stalker - podobno jest w stanie zaprowadzi do kadego miejsca w Zonie. Chopaki z wojska maj szczcie, e go spotkali - bez niego dugo by nie przeyli. + + + Skd wiedziae, e wojsko tu jest? + + + Przewodnik mi powiedzia - to on przyprowadzi tu Kowalskiego i jego oddzia. + + + Rozumiem. + + + Jakie informacje chcesz przekaza rzdowi? + + + Duo ich jest... Jestem pewien, e posiadane przeze mnie informacje mogyby posuy do zniszczenia Zony. Mylaem, e dam rad zrobi to sam... Ale okazao si, e to znacznie bardziej skomplikowane. Ludzie, ktrzy to zaczli, stracili wadz... wszystko wyjani, kiedy std wyjdziemy. + + + Co widziae w sarkofagu? + + + To oszustwo... Monolit, Speniacz ycze, to wszystko kamstwo, urzdzenie, ktre zwodzi umys. A stojcy za tym ludzie ukrywaj si gdzie indziej... + + + Wiesz, kto za tym stoi? + + + Moe tak, moe nie... Ju nie wiem, w co wierzy... Mimo to odkryem wicej, ni chcieli. + + + Dobrze, do ju o tym. + + + Podziel si wszystkim, co wiem. O ile te informacje dotr do odpowiednich ludzi. + + + W drodze tutaj znalazem schowki twojej grupy... + + + Ciekawe, jak zdoae je znale... W rodku powinny by rne zapiski, znalaze co takiego? + + + Tak, znalazem trzy notatki. + + + Dzikuj... Duch i Kie byli moimi przyjacimi... Razem zdoalimy przej koo Zwglacza i dotrze do Czarnobylskiej Elektrowni Jdrowej. Niestety obydwaj zginli. Po powrocie rozdzielilimy si - ja byem ranny i zostaem z Doktorem na bagnach. Wicej ich nie zobaczyem... Niedugo pniej dowiedziaem si, e Ka zabili najemnicy, a Duch zgin, bo zaufa naukowcom... Ale niewane, to ju przeszo... Teraz musz zadba o to, eby ich mier nie posza na marne. + + + Tak, oto twoja wiadomo do Ducha. + + + Dzikuj... Duch by moim przyjacielem... Razem z nim i Kem zdoalimy przej koo Zwglacza i dotrze do Czarnobylskiej Elektrowni Jdrowej... Po powrocie z centrum rozdzielilimy si - ja byem ranny i zostaem z Doktorem na bagnach. Wicej ich nie zobaczyem... Niedugo pniej dowiedziaem si, e Ka zabili najemnicy, a Duch zgin, bo zaufa naukowcom... + + + Tak, oto wiadomo Ka do ciebie. + + + Dzikuj... Kie by moim przyjacielem... Razem z nim i Duchem zdoalimy przej koo Zwglacza i dotrze do Czarnobylskiej Elektrowni Jdrowej... Po powrocie z centrum rozdzielilimy si - ja byem ranny i zostaem z Doktorem na bagnach. Wicej ich nie zobaczyem... Niedugo pniej dowiedziaem si, e Ka zabili najemnicy, a Duch zgin, bo zaufa naukowcom... + + + Tak, oto twoja wiadomo do Ka. + + + Dzikuj... Kie by moim przyjacielem... Razem z nim i Duchem zdoalimy przej koo Zwglacza i dotrze do Czarnobylskiej Elektrowni Jdrowej... Po powrocie z centrum rozdzielilimy si - ja byem ranny i zostaem z Doktorem na bagnach. Wicej ich nie zobaczyem... Niedugo pniej dowiedziaem si, e Ka zabili najemnicy, a Duch zgin, bo zaufa naukowcom... + + + Tak, oto twoja wiadomo do Ducha i wiadomo Ka do ciebie. + + + Dzikuj... Duch i Kie byli moimi przyjacimi... Razem zdoalimy przej koo Zwglacza i dotrze do Czarnobylskiej Elektrowni Jdrowej. Niestety obydwaj zginli. Po powrocie rozdzielilimy si - ja byem ranny i zostaem z Doktorem na bagnach. Wicej ich nie zobaczyem... Niedugo pniej dowiedziaem si, e Ka zabili najemnicy, a Duch zgin, bo zaufa naukowcom... + + + Tak, oto twoje wiadomoci do Ducha i do Ka. + + + Dzikuj... Duch i Kie byli moimi przyjacimi... Razem zdoalimy przej koo Zwglacza i dotrze do Czarnobylskiej Elektrowni Jdrowej. Niestety obydwaj zginli. Po powrocie rozdzielilimy si - ja byem ranny i zostaem z Doktorem na bagnach. Wicej ich nie zobaczyem... Niedugo pniej dowiedziaem si, e Ka zabili najemnicy, a Duch zgin, bo zaufa naukowcom... + + + Tak, oto twoja wiadomo do Ka i wiadomo Ka do ciebie. + + + Dzikuj... Kie by moim przyjacielem... Razem z nim i Duchem zdoalimy przej koo Zwglacza i dotrze do Czarnobylskiej Elektrowni Jdrowej... Po powrocie z centrum rozdzielilimy si - ja byem ranny i zostaem z Doktorem na bagnach. Wicej ich nie zobaczyem... Niedugo pniej dowiedziaem si, e Ka zabili najemnicy, a Duch zgin, bo zaufa naukowcom... + + + Tak. Niestety nie mam ich przy sobie. + + + Zobaczmy... Macie problem, majorze... Znaczy - pewnie zaliczylibycie badanie lekarskie do programu kosmicznego, ale poza tym jestecie w okropnym stanie! Ha! + + + Chodcie, majorze. Ludzie z Monolitu nie bd czeka. + + + Majorze, zagin nam wartownik - opuci swj posterunek. Jego sygna dochodzi ze sklepu spoywczego, ale on sam nie odpowiada. Bg jeden wie, co tam si stao. Moe dzieciak spanikowa - katastrofa helikoptera porzdnie nim wstrzsna. Sprawdzicie dla mnie ten sygna? + + + Tak. + + + Niczego nie obiecuj. + + + Majorze, musimy znale oddzia zwiadowczy. + + + Razem z oddziaem szturmowym musicie si uda do obiektu A17 - kapitan Tarasow wszystko wam pokae. Celem s dwa poczone przejciem skrzyda szpitala. Bojownicy Monolitu s obecnie w zachodnim skrzydle. Wy macie urzdzi zasadzk w tym drugim. Powinni mie ze sob karabin, pewnie znajdziecie go u najwikszego wira. + + + Zapewne dowdc oddziau. Chopcy widzieli, jak wygasza swoim ludziom kazanie. Dosownie! Bdcie ostroni, nie wiadomo, czego mona si po nim spodziewa. + + + Przyjem, pukowniku. + + + Witam. Pukownik Kowalski, dowdca tego oddziau. + + + Major Diegtiariow, SBU. Jestem upowaniony do przeprowadzenia ledztwa w sprawie klski operacji Tor Wodny. + + + Rozumiem. No to posuchajcie, majorze. Operacja Tor Wodny posza w diaby razem z naszymi migowcami. Poowa moich chopakw nie yje i nie mamy cznoci z dowdztwem. Ja te chc si dowiedzie, dlaczego operacja si nie powioda. + + + Jakie pomysy? + + + Jedynie taki, e helikoptery zostay zestrzelone. Zestrzelone za pomoc niezwykle potnej broni, o ktrej niewiele wiemy. Bojownicy Monolitu uyli jej przeciwko nam podczas pierwszego szturmu na CEJ... Zamierzam zdoby tak bro i dokadnie j zbada. Jeli chcecie si wczy do akcji, to grupa szturmowa czeka wanie na mj sygna do wyruszenia za wyledzonym przez nas oddziaem Monolitu, ktry ma jedno z tych dzia. Co wy na to? + + + Zgadzam si, pod warunkiem, e podzielicie si ze mn wszystkimi informacjami i zapewnicie zupen swobod dziaania. + + + Mam informacj na temat niezidentyfikowanej broni, to karabin Gaussa. + + + wietnie! Jak on dziaa? Mona z niego zestrzeli helikopter? + + + Technicznie rzecz biorc, tak, ale przyspieszona kula zostawiaby w helikopterach dziury, a niczego takiego nie znalelimy. + + + Cholera... A wic to lepy zauek. Nie mam ju innych pomysw. Teraz moemy ju tylko siedzie na tykach w samym rodku tej powalonej Zony i liczy na to, e po nas przyjd... Dobra, koniec narzekania. Skupmy si na tym, na co moemy mie wpyw tu i teraz. Dziki wam, majorze, wiemy ju, e ukrywanie si nie uchroni nas przed tymi przyspieszonymi kulami, a to ju co. Wic nale si wam podzikowania. Skontaktuj si z wami, jak dowiemy si czego nowego. + + + Technicznie rzecz biorc, tak, ale Ogocza 4 i 5 rozbiy si z powodu awarii elektroniki. Przyspieszone kule nie mogyby tego spowodowa. + + + Jak idzie operacja? + + + Sierant Morozow zgin. Bojownicy Monolitu wcignli nas w zasadzk powicajc ycie wasnych ludzi. + + + Dranie! Nie mogli wiedzie, co planujemy... Wic stracilimy snajpera. A co z celem operacji? + + + Ponielimy pewne straty... Bojownicy Monolitu wcignli nas w zasadzk powicajc ycie wasnych ludzi. + + + Dranie! Nie mogli wiedzie, co planujemy... Wic stracilimy paru ludzi. A co z celem operacji? + + + Oddzia wybity do nogi... Bojownicy Monolitu wcignli nas w zasadzk powicajc ycie wasnych ludzi. + + + Dranie! Nie mogli wiedzie, co planujemy... Wic stracilimy Tarasowa i jego ludzi. A co z celem operacji? + + + Mam bro. Zostaa uszkodzona w trakcie walki. + + + A wic nie moemy ustali, czy zostaa uyta do zestrzelenia helikopterw. Suchajcie, majorze: wy macie znajomoci w krgach stalkerw. Moliwe, ze oni ju kiedy natknli si na t bro. Powinni by wrd nich technicy. Porozmawiacie z nimi? + + + Dobrze. + + + wietnie... A, skoro o tym mowa. Jeszcze jeden stalker uszed ywcem z Jupitera. Jeli chcesz, pogadaj z nim na ten temat. + + + Wci nad tym pracuj. + + + Rozumiem. Majorze, ta bron jest nam potrzebna. Na pewno rozumiecie, jakie to wane. + + + A-ha. + + + Znalazem twoje zapiski w kompleksie Wokow AA. We je. + + + Suchaj... A, niewane. I tak pewnie nikt z naszych nie pojawi si w tym miejscu. Jeli zauwaysz tu jakich onierzy, daj mi zna, dobra? Z gry wielkie dziki... + + + Majorze... Bogu niech bd dziki! Jestem uratowany! + + + Jak tu wyldowae? + + + Eee... Niewiele pamitam... Byem tak przeraony, e ledwo mogem myle, a nawet nie wiem, co mnie przestraszyo. Czuem, e musz si schowa, wic pobiegem... Pamitam ulice, jakie zakrty... Dotarem do tej dziury. Drzwi byy zamknite od zewntrz... Mylaem, e tu umr. Jak mnie znalaze? A tak w ogle to wynomy si std i chodmy do bazy. To miejsce dziaa mi na nerwy... + + + Chodmy. + + + Witam. Potrzebujesz pomocy medycznej? Nie jestem lekarzem, ale potrafi usuwa kule i zszywa rany. + + + Potrzebuj informacji. + + + Pytaj. + + + Co do operacji Tor Wodny... + + + Tak? + + + Czy kiedy helikoptery znajdoway si w powietrzu, wydarzyo si co dziwnego? + + + Dopiero wtedy, gdy zaczy spada. Trzymalimy si planu operacji: wystartowalimy 90 sekund przed emisj, wczylimy system ochronny i przeczylimy maszyny na autopilota. Lecielimy najkrtsz bezpieczn tras, opracowan przy pomocy mapy anomalii. Widoczno bya zerowa, ale to nie powinno byo zakci przebiegu misji, bo korytarz by wystarczajco szeroki. Wedug planu mielimy dotrze do elektrowni w dwanacie i p minuty. Po dziewiciu minutach stracilimy czno z Ogocz 4, a pozostali zaczli pada jak muchy. + + + Mam jeszcze par pyta na temat operacji. + + + Co wiesz o tym, co stao si z helikopterami? + + + Prawie nic. Ogocze 2 i 4 to dla mnie zupena tajemnica. Nie wiem, gdzie si rozbiy ani co si stao z ludmi, ktrzy nimi lecieli. Informacje o pozostaych migowcach pochodz od ludzi, ktrzy przeyli, a tych nie ma zbyt wielu, wic nie mona liczy na dokadny opis wydarze. Poza tym, mielimy inne zmartwienia. + + + Opowiedz mi o Ogoczy 1. + + + Jak si tu dostae? + + + Niedaleko pola minowego spotkalimy stalkera. Chyba usysza eksplozj miny. Dziwny facet... Mwi o sobie Przewodnik". Nie zadawa adnych pyta, po prostu zaproponowa, e doprowadzi nas do Prypeci. To nam odpowiadao, wic si zgodziem. Na wszelki wypadek mielimy go na oku, ale wszystko poszo gadko... A do samego miasta nie odezwa si ani sowem, a kiedy doszlimy na miejsce, nagle znikn. Powiedziaem ludziom, eby go nie szukali. + + + Opowiedz mi o Ogoczy 3. + + + Kapitan Tarasow mwi, e obydwa silniki miay awari. Musieli ldowa na wzgrzu w pobliu pozycji B2. Mieli szczcie, bo ldowanie byo mikkie, ale technik nie mia czasu okreli przyczyny awarii, bo zostali zaatakowani przez snorki i stracili trzech ludzi. Pozostali zdecydowali, e nie bd tam siedzie - skontaktowali si z Ogocz 5 i poszli si z nimi spotka. Po drodze wdali si w walk z dobrze uzbrojonym oddziaem wroga, ale zdoali z tego wyj bez strat w ludziach. + + + Jak si dostali do Prypeci? + + + Zaogi Ogoczy 3 i 5 zdoay spotka si niedaleko miejsc katastrofy, przy jakiej barce. Doniesiono mi, e czowiek, ktry tam mieszka, to kompletny wariat: kiedy moi ludzie prbowali go schwyta, on wykrzykiwa, e ich aresztuje! Niech mnie, biedny dure by sam, a ich jedenastu. W kadym razie, okazao si, e to spotkanie byo szczliwym trafem, bo w kocu udao im si dogada i facet zgodzi si poprowadzi cay oddzia do Prypeci. Jedyn ofiar by porucznik Steczenko, ktry po drodze straci kilka palcw u ng w anomalii grawitacyjnej. + + + Opowiedz mi o Ogoczy 5. + + + Zawioda elektronika i Ogocza 5 runa prosto w bagno. Katastrof przeyo piciu ludzi. Kiedy wycigali sprzt ze migowca, skontaktowaa si z nimi zaoga Ogoczy 3. Dowdca oddziau, major Nieborski, zgin w drodze do miejsca spotkania. Biedak, tu przy stacji odczytw zabia go pijawka... Pozostaym nic si nie stao. Ale kiedy doszli do Prypeci, wdali si w walk z siami Monolitu i stracili jednego ze snajperw, starszego sieranta Batiaja. + + + Jak si dostali do Prypeci? + + + Zaogi Ogoczy 3 i 5 zdoay spotka si niedaleko miejsc katastrofy, przy jakiej barce. Doniesiono mi, e czowiek, ktry tam mieszka, to kompletny wariat: kiedy moi ludzie prbowali go schwyta, on wykrzykiwa, e ich aresztuje! Niech mnie, biedny dure by sam, a ich jedenastu. W kadym razie, okazao si, e to spotkanie byo szczliwym trafem, bo w kocu udao im si dogada i facet zgodzi si poprowadzi cay oddzia do Prypeci. Jedyn ofiar by porucznik Steczenko, ktry po drodze straci kilka palcw u ng w anomalii grawitacyjnej. + + + Prawie nic. Ogocza 2 to dla mnie zupena tajemnica. Nie wiem, gdzie si rozbia ani co si stao z ludmi, ktrzy ni lecieli. O Ogoczy 4 powiniene wiedzie wicej ni ja. Porucznik Sokoow, ten, ktry tu z tob przyszed, jako jedyny ocala z jej katastrofy. Informacje o pozostaych migowcach pochodz od ludzi, ktrzy przeyli, a tych nie ma zbyt wielu, wic nie mona liczy na dokadny opis wydarze. Poza tym, mielimy inne zmartwienia. + + + Prawie nic. Ogocza 2 to dla mnie zupena tajemnica. Nie wiem, gdzie si rozbia ani co si stao z ludmi, ktrzy ni lecieli. O Ogocz 4 moesz sam zapyta porucznika Sokoowa. On jeden z caej zaogi tej maszyny dotar do Prypeci. Informacje o pozostaych migowcach pochodz od ludzi, ktrzy przeyli, a tych nie ma zbyt wielu, wic nie mona liczy na dokadny opis wydarze. Poza tym, mielimy inne zmartwienia. + + + Potrzebuj innych informacji. + + + Nie mam wicej pyta. + + + Jaka jest sytuacja w Prypeci? + + + Gorzej ju by nie moe. Prype jest pena fanatykw Monolitu i zombiakw. Emisje pojawiaj si jedna za drug, a oprcz tego trzeba cigle uwaa na mutanty i anomalie... Witajcie w piekle. + + + Jak sobie radzicie ze sprztem i zaopatrzeniem? + + + Opowiedz mi o Monolicie. + + + To fanatycy, koniec, kropka. Nie wiem, co ich tak nakrca, ale bez przerwy szukaj zwady. Nie uciekaj nawet w obliczu przewagi liczebnej i ogniowej... A w tym miejscu to rzadko. Zdaje si, e cigle napywaj do nich posiki z CEJ. Pieprzy ich, stracilimy przez nich ju wielu dobrych ludzi... + + + Przesuchiwalicie ktrego z nich? + + + To nic nie daje. Przede wszystkim walcz na mier i ycie. W kocu nasi chopcy zdoali wzi jednego ywcem - oguszy go granat - ale niewiele z tego wyniko. Na sekund spucilimy go z oczu, a on tak mocno rbn gow w cian, e jego czaszka pka jak skorupka jajka. + + + Co teraz zrobicie? + + + Nie sdz, eby dao si kontynuowa Operacj Tor Wodny. Wasza obecno tutaj to potwierdza. Chc utrzyma baz, dopki nie zjawi si migowce. Mam kilka moliwych dat ewakuacji. + + + Nikt tu nie przyleci, dopki si nie dowiemy, co spowodowao katastrof Ogoczy. + + + A wic tak to wyglda... Ale przecie pieszo si std nie wydostaniemy! Bg jeden wie, ile kilometrw ma to gwno, a poza tym Zona pena jest stalkerw, z ktrymi nie jestemy w najlepszych stosunkach. To znaczy, e naszym jedynym wyjciem jest przeprowadzi wasne dochodzenie i nie da si przy tym zabi. Mamy wsplny cel, majorze. + + + Nie teraz. + + + Sucham, majorze. + + + Ze sprztu mamy tylko to, co mielimy ze sob. Udao nam si rwnie przechwyci troch rzeczy Monolitu, gwnie amunicj. Braki zmuszaj nas do oszczdnego wydzielania zapasw. Tak samo jest z jedzeniem - mamy tylko elazne racje i troch arcia z magazynu Monolitu. + + + Ze sprztu mamy tylko to, co mielimy ze sob. Udao nam si rwnie przechwyci troch rzeczy Monolitu, gwnie amunicj. Braki zmuszaj nas do oszczdnego wydzielania zapasw. Jeli chodzi o jedzenie, to jest bardzo podobnie, z tym, e zawarem umow z Garrim. On przynosi nam konserwy, a my pozwalamy mu zosta w bazie i patrzymy w inn stron, gdy szuka artefaktw... I tak nie mamy innego wyboru. + + + Pomcilimy naszych chopcw... Rb, co musisz, i wracajmy. Nie mam ochoty duej tu siedzie. + + + Nie tramy tu czasu, dobra? Chc jak najszybciej wrci do bazy... + + + Dobrze. + + + Tam jest ta dziwna rzecz! Jak mylisz, do czego im ona potrzebna? A, niewane. Chod, stary - rb, co musisz, i wracajmy do bazy. + + + Skoczye ju? Chtnie wrc do bazy i co przeksz... + + + Dobrze. + + + Jak samopoczucie? + + + Do dupy. Dobrze by ze swoimi, ale przebywanie z innymi ludmi w jednym bagnie nie napawa mnie optymizmem. + + + Nie widziaem ci tu wczeniej. Zjawie si niedawno? + + + Tak. Jestem porucznik Sokoow, jeden z pilotw Ogoczy 4. + + + Jak si tu znalaze? + + + Przyszedem ze stalkerem imieniem Garri. Poprosiem go, eby mnie ze sob zabra, kiedy szuka drogi do Prypeci. To dopiero bya przeprawa! Dobrze, e tu po dojciu do Prypeci wpadlimy na nasz oddzia zwiadowczy. + + + Co si stao z Ogocz 4? + + + A kto to moe wiedzie? Od pocztku miaem ze przeczucia... Lecielimy na autopilocie, sprzt dziaa bez zarzutu, a w nastpnej chwili siedzielimy w kupie zomu z rozwalon elektronik. Ja i pilot prbowalimy dotrze do paskiego terenu, ale si nie udao. Spadlimy prosto na gwny warsztat elektrowni Jupiter, runlimy przez dach... Tylko ja przeyem. + + + Potrzebuj kamizelki kuloodpornej. + + + Dobrze. Na pocztek hem... Teraz kamizelka - mam nadziej, e bdzie pasowaa, bo i tak nie mamy innego rozmiaru. Poataem j, powinna wytrzyma. + + + Oczywicie, majorze... W tych okolicznociach nie mam wielkiego wyboru... Przy okazji, poszukajcie porucznika Kiryowa. Wyda wam troch sprztu. + + + Co do helikopterw... + + + Sucham. + + + Rany, to wariactwo... Ju widz, jak Kiryow bdzie mnie pniej baga o aspiryn. + + + Najgorsze jest czekanie. Nic innego tak nie wyprowadza z rwnowagi... + + + Dobrze, majorze, chopcy mog rusza. Jeli musicie si w co zaopatrzy, poszukajcie Kiryowa i Rogowca. Dajcie zna, jak bdziecie gotowi. + + + Dobrze. + + + Ruszajcie. + + + C, w takim razie musi by twardy jak skaa, taki, jakie maj naukowcy. Ale nie bdzie atwo namwi Hermana, eby da mi kombinezon. Mam przeczucie, e wolaby, ebym poszed z goym tykiem do kraca Zony, a nie zajmowa cenne miejsce w ich bunkrze... Moesz spyta Oziorskiego. Jest troch milszy i by moe zgodzi si wyda mi kombinezon. + + + No i co, majorze? + + + [Dalej....] + + + [Dalej....] + + + Byem tam. Jak tylko stracilimy czno z Ogocz 4, powiedziaem pozostaym o wyznaczonym punkcie ewakuacyjnym w Prypeci - pomylaem, e moemy i do elektrowni. Niemal w tym samym momencie helikopter oberwa i rozszed si zapach spalenizny - zapali si silnik. Piloci zdoali dolecie do ldowisk w pobliu Jupitera, ale przy uderzeniu obydwaj zginli. Potem stracilimy sieranta Szlaczina - okazao si, e teren wok ldowisk by zaminowany... W Prypeci zgin kolejny z nas, starszy porucznik, kiedy walczylimy z Monolitem o ten budynek. + + diff --git a/gamedata/configs/text/pol/st_dialogs_zaton.xml b/gamedata/configs/text/pol/st_dialogs_zaton.xml new file mode 100644 index 0000000..fdc7da9 --- /dev/null +++ b/gamedata/configs/text/pol/st_dialogs_zaton.xml @@ -0,0 +1,3117 @@ + + + + Znalazem przy pogbiarce dziwny artefakt. Prosz. + + + Ciekawe - partefakt... Oto twoja zapata. Za dobr robot jest dobra zapata... Zdaje si, e porzdnie ci przeszkolili. Przyjd do mnie, jak bdziesz potrzebowa pracy. Czsto dostaj zamwienia na okrelone artefakty, a zapata jest naprawd nieza. + + + Masz dla mnie prac? + + + Co tam mam... Zeszej nocy stalkerzy widzieli przy pogbiarce jaki dziwny blask... Dziwny nawet jak na t okolic. Moe to sprawdzisz? + + + Dobrze. + + + Tylko uwaaj na siebie. Ostrzegam ci, tam jest silne promieniowanie. Nie zapomnij lekw - pniej mi podzikujesz. + + + W tej chwili nie. + + + Ju rozdzieliem wszystkie dzisiejsze zadania. + + + We ten partefakt. + + + Oto twoja dziaka. Za dobr robot jest dobra zapata... Zdaje si, e porzdnie ci przeszkolili. Przyjd do mnie, jak bdziesz potrzebowa pracy. Czsto dostaj zamwienia na okrelone artefakty, a zapata jest naprawd nieza. + + + Znalazem przy pogbiarce dziwny artefakt. Chcesz zerkn? + + + Ciekawe - partefakt... Uwolni ci od niego. 3000 to chyba uczciwa zapata. + + + Widziaem, e kto ci przynis artefakt, ktry znalazem. + + + Przykro mi, ale nie dam si w to wcign. Moje zasady s proste: przynosisz - dostajesz kas. Wiesz, jak funkcjonuje Zona - bd czujny, dziaaj szybko i nie ufaj nikomu, komu nie moesz przyoy. Ale jeli potrzebujesz staej pracy, dobrze trafie. Czsto dostaj zamwienia na okrelone artefakty, a zapata jest naprawd nieza. + + + Jakich artefaktw potrzebujesz? + + + Zdobd Grawi. + + + wietnie! Szybko poszo. Oto twoja zapata. + + + Zdobd Oko. + + + Zdobd Bbel. + + + Zdobd Muszl. + + + Zdobd Zot rybk. + + + Zdobd Pomie. + + + Zdobd wietlika. + + + Zdobd nieynk. + + + Mog ci sprzeda Grawi. + + + Dzieje si tu co dziwnego. Chopaki bior zlecenia, a potem znikaj... Nie podoba mi si to wszystko. Zamykam interes. + + + Mog ci sprzeda Oko. + + + Mog ci sprzeda Bbel. + + + Mog ci sprzeda Muszl. + + + Mog ci sprzeda Zot rybk. + + + Mog ci sprzeda Pomie. + + + Mog ci sprzeda wietlika. + + + Mog ci sprzeda nieynk. + + + Rozumiem. Wrc pniej. + + + Obie grupy, ktre dla mnie pracoway, zaginy... Postanowiem, e na razie nie bd przyjmowa nowych zlece. + + + Robota wykonana. + + + wietnie! Oto twoja zapata. + + + Prosz. Moe to nieduo, ale zawsze si przyda. + + + Opowiedz mi o zamwieniach na artefakty. + + + Kogo mog zatrudni do ochrony naukowcw? + + + Moich chopakw - Spartakusa i jego druyn. Maj dowiadczenie. Niektrzy, zanim trafili do Zony, byli ochroniarzami, a wyobra sobie, e s tacy, ktrzy suyli w policyjnych siach specjalnych. Wiedz, za ktry koniec trzyma si spluw... Jeli da si ich zwerbowa, bdzie z nich dobra ochrona. + + + Miabym co dla ciebie, ale w wietle ostatnich wydarze... Druyny Spartakusa ju nie ma, niech spoczywa w pokoju. + + + Kogo mog zatrudni do robienia pomiarw dla naukowcw? + + + Znasz Gont i jego chopakw? Poza sezonem myliwskim oni... hmm... chtnie bior prace dodatkowe. Zwaszcza jeli nie wymagaj strzelania. Myl tak: jeli chc, eby palec zdrtwia mi od pocigania za spust, zawsze mam polowanie. + + + Nie mam pojcia. Polecibym ci grup Gonty, ale od duszego czasu nie miaem o nich adnych wieci. + + + Opowiedz mi, jak si tutaj yje. + + + Duo by opowiada. Zadawaj mi konkretne pytania, a odpowiem najlepiej jak umiem. + + + Co tu robi stalkerzy? + + + Co za pytanie, chopie. Schodz na ld ze Skadowska, eby zbada teren i poszuka artefaktw, strzelajc przy tym do wszystkich i wszystkiego, co si rusza. Wracaj na Skadowsk, eby si nawali i nagada... Odpocz i rozerwa si przed nastpn wypraw. Ale kiedy uderza emisja, wyglda to zupenie inaczej. Wtedy wszyscy siedzimy jak trusie i wspominamy tych, ktrzy nie zdyli si schowa... + + + Co przywiodo stalkerw do centrum Zony? + + + Zabawne pytanie. Niektrzy chcieli odkry kolejn skarbnic artefaktw. Innych przycigny tu plotki na temat Oazy. Cz szukaa Speniacza ycze. No i zadziaay te fundamentalne ludzkie instynkty - chciwo i ciekawo... Wszyscy mamy swoje powody. Ty z pewnoci te. + + + Jak tu trafie? + + + Przyszedem tu z Guszcem po tym, jak Mzgozwglacz zosta wyczony. Ale na pewno nie o to pytasz, mam racj? Zajmuj si gwnie artefaktami. Na zewntrz jest ju mnstwo rnych drobiazgw, wic cenni klienci szukaj czego wyjtkowego. Dlatego postanowiem zaoy obz stalkerw w miejscu, gdzie wci mona znale naprawd wartociowe artefakty. No bo kiedy stalker wraca z upem, czego mu waciwie potrzeba? Zimnego piwa i kogo do pogadania. I po to wanie jest Skadowsk. + + + Co sdzisz o bandytach? + + + To jest tak. Nie przeszkadzaj mi na Skadowsku, jeli zachowuj si przyzwoicie. W kocu niezbyt czsto spotyka si prawdziwych dupkw. Niektrzy byli kiedy stalkerami. Kto wie, moe ktry z tych nieszczsnych idiotw porzuci te szemrane interesy, zanim zarobi kulk... ycie jest pene niespodzianek. + + + Pogadajmy o czym innym. + + + Skoro tak mwisz. + + + Powiedz mi, czy pojawili si tu jacy onierze? + + + Zastanw si. Co odacy mieliby robi w naszym obozie? Wierz mi, oni wol omija to miejsce z daleka. Zbyt wielu z nas pamita, jak si czogao w bocie w Kordonie pod ostrzaem z ich cholernych karabinw... + + + Opowiedz mi o Kompasie. + + + O tym artefakcie kr legendy. Mwi si, e Kompas nie ma szkodliwych efektw ubocznych, a jeli umie si go uywa, wyprowadzi z kadej anomalii. Rozumiesz, dlaczego ustawiaj si po niego kolejki chtnych. Nie dalej jak wczoraj syszaem, e Noe wie co na jego temat. To stalker, mieszka na poudnie std. + + + Dobrze, odwiedz Noego. + + + Pomyl o tym. + + + Ju ci mwiem, to artefakt-legenda. Podobno stalker imieniem Noe wie co na jego temat. Mieszka na poudnie std. + + + Niedaleko Janowa znalazem dziwny artefakt. Jeste zainteresowany? + + + Niech no mu si przyjrz... Ano dziwny, ale raczej nie znajd na niego kupca. Lepiej wr do Janowa i poka go naukowcom. Oni zawsze podniecaj si takimi pokrconymi rzeczami. + + + Sowa mwi, e nie dotrzymujesz umw. + + + Mielimy bardzo jasne warunki. Ja dostaj detektory, organizuj ich wykorzystanie w polu, a on dostaje procent od zysku. Zapaciem mu ju za dwa detektory, wic nie naruszyem adnych ustale. Tak wanie wyglda moja umowa z Sow. Jeli dla niego pracujesz, moesz zabra trzeci detektor - nie kupi go. + + + No to co mam powiedzie Sowie? + + + Chyba tak. + + + Na twoim miejscu nie robibym interesw z Sow. Jeli chcesz niele zarobi, mog da ci fory w polowaniu na artefakty. Dwie-trzy godziny - to do, eby przecign pozostaych. A jeli jeste zainteresowany, mam te zlecenie specjalne. Pilnie potrzebuj artefaktu zwanego Kompasem. + + + Sutan zdoa przechwyci Kompas. + + + A to cholernik jeden... dobra, niewane. Pogadaj jeszcze raz z Noem. Wedug ostatnich plotek moe si to okaza... poyteczne. + + + Znalazem Kompas. Prosz. + + + Stary, ycie mi ratujesz! No to teraz na pewno mam tego wanego klienta w kieszeni. Kr plotki, e Sutan chcia przej mj interes. Czeka go gorzki, acz zasuony zawd. Masz, to dla ciebie - uczciwie to zarobie. + + + Nie bd szuka dla ciebie Kompasu. + + + Szkoda. Trudno. + + + Pozdrowienia od Sutana. Przy okazji, wszystkie twoje kanay dostaw zostay odcite. + + + No to teraz wiadomo, kto za tym wszystkim stoi... Nie rusz si ze Skadowska. Chyba nie mam wyboru, musz pracowa dla ciebie i dla Sutana. Dostanie swoj dziak z utargu, a ty moesz codziennie przychodzi po swoj. Pienidze bd czeka. + + + Daj mi mj udzia. + + + Prosz bardzo. + + + Przychodzisz za wczenie. Jeszcze nie mam forsy. + + + Mylisz, e wawy moe handlowa kradzionymi przedmiotami? + + + Wtpi... Z tego, co o nim wiem, woli nie miesza si w podejrzane interesy. Dobry biznesmen dba o swoje dobre imi i reputacj. Oglnie rzecz biorc, nigdy nie syszaem od nikogo zego sowa na wawego. + + + Szukam Ska. Wiesz, gdzie mog go znale? + + + Kiedy go ostatnio widziaem, wychodzi z baru. Jeli dobrze pamitam, to z rozmowy wynikao, e idzie do dwigw portowych. Moe tam go znajdziesz. + + + Kto planuje obrobi grup stalkerw. Wrd nich jest te paru naszych. + + + No nie, stary. Bandyci mno si jak krliki, a my zaczynamy walczy midzy sob? + + + Miaem propozycj, eby zaatakowa w nocy obz w pobliu Szewczenki. + + + Dupki... Ale waciwie byoby mio, gdyby si zgodzi. Rozumiesz, o co mi chodzi?... W ten sposb mgbym ostrzec chopakw i zdyliby przygotowa dla naszych goci serdeczne powitanie. + + + Zgoda. + + + Dobra, id pogada z tymi palantami, a ja dam zna chopakom. + + + Przykro mi, radcie sobie sami. + + + Mam artefakt z Oazy. Zainteresowany? + + + Serce Oazy? Eee, dam sobie spokj. Ludzie gadaj rne rzeczy... Moe jestem przesdny, ale wolabym si do niego nie zblia. Lepiej oddaj go naukowcom. Niech go zbadaj i wyjani nam, jak oddziauje na ludzi. + + + Jeste tu nowy? Spokojnie, niedugo si we wszystkim poapiesz... Zona to surowa nauczycielka. Jestem Brodacz, tutejszy barman. Jak bdziesz mia pytania, wal do mnie jak w dym, jasne? + + + Mw. + + + Chciaby zarobi troch kasy szukajc artefaktw? + + + Jak tam moje zamwienie? Pamitaj, im jeste szybszy, tym wicej zarabiasz. + + + Spnie si, kto ju dostarczy ten artefakt. Ale jeli zrealizowae zamwienie, zapac ci. Tylko mniej. + + + Wanie co wyskoczyo. Mwi si, e bandyci planuj zakup broni. Nasi chopcy chc ich ledzi i nie dopuci do transakcji. Przyda nam si kada pomoc. + + + No i? + + + Co robi najemnicy w zakadzie utylizacji odpadw? + + + Lepiej si tam nie zapuszczaj. To nie twoja sprawa. + + + Podoba ci si praca u naukowcw? + + + Cakiem j lubi. Ciesz si, e to do nas przyszede. Naukowcy nie mogliby mie lepszej ochrony ni my. + + + Zbieram oddzia, z ktrym wybior si do Prypeci. Przyczysz si? + + + Nie. Musz pilnowa naukowcw... Ale pogadaj z Sokoowem - pamitam, e chcia i do Prypeci. + + + Nie. Musz pilnowa naukowcw... W kocu jestemy tu po to, eby ich ochrania. + + + Ekhm... Nie, na razie musz zosta tutaj. + + + Chciaby pracowa dla naukowcw? + + + To zaley... Co miabym robi? + + + Ochrania bunkier. + + + Jasne, dziki za propozycj. + + + Dokonywa pomiarw w anomaliach. + + + To nie dla nas robota. Lepiej zapytaj stalkerw. + + + Suchaj, stalkerze. Ju i tam umieram z godu, a twoje marudzenie tylko mnie dodatkowo dobija... + + + Mog ci przynie co do jedzenia. + + + Ha! Dobra, przynie. Konserw misn, kiebas i chleb... Po sze sztuk. Przynie tyle, eby wystarczyo dla wszystkich, bo jestemy godni jak wilki. + + + Podobno mona tu znale narzdzia. + + + A kto to wie? Ale przesta si tak krci. I tak mamy mas roboty - nie mam nawet kogo wysa po jedzenie. + + + A kto to wie? Ale jak chcesz, moesz sobie przeszuka ten mietnik. Moe znajdziesz to, czego ci trzeba. + + + Oto jedzenie. + + + Rany, a ju straciem nadziej... Dziki. Bdzie z tego dobry obiad dla chopakw. No to czego chciae? Przeszuka te mieci? Moe znajdziesz tam to, czego potrzebujesz. Tylko przesta wymachiwa t spluw! + + + Rany, a ju straciem nadziej... Dziki. Bdzie z tego dobry obiad dla chopakw. Suchaj, jeli chcesz si tu troch rozejrze... Nie ma problemu. Tylko przesta wymachiwa t spluw! + + + Nie jeste tu mile widziany. To nasz obz i nie masz tu czego szuka. Moi chopcy i tak s ju za bardzo wygodzeni i spici... + + + Przesta, bo moi chopcy s tak wygodzeni, e palce im si trzs na spustach... + + + A, stalker... Chodzi o co wanego? Bo jak nie, to musz wraca do roboty. + + + Jestem gotw i na polowanie. + + + Dobrze. Chodmy. + + + Chodmy. + + + Jeszcze nie pora. Wr o trzeciej nad ranem. + + + Rozumiem. + + + My te... Tylko e ta emisja - chimera na pewno teraz nie pi. Chyba bdziemy musieli sprbowa szczcia nastpnym razem... + + + Gonta nie yje. Jak to si stao... Idziesz przypadkiem do Janowa? Jest tam Traper, przyjaciel Gonty. Powiesz mu, e chimera nie yje? Ja pewnie pjd do domu. + + + Trzymaj si. + + + Wyno si std. To przez ciebie zgin Gonta. Co my teraz zrobimy?... + + + Trzymaj si. + + + Opowiedz mi o sobie. + + + Jestem Gonta, przywdca myliwych. Zabijamy mutanty za kas. Czasami apiemy je te ywcem - do eksperymentw naukowych albo jeli kto chce mie egzotyczne zwierztko... Jak mawia Traper: Kadej bestii kula wedle potrzeb..." + + + Opowiedz mi o polowaniach na mutanty. + + + Nie jestem najbardziej dowiadczonym myliwym, ale mog ci opowiedzie o zwierztach, ktre yj w stadach. Misacze, dziki, lepe psy, nibypsy, snorki, chomiki... Wiem nawet to i owo o pijawkach. + + + Opowiedz mi o dzikach i misaczach. + + + Misacze s najmniej grone ze wszystkich mutantw. Omijaj stalkerw z daleka, ale zaatakowane bd si broni. Jeli jest z nimi dzik, mog by kopoty. Trzysta kilo wciekoci to nie przelewki. Jeli na ciebie zaszaruje, zejd mu z drogi. Sprbuj wykorzysta przeciw niemu jego wasny rozpd. Taka gra misa nie zdoa si szybko odwrci, prawda? Uskocz na bok, a potem nafaszeruj go rutem. + + + Opowiedz mi o lepych psach i nibypsach. + + + Samotne psy nie s zbyt grone, ale cae stado to ju spory problem. Atakuj tylko, gdy s godne... kopot w tym, e rzadko kiedy nie s. Jeli przyjdzie ci walczy z caym stadem, sprbuj je po kolei powystrzela z wyej pooonego miejsca, inaczej po prostu ci przewrc. Zwaszcza jeli s z nimi dorose nibypsy. Nie s duo silniejsze od lepych psw, ale znacznie bardziej przebiege i niebezpieczne... Jeli jeden zamieni si nagle w cae stado, pamitaj: atakuj ci widma. Prawdziwy nibypies bdzie si trzyma z tyu i tylko podgryza ci od czasu do czasu... Sprbuj go znale. Gdy tylko prawdziwy pies zginie, widma znikn. + + + Opowiedz mi o snorkach. + + + Pozostaoci ludzi... Dla dowiadczonego myliwego samotny snork nie stanowi problemu. Czekasz, a na ciebie skoczy, a potem faszerujesz go rutem. Ale kiedy jest ich wicej... Trzeba do nich strzela najszybciej, jak si da, i unika ich skokw. One o tym wiedz i zwykle prbuj atakowa jednoczenie. + + + Opowiedz mi o chomikach. + + + To koszmar kadego myliwego... Najgorsze, co mona zrobi, to je zlekceway mylc, e s takie mae. S niesamowicie szybkie, zwinne i zawsze przemieszczaj si stadami. Kiedy poczujesz, jak wbija si w ciebie kilkadziesit maych kw - wtedy przestajesz je lekceway i zaczynasz strzela... A teraz najgorsze: potwornie trudno je trafi. To dlatego zawsze powtarzam stalkerom, eby mieli przy sobie naadowan strzelb. + + + Opowiedz mi o pijawkach. + + + One same s dowiadczonymi owcami i potrafi si wietnie kamuflowa. Prawie ich wtedy nie wida. Jeli polujesz na pijawk, sprbuj j przestraszy. Bdziesz j lepiej widzie, kiedy bdzie si porusza... Pamitaj, pijawki zakradaj si od tyu i oplataj szyj ofiary swoimi mackami. To paskudne, stary... Jeli bdziesz mia pecha i trafisz na kilka pijawek, zawsze uwaaj, co masz za plecami. + + + Dobrze, niewane. + + + Jeli spotkam Srok, na pewno dam ci zna. + + + Nie bdziesz tego aowa... Dam mu popali. + + + Czym ci podpad Sroka? + + + Przyszed raz do mnie i powiedzia, e przez kontrolera nie moe zabra swojego upu. W mojej druynie brakowao wtedy jednego czowieka. Dania, nasz tropiciel, wyruszy na poszukiwanie gniazda pijawek. No wic stwierdzilimy, e pomoemy Sroce w odzyskaniu upu i zabralimy go ze sob na polowanie. Mia tylko pilnowa, czy nie zblia si do nas chimera... + + + I co byo dalej? + + + A dalej byo tak - ten dra zwia ze swoim upem i przy okazji zwdzi nasz. Kiedy pojawia si chimera, bylimy kompletnie zaskoczeni. Garmata w ogle nie zdy zareagowa. No bo kto by zdy? I zamiast polowa na nasz zwierzyn, musiaem broni swoich ludzi. W kocu udao mi si zrani chimer, ale zanim ucieka, udao jej si niele poturbowa Kraba. Cay tydzie przygotowa poszed na marne. + + + Stary, jeste urodzonym myliwym! Oto trofeum specjalnie ode mnie... Jak mawia Traper: Twoj gwn broni s umiejtnoci. Przy okazji, idziesz do Janowa? Dobrze by byo mu powiedzie, e chimera nie yje. Ja na razie zostan na Skadowsku, poczekam, a Krab wydobrzeje. Idziesz z nami? + + + Tak. Chodmy. + + + Nie. Rozejrz si jeszcze po okolicy. + + + Udao nam si. To mae trofeum jest specjalnie ode mnie... Mogo pj odrobin lepiej, ale i tak wyszo niele. Jak mawia Traper: Jeli ma si dowiadczenie, to na co puapki?... Przy okazji, idziesz do Janowa? Dobrze by byo mu powiedzie, e chimera nie yje. Ja na razie zostan na Skadowsku, poczekam, a Krab wydobrzeje. Idziesz z nami? + + + Garmata nie yje... Ta chimera drogo nas kosztowaa. Nie idziesz czasem do Janowa? Powinnimy powiadomi Trapera, e chimera nie yje. Ja na razie zostan na Skadowsku, poczekam, a Krab wydobrzeje. Idziesz? + + + Znalazem Dani. Nie yje. Zabi go Wstrzs, ktry te nie yje. + + + O rany! Dlaczego zawsze najpierw gin ci najlepsi? Ten Wstrzs, sukinsyn jeden! Zabi Dani... To by cholernie dobry chopak! + + + Sdzisz, e wawy moe handlowa kradzionymi towarami? + + + Kradzionymi towarami? Skd ci to przyszo do gowy? Znam wawego od dawna, regularnie kupuj od niego bro. Ma wietny towar w dobrej cenie. Pierwsze sysz. Pewnie jacy nowi konkurenci chc go wysadzi z sioda i rozsiewaj plotki... + + + Zbieram oddzia, z ktrym wybior si do Prypeci. Przyczysz si? + + + Mam umow z naukowcami i musz jej dotrzyma. Poza tym nie mam ochoty i. Powiniene pogada z Sokoowem. Cigle mi suszy gow, w kko powtarza, e musi i do Prypeci, ale boi si wybra sam. Prawdziwy z niego onierz. + + + Mam umow z naukowcami i musz jej dotrzyma. Poza tym nie mam ochoty i. Przykro mi, stary. + + + Nie, nie chce mi si. Tutaj jest na co polowa. Ty najlepiej wiesz, ile mutantw nadal grasuje w tych okolicach - dobremu myliwemu wystarczy ich do koca ycia i jeszcze duej. + + + Chciaby pracowa dla naukowcw? + + + Co miabym robi? + + + Ochrania bunkier. + + + Nie, dziki. Jestem myliwym, moja robota dotyczy mutantw. A mutanty nie zagraaj bunkrowi. Ludzie owszem, to co innego. + + + Dokonywa pomiarw w anomaliach. + + + Czemu nie? Moemy to robi. Oficjalnie ogaszam zamknicie sezonu owieckiego! Dobrze bdzie sobie zrobi przerw od codziennej rutyny, od tych ciarek, ktre nas przechodz za kadym razem, gdy idziemy w teren... + + + Nie, nie teraz. Teraz, rozumiesz, polujemy. Najpierw musimy wyrwna rachunki z chimer. Nie moemy pozwoli, eby ten krwioerczy mutant grasowa w Zonie i zabija stalkerw na prawo i lewo. + + + Z rozkosz cisnbym teraz Srok za gardo. A potem bybym ju anielsko spokojny i gotowy porozmawia z tob o pracy. + + + Pniej. Teraz i tak mamy ju do na gowie. Musimy rozprawi si z chimer i znale Srok. Nie mamy czasu na nic innego. + + + Znalazem Srok. Jest w stacji Janw, nazywa si teraz Flint. + + + Ten sukinsyn jeszcze yje? No to ju nieduo mu zostao... We to - dziki za wskazwk. Ju si nie mog doczeka spotkania z tym fiutem. Flint, powiadasz... + + + Tak. Dziki. + + + Stary, widziae tego Srok? Znasz go?... Nie? No to jak spotkasz t szuj, to spokojnie wpakuj mu kul w eb. Albo mi powiedz, gdzie go znajd, dopilnuj, eby ci si to opacio. + + + A witam, witam. + + + Czekaj! Wytropilimy chimer, wic nie mamy czasu do stracenia. Krab jeszcze nie wydobrza, Dania jeszcze nie wrci, a ciganie tej bestii we dwch to czysta gupota. Potrzebujemy trzeciego. Ty jeste twardym gociem. Znalaze Srok. Moe zapolujesz z nami na t chimer? + + + Czekaj! Wytropilimy chimer, wic nie mamy czasu do stracenia. Krab jeszcze nie wydobrza, Dania jeszcze nie wrci, a ciganie tej bestii we dwch to czysta gupota. Potrzebujemy trzeciego. Ty jeste twardym gociem. Moe zapolujesz z nami na t chimer? + + + Z przyjemnoci. + + + Jak mawia Traper: Kiedy polujesz, samo polowanie to tylko poowa roboty.... Suchaj: kiedy chimera spdza noc na owach, wraca do swojego lea okoo trzeciej nad ranem. Potem pi jak zabita. I wtedy musimy j zaatakowa... Kiedy bdziesz gotw, przyjd tu o trzeciej w nocy i wyruszymy na owy. Bdziemy w barze. + + + Przemyl to. + + + Jeli si zdecydujesz, wpadnij do baru okoo trzeciej nad ranem. O tej porze chimera wraca do swojego lea na odwieajc drzemk. + + + Czoem. Jak leci? Wygldasz na wypocztego. + + + A, super. wiat jest jednak may. + + + No i co? Ju czas rozprawi si z chimer. + + + Denerwujesz si troch przed polowaniem? + + + Traper poprosi, ebym pomg wam upolowa chimer. + + + Widz, e instynkt nadal go nie zawodzi. Udao nam si w kocu wytropi t chimer. Niestety Krab jeszcze nie wydobrza, a Dania jeszcze nie wrci... Wic jest nas tylko trzech. Ale jeli Traper ci wybra, musisz by dobrym myliwym. Suchaj: kiedy chimera spdza noc na owach, wraca do swojego lea okoo trzeciej nad ranem. Potem pi jak zabita. I wtedy musimy j zaatakowa... Kiedy bdziesz gotw, przyjd tu o trzeciej w nocy i wyruszymy na owy. Bdziemy w barze. + + + Uwaasz mnie za idiot? + + + Jeste idiot. A idiotw trzeba edukowa. + + + Niewane. wiat jest may, a Zona jeszcze mniejsza. Jeszcze si spotkamy. + + + Id... Wyno si std. Na Skadowsku nie ma bjek. + + + Taa, jasne. + + + Przyznaj, popeniem bd. Ale ty zamae zasady. + + + Tak to bywa w Zonie. Dobra, koniec gadania. + + + Skoro pozwoliem, eby artefakt wymkn mi si z rk, zasuguj na miano idioty. + + + Dobra, tylko si nie rozpacz. Nauczk zapamituje si na dugo. A eby na pewno ci nie ucieka, napij si piwa na mj rachunek - to ci poprawi humor. + + + Bior, co mi daj. + + + Dziki, ale jeszcze mnie sta na alkohol. + + + Mylisz, e z ciebie taki wymiatacz? Zamknij si i nie podskakuj! I oddawaj artefakt, kretynie! + + + Dupek. Zatrzymaj sobie artefakt... Oby si nim udawi. + + + Wal si. + + + Bracie! Suchaj, jest taki artefakt, ktry ma uzdrawiajc moc... Bardzo go potrzebuj. Jeden mj kumpel zachorowa na co dziwnego i niedugo si przekrci, nasze lekarstwa nie pomagaj... Prbowaem zdoby ten artefakt, ale wpadem w anomali gazow. Nie trafie czasem na niego? + + + Jeli to takie wane, to prosz. + + + Dziki, brachu! Nie zapomn tego. + + + Trzymaj si. + + + Mam taki artefakt. Ale sam go potrzebuj. + + + Stary, no co ty! Mj kumpel... On naprawd umiera! + + + W Zonie kady musi troszczy si o siebie. Trzymaj si. + + + Nie, nie znalazem go. Trzymaj si. + + + Ten artefakt nie przyniesie ci niczego dobrego. Wierz mi na sowo. + + + Jeli go tak bardzo potrzebujesz - prosz, we. + + + Dziki, brachu! Nie zapomn tego. + + + Trzymaj si. + + + Zobaczymy. + + + Nie mam o czym z tob rozmawia. + + + Dlaczego mieszkasz na tym mietniku? + + + To jest arka! Zapamitaj to, jeli chcesz przey! Kiedy nadejdzie fala, nie oddalaj si std. Tu bdziesz mia szans na przeycie. aden mutant nigdy si tu nie wedrze. + + + Mwie o fali... + + + Tak, o fali mutantw, ktra zmiady ludzi i wyprze ich z Zony! A jeli jaki biedny dure przeyje, zmiecie go wielgachna emisja! Zdziesitkuje ona wszystkie istoty yjce w Zonie!... Oprcz tych, ktre si przygotuj. + + + Skd masz tego psa? + + + To Lassie. Kochana sunia... Gdyby nie ona, ju dawno zostabym poarty we nie. Przeklte mutanty... Nienawidz ich! Jak tylko czowiek zamknie oczy, od razu pchaj si do niego z tymi paskudnymi szponami, kami i mackami... + + + Potrzebuj artefaktu o nazwie Kompas. Wiesz, gdzie mog go znale? + + + Ten szajs ci nie uratuje, kiedy ze wszystkich stron zaczn si zazi mutanty! Masz, we to i zejd mi z oczu. + + + Dziki. + + + Wiesz cokolwiek o rozbitych helikopterach? + + + Wiem co o jednym z nich... Wiem, e jest na paskowyu i e dookoa niego roi si od snorkw. Co par dni chodz do nich postrzela... Dlaczego tak na mnie patrzysz? Nie da si za jednym razem zniszczy caego gniazda. + + + Jak mog si dosta na paskowy? + + + Te chcesz sobie postrzela do snorkw, co? Szacunek... Mog ci tam zaprowadzi. + + + Chodmy. + + + Innym razem. + + + Stalkerem. + + + Jasne. Czego szukasz? + + + Nie twoja sprawa. + + + Zaprowadz ci tam. Na razie zosta tutaj. Jest emisja... Kumasz? Emisja!!! + + + Byem w gniedzie. + + + Tak? Nie da si ich poskromi... Mutantw bdzie coraz wicej. A pewnego piknego dnia zaatakuj! Ich fala wymiecie z Zony kadego, kto nie bdzie na ni przygotowany! + + + Suchaj, hmm, nie masz moe przypadkiem Kompasu? + + + Mylisz, e on ci ochroni przed emisj? Hehe, we go i spadaj! + + + Dzikuj. + + + Kim jeste? + + + Stalkerem. Ju si kiedy spotkalimy. + + + Nie pamitam... Niewane. Czego potrzebujesz? + + + Stalkerem. Zwykym stalkerem. + + + Rozumiem. Szukasz schronienia w arce? Czuj si jak u siebie. + + + Nie twoja sprawa. + + + A, to ty. Czego chcesz? + + + Masz moe jaki Kompas na zbyciu? + + + Opowiedz mi o anomaliach. + + + Zbliajc si do anomalii pamitaj o tym, e bdzie tam bardzo gorco, albo e w powietrzu bdzie si unosi toksyczny gaz, albo bdzie to rdo promieniowania. Mog wystpowa take zakcenia psioniczne, ale na razie nie bd o nich mwi. To zaley od rodzaju anomalii - czy jest cieplna, gazowa, elektryczna... czy grawitacyjna, ale mam nadziej, e z tymi ostatnimi nie bdziesz mia do czynienia. S te anomalie ruchome, ale to ju inna para kaloszy. + + + Opowiedz mi o anomaliach cieplnych. + + + Jeli zobaczysz co drcego, migotliwego, jak powietrze parujce z chodnika w gorcy dzie - to bdzie anomalia cieplna. Kiedy co si do niej dostanie, wybucha ona niezwykle gorcym pomieniem. Pocztkowo mylano, e s to strumienie naturalnego gazu, ale ta teoria ju upada. + + + Opowiedz mi o anomaliach gazowych. + + + Ten typ anomalii zawdzicza sw nazw dziwnym, nieustannym procesom chemicznych, ktre w nim zachodz. Takie anomalie wytwarzaj kwas, ktry w kilka sekund rozpuszcza skr, albo toksyczne gazy, ktre rwnie szybko niszcz puca...Na szczcie atwo je zauway na otwartym terenie. Problem zaczyna si wtedy, gdy trafi si na jedn z nich w ciemnym tunelu. + + + Opowiedz mi o anomaliach elektrycznych. + + + To bardzo interesujcy typ anomalii, ktry gromadzi znaczn ilo elektrycznoci statycznej. Stalkerzy zwykle wykorzystuj fakt, e anomali elektryczn mona rozadowa za pomoc dowolnego przedmiotu z metalu. Wrzucaj do niej rub i przebiegaj na drug stron, zanim ponownie si naaduje. Ja wol obchodzi je dookoa - faza rozadowania trwa za krtko. + + + Opowiedz mi o anomaliach grawitacyjnych. + + + S zwykle nieruchome. Kiedy patrzysz w okrelony punkt i widzisz, e obiekty za nim s znieksztacone - masz anomali. I lepiej do niej nie podchod. Wszystkie trzy znane rodzaje reaguj natychmiast, gdy si ich dotknie. Trampolina wyrzuca wszystko spod siebie - czsto na ogromn odlego. Wir dziaa odwrotnie: wsysa dany obiekt do rodka, miady go z olbrzymi si, a po chwili wyrzuca z siebie jego kawaki. Karuzela unosi ofiar w powietrze, obraca i rozrywa na strzpy... W kadym przypadku jest to nieprzyjemna mier. + + + Opowiedz mi o anomaliach ruchomych. + + + Osobicie zetknem si tylko z Komet i Tesl. Pierwsza to ognista kula o rednicy okoo metra. Ale bd pewien, e gorco odczuwa si ze znacznie wikszej odlegoci... Druga jest, mona powiedzie, czym w rodzaju pioruna kulistego. To bez wtpienia kula i bez wtpienia posiada waciwoci elektryczne. Obie anomalie nieustannie si poruszaj, ale zwykle po staych, zamknitych trajektoriach. Uwany stalker nie powinien mie trudnoci z ich ominiciem... Po prostu musisz by czujny. + + + Dobrze, zapomnij o tym. + + + Opowiedz mi o sobie. + + + Nie bez powodu nazywam si Pilot. Korzystam tylko z bezpiecznych tras. Nie nadaj si do zbierania artefaktw ani do walki z bandytami, wic... Kady powinien robi to, co mu wychodzi najlepiej i pozwoli innym czerpa z tego korzyci. Rzecz jasna. kady talent ma swoj cen. + + + Opowiedz mi o emisjach. + + + Mam kilka map terenw pomidzy Zatonem i Jupiterem. Chcesz zerkn? + + + Zobaczmy... Dobrze, bardzo szczegowa. W naszym biznesie szczegy mog decydowa o yciu i mierci. Dobra! Te mapy pokazuj, e istnieje bezpieczna droga pomidzy Skadowskiem i Janowem. Jeli nie masz nic przeciwko temu, skopiuj dane do mojego PDA. A teraz mog ci zaproponowa niez znik. + + + Nie potrzebujesz czasem przewodnika? Kogo, kto bezpiecznie przeprowadziby ci przez anomalie i ochrania przed emisjami? Pilot, do usug. + + + Potrzebujesz pomocy przewodnika? + + + Mio ci widzie. Co moe dla ciebie zrobi stary Pilot? + + + Znowu ruszasz w drog? + + + Dzie dobry. Nie moesz dugo wysiedzie w jednym miejscu, co? Do usug. + + + Witaj. Jeli szukasz przewodnika, wanie go znalaze. Poczekajmy tylko, a skoczy si emisja. W midzyczasie moemy porozmawia o anomaliach. + + + Obawiam si, e w tej chwili nie przydam si jako przewodnik... Emisja si rozszalaa. + + + Ile za poprowadzenie do stacji Janw? + + + Niestety to daleko std, wic cena wynosi 3000. + + + W porzdku, chodmy. + + + Nie mam tyle przy sobie. + + + Jeszcze nie chc i. + + + Z twoimi mapami - tylko 1000. + + + W porzdku, chodmy. + + + Nie mam tyle przy sobie. + + + Jeszcze nie chc i. + + + To daleko std, wic cena wynosi 3000. Bd gotw do drogi jak tylko skoczy si emisja. + + + Z twoimi mapami - tylko 1000. Musimy tylko poczeka, a skoczy si emisja. + + + Moesz mnie zaprowadzi do Prypeci? + + + Nie. Kady ma swoj specjalizacj. Widzisz Garriego? Sdz, e on bdzie mg ci pomc. + + + Nie osobicie. Ale za 6000 mog ci zaprowadzi do stacji Janw i umwi z Garrim. Stamtd on zabierze ci do Prypeci. Co ty na to? + + + W porzdku, chodmy. + + + Nie mam tyle przy sobie. + + + Jeszcze nie chc i. + + + Nie osobicie. Ale za 4000 mog ci zaprowadzi do stacji Janw i umwi z Garrim. Stamtd on zabierze ci do Prypeci. Co ty na to? + + + W porzdku, chodmy. + + + Nie mam tyle przy sobie. + + + Jeszcze nie chc i. + + + Nie. Kady ma swoj specjalizacj. Widzisz Garriego? Sdz, e on bdzie mg ci pomc, kiedy skoczy si emisja. + + + Nie osobicie. Ale za 6000 mog ci zaprowadzi do stacji Janw i umwi z Garrim. Stamtd on zabierze ci do Prypeci. Oczywicie po tym, jak skoczy si emisja. + + + Nie osobicie. Ale za 4000 mog ci zaprowadzi do stacji Janw i umwi z Garrim. Stamtd on zabierze ci do Prypeci. Oczywicie po tym, jak skoczy si emisja. + + + Moesz mnie zaprowadzi do Prypeci? + + + Do Prypeci? Nie. Mam do zlece na moj obecn tras, nie musz szuka nowej. Ale mam kumpla, ktry pracowa kiedy w fabryce Jupiter. Powiedzia mi, e biegn pod ni tunele, ktre prowadz do Prypeci. Nie zna szczegw, ale jego zdaniem powinno si ich szuka pod czci administracyjn. + + + Nie. Jeli chcesz si tam dosta, sprbuj znale te tunele pod fabryk Jupiter. + + + Ile za poprowadzenie do Skadowska? + + + Poniewa bdziemy musieli pj okrn drog, 3000. + + + W porzdku, chodmy. + + + W tej chwili troch mi brakuje. + + + Jeszcze nie chc i. + + + T now drog tylko 1000. + + + W porzdku, chodmy. + + + W tej chwili troch mi brakuje. + + + Jeszcze nie chc i. + + + Poniewa bdziemy musieli pj okrn drog, 3000. Bd gotw do drogi jak tylko skoczy si emisja. + + + T now drog tylko 1000. Musimy tylko poczeka, a skoczy si emisja. + + + Dokd moesz mnie zaprowadzi? + + + Do stacji Janw, niedaleko fabryki Jupiter. A stamtd z powrotem do Skadowska. Wol dobrze zna jedn tras ni tylko chwali si, e znam ich wiele. + + + Uniemoliwiem bandytom transakcj dotyczc broni. + + + Dziki za pomoc. Kiedy pomyl o latach 90. i tych draniach z granatnikami, przechodzi mnie dreszcz... Prosz, to dla ciebie. Gotwka zawsze si przyda. + + + Szukam Guszca. Mielimy si tu spotka. + + + Guszec zostawi dla ciebie wiadomo. Powiedzia, e idzie do dwigw portowych. I e dowiedzia si czego nowego o zaginionych stalkerach. + + + Guszec nie yje. Wstrzs go zabi, tak jak innych stalkerw... Wstrzs te nie yje. + + + Wstrzs? Cholera. Mielimy tego gada tu pod nosem. To mg by kady z nas... Skoro dorwa Guszca... Dziki, stary. Ocalie cay nasz obz. Prosz. + + + Wstrzs?!... Wybacz, stary, nie kupuj tego. Moe gdyby byy jakie dowody... Biedny Guszec. + + + Oto PDA Wstrzsa. Zawiera dowd na to, e to jego robota. + + + Cholera. Mielimy tego gada tu pod nosem. To mg by kady z nas... Skoro dorwa Guszca... Dziki, stary. Ocalie cay nasz obz. Prosz. + + + Pomog wam rozprawi si z bandytami. + + + wietnie. Id do stranicy - to tam s nasi chopcy. Od nich dowiesz si wszystkich szczegw. + + + Co wiesz o wawym? Czy to moliwe, eby handlowa kradzionymi towarami? + + + Nie znam go za dobrze. Wtpi, eby si w to wplta. Jeli si handluje szemranym towarem, raczej nie przyjmuje si na niego zamwie z wyprzedzeniem... + + + Wiedziaem, e w kocu mnie odkryj. Pewnie masz sporo pyta. + + + Wstrzs?!... Powiesz, o co tu chodzi? + + + Ju niczego nie ukrywam. Nie ma sensu. Teraz wiesz, e to ja zabiem Guszca... Dani i pozostaych zaginionych stalkerw take. + + + Dobra, rozumiem. Do gadania. + + + Niczego nie rozumiesz, nikt mnie nigdy nie zrozumie... + + + Dlaczego to zrobie? + + + Jestem uzaleniony od hemoglobiny... Nikomu tego nie ycz... Nie da si z tego wyj. Czasami wydaje ci si, e moesz przey cay miesic bez wypicia nawet kropli krwi, kilka razy mi si to zdarzyo, ale potem... Co ci pka w rodku i zaczynasz opa krew jak szalony... + + + Jak ci si udao utrzyma to w tajemnicy? + + + Kiedy pracowaem w klinice, atwo byo to ukry. Tam zawsze musiaa by nadwyka krwi od dawcw. Ale w Zonie byo inaczej... Mylaem, e w tych trudnych warunkach uda mi si utrzyma chorob na wodzy. Ale byem w bdzie. Przeyem najgorszy napad w yciu i nie mogem myle o niczym innym. Postanowiem zabija tak, eby wygldao to na ataki pijawek. Zwykle wybieraem ofiary, ktre ju byy ranne. + + + A co z Dani i Guszcem? + + + Dania przyszed do mnie po pomoc po ataku pijawek. By ranny. Kiedy on i Guszec postanowili razem zapolowa na pijawki, zdaem sobie spraw, e dugo ju nie wytrzymam. Nadal usiowaem chroni swj sekret, ale moje postanowienie sabo... I wtedy przyszed Guszec. Poapa si w sytuacji i prbowa mnie zabi. A teraz jestemy tutaj. auj tych wszystkich ludzi, ale to nie przywrci im ycia. + + + Dobra, rozumiem. Do gadania. + + + Niczego nie rozumiesz, nikt mnie nigdy nie zrozumie... + + + Sucham. + + + Witaj, potrzebujesz pomocy? + + + Witam. + + + Potrzebuj pomocy medycznej. + + + Niech no spojrz... + + + No, to by byo na tyle. Moesz i. + + + Czko! Te szukasz artefaktw? + + + Hej ho! Na artefakty by si szo, co? Jest ich duo, powinno wystarczy dla wszystkich. + + + Cze! Te prbujesz znale par artefaktw? + + + Czoem. Chcesz zanie ten artefakt Brodaczowi? + + + Moe tak, moe nie. Co to ciebie obchodzi? + + + Potrzebuj go. + + + Ja te... Ale oddam ci go za now bro. Tak z najwyszej pki. + + + Mam dobr bro. Pohandlujmy... + + + Dobrze. + + + Nie, to nie przejdzie. + + + No to zejd mi z oczu, do cholery. + + + Dobra. + + + Waciwie nie. + + + Co wiesz o wawym? + + + Niewiele... Nie robimy ze sob interesw. Podczas gdy on przeczesuje Zon w poszukiwaniu super-ekstra spluwy, ja sprzedaj sto zwykych. Poza tym strasznie zadziera nosa, nie chce handlowa z miejscowymi zbirami. Kiepski z niego kupiec, co dla mnie jest waciwie korzystne. + + + Brodacz powiedzia, e inaczej si umawialicie. + + + Inaczej to niech on sobie w dup wsadzi! Ta brodata winia zaczyna si za bardzo nadyma! Trzeba mu przypomnie, kto tu jest szefem... Suchaj, na Zatonie jest jeden wpywowy go, nazywaj go Sutanem. Odwied go - powie ci, co masz zrobi. + + + Pjd pogada z Sutanem. + + + adnych sutanw. Natychmiast daj mi mj udzia! + + + Uch... Dobra. Masz tu gotwk... Ale pamitaj, Brodacz mydli ci oczy. + + + Potrzebuj informacji. + + + Co chcesz wiedzie? + + + Potrzebuj trujcego gazu. Podobno moesz co wiedzie na ten temat. + + + Tak. Powiem ci za 2000. + + + Prosz. + + + No to suchaj. Kiedy przejeda tdy konwj wojskowy przewocy gaz - nie udao mu si dotrze do celu. Nikt nie wie, co si stao, ale zbiorniki z gazem powinny wci tam by. Wszystko jasne? A przy okazji, mog tam te by jakie dokumenty. Jeli je znajdziesz, przynie je do mnie, a twoja inwestycja moe ci si zwrci. + + + To dla mnie za drogo. + + + Twoja sprawa. + + + Gdzie znajd stalkera imieniem Sroka? + + + Powiem ci... za 1000. + + + Prosz. + + + Tutaj go nie znajdziesz, ale may ptaszek powiedzia mi w sekrecie, e trzeba szuka w okolicach Jupitera, moe niedaleko stacji Janw. Pamitaj, e jeli kto namci w jednym miejscu, to w drugim nie bdzie uywa tego samego imienia... Pewnie te jako si maskuje, bo wykombinowa, e ludzie bd go szuka pord stalkerw. + + + Szukam Ska. Wiesz, gdzie mog go znale? + + + Powiem ci za 1000. + + + Prosz. + + + Sk to chciwy dure, zacz krci z niebezpiecznymi ludmi. Spali za sob mosty, wic powiniene go szuka w pobliu Jupitera. Nie moe si podzia nigdzie indziej. Nie tylko ty go szukasz. + + + Co wiesz o rozbitych helikopterach? + + + Hmm... Wszyscy tutaj wiedz, gdzie spady. Jeden run na poudniowy paskowy, drugi wyldowa na bagnach, a trzeci dokadnie na supach podstacji. O ktre miejsce pytasz? + + + O poudniowy paskowy. + + + O podstacj. + + + O bagna. + + + To wszystko, jeli chodzi o helikoptery. + + + Pa, jeste mi winien 200. + + + Prosz. + + + No wic ten migowiec wyldowa obok lea snorkw. O ile wiem, onierze si stamtd wydostali, nie wszyscy, ale wikszo. Wytukli mutanty i zeszli na d. Przy okazji, jeli tam idziesz, mog ci zaoferowa dobr strzelb i troch rutu, dziki ktrym rozprawisz si z tymi bestiami. Jedyny problem w tym, e nikt poza tym pomylonym durniem Noem nie wie, jak si dosta na ten paskowy. + + + To dla mnie za drogo. + + + Twoja sprawa. + + + Powiem ci za 200. + + + Prosz. + + + Powiem ci za 200. + + + Prosz. + + + W tej chwili nic. + + + Masz dla mnie prac? + + + Po pierwsze, jest maa robtka dla naukowcw; po drugie, musimy zdoby informacje z obozu najemnikw; a po trzecie, handlarz nadal potrzebuje ochrony. Duo si tu dzieje, wybierz, co ci odpowiada. + + + Opowiedz mi o pracy dla naukowcw. + + + Musisz znale trzy detektory Weles i zanie je do bunkra naukowcw w pobliu Jupitera. Jak tam bdziesz, pogadaj z Nowikowem, powiedzia, e przy nich pomajstruje... Kiedy detektory zaczn przynosi zysk, podzielimy si nim po poowie. Wszystko jasne? No to ruszaj. To zadanie to jak przechadzka po parku. + + + Umowa stoi. + + + Moe innym razem. + + + Opowiedz mi o obozie najemnikw. + + + W zakadzie utylizacyjnym pojawili si jacy najemnicy i umieram z ciekawoci, co tam szykuj... Zakradnij si do ich obozu i zbierz jak najwicej informacji o ich planach. PDA, dokumenty papierowe, przynie mi wszystko, co znajdziesz. Rozumiesz? Id. Jeli bdziesz dyskretny, zaatwisz to z palcem w bucie. + + + Zgoda. + + + Nie w tej chwili. + + + Opowiedz mi o ochranianiu handlarza. + + + Handlarz potrzebuje ochrony na czas zawierania pewnej transakcji. Nie musisz nic robi, tylko sta i wyglda tak, jakby wszystko byo legalne... Dobra? Handlarz bdzie na ciebie czeka w stranicy. Przekae ci szczegy... + + + Dobra. + + + Czekaj. + + + Innym razem. + + + Po pierwsze, jest maa robtka dla naukowcw, a po drugie, kto musi dla mnie zdoby informacje z obozu najemnikw. Wybieraj. + + + Po pierwsze, jest maa robtka dla naukowcw, a po drugie, handlarz nadal potrzebuje ochrony. Wybieraj. + + + Po pierwsze, kto musi dla mnie zdoby informacje z obozu najemnikw, a po drugie, handlarz nadal potrzebuje ochrony. Wybieraj. + + + Jest maa robtka dla naukowcw. Buka z masem, takie przynie-podaj-pozamiataj... + + + Handlarz wci potrzebuje ochrony na czas zawierania pewnej transakcji. atwizna. + + + Nie ma wicej pracy. + + + Mogoby ci to zainteresowa. + + + Co masz? + + + PDA Noego. + + + Tego psychola z barki?... Dam ci za niego 1000. + + + Umowa stoi. + + + Nie, dziki. Na razie go zatrzymam. + + + Tylko eby ci nie wypali dziury w kieszeni... + + + PDA najemnika imieniem Hak. Znalazem go w zakadzie utylizacji odpadw. + + + Dam ci 1000. + + + Umowa stoi. + + + Bardzo interesujce... wietnie, stalkerze. + + + PDA najemnika imieniem Prga. Znalazem go w zakadzie utylizacji odpadw. + + + Dam ci 1000. + + + Umowa stoi. + + + PDA z informacj o schowkach Monolitu. + + + Dam ci 5000. + + + Umowa stoi. + + + PDA czowieka powizanego z klientem najemnikw. + + + Dam ci 4000. + + + Umowa stoi. + + + PDA jednego z zaoycieli Powinnoci, generaa Taczenki. + + + Dobrze ci za niego zapac - 2500. + + + Umowa stoi. + + + PDA najemnika. + + + Dam ci 1000. + + + Umowa stoi. + + + PDA Morgana. + + + Informacje na temat handlarza Powinnoci, ktry sprzedaje bro na prawo i lewo. Na pewno do czego si przydadz. Zapac ci 4000. + + + Umowa stoi. + + + Notatk ze schowka grupy Strieoka. Jej adresatem jest Duch. + + + Dam ci 500. + + + Umowa stoi. + + + Notatk ze schowka grupy Strieoka. Jej adresatem jest Strieok. + + + Dam ci 500. + + + Umowa stoi. + + + Notatk ze schowka grupy Strieoka. Jej adresatem jest Kie. + + + Dam ci 500. + + + Umowa stoi. + + + Dokumenty z fabryki Jupiter, teczka zawierajca rozkaz generalnej ewakuacji. + + + Dam ci 750. + + + Umowa stoi. + + + Dokumenty z fabryki Jupiter, wpis w notesie. + + + Dam ci 750. + + + Umowa stoi. + + + Dokumenty z fabryki Jupiter, harmonogram dostaw. + + + Dam ci 750. + + + Umowa stoi. + + + Dokumenty z fabryki Jupiter, list nakazujcy przewozi obiekt 62 tylko tunelami podziemnymi. + + + Dam ci 750. + + + Umowa stoi. + + + Nie. Skoro jest w tym Sutan, raczej zostan z boku. + + + Zobaczmy... Tak, to dobry towar. Sprzedasz mi go? + + + Jasne, mnie si do niczego nie przyda. + + + Laptop z obozu najemnikw w zakadzie utylizacji odpadw. + + + Dam ci 2000. + + + Umowa stoi. + + + He... Id z tym do Brodacza albo do naukowcw. Ja nie kupuj podejrzanych towarw... nie chc si obudzi ktrej nocy z ostr chorob popromienn. + + + I tam powinien zosta. Nie lubi niepotrzebnie ryzykowa. Kto wie, czy do pnocy ta rzecz nie stworzy wok siebie pola anomalii... Id z ni do naukowcw, niech j zbadaj i tak dalej. + + + A ja mam pod zlewem gowic nuklearn! Ale naukowcy mogliby si umia - oni uwielbiaj takie rzeczy. + + + PDA Ska. + + + Zobaczmy... Hmm... Nic specjalnego. Pewnie ju wyczycie ten schowek, wic zapac ci 200. + + + Zgoda. + + + PDA jednego z ludzi Sutana. + + + Ciekawe... Moe si przyda. Dam ci 1000. + + + Zgoda. + + + Modu pamici z samolotu bezzaogowego. + + + Bardzo ciekawe znalezisko... Ale nie wzbogacisz si na nim. Skd mam wiedzie, czy kto ju nie przeczyta tych informacji przede mn? Moja cena to 500. + + + Zrobione. + + + W tej chwili nic. + + + Co do tych detektorw... + + + Tak? + + + Gdzie mog je znale? + + + Nie wiem, po prostu je znajd. + + + Mam detektory. + + + No to co tu jeszcze robisz? Zabierz je do Nowikowa w bunkrze naukowcw w pobliu Jupitera. + + + Zaniosem detektory do Nowikowa. + + + Super. Teraz poczekamy, a w nich pomajstruje. Obieca, e jak skoczy, odele je poprzez zaufanego czowieka. + + + Mamy kopoty. Nasz may interes jest zagroony. Nowikow odwali wietn robot z tymi detektorami - rozszerzy ich zakres, zwikszy wraliwo i zrobi jeszcze par innych rzeczy... Dziki tym detektorom pobijesz na gow wszystkich innych owcw artefaktw. Zawarem umow z Brodaczem, eby wszyscy stalkerzy, ktrych zatrudnia, mogli uywa tych nowych detektorw... + + + I? + + + Zgodzilimy si podzieli up na p, ale stalkerzy odmawiaj oddania nam naszej czci. Musisz i do Brodacza i przekona go, eby dotrzyma warunkw umowy... Chyba ty te chcesz dosta swoj dziak, nie? + + + Potrzebuj twojego nowego detektora. + + + Ha. A ja potrzebuj porzdnej broni. Jeli masz co dobrego i drogiego, moemy pohandlowa. + + + Umowa stoi. + + + Nie, dziki. + + + Potrzebuj twojego nowego detektora. + + + To ma by groba? Ja te go potrzebuj, to chyba jasne. + + + Chyba nie zaapae, co? Twj jest ostatni. Nie miaem wikszych problemw z pozbyciem si innych wacicieli... + + + Co takiego?... Pozabijae ich? Bierz go i zostaw mnie w spokoju. + + + A moe by si tak odwali? + + + Innym razem. W tej chwili adnie ci prosz, eby odda mi detektor. + + + A ja ci adnie prosz, eby si odwali. + + + Stalkerze, chciaby troch zarobi? + + + Co jest do roboty? + + + Ukryem up w jednym starym Zaporocu. Ale potem byo trzsienie ziemi i samochd znalaz si pod ziemi. Wszystko obejrzaem i zdaje si, e mona si do niego dosta... Tylko e, yyy, s tam mutanty, snorki. Moesz mi nie wierzy, ale chocia ani troch nie boj si kontrolerw, to te cholerne, ohydne snorki to dla mnie za duo. Jeli zdobdziesz pojemnik z zamkiem zabezpieczajcym, sprawiedliwie podzielimy si upem. + + + Umowa stoi. + + + Dziki, stalkerze. + + + Czy to jest twj pojemnik? + + + Tak, to on! Rany, rzdzisz! + + + Innym razem. + + + Szkoda. + + + Nie, teraz jestem zajty. + + + Dobra, jak wolisz. + + + No i? Jakie wieci? + + + Czego chcesz? Nie widzisz, e jestem zajty? + + + Hej, to moja spluwa! Skd j masz, zodzieju? Moj skradziono dopiero par dni temu. + + + O czym ty gadasz? Niedawno j kupiem. + + + Nie wiem, gdzie i jak j zdobye, ale to na pewno bro, ktr mi ukradziono. Wic jeli nie chcesz mnie zdenerwowa, po prostu mi j oddaj i spokojnie rozejdziemy si do swoich spraw. + + + Dobrze, we j. Nie szukam kopotw. + + + Oddaj j. + + + To moja bro. + + + Ach tak?!... Ostrzegam ci, mam znajomoci! Wszyscy mnie tu znaj! Uwaasz, e dugo przetrwasz w Zonie ze zszargan reputacj, stalkerze? I co na to powiesz, h? Nie oczekuj, e ktokolwiek ci tutaj pomoe, bo cholernie si rozczarujesz! + + + Odpieprz si! + + + Jeste pewien, e to twoja bro? + + + Pewnie, e jestem pewien. Co takiego spotyka si w Zonie raczej rzadko, nie? A ta na pewno naley do mnie. + + + Popenie bd. Jeli teraz si wycofasz, unikniemy walki. + + + Co? Ja popeniem bd? Pomyl dwa razy, zanim si odezwiesz, dupku! Jeli zaczniesz mci, wszyscy stan po mojej stronie. Oddaj mi t bro i spokojnie rozejdziemy si do swoich spraw. Bd nawet tak miy, e nikomu o niej nie powiem. + + + Co? A przyszo ci w ogle do gowy, e tu i teraz mgbym ci przestrzeli eb z tej wanie broni? + + + Dobra, stary, wyluzuj. Zrobio si troch gorco, ale ju si uspokoiem. Bez sensu tak si wcieka. Musiaem si pomyli. + + + Jeli chodzi o ten pojemnik... + + + Znalaze go? + + + Wci nad tym pracuj. + + + Postanowiem go ju nie szuka. + + + Szkoda. + + + Dobrze, niech no spojrz... + + + Oczywicie. Moment... + + + Postanowiem go zatrzyma. + + + O ty may... Nie myl, e ci to zapomn! + + + Oto pojemnik. + + + Dobra, to podzielmy teraz up. + + + Podzielmy. + + + Zobaczmy, co my tu mamy... Moja stara, ale zabjcza Fora. Dawno temu mj wujek wasnorcznie j zmodyfikowa. To prawie rodzinne dziedzictwo... wic j zatrzymam. + + + Nie, oddaj j mnie! + + + Uch, no dobrze... + + + Zobaczmy inne rzeczy. + + + Nie, masz ju dosy. + + + Zobaczmy inne rzeczy. + + + Dobrze, bierz. Co tam jeszcze jest? + + + Dobra... Co dalej. Znakomita apteczka. Mona i z ni nawet na niedwiedzia albo na kontrolera. To dla mnie... + + + Waciwie przydaaby mi si apteczka! + + + Hmm... No dobra. + + + Zobaczmy inne rzeczy. + + + Nie, masz ju dosy. + + + Zobaczmy inne rzeczy. + + + Zatrzymaj to. Co tam jeszcze mamy? + + + Dobra... a. Pewnie nigdy nawet nie miae w rkach takiej broni... Ulepszony AKM-74/2U. Daem za ni temu kolesiowi z Powinnoci chyba z ton apteczek. To byo wtedy, kiedy Wolno daa im taki wycisk, e skoczyy im si wszystkie leki. Od tamtej pory to malestwo trzy razy ocalio mi ycie... To jest na pewno dla mnie. + + + A moe ja bym j wzi? + + + Hmm... amiesz mi serce. Ale umowa to umowa. We j. + + + Zobaczmy inne rzeczy. + + + Nie, masz ju dosy. + + + Zobaczmy inne rzeczy. + + + Zatrzymaj to dla siebie. Co dalej? + + + Och-ch... Pikna i cenna rzecz. Ten artefakt jest wart fortun! Sam go wycignem z anomalii. Par razy si przy tym posraem w gacie. To moja zdobycz, kosztowaa mnie wiele potu i ez. + + + Chyba potrzebuj go bardziej ni ty. + + + Stary, zabijasz mnie... We go - nieprdko zapomnisz moj hojno. + + + Zobaczmy inne rzeczy. + + + Masz ju dosy. + + + Zobaczmy inne rzeczy. + + + Zatrzymaj to. Co tam jeszcze mamy? + + + No i na koniec... Znakomity hem, rczna robota. Jaki czas temu mielimy w Kordonie nowego stalkera, prawdziw zot rczk. Zanim si przekrci, zrobi par naprawd fajnych rzeczy. Midzy innymi ten hem. Nigdzie nie znajdziesz drugiego takiego!... Zatrzymam go. + + + Suchaj, to ja ryzykowaem yciem przeciwko hordzie snorkw... Zasuguj na ten hem. + + + No dobra... W porzdku. Niech ci dobrze suy. + + + Zobaczmy inne rzeczy. + + + Ty masz ju dosy. Ja te musz co zatrzyma, nie? + + + Zobaczmy inne rzeczy. + + + Dobra, zatrzymaj to. + + + To wszystko, stary, to cay mj up. + + + Dobra, no to na razie. + + + To wszystko. Ale nie mog ci puci z pustymi rkami... Masz, we mj pistolet! + + + Powodzenia. + + + Czym si zajmujesz? + + + Su i chroni. Kiedy byem policyjnym detektywem, a tutaj jestem kim w rodzaju szeryfa. Przyszedem tu z Brodaczem, a potem on postanowi zaoy tu obz. Po co i dalej, skoro i tak nikt nie zna drogi do Prypeci? Tutaj te jest mnstwo artefaktw. Wic zostalimy. + + + Kogo mog wynaj do ochrony naukowcw? + + + Mamy tu kilku odpowiednich chopakw. Na przykad grup Spartakusa. Porzdni gocie, prawdziwi zawodowcy, wielu ma za sob prac w policji. Jeli si zgodz, nigdzie nie znajdziesz lepszych specw od ochrony. + + + Kiedy mgbym ci podsun kilka imion, ale teraz ju nie. aden z tutejszych stalkerw nie bdzie chcia si zgosi. + + + Kogo mog wynaj do wykonywania pomiarw dla naukowcw? + + + Jest taka grupa stalkerw, przewodzi im Gonta. Pogadaj z nim, moe si zgodzi... Na pewno chtnie zrobi sobie przerw od strzelania do mutantw. + + + Gdyby by tu Gonta i jego chopaki, skierowabym ci do niego... Ale skoro go tu nie ma... Nikt inny nie przychodzi mi do gowy. + + + Kupowae bro od wawego? Wiedziaby, gdyby handlowa kradzionym towarem? + + + Mylisz, e ma do sprytu, eby zrobi tak przekrt za moimi plecami?... Nie. Nie ma takiej opcji. Moja intuicja podpowiada mi, e wawy nie jest dilerem. + + + Szukam Ska. Wiesz, gdzie mog go znale? + + + Sk - jasne, znam go. Co za gupek. Paru chopakw widziao go par dni temu przy dwigach portowych. Pewnie tam si teraz krci. Moesz go poszuka. + + + Cze, stalkerze. Chciaby zarobi troch forsy i rwnoczenie pomc naszemu obozowi? + + + Cze, stalkerze. Jeszcze tu jeste? Jak tak dalej pjdzie, pijawki niedugo wybij nas do nogi. + + + Pogadamy pniej. Mam co do zrobienia. + + + Jak masz dla mnie robot? + + + Jest tak. Zagino paru stalkerw. Nikt nie mia od nich wiadomoci, ale par dni temu znaleziono jedno ciao. Brak ladw przemocy, ale nie byo w nim ani kropli krwi. Wstrzs przebada zwoki, to jego pytaj o szczegy... Ale to musiay by pijawki! Rozmawiaem z myliwym Dani i poszed poszuka ich lea. Od tamtej pory nie byo od niego adnych wieci. + + + Co mam zrobi? + + + Musisz znale ich lee i najlepiej rwnie Dani. To nie jest przyjemna robota, ale dobrze ci za ni wynagrodz. Dobra? + + + Zgoda. + + + W porzdku. Dobra, zaznaczyem dwa miejsca, ktre trzeba sprawdzi jako pierwsze. Zaadowaem wsprzdne jednego z nich do twojego PDA. Musz zaatwi par spraw, a potem wybior si do tego drugiego. Dam ci zna, co znalazem. + + + Umowa stoi. + + + Chyba dam sobie spokj. + + + Wr, jeli zmienisz zdanie. + + + Nie jestem zainteresowany. + + + T sam... Dopki gdzie tam jest gniazdo pijawek, wszystkim nam grozi niebezpieczestwo. I nadal nie byo wieci o myliwym Danile. Pomoesz nam rozwiza ten problem? + + + Guszec mwi mi, e badae ciao jednego z zaginionych stalkerw. Sdzisz, e to pijawka go zabia? + + + Tak, badaem... Tak jak i reszt trupw... adne inne stworzenie nie jest w stanie tego zrobi, to znaczy wyssa z ciaa czowieka ca krew, do ostatniej kropli. Wszystko wskazuje, e to byy pijawki... Jaki inny wniosek mgbym wysnu? + + + Opowiedz mi o sobie. + + + Jestem lekarzem. Specjalizacja - neurochirurgia. Co jeszcze chcesz wiedzie? Potrafi wyci podwzgrze za pomoc lasera, ale na razie nikt w Zonie mnie o to nie prosi. Tutaj jestem zwykym lekarzem, jednym z wielu, ktrzy dobrze si znaj na swojej robocie. + + + Sucham. + + + Potrafisz zama szyfr czarnej skrzynki? + + + No c... To nie jest moja specjalno. Wszystkie te wykresy i algorytmy... Nie ley mi to. Przynie mi co, co bazuje na prostych prawach fizyki, a zaatwi spraw ot, tak... Wystarczy poduba tu, pokrci tam, i bdzie dziaa jak zoto. + + + Mylisz, e wawy moe handlowa kradzionymi przedmiotami? + + + Zaraz, zaraz... wawy i kradzione towary? Nie wierz. Kiedy budowaem swj warsztat, to wanie wawy mi pomg. I nie wzi za to ani grosza... Ludzie mog gada, co chc, a ja i tak wiem, e wawy to dobry czowiek. + + + Masz dla mnie prac? + + + Jasne. Potrzebuj troch narzdzi, ale nie mam czasu ich szuka. Tak to jest ze sprztem, zabiera cay czas. Jeli przyniesiesz mi kilka przydatnych drobiazgw, poka ci, na czym polega ulepszanie. No i zarobisz par groszy. + + + Dobra, bd si rozglda. + + + Nie. Moe pniej. + + + Jasne. Potrzebuj narzdzi, pamitasz? Pomoc dla mnie i zarobek dla ciebie. + + + Potrafisz odblokowa modu pamici? + + + Nie, stary, ja ci tu nie pomog. Caa ta nowoczesna elektronika, komputery... Nie moja dziaka. Lepiej poszukaj kogo modszego... Oni to dzisiaj spijaj z mlekiem matki. + + + Potrafisz wama si do stalowego pojemnika? + + + atwizna. Usuga najwyszej jakoci za jedyne 500. + + + Prosz. + + + Dobra, niech no spojrz... Tu podnie, tam popchn... I bach! Gotowe! Jeszcze nie wynaleziono takiej rzeczy, ktrej bym nie otworzy omem i motkiem. + + + Nie mam tyle. + + + Wr, jak bdziesz mia. Nigdzie si nie wybieram! + + + Pomyl o tym. + + + Mam troch alkoholu. Napijesz si? + + + Nie, stary, jestem na odwyku. Kiedy zobaczyem obiekt 62, pomylaem: To koniec, mam trzsiawk... Widzisz, gorzaa niszczy czowieka. To nie jest zdrowy napitek. A jeli mnie zabraknie, kto bdzie robi naboje do twojego karabinu Gaussa? + + + Masz tu jeszcze jedn butelk. + + + Mam trzeci, jeli potrzebujesz wicej. + + + Przyniosem ci narzdzia. + + + To mio. Ktre? + + + Podstawowe. + + + Super! Teraz potrzebuj ju tylko narzdzi do pracy precyzyjnej i do kalibracji. + + + Do pracy precyzyjnej. + + + Super! Teraz potrzebuj ju tylko narzdzi podstawowych i narzdzi do kalibracji. + + + Do kalibracji. + + + Super! Teraz potrzebuj ju tylko narzdzi podstawowych i narzdzi do pracy precyzyjnej. + + + Na razie adnych. + + + wietnie. Teraz potrzebuj ju tylko narzdzi do kalibracji. + + + wietnie. Teraz potrzebuj ju tylko narzdzi do pracy precyzyjnej. + + + wietnie. Teraz potrzebuj ju tylko narzdzi podstawowych. + + + Genialnie! wietna robota! Jak ty to robisz, stary? Teraz mam ju peen zestaw narzdzi, ha! Zrobi karabin maszynowy z zapalniczek! + + + Przyniosem plany i dokumentacj obiektu 62. + + + Udao ci si! Super! Wiedziaem, e te gnojki nie zdyy wszystkiego zniszczy. Niech no spojrz... Mm-hmm... Wic to chcieli zrobi, gnojki jedne. Dobrze! Potrzebuj kilku godzin, eby to rozpracowa. Zostaw karabin Gaussa u mnie, sprbuj go naprawi. Poczekaj tu, daj mi chwil, a to malestwo znw zapiewa! + + + Potrzebuj baterii do mojego karabinu Gaussa. + + + Jako mj ulubiony klient zapacisz 2000. + + + Prosz. + + + Pomyl o tym. + + + W tej chwili troch mi brakuje. + + + Skoczye z karabinem Gaussa? + + + Buka z masem. System zasilania jest ju czyciutki. Jeli znowu zacznie figlowa, przyjd tu z nim do poprawki. + + + Jeszcze nad nim pracuj. Uwielbiam mie jakie zajcie... + + + Mam tu nieznan bro. + + + Co rozumiesz przez nieznan"? Dawaj j tutaj, niech si przyjrz... + + + Obejrzyj j... Widziae ju kiedy co takiego? + + + Ach, to ty... Niez mielimy zabaw, hehe. nio mi si, e przyniose mi co z przeszoci... Dobra popijawa... + + + Czy to przypadkiem nie ta bro ci si nia? + + + O, stary... To chyba jednak nie by sen. To jest karabin Gaussa, oficjalnie nazywany obiektem 62. Uff... Kiedy wykonywaem robot kontraktow dla fabryki Jupiter. Jeli dobrze pamitam, projektowaem bro wykorzystujc zasad przyspieszenia pocisku przez pole elektromagnetyczne. Widzisz te bbny? To ja je zrobiem... Szkoda, e w 2004 projekt zosta zamknity. Nigdy nie udao nam si znale wystarczajco maego rda energii. + + + Z tej broni ju kiedy strzelano. Co mogo si zmieni? + + + A skd mam wiedzie, do cholery? Szczerze mwic, nie omielibym si wsadzi rubokrta w t bateri. Poza tym system zasilania ma jakie mechaniczne uszkodzenie. Teraz naprawd przydayby si jakie plany tej broni. Warsztat testujcy, w ktrym pracowaem, prowadzi ca dokumentacj produkcyjn. Moe plany i dodatkowa dokumentacja tego karabinu Gaussa wci tam s... Co ciekawe, nadal mam kart wstpu do warsztatu... + + + Daby mi t kart? + + + Taa, no... No dobrze. Tylko jej nie zgub. Jeli przyniesiesz mi te dokumenty, moe uda mi si naprawi twoj bro. + + + Masz tu swoj kart wstpu, ca i zdrow. + + + Dziki. Przypomina mi stare, dobre czasy. + + + No i?... Przyno mi wszystkie swoje popsute bronie, podziurawione kombinezony i co tam jeszcze masz... Na trzewo nie jestem nawet w poowie tak dobry, ale sprbowa mog... + + + Gdzie ty bye? Ju si martwiem, wszdzie ci szukaem. Gdzie ten stalker, pytaem... Ekstra, nie? + + + Czko. Mio, e wpade. Rozgo si... Przyniose mi co do naprawy albo do picia? + + + Hoho! Super! Rce mi si nie trzs, a gowa mwi chc wicej... Nalej mi jeszcze jednego, modziecze! + + + Co tak wolno? No dalej, otwieraj nastpn flaszk! Pijmy za nasz wspln spraw. Taaa. Po wdce staj si geniuszem mechaniki, to nie ciema. + + + Szkoda, e nie ma tu Kawalarza, wypilibymy za Stoga... Niech mu ziemia lekk bdzie. Dobry by z niego chop, prawdziwy twardziel. Jak skaa. + + + Szkoda, e nie ma tu Stoga, wypilibymy za Kawalarza... Niech mu ziemia lekk bdzie. Dobry by z niego chop, prawdziwy przyjaciel. Zawsze dotrzymywa sowa. + + + Uch... Stg... Kawalarz... Jak to si mogo sta... Taki acuch zdarze... + + + Mm-hmm? Co my tu mamy? Pancernymi PM zajm si jutro... Nie martw si, nic si nie dzieje. Czeka na mnie napitek... + + + Ten numer szedziesit dwa... Strasznie bym chcia rzuci okiem na schematy obwodw. + + + Dobrze trafie, przyjacielu. Bro trzeba utrzymywa w jak najlepszym stanie. A jeli masz przy sobie butelczyn albo i dwie, mog powprowadza mnstwo ulepsze. Chcesz mie spadochron w strzelbie? To te mog zrobi, hehe. + + + Tylko popatrz! Wsadzili do baterii elektrostatyczny artefakt! Ha! Wiedziaem, e to jaki anormalny szajs! Zasada jest bardzo prosta - teraz sam mog robi takie baterie. + + + Potrzebujesz, eby ci co naprawi? + + + To jaki bekot. Chyba ju troch zapomniaem, jak czyta dokumenty techniczne... + + + Tak, przyszedem do Zatonu z dwoma kumplami, Stogiem i Kawalarzem... Modziaki, ostre i wkurzone! Rce ich wierzbiy do artefaktw, chcieli ich zdoby cae gry, chcieli by pierwsi, najszybsi... A ja patrzyem w ich ponce oczy i mylaem sobie, e to im nie wyjdzie na dobre. Pewnie, upy to fajna sprawa, ale nie warto dla nich rzuca si w paszcz mutanta. + + + Co si stao? + + + No... Pewnej nocy poszlimy si napi i zaczlimy si spiera, co robi dalej - zosta czy i, a jeli i, to dokd. Kady upiera si przy swoim, bylimy w impasie. Zrobio si naprawd gorco, a kiedy ktnia dobiega koca, rozeszlimy si, kady w swoj stron. Powiedziaem im, e nic nie wiedz o yciu... i jeszcze par niemiych rzeczy. Rany... gdybym tylko znowu ich spotka, przeprosibym ich za to, co wtedy mwiem... Poszlibymy si napi, tak jak kiedy, i powspominalibymy stare, dobre czasy... + + + Jeli spotkam Stoga, mog mu przekaza twoje przeprosiny. + + + Byoby mio. + + + Jeli spotkam twoich kumpli, mog im przekaza twoje przeprosiny. + + + Byoby mio. + + + Jeli spotkam Kawalarza, mog mu przekaza twoje przeprosiny. + + + Byoby mio. + + + Znalazem to PDA - spjrz. + + + Po co mi PDA? Do kogo naleao? + + + Stg nie yje?!... Nie wierz!... O rany! A taki by z niego twardziel... Och, Stg... Spoczywaj w pokoju. Mam nadziej, e przynajmniej z Kawalarzem wszystko w porzdku. + + + Stg nie yje?!... Nie wierz!... O rany! A taki by z niego twardziel... Och, Stg... I Kawalarz te... Spoczywajcie w pokoju, dzieciaki. Jak to si mogo sta... + + + Stg nie yje?!... Nie wierz!... O rany! A taki by z niego twardziel... I Kawalarz... Och, Kawalarz... Ju si nie pomiejemy z twoich kawaw. Spoczywajcie w pokoju, dzieciaki. Jak to si mogo sta... + + + Odpowiesz mi na kilka pyta? + + + Jasne. + + + W jakim czasie realizujesz zamwienie? + + + Zaley, jak bardzo jest skomplikowane. Zwykle takie rzeczy zabieraj mi jeden dzie, czasami mniej. + + + Opowiedz mi o sobie. + + + Niewiele jest do opowiadania. Rnie mi si w yciu ukadao, jak kademu. Wlazem w par anomalii, byem zakadnikiem u bandytw... Trafiem do Zony jako mody chopak, dawno temu. Na pocztku byem chopcem na posyki - leki przeciwpromienne, amunicja pancerna i tak dalej. Potem pracowaem dla Sidorowicza... to bya zapata za to, e uratowa mi ycie. Wykonujc za niego niewdziczn robot zawarem kilka przydatnych znajomoci i wkrtce rozkrciem wasny biznes, zdobywajc unikalne przedmioty na zlecenia klientw. Na razie udawao mi si unika kopw, jakie wymierzao mi ycie, ale mam przeczucie, e moje szczcie si wyczerpuje. Poza tym nie mam ju ochoty nadstawia karku za par groszy. + + + Rozumiem, dziki. + + + Ciesz si, e mogem pomc. + + + Sprzedae mi kradzion bro! + + + O czym ty gadasz? Nie sprzedaj kradzionego towaru. Moje interesy s czyste. Jeli mi nie wierzysz, pogadaj z kimkolwiek w bazie - kady ci powie, e jestem uczciwym kupcem, ktry nigdy nikogo nie zawid. + + + Spotkaem stalkera, ktry twierdzi, e ta bro naley do niego. + + + A jak si nazywa? + + + Sk. + + + A co ci to obchodzi? + + + To wane. Kto ci nabiera, stalkerze. + + + Zobaczymy. + + + Kto ci nabiera, stalkerze. + + + Przychodz po swoje zamwienie. + + + Oto twj Stepowy Orze. Byo z nim trudniej ni mylaem. Zainteresowa si nim jaki znawca broni, ledwo zdyem zapa go dla siebie. Sam zobacz - rczna robota, wszystkie elementy dopasowane z niezrwnan precyzj. Zastanawiae si kiedy, jak wyglda idealny pistolet snajperski? Oto on. Wisisz mi jeszcze 2800. + + + Dobra, masz. + + + Prosz bardzo. Interesy z tob to czysta przyjemno. + + + Nie mam tyle przy sobie. + + + Dobra, przechowam dla ciebie t bro. Mam nadziej, e szybko zdobdziesz pienidze. + + + Nie chc go kupi. + + + Jeli odmwisz przyjcia zamwionego przedmiotu, nie bd mg na tobie polega nastpnym razem. Bd musia uwzgldni w cenie element ryzyka i da wyszej zaliczki. + + + Tak czy inaczej, nie chc tego zamwienia. + + + Dobra, jak wolisz. + + + Pomyl o tym. + + + Jasne, twoja sprawa. Zatrzymam dla ciebie bro przez pewien czas. + + + Oto twj super-ekstra-precyzyjny Stepowy Orze. Wisisz mi jeszcze 2800. + + + Oto Alpine - prawdziwe cacko. Bd pewien, e drugiego takiego pistoletu nie ma w caej Zonie. Unikalny model, bardzo ograniczona liczba sztuk zamwiona dla jednej, jedynej jednostki specjalnej. Nie byo atwo go zdoby, musiaem nawet zaangaowa w to jednego z moich wsppracownikw zza oceanu. Powikszony magazynek, lufa z supertwardej stali, komora z wyjtkowo mocnych polimerw. Dorzu brakujce 2800 i malestwo jest twoje. + + + Oto twj pistolet Alpine z powikszonym magazynkiem. Dorzu brakujce 2800 i malestwo jest twoje. + + + Patrz, oto Marsz. Ten pistolet nalea do najemnika zwanego Wilczarzem. Kompaktowa, wysokokalibrowa bro z krtkim przepywem wstecznym i lejszym zamkiem. Wilczarz by stuprocentowym ajdakiem, ale trzeba przyzna, e zna si na broni. Podobno jego ulubion sztuczk byo odstrzelenie ofierze wszystkich czterech koczyn, a potem gowy - zanim biedak uderzy ni o ziemi. W kadym razie bdzie ci to kosztowao 2800. + + + Oto twj szybkostrzelny pistolet Marsz. Wisisz mi jeszcze 2800. + + + Bardzo prosz - oto pistolet maszynowy Przecinak. Od razu powiem, eby nie sdzi go po wygldzie. To nwka sztuka, jeszcze nie wszed do masowej produkcji. Prototyp, prosto fabryki. Projektanci chcieli stworzy bro krtkodystansow nowej generacji: poczenie duego kalibru, szybkiego strzau i precyzji. Poprosz 8000. + + + Tak, oto Przecinak, szybkostrzelny pistolet maszynowy. Poprosz 8000. + + + Oto pikny okaz - Karabinier. Prawdziwa strzelba wojskowa. Ma tryb automatyczny, a dziki zrwnowaonemu systemowi bezwstrzsowemu dobrze sobie radzi z odrzutem. Dorzu 8000 i jest twj. + + + Oto Karabinier, strzelba automatyczna. Dorzu 8000 i jest twj. + + + Sdz, e tego wanie potrzebujesz. Eliminator, ostatnia nowo. Cay transport mia trafi do Afryki rodkowej, ale dostaem prbk" od przyjaci w ramach specjalnej przysugi. Strzelba automatyczna z duym magazynkiem i znakomit szybkoci ogniow. Jest twoja za jedyne 8000. + + + Jasne. Strzelba automatyczna Eliminator z powikszonym magazynkiem. Za 8000. + + + Jasne. Oto Burza, bro maszynowa i granatnik w jednym. Ten prototyp to zmodyfikowana wersja broni konwencjonalnej zaprojektowanej dla dziaajcych w Zonie jednostek specjalnych. Innowacja techniczna na najwyszym poziomie od naszych sowiaskich braci... Dorzu 16000 i jest twoja. + + + Jasne. Oto Burza, bro maszynowa i granatnik z powikszonym magazynkiem, za dodatkowe 16000. + + + Oto i on - GP37, karabin szturmowy nowej generacji. Precyzyjny, niezawodny i wygodny, z wbudowanym celownikiem optycznym. Wczeniej nalea do obserwatora ONZ. Ich grup przysano w celu zbadania sytuacji w Zonie. Jednak nie skoczyo si to dobrze... 16000 i karabin jest twj. + + + Oto i on - GP37, karabin szturmowy nowej generacji. Kosztuje 16000. + + + Chwileczk. Oto moduowy karabin FT-200M, zaprojektowany i zbudowany w Belgii. Precyzyjny, uniwersalny, dla prawo- i leworcznych, ma celownik optyczny i granatnik. Wczeniej nalea do obserwatorw ONZ, ktrzy mieli pecha... To bdzie dodatkowo kosztowao 16000. + + + Oto moduowy karabin FT-200M. To bdzie dodatkowo kosztowao 16000. + + + Oto Przypyw. Oparty na cichym karabinie snajperskim, by zaprojektowany specjalnie dla wojska do walki z zombiakami. Strzela wolniej, ale za to ma wiksz moc obalajc, a snajper moe po kolei powystrzela zombi nie ujawniajc swojej pozycji. Ale wkrtce si okazao, e do powstrzymania zombiakw przy Barierze wystarcz sami stalkerzy, wic karabin nigdy nie trafi do masowej produkcji. To malestwo bdzie twoje za dodatkowe 16000. + + + Oto Przypyw, cichy karabin snajperski ze zwikszon moc obalajc. Dorzu 16000 i jest twj. + + + Prosz. Oto SWU2-A, krtki karabin snajperski ze zwikszon szybkoci ogniow. Kupiem go od Maksa, legendarnego stranika Wolnoci. Przysiga, e drugiego takiego nie ma w caej Zonie. To unikalny przedmiot, przynajmniej w tych okolicach. Kosztuje dodatkowe 16000. + + + Jasne. SWU2-A, krtki karabin snajperski ze zwikszon szybkoci ogniow. Kosztuje dodatkowe 16000. + + + Pewnie, tylko spjrz na tego tutaj Rysia. Rcznie wykonany przez miejscowego eksperta. Teraz ju nie yje, wic nie bdzie innych egzemplarzy. Wyglda jak zwyky karabin, ale jak troch z nim powiczysz, poczujesz rnic. Idealna kombinacja celnoci i mocy obalajcej. Dodaj 16000 i to malestwo jest twoje. + + + Tak, Ry - karabin snajperski ze zwikszon celnoci i moc. Dorzu 16000 i jest twj. + + + Popatrz. Udao mi si zdoby wszystko z mojej listy - CS-3a z hemem. Sam hem to nic specjalnego, ale mona na nim zainstalowa ruchomy zestaw taktyczny, ktry skada si z wysokiej jakoci noktowizora i aktywnego czujnika na podczerwie. A pancerz CS-3a to prawdziwe cudeko. Znakomita ochrona przed kulami i anomaliami, co jest rzadko spotykane w kombinezonach tak lekkich i mobilnych jak ten. Wszystko razem bdzie ci kosztowa 32000. + + + Tak. Pancerz CS-3a z hemem taktycznym. W sumie 32000. + + + Specjalnie dla ciebie, kombinezon SEVA. Wszystko tak, jak chciae - aparat tlenowy o zamknitym obiegu, odporny na gorco, ochronny obwd elektryczny i zewntrzne pokrycie z materiaw antykorozyjnych. A dodatkowo kilka wbudowanych pojemnikw na artefakty. Kady stalker powinien mie taki sprzt. Dorzu 24000, tak jak si umawialimy, i jest twj. + + + Prosz. Kombinezon SEVA. Cena 24000, tak jak uzgodnilimy. + + + Oto i on, egzoszkielet bojowy, najlepszy, jaki istnieje. Nie znajdziesz w Zonie lepszej ochrony przed kulami, szponami czy odamkami granatu, chyba tylko wozy opancerzone mog si z nim rwna. Ale przypomina je te pod tym wzgldem, e zmniejsza twoje obcienie - oczywicie w rozsdnych granicach. 48000 i jest twj, razem z kurzajkami... eeee... miaem na myli baterie i serwomotory. + + + Oto i on, egzoszkielet bojowy, najlepszy, jaki istnieje. 48000 i jest twj. + + + Chc zoy zamwienie. + + + Nie ma sprawy. Czego potrzebujesz? + + + Pistoletu. + + + Oczywicie. To bdzie 3500, z czego 700 potrzebuj w ramach zaliczki. + + + Dobrze, prosz. + + + Dam ci zna, jak tylko zrealizuj zamwienie. + + + Nie mam przy sobie pienidzy. + + + No to wr, jak ju bdziesz mia. + + + Wiesz co, zmieniem zdanie. + + + Dobrze. Jeli jednak zdecydujesz si zoy zamwienie, zawsze mnie tu znajdziesz. + + + Nie jeste zbyt solidnym klientem, wic pistolet bdzie ci kosztowa 4200. I bd potrzebowa 1400 zaliczki. + + + Niestety najlepsze pistolety ju si wyprzeday. Jeli chcesz czego zwyczajnego, id do Sowy. + + + Broni krtkodystansowej. + + + Jasne. To bdzie 10000, a 2000 z tego jako zaliczka. + + + Nie chciae odebra ostatniego zamwienia... Wic to bdzie ci kosztowa 12000, w tym 4000 zaliczki. + + + Hmm... Chyba nie bd mg ci pomc. Popyt jest za duy. + + + Broni szturmowej. + + + Czyli co wysokokalibrowego i szybkostrzelnego... Cena wynosi 20000, 4000 jako zaliczka. Co ty na to? + + + Jeste trudnym klientem. Musz ci skasowa na 24000, z czego 8000 w ramach zaliczki. Umowa stoi? + + + Teraz nie jest najlepszy czas... Wojsko podgrzewa sytuacj w Kordonie. Kto zaatakowa par dni temu ich posterunek, przez co teraz jeszcze trudniej si z nimi dogada. + + + Broni snajperskiej. + + + Dla ciebie mog znale co najlepszego za jedyne 20000, ale musisz mi zapaci zaliczk w wysokoci 4000. + + + Interesy z tob zawieraj spory element ryzyka... Sprbuj zrealizowa twoje zamwienie za 24000, ale musisz mi zapaci 8000 z gry. + + + Niestety teraz trudno znale tak bro. Mj kontakt w sprawie broni snajperskiej jest... Powiedzmy, e jest niedysponowany. + + + Wzmocnionego kombinezonu. + + + Tak, mgbym znale co... odpowiedniego. Bdzie ci to kosztowao 40000, ale musisz mi zapaci 8000 zaliczki. + + + Tak, mgbym znale co... odpowiedniego. Nie chciae przyj ostatniego zamwienia, wic teraz bdzie ci to kosztowao 48000 i musisz mi zapaci 16000 zaliczki. + + + Nie znajd nic lepszego ni kombinezon, ktry zaatwiem ci ostatnio. By wyjtkowy, najwyszej jakoci. + + + Kombinezonu z aparatem tlenowym z zamknitym obiegiem powietrza. + + + To trudne zamwienie... Nieatwo bdzie je zrealizowa. Mog sprbowa zdoby jedno z tych cudeniek za 30000, ale musz ci prosi o 6000 zaliczki. + + + Wystawie mnie do wiatru z ostatnim zamwieniem, wic teraz bd musia si dwa razy zastanowi. Mog sprbowa zdoby jedno z tych cudeniek za 36000, ale musz ci prosi o 12000 zaliczki. + + + Ostro si nagimnastykowaem, eby zdoby ten poprzedni. Raczej nie uda mi si tego powtrzy. + + + Egzoszkieletu. + + + Musiae solidnie przemyle t decyzj. Mog zdoby wersj bojow, ale to ci bdzie kosztowao 60000. Drogo, wiem, ale warto tyle zapaci. Pamitaj, ze bd potrzebowa 12000 z gry. + + + Przy ostatnim zamwieniu nie potraktowae mnie najlepiej, wic to bdzie ci kosztowao 72000. Pamitaj, ze bd potrzebowa 24000 z gry. + + + Nie ma mowy. Odkd zamknli zakad produkcyjny, dostpne egzoszkielety znajduje si zwykle na zwokach... Ja nie dziaam w taki sposb. + + + W tej chwili niczego. + + + Przykro mi, mj sklep jest obecnie nieczynny. Przejciowe problemy z zaopatrzeniem. + + + Cze, jestem wawy. Ludzie przychodz do mnie po unikalne bronie. Rzadkie modele, prototypy, wyjtkowe spluwy... I inne takie. Plus sprzt luksusowy, najnowsze modyfikacje kombinezonw ochronnych i bojowych. Kady przedmiot sprawdzam osobicie, wic klienci maj gwarancj jakoci. + + + Cze. Chcesz zoy zamwienie? + + + Witam. + + + Twoje zamwienie zostanie niedugo zrealizowane. + + + Zamwienie zostao zrealizowane. Pora je odebra. + + + Hej! Jeste kumplem Ska? + + + Tak, znam go. + + + Powiedzia mi, e przyniesiesz nam jakie upy... + + + Nie pamitam, ebym si na to zgadza. + + + Taa, jasne. Nie jestemy frajerami, nie bdziemy tak skaka dookoa Ska. + + + Cze. + + + Nic z tego! + + + Teraz si zastanw. Jeli masz chocia kawaek mzgu, to wiesz, e jak si jest w mniejszoci, trzeba by miym. + + + Powiedziaem nie! + + + Nie. Nie znam go. + + + Aaa... Cholera... Mocno oberwaem... Pom, stary, potrzebuj apteczki... Dugo ju nie wytrzymam... + + + We t apteczk. + + + Uff! Dziki, bracie. Ju prawie kopnem w kalendarz w tym Kotle. Zmutowane psy miayby uywanie... Masz, we mj detektor. Kiedy moe ci si przyda... Wielkie dziki za uratowanie mi ycia. Chyba teraz odpoczn sobie troch w bazie. + + + Powodzenia. + + + Uff! Dziki, bracie. Ju prawie kopnem w kalendarz w tym Kotle. Zmutowane psy miayby uywanie... Masz, we ten artefakt. Kiedy moe ci si przyda... Wielkie dziki za uratowanie mi ycia. Chyba teraz odpoczn sobie troch w bazie. + + + Nie mog, sam jej potrzebuj. + + + Nie mam apteczki. + + + Jeszcze raz dziki! Gdyby nie ty, ju bym gryz ziemi... + + + Stalkerze! Szybko, pom Pietrusze! Tam, na krawdzi rozpadliny! Oberwa od anomalii! Nawet kombinezon mu nie pomg! A ja nie mam kombinezonu. Pietrucha i ja zoylimy si na ten jeden... Jeli si tam zbli, bdzie po mnie! + + + Dobra, nie ruszaj si. Sprbuj. + + + Radcie sobie sami. + + + Dziki za uratowanie Pietruchy. Cholera, czemu emy nie zaoszczdzili na lepszy kombinezon! + + + Zejd mi z oczu. Pozwolie Pietrusze umrze... Nie dorastasz mu do pit! + + + Do zobaczenia nastpnym razem. + + + Zniszczyem gniazdo pijawek. + + + Dobrze. Pomcie naszych martwych braci, niech Bg wieci nad ich duszami... Zasuye na t nagrod. + + + Pod kompleksem antenowym znalazem cae gniazdo pijawek. + + + Dobrze. To gniazdo trzeba zniszczy. Niech pomyl... Diabli wiedz, ile pijawek czai si w tych tunelach. Moe daoby si je zagazowa. Pamitam, e Sowa wspomina co o zbiornikach z gazem. Porozmawiaj z nim - ja nie jestem z nim w najlepszych stosunkach... Jeli uda ci si zdoby pojemnik z gazem, podcz go do systemu wentylacyjnego kompleksu antenowego i po paru minutach bdzie po wszystkim. + + + Dobrze, zrobi to. + + + Przemyl to. + + + Mam ju zbiornik z gazem. + + + Ho ho. Niezy jeste, kole. + + + A, oto i nasz stalker. Czekalimy na ciebie. + + + Jaki jest plan? + + + Idziemy na spotkanie. Nie bdziesz mia duo do roboty, tak mam przynajmniej nadziej. Masz po prostu sta i nie pka. + + + Dobrze. + + + Ha. No to im pokazalimy. Niele strzelasz, stalkerze. Prosz. + + + Powodzenia. + + + Ty cholerny todziobie. Spieprzye co, co byo prawie pewne, a teraz spadaj. + + + Cze. + + + Gdzie si tak spieszysz? + + + Nigdzie. + + + Sowa ci przysa? + + + Tak. Powiedzia, e potrzebujesz pomocy. + + + To prawda, potrzebuj. Powiniene si nada. + + + Dobra. Co to za robota? + + + Trzeba zadba o bezpieczestwo podczas transakcji handlowej. To wszystko. + + + Zrobi to. + + + Bd blisko i ubezpieczaj mnie. + + + Jasne. + + + Bd rozmawia tylko z szefem. + + + Jak chcesz. + + + Dziki, stalkerze. Bardzo pomoge. Tak przeczuwaem, e te dupki co spieprz. Przez ca drog byli ledzeni! To za fatyg. + + + Powodzenia. + + + Niezy z ciebie le, ale ochroniarz beznadziejny. Obiecaem ci jednak zapaci, wic tak zrobi. + + + Powodzenia. + + + Niezy z ciebie le, ale ochroniarz beznadziejny. Obiecaem ci jednak zapaci, wic tak zrobi. + + + Powodzenia. + + + Czego chcesz? Nie mam ci za co dzikowa. Ledwo przeyem... Id std! + + + Powodzenia. + + + To mi si podoba, dziki, e przyszede. Chcemy si podkra w poblie bandytw i podsucha ich. Co bdzie potem - zobaczymy. + + + Rozumiem. + + + Dziki, stalkerze. Przyjmij to od nas... Barman ma twoje gwne wynagrodzenie. + + + Rozumiem. + + + Opowiedz mi, jak tu yjecie. + + + Nie jest to na pewno lekkie ycie... Co konkretnie chcesz wiedzie? + + + Czym si tu zajmujecie? + + + Czuwamy nad stalkerami. Musisz przyzna, e poowa z was to bardziej dzieciaki ni mczyni. Przychodz do Zony z jakimi gupimi marzeniami albo eby pobawi si w bohaterw, albo dlatego, e nie powiodo im si w yciu. Nie zdaj sobie sprawy ze wszystkiego, co ich tu czeka - a jest to przewanie kostucha. Takimi si wanie opiekujemy. Znajdujemy chopaka na Wysypisku, zabieramy jego sprzt, a jego odsyamy do Kordonu. Niektrzy id po rozum do gowy i wracaj na zewntrz. Tych, ktrzy s do twardzi, eby tu wrci, bierzemy pod ochron i opodatkowujemy. Mwi ci, nikt si nie omiela wej na nasz teren - ani wojsko, ani najemnicy, ani nawet mutanty. + + + Co was przywiodo do centrum Zony? + + + Nasze nogi. Przyszlimy tu dla stalkerw, a ty mylae, e co? Przecie jak nie bdziemy utrzymywa porzdku, zapanuje tu totalny chaos. Zbierasz upy, zatrzymujesz je, a podatek kto zapaci? Podatek od spokoju i bezpieczestwa. Takiego, e podczas gdy my powstrzymujemy mutanty, kto z waszych upi anomali. Jeli mu si uda, bierzemy cz zysku... Rozumiesz, za utrzymywanie porzdku. + + + Jak zostae szefem? + + + Od czego by tu zacz... To si chyba zaczo w szkole redniej. Miaem dobrego kumpla, najlepszego przyjaciela. Wszdzie razem azilimy, palilimy, pilimy i tak dalej. Tylko e on chcia silniejszych wrae. Wplta si w narkotyki: najpierw tylko zioo, potem hera, potem koka, jak tylko zacz mie wicej kasy. Mwiem mu: Tolian, skocz z tym gwnem, dopki nie jest za pno.". Ale nie sucha. Ktrego dnia zay jakie gwno i to by koniec. Znalazem jego dilerw i wyrwnaem rachunki... Wsadzili mnie do paki i wtedy rozptao si pieko, wiesz, bitwy gangw, n w brzuchu... Wyszedem, rozkrciem wasny biznes, znowu mnie wsadzili... A jak znowu wyszedem, rzuciem to wszystko w choler i wyruszyem do Zony. Pierwsze miesice byy cikie, ale potem awansowaem. A teraz rzdz tutaj, stojc na stray miejscowego prawa. + + + Co mylisz o stalkerach? + + + Kady jest inny. Niektrzy to miecie, ktre nie wytrzymuj tu nawet tygodnia, inni zarabiaj... A inni to fajne chopaki, ktrzy dostali kopa od ycia po obu stronach Kordonu. Pierwszych skubiemy, drugich opodatkowujemy. A jeli chodzi o ostatnich, to prbujemy nie wchodzi sobie nawzajem w drog. Szkoda, e nie zawsze da si ich rozrni na pierwszy rzut oka. + + + A, niewane. Zapomnij o tym. + + + Jak wolisz. + + + Teraz Brodacz bdzie pracowa dla nas. + + + Znasz powiedzenie mamy ju krow, zacznijmy doi". Odwied go od czasu do czasu i przypomnij, e ma zapaci. + + + Brodacz dosta wane zamwienie na artefakt o nazwie Kompas. + + + Musimy go przechwyci. Brodacz nie spinaby si tak dla jakiej potki. Co mi mwi, e bez tego artefaktu bdzie w dupie... Straci biznes, znaczy si. Jak tylko znajdziesz ten Kompas, przynie go do mnie. + + + Znalazem Kompas. Prosz. + + + Nie bd szuka dla ciebie Kompasu. + + + Hej, dupku, ebymy si dobrze zrozumieli. Jeli powiesz, e co zrobisz, a potem mnie zawiedziesz, nie bd ci za bardzo lubi. A ludzie, ktrych nie lubi, rzadko ciesz si yciem. Zrozumiano? + + + Bd o tym pamita. + + + Zdobd te detektory od stalkerw. + + + Dobrze. Ja w tym czasie zajm si innymi kanaami naszego klienta. + + + May ptaszek donis mi, e zaniose Kompas Brodaczowi. Wic teraz suchaj, fiucie. Jeli powiesz, e co zrobisz, a potem mnie zawiedziesz, nie bd ci za bardzo lubi. A ludzie, ktrych nie lubi, rzadko ciesz si yciem. Zrozumiano? + + + Bd o tym pamita. + + + Brodaczowi skoczyy si ju ulepszone detektory. + + + Wspaniale. Kiedy ci nie byo, ja ciko harowaem odcinajc go od innych kanaw. Teraz mamy go w garci. Id do Brodacza i powiedz, e Sutan go pozdrawia. + + + Brodacz jest mi winien pienidze. Sowa powiedzia, e moesz mi pomc. + + + Pewnie mog... Oto mj plan: doprowadzimy Brodacza do bankructwa i przejmiemy jego interes, ty odzyskasz swoje pienidze i dostaniesz udzia w interesie. Umowa stoi? + + + Stoi. + + + Teraz masz za zadanie dowiedzie si, czym Brodacz si obecnie zajmuje. Powinno zadziaa odcicie go od kanaw zaopatrzenia. + + + Przemyl to. + + + Tylko pamitaj, e mylenie jest niezdrowe. + + + Sdzisz, e wawy moe handlowa kradzionymi towarami? + + + wawy? Nie, za mikki jest na to. Naszym miejscowym dilerem trefnego sprztu jest Sowa. Kupi wszystko, co zechcesz sprzeda i nie bdzie zadawa pyta. + + + Szukam Ska. Wiesz, gdzie mog go znale? + + + Wiem. Moi chopcy widzieli go par dni temu przy dwigach portowych. Powinienem wytrzsn z tego miecia fors, ktra mi jest winien, ale cigle zapominam. + + + Mam dla ciebie robot. Moi chopcy musz si spotka z kupcem... Wiesz, interesy. Ostatnio w Zonie jest niespokojnie, wic pomylaem, e przyda si dodatkowa spluwa. Dopilnuj, eby wszystko poszo gadko. + + + Dobrze. + + + No i w porzdku. Moi ludzie spotkaj si z tob w pobliu stranicy. Wsprzdne s w twoim PDA. + + + Rozumiem. + + + Nie jestem zainteresowany. + + + Co ty tu jeszcze robisz, do cholery? Zabieraj si do stranicy. + + + A-ha. + + + Zdecydowae si w kocu? Jeste z nami czy nie? + + + Jestem z wami. + + + Bd dziaa sam. + + + Pamitaj. Jestem Sutan. Wszystko, co si tu dzieje, albo ju jest pod moj kontrol, albo niedugo bdzie. Jeli chcesz dobrze y, musisz pracowa dla mnie. Jeli nie bdziesz pracowa dla mnie, bdziesz mia gwniane ycie. Tak tu jest, bracie. + + + Czego potrzebujesz? + + + Co ci tu sprowadza? + + + Co tam? + + + Sam zabiem wszystkich stalkerw. + + + O, stary... Cholera, ostry z ciebie zawodnik. Tak tu przyj i ich pozaatwia. Po co ja ci zatrudniaem... Narobie nam problemw, a kasy nie zdobye... Mwi ci, stary, uspokj si... + + + Podoba ci si praca dla naukowcw? + + + Nie jest le. Na razie bez problemw, wszystko w porzdku. Naukowcy odpalili nam troch sprztu, wic dobrze si nam wiedzie. + + + Bardzo! Robota prosta i dobrze patna. Odkd tu jestemy, nikt naukowcw nie szuka, nawet potwory. + + + Zbieram oddzia, z ktrym wybior si do Prypeci. Przyczysz si? + + + Niee... Nie mam takiego parcia na Prype jak pozostali... No i mamy tu robot, musimy ochrania naukowcw... Ale moe wziby ze sob tego onierza. Miaby okazj poszuka swoich kumpli z wojska, a my bymy troch odetchnli. Kole jest raczej w porzdku, ale to nie jest dla niego najlepsze miejsce... + + + Niee... Nie mam takiego parcia na Prype jak pozostali... No i mamy tu robot, musimy ochrania naukowcw... + + + Chciaby pracowa dla naukowcw? + + + Co to za praca? + + + Ochrona ich bunkra. + + + He, ochranianie... To nie byby pierwszy raz. Zgoda. Wyruszymy do bunkra, jak tylko bdziemy gotowi. + + + Wykonywanie pomiarw w anomaliach. + + + Pomiary, hehe. Czy ja ci wygldam na laboranta? To nie moja specjalno. + + + Pomwmy o tym pniej. Za duo tu nowej hooty; trzeba im pokaza, gdzie ich miejsce, a potem bdzie mona pomyle o pracy. + + + Dobra, to jedziemy. Damy im popali! + + + Dobrze. + + + Ale lepiej znajdmy jak oson. To cholerna emisja! + + + Dobra, to jedziemy. Damy im popali! Bez nerww, atwo pjdzie. + + + Urzdzilimy ich, co! Masz tu kas, stary. Jak bdzie nowa robota, dam ci cynk. + + + O, stary... Cholera, ostry z ciebie zawodnik. Tak tu przyj i ich pozaatwia. Po co ja ci zatrudniaem... Narobie nam problemw, a kasy nie zdobye... Mwi ci, stary, uspokj si... + + + Co jest?! Gdzie stalkerzy?!... Co si, do cholery, dzieje? Podkablowae, co? To moge by tylko ty! Wszyscy moi kumple byli przez cay czas koo mnie... A teraz ty, durny gnoju, dostaniesz tak, jak mieli dosta stalkerzy! Na co si gapisz, do cholery - wywracaj kieszenie, dupku! + + + Powinnimy i... Na bark. + + + Cze, szefie. Wybacz, ale nie jestem w nastroju do rozmowy. + + + Pomog ci. + + + Super. Zaaranujemy spotkanie, tak jak byo uzgodnione, i ty pjdziesz. Kiedy si poka, zaczniemy do nich pru ze wszystkich stron. Trzymaj si z daleka, eby nie postrzeli ci kto z naszych. + + + Dobrze. + + + Nie. Nie pisz si na to. + + + Czko, stalkerze. Jestem teraz zajty. Pogadamy pniej, dobra? + + + Dziki za ostrzeenie. Moe zgodzisz si na nasz plan? Dobra okazja, eby wbi tym draniom n w plecy, e tak powiem. + + + Urzdzimy na nich zasadzk. A wtedy ty zaczniesz strzela do gnojkw z tyu. + + + Ci gwniarze s ju martwi. Dziki za ostrzeenie. + + + Dziki za pomoc. + + + Czko. Suchaj, jeli to nic pilnego, to pogadajmy pniej, dobra? + + + Witam. + + + Znalazem Srok. By w stacji Janw, przedstawia si jako Flint. Ju zaatwiony. + + + Zaatwiony? Szkoda. Sam bym chcia rozdepta tego robala... No nic, to i tak dobra wiadomo. We to - dotrzymuj sowa. + + + Dziki. + + + Chc opuci Zon. + + + Na pewno? Nie bdziesz ju mg wrci. + + + Na pewno. Chodmy. + + + Waciwie jeszcze zostan. + + + Dobrze, we pienidze. Nie chc walczy. + + + H? Dawaj wszystko co masz, gnoju! A potem spadaj i nie pokazuj si tu wicej! + + + Id std. + + + Nic z tego! + + + Spjrzmy... Ale o co chodzi? Jeli ty niedomagasz, to ja ju chyba jestem trupem... + + + Suchaj, jest pilna sprawa. Mj znajomy handlarz ma interes do zrobienia. Problem w tym, e jego klienci s z tych kopotliwych, wic na wszelki wypadek chce wynaj ochroniarza. Jeste zainteresowany? + + + Tak. + + + Dobra. Handlarz bdzie na ciebie czeka przy stranicy, przekae ci wszystkie szczegy. + + + Nie. + + + Twoja sprawa. Jeli niedugo zmienisz zdanie, robota moe by nadal do wzicia. + + + Jak masz dla mnie prac? + + + Tak, za ktr mona dosta kas. Pomyl: dlaczego zwracam si do ciebie? Jeste nowy, nie masz przydatnych znajomoci, ale jeli dobrze si zakrcisz, moesz szybko zdoby szacunek miejscowych. Chcesz wiedzie, co wykombinowaem? + + + Tak, jasne. + + + Dobra, to suchaj. Chcemy przetrzepa kilku stalkerw Brodacza. To bdzie atwizna. Pno w nocy ty i nasi ludzie wejdziecie na Szewczenk i zanim ci turyci poapi si, co si dzieje, zaatwicie spraw. My zyskujemy kas, ty zyskujesz szacunek... Kumasz? No to bomba. Tam stoi Kastet, widzisz, ktry to? On ci przekae szczegy. + + + Nie. + + + Szkoda. Nie spiesz si, przemyl to... Jeli wiesz, co dla ciebie dobre, to wrcisz, kolego. + + + Tak, ktra ci si spodoba, jeli lubisz podre... Chcesz wiedzie, co wykombinowaem? + + + PDA Stoga. Znalazem jego zwoki w jaskiniach pod spalonym gospodarstwem. + + + Znalazem go przy kupce nagich koci w pobliu Sosnodbu. To PDA Kawalarza. + + + Kawalarza?!... To niemoliwe! Rany, jestem zszokowany... Kawalarz nie yje... Stary, ju si nie pomiejemy z twoich kawaw... Spoczywaj w pokoju... Mam nadziej, e przynajmniej ze Stogiem wszystko w porzdku... + + + Kawalarza?!... To niemoliwe! Rany, jestem zszokowany... Kawalarz nie yje... Stary, ju si nie pomiejemy z twoich kawaw... Spoczywaj w pokoju... I ty te, Stg... Jak to si mogo sta... + + + Stoga i Kawalarza. Znalazem je przy szkielecie w pobliu Sosnodbu i przy zwokach w jaskiniach pod spalonym gospodarstwem. + + + Szczerze mwic, niewiele jest do opowiadania. Emisje s bardzo niebezpieczne i prawie zawsze zabjcze. Ich nadejcie wyczuwa si stopniowo, poprzez zmiany pogody, ale mijaj szybko, tu po najsilniejszym uderzeniu. Przy pierwszych oznakach ich nadchodzenia natychmiast si chowaj - w jaskini, za czym z betonu, cegie albo stali... Ja, podobnie jak niektrzy, wyczuwam nadejcie emisji, kiedy zaczynaj mnie bole plecy. W kwestii natury emisji nie powiem ci nic poytecznego - po prostu sam nic nie wiem. + + + Potrzebujesz towarw? Informacji?... A moe sam masz jakie informacje na sprzeda? + + + Sutan mwi, e chcesz oskuba stalkerw. Moesz na mnie liczy. + + + wietnie. Po pnocy bd przy Szewczence - bdziemy na ciebie czeka. Tylko nie zwlekaj do rana, przyjd wczeniej. + + + A, to ty, brachu. No i co ustalilicie z Sutanem? + + + No wic... Przyjd do barki po pnocy, ale przed wschodem soca - bdziemy na ciebie czeka. + + + Chyba lepiej zostan z tob. Poczekamy do pnocy i pokaesz mi drog do Szewczenki. + + + Nie ma problemu, moesz si tu krci. Pogadamy przy barce. + + + Waciwie musz si czym zaj. + + + Na zewntrz Zony mam wanych klientw, ktrzy regularnie zamawiaj konkretne artefakty, a te z kolei musz by dostarczone w okrelonym czasie. Przyno mi to, o co prosz, a ja bd ci za to dobrze paci. Pamitaj, e te zamwienia s dla mnie bardzo wane i dlatego zlecam robot kilku agentom naraz... Pen zapat dostaje tylko ten, kto przyniesie artefakt jako pierwszy. + + + Przez spalone gospodarstwo. Hmm... Kim ty waciwie jeste? + + + To miejsce jest te nazywane elaznym Lasem. Helikopter rozwali si o supy wysokiego napicia. aden z onierzy nie przey... A nawet jeli kto nie zgin na miejscu, to i tak nie poy dugo. Te poltergeisty uwielbiaj wpdza ludzi w anomalie elektryczne... Na pewno wiesz, e dranie reaguj na najlejszy ruch. + + + Suchaj... Kiedy helikopter spad, zauwaono tam piciu oneirzy. Podobno udao im si nawet wydosta z tego bagna... Dotarcie do tego miejsca nie jest trudne, wystarczy unika wody i trzyma si staego ldu. Bdziesz te potrzebowa ochrony chemicznej. Wic jeli planujesz tam wyruszy, kup od lekarza troch antidotum. + + + Szkoda, e nie ma tu moich kumpli, Kawalarza i Stoga... wietnie bymy si bawili. Bylimy jak bracia, jeden za wszystkich, wszyscy za jednego... Jak to si mogo sta? Ja cigle tu jestem, ale ich gdzie ponioso, diabli wiedz, gdzie... + + + Opowiedz mi o Kawalarzu i Stogu. + + + Mam ju co stamtd. + + + Zacznij gada... Masz co dla mnie? + + + To wszystko wyjania. Znam go. Zawsze by z niego krtacz, ale ostatnio naprawd wymkn si spod kontroli, eby tak naciga stalkerw... Trzeba mu pokaza, gdzie jego miejsce. + + + Potrzebuj informacji z obozu najemnikw. To atwiejsze ni si moe wydawa. + + + Dobra, bd czeka... Pamitaj, e robota jest pilna - trzeba j wykona w cigu dwch dni. + + + PDA posaca Sutana + + + Nie jest to bardzo interesujce. Dam ci za to 500. + + + Dobrze. + + + Prototypy detektorw. Chcesz je odkupi? + + + Tajne dokumenty. Znalazem je na mocie przy konwoju. Chcesz rzuci okiem? + + + Dziwny artefakt. Znalazem go przy pogbiarce. + + + Dziwny artefakt. Znalazem go przy stacji Janw. + + + Artefakt Serce Oazy. + + + Ruszajmy. + + + Czekaj. + + + Grupa stalkerw chce ci obrabowa. Bd czujny. + + + Co za gnojki... Dobra, przygotujemy im ciepe powitanie... Suchaj, niech myl, e jeste po ich stronie. Jeli im to wmwisz, pomoesz nam ich odeprze... Dobrze ci wynagrodzimy... + + + Gwno mnie obchodzi, na co si zgodzie. Oddawaj! + + + Dobra, masz. + + + Nie?... A my mamy to w dupie. Oddawaj go, gnoju! + + + Spokojnie, spokojnie... Bierzcie. + + + Co za gnojki... Dobra, przygotujemy im ciepe powitanie... Suchaj, pom nam ich pokona... Dobrze ci wynagrodzimy... + + + Urzdzilimy ich, a co! Ty si nie udzielae, wic nie dostaniesz kasy. Jak bdzie nowa robota, dam ci cynk. + + + Jeste do niczego... Nie oczekuj nagrody. Ale przynajmniej przyszede pogada, to ju co. + + + Na razie. + + + To mi si podoba. A teraz troch docinij naszego klienta. Podobno Brodacz da swoim stalkerom bardzo potne detektory do wykrywania rzadkich artefaktw. Musisz si wkrci midzy tych stalkerw i dopilnowa, eby detektory trafiy do ciebie. Kumasz? + + + Niestety jest silniejszy. Prbowaem odci go od szlakw zaopatrzeniowych, ale ta brodata szuja zdoaa jako dorwa Kompas. Chyba niele sobie radzi... Na razie. + + + [Dalej....] + + + [Dalej....] + + + [Dalej....] + + + Guszec nie yje. Najwyraniej to Wstrzs go zabi... Ale on te jest martwy. + + diff --git a/gamedata/configs/text/pol/st_generate_fnames.xml b/gamedata/configs/text/pol/st_generate_fnames.xml new file mode 100644 index 0000000..02a6324 --- /dev/null +++ b/gamedata/configs/text/pol/st_generate_fnames.xml @@ -0,0 +1,492 @@ + + + + Sanek + + + Szurik + + + Wadia + + + Wasian + + + Wasiek + + + Witiucha + + + Wieta + + + Wowan + + + orka + + + Griszka + + + Griszko + + + Dimon + + + Lecha + + + Dimucha + + + eka + + + Fimka + + + Iliucha + + + Kostian + + + Mitka + + + Micha + + + Micha + + + Micha + + + Kolian + + + Tolian + + + Pawucha + + + Saszok + + + Stiepka + + + Stiepucha + + + Timocha + + + Fieka + + + Jura + + + Jaszka + + + Andriucha + + + Tocha + + + Arkasza + + + Tiomka + + + Borian + + + Bodia + + + Kapitan + + + Porucznik + + + Szeregowy + + + Andriej + + + Anton + + + Oleg + + + Roman + + + Aleksandr + + + Siergiej + + + Anatolij + + + Jurij + + + Bogdan + + + Wieniamin + + + Witalij + + + Wadimir + + + Dmitrij + + + Iwan + + + Konstantin + + + Aleksiej + + + Sania + + + Sanek + + + Artur + + + Jaszka + + + Jarik + + + Jara + + + Sawa + + + Boria + + + Borka + + + Bogdan + + + Sawik + + + Wadim + + + Wadia + + + Wadik + + + Walik + + + Walera + + + Szurik + + + Wasia + + + Waka + + + Wako + + + Wienia + + + Witia + + + Witka + + + Witalik + + + Wad + + + Wowa + + + Wowka + + + Lenia + + + Siewa + + + Siewka + + + Giena + + + Gienka + + + Gieorg + + + Gosza + + + ora + + + Mark + + + Gleb + + + Grisza + + + Aleks + + + Griszka + + + Griszko + + + Dania + + + Kiriucha + + + Dako + + + Dienis + + + Dima + + + Dimka + + + Dmitro + + + enia + + + Loszka + + + eka + + + Jegor + + + Jegorka + + + Fima + + + Wania + + + Waka + + + Igoriek + + + Ilia + + + Kostia + + + Kostik + + + Tolik + + + Liewa + + + Lienia + + + Lionka + + + Maks + + + Matwiej + + + Mitia + + + Misza + + + Miszka + + + Nikita + + + Nik + + + Anton + + + Kola + + + Oleg + + + Pasza + + + Paszka + + + Pietro + + + Pietia + + + Pietka + + + Roma + + + Romka + + + Rostik + + + Toszka + + + Rus + + + Sawa + + + Siemion + + + Sioma + + + Sierioga + + + Rusik + + + Stiepan + + + Stiepa + + + Tima + + + Timka + + + Artem + + + Fiodor + + + Fiedia + + + Fiedka + + + Filia + + + Fika + + + Edik + + + Jurka + + + Jurik + + + Jurko + + + Jasza + + + Starszy sierant + + + Sierant + + diff --git a/gamedata/configs/text/pol/st_generate_snames.xml b/gamedata/configs/text/pol/st_generate_snames.xml new file mode 100644 index 0000000..0f47e3a --- /dev/null +++ b/gamedata/configs/text/pol/st_generate_snames.xml @@ -0,0 +1,4836 @@ + + + + Szary + + + Berserker + + + Zgniek + + + Patty + + + Szpicel + + + ubr + + + Bbr + + + Buldog + + + W + + + Wrbel + + + Dzicio + + + Bestia + + + Czarownik + + + Humbak + + + Dzik + + + Kara + + + Kanarek + + + Pluskwa + + + Szpicel + + + o + + + Szczur + + + Boa + + + Bochenek + + + Zbity + + + Dryblas + + + Rozwaka + + + ruba + + + Brzytwa + + + Bben + + + mie + + + Wkrt + + + Dynamit + + + Atut + + + opata + + + Skrt + + + Leszcz + + + Krzyyk + + + Smoa + + + Skarpeta + + + om + + + Panadol + + + Noyk + + + Tok + + + Grosik + + + Reszka + + + mier + + + Grzda + + + Ostrzaka + + + As + + + Czekan + + + Kuka + + + Libero + + + Podkad + + + wiek + + + Pcha + + + Picha + + + Siniak + + + Kijanka + + + Haker + + + Chan + + + Kociej + + + Rambo + + + Przewodnik + + + Terminator + + + Czapaj + + + Dyngis + + + Banan + + + Bochenek + + + Niezdara + + + Tata + + + Kolec + + + Ssiad + + + Gangrena + + + Usterka + + + Stopie + + + Antylopa + + + Poraka + + + Parias + + + Auszpik + + + Wgiel + + + Atut + + + Skrt + + + Skarpeta + + + Goblin + + + Maur + + + Zioo + + + Klapa + + + Pieroek + + + Chili + + + Pilnik + + + Gruby + + + Krakers + + + Upir + + + Dusigrosz + + + Rozbity + + + Kutwa + + + Zezowaty + + + Demon + + + Kaleka + + + Kopacz + + + Krzywy + + + Szuja + + + Cwaniak + + + Tupecik + + + Dziki + + + Kole + + + Tutejszy + + + luz + + + Mistrz + + + Monokl + + + obuz + + + Pasoyt + + + Waniak + + + ajdak + + + Nieboszczyk + + + Psychol + + + Krzykacz + + + Zadra + + + apacz + + + lepy + + + Smark + + + Fircyk + + + Kasa + + + Truposz + + + Siekacz + + + Uszatek + + + Bazen + + + Chart + + + Kulawy + + + Twardy + + + Maruda + + + Koneser + + + wawy + + + Giermek + + + Pijawka + + + Artysta + + + Kanciarz + + + Bankier + + + ul + + + Baron + + + Handlarz + + + Orygina + + + Kloszard + + + Bosman + + + Pigmej + + + Burbon + + + Buruj + + + Szofer + + + Zodziej + + + Ogolony + + + Gangster + + + Posaniec + + + Hrabia + + + Tyran + + + Dzikus + + + Dusiciel + + + Doradca + + + Gracz + + + Oszust + + + Ojciec Chrzestny + + + Weteran + + + Trener + + + Tandeta + + + Maniak + + + Grabarz + + + Rzenik + + + Ninja + + + Kat + + + Punk + + + Partyzant + + + Pacyfista + + + Gaz + + + Pirat + + + Podpalacz + + + Ksi + + + Rozbjnik + + + Kamikaze + + + Alfons + + + Tyran + + + Cyngiel + + + Puzon + + + Chemik + + + Abdurachmanow + + + Altynnik + + + Barsak + + + Kirejew + + + Szczerbin + + + Kowalczuk + + + Kojew + + + Kozow + + + Koontarew + + + Koontar + + + Kondratenko + + + Korkin + + + Korniejew + + + Baul + + + Krawczenko + + + Kriwda + + + Krzywochacki + + + Kuniecow + + + Kumicz + + + Kuziakin + + + Kulczycki + + + Kuncew + + + Kurwic + + + Kuczeruk + + + Baszakow + + + Kusznarew + + + Chaadze + + + awrik + + + awrow + + + Liwszyc + + + Lisiczaski + + + Litwin + + + Limarenko + + + Mazepa + + + Makarenko + + + Baszmakow + + + Malcew + + + Mamajew + + + Merzajew + + + Milczenko + + + Mironiuk + + + Mohrer + + + Kryga + + + Mostowoj + + + Muntian + + + Muchamedow + + + Beszewli + + + Myskow + + + Nawrocki + + + Nepricki + + + Nikanorow + + + Nikeszyn + + + Nikulin + + + Fucin + + + Nordiew + + + Nosan + + + Opolew + + + Binojew + + + Orlewicz + + + Orow + + + Petkiewicz + + + Petrenko + + + Petrow + + + Pochenko + + + Podiaczew + + + Polianin + + + Popawski + + + Popow + + + Blinow + + + Portnych + + + Prasoow + + + Prokopenko + + + Proskurin + + + Procenko + + + Prudow + + + Pustowar + + + Puczek + + + Rabinowicz + + + Radkiewicz + + + Bobrow + + + Rezun + + + Rogoza + + + Rodniaski + + + Rotan + + + Rublew + + + Rudik + + + Rusanow + + + Ryczagirski + + + Sawczenko + + + Sawczuk + + + Bogdanow + + + Sagitow + + + Swiridow + + + Sedych + + + Sereda + + + Sidorenko + + + Sidorow + + + Sinij + + + Sinicyn + + + Skamejka + + + Sucki + + + Bojko + + + Smeow + + + Smoy + + + Sorokin + + + Stacura + + + Stepczyn + + + Styczyski + + + Sykua + + + Tarnawski + + + Tatarczuk + + + Timczuk + + + Andrzejczuk + + + Bojczenko + + + Boldeskul + + + Bondarew + + + Borisow + + + Bricz + + + Bronsztein + + + Buriak + + + Buturin + + + Bialo + + + Walentinow + + + Andruszczenko + + + Wasiliew + + + Weseow + + + Winogradow + + + Wownienko + + + Wolaczuk + + + Woodar + + + Wooszyn + + + Worocow + + + Worochajew + + + Wiuszyski + + + Anisiew + + + Gakin + + + Gandziuk + + + Garkowienko + + + Garkusza + + + Georgow + + + Glebowski + + + Gnatiuk + + + Gonczarenko + + + Gordienko + + + Gorlewj + + + Ardaszew + + + Gorochin + + + Goriunow + + + Grebenko + + + Gricajenko + + + Gricaj + + + Gricenkow + + + Griszachew + + + Gryszczuk + + + Gubar + + + Gunko + + + Babicz + + + Gurewicz + + + Denisenko + + + Dowgaliuk + + + Dombrik + + + Docenko + + + Drozdusz + + + Dubeczuk + + + Dudorow + + + Duka + + + Dumko + + + Balan + + + Dunajew + + + Dykow + + + Erofejew + + + Efremow + + + abenko + + + mijew + + + urakowski + + + Zabiagoda + + + Zagorodniuk + + + Zamoseczuk + + + Baranow + + + Zarubin + + + Zacharin + + + Zwonnicki + + + Zinowiew + + + Zozo + + + Zootar + + + Zubarew + + + ubkow + + + Iwanow + + + Ignatenko + + + Baranowski + + + Ienko + + + Iszczuk + + + Kazakow + + + Kazacew + + + Kandybabko + + + Kapuka + + + Kapustianko + + + Kac + + + Kikabidze + + + Gacula + + + Abdurachmanow + + + Altynnik + + + Barsak + + + Kirejew + + + Szczerbin + + + Kowalczuk + + + Kojew + + + Kozow + + + Koontarew + + + Koontar + + + Kondratenko + + + Korkin + + + Kornejew + + + Baul + + + Krawczenko + + + Kriwda + + + Krzywochacki + + + Kuniecow + + + Kuzmich + + + Kuziakin + + + Kulczycki + + + Kuncew + + + Kurwic + + + Kuczeruk + + + Baszakow + + + Kusznarew + + + Chaladze + + + awrik + + + awrow + + + Liwszyc + + + Lisiczaski + + + Litwin + + + Limarenko + + + Mazepa + + + Makarenko + + + Baszmakow + + + Macew + + + Mamajew + + + Merzajew + + + Milczenko + + + Mironiuk + + + Mohrer + + + Kryga + + + Mostowoj + + + Muntian + + + Muchamedow + + + Beszewli + + + Miskow + + + Nawrocki + + + Nepricki + + + Nikanorov + + + Nikeszyn + + + Nikulin + + + Fucin + + + Nordiew + + + Nosan + + + Opolew + + + Binojew + + + Orlewicz + + + Orow + + + Petkiewicz + + + Petrenko + + + Petrow + + + Pochenko + + + Podjaczew + + + Polianin + + + Popawski + + + Popow + + + Blinow + + + Portnich + + + Prasoow + + + Prokopenko + + + Proskurin + + + Procenko + + + Prudow + + + Pustowar + + + Puczek + + + Rabinowicz + + + Radkiewicz + + + Bobrow + + + Rezun + + + Rogoza + + + Rodniaski + + + Rotan + + + Rublew + + + Rudik + + + Rusanow + + + Rychagirski + + + Sawczenko + + + Sawczuk + + + Bogdanow + + + Sagitow + + + Swiridow + + + Sedych + + + Sereda + + + Sidorenko + + + Sidorov + + + Sinij + + + Sinicyn + + + Skamejka + + + Sucki + + + Bojko + + + Smeow + + + Smoy + + + Sorokin + + + Stacura + + + Stepczyn + + + Styczyski + + + Sykua + + + Tarnawski + + + Tatarczuk + + + Timczuk + + + Andrzejczuk + + + Bojczenko + + + Boldeskul + + + Bondarew + + + Borisow + + + Bricz + + + Bronsztein + + + Buriak + + + Buturin + + + Bialo + + + Walentinow + + + Andruszczenko + + + Wasiliew + + + Weseow + + + Winogradow + + + Wownienko + + + Wolaczuk + + + Woodar + + + Wooszyn + + + Worocow + + + Worochajew + + + Wiuszyski + + + Anisiew + + + Gakin + + + Ganziuk + + + Garkowienko + + + Garkusza + + + Georgow + + + Glebowski + + + Gnatiuk + + + Gonczarenko + + + Gordienko + + + Gorlewoj + + + Ardaszew + + + Gorochin + + + Goriunow + + + Grebenko + + + Gricajenko + + + Gricaj + + + Gricenko + + + Griszaczew + + + Griszczuk + + + Gubar + + + Gunko + + + Babicz + + + Gurewicz + + + Denisenko + + + Dowgaliuk + + + Dombrik + + + Docenko + + + Drozdusz + + + Dubieczuk + + + Dudorow + + + Duka + + + Dumko + + + Balan + + + Dunajew + + + Dykow + + + Erofejew + + + Efremow + + + abenko + + + mijew + + + urakowski + + + Zabiagoda + + + Zagoro + + + Zamoseczuk + + + Baranow + + + Zarubin + + + Zacharin + + + Zwonnicki + + + Zinowiew + + + Zozo + + + Zolotar + + + Zubarew + + + Zubkow + + + Iwanow + + + Ignatenko + + + Baranowski + + + Ienko + + + Iszczuk + + + Kazakow + + + Kazacew + + + Kandybabko + + + Kapuka + + + Kapustianko + + + Kac + + + Kikabidze + + + Gacula + + + Abdurachmanow + + + Altynnik + + + Barsak + + + Kirejew + + + Szczerbin + + + Kowalczuk + + + Kojew + + + Kozow + + + Koontarew + + + Koontar + + + Kondratenko + + + Korkin + + + Kornejew + + + Baul + + + Krawczenko + + + Kriwda + + + Krzywochacki + + + Kuniecow + + + Kumicz + + + Kuziakin + + + Kulczycki + + + Kuncew + + + Kurwic + + + Kuczeruk + + + Baszakow + + + Kusznarew + + + Chaadze + + + awrik + + + awrow + + + Liwszyc + + + Lisiczaski + + + Litwin + + + Limarenko + + + Mazepa + + + Makarenko + + + Baszmakow + + + Malcew + + + Mamajew + + + Merzajew + + + Milczenko + + + Mironiuk + + + Mohrer + + + Kryga + + + Mostowj + + + Muntian + + + Muchamedow + + + Beszewli + + + Myskow + + + Nawrocki + + + Nepricki + + + Nikanorow + + + Nikeszyn + + + Nikulin + + + Fucin + + + Nordiew + + + Nosan + + + Opolew + + + Binojew + + + Orlewicz + + + Orow + + + Petkiewicz + + + Petrenko + + + Petrow + + + Pochenko + + + Podiaczew + + + Polianin + + + Popawski + + + Popow + + + Blinow + + + Portnych + + + Prasoow + + + Prokopenko + + + Proskurin + + + Procenko + + + Prudow + + + Pustowar + + + Puczek + + + Rabinowicz + + + Radkiewicz + + + Bobrow + + + Rezun + + + Rogoza + + + Rodniaski + + + Rotan + + + Rublew + + + Rudik + + + Rusanow + + + Ryczagirski + + + Sawczenko + + + Sawczuk + + + Bogdanow + + + Sagitow + + + Swiridow + + + Sedych + + + Sereda + + + Sidorenko + + + Sidorow + + + Sinij + + + Sinicyn + + + Skamejka + + + Sucki + + + Bojko + + + Smeow + + + Smoy + + + Sorokin + + + Stacura + + + Stepczyn + + + Styczyski + + + Sykua + + + Tarnawski + + + Tatarczuk + + + Timczuk + + + Andrzejczuk + + + Bojczenko + + + Boldeskul + + + Bondarew + + + Borisow + + + Bricz + + + Bronsztein + + + Buriak + + + Buturin + + + Bialo + + + Walentinow + + + Andruszczenko + + + Wasiliew + + + Weseow + + + Winogradow + + + Wownienko + + + Wolaczuk + + + Woodar + + + Wooszyn + + + Worocow + + + Worochajew + + + Wiuszyski + + + Anisiew + + + Gakin + + + Gandziuk + + + Garkowienko + + + Garkusza + + + Georgow + + + Glebowski + + + Gnatiuk + + + Gonczarenko + + + Gordienko + + + Gorlewoj + + + Ardaszew + + + Gorochin + + + Goriunow + + + Grebenko + + + Gricajenko + + + Gricaj + + + Gricenkow + + + Griszachew + + + Gryszczuk + + + Gubar + + + Gunko + + + Babicz + + + Gurewicz + + + Denisenko + + + Dowgaliuk + + + Dombrik + + + Docenko + + + Drozdusz + + + Dubeczuk + + + Dudorow + + + Duka + + + Dumko + + + Balan + + + Dunajew + + + Dykow + + + Erofejew + + + Efremow + + + abenko + + + mijew + + + urakowski + + + Zabiagoda + + + Zagorodniuk + + + Zamosenczuk + + + Baranow + + + Zarubin + + + Zacharin + + + Zwonnicki + + + Zinowiew + + + Zozo + + + Zootar + + + Zubarew + + + ubkow + + + Iwanow + + + Ignatenko + + + Baranowski + + + Ienko + + + Iszczuk + + + Kazakow + + + Kazacew + + + Kandybabko + + + Kapuka + + + Kapustianko + + + Kac + + + Kikabidze + + + Gacula + + + Sinajew + + + Feigelman + + + Ledecow + + + Alferow + + + Antipin + + + Blinow + + + Bogomoow + + + Wasiliewicz + + + Geszkenbein + + + Diakonow + + + Erochin + + + Zajkin + + + Zacharow + + + Iwczenko + + + Kabanow + + + Larin + + + Manko + + + Mironow + + + Stepanenko + + + Oganesian + + + Czernodub + + + Szyow + + + Czyrykow + + + Beliawin + + + Fadejew + + + Stekow + + + Andrejew + + + Spirin + + + Balicki + + + Abdurachmanow + + + Altynnik + + + Barsak + + + Kirejew + + + Szczerbin + + + Kowalczuk + + + Kojew + + + Kozow + + + Koontarew + + + Koontar + + + Kondratenko + + + Korkin + + + Korniejew + + + Baul + + + Krawczenko + + + Kriwda + + + Krzywochacki + + + Kuniecow + + + Kumicz + + + Kuziakin + + + Kulczycki + + + Kuncew + + + Kurwic + + + Kuczeruk + + + Baszakow + + + Kusznarew + + + Chaadze + + + awrik + + + awrow + + + Liwszyc + + + Lisiczaski + + + Litwin + + + Limarenko + + + Mazepa + + + Makarenko + + + Baszmakow + + + Malcew + + + Mamajew + + + Merzajew + + + Milczenko + + + Mironiuk + + + Mohrer + + + Kryga + + + Mostowj + + + Muntian + + + Muchamedow + + + Beszewli + + + Myskow + + + Nawrocki + + + Nepricki + + + Nikanorow + + + Nikeszyn + + + Nikulin + + + Fucin + + + Nordiew + + + Nosan + + + Opolew + + + Binojew + + + Orlewicz + + + Orow + + + Petkiewicz + + + Petrenko + + + Petrow + + + Pochenko + + + Podiaczew + + + Polianin + + + Popawski + + + Popow + + + Blinow + + + Portnych + + + Prasoow + + + Prokopenko + + + Proskurin + + + Procenko + + + Prudow + + + Pustowar + + + Puczek + + + Rabinowicz + + + Radkiewicz + + + Bobrow + + + Rezun + + + Rogoza + + + Rodniaski + + + Rotan + + + Rublew + + + Rudik + + + Rusanow + + + Ryczagirski + + + Sawczenko + + + Sawczuk + + + Bogdanow + + + Sagitow + + + Swiridow + + + Sedych + + + Sereda + + + Sidorenko + + + Sidorow + + + Sinij + + + Sinicyn + + + Skamejka + + + Sucki + + + Bojko + + + Smeow + + + Smoy + + + Sorokin + + + Stacura + + + Stepczyn + + + Styczyski + + + Sykua + + + Tarnawski + + + Tatarczuk + + + Timczuk + + + Andrzejczuk + + + Bojczenko + + + Boldeskul + + + Bondarew + + + Borisow + + + Bricz + + + Bronsztein + + + Buriak + + + Buturin + + + Bialo + + + Walentinow + + + Andruszczenko + + + Wasiliew + + + Weseow + + + Winogradow + + + Wownienko + + + Wolaczuk + + + Woodar + + + Wooszyn + + + Worocow + + + Worochajew + + + Wiuszyski + + + Anisiew + + + Gakin + + + Gandziuk + + + Garkowienko + + + Garkusza + + + Georgow + + + Glebowski + + + Gnatiuk + + + Gonczarenko + + + Gordienko + + + Gorlewj + + + Ardaszew + + + Gorochin + + + Goriunow + + + Grebenko + + + Gricajenko + + + Gricaj + + + Gricenkow + + + Griszachew + + + Gryszczuk + + + Gubar + + + Gunko + + + Babicz + + + Gurewicz + + + Denisenko + + + Dowgaliuk + + + Dombrik + + + Docenko + + + Drozdusz + + + Dubeczuk + + + Dudorow + + + Duka + + + Dumko + + + Balan + + + Dunajew + + + Dykow + + + Erofejew + + + Efremow + + + abenko + + + mijew + + + urakowski + + + Zabiagoda + + + Zagorodniuk + + + Zamosenczuk + + + Baranow + + + Zarubin + + + Zacharin + + + Zwonnicki + + + Zinowiew + + + Zozo + + + Zootar + + + Zubarew + + + ubkow + + + Iwanow + + + Ignatenko + + + Baranowski + + + Ienko + + + Iszczuk + + + Kazakow + + + Kazacew + + + Kandybabko + + + Kapuka + + + Kapustianko + + + Kac + + + Kikabidze + + + Gacua + + + Biay + + + Zielony + + + Niemiertelny + + + Rdzawy + + + Romantyk + + + Okrutnik + + + Miniak + + + Bajarz + + + lepy + + + Dzielny + + + Smark + + + Dyskutant + + + Wyga + + + Berserker + + + Fircyk + + + Kasa + + + Pospny + + + Zgarbiony + + + Suchy + + + Cholerny Szczciarz + + + Plama + + + Gruby + + + Brzuchol + + + Truposz + + + Zamany + + + Mdrala + + + Siekacz + + + Uszatek + + + Mim + + + Bazen + + + Kulawy + + + Twardy + + + Ko + + + Cynik + + + Ziomal + + + Beztroski + + + Maruda + + + Czujny + + + Koneser + + + wawy + + + Abiturient + + + Aborygen + + + Lotnik + + + Agent + + + Giermek + + + Pijawka + + + Kole + + + Aposto + + + Artysta + + + Asceta + + + Kanciarz + + + Bankier + + + Bard + + + Baron + + + Kramarz + + + Orygina + + + Biegacz + + + Atleta + + + Wojak + + + Kloszard + + + Bosman + + + Pigmej + + + Burbon + + + Buruj + + + Biurokrata + + + Wandal + + + Barbarzyca + + + Sprztacz + + + Gryps + + + Wiedmin + + + Go + + + Wiking + + + Szofer + + + Nurek + + + Wdz + + + Zodziej + + + Podrnik + + + Konowa + + + Jedziec + + + Krzykacz + + + Gangster + + + Geolog + + + Gladiator + + + Posaniec + + + Go + + + Hrabia + + + Tragarz + + + Dziadek + + + Uciekinier + + + Akwizytor + + + Chart + + + Dandys + + + Zastpca + + + Tyran + + + Dzikus + + + Dyplomata + + + Doktorek + + + Doktor + + + Profesor + + + Dusiciel + + + Jegier + + + ul + + + Doradca + + + Flak + + + Znachor + + + Gracz + + + Indianin + + + Irokez + + + Kapitan + + + Oszust + + + Klaun + + + Knia + + + Czerwony + + + Ogolony + + + Kozak + + + Kucharz + + + Czarownik + + + Komancz + + + Krl + + + Ojciec Chrzestny + + + Kupiec + + + Palacz + + + Kurier + + + Trener + + + Weteran + + + Legionista + + + Uzdrowiciel + + + Lenik + + + Lord + + + Magnat + + + Tandeta + + + Maniak + + + Marsjanin + + + Mason + + + Mechanik + + + Szycha + + + Grabarz + + + Moderator + + + Mleczarz + + + Rzenik + + + Najemnik + + + Stroiciel + + + Szef + + + Ninja + + + Operator + + + Rusznikarz + + + Farciarz + + + Padyszach + + + Kat + + + Polkan + + + Punk + + + Tatu + + + Partyzant + + + Pastor + + + Pasterz + + + Starszy + + + Oracz + + + Szczciarz + + + Pacyfista + + + Transporter + + + Gwizdek + + + Pilot + + + Pionier + + + Pirat + + + Ciela + + + Podpalacz + + + Straak + + + Kape + + + Tyka + + + Polarnik + + + Ambasador + + + Listonosz + + + Poeta + + + Ksi + + + Prorok + + + Profesor + + + Skoczek + + + Pszczelarz + + + W roboczy + + + Lojalny + + + Rabin + + + Iskra + + + Rozbjnik + + + Rasta + + + Jegier + + + Rockman + + + Grnik + + + Samuraj + + + Saper + + + Ordynans + + + Wyupiasty + + + Kapan + + + Sekretarz + + + igolak + + + Przekrt + + + Scyta + + + Zwiadowca + + + lusarz + + + Kamikaze + + + Hodowca + + + Ratownik + + + Gaz + + + Sportowiec + + + Nieznajomy + + + Student + + + Sdzia + + + Muchomor + + + Alfons + + + Liczykrupa + + + Czogista + + + Tancerz + + + Tyran + + + Zgniek + + + Kramarz + + + Wymiatacz + + + Zamiatacz + + + Aborygen + + + Turysta + + + Cyngiel + + + Puzon + + + Rozgrywajcy + + + Snajper + + + Chemik + + + Rdza + + + Gadua + + + Pasztecik + + + Malarz + + + Pastuch + + + Szaman + + + Sztygar + + + Grnik + + + Szeryf + + + Wdz + + + Uczony + + + Taksiarz + + + Humbak + + + Szpicel + + + Elektryk + + + Kadet + + + Poganin + + + Aligator + + + Anakonda + + + Pawian + + + ubr + + + Bbr + + + Modliszka + + + Dumny + + + Buldog + + + Burunduk + + + W + + + Dzika winia + + + Wrbel + + + Kruk + + + Pimak + + + Skrzyp + + + mieciarz + + + Gawron + + + Gorzki + + + Manul + + + Gsior + + + Delfin + + + Dinozaur + + + Drozd + + + Dzicio + + + Je + + + uk + + + Zajc + + + Bestia + + + Piorun + + + Czarownik + + + Tur + + + Indyk + + + Dzikus + + + Kara + + + Kanarek + + + Pluskwa + + + Kobra + + + Komar + + + Ogier + + + Oprych + + + Kot + + + Krokodyl + + + Pasikonik + + + Szpicel + + + o + + + Mamut + + + So + + + Zarazek + + + Komar + + + Mrwka + + + Dryblas + + + Giez + + + Pajk + + + Szczur + + + Pielgrzym + + + Pirania + + + Pyton + + + Zajc + + + Sowa + + + Sok + + + wistak + + + Miczak + + + Suse + + + Potka + + + Karaluch + + + Tarantula + + + Chomik + + + Boa + + + Sowa + + + Fretka + + + Robak + + + Sztygar + + + Leszcz + + + Absolut + + + Anomalia + + + Zderzak + + + Bochenek + + + Zbity + + + Rozwaka + + + Bolid + + + ruba + + + Brzytwa + + + Bbenek + + + Grzda + + + Pczek + + + Prnia + + + mie + + + Kamyk + + + Wentylator + + + migowiec + + + Wicher + + + Wkrt + + + Obroa + + + Gwd + + + Rudy + + + Kijanka + + + Nabj + + + Glob + + + Gaz + + + Granat + + + Mga + + + Trumna + + + Dacznik + + + Silnik + + + Dynamit + + + Dziurawy + + + Niezdara + + + Adwokat + + + Zamek + + + Kaleson + + + Izotop + + + Skaa + + + Puapka + + + Czarodziej + + + Karma + + + Cega + + + Klej + + + Wredniak + + + Klucz + + + Bat + + + Atut + + + Czapka + + + Drwal + + + Koniak + + + Korze + + + Kosa + + + Kosmos + + + opata + + + ciera + + + Skrt + + + Krzy + + + Smoa + + + Cyngiel + + + Skarpeta + + + om + + + Maszyna + + + Cel + + + Silnik + + + Pompa + + + elazny + + + Nocny + + + Strzelba + + + Panadol + + + Spadochron + + + Nabj + + + Pitka + + + Noyk + + + Tok + + + Kit + + + Proch + + + Elektronik + + + Grosik + + + Rakieta + + + Rama + + + Reaktor + + + Tasak + + + Sito + + + Reszka + + + Robot + + + Jele + + + Szpadel + + + W + + + Samogon + + + But + + + Jabol + + + mier + + + Spiryt + + + Duto + + + Beczka + + + Skrzynia + + + Topr + + + Tyek + + + Szybki + + + Ostrzaka + + + As + + + Wze + + + Czynnik + + + Lampa + + + Czekan + + + Czerwiec + + + Czosnek + + + Kuka + + + Szansa + + + Gruby + + + Libero + + + Cier + + + Szafa + + + Podkad + + + Potka + + + Wylot + + + Prt + + + wiek + + + Wkrt + + + Pcha + + + Dusigrosz + + + Mzgowiec + + + Kie + + + Pazur + + + Ko + + + Pi + + + Nerw + + + Szkielet + + + Ogon + + + Grzywa + + + Siniak + + + Siwy + + + Kutwa + + + Haker + + + Chan + + + Atleta + + + Pinokio + + + Wiedmin + + + Voldemort + + + Homer + + + Smok + + + Piorun + + + Gioconda + + + Zezowaty + + + Tuman + + + Blaszak + + + Ikar + + + Casanova + + + Kociej + + + Cezar + + + Kulebiak + + + Kutuzow + + + Malczik + + + Bonaparte + + + Myliciel + + + Nelson + + + Neptun + + + Oskar + + + Prometeusz + + + Puszkin + + + Pitek + + + Rambo + + + Roquefort + + + Przewodnik + + + Terminator + + + Palant + + + Tusz + + + Cezar + + + Czapajew + + + Czapaj + + + Czebur + + + Kiwaczek + + + Chingachgook + + + Dyngis + + + Stirlitz + + + Banan + + + Jastrzb + + + Skrzat + + + Bochenek + + + Tata + + + Kolec + + + Ssiad + + + Bulkin + + + Buldoer + + + Bufor + + + Pyza + + + Wist + + + Szabla + + + Gangrena + + + Hybryda + + + Usterka + + + Bbniarz + + + Gral + + + Stopie + + + Gremlin + + + Antylopa + + + Wujek + + + Poraka + + + Zimny + + + Parias + + + Kagor + + + Kapusta + + + Karbid + + + Auszpik + + + Atut + + + Komandor + + + Krl + + + Skrt + + + Skarpeta + + + Demon + + + Lodowiec + + + Goblin + + + Maur + + + Madera + + + Spaghetti + + + Mistrz + + + Mutant + + + Zioo + + + Poraka + + + Sadzawka + + + Kaleka + + + Detektyw + + + Pierg + + + Chili + + + Pasek + + + Pczek + + + Bbel + + + Pilnik + + + Rzep + + + Riazaski + + + Samogon + + + Kaleka + + + Smardz + + + Krakers + + + Tyto + + + Tabela + + + As + + + Cukinia + + + Upir + + + Puzon + + + Widmo + + + Kaskader + + + Siwy + + + Kopacz + + + piczka + + + Krzywy + + + amaga + + + Grzbiet + + + Szuja + + + Tcza + + + Cwaniak + + + Krzak + + + Tupecik + + + Sinij + + + Lizus + + + Dziki + + + Malczik + + + Sztywniak + + + Martwiak + + + Tutejszy + + + Grb + + + Glut + + + Mistrz + + + Narcyz + + + Czarny + + + Luny + + + Oferma + + + Ciuma + + + Nicpo + + + Paksa + + + Monokl + + + obuz + + + Pasoyt + + + Paranoja + + + Waniak + + + Teflon + + + Szubrawiec + + + ajdak + + + Nieboszczyk + + + Szlachetny + + + Prostak + + + Psychol + + + W roboczy + + + Zadra + + + apacz + + + Szorstki + + diff --git a/gamedata/configs/text/pol/st_items_artefacts.xml b/gamedata/configs/text/pol/st_items_artefacts.xml new file mode 100644 index 0000000..2ffb9b2 --- /dev/null +++ b/gamedata/configs/text/pol/st_items_artefacts.xml @@ -0,0 +1,153 @@ + + + + Artefakt ten stanowi poczenie kilku pustych w rodku formacji organicznych. Emituje on gazow substancj, ktra neutralizuje radioaktywne czsteczki bez wyrzdzania szkd. Popyt na ten artefakt jest bardzo wysoki ze wzgldu na jego efektywno. + + + Bbel + + + Czerwonawa formacja sprasowanych i skamieniaych rolin, gleby i szcztkw zwierzt. Moe czciowo neutralizowa chemiczne trucizny. Emituje promieniowanie. + + + Kamienna krew + + + Ten artefakt powstaje w strefach anomalii o wysokiej aktywnoci termicznej. Aktywnie pochania ciepo, pozostajc zimnym w dotyku. Emituje promieniowanie. + + + Ten artefakt jest zoony z podobnego do granitu kamienia poddanego dziaaniu olbrzymiej siy grawitacyjnej, co spowodowao powstanie formacji krystalicznej, ktrej nauka w chwili obecnej nie jest w stanie zrozumie. Zapewnia redni ochron przed emisjami psionicznymi. Emituje promieniowanie. + + + Kamienny kwiat + + + Kryszta + + + W skad tego artefaktu wchodz elementy elektrostatyczne, ale naukowcy nie odkryli jeszcze, jakie warunki s niezbdne dla jego powstania. Jest on popularny w Zonie - zarwno jej mieszkacy, jak i gocie ceni jego waciwoci energetyzujce. Uywany zbyt dugo moe doprowadzi do wycieczenia organizmu. Emituje promieniowanie. + + + Bateria + + + Artefakt ten by uwaany za odpad pozbawiony uytecznych waciwoci. Jednak niedawno naukowcy odkryli, e jeli ma stay kontakt z ciaem, silnie stymuluje ukad nerwowy. Emituje promieniowanie. + + + Muszla + + + Wiele z waciwoci tego artefaktu pozostaje tajemnic dla naukowcw. Wiadomo jednak, e emisje wywoywane przez drgania w jego grubszej czci powoduj, e krew w otwartych ranach krzepnie szybciej, tworzc ochronny strup. Jednym z najbardziej widocznych skutkw dziaania tego artefaktu jest zwikszona szybko gojenia si ran. Emituje promieniowanie. + + + Korale mamy + + + Ten elektrostatyczny artefakt jest potnym pochaniaczem elektrycznoci, ktr nastpnie rozadowuje. Bysk moe chroni posiadacza przed poraeniem prdem o napiciu do 5000 woltw. Emituje promieniowanie. + + + Bysk + + + Ten unikalny artefakt elektrostatyczny rezonuje pod wpywem fal psionicznych. Stalkerzy potrafi wyregulowa go w ten sposb, e rezonans zachodzi w fazie przeciwnej do gwnego rda emisji, znaczco osabiajc efekty jej dziaania. Emituje promieniowanie. + + + Blask ksiyca + + + Ten jasno wieccy przedstawiciel rodziny artefaktw elektrostatycznych moe agodzi fluktuacje gstoci pola elektrycznego. Emituje promieniowanie. + + + wiecideko + + + Ten przypominajcy ludzkie oko artefakt znaczco przyspiesza metabolizm waciciela, dziki czemu rany goj si szybciej. Dowiadczeni stalkerzy twierdz take, e Oko przynosi szczcie. Emituje promieniowanie. + + + Oko + + + Ten artefakt powstaje w obszarach wysokiej aktywnoci termicznej. Wytwarza on potne emisje podczerwieni, ktre wzmacniaj procesy metaboliczne, leczc rany na oczach uytkownika. Poniewa jest on bardzo rzadki, cechuje si wysok wartoci. Emituje promieniowanie. + + + Pomie + + + Chocia Kula ognista jest artefaktem termicznym, mona si nim posugiwa bez obawy o poparzenie. Jest on ceniony za zdolno utrzymywania na niewielkim obszarze staej temperatury 24 stopni Celsjusza, bez wzgldu na warunki panujce dookoa. Emituje promieniowanie. + + + Kula ognista + + + Kulebiak to stosunkowo rzadki artefakt, powstajcy w miejscach silnie skaonych chemicznie. Jest on ceniony ze wzgldu na moliwo leczenia dowolnych ran w cigu sekund. Z nieznanych powodw naukowcy rozprzestrzeniaj wrd stalkerw pogoski, jakoby modyfikowa kod genetyczny waciciela. Emituje promieniowanie. + + + Kulebiak + + + wietlik + + + Artefakt powstay w wyniku interakcji duej liczby pl grawitacyjnych. Artefakt ten wytwarza wasne silne kierunkowe pole grawitacyjne, ktre sprawia, e przedmioty w jego zasigu prawie nic nie wa. Poniewa zmniejsza wag niesionego ekwipunku, jest bardzo poszukiwany przez stalkerw. Emituje promieniowanie. + + + Zota rybka + + + Grawi powstaje z metalicznych substancji wystawionych na dugotrwae dziaanie grawitacji. Dziki temu wytwarza pole antygrawitacyjne, ktrego wielu stalkerw uywa w celu zmniejszenia wagi swojego ekwipunku. Emituje promieniowanie. + + + Grawi + + + Na pierwszy rzut oka artefakt ten przypomina Kulebiaka. Niektrzy uwaaj, e jest to Kulebiak, ktrego waciwoci zostay wzmocnione poprzez wystawienie na dziaanie potnego pola elektrycznego. Dziki swoim unikalnym waciwociom moe on znaczco zwikszy napicie miniowe posiadacza. Emituje promieniowanie. + + + nieynka + + + Ten artefakt grawitacyjny przyciga i pochania radioaktywne czstki, zmniejszajc wpyw promieniowania na organizm. Bardzo popularny w Zonie, jest take nieoficjalnie uywany poza ni do leczenia ostrej choroby popromiennej w szczeglnych przypadkach. + + + Meduza + + + Ten organiczny artefakt skada si ze zdeformowanej, zmutowanej tkanki zwierzcej. Po umieszczeniu w skaonym chemicznie miejscu zmienia unoszce si w powietrzu chemikalia w luzowaty pyn. Emituje promieniowanie. + + + Kotlet + + + Ten wieccy artefakt moe tworzy miejscowe, kierunkowe pole niskiej grawitacji. Umieszczony w pobliu plecaka zmniejsza jego wag. Powszechnie uywany przez stalkerw, razem z podobnym artefaktem o nazwie Grawi, do zwikszania maksymalnego adunku. Emituje promieniowanie. + + + Gwiazda wieczorna + + + Unikalny artefakt organiczny o rwnie unikalnych waciwociach. W jaki sposb zwiksza stopie regeneracji wszystkich rodzajw obrae, nie przyspieszajc jednoczenie odkadania si substancji toksycznych. Z powodu jego dziaania i atrakcyjnego wygldu jest poszukiwany przez kolekcjonerw. Emituje promieniowanie. + + + Dusza + + + Ten artefakt o dziwacznym ksztacie pojawia si w miejscach o zwikszonej aktywnoci grawitacyjnej. Zachowuje si jak gbka wchaniajca promieniowanie. Dziki temu artefakt zapewnia skuteczn ochron zarwno przed promieniowaniem z zewntrz, jak i przed radioaktywnymi czstkami, ktre ju znalazy si w organizmie. + + + Skrtak + + + Kompas + + + Rzadki artefakt - mino kilka lat od ostatniego razu, kiedy znaleziono jeden z nich. Pozwala on zlokalizowa przerwy w polach anomalii. Uwaa si, e pozwala on wacicielowi na przebycie nawet najbardziej skomplikowanych pl anomalii bez szkody. Niewiele osb wie jednak, jak si z nim prawidowo obchodzi. + + + Serce Oazy + + + Artefakt ten zosta znaleziony w samym sercu legendarnej Oazy. Wydaje si, e serce to skrystalizowana rolina, ktra nabya leczniczych waciwoci Oazy. W odrnieniu od niej, artefakt ten jest silnie radioaktywny. + + + wietlik oddziauje z polami nieznanym nauce, znaczco przyspieszajc regeneracj tkanek i organw u istot ywych, stabilizujc przy tym procesy metaboliczne. Artefakt ten pozwala ciko rannemu stalkerowi wyzdrowie w cigu dosownie kilku sekund. Niestety, wietlik jest bardzo rzadkim znaleziskiem. Emituje promieniowanie. + + diff --git a/gamedata/configs/text/pol/st_items_equipment.xml b/gamedata/configs/text/pol/st_items_equipment.xml new file mode 100644 index 0000000..622794d --- /dev/null +++ b/gamedata/configs/text/pol/st_items_equipment.xml @@ -0,0 +1,156 @@ + + + + Leki przeciwpromienne + + + Oparte na meksaminie leki przeciwpromienne s czsto spotykane w Zonie. Po uyciu lekarstwo powoduje skurcz obwodowych naczy krwiononych i deprywacj tlenow, co pozwala na leczenie i ochron przed promieniowaniem. Nie ma ono silnych skutkw ubocznych, ale wiadomo o odosobnionych przypadkach lekkich nudnoci, zawrotw gowy, skurczy i blu brzucha. + + + Banda + + + Normalny banda elastyczny sucy do tamowania krwawienia i ochrony przed zakaeniem ran. W przypadku zwykego krwawienia, banda naley naoy bezporednio na ran. Aby powstrzyma krwawienie ttnicze, naley szybko obwiza banda dookoa rany. + + + Standardowa wojskowa lornetka o maksymalnym powikszeniu wynoszcym 7,5x. Jej uyteczno w Zonie wynika z faktu, e pozwala wacicielowi obserwowa wydarzenia z dystansu. + + + Lornetka + + + Chleb + + + W Zonie nigdy nie stwierdzono obecnoci piekarzy, ale ten bochenek chleba nie jest skaony ani radioaktywny. Wprost przeciwnie, wyglda na wiey i smakowity. Przynajmniej na razie nie pojawiy si adne zaalenia. + + + Konserwa niadanie Turysty" + + + Przypuszczalnie ta konserwa zostaa zrabowana przez stalkerw z wojskowego skadu racji ywnociowych. Ciko by pewnym, poniewa na puszce brakuje etykiety. Niemniej jednak powinna nadal nadawa si do zjedzenia, oczywicie jeli wierzy podanej dacie przydatnoci do spoycia. + + + Detektor Echo + + + Ten przestarzay detektor anomalii emituje sygna ostrzegawczy, kiedy nienormalne czsteczki dostan si do specjalnej komory podczas zbliania si do zjawiska. Moe on take wykrywa obecno artefaktw i mierzy odlego do najbliszego z nich. Wskanikiem dystansu jest czstotliwo dwiku emitowanego przez detektor. Aby przej w tryb wykrywania artefaktw, naley otworzy przedni pokryw urzdzenia. Ze wzgldu na prost budow, Echo moe wykrywa tylko najbardziej rozpowszechnione rodzaje artefaktw. + + + Detektor Niedwied + + + Detektor Weles + + + Naukowy detektor nowej generacji. Dziki trzem zmodernizowanym komorom detekcyjnym, pozycja artefaktw pokazana jest na specjalnym ekranie. Zamknite urzdzenie rejestruje tylko promieniowanie i anomalie. Aby przeczy je na w tryb poszukiwania anomalii, naley otworzy przedni wywietlacz LED. W trybie poszukiwania detektor jest zdolny do zlokalizowania wszystkich artefaktw znanych nauce. + + + Prototyp detektora Swarg + + + Prototyp detektora anomalii o rozszerzonej funkcjonalnoci. Urzdzenie to posiada program, ktrego celem jest identyfikacja statycznych obszarw aktywnoci anomalii, przechowywanych w jego bazie danych, przy zachowaniu moliwoci lokalizowania artefaktw. Pozycja anomalii jest wywietlana na specjalnym ekranie. Tryb poszukiwania artefaktw, ktry mona aktywowa otwierajc przedni wywietlacz LED, zosta zmodyfikowany tak, aby mg wykrywa take anomalie nieznane nauce. + + + Standardowa latarka zamontowana na hemie. Jest ona uyteczna dla stalkerw, ktrzy poruszaj si po zmroku, ale niewaciwie uyta moe przycign niechcian uwag. + + + Latarka + + + Antybiotyk + + + Antidotum + + + Antytoksyna IP2 to zoone lekarstwo, w skad ktrego wchodz rne rodzaje antidotw, w tym metoklopramid, tiamina, ryboksyna i inne substancje. Lek wprowadza do krwiobiegu szereg antybiotykw, ktrych zadaniem jest neutralizacja naturalnych trucizn, a take pochaniacze trucizn syntetycznych. IP2 nie jest szczeglnie popularne w Zonie, poniewa wikszo stalkerw woli polega na masce przeciwgazowej i kombinezonie ochronnym. S jednak tacy, ktrzy przechowuj ukryte opakowanie tego antidotum. Efekty dziaania tego lekarstwa s dugotrwae. + + + Herkules + + + Barwinek + + + Ukraiskie Wikasolum - sztuczny odpowiednik witaminy K. Gwnym zdaniem tego lekarstwa jest zwikszanie tempa krzepnicia krwi. Jest bardzo poszukiwany przez stalkerw, ktrzy chc, aby wolno gojce si rany zadawane przez mutanty zasklepiay si szybciej. Efekty dziaania tego lekarstwa s dugotrwae. + + + Bloker psioniczny + + + Lekarstwo, ktre blokuje lawinowy natok impulsw nerwowych. Uycie go wywouje krtkotrwa utrat wszelkich emocji. Uywane wycznie w Zonie w celu przeciwdziaania polom psionicznym obecnym w anomaliach. Efekty dziaania tego lekarstwa s dugotrwae. + + + Radioprotektor + + + Napj energet. Stalker + + + Czsto uywany przez stalkerw wyruszajcych na dusze wyprawy, w trakcie ktrych nie mona pozwoli sobie na odpoczynek. Napj zawiera atwostrawne wglowodany, a take substancje powodujce wydzielanie adrenaliny do krwiobiegu. + + + Wierna gitara. + + + Gitara + + + Kiebasa dietetyczna + + + Na dobre i na ze, ta kiebasa - mieszanka kurczaka i sojowego substytutu - czsto stanowi niadanie, obiad i kolacj stalkera w jednym. Moe by przechowywana przez dugi czas ze wzgldu na wysok zawarto konserwantw. + + + Apteczka + + + Apteczka wojskowa + + + Specjalistyczny zestaw medyczny, zapewniajcy pierwsz pomoc rannym w walce. Zawiera on rodki wspomagajce krzepnicie krwi oparte na menadionie, antybiotyki i immunostymulanty, a take narzdzia suce do usuwania pociskw i odamkw z ciaa. Apteczka ta jest wydawana personelowi wojskowemu jako standardowe wyposaenie. Niekiedy jest take uywana przez siy Powinnoci. + + + Jednorazowy zestaw medyczny oglnego zastosowania. Suy on do leczenia rozmaitych obrae - ran, stucze, zwykych i chemicznych oparze, a take rnych typw trucizn. Ceniony przez stalkerw. + + + Apteczka naukowa + + + Zestaw medyczny zaprojektowany z myl o uyciu w Zonie. Zawiera on materiay suce do leczenia ran, a take do ochrony przed zatruciem promieniowaniem i redukcji stopnia napromieniowania organizmu. W odrnieniu od innych apteczek, zawiera wikasol, batilol i nafazolin. + + + Brak danych w pamici. + + + PDA + + + Wdka Kozak" + + + Produkt firmy GSC. Wchodzi bez zagryzki i znacznie zmniejsza skutki promieniowania. Naley pi j z umiarem. + + + Ten detektor anomalii najnowszej generacji posiada take panel z kolorowymi diodami, ktry nie tylko wskazuje pooenie artefaktw, ale take dystans dzielcy od nich uytkownika. Aby przej w tryb poszukiwania artefaktw, naley otworzy przedni pokryw urzdzenia. Niestety zaprogramowana lista artefaktw jest raczej przestarzaa. + + + Eksperymentalny lek stworzony przez prof. Oziorskiego dla zespow badawczych pracujcych w Zonie. Jego gwnym skadnikiem jest tetrodotoksyna, zwana potocznie proszkiem zombi", powodujca cakowite wstrzymanie dziaania centralnego ukadu nerwowego, co umoliwia przeycie emisji bez osony. Lek nie by testowany klinicznie, dlatego te jego skuteczno i skutki uboczne pozostaj nieznane. + + + ruba + + + Gwny skadnik tego rodka to anaboliczny androgen, sztuczny steryd, ktrego skad przypomina testosteron. Jest on czsto uywany przez stalkerw podczas duszych wypraw, aby zmniejszy zmczenie mini. Znaczco zwiksza udwig. Efekty dziaania tego lekarstwa s dugotrwae. + + + Radioprotektor B190, znany te pod nazw indralina, wchodzi w skad apteczek wydawanych personelowi elektrowni jdrowych. Jest on uywany w Zonie zamiast silnie toksycznego hydrochlorku cystaminy PC1, ktrego czste uycie moe spowodowa mier. Osabia wpyw promieniowania gamma na yw tkank. Najlepiej przyj go przed wystawieniem na dziaanie promieniowania, poniewa efekty nie s natychmiastowe. Efekty dziaania tego lekarstwa s dugotrwae. + + + Harmonijka + + + Dla mionikw bluesa i stylistyki wiziennej. + + diff --git a/gamedata/configs/text/pol/st_items_outfit.xml b/gamedata/configs/text/pol/st_items_outfit.xml new file mode 100644 index 0000000..def62b4 --- /dev/null +++ b/gamedata/configs/text/pol/st_items_outfit.xml @@ -0,0 +1,117 @@ + + + + Kamizelka kuloodporna CS-3a + + + Pancerz Powinnoci" PSZ-9d + + + PS5-M Uniwersalna ochrona + + + Egzoszkielet + + + Kombinezon pancerny Buat + + + Ten egzoszkielet zapewnia znakomit ochron przed pociskami i odamkami, kosztem mobilnoci. Nie chroni przed amunicj przeciwpancern. + + + Egzoszkielet + + + Wojskowy kombinezon pancerny zaprojektowany do operacji szturmowych. Zapewnia znakomit ochron przed amunicj FMJ i odamkami bez ograniczenia mobilnoci uytkownika. Nie chroni przed amunicj przeciwpancern. + + + Pancerz wojskowy + + + Zwyky, czarny skrzany paszcz. Nie ma specjalnych waciwoci poza tym, e chroni waciciela przed zimnem i zbami lepych psw. Pomimo, e nie jest specjalnie wygodny, jest czsto noszony przez bandytw w Zonie - z jednej strony pozwala im ukrywa si w ciemnoci, ale z drugiej moe im chodzi tylko o jego zarbisty" wygld. + + + Skrzany paszcz + + + Kombinezon SEVA + + + Kombinezon pancerny Berill-5M + + + Hem M12 Sfera + + + Pokryty tkanin aluminiowo-tytanowy hem wyposaony w kieszenie na stalowe elementy pancerza i opancerzon mask. Hem M12 Sfera jest z reguy uywany w poczeniu z kamizelk kuloodporn Specnazu PSZ. Jest on do popularny w Zonie ze wzgldu na swoj mask przeciwgazow i wbudowany noktowizor pierwszej generacji, a take na fakt, e zapewnia maksymaln moliw ochron gowy. Posiada te gniazda na urzdzenia elektroniczne. + + + Stalowy hem + + + Skrajnie przestarzay stalowy hem wojskowy bez adnych dodatkw. Nie chroni przed anomaliami i promieniowaniem, ale moe odbija pociski. Hem ten nigdy nie by szczeglnie popularny w Zonie, z wyjtkiem krtkich zbrojnych konfliktw midzy frakcjami. + + + Hem ekranujcy + + + Lekki hem z nieprzepuszczajc powietrza zason, ktrego zadaniem jest ochrona przed anomaliami. Sdzc po konstrukcji, zosta on zbudowany przez ten sam Instytut Bada Obronnych, co kombinezon SEVA. Najprawdopodobniej przeznaczony do uytku w poczeniu z kombinezonami wojskowymi do dziaa w warunkach podwyszonej aktywnoci anomalii. + + + Maska przeciwgazowa + + + Zwyka maska przeciwgazowa zbudowana z plastiku i gumy. Suy do odfiltrowywania powietrza z radioaktywnych czstek i trujcych substancji. Jest uywana zarwno przez nowicjuszy, jak i weteranw ze wzgldu na swoj funkcjonalno. Nie zapewnia adnej ochrony fizycznej. + + + Hem taktyczny + + + Zachodni model hemu taktycznego pozbawiony kamuflau. Nie wiadomo, w jaki sposb znalaz si w Zonie. Jest zaprojektowany tak, aby zapewni dowdcy druyny strategiczn przewag przy uyciu wielu wbudowanych skanerw i urzdze do komunikacji satelitarnej, ktrych ten konkretny egzemplarz nie posiada. Za to moe si poszczyci wielowarstwow powok z kevlaru i opancerzon konstrukcj, ktra ma za zadanie chroni elementy elektroniczne. Zawiera mask przeciwgazow i noktowizor pierwszej generacji. + + + Kombinezon wit + + + Kombinezon Stranik wolnoci + + + Ten lekki kombinezon stalkerski jest wytwarzany przez rzemielnikw Wolnoci. Materia wykorzystywany w produkcji, jest nasycany specjalnym roztworem o nazwie Horyzont, ktry zosta opracowany przez t frakcj metod prb i bdw w celu zwikszenia odpornoci na anomalie. Podobnie jak kombinezon wit, posiada wbudowane opancerzenie i pojemniki na artefakty. + + + Kombinezon Powiew wolnoci + + + Ta wersja kombinezonu Powinnoci nadaje si najlepiej dla stalkerw przyzwyczajonych do lekkich strojw. W odrnieniu od serii PSZ, zapewnia dobr ochron zarwno przed anomaliami, jak i przed pociskami z pistoletu. Kombinezonu tego nie mona niestety uzupeni o pojemnik na artefakty, ale moe on za to by zmodyfikowany poprzez instalacj systemu wsparcia bojowego. + + + Ten nowoczesny pancerz jest przeznaczony do przeprowadzania operacji szturmowych na obszarach o duej liczbie anomalii. Skada si z wojskowego kombinezonu PSZ-12p, wbudowanego kompensatora i osony przed anomaliami. Pancerz zapewnia doskona ochron przeciwko pociskom i odamkom bez znaczcego ograniczenia mobilnoci waciciela. Nie zawiera pojemnika na artefakty. + + + Ten kombinezon, przeznaczony do przeprowadzania bada w Zonie, czy modu oddechowy o zamknitym obiegu z zewntrznym pokryciem izolacyjnym, dziki czemu zapewnia znakomit ochron przed anomaliami. Ze wzgldu na nisk odporno na uderzenia, nie zapewnia on dobrej ochrony przed pociskami i odamkami. Posiada wbudowany pojemnik do transportu artefaktw. + + + Ten kombinezon stanowi wietn alternatyw dla ubra ochronnych wykonywanych przez samych stalkerw. Jego pancerz jest w stanie zatrzyma tylko pocisk z pistoletu, ale system ochrony przed anomaliami i promieniowaniem jest niezrwnany. Ze wzgldu na szerokie moliwoci modyfikacji i dwa wbudowane pojemniki na artefakty, uywa go wielu dowiadczonych stalkerw. + + + Ten kombinezon to tak naprawd dostosowana do warunkw panujcych w Zonie wojskowa kamizelka kuloodporna PS5 z berylowym pokryciem. Zosta on zaprojektowany do stosowania na silnie radioaktywnych obszarach, ale jest nieskuteczny przeciwko anomaliom. Stalkerzy otrzymuj te kombinezony od wojska w zamian za upy. Nie zawiera pojemnika na artefakty. + + + Ten samodzielnie wykonywany kombinezon stalkerski zrobiony jest z dwuwarstwowej, gumowanej tkaniny z pleksiglasowym podszyciem i wbudowan kamizelk kuloodporn. Mimo e nie jest zdolny do zatrzymania nawet pocisku z pistoletu, jest popularny ze wzgldu na nisk cen i moliwoci modyfikacji. Posiada wbudowane pojemniki na artefakty. + + + Ten kombinezon z wzmocnion kamizelk kuloodporn, wykonany przez rzemielnikw Wolnoci, stanowi udany kompromis midzy ochron przed pociskami i przed anomaliami. Posiada pyt pancern i dziesi warstw kevlaru, co wystarczy, aby zatrzyma pocisk z pistoletu. Kombinezon uywa kosztownego preparatu Suweren w celu ochrony przed anomaliami. Zawiera pojemnik na artefakty. + + + Ten wczesny model kombinezonu Powinnoci to kamizelka kuloodporna PSZ-9 zmodyfikowana do uycia w Zonie. Moe on powstrzyma pocisk z karabinu, ale tak wysoki stopie ochrony ma swoj cen - wag, nieporczno i niski stopie ochrony przed anomaliami. Kombinezonu nie mona uzupeni o pojemnik na artefakty, ale moliwa jest instalacja systemu wsparcia bojowego. + + + Pancerz ten, niegdy uywany jako standardowe wyposaenie oddziaw szturmowych Czystego Nieba, po wyeliminowaniu tej frakcji sta si namacalnym dowodem tego, e nawet doskonae opancerzenie nie wystarczy do zapewnienia bezpieczestwa w Zonie. Jest on zdolny do zatrzymania pocisku z pistoletu, zapewniajc przy tym dobr ochron przed anomaliami. Posiada wbudowany pojemnik na artefakty. + + + Eksperymentalny egzoszkielet wojskowy. Nigdy nie wszed do masowej produkcji ze wzgldu na wysoki koszt i pewne wady konstrukcyjne. Mimo to jest bardzo poszukiwany, poniewa przejmuje na siebie niesione przez uytkownika obcienie. Dlatego mae partie s nadal produkowane w podziemnych fabrykach poza Ukrain. Posiada wbudowany pojemnik na artefakty. + + + Kombinezon SEVA + + diff --git a/gamedata/configs/text/pol/st_items_quest.xml b/gamedata/configs/text/pol/st_items_quest.xml new file mode 100644 index 0000000..5bd4a6b --- /dev/null +++ b/gamedata/configs/text/pol/st_items_quest.xml @@ -0,0 +1,369 @@ + + + + Dokumenty z notatkami + + + Dokumenty mwi, e zgodnie z rozkazem Departamentu 1, po zamkniciu luzy transportowej tunel Prype 1 zosta wypeniony dwutlenkiem wgla zmieszanym z jak substancj chemiczn. Nastpnie caemu personelowi nakazano nosi ochronne kombinezony z zamknitym obiegiem powietrza. + + + List dotyczcy dostaw obiektu 62 + + + Ze wzgldu na wystpowanie aktywnoci anomalnej, transport obiektu 62 przez otwarty teren jest niemoliwy. Naley uy podziemnego tunelu Prype 1. Plan dostawy i majcego po niej nastpi zamknicia tunelu zosta wysany do Departamentu 1. + + + Teczka z rozkazem + + + Dokumenty wspominaj o ewakuacji zakadu produkcyjnego fabryki Jupiter do podziemnych laboratoriw. Ta kwestia miaa zosta omwiona w czci laboratoryjnej. + + + Harmonogram dostaw + + + Harmonogram dostaw obiektu 62: 14.07 - 20 jednostek (jedna uszkodzona); 21.07 - 32 jednostki (2 uszkodzone); 28.07 - 26 jednostek (jedna uszkodzona). List przewozowy dotyczcy strat w wyniku transportu zosta przesany do administracji zakadu, wysano te kopi do warsztatw naprawczych. + + + Kartka z notesu + + + Podczas spotkania podjto nastpujc decyzj: dzia dostaw ma si skupi na ewakuacji kompleksu produkcyjnego obiektu 62. + + + Raport ze zmiany + + + ...18:30 - zakoczono szczelne zamykanie wszystkich sekcji tunelu P 1. 19:00 - zakoczono szczelne zamykanie drzwi linii kolejowej. Konieczne byo ich zaspawanie. 19:45 - zamknicie drzwi luku transportowego. Obsuga mechanizmu drzwi wymagaa uruchomienia zasilania awaryjnego, poniewa wczeniej odcito ju dopyw prdu do tunelu. 20:00 - warsztat chemiczny rozpocz wypenianie tunelu gazem. 22:00 - zakoczono dziaania zmierzajce do zamknicia tunelu, wszystkie dokumenty przesano do Departamentu 1. + + + Plan tuneli + + + Plan tuneli Prype 1, z ktrego wida, e tunel przebiega pod miastem Prype. Dokument zawiera kilka notatek: 1. Zamkn drzwi luku transportowego. 2. Uy gazu z warsztatu chemicznego do zamknicia tunelu. + + + Przerobiony izolator + + + To by izolator. Teraz prawie zmieni si w niestabilny artefakt. To zapewne z niego wydobywaj si sporadyczne emisje psioniczne. + + + Puszka kalafonii + + + Puszka kalafonii uywanej do lutowania. Spotyka si j w Zonie do rzadko, co tumaczy, dlaczego miejscowi technicy czsto uywaj do reperacji zepsutego sprztu niebieskiej tamy elektrycznej. + + + Paczka kondensatorw + + + Paczka kondensatorw - jednego z najpowszechniejszych komponentw elektrycznych. Nie s w Zonie rzadkoci, jako e uywa si ich w ulepszeniach zaawansowanego sprztu, ale taka pojemno nie jest zwykle wymagana. + + + Baza tekstolitowa + + + Tekstolit to jeden z podstawowych elementw obwodw drukowanych. Uczucie, jakiego dowiadcza radiotechnik-amator na widok nietknitej bazy tekstolitowej mona porwna do tego, co odczuwa pisarz wobec czystej kartki papieru. + + + Pudeko tranzystorw + + + Pudeko tranzystorw - pprzewodnikw, ktre generuj, przeksztacaj i zwikszaj natenie impulsw elektrycznych. Tranzystory to marzenie kadego radiotechnika w Zonie. + + + Kbek miedzianego drutu + + + Kbek miedzianego drutu to znakomity przewodnik i rwnoczenie rdo metalu nieszlachetnego. Ze wzgldu na t drug cech taki drut spotyka si w Zonie bardzo rzadko. Wszystkie jego rezerwy zostay odnalezione, stopione i dostarczone do orodkw przetwrczych jeszcze w latach 90. + + + Wykrywacz mutantw + + + To urzdzenie jest oparte na zwykym wykrywaczu anomalii, ktry poczono z czujnikiem wykrywajcym mutanty na ograniczonym obszarze i elementem pozwalajcym na przechowywanie danych. Po zebraniu ich okrelonej iloci uruchamia si przecznik automatycznej dezaktywacji urzdzenia. + + + Dokumenty administracyjne + + + Plik dokumentw zawierajcych dane czysto administracyjne. Wspomina si w nich, e zgodnie z rozkazem z laboratorium centralnego, dokumentacja techniczna obiektu 62 zostaa przekazana do warsztatu testujcego. + + + PDA Czarnego + + + Uwag zwraca jedna z wiadomoci. Nadawca nazywa si Szakal, a tekst brzmi nastpujco: Mj czowiek w instytucie badawczym poleci ci na dowdc ekspedycji. Bdzie musia wynaj twoich chopakw do ochrony bunkra. To ci uatwi dziaanie. Pamitaj, klient nie chce, eby do naukowcw dotary JAKIEKOLWIEK informacje na temat obsugi obiektw X. W przeciwnym wypadku nie bdziemy mogli opuci Zony. Nie zawied mnie, Czarny." + + + Czarna skrzynka + + + Czarna skrzynka z Ogoczy 1, ocalaa z katastrofy. Powinna zawiera informacje na temat ostatnich chwil lotu, bd one jednak zaszyfrowane. + + + Plastikowe materiay wybuchowe klasy wojskowej z piciosekundowym zegarem. + + + adunek wybuchowy z zegarem. + + + Przemienione koo + + + PDA Ska + + + W PDA znajduje si mapa ze znacznikiem przy podstacji - bez wtpienia jest tam schowek - oraz kilka fotografii erotycznych. Nic specjalnego. + + + PDA bandyty + + + Ostatnia wiadomo na PDA brzmi: Zap tego gnoja Ska i przyprowad go do mnie, musimy sobie powanie porozmawia. Nie obchodzi mnie, gdzie on jest, znajd go. Jeli bdzie si stawia, daj mu nauczk. Sutan." + + + To PDA zawiera informacje na temat klientw Morgana oraz wsprzdne tajnego magazynu Powinnoci, z ktrego wzi bro. Nastpnie sprzeda j najemnikom i nawiza kontakt z kim nazywanym Sutan. Aby zatrze za sob lady, Morgan postanowi zdradzi Wolnoci lokalizacj magazynu. Informacj mia przekaza jego wsplnik, Sp. PDA wspomina te o czujniku, ktry moe wyczy tylko Morgan, a ktry zaalarmuje Powinno, jeli schowek zostanie otwarty. Ta informacja na pewno zainteresuje zarwno Wolno, jak i Powinno. + + + PDA Morgana + + + Notatka na odwrocie starego dokumentu: Duch, zabieram swoje rzeczy. Dziki za karabin szturmowy - przyda mi si. W zamian za niego zostawiam ci troch rodkw medycznych od Doktora. Najemnik, ktry mnie ciga, wpad w moj puapk, wic nie bd mi potrzebne... mam nadziej. Teraz id si spotka z Kem. Udao mu si zbudowa dekoder. Spotkajmy si tam, gdzie zawsze, jeli dasz rad. Strieok. + + + Wiadomo dla Ducha + + + Notatka na papierze w kratk: Strieok, na wszelki wypadek zostawiem drugi dekoder w naszym schowku w Prypeci. Ja i Duch idziemy do Agropromu, wic zostawimy tu nasz dodatkow amunicj. We j, jeli ci si przyda. Pomylnych oww! Kie. + + + Notatka dla Strieoka + + + Notatka na odwrocie starego dokumentu: Kie, nie mog ju duej na ciebie czeka - siedzi mi na karku cay oddzia. Sam id do sarkofagu. Zostawi tu moj szczliw spluw - i tak nie mam ju do niej nabojw. Jeli nie wrc, daj j Duchowi. Niech zadba o bro, to bro zadba o niego. Trzymaj si. Strieok. + + + Wiadomo dla Ka + + + Modu pamici z samolotu bezzaogowego. Nowikow odblokowa go, dziki czemu masz dostp do zebranych przez samolot informacji. S pord nich wsprzdne trzech punktw, z ktrych dobiegaj sygnay radiowe. + + + Modu pamici (odblokowany) + + + Modu pamici z samolotu bezzaogowego. Pomimo wypadku modu dziaa bez zarzutu, ale niestety jest zablokowany. + + + Modu pamici (zablokowany) + + + Stara kartka z harmonogramem zmian warty, pod ktrym widnieje liczba 1421. Na starych zapiskach sporzdzono flamastrem nastpujc notatk: Porucznik W. I. Sokoow. Po katastrofie migowca udaem si do punktu ewakuacyjnego B205. Przez dwa dni nie podjto prby ewakuacji i dalsze pozostawanie w tym miejscu jest ryzykowne. Postanowiem wic opuci B205 i pj do ruchomego laboratorium ekspedycji naukowej. Znajduje si ono na pnocny wschd od punktu ewakuacyjnego. + + + Notatka Sokoowa + + + Rolina z zagajnika, ktry zosta czciowo przeksztacony w wyniku dziaania anomalii. Zagajnik agresywnie zareagowa na wtargnicie, ale sama rolina nie wydaje si by niebezpieczna. + + + Anormalna rolina + + + Ostatnia wiadomo otrzymana na to PDA pochodzi od Morgana. Jest to zlecenie zabjstwa stalkera nazwiskiem Diegtiariow. Do wiadomoci doczono kilka fotografii. Ostatnie polecenie Morgana mwi o wykasowaniu wiadomoci po jej przeczytaniu. + + + PDA najemnika + + + W tej skrzynce znajduje si wykrywacz artefaktw, bateria i potny przekanik. Urzdzenie bdzie skanowa anomalie, aby okreli liczb i rodzaj artefaktw, ktre si pojawi. Wszystkie te informacje zostan automatycznie przekazane do bunkra naukowcw. + + + Skaner anomalii + + + Ostatnia wiadomo na PDA to nagranie gosowe:\n...Ktrdy pjdziemy, zawsze trafiamy w to samo miejsce. Nie mog przywykn do tej mgy... Zadziwiajce, jak Czepurny mg znikn bez ladu. Moe znalaz wyjcie?... \nDzie szsty... Skoczya si woda... Pukownikowi odbio, zastrzeli dwch ludzi, a potem siebie... Zostaem sam w tej przekltej anomalii... Gdyby czno z baz nie siada, to pewnie by nas uratowali i Powinno by nie powstaa. Jak do tego wszystkiego doszo... Eh, pieprzy to. Tamten kapitan Taczenko zgin dawno temu... A ten genera Taczenko z Powinnoci zaraz do niego doczy... Sprawiedliwoci stanie si zado..."\nNagranie koczy si tu po tym, jak rozlega si strza. + + + PDA generaa Taczenki + + + Ta instrukcja opisuje sposb korzystania z obiektu 62. Jest wyranie podkrelone, e nie trzeba wprowadza adnych zmian w zakresie trajektorii kuli czy nacigu, poniewa na dystansach, na ktrych bro jest skuteczna, czynniki te nie maj znaczenia.\nTe dokumenty nie mog wpa w cudze rce, z pewnoci bardzo zainteresuj analitykw SBU. + + + Instrukcja obsugi obiektu 62 + + + Notes zawiera dokadny opis eksperymentu zwizanego z ocen efektu pola psionicznego na obiekty na drugiej pkuli. Grupa naukowcw na Karaibach odebraa sygna, ale by on znieksztacony. Zmiana sygnau bya niezwyka, zupenie, jakby kto go skorygowa. Moliwe jest wyjanienie mwice, e teoria noosfery jest suszna i e zmiany zostay wprowadzone przez sam noosfer.\nTe dokumenty nie mog wpa w cudze rce, z pewnoci bardzo zainteresuj analitykw SBU. + + + Notes z opisem eksperymentu + + + Dokument opisuje waciwoci techniczne anten i tego, jak rni si od zakadanych wartoci. Na odwrocie jest notatka, ktra wskazuje, e te dokumenty przygotowano w laboratorium X10.\nTe dokumenty nie mog wpa w cudze rce, z pewnoci bardzo zainteresuj analitykw SBU. + + + Generator tczy - gwne cechy techniczne + + + Te dokumenty dotycz jednego z odkry pobocznych, ktre wykazao, ze istoty ywe s w stanie generowa emisje psioniczne. Biologiczny emiter pola, bdcy waciwie olbrzymim mzgiem, zosta wyhodowany w laboratorium X16 w ramach prowadzonych tam bada.\nTe dokumenty nie mog wpa w cudze rce, z pewnoci bardzo zainteresuj analitykw SBU. + + + Dokumenty badawcze + + + Raport szczegowo przedstawia badanie prbek biologicznych przesanych z laboratorium X18. Prbki poddano dziaaniu pl transferowych o zmiennym nateniu. Raport drobiazgowo opisuje mutacje istot ywych wywoane oddziaywaniem emisji.\nTe dokumenty nie mog wpa w cudze rce, z pewnoci bardzo zainteresuj analitykw SBU. + + + Raport z badania prbek + + + Dokument odnosi si do przeniesienia zespou badawczego i wszystkich materiaw do innego laboratorium, zwanego X7, w ktrym bd prowadzone badania dotyczce wpyww noosfery. W skad zespou badawczego wchodz: N. A. Lebiediew, E. F. Kaancza i W. I. Susow.\nTe dokumenty nie mog wpa w cudze rce, z pewnoci bardzo zainteresuj analitykw SBU. + + + Rozkaz przeniesienia + + + Ostatnia notatka na PDA brzmi nastpujco: Znalazem generator awaryjny na szstym pitrze - technicznym. Dwie godziny zabrao postawienie go na nogi. Bardzo chciabym go wczy, ale Serbin zabroni mi si wychyla, dopki nie sprowadzi jakich ludzi." + + + PDA Barczuka + + + Czerwona magnetyczna karta wstpu oznaczona X8. + + + Czerwona karta wstpu X8 + + + PDA zawiera mnstwo nieistotnych zapiskw, ale jeden jest inny: Monolit komunikuje si z odbiorc wiadomoci i nakazuje mu zebra nadwyki amunicji, a potem ukry je w miejscach nieznanych niedowiarkom. Te miejsca maj zosta zaznaczone symbolem Monolitu. Gdy nadejd cikie czasy, ci, ktrzy sysz Monolit, bd czerpa korzyci z jego mdroci... Przekazaem wol Monolitu moim braciom i powiedziaem im, gdzie umieci naboje... + + + PDA bojownika Monolitu + + + Narzdzia jak dla dziecka. Raczej nie przydadz si do robt precyzyjnych, ale biorc pod uwag deficyt narzdzi w Zonie, mog by uyteczne dla zapobiegliwego technika. + + + Narzdzia podstawowe + + + Porzdny zestaw narzdzi. Wyglda tak, jakby dowiadczony technik pieczoowicie skompletowa go na wasny uytek. S stare, ale w dobrym stanie. + + + Narzdzia do precyzyjnej pracy + + + Zestaw profesjonalnych narzdzi do zaawansowanych robt ze sprztem. Notatka na pojemniku mwi, e zestaw pochodzi z Niemiec. Jest w nim wszystko, czego potrzeba do niemal kadej pracy kalibracyjnej. + + + Narzdzia do kalibracji + + + Stara magnetyczna karta wstpu + + + Magnetyczna karta wstpu Kardana. Za jej pomoc uzyskiwano dostp do warsztatu testujcego obiekt 62. + + + Dokumenty dotyczce obiektu 62 + + + Dokumenty opisujce mechanizm i gwne waciwoci techniczne urzdzenia elektromagnetycznego.\nPord dokumentw znajduje si nastpujca notatka: Dokumenty musz zosta zwrcone do X8, do laboratorium centralnego. Ja bd zajty, wic dostarcz je sam. Uyj karty magnetycznej w centrum usugowym Jubilejny w Prypeci, eby zjecha na drugi poziom pod ziemi. Stamtd ju sobie poradzisz. Zaczam kart dostpu.\nN. Lebiediew.\nTe dokumenty nie mog wpa w cudze rce, z pewnoci bardzo zainteresuj analitykw SBU. + + + ta karta wstpu X8 + + + Rozkaz nr 562 + + + Rozkaz wewntrzny nr 423 + + + Klucz A + + + Zwyky klucz oznaczony liter A. + + + Klucz B + + + Zwyky klucz oznaczony liter B. + + + Jedno z nagra gosowych brzmi szczeglnie psychopatycznie: A wic to std s te cholerne mutanty!... Przebiege gnojki wspiy si na paskowy i myl, e Noe ich nie dostanie... Na pewno nie wiedz, e mam wasn ciek na gr, przy pnocnym gospodarstwie... Szykuje si zabawa, dupki!" + + + PDA Noego + + + Notes zawiera mas spamu i jedn wiadomo oznaczon jako wana:\nZacie obz w pobliu zakadu utylizacji odpadw, a kady, kto ma bra udzia w tej robocie, przyczy si do was. Nie oczekujcie Czarnego, bo on i jego ludzie bd w Jupiterze z inn misj. Wojsko zawiesio wszystkie loty do Zony, wic z tej strony nie bdziemy mieli problemw. Kiedy stalkerzy znajd drog do Prypeci, wylemy przewodnika i poczekamy tam na ludzi klienta - poka nam, gdzie jest laboratorium.\nSzakal. + + + Notes najemnika + + + Ostatnia nadesana wiadomo brzmi:\n"Czekamy przy jakich starych warsztatach. Wysaem dwch chopakw przodem, eby zrobili dla ciebie rozpoznanie drogi. Ale bdziemy tu czekali, dopki nie pojawi si kurier klienta - tu jest o wiele wiesze powietrze.\nTasak." + + + PDA najemnika Haka + + + PDA najemnika Prgi + + + Kanister niebezpiecznego chemicznego czynnika nerwowego. + + + Kanister gazu Perin B3 + + + Skrzynka jest zamknita za pomoc do wymylnego zamka. Jej waga i dwik, jaki wydaje przy potrzsaniu, ka sdzi, e co znajduje si w rodku. + + + Stalowa skrzynka + + + Notatka na PDA: Jestem pewien, e artefakt jest na samym drzewie. Std wida, e mgbym si na nie wspi ze wzgrza. Mam tylko nadziej, e na wzgrzach nie ma mutantw. Szkoda, e przyszedem tu sam po tej awanturze z Kardanem i Stogiem, ale kiedy przynios artefakt, zobacz, e od pocztku miaem racj..." + + + PDA Kawalarza + + + Ostatnia notatka na tym PDA ujawnia, e osoba, ktra j wprowadzia, bya zdenerwowana: Kardan, ten stary pijak. Nie do, e jak si napije, to nic mu si nie chce - tu jest dobrze, nigdzie si nie spieszy - to jeszcze najecha na mnie i Kawalarza, e niby jestemy modzi i na niczym si nie znamy... Kawalarz to te niezy agregat: wkurzy si, zapa torb i poszed. Kiedy ja uspokajaem Kardana, znikn nie wiadomo gdzie. I co ja mam zrobi? Pi z tym starym kretynem? Dzikuj, postoj. Ta jego wdka to niezy szajs... Chuj. A pomyle, e na pocztku tak dobrze si zapowiadao." + + + PDA Stoga + + + Wstrzs prowadzi dziennik w swoim PDA, a najciekawsze s jego ostatnie zapiski: Nagranie 12. Niedugo skocz badania... Ludzie w obozie zaczynaj co podejrzewa. Guszec i Dania chc zapolowa na pijawki... Ciekawe, kiedy si zorientuj... Musz przejrze soiki z krwi i oddzieli te zakaone, a reszt ukry... [szybko:] Kto idzie. [sycha, jak urzdzenie zostaje wyczone, a potem wczone ponownie.] Nagranie 13... Prawdopodobnie ostatnie... Najpierw ten wcibski myliwy, a teraz Guszec... Nie ujdzie mi to na sucho. Przyjd po mnie... Wiem, o tym. Niewane - uzalenienie od hemoglobiny i tak by mnie wykoczyo. Wol zgin od kuli ni od choroby... + + + PDA Wstrzsa + + + cile tajne. Rozkaz nr 562 gwnego dowdcy odpowiedzialnego za bezpieczestwo obiektu nr 1, R. J. Dydenki.\nJednostka Zabezpieczenia Chemicznego nr 423: przenie z sektora B103 do sektora A19 w celu przeprowadzenia testw polowych roztworu chemicznego Perin B3 w warunkach zblionych do bojowych. Za przeprowadzenie testw odpowiada pukownik P. P. Sawin, dowdca jednostki. Podpukownik K. S. Waow, zastpca dowdcy jednostki, odpowiada za transport i bezpieczestwo. + + + cile tajne. Rozkaz pukownika P. P. Sawina\nZgodnie z tym rozkazem czonkowie Jednostki Zabezpieczenia Chemicznego nr 423 maj si zapozna z nastpujcymi informacjami:\n1. Klucze do pojemnika z roztworem chemicznym Perin B3 znajduj si w posiadaniu pukownika P. P. Sawina (klucz A) i podpukownika K. S. Waowa (klucz B).\n2. Porzdek konwoju zaczynajc od przodu: Pojazd zastpcy dowdcy jednostki, pojazd eskortujcy nr 8, transporter opancerzony nr 1, pojazd transportowy nr 1, transporter opancerzony nr 3, pojazd eskortujcy nr 2, pojazd dowdcy jednostki (P. P. Sawina).\nKopie rozkazu maj zosta dostarczone podpukownikowi K. S. Waowowi i porucznikowi R. B. Nazarence. + + + ta magnetyczna karta wstpu oznaczona X8.\nKarta nie moe wpa w cudze rce, poniewa dziki niej mona si dosta do tajnego laboratorium. + + + PDA posaca Sutana + + + Ostatnia wiadomo wysana z tego PDA to nagranie gosowe: Sutan, niele daem popali temu miczakowi! Teraz nie bdzie ju z nami zadziera!" + + + To byo kiedy koo pogbiarki. Teraz czciowo przeksztacio si w dziwny artefakt. Jego jedyne zauwaalne waciwoci to wiecenie i lekka radioaktywno. + + + Przysano nastpujc wiadomo:\nUdao mi si zaatwi co w sprawie broni, ten chciwy ajdak sprzeda nam zapasy swojej frakcji. Wyjdzie cakiem tanio, ale musimy si powlec do Jupitera.\nSp. + + diff --git a/gamedata/configs/text/pol/st_items_weapons.xml b/gamedata/configs/text/pol/st_items_weapons.xml new file mode 100644 index 0000000..703d4b0 --- /dev/null +++ b/gamedata/configs/text/pol/st_items_weapons.xml @@ -0,0 +1,567 @@ + + + + Naboje .45 ACP + + + Naboje penopaszczowe kalibru .45 ciesz si popularnoci od ponad stu lat, co zawdziczaj duemu ciarowi kuli i stosunkowo maemu adunkowi miotajcemu. Skutkuje to tym, e pocisk jest relatywnie wolny, ale bardzo precyzyjny i zapewnia znaczn moc obalajc. + + + .45 ACP + + + Naboje Hydroshock .45 ACP + + + Te niezwyke naboje ACP kalibru .45 to okryte paszczem, kule z mikkim czubkiem i rozszerzajc si pust czci i stalowym rdzeniem, ktre cz w sobie zarwno wady, jak i zalety penopaszczowych, ekspansywnych kul z mikkim czubkiem oraz naboi przeciwpancernych. + + + .45 Hydro + + + Naboje rutowe 12x70 + + + Standardowe naboje kalibru 12 wypenione 6-milimetrowym rutem. Zabjcze na krtki dystans. Nadaj si tylko do broni gadkolufowej. + + + rutowe 12x70 + + + Naboje kulowe 12x76 + + + Te cikie kule kalibru 12 s zwykle uywane do oww na grubego zwierza, ale nadaj si te do innych celw. Zamiast przebija pancerz, po prostu go miad. + + + Kulowe 12x76 + + + Naboje 5.45x39 mm AP + + + Wojskowe naboje przeciwpancerne 5.45x39 7H22 s uywane w karabinach automatycznych w krajach Ukadu Warszawskiego. Kula zawiera element przeciwpancerny z twardego stopu. Skuteczne przeciw kamizelkom kuloodpornym. + + + 5.45x39 AP + + + Naboje 5.45x39 + + + Ulepszone wojskowe naboje przeciwpancerne 5.45x39 7H10 uywane w karabinach automatycznych w krajach Ukadu Warszawskiego. Dziki zmniejszonemu odrzutowi i o sto metrw duszemu dystansowi raenia s bardziej precyzyjne ni naboje kalibru 7.62. + + + 5.45x39 + + + Naboje 5.564x5 mm AP + + + Popularne w wojskach NATO naboje przeciwpancerne kalibru 5.564x5, znane pod symbolem SS190/M855, czsto uywane przez zachodnie agencje bezpieczestwa i suby specjalne. Skuteczne przeciw kamizelkom kuloodpornym. + + + 5.564x5 mm AP + + + Naboje 5.454x5 mm + + + Standardowe naboje NATO 5.564x5 zaprojektowane specjalnie do precyzyjnego ostrzau automatycznego. Poniewa s wzorowane na amunicji myliwskiej, posiadaj dobre parametry balistyczne. Powszechnie znane pod symbolem SS109. + + + 5.564x5 + + + Naboje 7.62x54 mm 7H1 + + + Naboje kalibru 7.62 do karabinu snajperskiego, wyposaone w stalowy element przebijajcy zaprojektowany specjalnie do SWD. W przeciwiestwie do amunicji karabinw maszynowych, 7H1 charakteryzuje si silnym skupieniem i znakomit zdolnoci penetracji. + + + 7.62 7H1 + + + Naboje 7.62x54 mm PP + + + Tanie naboje 7.62 do karabinu maszynowego. Nie nadaj si do karabinw snajperskich, s wic uywane tylko w karabinach maszynowych RP-74. + + + 7.62x54 PP + + + Naboje 9x18 mm + + + Naboje penopaszczowe ze stalowym elementem przebijajcym i oowianym rdzeniem. Maj dobr moc obalajc, ale s nieskuteczne przeciw kamizelkom kuloodpornym. + + + 9x18 + + + Naboje 9x18 mm +P+ + + + S to naboje ze zwikszona moc obalajc, a europejskie oznaczenie +P+ wskazuje na amunicj o zwikszonym cinieniu gazw prochowych" z 30% zwikszeniem prdkoci wylotowej. Nieskuteczne przeciw kamizelkom kuloodpornym. + + + 9x18 +P+ + + + Naboje 9x19 mm FMJ + + + Podstawowe naboje paszczowe kalibru 9x19 cz zadowalajc skuteczno z atwoci produkcji. S popularne ze wzgldu na to, e konwencje midzynarodowe zakazuj uywania amunicji ekspansywnej w dziaaniach wojennych. Nieskuteczne przeciw kamizelkom kuloodpornym. + + + 9x19 FMJ + + + Naboje 9x19 mm JHP + + + Te paszczowe kule kalibru 9x19 z ekspansywnym wgbieniem czubkowym zapewniaj du moc obalajc i mae prawdopodobiestwo rykoszetu. S uywane przez policj i w samoobronie. Ze wzgldu na niski potencja penetracyjny nieskuteczne przeciw kamizelkom kuloodpornym. + + + 9x19 JHP + + + Naboje 9x39 mm SP-6 + + + SP-6 to poddwikowe naboje do karabinw szturmowych, paszczowe, z mikkim czubkiem i twardym stalowym rdzeniem, ktry wystaje z obudowy. Ciche strzelanie wymaga tumika. Uywane przez suby specjalne w krajach Ukadu Warszawskiego. Skuteczne przeciw kamizelkom kuloodpornym. + + + 9x39 SP-6 + + + Naboje 9x39 mm SP-5 + + + SP-5 to poddwikowe naboje do karabinw snajperskich z dwumetaliczn obudow. Zawieraj stalowy rdze, za ktrym znajduje si przestrze wypeniona oowiem. Ciche strzelanie wymaga tumika. Uywane przez suby specjalne w krajach Ukadu Warszawskiego. + + + 9x39 mm SP-5 + + + Baterie + + + Granat M203 + + + Granat 40 mm do granatnika podwieszanego M203. Ten pocisk jest zabjczy w promieniu 5 metrw. Nadaje si take do zintegrowanego granatnika FT-200M. + + + M203 + + + Gowica bojowa OG-7V + + + Odamkowa, przeciwpiechotna gowica bojowa uywana w granatnikach RPG-7u. Wykorzystuje si j przede wszystkim do zabijania wrogw znajdujcych si poza zasigiem granatw rcznych. + + + OG-7V + + + Granat VOG-25 + + + Zwyky granat odamkowy do granatnika podwieszanego GP-25 Koster. Ten pocisk jest zabjczy w promieniu 5 metrw. Granat VOG-25 jest te uywany w karabinie Grom S14 i w granatnikach rewolwerowych typu Buldog-6. + + + VOG-25 + + + Celownik PSO-1m + + + Popularny radziecki celownik optyczny ze staym przyblieniem 5x ze skal zasigu. Przyczepia si go do broni za pomoc standardowej w krajach Ukadu Warszawskiego szyny jaskczy ogon. + + + Celownik PSS-2x + + + Celownik optyczny ze staym przyblieniem 5x i wbudowanym czujnikiem ciepa, uywanym do wykrywania rde ciepa charakterystycznych dla ludzkiego ciaa. Zaprojektowany dla si specjalnych. Przyczepia si go do broni za pomoc szyny jaskczy ogon". + + + Celownik NSPU-3 + + + Celownik ze staym przyblieniem 5x i wzmacniajcym obraz noktowizorem, przeznaczony do walki w ciemnoci. Przyczepia si go do broni za pomoc szyny jaskczy ogon" + + + Celownik SUSAT x4 + + + Celownik ze zmiennym przyblieniem 1.6-4x, ktry wykorzystuje sterowanie automatyczne do zapewnienia wikszej skutecznoci ostrzau. Przyczepia si go do broni za pomoc standardowej w NATO szyny Picatinny. + + + Celownik ze staym przyblieniem 4x, produkowany gwnie na Zachodzie. Przyczepia si go do broni za pomoc standardowej w NATO szyny Picatinny. Czsto uywany w celu zwikszenia precyzyjnoci broni strzeleckiej na rednim i dugim dystansie. + + + Celownik SUSAT Zmrok x1.6 + + + Optyczny celownik z podwyszonym kontrastem SUSAT 1.6x do walki w warunkach ograniczonego owietlenia. Przyczepia si go do broni za pomoc standardowej w NATO szyny Picatinny. + + + Celownik SUSAT Noc x4 + + + Celownik optyczny ze staym przyblieniem 4x i noktowizorem do walki w ciemnoci i na dugi dystans. Przyczepia si go do broni za pomoc standardowej w NATO szyny Picatinny. + + + Celownik SUSAT 1.6x + + + Celownik optyczny 1.6x do walki na krtki i redni dystans. Przyczepia si go do broni za pomoc standardowej w NATO szyny Picatinny. + + + Celownik PSU-1 + + + Celownik optyczny z przyblieniem 2.7x, idealny do walki w warunkach miejskich na rednim dystansie. Przyczepia si go do broni za pomoc szyny jaskczy ogon. + + + Tumik + + + Skuteczny tumik, ktry mona na bieco modyfikowa zalenie od potrzeb. Cz wok lufy to rolka solidnej mosinej siatki, a element przedni to zestaw metalowych przeson z otworami, przez ktre maj przechodzi kule. Komplet zawiera te adaptery i uszczelki dla wikszoci broni. Zazwyczaj uywa si go do przerzedzenia szeregw wroga bez przycigania jego uwagi. + + + Granat F1 + + + Obronny granat rczny, ktrego odamki mog przebi redniej klasy kamizelk kuloodporn. Jest zabjczy w promieniu 7 metrw. Stalkerzy zdobywaj granaty F1 dziki handlowi z wojskiem, ktre skrela je jako uywane do walki z mutantami. + + + GP-25 Koster + + + Jednostrzaowy, adowany od przodu, podwieszany granatnik do karabinw szturmowych, produkowany w krajach Ukadu Warszawskiego. Posiada samonapinajcy mechanizm strzelajcy z rczn zapadk zabezpieczajc i automatyczn blokad strzau na wypadek nieprawidowego zamocowania na karabinie. Uywa granatw VOG-25. + + + M203 + + + Zmodyfikowany, skrcony o 8 cm granatnik M203, przyczepiany do broni za pomoc szyny Picatinny. Dziki zmienionemu umocowaniu granatnik ten jest powszechnie uywany na caym wiecie. + + + Granat RGD-5 + + + Ofensywny granat rczny, zabjczy w promieniu 5 metrw. Ze wzgldu na stosunkowo nisk cen czsto uywany przez stalkerw do wykurzania" mutantw. + + + Granat dymny + + + Rczny granat dymny. Uywany do tworzenia zason dymnych, ktre powstaj w cigu 10 sekund po rzuceniu granatu. + + + N + + + AC-96/2 + + + AKM-74/2 + + + AKM-74/2U + + + Martha + + + Obrzyn + + + Dubeltowa strzelba myliwska ze skrcon luf, lejsza i mniejsza ni zwyka strzelba. Jedna z najpopularniejszych broni bandytw, ktrzy ceni atwo jej ukrycia i ogromn skuteczno w walce w zwarciu. + + + Kora-920 + + + Stepowy Orze + + + Pistolet rcznej roboty oparty na projekcie Czarnego Ora. Jego elementy s precyzyjnie dopasowane, dziki czemu jest on niesamowicie precyzyjny jak na bro rczn tego typu. + + + Czarny Orze + + + FT-200M + + + Fora-12 + + + GP37 + + + Karabin Gaussa + + + Grom S14 + + + Ten poczony z granatnikiem karabin szturmowy, podobny do serii AKM, zaprojektowano specjalnie dla jednostek szybkiego reagowania. Gwne rnice to amunicja kalibru 9x39, budowa bezkolbowa i due moliwoci konfiguracji. Bro wysoko ceniona przez stalkerw wojskowych ze wzgldu na moliwo zabicia z niej z duej odlegoci wroga w kamizelce kuloodpornej, oraz za ogromn moc obalajc. + + + Burza + + + Ta bro to eksperymentalna wersja poczenia karabinu szturmowego i granatnika, rosyjska modyfikacja standardowego Gromu S14, zaprojektowana specjalnie dla jednostek dziaajcych w Zonie. Ceniona za zwikszona pojemno magazynka. + + + HPSS-1m + + + Zmodyfikowany pistolet z pierwszej poowy XX w., rwnie potny, niezawodny i celny, jak orygina. Pistolety z tej serii susznie ciesz si reputacj najlepszej broni palnej XX w., a w Zonie panuje na nie ogromny popyt. + + + IL 86 + + + TRs 301 + + + mija 5 + + + Ten pistolet maszynowy zyska wiatow popularno dziki swej niezawodnoci, atwoci obsugi i celnoci. Przez ostatnie kilka dziesicioleci mija 5 bya uywana przez specjalne siy zbrojne i policyjne na caym wiecie. Nic wic dziwnego, e po zalaniu globalnego czarnego rynku, trafia w kocu do Zony. + + + Przecinak + + + Prototyp pistoletu maszynowego oparty na znakomitej mii 5. Zaprojektowany jako bro nowej generacji do walki w zwarciu, charakteryzuje si wikszym kalibrem, szybkoci ogniow i celnoci. + + + PB-1s + + + RP-74 Zulusa + + + Ta bro naleaa do Zulusa. Posiada kilka wyjtkowych cech, midzy innymi zwikszony pojemnik na amunicj i wyjtkowo niezawodny mechanizm retrakcyjny. Modyfikacje zwikszyy ciar broni, ale dla poprzedniego waciciela nie stanowio to problemu. + + + PMm + + + Honorowy PMm + + + Bardzo stary PMm, ktry Diegtiariow otrzyma w nagrod za pomylne wykonanie wysoce niebezpiecznych rozkazw pastwowych oraz za odwag i mstwo okazane podczas penienia obowizkw subowych. + + + Eliminator + + + Buldog-6 + + + Ten rewolwerowy granatnik posiada sze adowanych od przodu luf, identycznych z elementami granatnika podwieszanego. Bben rwnie aduje si od przodu. Jest powszechnie uywany do ostrzau zaporowego pozycji wroga, a na otwartej przestrzeni do atakowania bronionych, nieruchomych celw lub do walki z wyjtkowo gronymi potworami. + + + RP-75 + + + Ten adowany tamowo karabin maszynowy to przenona wersja ze zoonym, dwuetapowym systemem adowania. Mimo e jest ciki i mao celny, znalaz w Zonie grono zwolennikw. Uywa si go gwnie do walki z przewaajcymi siami wroga podczas konfliktw frakcji i do oczyszczania siedzib mutantw. + + + RPG-7u + + + SIP-t M200 + + + Alpine + + + Unikalny model broni palnej SIP-t M200. Cz maej, limitowanej serii wykonanej dla niezidentyfikowanej jednostki si specjalnych. Charakteryzuje si zwikszon pojemnoci magazynka, bardzo wytrzyma stalow luf i niezwykle odporn polimerow komor. + + + SGI-5k + + + Stosunkowo nowy karabin szturmowy, ktry mimo niemodnego wygldu szybko znalaz zwolennikw na caym wiecie. Bronie z tej serii nale do najlepszych w swojej klasie, s znane z niezawodnoci, celnoci i atwoci obsugi. Mimo e ten karabin jest relatywnie trudno zdoby w Zonie, dowiadczeni stalkerzy czsto zamawiaj go nie baczc na wysoki koszt. + + + SGI-5k Strieoka + + + Szwedzki karabin szturmowy SGI-5k. Chocia trudno go nazwa nowym, wida, e poprzedni waciciel dobrze o niego dba: bro zostaa rozebrana, a potem zoona ponownie, po tym jak zoptymalizowano dziaanie kadego elementu, zwikszajc moc obalajc. Na kolbie wyryto liter S" i 16 maych kresek. + + + SPSA-14 + + + SPSA-AUT + + + Strzelba SPSA-AUT z samonapinajcym mechanizmem strzelajcym powstaje wycznie w warsztatach Powinnoci. Ta bro jest przeznaczona do walki z duymi grupami mutantw. Ulepszony mechanizm adujcy zapewnia du szybko strzau, a pojemno magazynka zwikszono do 10. Strzela nabojami kalibru 12x70. + + + Karabinier + + + Strzelba wojskowa zaprojektowana specjalnie dla jednostek szturmowych na bazie SPSA-14. Tak jak jej poprzednik moe strzela automatycznie, ale dziki zrwnowaonemu systemowi bezwstrzsowemu lepiej radzi sobie z odrzutem. + + + SWDm-2 + + + Wojskowy karabin snajperski obecny na rynku od ponad 50 lat i ceniony za wyjtkow niezawodno i atwo obsugi. SWDm-2 jest uywany przez wojsko w celu zwikszenia skutecznego zasigu ich jednostek, ale stalkerzy szanuj t bro za zdolno przebijania pancerzy, dziki ktrej pokonuje zarwno skr mutantw, jak i kamizelki kuloodporne. + + + Ry + + + Rcznie skadana wersja karabinu snajperskiego SWDm-2. Nie rni si od niego wygldem, ale zapewnia idealne poczenie celnoci i mocy obalajcej. + + + SWUmk-2 + + + SWU2-A + + + Ten skrcony karabin snajperski ze zwikszon szybkoci strzau to kolejny etap ewolucji karabinu snajperskiego SWUmk-2. Ta bro naleaa do Maksa, legendarnego stranika Wolnoci. + + + Strzelba myliwska + + + Ta niezwykle popularna strzelba myliwska typu bok" zapewnia lepsz obron przed mutantami ni pistolet - jest bardziej precyzyjna i ma wiksz moc obalajc. Uywana gwnie przez nowicjuszy na obrzeach Zony. + + + Niezidentyfikowana bro + + + Nieznana bro, ktrej mechanizm ogniowy nie zosta zidentyfikowany. Wydaje si uszkodzona - po naciniciu spustu nic si nie dzieje. + + + UDP Compact + + + Najznakomitsze cechy tej broni to absolutna niezawodno i wytrzymao poczone z wyborn celnoci. Do drobnych wad nale jej znaczne rozmiary, stosunkowo wysoko pooony rodek cikoci i masywny zamek, co czyni j trudn do ukrycia, ale to wci za mao by przesoni jej liczne zalety. Bro ta jest szczeglnie popularna wrd weteranw Zony. + + + Marsz + + + May, wielkokalibrowy pistolet z krtkim ruchem zamka i jego lekkim mechanizmem montaowym. Nalea do stalkera zwanego Wilczarzem. Najwyraniej jest to zmodyfikowany pistolet UDP Compact. + + + SA Lawina + + + Wintar BC + + + Specjalny wojskowy karabin snajperski zbudowany z myl o cichym, bezbyskowym oddawaniu strzaw podczas operacji specjalnych, gdzie wczesne wykrycie strzelca moe zaway na wyniku misji. Wintar BC skutecznie przebija pancerze i ma du moc obalajc, posiada te zintegrowany celownik snajperski i optyczny. Mimo maego magazynka wysoko ceniony przez wielu stalkerw. + + + Przypyw + + + Bro wykonana dla jednostek wojskowych na bazie cichego karabinu snajperskiego. W porwnaniu z poprzednikiem, strzelb Wintar BC, karabin ten ma zmniejszon szybko strzau i zwikszon moc obalajc, dziki czemu strzelec moe po kolei wyeliminowa wrogw nie ujawniajc przy tym swojej pozycji. + + + Walker P9m + + + Chaser 13 + + + Zachodnia strzelba gadkolufowa, niezwykle popularna na caym wiecie dziki niezwykej niezawodnoci i szybszemu przeadowaniu. Przez owcw z Zony szczeglnie ceniona za sw funkcjonalno. Wszystkie jej elementy s powleczone rodkiem antykorozyjnym. + + + Drapieca + + + Spersonalizowana, adowana pompkowo strzelba naleca wczeniej do Trapera. Myliwy wymaga od swojej broni tylko tego, by zabijaa drapieniki jednym strzaem. Ta filozofia opieraa si na przekonaniu, e niezalenie od tego, ilu ludzi zabio zwierz, wci byo tylko zwierzciem i w zwizku z tym nie powinno cierpie. + + + Baterie domowej roboty + + + Celownik SUSAT Mera + + + Nowoczesny karabin szturmowy opracowany jako zastpstwo dla starzejcego si AKM 74/2. Gwna rnica to tryb bardzo szybkiego strzelania dwiema seriami, dziki ktremu dwie kule mog trafi w dokadnie ten sam punkt znajdujcy si na celu oddalonym nawet o 100 metrw. W porwnaniu z trybem jednoseryjnym znacznie podnosi to prawdopodobiestwo trafienia celu, tym samym potencja zabjczy, moc obalajc oraz zdolno penetracji pancerza. + + + Ta opracowana w 1974 r. bro bya zwiastunem przejmowania maokalibrowych i niskoimpulsowych naboi przez kraje Ukadu Warszawskiego. AKM-74/2, potomek najpopularniejszego karabinu szturmowego na wiecie, ma jeszcze wikszy hamulec wylotowy, ktry dodatkowo zmniejsza i tak ju zadowalajcy odrzut. Daje to lepsz celno i skupienie, zwaszcza przy oddawaniu szybkich pojedynczych strzaw lub krtkich serii. Karabin jest bardzo prosty i niezawodny. + + + Mimo e pod wzgldem rozmiaru, wagi i celw taktycznych bro ta przypomina pistolety maszynowe, z uwagi na fakt, ze jej mechanizm wewntrzny jest taki sam, jak w AKM 74/2, jest ona zaliczana do karabinw szturmowych. Jest ona ceniona za swoj mobilno w walce na krtki dystans i wysok zdolno przebijania pancerzy, natomiast jej wad jest krtki efektywny zasig (pomimo do dugiego zasigu kuli), tendencja do przegrzewania si i due prawdopodobiestwo rykoszetu. + + + Ulepszona wersja klasycznego pistoletu automatycznego, ktry sprawdzi si znakomicie we wszystkich konfliktach zbrojnych XX w. i pewnym krokiem wszed w nowe tysiclecie. Jest produkowany przez dziesitki, jeli nie setki wytwrcw broni na caym wiecie, zarwno w wersji standardowej, jaki i w zmodyfikowanych konfiguracjach. Jej jedyna wada, maa pojemno magazynka, jest z nadwyk rekompensowana przez du si, z jak uderza amunicja. + + + Najwysza forma rozwoju dziaka rcznego: duego, cikiego i bardzo zabjczego. Opracowano j jako specjalistyczn bro myliwsk do oww na grubego i redniego zwierza, a take do zawodw strzeleckich, podczas ktrych strzela si z ponad 50 metrw do celw ze stali. Ograniczone wystpowanie w Zonie mona wytumaczy cen, rozmiarem i wag, ktre dwukrotnie przekraczaj analogiczne cechy innych pistoletw. + + + Ta futurystyczna z wygldu bro o budowie bezkolbowej to w rzeczywistoci produkowany masowo system moduowy, czcy w sobie karabin ze skomputeryzowanym systemem kontroli ognia i 40-milimetrowy granatnik. Mimo duych rozmiarw bro jest bardzo ergonomiczna, atwa w uyciu i o dobrych parametrach technicznych. + + + Pistolet produkcji ukraiskiej uywany gwnie przez siy policyjne. Ma lepsz celno i wikszy magazynek oraz jest bardziej ergonomiczny ni pistolety PMm. Trafia do Zony w duych ilociach dziki sprzeday broni z defektami spowodowanymi bdami technicznymi we wczesnych modelach. Mimo tego jest na ni duy popyt wrd stalkerw, poniewa posiada dobre parametry bojowe. + + + Nowy czonek rodziny produkowanych na Zachodzie karabinw szturmowych, ktry znaczco rni si od poprzednich modeli w tej serii, zbudowanych na bazie automatu z potwartym nacigiem montaowym zamka. Ta bro bardziej przypomina amerykaskie automatyczne karabiny szturmowe na gaz, z systemem krtkosuwowych tokw gazowych. Te zmiany powoduj, e karabin ten jest pierwszorzdnym przykadem nowoczesnej broni - lekkiej, niezawodnej i ergonomicznej. + + + Znaczna liczba wad tej broni sprawia, ze zostaa ona zmodernizowana, kiedy jej przestarzae zapasy dotary do Zony za porednictwem czarnego rynku. Gwne zalety broni to wbudowany celownik 4x, wysoka precyzyjno jednego strzau i niezawodna technologia ulepsze. Kiedy strzela si seriami, precyzyjno broni znacznie spada, a jej wewntrzne mechanizmy staj si nieco zawodne. + + + Kolejny krok w rozwoju tej sawnej rodziny broni. Zmian dokonano w grnej poowie stalowej konstrukcji zoonej z lufy, tuby gazowej i nacigu montaowego zamka, co zmniejszyo jej wag i poprawio ergonomi i system gazowy. Bro jest bardzo precyzyjna, ale skonno do gromadzenia brudu czyni j mao przydatn w trudnych warunkach Zony. + + + Ten pistolet zosta wyprodukowany w drugiej poowie XX w. na bazie PMm dla si specjalnych i jednostek zwiadowczych. Na przedniej czci lufy znajduje si zintegrowany z ni tumik, a mechanizm nacigu jest krtki, dziki czemu cofajcy si zamek jest umieszczony nie w nim, a na rkojeci broni. Cho pistolet ten wyszed ju z mody, we waciwych rkach nadal jest skuteczn broni. + + + Ta radziecka bro jest najpopularniejszym pistoletem w Zonie i jedn z najlepszych wrd dostpnych niewielkich, obronnych broni palnych. Jest may, atwy w uyciu i utrzymaniu, rzadko zawodzi. Posiada te kilka wad, do ktrych naley may zasig, niska celno i saba moc obalajca, a ponadto, w porwnaniu do nowoczesnych pistoletw, niekorzystna waga i wielko magazynka. + + + Gadkolufowa strzelba bojowa typu rewolwerowego, majca zapewni ogromn si ogniow jednostkom wojskowym. Jej zaletami s duy magazynek i znaczna szybko strzau, ale cen za nie s wielko i ciar w poczeniu z dugim czasem adowania. W Zonie spotyka si j rzadko, jest uywana gwnie do walki z mutantami w zamknitej przestrzeni. + + + Ten granatnik z lat 60. XX w. trafi do Zony z magazynw wojskowych. Jest to gadkolufowy, bezodrzutowy system jednostrzaowy z otwart z tyu luf. Posiada celownik optyczny PGO-7 2.7x. Chocia jego znaczne rozmiary i waga czyni go mao przydatnym dla stalkerw, dziki duej sile niszczcej i atwej obsudze zyska w Zonie oddanych wielbicieli. + + + Ta bro, jedyny istniejcy masowo produkowany model znanego na caym wiecie pistoletu, zdobya saw dziki znakomitej ergonomii i celnoci, a chocia jej magazynek jest stosunkowo may, rekompensuje to potna amunicja i mechanizm dziaajcy jak szwajcarski zegarek. Niektrzy uwaaj, e SIP-t M200 to najlepsza masowo produkowana bro palna kalibru .45ACP na wiecie, posiada ona wielu zwolennikw wrd dowiadczonych stalkerw i najemnikw. + + + Zaprojektowana w drugiej poowie XX w. ta gadkolufowa strzelba automatyczna posiada moliwo przeczania si pomidzy rnymi trybami prowadzenia ostrzau. Uniwersalna bro policji i oddziaw szturmowych. Ceniona za niezawodno i wszechstronno taktyczn. Mimo duej wagi, skomplikowanego mechanizmu i wysokiej ceny, w Zonie panuje na ni duy popyt, poniewa jest bardzo skuteczna przeciw mutantom. + + + Unowoczeniona wersja karabinu snajperskiego SWDm-2 w kompaktowej wersji bezkolbowej, opracowana na zamwienie si szybkiego reagowania. Umoliwia szybszy ostrza precyzyjny i jest znacznie lejsza, a celno jednostrzaowa na krtki i redni dystans jest zbliona do celnoci jej poprzednika. Dziki tym cechom jest ceniona przez niezliczone rzesze stalkerw. + + + Ten karabin szturmowy, zmodyfikowana wersja cichego karabinu snajperskiego Wintar BC, bya przeznaczona dla si specjalnych. Jego gwnym zadaniem jest zapewnienie skutecznego ostrzau wrogw wykorzystujcych nowoczesny sprzt ochronny przy rwnoczesnym nieujawnianiu pozycji strzelajcego. Dziki zintegrowanemu tumikowi i amunicji kalibru 9x39 z cikimi poddwikowymi kulami, dwik i rozbysk broni zostay zredukowane do minimum. + + + Ten supercelny, zaawansowany karabin, znany jako obiekt 62, zosta zaprojektowany w tajnych laboratoriach Zony. Dziki systemowi elektromagnesw naboje s wyrzucane z ogromn prdkoci, co daje niewiarygodn moc obalajc przy praktycznie zerowym odrzucie. Bro jest zasilana umieszczanymi w bateriach fragmentami artefaktw. + + + Pistolety Martha ciesz si w wiecie opini mao zawodnych, chocia nieco przycikich. Uywaj ich siy zbrojne i policyjne z caego wiata. Dziki potnym nabojom i pojemnoci magazynka pistolet ten jest popularny take w pwiatku. Marthy znajdowane w Zonie s zwykle przestarzae, prawdopodobnie pochodz ze starych zapasw. + + + Znakomity zachodni pistolet znany z niezawodnoci, duej pojemnoci magazynka i dobrej celnoci, jak rwnie znakomitej ergonomicznoci w porwnaniu do innych broni palnych w swojej klasie. Jeden z najczciej uywanych pistoletw w Zonie, zarwno pord zawodowcw, jak i todziobw, ktrych na niego sta. + + + Baterie, ktre wykorzystuj jako rdo mocy fragment artefaktu Bysk. Wytwarzane przy uyciu zaawansowanego sprztu. + + + Te ogniwa o mniejszej pojemnoci wykorzystuj jako rdo mocy fragment artefaktu Bysk. Nisza pojemno wynika z prymitywnych warunkw produkcji i braku specjalistycznego sprztu. + + diff --git a/gamedata/configs/text/pol/st_items_weapons_upgrades.xml b/gamedata/configs/text/pol/st_items_weapons_upgrades.xml new file mode 100644 index 0000000..b287567 --- /dev/null +++ b/gamedata/configs/text/pol/st_items_weapons_upgrades.xml @@ -0,0 +1,2022 @@ + + + + Pasko toru pocisku + + + Kaliber + + + Odrzut + + + Niezawodno + + + Cel. kolimatorowy 1,6x + + + Celownik optyczny 4x + + + Tumik + + + Zaczep podlufowy + + + Waga + + + Zewntrzny gwint pozwala na instalacj tumika. + + + Zewntrzny gwint lufy + + + Instalacja zaczepu dla celownika optycznego. + + + Zaczep celownika optycznego + + + Instalacja zaczepu dla granatnika podwieszanego. + + + Zaczep dla granatnika podwieszanego + + + Wymiana standardowego magazynka na wikszy + + + Zwikszona pojemno magazynka + + + Skomplikowana, zintegrowana modyfikacja mechanicznych i automatycznych czci broni, ktra pozwala na zmian jej kalibru kosztem niezawodnoci. + + + Zmiana kalibru na 5x45 + + + Skomplikowana, zintegrowana modyfikacja mechanicznych i automatycznych czci broni, ktra pozwala na zmian jej kalibru kosztem niezawodnoci. + + + Zmiana kalibru na 5x56 + + + Skomplikowana, zintegrowana modyfikacja mechanicznych i automatycznych czci broni, ktra pozwala na zmian jej kalibru kosztem niezawodnoci. + + + Zmiana kalibru na 9x18 + + + Skomplikowana, zintegrowana modyfikacja mechanicznych i automatycznych czci broni, ktra pozwala na zmian jej kalibru kosztem niezawodnoci. + + + Zmiana kalibru na 9x19 + + + Zwikszenie pojemnoci magazynka bez wyduania broni + + + Zwikszenie pojemnoci magazynka + + + Lejszy i jednoczenie bardziej pojemny magazynek pudekowy wykonany z poliwglanu, ktry pozwala na czciowe zrwnowaenie wzrostu wagi. + + + Zwikszona pojemno magazynka pudekowego + + + Zwikszona liczba pyt tytanowych znaczco poprawia trwao kamizelki kuloodpornej. + + + Dodatkowe aluminiowe/tytanowe pyty + + + Wzmocnione pyty, ktre cechuj si o wiele wiksz trwaoci, ale nie zapewniaj duo lepszej ochrony. + + + Pyty kevlarowe + + + Stop aluminium i tytanu, ktry pozwala na zmniejszenie wagi tego ostatniego, pozwalajc na uycie go w osobistym ekwipunku ochronnym. + + + Pyty aluminiowo-tytanowe + + + Tytan jest zbyt ciki, aby uywa go w osobistym ekwipunku ochronnym, ale jest czasami stosowany w egzoszkieletach. + + + Czci z litego tytanu + + + Wymiana metalu na wkno wglowe pozwala na zmniejszenie wagi kamizelki kuloodpornej bez zmniejszania niezawodnoci. + + + Zastpienie metalowych czci kamizelki kuloodpornej elementami z wkna wglowego + + + Kevlar to jeden z najczciej stosowanych materiaw w kamizelkach kuloodpornych. + + + Pyty kevlarowe + + + Poliwglan jest lekki niczym plastik, ale potrafi zatrzyma pocisk z pistoletu. + + + Pyty poliwglanowe + + + Pyty ceramiczne szybko si zuywaj, ale s bardziej niezawodne ni kevlar dziki ulepszonej negacji siy uderzenia pocisku. + + + Instalacja pyt ceramicznych + + + Proste stalowe pyty przyszyte do paszcza. + + + Stalowe pyty + + + Zewntrzna warstwa ceramiczna moe odbija pociski przeciwpancerne uderzajce pod ktem. Jeli nastpi trafienie bezporednie, pocisk rozsypie si w drobny py. + + + Zewntrzna warstwa ceramiczna kamizelki kuloodpornej + + + Dodatkowa wewntrzna warstwa opancerzenia, ktra pomaga w przypadku, gdy warstwa wewntrzna zostanie uszkodzona. + + + Duplikat warstwy ochronnej + + + Pancerz z wewntrzn warstw, ktra rozprowadza si trafienia po wikszym obszarze. + + + Dodatkowy element kompensujcy + + + Rama ta jest zdolna do zatrzymania pocisku z pistoletu, jeli sama kamizelka kuloodporna ulegnie uszkodzeniu. + + + Dodatkowa rama pancerna + + + Cienkie warstwy opancerzenia ukadane s w warstwy, aby zwikszy odporno pancerza na zuycie. + + + Opancerzenie segmentowe + + + Wiksza ilo pyt nie zapewnia lepszej ochrony, ale gwarantuje wiksz trwao. + + + Druga, zapasowa warstwa + + + Ruchome pyty chroni stawy przed postrzaami. + + + Instalacja ruchomych pyt pancerza dla staww + + + Lejsza rama aluminiowa dla pyt, zastpujca ram stalow. + + + Lejsza rama aluminiowa + + + Pogrubione wkadki, ktrych zadaniem jest redukcja siy uderzenia pocisku odczuwalnej przez kamizelk kuloodporn. + + + Pogrubiajce wkadki skrzane + + + Dodatkowa warstwa ceramiczna z silikonow amortyzacj. + + + Wzmocnione pyty ceramiczne + + + Uycie lejszych materiaw w celu zmniejszenia wagi opancerzenia. + + + Instalacja lejszych syntetycznych i plastikowych komponentw + + + Pyty z litego tytanu s zbyt cikie dla onierza piechoty, ale potne siowniki egzoszkieletu bez problemu sobie z nimi poradz. + + + Tytanowy napiernik + + + SBK-RKhZ.m.II - specjalny kombinezon bojowy o zwikszonym stopniu ochrony radiochemicznej, model drugi. + + + Hermetyczny kombinezon ochronny SBK-RKhZ.m.II + + + Ta praco- i czasochonna modyfikacja nie jest zbyt popularna, ale znane s przypadki, gdy uytkownik zawdzicza jej ycie. + + + Wszyta kolczuga + + + "uska" skada si z nachodzcych na siebie pyt ceramicznych, ktre chroni uytkownika przed trafieniem w to samo miejsce. + + + Instalacja osony ceramicznej uska + + + Po potraktowaniu Suwerenem kombinezon staje si praktycznie niewraliwy na obraenia mechaniczne i rozdarcia materiau. + + + Traktowanie preparatem wzmacniajcym Suweren + + + Elementy ceramiczne pozwalaj na osabienie siy uderzenia pocisku, rozpraszajc j na fragmenty, ktre nastpnie si odamuj. + + + Aplikacja warstwy ceramicznej na pyty + + + Wzmocniona matryca, uywajca berylu zamiast aluminium, to jeden z najlepszych sposobw ochrony onierzy piechoty. + + + Elementy ceramiczne pozwalaj na osabienie siy uderzenia pocisku, rozpraszajc j na fragmenty, ktre nastpnie si odamuj. + + + Warstwa ceramiczna na pytach + + + Wkno wglowe to jeden z najbardziej trwaych i odpornych na zuycie materiaw. Jest ono uywane nawet przy budowie samolotw. + + + Poczenie wielowarstwowego polimeru i pokrycia ceramicznego. + + + czone pokrycie pytowe Ekran + + + Rodzima technologia i jeden z najnowszych wynalazkw w dziedzinie wyposaenia ochronnego - sztuczne szafiry. + + + Regulacja czci pozwala broni na dusze dziaanie bez zacinania si. + + + Regulacja czci + + + Modyfikacja przy uyciu plastikowych czci okazaa si nie tylko opacalna, ale cakiem popularna. + + + Czci wielomateriaowe + + + Niskoimpulsowy mechanizm strzelniczy zapewnia odrzut mniejszy ni starsze wersje. + + + Niskoimpulsowy mechanizm strzelniczy + + + Dziki stabilnej pozycji pocisku w trakcie wystrzau, poda on w prostej linii do celu. + + + Instalacja urzdzenia pozycjonujcego pociski + + + Zamek rolkowy jest czsto uywany w uzbrojeniu. Pozwala on na zmniejszenie odrzutu i popraw skupienia strzaw. + + + Pswobodny zamek z systemem rolkowym + + + Instalacja dodatkowego cylindra gazowego pozwala na zmniejszenie czasu przeadowywania, dziki czemu znaczco wzrasta szybkostrzelno. + + + Instalacja dodatkowego cylindra gazowego + + + Silnik gazowy jest uywany w strzelbach samopowtarzalnych przy ogniu pautomatycznym. + + + Instalacja silnika gazowego + + + Ochronne pokrycie chroni przed niewypaem w wyniku usterki mechanicznej. + + + Ochronne pokrycie czci + + + Przy oddawaniu strzau system otwiera i zamyka drog do lufy poprzez przesuwanie przedniego uchwytu wzdu. + + + System zamykania lufy + + + System inercyjny, ktry pozwala przerobi pompkowy mechanizm adowania w strzelbach na automatyczny. + + + Instalacja automatycznego systemu inercyjnego + + + Poczony modu tokowy to jedno z najlepszych rozwiza technicznych zmniejszajcych odrzut. + + + Poczony modu tokowy + + + Automatyczna prowadnica zwiksza celno broni. + + + Instalacja automatycznej prowadnicy + + + Aktywna przeciwwaga odsuwa si od ramy zamka, pozwalajc na czciow kompensacj odrzutu. + + + Instalacja aktywnej przeciwwagi + + + Instalacja dodatkowych rolek zmniejsza odrzut. + + + Instalacja rolkowego systemu kompensacji odrzutu + + + Wymiana zamka broni na lepsz konstrukcj, co zwiksza szybkostrzelno. + + + Mechanizm strzelniczy z otwartym zamkiem + + + Przy wystrzale przeciwwaga ramy zamka rusza si w kierunku przeciwnym ni sam zamek, co pozwala na wygodniejsze strzelanie z karabinu maszynowego. + + + Instalacja samoregulujcej si przeciwwagi + + + Przeciwwaga jest instalowana jako dodatkowy element w komorze zamkowej. Jej zadaniem jest zmniejszanie odrzutu przy uyciu przeciwsiy. + + + Dodanie ruchomej przeciwwagi + + + Modyfikacja przy uyciu polimerowych czci okazaa si nie tylko opacalna, ale cakiem popularna. + + + Odporne na uderzenia czci polimerowe do elementw automatycznych + + + Instalacja specjalnego mechanizmu chronicego bro przed zabrudzeniami. + + + Automatyczny dwupozycyjny regulator gazowy + + + Specjalny element uszczelnia luf, zwikszajc cinienie przy wystrzale. + + + Instalacja urzdzenia uszczelniajcego luf + + + Synchronizacja jest wykonywane przy pomocy koa zbatego, co pozwala na zwikszenie paskoci toru pocisku. + + + Synchronizacja ruchu trzpienia + + + Instalowany w tylnej czci komory zamkowej element pozwalajcy zmniejszy szybko ruchu zamka. Jego instalacja pozwala zwikszy efektywno strzaw mierzonych. + + + Mechanizm opnienia inercji + + + Specjalny element instalowany w mechanizmie zamka w celu zagodzenia jego ruchw i zmniejszenia odrzutu. + + + Dodanie systemu redukcji szybkoci + + + Zintegrowane ulepszenie uywane normalnie w karabinach snajperskich ze wzgldu na znaczn wag. + + + Wbudowany system amortyzacji odrzutu + + + Instalacja mechanizmu z ruchomymi czciami, ktry zwiksza szybko podawania kolejnych nabojw przy strzelaniu. + + + Automatyczne podawanie amunicji + + + Ulepszenie automatycznego mechanizmu broni wymagajce wymiany znacznej liczby czci. Zwiksza celno. + + + Zbalansowany system bezuderzeniowy + + + Syntetyczny element umieszczony bezporednio przed obszarem ruchu zamka. Pozwala on na zmniejszenie wielkoci tego obszaru, w rezultacie znaczco zwikszajc celno broni. + + + Dodanie urzdzenia zatrzymujcego + + + Urzdzenie zaznacza pozycj lufy. Jeli ulegnie ona zmianie, otwierane s dodatkowe otwory kompensacyjne. + + + Instalacja inteligentnego kompensatora + + + Modernizacja pozwalajca na bardziej pynn prac spustu, co jest wane dla snajperw. + + + Instalacja mechanizmu regulacji siy nacisku na spust + + + To urzdzenie pozwala strzelajcemu wyczu moment, w ktrym oddawany jest strza, co pozwala zwikszy celno. + + + Instalacja spustu ostrzegajcego + + + Czsto uywany w zachodnich broniach zamek rolkowy zmniejsza odrzut i poprawia skupienie strzaw. + + + Pswobodny zamek z systemem rolkowym + + + Specjalny mechanizm przejmuje na siebie cz odrzutu podczas wystrzau, co sprawia, e strzelanie z broni staje si wygodniejsze. + + + System amortyzacji strzaw + + + Poniewa karabiny snajperskie wymagaj czstszej konserwacji ni zwyke bronie, mona je zmodyfikowa o trjpozycyjny regulator gazu. + + + Instalacja automatycznego trjpozycyjnego regulatora gazu + + + Pokrycie zapobiega rozproszeniu energii, co zwiksza impuls pociskw. + + + Pokrycie czci mechanicznych + + + Instalacja dugiego rygla mechanizmu strzelniczego pozwala na strzelanie z karabinu snajperskiego w trybie automatycznym. + + + Mechanizm strzelniczy z dugim ryglem + + + Urzdzenie zatrzymujce osabia odrzut, zwikszajc precyzj strzau. + + + Instalacja urzdzenia zatrzymujcego + + + Wymiana standardowej lufy na dusz zwiksza celno i pasko toru pocisku. + + + Dusza lufa + + + Brak duych komr gazowych i mocowanie lufy na przednim uchwycie maj pozytywny wpyw na celno. + + + Instalacja lufy samononej + + + Ta modyfikacja zmniejsza szkody wyrzdzane przez ulepszenia znaczco przyspieszajce szybkostrzelno. + + + Instalacja lufy z eberkami chodzcymi + + + Wymiana przestarzaej czci na nowoczesn zmniejsza odrzut. + + + Zoptymalizowany kompensacyjny hamulec wylotowy + + + Instalacja lufy z dodatkowymi gwintowanymi kanaami zwiksza szybko pocisku i celno broni kosztem znaczcego wzrostu odrzutu. + + + Dodatkowe gwintowane kanay w lufie + + + Ta lufa ma na celu zwikszenie rozrzutu przy walce na bliski dystans, dlatego te nie nadaje si ona do prowadzenia precyzyjnego ostrzau. Zwiksza szybkostrzelno dziki uproszczeniu gwintowanej czci lufy. + + + Instalacja lufy z uproszczon czci gwintowan + + + Gwint poligonalny jest z reguy uywany w celu zwikszenia celnoci. + + + Instalacja lufy z gwintem poligonalnym + + + Pozwala na zmniejszenie temperatury lufy i zwikszenie szybkostrzelnoci. + + + Sinusoidalny gwint lufy + + + Osobliwa modyfikacja lufy dla broni o wysokiej paskoci toru pocisku. Zwiksza ona ich celno. + + + Gwintowane kanay karabinu snajperskiego + + + Materiay o wysokiej trwaoci zmniejszaj szybko zuywania si lufy broni. + + + Lufa ze stopu o wysokiej trwaoci + + + Obrbka wewntrznej powierzchni lufy chroni j przed uszkodzeniami mechanicznymi. + + + Obrbka lufy + + + Syntetyczne wypenienie otworu lufy pozwala na lepsze skupienie strzaw. + + + Syntetyczny wypeniacz lufy + + + Wymiana zwykej lufy na dusz zwiksza pasko toru pocisku. + + + Dusze odcinki lufy + + + Wprowadzenie kanaw odprowadzajcych gaz nie tylko zapobiega gromadzeniu si brudu, ale pozwala te czciowo przekierowa odrzut do lufy. + + + Podune kanay odprowadzajce gazy prochowe + + + Wymiana zwykej lufy na dusz zwiksza pasko toru pocisku. + + + Dusza sekcja lufy + + + To pokrycie chroni luf przed przegrzewaniem, usuwa defekty produkcyjne i wydua jej cykl ycia. + + + Aplikacja pokrycia ochronnego do wewntrznej czci lufy + + + System balansowania lufy zawiera kilka ruchomych tokw, ktre zapewniaj lepsz stabilno trzymanej broni. + + + System balansowania lufy + + + Gwintowana cz lufy uniemoliwia strzelanie rutem, ale poprawiona celno uzyskana dziki tej modyfikacji w peni to rekompensuje. + + + Gwintowane lufy + + + Wypenienie przy uyciu polimerw pozwala na zwikszenie cinienia w lufie, zwikszajc szybko pocisku. + + + Dynamiczny wypeniacz lufy + + + Cylindryczne wiercenia w lufie pozwalaj na zwikszenie szybkostrzelnoci bez zmniejszenia celnoci. + + + Cylindryczne wiercenia w lufie + + + Jednoczenie ze strzaem z broni aktywna przeciwwaga przesuwa si do wylotu lufy, czciowo kompensujc w ten sposb odrzut. + + + Dodanie aktywnej przeciwwagi do osony lufy + + + Wymiana standardowej lufy na dusz zwiksza celno i pasko toru pocisku, ale zmniejsza szybkostrzelno. + + + Dusza sekcja lufy + + + Perforacja lufy pozwala na zmniejszenie odrzutu, poniewa gazy prochowe uciekaj przez specjalne otwory. + + + Perforowana sekcja lufy + + + Technologia skrconej lufy pozwala na zwikszenie szybkostrzelnoci bez powicania paskoci toru pocisku i celnoci. + + + Skrcona sekcja lufy + + + Chromowe pokrycie wydua cykl ycia lufy. + + + Chromowe pokrycie wntrza lufy + + + Oddzielacze absorbuj cz odrzutu. + + + Dodanie gumowych oddzielaczy + + + Uproszczona cz gwintowana jest przydatna w walce na krtki dystans, gdzie szybkostrzelno jest waniejsza od celnoci. + + + Instalacja lufy z uproszczon czci gwintowan + + + Instalacja lufy z dodatkowymi gwintowanymi kanaami zwiksza szybko pocisku i celno broni kosztem znaczcego wzrostu odrzutu. + + + Dodatkowe gwintowane kanay w lufie + + + Zmniejszenie wagi lufy pozwala na znaczce ograniczenie odrzutu. + + + Przeniesienie kompensatora lufy/tumika bysku na ram broni + + + Pozwala na zmniejszenie ciepa lufy i zwikszenie szybkostrzelnoci bez powicania paskoci toru pocisku. + + + Sinusoidalny gwint lufy + + + Gwint poligonalny jest z reguy uywany w celu zwikszenia celnoci karabinw snajperskich. + + + Instalacja lufy z gwintem poligonalnym + + + Wzmacniacz pneumatyczny pozwala na konwersj czci energii odrzutu na cinienie w lufie, co zwiksza prdko wylotow pocisku. + + + Instalacja wzmacniacza pneumatycznego + + + Dodatkowe siowniki pozwalaj na zwikszenie maksymalnego obcienia + + + Dodatkowe siowniki + + + Wynalazek technikw Wolnoci, ktrzy jako pierwsi zastpili metal wknem wglowym, co pozwolio na zmniejszenie olbrzymiej wagi egzoszkieletw. + + + Wymiana czci metalowych na wkno wglowe + + + Opancerzenie chroni kluczowe czci egzoszkieletu przed uszkodzeniem przez celny ostrza. + + + Opancerzenie ukadu napdowego + + + System uatwionego poruszania uywa wzmocnionych spryn i staww, co pozwala uytkownikowi na wykorzystanie masy egzoszkieletu do uatwienia sobie funkcji ruchowych. + + + System uatwionego poruszania Szagochod + + + Instalacja hydraulicznych wzmacniaczy to modyfikacja, ktra oddziela trzeci i czwart generacj pancerzy egzoszkieletowych. Pozwala ona na bieganie w egzoszkielecie. + + + Dodanie wzmacniaczy hydraulicznych do ukadu napdowego + + + Wkadka z tkaniny chroni tkanki przed uszkodzeniem przy uderzeniu pocisku w pyt. + + + Amortyzacyjna warstwa tkaniny + + + Silikonowe wypeniacze absorbuj si uderzenia skuteczniej od gumowych - uytkownik otrzymuje mniejsze obraenia. + + + Amortyzacyjne wypeniacze silikonowe + + + Tkanina, zatrzaski i wypeniacze s zastpowane lejszymi materiaami syntetycznymi w celu zmniejszenia wagi pancerza. + + + Lejsze materiay syntetyczne i polimerowe + + + Pokrycie gum ochroni tkanki przed obraeniami przy uderzeniu w pyt. + + + Amortyzacyjna warstwa gumy + + + Spodnia warstwa chroni uytkownika, jeli kombinezon zostanie rozdarty. + + + Wielowarstwowa wkadka zoona z poliwglanw, silikonu i wkna wglowego, ktra zapewnia dodatkow ochron przy przebiciu gwnego pancerza. + + + Ochronne wkadki polimerowe + + + Hermetyczny kombinezon Przestrze stosowany przez Wolno do poszukiwania artefaktw w obszarach anomalii. + + + Kombinezon ochronny Przestrze + + + Hermetyczna warstwa syntetycznych materiaw, ktra zapewnia dodatkow ochron przy przebiciu zewntrznej warstwy. + + + Warstwa syntetykw + + + Kilka ergonomicznych modyfikacji zbudowanych z gumy, ktre pozwalaj na zachowanie mobilnoci nawet przy noszeniu cikiego pancerza. + + + Gumowy kombinezon poprawiajcy mobilno + + + Konstantan izoluje przed elektrycznoci i ma bardzo wysok temperatur topnienia. + + + Konstantanowe wkadki termoizolacyjne + + + Ow stanowi niezawodn ochron przed promieniowaniem, poniewa absorbuje wszystkie trzy jego typy. + + + Dodanie wkadki oowianej do kombinezonu + + + Podstawowa ochrona skry przed deszczem i rcymi substancjami + + + Pcienny kombinezon + + + Tkanina potraktowana ognioodporn substancj jest bardzo popularna wrd stalkerw poszukujcych artefaktw ogniowych. + + + Tkanina potraktowana ognioodporn substancj + + + Magnezowe wkadki chroni uytkownika przed wysokimi temperaturami. + + + Magnezowe wkadki + + + Nawet zwyczajna wewntrzna warstwa z plastiku moe chroni uytkownika przed chemikaliami i elektrycznoci. + + + Hermetyczna wewntrzna warstwa z plastiku + + + Tkanina, zatrzaski i wypeniacze s zastpowane lejszymi materiaami syntetycznymi w celu zmniejszenia wagi pancerza. + + + Wymiana tkaniny na materiay syntetyczne + + + Pleksiglas absorbuje dwa typy promieniowania i jest znacznie lejszy ni ow. + + + Wewntrzna warstwa przewciwpromienna z pleksiglasu + + + Niezawodna ochrona przed chemikaliami i elektrycznoci. + + + Elastyczna, hermetyczna wewntrzna warstwa z plastiku + + + Cienka warstwa konstantanu izoluje przed elektrycznoci. + + + Wewntrzna warstwa izolacyjna oparta na konstantanie + + + Wkno szklane uywane jest w kombinezonach stosowanych przez zespoy reagowania kryzysowego. + + + Osona termiczna z wkna szklanego + + + Impregnowana tkanina powinna chroni przed zatruciem chemikaliami. + + + Impregnowana tkanina kombinezonu + + + Guma moe chroni przed krtkotrwaym wystawieniem na dziaanie promieniowania. + + + Gumowana tkanina kombinezonu + + + Uywana w kombinezonach stalkerskich w celu zwikszenia trwaoci. + + + Rama ochronna Tarcza o wysokiej trwaoci + + + Nikiel jest wystarczajco odporny na ogie, aby by uywanym we wkadkach do kamizelek kuloodpornych + + + Ognioodporna kamizelka kuloodporna z wkadkami niklowymi + + + Ten stop niklu i magnezu jest uywany w pancerzach w celu ochrony przed poraeniem elektrycznym. + + + Kombinezon izolacyjny z wkadkami manganinowymi + + + Hermetyczny kombinezon z powok antykorozyjn i pancerzem kevlarowym. + + + Zintegrowany kombinezon pancerny Druga Skra + + + Kombinezon wykonany z nowych, nieznanych polimerw wczeniej uytych przez Kijowski Instytut Badawczy w produkcji kombinezonu Ekolog, uzupeniony o bizmutowe wkadki. + + + Kombinezon polimerowy Ekolog z wkadkami bizmutowymi + + + Ta oowiana siatka zapewnia nienaruszaln ochron przed promieniowaniem i chemikaliami bez zmniejszania mobilnoci. + + + Kombinezon pleksiglasowy Ratownik z elastyczn siatk oowian + + + Rodzimy wynalazek, ktry pojawi si po katastrofie w Czarnobylu. Jest on stosowany w egzoszkieletach w celu zapewnienia ochrony w przypadku usterki elektronicznej. + + + Kombinezon Ewakuator z wkadkami oowianymi + + + Zamontowanie celownika szturmowego do walki na mae odlegoci + + + Celownik kolimatorowy 1,6x + + + Zamontowanie celownika optycznego do walki na rednie i due odlegoci + + + Celownik optyczny 4,0x + + + Zamontowanie celownika optycznego do walki na due odlegoci + + + Celownik optyczny 5,0x + + + Zamontowanie celownika optycznego do walki na due odlegoci + + + Celownik optyczny 6,0x + + + Modyfikacja broni szturmowych z celownikami kolimatorowymi, polegajca na zwikszeniu kontrastu w zakresie ci. Przydatna w walce o zmierzchu i w nieowietlonych budynkach. + + + Zwikszenie kontrastu celownika + + + Termowizor pozwala uytkownikowi na wykrywanie i identyfikacj rde ciepa o charakterystykach podobnych do ludzkiego ciaa. + + + Automatyczne optyczne namierzanie celw + + + Od czasu wynalezienia noktowizory uratoway niejednego snajpera. + + + Instalacja noktowizora + + + Ta modyfikacja pozwala na atwe dostosowanie celownika do dystansu strzau. + + + Regulowany celownik dalmierzowy + + + Wypeniona powietrzem kolba ogranicza odrzut przy strzelaniu seri. + + + Wypeniona powietrzem kolba + + + Ruchoma podprka na rami znaczco zmniejsza wpyw siy odrzutu na organizm. + + + Instalacja amortyzowanej podprki na rami + + + Nowoczesna kolba biorca pod uwag szczegy ludzkiej fizjologii. + + + Kolba ergonomiczna + + + Przy wystrzale z broni, cz powstaych gazw prochowych jest przesyana z lufy do zagbienia za zamkiem, zapewniajc jego pynne zatrzymanie w drodze powrotnej. + + + Instalacja gazowego buforu zamka + + + Wyduenie ramy zamka w stron kolby pozwala na zwikszenie paskoci toru pocisku kosztem silniejszego odrzutu. + + + Wyduenie bufora podmuchu ramy zamka + + + Instalacja ruchomej czci w podprce. Wytwarza ona przeciwdziaanie przy wystrzale z broni. + + + Ruchoma przeciwwaga + + + Wiksza podprka umoliwia celniejszy ogie. + + + Wiksza podprka + + + Sprynowy bufor amortyzacyjny sprawia, e strzelanie z rcznego karabinu maszynowego staje si wygodniejsze. + + + Wbudowany sprynowy bufor amortyzacyjny + + + Bufor mechanizmu zamka, umieszczony w kolbie, absorbuje wiksz cz siy odrzutu. + + + Dodatkowy bufor gazowy mechanizmu zamka + + + Gumowany element osabiajcy odrzut jest czsto uywany w fabrycznych kolbach wielkokalibrowych karabinw snajperskich. + + + Amortyzujcy element kolby + + + Regulowana kolba z oparciem dla policzka jest przydatna przy strzelaniu zarwno z wygodnych, jak i niewygodnych pozycji. + + + Regulowana kolba z oparciem dla policzka + + + Urzdzenie przeznaczone dla wielkokalibrowych broni cechujcych si silnym odrzutem, instalowane w kolbie. + + + Hydrauliczny bufor odrzutu w kolbie + + + Aktywne filtry mog chroni nawet przed rcymi chemikaliami. + + + Aktywne filtry + + + Zamknita obrcz, ktra zapewnia czciow ochron przed emisjami psionicznymi + + + Obrcz antypsioniczna wykonana z poczonych eberek stalowych + + + Maska uywana w warunkach skaenia powietrza i przy temperaturach zbyt wysokich lub zbyt niskich do oddychania. + + + Aplikacja powoki ochronnej + + + Aplikacja powoki ochronnej + + + Filtr ze wzmocnion powok antykorozyjn i dodatkow warstw chronic przed truciznami + + + Filtr do pracy w obszarach skaenia + + + Pleksiglasowa maska zapewnia czciow ochron przed promieniowaniem + + + Powoka pleksiglasowa + + + Pleksiglasowa maska zapewnia czciow ochron przed promieniowaniem. + + + Pleksiglasowa maska przeciwgazowa + + + Respirator cakowicie chronicy przed truciznami. + + + Impregnowana maska przeciwgazowa + + + Berylowo-aluminiowa matryca zapewnia znakomit ochron, nie zwikszajc jednoczenie wagi hemu. + + + Berylowo-aluminiowe pyty + + + Berylowo-aluminiowa matryca zapewnia znakomit ochron, nie zwikszajc jednoczenie wagi hemu. + + + Berylowo-aluminiowe pyty + + + Ulepszone filtry zapewniaj niezmienn ilo tlenu, niezalenie od stopnia skaenia otoczenia. + + + Instalacja ulepszonych filtrw do zastosowa badawczych + + + Zaawansowana technologicznie osona psioniczna, ktra podobno zostaa opracowana przez naukowca nazwiskiem Sacharow. + + + Instalacja obrczy Tarcza psioniczna + + + Rama ze stopu chronicego przed ciepem i elektrycznoci. + + + Konstantanowa osona twarzy Zwiastun Burzy + + + Dodatkowe opancerzenie zwikszajce trwao hemu. + + + Wzmocniona konstrukcja hemu + + + Filtr z dodatkowym pokryciem oczyszczajcym i systemem usuwania trucizn. + + + Ulepszony respirator do dziaa w skrajnych warunkach + + + Instalacja noktowizora sucego do dziaa w nocy lub przy ograniczonym owietleniu. + + + Noktowizor pierwszej generacji + + + System przechodzenia na zamknity obieg powietrza w przypadku krytycznego skaenia otoczenia czstkami radioaktywnymi lub chemikaliami. + + + System zapobiegania zagroeniom radiologicznym i chemicznym + + + Maska przeciwgazowa z respiratorem Para + + + Instalacja bardziej zaawansowanego noktowizora sucego do dziaa w cakowitej ciemnoci. + + + Noktowizor drugiej generacji + + + Termowizor pozwala uytkownikowi na wykrywanie i identyfikacj rde ciepa o charakterystykach podobnych do ludzkiego ciaa. + + + Automatyczny system namierzania celw + + + Opracowane przez naukowcw urzdzenie wykorzystujce fale. Suy ono do pracy w obszarach o duej iloci anomalii psionicznych. + + + Stymulator psioniczny Wyrocznia + + + Instalacja bardziej zaawansowanego noktowizora sucego do dziaa w cakowitej ciemnoci. + + + Noktowizor trzeciej generacji + + + Zjonizowane powietrze przemieszczane jest przy uyciu elektrycznoci midzy elektrodami systemu w kierunku przeciwnym do ruchu elektronw, co wytwarza wiatr jonowy. + + + System chodzcy Wiatr jonowy + + + Skaner podczerwieni pozwala wykrywa pobliskie osoby. + + + Skaner podczerwieni + + + System ochrony przed falami psionicznymi SPB - VPZ.m.IV, model czwarty. + + + System bojowy SPB - VPZ.m.IV + + + Wzmocniona spryna zwiksza szybko pocisku. + + + Wzmocniona spryna zwrotna + + + Instalacja wypeniaczy na ruchomych czciach mechanizmu sprawia, e lufa w mniejszym stopniu zbacza z celu podczas strzau. + + + Amortyzacja mechanizmu zwrotnego + + + Instalacja dodatkowej spryny o odwrotnym splocie, ktra zmniejsza odrzut bez powicania paskoci toru pocisku. + + + Dodatkowa spryna zwrotna + + + Pokrycie ochronne zwiksza niezawodno i, co waniejsze, zapewnia hermetyczno, przeciwdziaajc rozpraszaniu energii. + + + Pokrycie ochronne czci skadowych mechanizmu zwrotnego + + + Tytanowe trzpienie zapewniaj o wiele wysz szybko ni ich stalowe odpowiedniki. + + + Tytanowe trzpienie mechanizmu zwrotnego + + + Syntetyczny element instalowany na trzpieniach gwarantuje, e bd one pracowa dokadnie tak, jak powinny, zwikszajc tym samym celno. + + + Dodanie elementu balansujcego + + + Wypenienie tulei pozwala na zwikszenie cinienia panujcego w lufie, co zwiksza szybko pocisku. + + + Wypeniacz tulei mechanizmu zwrotnego + + + Poczenie otwierane przez gazy prochowe i zamykane przez mechanizm zwrotny, ktre pozwala na uycie czci wytwarzanej przez gaz energii. + + + Instalacja poczenia dystrybucyjnego + + + Wymiana mechanizmu zwrotnego na potniejsz wersj zoon z dwch prowadnic i dwch spryn zwrotnych. Zwiksza szybkostrzelno broni. + + + Konwersja na system dwuprowadnicowy + + + Specjalne kanay wyjciowe gazw prochowych w pobliu bbenka broni zmniejszaj odrzut. + + + Wykorzystanie energii gazw prochowych + + + Dodanie ukonych otworw w bbenku. Przyspieszaj one obroty mechanizmu uywajc energii gazw prochowych. + + + Dodanie ukonych otworw w bbenku + + + Korzy pynca z tej standardowej europejskiej modyfikacji to zmniejszona waga broni przy zachowaniu niezawodnoci. + + + Odporna na uderzenia kolba polimerowa + + + Komora zamkowa o wysokiej trwaoci pomaga karabinom szturmowym znosi codzienne uycie w warunkach bojowych. + + + Komora zamkowa o wysokiej trwaoci z cikiego stopu + + + Dodanie obcienia z przodu komory zamkowej pozwala na zmniejszenie odrzutu. + + + Dodanie przeciwwagi do stalowego pudeka + + + Instalacja paszczy chodzcych pozwala podnie szybkostrzelno broni bez ryzyka przegrzania. + + + Dodatkowy paszcz chodzcy + + + Wygodniejszy ksztat rkojeci pozwala lepiej kontrolowa bro podczas strzelania w ruchu. + + + Ergonomiczny ksztat rkojeci + + + Modyfikacja uywana wycznie do luf broni w ukadzie bezkolbowym. Uatwia ich konserwacj. + + + Moduowa komora zamkowa + + + To pokrycie chroni luf przed przegrzaniem, usuwa defekty produkcyjne i znaczco wydua jej cykl ycia. + + + Powoka wygadzajca rysy i wyobienia komory zamkowej + + + Lekkie, ruchome urzdzenie zainstalowane w pustej rkojeci stabilizuje bro przy wystrzale poprzez wytworzenie przeciwdziaania niwelujcego si odrzutu. + + + Pusta rkoje ze stabilizatorem + + + Otwr w rkojeci pozwala na zmniejszenie wagi broni. + + + Pusta rkoje + + + Lejsza wersja standardowej kolby + + + Lejsza kolba + + + Uycie lejszych polimerw pozwala na zmniejszenie wagi broni. + + + Odporna na uderzenia kolba polimerowa + + + Obcienie broni zmniejszajce odrzut + + + Dodanie przeciwwagi + + + Nowoczesna, wygodna rkoje uatwia strzelanie z broni. + + + Ergonomiczna rkoje + + + Amortyzujca rkoje zmniejsza odrzut. + + + Amortyzujca rkoje + + + Nowoczesna, wygodna kolba uatwia strzelanie z broni. + + + Ergonomiczna kolba + + + Specjalna powoka chroni bro przed ywioami. + + + Powoka antykorozyjna + + + Rtciowy amortyzator odrzutu instalowany jest w kolbie broni. Ogranicza odrzut przy wystrzale. + + + Rtciowy amortyzator odrzutu + + + Ruchoma przeciwwaga impulsowa odsuwa si od zamka przy wystrzale, absorbujc cz energii odrzutu. + + + Dodanie przeciwwagi impulsowej + + + Zmiana uytego materiau zmniejsza podatno lufy na uszkodzenia powstae w wyniku nierwnomiernego nagrzewania nastpujcego w trakcie strzelania. Pozwala to na zwikszenie szybkostrzelnoci. + + + Stop termoodporny o wysokiej trwaoci + + + Wana modyfikacja, ktra chroni bro przed spadkami temperatury powietrza podczas strzelania. + + + Dodanie paszczy termoregulacyjnych + + + Uebrowanie to modyfikacja wymagajca wysokiej precyzji, pozwalajca unikn powstawania oddzielnych punktw przegrzania na lufie. + + + Zewntrzne uebrowanie lufy + + + Wymiana lufy na nowsz wersj pozwala na znaczne zwikszenie celnoci. + + + Zmiana geometrii lufy + + + Kosztowny szkielet dla broni, ktry bdzie suy przez dugi czas. + + + Tytanowy szkielet + + + Szkielet taki jest bardziej niezawodny ni model kompozytowy. + + + Stalowy szkielet + + + Zastpienie szkieletu pistoletu lejsz wersj nie obnia niezawodnoci broni. + + + Polimerowy szkielet pistoletu + + + Nowoczesna, wygodna rkoje uatwia strzelanie z broni. + + + Ergonomiczna rkoje + + + Amortyzujca rkoje zmniejsza odrzut. + + + Amortyzujca rkoje + + + Ochronne klapy wypeniajce zabezpieczaj bro przed brudem i uderzeniami. + + + Ochronne wypeniacze komory zamkowej + + + Modyfikacja tylnej czci rkojeci zwiksza jej ergonomiczno. + + + Rkoje z prost tyln czci + + + Moliwo wyboru dugoci rkojeci zwiksza jej ergonomiczno. + + + Regulowana rkoje + + + Ta modyfikacja jest moliwa tylko jeli w rkojeci zostaa zainstalowana spryna zwrotna. + + + Instalacja amortyzatora spryny zwrotnej + + + Moliwo wyboru odpowiedniej pytki zwiksza ergonomiczno rkojeci. + + + Rkoje o zmodyfikowanym ksztacie z wymiennymi pytkami + + + Ten paszcz przeznaczony jest dla intensywnie wykorzystywanych broni. Chroni je przed przedwczesnym zuyciem. + + + Instalacja perforowanego paszcza stalowego + + + To urzdzenie jest bardziej zaawansowane technologicznie i tumi odrzut skuteczniej ni jego odpowiedniki uywane w standardowych broniach automatycznych. + + + Efektywny kompensacyjny hamulec wylotowy + + + Nowoczesna lufa do karabinw snajperskich dalekiego zasigu. + + + Instalacja cikiej lufy z gwintem poligonalnym + + + Pionowe wewntrzne wyobienia w lufie chroni j przed przegrzaniem i zabrudzeniem. + + + Pionowe wyobienia w lufie + + + Zintegrowany tumik dwiku i pomieni jest niezbdny przy prowadzeniu ostrzau z ukrycia. + + + Instalacja zintegrowanego tumika + + + Sinusoidalny gwint komory lufowej jest z reguy wykorzystywany w broniach szturmowych w celu zwikszenia ich szybkostrzelnoci. + + + Sinusoidalny gwint komory lufowej + + + Iniektor generacji A, opracowany w jednym z kijowskich instytutw badawczych, regularnie wprowadza do krwiobiegu niewielkie dawki adrenaliny. Moe to by niebezpieczne dla uytkownika, ale w nagych przypadkach moe take ocali mu ycie. + + + Iniektor adrenaliny Furia + + + System usuwania zebranych trucizn z filtru oczyszczajcego + + + System usuwania trucizn + + + Ten may, noszony na plecach emiter fal jest wynalazkiem frakcji Czyste Niebo. Przy staym uytkowaniu przyspiesza krzepnicie krwi. + + + Hemostymulator Promie + + + System dostarczajcy elektryczno do powierzchni kombinezonu w celu odpychania czstek chemicznych i radioaktywnych. + + + Wbudowany system odpychania pyu + + + Iniektor generacji B, wprowadzajcy do krwiobiegu substancj przyspieszajc krzepnicie krwi, jeli cinienie ttnicze uytkownika znaczco spadnie. + + + Iniektor hemoglobiny Hydra + + + System ten zapobiega zmczeniu, utrzymujc optymaln temperatur ciaa. + + + Instalacja systemu termoregulacji + + + Ten emiter fal jest noszony na klatce piersiowej. Przy jego staym uytkowaniu szybko gojenia si ran znacznie wzrasta. Wzmacnia te system immunologiczny i odporno na bl uytkownika. + + + Biostymulator Soce + + + Opracowane przez naukowcw urzdzenie wykorzystujce fale. Suy do pracy w obszarach o duej iloci anomalii psionicznych. + + + Stymulator psioniczny Wyrocznia + + + Iniektor generacji B, wprowadzajcy do krwiobiegu bojow mieszank podejrzanych substancji, ktra przyspiesza regeneracj tkanek i umierza bl. + + + System regeneracyjny Feniks + + + Zintegrowany system, ktry monitoruje stan zdrowia uytkownika i dostarcza potrzebne witaminy, adrenalin lub substancje anaboliczne. + + + Instalacja systemu podtrzymywania ycia + + + Ten emiter fal jest noszony na szyi. Jego budowa i zasada dziaania nie s do koca jasne, ale ma on silne dziaanie uspokajajce. + + + Neurostymulator Odbysk + + + Zadaniem tego kompensatora kurka zamka jest amortyzacja czci siy odrzutu, co poprawia skupienie strzaw przy strzelaniu seri. + + + Kompensator kurka zamka + + + To jedna z najprostszych i najbardziej popularnych modyfikacji. Pozwala ona na zmniejszenie siy potrzebnej do nacinicia spustu. Proste i przydatne. + + + Mikki spust + + + Specjalny zestaw czci wykonanych z materiaw odpowiednich dla danej broni. S one kosztowne, ale wyduaj jej cykl ycia. + + + Kompozytowe czci mechanizmu strzelniczego + + + Pozwala na zwikszenie szybkostrzelnoci kosztem celnoci i niezawodnoci. + + + Modyfikacja opniacza spustu + + + Usunicie spryny bojowej pozwala na oddanie pierwszego strzau p sekundy wczeniej. To niewiele, ale moe ocali ci ycie. + + + Bezsprynowy mechanizm spustowy + + + Pokrycie ochronne chroni przed usterkami mechanizmu strzelniczego, zapobiegajc niewypaom. + + + Ochronne pokrycie czci mechanizmu strzelniczego + + + Bezzamkowe mocowanie pozwala na przyspieszenie automatycznego adowania, co pozwala na znaczce zwikszenie szybkostrzelnoci broni. + + + Bezzamkowe mocowanie mechanizmu strzelniczego + + + W systemie bezuderzeniowym pocisk nie jest uderzany przez kurek, ale przebijany, przez co proces strzelania przebiega duo agodniej. + + + Instalacja bezuderzeniowego mechanizmu strzelniczego + + + Spust jest odbezpieczany mechanicznie przy pierwszym strzale, a pozostae strzay s oddawane przy automatycznym odbezpieczeniu. + + + Podwjny mechanizm strzelniczy + + + To jedna z najprostszych i najbardziej popularnych modyfikacji. Pozwala ona na zmniejszenie siy potrzebnej do nacinicia spustu. Proste i przydatne. + + + Mikki spust + + + Wstpne odbezpieczenie pozwala na zwikszenie celnoci broni. + + + Mechanizm strzelniczy z czciowym wstpnym odbezpieczeniem + + + Pozwala na uycie identycznej siy do pocignicia spustu przy wszystkich strzaach, co uatwia uywanie broni. + + + Bezpieczny spust + + + Nowoczesna modyfikacja, ktra chroni bro przed oderwaniem sekcji zamka. + + + Powikszona gowica zamka + + + Moduowy mechanizm strzelniczy pozwala na atwiejsz konserwacj i wymian czci broni. Uatwia przy tym jej uywanie. + + + Moduowy mechanizm strzelniczy + + + Urzdzenie odbezpieczajce pozwala na zmniejszenie siy potrzebnej do pocignicia za spust, co skutkuje zwikszon celnoci. + + + Instalacja urzdzenia odbezpieczajcego + + + Nowy wynalazek, ktry pozwala z atwoci zmieni tryb pracy mechanizmu strzelniczego. Zwiksza to ergonomik broni i pozwala na dostosowanie jej do potrzeb uytkownika. + + + "Podwjny" tryb strzelania + + + Po pierwszym strzale droga ruchu spustu niezbdna do oddania kolejnych strzaw zmniejsza si o poow. + + + Mechanizm strzelniczy z krtk drog spustu + + + Dodatkowe siowniki pozwalaj na zwikszenie maksymalnego obcienia + + + Dodatkowe siowniki + + + System ten dostarcza organizmowi lekarstw przeciwtcowych i przeciwzapalnych oraz streptocydu. + + + Wbudowany system Lekarz Polowy + + + Przeznaczony do pracy w obszarach skaonych system wentylacji kombinezonu z filtrem prewencyjnym. + + + Wewntrzny system termoregulacyjny + + + Ergonomiczne ulepszenie: specjalne zaczepy przymocowane do kombinezonu sprawiaj, e niesiony adunek wydaje si lejszy. + + + Kamizelka rozkadajca obcienie + + + Butla z tlenem jest niezbdna w obszarach skaonych substancjami chemicznymi lub radioaktywnymi. + + + Instalacja butli z tlenem + + + Instalacja dodatkowego pojemnika na artefakty. + + + Dodatkowy pojemnik na artefakty + + + System zaczepw pozwala na rwnomierne rozoenie obcienia na caym ciele. + + + System zaczepw rozkadajcych obcienie + + + Tylna rama zmniejsza obcienie ramion niesionym adunkiem, rozkadajc jego wag na cae ciao. Zwiksza to maksymalny udwig. + + + Tylna rama rozkadajca obcienie + + + System ten dostarcza organizmowi lekarstw przeciwtcowych i antyseptykw oraz substancji stymulujcych. Jest on domowej produkcji, ale raczej nie ma szkodliwych skutkw ubocznych. + + + Wbudowany system Opieka + + + Ten system aduje specjaln krat adunkiem o tej samej polaryzacji, co anomalia. Pozwala to zmniejszy zagroenie z jej strony. + + + Elektrostatyczny system ochronny Ogocza + + + Impregnowana warstwa wewntrzna chroni przed zatruciem chemikaliami. + + + Impregnowana warstwa wewntrzna do ochrony przeciwchemicznej + + + Eksperymentalny system wspomagajcy do biegw dugodystansowych. Nie jest uywany poza Zon ze wzgldu na wysok cen i dyskusyjn uyteczno. + + + Wbudowany system Atleta + + + Ten system usuwa trucizny oraz osad zbierajcy si w zagbieniach respiratora. + + + System usuwania trucizn Antidotum + + + Instalacja dodatkowego pojemnika na artefakty. + + + Dodatkowy, dwuprzedziaowy pojemnik na artefakty. + + + System wsparcia bojowego wbudowany w kombinezon. Jest on rzadko uywany, ale czasami wykorzystuje go Specnaz. Posiada wbudowany dozownik adrenaliny i rodkw wspomagajcych krzepnicie krwi. + + + System wsparcia polowego Wareg + + + W tym prototypowym systemie wsparcia bojowego projektanci zrezygnowali ze szkodliwych zastrzykw z adrenaliny, zastpujc je lekami przyspieszajcym krzepnicie krwi. + + + System wsparcia polowego Scyta + + + Ta do kosztowna modyfikacja jest powszechna w broniach nowej generacji. + + + Instalacja staego zamka + + + Wypenienie sekcji zamka zapobiega rozpraszaniu energii, co zwiksza pasko toru pocisku. + + + Wypenienie sekcji zamka i dodanie wkadek syntetycznych + + + Pomimo nazwy, modyfikacja ta polega na wymianie zamka, poniewa to on musi znosi efekty uboczne wikszej szybkostrzelnoci. + + + Byskawiczny automatyczny mechanizm spustowy + + + Wylot gazw prochowych posiada blok, ktry porusza si z identyczn szybkoci, absorbujc cz energii odrzutu. + + + Instalacja wylotu gazw prochowych z ruchomym blokiem + + + Drugi tok przesuwa przeciwwag, kompensujc impuls ruchu mechanizmu zamka. + + + Instalacja dodatkowego toka gazowego + + + Ochronne pokrycie zwiksza niezawodno i, co waniejsze, zapewnia hermetyczno, chronic przed rozpraszaniem energii. + + + Ochronne pokrycie sekcji zamka + + + Zadaniem pochyych wyobie na komorze zamkowej jest zmniejszanie tarcia ruchomych czci i przechwytywanie maych czstek w celu ochrony sekcji zamka przed zabrudzeniem. + + + Dodanie pochyych wyobie + + + Zmniejszenie rednicy komory gazowej przy pomocy syntetycznych wypeniaczy znaczco zwiksza szybko pocisku. + + + Ukierunkowanie energii gazw prochowych + + + Wracajc do pozycji pocztkowej, zamek przekierowuje powietrze do komory lufowej, co obnia jej temperatur. + + + Wymuszone chodzenie + + + Zamek broni przesuwa si wzdu lufy, co zapobiega ruchowi wylotu do gry. + + + Instalacja ruchomego zamka + + + Instalacja toka gazowego powstrzymuje gazy prochowe przed przedostawaniem si do ramy zamka, co znacznie spowalnia brudzenie si broni. + + + Instalacja toka gazowego + + + Ten system wykorzystuje cz gazw prochowych do usprawnienia ruchu sekcji zamka. + + + System odzyskiwania energii gazw prochowych + + + Wymiana czci automatycznych to nie tyle ulepszenie toka gazowego, co raczej optymalizacja jego dziaania. Zwiksza szybkostrzelno broni. + + + Tok gazowy o krtkiej drodze ruchu + + + Zamek rolkowy jest czsto uywany w nowoczesnym uzbrojeniu. Pozwala na zmniejszenie odrzutu i poprawia skupienie strzaw. + + + Instalacja systemu rolkowego z zamkiem pswobodnym + + + Absorbujc cz ciepa wydzielanego przez bro, pochaniacze ciepa zmniejszaj zakres zmian temperatury w trakcie strzelania. + + + Pochaniacze ciepa + + + Dusza droga ruchu toka gazowego zwiksza nieco dugo broni, ale pozwala te znaczco zwikszy pasko toru pocisku. + + + Duga droga ruchu toka gazowego + + + Ruchomy bufor rozprasza odrzut na wszystkich czciach broni, w ten sposb go osabiajc. + + + Instalacja specjalnego ruchomego bufora + + + Symetryczne wymuszone chodzenie lufy, nastpujce dziki wyrzutnikowi, chroni bro przed przegrzaniem. + + + System symetrycznego wymuszonego chodzenia + + + Umoliwia zwikszenie szybkostrzelnoci bez obciania innych czci dodatkowym odrzutem. + + + Ruchoma sekcja zamka + + + Zwiksza pasko toru pocisku dziki usprawnieniu transferu energii gazw prochowych do naboju. + + + System zamykania lufy + + + Zmniejsza odrzut przez spowolnienie ruchw sekcji zamka. + + + System powolnego ruchu wstecznego sekcji zamka + + + Pokrycie chroni bronie przed zuyciem. + + + Ochronne pokrycie sekcji zamka + + + Zwiksza pasko toru pocisku dziki usprawnieniu transferu energii gazw prochowych do naboju. + + + System zamykania skrzywienia lufy + + + Ciszy, zamknity zamek zapobiega usterkom sekcji zamka pistoletu. + + + Wzmocniony, zamknity zamek + + + May bufor, ktry przejmuje na siebie cz odrzutu. + + + Polimerowy bufor odrzutu + + + Instalacja stalowej wkadki pomaga zredukowa odrzut. + + + Instalacja wkadki zamykajcej ze spiralnym wyobieniem + + + Wyduenie drogi ruchu zamka i odpowiednie wzmocnienie mechanizmu zwrotnego pozwala na zwikszenie paskoci toru pocisku. + + + Wyduenie drogi ruchu zamka + + + Krtka droga ruchu zamka pozwala na zwikszenie szybkostrzelnoci bez powicania paskoci toru pocisku. + + + Skrcenie drogi ruchu zamka + + + Duga droga ruchu zamka nadaje pociskowi wiksz energi. + + + Wyduenie drogi ruchu lufy + + + Wymiana czci automatycznych to nie tyle ulepszenie toka gazowego, co raczej optymalizacja jego dziaania. Zwiksza ona szybkostrzelno broni. + + + Instalacja systemu wykorzystujcego energi odrzutu o krtkiej drodze ruchu + + + Instalacja tego moduu pozwala zwikszy skupienie strzaw bez powicania szybkostrzelnoci. + + + Poczony dwusprynowy modu zwrotny + + + Dodatkowe otwory kompensacyjne znaczco osabiaj odrzut. + + + Zintegrowany kompensator odrzutu lufy + + + Modernizacja automatycznych czci pistoletu pozwala na strzelanie w trybie automatycznym. + + + Penoautomatyczny tryb strzelania + + + Modernizacja automatycznych czci pistoletu pozwala na strzelanie seriami po trzy pociski. + + + Tryb strzelania seriami po trzy pociski + + + Koszt + + + Nie mona zainstalowa + + + Zainstalowano + + + Czy na pewno chcesz zainstalowa: + + + Aut. sys. namierzania + + + Aut. sys. namierzania + + + Celownik optyczny 5x + + + Celownik optyczny 6x + + + Skaner podczerwieni + + + Waga kam. kuloodpornej + + + Noktowizor 2 generacji + + + Noktowizor 3 generacji + + + Zaczep na cel. optyczny + + + Wbudowany tumik + + + Granatnik podwieszany + + + Leczenie ran + + + Regeneracja + + + Noktowizor 1 generacji + + + Regulowany celownik + + + Celownik o wys. kontracie + + + Wzmacniacze serwomotorw + + + Trwao kombinezonu + + + Nie wiadomo, na jakiej zasadzie dziaa ta bro. Nie mona jej naprawi bez dodatkowych informacji o jej konstrukcji. + + + Technik nie moe wykona tej modyfikacji + + + Ta cz jest ju zmodyfikowana + + + Za mao pienidzy + + + Nie uywa rutu + + + Tryb ognia automatycznego + + + Tryb ognia krtk seri + + + Liczba pojemnikw + + + technik potrzebuje wdki + + + technik potrzebuje narzdzi do podstawowych zastosowa + + + technik potrzebuje narzdzi do pracy precyzyjnej + + + technik potrzebuje narzdzi kalibracyjnych + + + technik potrzebuje dodatkowych informacji + + + wymagane s poprzednie modyfikacje + + + Powoka ochronna oparta na krysztaach szafiru Pancernik + + + Wzmocniona matryca tytanowo-berylowa + + + Dodatkowa powoka z wkna wglowego + + + Warstwa spodnia z gumowanej tkaniny + + diff --git a/gamedata/configs/text/pol/st_land_names.xml b/gamedata/configs/text/pol/st_land_names.xml new file mode 100644 index 0000000..6912260 --- /dev/null +++ b/gamedata/configs/text/pol/st_land_names.xml @@ -0,0 +1,171 @@ + + + + Anomalia Pazur + + + Anomalia elazny Las + + + Tartak + + + Stacja antenowa Krug + + + Zakad utylizacji odpadw + + + Anomalia Cyrk + + + Leniczwka + + + Skadowsk + + + Spalone gospodarstwo + + + Anomalia Kocio + + + Bagno + + + Izumrudnoje + + + Szewczenko + + + Pogbiarka + + + Dwigi portowe + + + Anomalia Sosnodb + + + Stacja benzynowa + + + Stara barka + + + Anomalia Szrama + + + Most Przemienienia Paskiego + + + Paskowy poudniowy + + + Magazyny podstacji + + + Anomalia Popielisko + + + Wiea chodnicza + + + Podstacja + + + Anomalia Szuwary + + + Cementownia + + + Kopaczi + + + Janw + + + Kamienioomy + + + Bunkier naukowcw + + + Kompleks przeciwlotniczy Wokow + + + Zagajnik anomalii + + + Parking + + + Posterunek + + + Anomalia Bitumin + + + Wschodni tunel + + + Magazyn kontenerw + + + Kompleks wentylacyjny + + + Ldowiska dla helikopterw + + + Anomalia Betonowa Wanna + + + Fabryka Jupiter + + + Kino Prometeusz + + + Port rzeczny + + + Stara stacja obsugi + + + Szkoa + + + Szpital + + + Centrum usugowe Jubilejny + + + Pralnia samoobsugowa + + + Przedszkole + + + Osiedle + + + Warzywniak + + + Dom towarowy + + + Ksigarnia + + + Anomalia Wulkan + + + Anomalia Winorol + + diff --git a/gamedata/configs/text/pol/st_mp_mapdesc.xml b/gamedata/configs/text/pol/st_mp_mapdesc.xml new file mode 100644 index 0000000..272acf3 --- /dev/null +++ b/gamedata/configs/text/pol/st_mp_mapdesc.xml @@ -0,0 +1,126 @@ + + + + Stacja pojazdw + + + Dziwne miejsce. Ten cichy budynek z pewnoci ma swoje sekrety, ale stalkerzy odwiedzaj go z innego powodu - dziki duej iloci moliwych do znalezienia artefaktw, podjte ryzyko moe si opaca. Myl szybko i dziaaj zdecydowanie, a szczcie z pewnoci bdzie ci sprzyja. + + + Dziwne miejsce. Ten cichy budynek z pewnoci ma swoje sekrety, ale stalkerzy odwiedzaj go z innego powodu - duej iloci moliwych do znalezienia artefaktw. + + + Skad znajdujcy si przy wejciu do Zony. Znajdujce si w nim cigniki, autobusy i ciarwki nigdzie ju nie pojad Nie znaleziono tu jeszcze adnych artefaktw, ale miejsce to jest popularne wrd bandytw, ktrzy poluj na nowicjuszy dla upw. Kryj si w budynkach i za pojazdami, uwaaj te na wrogw na dachach! + + + Skad znajdujcy si przy wejciu do Zony. Znajdujce si w nim cigniki, autobusy i ciarwki nigdzie ju nie pojad + + + Opuszczony skad i przylegajcy do niego teren. Mona tu znale wyposaenie i zapasy, jeli si dobrze poszuka. Uwaaj na potne anomalie i snajperw na dachu skadu - to wietny punkt obserwacyjny, z ktrego wida kad zbliajc si osob. + + + Opuszczony skad i przylegajcy do niego teren. Uwaaj na potne anomalie i wrogich snajperw. + + + Tajemnicze i fascynujce miejsce. Basen zosta zbudowany do eksperymentw na kim lub na czym, ale nie wiadomo dokadnie, jak miay one wyglda. Nie ma tu prawie adnych artefaktw, wic jedyne, co przyciga tutaj stalkerw, to pozostaoci dziwnych linii montaowych i urzdze. Uwaaj na dachy i pamitaj o wyjtkowo wysokim poziomie promieniowania w tym rejonie. + + + Tajemnicze i fascynujce miejsce. Basen ten zosta zbudowany do eksperymentw na kim lub na czym, ale nie wiadomo dokadnie, jak miay one wyglda. + + + Ta niebezpieczna cz Mrocznej Doliny skada si z dugiej ulicy i opuszczonego instytutu. Kto wie, jaka wiedza bya w nim kiedy przekazywana? Jedyne, czego mona nauczy si tu dzisiaj, to sztuka przetrwania! Zwracaj te uwag na dachy... + + + Ta niebezpieczna cz Mrocznej Doliny skada si z dugiej ulicy i opuszczonego instytutu + + + Ta pospna, opuszczona fabryka jest miejscem spoczynku niezliczonych stalkerw. Goci oczekuje na kadym kroku chmara anomalii, co jednak nie powstrzymuje ich przed odwiedzinami - cenne artefakty stanowi prawdziwy magnes. Uwaaj na promieniowanie! + + + Ta pospna opuszczona fabryka jest miejscem spoczynku niezliczonych stalkerw. + + + Remiza straacka, ktrej caa zaoga zostaa rzucona do ratowania CEJ w 1986 roku. Wieyczka jest doskonaym punktem obserwacyjnym, pozwalajcym mie na oku blisze i dalsze otoczenie. Niewielu odwiedza grne pitra budynkw i piwnice, ale moe to i dobrze. Od jakiego czasu obecne w Zonie frakcje skacz sobie do garde, prbujc opanowa t strategiczn pozycj. + + + Remiza straacka, ktrej caa zaoga zostaa rzucona do ratowania CEJ w 1986 roku. Stanowi doskona pozycj taktyczn. + + + Cz olbrzymiego wysypiska mieci, gdzie po katastrofie w 1986 roku wyrzucono sterty odpadw radioaktywnych. Pena jest rozpadajcych si dwigw i rnego sprztu. Inne atrakcje to stare, zniszczone budynki i wielki hangar. Blisko Kordonu i do dua liczba artefaktw przyciga stalkerw dnych atwych upw. + + + Cz olbrzymiego wysypiska mieci, gdzie po katastrofie w 1986 roku wyrzucono sterty odpadw radioaktywnych. + + + Maa dzielnica tajemniczego miasta Limask - opuszczone bloki mieszkaniowe i niedokoczony budynek midzy nimi. Po znalezieniu w tym miejscu kilku kosztownych artefaktw, wieci byskawicznie rozprzestrzeniy si po caej Zonie. Otwartych zostao kilka drg do Limaska i od tego czasu strzay nie cichn. + + + Maa dzielnica tajemniczego miasta Limask - opuszczone bloki mieszkaniowe i niedokoczony budynek midzy nimi. + + + Zapomniana przez Boga i ludzi wie w gbi Zony. Mae, pytkie, rdzawe jeziorko i tuziny rozbitych pojazdw napeniaj ci podwiadomym strachem przed otaczajc rzeczywistoci. Uwaaj na snajperw, ale pamitaj: Zona sprzyja odwanym. + + + Zapomniana przez Boga i ludzi wie w gbi Zony. Mae, pytkie, rdzawe jeziorko i tuziny rozbitych pojazdw napeniaj ci podwiadomym strachem przed otaczajc rzeczywistoci. + + + Opuszczona baza wojskowa z unieruchomionymi ciarwkami i transporterami opancerzonymi oraz opuszczon kwater gwn i barakami. Jej wygld moe myli: to prawdziwa kopalnia artefaktw, co oznacza, e wrg moe czai si za kadym wgem. + + + Opuszczona baza wojskowa z unieruchomionymi ciarwkami i transporterami opancerzonymi. + + + Ta stara wie to naprawd zowieszcze miejsce. Jeli wystarczy ci odwagi, by tu przyj, przygotuj si na strza w gow na powitanie. Nie ma tu bezpiecznych miejsc, wic pamitaj o celowniku i tumiku! + + + Ta stara wie to naprawd zowieszcze miejsce. Udao ci si tu dotrze, ale nie masz czasu na odpoczynek. + + + To nie basen - raczej krwawa ania. Echa strzaw, eksplozji i wrzaskw umierajcych wypeniaj wyoone kafelkami korytarze Niewielu stalkerw wie, jak tu si dosta, a jeszcze mniej wie, jak uciec. + + + To nie basen - raczej krwawa ania. Echa strzaw, eksplozji i wrzaskw umierajcych wypeniaj wyoone kafelkami korytarze. + + + Maa stacja kolejowa w pobliu fabryki Rostok. + + + Maa stacja kolejowa w pobliu fabryki Rostok, pena zardzewiaych wagonw i lokomotyw, ktre zatrzymay si na torach. Dua ilo artefaktw przyciga odwanych stalkerw ze wszystkich zaktkw Zony. + + + Baza naprawcza w pobliu maej wsi. Wszystkie dziaajce pojazdy zostay zabrane do pomocy w zwalczaniu skutkw katastrofy w Czarnobylu. Z czasem pozostawiony sprzt zosta spldrowany w poszukiwaniu czci zamiennych. Obszar ten jest peen niebezpieczestw, takich jak zdradliwe bagna i skaone zarola, w ktrych przy odrobinie szczcia mona znale co wartociowego. + + + Baza naprawcza w pobliu maej wsi. Obszar ten jest peen niebezpieczestw, takich jak zdradliwe bagna i skaone zarola. + + + Sterty metalu rdzewiej bezczynnie za betonowymi cianami. Przed przeomem wiekw fabryka pracowaa bez przerwy przy akompaniamencie socjalistycznych sloganw pyncych z gonikw, ale zostaa opuszczona dawno temu. + + + Stara, opuszczona fabryka: sterty metalu za betonowymi cianami to wszystko, co po niej pozostao. + + + Centrum sportowe w Prypeci, zlokalizowane w pobliu opuszczonej szkoy. Praktykuje si tu dzi inny rodzaj sportu ni w 1986 roku, inni s te uczestnicy rozgrywek. Stalkerw przyciga tu wtpliwa sawa, upy i artefakty niektrzy z nich zostaj tutaj na zawsze. + + + Centrum sportowe w Prypeci, zlokalizowane w pobliu opuszczonej szkoy. + + + Bardzo dziwne miejsce. Wielu mieje si ze stalkerw, ktrzy twierdz, e je widzieli. Mimo to istnieje ono w rzeczywistoci. Anomalie grawitacyjne rozdary ziemi, tworzc kosmiczny krajobraz. Nad obszarem dominuj trzy wielkie wiee, resztki sprztu wojskowego i latajce wyspy wyrwane z ziemi. + + + Bardzo dziwne miejsce. Anomalie grawitacyjne rozdary ziemi, tworzc kosmiczny krajobraz. + + + Zanim Powinno zaja ten teren, byy to peryferia fabryki Rostok. To upiorne, ale pene artefaktw miejsce. Kady pusty hangar lub magazyn jest peen miertelnych niebezpieczestw. Zachowaj czujno i obserwuj bia wie... + + + Zanim Powinno zaja ten teren, byy to peryferia fabryki Rostok. To upiorne, ale pene artefaktw miejsce. + + + Niewielu odwaa zapuci si do opuszczonego miasta Prype, niegdy zamieszkiwanego przez pracownikw CEJ. Pomimo tego na ulicach miasta duchw niedawno rozlegy si odgosy walki, toczonej midzy kinem Prometeusz, przystani i domami na ulicy Kurczatowej. + + + W czci Prypeci midzy kinem Prometeusz, przystani i domami na ulicy Kurczatowej wybuchy zacieke walki midzy kilkoma osobami, ktre dotary do opuszczonego miasta. + + diff --git a/gamedata/configs/text/pol/st_mp_speechmenu.xml b/gamedata/configs/text/pol/st_mp_speechmenu.xml new file mode 100644 index 0000000..c77518f --- /dev/null +++ b/gamedata/configs/text/pol/st_mp_speechmenu.xml @@ -0,0 +1,57 @@ + + + + Wszyscy, do ataku! + + + Id po artefakt! Osania mnie! + + + Za mn! + + + Na razie pilnuj artefaktu. Jeszcze go nie bierz! + + + Trzymam pozycj! + + + Trzyma pozycje! + + + Bierz artefakt! Bd ci osania! + + + Potrzebuj pomocy! + + + Nie mam pienidzy - kup wicej sprztu! + + + Nie. + + + Czysto! + + + Zgo si! + + + Odwrt! + + + Odnie artefakt! + + + Rozumiem. + + + Cicho! + + + Musimy trzyma si razem. + + + Bierz artefakt! + + diff --git a/gamedata/configs/text/pol/st_mp_teamdesc.xml b/gamedata/configs/text/pol/st_mp_teamdesc.xml new file mode 100644 index 0000000..aef79a0 --- /dev/null +++ b/gamedata/configs/text/pol/st_mp_teamdesc.xml @@ -0,0 +1,15 @@ + + + + Anarchici Zony. Uznaj Zon za sanktuarium wolnoci i uwaaj, e wszelkie prawa, zasady i konwencje wiata zewntrznego nie maj tu zastosowania. Ich motto brzmi: Rb, co chcesz, i pilnuj swojego nosa. Frakcja Wolno zwalcza starania rzdu o przejcie kontroli nad Zon i prowadzi wojn z najemnikami. Jej czonkowie s zwykle wyposaeni w radzieck i rosyjsk bro. + + + Frakcja Wolno (wolni stalkerzy) + + + Grupa szukajcych przygd zbirw z caego wiata. Nie gardz najpodlejsz robot. Ich motto brzmi: Pienidze nie mierdz. Dopki ich usugi bd w cenie, nie zrezygnuj z walki o cakowit kontrol nad polami artefaktw. Najemnicy s zwykle wyposaeni w zachodni bro. + + + Frakcja Najemnicy (zbiry) + + diff --git a/gamedata/configs/text/pol/st_quests_general.xml b/gamedata/configs/text/pol/st_quests_general.xml new file mode 100644 index 0000000..1403c2a --- /dev/null +++ b/gamedata/configs/text/pol/st_quests_general.xml @@ -0,0 +1,18 @@ + + + + Uwaga! Emisja rozpocznie si za: + + + Musisz natychmiast biec do najbliszego schronienia i ukry si przed emisj. + + + Nie moesz wychodzi ze schronienia w trakcie emisji. + + + Emisja: znajd schronienie + + + Emisja: czekaj w schronieniu + + diff --git a/gamedata/configs/text/pol/st_quests_jupiter.xml b/gamedata/configs/text/pol/st_quests_jupiter.xml new file mode 100644 index 0000000..548bc94 --- /dev/null +++ b/gamedata/configs/text/pol/st_quests_jupiter.xml @@ -0,0 +1,687 @@ + + + + Dugi: zanie pienidze bandytom + + + Wano jest winien bandytom pienidze za kombinezon, ale nie moe go spaci, bo odsetki rosn zbyt szybko. Poprosi ci o rozwizanie tego problemu. + + + Dugi: wr do Wano + + + Powiedz Wano, jak posza spata jego dugu. + + + Dugi: rozpraw si z bandytami + + + Spata dugw Wano przybraa paskudny obrt. Zabij bandytw. + + + Zakadnik: odbierz nagrod od przyjaci Mitaja + + + Mitaj zosta uwolniony. Spotkaj si w barze z jego przyjacimi, aby odebra nagrod. + + + Zakadnik: uwolnij Mitaja + + + Zakadnik: powiedz Grizliemu, e jeste gotowy + + + Musisz porozmawia z Grizlim, zanim sprbujesz uwolni zakadnika. + + + Zakadnik: uwolnij Mitaja si + + + Musisz zabi bandytw, aby uwolni stalkera zwanego Mitajem. + + + Zakadnik: spotkaj si ze stalkerami + + + Stalkerzy pomog ci uwolni zakadnika. Musisz spotka si z nimi w nocy, aby wsplnie zaatakowa bandytw. + + + Zakadnik: uzgodnij zapat okupu za uwolnienie Mitaja + + + Uzgodnij z dowdc bandytw zapat okupu za uwolnienie stalkera zwanego Mitajem. + + + Uwolnij stalkera zwanego Mitajem, ktry zosta wzity na zakadnika przez bandytw. + + + Zakadnik: wyprowad Mitaja z obozu bandytw + + + Obz bandytw jest zbyt niebezpieczny, eby si po nim krci. Musisz odeskortowa Mitaja poza obz. + + + Zakadnik: porozmawiaj z Mitajem + + + Mitaj jest wzgldnie bezpieczny. Porozmawiaj z nim na temat planu dalszego dziaania. + + + Droga do Prypeci: porozmawiaj z technikiem na temat tunelu + + + Znalezione przez ciebie dokumenty jasno stwierdzaj, e pod fabryk Jupiter znajduje si podziemny tunel prowadzcy do Prypeci. W tunelu nie ma energii i jest on wypeniony gazem, a wejcie zostao zablokowane. Musisz znale technika, ktry potrafi wczy generator i otworzy luz. + + + Modu pamici jest w rkach eksperta. Musisz poczeka, a zostanie odblokowany. + + + Samolot bezzaogowy: odblokuj modu pamici + + + Samolot bezzaogowy: odbierz modu pamici od Azota + + + Samolot bezzaogowy: odbierz modu pamici od Nowikowa + + + Azot odblokowa modu pamici. Odbierz go, eby zobaczy, jakie informacje zawiera. + + + Nowikow odblokowa modu pamici. Odbierz go, eby zobaczy, jakie informacje zawiera. + + + Udao ci si ocali modu pamici z samolotu bezzaogowego. Musisz go odblokowa, eby dosta si do zawartych w nim informacji. + + + Samolot bezzaogowy: poczekaj, a modu pamici zostanie odblokowany + + + Oaza: znajd dowd + + + Oaza zostaa odnaleziona i naprawd ma lecznicze waciwoci. Musisz znale jaki dowd, eby dostarczy go naukowcom. + + + Oaza: zanie dowd naukowcom + + + Oaza zostaa odnaleziona i naprawd ma lecznicze waciwoci. Musisz zabra znaleziony tam artefakt do naukowcw jako dowd. + + + Oaza: sprawd, czy legenda jest prawdziwa + + + Oziorski, naukowiec z bunkra, poprosi ci o odnalezienie Oazy, legendarnego miejsca w Zonie. Wedug plotek, powinny si tam znajdowa jakie wody lecznicze, ale nikt tak naprawd nie wie, czy ona istnieje. + + + Kopaczi: id z Wujkiem Jarem + + + Wujek Jar potrzebuje pomocy w jakiej sprawie. Id z nim do wioski Kopaczi. + + + Kopaczi: zabij najemnikw + + + Wyglda na to, e Wujek Jar spodziewa si przybycia najemnikw. Musisz ich zabi. + + + Kopaczi: trzymaj si blisko Wujka Jara + + + Wujek Jar poprosi ci o trzymanie si blisko niego i siedzenie cicho. + + + Kopaczi: porozmawiaj z Wujkiem Jarem + + + Najemnicy nie yj. Musisz porozmawia z Wujkiem Jarem, aby wyjani, co si stao. + + + Okresowe emisje psioniczne: zabierz anormalny twr do naukowcw + + + Zgodnie z umow, zabierz znalezion prbk do Hermana. Wyglda na to, e ten przedmiot, czciowo przeksztacony przez dziaanie anomalii, jest rdem okresowych emisji psionicznych. + + + Okresowe emisje psioniczne: zbadaj rdo + + + Zbadaj tunele w poszukiwaniu jakiego tworu wykazujcego anomali. Naukowcy wierz, e okresowe pole psioniczne ma rdo, ktre prawdopodobnie przypomina artefakt. + + + Okresowe emisje psioniczne: spotkaj si z druyn Topola + + + Druyna Topola wybraa si do tunelu, w ktrym wystpuj okresowe emisje psioniczne. Musisz si tam z nimi spotka. + + + Okresowe emisje psioniczne: porozmawiaj z Topolem + + + Docz do druyny Topola idcej do tunelu, w ktrym wystpuj okresowe emisje psioniczne. Zgodnie z umow, stalkerzy bd ochrania tunel, podczas gdy ty bdziesz szuka tego, czego chc naukowcy. + + + Musisz zabra wszystkie znalezione materiay radiotechniczne do Azota. + + + Azot potrzebuje materiaw radiotechnicznych. Moesz mu da to, co ju masz, lub postara si znale co jeszcze. + + + Sprzt radiowy: znajd materiay dla Azota + + + Azot potrzebuje materiaw radiotechnicznych. Mwi, e najlepiej poszuka ich w cementowni. + + + Kradzie: dowiedz si, kto jest odpowiedzialny za kradzie + + + Popytaj stalkerw w Janowie, czy nie widzieli kogo podejrzanego, kto mgby ukra co z prywatnej skrytki. + + + Kradzie: sprawd na podstacji + + + Musisz sprawdzi podstacj, poniewa w tamt stron skierowa si podejrzany stalker, ktry moe by odpowiedzialny za kradzie. + + + Kradzie: zabierz swoje rzeczy + + + Wszystkie przedmioty, ktre ukrad Sk, powinny by w schowku w kanaach za podstacj. + + + Nietypowa rolina: zdobd prbk roliny + + + Obszar peen nietypowej rolinnoci pojawi si w pobliu krawdzi kamienioomw. Oziorski poprosi ci o przyniesienie prbki rolin do bada. + + + Nietypowa rolina: daj prbk Oziorskiemu + + + Musisz zabra prbk roliny do Oziorskiego. W zamian Oziorski przekona Hermana, eby da ci kombinezon naukowca. + + + Polowanie: zabij niezidentyfikowane mutanty + + + Grupa stalkerw napotkaa niezidentyfikowane mutanty w tunelach na pnoc od fabryki Jupiter. Zbadaj ten teren i zabij mutanty. + + + Polowanie: odbierz od Trapera nagrod za zabicie mutantw w tunelu + + + Mutanty w tunelu na pnoc od fabryki Jupiter zostay zabite. Musisz poinformowa o tym Trapera i odebra swoj nagrod. + + + Hipoteza: umie skaner w centrum osuwiska + + + Umie skaner w centrum osuwiska, aby sprawdzi hipotez Oziorskiego. + + + Hipoteza: poczekaj na zakoczenie eksperymentu + + + Skaner jest teraz aktywny i zacz rejestrowa obecno mutantw. Musisz poczeka na zebranie wystarczajcej iloci danych, by potwierdzi lub obali hipotez. + + + Hipoteza: zabierz skaner + + + Zebrano wystarczajc ilo danych, by potwierdzi hipotez Oziorskiego. Zabierz skaner. + + + Hipoteza: daj skaner Oziorskiemu + + + Musisz da skaner Oziorskiemu. Zebrane dane powinny wystarczy, by potwierdzi jego hipotez. + + + Polowanie: zabij bagienne pijawki + + + Zaobserwowano grup bagiennych pijawek na Mokradach za cementowni. Miejscowi stalkerzy poprosili ci o ich zabicie. + + + Polowanie: odbierz od Trapera nagrod za zabicie pijawek + + + Bagienne pijawki s martwe. Odbierz od Trapera nagrod zaoferowan przez miejscowych stalkerw. + + + Nocne polowanie: zabij chimer + + + Chimery s drapienikami nocnymi. Nikt nie wie, gdzie ta ma swoje dzienne legowisko. Musisz j zabi w nocy, gdy wychodzi na polowanie niedaleko kompleksu wentylacyjnego. + + + Nocne polowanie: powiedz Traperowi, e chimera zostaa zabita + + + Mordercza chimera nie yje, a owca Lis zosta pomszczony. Powiedz o tym Traperowi. + + + Narzdzia: przynie Azotowi narzdzia + + + Azot poprosi ci o zdobycie dwch zestaww narzdzi: jednego podstawowego i jednego do precyzyjnej pracy. Technik zapaci ci za narzdzia i bdzie w stanie wykona bardziej zaawansowane modyfikacje broni i pancerzy. + + + Narzdzia: przynie Azotowi narzdzia + + + Azot poprosi ci o zdobycie dwch zestaww narzdzi: jednego podstawowego i jednego do kalibracji. Technik zapaci ci za narzdzia i bdzie w stanie wykona bardziej zaawansowane modyfikacje broni i pancerzy. + + + Narzdzia: przynie Azotowi narzdzia + + + Azot poprosi ci o zdobycie zestawu narzdzi podstawowych. Technik zapaci ci za narzdzia i bdzie w stanie wykona bardziej zaawansowane modyfikacje broni i pancerzy. + + + Narzdzia: przynie Azotowi narzdzia + + + Azot poprosi ci o zdobycie dwch zestaww narzdzi: jednego do precyzyjnej pracy i jednego do kalibracji. Technik zapaci ci za narzdzia i bdzie w stanie wykona bardziej zaawansowane modyfikacje broni i pancerzy. + + + Narzdzia: przynie Azotowi narzdzia + + + Azot poprosi ci o zdobycie zestawu narzdzi do precyzyjnej pracy. Technik zapaci ci za narzdzia i bdzie w stanie wykona bardziej zaawansowane modyfikacje broni i pancerzy. + + + Narzdzia: przynie Azotowi narzdzia + + + Azot poprosi ci o zdobycie zestawu narzdzi do kalibracji. Technik zapaci ci za narzdzia i bdzie w stanie wykona bardziej zaawansowane modyfikacje broni i pancerzy. + + + Narzdzia: przynie Azotowi narzdzia + + + Azot poprosi ci o zdobycie trzech zestaww narzdzi: jednego podstawowego, jednego do precyzyjnej pracy i jednego do kalibracji. Technik zapaci ci za narzdzia i bdzie w stanie wykona bardziej zaawansowane modyfikacje broni i pancerzy. + + + Prype 1: znajd kombinezon z aparatem tlenowym o zamknitym obiegu + + + Poniewa tunel Prype 1 zosta wypeniony dwutlenkiem wgla wymieszanym z jak nieznan substancj, bdziesz potrzebowa kombinezonu z aparatem tlenowym o zamknitym obiegu. + + + Prype 1: zaprowad Wczg do Zulusa + + + Musisz zaprowadzi Wczg do Zulusa i przedstawi go jako nowego czonka druyny. Zulus moe nie by zbyt przyjazny, jeeli wojownik w mundurze Monolitu pojawi si u niego samotnie. + + + Prype 1: porozmawiaj z Wczg na temat kombinezonu ochronnego + + + Tunel Prype 1 zosta wypeniony dwutlenkiem wgla wymieszanym z jak nieznan substancj. Musisz poinformowa Wczg, e aby przez niego przej, bdzie potrzebowa kombinezonu z aparatem tlenowym o zamknitym obiegu. + + + Prype 1: zbierz ekip na wypraw do Prypeci + + + Azot mgby otworzy luz tunelu Prype 1, ale nie zgadza si pj do fabryki Jupiter bez ochrony. Zaleci te, eby zebra kilku ludzi na przepraw przez tunel. Masz ju Zulusa, ktry zasugerowa, eby nowych ludzi wysya bezporednio do niego. + + + Prype 1: porozmawiaj z Zulusem na temat wyprawy do Prypeci + + + Azot mgby otworzy luz tunelu Prype 1, ale nie zgadza si pj do fabryki Jupiter bez ochrony. Zaleci te, eby zebra kilku ludzi na przepraw przez tunel. Zasugerowa ci rozmow z Zulusem, ktry mgby pomc w sformowaniu druyny. + + + Prype 1: zaprowad Sokoowa do Zulusa + + + Sokoow zgodzi si pj do Prypeci. Mgby zabra ze sob kombinezon naukowca, gdy bdzie opuszcza bunkier. Zaprowad go do Zulusa i przedstaw jako nowego czonka druyny. + + + Prype 1: porozmawiaj z Sokoowem na temat kombinezonu ochronnego + + + Prype 1: porozmawiaj z Oziorskim na temat kombinezonu dla Sokoowa + + + Sokoow zgodzi si nosi kombinezon naukowca dla ochrony, ale Herman raczej nie da mu zabra adnego z bunkra. Porozmawiaj z Oziorskim - jest sympatyczniejszy i atwiej si z nim dogada. + + + Prype 1: powiedz Sokoowowi o kombinezonie naukowca + + + Oziorski jest bardzo zadowolony z prbki rolin. Poprosi ci o przekazanie Sokoowowi, e moe odebra kombinezon naukowca od Hermana. + + + Tunel Prype 1 zosta wypeniony dwutlenkiem wgla wymieszanym z jak nieznan substancj. Musisz poinformowa Sokoowa, e aby przez niego przej, bdzie potrzebowa kombinezonu z aparatem tlenowym o zamknitym obiegu. + + + Prype 1: zdobd dla Wano pienidze na kombinezon + + + Kombinezon, za ktry Wano by winien bandytom pienidze, mia aparat tlenowy o zamknitym obiegu. Wano musia go zastawi, eby spaci dug. Teraz potrzebuje 3000, eby go z powrotem wykupi. + + + Prype 1: zaprowad Wano do Zulusa + + + Wano jest chtny, by pj do Prypeci. Zaprowad go do Zulusa i przedstaw jako nowego czonka druyny. Wano moe po drodze wykupi swj kombinezon. + + + Prype 1: porozmawiaj z Wano na temat kombinezonu ochronnego + + + Tunel Prype 1 zosta wypeniony dwutlenkiem wgla wymieszanym z jak nieznan substancj. Musisz poinformowa Wano, e aby przez niego przej, bdzie potrzebowa kombinezonu z aparatem tlenowym o zamknitym obiegu. + + + Flint, znany te jako Sroka, to podstpny sukinsyn. Musisz go zdemaskowa przed stalkerami na Zatonie i przed innymi frakcjami. To bdzie dla niego nieza nauczka. + + + Flint wyranie si popisuje i gada o rzeczach, ktrych nawet nie widzia na oczy. Dobrze byoby ujawni jego oszustwa. + + + Faszywe zasugi: rozpraw si z Flintem + + + Flint przywaszcza sobie zasugi innych. Trzeba go nauczy, eby uwaa na to, co gada. + + + Szpanerstwo Flinta przekracza wszelkie wyobraenie - porozmawiaj z nim i wyjanij mu wszystko tak, eby zrozumia o co chodzi. + + + Flint, znany te jako Sroka, to podstpny sukinsyn. Musisz go zdemaskowa przed stalkerami na Zatonie i przed innymi frakcjami - to bdzie najlepsza zemsta. + + + Badania nad anomaliami: odbierz skanery od technika + + + Odbierz skanery od Nowikowa. Herman chce zebra dane statystyczne na temat tworzenia si artefaktw. eby mg to zrobi, trzeba umieci skanery w rodku kilku anomalii. + + + Badania nad anomaliami: umie skaner w anomalii + + + Badania nad anomaliami: odbierz swoj nagrod + + + Odbierz nagrod obiecan ci za umieszczenie skanerw w anomaliach. Teraz, gdy skanery s ju na miejscach, Herman moe zacz zbiera dane na temat tworzenia si artefaktw. + + + Umie skaner w rodku anomalii. Herman chce zebra dane statystyczne na temat tworzenia si artefaktw. eby mg to zrobi, trzeba umieci skanery w rodku kilku anomalii. + + + Kontrakt z naukowcami: przynie Garriemu artefakt zwany Kulebiakem + + + Garri potrzebuje artefaktu zwanego Kulebiakiem, aby wypeni swj kontrakt z naukowcami. Przynie mu ten artefakt. + + + Kontrakt z naukowcami: przynie Garriemu artefakt zwany Kotletem + + + Garri potrzebuje artefaktu zwanego Kotletem, aby wypeni swj kontrakt z naukowcami. Przynie mu ten artefakt. + + + Kontrakt z naukowcami: przynie Garriemu artefakty Kotlet i Kulebiak + + + Garriemu potrzebne s dwa artefakty, Kotlet i Kulebiak, aby mg wypeni swj kontrakt z naukowcami. Przynie mu te artefakty. + + + Kontrakt z naukowcami: dostarczono artefakty + + + Garri ma oba artefakty i jego kontrakt zosta wypeniony. + + + Historia Powinnoci: przeka PDA zaoyciela Powinnoci zainteresowanym + + + Udao ci si znale PDA zaoyciela Powinnoci, ktry zgin w anomalii. Zabierz go do kogo, kto byby zainteresowany ostatnimi chwilami ycia lidera frakcji. + + + Aktywno anomalii: zbadaj teren uywajc ulepszonego detektora + + + Skanery naukowcw zarejestroway nietypow aktywno na pnoc od bunkra. Zbadaj ten teren uywajc ulepszonego detektora. + + + Ochrona naukowcw: znajd wiarygodnych ludzi + + + Bunkier naukowcw jest niestrzeony. Znajd wiarygodnych ludzi do jego ochrony. + + + Ochrona naukowcw: wr do Hermana po nagrod + + + Udao ci si znale stranikw do bunkra naukowcw. Wr do Hermana po nalen ci nagrod. + + + Ostatnie zmiany: znajd dokumenty w fabryce Jupiter + + + Herman jest zainteresowany ostatnimi zmianami w fabryce Jupiter. Znajd dokumenty w czci administracyjnej zakadu. + + + Ostatnie zmiany: zanie dokumenty Hermanowi + + + Znalezione dokumenty wskazuj, e caa dokumentacja techniczna zostaa przeniesiona poza fabryk. To niewiele, ale Herman powinien si o tym dowiedzie. + + + Ostatnie zmiany: zabierz dokumenty i PDA Czarnego do Hermana + + + Podczas twojego szperania w dokumentach, najemnicy przypucili atak. Wedug PDA znalezionego przy Czarnym, ich liderze, zostali wysani, by uniemoliwi naukowcom poszukiwanie dokumentw. Znalezione dokumenty wskazuj, e caa dokumentacja techniczna zostaa przeniesiona poza fabryk. Przeka t informacj Hermanowi i poka mu PDA Czarnego. + + + Ocaleni z Monolitu: zapytaj na stacji Janw o schronienie + + + Grupa wojownikw Monolitu uwolnia si spod uroku, ktrym bya optana. Szukaj teraz schronienia przed emisj i mutantami. Musisz porozmawia z mieszkacami stacji Janw, by pozwolili druynie Monolitu ukry si na niej. + + + Zaprowad ludzi Powinnoci odpowiedzialnych za rekrutacj do byej zaogi Monolitu. Jeeli wojownicy Monolitu wstpi do Powinnoci, bd mogli schroni si na stacji Janw przed emisj i mutantami. + + + Zaprowad ludzi Wolnoci, odpowiedzialnych za rekrutacj, do byej zaogi Monolitu. Jeeli wojownicy Monolitu wstpi do Wolnoci, bd mogli schroni si na stacji Janw przed emisj i mutantami. + + + Ocaleni z Monolitu: zaprowad na miejsce odpowiedzialnych za rekrutacj + + + Badania nad anomaliami: ochraniaj stalkerw + + + Wyglda na to, e wykonywanie pomiarw w anomalii przycigno mutanty. Musisz ochrania stalkerw, dopki nie zbior wszystkich potrzebnych danych. + + + Badania nad anomaliami: ochraniaj stalkerw + + + Wyglda na to, e wykonywanie pomiarw w anomalii przycigno zombi z Kopaczi. Musisz ochrania stalkerw, dopki nie zbior wszystkich potrzebnych danych. + + + Badania nad anomaliami: porozmawiaj z Hermanem + + + Pomiary w anomalii zostay ukoczone - poinformuj o tym naukowcw i odbierz nagrod. + + + Badania nad anomaliami: porozmawiaj ze stalkerami + + + Porozmawiaj z druyn stalkerw odpowiedzialn za pomiary - musicie zdecydowa, do ktrej anomalii si wybierzecie. + + + Badania nad anomaliami: porozmawiaj ze stalkerami + + + Wszystkie potrzebne pomiary zostay wykonane, moesz wic razem z druyn wrci do bunkra naukowcw. + + + Badania nad anomaliami: porozmawiaj ze stalkerami + + + Pomiary w anomalii zostay wykonane. Porozmawiaj z druyn, dokd si teraz wybierzecie. + + + Badania nad anomaliami: ochraniaj stalkerw + + + Herman zaoferowa ci prac, polegajc na ochronie stalkerw, gdy ci bd wykonywa pomiary w anomaliach. + + + Ogocza 4: zbadaj miejsce katastrofy + + + Ogocza 4: znajd przyczyn spalenia si elektroniki + + + Zbadaj miejsce katastrofy Ogoczy 4. + + + Musisz znale rdo silnego wyadowania elektrycznego, ktre uderzyo w migowiec Ogocza 4. + + + Ogocza 1: daj technikowi czarn skrzynk do odszyfrowania + + + Czarna skrzynka z Ogoczy 1 przetrwaa katastrof. Musi zosta zabrana do technika, ktry j zdeszyfruje, aby dosta si do zawartych w niej informacji. + + + Ogocza 1: poczekaj na odszyfrowanie danych z czarnej skrzynki + + + Azot zgodzi si zdeszyfrowa czarn skrzynk. Powiedzia, e zajmie to okoo trzech godzin. Musisz poczeka, a skoczy. + + + Ogocza 1: wr do Azota po informacje z czarnej skrzynki + + + Azot powinien ju skoczy deszyfracj. Spotkaj si z nim, aby otrzyma informacje z czarnej skrzynki. + + + Ogocza 1: zbadaj miejsce katastrofy + + + Zbadaj miejsce katastrofy Ogoczy 1. + + + Prype 1: dosta si do Prypeci + + + Musisz przej tunelem Prype 1 i dotrze do wojskowego punktu ewakuacyjnego w Prypeci. + + + Droga do Prypeci: zbadaj pracowni chemiczn w fabryce Jupiter + + + W pracowni chemicznej powinny znajdowa si informacje na temat wypenienia tunelu Prype 1 jakim rodzajem gazu. + + + Droga do Prypeci: zbadaj cz administracyjn fabryki Jupiter + + + Przewodnik nie zna bezpiecznej drogi do Prypeci, ale zasugerowa ci, gdzie moesz znale informacje na temat podziemnych tuneli prowadzcych z fabryki Jupiter do miasta. Zacznij od czci administracyjnej. + + + Droga do Prypeci: zbadaj cz laboratoryjn fabryki Jupiter + + + Dokumenty znalezione w czci administracyjnej wspominaj o przeniesieniu kompleksu produkcyjnego poza fabryk. Informacje dotyczce tej kwestii powinny znajdowa si w czci laboratoryjnej. + + + Droga do Prypeci: sprawd luz transportow tunelu Prype 1 + + + Wejcie do tunelu znajduje si za luz transportow. Zbadaj ten teren w poszukiwaniu jakichkolwiek informacji na temat tunelu. + + + Droga do Prypeci: zbadaj Departament 1 fabryki Jupiter + + + Informacje na temat tunelu Prype 1 powinny znajdowa si w Departamencie 1. Mog by one bardzo przydatne, wic sprbuj tam poszuka. + + + Droga do Prypeci: zbadaj dzia dostaw fabryki Jupiter + + + Wnioskujc z notatki w laboratorium, przeniesienie miao zosta przeprowadzone przez dzia dostaw, wic sprawd rwnie tam. + + + Droga do Prypeci: zbadaj warsztat naprawczy fabryki Jupiter + + + W dziale dostaw znajdoway si informacje na temat strat podczas transportu czego, co nazywano obiektem 62. Wedug dokumentacji, za t kwesti by odpowiedzialny warsztat naprawczy - sprawd tam. + + + Droga do Prypeci: porozmawiaj z przewodnikiem + + + Z nagrania z czarnej skrzynki jednego ze migowcw wynika, e jednostki wojskowe miay zgrupowa si w punkcie ewakuacyjnym B28. Wedug map znalezionych w innym migowcu biorcym udzia w misji, miejsce to znajduje si w Prypeci. Musisz znale sposb, by si tam dosta - porozmawiaj o tym z przewodnikiem. + + + Magazyn Powinnoci: zabierz, co ci si naley + + + Magazyn Powinnoci: spotkaj si z Morganem + + + Handlarz Morgan zaoferowa ci dostp do magazynu Powinnoci w zamian za milczenie na temat jego interesu. Zgodnie z umow, masz si z nim spotka niedaleko kamienioomw. + + + Musisz otworzy bram, aby przej dalej. + + + Musisz otworzy drzwi, aby przej dalej. + + + Musisz aktywowa zasilanie w bramie, aby przej dalej. + + + Musisz odblokowa bram, aby przej dalej. Prawdopodobnie mona to zrobi w sterowni. + + + Grupa badawcza: wynajmij odpowiednich ludzi + + + Czonkowie grupy badawczej pracujcej dla naukowcw zginli. Musisz zatrudni nowych ludzi, aby kontynuowa badania. + + + Grupa badawcza: wr do Hermana po nagrod + + + Udao ci si znale odpowiednich ludzi do nowej grupy badawczej. Moesz wrci do Hermana, aby odebra nagrod. + + + Prype 1: wypenij misj Oziorskiego + + + Musisz wypeni misj Oziorskiego dotyczc nietypowej roliny, aby zdoby kombinezon ochronny dla Sokoowa. + + + Azot potrzebuje materiaw radiotechnicznych. Musisz je znale w cementowni. + + + To Flint pozwoli Drzazdze zgin w anomalii. Porozmawiaj z nim i dowiedz si, dlaczego to zrobi. + + + Zemsta: pomcij Drzazg + + + Dowiedz si, kto porzuci Drzazg na mier w anomalii, zabra artefakt i odszed. Niestety, Drzazga nie zdoa powiedzie, kto to by. Wiadomo tylko, e jest czonkiem Wolnoci. + + + Podpukownik Szulga pozwoli ci zabra z magazynu Powinnoci co tylko chcesz, o ile zdoasz go odbi od oddziau Wolnoci. + + + Loki pozwoli ci bra z magazynu Powinnoci co tylko chcesz, dopki jest on w posiadaniu wojownikw Wolnoci. + + diff --git a/gamedata/configs/text/pol/st_quests_pripyat.xml b/gamedata/configs/text/pol/st_quests_pripyat.xml new file mode 100644 index 0000000..112bbae --- /dev/null +++ b/gamedata/configs/text/pol/st_quests_pripyat.xml @@ -0,0 +1,345 @@ + + + + Przedmiot 62: znajd dokumenty w warsztacie testowym + + + Musisz znale dokumenty dotyczce przedmiotu 62. Wyjani one, czy bro ta moga zosta uyta do zestrzelenia helikopterw. + + + Niezidentyfikowana bro: ukryj si w budynku + + + Musisz ukry si w budynku i odeprze atak Monolitu. + + + Niezidentyfikowana bro: znajd informacje + + + Bro jest niesprawna i nie wiadomo, w jaki sposb dziaa. Musisz znale technika, ktry zrozumie sposb jej dziaania. + + + Niezidentyfikowana bro: zabij dowdc druyny Monolitu + + + Musisz zabi dowdc druyny Monolitu - to bojownik uywajcy niezidentyfikowanej broni. + + + Niezidentyfikowana bro: przeszukaj zabitych bojownikw Monolitu + + + Bojownicy Monolitu powinni mie niezidentyfikowan bro przy sobie - znajd j. + + + Niezidentyfikowana bro: porozmawiaj z Kardanem + + + Kardan pewnie ju odchorowa kaca - czas porozmawia z nim o niezidentyfikowanej broni. + + + Niezidentyfikowana bro: poczekaj, a Kardan odzyska przytomno + + + Kardan powinien wiedzie co o broni - musisz z nim porozmawia, kiedy si obudzi. + + + Karabin Gaussa: powiedz Kowalskiemu o broni + + + Musisz przekaza Kowalskiemu wszystko, co wiesz o przedmiocie 62. + + + Niezidentyfikowana bro: docz do oddziau + + + Musisz doczy do oddziau szturmowego w celu zdobycia broni. + + + Niezidentyfikowana bro: podnie bro + + + Musisz podnie bro dowdcy druyny Monolitu. + + + Niezidentyfikowana bro: zabierz bro do Kowalskiego + + + Masz bro - teraz musisz zabra j do Kowalskiego i dowiedzie si, czy to ona zestrzelia helikoptery. + + + Niezidentyfikowana bro: we udzia w zasadzce na bojownikw Monolitu + + + Wojskowy oddzia zwiadowczy przygotowuje zasadzk na druyn Monolitu. + + + Siy Monolitu: spotkaj si ze wsparciem + + + Kowalski przysa wsparcie, ktre pomoe ci wyeliminowa druyn Monolitu zabarykadowan w ksigarni. + + + Siy Monolitu: pozbd si bojownikw z ksigarni + + + Musisz wyeliminowa siy Monolitu w budynku. Due oddziay Monolitu s zagroeniem dla obozu wojskowego. + + + Siy Monolitu: zbadaj dziwn konstrukcj + + + W budynku znajdowao si dziwne urzdzenie. Dowiedz si o nim czego wicej. + + + Laboratorium X8: znajd dokumenty dotyczce eksperymentw + + + Informacje przez ciebie znalezione odnosz si do centralnego laboratorium oznaczonego jako X8. Moe ono zawiera dane na temat tajnych eksperymentw przeprowadzanych w Zonie. + + + Zaginiony oddzia zwiadowczy: znajd druyn + + + Oddzia zwiadowczy wysany przez Kowalskiego znikn po nadaniu dziwnego komunikatu. Musisz odkry, co si stao. + + + Zaginiony wartownik: zbadaj miejsce, w ktrym zgin wartownik + + + Wartownik zachowywa si bardzo dziwnie, wic musisz odkry przyczyny. + + + Zaginiony wartownik: znajd wartownika + + + Jeden z onierzy zagin z posterunku - musisz go odnale i odkry przyczyny jego zniknicia. + + + Zaginiony wartownik: zabij kontrolera + + + W pobliu zaginionego wartownika znajdowa si kontroler - musi on zosta wyeliminowany. + + + Zakcenia radiowe: znajd zaginiony oddzia + + + Oddzia szukajcy rda zakce radiowych zagin. Twoim zadaniem jest jego odnalezienie. + + + Zakcenia radiowe: przeszukaj ciaa + + + Przeszukaj ciaa - moe to pomc w ustaleniu przyczyny zgonu. + + + Zakcenia radiowe: przeszukaj ciao + + + Przeszukaj ciao - moe to pomc w ustaleniu przyczyny zgonu. + + + Zakcenia radiowe: wysad drzwi + + + Musisz wysadzi drzwi uywajc materiaw wybuchowych, aby dosta si do budynku. + + + Zakcenia radiowe: zbadaj rdo dwiku + + + Z lodwki dochodzi haas - brzmi, jakby kto by w niej zamknity. Zbadaj to. + + + Zakcenia radiowe: usu rdo zakce + + + Wiesz ju, gdzie znajduje si rdo zakce radiowych - teraz musisz je zniszczy. + + + Zakcenia radiowe: znajd rdo zakce + + + W budynku znajduje si rdo zakce radiowych - znajd je. + + + Zakcenia radiowe: znajd materiay wybuchowe + + + Druyna szukajca rda zakce radiowych miaa przy sobie materiay wybuchowe. Musisz je znale, aby dosta si do budynku. + + + Zakcenia radiowe: dosta si do budynku przedszkola + + + rdo sygnau znajduje si gdzie w budynku przedszkola, tak wic musisz dosta si do rodka. + + + Ewakuacja: osaniaj onierzy + + + Strieok moe i jest martwy, ale ty nadal musisz doprowadzi onierzy do helikopterw. + + + Ewakuacja: osaniaj Strieoka + + + Kwatera gwna jest zainteresowana informacjami, ktre posiada Strieok. Musisz doprowadzi go do helikopterw. + + + Ewakuacja: dosta si do helikopterw + + + Wszyscy zginli - musisz sam dosta si do helikopterw. + + + Ewakuacja: porozmawiaj z Kowalskim + + + Musisz porozmawia z Kowalskim przed rozpoczciem ewakuacji. + + + Ewakuacja: poinformuj Kowalskiego o swojej gotowoci + + + Musisz poinformowa Kowalskiego o swojej gotowoci do rozpoczcia ewakuacji. + + + Ewakuacja: zaczekaj, a emisja si zakoczy + + + Musisz poczeka, a emisja si zakoczy. + + + Nieznany: zbadaj rdo sygnau + + + Kiryow wykry dziwny sygna niedaleko bazy. Musisz zbada jego rdo. + + + Nieznany: podaj za sygnaem + + + Wsprzdne sygnau s znowu dostpne, wic podaj za nimi. + + + Nieznany: zbadaj ostatni znan lokacj sygnau + + + Sygna ucich na dziedzicu budynku, tak wic zbadaj jego ostatni znan lokalizacj. + + + Nieznany: przygotuj si na atak na baz + + + Wr do bazy wojskowej i przygotuj si na prawdopodobny atak. + + + Zakcenia radiowe: porozmawiaj z Kowalskim + + + Pukownik Kowalski pyta o ciebie. + + + Laboratorium X8: dosta si do szybu windy + + + Do wejcia do podziemnego laboratorium pod centrum usugowym Jubilejny mona dosta si tylko przez szyb windy. + + + Laboratorium X8: znajd generator + + + Zasilanie drzwi szybu windy zostao odcite. Aby je przywrci, musisz znale generator awaryjny. + + + Laboratorium X8: zejd do laboratorium + + + Musisz uy windy, aby dosta si do laboratorium X8, znajdujcego si pod centrum usugowym Jubilejny. + + + Jeden strza: wyeliminuj posaca + + + Musisz wyeliminowa posaca. Bez niego najemnicy nie bd w stanie odnale laboratorium. + + + Jeden strza: poczekaj na ludzi klienta + + + Poczekaj na ludzi klienta i zabij ich dowdc. Bez niego najemnicy nie bd w stanie odnale laboratorium. + + + Jeden strza: zabij dowdc druyny najemnikw + + + Musisz zabi dowdc druyny najemnikw. Bez niego bd zdezorganizowani i niegroni. + + + Jeden strza: poczekaj, a pojawi si najemnicy + + + Musisz poczeka, a pojawi si najemnicy i zabij ich dowdc. Bez niego bd zdezorganizowani i niegroni. + + + Jeden strza: porozmawiaj z Kowalskim + + + Z raport o wynikach misji Kowalskiemu. + + + Laboratorium X8: opu podziemny kompleks lub dalej szukaj dokumentw + + + Udao ci si znale dokumenty. Moesz teraz opuci laboratorium, ale moliwe jest, e w kompleksie znajduj si jeszcze inne wartociowe informacje. + + + Laboratorium X8: opu podziemny kompleks lub dalej szukaj dokumentw + + + Udao ci si znale dokumenty. Moesz teraz opuci laboratorium, ale moliwe jest, e w kompleksie znajduj si jeszcze inne wartociowe informacje. + + + Laboratorium X8: opu podziemny kompleks + + + Wyglda na to, e udao ci si znale wszystkie dokumenty znajdujce si w laboratorium. Moesz teraz opuci podziemny kompleks. + + + Siy monolitu: poczekaj na posiki + + + Musisz poczeka na posiki wysane przez Kowalskiego, aby wyeliminowa siy Monolitu w ksigarni. + + + Cicha rozmowa: porozmawiaj z Kowalskim + + + Musisz porozmawia z Kowalskim. Wyglda na to, e ma co wanego do powiedzenia. + + + Ewakuacja: utrzymaj si przy helikopterach + + + Musisz osania helikoptery do chwili ich startu. + + + Ewakuacja: ocu medyka + + + Medyk zosta poraony przez nieznan si. Musisz jak najszybciej przywrci go do przytomnoci. + + + Ewakuacja: wr do helikopterw + + + Musisz wrci do helikopterw, poniewa mog one wkrtce wystartowa. + + + Ewakuacja: jak najszybciej wr do helikopterw + + + Helikoptery s gotowe do startu. Musisz natychmiast wej na pokad jednego z nich - piloci nie mog dugo czeka. + + diff --git a/gamedata/configs/text/pol/st_quests_zaton.xml b/gamedata/configs/text/pol/st_quests_zaton.xml new file mode 100644 index 0000000..cac93e3 --- /dev/null +++ b/gamedata/configs/text/pol/st_quests_zaton.xml @@ -0,0 +1,780 @@ + + + + Bezpieczne miejsce: dosta si do Skadowska + + + Jedynymi wzgldnie bezpiecznymi miejscami w Zonie s due obozy. Najbliszym z nich jest Skadowsk - tam wanie musisz si skierowa. + + + Mapy terenu: znajd kogo, kto interesuje si mapami + + + Mapy terenu: zaoferuj mapy Pilotowi + + + Moliwe, e Pilot, miejscowy przewodnik, bdzie zainteresowany mapami terenu pomidzy Zatonem i Jupiterem. + + + Ogocza 2: zbadaj miejsce katastrofy + + + Zbadaj miejsce katastrofy Ogoczy 2. + + + Ogocza 5: zbadaj miejsce katastrofy + + + Ogocza 5: znajd przyczyn spalenia si elektroniki + + + Oddzia Ogoczy: znajd rdo wyadowa, ktre uderzyy w dwa migowce + + + Zbadaj miejsce katastrofy Ogoczy 5. + + + Musisz znale rdo silnego wyadowania elektrycznego, ktre uderzyo w migowiec Ogocza 5. + + + Musisz znale przyczyn spalenia si elektroniki w Ogoczach 4 i 5. Wyglda na to, e zostay trafione przez silne wyadowania elektryczne. + + + ywno: zdobd jedzenie dla najemnikw + + + Oddzia najemnikw z warsztatw podstacji poprosi ci o przyniesienie szeciu puszek misa, kawakw kiebasy lub chleba. + + + ywno: zanie jedzenie najemnikom + + + Musisz zanie zgromadzone jedzenie najemnikom w warsztatach podstacji. + + + Narzdzia: zbadaj warsztaty podstacji + + + Mwi, e w warsztatach podstacji mog znajdowa si narzdzia. Moe nawet znajdziesz te, ktrych szuka technik. + + + Polowanie na chimer: znajd mutanta, dopki pi + + + Musisz znale chimer, zanim si obudzi. + + + W poszukiwaniu Sroki: poinformuj Gont + + + Wyglda na to, e Sroka, stalker, ktry wystawi druyn Gonty, zosta odnaleziony. Doczy do Wolnoci i teraz zwie si Flintem. + + + Polowanie na chimer: zabij mutanta + + + Chimera nie pi. Musisz j zabi, zanim bdzie za pno. + + + Polowanie na chimer: spotkaj si z Gont w barze o 3 rano + + + Musisz spotka si z Gont przed witem, aby doczy do jego druyny podczas polowania na chimer. + + + Polowanie na chimer: poinformuj Trapera + + + Poinformuj stalkera zwanego Traperem, e polowanie na chimer zakoczyo si sukcesem. Powinien da ci nagrod. + + + W poszukiwaniu Sroki: znajd stalkera + + + Stalker zwany Srok wystawi ludzi Gonty na atak chimery. Poprosili ci o znalezienie tego gnojka. + + + Miejsca ewakuacji: zbadaj punkt B205 + + + Mapa znaleziona w jednym ze migowcw wskazywaa miejsca ewakuacji. Sprawd, czy onierze pojawili si w punkcie B205. + + + Miejsca ewakuacji: zbadaj punkt B28 + + + Mapa znaleziona w jednym ze migowcw wskazywaa miejsca ewakuacji. Sprawd, czy onierze pojawili si w punkcie B28 + + + Miejsce ewakuacji: znajd wsprzdne punktu B28 + + + W czarnej skrzynce jednego ze migowcw Ogocza znajdowao si nagranie, w ktrym dowdca oddziau wyznaczy miejsce zbirki. Jest nim punkt ewakuacyjny B28. Musisz okreli jego wsprzdne. + + + Miejsce ewakuacji: znajd punkt B28 + + + Miejsce zbirki onierzy znajduje si w Prypeci. Znajd sposb, by si tam dosta. + + + Miejsca ewakuacji: zbadaj punkt B2 + + + Mapa znaleziona w jednym ze migowcw wskazywaa miejsca ewakuacji. Sprawd, czy onierze pojawili si w punkcie B2. + + + Dziwne zjawisko: zanie artefakt Brodaczowi + + + rdem dziwnego blasku by rwnie dziwny artefakt. Na pewno zainteresuje on Brodacza. + + + Dziwne zjawisko: popytaj stalkerw o artefakt + + + Stalkerzy mog wiedzie co na temat dziwnego artefaktu lub poleci kogo, kto co wie. Porozmawiaj z nimi. + + + Dziwne zjawisko: znajd rdo blasku w pogbiarce + + + Zauwaono dziwny blask w pogbiarce. Brodacz poprosi ci o znalezienie jego rda. + + + Dziwne zjawisko: zabierz artefakt + + + rdem dziwnego blasku by rwnie dziwny artefakt. Zabierz go ze sob. + + + Dziwne zjawisko: powiedz Brodaczowi o artefakcie + + + rdem dziwnego blasku by rwnie dziwny artefakt. Mimo e nie masz artefaktu, powiedz o nim Brodaczowi. + + + cieka na paskowy: wskocz do anomalii + + + Wyglda na to, e droga na paskowy prowadzi przez anomali. Musisz w ni wskoczy. + + + cieka na paskowy: znajd sekretn ciek Noego + + + W PDA Noego bya wzmianka o jego wasnej sekretnej ciece" na paskowy. Musisz j znale. + + + cieka na paskowy: dowiedz si od Noego, jak si tam dosta + + + Mwi, e stalker znany jako Noe zna ciek na paskowy. Musisz si dowiedzie, jak si tam dosta. + + + Zaginieni stalkerzy: przynie dowd udziau Wstrzsa + + + Musisz zabra PDA z nagraniami Wstrzsa do Skadowska i pokaza je Brodaczowi. Nagrania dowodz, e medyk by odpowiedzialny za zniknicia stalkerw. + + + Zaginieni stalkerzy: znajd dowd udziau Wstrzsa + + + Musisz sprawdzi, czy Wstrzs pozostawi jakiekolwiek dowody swojego udziau w znikniciach stalkerw. + + + Ogocza 3: zbadaj miejsce katastrofy + + + Zbadaj miejsce katastrofy Ogoczy 3. + + + Musisz przynie Brodaczowi artefakt, ale nie masz ju forw. Twoi konkurenci te zaczli go szuka. + + + Musisz przynie Brodaczowi artefakt. Pamitaj: twoi konkurenci te go szukaj. + + + Musisz przynie Brodaczowi artefakt, ale wedug doniesie, inna grupa ju go znalaza. Sprbuj namierzy sygna i wykona zadanie, zanim zrobi to twoi konkurenci. + + + Musisz przynie Brodaczowi artefakt, ale inny grupa ju to zrobia. Teraz dostaniesz za niego tylko poow zapaty. + + + Musisz przynie Brodaczowi artefakt. + + + Zamwienie na artefakt: przynie Grawi + + + Zamwienie na artefakt: przynie Oko + + + Zamwienie na artefakt: przynie Bbel + + + Zamwienie na artefakt: przynie Muszl + + + Zamwienie na artefakt: przynie Zot rybk + + + Zamwienie na artefakt: przynie Pomie + + + Zamwienie na artefakt: przynie wietlika + + + Zamwienie na artefakt: przynie nieynk + + + Musisz znale artefakt dla Brodacza, ale nie masz ju forw. Twoi konkurenci te zaczli go szuka. + + + Musisz znale artefakt dla Brodacza. Pamitaj: twoi konkurenci te go szukaj. + + + Musisz znale artefakt dla Brodacza, ale wedug doniesie, inna grupa ju go znalaza. Sprbuj namierzy sygna i wykona zadanie, zanim zrobi to twoi konkurenci. + + + Musisz znale artefakt dla Brodacza, ale inna grupa ju wypenia polecenie. Teraz dostaniesz za niego tylko poow zapaty. + + + Musisz znale artefakt dla Brodacza. + + + Zamwienie na artefakt: znajd Grawi + + + Zamwienie na artefakt: znajd Oko + + + Zamwienie na artefakt: znajd Bbel + + + Zamwienie na artefakt: znajd Muszl + + + Zamwienie na artefakt: znajd Zot rybk + + + Zamwienie na artefakt: znajd Pomie + + + Zamwienie na artefakt: znajd wietlika + + + Zamwienie na artefakt: znajd nieynk + + + Kompas: znajd Noego i dowiedz si, gdzie moesz zdoby ten rzadki artefakt + + + Musisz znale Noego na starej barce i dowiedzie si, gdzie moesz zdoby rzadki artefakt - Kompas. Brodacz szuka tego artefaktu od dugiego czasu i jest w stanie duo za niego zapaci. + + + Kompas: zanie artefakt Brodaczowi + + + Kompas: dowiedz si od Noego, gdzie moesz zdoby ten rzadki artefakt + + + Sutan chce przechwyci artefakt, ktrego szuka Brodacz. Musisz znale Noego na starej barce i dowiedzie si, gdzie moesz zdoby ten artefakt. + + + Kompas: zanie artefakt Sutanowi + + + Artefakt, ktry da Ci Noe, to Kompas poszukiwany przez Sutana. + + + Ciemne interesy: odbierz swoj dol od Brodacza + + + Odbierz od Brodacza swoj dol z jego wynagrodzenia. + + + Kuszcy interes: porozmawiaj z Sutanem + + + Handlarz Sowa uwaa, e Brodacz nie wywizuje si z umowy i sugeruje, by zgosi si po pomoc do Sutana, bossa miejscowej mafii. + + + Ciemne interesy: zabierz stalkerom detektory + + + Musisz zrobi co w twojej mocy, by zabra prototypy detektorw stalkerom szukajcym artefaktw dla Brodacza. Jeli nie bdzie mia detektorw, bdzie musia przysta na warunki Sutana. + + + Ciemne interesy: porozmawiaj z Sutanem + + + Brodacz nie ma detektorw, wic trzeba porozmawia z Sutanem, by dowiedzie si, czy rozwiza problem z jego pozostaymi dostawcami. + + + Ciemne interesy: zmu Brodacza, by pracowa dla Sutana + + + Teraz, gdy Brodacz nie ma dostawcw i detektorw, nie moe nic zrobi na wasn rk - zmu go, by pracowa dla Sutana. + + + Ciemne interesy: zdobd informacje o aktualnych interesach Brodacza + + + Musisz dowiedzie si, w jakie interesy jest w tej chwili zaangaowany Brodacz. Pomoe to odci jego rda zaopatrzenia. + + + Ciemne interesy: zabierz stalkerom drugi detektor + + + Musisz zrobi co w twojej mocy, by zabra prototypy detektorw stalkerom szukajcym artefaktw dla Brodacza. Jeli nie bdzie mia detektorw, bdzie musia przysta na warunki Sutana. + + + Kuszcy interes: przynie Nowikowowi trzy detektory Weles + + + Handlarz Sowa zaoferowa ci udzia w zyskownym przedsiwziciu. Twoim zadaniem jest odnalezienie trzech detektorw Weles i zaniesienie ich Nowikowowi do bunkra naukowcw. + + + Kuszcy interes: poczekaj, a Sowa dostanie detektory + + + Nowikow przyj detektory i obieca osobicie odesa je Sowie. Musisz poczeka, a skoczy prac z detektorami i dowiedzie si o wynikach od Sowy. + + + Kuszcy interes: porozmawiaj z Sow + + + Handlarz Sowa skontaktowa si z tob przez radio, by powiedzie ci, e ma problemy i e chce si z tob zobaczy. + + + Kuszcy interes: przekonaj Brodacza, by wywiza si z umowy + + + Handlarz Sowa uwaa, e Brodacz nie wywizuje si z umowy. Musisz z nim porozmawia i przekona go, by przesta ama jej warunki. + + + Kuszcy interes: zadaj swojej doli od Sowy + + + Brodacz uwaa, e nic nie jest Sowie winien - musisz dowiedzie si, kto ma racj, i zada zapaty od tej osoby. + + + Sk poprosi ci o przyniesienie jego pudeka. Ukry je w starym samochodzie Zaporoec, ktry wpad do rozpadliny po trzsieniu ziemi. Sk boi si pj tam samemu, bo roi si tam od snorkw. + + + Masz pudeko Ska. Zanie je do waciciela, by sprawiedliwie podzieli si jego zawartoci. + + + Legowisko pijawek: powiadom stalkerw + + + Musisz poinformowa stalkerw o legowisku pijawek pod stacj antenow Krug. + + + Legowisko pijawek: powiadom Brodacza + + + Musisz powiadomi Brodacza o legowisku pijawek znalezionym pod stacj antenow Krug, eby mg zdecydowa, w jaki sposb chroni stalkerw. + + + Zaginieni stalkerzy: podaj za Guszcem + + + Guszec poprosi ci o zbadanie razem z nim opuszczonego budynku stacji antenowej. Dostrzeg pijawki i chce sprawdzi, czy znajduje si tam owca. + + + Zaginieni stalkerzy: dowiedz si co si stao + + + Wyglda na to, e Wstrzs nie jest takim niewinitkiem, jak si wydawao. Musisz odkry, co si stao. + + + Zaginieni stalkerzy: znajd Guszca + + + Z jakiego powodu Guszec uda si w stron dwigw portowych - moe dowiedzia si czego o zaginionych stalkerach. Poszukaj go tam. + + + Zaginieni stalkerzy: dowiedz si, gdzie jest Guszec + + + Guszca nie ma tam, gdzie normalnie bywa. Zapytaj Brodacza, dokd poszed. + + + Zaginieni stalkerzy: znajd zaginionego owc + + + Guszec poprosi ci o pomoc w poszukiwaniach zaginionego owcy. Mia on odnale legowisko pijawek. Wedug aktualnych informacji, to pijawki s odpowiedzialne za ostatnie zniknicia stalkerw. + + + Zaginieni stalkerzy: wydosta si z legowiska pijawek + + + Udao ci si odkry legowisko pijawek w piwnicach. Znajduj si one w jakim stanie odrtwienia. Musisz si std wydosta, zachowujc cisz. + + + Zaginieni stalkerzy: spotkaj si z Guszcem + + + Prawdopodobnie naley teraz porozmawia z Guszcem na temat poszukiwania zaginionego owcy. + + + Zaginieni stalkerzy: spotkaj si pniej z Guszcem + + + W budynku stacji antenowej nie byo ladu po owcy Danile. Jednak Guszec wydawa si zakopotany tym, co udao ci si tam znale. Poprosi ci o spotkanie si z nim pniej, aby bardziej szczegowo omwi t kwesti. + + + Zaginieni stalkerzy: spotkaj si z Guszcem + + + W miejscu, ktre wskaza Guszec, bya martwa pijawka i adnych ladw owcy Daniy. Wydaje si jednak, e Guszec znalaz co interesujcego i prosi ci o towarzyszenie mu. + + + Jak si okazao, pijawki nie miay nic wsplnego ze znikniciami stalkerw - to bya sprawka Wstrzsa, skadowskiego medyka. + + + Narzdzia: przynie Kardanowi narzdzia + + + Kardan poprosi ci o zdobycie dwch zestaww narzdzi: jednego podstawowego i jednego do precyzyjnej pracy. Technik zapaci ci za narzdzia i bdzie w stanie wykona bardziej zaawansowane modyfikacje broni i pancerzy. + + + Narzdzia: przynie Kardanowi narzdzia + + + Kardan poprosi ci o zdobycie dwch zestaww narzdzi: jednego podstawowego i jednego do kalibracji. Technik zapaci ci za narzdzia i bdzie w stanie wykona bardziej zaawansowane modyfikacje broni i pancerzy. + + + Narzdzia: przynie Kardanowi narzdzia + + + Kardan poprosi ci o zdobycie zestawu narzdzi podstawowych. Technik zapaci ci za narzdzia i bdzie w stanie wykona bardziej zaawansowane modyfikacje broni i pancerzy. + + + Narzdzia: przynie Kardanowi narzdzia + + + Kardan poprosi ci o zdobycie dwch zestaww narzdzi: jednego do precyzyjnej pracy i jednego do kalibracji. Technik zapaci ci za narzdzia i bdzie w stanie wykona bardziej zaawansowane modyfikacje broni i pancerzy. + + + Narzdzia: przynie Kardanowi narzdzia + + + Kardan poprosi ci o zdobycie zestawu narzdzi do precyzyjnej pracy. Technik zapaci ci za narzdzia i bdzie w stanie wykona bardziej zaawansowane modyfikacje broni i pancerzy. + + + Narzdzia: przynie Kardanowi narzdzia + + + Kardan poprosi ci o zdobycie zestawu narzdzi do kalibracji. Technik zapaci ci za narzdzia i bdzie w stanie wykona bardziej zaawansowane modyfikacje broni i pancerzy. + + + Narzdzia: przynie Kardanowi narzdzia + + + Kardan poprosi ci o zdobycie trzech zestaww narzdzi: jednego podstawowego, jednego do precyzyjnej pracy i jednego do kalibracji. Technik zapaci ci za narzdzia i bdzie w stanie wykona bardziej zaawansowane modyfikacje broni i pancerzy. + + + Obz najemnikw: wynie wszystkie informacje, jakie uda ci si znale + + + Handlarz Sowa obieca przyzwoit zapat za jakiekolwiek informacje z obozu najemnikw w zakadzie utylizacji opadw. Interesuj go plany najemnikw. + + + Obz najemnikw: wynie wszystkie informacje, jakie uda ci si znale + + + Handlarz Sowa obieca przyzwoit zapat za jakiekolwiek informacje z obozu najemnikw w zakadzie utylizacji opadw. Interesuj go plany najemnikw. + + + Trzej towarzysze: dowiedz si czego o losie Stoga + + + Kardan poprosi ci o przekazanie przeprosin swojemu towarzyszowi, stalkerowi znanemu jako Stg. Pokcili si i Stg odszed w nieznanym kierunku. + + + Trzej towarzysze: dowiedz si czego o losach Stoga i Kawalarza + + + Kardan poprosi ci o przekazanie przeprosin swoim towarzyszom, stalkerom znanym jako Stg i Kawalarz. Pokcili si i jego towarzysze odeszli w nieznanym kierunku. + + + Trzej towarzysze: dowiedz si czego o losie Kawalarza + + + Kardan poprosi ci o przekazanie przeprosin swojemu towarzyszowi, stalkerowi znanemu jako Kawalarz. Pokcili si i Kawalarz odszed w nieznanym kierunku. + + + Specjalne zamwienie: odbierz towar + + + Towar zosta dostarczony - czas odebra go od wawego. + + + Specjalne zamwienie: poczekaj na dostaw + + + Zamwienie zostao zoone, teraz musisz poczeka, a wawy dostanie towar. + + + Reputacja: znajd Ska + + + Musisz znale Ska i zmusi go, eby trzyma gb na kdk. wawy nigdy nie handlowa kradzionym towarem, podczas gdy Sk wydaje si by z zasady nieuczciwy. Ostatnio widziano go przy dwigach portowych. Moe wci tam jest. + + + Musisz znale Ska i zmusi go, eby trzyma gb na kdk. Ska nie ma przy dwigach portowych, ale bandyci mog wiedzie, gdzie go znale. + + + Musisz znale Ska i zmusi go, eby trzyma gb na kdk. Wyglda na to, e bandyci s w to zamieszani, wic powinni wiedzie, gdzie go szuka. + + + Musisz znale Ska i zmusi go, eby trzyma gb na kdk. Na chwil obecn nie ma adnych wskazwek, gdzie mona go znale. + + + Musisz znale Ska i zmusi go, eby trzyma gb na kdk. Wnioskujc z PDA znalezionego przy jednym z bandytw, ludzie Sutana szukaj Ska. Niestety, nie ma adnych wskazwek, gdzie mona go znale. + + + Reputacja: dowiedz si, gdzie znikn Sk + + + Ska nie ma tam, gdzie zwykle bywa, musisz wic popyta miejscowych, czy widzieli, gdzie poszed. + + + Musisz znale Ska i zmusi go, eby trzyma gb na kdk. Nie ma go tam, gdzie zwykle bywa. Moe Sutan wie, gdzie go szuka. + + + Musisz znale Ska i zmusi go, eby trzyma gb na kdk. Nie ma go tam, gdzie zwykle bywa. Moe Brodacz wie, gdzie go szuka. + + + Reputacja: porozmawiaj z Skiem + + + Musisz znale Ska i zmusi go, eby trzyma gb na kdk. wawy nigdy nie handlowa kradzionym towarem, podczas gdy Sk wydaje si by z zasady nieuczciwy. + + + Legowisko pijawek: znajd szyb wentylacyjny + + + Znajd szyb wentylacyjny, aby wypeni legowisko pijawek trujcym gazem. + + + Legowisko pijawek: znajd trujcy gaz + + + Bdziesz potrzebowa trujcego gazu, aby zniszczy legowisko pijawek. Sowa powinien wiedzie, gdzie moesz go zdoby. + + + Bdziesz potrzebowa trujcego gazu, aby zniszczy legowisko pijawek. Sowa twierdzi, e zbiorniki z gazem znajdziesz w opuszczonym konwoju wojskowym. + + + Legowisko pijawek: znajd klucze do pojemnika + + + Znalezione dokumenty wspominaj o kluczach do pojemnika, w ktrym znajduje si zbiornik z gazem. Musisz je znale. + + + Legowisko pijawek: odkryj, jak otworzy pojemnik, w ktrym jest butla z gazem + + + Pojemnik, w ktrym znajduje si zbiornik z gazem, jest zamknity. Musisz znale sposb, by go otworzy. + + + Legowisko pijawek: zainstaluj zbiornik z gazem + + + Zainstaluj zbiornik z gazem w systemie wentylacyjnym piwnic stacji antenowej. Gaz powinien popyn szybem wentylacyjnym i wypeni piwnic, zabijajc pijawki. + + + Legowisko pijawek: powiadom Brodacza, e legowisko zostao zniszczone + + + Poinformuj Brodacza, e udao ci si zniszczy legowisko pijawek, zapewniajc tym samym bezpieczestwo stalkerom ze Skadowska. + + + Legowisko pijawek: odkr zawr + + + Odkr zawr, aby gaz mg wypeni piwnic z legowiskiem pijawek przez szyb wentylacyjny. + + + Legowisko pijawek: poczekaj, a gaz zacznie dziaa + + + Musisz si upewni, e gaz wypeni legowisko i pijawki s martwe. + + + Transakcja: spotkaj si z bandytami koo stranicy + + + Sutan poprosi ci o udzia w transakcji z jednym z handlarzy. Musisz towarzyszy jego ludziom, by zapewni im ochron, gdyby co si wydarzyo. + + + Transakcja: spotkaj si z handlarzem + + + Sowa zaproponowa ci prac przy ochronie pewnego handlarza podczas transakcji. Oczywicie jest to szemrany interes i moe nie pj zbyt gadko. + + + Transakcja: spotkaj si ze stalkerami koo stranicy + + + Spotkaj si ze stalkerami koo stranicy, aby pomc im powstrzyma transakcj pomidzy bandytami i handlarzem broni. + + + Transakcja: ochraniaj handlarza + + + Handlarz wyjani ci twoje zadanie - musisz go chroni podczas transakcji. + + + Transakcja: podsuchaj rozmow + + + Stalkerzy chc podsucha rozmow pomidzy bandytami i handlarzem broni. + + + Transakcja: przeszkod w zakupie broni + + + Zrb co tylko si da, eby przeszkodzi w transakcji pomidzy bandytami i handlarzem. + + + Transakcja: zlikwiduj wiadkw + + + Transakcja z handlarzem si nie udaa, wic musisz zlikwidowa wszystkich wiadkw. + + + Transakcja: ochraniaj handlarza + + + Musisz ochrania handlarza. Zleci ci te zlikwidowanie wszystkich wiadkw transakcji, cznie z jego klientami. + + + Transakcja: przeszukaj handlarza + + + Handlarz moe mie wane informacje, ktre mog si przyda pniej. Zabierz mu je. + + + Transakcja: ochraniaj bandytw podczas transakcji + + + Stj na stray i zapewniaj bandytom ochron podczas negocjacji z handlarzem. + + + Transakcja: porozmawiaj z handlarzem + + + Transakcja z bandytami zostaa zakoczona, moesz wic odebra swoj nagrod. + + + Transakcja: odbierz nagrod od Brodacza + + + Brodacz obieca ci nagrod, jeli przeszkodzisz w transakcji pomidzy bandytami i handlarzem. Transakcja zostaa zakcona, moesz wic odebra swoj nagrod. + + + Transakcja: porozmawiaj z dowdc bandytw + + + Musisz poinformowa dowdc bandytw o gotowoci do wzicia udziau w transakcji. + + + Atak: zdecyduj, co zrobi + + + Atak: zaatakuj stalkerw + + + Atak: odbierz swoj nagrod + + + Atak na obz zosta odparty, moesz wic porozmawia ze stalkerami i odebra swoj nagrod. Prawdopodobnie mieliby nieze pieko, gdyby nie zostali ostrzeeni o ataku. + + + Grupa stalkerw postanowia zosta bandytami i rabowa swoich. Musisz zdecydowa, czy wemiesz udzia w ataku, ostrzeesz stalkerw, czy nie bdziesz si w to miesza. + + + Atak: poczekaj na uzgodnion chwil + + + Atak: Poczekaj na waciw chwil + + + Niedostpny schowek: zanie pudeko Skowi + + + Transakcja: porozmawiaj z dowdc oddziau stalkerw + + + Transakcja zostaa udaremniona. Handlarz broni nie yje. Porozmawiaj z dowdc oddziau stalkerw. + + + Zaginieni stalkerzy: powiedz ludziom w Skadowsku, co si stao + + + Musisz otworzy pojemnik, uywajc znalezionych kluczy, i zabra zbiornik z gazem. + + + Legowisko pijawek: zabierz zbiornik z gazem z pojemnika + + + Atak: zaatakuj zodziei + + + Zaatakowanie zodziei od tyu pomoe stalkerom odeprze atak. + + + Atak: spotkaj si ze zodziejami + + + Przycz si do zodziei podczas ataku na obz stalkerw. + + + Zabjstwo: przycz si do zodziei + + + Stalkerzy poprosili ci o pomoc w odparciu ataku zodziei. Przycz si do zodziei. Gdy rozpoczn napad, bdzie mona bezkarnie zaatakowa ich od tyu. + + + Zodzieje powinni czeka przy Szewczence. Musisz si z nimi spotka, aby wzi udzia w ataku na stalkerw. + + + Poczekaj na spotkanie ze zodziejami. Chc zaatakowa obz stalkerw po pnocy, dopki jest ciemno. Uzgodnione miejsce spotkania to Szewczenko. + + + Atak: odbierz swoj dol + + + Atak na stalkerw zakoczy si sukcesem. Moesz odebra swoj dol z upw. + + + Poczekaj na waciwy moment, gdy zodzieje bd rozproszeni przez atak. Wtedy moesz napa ich od tyu i pomc stalkerom z Szewczenki. + + + Ciemne interesy: zacznij pracowa dla Brodacza + + + Aby zabra prototypy detektorw stalkerom pracujcym dla Brodacza, musisz wstpi w ich szeregi. Dziki temu dowiesz si, gdzie s twoi rywale. + + + Musisz wzi pojemnik i dostarczy go wacicielowi. + + + Komputer pokadowy Ogoczy 2 zawiera mapy terenu pomidzy Zatonem i Jupiterem. Znajd kogo, kto mgby zrobi z nich uytek. + + + cieka na paskowy: porozmawiaj ze stalkerami + + + Wyglda na to, e nie ma bezporedniej drogi na paskowy. Popytaj miejscowych stalkerw, jak mona si tam dosta. + + + Artefakt, ktry da ci Noe, to Kompas, ktrego szuka Brodacz. + + diff --git a/gamedata/configs/text/pol/st_subtitles.xml b/gamedata/configs/text/pol/st_subtitles.xml new file mode 100644 index 0000000..4cef5b7 --- /dev/null +++ b/gamedata/configs/text/pol/st_subtitles.xml @@ -0,0 +1,156 @@ + + + + 26. kwietnia 1986 roku o godzinie 1:23 reaktor bloku 4 w Czarnobylu uleg zniszczeniu wskutek szeregu eksplozji. Radioaktywna chmura przesza nad europejsk czci ZSRR, Europ Wschodni, Skandynawi i w kocu dotara do Ameryki. + + + Konsekwencje katastrofy okazay si tak powane, i rzd musia rozpocz ewakuacj okolicznych miasteczek i wiosek. + + + Wok elektrowni utworzono Stref Zamknit o promieniu 30 km, aby powstrzyma mieszkacw przed powrotem na skaony teren. + + + Pomimo katastrofy elektrownia w Czarnobylu funkcjonuje nadal. Jej istnienie na niezamieszkanym terenie pozwolio Radzie Ministrw ZSRR zaoy w Strefie Zamknitej sie tajnych laboratoriw. + + + 11 czerwca 2006. W Strefie Zamknitej zapono olepiajce wiato, rozwietlajc parujce chmury. Po chwili zupenej ciszy grom z jasnego nieba zatrzs ziemi. Wikszo si rzdowych strzegcych terenu zgina na miejscu. + + + Rok 2008. Naukowcy wci nie s w stanie wyjani, co zaszo. Rzadkie ekspedycje do Zony zwykle kocz si tragicznie, a ocalali opowiadaj historie o zmutowanych zwierztach. + + + Do roku 2010 na teren Zony trafio wedug rnych rde od 100 do 300 nieznanych osb. Nazywaj si stalkerami i utrzymuj si ze zbierania tworw zwanych artefaktami, ktre sprzedaj za znaczne pienidze. + + + Rok 2011. Pomimo kordonu wojskowego, fenomen stalkerw ronie w si. Podruj oni gwnie po obrzeach Zony i nie zapuszczaj si na nieznany teren w centrum. Nieliczne prby zapuszczenia si w gb Zony spezy na niczym. + + + Rok 2012. Stalker o imieniu Strieok rozwika tajemnic Mzgozwglacza, stworzonego przez ludzi emitera, ktry przez lata blokowa wejcie do centrum Zony. Po jego wyczeniu wszyscy stalkerzy ruszyli do Zony. Niektrzy z nadziej znalezienia yy artefaktw, inni w poszukiwaniu Speniacza ycze. + + + Rzd postanowi uruchomi operacj wojskow na szerok skal. Operacja Tor Wodny miaa polega na wykorzystaniu map pl anomalii, pozwalajcych na dotarcie do centrum Strefy. Pomimo drobiazgowych przygotowa operacja skoczya si porak i aden ze migowcw nie wrci do bazy. + + + Major Diegtiariow, agent specjalny SBU, zostaje wysany do Zony w celu zbadania zniknicia migowcw. + + + Przebrany za stalkera, wyposaony w standardowy karabin, racje ywnociowe na dwa tygodnie i radio, rozpoczyna podr do centrum Zony. + + + Rozmowy ze stalkerami okazuj si bezskuteczne Nie maj oni adnych informacji lub te nie chc si nimi podzieli + + + Zona wykorzystuje kad okazj, aby przypomnie majorowi, e nie jest na wakacjach. Nie ma dnia, w ktrym nie zostaby zaatakowany przez mutantw, lub, co gorsza, ludzi. + + + Rwnie prby komunikacji z kwater gwn okazuj si niebyt owocne: jedyne pewne informacje to wsprzdne piciu rozbitych helikopterw. W promieniu kilku kilometrw od CEJ radio przestaje dziaa. + + + Diegtiariow zostaje sam. + + + W nagrod za przeprowadzenie ledztwa Diegtiariow otrzyma awans do stopnia pukownika oraz posad koordynatora misji. Nie skorzysta z moliwoci pracy w kwaterze gwnej i zoy osobist prob o przeniesienie do Zony w charakterze staego obserwatora SBU. + + + Dostarczone przez Diegtiariowa informacje o powstawaniu urzdze psionicznych zaalarmoway dowdztwo SBU. Wszystkie dane o laboratoriach klasy X zostay usunite z wojskowych archiww i utajnione. Cay personel pracujcy w Zonie otrzyma rozkaz nieujawniania informacji o badaniach pod adnym pozorem. + + + Na podstawie dokumentacji technicznej obiektu 62 wykonano kilka eksperymentalnych prbek. Po serii testw zadecydowano nie wdraa broni do masowego uytku z uwagi na wysoki koszt amunicji. Mimo to, naleaoby zaoy, i dalsze badania nad karabinem Gaussa trwaj. + + + Sutan z gangiem opucili Skadowsk. Poczucie wzgldnego bezpieczestwa wrd stalkerw doprowadzio do znacznego wzrostu liczby artefaktw sprzedawanych Brodaczowi. To z kolei przeoyo si na rozkwit interesu, dziki czemu cichy bar Skadowsk dorwna popularnoci lokalowi 100 Radw", chocia mieci si prawie w centrum Zony. + + + Skadowsk sta si siedliskiem bandytw. Chocia wszystkich stalkerw oboono podatkiem, liczba awantur na statku znacznie spada po przykadnym wyrzuceniu kilku nieokrzesanych goci za burt na mier w emisji. Nie chcc oddawa czci zarobkw przestpcom, Brodacz zebra oddzia stalkerw i wyruszy w niezbadane zaktki Zony. Sutan niepodzielnie zapanowa nad Skadowskiem. + + + Skadowsk sta si domem dla kadego, kto by w stanie do niego dotrze. Zacieky opr stalkerw nie powstrzyma rabusiw przed regularnymi i ostatecznie nieudanymi prbami zaprowadzenia swoich porzdkw na statku. Pomimo trwajcego konfliktu Skadowsk yje wasnym yciem. + + + Niestety dugo to nie trwao. Pijawki z lea koo Skadowska znalazy sposb wdarcia si na statek. Gdy zaczy atakowa nawet w biay dzie, postanowiono przypuci atak na ich gniazdo. Niestety myliwi nie zdoali wedrze si do tuneli. Niedugo potem kolejna fala pijawek wybia wszystkich mieszkacw statku. + + + Po zniszczeniu legowiska pijawek nic ju raczej nie zagrozi stanowi rzeczy na Skadowsku. Stary statek sta si tymczasowym orodkiem stabilizacji w dynamicznie zmieniajcym si wiecie zwanym Zon. + + + Wolno zdoaa zaskarbi sobie zaufanie stalkerw ze stacji Janw. Powinno przypucia szturm w prbie odzyskania straconych terenw, a niedugo potem podpukownik Szulga zgin w wymianie ognia. Oddzia Powinnoci nigdy nie pogodzi si ze strat dowdcy i wkrtce si rozpad. + + + Posiki i rosnca popularno wrd stalkerw pozwolia Powinnoci przepdzi siy Wolnoci ze stacji Janw. W wymianie ognia zgin Loki i resztka oddziau. + + + Na stacji Janw doszo do zawarcia kruchego pokoju pomidzy siami Wolnoci i Powinnoci. Strudzeni niekoczcym si konfliktem wojownicy obu frakcji zaczli opuszcza oddziay i docza do wolnych stalkerw. + + + Ekspedycja naukowa zorganizowana przez profesorw Hermana i Oziorskiego zakoczya si sukcesem. Dane, ktre zebrali, uatwiy rozwj przeomowych lekw i technologii. Dziki ich odkryciu Ministerstwo Edukacji przeznaczyo dodatkowe rodki na badania w Zonie. + + + Profesorowie Herman i Oziorski zostali zmuszeni do zaniechania bada w Zonie z powodu braku danych. Powrciwszy do wiata zewntrznego obaj naukowcy zajli si prac niezwizan z Zon. + + + Opowieci Garriego o starciach onierzy z niebezpieczestwami Prypeci zachciy stalkerw do przeczesywania wymarego miasta. Pomimo cigych atakw Monolitu zdoali przej dawny obz wojskowy, po czym zaczli urzdza coraz dalsze wypady w gb miasta. + + + Opowieci Garriego o losie wojskowego oddziau odstraszyy stalkerw z Prypeci. Nieliczni, ktrzy zapucili si w miasto, natknli si na niewyjanione zjawiska nadajce i tak wymaremu miastu jeszcze bardziej ponury charakter. + + + Legenda Oazy przestaa by legend. Tosamo tych, ktrzy odkryli drog do tej ukrytej anomalii, staa si powszechnie poruszanym tematem wrd stalkerw. Mimo to liczba chtnych do odnalezienia Oazy nie malaa. Korzystali z tego faktu rabusie, ktrzy chtnie zgaszali si na przewodnikw, by wyprowadza stalkerw w pole i rabowa ich z dala od obozw. + + + Zorganizowane oddziay najemnikw wci s aktywne w Zonie. Agentom SBU ciko dalej ignorowa ich zainteresowanie tajnymi laboratoriami. Prby ustalenia tosamoci klienta, ktry wynaj najemnikw, spezy na niczym. + + + Obszar wok stacji Janw wci przyciga coraz wicej stalkerw. Nieobecno agresywnych mutantw i obfito anomalii spowodowaa, i obszar ten coraz czciej nazywa si zagbiem artefaktw". + + + Obszar wok stacji Janw zyska reputacj jednego z najniebezpieczniejszych miejsc w Zonie. Z wypadw do niego wraca coraz mniej stalkerw, ktrzy czsto gin z rk mutantw niedaleko od obozu. Jednym z zaginionych jest Traper, ktry wyruszy na swoje ostatnie, jak si okazuje, owy na chimer. + + + Zulus wrci do gwnej bazy Powinnoci w fabryce Rostok. Nikt nie wie o czym dyskutowa z dowdc, generaem Woroninem, lecz kilka dni pniej zauwaono go na czele wikszego oddziau zmierzajcego do centrum Zony. + + + Pogoski o losie Zulusa dotary do dowdcy Powinnoci, generaa Woronina. Ten, wbrew powszechnym przypuszczeniom, postanowi pomiertnie uhonorowa Zulusa Srebrn Tarcz, najwyszym odznaczeniem w armii Powinnoci. + + + Wano wyruszy do kontrolowanych przez Wolno magazynw, gdzie jego radosna osobowo i optymizm szybko day o sobie zna wrd tamtejszych onierzy. W kocu obj dowodzenie nad niewielk grup badaczy miejsc wystpowania anomalii. + + + Stalkerzy ze stacji Janw do tej pory wspominaj Wano, jego umiejtnoci i lekko ducha. Wszyscy zgadzaj si co do jednego: z jego szczciem szukanie drogi do Prypeci byo ogromnym bdem. + + + W Zonie pojawia si nowa grupa. Jej czonkowie s dobrze wyszkoleni, lecz ich cele pozostaj tajemnic. Plotki gosz, i niegdy naleeli do Monolitu. Ich przywdca znany jest jako Wczga. + + + Mao kto zauway zniknicie Wczgi. Jego ch pomocy tym, ktrzy znaleli si pod kontrol Monolitu, zaprowadzia go prosto do grobu. + + + Porucznik Sokoow dalej uczestniczy w misjach lotniczych nad Zon. W trakcie zwiadu nad Limaskiem jego migowiec zestrzelili najemnicy. Dwa tygodnie pniej zosta uratowany przez patrol w pobliu Kordonu. Po miesicu odszed z lotnictwa i rozpocz prac w cywilnych liniach lotniczych. + + + Lista polegych w operacji Tor Wodny wzbogacia si o jeszcze jedno nazwisko: Porucznik O.N. Sokoow. Polegy w subie ojczynie. + + + Sowa nawiza kontakty z klientami poza Zon. Handluje informacjami oraz, jeli wierzy plotkom, regularnie skada raporty SBU. + + + W trakcie wyjtkowo silnej emisji grupa stalkerw musiaa szuka schronienia na starej barce Noego. Gdy pniej na statek napada horda mutantw stalkerzy zgodnie uznali, i barka doskonale nadaje si do obrony. Jeszcze bardziej zadziwiajca okazaa si sfora modych nibypsw, ktre sam Noe poprowadzi do walki. + + + Poznawszy losy swoich przyjaci, Kardan porzuci marzenia o karierze stalkera. Przezwyciy alkoholizm i przenis si do Janowa, gdzie zaoy warsztat na spk z Azotem. Obaj mechanicy z ochot spdzaj wolny czas na budowie pojazdu zdolnego do dziaania w Zonie. + + + Przezwyciywszy alkoholizm, Kardan opuci Skadowsk. Wedug stalkerw poszed szuka swoich zaginionych przyjaci. Kilka dni pniej powrci ranny i napromieniowany. Gdy tylko jego rany si zagoiy po raz drugi i ostatni opuci Zon. + + + Strieok przekaza informacje o swoim pobycie w Czarnobylu dowdcom SBU. Uzyskawszy nowe dane rzd utworzy Instytut Bada nad Czarnobylsk Stref Anomalii. Strieok przyj stanowisko gwnego konsultanta naukowego. + + + Wiedza Strieoka zagina wraz z nim. Informacje zdobyte w Czarnobylu, ktre mogyby pomc w lepszym zrozumieniu Zony, na zawsze pozostay w jej granicach. Wyglda na to, e Zona umie chroni swe tajemnice. + + + Gdy pukownik Kowalski, dowdca grupy Ogoczy, powrci z Zony, musia wyjania przyczyny klski operacji Tor Wodny. Po dugotrwaym dochodzeniu i nieudanej prbie obarczenia go odpowiedzialnoci, pukownik zosta honorowo zwolniony ze suby. + + + Pukownik Kowalski, dowdca grupy Ogoczy, spocz nieopodal reszty swojego oddziau. Ciaa onierzy pochona Zona, a o ich powiceniu przypominaj jedynie stare fotografie. + + diff --git a/gamedata/configs/text/pol/ui_st_credits.xml b/gamedata/configs/text/pol/ui_st_credits.xml new file mode 100644 index 0000000..c1ed2b5 --- /dev/null +++ b/gamedata/configs/text/pol/ui_st_credits.xml @@ -0,0 +1,684 @@ + + + + Sergey Chechin + + + Maciej Abramowicz + + + Armen Abroyan + + + Aktorzy + + + Testerzy + + + AMD/ATI + + + Roman Androshiuk + + + Animacja + + + Dzia graficzny + + + Dyrektor artystyczny + + + Nikita Atroshenko + + + Damian Bajorek + + + Mikhail Bastrykin + + + Kamil Bilinski + + + Krzysztof Binkowski + + + Arkadiusz Bochenek + + + Justin Boggs + + + Anatoly Bogush + + + Wojciech Borowy + + + Stanislaw Burtsau + + + Modele postaci + + + Aleksey Cherevatenko + + + Jerzy Chrul + + + Wojciech Ciemny + + + Muzyka + + + Dmitry Abe Davidyan + + + Aaron Davies + + + Alexander Demidenko + + + Dzia + + + programistw + + + Lukasz Derewonko + + + Ruslan Didenko + + + Yuri Doroshenko + + + Elena Dovgaliuk + + + Rafal Durajczyk + + + Petr Dushinsky + + + Maciej Dziarnowski + + + Sergey Eremenko + + + Yuri "Dark Falchenko + + + Jakub Gabryel + + + Cezary Galach + + + Dzia projektantw gry + + + Programici rozgrywki + + + CENEGA (kontrola jakoci) + + + Szczeglne podzikowania dla: + + + Filip Gerasimov + + + Grigory Hermann + + + Angelica Girich + + + Pawel Golubinski + + + Marcin Gorniak + + + Tomasz Goscicki + + + Programici grafiki + + + Holger Grun + + + Pawel Grzywaczewski + + + Sergiy Grygorovich + + + Marcin Gutowski + + + Dmitry Yasenev + + + Intel + + + Sergey Ivantsov + + + Norbert Jankowski + + + Alexander Kachaniuk + + + Dmitry Kalita + + + Aleksander Keska + + + Andrey Darin Kirienko + + + Lukasz Kobylanski + + + Andrey Kolomiets + + + Artur Komorek + + + Yuri Konstantinov + + + Maria Kotolovskaya + + + Alexander Kovach + + + Kirill Koval + + + Irina Krivchikova + + + Dmitry Krivets + + + Eugene Kuchma + + + Svetlana Kudrya + + + Sergey Kurbatov + + + Olga Kuzhel + + + Dmitry Kuzmenko + + + Aleksey Kuznetsov + + + Oleg Kuznetsov + + + Szymon Lazarski + + + Gwny animator + + + Gwny grafik + + + Gwny projektant gry + + + Gwny programista + + + Gwni testerzy + + + Gwni specjalici + + + Projektowanie poziomw + + + Korekta jzykowa + + + Vladimir Litvinenko + + + Eric Lundgren + + + Sergey Maistrenko + + + Dmitry Macedon + + + Roman Malinkin + + + Kierownicy projektu + + + Alexander Maniliuk + + + Daniel Mankowski + + + Denis Matveenko + + + Maciej Mazurek + + + Piotr Mazurkiewicz + + + Darren McPhee + + + Igor Melnikov + + + Victor Merkulov + + + Damian Mielnik + + + Pavel Mikhailov + + + Konstantin Mironov + + + Serdeczne podzikowania dla Olega Fomenko + + + i firmy BuntarMedia + + + za konsultacje w zakresie MOCAP + + + Vladimir Morev + + + Andrey Moroz + + + Dawid Mrozowski + + + Yuri Negrobov + + + Programista trybu wielu graczy + + + NVIDIA + + + Aleksey Omelchuk + + + Lukasz Osinski + + + Mikhail Parfeniuk + + + Eugene Pashin + + + Igor Pasichnyi + + + Bartosz Peas + + + Programista fizyki + + + Jacek Piotrowski + + + Alexander Plichko + + + Dzia PR + + + Dyrektor ds. PR + + + Menederowie dziau PR + + + Sergey Prishepa + + + Producent + + + Kierownik projektu + + + Testy + + + Anton Ravin + + + Sebastian Rejent + + + Mateusz Rekorajski + + + Filip Resiak + + + Peter Ross + + + Ivan Rozin + + + Lukasz Ruminski + + + Denis Rutkovsky + + + Lukasz Rynkowski + + + Meneder ds. rozwoju firmy + + + Piotr Samborowski + + + Maria Shapunova + + + Sergey Shelest + + + Igor Sidorenko + + + Mikolaj Sitkiewicz + + + Yuri Skripal + + + Konstantin Slipchenko + + + Tomasz Sobotka + + + Produkcja dwiku + + + Szczeglne + + + podzikowania dla: + + + Oleg Stalchuk + + + Liudmila Starodub + + + Vladimir Stavitsky + + + Pawel Stempien + + + Pawel Strzelczyk + + + Twrcy gry + + + Konstantin Stupivtsev + + + Obsuga + + + klienta + + + Rafal Szekalski + + + Maciej Szumowski + + + Marcin Szwargolinski + + + Vladimir Tereshiuk + + + Sergey Terliuk + + + Tekstury + + + Dzikujemy te wszystkim + + + osobom, ktre przyczyniy si do ulepszenia gry: + + + Konstantin Morozkov + + + Yaroslav Uncle Yar Alexandrov + + + Dmitry Comandor Ivanov + + + Oleg Chernov + + + Ig. Valerian (Golovchenko) aka oVal + + + M. Bystrykhin + + + Eugene Mulder Khaletskiy + + + Pavel Goon Bolotov + + + Alexander Leks Abramov + + + Alexander Novikov + + + Alexander Poshtaruk, Andrey Oleshk + + + Eugene KRANZ Goncharenko + + + Sergey Dvuzhilny + + + Aleksey "Don Reba Badalov + + + Sergey Dvuzhilny, Tolusha + + + Artem Zuev, aka BAC9-FLCL + + + Glot, Patriot, Mers + + + Tiger, Demesis, Kharon, Moby + + + Alexander Oleinik + + + Konstantin Inquisitor Kriuchkov + + + Alexander Shakhovsky, Igor Dolzhenko + + + Sergey Tur Leshenko + + + Dmitry Hill Gorban + + + Mikhail Kliuev + + + Sergey Termite Volchanov + + + Sergey Tikhomirov + + + Ilya Tolmachev + + + Jakub Trudzik + + + Projekt interfejsu + + + Yuri Uralsky + + + Denis Tetri$Zs Yusupov + + + RandyJ VanderHeyden + + + Vladimir Vazhinsky + + + Andrey Verpakhovsky + + + Alexander Vilkov + + + Anastassia Voskolovich + + + Andrzej Wardziak + + + Programista aplikacji internetowych + + + Dominik Wojcik + + + Lukasz Watroba + + + Eugene Yablon + + + Yuri Yatsenko + + + Eugene Yatsiuk + + + Oleg Yavorsky + + + Valentin Yeltyshev + + + Eugene Zaitsev + + + Andrey Zakoliukin + + + Marek Zdziarski + + + Michal Zegarski + + + Albert Zmudzki + + + Aleksey Zorin + + + Bartosz Zukowski + + + Victoria Morrant Yukhno + + + Sergey ion Kalintsev + + + Roman RVCool Kulikov + + + Maxim Smirnov + + + Omar Al-Shekhly + + + Roman =Marauder= Arhipov + + diff --git a/gamedata/configs/text/pol/ui_st_inventory.xml b/gamedata/configs/text/pol/ui_st_inventory.xml new file mode 100644 index 0000000..89474df --- /dev/null +++ b/gamedata/configs/text/pol/ui_st_inventory.xml @@ -0,0 +1,303 @@ + + + + Za mao pienidzy + + + Posta ma za mao pienidzy + + + $$ACTION_QUICK_USE_1$$ + + + $$ACTION_QUICK_USE_2$$ + + + $$ACTION_QUICK_USE_3$$ + + + $$ACTION_QUICK_USE_4$$ + + + Aktywuj artefakt + + + Za granatnik na + + + Za celownik na + + + Za tumik na + + + Cena + + + Grupa: + + + Stan + + + Zdejmij granatnik + + + Zdejmij celownik + + + Zdejmij tumik + + + Za kombinezon + + + Wyrzu + + + Wyrzu wszystko + + + Zjedz + + + kg + + + Przymocuj do paska + + + Przenie do plecaka + + + Przenie do okienka + + + Handlarza nie interesuj takie przedmioty. + + + Nie mona handlowa tak uszkodzonym przedmiotem. + + + Odtwrz + + + Sprzedaj przedmiot + + + Stan opancerzenia + + + Skaenie radioaktywne + + + Zdejmij kombinezon + + + Rozaduj + + + Uyj + + + Waga + + + Magazynek + + + Celno + + + Kup podstawow amunicj do pistoletu (Q) + + + Kup amunicj do karabinu (W) + + + Leczenie ran + + + Anuluj + + + Nie mona kupi broni + + + Ograniczenia iloci + + + Obraenia + + + Domylne (F5) + + + Wstecz + + + Kup granatnik podwieszany do karabinu (D) + + + Kup granaty do granatnika podwieszanego (D) + + + Obsuga + + + Teraz + + + Regeneracja zdrowia + + + Cika + + + Kup ostatnio kupowany zestaw + + + Poprzednie (F4) + + + Pienidze + + + Wymagane + + + Za mao pienidzy + + + OK + + + Waga ekwipunku + + + Ochr.: term. + + + Ochr.: chem. + + + Pancerz + + + Ochr.: prom. + + + Ochr.: elektr. + + + Ochr.: psion. + + + Odp. uderz. + + + Odzysk. energii + + + Zestaw 1 (F1) + + + Zestaw 2 (F2) + + + Zestaw 3 (F3) + + + Promieniowanie + + + Ograniczenie rangi + + + Szybkostrz. + + + Wyczy (C) + + + Szturmowe + + + Zaspokoj. godu + + + Kup celownik optyczny do karabinu (S) + + + Sprzedaj wszystkie przedmioty z plecaka (X) + + + Strzelby + + + Kup tumik do pistoletu (A) + + + Kup tumik do karabinu (F) + + + Snajperskie + + + Czas + + + Ju to masz + + + Usugi online dla gry S.T.A.L.K.E.R. nie s dostpne. + + + Nie mona nawiza poczenia z serwerem gwnym. + + + Ochrona: + + + Domylne + + + Kupiony zestaw zosta zapisany jako + + + czna waga: + + + Pij + + + Odzyskiwanie energii + + + Krwawienie + + + Maksymalna waga + + + Zdrowie + + + Amunicja + + + Czas trwania + + + s + + + Umoliwia przetrwanie emisji + + + Zdejmij hem + + + W hem + + diff --git a/gamedata/configs/text/pol/ui_st_ixray.xml b/gamedata/configs/text/pol/ui_st_ixray.xml new file mode 100644 index 0000000..9c79e9e --- /dev/null +++ b/gamedata/configs/text/pol/ui_st_ixray.xml @@ -0,0 +1,62 @@ + + + + S.T.A.L.K.E.R.: Zew Prypeci + + + Menu gwne + + + Poziom: + + + zapis szybki + + + autozapis + + + + m + + + Odlego uderzenia + + + + Otwrz baganik ($$ACTION_USE$$) + + + Uywa ($$ACTION_USE$$) + + + + Wolny + + + + Autoprzeadowanie + + + + adowanie tekstur wielowtkowych + + + Mapa cieni + + + 1024x1024 + + + 2048x2048 + + + 3072x3072 + + + 4096x4096 + + + Zawsze aktywny + + diff --git a/gamedata/configs/text/pol/ui_st_keybinding.xml b/gamedata/configs/text/pol/ui_st_keybinding.xml new file mode 100644 index 0000000..8df633d --- /dev/null +++ b/gamedata/configs/text/pol/ui_st_keybinding.xml @@ -0,0 +1,225 @@ + + + + PDA + + + Rozkaz ataku + + + Chd + + + Artefakt + + + Do tyu + + + Lornetka + + + Menu handlu + + + Rozmowa + + + Rozmowa druynowa + + + Konsola + + + Lista kontaktw w PDA + + + Kucanie + + + Wcz/wycz kucanie + + + Detektor + + + W d + + + Wyrzu + + + Strza + + + Nastpny tryb strzau + + + Poprzedni tryb strzau + + + Do przodu + + + Granatnik podwieszany + + + Oglne + + + Widok + + + Plecak + + + Ruch + + + Tryb wielu graczy + + + Bro + + + Plecak + + + Skok + + + W lewo + + + Wychylenie w lewo + + + Krok w lewo + + + Mapa w PDA + + + Nastpna bro + + + Noktowizor + + + Pauza + + + PDA + + + Poprzednia bro + + + Wyjcie + + + Przeaduj + + + Napraw + + + W prawo + + + Wychylenie w prawo + + + Krok w prawo + + + Ekran punktacji + + + Zrzut ekranu + + + Menu wyboru modelu + + + Sprint + + + Menu wyboru druyny + + + Latarka + + + Aktywuj + + + W gr + + + Uyj + + + Szybkie bandaowanie + + + Szybkie uycie apteczki + + + Rozpocznij gosowanie + + + Gosuj + + + Gosuj przeciw + + + Gosuj za + + + Bro 1 + + + Bro 2 + + + Bro 3 + + + Bro 4 + + + Bro 5 + + + Bro 6 + + + Zmie typ amunicji + + + Poprzednia bro tego typu + + + Przyblienie/oddalenie + + + Wiadomoci gosowe (1) + + + Wiadomoci gosowe (2) + + + Szybki dostp 1 + + + Szybki dostp 2 + + + Szybki dostp 3 + + + Szybki dostp 4 + + diff --git a/gamedata/configs/text/pol/ui_st_loadscreen.xml b/gamedata/configs/text/pol/ui_st_loadscreen.xml new file mode 100644 index 0000000..6e02f17 --- /dev/null +++ b/gamedata/configs/text/pol/ui_st_loadscreen.xml @@ -0,0 +1,474 @@ + + + + 100 WSKAZWEK, JAK PRZETRWA W ZONIE + + + Strza w oko przeciwnika skutkuje jego natychmiastow mierci, niezalenie od poziomu jego pancerza. + + + AC-96/2 posiada unikatowy, dwustrzaowy tryb seryjny. W tym trybie oba pociski z serii trafiaj dokadnie w to samo miejsce. + + + Dwulufowe strzelby mog wystrzeli z obu luf niemal jednoczenie. + + + Nie lekcewa pistoletw. Moj przyzwoit si raenia i mog by bardzo skuteczne przeciwko sabo opancerzonym celom. + + + Karabiny snajperskie, z uwagi na pasko toru pocisku i celno, s idealne do zabijania wrogw z duej odlegoci. Nie s jednak zbyt skuteczne na krtkim dystansie. + + + Strzelanie w ruchu charakteryzuje si znacznie mniejsz celnoci w porwnaniu do strzelania ze stabilnej pozycji stojcej lub podczas kucania. + + + W trudnych warunkach Zony zarwno bro, jak i kombinezony ochronne szybko si zuywaj. Zuyte bronie s mniej celne i mog si zacina, a kombinezony daj sabsz ochron. + + + Aby zrobi zrzut ekranu, wcinij $$ACTION_SCREENSHOT$$". + + + Artefakt lub nioscy go gracz pokazany jest na minimapie. Jeeli artefakt jest daleko, strzaka na minimapie wskae odpowiedni kierunek. + + + AC-96/2 posiada unikatowy, dwustrzaowy tryb seryjny. W tym trybie oba pociski z serii trafiaj dokadnie w to samo miejsce. + + + Dwulufowe strzelby mog wystrzeli z obu luf niemal jednoczenie. + + + Nie lekcewa pistoletw. Moj przyzwoit si raenia i mog by bardzo skuteczne przeciwko sabo opancerzonym celom. + + + Karabiny snajperskie, z uwagi na pasko toru pocisku i celno, s idealne do zabijania wrogw z duej odlegoci. Nie s jednak zbyt skuteczne na krtkie dystanse. + + + W trudnych warunkach Zony zarwno bro, jak i kombinezony ochronne szybko si zuywaj. Zuyte bronie s mniej celne i mog si zacina, a kombinezony daj sabsz ochron. + + + Niektre rodki medyczne maj wyjtkowe waciwoci. Na przykad tabletki Herkules" pozwalaj ci przez jaki czas unie wikszy ciar, podczas gdy blokery psioniczne wzmacniaj odporno na emisje psioniczne. + + + Aby zrobi zrzut ekranu, wcinij $$ACTION_SCREENSHOT$$". + + + Wskazwka # + + + Wdka jest tani alternatyw dla lekw przeciwpromiennych. To najprostszy sposb, by zredukowa wpyw promieniowania na organizm. + + + Aby zobaczy szczegy na temat aktualnej misji, przytrzymaj $$ACTION_SCORES$$". + + + Aby mc szuka artefaktw, potrzebujesz detektora. Najlepsze detektory czyni szukanie atwiejszym i s w stanie wykry wicej wartociowych artefaktw. + + + Stalkerzy nie wpuszczaj do swoich obozw ludzi z broni w rku. Aby schowa bro, wcinij odpowiedni klawisz ($$ACTION_WPN_1$$", $$ACTION_WPN_2$$", $$ACTION_WPN_3$$", $$ACTION_WPN_4$$"). + + + Moesz zlokalizowa granice anomalii, rzucajc rubami. Aby wyj rub, wcinij $$ACTION_WPN_6$$". + + + Jedzenie nie tylko zaspokaja gd, ale rwnie nieznacznie poprawia zdrowie. + + + Napoje energetyzujce tymczasowo przypieszaj odzyskiwanie wytrzymaoci, co zwiksza twoj zdolno poruszania si. + + + Niska wytrzymao moe ci unieruchomi i wystawi na atak wrogw w kluczowych momentach. + + + Moesz monitorowa stan swojej widocznoci dziki wskanikom haasu i wykrycia umieszczonym w lewym grnym rogu ekranu. + + + Trzymanie detektora w jednej rce nie uniemoliwia uycia noa, pistoletu lub ruby za pomoc drugiej rki. + + + Niektre rodki medyczne zwikszaj odporno organizmu na szkodliwe dziaania. Uywanie tych rodkw moe ocali ci ycie podczas misji w okolicach, w ktrych wystpuj anomalie. + + + Moesz wywoa podrczne menu dla przedmiotw w plecaku, umieszczajc kursor myszy nad danym przedmiotem i klikajc prawym przyciskiem myszy. + + + Pomimo swoich uytecznych waciwoci, wikszo artefaktw jest radioaktywna. Efekt ten mona zniwelowa, uywajc artefaktw pochaniajcych promieniowanie. + + + N jest nieskuteczny przeciwko wrogom wyposaonym w bro paln. Uywaj go w zwarciu lub w celu dyskretnego wyeliminowania przeciwnika. + + + Ciar, ktry nosisz, obnia twoj wytrzymao. Zbyt duy ciar ograniczy twoj mobilno, a kompletne przecienie unieruchomi ci zupenie. + + + Uycie detektora to jedyny pewny sposb na wykrycie obecnoci artefaktw na obszarach anomalii. + + + Wikszo artefaktw jest niewidoczna podczas swoich wdrwek po obszarach anomalii, dopki nie wykryjesz ich za pomoc detektora. + + + Mutanty s bardziej aktywne w nocy, co wyjania, dlaczego stalkerzy wol poczeka do witu z wyruszeniem do Zony. + + + W przypadku silnego napromieniowania organizmu uyj lekw przeciwpromiennych. Jeli nie masz adnych przy sobie, uyj apteczki, aby upora si z pierwszymi objawami, zanim dotrzesz do medyka. + + + Wikszo stalkerw moe oprowadzi ci po okolicy, ale tylko dowiadczeni przewodnicy s w stanie bezpiecznie i szybko zaprowadzi ci w bardziej odlege miejsca. Jedni i drudzy ka sobie sono paci za usug. + + + Sprzedawanie artefaktw to nie jedyny sposb na zarobienie gotwki. Pozbywanie si niepotrzebnego sprztu te moe przynie zyski. Pamitaj, e handlarze z reguy nie s zainteresowani powanie uszkodzonymi przedmiotami. + + + Aby zdemontowa tumik, celownik lub podwieszany granatnik ze swojej broni, kliknij prawym przyciskiem myszy dan bro w swoim plecaku i wybierz odpowiednie polecenie z menu podrcznego. + + + Jeli chcesz si porusza najciszej, jak to tylko moliwe, wcinij $$ACTION_ACCEL$$" aby chodzi lub $$ACTION_CROUCH$$" aby kucn. + + + Strzelba to bro na krtkie dystanse. Im dalej od ciebie znajduje si przeciwnik, tym mniej jest skuteczna. + + + Szukajc schronienia przed ostrzaem z mniejszych broni, upewnij si, e chowasz si za czym wytrzymaym. Deski i blacha, w przeciwiestwie do betonowej ciany, nie zapewni ci zbyt bezpiecznej kryjwki. + + + Strzay w gow zadaj krytyczne obraenia i dla wikszoci wrogw s miertelne. + + + Kady rodzaj mutanta w Zonie ma wasny styl walki. We to pod uwag, a bdziesz mie duo wiksz szans na przeycie. + + + Moesz ustawi odlego, na jak rzucisz granat, przytrzymujc $$ACTION_WPN_ZOOM$$". + + + Przeciwnicy mog i bd uywa granatw. Gdy zobaczysz symbol granatu, opu natychmiast stref wybuchu. + + + Rozbieg przed skokiem pozwala na pokonanie duych dziur i szczelin. + + + Kluczowe wskaniki pokazujce zdrowie i wytrzymao znajduj si w prawym dolnym rogu ekranu. + + + Zona yje swoim wasnym yciem, co oznacza, e zawsze istnieje ryzyko wpadnicia na mutanty lub wrogich stalkerw w miejscach, ktre zostay ju wyczyszczone. + + + W Zonie zachowaj czujno i nie polegaj na nieaktualnych informacjach. Gdy powrcisz na zbadany wczeniej obszar anomalii, moe si okaza, e poprzednio sprawdzona cieka nie jest ju dostpna. + + + Rozmowy ze zwykymi stalkerami mog dostarczy ci przydatnych informacji na temat nowych terenw i ostatnich wydarze. + + + W obu przeznaczonych do tego miejscach moesz umieci ktrkolwiek z broni. Pozwala to na stworzenie dogodnej kombinacji, na przykad karabinu szturmowego ze strzelb lub pistoletu z karabinem snajperskim. + + + Kady handlarz, na jakiego natrafisz w rnych obozach stalkerw, oferuje swj wasny, unikalny towar. Na przykad medycy na pewno bd mieli najlepszy wybr rodkw medycznych. + + + Jeli dotrzesz do obozu stalkerw z ran lub zatruciem spowodowanym promieniowaniem, moesz skorzysta z darmowej pomocy miejscowego medyka. + + + Moesz zostawi swoje rzeczy w prywatnym schowku w obozie, aby unikn noszenia ze sob niepotrzebnego sprztu. + + + Jeli musisz poczeka na konkretn godzin, moesz zdrzemn si w obozie, by zabi czas. eby to zrobi, znajd miejsce do spania, wcinij $$ACTION_USE$$" i wybierz, jak dugo chcesz spa. + + + Noktowizor w twoim hemie moe zosta ulepszony do wersji nowej generacji. Zwikszy to znaczco zasig jego dziaania. + + + Gdy jeste w Zonie, zawsze miej przy sobie kilka zapasowych magazynkw - na pewno si przydadz. + + + Pamitaj, eby regularnie zapisywa stan gry - zapobiegnie to koniecznoci przechodzenia w kko tych samych fragmentw. + + + Aby prawidowo stosowa leki, warto zna ich dziaanie. Zapoznaj si z opisami lekw, aby dowiedzie si, jakie efekty powoduj. + + + Uyj granatw, aby zaatakowa przeciwnikw bdcych w ukryciu. We pod uwag promie raenia granatu, aby nie zrani sojusznikw. + + + Aby wyrzuci przedmiot z plecaka, kliknij go prawym przyciskiem myszy i wybierz odpowiedni czynno z menu podrcznego. + + + Moesz uy specjalnego ustawienia w menu opcji, aby gra zapisywaa si automatycznie w kluczowych miejscach. + + + Gdy wrcisz do obozu, napraw swj sprzt, sprzedaj niepotrzebne upy i uzupenij zapasy amunicji i rodkw medycznych. + + + Aby zmniejszy szkodliwe dziaanie anomalii podczas wypraw do Zony, uywaj kombinezonu ochronnego i artefaktw lub zayj odpowiednie leki. + + + Oprcz broni i amunicji, przy ciaach wrogw moesz znale wartociowe przedmioty, takie jak PDA z danymi. + + + Artefakty to nie tylko wartociowy up. Poza tym, e s lekkie i drogie, czsto maj te bardzo uyteczne waciwoci. + + + Z uwagi na rodowisko panujce w Zonie, wiele mutantw jest radioaktywnych. Zblianie si do nich bez odpowiedniej ochrony przed promieniowaniem jest bardzo niebezpieczne. + + + Aby zatamowa krwotok, moesz uy bandaa, wojskowej apteczki lub barwinkw. Jeli szybko sobie z nim nie poradzisz, krwawienie moe powanie uszkodzi twoje zdrowie. + + + Niektre bronie pozwalaj na zainstalowanie celownika o dalekim zasigu. Moesz go regulowa za pomoc kka myszy. + + + Przez niektre miejsca nie mona przej nawet kucajc. Aby przykucn najniej, jak tylko si da, wcinij i przytrzymaj jednoczenie $$ACTION_CROUCH$$" i $$ACTION_ACCEL$$". + + + Aby zmniejszy prawdopodobiestwo trafienia przez przeciwnika, prowad wymian ognia wychylajc si zza rogu. W tym celu przytrzymaj $$ACTION_LLOOKOUT$$" lub $$ACTION_RLOOKOUT$$". + + + Dziki wbudowanemu mechanizmowi namierzania celu, twoja lornetka pozwala ci nie tylko lepiej si przyjrze daleko pooonym obiektom, ale rwnie zlokalizowa wrogw. Aby wyj lornetk, wcinij $$ACTION_WPN_5$$". + + + Aby wczy lub wyczy latark, wcinij $$ACTION_TORCH$$". + + + Aby wyj rub, wcinij $$ACTION_WPN_6$$". + + + Jeeli masz noktowizor przy swoim hemie, moesz go wcza i wycza wciskajc $$ACTION_NIGHT_VISION$$. + + + Wcinij $$ACTION_QUICK_USE_1$$", $$ACTION_QUICK_USE_2$$", $$ACTION_QUICK_USE_3$$", $$ACTION_QUICK_USE_4$$", aby uy odpowiedniego przedmiotu ze swojego panelu szybkiego dostpu. + + + Leki nie zaczynaj dziaa natychmiastowo, a efekt dziaania niektrych z nich utrzymuje si do dugo. + + + W twoim PDA przechowywana jest mapa, informacje na temat biecych misji, prywatne statystyki oraz rejestr wiadomoci. Aby otworzy PDA, wcinij $$ACTION_ACTIVE_JOBS$$". + + + eby mc szuka artefaktw, musisz wyj detektor. Aby to zrobi, wcinij $$ACTION_SHOW_DETECTOR$$". + + + Aby wczy pauz, wcinij $$ACTION_PAUSE$$". + + + Aby skorzysta z szybkiego zapisu, wcinij $$ACTION_QUICK_SAVE$$". Wcinij $$ACTION_QUICK_LOAD$$", aby szybko wczyta ostatni szybki zapis. + + + Sprint to najszybszy sposb poruszania si, ale rwnie najbardziej mczcy. Wcinij $$ACTION_SPRINT_TOGGLE$$, aby pobiec sprintem. + + + Strzelanie z celownikiem jest duo dokadniejsze ni strzelanie z biodra. Aby wczy celownik, wcinij $$ACTION_WPN_ZOOM$$". + + + Jeli masz granatnik podwieszany, moesz si przecza pomidzy nim i standardowym trybem strzau wciskajc $$ACTION_WPN_FUNC$$". + + + Jeli masz kilka rodzajw amunicji do uywanej obecnie broni, moesz przecza si pomidzy nimi wciskajc $$ACTION_WPN_NEXT$$". + + + Aby przeadowa bro, zanim magazynek bdzie pusty, wcinij $$ACTION_WPN_RELOAD$$". + + + Aby wyrzuci uywan obecnie bro, wcinij $$ACTION_DROP$$". + + + Aby przeczeka emisj, schro si w solidnym budynku lub pod ziemi. Gdy emisja bdzie si zblia, najblisze schronienie bdzie zaznaczone na twoim PDA. + + + Aby uy przedmiotu przy pomocy okienka szybkiego dostpu, przecignij go ze swojego plecaka do jednego z okienek nad pojemnikami na artefakty. + + + Znak kropli krwi w prawym dolnym rogu ekranu informuje ci o krwotoku i koniecznoci jego zatamowania. Kolor znaku pokazuje, jak powany jest krwotok. + + + Symbol zagroenia promieniowaniem w prawym dolnym rogu ekranu ostrzega o napromieniowaniu organizmu. Gdy go zobaczysz, musisz zay leki przeciwpromienne. Kolor symbolu pokazuje, jak wysoki jest poziom napromieniowania. + + + Przy pomocy filtrw moesz ukrywa i wywietla rne rodzaje oznacze na swoim PDA. Przyciski filtrw znajduj si ponad map, pod nazw biecej misji. + + + Artefakty zazwyczaj nie s statyczne: maj tendencj do poruszania si w obrbie anomalii. Szalone prby pogoni za artefaktami w mgnieniu oka wpakuj ci na anomali. + + + Niektrzy stalkerzy mog mie ci do zaoferowania informacje czy wyjtkowe towary. Mog te na przykad zleci ci dostarczenie im konkretnych artefaktw. + + + Po emisji, na przeszukanych ju wczeniej obszarach anomalii mog si pojawi nowe artefakty. + + + W kadej chwili moesz zmieni poziom trudnoci gry w menu opcji. + + + Technicy w obozach stalkerw mog ulepszy twoje bronie, kombinezony i hemy. + + + Jeli chcesz przetrwa, zawsze zwracaj uwag na trzeszczce dwiki wydawane przez twj licznik Geigera, ktre ostrzegaj ci przed promieniowaniem, oraz na sygnay o zagroeniu ze strony anomalii, informujce, e jeste blisko jednej z nich. + + + Twoje stosunki z ludmi bezporednio wpywaj na cen oferowanych przez nich towarw i usug. Jeli twoje stosunki s ze, nie licz na znik. Jeli dogadujesz si niele, handlarz moe nawet zaoferowa ci co specjalnego. + + + Moesz rozadowa znalezion bro w celu uzupenienia amunicji. Aby to zrobi, kliknij prawym przyciskiem myszy dan bro w swoim plecaku i wybierz odpowiedni czynno z menu podrcznego. + + + Zabijanie wrogw i zbieranie artefaktw przynosi ci punkty potrzebne, by awansowa na wysz rang. Wraz ze wzrostem rangi, dostaniesz dostp do nowych broni, pancerzy i wyposaenia. + + + Granatw dymnych uywa si, by ukra artefakt lub ukry si przed wrogiem. + + + Lewa cz menu handlu zawiera pi zakadek. Od gry do dou: pistolety, bro podstawowa, amunicja, pancerze oraz rodki medyczne wraz z dodatkowym wyposaeniem. Po wybraniu danej zakadki zobaczysz przedmioty dostpne przy twojej randze. + + + Prawa cz menu handlu zawiera cztery okienka szybkiego kupowania. Wcinicie ikonki dyskietki zapisuje aktualny zestaw. Mona go wczyta, wciskajc odpowiedni numer. W czwartym okienku automatycznie zapisywany jest ostatnio zakupiony zestaw. + + + Jeli masz wicej ni jedn bro, moesz przecza si midzy nimi, wciskajc na przemian $$ACTION_WPN_2$$" albo $$ACTION_WPN_3$$". + + + Aby aktywowa artefakt w celu utworzenia anomalii, wycignij go, wciskajc $$ACTION_ARTEFACT$$" i przytrzymujc $$ACTION_WPN_FIRE$$". Powstaa anomalia jest niebezpieczna zarwno dla przeciwnikw, jak i dla gracza, ktry j stworzy. + + + Kombinezon naukowca pomoe ci przetrwa w anomaliach i obszarach radioaktywnych. + + + POLOWANIE NA ARTEFAKTY: Aby wygra, musisz przynie do swojej bazy okrelon liczb artefaktw. + + + Aby zdemontowa tumik, celownik lub podwieszany granatnik ze swojej broni, kliknij prawym przyciskiem myszy dan bro w swoim plecaku i wybierz odpowiednie polecenie z menu podrcznego. + + + Jeli chcesz si porusza najciszej, jak to tylko moliwe, wcinij $$ACTION_ACCEL$$" aby chodzi lub $$ACTION_CROUCH$$" aby kucn. + + + Strzelba to bro na krtkie dystanse. Im dalej od ciebie znajduje si przeciwnik, tym mniej jest skuteczna. + + + Szukajc schronienia przed ostrzaem, upewnij si, e chowasz si za czym wytrzymaym. Deski i blacha, w przeciwiestwie do betonowej ciany, nie zapewni ci zbyt bezpiecznej kryjwki. + + + Strzay w gow zadaj krytyczne obraenia i dla wikszoci wrogw s miertelne. + + + Szybkie poruszanie, skakanie i rany znaczco obniaj twoj wytrzymao. + + + Moesz ustawi odlego, na jak rzucisz granat, przytrzymujc $$ACTION_WPN_ZOOM$$". + + + Przeciwnicy mog i bd uywa granatw. Gdy zobaczysz symbol granatu, opu natychmiast potencjaln stref wybuchu. + + + WSZYSCY PRZECIWKO WSZYSTKIM: Aby wygra, musisz zdoby najwiksz liczb punktw za zabicia. + + + Rozbieg przed skokiem pozwala na pokonanie duych dziur i szczelin. + + + Kluczowe wskaniki pokazujce zdrowie i wytrzymao znajduj si w prawym dolnym rogu ekranu. + + + Minimapa pokazuje, z ktrej strony znajduje si artefakt. Jeeli strzaka wskazuje w gr, artefakt znajduje si nad twoja obecn pozycj. Jeeli strzaka wskazuje w d, znajduje si on poniej twojej obecnej pozycji. + + + Moesz zabiera plecaki swoich przeciwnikw, aby zdoby dodatkow gotwk. Nadwyk sprztu moesz sprzeda w bazie. + + + Musisz za wszelk cen ochrania czonka swojej druyny, ktry niesie artefakt. + + + Uyj granatw, aby zaatakowa przeciwnikw bdcych w ukryciu. We pod uwag promie raenia granatu, aby nie zrani swoich sojusznikw. + + + Moesz komunikowa si z druyn przy pomocy wiadomoci gosowych. Aby wej do menu wiadomoci gosowych, wcinij $$ACTION_SPEECH_MENU_0$$" lub $$ACTION_SPEECH_MENU_1$$". + + + GRA DRUYNOWA: Aby wygra, twoja druyna musi zdoby wicej punktw za zabicia ni druyna przeciwna. + + + Gosowanie mona rozpocz wciskajc $$ACTION_VOTE_BEGIN$$". + + + Aby zobaczy wyniki gry, wcinij $$ACTION_SCORES$$". + + + Aby odrodzi si po mierci, wcinij $$ACTION_JUMP$$", gdy skoczy si czas oczekiwania. + + + Aby otworzy menu handlu, wcinij $$ACTION_BUY_MENU$$" w czasie pobytu w bazie. + + + Rozmow ze wszystkimi mona rozpocz wciskajc $$ACTION_CHAT$$". Aby prowadzi rozmow tekstow tylko ze swoj druyn, wcinij $$ACTION_CHAT_TEAM$$". + + + Sprint to najszybszy sposb poruszania si, ale rwnie najbardziej mczcy. Wcinij $$ACTION_SPRINT_TOGGLE$$, aby pobiec sprintem. + + + Strzelanie z celownikiem jest duo dokadniejsze ni strzelanie z biodra. Aby wczy celownik, wcinij $$ACTION_WPN_ZOOM$$". + + + Jeli masz granatnik podwieszany, moesz przecza si pomidzy nim i standardowym trybem strzau, wciskajc $$ACTION_WPN_FUNC$$". + + + Jeli masz kilka rodzajw amunicji do uywanej obecnie broni, moesz si przecza pomidzy nimi, wciskajc $$ACTION_WPN_NEXT$$". + + + Aby przeadowa bro, zanim magazynek bdzie pusty, wcinij $$ACTION_WPN_RELOAD$$". + + + ZDOBYCIE ARTEFAKTU: Aby wygra, musisz przynie do swojej bazy okrelon liczb artefaktw nalecych do wroga. + + + Aby wyrzuci uywan obecnie bro, wcinij $$ACTION_DROP$$". + + + Aby zajrze do plecaka, wcinij $$ACTION_INVENTORY$$". + + + Wikszo broni ma kilka trybw strzau. Aby przecza si midzy trybami strzau, wcinij $$ACTION_WPN_FIREMODE_NEXT$$" lub $$ACTION_WPN_FIREMODE_PREV$$". + + + Przez niektre miejsca nie da si przecisn nawet w pozycji kucnitej. Aby przykucn najniej, jak tylko si da, wcinij i przytrzymaj jednoczenie $$ACTION_CROUCH$$" i $$ACTION_ACCEL$$". + + + Aby wyjrze zza rogu, wcinij $$ACTION_LLOOKOUT$$" lub $$ACTION_RLOOKOUT$$". Podczas wygldania zza rogu nie moesz strzela. + + + ZDOBYCIE ARTEFAKTU: Aby zwrci skradziony artefakt do bazy, musisz zabi nioscego go przeciwnika, a nastpnie podnie przedmiot, wciskajc $$ACTION_USE$$". + + + POLOWANIE NA ARTEFAKTY: Moesz zniszczy artefakt aktywujc go. Aby to zrobi, wycignij artefakt wciskajc $$ACTION_ARTEFACT$$" i przytrzymaj $$ACTION_WPN_FIRE$$". + + + Gdy niesiesz artefakt, nie moesz biec. + + + Aby zajrze do plecaka, wcinij $$ACTION_INVENTORY$$". + + + Aby naprawi przedmiot, musisz znale technika i klikn przycisk naprawy po wybraniu przedmiotu na ekranie modyfikacji. Moesz te klikn dany przedmiot prawym przyciskiem myszy w tym samym oknie i wybra odpowiednie polecenie z menu podrcznego. + + + Wikszo broni ma kilka domylnych trybw strzau. Moesz kupowa modyfikacje, aby dodawa nastpne. Aby przeczy si midzy trybami strzau, wcinij $$ACTION_WPN_FIREMODE_NEXT$$" lub $$ACTION_WPN_FIREMODE_PREV$$". + + + Pasko toru pocisku wpywa na trajektori, a obsuga warunkuje czas, potrzebny aby bro powrcia do pierwotnej pozycji po oddaniu strzau. + + + Niektre kombinezony maj wbudowane hemy. Uywajc takiego kombinezonu nie mona korzysta z innych hemw. + + + Kada bro ma niepowtarzalne waciwoci - celno, obsug, obraenia i szybkostrzelno, co umoliwia ci wybr najbardziej odpowiedniego modelu. + + + Celno strzau podczas ruchu wyranie spada. Sta lub przykucnij, aby j zwikszy. + + + Napj energetyzujcy tymczasowo przypiesza regeneracj wytrzymaoci, co pozwala ci duej biec. + + + W trybie Wszyscy przeciwko wszystkim masz nieograniczon ilo amunicji. + + + Jednym z najczstszych zagroe w Zonie jest promieniowanie. Silne napromieniowanie doprowadzi do pogorszenia zdrowia i, jeli nie bdzie odpowiednio leczone, moe by miertelne. + + + Wyruszajc na dugie wyprawy we ze sob co do jedzenia. Jeli mocno zgodniejesz, wpynie to bardzo negatywnie na odzyskiwanie wytrzymaoci. + + diff --git a/gamedata/configs/text/pol/ui_st_mm.xml b/gamedata/configs/text/pol/ui_st_mm.xml new file mode 100644 index 0000000..780bc0a --- /dev/null +++ b/gamedata/configs/text/pol/ui_st_mm.xml @@ -0,0 +1,936 @@ + + + + Bezchmurnie + + + Pochmurno + + + rednie + + + Maksymalne + + + Wysokie + + + Niskie + + + Minimalne + + + Noc + + + Deszczowo + + + TYP GRY + + + Mistrz + + + Nowicjusz + + + Weteran + + + IKONY + + + MAPA + + + Powrt przez aktywacj + + + Zezwl na gosowanie + + + Czas trwania anomalii (min) + + + Zdobycie artefaktu + + + Powstanie artefaktu + + + Liczba artefaktw + + + Trwao artefaktw + + + Powrt artefaktu + + + Automatyczny balans druyn + + + Automatyczna zmiana druyn + + + DOSTPNE MAPY + + + Anuluj + + + Klucz + + + Sprawd klucz + + + Klient + + + Utwrz + + + Niemiertelno (sek.) + + + Wskanik niemiertelnoci + + + mierci + + + Dedykowany + + + Nagrane filmy + + + Statystyki gracza + + + Nagraj film + + + Nagrywanie filmu + + + Puste + + + Filtry + + + Wymusz. odr. (sek.) + + + Limit fragw + + + Fragi + + + Czas opnienia + + + Obraenia od sojusznikw + + + Wskaniki sojusznikw + + + Imiona sojusznikw + + + Pene + + + Tryb + + + IP (host:port) + + + Internet + + + Pocz + + + Sie lokalna + + + Dedykowany + + + Powtrz + + + Lista map + + + Limit graczy + + + Poczenie sieciowe + + + Brak anomalii + + + Opcje + + + Haso + + + Nazwa gracza: + + + Gracze + + + Liczba graczy + + + Serwer internetowy + + + Szybkie odwie. + + + Wspczynnik zmiany + + + Odwie wszystkie + + + Posiki (sek.) + + + Opcje odradzania + + + WYBRANE MAPY + + + Serwer + + + Lista serwerw + + + Waciwoci serwera + + + Info o serwerze + + + Serwer + + + Nazwa serwera + + + Ustawienia serwera + + + Obserwator + + + Pierwsza osoba + + + Swobodna kamera + + + Wolny widok + + + Trzecia osoba + + + Ustawienia obserwatora + + + Tylko druyna + + + Pocztkowa pogoda + + + Wynik + + + Limit czasu (min) + + + Rozgrzewka (sek.) + + + Opcje pogody + + + Brak ostrz. sojuszn. + + + Bez hasa + + + Brak programu Punkbuster + + + Z hasem + + + Sie lokalna + + + Internet + + + Fabryka Agroprom + + + PTA + + + Basen + + + Zmiana unikalnej nazwy powioda si! + + + Mroczna Dolina + + + Fabryka Jantar + + + bd poczenia z serwerem statystyk + + + bd poczenia z serwerem logowania + + + Uwierzytelnianie powiodo si + + + Opuszczona wie + + + Magazyny wojskowe + + + nieprawidowa nazwa + + + Basen + + + Stacja kolejowa + + + Fabryka Rostok + + + nieprawidowa unikalna nazwa + + + Czy na pewno chcesz usun + + + Opuszczona fabryka + + + PING + + + GRACZE + + + Owietlenie statyczne + + + Pene owietlenie dynamiczne + + + Rozsz. pene owietlenie dynam. + + + Dynamiczne owietlenie obiektw + + + Rozsz. pene ow. dynam. (DX10) + + + NAZWA SERWERA + + + Polowanie na artefakty + + + Zdobycie artefaktu + + + Wszyscy przeciwko wszystkim + + + Filtr: + + + Wysoka + + + Niska + + + rednia + + + Wyczona + + + Dowiadczony + + + Legendarny stalker + + + Nowicjusz + + + Profesjonalista + + + Weteran + + + Gra druynowa + + + Czstotliwo 60 Hz + + + Akcja + + + Zaawansowane + + + Alternatywa + + + Filtrowanie anizotropowe + + + Zastosuj + + + Wstecz + + + Krew + + + Jasno + + + Anuluj + + + Aktualizacje + + + Kontrast + + + Sterowanie + + + Twrcy + + + Poka odlego do celu + + + Domylne + + + Usu + + + Czy na pewno chcesz usun ten plik? + + + Gsto trawy + + + Poziom trudnoci + + + Przerwij poczenie + + + Czy na pewno chcesz przerwa poczenie? + + + Gboko pola widzenia + + + Dynamiczny celownik + + + Dynamiczna muzyka + + + EAX + + + Peny ekran + + + Gra + + + Korekcja gamma + + + Szczegowo obiektw + + + Inwersja osi Y + + + Przycisk + + + Ustawienia klawiatury + + + Ostatni zapis + + + Odlego owietlenia + + + Wczytaj + + + Wczytaj gr + + + Wyloguj si z profilu + + + Mistrz + + + Gono efektw + + + Czuo myszy + + + Wygadzaj obiekty alfa-testowe + + + Optymalizuj wygadzanie + + + GRA WIELOOSOBOWA + + + Gra wieloosobowa + + + Gono muzyki + + + Zmiany wejd w ycie po ponownym uruchomieniu gry + + + Gra wieloosobowa + + + Nowa gra + + + Nowicjusz + + + Latarki bohaterw niezal. + + + OPCJE + + + Opcje + + + Odlego czsteczek + + + Ustawienia jakoci + + + Wyjd z gry + + + Zakocz gr + + + Czy na pewno chcesz zakoczy gr? + + + Czy na pewno chcesz wyj z gry? + + + Mapowanie szczeg. wypuk. + + + Mapowanie reliefowe + + + Cienie od soca + + + Cie trawy + + + Jako soca + + + Uywaj DX10.1 + + + Wygadzanie penoekranowe + + + Mokre powierzchnie + + + Optymalizuj bufor geometryczny + + + Dym wolumetryczny + + + Renderowanie 2 + + + Typ renderowania + + + Rozdzielczo + + + Powrt do gry + + + Zapisz + + + Zapisz gr + + + Poka celownik + + + Poka bro + + + Podstawowy + + + Urzdzenie dwikowe + + + Mikkie czsteczki + + + Mikka woda + + + Dwik + + + Jako dwiku + + + Stalker + + + Jako cieni + + + Jako promieni sonecznych + + + Wygadzanie krawdzi + + + SI uywa latarek + + + Szczegowo tekstur + + + Identyfikacja bohaterw niezal. + + + Weteran + + + Grafika + + + Zasig widzenia + + + wiato wolumetryczne + + + Synchronizacja pionowa + + + Zmie unikaln nazw + + + Ten adres e-mail jest ju uywany + + + Przez internet + + + Przez sie lokaln + + + Dgnicie w plecy + + + Przez wykrwawienie + + + Zabici przez wybuch + + + Trafienie w oko + + + Trafienie w gow + + + Wersja pliku stanu gry nie pasuje do wersji gry. + + + Zabici pod rzd + + + Noem + + + Ostatni zestaw + + + Rozpocznij gr wieloosobow + + + Nazwa + + + Zmie + + + Zestaw 1 + + + Zestaw 2 + + + Zestaw 3 + + + Reset + + + Sprzedaj cao + + + Wersja + + + Prype + + + Tryb kucania/wstawania + + + Autozapis + + + Szczegowe tekstury + + + Filmy + + + Wejd + + + Wyjd + + + Utwrz + + + Nieprawidowy adres e-mail lub haso + + + Nieprawidowy profil + + + Bd poczenia + + + Serwer chwilowo niedostpny + + + Wymagane zalogowanie si do profilu + + + Bd poczenia + + + Bd poczenia + + + Bd poczenia + + + Nieprawidowa nazwa profilu + + + Nieprawidowe haso + + + Nieprawidowy unikalny pseudonim + + + Unikalny pseudonim jest ju uywany + + + Prosz najpierw zalogowa si do profilu + + + Prosz najpierw wylogowa si z profilu + + + Bd poczenia z serwerem profili + + + Po utworzeniu profilu nie bdzie moliwe jego usunicie + + + Jako SSAO + + + Tryb SSAO + + + Domylny + + + HDAO + + + HBAO + + + Poka interfejs + + + Unikalny pseudonim nie jest zarejestrowany. Prosz go zarejestrowa. + + + Unikalny pseudonim utraci wano. Prosz zarejestrowa go ponownie. + + + Stalker + + + maksymalnie wysokie + + + Rozsz. pene ow. dynam. (DX11) + + + Prosz si zalogowa, aby poczy si z serwerem zewntrznym. + + + To ID GameSpy jest obecnie uywane. Prosz uy innego ID GameSpy. + + + Nieprawidowy adres e-mail + + + Nieprawidowe haso + + + Nie mona uy ID GameSpy do poczenia z serwerem lokalnym. Prosz uy trybu gry w sieci lokalnej. + + + Wyrzucono ci z serwera. + + + Administrator ci zbanowa: + + + Serwer ci zbanowa. + + + Inform. o serwerze + + + Ten adres e-mail jest zbyt dugi. Nie mona wprowadzi wicej ni 50 znakw. + + + Nieprawidowy adres e-mail + + + Haso jest za krtkie + + + Haso jest za dugie + + + Nie znaleziono adresu e-mail + + + Nie ustawiono unikalnego pseudonimu + + + Unikalny pseudonim jest za dugi. Nie mona wprowadzi wicej ni 30 znakw. + + + Unikalne imi moe zawiera tylko cyfry, litery alfabetu ac. i symbole spec.: "#$&'()*+-./:;<=>?@[]^_`{|}~ + + + Unikalny pseudonim nie moe zawiera spacji + + + Unikalne imi nie moe zaczyna si od cyfry lub symbolu: "@", "+", ":" lub # + + + bardzo wysokie + + + Tesselacja + + + Zastosowa wprowadzone zmiany? Wszystkie zmiany bd anulowane za + + diff --git a/gamedata/configs/text/pol/ui_st_mp.xml b/gamedata/configs/text/pol/ui_st_mp.xml new file mode 100644 index 0000000..291bc59 --- /dev/null +++ b/gamedata/configs/text/pol/ui_st_mp.xml @@ -0,0 +1,742 @@ + + + + Artefakt + + + Sojusznik + + + Maks. ping + + + Profil + + + Tryby + + + Artefakt zosta zniszczony. + + + Powsta artefakt. Zanie go do bazy, eby zdoby punkt. + + + Artefakt zosta utracony. + + + Artefakt jest w naszej bazie. + + + Artefakt jest w bazie wroga. + + + Artefakty + + + Artefakty + + + Automatyczny + + + Wstecz + + + 4. Zablokuj + + + Wedug anomalii + + + Anuluj + + + zdobywa artefakt + + + 5. Zmie map + + + 6. Zmie pogod + + + + Zmie pogod na + + + Rozmowa + + + Poczono + + + Zabici + + + Opis + + + Rozczono + + + Wprowad tekst do gosowania + + + docza do gry + + + Remiza + + + (widok z pierwszej osoby) + + + fragi + + + Fragi + + + (swobodna kamera) + + + (widok z trzeciej osoby) + + + z + + + 7. Zmie tryb + + + Wysypisko + + + NAPRZD! + + + traci artefakt %s + + + nie ma ju artefaktu + + + zabiera artefakt %s + + + Najemnicy + + + jest teraz + + + docza + + + 3. Wyrzu + + + Limask + + + Trwa wczytywanie nagrd... + + + Trwa wczytywanie najlepszych wynikw... + + + (wolny widok) + + + Opis mapy + + + Rozpocz si mecz! + + + Stara wioska + + + Tryby + + + Nazwa + + + Dalej + + + Brak oddanych gosw + + + Ping + + + Gracz %s wygrywa mecz! + + + Gracze + + + Wcinij strza, eby przeczy si w tryb widza + + + Wcinij skok, eby kupi natychmiastowe odrodzenie + + + Wcinij skok, eby wybra skrk + + + Wcinij skok, eby wybra druyny + + + Wcinij skok, eby si odrodzi + + + Wcinij skok, eby rozpocz + + + Wcinij ($$ACTION_BUY_MENU$$), eby otworzy menu handlu + + + Masz: %d$. Moesz kupi odrodzenie za: %d$. Kliknij tak", eby zapaci. + + + Przygotuj si... + + + Baza naprawcza + + + 1. Ponowne rozpoczcie + + + 2. Szybkie ponowne rozpoczcie + + + zwraca artefakt + + + zdobywa punkt + + + Wybierz gracza, ktry w gosowaniu ma zosta zablokowany + + + Wybierz kategori gosowania + + + Wybierz gracza, ktry w gosowaniu ma zosta wyrzucony + + + Wybierz gracza, ktry w gosowaniu ma zosta wyrzucony + + + Wybierz map do gosowania + + + Nie mona biega z artefaktem + + + - Liczba + + + - Czas pobytu + + + - Czas odrodzenia + + + Anomalie + + + Czas trwania anomalii + + + Kiedykolwiek + + + Zdobyty artefakt + + + Artefakty: + + + Automatyczny balans druyn + + + Automatyczna zamiana druyn + + + BattlEye + + + Wy. + + + W. + + + - Pierwsza osoba + + + Wymuszone odrodzenie + + + Limit fragw + + + - Swobodny widz + + + - Swobodna kamera + + + Ostrza sojuszniczy + + + Wskaniki sojusznikw + + + Nicki sojusznikw + + + Nieskoczony + + + Niewidoczno: + + + - Wskaniki + + + - Czas + + + - Trzecia osoba + + + Rotacja map + + + Maks. ping + + + min + + + Nie + + + Odrodzenie + + + Gracze wrcili do baz + + + s + + + Nazwa serwera: + + + Bazy chronione + + + Tryby widza: + + + - Tylko dla druyny + + + Limit czasu + + + Wersja: + + + Gosowanie + + + Rozgrzewka + + + Tak + + + Wybr skrki + + + Widz + + + WIDZOWIE + + + Centrum sportowe + + + Status + + + przecza si do + + + Wolno + + + Wybr druyny + + + Druyna %s WYGRYWA! + + + Tekst + + + Czas do odrodzenia + + + Czas do rozpoczcia: + + + Pozostay czas: %d:%d; zgoda: %.2f + + + Obz treningowy + + + Gosy ZA - [$$ACTION_VOTE_YES$$]\nGosy PRZECIW - [$$ACTION_VOTE_NO$$]\nWyniki - [$$ACTION_VOTE$$] + + + Przeciw + + + Za + + + Oddany gos + + + Przeciw + + + Za + + + Gosowanie anulowane przez serwer! + + + Gosowanie '%s' rozpoczte przez %s. + + + Gosowanie si rozpoczo! + + + 1. Bezchmurnie + + + 4. Pochmurno + + + 3. Noc + + + 2. Deszczowo + + + Cios w plecy! + + + Strza w gow! + + + Udao ci si zdoby artefakt wroga. Zanie go do swojego artefaktu! + + + Udao ci si zdoby artefakt. Aktywuj go, aby dostarczy go do bazy! + + + Masz teraz rang: + + + To ty + + + Na tym serwerze nie mona gosowa. + + + Brak aktywnych gosowa. + + + Dozwolone jest tylko jedno aktywne gosowanie. + + + Gotw + + + Wszyscy + + + Druyna + + + Gosowanie nieudane! + + + Gosowanie udane! + + + Baza frakcji Wolno + + + Baza najemnikw + + + 2. Polowanie na artefakty + + + 4. Zdobycie artefaktu + + + 1. Wszyscy przeciwko wszystkim + + + Utwrz nowy profil + + + Uzyskiwanie profili konta + + + Witam + + + czenie z profilem + + + Profil zosta pomylnie utworzony. Pocz si z nim. + + + Trwa weryfikowanie unikatowej nazwy... + + + Czy chcesz uy istniejcego profilu o nazwie + + + Odnaleziono konto. Trwa uzyskiwanie zarejestrowanych profili... + + + Masz ju profil. Pocz si z nim. + + + Trwa weryfikowanie konta... + + + To unikalne imi jest ju uywane. Wprowad inne imi lub wybierz jedno z poniszej listy rozwijanej. + + + Hasa nie s zgodne. + + + 3. Gra druynowa + + + Kopiuj cze + + + Wczytaj map + + + Opis + + + Niewaciwa lub uszkodzona mapa + + + Nie znaleziono mapy + + + Nagrody + + + Najlepsze wyniki + + + Sprawd + + + Potwierd haso + + + Adres e-mail + + + Zapomniae hasa? + + + Tworzenie profilu GameSpy + + + Haso + + + Zapamitaj + + + Unikalne imi + + + Pomylnie zmieniono unikatow nazw na: + + + Druyna + + + Wolno + + + Najemnicy + + + Nowy profil + + + Logowanie do usugi GameSpy + + + zagraj + + + cofnij + + + zacznij ponownie + + + do pocztku + + + do zabicia + + + do mierci + + + do zdobycia artefaktu + + + do utraty artefaktu + + + do dostarczenia artefaktu + + + dowolny + + + Login + + + Zrzut ekranu (wszyscy) + + + Konfiguracja (wszyscy) + + + Limit pingu: + + + Limit pingu + + + Zrzut ekranu (wybrany ) + + + Konf. dla wybranego gracza + + + Wyrzu wybranego gracza + + + Zbanuj wybranego gracza + + + Restart + + + Szybki restart + + + Zmie pogod + + + Szybko zmiany pogody + + + Zmie typ gry + + + Zmie ustawienia gry + + + Przerwij obecne gosowanie + + + Limit czasu (0, 180) + + + Limit fragw (0, 1000) + + + Limit artefaktw (0,100) + + + Czas rozgrzewki (0, 3600) + + + Okres ochronny (0, 60 CTA) + + + Okr. ochronny (0, 600 T/DM) + + + Op. odrodzenia (-1, 3600) + + + Nieznany bd profilu (kod:4) + + + 10 minut + + + 30 minut + + + 1 godzina + + + 6 godzin + + + 1 dzie + + + 1 tydzie + + + 1 miesic + + + 3 miesice + + + Stale + + + Pseudonim jest za krtki + + + Bd profilu + + diff --git a/gamedata/configs/text/pol/ui_st_other.xml b/gamedata/configs/text/pol/ui_st_other.xml new file mode 100644 index 0000000..f18ae4e --- /dev/null +++ b/gamedata/configs/text/pol/ui_st_other.xml @@ -0,0 +1,501 @@ + + + + Anuluj + + + Nie + + + OK + + + Tak + + + le + + + Wrg + + + wietnie + + + Ma dowiadczenie + + + Przyjaciel + + + Mapa Zony + + + Dobrze + + + Obojtnie + + + Mistrz + + + Bonus za zdobyte PDA + + + Dozwolone jest tylko jedno aktywne gosowanie. + + + Neutralny stosunek + + + Nowicjusz + + + Gra + + + Uywane + + + Poziom + + + Wczytywanie obiektw SI + + + Serwer: wczytywanie symulatora ycia + + + Wczytywanie CFORM + + + Wczytywanie detali + + + Wczytywanie danych geometrycznych + + + Wczytywanie zapisanej gry + + + Wczytywanie stref i portali + + + Wczytywanie cieniowania + + + Wczytywanie przestrzennej bazy danych + + + Wczytywanie tekstur + + + Bezpor. adres IP + + + Brak aktywnego zadania + + + Za mao pienidzy + + + BN ma za mao pienidzy + + + Otwieranie strumienia + + + Buforowanie obiektw + + + rubli. + + + SERWER: czenie + + + SERWER: rozpoczynanie + + + Sprawdzanie klucza CD + + + Grafika + + + Strasznie + + + Naprawi + + + Nie mona uruchomi funkcji Render 2 na tym komputerze + + + Frakcja + + + Bd poczenia: klucz CD jest nieaktywny. Skontaktuj si z dziaem pomocy technicznej. + + + Bd poczenia: klucz CD jest ju w uyciu. + + + Bd poczenia: niewaciwy klucz CD. + + + Bd poczenia: nieprawidowy host. + + + Bd poczenia: nieprawidowe haso. + + + Dostpna jest nowa poprawka.\n Wersja: %s\n Lokalizacja: %s\nCzy chcesz j teraz pobra? + + + Brak nowych poprawek + + + Bd poczenia: poczenie odrzucone przez serwer. + + + Bd poczenia: serwer jest peny. + + + Bd poczenia: inna wersja. + + + czenie z serwerem gwnym + + + dn. + + + Bd + + + Bd wczytywania + + + Plik o tej nazwie ju istnieje. Czy chcesz go zastpi? + + + Nazwa pliku jest pusta + + + godz. + + + Uytkownik zosta odczony przez system ochrony BattleEye: + + + Odczono. Powd: + + + Wyjd + + + Wczytanie tej gry spowoduje utrat niezapisanych danych. Czy chcesz kontynuowa? + + + min + + + mies. + + + Plecak + + + Parametry + + + Nie udao si pobra poprawki. + + + Udao si pobra poprawk. Czy chcesz j zainstalowa? + + + Cena + + + Ranga + + + Przychylno + + + Reputacja + + + s + + + Wybierz przynajmniej jedn map + + + We wszystko + + + Pozostao + + + Gosowanie nieudane + + + Czy na pewno chcesz wyj z gry? + + + cznie + + + bardzo le + + + bardzo dobrze + + + Weteran + + + Naprawa + + + Napraw wybrany przedmiot + + + ... + + + przemieszczanie si po obszarze + + + przejcie z Zatonu do Janowa + + + przejcie z Zatonu do Prypeci + + + przejcie z Janowa do Zatonu + + + przejcie z Janowa do Prypeci + + + przejcie z Prypeci do Zatonu + + + przejcie z Prypeci do Janowa + + + przejcie z Prypeci do laboratorium X8 + + + przejcie z laboratorium X8 do Prypeci + + + emisja + + + pocztek gry + + + przybycie do Skadowska + + + zbadanie helikoptera Ogocza 1 + + + zbadanie helikoptera Ogocza 2 + + + zbadanie helikoptera Ogocza 3 + + + zbadanie helikoptera Ogocza 4 + + + zbadanie helikoptera Ogocza 5 + + + dotarcie do paskowyu + + + dotarcie do paskowyu + + + znalezienie drogi do Prypeci + + + Zulus docza do oddziau + + + Wano spaca dug + + + Wano docza do oddziau + + + zebranie anormalnej roliny + + + Sokoow docza do oddziau + + + Wczga docza do oddziau + + + skompletowanie oddziau + + + przybycie do tunelu + + + przybycie do Prypeci + + + zlokalizowanie si wojskowych + + + zdobycie niezidentyfikowanej broni + + + znalezienie oddziau zwiadowczego + + + nadejcie posikw + + + zbadanie anteny + + + znalezienie zaginionego wartownika + + + zabicie kontrolera przy wartowniku + + + wejcie do magazynu testowego + + + znalezienie dokumentacji do karabinu Gaussa + + + znalezienie martwego bojownika + + + wejcie do przedszkola + + + uratowanie lekarza wojskowego + + + nawizanie cznoci z kwater gwn + + + rozpoczcie ewakuacji Prypeci + + + dotarcie do helikopterw ewakuacyjnych + + + zakoczenie ewakuacji + + + detektor mutantw + + + zapacenie okupu za zakadnika + + + uwolnienie zakadnika + + + pomiary anomalii Popielisko + + + pomiary anomalii Szuwary + + + legowisko pijawek + + + przejcie do Kopaczi + + + podejcie do zakadu utylizacji odpadw + + + atak na stalkerw + + + znalezienie pojemnika w schowku + + + polowanie na chimer + + + znalezienie Oazy + + + rozpoczcie operacji Jeden Strza + + + poszukiwanie rda emisji psionicznej + + + dokumenty administracyjne + + + podejcie do magazynu podstacji + + + transakcja przy leniczwce + + + magazyn frakcji Powinno + + + znalezienie rda dziwnego wiata + + + znalezienie Zulusa + + + niebezpieczna jaskinia + + + Naprawa/modyfikacje + + + Kup + + + Sprzedaj + + + Handel + + + Zamknij okno ($$ACTION_USE$$) + + + Otwrz okno handlowania ($$ACTION_SPRINT_TOGGLE$$) + + + Otwrz okno naprawy i modyfikacji ($$ACTION_SPRINT_TOGGLE$$) + + + Przenie wszystkie przedmioty do plecaka ($$ACTION_SPRINT_TOGGLE$$) + + + Kup wybrane przedmioty + + + Sprzedaj wybrane przedmioty + + + start helikoptera ewakuacyjnego + + diff --git a/gamedata/configs/text/pol/ui_st_pda.xml b/gamedata/configs/text/pol/ui_st_pda.xml new file mode 100644 index 0000000..05bc09c --- /dev/null +++ b/gamedata/configs/text/pol/ui_st_pda.xml @@ -0,0 +1,279 @@ + + + + Czas + + + Wolny stalker + + + Wojskowy + + + Bandyta + + + Powinno + + + Naukowiec + + + Misje poboczne + + + Schowki + + + Wolno + + + Najemnik + + + Dziennik misji + + + Monolit + + + Mutant + + + kwiecie + + + sierpie + + + grudzie + + + luty + + + stycze + + + lipiec + + + czerwiec + + + marzec + + + maj + + + listopad + + + padziernik + + + wrzesie + + + Wycz PDA + + + Rejestr wiadomoci + + + Poka histori wiadomoci + + + Mapa terenu + + + Poka map Zony i dziennik misji + + + Statystyka + + + Poka wasn statystyk + + + Biecy czas: + + + Filtr daty + + + Poka nowiny + + + Poka dialogi + + + Legenda + + + Czas w Zonie: + + + Przetrwane emisje: + + + Wykonane misje: + + + Zabite mutanty: + + + Zabici stalkerzy: + + + Znalezione artefakty: + + + Znalezione schowki: + + + Ulubiona bro + + + Najpotniejszy zabity mutant + + + Miejsce: + + + Cel + + + Misja poboczna + + + Wrogowie + + + Przyjaciele + + + Przywdca frakcji + + + Misja gwna + + + Neutralni + + + Przewodnik + + + Schowki + + + Dowdca oddziau + + + Handlarz + + + Stalker + + + Rejestr wiadomoci + + + Wyrodkuj na graczu + + + Przesu w d + + + Przesu w lewo + + + Poka legend + + + Przesu w prawo + + + Przesu w gr + + + Maksymalne oddalenie + + + Przyblienie + + + Oddalenie + + + Osignicia + + + Wyrodkuj map na misji + + + Wyrodkuj map na misji + + + Zombi + + + skaluj + + + + skaluj - + + + Technik + + + Lekarz + + + Biece misje + + + Poka/ukryj misje + + + Osobista skrzynka + + + Zaton + + + Okolice fabryki Jupiter + + + Prype + + + Tunel Prype 1 + + + Laboratorium X8 + + + Obszary + + + Wane obiekty + + + Obszar + + + Skanery wykryy artefakty: + + + Skanery nie wykryy artefaktw + + + Schowek + + + Miejsce snu + + diff --git a/gamedata/configs/text/pol/ui_st_screen.xml b/gamedata/configs/text/pol/ui_st_screen.xml new file mode 100644 index 0000000..5fb37e0 --- /dev/null +++ b/gamedata/configs/text/pol/ui_st_screen.xml @@ -0,0 +1,348 @@ + + + + Otwrz skrytk ($$ACTION_USE$$) + + + Wyczerpanie nie pozwala ci i dalej + + + Nadmierne obcienie nie pozwala ci i dalej + + + Otwrz drzwi ($$ACTION_USE$$) + + + Rozmawiaj ($$ACTION_USE$$) + + + Przeszukaj ciao ($$ACTION_USE$$) + + + Przeszukaj ciao ($$ACTION_USE$$)\nPrzecignij ciao (SHIFT+$$ACTION_USE$$) + + + Zadanie wykonane: + + + Zadanie nie powiodo si: + + + Otrzymany przedmiot: + + + Otrzymane pienidze: + + + Nowe zadanie: + + + Utracony przedmiot: + + + Utracone pienidze: + + + Zadanie anulowane: + + + Nowe informacje o zadaniu: + + + Bro si zacia. Musisz przeadowa. + + + Przeszukaj skrzynk ($$ACTION_USE$$) + + + Podnie przedmiot ($$ACTION_USE$$) + + + Przeszukaj samolot ($$ACTION_USE$$) + + + Drzwi si zaciy + + + Drzwi s zamknite od rodka + + + Sejf zamknity + + + Potrzebny jest kod + + + Wprowad kod ($$ACTION_USE$$) + + + Podnie rolin ($$ACTION_USE$$) + + + Ustaw skaner ($$ACTION_USE$$) + + + We skaner ($$ACTION_USE$$) + + + Supresor agresji Tcza\nmodel zewntrznego kompleksu emisji\nskala1:20 + + + Uyj przecznika ($$ACTION_USE$$) + + + Zbadaj urzdzenie ($$ACTION_USE$$) + + + Pod adunki wybuchowe ($$ACTION_USE$$) + + + Odzyskaj ($$ACTION_USE$$) + + + Brak zasilania windy + + + Wcz generator ($$ACTION_USE$$) + + + pij + + + Nie moesz spa! Gwatownie krwawisz, a aktualny stopie napromieniowania zagraa twojemu yciu. Uyj lekarstw lub odwied medyka. + + + Nie moesz spa! Gwatownie krwawisz. Uyj lekarstw lub odwied medyka. + + + Nie moesz spa! Aktualny stopie napromieniowania zagraa twojemu yciu. Uyj lekarstw lub odwied medyka. + + + pij ($$ACTION_USE$$) + + + Udao ci si zdoby osignicie Obroca rwnowagi. + + + Udao ci si zdoby osignicie Ekspert systemw obronnych. + + + Udao ci si zdoby osignicie Detektyw. + + + Udao ci si zdoby osignicie Dyplomata. + + + Udao ci si zdoby osignicie Przyjaciel Powinnoci. + + + Udao ci si zdoby osignicie Przyjaciel Wolnoci. + + + Udao ci si zdoby osignicie Przyjaciel stalkerw. + + + Udao ci si zdoby osignicie Wysannik sprawiedliwoci. + + + Udao ci si zdoby osignicie Ekspert wysokiej technologii. + + + Udao ci si zdoby osignicie Handlarz informacjami. + + + Udao ci si zdoby osignicie Stranik sekretw. + + + Udao ci si zdoby osignicie Szef. + + + Udao ci si zdoby osignicie Przywdca. + + + Udao ci si zdoby osignicie owca mutantw. + + + Udao ci si zdoby osignicie Jeden z nas. + + + Udao ci si zdoby osignicie Pionier. + + + Udao ci si zdoby osignicie Asystent. + + + Udao ci si zdoby osignicie owca artefaktw. + + + Udao ci si zdoby osignicie Dowiadczony stalker. + + + Udao ci si zdoby osignicie Bogaty klient. + + + Autozapis + + + Moesz teraz wyj bro. + + + Zamek szyfrowy ($$ACTION_USE$$) + + + W nagrod za rozwizanie tajemnicy zaginionych stalkerw w twojej skrytce na Skadowsku zostay umieszczone rodki medyczne. + + + W nagrod za pomoc Powinnoci w twojej skrytce na stacji Janw umieszczony zosta kombinezon PS5-M Uniwersalna ochrona. + + + W nagrod za pomoc Powinnoci w twojej skrytce na stacji Janw umieszczony zosta kombinezon Pancerz Powinnoci PSZ-9d. + + + W nagrod za pomoc Wolnoci w twojej skrytce na stacji Janw umieszczony zosta kombinezon Powiew Wolnoci. + + + W nagrod za pomoc Wolnoci w twojej skrytce na stacji Janw umieszczony zosta kombinezon Stranik wolnoci. + + + Nie udao ci si dotrze do helikopterw i druyna ewakuacyjna opucia Zon bez ciebie. + + + Czy na pewno chcesz opuci Zon? Powrt jest niemoliwy. + + + Koniec gry. + + + Nacinij klawisz ($$ACTION_JUMP$$), aby wyj do menu gwnego. + + + Pauza + + + Gra zapisana + + + W nagrod za pomoc w zdemaskowaniu Sroki w twojej skrytce na Skadowsku umieszczony zosta artefakt. + + + Musisz poczeka, a dok zostanie uszczelniony. + + + Przyznano dostp + + + Jed wind do gry ($$ACTION_USE$$) + + + Jed wind w d ($$ACTION_USE$$) + + + Krytyczny poziom emisji psionicznych. Opu natychmiast zagroony obszar. + + + Niebezpieczny poziom promieniowania. Aby przej dalej, niezbdna jest ochrona. + + + Zbadaj helikopter ($$ACTION_USE$$) + + + Przeszukaj schowek ($$ACTION_USE$$) + + + g. + + + Wiadomo + + + Drzwi zablokowane + + + Zamknij drzwi ($$ACTION_USE$$) + + + Drzwi zamknite - obz jest w stanie pogotowia + + + Drzwi zamknite - musisz schowa bro + + + Drzwi zamknite + + + Brak zasilania drzwi + + + Otwrz drzwi ($$ACTION_USE$$) + + + Brama zablokowana + + + Uyj karty dostpu ($$ACTION_USE$$) + + + Wymagana karta dostpu + + + Drzwi nie mona otworzy z tej strony + + + - + + + Pojemnik jest zamknity. Aby go otworzy, potrzebne s dwa klucze. + + + Uyj klucza ($$ACTION_USE$$) + + + Uyj kluczy ($$ACTION_USE$$) + + + Pojemnik jest zamknity. Aby go otworzy, potrzebny jest drugi klucz. + + + Otwrz pojemnik ($$ACTION_USE$$) + + + Mechanizm drzwi zosta zablokowany od rodka. + + + Podcz zbiornik z gazem ($$ACTION_USE$$) + + + Uwaga! Zagroenie chemiczne! + + + Otwrz zawr ($$ACTION_USE$$) + + + Przeszukaj samochd ($$ACTION_USE$$) + + + Moesz uzupeni swj zapas rodkw medycznych, odwiedzajc porucznikw Rogowca i Kiryowa. + + + Niedawno w Zonie nastpia emisja. + + + Udao ci si zdoby osignicie Naznaczony przez Zon". + + + W nagrod za eliminacj niebezpiecznych mutantw w twojej skrytce na stacji Janw zostaa umieszczona amunicja. + + + Otrzymano wsprzdne schowka, ktry ju wczeniej zosta odkryty. + + + Znaleziono schowek + + + Otrzymano wsprzdne schowka + + + Nacinij dowolny klawisz, aby rozpocz gr + + diff --git a/gamedata/configs/text/rus/ui_st_ixray.xml b/gamedata/configs/text/rus/ui_st_ixray.xml new file mode 100644 index 0000000..255d47f --- /dev/null +++ b/gamedata/configs/text/rus/ui_st_ixray.xml @@ -0,0 +1,427 @@ + + + + S.T.A.L.K.E.R.: + + + + + + : + + + + + + + + + + + + + + + + + + + + + + + + + FXAA + + + SMAA + + + TAA + + + + + + () + + + + + + DLSS + + + FSR2 + + + Intel XeSS + + + + + + . + + + + + + 1024x1024 + + + 2048x2048 + + + 3072x3072 + + + 4096x4096 + + + Always Active + + + ($$ACTION_USE$$) + + + ($$ACTION_USE$$) + + + + + + + + + DoF + + + DoF + + + + + + + + + . + + + GTAO + + + + + + . + + + + + + . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . (DX10) + + + + + + % + + + + + + Binocular + + + Knife + + + BM16 + + + Groza + + + SVD + + + AK74 + + + LR300 + + + HPSA + + + PM + + + RG6 + + + RPG7 + + + Shotgun + + + AutoShotgun + + + Magazine + + + SVU + + + USP45 + + + VAL + + + Vintorez + + + Walther + + + Stat mgun + + + Bloodsucker + + + Boar + + + Dog + + + Flesh + + + PseudoDog + + + Burer + + + Cat + + + Chimera + + + Controller + + + Izlom + + + Poltergeist + + + PseudoGiant + + + Zombie + + + Snork + + + Tushkano + + + PsyDog + + + PsyDog (Phantom) + + + Artefact + + + Car + + + Smart terrain + + + Level changer + + + Actor (player) + + + Stalker + + + Helicopter + + + Space restrictor + + + Physics Object + + + Smart cover + + + Destroyable object + + + Hanging lamp + + + + + + + + + + + + + + + .jpg + + + .tga + + + .png + + + : + + + : + + + : + + + + + + + + + + + + English + + + . + + + . + + + . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + UI + + diff --git a/gamedata/configs/text/rus/ui_st_mm.xml b/gamedata/configs/text/rus/ui_st_mm.xml new file mode 100644 index 0000000..527f055 --- /dev/null +++ b/gamedata/configs/text/rus/ui_st_mm.xml @@ -0,0 +1,936 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + (.) + + + + + + + + + - + + + + + + + + + + + + + + + + + + + + + CD-key + + + CD-key + + + + + + + + + (.) + + + + + + + + + + + + - + + + + + + - + + + - + + + + + + + + + (.) + + + + + + + + + + + + (.) + + + + + + + + + + + + + + + IP/: + + + + + + + + + + + + + + + + + + + + + . + + + + + + + + + + + + + + + : + + + + + + + + + - + + + + + + . + + + + + + (.) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + (.) + + + (.) + + + + + + + + + + + + Punk Buster + + + + + + + + + + + + + + + + + + + + + ! + + + Ҹ + + + + + + + + + - + + + + + + + + + + + + + + + + + + / + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . + + + . (DX10) + + + + + + + + + + + + + + + : + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 60 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ? + + + + + + + + + + + + ? + + + + + + + + + + + + EAX + + + + + + + + + + + + + + + + + + + + + + + + . + + + + + + + + + + + + + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + NPC + + + + + + + + + + + + + + + Windows + + + + + + ? + + + Windows? + + + + + + Steep parallax + + + + + + + + + + + + DX10.1 + + + + + + + + + . + + + + + + -2 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + AI + + + + + + NPC + + + + + + + + + + + + + + + . + + + ... + + + e-mail + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . + + + + + + + + + + + + 1 + + + 2 + + + 3 + + + + + + + + + + + + + + + / + + + + + + + + + + + + + + + + + + + + + e-mail + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + SSAO + + + SSAO + + + + + + HDAO + + + HBAO + + + + + + . , + + + . , + + + + + + . + + + . (DX11) + + + , . + + + GameSpy ID . , GameSpy ID. + + + Email + + + + + + GameSpy ID . , . + + + . + + + : + + + + + + + + + E-mail . 50 . + + + e-mail + + + + + + + + + E-mail + + + + + + . 30 . + + + , + + + + + + : '@', '+', ':' '#' + + + + + + + + + ? + + diff --git a/gamedata/configs/text/spa/st_achievement.xml b/gamedata/configs/text/spa/st_achievement.xml new file mode 100644 index 0000000..0ac0958 --- /dev/null +++ b/gamedata/configs/text/spa/st_achievement.xml @@ -0,0 +1,372 @@ + + + + Qu humillante debe ser para el enemigo que lo maten diez veces seguidas sin que t sufras un rasguo! Pero no es que seas cruel: en el fondo, le ayudas a mejorar. + + + La cosecha + + + Qu certero! Has matado a dos pjaros de un tiro. En concreto, de un tiro con tu fusil Gauss. + + + Dos de un tiro + + + Tu estrategia pausada y bien calculada ha resultado letal para el enemigo: has acertado dos blancos con dos disparos de tu escopeta de dos caones en apenas un par de segundos. + + + 2 disparos, 2 muertes + + + T s que sabes lo que es ser un stalker: por algo eres el primer stalker legendario! + + + Triunfo social + + + Intentas cortar un exoesqueleto con un cuchillo? Parece que te gusta marcarte metas imposibles y superarlas. + + + Abrelatas + + + Pensaban que te tenan acorralado, pero has liquidado a cinco enemigos. Y eso que estabas a las puertas de la muerte! + + + Duro de pelar + + + Qu derroche de adrenalina! Has aniquilado a tus enemigos con una rfaga de balas. 5 muertes en 5 segundos! Increble! + + + Furia desatada + + + Tremenda puntera! Has matado a dos enemigos disparndoles de frente y sigues vivo. + + + Buena vista + + + Deja que se escondan detrs de una esquina o que tiendan emboscadas: no podrn contigo. Si hasta puedes acertar un blanco mvil sin ni siquiera apuntar! + + + Reflejos de lince + + + Djale que corra: tus balas lo alcanzarn de todas formas. + + + Para al corredor + + + Has aniquilado a 20 enemigos uno detrs de otro y sigues vivo. Menuda carnicera! + + + Masacre + + + S, eran 3 y tenan fusiles de francotirador, pero tu pericia termin con ellos. + + + Tirador de precisin + + + Has demostrado al enemigo que se puede ganar sin necesidad de disparar una sola bala. Deja a los dems que se comporten como brbaros! + + + Mensajero de la paz + + + La distancia no es un problema para un buen francotirador! Puedes dar en el blanco a 120 metros de distancia. + + + Puntera letal + + + Tu enemigo consigui liquidarte, pero le dejaste una sorpresita: una granada! + + + Para que no me olvides + + + Liquidaron a tus amigos y tu venganza ha sido terrible: 3 cadveres enemigos por 3 amigos muertos. Es justo. + + + Vengador + + + Eres el ngel de la guardia de tu amigo. Lo has salvado 2 veces de un ataque mientras llevaba el artefacto. + + + Querubn + + + Has protegido tu honor y el de tu equipo consiguiendo puntos. + + + Honorable + + + Sabes realmente dnde aparecer el siguiente artefacto? Porque lo has cogido a los pocos segundos de que se mostrase! + + + Intuicin de stalker + + + Has tenido suerte: has liquidado al enemigo con la ltima bala de tu cargador! Era l o t, est claro. + + + Cabrn afortunado + + + Has matado a 8 enemigos seguidos. Toda una provocacin, a ver cmo responde el adversario. + + + Lista negra + + + Has sobrevivido porque andas con cautela y mucho cuidado. No has muerto ni una sola vez durante el juego y has conseguido ms de 15 puntos. + + + Paranoia + + + Haces tu trabajo sin llamar la atencin y usando siempre un silenciador. Por qu hacerle saber al enemigo de qu direccin surge su muerte? + + + Muerte silenciosa + + + Has acabado con tu enemigo derrotndolo y consiguiendo el doble de puntos que el puntuador lder. Ni ms ni menos. + + + Superioridad aplastante + + + Tu valiente plan para conseguir el artefacto de inmediato ha sido un xito. Has conseguido puntos para tu equipo en los tres primeros minutos de partida. + + + Ataque relmpago + + + No le has dejado a tu enemigo ni oler la victoria: has ganado sin que pudiese conseguir un solo artefacto. Le has dado una leccin de trabajo en equipo! + + + Ni un solo artefacto + + + Has conseguido la mejor puntuacin en todas las reas: has matado a ms enemigos, has conseguido ms artefactos y te han matado menos veces. Sigue as! + + + Polifactico + + + Tu manejo del cuchillo es tremendo! Has degollado a 3 enemigos en 20 segundos. Eres una mquina de matar incluso desarmado! + + + Furia + + + Todo enemigo tiene un punto dbil: t lo has encontrado acertando en el ojo a un rival armado hasta los dientes con tu arma de cinto. + + + Taln de Aquiles + + + Las balas enemigas no pueden contigo! Has avanzado entre ellas como si nada y has acabado con el enemigo! + + + Ms rpido que las balas + + + Ests dispuesto a investigar los acontecimientos ms recientes en la Zona. Nos has permitido conocerla ms fondo descubriendo nuevas formaciones anmalas antes desconocidas para la ciencia. + + + Precursor + + + Los stalkers te valoran ms.\nEn compensacin por tu trabajo, ahora te dejan municin en tu caja personal de la estacin de Yanov. + + + No intentas evitar a los peligrosos mutantes, sino que les das caza. Los buenos cazadores gozan del reconocimiento de los stalkers. + + + Cazador de mutantes + + + Los stalkers te valoran ms.\nComo muestra de respeto, ahora te dejan suministros mdicos en tu caja personal de Skadovsk. + + + Has descubierto el secreto de la desaparicin de stalkers en Skadovsk. Al final, la culpa no era de los mutantes, sino de un enemigo ms peligroso: el hombre. Descubrir la verdad te ha hecho ganarte el respeto de los stalkers. + + + Detective + + + Los stalkers te valoran ms.\nLe han pedido al comerciante Bho que te haga un descuento. \nAhora, Barbas te ofrecer sus artefactos al mejor precio. + + + Has demostrado quin manda a los bandidos y a su lder Sultn, lo que te ha valido una gran popularidad entre los stalkers. Siempre sers bienvenido en Skadovsk. + + + Uno de los nuestros + + + Te has ganado el respeto de los bandidos.\nEl comerciante Bho te ha ofrecido un descuento por miedo a ser tu prxima vctima.\nSegn lo acordado, Barbas te pagar parte de sus ganancias. + + + Has ayudado a Sultn a zafarse de los stalkers y a tomar el control del negocio de Barbas. Ahora eres temido y respetado en Zaton. + + + Mandams + + + Los stalkers han decidido entregar el botn de Urraca, fruto de mentiras y engaos, a alguien que lo merezca ms. Ahora est en tu caja personal, en Yanov. + + + Has hecho justicia con esa escoria. Urraca enga y minti a muchos stalkers y ahora tendr que pagar. + + + Mensajero de la justicia + + + Los stalkers te valoran ms ahora.\nLos bandidos tratarn de darte caza all donde te aventures en la Zona. + + + Has encontrado todos los artefactos que conocen los investigadores de la Zona. Te has ganado el respeto de los stalkers y la atencin de los bandidos. + + + Cazador de artefactos + + + Cardn puede realizar una modificacin nica que te permitir moverte rpidamente con exoesqueleto instalando potenciadores servomotores hidrulicos. + + + Cardn tiene todas las herramientas que pueda necesitar, lo que le permite realizar nuevas y complejas mejoras. + + + Experto en sistemas de armas + + + Azot puede realizar una modificacin de casco tctico nica: un escner de infrarrojos que permite detectar a los humanos cercanos. + + + Azot tiene todas las herramientas que un tcnico de la Zona podra soar. Ahora puede realizar modificaciones avanzadas. + + + Experto en tecnologa + + + Tu experiencia te permite encontrar artefactos poco comunes ms a menudo. + + + Prcticamente no hay reas accesibles por el centro de la Zona que no hayas visitado. Has presenciado casi todas las anomalas locales. + + + Stalker experimentado + + + Tus dotes de liderazgo mejoran la probabilidad de supervivencia de tu equipo. + + + Tenas un trabajo en equipo, as que formaste un pelotn y demostrarte que eres un lder. + + + Lder + + + Libertad, Deber, los stalkers libres y hasta los bandidos tienen que reconocer tus dotes de negociador y, por tanto, te valoran. + + + Sabes cmo resolver un problema pacficamente. Quin necesita la fuerza bruta cuando las palabras pueden zanjar una disputa? Eso s, ojo con los que disparan antes de preguntar. + + + Diplomtico + + + Llevas tanto tiempo trabajando con los cientficos que casi podras ser considerado su ayudante. Para todos los cientficos del bnker, eres uno de los suyos. + + + Ayudante de investigacin + + + Tus relaciones con Deber han mejorado. Si ests en apuros, sus soldados tratarn de ayudarte.\nAzot, el tcnico que trabaja para Deber, te ofrece un descuento.\nTus relaciones con Libertad se han deteriorado.\El Hawaiano, comerciante cercano a Libertad, te cobrar todo ms caro. + + + Has sido de gran ayuda a Deber, lo que te ha hecho ganarte el respeto de sus soldados y amigos. Sin embargo, no olvides que esta faccin tambin tiene sus detractores. + + + Amigo de Deber + + + \nTus relaciones con Libertad han mejorado. Si ests en apuros, sus soldados tratarn de ayudarte.\nEl Hawaiano, comerciante cercano a Libertad, te ofrece un descuento.\nTus relaciones con Deber se han deteriorado.\Azot, el tcnico que trabaja para Deber, te cobrar ms por sus servicios. + + + Has sido de gran ayuda a Libertad, lo que te ha hecho ganarte el respeto de sus soldados y amigos. Sin embargo, no olvides que esta faccin tambin tiene sus detractores. + + + Amigo de Libertad + + + Los stalkers de Yanov valoran el equilibrio de poder entre Deber y Libertad. Por eso, tanto el tcnico como el comerciante te ofrecen ahora descuentos. + + + No te has aliado con ninguna faccin y siempre has ido por libre. No te has ganado ningn enemigo, pero tampoco has hecho amigos. + + + Un tipo ecunime + + + Los comerciantes te ofrecen cosas ms caras e inusuales. + + + Aunque sabes lo que significa vivir con lo justo, ahora no te va mal. De hecho, en ocasiones te juntas con sumas considerables, y los comerciantes valoran a un cliente de tu talla. + + + Un cliente adinerado + + + Tras conseguir las notas, Strelok hall una nueva razn para vivir y perseguir su objetivo a toda costa. + + + Tu capacidad de previsin te impuls a guardar las notas que encontraste en los escondites del grupo de Strelok hasta dar con su propietario. + + + Guardin de secretos + + + Has conseguido sobrevivir a una emisin sin cubrirte gracias a los anabiticos. Los efectos psquicos son inciertos, pero percibes un silencio mental extrao. Parece que ya no oyes tus propias ideas constantemente. + + + Marcado por la Zona + + + El comerciante Bho te ofrece un descuento por ser su mejor informador y socio. + + + Cuando echas mano a algn dato, siempre encuentras a algn interesado. Obviamente, sabes cunto pedir si vendes informacin a quien la necesita. + + + Traficante de informacin + + + Tus relaciones con los stalkers han mejorado. Si ests en apuros, tratarn de ayudarte.\nLos mdicos de la faccin han acordado venderte suministros mdicos a precio de coste. + + + Siempre has ayudado a los stalkers con problemas. Aunque no es una faccin muy unida, ahora cuentas con aliados en su hermandad extraoficial y te ayudarn en situaciones de combate y ms. + + + Amigo de los stalkers + + + Diversas informaciones recientes permitieron a los profesores Hermann y Ozersky crear una nueva droga experimental en la Zona: un anabitico. + + + Puedes sobrevivir a una emisin, incluso sin ayuda de frmacos, siempre que ests saludable. + + + Como ests siendo muy til, el profesor Hermann te ofrece suministros mdicos y equipo solo para personal del bnker a precio de coste.\nNovikov est tan habituado a trabajar contigo que solo te cobrar las piezas cuando realice modificaciones. + + diff --git a/gamedata/configs/text/spa/st_characters.xml b/gamedata/configs/text/spa/st_characters.xml new file mode 100644 index 0000000..ac9adc8 --- /dev/null +++ b/gamedata/configs/text/spa/st_characters.xml @@ -0,0 +1,336 @@ + + + + Jack + + + Vano + + + Ten. Cor. Shulga + + + Loki + + + El Hawaiano + + + Sueldahuesos + + + Senka + + + Zulu + + + To Yar + + + Topol + + + Mace + + + Licor + + + Serpiente + + + Buitre + + + Nitro + + + Trapper + + + Pedernal + + + General Tachenko + + + Ten. Bunchuk + + + Cor. Kosmach + + + Ten. Zakharchuk + + + Negro + + + Duplet + + + Cirujano + + + Calavera + + + Stake + + + Koshey + + + Cadver + + + Strider + + + Blindaje + + + Hoz + + + Morsa + + + Dcil + + + Foma + + + Profesor Ozersky + + + Novikov + + + Profesor Hermann + + + Sgto. Shlyachin + + + Ten. Sergeev + + + Sgto. Valiushok + + + Sgto. Ostrovsky + + + Capitn Klimenko + + + Ten. Sokolov + + + Capitn Tarasov + + + Cor. Kovalsky + + + Ten. Podorozhny + + + Ten. Skelya + + + Sgto. Merkulov + + + Ten. Stetsenko + + + Sgto. Yarmoshuk + + + Ten. Rogovets + + + Ten. Smirnov + + + Strelok + + + Barchuk + + + Mayor Degtyarev + + + Enano + + + Shishak + + + Osopardo + + + Torba + + + Mitay + + + Ten. Gavrilenko + + + Kremen + + + Gaiduk + + + Garry + + + Ten. Kirillov + + + Serbin + + + Chacal + + + Nimble + + + Cangrejo + + + Garmata + + + Gonta + + + Mazo + + + Cresta + + + Bho + + + Urogallo + + + Danila + + + Sultn + + + Morgan + + + Knuckles + + + Espartaco + + + Barbas + + + Cardn + + + Duende + + + Roble + + + Pianista + + + Segador + + + Kirzach + + + Tanque + + + Careto + + + Hachuela + + + Atn + + + No + + + Piloto + + + Tremor + + + Ten. Drapei + + + Sub. Umerov + + + Snag + + + Hook + + + Ridge + + + Mirone + + + Barca + + + Petruha + + + Punzn + + + Mayor Chepurny + + + Brig. 1 Valentir + + + Sgto. 1 Morozov + + + Ten. 1 Smolyak + + + El disidente + + + Sargento Gazda + + + Capitn Furtez + + + Sarg. prim. Shveiko + + diff --git a/gamedata/configs/text/spa/st_dialog_manager.xml b/gamedata/configs/text/spa/st_dialog_manager.xml new file mode 100644 index 0000000..32013cf --- /dev/null +++ b/gamedata/configs/text/spa/st_dialog_manager.xml @@ -0,0 +1,993 @@ + + + + Hay un lugar en Zaton donde las anomalas de calor emergan de debajo del agua. Lo llamaban "el Caldero" porque sale vapor y todo eso del suelo. Si el vapor no te da miedo, pinsatelo dos veces. Los stalkers curtidos dicen que ese vapor es por lo menos tan peligroso como una anomala de calor normal, si no ms. Puede que la temperatura sea algo ms alta, pero ms constante. En cuanto a los artefactos, encontraron de los normales: de fuego. + + + Dicen que hay un sitio estupendo en la cantera con montones de artefactos, aunque tampoco falto de anomalas. Al fondo hay tantas burbujas causadas por las anomalas gaseosas que duelen los ojos hasta llevando una mscara de gas. + + + El Cenizal est en el viejo cementerio que hay cerca de Kopachy. All hay muchas anomalas trmicas y algn que otro zombi. La gente procura evitar ese sitio, pero a veces encuentran artefactos en l. + + + Dicen que se han encontrado artefactos en el aparcamiento. An quedan vehculos de cuando el primer desastre de Chernbil; los medidores de radiacin se disparan con ellos. Tambin hay muchas anomalas elctricas. + + + En la Arboleda Ptrida, donde la lluvia cida ha combado los rboles. Quienes han estado all dicen que est llena de anomalas de gas. Hay tanto gas en el aire que no se ve nada bien, pero si sabes lo que haces puedes encontrar los artefactos que buscas. + + + Si buscas artefactos, ve a por los de cido. El mejor sitio para conseguirlos es el Bao de Cemento. No hay mucha competencia: a nadie le gusta ese sitio; est demasiado cerca del edificio Jpiter. + + + Un trozo de la carretera se hundi cerca de la central de Jpiter. Llamaron a ese sitio Bitumen, porque ah fue donde se fundi el pavimento. Hay muchas anomalas en esa brecha, tanto trmicas como gravitatorias. Y como son dos tipos de anomalas, los artefactos tambin sern distintos. + + + Hay un puerto pequeo ms all de la cementera; lo llaman la Cinaga. Ya no es ms que una hedionda marisma, y el agua est plagada de anomalas de gas; aunque, ms que agua, parece cido. Se han encontrado artefactos all, pero el lugar est infestado de monstruos. + + + Busca en la antigua cementera. Hay muchas anomalas, pero merece la pena. En algunos sitios es ms fcil encontrar artefactos, pero tambin hay ms competencia. Aqu solo tendrs que lidiar con hmsteres, y eso si bajas al stano. + + + Deberas buscar por Roblepino. Es esa cosa que crece entre las colinas, por encima de las anomalas de gas. Todo el mundo lo llama as desde que un empolln descubri que su corteza era una mezcla de roble y pino. Si vas a buscar artefactos por all, necesitars proteccin qumica. Y bastante municin; las colinas estn llenas de perros. + + + No siempre hay que arrojarse a una anomala para sacar un artefacto. Me han dicho que una vez encontraron un artefacto en campo abierto. Un stalker empez a tener problemas con su detector y decidi cambiarle las pilas. Nada ms hacerlo, el detector capt una seal y bam!, se dio de bruces con un artefacto. Los hay con suerte, eh? As es la Zona: unas veces te quita y otras te da. + + + Varios stalkers veteranos me han contado que algunos artefactos se alejan de las anomalas. El detector empieza a pitar, pero cuando lo sacas no encuentras nada. Son artefactos "nmadas" que pasan junto a ti, pero no hay que perder tiempo buscndolos porque solo la Zona decide a quin entregrselos. + + + Nadie ha buscado artefactos en Pripyat an. No conozco a nadie que lleve aqu el tiempo suficiente como para atreverse. + + + Ignoro si alguien conoce los mejores sitios. Pripyat apenas ha sido explorada. + + + Yo mirara en los tneles subterrneos. Dicen que hay un montn debajo de la ciudad. + + + No se sabe gran cosa de este sitio. Lo que cuenta Garry, ms que nada. Dice que existe una parra gigante que brota de una anomala cida, y que es casi tan alta como un edificio de diez pisos. Igual se est quedando con nosotros, pero yo buscara artefactos en esa parra. + + + El sitio ms seguro es el pantano cido. Est lleno de anomalas gravitatorias, pero son fciles de encontrar. No pierdas de vista la superficie del agua, no hay forma de pasarlas por alto. Las anomalas de gas son ms peliagudas, porque no hay aire que respirar. Y, creme, es mejor procurar que no te salpiquen; corroen ms que el cido sulfrico. + + + La granja quemada que hay sobre la colina est abarrotada de anomalas trmicas. All pueden encontrarse artefactos de fuego. Busca en los edificios: los artefactos estarn en el que tenga ms anomalas despus de una emisin. + + + Seguro que encuentras un montn en las cuevas que hay bajo la granja quemada. Si te paseas por la colina con un detector, no deja de pitar. Llegar hasta ellos es fcil, basta con saltar por el agujero; lo complicado es salir, porque hay muchas anomalas all abajo. Sobre todo vrtices y cidas. Incluso hay quien dice haber visto algo parecido a un cometa en ese agujero. No cabe duda de que es peligroso, pero eso significa que habr todo tipo de artefactos. + + + Has visto alguna anomala Circo? Es una anomala Trampoln enorme con dos cometas giratorios; todo un espectculo. Pero ms te vale mirarlo de lejos, porque quema con el infierno y emite montones de anomalas trmicas. Tambin genera muchos artefactos, pero estn vigilados por un poltergeist de fuego que churrusca a todo el que se acerca. + + + Si te interesan los artefactos gravitatorios, bscalos en la anomala Colmillo. No tiene prdida: las anomalas han arrancado de cuajo la mitad de la colina. Se abrieron varias cuevas en lo que quedaba de ella, y no tardaron en llenarse de snorks. Por suerte, no salen casi nunca. + + + En la Zona, colega, en la Zona. T no te rindas. + + + Buena pregunta. Avsame cuando sepas la respuesta! + + + Dnde, cundo, por qu?... Recuerda: si encuentras una mina de oro, qudatela para ti. + + + Dnde puedo encontrar artefactos? + + + Ya te lo he dicho. + + + No, no s nada ms. + + + Es todo lo que s. Pregntale a otro. + + + Qu pasa, colega? + + + Saludos. + + + Hola, stalker. + + + Hola. + + + Qu quieres? + + + Qu? + + + Empieza a hablar. + + + Buenas tardes, mayor! + + + Buenas tardes! + + + Estoy escuchando, mayor. + + + S, hola. + + + Qu? + + + Qu tal, hombre? + + + Eh, stalker. A qu vienen esas prisas? + + + Ey. + + + Eh, to. + + + Ah, hola, camarada. + + + Hola. + + + Eh! + + + Aydame, to! + + + Aydame, colega, me estoy muriendo... + + + Necesito asistencia mdica! + + + Un botiqun, rpido! + + + Aydame, colega... aaah, qu dolor! + + + Dame un botiqun... dmelo ya... + + + To... aagh... aydame, hombre! + + + Oye, necesito un botiqun... rpido... + + + Aydame, stalker... Un botiqun, por favor... + + + Me duele... socorro! + + + Necesito un botiqun! + + + Un botiqun! + + + Has odo lo de esa planta de dragado que hay al este de Skadovsk? Dicen que hay algo raro que brilla por las noches... Es raro hasta para la Zona. No s si merecer la pena echarle un vistazo. Podra ser algo valioso, pero tanto como para arriesgar mi pellejo? sa es la cuestin... + + + Por all no hay nada ms que trastos viejos. Fjate en esa columna motorizada del puente Preobrazhensky; est todo oxidado, incluido el propio puente. A muchos les encantara hurgar en esa zona, de no ser por los snorks y las anomalas... + + + Te has enterado? Sultn quiere pisarle el negocio a Barbas. Skadovsk no es lo bastante grande para l, quiere una tajada an mayor del pastel... Pero no vamos a consentirlo! Barbas y nuestros chicos les dieron para el pelo. Los matones de Sultn no se asomarn por aqu. + + + Vaya, te has enterado de lo ltimo? Ese granuja de Sultn ha tomado medidas contra Barbas... No s lo que habr hecho, pero le ha apretado las clavijas! A dnde vamos a llegar? Como sigan as, Skadovsk acabar convertido en un campamento de bandidos! + + + Has odo hablar del Oasis? Dicen que es un lugar muy difcil de encontrar y que cuando por fin lo consigues resulta an ms difcil entrar en l. Por lo visto, all hay un lago y si te baas en l se curan todos tus males y heridas. Pero hablar por hablar es tontera. Te has fijado en la cantidad de stalkers novatos que vienen aqu, al centro de la Zona? Algunos buscan artefactos, otros solo sienten curiosidad, pero la mayora desea encontrar este Oasis. Dicen que est oculto en algn lugar de esta zona... + + + Dicen que la Zona est a punto de desaparecer... Alguien encontr el Oasis y se llev su artefacto, el Corazn del Oasis. Y ahora la Zona va a desaparecer en otra dimensin y ningn stalker podr escapar jams... No, es coa, colega. Pero s es verdad que han encontrado un artefacto nuevo. Los cientficos estn trasteando con l en su bnker. + + + Has odo lo de Topol? Encontr otro estercolero en el que meter a sus chicos y, como era de esperar, fueron encantados. Pero cuando llegaron, un controlador les fri el poco cerebro que tienen. Ahora mismo estaran todos mendose encima en catres de hospital de no ser por un stalker que iba con ellos. Cuando Topol volvi en s, el stalker estaba agazapado junto al controlador, cortndole las orejas. + + + Has odo hablar del pueblo de Kopachy? Cuando el desastre original destruy la central nuclear de Chernbil, esa zona estaba tan mal que decidieron enterrar el pueblo entero. Ahora ya no hay casas all, solo tmulos radiactivos. Dicen que ya daba miedo antes del incidente; tiemblo al pensar en lo que podra haber por all hoy en da. Nadie se atreve a ir para comprobarlo. Pero si se equivocan, podra ser el paraso de los artefactos! + + + Solo dos stalkers en Yanov pueden sentir las emisiones. Nuestro mdico Sueldahuesos y Zulu, antiguo miembro de Deber. Lo de "antiguo" en realidad es nuevo... Cuando Deber lleg a la estacin de Yanov, ya haba luchadores de Libertad all, y las cosas no tardaron en ponerse feas. Ambas facciones sufrieron bajas; incluso hubo un par de stalkers que recibieron balas perdidas. Entonces Zulu les avis de que se aproximaba una emisin. Deber y Libertad tuvieron que pactar una tregua y atrincherarse en la estacin. Cuando pas todo, Zulu dej Deber y se instal en la torre junto a la estacin. + + + La gente cuenta todo tipo de historias raras; no te creas ni la mitad. Hoy en da, si pegas una patada a una piedra en la Zona salen cien charlatanes. Pero lo curioso es que algunos stalkers de la estacin de Yanov afirman haber visto ovnis. Unos dicen que son como platillos volantes de unos cinco metros de dimetro. Otros afirman que parecen aviones porque eso es lo que son. Lo nico seguro es que uno de los testigos es piloto y dice que no ha visto nada igual en toda su vida. + + + ltimamente no ganamos para disgustos. Los hombres buenos desaparecen uno detrs de otro, y luego encontramos sus cadveres sin una sola gota de sangre. Tienen que ser esos malditos chupasangres. Quin si no? Me encantara encontrar su guarida y llenarlos de plomo! Ya mismo tendremos que empezar a salir por parejas. + + + Tengo un nuevo trabajito para ti. Los tos de Libertad le han echado el guante a la PDA del legendario fundador de Deber. Y sabes qu? Resulta que enga a sus hombres cuando les dijo que los lderes militares los haban abandonado en la Zona. Se lo invent para poder formar su propia faccin! Pero los mierdas como esos no duran en la Zona. Nuestro hroe no tard en toparse con una burbuja espacial y la palm. Eso fue lo que pas... Y pensar que estuve a punto de alistarme en Deber! Que se las apaen sin m. + + + El nuevo escuadrn de Deber ha aparecido de la nada. Pinsalo: un grupo de luchadores de Deber salen de Yanov y cuando vuelven son el triple. Es que se clonan o qu? Aunque no te puedes esperar menos de Deber. Lo nico que los diferencia entre s es el rango! + + + El nuevo escuadrn de Deber ha aparecido de la nada. Pinsalo: un grupo de luchadores de Deber salen de Yanov y cuando vuelven son el triple. Parece como si echaran brotes o algo as! Con toda la hierba que fuman, no me extraara que acabasen echando races y reproducindose como las plantas! + + + Conoces a Gonta y sus muchachos? Cuando Danila desapareci e hirieron a Cangrejo, pasaron una mala racha, pero parece que ya se han recuperado. Se llevan muy bien con los cientficos; hasta estn recogiendo datos para ellos. Buen rollo, eh? Un trabajo fcil y permisos oficiales prcticamente garantizados. + + + Has odo hablar de los stalkers Mitay, Torba y Osopardo? Dicen que trabajan recogiendo datos para los cientficos. Para qu diablos los querrn? En mi opinin, esos empollones no pretenden nada bueno. En fin, al menos les va bien. Hasta puede que consigan sus permisos oficiales algn da. + + + Conoces a Espartaco y a su gente? Pues ya no volvers a verlos por Skadovsk: ahora estn vigilando el bnker de los cientficos. Lgico, si pueden deshacerse de mutantes y mantienen a raya a los bandidos. La ciencia es una causa digna que requiere paz y tranquilidad. + + + Has visto a esos mercenarios cuadrndose en la subestacin? ltimamente no, eh? Se han ido a Jpiter para proteger el bnker de los cientficos. Antes haba otros mercenarios vigilando aquello, pero por lo visto les pas algo. Yo creo que eso es bueno para el negocio! Unos mercenarios desaparecen y otros ocupan su lugar... Unas cuantas rondas ms de lo mismo y Zaton estar libre de mercenarios al fin. + + + Se comenta que el bnker de los cientficos est custodiado por los valerosos guerreros de Deber... Me pregunto qu les han prometido. De verdad creen que esos batasblancas les van a pagar con armas de plasma para ir a cazar ratones al campo? Pobres ilusos... + + + Dicen que el bnker de los cientficos est siendo custodiado por Libertad. No temen que sus especmenes se volatilicen... literalmente? El lado positivo es que si alguien intenta atacar el bnker, primero tendran que pasar por una cortina de humo! Jo, jo, jo! + + + Has visto Jpiter, la central de radioelectrnica? Qu sitio ms siniestro. Nadie sabe lo que pasa en su interior. Hay anomalas y mutantes como en todas partes... pero sigo sin atreverme a ir. Algo me dice que ese sitio es peligroso. + + + Oye, no eres t quien descubri a ese mdico de Skadovsk? Pues te lo agradezco de veras. Yo podra haber sido su prximo paciente... Todos cremos que eran los monstruos, pero parece que algunas personas pueden ser igual de malas. O pisas o te pisan; vaya mundo, eh? + + + Debera preguntrtelo yo a ti. Cuando te metiste en los tneles que hay bajo Jpiter, omos rumores de que habas llegado al centro de la Zona. Se li un buen folln; haba al menos una docena de personas dispuestas a seguir tus pasos. Pero Nitro les quit las ganas; dijo que las entradas a los tneles se haban cerrado y no se podan abrir. Hay algunos desesperados que quieren volarlas en pedazos, pero todava no saben de dnde van a sacar la dinamita ni cmo van a respirar cuando estn ah abajo. + + + Has odo lo ltimo de Garry, el stalker que sola trabajar para los cientficos? Ya no es un intruso; lo creas o no, ha conseguido un permiso oficial para estar en la Zona! Crees que debera haberse largado con su botn, no? Pues qu va, el muy chiflado se fue a Pripyat. Todos pensamos que la palmara como los dems, pero nada ms lejos. Lo consigui, pero su hazaa no sirve de mucho a los stalkers. Se top con unos militares. No tuvo problemas gracias al permiso, pero el lugar sigue estando vedado para los dems stalkers. + + + Bueno... Libertad y Deber han vuelto a enfrentarse; esta vez ha sido por un alijo de suministros. Dicen que haba equipo suficiente para pertrechar a tres divisiones de infantera. No s de quin era, pero desde luego la lucha fue de campeonato. Se movilizaron todos los stalkers de Yanov, pero por suerte se mantuvieron al margen, de lo contrario esto sera una autntica batalla campal. Creo que Deber se llev la peor parte, porque ahora la zona est vigilada por escuadras de Libertad. + + + Libertad y Deber han vuelto a enfrentarse; esta vez por un alijo de suministros. Dicen que haba equipo suficiente para pertrechar a tres divisiones de infantera. No s de quin era, pero la lucha fue de campeonato. Se movilizaron todos los stalkers de Yanov, pero por suerte se mantuvieron al margen; si no, esto sera una batalla campal. Libertad se llev la peor parte, porque ahora la zona est vigilada por escuadras de Deber. + + + Hace poco ocurri algo. Un grupo de stalkers estaban explorando los tneles de Jpiter y se toparon con algo... ms bien con alguien. Primero desenfundaron a toda leche y luego les empez a caer encima todo tipo de trastos. No tienen ni idea de lo que pas, pero perdieron a dos hombres all dentro. + + + He odo que han encontrado una especie de mutante asqueroso en los tneles que hay al norte de Jpiter. Trapper envi a un stalker a investigar; resulta que era una guarida de zumbadores. S, "era", porque aquel stalker se los carg a todos. l solito... Te pareces a l, aunque era un poco ms alto y siempre llevaba un lanzagranadas. + + + Es el fin de los stalkers... La Cinaga no para de escupir monstruos. Varios stalkers los vieron en la cementera cargando con uno de los nuestros. Haba por lo menos una docena y los cabrones eran enormes. Parecan chupasangres, pero eran el doble de grandes y mucho ms rpidos. Esperemos que a Trapper se le ocurra cmo acabar con ellos... + + + Has odo hablar de los chupasangres de pantano? Los que hay en la Cinaga? Pues son historia. Trapper fue a por ellos... Bueno, l no, contrat a unos stalkers. Dicen que reuni un grupo de unos diez hombres y peinaron el pantano cargndose a todo bicho viviente. All ya no queda ni una puetera rana. + + + Cuando corri la voz de que haba una quimera por aqu, no tard en aparecer alguien y cargrsela. Los mutantes solan matar stalkers a puados, pero parece que al fin estamos espabilando. Tengo entendido que el tipo era un cazador experto, y haba matado a ms monstruos que mosquitos t y yo juntos en toda nuestra vida. + + + Has visto a qu clase de individuos recluta Libertad hoy da? Conoc a un tal Pedernal que presuma de mil aventuras y trofeos... y resulta que no era ms que escoria. Dej que su compaero muriese en una anomala y se larg con su botn. Luego salieron a relucir algunos de sus trapos sucios en Zaton: al parecer puso a un grupo de cazadores en bandeja a una quimera. Tena un buen concepto de Libertad... ahora prefiero no afiliarme a ninguna faccin antes que tener amigos as. + + + Pues se han cargado a una quimera en Zaton. Los muchachos de Gonta, ayudados por un stalker desconocido. Espera, fuiste t, no? Por qu no me cuentas cmo fue? Por cierto, un milln de gracias; un mutante antropfago menos del que preocuparse! + + + No s si te interesar, pero por aqu hay un tal No, el tipo ms grillado que te puedas encontrar. Tiene una barcaza destartalada... creo que se la construyeron varios ilegales en una semana. Ten cuidado con l, es de los que primero dispara y luego ni se molesta en preguntar. Yo lo mandara a hacer puetas. + + + Conoces a un tal Nimble? S, un tipo escurridizo. Vende las mejores armas de por aqu, eso seguro. Me pregunto cmo las pasar tan fcilmente. Cmo transportas una Vintar sin que nadie se d cuenta? Dnde la guardas? Ese to es un puetero mago, te lo digo yo. + + + Dicen que Sultn est de mierda hasta el cuello. Intent cargarse a Barbas para quitarle el negocio, pero ha mordido ms de lo que puede masticar y se ha atragantado. Ahora lo tiene chungo, su propia gente le mira mal. Lo cierto es que ha perdido bastante influencia. + + + Dicen que Sultn tiene a Barbas cogido por las pelotas y le est exprimiendo el negocio. Eso es bueno, y Sultn se ha vuelto influyente, pero lo mejor es que ahora podemos llevar Skadovsk a nuestro modo. Va a ser genial. Quieres cubrirte ante una emisin? No hay problema si pagas el peaje! + + + Eh, to, has odo hablar del Oasis? Imagina un sitio en el que todos tus males y heridas se curan al instante. Debe de tratarse de un truco o de magia... pero yo creo que es otra cosa. El Oasis est en boca de todos, pero ya nadie habla del Genio. Bueno, quiz el Oasis sea el deseo de alguien que se ha hecho realidad. + + + Los empollones dicen que se ha recuperado un artefacto en el Oasis. Y hay ms: dicen que cuando lo estudien emplearn su investigacin para curar el cncer! Lo que yo te diga! + + + La misma mierda cada da... Todo el mundo cuenta historias sobre el centro de la Zona. Como sa del Oasis, un sitio que restaura al instante toda tu energa y te cura cualquier herida. No es ms que una sarta de pamplinas, pero al menos entretiene, sobre todo cuando te lo describen. Ay, ojal existiese un lugar parecido... habramos salvado a muchos de los nuestros. + + + He odo por radio macuto que han encontrado el Oasis. No cre que existiera, pero los hechos son los hechos. Encontraron un artefacto en l. Los cientficos lo estn estudiando; quiz puedan usarlo para fabricar algn dispositivo de curacin ultrarrpida... Nos vendra la mar de bien. + + + Kopachy. Nada nuevo para la Zona, pero s para m. Imagina todo un pueblo hundido en el suelo, solo sobresalen los tejados... Su existencia se remonta a 1986... Las casas emitan tanta radiacin que tuvieron que enterrarlas. Es escalofriante... + + + Sabes cmo acabamos viviendo con Deber en Yanov? Fue por Zulu. Entonces estaba en Deber y tena un don inaudito para detectar emisiones... Nosotros llegamos primero a Yanov; tras los stalkers, claro. Apenas tuvimos tiempo de encendernos un pitillo cuando aparecieron esos militares pegando tiros. La ltima vez que vi una matanza semejante fue hace ms de un ao, en el vertedero. Hubo montones de muertos en ambos bandos. Nuestro experto en emisiones fue uno de ellos, que Dios lo acoja en su seno. Y entonces Zulu dijo "Una emisin! A cubierto!". Qu bamos a hacer, echarlos a patadas y dejar que muriesen? Aunque fueran de Deber, eran humanos. As vivimos ahora: discutimos de vez en cuando, pero cuando llega una emisin nos sentamos juntos a esperar. Zulu dej Deber. Ahora vive como ermitao cerca de Yanov. + + + No es nada nuevo ni ningn secreto, pero Cardn, el tcnico, acabar muriendo de una cirrosis. Dicen que empez a beber cuando lleg a Skadovsk, solo de vez en cuando, para mitigar los efectos de la radiacin. Pero cuando sus dos amigos murieron, se perdi en el fondo de la botella. Supongo que estaban muy unidos... + + + Te contar una historia curiosa. Conozco a un to que dice haber visto un ovni sobrevolando Yanov. La Zona vuelve tarumba a la gente, sabes? Como si no bastara con poltergeists y controladores, ahora recurren a los viejos cuentos de platillos volantes. Por lo menos no hay majaras exorcizando malos espritus del vodka. Imagina cmo sera: "Oh, Seor, libera esta bebida de los malos espritus!"... Je, je, je. + + + Has odo hablar del pueblo de Kopachy? Cuando el desastre original destruy la central nuclear de Chernbil, la zona estaba tan mal que decidieron enterrar el pueblo entero. Ahora ya no hay casas all, solo tmulos radiactivos. Dicen que ya daba miedo antes del incidente; tiemblo al pensar en lo que podra haber por all hoy en da. Nadie se atreve a ir para comprobarlo. + + + No es ninguna novedad, pero quiz no te hayas enterado. No convivimos con Libertad porque nos guste dormir calentitos. Son las circunstancias. Cuando llegamos aqu, Libertad cay sobre nosotros... Hubo muchas bajas en ambos bandos, aunque poco a poco fuimos ganando terreno a esos anarquistas... Pero en el fragor del combate, Zulu percibi la llegada de una emisin. l nunca se equivocaba... No tuvimos ms remedio que hacer un alto el fuego. Lo que no entiendo es por qu Zulu se fue de Deber tras el incidente... + + + Hace poco nuestros exploradores informaron del avistamiento de un objeto volador no identificado sobre la estacin de Yanov; un ovni, vaya. Antes de que sueltes una estupidez, un ovni no tiene por qu ser un platillo volante pilotado por marcianos. Hasta que alguien lo identifica puede ser cualquier cosa, desde un trozo de cartn hasta una sonda meteorolgica, Estamos? + + + Fuiste t el que le trajo la PDA a Loki, no? To, vaya movida. El legendario fundador de Deber, el general Tachenko, enga a sus propios soldados como a chinos. Averi la radio para que no pudieran contactar con el exterior, form su propio grupo de cabezas de chorlito... y va y la palma como un subnormal en una condenada burbuja espacial! Surrealista! + + + Has visto al nuevo escuadrn de esos militares? No pueden ser refuerzos de su base; el adoctrinamiento todava no ha hecho mella en su sentido comn. Pero estn muy bien entrenados para ser meros stalkers. A saber. Sern de Monolith? S, s que parece un disparate! + + + Has visto a nuestros nuevos soldados? Ah, que los has trado t. Pues te has salido. Son alucinantes, aunque estn algo tensos... Es igual, un par de meses con nosotros y se calmarn. Seguro que les gusta nuestra forma de vida y se vuelven como nosotros. + + + Tenemos reclutas nuevos: un escuadrn de antiguos soldados de Monolith. Nada de novatos, estos tos estn preparados. Aunque claro, todava no se han hecho a la idea de que ya no pertenecen a Monolith. Pero no pasa nada, tenemos un cursillo de emergencia para arreglar eso y mucho ms. + + + Dicen que Libertad ha reclutado soldados que pertenecan a Monolith. Cuesta creerlo, pero s que tienen un nuevo escuadrn, y desde luego no son de fuera de la Zona. Supongo que estn desesperados... o eso, o se les ha ablandado el cerebro con tanta droga. Qu ser lo prximo, una brigada de zombis? Un batalln de zumbadores? + + + Pronto restauraremos la ley y el orden. Deber ha tomado posiciones cruciales. Nos hemos establecido en Yanov y hay un destacamento de guardias protegiendo el bnker de los cientficos en todo momento. Ya es hora de que Libertad haga las maletas y se largue; los anarquistas no son bienvenidos aqu. + + + Ver para creer: Cardn est sobrio. Te puedes creer que ha decidido dejarlo? La gente de Skadovsk le pregunt si haba llamado al nmero de Alcohlicos Annimos, pero l respondi: "El nico nmero que he necesitado ha sido el sesenta y dos". + + + Creo que fuiste t quien ayud a nuestros muchachos a conseguir el trabajo de vigilantes de los cientficos, no? Te lo agradezco. Fue bueno ver a nuestros hombres en el bnker en vez de a esos mercenarios. + + + A ver... Nos estamos poniendo las botas con el escondrijo de Deber. Ahora lo usaremos para lo que fue ideado: como prisin para sonsacar a la escoria de Deber todos sus secretos. Je, je. Ah, gracias por el soplo sobre el sistema de alarma; sin refuerzos no habramos durado mucho. + + + Otra victoria para Deber! Esos anarquistas se han confiado demasiado. Crean que podran colarse en nuestro almacn secreto como si tal cosa? Y un cuerno! Los cogimos por sorpresa y los aplastamos como a cucarachas. + + + Todos saben que los de Libertad son unos canallas, pero hemos descubierto algo sobre uno de esos pirados. En Libertad se haca llamar Pedernal, pero antes era un stalker llamado Urraca. Al menos se era su nombre cuando lleg a Zaton y casi consigue que unos mutantes se comieran a unos cazadores. Por su culpa estuvieron a punto de morir despedazados por una quimera; el muy cabrn aprovech para desvalijarlos y huir a Yanov. Cuando se uni a Libertad, empuj a su compaero a una anomala para quedarse con su artefacto. As las gastan los de Libertad. + + + La nueva sensacin en Zaton es el proyecto de construccin naval de un stalker llamado No. Experimentado, motivado y 100% pirado. Su ltima idea disparatada consiste en salvar a todos los stalkers del apocalipsis. Pretende hacerlo reformando una vieja barcaza para hacer un "arca". Chiflado, te lo digo yo. Si decides pasarte a verla, procura no ofender a No. Si no se cabrea, es bastante inofensivo. + + + Conoces a Nimble? Ahora mismo est en Skadovsk. Es un verdadero profesional, puede conseguirte todo lo que necesites. Bueno, casi todo. ltimamente trabaja con armas y trajes, pero siempre con lo mejor! Artculos de especialista, diseos experimentales, productos hechos a mano... Su gnero no es barato, pero es natural: la exclusividad se paga. + + + Sabas que Piloto ha estado siguiendo una nueva ruta entre Zaton y Jpiter? Antes tardaba mucho porque tena que subir la colina a pie y eludir las anomalas, pero ahora hace el viaje sin apenas sudar, como un paseo por el parque y en la mitad de tiempo. Piloto admite que el mrito no es suyo; fue un stalker quien le mostr la ruta en sus mapas. Por un precio, claro, pero tampoco te creas que fue muy elevado. + + + A decir verdad, no mucho. + + + Siempre hay algo nuevo en la Zona, mires donde mires. + + + Bueno, ahora ests aqu. Eso es una novedad, no? + + + Qu hay de nuevo en la Zona? + + + No se me ocurre nada ms que pudiera interesarte. + + + Te lo dira con gusto, pero no he odo nada ms. + + + Te he contado todo lo que s. + + + Mmm... Quiz deberas preguntarle a Urogallo, en Skadovsk, si necesita ayuda; por lo visto, los stalkers desaparecen sin dejar rastro. Todo el mundo culpa a los chupasangres porque cuando encuentran los cadveres no les queda una gota de sangre. Pero esto ya es demasiado... Casi todos los das desaparece alguien. Los chupasangres no actan as... Urogallo ha contratado a un cazador experto para rastrear a estos monstruos. + + + Si un stalker necesita dinero, tiene dos alternativas: encontrar artefactos y venderlos a los comerciantes por 30 kopecks de rublo, o trabajar para los cientficos. Siempre tienen algn encargo para los stalkers, ya sea procurndoles artefactos raros o cadveres de mutantes. Pero por encima de todo, si les caes en gracia podran darte un permiso para la Zona, oficial y legtimo. Imagnate pasando por un control militar con su botn en la mochila y saludando! Un sueo hecho realidad! En fin, el bnker de los cientficos est al oeste de la estacin Yanov. Ya han contratado a un stalker, quiz puedan contratar a otro como t. + + + Tu xito depende de lo que hagas. Si no te importa cazar mutantes, te llovern las ofertas. Psate por el stano de Yanov y pregunta por Trapper; paga bien por limpiar la zona de mutantes, pero no dispares al primer pseudoperro que encuentres. Trapper paga por monstruos concretos que interfieren en la recuperacin de artefactos o frecuentan los lugares que los stalkers utilizan para esconderse de las emisiones. + + + Los tipos como t que vienen a Skadovsk suelen visitar a Barbas. Paga bien a cambio de artefactos... pero te dir algo: no tiene ojo para los negocios. No est dispuesto a compartir beneficios con los poderosos... y eso le acabar costando caro, sabes lo que quiero decir? + + + Si necesitas pasta, habla con Bho. Vende todo lo que un hombre de verdad necesita en Skadovsk: informacin, armas, lo que sea. Si tienes algo valioso, como un documento o la PDA de un stalker, llvaselo a Bho y cobrars. Tambin puedes sacar ms cumpliendo sus rdenes personales. Pregntale si necesita que le hagan algn encargo. + + + Deberas hablar con Gonta, vers la historia que te cuenta. No hace mucho apareci una quimera en Zaton, as que Gonta y sus muchachos fueron a por ella. Se dividieron en dos grupos para seguirle el rastro y enviaron a uno de los cazadores a buscar la guarida de la chupasangre. Cuando por fin la encontraron andaban cortos de hombres, as que se les uni otro stalker, uno llamado Urraca. No s exactamente cmo fue, pero parece que Urraca se larg en cuanto vio a la quimera. Gonta se salv por los pelos y pudo sacar a uno de sus hombres, muy malherido. Pero la quimera anda suelta y necesitan gente para acabar con ella. + + + Eso es fcil: si quieres ganar pasta gansa, Sultn es tu hombre. Es el jefe local, si quieres ganarte bien la vida, te encontrar trabajo. + + + Si se te da bien la bsqueda de artefactos, habla con Barbas. Aqu todos le respetan. Es el nico hombre de Skadovsk que te pagar bien por tus artefactos. Tiene contactos para sacarlos fuera de la Zona. Adems, es un buen hombre, sabes? Siempre est ah para darte un consejo o un trabajo decente. + + + Hay un comerciante llamado Bho en Skadovsk, un tipo algo desagradable. Siempre se est quejando de que Barbas consigue todos los artefactos, pero si necesitas dinero ve a ver qu puede ofrecerte. Esa comadreja vende mucho ms que municin. Puede darte informacin, venderte sus cosas, comprarte las tuyas y pagarte por todo lo que pueda interesarle. Ve a verle, est en la segunda cubierta de popa. Seguro que llegis a un acuerdo. + + + Habla con Vano, suele estar en el bar de Yanov. Est metido en un apuro con unos bandidos; ha intentado saldar su deuda en varias ocasiones. Tiene experiencia y todo eso, es capaz de encontrar anomalas con los ojos cerrados... y aun as no para de meterse en los. Ms de uno le ha sugerido que se largue; la mafia no lo encontrara en la Zona. Pero es demasiado orgulloso para huir y no hay mucha gente dispuesta a ayudarle con su problema con los bandidos... + + + Djate de trabajos, to... Los bandidos estn descontrolados; han capturado a Mitay y exigen un rescate. Mitay fue uno de los primeros stalkers de Yanov; l construy este sitio para que la gente pudiera protegerse de las emisiones, y ahora que necesita ayuda nadie mueve ni un dedo. Libertad y Deber estn demasiado ocupados sacndose los ojos mutuamente... pero los dems deberan hacer algo! Ah, para qu engaarnos... Ni siquiera los hombres de Mitay saben cmo liberarlo. Si quieres ayudarles, habla con Osopardo; est en el bar de la estacin. + + + Nitro, el tcnico de Yanov, necesita materiales. Por si no lo sabas, se le dan muy bien las armas y la electrnica. Pero a veces el talento no basta; necesita materiales adecuados. El problema es que ya no queda nada en los sitios seguros, y los dems son demasiado peligrosos. Nitro espera encontrar a alguien dispuesto a correr el riesgo, pero seguro que paga generosamente. + + + Me han dicho que el to Yar de la estacin de Yanov andaba buscando un stalker para que le ayudase sin hacer preguntas. No entiendo por qu no se lo pide a sus colegas de Libertad... En fin, el viejo es de fiar, deberas hablar con l para ver si llegis a un acuerdo. + + + Mmm... No conozco a nadie parecido. + + + A m tambin me gustara saberlo. + + + Cmo demonios quieres que lo sepa? + + + Sabes de alguien que pueda darme trabajo? + + + Eso ya me lo has preguntado. + + + No podra contarte nada nuevo. + + + Ya tienes mi respuesta. + + + Vale, olvdalo. + + + Me gustara preguntarte una cosa. + + + Pregunta. + + + Pide por esa boca. + + + Dispara. + + + Te escucho. + + + Socorro! + + + Toma este botiqun. + + + Lo siento, no tengo nada. + + + Entiendo. + + + Qu tienes entre manos? + + + Puedo acompaarte? + + + Claro. Cuantos ms, mejor. + + + Lo siento, yo voy por libre. + + + Pues venga, vamos. + + + Tengo que ir a un sitio. Me llevas a cambio de dinero? + + + Claro. Adnde tienes que ir? Elige. + + + Vale, en marcha. + + + He cambiado de idea. + + + No, tengo asuntos importantes que atender. + + + Nada, estoy descansando. + + + No mucho, relajndome un poco. + + + Qu crees que estoy haciendo? Nada, joder. + + + Persiguiendo a mutantes. + + + Ando tras un par de gilipollas. Panda de retrasados... + + + Siguiendo a unos mercenarios. Menudos cabronazos. + + + Voy tras un grupo de fanticos. Soldados de Monolith, en concreto. + + + Ando tras unos zombis. Hay demasiada escoria suelta. + + + Vale. Te costar + + + Sabes? Me lo he pensado mejor. + + + No tengo tanto. + + + Oh, nada, supongo. + + + Estoy siguiendo a unos mutantes. Alguien tiene que ponerlos en su sitio. + + + Voy tras unos matones de por aqu. + + + Ando tras unos mercenarios. Tienen una deuda pendiente. + + + Ando tras esos pirados de Monolith. + + + Intento localizar a unos morosos. + + + No hago nada ahora mismo. + + + Sigo a unos mutantes. Quiero echar a esa escoria de aqu. + + + Estoy de misin; sigo a un grupo de bandidos. + + + Los mercenarios son mi objetivo. Ando tras la pista de un grupo. + + + Sigo a un pelotn de Monolith. + + + Persigo a esos panolis... Esa gente de Libertad. + + + Busco artefactos. + + + No busco setas, precisamente... sino artefactos. + + + Ando buscando artefactos. + + + Me dirijo a la anomala Caldero, la que est junto a la pequea arboleda. + + + Voy hacia el lago norte. Quiero alejarme de la pennsula una temporada. + + + Voy ms all del lago norte; por ah hay un camping apaado. + + + Me dirijo al bosque que hay ms all del lago norte. + + + Voy a un pequeo bosque al oeste del aserradero. + + + Voy rumbo a la colina que hay al oeste del pantano. Ah no hay ni rastro de la contaminacin del pantano. + + + Me dirijo al complejo de la antena. Hay un sitio bonito al oeste de all. + + + Voy al bosque que hay al oeste de Roblepino. Vente, si quieres, no me importa tener compaa. + + + A una arboleda entre el Bosque de Hierro y los talleres. + + + Hacia el gran puente. Se supone que hay un sitio seguro y solitario al este de ah. + + + Rumbo a un aparcamiento, al sur de la vieja barcaza. + + + Nada especial, me gusta viajar. Iba a acampar en una colina al este de Skadovsk. + + + A una arboleda entre Izumrudnoye y la gasolinera. + + + A una bifurcacin que hay junto a la planta de tratamiento de basuras. + + + A la anomala Caldero. + + + Al puesto del guardabosques. All hay un bloque de edificios; ya lo habrs visto. Uno de ellos tiene calderas. No s qu clase de negocio habr dentro. + + + A una arboleda al oeste de la granja quemada. + + + A una arboleda al este de la anomala Caldero. + + + A un montculo pasado el lago norte. + + + A una pequea arboleda al sur de la granja quemada. + + + Voy rumbo al oeste de Skadovsk De donde vienen los conductos. + + + Me dirijo a un punto intermedio entre Skadovsk y la planta de dragado. + + + A un pantano cerca de la vieja barcaza. + + + A un arroyo cerca de la anomala Cicatriz. + + + A la gasolinera. + + + A los barrancos de Roblepino. + + + Quiero buscar artefactos en la anomala Garra. + + + Me dirijo a una colina al oeste de la anomala Caldero. + + + A la anomala Bosque de Hierro. + + + Voy a la anomala Bosque de Hierro a buscar artefactos. + + + Voy al pantano. No ser fcil respirar con tanto gas, pero los artefactos que hay por all compensan. + + + Me dirijo a los talleres de la subestacin. Dicen que es un buen lugar para esconderse de las emisiones, as que voy a probar. + + + Hay un aserradero cerca, sabes? se es mi destino. Quiero comprobar si hay algo de valor. + + + Me apetece tomarme un descanso en el complejo de Izumrudnoye. Ah, seguro que est muy bien... para jabales y cerdos mutantes! Ja, ja! Bueno, seguro que puedo acampar. + + + A un puente. Creo que viene marcado como Preobrazhensky en el mapa. + + + A la planta de dragado. Seguro que an hay cosas de valor por ah. + + + Me dirijo a la vieja barcaza. + + + Quiero pasar por la granja quemada, a ver si han aparecido objetos nuevos. + + + A la meseta sur. + + + A la grieta que hay junto a la gasolinera. + + + Voy al complejo de la antena de Krug. Necesito un lugar a salvo de emisiones. Lo malo es que dicen que hay muchos monstruos por all. + + + Voy al complejo de la antena de Krug. Necesito un lugar a salvo de emisiones. Lo malo es que dicen que hay muchos monstruos por all. + + + Voy a buscar artefactos cerca de Roblepino. Esperemos que no vengan memos a molestar. + + + Al pozo negro... Ya sabes, a la planta de tratamiento de basura. Es un buen sitio para huir de las emisiones. + + + Voy al embarcadero del lago norte. Una vez all, ya ver. + + + Me dirijo al muelle, donde las gras. No es mal sitio para acampar. + + + Tengo pensado ir a la anomala Caldero a buscar artefactos. Espero que mi atuendo soporte esas temperaturas. + + + A la anomala Cicatriz. + + + Quiero comprobar si mi equipo es ignfugo y buscar artefactos, todo ello en la anomala Circo. + + + Al puesto del guardabosques. + + + Voy a acampar en Shevchenko. Est a salvo de emisiones y all es difcil que ataquen los mutantes. + + + Voy a acampar en Shevchenko. Est a salvo de emisiones y all es difcil que ataquen los mutantes. + + + Me dirijo al muelle, donde las gras. No es mal sitio para acampar. + + + Quiero deshacerme de mi botn y refrescarme el gaznate. Skadovsk es el lugar idneo. + + + Voy al punto de control del ejrcito, junto a la central de Jpiter. + + + Al almacn de contenedores. + + + Me diriga a un enclave muy discreto entre el almacn de contenedores y el tnel sur. + + + A la estacin de Yanov, a descansar por fin. + + + Al tnel que hay al norte de Kopachy. + + + Voy a un sitio espeluznante: el pueblo de Kopachy... o lo que queda de l. S, voy provisto de antirradiaciones y municin. Voy a necesitarlo! + + + A la fbrica de cemento. Un buen punto de observacin. Nadie puede vigilarte desde arriba! + + + A la fbrica de cemento. Quiero echar un ojo al stano. + + + A la subestacin cerca de Yanov. + + + Me dirijo a un lugar cerca del tnel ferroviario sur. + + + Voy a un estanque refrescante, cerca de la central de Jpiter. + + + Voy al complejo Volkhov AA. Quiero cargarme a unos zombis. + + + Al bnker. Ya sabes, el del complejo Volkhov AA. + + + A la arboleda anmala cerca de la cantera. A ver si encuentro un par de artefactos. + + + Voy a la cantera, donde las furgonetas de los obreros. + + + Hay un sitio entre la cantera y la estacin de Yanov. Quiero quedarme all un tiempo. + + + Me dirijo al tnel este, el que pasa bajo la central de Jpiter. + + + A la anomala Bitumen. A ver cmo aguanta mi traje el fuego. + + + Voy a la anomala Plavni a buscar artefactos. Tengo suficiente antdoto; lo que me preocupa son los monstruos. + + + Al complejo de ventilacin, entre la fbrica y el almacn de contenedores. Por qu? Pues... Yo qu s... + + + Voy a los talleres de Jpiter. A lo mejor averiguo a qu viene esa mala fama. + + + Voy al mismsimo fondo de la cantera. Los stalkers dicen que hay muchos artefactos por ah. + + + Al aparcamiento de los vehculos viejos. Busco artefactos con anomalas elctricas. + + + Hay un pequeo enclave situado entre el complejo Volkhov AA y el almacn de contenedores. se es mi destino. + + + Al bnker de los cientficos. + + + A la torre de refrigeracin, al noroeste de la estacin de Yanov. + + + A la central de Jpiter, pero no tengo intencin de entrar. Me pasar por los edificios de administracin, a ver qu opciones tengo. + + + Voy a la anomala Cenizal, pasado Kopachy. + + + Voy a los talleres de Jpiter. Dicen que ha cado un helicptero por esa zona; me gustara ir a echarle un ojo. + + + Voy al tren dilapidado que hay entre el complejo Volkhov AA y el aparcamiento. + + + Voy al tnel sur para estar a salvo por si hay una emisin. + + + Voy a un sitio que hay entre Yanov y Kopachy. + + + Voy a un lugar que hay cerca del canal, al sur de la fbrica de cemento. + + + Voy a un lugar que hay cerca del canal, al norte de la central de Jpiter. + + + Voy a echar un vistazo a la cantera. + + + Voy a echar un vistazo a la cantera. + + + Voy a inspeccionar la zona que hay al norte de Yanov. + + + Hacia el complejo Volkhov AA. Hay un sitio estupendo para acampar entre el complejo y el pueblo de Kopachy. + + + Oh, viajo, sin ms... Voy rumbo al almacn de contenedores. + + + Estoy supervisando la zona. Ahora iba a comprobar qu hay al sur del punto de control militar. + + + A la pista de aterrizaje, la que hay entre la fbrica y el almacn de contenedores. + + + Voy rumbo a un lugar al sur de la estacin de Yanov, junto a las vas del tren. + + + A un sitio al norte de la estacin de Yanov. + + + A la arboleda anmala. + + + A un lugar al sur del complejo AA. + + + Al estanque refrescante, justo al lado de la anomala Bao de Cemento. + + + Voy a inspeccionar los alrededores de la central. + + + Voy a inspeccionar los alrededores de la central. + + + Al patio que hay tras la lavandera. + + + A la lavandera, el lugar ms seguro de la zona. + + + Al hospital. Espero no cruzarme con esos lunticos de Monolith de camino... + + + A la librera. He odo que es un lugar bastante protegido de las emisiones. + + + Voy a ver esa atraccin local: el smbolo de la Amistad sin Fronteras. No est lejos de la librera. + + + A la vieja tienda de ultramarinos. No es que vayas a encontrar pan recin hecho, pero est bien para cobijarse de una emisin. + + + A la tienda de Berezka. + + + Al viejo jardn de infancia. + + + A la plaza del cine, cerca del monumento a Prometeo. + + + Iba a la escuela. Dicen que est plagada de monstruos, pero servir en caso de que haya emisiones. + + + Iba a la vieja estacin de servicio. Se supone que hay una anomala en la primera planta y puede que tambin artefactos. + + + Estoy explorando esta parte de la ciudad. Ahora iba a la vieja tienda de ultramarinos. + + + Estoy explorando esta parte de la ciudad. Ahora iba a la vieja tienda de ultramarinos. + + + Estoy supervisando el rea. Ahora quiero echar un ojo al edificio que hay tras el bloque de apartamentos. + + + Quiero registrar el centro de ocio pblico. Yubileiny, creo que se llama. + + + Ando buscando anomalas por aqu. He odo que hay una anomala de fuego en un patio, al oeste del jardn de infancia. + + + Oh, nada, recorriendo la ciudad. Iba al bloque de apartamentos. + + + Oh, nada, recorriendo la ciudad. Iba al bloque de apartamentos. + + + Oh, nada, recorriendo la ciudad. Iba al bloque de apartamentos. + + + Ando de un lado para otro. Ahora iba al puerto fluvial. Espero no cruzarme a esos lunticos de Monolith... + + + Ando buscado un lugar en Pripyat con montones de artefactos y sin monstruos ni soldados de Monolith. Je, je, ahora en serio, voy a comprobar una anomala de la que me han hablado al sur del puerto fluvial. + + + Rumbo al cine Prometeo. + + + A la plaza del cine, cerca del monumento a Prometeo. + + + Quiero descansar un poco y recobrar el aliento. Hay un buen sitio en un patio, al norte del jardn de infancia, que sera perfecto. + + + Al sur del bloque de apartamentos. + + + Voy a un sitio que hay entre el jardn de infancia y el bloque de apartamentos. + + + Hay un sitio llamado la Cicatriz que parece haber sido arado a base de hachazos. Se han encontrado artefactos all, pero cuando entras empiezan a pasar cosas muy raras. El cerebro se queda tan tocado que hasta olvidas cmo respirar, as que ni hablemos de intentar salir de ah echando leches. + + + Sabes dnde est la planta de dragado? Ha sufrido anomalas gravitatorias, pero eso no es grave para un stalker experimentado. T ve lanzando tornillos, como siempre. Tambin hay radiacin, tanto dentro como fuera. Es como un pequeo reactor de uranio enriquecido. + + + Aqu hay una vieja subestacin llamada el Bosque de Hierro. Entenders por qu cuando la veas. Hay quien dice haber encontrado varios artefactos tras una emisin. Tampoco es tan peligroso; hay anomalas elctricas y algo de radiacin... Por no hablar de los poltergeists. Si no te escondes a tiempo, te sepultan bajo cualquier mierda. + + + Trabajo? No s, la verdad... Pero si tienes ocasin de ayudar a Libertad, ve a ver a nuestro jefe a Yanov. Dirgete al ala sur y busca a Loki; as se llama. Recuerda, si crees en el progreso de la humanidad, en un bien supremo y en la importancia de los dones de la Zona, hars lo correcto. + + + Ni idea. Pero si encuentras algo que pueda sernos de ayuda para luchar contra la Zona y los que piensan que es un regalo y no una maldicin, ve a ver al comandante de la expedicin de Deber, el teniente coronel Shulga. Est al frente de la estacin de Yanov, lo encontrars en el ala norte. Una cosa est clara: los civiles que contribuyan a la victoria de Deber, recibirn una generosa recompensa. + + + Todo el mundo habla de las cosas inexplicables que ocurren en la vieja torre de refrigeracin. Si sintonizas la frecuencia comn, captars seales de auxilio, como si algn pobre infeliz estuviera intentando salir de una anomala. Pero cuando le pides sus coordenadas nunca responde. Y lo ms raro de todo es el sonido; esa clase de distorsin es difcil de explicar. + + + Me dirijo a un lugar a medio camino entre Skadovsk y Shevchenko. + + + A Jpiter. No creo que pueda avanzar ms. + + diff --git a/gamedata/configs/text/spa/st_dialogs.xml b/gamedata/configs/text/spa/st_dialogs.xml new file mode 100644 index 0000000..32a227a --- /dev/null +++ b/gamedata/configs/text/spa/st_dialogs.xml @@ -0,0 +1,978 @@ + + + + Oye, tengo que preguntarte algo... + + + Desembucha. + + + Qu piensas de Nimble? + + + Nimble? Un da de stos le pillar en un sitio tranquilo con la mercanca y le dar un buen repaso a ese gilipollas. + + + Sabes algo del Oasis? + + + Bueno, me contaron una historia algo extraa una vez. Los chicos del vertedero empezaron a difundir un rumor sobre el paradero del Oasis, dando a entender que era real. Despus se fueron a dicho lugar y se quedaron esperando. Imagina! Se presentaron all un montn de crdulos, tantos que los que empezaron con el rumor se fueron de la Zona poco despus. Y por qu no? Ya tenan la vida resuelta. Solo uno de ellos se qued all, un tipo llamado Yoga... + + + Que si vas all, se curan todas tus enfermedades. La verdad es que suena bien: adis a la resaca y a las hemorroides! Encuntralo, monta all un chiringuito y te forrars! + + + No me interesa lo ms mnimo ese tema. Eso solo se lo creen los perdedores, los hombres de verdad no creen en mierdas de sas. Siempre que voy al bar, me veo rodeado de stalkers discutiendo sobre dnde est el Oasis. Y todos esos capullos aseguran saber el lugar exacto, que vara segn cada versin. + + + Conoces a un stalker llamado Urraca? + + + Claro. Con solo verlo te das cuenta de que es un gilipollas integral. Y varios stalkers me han dicho que es un cabronazo. Pero no s dnde est... Tendrs que encontrarlo t mismo. + + + No. Es la primera vez que escucho ese nombre, to. + + + Sabes quin puede haber robado cosas de una caja personal? + + + Una rata. Mejor pregunta a los jefes en Yanov, porque son famosos por cazar ratas. + + + Quin podra ayudarme a desencriptar algo? + + + Me han dicho que a Nitro de Yanov se le da muy bien. Parece ser que cuando no trabajaba para Deber, le encargaron que piratease varias PDA de stalkers. Ah, qu tiempos aquellos... + + + No me hables de rollos cientficos, to. Para eso necesitas a un hacker. Conoc a uno en la trena, pero nunca ms he vuelto a dar con uno. Cuando sal de all, todava le quedaban unos cinco aos para salir... + + + Tengo la PDA del comerciante de Deber. Conoces a alguien al que le pueda interesar? + + + Hay un comerciante en Skadovsk llamado Bho. Los chicos le llevan PDA de stalkers y paga bastante bien. Adems no hace demasiadas preguntas, as que genial. + + + Pues cualquiera, to. Piensa un poco: su bando enterrar vivo a ese capullo y las otras facciones montarn un folln que no veas, pero Bho de Zaton se encargar de que esa PDA se esfume. Eso s, solo l sabr dnde volver a aparecer esa PDA, as que t decides. + + + Dnde puedo encontrar herramientas por aqu? + + + Si necesitas herramientas quirrgicas, busca en hospitales y plantas de emergencia. Si buscas herramientas de construccin, ve a la cantera de Jpiter. Y si quieres herramientas pequeas, busca en talleres antiguos. + + + Y yo qu s? No necesito herramientas para que los stalkers aflojen la pasta. Tranqui, que estoy de broma. + + + Quin puede desbloquear un mdulo de memoria? + + + Buena pregunta! sa es mi especialidad! Ja! Eres tonto, colega? Habla con un tcnico o con un cientfico. De verdad pensabas que yo controlo algo de ese tema? + + + Voy a serte sincero: la ltima vez que desbloque un mdulo de memoria fue en el colegio. Y el mdulo en cuestin era un puto disquete. Mejor dale la lata a algn experto en el tema. + + + Quin podra abrir un contenedor de acero? + + + Conoces a Cardn de Skadovsk? El otro da se pill una cogorza y me empez a perseguir con una palanca. Seguro que podra usar esa palanca para algo ms interesante y romper todo lo que necesites. + + + Hasta yo podra hacerlo de tener las herramientas adecuadas. Pero entonces, quin se encargara de introducir equipo en la Zona con ellos? Habla con los tcnicos, colega, eso se les da muy bien. + + + Estoy buscando a un stalker llamado Snag. Sabes dnde puedo encontrarlo? + + + Pues no s. Pregntale a Sultn en Skadovsk. El jefe sabe dnde estn todos los idiotas. + + + S, me han hablado de ese fracasado. Suele andar por Zaton, as que no lo encontrars por aqu. + + + Sabes algo de los helicpteros siniestrados? + + + A quin le podra interesar informacin sobre el fundador de Deber? + + + No se me ocurre nadie a quien no le interese! Esa informacin es una bomba, chaval. Lo mejor es que hables con Bho de Skadovsk: as ganars pasta pero no te crears enemigos. + + + No. Piensa un poco: tengo a Deber a un lado, a Libertad al otro y a los stalkers persiguindome. Te parece que tengo tiempo para mirar al cielo? + + + Los chicos dicen que vieron uno colgando de los cables del Bosque de Hierro, pero ah afuera vas a ver muchos ms. Una de dos: o te encuentras con una anomala o un poltergeist te machaca la cabeza. + + + S, unos colegas vieron cmo se estrellaba uno en la meseta, pero no hay forma de llegar all. Decan que volaba tan raro que pareca que el piloto se haba metido algo. + + + Me contaron que un helicptero quiso jugar a ser submarino y se sumergi en un pantano. Como te imaginars, se hundi rpidamente, el agua de all no es que sea precisamente saludable: tiene un montn de veneno, compuestos qumicos y vete a saber qu ms. + + + Has visto soldados por aqu? + + + A quin le podra interesar un mapa del rea entre Zaton y Jpiter? + + + A Piloto, supongo. Es el gua principal de esas zonas. Le vendra bien usar un mapa en vez de orientarse con las estrellas, que es lo que hace ahora. + + + Me han dicho que un escuadrn enemigo baj por la meseta del sur directo al campamento de los mercenarios. Sospechaban que se iba a armar una buena, as que se piraron de all corriendo. + + + Me han contado que esos gusanos del ejrcito queran coger algo del helicptero que se les estrell en el pantano. Imagina: cinco soldados dando saltos por el pantano, intentando no mojarse el uniforme. Decan tantos tacos que hasta un bandido se sonrojara. + + + Un colega me dijo que un da escuch disparos mientras persegua a un stalker para conseguir su botn. Resulta que el ejrcito estaba enfrentndose a los mercenarios. Mi amigo se escondi y esper a que terminasen, para entonces el stalker ya se haba ido. Qu mala pata, eh? + + + Un amigo mo presenci una escena bastante divertida. Imagina esa barca con un molino encima, al lado No gritando como un poseso y diez soldados intentando alejarse tanto como podan del perro de No. Mi amigo se mora de risa y se fue sin intervenir en aquel jaleo. + + + No, este lugar es bastante confuso: est lleno de gente armada hasta los dientes y no tengo tiempo para averiguar quines son militares y quines de Deber. + + + Sabes cmo llegar a Pripyat? + + + A quin podra contratar para proteger a los cientficos? + + + Ja! Los chicos y yo podemos hacerlo. Les protegeremos como nadie! Los stalkers y los mutantes se cagarn de miedo con solo vernos y ni se acercarn, te lo aseguro. Afloja la pasta cada semana y somos tuyos. Ah, y que no se te olvide el aguinaldo de Navidad! + + + Andando, to. Ve hacia Jpiter y pregunta all, porque no hay una ruta directa desde Zaton a Pripyat, es un hecho. + + + Oye, colega. Tengo pinta de gua o algo as? O quizs llevo tatuado en la frente "Pregntame gilipolleces"? Habla con Piloto. A l le pagan por responder ese tipo de chorradas. + + + No. Y qu iba a hacer yo all, en un lugar en el que no hay stalkers a los que estafar? + + + Sabes de alguien sin muchos compromisos que quiera mudarse a Pripyat? + + + Pripyat no es un sitio para hombres de verdad como nosotros. Est lleno de mutantes y anomalas, como el resto de la Zona... pero sin stalkers y botines. Cuando los stalkers se muden a Pripyat, danos un toque e iremos all para mantener el orden natural de las cosas. + + + Ni idea, to. Lo siento. + + + He encontrado un arma muy rara. Sabes de alguien que me pueda dar informacin sobre ella? + + + Yo hablara con los tcnicos. Se supone que es su profesin y saben de estas cosas, no? + + + No s por qu, pero los stalkers de Skadovsk piensan que Cardn es un genio de la tcnica. Habla con l si quieres. Aunque mi opinin es que es un viejo borracho. + + + A quin podra contratar para tomar medidas para los cientficos? + + + Eso tiene fcil respuesta: a nuestros chicos. Vale, no tienen estudios pero se cargarn a quin quieras y lo planearn todo a fondo. Despus lo metern en una tumba bonita y problema solucionado. + + + He encontrado un artefacto muy raro. Quin me lo podra comprar? + + + Un artefacto raro, dices? Djame ver... Dmelo para que lo pueda ver mejor. Ja, reljate, chaval, estoy de broma. Pero yo de ti no andara enseando eso por ah. Puede que te encuentres con alguien que vaya en serio. + + + Hay que tener valor para andar por ah enseando esa cosa. Tienes mi respeto. Te cuento: tienes que hablar con Barbas en Skadovsk. Todava no sabemos cmo saca los artefactos de la Zona, as que no tendrs problema en venderle el tuyo. + + + He encontrado una guarida de chupasangres por aqu cerca. Qu vamos a hacer? + + + Que qu vamos a hacer? Pues salir corriendo, claro! + + + Vale, olvdalo. + + + Oye, tengo que preguntarte algo... + + + Pregunta. + + + Qu piensas de Nimble? + + + Nimble? No me suena. Quizs es de otro escuadrn, no s. + + + Sabes algo del Oasis? + + + Es un cuento de los stalkers. A eso se dedican: a inventarse tonteras y a crerselas! Yo de ti pasara del tema. Si empiezas a tragarte estas cosas, terminars creyendo que el Genio existe de verdad. + + + Ah, ese lugar en el que las heridas se curan solas y tu energa se recupera de forma mgica? Tengo noticias para ti, amigo: no existe. Los stalkers se inventaron esa chorrada para que la Zona pareciese menos peligrosa de lo que en realidad es, pero lo cierto es que no hay lugares seguros en ella. Y ms te vale tener los pies en la tierra cuando salgas ah afuera, colega: los soadores no duran mucho en la Zona. + + + S, y todos los artefactos valen su peso en oro y te los traen en bandeja de plata mientras te dan un masaje en los pies. Estoy de broma, claro. Dudo que exista, aunque ojal fuese as. Podramos crear hospitales all sin necesidad de mdicos. La gente llegara y se curara sin ms. Buf, menuda fantasa. + + + Conoces a un stalker llamado Urraca? + + + Ya me cuesta acordarme de toda la gente de Deber, y me hablas de un stalker? Tienen su base en Skadovsk, pregunta all. + + + No, qu va. + + + Sabes quin puede haber robado cosas de una caja personal? + + + Vaya! Eso nunca ocurrira en la base de Deber, pero este lugar est lleno de macarras de Libertad. Yo empezara buscando por ah. + + + Quin podra ayudarme a desencriptar algo? + + + En la estacin de Yanov hay un tcnico llamado Nitro, es un especialista en electrnica. Una vez se me olvid la contrasea de mi PDA, y la hacke en cinco segundos! + + + Tienes que ir a Yanov y buscar a Nitro, es un especialista en ese tema. + + + Tengo la PDA del comerciante de Deber. Conoces a alguien al que le pueda interesar? + + + Un comerciante de Deber? Eso es imposible! Pero si tienes informacin, lo mejor es pasrsela al teniente coronel Shulga y que l se encargue de todo. + + + Dnde puedo encontrar herramientas por aqu? + + + Hay toda una central cerca de aqu. Seguro que la habrn saqueado por completo, pero yo de ti registrara los almacenes de la central de todas formas. + + + Yo de ti comenzara mirando en los talleres antiguos. Puede que tambin encuentres algo en las tiendas. + + + Por aqu solo hay mutantes y anomalas. Ja! Yo no buscara en las anomalas, y los quemadores y controladores tampoco te van a ser de ayuda. + + + De hecho, hay un tren bajo el puente de aqu cerca. He visto esos trenes antes, solan transportar a personal tcnico, as que es probable que encuentres algunas herramientas. + + + Quin puede desbloquear un mdulo de memoria? + + + Nitro. Es el nico en la estacin de Yanov que sabe algo de ese tema. + + + Necesitas un tcnico. El nico decente que hay por aqu es Nitro de Yanov. + + + Quin podra abrir un contenedor de acero? + + + Dicen que hay un tcnico entre los stalkers. Es un borracho pero sabe lo que hace. Habla con l. + + + Ja, podras ir por ah con una caja fuerte tambin. Nitro no va a poder ayudarte con eso. Si tuviese un cerrojo electrnico, sera otra cosa... + + + Estoy buscando a un stalker llamado Snag. Sabes dnde puedo encontrarlo? + + + Pregunta a los stalkers: conocen a los suyos. No conozco a ese tal Snog o como se llame. + + + Sabes algo de los helicpteros siniestrados? + + + A quin le podra interesar informacin sobre el fundador de Deber? + + + A nuestro comandante, claro. Cuntale todo lo que sepas a Shulga y Deber te lo agradecer. + + + S, nuestros exploradores vieron un helicptero militar descender sobre la pista de reserva que est junto a Jpiter. Le hicieron seas para que cambiase de ruta pero supongo que los pilotos estaban a otras cosas. Me pregunto si los soldados conseguiran salir del campo de minas. + + + Por aqu no. Nuestra presencia en esta rea es limitada. Habla con los chicos que estn cerca de Yanov. + + + Nuestra patrulla inform de que un helicptero militar intent hacer un aterrizaje forzoso cerca de la central de Jpiter. Por desgracia, el helicptero se estrell contra el tejado de los talleres. Dudo mucho que hubiese supervivientes: la patrulla no recibi ninguna seal de socorro despus del accidente. + + + Has visto soldados por aqu? + + + A quin le podra interesar un mapa del rea entre Zaton y Jpiter? + + + A alguien que le pueda dar algn uso. Por ejemplo, Piloto: es el gua de la ruta entre Yanov y Skadovsk, as que seguro que le interesar ese mapa. + + + Soldados? No he visto ninguno por aqu, aunque tampoco paso mucho tiempo en esta zona. + + + Hace poco encontraron el cadver de un soldado en el campo de minas. Supongo que iba en aquel helicptero: llevaba a ocho personas, adems de los pilotos; as que puede que consiguiesen salir, aunque nadie sabe dnde estn. + + + Hay un soldado en el bnker de los cientficos y lleva all poco tiempo. No tengo ms detalles. + + + El otro da vieron a un tipo con uniforme militar entrar en el edificio que est junto al complejo Volkhov AA. Aunque tambin podra ser un zombi al que confundieron con un soldado. + + + Los stalkers vieron una unidad militar cerca de la central de Jpiter. A juzgar por su descripcin, perteneca a las fuerzas especiales. Iban acompaados por un stalker no identificado y se dirigan a Pripyat. La descripcin suena creble, pero s por experiencia que no hay que fiarse mucho de estas cosas. + + + Sabes cmo llegar a Pripyat? + + + A quin podra contratar para proteger a los cientficos? + + + No encontrarn mejor proteccin que la de Deber. Ve a hablar con el teniente coronel Shulga en Yanov. Seguro que llegis a un acuerdo. + + + No. Mientras tengan a gente de Libertad trabajando all, no nos acercaremos a ese lugar. Escuchar a esos capullos contando chistes idiotas todo el da es peor que la muerte. + + + Ahora mismo Deber no tiene ningn motivo para saber cmo llegar a Pripyat, pero estamos recopilando informacin de todas formas. Algunas fuentes no contrastadas afirman que hay tneles bajo la central de Jpiter que lleva a Pripyat. Para corroborar esta informacin habra que registrar el rea de la central al completo. + + + No. Si necesitas saberlo, es mejor que hables con un gua civil. Nuestros exploradores ya tienen bastante trabajo. + + + Nuestros exploradores suelen buscar en la zona rutas seguras para llegar a Pripyat, pero de momento no han encontrado nada. + + + Sabes de alguien sin muchos compromisos que quiera mudarse a Pripyat? + + + La presencia de Deber en esta rea es limitada. Habla con nuestra gente de Yanov. + + + Se comenta que los cientficos tienen a un soldado en su bnker. Pero no sabe cmo salir de all. Los cientficos se pasan en el bnker entre doce y dieciocho meses, y l no va a llegar a la frontera de la Zona a pie y solo. As que podra interesarle tu oferta. + + + Te sugiero que hables con gente en busca de aventuras. Por ejemplo, en la estacin de Yanov hay un stalker llamado Vano. Le encanta meterse en toda clase de los y adems puede resultarte til: podra escapar de una anomala con los ojos cerrados. + + + Podras empezar una campaa de reclutamiento en un manicomio. No, tengo una alternativa mejor: los soldados de Monolith. Por cierto, el otro da vi a un escuadrn de estos soldados cerca del complejo AA y seguro que se dirigan hacia Pripyat. En fin, to, no me tomes en serio. + + + Busca voluntarios en Deber. Strider, por ejemplo. Todava no le han asignado una misin, as que puede que el teniente coronel le deje irse contigo. + + + Todos saben que Deber cuenta con los mejores soldados... pero de momento tenemos otros objetivos. + + + He encontrado un arma muy rara. Sabes de alguien que me pueda dar informacin sobre ella? + + + Caray! Menudo can! Lo has hecho t mismo o te lo has encontrado? Nunca haba visto algo as... Pregunta a los tcnicos. + + + A quin podra contratar para tomar medidas para los cientficos? + + + Qu pregunta ms tonta: a Deber, claro est. Contamos con mucha gente experimentada y ya hemos trabajado con cientficos en otras ocasiones. Habla con el teniente coronel Shulga. Seguro que podr asignarte un escuadrn. + + + Quin querra trabajar all si Libertad protege el bnker? Esos putos pacifistas estn tan colocados casi todo el tiempo, que lo ms probable es que se disparasen entre ellos en vez de al enemigo. + + + He encontrado un artefacto muy raro. Quin me lo podra comprar? + + + Todos los artefactos son raros, y te recomiendo que no andes por ah con uno. Es mejor que lo dejes en manos de expertos. + + + Deberas enserselo a los stalkers, saben un montn de ese tema. O mejor an, llvaselo a la persona a la que le venden los artefactos. + + + He encontrado una guarida de chupasangres por aqu cerca. Qu vamos a hacer? + + + Los escuadrones de Deber no estn realizando operaciones de limpieza en el rea, as que la guarida tendr que esperar. + + + Vale, olvdalo. + + + Oye, tengo que preguntarte algo... + + + Dispara. + + + Qu piensas de Nimble? + + + No s mucho sobre l. Mejor pregunta a los stalkers. Es uno de ellos, no? + + + Sabes algo del Oasis? + + + Muchas cosas. Es una historia bonita, lo admito. Un palacio entre las dunas, una isla envuelta en niebla, un castillo en el cielo... Shambhala, el Edn, el Oasis... Todos tenemos nuestro paraso soado, no les culpo. + + + Un stalker me cont una historia interesante. Creo que fue el primero en hablarme del Oasis. Deca que, segn la leyenda, all se curan todas tus heridas y te relajas hasta tal punto que te olvidas de que ests en la Zona. No he vuelto a ver a ese stalker desde... Poco despus record que antes cojeaba un poco al andar. Pero cuando le vi, caminaba perfectamente y pareca muchsimo ms joven. + + + S, los stalkers libres me dieron las coordenadas. Son diez grupos distintos de coordenadas. Si las unes, obtendrs un rea desde el Cauterizador hasta la central de Chernbil, y el bar de Yanov se encuentra cerca del centro. Hasta sera posible que estemos en el Oasis ahora mismo, as que disfrtalo! + + + Conoces a un stalker llamado Urraca? + + + No, no conozco a muchos stalkers libres por aqu. + + + Urraca? No, pero me mola el nombre. + + + Sabes quin puede haber robado cosas de una caja personal? + + + No, nadie de por aqu hara algo as. Conozco a un tipo que puede cogerte un poco de pan o beber un trago de tu bebida mientras no ests mirando, pero no hay ladrones propiamente dichos. + + + Quin podra ayudarme a desencriptar algo? + + + Me han dicho que a Nitro de Yanov le apasionan las combinaciones y los algoritmos. Pero no estoy seguro del todo, nunca he hablado con l. Trabaja para Deber, as que no tiene mucho tiempo libre para hablar con gente como nosotros. + + + No soy ningn experto en nuestros expertos. Habla con nuestros chicos de Yanov cuando te pases por all, ellos s que saben del tema. + + + Tengo la PDA del comerciante de Deber. Conoces a alguien al que le pueda interesar? + + + Suena interesante! Yo se lo dara a Loki, nuestro lder en Yanov. l se encarga de que los stalkers libres sepan a qu tipo de gente recluta Deber. + + + Dnde puedo encontrar herramientas por aqu? + + + En la central, claro. Dnde si no? No es un sitio muy animado, pero los almacenes seguro que te alegran el da. Son ms seguros y no te costar encontrar herramientas decentes all. + + + Buena pregunta, to. A ver, dnde encuentras herramientas fuera de la Zona? Si tienes medio cerebro, las compras en una tienda. Y si no, te compras un cerebro y herramientas en un taller, no? Pues dentro de la Zona, lo mismo. Es as de fcil, stalker! + + + Herramientas? Oye, to, me hablas en clave o algo as? Aqu no hay cerdos, puedes hablar con claridad. Ah, que lo decas en serio? Pues entonces no s. + + + Me han dicho que uno de nuestros chicos buscaba herramientas y entr en el tren que hay bajo el puente. Parece ser que all hay un Tesla. Eso s, parece ser que no es un lugar muy agradable. Por qu te estoy contando esto? Porque el chico vio muchas herramientas pero no se atrevi a llevarse ninguna. + + + Quin puede desbloquear un mdulo de memoria? + + + Novikov, del bnker de los cientficos, puede hacerlo. Es rpido, eficaz y educado. Tambin est Nitro en Yanov, el parsito de Deber. Es barato y cutre, pero creo que tambin podra hacerlo. + + + Un tcnico cualificado, supongo. El de por aqu entiende ms de mecnica, as que si no quieres cambiar el mdulo de memoria de tu can estriado, es mejor que preguntes en Jpiter. + + + Quin podra abrir un contenedor de acero? + + + Pues el otro da me recomendaron a Cardn de Skadovsk. Dicen que sabe lo que se hace, incluso estando borracho casi todo el tiempo. Seguro que te ayuda con ese contenedor. + + + Hay alguien que se dedique a abrir contenedores de acero? Eso s, no creo que pueda hacerlo Nitro, el tcnico local. A l se le da mejor hackear aparatos electrnicos. + + + Estoy buscando a un stalker llamado Snag. Sabes dnde puedo encontrarlo? + + + Ni idea. Habla con otros stalkers libres. + + + Sabes algo de los helicpteros siniestrados? + + + A quin le podra interesar informacin sobre el fundador de Deber? + + + Sin duda a Loki, nuestro lder en Yanov. Incluso si no sabe qu hacer con dicha informacin: lo importante es arrebatrsela a Deber. Imagnate la de cosas que podran hacer con ella! Se me ponen los pelos de punta solo de pensarlo. + + + S. Te has enterado de lo del helicptero del campo de minas? Parece ser que los militares se estrellaron en la pista de aterrizaje de reserva, la misma en la que sus colegas colocaron minas hace seis aos. Se dice que se estrellaron por pura estupidez, pero yo no lo tengo tan claro. Mralo de esta forma: all no va nadie, as que cuando los chicos del ejrcito terminen su misin, volvern al helicptero, lo arreglarn un poco y se largarn. Me gustara saber en qu consistir esa misin... + + + No soy de aqu, as que no tengo ni idea. Ven a vernos a Yanov. Nuestros chicos te contarn todo lo que quieras saber, e incluso todo lo que no quieras saber. + + + S. El otro da unos chicos vieron un helicptero dando tumbos en el cielo. Y tampoco aterriz muy bien: termin estrellndose contra uno de los tejados de Jpiter. Los chicos dicen que atraves el tejado y termin dentro del edificio, arrastrando todo a su paso. + + + Has visto soldados por aqu? + + + A quin le podra interesar un mapa del rea entre Zaton y Jpiter? + + + A Piloto, sin duda. Es el gua stalker principal de esta zona. Si quieres hablar de mapas con alguien, l es tu hombre. + + + Tranqui, colega. Aqu no hay polis, militares, ni soldados. Ests a salvo, todo lo que se puede estar en la Zona. + + + No, pero unos colegas me han dicho que vieron una unidad del ejrcito atravesando el campo de minas que est junto a la pista de aterrizaje. Mis colegas iban a ayudarlos, pero al final cambiaron de opinin. Los militares son imprevisibles, les puede dar el punto y pegarte un tiro por la espalda. + + + Yo no he visto ninguno, pero se dice que hay un militar en el bnker de los cientficos. Segn Ozersky, el bilogo, viajaba en el helicptero que se estrell contra la central. Se cachondean de l diciendo que los empollones del bnker lo han adoptado como mascota. + + + En persona no, pero los stalkers libres me han contado cosas. Dicen que vieron a un militar junto al complejo Volkhov AA. Quizs fuese un fantasma o un zombi... Qu piensas t? + + + No. Un colega deca que vio a siete soldados persiguiendo a un stalker libre ms all de la central de radio, en direccin a Pripyat. Por la Zona no circula nada de hierba ltimamente, as que se lo habrn inventado, as de simple. + + + Sabes cmo llegar a Pripyat? + + + A quin podra contratar para proteger a los cientficos? + + + A Libertad. Es decir, a nosotros. Trabajamos mucho con cientficos, as que protegerlos es pan comido. Habla con Loki, nuestro jefe en Yanov. Seguro que le parecer bien. + + + No s, to. Por lo que me han dicho, esos empollones han contratado a un escuadrn de Deber... Nos gustara proteger a los cientficos, pero ver todos los das las caras de estreidos de los de Deber no nos apetece nada. + + + Dicen que se puede llegar desde Jpiter. Me refiero a la central, no al planeta. Ja! Eso ha tenido gracia, lo tienes que admitir! + + + Pues no tengo ni idea. Nunca tengo tiempo para ir all. Pregunta a Piloto en el campamento, vale? Es un stalker libre y conoce esa zona mejor que nadie. + + + To, si lo supiese ya me habra ido all hace siglos. Me encantara perder de vista a Deber, a los militares y todos estos enfrentamientos... + + + Sabes de alguien sin muchos compromisos que quiera mudarse a Pripyat? + + + Lo siento, amigo. No conozco a nadie en Zaton. Mi consejo es que hables con nuestros chicos de Yanov. + + + Conoces el bnker de los cientficos? Pues ahora mismo tienen un problema. Por un lado Garry, el stalker, ha decidido irse a Pripyat y ahora el militar que est all quiere hacer lo mismo. Garry es un solitario y presume de ello, pero el militar es justo lo que necesitas. + + + Vano de Yanov te podra servir. Es un to legal y podra haberse unido a Libertad si hubiera querido. Pero creemos que no quiere enfrentarse a Deber... ni a nadie. As es cmo ve l las cosas y nosotros lo respetamos. + + + Claro. Uno de nuestros chicos se encontr con un escuadrn cerca del lago seco y creo que te vendran de maravilla. Conocen Pripyat al dedillo y parece que no estn trabajando para nadie. Adems, seguro que son valientes. Por algo son soldados de Monolith! + + + S. Strider, el lder de nuestros nuevos reclutas... Creo que no est muy cmodo en nuestras filas. Sus chicos se han adaptado bien, pero l no est muy contento aqu. Habla con l: detesto ver a alguien en un sitio que no le corresponde. + + + No, ni idea. + + + He encontrado un arma muy rara. Sabes de alguien que me pueda dar informacin sobre ella? + + + Qu pasa, no vena con un manual? No? Pues entonces, ni idea. + + + A quin podra contratar para tomar medidas para los cientficos? + + + Creo que nuestros chicos podran hacerlo. En Libertad hay gente inteligente y, cuando no sabemos algo, preguntamos en el bnker. Nos encantara colaborar con la ciencia! Habla con Loki en Yanov; seguro que te dir lo mismo. + + + A los chicos y a m nos encantara, pero Deber est protegiendo el bnker ahora mismo. Entrar a ver a los cientficos ya es un problema, pero estar all todo el da no creo que fuese muy saludable. + + + He encontrado un artefacto muy raro. Quin me lo podra comprar? + + + Necesitas un coleccionista, to. En Yanov no encontrars ninguno. Si hasta a algunos stalkers les da miedo entrar aqu! Mejor pregunta en Zaton, por all las cosas estn ms tranquilas. + + + Conoces a Barbas, el del bar del campamento de los stalkers libres? Compra artefactos y no paga mal. Es un buen tipo, lo mires por donde lo mires. La verdad es que es una pena que no trabaje para nosotros. + + + He encontrado una guarida de chupasangres por aqu cerca. Qu vamos a hacer? + + + Tienes que avisar a los stalkers libres: su campamento principal est por aqu. Me parece bien preservar la fauna de la Zona, pero me preocupan ms las vidas humanas. + + + Vale, olvdalo. + + + Oye, tengo que preguntarte algo... + + + Pregunta. + + + Qu piensas de Nimble? + + + No tengo el gusto. Mejor habla con la gente de Skadovsk. + + + Sabes algo del Oasis? + + + He odo de todo sobre el Oasis! Es una leyenda, un mito... Cada stalker tiene una idea distinta sobre cmo es y cada uno dice que est en un sitio distinto. Es una pena que lo nico que tienen en comn esos sitios es que es casi imposible llegar a ellos. + + + Bueno, dicen que all las heridas se curan al instante y que te recargas de energa en minutos... Que el Oasis acaba con todas las enfermedades, incluso con el envenenamiento por radiacin! Lo nico que tengo claro es dnde est... Quieres saberlo? En el centro de la Zona! Pero que quede entre nosotros, ni una palabra a nadie! + + + Me han dicho que los mutantes de por all pasan a tu lado sin mirarte. Tambin se comenta la existencia de un artefacto llamado El corazn del Oasis... Nadie sabe para qu sirve, pero una cosa est clara: no debes tocarlo. El que lo haga no podr permanecer en la Zona por ms tiempo... El lugar? To, todos saben que est en Pripyat, debajo de la noria. Dnde si no? + + + Conoces a un stalker llamado Urraca? + + + Claro. Pero no tengo ni idea de dnde est. + + + Mmm. No me suena. + + + Sabes quin puede haber robado cosas de una caja personal? + + + Eh, no. Habla con la gente mayor de Yanov, quizs puedan ayudarte. + + + Quin podra ayudarme a desencriptar algo? + + + Nitro de Yanov, quin si no? Le chifla toda esa mierda de las nuevas tecnologas. Mucho ms que las armas. + + + Nadie que yo conozca. Pregunta en Yanov: all tienen un experto en el tema. + + + Tengo la PDA del comerciante de Deber. Conoces a alguien al que le pueda interesar? + + + Conoces a Bho de Skadovsk? Seguro que le encantara ponerle las manos encima. Le gustan ese tipo de cosas... + + + Haba un tipo llamado Bho en Skadovsk, por Zaton. Compra informacin... Puede que le interese tu PDA. + + + Dnde puedo encontrar herramientas por aqu? + + + Un stalker me dijo que su padre trabaj en los talleres de la subestacin antes del 86. Deca que all haba todo tipo de equipo, as que seguro que tambin hay herramientas. Aunque supongo que ahora estarn todas oxidadas, pero psate por all de todas formas. + + + Conoces el aserradero del bosque de la colina? All tendra que haber herramientas, a no ser que alguien se te haya adelantado. Aunque lo dudo: a medida que te adentras en ese lugar, te cagas de miedo y sales despavorido. Y no lo digo por la radiacin, no... + + + La central de Jpiter est justo aqu y seguro que en ella hay herramientas. Aunque yo no me pasara por all ni loco, ese sitio me pone los pelos de punta. Mira en los almacenes de Jpiter, los que estn al lado de la central. + + + Me han dicho que hay un par de sitios en Pripyat en los que puedes encontrar todo tipo de chatarra. Uno de ellos era un antiguo almacn sovitico. Seguro que es el nico lugar en el que vendan cosas tiles en aquellos tiempos. + + + Y yo qu s? Mira en talleres o tiendas antiguas, puede que encuentres algo til. + + + La verdad es que el ltimo sitio en el que vi herramientas decentes fue el bnker de Sidorovich, en el Cordn. S, tendrs que pagar por ellas, pero son nuevas y tampoco son caras. + + + Vers, colega: no me vine a la Zona para buscar herramientas. Ya me dirs para qu me servira un martillo radiactivo. + + + Me han dicho que en la vieja estacin de servicio se pueden encontrar cosas... Puede que tambin haya herramientas. Pero, como ocurre siempre, la nica forma de conseguir buen material es llegando all el primero. + + + Buena pregunta... Yo mirara en el viejo tren que est bajo el puente. No preguntes por qu. Mi instinto me dice que all encontrars algo. + + + Quin puede desbloquear un mdulo de memoria? + + + Djame pensar. Bueno, seguro que Nitro de Yanov podra. Y luego tambin est Novikov, el tcnico de los cientficos; es todo un profesional. T decides, porque Nitro es mucho ms barato. + + + Necesitas un tcnico, pero el nico que hay por aqu es Cardn. Aunque despus de tantos aos dndole a la botella, no s qu tal se manejar con la electrnica ms complicada. Yo de ti preguntara por Jpiter: all estn los mejores expertos. + + + Quin podra abrir un contenedor de acero? + + + Cardn de Skadovsk, supongo. Es una gozada verle forzar cerrojos. + + + Supongo que algn tipo de tcnico. No creo que Nitro pudiese ayudarte: suena demasiado complicado para l. + + + En Pripyat? Ja, ja. Mira, te aconsejo que te alejes un poco del centro de la Zona si quieres encontrar a alguien. + + + Estoy buscando a un stalker llamado Snag. Sabes dnde puedo encontrarlo? + + + Habla con Barbas, el del bar de Skadovsk. Suele saber dnde andan los stalkers. + + + Snag? Y yo qu s? Pregunta en Zaton, anda mucho por all. + + + Sabes algo de los helicpteros siniestrados? + + + A quin le podra interesar informacin sobre el fundador de Deber? + + + Yo hablara con Bho; comercia con informacin en Skadovsk. Seguro que le interesar informacin veraz sobre alguien tan legendario. + + + Yo mismo vi uno... No pareca que fuese a estrellarse pero volaba bastante mal: se mova de un lado a otro hasta que aterriz en una meseta al sur de Zaton. Me pregunto si habr sobrevivido alguien, pero no es fcil llegar all. Aunque quizs No, el de la barca de chiflados, sepa algo... + + + Me contaron que varios helicpteros militares se estrellaron por aqu cerca... Hay distintas versiones, pero recuerdo una de ellas con claridad: vieron cmo el helicptero se estrellaba en la pista de aterrizaje de reserva en la que los mismos militares pusieron minas en su da. No te parece irnico? Como deca mi padre: "No caves la tumba de nadie, porque terminars cayendo t en ella". Muy cierto, no? + + + Un colega me cont una historia: se fue al Bosque de Hierro en busca de artefactos y nada ms llegar escuch un gran estruendo a sus espaldas. Se dio la vuelta y vio cmo se acercaba un helicptero a toda velocidad, arrastrando torres de alta tensin y todo tipo de basura a su paso. Mi amigo sali de all pitando sin toparse con ninguna anomala, cosa que me sorprende. No te costar mucho encontrar el Bosque de Hierro: se ve a millas de distancia. Eso s, est lleno de putos poltergeists, as que ndate con cuidado. + + + Me han dicho que uno aterriz en la meseta del sur, pero llegar all no es nada fcil. Tambin me han contado que alguien vio a No cerca de esa meseta, as que ese chiflado sabe cmo llegar. + + + No he visto nada pero se comenta que uno se estrell contra la central... Aunque nadie quiere ir a comprobarlo, ese lugar es demasiado peligroso. + + + Un stalker me cont que vio varios helicpteros militares en una situacin peligrosa. Uno tena el motor en llamas y se adentr en un pantano lleno de anomalas. No es difcil llegar all, pero ese pantano es una puta pesadilla. No es lugar para humanos, te lo aseguro. + + + Has visto soldados por aqu? + + + A quin le podra interesar un mapa del rea entre Zaton y Jpiter? + + + A Piloto, a quin si no? Es un gua, no? Siempre est movindose entre Skadovsk y Yanov, as que esos mapas le vendrn fenomenal. + + + Esto no es Zaton ni Jpiter, as que aqu esos mapas no sirven de nada. Acrcate a esos lugares y seguro que tendrs ms suerte. + + + No he visto ninguno, pero me contaron la historia de unos soldados que bajaban por la meseta sur que est junto al sistema de alcantarillado. Al principio intentaron bajar con cables y cosas por el estilo, pero al final tuvieron que deslizar sus culos cuesta abajo, como en un trineo. Ja, ja. No es genial hacer algo as en la Zona? + + + Escuch una conversacin en Skadovsk sobre cinco o ms militares que fueron vistos saliendo de un tnel de desage que est junto al pantano. Iban cubiertos de mierda de la cabeza a los pies, hasta el punto que costaba distinguirlos de los chupasangres del pantano. + + + En persona no, pero un amigo vio una unidad militar luchando contra un grupo de mercenarios junto a la estacin de procesado. Mi amigo busc un sitio cmodo para ver la batalla pero para entonces todo haba acabado porque los militares se echaron atrs. No hubo bajas en ningn bando. Lo tpico, no? + + + Parece ser que alguien vio a unos diez militares cerca de la barca de No. Suponiendo que ese chiflado siguiese con vida, seguro que lleg a un acuerdo con ellos, es tpico de l. Pero claro, nadie quiere preguntarle por ello: nunca sabes cmo va a reaccionar ese hijo de su madre. + + + Escuch una explosin por la noche y alguien de Yanov me dijo que vieron un militar muerto en el antiguo campo de minas, ante un helicptero militar abandonado. Puede que no viesen nada en la oscuridad e intentasen aterrizar sobre las minas. Nadie sabe si sobrevivi alguien, pero dudo que fuese el nico tripulante del helicptero. + + + No he visto a ningn militar... pero se rumorea que hay uno que vive con los cientficos. Por lo visto, un stalker llamado Garry lo encontr cuando fue al complejo de misiles a buscar a sus amigos. Pero el lugar estaba lleno de zombis poco amigables y Garry salv al soldado de una muerte segura. + + + No, pero alguien dice haber visto a un militar cerca del complejo AA de Volkhov. Yo no me lo creo. O mienten o no saben distinguir un zombi de un soldado. + + + Soldados? Me han hablado de una unidad militar con un stalker a la cabeza" que pas junto a la central de Jpiter. Pero yo creo que es un chismorreo poco fiable. + + + Sabes cmo llegar a Pripyat? + + + A quin podra contratar para proteger a los cientficos? + + + Conoces a Espartaco y a su escuadrn? S, los stalkers de Zaton. Buena gente y buenos luchadores. Se han metido en mil movidas y ah siguen. Sospecho que les gustara eso de proteger a los cientficos. + + + Has visto al escuadrn de Hacha, junto a los talleres de la subestacin de Zaton? Tienen sus cosas, como todos los mercenarios, pero al menos preguntan primero y disparan despus. Seguro que si los contratas para este trabajo, los cientficos se quedarn contentos y los stalkers se relajarn un poco. Y todos contentos! + + + Pues... No me suena, lo siento. + + + Lo que tengo claro es que no hay forma de llegar all desde Zaton. Todos los que se moran de ganas por ir a Pripyat tomaron la direccin de Jpiter, as que deberas preguntar por all. + + + Se rumorea que existen unos tneles secretos que van por debajo de la central de Jpiter y llegan a Pripyat... Claro que esos rumores se cuentan siempre tras la segunda ronda, y Jpiter es un sitio infernal al que nadie se atreve a ir. + + + Y yo qu s, colega? No tienes alguna pregunta ms fcil? Mira, busca a Piloto y pregntale a l. No creo que nadie ms pueda ayudarte. + + + Ja. Si supiese ir a Pripyat, no estara aqu. Por qu te crees que me fui en direccin al centro de la Zona? Pripyat est lleno de artefactos, colega! El que llegue all primero se va a pegar la vida padre! + + + Sabes de alguien sin muchos compromisos que quiera mudarse a Pripyat? + + + No creo que encuentres a alguien as por aqu. Todos los que queran acercarse al centro de la Zona se fueron a Jpiter. Pregunta por all. + + + Conoces al militar que est con los cientficos? Creo que no tendra mucho que perder si se fuese contigo. Los cientficos no tienen pensado marcharse en breve y l no puede llegar al Cordn por s solo, as que a lo mejor es tan tonto como para acompaarte hasta Pripyat. + + + Conoces a Vano, de la estacin de Yanov? Es un tipo honesto, un buen stalker y adems se lo cree todo. Se le dan mejor las anomalas que las personas: siempre que est aqu, alguien intenta aprovecharse de l. + + + Escucha: alguien vio a un escuadrn junto al lago seco que est al sur del complejo AA... Parece ser que no eran los stalkers habituales de Libertad o Deber: eran hombres de Monolith! As que si quieres que alguien te acompae a Pripyat, quin mejor que ellos? Ja, ja. Te das cuenta de que te estoy tomando el pelo, no? + + + Conoces a Strider, el lder del nuevo escuadrn de Libertad? Si es as, ya sabrs que Yanov no es el mejor lugar para ese to tan miserable. Comntaselo, quizs le apetezca. + + + Conoces a Strider, el lder del nuevo escuadrn de Deber? Si es as, ya sabrs que Yanov no es el mejor lugar para ese to tan miserable. Comntaselo, quizs le apetezca. + + + Mmm... No se me ocurre nadie. + + + He encontrado un arma muy rara. Sabes de alguien que me pueda dar informacin sobre ella? + + + Quin sabe? Yo preguntara a un experto... A un tcnico o algo as... + + + No te vendra mal preguntar a Cardn de Skadovsk, colega. Trafica con armas y no lo hace mal. Y a pesar de todo el alcohol que tiene en las venas, puede que todava le funcione alguna neurona. + + + A quin podra contratar para tomar medidas para los cientficos? + + + Conoces a Gonta, el cazador? Creo que l y sus chicos no pondran pegas a trabajar para los cientficos. Si los mutantes os molestan, Gonta y los suyos son justo lo que necesitis para acabar con ellos. + + + Conoces a Osopardo, Torba y Mitay, los stalkers de Yanov? Trabajan como tro y son la bomba! Creo que son perfectos para ese tipo de trabajo... siempre que Mitay no se haya vuelto a meter en los. + + + Ni idea, amigo. Ya tenemos bastantes los aqu como para preocuparnos de los dems. + + + He encontrado un artefacto muy raro. Quin me lo podra comprar? + + + No s. A la gente de aqu no le gustan los experimentos. Pregunta en Zaton, est ms cerca del borde de la Zona. + + + Yo se lo llevara a Barbas, el del bar de Skadovsk. Dice que trabaja con coleccionistas del exterior, gente a la que le encantan las cosas raras. + + + He encontrado una guarida de chupasangres por aqu cerca. Qu vamos a hacer? + + + Caray. Pues yo se lo contara a Barbas. Porque mejor acabamos con ellos o ellos acabarn con nosotros. + + + Vale, olvdalo. + + + Dnde est el campamento de stalkers ms cercano? + + + Eres idiota o qu? No s nada de campamentos de stalkers, pero el campamento ms cercano es Skadovsk. Te voy a dar las coordenadas, y gratis. Qu majo soy, eh? + + + Dnde est el campamento de stalkers ms cercano? + + + Te paso las coordenadas a tu PDA... El nico campamento cercano de por aqu es Skadovsk. + + + Hasta la prxima. + + + He odo hablar de algn que otro accidente... Nada concreto; lo de cotillear no es lo mo. Siento no ser de ms ayuda. + + + Oye, ya tengo suficientes preocupaciones para que vengas con tus helicpteros. Supongo que estrellarse en helicptero duele lo suyo pero, qu ms quieres que te diga? + + + Pero qu dices, idiota? Tienes que fumar mucha mierda para ver helicpteros por aqu, porque los de verdad no tienen nada que hacer en este lugar. + + + Eh? No, a m djame en paz con toda esa mierda. Esas cosas no me ayudan con mi misin de divulgar conocimientos, t ya me entiendes. + + + Nuestra patrulla vio descender a los helicpteros, pero los detalles fueron transmitidos personalmente al teniente coronel. Es una cuestin de necesitar o no informacin, y yo no la necesito. + + + Dnde puedo encontrar un traje con un mdulo de respiracin de ciclo cerrado? + + + Pues no s decirte, pero con las monedas apropiadas puedes hacer maravillas, si sabes invertirlas. Habla con Nimble... Si llegis a un acuerdo, te conseguir lo que necesites. Espero que lo haga; no nos importara perderlo de vista unos das en Skadovsk. + + + Y yo qu s! No llevo mucho por aqu. Ser mejor que preguntes en Zaton. Nuestra gente de ah tiene sus propias redes. + + + Ni idea. Por qu? Quieres meter las narices en alguna anomala? Pues mira, si consigues artefactos, avsanos, que aparecemos en un abrir y cerrar de ojos... para felicitarte por tu trabajo! Ja, ja, ja! + + + Dnde puedo encontrar un traje con un mdulo de respiracin de ciclo cerrado? + + + Cmo voy a saberlo? Espera... Hay un tipo aqu, en Skadovsk... Dicen que puede conseguirte lo que le pidas. Est en la cubierta superior y se llama Nimble. + + + No, nadie va a venir hasta aqu con un traje extra de ese calibre. Mejor pregunta en Zaton, algo ms parecido a un lugar civilizado. + + + No tengo ni idea de dnde podras buscar... Ese tipo de traje escasea hasta entre los miembros de Deber. Los fabrican solo como distincin especial en combate o para operaciones extensas en reas muy anmalas. + + + Dnde puedo encontrar un traje con un mdulo de respiracin de ciclo cerrado? + + + He odo a algunos stalkers hablar de un tipo con contactos... Nimble o algo as. Puede conseguirte casi de todo. Ya sabes: equipo, armas... Mierdas de sas, no droga. Anda por Skadovsk, si lo necesitas. + + + Buena pregunta... En Libertad no usamos de sos. Yo en tu lugar les preguntara a los stalkers de Zaton. Debe de haber alguien que se ocupe de esas cosas. + + + Je, para qu necesitas esa chorrada? Luego, en accin, no sirve para nada. Aunque... supongo que puede ser til. Facilita la respiracin e impide que el sol te ciegue. Igual me agencio uno para m. Eh, dnde has dicho que podra conseguirlo? + + + Dnde puedo encontrar un traje con un mdulo de respiracin de ciclo cerrado? + + + Bueno, yo apostara por Nimble. Tercera cubierta en Skadovsk. Ese tipo puede conseguir hasta nieve en medio del puto desierto... aunque se lo sabe cobrar. + + + A ver, que piense... Haba un tipo que se ocupaba de eso en Zaton. Nimble. Prueba a ver si sigue por ah. Dicen que es especialista en objetos de alto nivel. + + + Oye, lo dices como quien habla de suministros de oficina o algo as... A saber! Ese tipo de cosas escasean. Puedes darte con un canto en los dientes si das con uno. + + + Adis. + + + Hasta luego. + + + Adis. + + diff --git a/gamedata/configs/text/spa/st_dialogs_jupiter.xml b/gamedata/configs/text/spa/st_dialogs_jupiter.xml new file mode 100644 index 0000000..9bcfe8c --- /dev/null +++ b/gamedata/configs/text/spa/st_dialogs_jupiter.xml @@ -0,0 +1,3885 @@ + + + + Qu quieres? + + + Tengo que hablar con Jack. Es por la deuda de Vano. + + + Pues sigue. + + + De acuerdo. + + + Solo estoy dando un paseo. + + + Esto no es un parque pblico. Largo. + + + Sabes quin puede haber robado cosas de una caja personal? + + + Pues no, tengo bastante con mis problemas. T habrs perdido cosas materiales, pero yo podra perder la vida... + + + Robos, engaos... To, en qu nos estamos convirtiendo? No he visto a nadie, pero seguro que quien lo hizo ya est lejos de aqu. + + + Vamos a ver a Zulu. + + + Claro. De paso vamos a ver al Hawaiano para recuperar mi traje. + + + En marcha. + + + Estara bien, pero no quiero que me pille una emisin con los pantalones bajados. Esperemos un poco. + + + Necesitaremos un traje con un mdulo de respiracin de ciclo cerrado para llegar a Pripyat. + + + Qu rabia, to! Mi traje tiene uno: podras meter la cabeza en un horno y seguir respirando. Pero se lo empe al Hawaiano. Si pudiera recuperarlo... Estoy pelado y necesitaramos 5 de los grandes... + + + Yo podra darte el dinero del traje. + + + As, sin ms? En serio? + + + Toma tus 5 de los grandes. + + + Gracias, colega. Me has salvado el pellejo. Ahora te seguir adnde sea! + + + Te dejara el dinero pero no tengo 5 de los grandes. + + + Estamos todos como t, amigo. Te lo aseguro. + + + Lo pensar. + + + Por supuesto... Es tu dinero, al fin y al cabo. + + + Bueno, me lo vas a dar o no? + + + Estoy organizando un equipo para ir a Pripyat. Te apuntas? + + + T me has ayudado, as que yo te ayudar, amigo. + + + Me encantara, to. Pero no puedo irme de aqu sin saldar esta deuda. No estara bien, y si nos encontrsemos con ellos, me mataran a balazos como a un perro. Esos cabrones no se andan con chiquitas... + + + Bueno, listo para ir a Pripyat? + + + Por supuesto que s! + + + Pasa. Qu quieres? + + + Has pagado la deuda. Ahora lrgate. + + + Eran unos cabrones arrogantes. Tuve que cargrmelos. + + + He pagado el dinero, as que ya no ests en deuda. + + + Jo! Gracias, to. Nunca lo olvidar. + + + No muy bien. Me han hecho pagar intereses. + + + Vaya. Pero a m seguro que me habran cobrado ms, creme. Gracias por tu ayuda! Nunca lo olvidar. + + + Todava no he ido a verlos. + + + Corre antes de que te hagan pagar ms. + + + Fui a verlos pero me piden intereses por la deuda. + + + Se han vuelto locos o qu? Apenas pude reunir esa cifra... Podras convencerlos de que se olviden de los intereses? Te har falta una buena arma, la fuerza es el nico lenguaje que entienden. + + + Qu me contaste sobre tu deuda? + + + Vers... Tena un traje que se estaba quedando viejo, as que pens en comprarme uno nuevo. Y poco despus vi uno alucinante en una tienda, con su mdulo de respiracin de ciclo cerrado y todo. Pero no tena dinero suficiente, as que Jack, el vendedor, me dijo: "No te preocupes, Vano. Ya me pagars el resto cuando puedas". "Qu tipo ms majo", pens yo. + + + Vale. Y qu pas? + + + Vend el traje viejo y le llev la pasta a Jack. Y me dijo: "Genial, Vano. Pero, qu hay de los intereses?". Pens que tena razn, reun ms pasta y se la llev. Pero me dijo: "Mientras estabas fuera, el inters ha ido aumentando, Vano". Parece que aumenta a tal velocidad que me es imposible alcanzarlo. Tuve que empear el traje nuevo e incluso mis armas. + + + Bueno, y? + + + Quiero pagarle el dinero que he ganado. No hay nada ms importante que la reputacin de Vano. Pero tengo miedo. Podras ir a ver a Jack y pagarle por m? + + + Vale. + + + Eso s, te recomiendo que lleves un arma potente. Demustrale que contigo no se juega, solo as te respetar. + + + Yo me encargo. + + + Estoy muy ocupado. + + + Ya he tenido suficiente. + + + Entonces, puedes ir a ver a Jack y saldar mi deuda? + + + Vale, vale, no dispares. Pagar tu deuda. Ah, perdona, te he confundido con otro... + + + Qu tal te fue con los bandidos? + + + Hola, to. Me alegro de verte! + + + Eh. + + + Tenemos visita... Un stalker quiere hablar con Shishak. Vienes a darle un regalo o quieres hablar con l de negocios? Desembucha, colega. + + + Pensaba que no ibas a volver. Bueno, qu me traes? + + + De qu ms tenemos que hablar, stalker? + + + Qu quieres? Te pesa mucho el dinero del bolsillo? Podemos ayudarte con eso. + + + Tengo que hablar con tu jefe. + + + Mira, colega, no tengo tiempo para tonteras. Fuera de mi vista! O te vas t solito o te ayudo yo con mi escopeta. + + + Vale, vale. Me voy. + + + He venido a por el stalker prisionero. Quiero ver a tu jefe. + + + Mm, vale, pero no intentes nada raro si no quieres terminar mal. Sigue recto y cruza el pasillo que est entre los contenedores. Entendido? + + + S. + + + Estoy aqu de paso. Ya me voy. + + + He venido a por el stalker prisionero. Quiero ver a tu jefe. + + + Qu ms quieres? Pirdete! + + + De acuerdo. + + + Oye, capullo. Me ests insultando? Tienes dinero para salvarle el culo al macarra de tu amigo, pero tambin tienes que pagarnos para que te dejemos pasar. No me digas que no habas pensado en eso! + + + De cunto estamos hablando? Tengo que ir a la base, as que tenlo en cuenta. + + + Anda que no tienes gracia! Esto no es una casa de putas, amigo. No hay lista de precios. Vaca los bolsillos, cabrn! + + + Vale, toma. + + + Vale, me voy. + + + Qu? Quieres toda mi pasta? Ni hablar! + + + He pagado el rescate. No hay nada ms que hablar. + + + Vale, stalker, nos hemos ganado el sueldo. Vmonos. + + + Gracias, chicos. Hasta la prxima. + + + Espera. Puede que haya ms bandidos escondidos. + + + Vale, nos vamos. El chico no lo consigui, pero hemos hecho todo lo que hemos podido. + + + Espera, no hemos terminado! + + + Te pill! + + + Ven a Pripyat conmigo. + + + Prefiero quedarme aqu de momento y evitar que Mitay se meta en problemas. + + + Eh, stalker! Muchas gracias por rescatar a Mitay. bamos a montar un escuadrn juntos. Toma esto en seal de agradecimiento. + + + Eh, stalker! Muchas gracias por rescatar a Mitay. Eres tremendo. Has liquidado a todos esos bandidos t solo! Toma esto en seal de agradecimiento. + + + Eh, stalker! Muchas gracias por rescatar a Mitay. Yo tampoco pensaba que pagar el rescate fuese buena idea. Toma, seguro que te vendr bien este dinero, en seal de agradecimiento. + + + Eh, stalker! Muchas gracias por rescatar a Mitay. Yo tena razn: nunca te rindas ante los bandidos! Hay que pararles los pies, y t has tenido cojones para hacerlo! Toma, todos han cogido un trozo, as que no es gran cosa, pero te estamos muy agradecidos. + + + Qu tal fue lo del rescate? + + + Estoy en ello. + + + Bueno, qu tal? Cundo vas a darles caa a esos bandidos? + + + Pronto. + + + Has cambiado de idea o te estn dando problemas los bandidos? Bueno, haz lo que tengas que hacer, pero rpido. No queremos perder la paciencia ni que a Mitay le pase algo. + + + Me pongo a ello. Todo ir bien. + + + Qu bueno ver a un profesional como t, stalker! + + + To, hemos perdido a un buen tipo. Pobre Mitay... No hemos podido salvarlo. ramos muy amigos! + + + Qu puedes hacer? + + + Ven a Pripyat conmigo. + + + Solo he venido aqu para estar con mis amigos. Voy a quedarme con ellos. + + + Oye, gracias por lo de Mitay. Estbamos a punto de pagar el rescate. Las cosas han salido muy bien... + + + Oye, gracias por lo de Mitay. Cmo conseguiste convencerlos? To, tengo mucho que aprender de ti... + + + Oye, gracias por lo de Mitay. Ves como tena razn? Negociar es la clave del xito. + + + Oye, gracias por lo de Mitay. Sigo pensando que lo mejor es negociar, pero como todo ha salido bien, estoy contento. + + + Lrgate. Ahora mismo no me apetece hablar contigo. + + + Vale, tranquilo. + + + Hola, Don Profesional! + + + Pobre Mitay... Era tan solo un chiquillo... Tena toda la vida por delante... + + + Qu puedes hacer? + + + Genial, ya estamos todos aqu. Osopardo me ha hablado de ti... El plan es sencillo: los chicos se pondrn en posicin de ataque en torno al permetro y yo me cargar al centinela desde mi posicin. sa ser la seal para comenzar el ataque. Tomad nota de nuestras posiciones y haced lo que veis ms apropiado. Seguro que todos tenis claro lo que hay que hacer. Listos? + + + Lo tendr en cuenta. Vamos. + + + Espera, djame pensarlo. + + + Te apetece viajar a Pripyat conmigo, Mitay? + + + Los cientficos quieren contratar a gente. Te gustara trabajar para ellos? + + + En qu consiste el trabajo? + + + Defender su bnker. + + + No, to. Ya he tenido bastante con esos bandidos. Me quedar aqu sentado relajndome. + + + Hacer mediciones en anomalas. + + + Mmm. Suena interesante. Ya he trabajado para los cientficos y si adems me lo pides t... Claro que lo har. Me ir con Osopardo y Torba al bnker. + + + Cuntame cmo te secuestraron. + + + To, no me lo recuerdes! Fue por mi culpa. Los bandidos me avisaron pero ya sabes... Empezaron a pedirme parte de mi dinero, pero la Zona no es de nadie. Por qu iba a pagarles? + + + Los chicos y yo les dijimos que ni hablar, y al principio pareca que no iba a pasar nada. Pero los bandidos resultaron ser muy astutos y nos tendieron una emboscada. Yo fui tan tonto que me puse a buscar artefactos por mi cuenta, me sorprendieron por detrs y me ataron las manos antes de que pudiera sacar la pistola. As fue como pas todo. + + + Gracias por pagar mi rescate! Nunca lo olvidar. + + + Gracias por rescatarme, stalker! Nunca lo olvidar. + + + Gracias por colaborar en el pago de mi rescate! + + + Gracias por colaborar en mi rescate, stalker! + + + Gracias por la ayuda, stalker. Mis amigos te recompensarn cuando vuelvan. Regresemos a la base, ser ms rpido as. + + + En marcha. + + + Ve t, yo me pasar luego. Tengo cosas pendientes por aqu. + + + To, pensaba que me iba a morir aqu. Caray, Osopardo y Torba han contratado a todos stos? Madre ma! No he visto un tiroteo as en mi vida. Bueno, nos vamos? + + + Espera, puede haber ms bandidos por aqu. + + + S. En marcha. + + + To, pensaba que no saldra de sta... Vaya, te has cargado a todos estos bandidos t solo! Nadie me creer cuando lo cuente... Bueno, nos vamos? + + + Espera, puede haber ms gente por aqu. + + + S. Vmonos ahora mismo. + + + Gracias, stalker! Vmonos antes de que los bandidos cambien de idea. + + + En marcha. + + + Hay que salir de aqu, rpido! + + + No podemos rendirnos a las exigencias de los bandidos. Este problema hay que solucionarlo por la fuerza. + + + Exacto! Tengo unos colegas que estaran encantados de ayudarnos. Tambin te pagaremos a ti, si no te importa trabajar en equipo. + + + Estoy listo. + + + Genial! Conozco a un grupo de stalkers que trabajaban en una unidad especial de la polica. Te reunirs con ellos en el lugar convenido despus de la 1:00. Te estarn esperando. + + + De acuerdo. + + + Torba tiene razn. No podemos comenzar un bao de sangre si tienen un rehn. Tenemos que negociar. + + + Mmm. Los dos tenis razn. Lo nico es que, si vamos Torba y yo, los bandidos no nos dejarn salir porque nos negamos a aceptar sus reglas. Dijeron que nos enterraran vivos la prxima vez que nos viesen. Eso s, si actuases como negociador... + + + Vale, lo har. Dame el artefacto. + + + Cuidado. + + + Todo va a ir bien. + + + Podramos estar discutiendo todo el da... Nuestro xito depende de quien se ponga al mando de esto. Yo mismo me encargar de esos cabrones. + + + To, no me esperaba esto... Buena suerte. + + + Volver pronto. + + + Vale, pero necesito tiempo para prepararme. + + + Stalker, salva a nuestro colega Mitay, por favor. + + + Qu ha pasado? + + + Mitay est metido en un buen lo... Los bandidos se empecinaron y nos pidieron un porcentaje de los artefactos que encontrramos los stalkers. Los mandamos a la mierda, porque los stalkers no le deben nada a nadie. En principio lo aceptaron, pero despus tendieron una emboscada al pobre idiota mientras buscaba botines por su cuenta, y ahora nos piden un rescate por l. + + + Qu vas a hacer? + + + Torba quiere pagar el rescate con un artefacto... Pero yo creo que no tendramos que darles nada. Si lo hacemos, los stalkers estaremos trabajando para los bandidos. Propongo vender el artefacto, contratar un buen equipo y atacar su base. + + + Ya hablaremos luego de esto. + + + Bueno, vas a ayudarnos a rescatar a Mitay? Torba sigue pensando que deberamos pagar su rescate con un artefacto. Y yo insisto en que tenemos que atacar la base de los bandidos. Podramos vender el artefacto y contratar a gente... Pero no hemos decidido qu hacer. + + + Ests listo? Te daremos el artefacto para que pagues el rescate de Mitay y te esperaremos en el bar. + + + Has ido a ver a los bandidos? + + + Todava no, me estoy preparando. + + + S, pero no tengo mucho que contar. Cuando las cosas se aclaren os avisar. + + + Estuve hace poco en el Oasis y encontr un artefacto. Te interesa? + + + Ja, en serio quieres que me crea eso? Me han contado mil cosas sobre el Oasis pero no conozco a NADIE que realmente haya estado all. No te ofendas, pero no me lo trago. + + + Tengo documentos de la central de Jpiter. + + + S, cgelos todos. + + + S, coge la orden de evacuacin. + + + S, coge las actas de las reuniones. + + + S, coge el horario de entregas. + + + S, coge la nota del taller de reparaciones. + + + Quiz la prxima vez. + + + Quin ha podido robar cosas de una caja personal? + + + Mis hombres no, desde luego. Habr sido alguien de Libertad. Si tuvisemos el control de Yanov no pasaran estas cosas. + + + Hblame de Deber. + + + Qu quieres saber exactamente? + + + Qu es lo que hacis aqu? + + + Lo de siempre. Proteger a los stalkers de todo tipo de alimaas. Ya habrs visto que por aqu hay muchos mutantes y no son como los cachorritos que andan por el Cordn. Por ejemplo, anoche vi una quimera con mis propios ojos. Estaba oscureciendo, as que no pudimos cazarla. Pero no solo nos dedicamos a perseguir mutantes. Tambin investigamos y conseguimos pruebas de los laboratorios abandonados antes de que esos cerdos de Libertad se hagan con ellas. + + + Qu os trajo al centro de la Zona? + + + Lo preguntas en serio? Y qu haces t aqu? Djame que lo adivine: estamos aqu por la misma razn. El centro de la Zona siempre ha sido un objetivo inalcanzable, una solucin a todas nuestras preguntas. Queramos descubrir cmo se cre la Zona, y cmo se puede destruir. Es por eso que, en cuanto nos enteramos de que el Cauterizador se haba desactivado, nos dirigimos hacia el centro. + + + Y qu habis descubierto? + + + Muchas cosas, pero es informacin confidencial. Solo puedo decirte que en la Zona hay ms de lo que se ve a simple vista. Los tuyos creen que la Zona es un tumor que hay que extirpar. Por lo que he visto, prefiero pensar que la Zona es un organismo viviente y que nosotros no somos ms que bacterias que viven en su interior. Aunque combinsemos las potencias militares de todo el planeta, no podramos destruir la Zona. Por eso tenemos que usar un enfoque ms inteligente: descubrir el motivo de la existencia de la Zona para despus eliminarla. + + + Y si no pudieseis eliminarla? + + + Pues entonces tendremos que pensar otra cosa, pero no hemos perdido las esperanzas. Tenemos que cumplir con nuestro deber y ser optimistas. + + + Cmo terminaste en Deber? + + + Es una historia bastante aburrida, y no especialmente heroica. En cuanto apareci la Zona, un amigo llamado Lenya se vino a estudiarla. Yo era oficial del ejrcito y Lenya estaba en el servicio de inteligencia. No es que fusemos tontos, pero terminamos metidos en un lo tremendo. Nos arrastramos durante horas, con las heridas sangrando, hasta que finalmente Deber nos recogi. Yo lo consegu, pero Lenya no. Yo no tena amigos en la Zona, as que decid quedarme con Deber. Adems, desde entonces le tengo mana a la Zona. + + + Cmo es tu relacin con Libertad? + + + Oficialmente estamos en guerra, pero la vida en el centro de la Zona tiene sus propias reglas. Aqu hay muy pocos lugares seguros, y ni Libertad ni Deber tienen muchos hombres. Por lo tanto, qu sentido tiene que nos matemos los unos a los otros? Por eso existe una regla no escrita: mantenernos apartados. Aunque esta regla no se aplica en el exterior de Yanov: ah fuera hay una verdadera guerra. + + + Vale, olvdalo. + + + Bueno, vale. + + + Quera hablar con Pedernal, un miembro de Libertad. + + + Paso de la gente de Libertad, siempre que se mantengan lejos de nosotros. + + + Pedernal, tambin conocido como Urraca, se dedica a tender trampas a los stalkers cazadores en Zaton para quedarse con todo su botn. + + + Y qu? No me sorprende. Libertad est llena de basura de ese estilo. + + + Hay algo ms: conoc a un stalker en la cantera. Antes de morir, me dijo que Pedernal lo abandon en una anomala y se larg con su botn. + + + Ya veo. Esos stalkers de mierda nunca olvidan... ni siquiera en Libertad. Gracias por la informacin, seguro que nos vendr bien. + + + Ya s bastantes cosas sobre l. De hecho, el muy idiota tiene el morro de presumir de haber hecho cosas que en realidad he hecho yo. + + + Eso supone un duro golpe para la reputacin de Libertad. Gracias por la informacin. Seguro que nos vendr bien. + + + De nada. + + + Vale, t mismo. + + + Tengo la PDA de Morgan, tu oficial de suministros. + + + De acuerdo. + + + Lo pensar. + + + De acuerdo. + + + De acuerdo. + + + A ver... Vaya, el muy cabrn haca negocios por su cuenta y usaba nuestro nombre de tapadera. Si esto sale a la luz, nuestra reputacin se ir al garete. Qu tal si te compro esta PDA? Pagar bien. 4.000, por ejemplo? + + + Es una acusacin muy grave. Djame ver la PDA. + + + Toma. + + + La verdad es que yo tambin sospechaba de l... Ahora sabr si tena razn. Gracias, stalker! Espero que no comentes con nadie lo que hemos hablado. Tengo una pequea recompensa para ti, por haber salvado la reputacin de Deber... + + + De momento me lo quedo. + + + Otro ms... Muy interesante. Lo aadir al archivo del caso. + + + Toma. + + + Gracias! Aqu va una pequea compensacin por el trabajo. + + + Me lo quedo como recuerdo. + + + Conozco a un grupo de soldados que quieren unirse a Deber. + + + Siempre estamos buscando hombres buenos. Diles que vengan a hablar conmigo. + + + Hay un pequeo problema... fueron soldados de Monolith. + + + Cmo que "fueron" soldados de Monolith? Que yo sepa, los soldados de Monolith, o lo son, o estn muertos. No conozco a nadie que "haya sido" soldado de Monolith. + + + Parece ser que estaban controlados por alguien, porque no recuerdan nada de lo que les pas desde que se fueron a Chernbil. Ahora ya no son agresivos, y no saben qu hacer. + + + Ya, es bueno que no sean agresivos... Podra encargarles alguna misin sencilla y asegurarme de que estn bien de la cabeza. Aunque no estoy seguro al 100%... Podras responder por ellos? + + + S. Tienen mi confianza. + + + Mmm. El problema es que tampoco me fo de ti... de momento. Lo siento. + + + Vale, pero recuerda que si meten la pata, pagars por ello. El problema es que no podrn llegar a Yanov por su cuenta. Necesito que gues a mis hombres hasta el escuadrn de Monolith. Hablarn con ellos y, si llegan a un acuerdo, pasarn a formar parte de Deber. Avsame cuando ests listo para salir. + + + No. No confo mucho en ellos. + + + No aceptamos a cualquiera en nuestra faccin. + + + Estoy listo para guiar a tus hombres hasta el escuadrn de Monolith. + + + Bien. Te enviar a dos soldados. + + + De acuerdo. + + + Hablemos ms tarde, ahora no puedo. + + + No! T hars lo que quieras, pero no permitir que a mis hombres los alcance una emisin. + + + He encontrado la PDA del fundador de Deber. Te interesa? + + + A ver... Vaya, as que fue as como ocurri... Creo que los dems no deberan ver esto. De hecho, preferira que nadie ms viese esta PDA. Que la leyenda del creador de Deber siga como est. Me venderas esta PDA? + + + Toma. + + + Gracias. Aqu tienes tu recompensa. + + + Me pensar tu oferta. + + + Toma la PDA del fundador de Deber. + + + Gracias! Me haces un gran favor. Toma tu recompensa. + + + Necesito soldados para trabajar con los cientficos. Puedes ayudarme? + + + Nos encanta ayudar a los cientficos. Qu hay que hacer? + + + Estn buscando a gente para proteger su bnker. + + + Muy bien. Enviar unos cuantos hombres. + + + Muy bien. Enviar unos cuantos hombres. + + + Me gustara ayudar, pero ya han contratado a gente de Libertad. Enviar un escuadrn nuestro tan solo complicara una situacin ya de por s bastante tensa. + + + Estoy planeando un viaje a Pripyat. Podras dejarme unos cuantos hombres para esta misin? + + + Andamos muy escasos de hombres! Habla con Strider: parece ser que no est a gusto en Deber, as que quiz quiera marcharse contigo. + + + Andamos muy escasos de hombres como para enviar soldados a una misin imposible! + + + Habla rpido y vete ms rpido an. Qu quieres? + + + Te escucho. + + + Me alegro de verte con vida. + + + Tengo documentos de la central de Jpiter. + + + Dudo mucho que aqu haya informacin interesante. Saquearon la central incluso antes de que llegasen los stalkers. Pero... mmm... he encontrado algo jugoso. Me gustara ensearle estos documentos a alguien. Me los vendes? + + + S, cgelos todos. + + + S, coge la orden de evacuacin. + + + S, coge las actas de las reuniones. + + + S, coge el horario de entregas. + + + S, coge la nota del taller de reparaciones. + + + Quiz la prxima vez. + + + Quin ha podido robar cosas de una caja personal? + + + Qu soy yo, un vigilante? No me dedico a vigilar tu caja! Mis chicos no han sido, eso seguro. Nunca haran algo as. + + + Hblame de Libertad. + + + Es una larga historia. Qu quieres saber? + + + Qu es lo que hacis aqu? + + + Nos aseguramos de que los oficiales no oculten nada a la gente de a pie. Ya sabes cmo es esto: en cuanto descubren un nuevo laboratorio o salen a la luz documentos sobre los secretos de la Zona, organizan de inmediato una operacin militar y dejan el lugar ms limpio que una patena. La nica forma de descubrir las cosas es adelantndose a ellos. + + + Qu os trajo al centro de la Zona? + + + Bueno, a los chicos les apeteca darse una vuelta por un sitio nuevo. Ahora en serio, es una oportunidad para descubrir cosas que no se haban visto antes. Ni el ejrcito ni los stalkers han estado aqu, as que te encuentras con cosas nuevas a cada paso que das. + + + Has encontrado algo? + + + Un par de puertas cerradas y varios artefactos raros. + + + Cmo terminaste en Libertad? + + + Era amigo de varios lderes de Libertad cuando todava no exista la Zona. Bueno, por aquel entonces no eran lderes de nada, tan solo unos hippies. As que cuando me traslad a la Zona en busca de artefactos y me encontr con varias caras que me sonaban, pens que era mejor lo malo conocido que lo bueno por conocer. + + + Qu piensas de Deber? + + + Son idiotas, eso es lo que pienso. A ver, por qu narices quieren destruir la Zona? No consume recursos valiosos ni se est haciendo ms grande ni nada de eso. Podran dedicarse a estudiarla a fondo: piensa en todos los descubrimientos cientficos que podran hacerse... Por ejemplo, el hombre nunca ha sido capaz de entender la antigravedad, verdad? Y la Zona est repleta de dispositivos antigravitatorios. No me importara echar a todos esos idiotas de all, pero eso sera mucho jaleo. Por cierto, no te confundas por nuestras relaciones aqu en Yanov. Estamos en guerra... pero Yanov es territorio neutral, no s si me explico. + + + Vale, olvdalo. + + + No hay problema. + + + Quera hablarte de uno de tus stalkers. + + + Ah, s? Pues dime. No vendrs a darme un soplo sobre alguien? + + + Tu stalker Pedernal se hace llamar Urraca en Zaton. Los stalkers cazadores de all lo estn buscando porque los enga y se qued con su botn. + + + Y esperas que me crea eso? + + + Escucha las historias que cuenta en el bar. Primero estaf a esos stalkers y ahora te miente a ti. + + + Vale, calma. Hablar con Barbas, a ver qu me cuenta. Si su versin coincide con la tuya, nos encargaremos de Pedernal al ms puro estilo Libertad. + + + Mmm. Me pregunto cmo pudo hacerse con el artefacto con tal rapidez. Supongo que la mitad de su historia era mentira. Hablar con mis hombres. Si su versin coincide con la tuya, nos encargaremos de l al ms puro estilo de Libertad. + + + De nada. + + + De acuerdo. + + + De acuerdo. + + + Lo pensar. + + + Toma. + + + De acuerdo. + + + Conozco a un grupo de soldados que quieren unirse a Libertad. + + + Siempre nos interesa gente buena. Pueden unirse a nosotros si estn preparados para ello. + + + Hay un pequeo problema... antes fueron soldados de Monolith. + + + Eso es un "pequeo" problema? Prefiero mantenerme al margen de la gente de Monolith. No hay nada ms que hablar. + + + stos son pacficos. Parece ser que estaban controlados por alguien, porque no recuerdan nada de lo que les pas desde que se fueron a Chernbil. Ahora no saben qu hacer. + + + Lo siento, sigo escptico. Y si me estuvieses mintiendo? + + + Eh... Bueno, supongo que tampoco pasa nada si hablamos con ellos. Te enviar un par de hombres para que los lleves hasta el escuadrn. Hablarn con ellos y, si todo va bien, tus soldados de Monolith podrn entrar en Libertad. + + + Por qu no te vas al cuerno? Es increble que ests dando a entender que en Libertad aceptamos todo tipo de escoria. + + + Quiero pedirte que aceptes a ese escuadrn de Monolith en Libertad. + + + Mis hombres estn listos. + + + Vale, diles que me sigan. + + + Mejor ms tarde. + + + Esperemos un poco. Las emisiones no son sanas. + + + He encontrado la PDA del fundador de Deber. Te interesa? + + + Si contiene algo til, s. Anda, esto s que es interesante! Siguen difundiendo su propaganda de mierda por la Zona, pero ahora resulta que lo que cuentan es todo mentira. Tengo ganas de leer esto a fondo. Oye, te pagar bien por esta PDA. + + + Toma. + + + Gracias. Aqu tienes la pasta. + + + Lo pensar. + + + Toma la PDA del fundador de Deber. + + + Gracias. Aqu tienes la pasta. + + + Los cientficos quieren contratar a gente. Puedes enviarnos a alguien? + + + Depende. Qu hay que hacer? + + + Proteger el bnker de los cientficos. + + + Muy bien. Enviar unos cuantos hombres. + + + Muy bien. Enviar unos cuantos hombres. + + + Me gustara ayudar, pero Deber ya est all. Ya pasamos bastante tiempo con esos capullos en Yanov. As que mejor que no, gracias. + + + Podras dejarme un escuadrn para ir a Pripyat? + + + Habla con Strider, el nuevo recluta. No est muy contento aqu, as que puede que se vaya contigo. + + + Si dispusiese de hombres suficientes, quiz. Pero no es el caso, ya tenemos bastante jaleo. + + + Bueno, t qu dices? + + + Qu haces aqu? + + + Me alegro de verte, to! En Libertad me han hablado muy bien de ti. Qu puedo hacer por ti? + + + He encontrado un objeto extrao en el tnel del ferrocarril. Te interesa? + + + Eh... no. Es chatarra. Parece un artefacto, pero no tiene ningn efecto. Esa basura se la solemos regalar a los cientficos. + + + He encontrado un objeto extrao en Zaton. Te interesa? + + + Y qu quieres que haga con l? Ni siquiera me interesan los artefactos normales... Ensaselo a los cientficos, pagan bien por chatarra como sa. + + + Estoy buscando a gente para proteger el bnker de los cientficos. Sabes de alguien? + + + Nadie mejor para ello que Libertad. Tambin puedes intentar algo con los stalkers, pero no son muy de fiar. Si te engaan, cmo hars para encontrarlos? Y lo que no te recomiendo es que hables con Deber. Esos fanticos solo sirven para cargarse mutantes y punto. + + + Estoy buscando gente que pueda recoger muestras para los cientficos. Sabes de alguien? + + + Claro. Habla con Loki, seguro que te ayudar. Tambin puedes intentar algo con los stalkers, pero no son muy de fiar. + + + Alguien me ha robado cosas de una caja. Sabes quin puede haber sido? + + + En qu se est convirtiendo este lugar, to? Dudo que fuese alguien de Deber porque tienen una disciplina muy estricta, incluso demasiado para mi gusto. Y en Libertad nadie quiere tu basura, as que tiene que haber sido un stalker. + + + El otro da conoc a un escuadrn de Monolith. + + + Caray! Yo nunca he visto ninguno. Me han contado historias escalofriantes de esa gente. Dicen que los de Monolith son unos completos chiflados. Sera un combate duro, no? + + + No hubo ningn combate. Son gente pacfica. Me dijeron que haban estado mucho tiempo con una venda en los ojos, pero que por fin volvan a ser ellos mismos. Pero ahora no saben qu hacer, as que estoy intentando que entren en una faccin. + + + Vaya, qu interesante. Bueno, a los stalkers hay que descartarlos porque lo ms probable es que les pegasen un tiro, teniendo en cuenta sus enfrentamientos anteriores... Prueba a hablar con Loki. Nadie los tocar si llevan uniformes de Libertad. + + + A quin podra interesarle la verdad sobre el fundador de Deber? + + + Pues no s, la verdad. Depende de lo mucho que se aleje de la versin oficial de Deber. Habla con Loki y l te dir. + + + Tengo la PDA del oficial de suministros de Deber. Te interesa? + + + Ni en un milln de aos. Conozco a alguien que vende todo mucho ms barato. Y adems, no me interesa nada lo que me ofreces. + + + Quin podra venirse a Pripyat conmigo? + + + A Pripyat? Vaya! Me encantara dejarlo todo e irme contigo, pero tengo un montn de cosas que hacer... + + + A Pripyat? Caray! Pregntale a Loki por si conoce a alguien. No creo que le diga que no a un buen hombre como t. + + + Vienes a refrescarte? No sirvo nada del otro mundo, pero este lugar es acogedor y agradable. + + + Tengo cualquier cosa que necesites. Qu andas buscando? Algo de comer? Una copa? O disparar un poco? + + + Estoy buscando a gente para proteger el bnker de los cientficos. Sabes de alguien? + + + Habla con los stalkers. Seguro que les gustara trabajar para esos empollones. Entre otras cosas, porque tendran un permiso especial para estar en la Zona. + + + Estoy buscando gente que pueda recoger muestras para los cientficos. Sabes de alguien? + + + Te recomiendo que no trabajes con stalkers sin experiencia. No encontrarn nada, incluso es posible que pierdan algo. + + + El otro da conoc a un escuadrn de Monolith y quera preguntarte algo. + + + Mmm. Normalmente, los que se cruzan con soldados de Monolith terminan con varios agujeros de ms y sin pulso. Aunque t pareces bastante saludable. Bueno, qu quieres preguntarme? + + + Este escuadrn no es as. No he luchado, sino hablado con ellos. + + + En serio? + + + Pues s. Me han dicho que haban estado mucho tiempo con una venda en los ojos, y que ahora no saben qu hacer. Me han pedido consejo. + + + Mi consejo es que ni se acerquen a los stalkers, porque tienen demasiada memoria como para permitirles seguir con vida. Quizs podras conseguir que entrasen en una faccin, pero no s si Deber o Libertad querrn tener algo que ver con ellos. + + + Tengo una PDA con la verdad sobre el fundador de Deber. Te interesa? + + + No me van los cotilleos, vale? Si quieres vender informacin, habla con Bho. Le encanta toda esa mierda. Y teniendo en cuenta el tipo de informacin, seguro que a Loki o a Shulga tambin les podra interesar. + + + Tengo la PDA del oficial de suministros de Deber. Te interesa? + + + Sospecho que esta PDA me va a traer problemas con Deber y eso no me interesa. Es mejor que hables con Bho. + + + Necesito asistencia mdica. + + + Djame echar un vistazo... + + + Eso est mejor. + + + Quin podra venirse a Pripyat conmigo? + + + Habla con un stalker llamado Vano. Es un to tan honesto que siempre anda metido en los. + + + Por aqu no hay mucha gente chiflada, colega. Mejor busca en otra parte. + + + Necesitas medicinas o has venido a charlar un rato? + + + Alguien me ha robado cosas de una caja. Sabes quin puede haber sido? + + + Sabes cmo se llama ese stalker? + + + Creo que lleva poco tiempo aqu. Cmo se llama ese cabrn? Snob? Snack? No, no... No, se llama Snag! S, eso es, Snag. + + + Qu tal, hermano? + + + Oye, tengo algo importante que contarte. + + + Genial. Primero tomemos un trago y despus veamos qu es eso tan importante. + + + Vale, tomemos algo! + + + No, ahora no me apetece beber. + + + Bueno, y qu era eso que queras contarme? + + + Tengo pensado ir a Pripyat por el pasadizo que hay bajo la central de Jpiter. Nitro puede abrir la entrada. + + + Mmm. A Pripyat por un pasadizo subterrneo. Necesito otro trago para digerir eso. + + + Salud. + + + Qu bueno est esto. Oye, no pensars encargarte de esa misin t solo? No, de eso nada: ir contigo. Y necesitaremos ms gente. Un par de hombres de confianza nos vendrn muy bien en algo as... + + + Nitro me dijo que montase un escuadrn. + + + S, es una buena idea. Otra ronda por el xito de la misin! + + + Hasta el fondo! + + + Puedo hacerlo solo. En Zaton me cargu una guarida de chupasangres sin ayuda. Un par de depsitos de gasolina y pan comido. + + + Brutal, to. Un brindis: porque siempre tengamos un depsito de gasolina a mano! + + + Amn! + + + Gente de confianza, eh? No s, este lugar est lleno de carroa... El otro da conoc a un comerciante en Zaton, pero result que era de Deber... + + + Caray, as que Deber ahora se pudre por dentro, eh? Qu va a ser de este mundo? En fin, olvidemos las preocupaciones con otra copa. + + + Me rindo a tu sabidura. Salud. + + + Mmm. Qu bueno, eh? Un escuadrn es una buena idea. Necesitaremos al menos tres hombres. Se te ocurre alguien? + + + Ya encontrar a alguien... Tambin necesitaremos trajes con mdulos de respiracin de ciclo cerrado... + + + S, la seguridad es lo primero. Yo ya tengo un traje pero necesitamos los de los dems, y eso no es tarea fcil: esos trajes no son nada comunes por aqu. Brindemos por que la bsqueda tenga xito! + + + Salud. + + + Conoces a ese to tan raro que se llama No? Se encerr en una barca con todo tipo de cosas... Su forma de saludarte es abrirte dos agujeros con la escopeta. + + + S, hace mucho que no s nada de l. Trabaj con l durante una poca. Era buen luchador... Una pena que haya terminado as. Brindemos por l y por su salud mental! + + + Por Noah! + + + Me encontr con Vano en Yanov hace tiempo y an no haba conseguido saldar su deuda con los bandidos. Tuve que ayudar a ese pobre desgraciado... + + + Genial. El viaje ser mucho ms divertido con l. Y adems puede encargarse de los suministros. Por Vano! + + + Y que lo digas, hermano! + + + Hay un soldado en el bnker de los cientficos. No tiene nada que hacer all, as que puede que se venga con nosotros. + + + S, un soldado nos vendra bien. Brindemos por que se una a nuestra causa. + + + Hace. + + + No te lo vas a creer, pero el otro da ayud a un escuadrn de Monolith... Parece ser que de repente han recuperado la cordura y no saben qu hacer. As que los ayud y ahora estn en Yanov. + + + Mmm. Creo que el vodka se te ha subido a la cabeza! Ja, ja! Normal: est de muerte! + + + Y que lo digas. + + + Bueno, pues ya est: lo principal es que no nos perdamos bajo tierra... + + + No te preocupes. Tengo un plano. + + + Genial. Tomemos otra por el xito de nuestra misin. + + + Brindo por eso! + + + Reljate, to. El otro da encontr ese oasis al que nadie sabe llegar. + + + Caray. Eres todo un explorador, colega. Contigo seguro que llegamos a Pripyat en un momento. Salud. + + + Salud. + + + Hola! + + + Creo que ya tenemos gente suficiente. Podemos partir. + + + Seguro? Otro par de manos no nos vendra mal. + + + Seguro. Vamos. + + + Tienes razn. Intentar encontrar ms gente. + + + Bien. Vmonos, tos. + + + En marcha. + + + Est bien contar con soldados pero, qu hay del tema de la proteccin? Necesitas un traje con un mdulo de respiracin de ciclo cerrado antes de irnos... No tengo ganas de cargar con tu cadver, ya pesan bastante el can y las balas. + + + S, lo tengo. + + + Esperemos un poco. Las emisiones son peligrosas! + + + Dnde puedo encontrar soldados para nuestro escuadrn? + + + Pregunta por Jpiter. Los que estn en Zaton no querrn irse a Pripyat. Necesitamos gente sin ataduras de ningn tipo y que quieran unirse a una misin desesperada. Has conocido a alguien as? Gente que est en deuda contigo o que no se haya asentado del todo... + + + Ya tenemos gente de sobra. Tampoco necesitamos un ejrcito. Usaremos tcticas de escuadrn. + + + Qu piensas de Strider? + + + Los soldados de Monolith suelen ser temibles y fanticos. Pero no s cmo son sus ex soldados. Strider parece tranquilo por fuera, pero las apariencias engaan. + + + Caray! Blindaje de Monolith. De dnde diablos lo has sacado? + + + En el mismo paquete vena Strider, un antiguo soldado de Monolith. + + + No saba que se poda ser "antiguo" soldado de Monolith. En fin, a ver qu sorpresas nos da este chico. + + + Qu opinas de Sokolov? + + + Ese tipo lleva un traje interesante, de lo ms cientfico. Haca un par de aos como mnimo que no vea uno as. + + + Es Sokolov, el copiloto del helicptero militar que se estrell. + + + Por la forma en que se comporta ya sospechaba que no era un cientfico. Un buen soldado nunca est de ms. + + + Cunto hace que conoces a Vano? + + + Nos hemos visto en Los 100 Rads un par de veces. Dicen que es honrado, optimista y un buen stalker... Pero es demasiado inocente, y eso puede resultar fatal en la Zona. + + + As que Vano se viene con nosotros, eh? Genial, as cargar con nuestras cosas... Ja, ja. Tranquilo, hombre, era broma. + + + Quin ha podido robar cosas de una caja personal? + + + Te han robado algo? Vaya. No s qu decir. Por aqu no he visto a nadie sospechoso. Si descubro algo, te lo dir. No queremos ratas en esta base. + + + Me han dicho que hubo un tiroteo por aqu hace poco... + + + Ah, fui yo. Haba unos idiotas cerca de la torre que se pusieron a discutir y a gritar. Dispar un par de rfagas con mi vieja ametralladora y echaron a correr hacia la subestacin. Y as dejaron de darme la lata, je, je. + + + He decidido entregar al artefacto del Oasis. + + + Sabia decisin. Dmelo. + + + Toma. + + + Genial. Tengo que estudiar este milagro inmediatamente. Ah, por cierto. Gracias por tus servicios, aqu tienes la paga. + + + Necesitas ayuda? + + + Gracias. Ya tenemos un escuadrn de stalkers a nuestro servicio. Aunque... Existe una teora, o ms bien una leyenda... Has odo hablar del Oasis? + + + Intentar encontrar el Oasis. + + + Lo siento, ahora mismo estoy muy ocupado. + + + No, no s nada. + + + Pues escucha. Muchos hablan de l pero parece que nadie lo ha visto. Las aguas del Oasis son reconstituyentes. Si entras en ellas, tus heridas cicatrizan y recuperas toda la energa. Circulan rumores de todo tipo, a cada cual ms increble. Algunos dicen que lo han visto en sueos. Pero yo, como cientfico, me veo obligado a preguntar: "Cmo sabes que era de verdad el Oasis?" Si te animas a buscarlo... no puedo prometerte una gran recompensa. Pero si el Oasis existe de verdad, supondr un gran avance en nuestra investigacin. + + + He encontrado el Oasis. + + + En serio? Entonces existe? No quiero parecer un escptico, pero... me has trado algo como prueba? + + + S. He encontrado algo que parece un artefacto. + + + Dmelo ahora mismo! + + + Toma. + + + Genial. Tengo que estudiar este milagro inmediatamente. Ah, por cierto. Gracias por tus servicios, aqu tienes la paga. + + + Lo siento. Creo que podra serme til. + + + Qu egosta eres. Por no decir irresponsable. Este artefacto posee propiedades desconocidas. Qu hars maana si te despiertas con las piernas paralizadas? O si tu piel se vuelve verde? Te aseguro que es mejor que estos objetos estn en manos de un cientfico: al menos nosotros sabemos cmo protegernos bien. + + + No intentes asustarme. Me quedo el artefacto. + + + Vale, muy bien. Toma. + + + No. + + + No? Y qu pretendes que estudie entonces? Sabes lo que diferencia a un cientfico del resto de personas? Que para nosotros una teora se demuestra con hechos! Necesito pruebas! + + + Vale, enseguida vuelvo. + + + Ya he perdido mucho tiempo. No puedo volver. + + + Si la recompensa te da igual, piensa al menos en todos los avances mdicos que supondra el Oasis. A no ser que me equivoque, el Oasis es en realidad una anomala... as funcionan las cosas en la Zona. Y por tanto, sera la primera anomala con propiedades curativas! + + + Qu te trae por aqu? + + + Has visto a los mercenarios que nos protegan? + + + Me alegra encontrar a otra persona inteligente. Qu puedo hacer por ti? + + + Increble! Han asesinado en el exterior del bnker a los mercenarios que nos protegan! + + + Hermann, qu sabes del Oasis? + + + El Oasis? Ja. Es una mentira, as de sencillo. La gente desea creer en todo tipo de panaceas curativas, por eso creen en esos cuentos. De verdad, el Oasis no es ms que el fruto de la imaginacin desatada de alguien. + + + Mucha gente habla de ello. + + + Demasiada. Pero ninguno ha estado all. Segn mi punto de vista cientfico, solo existe aquello que se puede demostrar. + + + Entiendo... Gracias. + + + Vale, vamos. + + + Genial. Estaremos de vuelta antes de que termines de decir "chupasangre". Ja! + + + Ya veremos. + + + Vale. Pero esperemos a que termine la emisin y despus nos vamos. + + + Muy buenos das, stalker. Soy el To Yar. Supongo que vendrs cansado del viaje, no? Come algo, ya que ests aqu. Has venido en muy buen momento, porque necesito ayuda. A mi edad hay cosas que no puedo hacer solo. Aunque cuando era joven... + + + Has descansado? Te apetece dar un paseo? Ayuda a este anciano... + + + Qu tal todo? Cada vez te veo mejor... + + + En qu consiste el trabajo? + + + Est chupado. Tienes que venir conmigo a Kopachy; no est lejos de aqu. Ya descubrirs el resto cuando lleguemos... + + + Por qu no te ayudan tus amigos de Libertad? + + + No quiero molestarlos con esto. Nosotros dos nos apaaremos. + + + Te vienes a Pripyat conmigo? + + + No. Si fuese ms joven... Recuerdo que sola ir y venir de Siberia a pie, pero hoy en da prefiero los viajes cortos. Estoy ya muy mayor. + + + Cudate. + + + Espera, podra acompaarte a Yanov? No estara mal tener alguien con quien hablar. + + + Gracias, pero prefiero ir solo. + + + Vamos a Yanov. + + + Gracias por ayudar a este anciano. Si tienes alguna pregunta, intentar responderla lo mejor que pueda... + + + Por qu no pediste ayuda a miembros de Libertad? + + + No quiero que los mercenarios se enfaden con Libertad! Ya hemos tenido una guerra y no quiero otra. Es un asunto personal y no quiero involucrarlos. + + + Qu ha pasado aqu? + + + Unos tipos vinieron a asesinarme... Estaba escondido entre los arbustos y de repente apareci un escuadrn de mercenarios. Su lder estaba hablando por su PDA sobre un laboratorio central de Pripyat, una orden urgente y tal y cual... Entonces pis una rama sin querer y delat mi presencia. Cog el rifle y ech a correr, pero tena el presentimiento de que vendran a por m. Hoy en da, se es el precio que pagamos por escuchar una conversacin sin querer. + + + Lo importante es no dejarte sorprender por nada. Sgueme sin hacer ruido... Si somos silenciosos y no nos movemos, todo ser mucho ms fcil. + + + De acuerdo. + + + Tenemos que salir de aqu. Ya hablaremos luego. + + + De acuerdo. + + + Estoy reuniendo un pelotn para ir a Pripyat. Quieres acompaarme? + + + Suena bien... pero no, gracias. Los cientficos me han prometido un permiso para estar en la Zona y adems me pagan bien. Lo siento, pero me quedo aqu. + + + Listos para tomar medidas de las anomalas? + + + S, siempre que nos cubras. Qu anomala tenemos que buscar? + + + Vamos a la Cinaga. + + + Dejemos atrs el pueblo de Kopachy para llegar al Cenizal. + + + Espera, he cambiado de idea. No quiero salir ahora. + + + Ya estamos listos, pero deberamos esperar a que terminase la emisin... + + + De acuerdo. + + + Medidas finalizadas. Vamos. + + + Yo tampoco quiero quedarme aqu. Adnde vamos? + + + Vamos a la Cinaga. + + + Dejemos atrs el pueblo de Kopachy para llegar al Cenizal. + + + Al bnker de los cientficos. + + + Espera, djame pensar. + + + Listos para volver al bnker? + + + Lo estamos de sobra. + + + Pues entonces vamos. + + + Vale, dame solo un segundo... + + + Tengo un par de preguntas. + + + Dime, intentar responderlas. + + + Creo que eso es todo. + + + Quera preguntarte por la misin de los cientficos. + + + Ah, el tnel... Aqu hay algo, un artefacto extrao o algo por el estilo. Es un lugar muy raro. Al principio pareca tranquilo, pero empec a notar algo... Adems, est lleno de hmsteres pero no nos supondrn un gran problema. + + + Habas estado aqu antes? + + + S, pero no avanzamos mucho. Vinimos a tomar medidas para Hermann y empezaron a salir hmsteres de todos lados. Cuando volvimos, los cientficos se entusiasmaron con los resultados, pens que iban a echar a volar. Nos pidieron que registrsemos el tnel por completo, pero me negu. Ahora que te han contratado, nosotros nos dedicamos solo a ofrecer proteccin. + + + Entiendo. + + + Bueno, no es la primera vez que tomamos medidas, as que todo ir bien. + + + Dnde habais tomado medidas antes? + + + Bueno, "medidas" nos viene un poco grande para lo que hacemos. Tan solo tomamos medidas reales una vez: en el campo psquico anmalo de aquel puto tnel. Incluso esa vez, en cuanto encendimos los aparatos, comenzaron a salir hmsteres de todos los tneles. Mace sali de all con vida por los pelos. + + + No te parece extrao? + + + No, por qu? En la Zona no quieren gente entrometida, as que es normal. Eso me cont una vez Ozersky; puedes comprobarlo hablando con l. Quizs sepa algo que no ha contado a los dems. + + + Entiendo. + + + Entiendo. + + + Qu puedes contarme de la gente que vive en el bnker? + + + Bueno, son bastantes. Por un lado dos cientficos: Hermann, el pez gordo, y Ozersky. Han contratado a Novikov, que se encarga de los asuntos tcnicos y a Garry, el gua. Y despus estamos nosotros: nos contrataron hace poco para tomar medidas y hacer otras tareas cientficas. Ah, el otro da Garry trajo al bnker a un soldado. Eso es todo. + + + Hblame de Hermann. + + + Hermann es el jefe de esto. Es profesor de instituto, probablemente de alguno secreto... Organiz la expedicin, por eso crearon este bnker aqu casi inmediatamente despus de que se desactivase el Cauterizador cerebral. Tambin fue quien nos contrat a Garry y a los dems. Paga bien e incluso nos ha prometido un permiso oficial para entrar en la Zona. + + + Cambiemos de tema. + + + Hblame de Ozersky. + + + Es un to legal y simptico, adems del nmero dos del grupo, aunque Hermann escucha sus consejos de vez en cuando. No s mucho ms sobre l. Es con Hermann con quien hablamos casi siempre. + + + Hblame de Novikov. + + + Es como un Einstein de vacaciones, to. Sabe perfectamente lo que hace en materia de instalaciones tcnicas; de hecho, es mejor que cualquiera que conozcas. No s cmo ha terminado aqu pero est claro que la Zona no le es extraa: sabe mucho ms de este lugar que nosotros. + + + Hblame de Garry. + + + Garry es un tipo genial, fue uno de los primeros en llegar aqu. Me dijo que a los cientficos los dejaron aqu cuando l lleg, as que se uni a ellos en ese mismo instante. ltimamente se aburre mucho, porque no le gusta estar de brazos cruzados; pero tampoco puede irse hasta que termine su contrato con los cientficos. Si quieres saber ms, habla con l directamente. + + + Hblame del soldado. + + + Ja. Garry se lo encontr mientras hua de unos zombis. Tuvo suerte que se tratase de Garry, porque cualquier otro se lo habra cargado. Ahora nunca sale del bnker, y no lo culpo por ello. + + + Qu hacen aqu los mercenarios? + + + Esos putos matones protegen el bnker. Vinieron un da, hablaron con Hermann y se quedaron. Tengo la impresin de que a Hermann tampoco le gustan mucho. Su lder se llama Negro, nombre muy acorde a su personalidad. + + + Qu me puedes contar de esta rea? + + + Bueno, hay una antigua base militar no muy lejos de aqu. Al norte est el pueblo de Kopachy y al este una estacin de tren por la que andan los stalkers. Ah, tambin hay un tren en las vas cercanas. Un lugar nada divertido, te lo aseguro. + + + Hblame de la antigua base militar. + + + Pues no hay mucho que contar... Todo lo que haba de valor se lo llevaron hace una eternidad. Y ahora solo quedan mutantes y zombis. Tambin hay un pequeo bnker, que sirve para protegerse de una emisin. + + + Hblame del pueblo. + + + Bueno, no es exactamente un pueblo, ms bien un grupo de colinas. Se enterr en el 86 para evitar que emitiese radiaciones. La gente ya no va a ese lugar porque no es saludable y adems all no hay nada de valor. + + + Hblame de la estacin de tren. + + + Puedes contarme algo del tren? + + + Bueno... Merece la pena visitar la estacin de Yanov si no has estado nunca all. Es un buen sitio para tomar una birra y conocer a otros stalkers. Adems, es el nico sitio seguro de este lugar, aparte de nuestro bnker. + + + Veo que tienes nuevo equipo. + + + Pues s. Ahora nos llamamos Equipo de investigacin cientfica Iskra! Pero aunque ahora seamos cientficos, no vamos a olvidarnos de vosotros, ja, ja. Mis "colegas" y yo hemos discutido a fondo sobre este tema y hemos llegado a la conclusin de que... te has ganado esto, colega! Si te encuentras en una anomala o te afecta una emisin, Dios no lo quiera, envanos una nota de agradecimiento. Recibiremos el mensaje, te lo aseguro! + + + Eh. + + + Hola. + + + Bueno, nos vamos, o esperamos un poco? + + + Pensaba que me iba a quedar para siempre en ese tnel, convertido en un zombi descerebrado! En qu puedo ayudar al hombre que me ha salvado? + + + Te apetece estirar las piernas? + + + Eh, colega! + + + Estamos en deuda contigo. No lo olvidar. + + + Tengo la sensacin de que aqu no nos queda nada por hacer. Largumonos de este lugar! + + + Bueno, qu le pasa a ese tnel? + + + All no hay ni una sola mota de polvo. Hermann dice que es por el Tesla, pero me cuesta creerlo. + + + Pregunta al jefe. No s lo que puedo contarte y lo que no. + + + Dime lo que encontraste mientras medas el campo psquico. + + + Vi pisadas en el suelo. Parecan humanas, pero, quin iba a estar tan loco como para caminar descalzo en aquel lugar? + + + Tu mente se confunde y todo lo que ves comienza a adoptar esas formas raras. Es ese puto campo psquico, sabes? + + + Qu encontraste bajo tierra? + + + Poca cosa, tan solo un par de hmsteres muertos. + + + Eh... Nada que no puedas encontrar en cualquier otra parte de la Zona. + + + Ests bien? + + + Muy bien, gracias! Te dar unas coordenadas como gesto de gratitud. Podrs quedarte con cualquier cosa que encuentres all. No es un gran regalo, pero te lo hago con el corazn... + + + Cmo te sientes? + + + Muchas gracias, to! No tengo palabras para agradecrtelo... Toma las coordenadas de nuestro escondite, en seal de gratitud. + + + Sigues con vida? + + + Gracias, nunca olvidar esto. Toma las coordenadas de nuestro escondite. Te las mereces... + + + Te funciona el cerebro? + + + To, he visto cada cosa en... Jams podr olvidarlo... + + + Volvemos al bnker? + + + Claro! + + + Pues venga, vamos. + + + Ve t primero. Nos vemos all. + + + Est el escuadrn listo para ir al tnel? + + + Cuando t digas. + + + Ya. Vmonos. + + + Espera un poco. + + + Ir solo. Nos vemos all. + + + Ir solo. Nos vemos all. + + + No. No nos fiamos de ti y el tiempo es oro: o te vienes con nosotros o nos quedamos aqu. + + + En ese caso, vmonos. + + + En ese caso, tendris que esperar. + + + Ni hablar... No podemos arriesgarnos durante una emisin. + + + Aqu estamos. + + + Bueno... Manos a la obra? + + + S, claro. + + + Dame un segundo para orientarme. + + + Qu demonios quieres? + + + Estoy de paso, nada ms. + + + Vale, pues sigue caminando. + + + De acuerdo. + + + Reljate, idiota. + + + No es asunto tuyo! + + + Ah, hola... + + + Nimble me ha dicho que eres un cabrn y un traidor. Seguro que has engaado a muchos stalkers... + + + De qu hablas? En mi vida he hecho algo as! Nimble est mal de la cabeza! + + + Qu les has contado a los bandidos sobre m? Por qu me estaban esperando junto a las gras del muelle? + + + Me ests confundiendo con otro. Yo no trato con bandidos! + + + Nimble me ha hablado de ti. Te aconsejo que me des el arma si no quieres que se compliquen las cosas. + + + Qu te ha dicho? No tengo nada que no sea mo! + + + Anda, lrgate... + + + Aydame, colega! Necesito un botiqun! + + + Primero dime dnde estn mis cosas! + + + Lo siento, to. Necesitaba el dinero... Te lo contar todo, pero ahora aydame! En serio, ya paso de esas historias, me he vuelto formal! + + + Vale, toma. + + + Gracias, to! Tus cosas estn en mi escondite de las cloacas, bajo la subestacin. + + + Entiendo. + + + No te creo. Y no te voy a dar el botiqun. + + + Toma. + + + No te lo pienso dar. + + + Gracias. No pensaba que fueses a ayudarme... + + + A quin podra contratar para proteger a los cientficos? + + + A Deber, claro. Son los mejores soldados de la Zona, o no? Guardias de artillera pesada. Qu tal te suena eso? + + + No han contratado a gente de Libertad? En ese caso, no s. Iba a recomendarte Deber, pero no se llevan muy bien con Libertad. + + + A quin podra contratar para tomar medidas para los cientficos? + + + Habla con Shulga. Sus hombres no es que sean ingenieros espaciales, pero hay algunos muy buenos. + + + No han contratado ya a gente de Libertad? Si es as, el nico consejo que puedo darte es que no contraten a soldados de Deber. + + + Cuando entramos en el paso subterrneo, el ascensor se estrope... + + + Ja. Bajaste con el nico generador que funciona. Y adems, es el de seguridad. Consegu que funcionase un poco y luego muri. Da las gracias a que no se fundiese a mitad de camino: el ascensor no tiene salida de emergencia! + + + Quin ha podido robar cosas de una caja personal? + + + Diablos! Pues no s. Solo puedo decirte que si Shulga estuviese al cargo en Yanov, eso nunca habra sucedido. + + + Puedes forzar un contenedor de acero? + + + No me dedico a forzar cajas fuertes. El metal no es lo mo. Eso s, para la electrnica soy un hacha. + + + Hay un grupo de soldados de Monolith pacficos que buscan refugio. Quin podra ayudarlos? + + + Lo dices en serio? Si son como animales. Tengo claro que los stalkers no les harn ni caso. Ms te vale hablar con Shulga. Si el teniente coronel les permite entrar en Deber, estarn a salvo. Incluso puede que encuentren algo til que hacer. + + + Puedes desencriptar una caja negra? + + + Djame ver... Mmm, esto me va a llevar un tiempo: unas tres horas. Y no ser barato. Voy a ponerme a ello y ya hablaremos. Date un paseo mientras trabajo, as podr concentrarme. + + + Djame ver... Mmm, esto me va a llevar un tiempo: unas tres horas. Y no ser barato. Voy a ponerme a ello y ya hablaremos. Mientras tanto, por qu no buscas los componentes que necesito? Te ahorrars algo de dinero. + + + Qu? Todava estoy en ello. Esta caja es una puta pesadilla! + + + He terminado con tu caja negra. Menuda mierda de trabajo... + + + Cunto te debo? + + + 3.000, como mnimo. + + + Toma. + + + No tengo tanto. + + + Bueno, te har un descuento si me traes los componentes. + + + Venga, no te cortes. + + + Demasiado caro... Me lo pensar. + + + Te har un descuento. Solo 2.850. + + + Te har un descuento. Solo 2.700. + + + Te har un descuento. Solo 2.550. + + + Te har un descuento. Solo 2.400. + + + Te har un descuento. Solo 2.250. + + + Te har un gran descuento. Solo 2.100. + + + Te har un gran descuento. Solo 1.950. + + + Te har un gran descuento. Solo 1.800. + + + Te har el mejor precio posible. Solo 1.650. + + + Je, je. Obviamente, no s para qu necesitas la grabacin. Pero teniendo en cuenta el precio, seguro que te ser til. + + + Ya veremos. + + + Sigo trabajando en la caja negra. Por qu no haces algo til y me traes esos componentes? + + + Senka? Se me peg cuando me diriga a Zaton y no me ha dejado desde entonces. Es un borracho profesional con mucha experiencia. Ja! Lo uso para encargarle recados. + + + A quin le podra interesar informacin sobre el fundador de Deber? + + + Shulga, claro. Deber recuerda bien sus orgenes. Ya sabes lo que dicen: la historia se repite a no ser que la estudies... Lo importante es que esta informacin no llegue a manos de Libertad, porque seguro que la distorsionaran. No por maldad, simplemente porque andan cortos de memoria... + + + Te he trado herramientas. + + + Genial. Cules son para m? + + + Las de trabajo bsico. + + + Genial! Ahora solo necesito las de trabajo profesional y las de calibracin. + + + Las de trabajo profesional. + + + Genial! Ahora solo necesito las de trabajo bsico y las de calibracin. + + + Las de calibracin. + + + Genial! Ahora solo necesito las de trabajo bsico y las de trabajo profesional. + + + Nada, por ahora. + + + Genial! Treme herramientas de calibracin y ya estoy. + + + Genial! Treme herramientas de trabajo profesional y ya estoy. + + + Genial! Treme herramientas de trabajo bsico y ya estoy. + + + Caray! Dnde diablos las has encontrado? + + + Si necesitas herramientas, puedo conseguirlas. + + + Eso sera estupendo. Ahora mismo me siento como si estuviese trabajando en la Edad de Piedra, con hierro de soldar en vez de utensilios de chamn. Si tuviese herramientas, podra hacer trabajos mucho mejores y da por hecho que t te beneficiaras de eso... + + + Vale, las buscar. + + + He cambiado de idea. + + + Buena idea. As podr hacer mejoras y t ganars pasta. + + + Tengo la PDA del comerciante de Deber. Conoces a alguien al que le pueda interesar? + + + Un comerciante en Deber? No jodas... Dale la PDA a Shulga, seguro que le interesar. Pero ni una palabra a Libertad, vale? Usarn a ese capullo para arruinar el prestigio de toda una faccin... + + + He encontrado unos documentos en los que se explica cmo llegar a Pripyat. + + + Djame ver... Ah, s, s. En resumen, hay un paso subterrneo con el nombre de Pripyat 1, que va por debajo de la ciudad de Pripyat, con un tramo que termina en una puerta cerrada que est en la seccin de transporte de la central de Jpiter. Impresionante! Segn las notas, la seccin est sellada, llena de gas y sin electricidad. Creo que podra activar el generador y abrir la puerta. O intentarlo... + + + Pero no voy a cruzar Jpiter sin proteccin, y te recomiendo que no intentes siquiera bajar al subterrneo t solo. Necesitas al menos dos personas ms y trajes con mdulos de respiracin de ciclo cerrado; sin ello, no sobrevivirs ni un minuto all abajo. Mira, Zulu vive en una torre que no est lejos de aqu. Habla con l. Si le caes bien, te contar cmo organizar un escuadrn. + + + Has hablado de materiales... + + + S. Encontrar materiales para usar con equipamiento de radio es casi imposible por aqu. He usado todo lo que he podido encontrar y aqu nadie vende ese tipo de materiales, porque las armas son un negocio mucho ms rentable. De todas formas, me han dicho que puede que encuentres algo en la fbrica de cemento... + + + Toma, he encontrado los materiales. He registrado la fbrica de cemento de arriba a abajo! + + + Hala, to! Estoy impresionado. Voy a anotarlo ahora mismo: mano de obra gratis en todas las reparaciones y mejoras para mi stalker favorito! + + + He conseguido encontrar algunos de los materiales que queras. Toma. + + + Genial! Te har un montn de descuentos, amigo. + + + Puedo conseguirte los materiales. + + + Eso sera estupendo! Si encuentras colofonio o condensadores, tremelos. Diablos, incluso puedo pagarte por un poco de textolita. No puedo prometerte grandes sumas, pero tienes un descuento asegurado. + + + Para qu necesitas los materiales? + + + Bueno, trabajo con armas y equipamiento porque de algo hay que vivir... Pero mi pasin son los aparatos de radio. Es estupendo cuando juntas varias cosas y consigues que funcionen! Una vez constru un sistema de interferencias... Result muy til. Lo activ cuando los anuncios de Los 100 Rads no me dejaban dormir. + + + Por qu iba a ver materiales de radio en la fbrica de cemento? + + + La fbrica de cemento es tan solo un nombre. Dej de fabricar cemento mucho antes de la catstrofe de Chernbil. La gente se llev todo lo que pudo y el edificio se empez a usar para fabricar aparatos elctricos. + + + He encontrado unos documentos en Jpiter. Quieres verlos? + + + No hay nada interesante por aqu, solo papeleo administrativo... + + + Mmm... Aqu hay un par de cosas interesantes, pero no estoy seguro... Necesitamos toda la informacin. Prueba a buscar en los lugares que se mencionan en los documentos. + + + Necesito sin falta ms materiales. Cmo voy a trabajar con esto? Ah, hola. Qu tal? + + + Hola! Necesitas algn trabajito tcnico? Sigo sin materiales, pero puedo reparar tu equipo y hacer alguna que otra mejora pequea. + + + Anda, hola. Oye, he estado pensando... Resulta que todos los materiales que necesito estn cogiendo polvo en la fbrica de cemento... Solo de pensarlo me pongo enfermo. + + + Hola! Se te ha roto algo o has reunido pasta para una mejora? Recuerda que te hago descuento de por vida! + + + Hola, hermano! Te ayudo en algo? Recuerda que puedo hacerte los mejores precios posibles! + + + Puedes desbloquear un mdulo de memoria? + + + Creo que s... Nunca lo he intentado, as que me llevar un mnimo de tres horas. Pero me apetece probar. Bueno, teniendo en cuenta todo esto, te har un buen precio: solo 1.000. + + + No tengo prisa. Trato hecho! + + + Vale! Me pongo a ello. Vete a hacer tus cosas y en cuanto est listo te aviso. + + + No tengo tanto. + + + Bueno, pues vuelve cuando renas el dinero. No puedo rebajarte el precio. + + + Lo pensar. + + + Te he dicho que podr hacerlo en tres horas. 1.000 es muy buen precio. Yo de ti lo aceptara. + + + Has desbloqueado el mdulo de memoria? + + + No, sigo en ello... No te preocupes, te avisar cuando est listo. + + + Eh? No tienes el mdulo? Vaya, entonces no has visto a Senka: le dije que te lo llevase. Bueno, da igual. Adems de lecturas del grosor de la capa de tierra y de la densidad de la vegetacin, tambin contena las coordenadas de tres radiofaros. Te las mandar a tu PDA... + + + Has intentado seguir a esas quimeras? + + + La que estaba herida se fue a Zaton; el grupo de Gonta la est siguiendo. Aunque parece ser que entre ellos no hay ningn cazador experimentado. Si les ayudas, te lo agradecer. La otra quimera, la que asesin a Fox... la he perdido. Es como si se la hubiese tragado la tierra. Pobre Fox, era un gran tipo. Pero la edad le ha pasado factura... + + + Bueno, has liquidado a la que estaba herida... Y la otra, la que asesin a Fox... la he perdido. Es como si se la hubiese tragado la tierra. Pobre Fox, era un gran tipo. Pero la edad le ha pasado factura... + + + A qu te dedicas? + + + Me llamo Trapper y hasta hace poco me dedicaba a cazar mutantes que suponan un peligro para los stalkers. Ahora recibo rdenes y se las transmito a los cazadores jvenes. Les entreno y les enseo tcticas de caza... + + + Hblame sobre lo de cazar mutantes. + + + Bueno, hay que seguir distintos mtodos. Los quemadores y los poltergeists requieren uno, los pseudogigantes y los controladores otro... Y las quimeras son harina de otro costal. + + + Hblame de los quemadores. + + + Los quemadores usan ataques gravitatorios. Si se te acercan mucho, te lanzarn por los aires. Y si estn lejos, te lanzarn algn objeto. Lo mejor es mantenerte a una distancia media y no dejar de moverte, a no ser que te guste que te golpeen con un objeto pesado. Pero procura conservar tu energa! Los quemadores usan impulsos gravitatorios directos para arrancarte el arma de las manos, sobre todo cuando ests cansado. + + + Hblame de los poltergeists. + + + Hay dos tipos de poltergeists. El primero utiliza la gravitacin para lanzar objetos al enemigo y el segundo es el poltergeist de fuego, que quema a sus vctimas con llamas. Los cazadores con menos experiencia suelen intentar rodearlos para esquivar sus ataques... El truco est en que los poltergeists no ven ni oyen. Detectan los objetos que se mueven en el campo gravitatorio as que, con un poco de experiencia, sabrs que lo mejor es quedarte quieto en cuanto veas un poltergeist, disparar y despus volver a pararte. Y as una y otra vez. + + + Hblame de los controladores. + + + Intentan poner tu mente en tu contra. Cuando caces a un controlador, es importante ponerte a cubierto, porque necesita verte para alterar tu mente. Adems, son bastante lentos, as que usa una granada si tu vida corre peligro. + + + Hblame de las quimeras. + + + Son depredadores nocturnos muy peligrosos. Suelen esconderse en la oscuridad detrs de ti para saltarte por encima. Si piensas que hay una quimera cerca, vigila tus espaldas y las de tus amigos... + + + Hblame de los pseudogigantes. + + + Lo ms complicado al cazar un pseudogigante es matarlo. Estas criaturas pueden soportar muchsimo dao sin ni siquiera pestaear... Solo te digo que lo mejor es usar una escopeta a corta distancia. Recuerda que los ataques de pseudogigantes pueden derribar cualquier cosa que no est fija al suelo. Atcalos desde arriba y procura colocarte sobre algo que pueda resistir bien el dao. + + + Vale, olvdalo. + + + Por qu ya no cazas? + + + Me estoy haciendo viejo, to. Por eso mismo se muri Fox, mi gran amigo y compaero. Cazamos muchas bestias juntos, codo con codo... Pero un da nos encontramos con dos quimeras en Zaton, que no se vean por la Zona desde haca un ao y medio. Una tir a Fox al suelo antes de que me diese tiempo a coger la escopeta. Malher a la otra y se escaparon. Espero que se consuman en las llamas del infierno! + + + Quin ha podido robar cosas de una caja personal? + + + Mmm, no s. Los cazadores no se suelen comportar as. Si te buscas problemas con mucha gente, es probable que no quieran malgastar municin cuando te est atacando un chupasangre. + + + Medidas desesperadas para tiempos desesperados. Conociendo a los chupasangres, seguro que un par de ellos estaban fuera cazando... Pero ya no tienen una guarida a la que regresar, as que no supondrn un problema para los stalkers. + + + Tienes ms trabajo para m? + + + Claro. El otro da, un escuadrn de stalkers entr en los tneles que estn al norte de la central y se encontraron con una guarida de mutantes. Se quedaron tan sorprendidos que ni siquiera nos pudieron explicar qu tipo de mutantes eran, y dos stalkers no consiguieron salir de all con vida. Eso hizo que en Yanov se asustasen mucho, as que han puesto una recompensa de 5.000 para quien consiga acabar con su guarida. Es una misin peligrosa, as que t decides. Lo hars? + + + Lo har. + + + Eres muy valiente. Buena suerte, la necesitars. + + + Ahora no. + + + Lo entiendo. No todo el mundo tiene pelotas para cargarse toda una guarida de mutantes. + + + Lo de antes. Hay mutantes no identificados en los tneles que estn al norte de la central de Jpiter. La recompensa es de 5.000. Te animas? + + + Ahora, a los stalkers les preocupan los mutantes de los tneles... + + + Los mutantes de los tneles eran enanos mutados. Y ahora son enanos mutados muertos. + + + Supongo que tienen que haber sido quemadores. Eso explicara por qu en Yanov estaban tan emocionados con el tema. En fin, estn muertos, as que la recompensa es tuya. + + + Supongo que tienen que haber sido quemadores... Los que mataron a dos stalkers hace poco. Eso explicara por qu en Yanov ofrecan una recompensa por acabar con ellos. En fin, estn muertos, as que la recompensa es tuya. + + + Estoy listo para liquidar a la quimera. + + + Genial. El cazador se la encontr cuando anocheca y se diriga hacia el complejo de ventilacin. Las quimeras son nocturnas y territoriales, as que es probable que fuera a su territorio de caza. Creo que en cuanto anochezca deberas buscar por esa zona. Aunque, recuerda que las quimeras estn ms activas de noche... Ten cuidado y que tengas buena caza. + + + La quimera est muerta. + + + Gracias, muchas gracias! Has vengado a Fox y ahora podr descansar en paz. Toma tu dinero, te lo has ganado. Y una cosa ms... Toma mi escopeta. T me has dado algo mucho ms importante: por fin un poco de paz... + + + Soy Trapper... No hace falta que te presentes. + + + Qu te trae por aqu? + + + Gracias por venir. Necesito un cazador experimentado y de confianza y t eres el mejor de Yanov. Despus de todo lo que ha pasado, no puedo dejar que la quimera vuelva a escaparse... Voy a invertir todos mis ahorros en esto: 10.000. Quiero asegurarme de que el trabajo se haga bien. Hay que vengar a Fox! + + + Te ruego que acabes con la quimera. Si no quieres liquidar a ese asesino mutante por Yanov, hazlo por el dinero... 10.000 es mucha pasta. + + + Qu pasa con la quimera? El tiempo es oro: podra cambiar de territorio de caza. + + + Me alegro de verte! Alguna novedad? + + + Tienes ms trabajo para m? + + + Por supuesto. En la Cinaga han visto a un grupo de chupasangres de pantano, detrs de la fbrica de cemento. Parece que de momento no han salido del pantano, pero los stalkers quieren asegurarse de que se queden all para siempre, no s si me explico. El precio por todo el grupo es de 3.000. Lo hars? + + + Lo har. + + + Genial, buena caza! + + + Ahora no. + + + T mismo. Tienes tiempo de cambiar de opinin antes de que se encarguen otros cazadores. + + + Lo mismo de antes... El grupo de chupasangres de pantano de la Cinaga, detrs de la fbrica de cemento. La recompensa es de 3.000. Te apuntas? + + + Ahora mismo, solo lo de los chupasangres de la Cinaga... + + + He acabado con los chupasangres de pantano. + + + Ahora los stalkers podrn relajarse un poco. Toma, la cantidad acordada. + + + S, los stalkers se alegrarn de haberse librado de esos vecinos. Incluso ofrecan una recompensa de 3.000. Aqu tienes. + + + Gonta y yo hemos liquidado a la quimera de Zaton. + + + Gracias. Cuantas menos bestias de sas anden por aqu, mejor. Y ahora, si pudieses encargarte de la otra... + + + Gracias por liquidar tambin a la segunda bestia. As nos aseguramos de que no matar a ms stalkers... + + + Dime cmo mataste al controlador. + + + Escucha y aprende, amigo mo... Me fui a mi escondite a recoger mi botn y, al llegar all, vi a un controlador sentado sobre l. Cog una rejilla metlica que estaba en el suelo y la us como escudo mientras me acercaba a la bestia. Cuando el capullo me descubri, ya le haba vaciado medio cargador en la cabeza. Justo cuando empezaba a intentar controlarme, le di el toque final con la culata del fusil y as me lo cargu. + + + Hblame de los artefactos de la cantera. + + + Ja! No hay mucho que contar, porque all ya no queda casi nada. Tan solo las anomalas que Pedernal ha descubierto, y todos las conocen ya. + + + As que fuiste t el que dej morir a su amigo en la cantera? + + + Qu?! + + + Es un farol, no puedes demostrar nada. Es tu palabra contra la de un miembro de Libertad... as que buena suerte. + + + Eso ya lo veremos. + + + Ninguna. + + + Gracias, adis. + + + Hblame de los chupasangres de Zaton. + + + Cuando estaba en Zaton, los chupasangres hacan la vida imposible a los stalkers. stos intentaban mantener a raya a las bestias noche y da, pero no serva de nada. Decid ayudarlos, as que cog mi escopeta y me fui directo a la guarida de los chupasangres. Un poco despus, un servidor puso fin al problema de los chupasangres de Zaton. + + + Seguro que ni siquiera sabes dnde est la guarida. + + + Largo! + + + Qu quieres? Vete a dar por saco a otra parte! + + + Vete a paseo, colega. Es tu palabra contra la de un miembro de Libertad... as que buena suerte. + + + Eso ya lo veremos. + + + Gracias, adis. + + + Hblame del atajo a Jpiter. + + + El gua sola dar un rodeo tremendo desde Zaton. Un da decid seguir un camino recto. Lo intent varias veces hasta que consegu trazar un recorrido por entre las anomalas con rapidez. Despus, le vend la informacin al gua y ahora todo el mundo sigue mi ruta. + + + Y si le preguntamos a Piloto quin le consigui los mapas? + + + Largo! + + + Qu quieres? Vete a dar por saco a otra parte! + + + No puedes demostrar nada. Es tu palabra contra la de un miembro de Libertad... as que buena suerte. + + + Eso ya lo veremos. + + + Gracias, adis. + + + Hblame de tu viaje al Oasis. + + + Yo fui el primero en llegar all. Es un lugar muy tranquilo y silencioso, sin mutantes ni anomalas. Y est repleto de artefactos. Coges lo que quieras y te largas. + + + Y una mierda. Yo he estado en el Oasis y no es ni de coa as. + + + Largo! + + + Qu quieres? Vete a dar por saco a otra parte! + + + Vete a la mierda. Es tu palabra contra la de un miembro de Libertad... as que buena suerte. + + + Eso ya lo veremos. + + + Gracias, adis. + + + Hblame de tu trabajo con los cientficos. + + + El otro da estuve en su bnker. Se alegraron mucho de verme y me dijeron: "Pedernal, eres justo lo que necesitamos". Parece ser que quieren colocar sus dispositivos bajo las anomalas. Yo les dije que esto estaba chupado e hice todo lo que me pidieron sin problemas. Lo ms complicado fue conseguir que me pagasen. + + + Deja de atribuirte mritos de otras personas. Yo hice eso, no t! + + + Largo! + + + Qu quieres? Vete a dar por saco a otra parte! + + + Mentira... No puedes demostrar nada. Es tu palabra contra la de un miembro de Libertad... as que buena suerte. + + + Eso ya lo veremos. + + + Gracias, adis. + + + Hola. T tambin quieres escuchar mis historias? + + + Quieres preguntarme algo? + + + Qu quieres? + + + Joder, to... Me muero... + + + Toma este botiqun. + + + Gracias, amigo. Pero no servir de nada... Escucha... Estuve aqu con un miembro de Libertad... Encontramos un artefacto... Cuando nos bamos, entr sin querer en una anomala... Si me hubiese ayudado, podra haberme salvado... Pero cogi el artefacto y me dej aqu... Dijo que iba a pedir ayuda... Encuntralo. Quiero que la gente sepa que no es de fiar... + + + Lo encontrar. + + + No creo que pueda demostrar nada. + + + Apyate en mi hombro. Buscaremos un mdico. + + + Qu mala pata. Adis. + + + Tengo algo para ti... + + + Una Bola de carne, para ti. + + + Gracias. Los cientficos pagan bien, pero me interesa ms el permiso. + + + Muchas gracias, colega! Por fin podr irme a Pripyat. Solo necesito una forma de llegar all. + + + Un Soldado. Toma. + + + Gracias. Los cientficos pagan bien, pero me interesa ms el permiso. + + + Muchas gracias, colega! Por fin podr irme a Pripyat. Solo necesito una forma de llegar all. + + + Una Bola de carne y un Soldado. Toma. + + + Muchas gracias, colega! Por fin podr irme a Pripyat. Solo necesito una forma de llegar all. + + + Ninguno. + + + Es aburrido este lugar? + + + Has mencionado algo de tu contrato... + + + S, firm uno con los cientficos para hacer varios trabajos, pensando que sera algo sencillo. Pero el contrato concluye nicamente cuando se termine el trabajo, algo que no advert en su momento. Los cientficos me prometieron un permiso oficial para estar en la Zona al trmino del contrato. + + + He completado todas las clusulas del contrato, excepto una. Tengo que encontrar todos los artefactos qumicos que haya por aqu. Pero no saba que es imposible encontrar Bolas de carne o Soldados! De haber conseguido esos dos artefactos, me habra ido a Pripyat hace mucho tiempo, pero no puedo. + + + Quizs pueda ayudarte a encontrar esos artefactos. + + + Pues qu pena. + + + S... Una Bola de carne y un Soldado y me largo a Pripyat. + + + Qu tiene de especial Pripyat? + + + Nadie sabe cmo llegar all. Estamos en la Zona, as que no se puede ir directamente. Dicen que est hasta los topes de artefactos... La verdad es que circulan tantas leyendas sobre Pripyat que tengo mucha curiosidad por ese lugar. + + + Estoy reuniendo un pelotn para ir a Pripyat. Me acompaas? + + + La verdad es que tena pensado ir all... pero solo. No es nada personal, es que no me gusta trabajar en equipo... + + + Ja, la verdad es que tengo planeado irme pronto a Pripyat... pero solo. No es nada personal, es que no me gusta trabajar en equipo... + + + Bienvenido al reino del aburrimiento. + + + To, me muero de ganas por ir a Pripyat! + + + En cuanto descubra una forma de llegar a Pripyat, me ir all sin perder un segundo. + + + Aqu se est bien! Es un buen lugar para disfrutar de la vida! + + + Me gusta sentirme seguro, s. Pero ojal esto no fuera tan aburrido! + + + Quizs pueda ayudarte a encontrar esos artefactos. + + + De verdad sabes llegar a Pripyat? + + + No, pero todo el mundo dice que est lleno de artefactos. Quiero intentar llegar all. Soy un pionero: fui el primero en llegar a Jpiter. Pero siempre trabajo solo, no tengo tiempo para cuidar de los dems. + + + Me llevars a Jpiter? + + + Por supuesto. Nos vamos ya? + + + S. + + + Todava no. + + + Cuando termine la emisin. + + + Me llevars a Pripyat? + + + Lo intentar por 5.000. Me gusta este lugar! + + + Trato hecho. + + + No, gracias. + + + Vale, t mismo. + + + No tengo tanto dinero. + + + Lo intentar por 5.000. Esperemos a que termine la emisin. + + + Puedes llevarme a Zaton? + + + No, to. Es un lugar aburridsimo. Por all anda Piloto: es perfecto para un trabajo tan seguro como aburrido. + + + Vale, puedo llevarte a Yanov por 3.000, y luego Piloto te llevar a Zaton. Qu te parece? + + + De acuerdo. + + + No. + + + T vers. + + + No tengo suficiente dinero. + + + Vale, puedo llevarte a Yanov por 1.000 y luego Piloto te llevar a Zaton. Qu te parece? + + + No, to. Es un lugar aburridsimo. Por all anda Piloto: es perfecto para un trabajo tan seguro como aburrido. Pregntale despus de la emisin. + + + Vale, puedo llevarte a Yanov por 3.000 y luego Piloto te llevar a Zaton... Cuando termine la emisin, claro. + + + Vale, puedo llevarte a Yanov por 1.000 y luego Piloto te llevar a Zaton... Cuando termine la emisin, claro. + + + Dicen que has cruzado los tneles, es cierto? Yo tambin he venido desde Jpiter: encontr un pasadizo subterrneo. Puedo llevarte all gratis si quieres. Me alegro de poder ayudar a las autoridades. + + + Cunto tiempo! Dicen que has cruzado los tneles, es cierto? Yo encontr un pasadizo subterrneo. Puedo llevarte all gratis si quieres. Me alegro de poder ayudar a las autoridades. + + + Cunto tiempo! Dicen que has cruzado los tneles, es cierto? No te lo vas a creer, pero he conseguido completar mi contrato y conseguir el permiso... Y sin perder un segundo, me vine para ac y encontr un pasadizo subterrneo. Puedo llevarte all gratis si quieres. Me alegro de poder ayudar a las autoridades. + + + Cunto tiempo! Dicen que has cruzado los tneles, es cierto? Encontr un pasadizo subterrneo. Puedo llevarte all gratis si quieres. Me alegro de poder ayudar a las autoridades. Por cierto, gracias por ayudarme a completar mi contrato con los cientficos. He estado buscando por ah y he encontrado esto. Toma, seguro que te ser til. + + + Topol, por qu no proteges el bnker de los cientficos? + + + Nos contrataron para realizar mediciones y recoger muestras. Ya casi nos podramos considerar cientficos. Y bueno, no es que tenga nada en contra del trabajo, pero no s si podra enfrentarme a los nuevos enemigos de los empollones. No me apetece morir a manos de un mercenario. + + + Ests en el sitio equivocado, colega! Y si no te largas, tambin estars en el momento equivocado. + + + Buscas problemas? Lrgate de aqu o los encontrars! + + + Pirdete, colega. O quieres meterte en un lo? + + + Qu vas a hacer ahora? + + + Nos vamos pronto a la estacin de Yanov. Vente con nosotros si quieres. + + + S, me pilla de camino. Voy con vosotros. + + + No, no me pilla de camino. + + + Qu bien que nos los hayas trado. No habran aguantado mucho solos. + + + Gracias por conseguir un acuerdo con Deber. + + + Qu vas a hacer ahora? + + + Nos vamos pronto a la estacin de Yanov. Vente con nosotros si quieres. + + + S, me pilla de camino. Voy con vosotros. + + + No, no me pilla de camino. + + + Has hecho lo correcto, amigo. Has ayudado a esa gente y nos has trado refuerzos. Gracias. + + + Gracias por conseguir un acuerdo con Libertad. + + + Sabes quin puede haber robado cosas de una caja personal? + + + No s. Aqu hay gente de todo tipo. Habla con Sueldahuesos, conoce a casi todo el mundo... + + + Vamos a ver a Zulu. + + + Vale. Espero que no me dispare en cuanto vea mi viejo blindaje. Tenemos que recogerlo de camino y devolver el que llevo puesto. + + + En marcha. + + + Espera. Las emisiones son peligrosas. Esperemos un poco. + + + Qu ha pasado? + + + Pues... no recuerdo cmo llegamos aqu. Tan solo s que formbamos un escuadrn de Monolith... y queramos llegar al centro de la Zona. All est el Monolito; es un meteorito que nos insufl vida de otros planetas. Recuerdo que llegamos a la central de Chernbil... Y a partir de ah, el recuerdo se vuelve borroso. Recuerdo una luz brillante... csmica y fra... y una voz ntida. Todo era... perfecto. Ahora no recuerdo lo que me orden la voz. Algunos aos de mi vida se han borrado de mi memoria. Y al resto les pasa lo mismo. No sabemos qu hacer. Necesitamos protegernos de las emisiones... y de los mutantes. Sabes de algn lugar donde podamos estar seguros? + + + Hay una base stalker cerca de aqu. Te la sealar en un mapa. + + + No s si ser segura... De camino a Chernbil, nos trataron con recelo... Es posible que despus asesinsemos a algunos stalkers. Sabes lo que piensa la gente de nuestra faccin? Lo ms probable es que abran fuego sobre nosotros. Puedes ayudarnos? Podras contarles a los stalkers del campamento que ya no somos unos asesinos? Podras pedirles que nos acepten? + + + No hay problema. Hablar con ellos la prxima vez que vaya a la base. + + + Lo siento, no puedo ayudaros. + + + Qu tipo de ayuda necesitas? + + + Buscamos un lugar para protegernos de las emisiones... y de los mutantes. Sabes de algn lugar seguro? + + + Vale. Hablar con la gente de Yanov. + + + Lo siento, no puedo ayudaros. + + + Necesitars un traje con mdulo respiratorio de ciclo cerrado para llegar a Pripyat. + + + No hay problema. Conservo mi blindaje de Monolith y viene equipado con uno de esos mdulos. Lo que pasa es que no puedo ponrmelo en Yanov. + + + Estoy reuniendo un pelotn para ir a Pripyat. Me acompaas? + + + No me importara... Tengo mucha curiosidad por saber qu nos ocurri all. Pero ahora no puedo ir. No puedo abandonar a mis compaeros y s que no querrn venirse. Ya han pasado por bastantes suplicios. + + + S, ir contigo. Quiero saber qu nos ocurri all. Espero encontrar la respuesta en Pripyat. Voy a comentrselo a Loki, pero no creo que ponga pegas. + + + S, ir contigo. Quiero saber qu nos ocurri all. Espero encontrar la respuesta en Pripyat. Voy a comentrselo a Shulga, pero no creo que ponga pegas. + + + Todo listo para irnos? + + + S. + + + Hola, stalker. Puedes ayudarnos? + + + Hola. Sabes si podemos ir a la base de stalkers? + + + No, sigo trabajando en ello... + + + Date prisa. Aqu podra sucedernos cualquier cosa. + + + Hola. Gracias por ayudarnos. + + + Hola. + + + Qu tal va todo? + + + Todo va bien en el escuadrn, pero lo que realmente quiero es saber qu nos ha sucedido. + + + Qu hacen aqu los mercenarios? + + + Deberas hablar con Hermann. Se encarga de todos los aspectos administrativos del laboratorio. Por lo que yo s, los mercenarios han llegado a un acuerdo con Hermann para proteger el laboratorio, pero no tengo muchos ms detalles sobre dicho acuerdo. Eso s, han demostrado que son muy buenos soldados en numerosas ocasiones. + + + Qu ests haciendo aqu? + + + Es una pregunta retrica, no? Estamos investigando. Quieres saber algo ms concreto? + + + Cul es el objetivo de tu investigacin? + + + No tenemos ningn objetivo especfico en mente. Somos exploradores cientficos, si nos quieres llamar as. Intentamos identificar las correlaciones entre determinados fenmenos, desarrollar teoras y probarlas o descartarlas. + + + Qu sabes de la Zona? + + + De momento solo hay hiptesis... Creo que la Zona se cre como consecuencia de una nueva fuerza. Los campos electromagnticos, las fuerzas fsicas o las radiaciones no podran haber cambiado la biosfera as. Algunas mutaciones s pueden explicarse por la radiacin. Pero un cerdo normal necesitara cientos, por no decir miles, de aos para convertirse en mutante! Dentro de la Zona, esta mutacin se produjo en apenas dos aos. Es como si se hubiese alterado la informacin gentica de los animales. Solo de pensarlo, me recorre un escalofro por la espalda. + + + Cunto tiempo llevas en la Zona? + + + Menos de una semana. Me supuso un tremendo esfuerzo todo el papeleo para organizar esta expedicin. De no haber sido por Hermann, todava estaramos esperando en la frontera de la Zona, mientras los stalkers se llevaban todos los objetos de valor. + + + Eso es todo lo que quera saber. + + + Ozersky, por qu me ha contratado Hermann para proteger al escuadrn durante las mediciones? + + + Fue idea ma. l no lo tena claro, pero consegu convencerlo. Mi investigacin ha revelado que los efectos de nuestro equipo de ondas altas en campos anmalos producen un aumento de la agresividad en las especies mutantes cercanas, y adems potencian sus niveles de actividad. En resumen, comienzan a buscar vctimas a las que asesinar. + + + Ozersky, tengo noticias. + + + S? Te escucho. + + + Tenas razn. Los mutantes no nos dejaron un momento de respiro mientras realizbamos las mediciones, pero las cosas se calmaron en cuanto apagamos los aparatos. + + + Qu? Si... Si mi hiptesis resulta ser correcta, es probable que los animales mutantes que hayan adquirido la habilidad de acceder a los campos informativos, puedan recibir telepticamente seales del exterior... Seales artificiales. En todo caso... el extrao parecido entre las mutaciones y estos cambios tpicos en las estructuras celulares... no es casualidad... + + + Podras ser ms concreto? Y ya puestos, contarme algo que tenga sentido. + + + No! Esto no son ms que conjeturas. Oh, qu maleducado soy! Muchas gracias por tu ayuda con nuestra investigacin. + + + Qu hace falta que te pase para que le pidas un traje a Hermann? + + + Un rea llena de una planta anmala desconocida hasta el momento ha aparecido cerca de la cantera. Necesito una muestra de esa planta, pero los stalkers no quieren acercarse a ese lugar. Si consigues una de esas plantas, podra pedirle a Hermann que te premie con uno de esos trajes. + + + Encontrar la planta. + + + Muy bien. He subido las coordenadas de la anomala a tu PDA. + + + Quiz la prxima vez. + + + Ven a verme si cambias de idea. + + + Hola, te he trado la planta que queras. Me das el traje? + + + Genial. Ja, ja. A Sokolov se le ha ido de la lengua que el traje es para l. Pero da igual. Le ensear la planta a Hermann y seguro que te da el traje. Dile a Sokolov que venga a por l. + + + Puedo conseguirte nuevos guardias. + + + Muy amable por tu parte. Habla con Hermann de este asunto: entra dentro de sus responsabilidades. + + + Me gustara comprobar mi resistencia al campo psquico. + + + Ja. As que Hermann te ha enviado a verme? Vale. Te lo voy a explicar de la forma ms sencilla posible. Para analizar correctamente tu resistencia a las emisiones psquicas, necesitar una investigacin compleja y aos de estudio. Y solo dispongo de un botiqun y un par de probetas sucias. + + + Entonces, es imposible? + + + No tan rpido. No estamos hablando de un anlisis completo. Para cumplir nuestro objetivo solo necesitamos comprobar la resistencia de tus neuronas a las emisiones psquicas. Un examen elemental bastar. Bueno... parece que en tu cabeza est todo en orden. Es decir, que los niveles relativamente altos de emisiones psquicas pueden afectarte sin que pierdas el sentido. + + + Qu hay de la hiptesis sobre el aumento de las agresiones mutantes? + + + Tengo dos teoras al respecto. La primera es que la agresividad mutante puede verse provocada por la intrusin de personas en su territorio, algo completamente normal en muchas especies no mutantes, humanos incluidos. La segunda teora es que los mutantes son capaces de recibir las emisiones activas de nuestros dispositivos de medicin. Est claro que la segunda teora es mucho ms intrigante. + + + Cmo se podra demostrar esto? + + + Habra que activar el dispositivo de medicin en un rea sin actividad mutante previa. Y el experimento debera realizarlo una nica persona, para as minimizar el efecto de la intrusin humana. + + + He trado el escner. + + + Qu resultados has obtenido? + + + No s muy bien qu informacin mostrar tu dispositivo, pero creo que tu hiptesis se ha demostrado. En cuanto activ el escner, en menos de cinco minutos aparecieron varios snorks para atacarme. + + + Lo que yo pensaba. Por alguna razn, las teoras ms indeseables suelen resultar ciertas. En cualquier caso, me alegro de que la hayas comprobado. Ahora tendremos que asegurarnos de que los escuadrones que realicen mediciones en dicha rea estn preparados para lo peor. + + + Estoy listo para confirmar o refutar la hiptesis. + + + Me alegro de que an quede gente en el mundo dispuesta a sacrificarse por el bien de la ciencia. El mejor lugar para realizar el experimento es el derrumbamiento del extremo sur de la cantera. Es un rea llena de anomalas gravitatorias que los mutantes suelen tratar de evitar. El dispositivo que te doy lleva integrado un sensor de deteccin de mutantes. Tras finalizar el experimento, podr ver en el dispositivo los efectos de los niveles de emisin en la agresividad de los mutantes. Ests preparado? + + + S, lo har. + + + Ahora no. + + + Hay alguna forma de conseguir un traje cientfico? + + + Eso va contra el protocolo. Somos responsables de todo el equipo del que disponemos. De todas formas, conociendo a Hermann, es probable que haya encargado ms cosas de las que necesitamos. Es posible que, en determinadas circunstancias, se le pueda convencer para desprenderse de un traje. + + + Necesitas que descubra artefactos? + + + Me temo que no. Ya no encargamos misiones de bsqueda de artefactos a cualquiera. Hemos firmado un contrato con un buscador de artefactos con mucha experiencia y nos consigue todo lo que necesitamos. + + + Puedo conseguirte nuevos guardias. + + + Estupendo. La Zona nunca est en calma. Dselo a Hermann; es el que manda aqu. + + + Tienes que darme escneres para buscar anomalas. + + + Toma. Tres, tal y como dijo Hermann. + + + Toma. Dos ms, tal y como dijo Hermann. + + + Cmo puedo conseguir un traje cientfico? + + + Hermann se encarga del inventario. Pero te ahorrar las molestias de preguntarle: no te dar ningn traje. Es mejor que hables con Ozersky. Est ms relajado que Hermann y ejerce cierta influencia sobre l. + + + Qu te trae por aqu? + + + Oye, dnde estn esos mercenarios que te protegan? + + + Qu tal? + + + Escucha... Alguien se ha cargado a aquellos mercenarios que te protegan. No me caan especialmente bien, pero se han pasado con ellos... + + + CS-3a! Genial. Es muy buen blindaje. Me trae viejos recuerdos... + + + Puedes desbloquear un mdulo de memoria? + + + Djame ver... S, sin problemas, ya lo he hecho antes. No me llevar ms de una hora. Lo har por... mmm... 2.000. Vale? + + + Trato hecho. + + + Estupendo. Te avisar cuando haya terminado. + + + No tengo tanto dinero. + + + Mm. Bueno, pues ya sabes dnde encontrarme. Dudo que encuentres a alguien mejor que yo para este trabajo. + + + Lo pensar. + + + Como ya te dije, lo har en una hora por 2.000. + + + Has desbloqueado el mdulo de memoria? + + + No ha pasado una hora. Ya te dije que te avisara cuando terminase. + + + S, aqu est. Ya puedes acceder a la informacin. + + + He encontrado un semiartefacto extrao. Te interesa? + + + Claro. Dnde lo has encontrado? + + + En Zaton, en la planta de dragado abandonada. + + + Trato hecho. + + + No gracias. Buscar a otro comprador. + + + Qu hacen aqu los mercenarios? + + + Los hemos contratado para proteger el laboratorio mvil. Antes de que me preguntes, te dir que no tuvimos ms remedio que reclutarlos. Debido a una operacin militar secreta, no disponemos de la proteccin adecuada para trabajar en el laboratorio. Si a esto aadimos que a los stalkers no les interesa otra cosa que buscar artefactos, no me qued otra opcin que contratar a mercenarios si quera que el laboratorio estuviese a salvo. + + + Qu haces aqu? + + + Investigamos diversos fenmenos. + + + Cul es el objetivo de tu investigacin? + + + Realizamos investigaciones fundamentales. No nos dedicamos a probar trajes, inventar drogas nuevas o cosas as. Intentamos encontrar una explicacin a lo que vemos en la Zona. Si conseguimos descubrir los secretos que se esconden tras al menos un diez por ciento de los fenmenos que presenciamos aqu, el desarrollo de la tecnologa global recibira un impulso de lo ms vivificante. + + + Qu sabes de la Zona? + + + No mucho, si te soy sincero. Estamos comenzando a entender los mecanismos que provocan algunos de los fenmenos que nos encontramos. Desgraciadamente, estamos muy lejos de comprender la Zona como un sistema. Esto se complica an ms por el hecho de que la Zona est cambiando continuamente. No me refiero a la aparicin de nuevas anomalas o pequeeces por el estilo. Te hablo de cambios ms serios que no se pueden apreciar a simple vista. Por ejemplo, el debilitamiento de un campo magntico. Lo ms triste es que no sabemos adnde nos conduce todo esto: tan solo podemos sentarnos a esperar. + + + Cunto tiempo llevas en la Zona? + + + No mucho, una semana ms o menos. Eso s, he visitado el laboratorio de Sakharov. Lamento que no consiguisemos poner en marcha esta expedicin con mayor rapidez. Les he dicho muchas veces a los del ministerio de Educacin que necesitaramos dos laboratorios mviles perfectamente equipados que estuviesen listos en todo momento... Pero se limitan a asentir y poco ms. Por su culpa casi perdemos la mayor oportunidad que la Zona nos ha ofrecido. + + + Entiendo. + + + Tenemos algn tipo de informacin sobre los escneres que coloqu en las anomalas? + + + Qu anomala en concreto te interesa? + + + La anomala del aparcamiento. + + + S, nuestros dispositivos indican la presencia de artefactos en esa anomala! + + + Por desgracia, parece que no hay artefactos en esa anomala. + + + La anomala del Bao de Cemento + + + La anomala de Bitumen + + + La anomala de la Cinaga + + + La anomala del Cenizal + + + Eso es todo de momento. + + + Soy todo odos. + + + Los ltimos acontecimientos han dejado claro que nuestro equipo de investigacin no est suficientemente preparado para realizar adecuadamente trabajo de campo. Por otra parte, t conseguiste encargarte del controlador sin ayuda. Impresionante! + + + Qu quieres decir? + + + Que lo ms lgico sera que al menos intentsemos contratar a un experto tan capacitado como t. Nuestro grupo de ciencia necesita desesperadamente tu ayuda. Tenemos que realizar mediciones, colocar escneres... + + + Contina. + + + Estoy intentando encontrar la correlacin entre las emisiones y la aparicin de artefactos en anomalas. Tengo la teora de que podremos pronosticar la siguiente emisin por medio del nmero y la calidad de artefactos que aparezcan. Para realizar clculos concretos, necesito recoger estadsticas. Solo hay que colocar unos cuantos escneres en varias anomalas de distintos tipos. + + + Lo siento, pero no me interesa. + + + Es una pena. Podras haber ayudado a la ciencia. + + + Vale, te ayudar. + + + Excelente! Tienes que pedirle los escneres a Novikov y colocarlos en las anomalas que aparecern marcadas en tu PDA. Ven a verme cuando termines: tengo que hablar contigo de otro asunto referente a los escneres y las mediciones. + + + Me lo pensar y volver ms tarde. + + + He colocado los escneres en las anomalas. + + + Excelente! Ya tengo los primeros resultados. Espero con ansia la siguiente emisin para obtener las muestras estadsticas que necesitamos... + + + Soy todo odos! + + + Cuando me acerqu y saqu el detector cientfico, todo a mi alrededor empez a transformarse, como si se estuviese comprimiendo. Tras unos instantes, comenzaron a surgir de la nada cadveres de stalkers! Y despus termin todo. + + + Increble! Est claro que la informacin es tremendamente escasa, as que poco podemos deducir de ella. Pero introduciremos esta descripcin en nuestros registros. Llamaremos a esta anomala la Burbuja espacial! + + + Tienes nuevos guardias, no? + + + S, son muy agradables. Nos sentimos muy seguros con ellos por aqu. Gracias por tu ayuda: aqu tienes tu recompensa. + + + Echa un vistazo a estos documentos. + + + A ver... No voy a preguntarte de dnde los has sacado, pero son increbles! Voy a hacer una copia... Ah, por cierto: toma una pequea recompensa. + + + Qu ha pasado con tus guardias? + + + No lo s. Han desaparecido sin ms! + + + Tengo contactos en la Zona. Puedo conseguirte guardias nuevos. + + + Eso sera estupendo! Les prestaremos total apoyo cientfico y los ltimos desarrollos tecnolgicos en compensacin por su trabajo. Y t tambin obtendrs tu recompensa! + + + Hecho! + + + Qu ganas! + + + He cambiado de idea. + + + Pues qu pena. + + + Pues vaya. + + + Algo ms? + + + Han asesinado a nuestros guardias! Los han tiroteado a las puertas de nuestro bnker! + + + He encontrado unos documentos en la central de Jpiter. Quieres verlos? + + + Son interesantes, pero no muy tiles. Gracias por tu trabajo. Si encuentras algo ms, tremelo. + + + Me han atacado unos mercenarios mientras buscaba documentos. Aqu est la PDA de su lder. + + + Caray. Y yo que pensaba que estaban aqu para protegernos! Tendr que hablar de esto con mis superiores. Muchas gracias, joven. + + + Por desgracia, no contiene informacin interesante. + + + S. Tenemos que descubrir los ltimos avances de la central de Jpiter. Necesito los documentos tcnicos que demuestran estos avances. Lo ms probable es que estn en el departamento de administracin de la central. + + + Los buscar y traer lo que encuentre. + + + No, no puedo ayudarte con eso. + + + Te he trado los documentos de Jpiter. + + + Son interesantes, pero no muy tiles. Gracias por tu trabajo. Si encuentras algo ms, tremelo. + + + Me han atacado unos mercenarios mientras buscaba documentos. Aqu est la PDA de su lder. + + + Caray. Y yo que pensaba que estaban aqu para protegernos! Tendr que hablar de esto con mis superiores. Muchas gracias, joven. + + + Intentar encontrar la anomala. + + + No tengo tiempo. + + + Vengo a hablarte de mi participacin en tu investigacin. + + + S que hablo en nombre de todo el equipo cuando digo que nos honrara que aceptases ayudar a la ciencia una vez ms. Qu te interesara hacer? + + + Me gustara colaborar haciendo mediciones. + + + Te gustara ayudarnos a realizar un examen externo completo? + + + S. Dime qu tengo que hacer. + + + No, tengo que pensar en ello de nuevo. + + + Me hablaste de colocar escneres. + + + Estoy intentando encontrar la correlacin entre las emisiones y la aparicin de artefactos en anomalas. Tengo la teora de que podremos pronosticar la siguiente emisin por medio del nmero y la calidad de artefactos que aparezcan. Para realizar clculos concretos, necesito recoger estadsticas. Solo hay que colocar unos cuantos escneres en varias anomalas de distintos tipos. + + + Vale, te ayudar. + + + Excelente! Tienes que pedirle los escneres a Novikov y colocarlos en las anomalas que aparecern marcadas en tu PDA. + + + Me lo pensar y volver ms tarde. + + + Los escneres de las anomalas estn transmitiendo informacin. Solo tenemos que esperar los resultados. Si quieres, coloca ms escneres en las anomalas. Nunca est de ms disponer de informacin extra, y te avisaremos cuando aparezcan artefactos en las anomalas. + + + De acuerdo. + + + Excelente! Tienes que pedirle los escneres a Novikov y colocarlos en las anomalas que aparecern marcadas en tu PDA. + + + Me lo pensar y volver ms tarde. + + + Por desgracia, tenemos una regla que nos impide asignar ms de una tarea simultnea a la misma persona. Lo siento, pero debemos cumplirla. + + + Tienes ya los resultados de las mediciones de los campos de anomalas del escuadrn al que proteg? + + + Quera aadir que tus mediciones atrajeron la atencin de numerosos mutantes y zombis. Hemos invertido mucho tiempo y esfuerzos en luchar contra ellos. + + + Mmm. Entonces crees que reaccionaron a los exmenes? Interesante. Bueno, en ese caso parece que se confirma la hiptesis de Ozersky: los mutantes pueden acceder telepticamente a diversos campos. Creo que merece la pena comentrselo. Te doy esto como pago a tu trabajo. Te lo has ganado! + + + Mmm. Entonces crees que reaccionaron a los exmenes? Interesante. Bueno, en ese caso parece que se confirma la hiptesis de Ozersky: los mutantes pueden acceder telepticamente a diversos campos. Deberas comentrselo a Ozersky. Lo siento mucho por los stalkers. Un porcentaje de nuestros modestos fondos se destinar a compensar a sus familias. Con el resto te pagaremos por tu trabajo. Gracias! + + + Hay alguna forma de conseguir un traje cientfico? + + + No! El nmero de trajes est estrictamente limitado. No puedo permitirme regalarlos! + + + Qu queras decirme? + + + Te has fijado en la gente que se encarga de proteger nuestro bnker? + + + Contina. + + + No vas a crertelo, pero alguien ha asesinado a nuestros guardias. Justo al lado de nuestro bnker! + + + Necesitis ayuda? + + + Ahora estamos intentando recoger un nuevo tipo de muestras. No cuentan con ningn efecto anmalo por s mismas, pero los experimentos que realizamos nos han dado unos resultados increbles. + + + Contina... + + + Corta el rollo y dime lo que hay que hacer. + + + Vale. Los stalkers que encontraron el campo psquico creen que contiene una guarida de mutantes. Yo no lo creo. Salvo los controladores, ningn mutante podra sobrevivir en un campo psquico intermitente! Tranquilo, nuestros hombres se encargarn de los mutantes. Te necesitamos porque el contacto habitual con campos psquicos ha reducido la resistencia de nuestros stalkers a sus efectos. + + + A ver si lo he entendido: quieres que entre en un campo psquico desconocido y que consiga una muestra de algo que quizs ni siquiera est all, y que si est, nadie sabe qu aspecto tiene? + + + Exacto! Esta misin es fundamental para la ciencia en general y para nuestro equipo en particular. Tu ayuda ser incalculable. Si tienes dudas, habla con Ozersky. l realizar los anlisis correspondientes para determinar tu resistencia a las emisiones psquicas. Tambin puedes preguntar lo que quieras a nuestros stalkers. Bueno, quieres ayudar a la ciencia? + + + S. + + + No lo sabes? Tu escuadrn de stalkers ha muerto. + + + Teniendo en cuenta que la ltima vez no te presentaste en el tnel, me resultar complicado convencer al equipo de que trabaje contigo. + + + Aquello fue un accidente. + + + Te creo, pero nuestro equipo de recogida de muestras est compuesto por gente muy peculiar: no debes decepcionarlos nunca. Volver a hablar con ellos e intentar convencerlos. Pero esta vez no me falles: necesito esa muestra. + + + Perdname, pero tengo que decir que no. Tu equipo no est preparado para un campo psquico intermitente. Te encontrars con una muerte rpida y dolorosa, y no quiero cargar con eso en mi conciencia. + + + He conseguido la muestra. + + + En serio? Djame ver. Me muero por verla! + + + He conseguido tu muestra. Result que haba un controlador en el tnel. Intent acabar con tu escuadrn y casi lo consigue. Pero pude matarlo antes de que lo hiciera. + + + Eres increble! Has acabado con un controlador y has salvado a los stalkers de un ataque psquico... De no saber que es cierto, jams te creera! Excelente experiencia, y una muestra fantstica. Tu contribucin a la ciencia es digna de mencin. Te doy las gracias de mi parte, de la de mi equipo y de la de todos los cientficos del mundo. + + + Por desgracia, un controlador atac al escuadrn. Tuve que defenderme. El controlador est muerto, pero los stalkers tambin. + + + Has dicho un controlador? Qu horror, quin lo habra pensado? Lamento la muerte de esos valientes muchachos, que sirvieron con lealtad a la ciencia. Aunque tcnicamente no eran cientficos, hicieron por la ciencia ms que muchos profesores. Muchas gracias, acepta esta humilde recompensa. + + + Por desgracia, un controlador atac al escuadrn. Apenas consegu salir con vida. + + + Qu hacen aqu los mercenarios? + + + Interponerse en mi camino. Aunque es tan solo una opinin personal. Al principio no dejaban de pedirme que les arreglase esto o aquello... Pero ayer perdieron la poca vergenza que les quedaba y comenzaron a preguntarme cmo funciona nuestro equipo. No alcanzo a comprender de qu les servira saber eso para proteger nuestro bnker. + + + Qu modificaciones puedes efectuar en el equipo? + + + Ya habrs notado que esto no es un complejo cientfico... No tenemos kevlar ni armas para piezas de repuesto. Aqu tan solo puedo arreglar blindajes personales o modificarlos con uno de mis inventos. Como podrs imaginarte, tengo muchsimo equipo de primera. + + + Gracias a ti y a la muestra que trajiste del campo psquico, Ozersky consigui idear algo para proteger a la gente de las emisiones. Y he convertido su idea en algo prctico... que puedo instalar en tu traje, si quieres. + + + Bueno, adems de las mejoras habituales, puedo ofrecerte modificaciones de filtrado y de proteccin psquica. Despus de todo, existen gracias a tu ayuda... Ozersky y Hermann estn contentsimos! + + + Bueno, adems de las mejoras habituales, puedo ofrecerte modificaciones de aislamiento y de proteccin psquica. Despus de todo, existen gracias a tu ayuda... Ozersky y Hermann estn contentsimos! + + + Tengo todo tipo de modificaciones: de aislamiento, de filtrado y de proteccin psquica. Con un traje que tenga todas instaladas, podrs entrar en cualquier anomala... e incluso salir. Por cierto, gracias por participar en la investigacin de Hermann. Sin tu ayuda, no dispondra de todas estas opciones. + + + Hblame de tu bnker. + + + Mmm. Qu quieres saber? + + + Qu hacis en el laboratorio? + + + No creo que Hermann ni Ozersky puedan responder a esa pregunta. Obviamente, all se hacen todo tipo de investigaciones. Pero los resultados son ms bien escasos. Podras hablar de ello con Ozersky. Basndome en sus teoras, he inventado un par de modificaciones aceptables para trajes. + + + Qu sabes de la Zona? + + + No hablo en un sentido cientfico, pero tengo mucha experiencia prctica en la Zona. Aqu lo nico que tiene valor es lo que aumente tus probabilidades de supervivencia. En la Zona da igual si eres un bandido o un stalker que recoge artefactos para alimentar a su familia. Aqu solo sobreviven los que mejor se adaptan a la vida en la Zona. + + + Cunto tiempo llevas en la Zona? + + + Bastante. Al principio, buscaba artefactos, como todos, pero mi salud empez a empeorar hasta que me di cuenta de que no poda seguir. Por suerte, an me queda alguna neurona y no me result difcil encontrar trabajo. Me pas casi un ao con una faccin formada por antiguos cientficos. Eran buena gente... Una pena que muriesen en un intento por conseguir un objetivo confuso. Despus pas un tiempo vagando por la Zona y termin trabajando para los cientficos. De momento no tengo queja. + + + Eso es todo lo que quera saber. + + + Voy a entrar en el campo psquico intermitente. Algn consejo? + + + Qu puedo decir? No creo que conozcas la teora de los campos de energa informativos... Puedes estar seguro de que una breve exposicin al campo psquico no es peligrosa... al menos, a la larga. Pero no te relajes demasiado all dentro. Los que infravaloran los campos psquicos suelen terminar convertidos en zombis. + + + Puedes forzar un contenedor de acero? + + + No creo. No tengo el equipo adecuado. Y va contra nuestras reglas de salud y de seguridad. + + + Puedes desencriptar una caja negra? + + + S, pero no voy a hacerlo. Antes me dedicaba a eso... y no me gustaba. Demasiados los... Los cientficos ya me dan bastante trabajo. + + + Qu tiene de especial el CS-3a? + + + Aparte de que lo he diseado yo? Es uno de los mejores trajes de la Zona. Por algo lo llevas puesto, no? Es ligero, mvil y tiene un espeso blindaje personal en su centro. Le he aadido una proteccin contra anomalas. Es una pena que hoy en da escaseen los materiales. Pero, qu quieres? Estamos en mitad de un pantano. En fin, con un par de arreglos, tendras un traje de lo ms moderno. Tengo mucho equipamiento de primera, as que eso no sera un problema. + + + Trabajas para Bho? + + + No. El otro da me ayud a conseguir algo... Un favor por un favor. + + + Bho me pidi que te trajese detectores. Aqu estn. + + + Vale. Los usar para un trabajo y despus se los devolver a Bho con los guas. El resto son asuntos personales entre Bho y t. + + + Oh! As que eres t el que vende armas a los bandidos de Zaton? + + + Sshh. Ests loco? Cmo se te ocurre hablar de eso aqu? No nos conocemos de nada, vale? + + + Entendido. + + + Y si le contase al comandante lo de tu pequeo negocio paralelo? + + + Qu le podras contar? No tienes ninguna prueba. De hecho, t fuiste el que liquid a los testigos. Quedars como un idiota si me acusas de algo sin pruebas. + + + He encontrado la PDA de unos mercenarios muertos. Contiene un contrato para asesinarme. Y el cliente eres t... + + + Me tienes harto. A ver, dame esa PDA y a cambio te dar un arma excelente que solo utilizan los soldados de lite de Deber. Qu te parece? + + + Vale, coger el arma. + + + Qudatela. No necesito limosnas de una vbora traicionera! + + + Tengo otra PDA con un contrato para asesinarme. Y t vuelves a ser el cliente. + + + Maldita sea... Esos putos mercenarios... No se puede confiar en ellos para nada, joder... Haremos lo siguiente: los mercenarios dejarn de buscarte y t me dejars en paz. Para compensar tus prdidas, te llevar al almacn secreto de Deber para que puedas llevarte todas las armas que puedas cargar. + + + Vale, bien pensado. + + + Bien, nos veremos all. El escondite est junto a la cantera. + + + No pienso ir a ningn sitio. Tendrs que drmelo todo aqu mismo. + + + Aqu no tengo nada, no soy tan idiota! O nos reunimos junto al escondite o te quedas sin nada. + + + No, gracias. + + + No necesito limosnas de una vbora traicionera! + + + Quiero irme de la Zona. + + + Seguro? No hay vuelta atrs. + + + Segursimo. En marcha. + + + Bueno... De momento me quedo. + + + Veamos... Bueno, tienes el hgado ms grande de lo que esperaba, pero eso es un riego laboral, no? Aparte de eso, ests sano como una manzana. + + + Sera hasta normal si no resplandeciese... Da miedo, tal y como est ahora. Mira, echa un vistazo... Aunque dudo que disfrutes de las vistas. + + + Vale, como quieras. + + + "Fueron" soldados de Monolith? Bueno, t vers. Responders por ellos? + + + "Fueron" soldados de Monolith? No, gracias. Paso de esa panda de fanticos rabiosos. + + + Ja, buen chico. Ms te vale cuidarte, y eso significa que no te olvides de tenerme bien untado. Qu tienes para m, un artefacto o los 15.000? + + + He trado un artefacto. + + + Vale; cul? + + + No tengo artefactos de ese valor. + + + Llama. + + + Pez de colores. + + + Lucirnaga. + + + Copo de nieve. + + + Em... Nada, por ahora. + + + Bueno, yo ya he dicho lo que tena que decir. Ahora habla. + + + Hasta luego. + + + Pues claro! An hay que estudiar el campo psquico intermitente, y cuanto antes, mejor. Djame hacerte una pregunta: ests seguro de que esta operacin es segura? Necesitamos tu ayuda para conseguir una muestra de prueba. Vas a querer ayudar a la ciencia? + + + Puede que encuentre a gente vlida para tu nuevo grupo de investigacin. + + + De verdad? Una ayuda as nos vendra de perlas y supongo que conllevara beneficios. + + + Bien. Contratar a la gente adecuada. + + + Lo pensar un poco ms. + + + Aqu tienes. Me top con un controlador en ese tnel y lo mat. + + + Eres increble! Has matado a un controlador y conseguido lo que necesitbamos. Me lo cuentan y no me lo creo! La experiencia es magnfica y la muestra, fantstica. Tu contribucin a la ciencia es de lo ms notoria. En mi nombre y en el de todos los cientficos, te ruego que aceptes mi ms sincera gratitud! + + + Aqu tienes. Me top con un controlador en ese tnel. Casi no lo cuento. + + + Un controlador? Es terrible; quin iba a pensarlo? Lo importante es que nos has trado la muestra y, por tanto, has hecho una notoria contribucin a la ciencia. Gracias y, por favor, acepta esta modesta recompensa. + + + Te gusta tu nuevo grupo de investigacin? + + + Oh, todo correcto. Parecen jvenes competentes. Toma, acepta esto. Tienes, em... madera para los recursos humanos. + + + Qu tal, hermano? Claro que me alegro de verte, pero tampoco me importara tener un ratito de intimidad. + + + He venido a por el stalker secuestrado. Quiero comprar su libertad. + + + Y quiero que se respete a los bandidos y nuestras reglas, colega. Pero tampoco quiero los innecesarios. Con 15.000 o un artefacto valioso me bastar. Soy un hombre justo: no quiero ms de lo que me corresponde. + + + Toma la pasta. + + + Bien... Respeto lo que haces. Llvate a ese perdedor y dile a los stalkers que la prxima vez el precio ser mayor. + + + No llevo tanto encima. + + + Vale, qu novedad, no tienes una mierda. + + + De momento no tengo nada. Volver ms tarde. + + + Djame ver... Bueno, no hay nada de importancia estratgica, pero nos puede venir bien. Te pago 500 por documento. Trato hecho? + + + Vamos a ver... Mierda! Esta informacin daara gravemente la reputacin de Deber. Te la compro por 4.000. + + + Interesante... Bien, te pagara 2.000 por eso. + + + S, pero el precio sigue siendo el mismo: 2.000. + + + Bien, hasta otra. + + + Es terrible! Qu puede haberles pasado? Mmm... Los mutantes son una posibilidad. Tendr que preguntarle a Ozersky qu tipo de monstruo puede ser... Mmm. No obstante, hay que estudiar el campo psquico. Esta misin es fundamental para la ciencia en general y para nuestro equipo en particular. Necesitamos tu ayuda desesperadamente para conseguir una muestra. Si tienes dudas, ve a ver a Ozersky. l realizar los anlisis pertinentes para determinar tu resistencia a las emisiones psquicas. Bueno, quieres ayudar a la ciencia? + + + Me lo pensar. + + + Nuestro equipo de investigacin, formado por stalkers locales, encontr recientemente un campo psquico altamente inusual. Segn nuestras teoras y las mediciones efectuadas, la naturaleza de este campo tiene efectos psquicos intermitentes, en vez de hacerlo de forma continua. + + + Por desgracia, nuestro equipo de investigacin ha muerto. Hasta que encontremos un reemplazo, no podremos realizar experimento alguno. + + + Espera... Seras tan amable de prestarme un momento de atencin? + + + Cules son los resultados del examen de la anomala? + + + Tienes ms trabajo para m? + + + Algo he odo. + + + Por desgracia, an no he convencido a Hermann para que organice un equipo de bsqueda... Lo admito: los rumores acerca del fenmeno son demasiado contradictorios, pero algo me dice que el Oasis existe. Mi intuicin rara vez falla, as que si das con l y me traes una prueba de su existencia, te estara muy agradecido. + + + Lo buscara, pero ya he estado en el Oasis. + + + Em... Estooo... Creo que no te he entendido. Qu has dicho? + + + He venido a saldar la deuda de Vano. + + + S, lo recuerdo. No es poco lo que debe, y con los intereses asciende a 7.000. + + + Vale, toma. + + + Dile a Vano que ya no nos debe nada. + + + De acuerdo. + + + No tengo tanto dinero. + + + Vuelve cuando lo tengas. + + + El trato no inclua intereses. + + + De qu ests hablando? Me tomas por idiota? Crees que dejo dinero sin cobrar intereses? Son 7.000 y fin de la historia. + + + Anda, pinsatelo bien. Tengo aqu mi arma y no me importa utilizarla. A ver, qu vas a hacer fiambre y con tantos intereses? + + + Vale, vale, calma, jefe! Seguro que podemos llegar a un acuerdo. Pgame solo 5.000 y asunto zanjado. + + + Ja... Mtete ese arma de mierda por donde te quepa, imbcil! Son 7.000 con los intereses. Y punto. + + + Ya no te acuerdas? An tengo el arma. + + + Prefiero liquidarte de gratis. + + + Me lo pensar. + + + 7.000 con los intereses. + + + No estoy para trabajos importantes ahora mismo. A ver si me organizo un poco... No s, igual hasta me voy a casa... busco trabajo y me olvido de estos condenados artefactos... No s cmo dejar a Osopardo... y a Torla. Ahora estamos muy unidos y nos ayudamos. Yo qu s, igual solo necesito descansar y reorganizar mis ideas. + + + No estoy para trabajos importantes ahora mismo. Voy a trabajar para los cientficos y a organizarme un poco... No s, igual hasta me voy a casa... Busco otro trabajo... Bah, yo qu s... Necesito descansar y reorganizar mis ideas. + + + Qu, con ganas de salvar a Mitay? Espero que no te importe trabajar con unos colegas que he contratado. + + + Tengo la PDA del comerciante de Deber, Morgan. Te interesa? + + + Tengo una PDA que demuestra los contactos entre Morgan y los mercenarios. + + + Creo que me la voy a quedar. + + + Saba que al final prevaleceran tus ansias por hacer el bien en el mundo y colaborar con el avance de la ciencia! Muy bien, ste es el plan. Un grupo de investigacin de stalkers se encargar de hacer las mediciones. Tu trabajo consistir en escoltarlos; es decir, protegerlos y guiarlos por terrenos difciles. Los stalkers te estn esperando en el exterior. + + + Hola, stalker. Te sorprende ver a un anciano por aqu? Ja, ja. Vine aqu con los chicos porque necesitaba un cambio de aires. Me dedico a reparar equipo, y hacer curaciones de vez en cuando... + + + Ya que ests aqu, en qu puedo ayudarte? + + + Cmo llegaste a Pripyat? + + + Garry me mostr el camino. Los stalkers llevaban tiempo queriendo venir aqu, pero no les apeteca vrselas con los soldados. En cuanto Garry nos cont que el ejrcito haba sido derrotado, no me lo pens dos veces y me vine. No tengis miedo, el to Yar ha llegado! Ja! + + + Necesito asistencia mdica. + + + Deja que este anciano vea eso... + + + Ya est: sobrevivirs. Si se hincha, mate encima. Me han dicho que eso a veces funciona. + + + Ests mejor que yo! Le ests tomando el pelo a este anciano? Ja... + + + Bienvenido a mi humilde y alegre morada. Buscas alegra, placer o ambas cosas por igual? + + + Bueno, los chicos siempre dicen que soy demasiado bueno, como una especie de hada madrina. As que no te quejes mucho... La prxima vez no lo ser tanto. Y ahora largo de aqu, pardillo! + + + Ya he estado all. Los bandidos han muerto. + + + Caray, eres tremendo! Muchas gracias! Toma este dinero: lo iba a usar para pagar la deuda pero t te lo mereces ms. + + + Caray, eres tremendo! Muchas gracias! Toma este dinero: lo iba a usar para pagar la deuda pero t te lo mereces ms. + + + Nuestros escneres han detectado una actividad inusual al norte de aqu. A tenor de los datos recibidos, creo que la formacin anmala de ese lugar es inestable. Por desgracia, no puedo deducir nada ms de esta informacin. Tenemos que realizar una investigacin de campo. Solo puedo decir que los detectores normales de los stalkers no podrn registrar la anomala. Hay que utilizar un Svarog, uno de nuestros inventos. + + + Los escneres siguen detectando una actividad anmala inestable al norte de aqu. Si dispones de algo mejor que un detector normal de stalkers, como por ejemplo un Svarog, podras intentar realizar una investigacin de campo. + + + De momento, tan solo el del campo de la anomala del pantano. A pesar de esto, Novikov ya le ha encontrado una aplicacin prctica. Gracias por tu trabajo. Esperamos ansiosos la segunda entrega de los resultados. + + + De momento, tan solo el del campo de la anomala que est ms all de Kopachy. A pesar de esto, Novikov ya le ha encontrado una aplicacin prctica. Gracias por tu trabajo. Esperamos ansiosos la segunda entrega de los resultados. + + + Por supuesto. He recibido todos los resultados. Para serte sincero, el volumen de datos obtenido es tan grande que nos llevar semanas, por no decir meses, procesarlos correctamente. A pesar de esto, Novikov ya le ha encontrado una aplicacin prctica. Muchas gracias por tu ayuda. + + + No, aqu no ha ocurrido nada parecido. Mmm... Aunque hace un rato me encontr con un tipo muy sospechoso. Fui a dar un paseo y en el camino de vuelta, vi a un stalker que se iba de Yanov. En cuanto me fich, empez a ponerse agresivo sin motivo aparente. Me dijo que saba dnde viva yo y cosas por el estilo. En su momento no le di mayor importancia: pensaba que estaba borracho. Pero quizs tenga algo que ver con lo que me cuentas. + + + Adnde fue? + + + Hacia el noreste. Escuch unos disparos por all, aunque eso es muy normal por aqu. Pregunta a Zulu: est en su torre da y noche, as que es posible que haya visto algo. + + + Hacia el noreste. Es posible que haya ido a la subestacin. + + + Entiendo. + + + Qu pasa, amigo? + + + Qu tal te va? + + + No me va mal. Hombre, no es fcil pero conseguiremos irnos de aqu. Juntos podemos hacer cualquier cosa! + + + Qu tal te va? + + + Pues no s. No me gusta estar aqu. Siento la necesidad de un cambio. Puede que me vaya pronto, espero que no te parezca mal. + + + He borrado del mapa la guarida de chupasangres de Zaton. + + + [continuar...] + + + [continuar...] + + + [continuar...] + + + [continuar...] + + + Necesito que alguien tome medidas de las anomalas. + + + Necesito que se tomen medidas de las anomalas. + + + Quin es la bella durmiente? + + + Has encontrado el artefacto? + + + No lo sabes bien! Aqu no hay nada que hacer. Lo nico que tenemos para divertirnos es un tablero de backgammon. Esto no es Pripyat... To, me ir para all en cuanto se acabe mi puto contrato! + + + [continuar...] + + + Puedes ir a la cantera, all muri el disidente. Antes de fallecer, me dijo que Pedernal le rob su botn y que lo dej morir en una anomala. + + + Lo llamaban el disidente. Entr en una anomala de gas y t saliste corriendo con su artefacto. Como ves, logr contrmelo todo antes de morir. + + + No te voy a preguntar de dnde lo has sacado. Vamos a ponerlo fcil: te compro esta PDA por 4.000. Siempre he tenido curiosidad por saber qu hace nuestro oficial de suministros cuando no trabaja... + + + Veamos... Menuda mierda! Adems de venderles nuestras armas, le dio el almacn a Libertad! Maldita sea, tendremos que convocar una reunin del equipo ahora mismo. + + + Veamos... No me lo puedo creer! Sabamos lo del almacn y hasta pensbamos ir, pero no tenamos ni idea de la alarma porque ese imbcil no dijo nada. Un momento, tengo que avisar a los chicos. + + + Bueno, te dar los 4.000 por pura curiosidad. + + + Bueno, no es que sea un soldado de asalto pero maneja bien el arma. Siempre tiene esa cara tan avinagrada, como si no le dieran de comer nada ms que limones. + + + He encontrado una extraa anomala en una torre de refrigeracin. + + diff --git a/gamedata/configs/text/spa/st_dialogs_pripyat.xml b/gamedata/configs/text/spa/st_dialogs_pripyat.xml new file mode 100644 index 0000000..5aec6bf --- /dev/null +++ b/gamedata/configs/text/spa/st_dialogs_pripyat.xml @@ -0,0 +1,906 @@ + + + + Ja! As aprendern! Gracias por ayudarme. Si no fuera por ti, esos cabronazos me habran engullido enseguida. En fin, eres un buen stalker, despus de todo... Siento lo del enfado, pero podras haberme dicho antes que eras de la USS. + + + No pasa nada. Ser mejor que vayamos al campamento militar. Es ms seguro. + + + S, seguro que es mejor que andar merodeando solo por Pripyat. + + + Pues venga, vamos. + + + Tengo unos asuntos que finiquitar, pero t puedes ir yendo. El campamento est en la lavandera. + + + Yo ya me largo. + + + Espera... Toma esto. Es la ametralladora ms fiable de la Zona. + + + Espera, ya no la necesitas? + + + Siempre llevo algo a mano para cargarme a un par de mutantes. Adems, he decidido volver; Garry me va a llevar a Jpiter. T la necesitars ms. Llvatela y dale buen uso. + + + Que tengas buena suerte. + + + Gracias, es un arma estupenda. + + + Ja! No es estupenda, es la mejor de la Zona. Est modificada, as que pesa un poco, pero no necesitars correr si llevas un can de ese calibre. Los que corrern sern tus enemigos! + + + Adis. + + + Bien! + + + Sabes dnde ha ido Zulu? + + + Se fue... Me pidi que lo llevara a Jpiter y luego nos separamos cerca de la central. No me dijo adnde iba. + + + Espera... Me ha pasado algo malo que quiero compartir... Unos mercenarios me pidieron que los llevara a Pripyat. Al principio, me convencieron con una tentadora suma, pero pronto me di cuenta de que estaba de mierda hasta el cuello. No me quitaban ojo, amenazndome a punta de pistola. Aun as, logr escapar cuando nos aproximbamos a Pripyat, pero ahora estarn en la ciudad, as que ten cuidado. + + + No oiras por casualidad de qu hablaban los mercenarios? + + + Un poco, s. No tenan ninguna intencin de dejarme con vida, as que no ocultaban sus planes. Hablaban sobre todo de reunirse con la gente del cliente, que iban a mostrarles el objeto y el propsito de su misin. + + + Dnde tendr lugar el encuentro? + + + Cerca, en el patio del bloque de apartamentos. + + + Gracias por la informacin. + + + Has mencionado a los mercenarios... Pudiste or de qu hablaban? + + + Un poco, s. No tenan ninguna intencin de dejarme con vida, as que no ocultaban sus planes. Hablaban sobre todo de reunirse con la gente del cliente, que iban a mostrarles el objeto y el propsito de su misin. + + + Dnde tendr lugar el encuentro? + + + Cerca, en el patio del bloque de apartamentos. + + + Tengo un acuerdo con los cientficos acerca de un traje... Ve a ver a Hermann y l te contar. + + + Vale... Dnde est el punto de encuentro? + + + Cerca de la estacin de Yanov, en casa de Zulu. + + + Est hasta arriba de stalkers! Mejor llvame t, porque si aparezco yo por ah vers la que se monta. Si me acompaas, no dispararn porque te conocen. + + + A qu punto de evacuacin fuiste? + + + Lo siento, no puedo hablar de ello. Es confidencial. + + + Vamos a ver a Zulu. + + + De acuerdo, pero antes hay que ir a ver a Hermann para hacernos con el traje de cientfico. + + + En marcha. + + + Yo ira... pero hay una emisin por all. Esperamos un poco? + + + Cmo has acabado aqu? + + + Mi helicptero se estrell contra un taller de Jpiter y atraves el tejado. Soy el nico superviviente. Consegu salir de la central de Jpiter y me dirig al punto de extraccin ms prximo, pero no haba nadie. Luego conoc a Garry y l me condujo al bnker. + + + Necesitars un traje con mdulo respiratorio de ciclo cerrado para llegar a Pripyat. + + + Qu haces aqu? + + + Mis rdenes son dirigirme al punto de evacuacin, pero la Zona es muy peligrosa. Soy piloto, no guardia de asalto! Por eso espero aqu, con la esperanza de que me evacen una vez completada la operacin. + + + Estoy reuniendo un pelotn para ir a Pripyat. Quieres acompaarme? + + + A Pripyat? Pues s, creo que s... Puede que alguno de los nuestros haya sobrevivido y llegado all... Hay un punto de evacuacin en Pripyat, as que ir para all. Nunca conseguira llegar solo, pero estoy dispuesto a intentarlo con tu pelotn. + + + Todo listo para irnos? + + + Supongo que as es. + + + Hola, stalker. + + + Eh. + + + Hola. + + + Hola, mayor. + + + De dnde has sacado un uniforme militar? + + + Je... En fin, supongo que todo el mundo sabe ya que unos helicpteros militares se estrellaron... Soy el teniente Sokolov, copiloto de uno de ellos. + + + En cuanto al centinela... + + + Su seal procede de la vieja tienda de ultramarinos, pero no responde... A lo mejor ha perdido la radio. Llegados a este punto, es difcil estar seguro. Hay que localizarlo. + + + Gracias, coronel! Creo que me apaar. + + + En cuanto al centinela... + + + Pues... Todo es cosa de ese controlador... Eso fue probablemente lo que le ocurri tambin al pelotn de reconocimiento. Los hizo dispararse entre s. Esas criaturas son lo peor de la Zona y no nos han entrenado para combatirlas. El controlador nos ha pillado por sorpresa y hemos vuelto a perder hombres. + + + Al menos ya no hay que preocuparse por el controlador. + + + Espero que las cosas se calmen un poquito ahora... Agradezco la ayuda, mayor. Sospecho que esta misin habr requerido una buena dosis de municin. Busca al teniente Kirillov y pdele que te enve con el equipo necesario. + + + Gracias, coronel! + + + No hay de qu preocuparse, coronel. Me ocupar de ese mutante. + + + Puede darme ms detalles sobre la misin? + + + Quin es l? + + + Si no damos pronto con el origen de la interferencia, no nos quedar ms alternativa que esperar y morir. El primer ataque masivo de Monolith har pedazos a los militares... y la operacin acabar en fracaso total. + + + Intentar dar con el origen lo antes posible. + + + Y bien, mayor? Has localizado el origen de la interferencia de radio? + + + No, sigo trabajando en ello... + + + Garry me habl del incidente con los mercenarios... + + + S, a m tambin me lo cont. En cuanto Garry huy, vino aqu por miedo a que lo siguiesen. Por suerte para l y para nosotros, los mercenarios no le siguieron el rastro... Estamos vigilando el lugar en el que los mercenarios y la gente del cliente tienen que reunirse, pero nada... Ojal supiera lo que buscan aqu esos mercenarios. + + + Me han informado de que los mercenarios andan buscando un laboratorio secreto en Pripyat. + + + Un laboratorio secreto en Pripyat? De dnde has sacado esa informacin? + + + De la libreta de un mercenario de Zaton. Tambin lo confirma lo que me cont un stalker llamado To Yar. + + + Mmm... Y se sabe algo ms? + + + Andan buscando el laboratorio central. Mientras investigaba, pude dar con las coordenadas. + + + Si esto es cierto, significa que tenemos otro enemigo, adems de los zombis y los fanticos... Hay que decidir cmo actuamos. + + + Hay que espiar el encuentro y eliminar al representante del cliente, si es posible. As nos aseguraramos de que nadie fuese al laboratorio X8 de momento. + + + No est mal pensado; aunque no averigemos quin ms est al tanto del laboratorio, al menos nos aseguraremos de que los mercenarios no vayan. Eso s, los mercenarios reaccionarn rpido y sern una amenaza para nosotros. Hay que matar a ambos objetivos, si es posible. Ordenar al teniente Kirillov que te acompae. + + + De acuerdo. + + + Un momento; igual habra que elegir al otro objetivo. + + + Decide qu objetivo es el prioritario. + + + Tenemos que acabar con el lder mercenario. Ocpate de l y el pelotn de mercenarios decapitado dejar de ser un problema. + + + Est bien pensado, pero es probable que el mensajero huya y revele la informacin sobre los laboratorios en otro punto, as que los mercenarios acabaran llegando. Lo idneo es matar a ambos objetivos, si es posible. Ordenar al teniente Kirillov que te acompae. + + + No tengo tiempo para esto. + + + De la libreta de un mercenario de Zaton. + + + Es una historia que me cont To Yar, un stalker de la estacin de Yanov. + + + Y los mercenarios... + + + Magnfico; ambos objetivos han sido abatidos. Ahora los mercenarios no se nos interpondrn y evitaremos intrusiones en el laboratorio. Qudate el fusil. Aqu tienes municin. + + + Bien, ahora que el lder ha muerto, los mercenarios no nos supondrn un problema, aunque viendo que la gente del cliente ha salido de sta, igual les da por aparecer en el laboratorio. No hay que bajar la guardia. Qudate el fusil. Aqu tienes municin. + + + Bien, ahora que la persona que conoca el enclave del laboratorio ha muerto, los mercenarios no lo encontrarn, aunque dudo que se vayan a largar de Pripyat, lo que significa que seguimos bajo una amenaza constante. No hay que bajar la guardia. Qudate el fusil. Aqu tienes municin. + + + As que cambiaste de objetivo en el ltimo momento? Bueno, no es mala decisin. Ahora que el lder ha muerto, los mercenarios no nos supondrn un problema, aunque viendo cmo se las apaa la gente del cliente, igual aparecen por el laboratorio. No hay que bajar la guardia. Qudate el fusil. Aqu tienes municin. + + + As que cambiaste de objetivo en el ltimo momento? Bueno, no es mala decisin. Ahora que la persona que conoca el enclave del laboratorio ha muerto, los mercenarios no lo encontrarn, aunque dudo que se vayan a largar de Pripyat, lo que significa que seguimos bajo una amenaza constante. No hay que bajar la guardia. Qudate el fusil. Aqu tienes municin. + + + La cosa no ha ido tan bien. El lder mercenario est vivo, y tambin el tipo del cliente. Ahora que los mercenarios saben de nosotros, sern una amenaza aparte de la de las fuerzas de Monolith. Y por si fuera poco, ahora saben dnde est el laboratorio, as que es cuestin de tiempo que aparezcan por all. No hay que bajar la guardia. Qudate el fusil. Aqu tienes municin. + + + Prepara a tus soldados, coronel. Estoy listo. + + + De acuerdo. Cubre a Strelok, mayor. Nosotros nos cuidaremos solitos. + + + Veamos... De todos nosotros, Strelok y t sois los ms experimentados en la Zona. La diferencia es que, mientras la experiencia de Strelok no es ms que un rumor, la tuya es algo patente. Lo que trato de decir es que confo en ti, mayor. Vigila a Strelok; no quedamos muchos... + + + El pelotn est listo para la accin. Cuando t digas, mayor. + + + Parece que esos pirados estn muertos. Coge ese fusil y vmonos echando leches de aqu mientras podamos. + + + Por m, perfecto. + + + Listo, vmonos. + + + Vale, el pelotn est listo. + + + En marcha. + + + Tendremos que esperar. No quiero perder hombres en la emisin. + + + Soy el capitn Tarasov. Puede que tenga el rango de mayor, pero yo estoy al mando aqu y eso significa que mis rdenes no se discuten. Las vidas de todos los del pelotn dependen de ello. EL plan es el siguiente: nos posicionamos en el ala oeste del hospital y esperamos a que aparezcan las fuerzas de Monolith. Tenemos que actuar rpido para no atraer atencin innecesaria. + + + Entendido, en marcha. + + + Vale, el pelotn est listo. + + + En marcha. + + + Tendremos que esperar. No quiero perder hombres en la emisin. + + + Espere, capitn, an no estoy listo. + + + Alguna novedad sobre la interferencia? + + + He identificado numerosos orgenes, uno de ellos cerca. Si lo destruimos, quiz podamos comunicarnos con el cuartel general. + + + He descifrado las coordenadas del origen de la interferencia. Debe de tratarse de una alta frecuencia especializada, o incluso de un transmisor de microondas. + + + El dispositivo que destruisteis era el origen de la interferencia. Habr montones de ellos, pero ya hemos establecido comunicacin con el cuartel. + + + Y la seal? + + + La seal no hace ms que aparecer y desaparecer, pero cada vez que reaparece est ms cerca de la base. + + + Eso es todo? + + + Pues no; el caso es que la seal se transmite en frecuencias de uso muy poco comn en comunicacin por radio. + + + Entiendo. + + + Tome esta arma y municin... Puede relajarse, por ahora. Yo vigilar la posicin desde el otro lado y contactar con usted en cuanto aparezcan. + + + De acuerdo. + + + Saludos. Soy el teniente Kirillov. Me encargo de mantener las armas y almacenar municin. + + + Tienes municin? + + + S, el otro da nos colamos en un almacn de Monolith y estaba repleto de municin para todas las armas que hay en la Zona. No s cmo conseguirn tanto armamento... Supongo que se la vender uno de los guardias del permetro. + + + Tambin puedes arreglarme el arma? + + + Pues claro. Nos han formado para reparar todo tipo de armamento. + + + Entiendo. + + + Saludos. + + + De qu ser este dolor de cabeza...? + + + Lleg el momento de la verdad; no s si lo conseguiremos o no... + + + Necesito municin. + + + Sin problema. Qu necesita, exactamente? + + + Municin de pistola 9x18... + + + Aqu tiene. Algo ms? + + + Toma. + + + Municin de pistola 9x19... + + + Municin de pistola 11,43x23... + + + Municin de escopeta. + + + Municin de fusil de asalto 5,45x39... + + + Municin de fusil de asalto 5,56x45... + + + Municin de fusil de asalto 9x39... + + + Municin de fusil de francotirador... + + + Municin de ametralladora. + + + No puedo darle ms, mayor. El coronel ha ordenado guardar municin. + + + Vale, olvdalo. + + + Necesito granadas. + + + Perfecto. De qu tipo? + + + Granadas de mano. + + + Toma. + + + Municin de lanzagranadas VOG-25. + + + Municin de lanzagranadas M209. + + + Bueno, es igual. + + + No puedo darle ms, mayor. El coronel ha ordenado guardar municin. + + + Necesito asistencia mdica. + + + Siempre es un placer ayudar. Veamos... + + + Ah est, sano como una manzana. + + + Cmo se encuentra despus de lo ocurrido? + + + Ahora estoy bien... Estuve en estado de shock tras lo del jardn de infancia, pero en cuanto comenz la emisin, me espabil enseguida. + + + Saludos. + + + Lo principal es llegar a los helicpteros. + + + Necesito suministros mdicos. + + + Veamos lo que tengo. A ver, hay esto... + + + Lo siento, no andamos sobrados; no puedo dar ms. + + + Hemos seguido la seal de radio. + + + S. Me puse en contacto con un stalker llamado Guide. l fue quien me dijo que viniera aqu por los tneles subterrneos. + + + Quin es Guide? + + + Es un stalker legendario; dicen que puede llevarte a cualquier lugar de la Zona. Los del ejrcito tienen suerte de haberse topado con l; sin su ayuda, no hubiesen sobrevivido mucho. + + + Cmo sabas que los militares estaban aqu? + + + Guide me lo dijo. l fue quien trajo a Kovalsky y a su pelotn. + + + Entiendo. + + + Qu informacin quieres revelar al gobierno? + + + Muchas cosas... Seguro que la informacin que tengo puede servir para destruir la Zona. Ojal pudiese hacerlo solo... pero es un asunto complicado. La gente que comenz todo ya no estaban al mando. Lo explicar todo cuando salgamos de aqu. + + + Qu viste en el sarcfago? + + + Es todo mentira... el Monolito, el Genio... Todo falso, un ardid para nublar la razn. Y los responsables se esconden en otro lugar. + + + Sabes quin anda detrs de todo? + + + Puede que s, puede que no... Ya no s qu pensar... A pesar de todo, averig ms de lo que ellos queran. + + + Vale, dejemos el tema. + + + Compartir todo lo que s, siempre que la informacin llegue a la gente adecuada. + + + He encontrado los escondites de tu grupo de camino aqu... + + + No s cmo has conseguido dar con ellos... Debera de haber informes ah dentro. Los tienes? + + + S, encontr estas tres notas. + + + Gracias... Ghost y Fang eran mis amigos... Juntos conseguimos superar el Cauterizador y llegar a la central de Chernbil. Por desgracia, ambos murieron. Al volver, nos separamos. Yo estaba herido y me qued con el mdico en los pantanos. No volv a verlos... Hasta mucho despus, no supe que los mercenarios se haban cargado a Fang y que Ghost haba muerto por fiarse de los cientficos. Pero el pasado pasado est. Ahora s qu hacer para asegurarme de que mis amigos no murieran en vano. + + + S, aqu tienes tu mensaje para Ghost. + + + Gracias... Ghost era mi amigo... Fang, l y yo conseguimos superar el Cauterizador y llegamos a la central de Chernbil. Al volver de la central, nos separamos. Yo estaba herido y me qued con el mdico en los pantanos. No volv a verlos... Hasta mucho despus, no supe que los mercenarios se haban cargado a Fang y que Ghost haba muerto por fiarse de los cientficos. + + + S, tome una nota de Fang para usted. + + + Gracias... Fang era mi amigo... Ghost, l y yo conseguimos superar el Cauterizador y llegamos a la central de Chernbil. Al volver de la central, nos separamos. Yo estaba herido y me qued con el mdico en los pantanos. No volv a verlos... Hasta mucho despus, no supe que los mercenarios se haban cargado a Fang y que Ghost haba muerto por fiarse de los cientficos. + + + S, aqu tienes tu mensaje para Fang. + + + Gracias... Fang era mi amigo... Ghost, l y yo conseguimos superar el Cauterizador y llegamos a la central de Chernbil. Al volver de la central, nos separamos. Yo estaba herido y me qued con el mdico en los pantanos. No volv a verlos... Hasta mucho despus, no supe que los mercenarios se haban cargado a Fang y que Ghost haba muerto por fiarse de los cientficos. + + + S, aqu tienes tu nota para Ghost y la que le escribiste Fang. + + + Ghost y Fang eran mis amigos... Juntos conseguimos superar el Cauterizador y llegamos a la central de Chernbil. Al volver, nos separamos. Yo estaba herido y me qued con el mdico en los pantanos. No volv a verlos... Hasta mucho despus, no supe que los mercenarios se haban cargado a Fang y que Ghost haba muerto por fiarse de los cientficos. + + + S, aqu tienes tu nota para Ghost y otra para Fang. + + + Ghost y Fang eran mis amigos... Juntos conseguimos superar el Cauterizador y llegamos a la central de Chernbil. Al volver, nos separamos. Yo estaba herido y me qued con el mdico en los pantanos. No volv a verlos... Hasta mucho despus, no supe que los mercenarios se haban cargado a Fang y que Ghost haba muerto por fiarse de los cientficos. + + + S, aqu est tu mensaje para Fang y otro de l para ti. + + + Gracias... Fang era mi amigo... Ghost, l y yo conseguimos superar el Cauterizador y llegamos a la central de Chernbil. Al volver de la central, nos separamos. Yo estaba herido y me qued con el mdico en los pantanos. No volv a verlos... Hasta mucho despus, no supe que los mercenarios se haban cargado a Fang y que Ghost haba muerto por fiarse de los cientficos. + + + S, pero, por desgracia, no los llevo encima. + + + Veamos... Mal asunto... En fin, probablemente superaras el examen mdico del programa espacial, pero aparte de eso, tu estado de forma es psimo. Je... + + + Vamos, mayor. Los de Monolith no esperan. + + + Mayor, hemos perdido un centinela: ha abandonado su puesto. La seal de su radiofaro procede de la tienda de ultramarinos pero no responde. Dios sabe lo que habr pasado ah. Quiz ha perdido la cabeza: el accidente de helicptero le afect mucho. Podras revisar la seal de radiofaro por m? + + + Lo har. + + + No te prometo nada. + + + Mayor, tenemos que encontrar a la unidad de reconocimiento. + + + El escuadrn de asalto y t tenis que llegar hasta el objeto A17. El Capitn Tarasov te indicar el lugar. El objetivo son dos alas de un hospital conectadas por un pasillo. Los soldados de Monolith estn ahora mismo en el ala oeste. Tendrs que tenderles una emboscada desde el otro ala. Es muy probable que el ms chiflado de todos lleve un rifle. + + + Probablemente es el lder del escuadrn. Los chicos vieron cmo les daba un sermn a sus soldados. Literalmente! Ten cuidado: quin sabe de lo que es capaz? + + + Recibido, coronel. + + + Saludos. Soy el coronel Kovalsky y estoy al mando de esta unidad. + + + Soy el mayor Degtyarev de la USS. He venido a investigar el fracaso de la Operacin Puente. + + + Entiendo. Pues escuche, mayor. La Operacin Puente se ha ido al garete, junto con nuestros helicpteros. La mitad de mis hombres estn muertos y hemos perdido la comunicacin con el cuartel general. Me intriga tanto como a ti el motivo de este fracaso. + + + Alguna idea? + + + Solo se me ocurre que abatieran los helicpteros con algn arma de muchsima potencia que desconocemos. Los soldados de Monolith utilizaron una contra nosotros durante el primer asalto a la central de Chernbil... Me gustara apropiarme de esa arma para estudiarla. Si quieres pasar a la accin, seguimos los pasos del escuadrn de Monolith que lleva el arma, y el equipo de asalto est esperando mi seal para dar comienzo a la operacin. Qu me dices? + + + Acepto, siempre y cuando me facilites toda la informacin disponible y me ofrezcas completa libertad a la hora de proceder. + + + Tengo informacin sobre el arma no identificada, el fusil Gauss. + + + Vaya! Cmo funciona? Puede usarse para derribar un helicptero? + + + Tcnicamente s. Pero la aceleracin habra dejado agujeros de bala en los helicpteros, y no encontramos ninguno. + + + Maldita sea... Entonces estamos en un callejn sin salida. No se me ocurren ms ideas. Solo nos queda sentarnos en mitad de esta puta Zona y esperar a que vengan a por nosotros... Vale, dejo ya de quejarme. Vamos a preocuparnos por cosas que nos afectan ahora mismo. Gracias a ti sabemos que mantenernos a cubierto no nos va a proteger de esas balas aceleradas y eso ya es algo. As que gracias, mayor. Te contactar cuando tengamos alguna novedad. + + + Tcnicamente s, pero los Peces Raya 4 y 5 se estrellaron debido a errores electrnicos. Las balas aceleradas no pueden provocar algo as. + + + Cmo va la operacin? + + + El sargento Morozov ha muerto. Los soldados de Monolith nos tendieron una trampa, sacrificando a sus propios hombres. + + + Cerdos! Es imposible que supiesen de nuestro plan... As que hemos perdido a nuestro francotirador. Y qu hay del objetivo de la operacin? + + + Hemos tenido algunas bajas... Los soldados de Monolith nos tendieron una trampa, sacrificando a sus propios hombres. + + + Cerdos! Es imposible que supiesen de nuestro plan... As que hemos perdido a varios hombres. Y qu hay del objetivo de la operacin? + + + El escuadrn ha muerto... Los soldados de Monolith nos tendieron una trampa, sacrificando a sus propios hombres. + + + Cerdos! Es imposible que supiesen de nuestro plan... As que hemos perdido a Tarasov y a sus hombres. Y qu hay del objetivo de la operacin? + + + Tengo el arma. Se da durante el combate. + + + As que no podemos saber si se us para derribar los helicpteros. Escucha, mayor: tienes contactos entre los stalkers y es posible que ellos se hayan topado con el arma. Ellos tienen tcnicos en sus filas. Por qu no hablas con ellos? + + + De acuerdo. + + + Vale... Ah, por cierto: otro stalker ha llegado hasta aqu desde Jpiter. Habla con l si te apetece. + + + An estoy en ello. + + + Entiendo. Mayor, necesitamos el arma. Imagino que eres consciente de la importancia de este tema. + + + Aj. + + + He encontrado tu nota en el complejo Volkhov AA. Toma. + + + Escucha... Bah, da igual. No creo que ninguno de nuestros hombres aparezca en ese lugar. Si ves a algn soldado por aqu, avsame. Vale? Gracias de antemano. + + + Mayor... Gracias a Dios! Estoy salvado! + + + Cmo has acabado aqu? + + + Eh... No recuerdo gran cosa. El miedo apenas me dejaba pensar y ni siquiera s por qu tena miedo; tan solo quera esconderme, as que ech a correr... Recuerdo calles y esquinas.... hasta que llegu a este agujero. La puerta estaba cerrada por fuera, y pensaba que me iba a morir aqu. Cmo me has encontrado? Da igual, salgamos de aqu y acerqumonos a la base. Este lugar me pone los pelos de punta. + + + Vamos. + + + Hola. Necesitas un mdico? No soy cirujano, pero puedo extraer balas y coser heridas si es necesario. + + + Necesito informacin. + + + Pregunta. + + + Sobre la Operacin Puente... + + + Qu? + + + Pas algo fuera de lo comn mientras los helicpteros estaban en el aire? + + + No hasta que se estrellaron. Seguamos el plan a pies juntillas: despegamos 90 segundos antes de la emisin, activamos el sistema de proteccin y pusimos el piloto automtico. Seguamos la ruta ms corta y segura, calculada con el mapa de anomalas. La visibilidad era nula pero eso no tendra que haber afectado a la misin porque el pasillo era muy ancho. Segn el plan, tendramos que haber llegado a la central en doce minutos y medio, pero a los nueve minutos perdimos contacto con Pez Raya 4 y despus los dems empezaron a caer como moscas. + + + Tengo ms preguntas sobre la operacin... + + + Sabes qu pas con el resto de helicpteros? + + + No mucho. Pez Raya 2 y 4 son un misterio total. No s dnde se estrellaron o qu ocurri con sus tripulantes. Solo tengo informacin de los helicpteros en los que hubo supervivientes, as que tampoco esperes demasiados datos. Tenamos otras preocupaciones. + + + Hblame de Pez Raya 1. + + + Cmo has llegado aqu? + + + Nos encontramos con un stalker cerca del campo de minas. Creo que el ruido de las explosiones lo alert. Un tipo extrao... Se haca llamar Guide. No nos hizo ninguna pregunta, tan solo se ofreci a llevarnos a Pripyat. Eso encajaba con nuestro plan, as que acept. Le seguimos apuntndole con nuestras armas por si acaso, pero todo fue bien. No dijo ni una palabra hasta que llegamos a la ciudad y entonces desapareci sin avisarnos. Les dije a mis hombres que lo dejasen ir. + + + Hblame de Pez Raya 3. + + + El capitn Tarasov dice que los dos motores fallaron. Tuvieron que aterrizar en la colina que est cerca de la posicin B2. Afortunadamente tuvieron un buen aterrizaje, pero el tcnico no tuvo tiempo para identificar las causas de la avera: sufrieron un ataque de snorks y perdieron tres hombres. Los otros decidieron no quedarse: contactaron con Pez Raya 5 y fueron a su encuentro. Se enfrentaron a un escuadrn enemigo bien armado, pero consiguieron salir de all sin sufrir bajas. + + + Cmo llegaron a Pripyat? + + + Los soldados de Pez Raya 3 y 5 consiguieron reunirse no muy lejos del lugar donde se estrellaron los helicpteros, cerca de una especie de barcaza. Me dijeron que el hombre que viva all estaba como una regadera: cuando mis hombres intentaron detenerlo, l intent hacer lo mismo con ellos! El pobre idiota pretenda enfrentarse a once hombres! Pero encontrarse a este stalker result de lo ms provechoso, porque ambas partes llegaron a un acuerdo y el stalker los llev hasta Pripyat casi sin incidentes. El nico herido fue el teniente Stetsenko, que perdi un par de dedos de los pies en una anomala gravitatoria que se encontr por el camino. + + + Hblame de Pez Raya 5. + + + Los dispositivos electrnicos se averiaron y Pez Raya 5 se estrell en un pantano. Cinco hombres sobrevivieron al accidente. Pez Raya 3 se puso en contacto con ellos mientras sacaban su equipo del helicptero. El lder del escuadrn, el mayor Neborsky, muri de camino al punto de encuentro. El pobre idiota muri a manos de un chupasangres cerca de la estacin de exploracin. El resto lleg a su destino sin problemas. Perdieron a otro hombre, el sargento primero Batyai, uno de sus francotiradores, cuando llegaron a Pripyat y se enfrentaron a unos soldados de Monolith. + + + Cmo llegaron a Pripyat? + + + Los soldados de Pez Raya 3 y 5 consiguieron reunirse no muy lejos del lugar donde se estrellaron los helicpteros, cerca de una especie de barcaza. Me dijeron que el hombre que viva all estaba como una regadera: cuando mis hombres intentaron detenerlo, l intent hacer lo mismo con ellos! El pobre idiota pretenda enfrentarse a once hombres! Pero encontrarse a este stalker result de lo ms provechoso, porque ambas partes llegaron a un acuerdo y el stalker los llev hasta Pripyat casi sin incidentes. El nico herido fue el teniente Stetsenko, que perdi un par de dedos de los pies en una anomala gravitatoria que se encontr por el camino. + + + No mucho. Pez Raya 2 es un misterio total. No s dnde se estrell o qu ocurri con sus tripulantes. Lo ms probable es que sepas ms de Pez Raya 4 que yo. El teniente Sokolov, con el que has llegado hasta aqu, fue el nico superviviente del accidente. Solo tengo informacin de los helicpteros en los que hubo supervivientes, as que tampoco esperes demasiados datos. Tenamos otras preocupaciones. + + + No mucho. Pez Raya 2 es un misterio total. No s dnde se estrell o qu ocurri con sus tripulantes. Pregntale al teniente Sokolov por Pez Raya 4: fue el nico tripulante de ese helicptero que lleg a Pripyat. Solo tengo informacin de los helicpteros en los que hubo supervivientes, as que tampoco esperes demasiados datos. Tenamos otras preocupaciones. + + + Necesito ms informacin. + + + No tengo ms preguntas. + + + Cul es la situacin en Pripyat? + + + No puede ir peor. Pripyat est repleta de fanticos de Monolith y de zombis. Las emisiones se suceden sin descanso y hay que tener cuidado con los mutantes y las anomalas. En fin, bienvenido al infierno. + + + Cmo consigues equipo y provisiones? + + + Hblame de Monolith. + + + Son fanticos, as de sencillo. No s qu mosca les pica pero siempre andan buscando pelea. Nunca se echan atrs, incluso si tienen menos hombres o armas que sus rivales... y eso no es muy habitual en este lugar. Creo que reciben refuerzos de Chernbil de forma regular. Que les den, ya hemos perdido a varios hombres por culpa de sus ataques... + + + Has probado a interrogar a alguno? + + + Es intil. Para empezar, luchan hasta morir. Uno de nuestros soldados consigui atrapar a uno con vida porque qued aturdido por una granada, pero no sirvi de nada. En un momento de descuido por nuestra parte, se golpe la cabeza contra la pared con tal fuerza que escuchamos su crneo romperse como una cscara de huevo. + + + Qu vas a hacer ahora? + + + No creo que sea posible seguir adelante con la Operacin Puente. Tu presencia aqu lo confirma. Mi plan es mantener la base hasta que los helicpteros aparezcan. Tengo varias fechas de evacuacin pensadas. + + + No llegarn ms helicpteros hasta que descubramos por qu se estrellaron los Pez Raya. + + + Vaya... Pero entonces... no podremos salir de aqu a pie! Dios sabe cuntas millas tiene esta mierda; y adems la Zona est llena de stalkers que no son precisamente amigos nuestros. As que solo podemos realizar nuestra propia investigacin e intentar no diarla. Mayor, creo que ahora mismo nuestros objetivos coinciden. + + + Ahora no. + + + Te escucho, mayor. + + + El nico equipo que tengo es el que hemos trado. Ah, tambin hemos robado cosas de Monolith; municin sobre todo. En fin, tenemos que tener mucho cuidado con el reparto. Con la comida pasa igual: solo tenemos unas cuantas raciones y algo que cogimos del almacn de Monolith. + + + El nico equipo que tengo es el que hemos trado. Ah, tambin hemos robado cosas de Monolith; municin sobre todo. En fin, tenemos que tener mucho cuidado con el reparto. Con las provisiones pasa igual, salvo que he hecho un pacto con Garry. Nos traer comida enlatada si le dejamos quedarse en la base y hacemos la vista gorda cuando est buscando artefactos. Tampoco es que tuvisemos otra opcin. + + + Hemos vengado a nuestros hombres... Haz lo que tengas que hacer y volvamos. No quiero quedarme aqu por ms tiempo. + + + No perdamos ms tiempo, de acuerdo? Quiero volver a la base ahora mismo... + + + De acuerdo. + + + All est esa cosa tan extraa! Para qu piensas que la usarn? Bah, da igual. Venga, colega. Haz lo que tengas que hacer y volvamos a la base. + + + Has terminado? Yo voto por volver a la base y comer algo... + + + De acuerdo. + + + Qu tal te va? + + + De pena. Est bien estar con los tuyos, pero no me gusta especialmente compartir este agujero con otra gente. + + + No te haba visto antes. Llevas poco tiempo aqu? + + + S. Soy el teniente Sokolov, copiloto del Pez Raya 4. + + + Cmo has llegado aqu? + + + He venido con un stalker llamado Garry. Le ped que me acompaase mientras se diriga a Pripyat. Fue un viaje tremendo, te lo aseguro! Menos mal que nos encontramos con nuestro equipo de reconocimiento nada ms llegar a Pripyat. + + + Qu le pas al Pez Raya 4? + + + Quin sabe? Tuve un mal presentimiento todo el rato... Volbamos con el piloto automtico, el equipo estaba bien, y de pronto nuestro avin se convirti en un trozo de chatarra metlica, con todos los aparatos electrnicos desactivados. El piloto y yo intentamos aterrizar en tierra firme pero no fue posible. Nos estrellamos contra el taller principal de la central de Jpiter, atravesando el tejado... Fui el nico superviviente. + + + Necesito un blindaje personal. + + + Vale, primero te voy a dar el casco... Y ahora la armadura. Espero que sea de tu talla porque es la nica que tenemos. La he reparado, as que se mantendr bien. + + + Por supuesto, mayor. Dadas las circunstancias, no tengo otra opcin. Por cierto, ve a ver al teniente Kirillov para que te d equipo. + + + Sobre los helicpteros... + + + Dime. + + + Qu locura, to. Seguro que Kirilov me pide luego una aspirina. + + + Esperar es lo peor. Te deprime ms que cualquier otra cosa... + + + De acuerdo, mayor: los chicos estn listos para partir. Visita a Rogovets y a Kirillov si necesitas abastecerte. Avsame cuando ests listo. + + + De acuerdo. + + + En marcha. + + + En ese caso necesitamos que sea muy bueno, como los que tienen los cientficos; pero convencer a Hermann para que me lo d no va a ser fcil. Creo que ese tipo preferira hacerme ir como vine al mundo hasta el extremo de la Zona a que ocupara una valiosa estancia de su bnker. Supongo que podras preguntarle a Ozersky. Es ms amable y puede que acceda a mandarme con traje. + + + Y bien, mayor? + + + [continuar...] + + + [continuar...] + + + Yo iba en ese helicptero. En cuanto perdimos el contacto con Pez Raya 4, inform al resto del punto de evacuacin designado en Pripyat; pens que podramos llegar andando hasta la central. Justo despus, el helicptero sufri una sacudida y empec a oler a quemado: el motor se haba incendiado. Los pilotos consiguieron llevarnos hasta la pista de aterrizaje cercana a la central de Jpiter, pero ambos murieron al chocar. Perdimos al sargento Shlyachin porque la pista de aterrizaje result estar sembrada de minas. En Pripyat perdimos a otro soldado ms, un teniente primero, mientras luchbamos contra soldados de Monolith por este edificio. + + diff --git a/gamedata/configs/text/spa/st_dialogs_zaton.xml b/gamedata/configs/text/spa/st_dialogs_zaton.xml new file mode 100644 index 0000000..05f0c6d --- /dev/null +++ b/gamedata/configs/text/spa/st_dialogs_zaton.xml @@ -0,0 +1,3117 @@ + + + + Haba un extrao artefacto en la planta de dragado. Mira. + + + Interesante... Un semiartefacto. Aqu tienes; s recompensar un trabajo bien hecho. Parece que tienes una buena formacin. Ven a verme cuando necesites trabajo. Me suelen encargar determinados artefactos y los pagan bastante bien. + + + Tienes trabajo para m? + + + Algo tengo... Anoche los stalkers vieron una especie de resplandor extrao en la planta de dragado. Demasiado raro hasta para la zona. Por qu no echas un ojo? + + + Lo har. + + + Mucho cuidado por ah. Te lo advierto, ese sitio est hasta arriba de radiacin. No olvides tus medicamentos. Ya me lo agradecers. + + + Ahora no. + + + Ya he asignado todas las misiones que tena para hoy. + + + Tome este semiartefacto. + + + Aqu est tu parte del pastel; s recompensar un trabajo bien hecho. Parece que tienes una buena formacin. Ven a verme cuando necesite trabajo. Me suelen encargar determinados artefactos y los pagan bastante bien. + + + He recogido un extrao artefacto en la planta de dragado. Quieres echar un ojo? + + + Interesante, un semiartefacto... Permteme quitrtelo de las manos. 3.000 parece un precio razonable. + + + He visto que alguien te ha trado el artefacto que encontr. + + + Lo siento, no pienso dejarme embaucar. Mis normas son sencillas: lo que me traen, lo pago. La Zona funciona as: mantener los ojos bien abiertos, actuar rpido y no fiarse de nadie que no est a tiro. Pero para conseguir trabajo fijo, yo soy la persona indicada. Me encargan determinados artefactos y los pagan bastante bien. + + + Qu artefactos necesitas? + + + Conseguir un Gravi. + + + Excelente! Qu rapidez. Aqu est la recompensa. + + + Conseguir un Ojo. + + + Conseguir una Burbuja. + + + Conseguir una Concha. + + + Conseguir un Pez de colores. + + + Conseguir una Llama. + + + Conseguir una Lucirnaga. + + + Conseguir un Copo de nieve. + + + Puedo venderte un Gravi. + + + Aqu est pasando algo raro... Los chicos cogen pedidos y luego desaparecen... Esto me da malas vibraciones. Voy a cerrar la tienda. + + + Puedo venderte un Ojo. + + + Puedo venderte una Burbuja. + + + Puedo venderte una Concha. + + + Puedo venderte un Pez de colores. + + + Puedo venderte una Llama. + + + Puedo venderte una Lucirnaga. + + + Puedo venderte un Copo de nieve. + + + Entiendo. Ya volver luego. + + + Los dos equipos que trabajan para m han desaparecido. He decidido no aceptar ms pedidos, por ahora. + + + Misin cumplida. + + + Excelente! Aqu est la recompensa. + + + All va. Puede que no sea mucho, pero algo es algo. + + + Hblame de los pedidos de artefactos. + + + A quin podra contratar para proteger a los cientficos? + + + A mis chicos: Espartaco y su grupo. ltimamente andan por aqu. Algunos eran guardias de seguridad antes de venir a la Zona y otros provienen de fuerzas policiales, lo creas o no. Saben cmo empuar un arma. Si estn disponibles, harn un buen trabajo. + + + Me gustara aconsejarte, pero en vista de los recientes acontecimientos... Los hombres de Espartaco pasaron a mejor vida. + + + A quin podra contratar para tomar medidas para los cientficos? + + + Conoces a Gonta y sus hombres? Cuando no es temporada de caza, estn... ejem... dispuestos a aceptar trabajillos. Sobre todo si no hay que disparar. Como ellos dicen, para entrenar puntera, siempre est la caza. + + + Ni idea, la verdad. Recomendara a los hombres de Gonta, pero hace mucho que no s nada de ellos. + + + Cuntame cmo es la vida aqu. + + + Eso es demasiado general. Intenta hacer preguntas ms especficas y te responder lo mejor que sepa. + + + Qu hacen aqu los stalkers? + + + Pregntatelo a s mismo. Vienen de Skadovsk y desembarcan para explorar el terreno y buscar artefactos, disparando a todos los que van a atosigarlos. Vuelven a Skadovsk a emborracharse y charlas... A descansar y relajarse antes de la siguiente incursin. Aunque cuando hay una emisin, la cosa cambia; nos limitamos a sentarnos quietecitos y a recordar a los que no pudieron ponerse a cubierto a tiempo. + + + Quin condujo a los stalkers al centro de la Zona? + + + Una pregunta curiosa. Algunos fueron a descubrir la siguiente mina de oro de artefactos. Otros vinieron atrados por los rumores sobre el Oasis. Otros queran dar con el Genio. Y luego estn esos sentimientos humanos tan primitivos: la avaricia y la curiosidad. Cada cual tiene sus motivos. T tambin tendrs los tuyos. + + + Cmo has acabado aqu? + + + Llegu con Urogallo tras la desactivacin del Cauterizador, pero seguro que eso no es lo que quieres saber, me equivoco? Lo mo son los artefactos, principalmente. Hay mucha baratija en el exterior; los clientes importantes quieren cosas raras. Por eso decid montar un campamento de stalkers donde pudiesen acudir en busca de artculos valiosos. A ver, cuando un stalker vuelve con su botn, qu es lo que necesita? Refrescarse el gaznate y contacto humano. Y de ah el porqu de Skadovsk. + + + Qu opinas de los bandidos? + + + Las cosas son como son. No tengo nada en su contra a bordo de Skadovsk mientras se comporten. Despus de todo, no es muy habitual dar con autnticos capullos. Los hay que antes eran stalkers. Quin sabe? Puede que alguno de esos cabronazos decida dejarse de gilipolleces si se lleva un buen balazo. La vida es una caja de sorpresas. + + + Nah, es igual. Olvdalo. + + + Si t lo dices. + + + Oye, ha aparecido algn militar por aqu? + + + Piensa un poquito. Qu pintan esos militronchos en el campamento? Creme: prefieren no oler este lugar ni de lejos. Muchos nos acordamos de lo que fue arrastrarnos por el barro en Cordn, mientras descargaban sus putas ametralladoras... + + + Hblame de la Brjula. + + + Ese artefacto es toda una leyenda. Dicen que no tiene efectos secundarios dainos y que, si se sabe usar, puede salvarte de cualquier anomala. No es de extraar que los clientes se rifen algo as. El otro da, precisamente, alguien me dijo que No sabe algo al respecto. Es un stalker que vive al sur de aqu. + + + Bien, le har una visita a No. + + + Lo pensar. + + + Es un artefacto legendario, como te dije. Dicen que un stalker llamado No puede saber algo al respecto. Vive al sur de aqu. + + + Recog un extrao artefacto cerca de Yanov. Te interesa? + + + A ver, que eche un ojo... Pues s que es raro, pero no creo que encuentre comprador. Te sugiero que vuelvas a Yanov y se lo ensees a los cientficos. Se les hace la boca agua con estos juguetitos. + + + Bho dice que no vas a cumplir tu parte del trato. + + + Lo dejamos muy clarito: me da detectores, los pongo en funcionamiento y l se lleva parte de los beneficios. Ya le he pagado dos detectores, as que estoy cumpliendo lo pactado a rajatabla. Eso es todo lo que acord con el Bho. Si trabajas para l, puedes llevarte el tercer detector. No pienso comprarlo. + + + Qu le cuento al Bho? + + + Supongo. + + + Yo en tu lugar no hara tratos con el Bho. Si quieres llenarte los bolsillos de forma rpida, puedo meterte en el mundo de la caza de artefactos. Dos o tres horas, lo suficiente para ganar a todos. Adems, si te interesa, tengo un pedido especial. Necesito urgentemente un artefacto llamado Brjula. + + + Sultn consigui interceptar la Brjula. + + + Ese cabronazo est mosqueado... En fin, da igual. Intenta volver a hablar con No. Segn los ltimos rumores, puede que sea... til. + + + He encontrado una Brjula. Toma. + + + Me has salvado la vida! Ahora puedo estar seguro de haberme metido en el bolsillo a un cliente importante. Corre el rumor de que Sultn quera birlarme el negocio. Se va a llevar un chasco, aunque merecido. Toma, para ti. Te lo has ganado. + + + Me niego a buscar una Brjula para ti. + + + Qu pena. En fin... + + + Sultn te manda un saludo. Por cierto, todos tus canales de suministro estn cortados. + + + Es obvio quin es el que anda detrs de todo esto... En fin, no me voy de Skadovsk. Parece que no tengo ms opcin que trabajar para ti y para Sultn. Se llevar su parte de las ventas y t vendrs todos das a por la tuya. El dinero estar listo. + + + Dame mi parte. + + + Ah tienes. + + + Llegas pronto. An no tengo el dinero listo. + + + Crees que Nimble negociar con material robado? + + + Lo dudo... Por lo que s de l, prefiere dejar los asuntos turbios a otros. Un buen hombre de negocios valora su nombre y su reputacin. La verdad es que nunca he odo a nadie decir nada malo de Nimble. + + + Estoy buscando a Snag. Sabes dnde puedo encontrarlo? + + + La ltima vez que lo vi fue saliendo de un bar. Si no recuerdo mal la conversacin, iba a las gras del puerto. Igual quieres ir a echar un ojo. + + + Alguien planea atacar a un grupo de stalkers. Nuestra propia gente. + + + Vaya... Los bandidos se reproducen como conejos, y ahora encima luchamos entre nosotros? + + + A m me ofrecieron atacar el campamento que hay junto a Shevchenko por la noche. + + + Sern gilipollas... Hubiera estado bien que aceptaras. Sabes por dnde voy? As, podra avisar a mis hombres para que preparasen una clida bienvenida a nuestros invitados. + + + De acuerdo. + + + Vale, ve a ver a esos capullos y yo hablar con los chicos. + + + Lo siento, ests solo. + + + Tengo un artefacto del Oasis. Te interesa? + + + El Corazn del Oasis? Nah, creo que paso. La gente dice todo tipo de cosas... Igual es pura supersticin, pero prefiero guardar las distancias. Creo que haras bien dndoselo a los cientficos. Que lo estudien para que entendamos mejor cmo afecta a la gente. + + + Eres nuevo por aqu? No pasa nada, te adaptars enseguida. Sabes? En la Zona se practica a base de bien. Soy Barbas, el camarero local. Si tienes alguna pregunta, me dices, vale? + + + Adelante. + + + Qu te parece ganarte un dinerillo buscando artefactos? + + + Cmo va mi pedido? Recuerda: el stalker ms rpido se lleva el premio gordo. + + + Llegas tarde; ya me ha trado ese artefacto otra persona. Pero ya que has cumplido, puedo pagarte. Aunque no tanto. + + + Acaba de surgir algo. Dicen que los bandidos planean comprar un lote de armas. Nuestros hombres quieren seguirlos y fastidiar la transaccin. Agradeceramos cualquier ayuda. + + + Y bien? + + + Qu hacen los mercenarios en la planta de tratamiento de basura? + + + Deberas permanecer al margen. No es asunto tuyo. + + + Te gusta trabajar para los cientficos? + + + Bastante. Me alegro de que hayas acudido a nosotros en concreto. Somos quienes mejor pueden proteger a los cientficos. + + + Estoy reuniendo un pelotn para ir a Pripyat. Me acompaas? + + + No. No puedo perder de vista a los cientficos. Prueba a hablar con Sokolov; me parece recordar que iba a Pripyat. + + + No. No puedo perder de vista a los cientficos... Estamos aqu para protegerlos. + + + Ejem... No; mi lugar est aqu, de momento. + + + Te gustara trabajar para los cientficos? + + + Eso depende... De qu se trata? + + + Defender su bnker. + + + Claro, y gracias por la oferta. + + + Hacer mediciones en anomalas. + + + Eso no es para nosotros. Pregunta mejor a los stalkers. + + + Mira, stalker. Me rugen las tripas y fastidindome no haces ms que empeorar las cosas... + + + Podra traerte comida... + + + Ja! Venga, pues hazlo. Carne en conserva, salchichas y pan, seis de cada. No vayas a quedarte corto, que estamos que estamos famlicos. + + + He odo que puede haber herramientas por aqu. + + + Joder, a saber! Pero podras dejar de merodear. Ya tenemos bastante trabajo de por s. No podemos ni mandar a nadie a por comida. + + + Joder, a saber! Pero puedes rebuscar entre toda esta chatarra. Igual encuentras lo que buscas. + + + Aqu est la comida. + + + Vaya, haba perdido la esperanza... Gracias. Ser un buen almuerzo para los chicos. Qu queras, entonces? Rebuscar entre la chatarra? No te cortes, igual encuentras lo que buscas. Pero guarda esa arma de una vez! + + + Vaya, haba perdido la esperanza... Gracias. Ser un buen almuerzo para los chicos. Oye, si quieres echar un ojo a la zona... adelante. Pero guarda ese arma de una vez! + + + No eres bienvenido aqu. ste es nuestro campamento y no pintas nada por aqu. Bastante tienen mis hombres con el hambre y los nervios... + + + Largo, porque los chicos estn tan famlicos que les tiembla el pulso en el gatillo. + + + Oh, stalker... Es algo importante? Si no, tengo que seguir trabajando. + + + Estoy listo para cazar. + + + Bien, en marcha. + + + En marcha. + + + An no es la hora. Vuelve a las tres de la maana. + + + Entiendo. + + + Y nosotros... Excepto por la emisin. La quimera no estar dormida ahora. Supongo que tendremos que probar suerte otra noche. + + + Gonta ha muerto. Cmo ha ocurrido...? No te dirigirs a Yanov, por casualidad? Trapper, amigo de Gonta, est aqu. Podras decirle que la quimera est muerta? Yo me ir a casa, supongo. + + + Cudate. + + + Largo de aqu. Gonta ha muerto, en parte por tu culpa. Qu vamos a hacer ahora? + + + Cudate. + + + Hblame de ti. + + + Soy Gonta, lder de los cazadores. Aniquilamos mutantes por dinero. Tambin los capturamos vivos para experimentos cientficos o por si alguien quiere una mascota extica. Como deca Trapper, "Para cada animal, su bala". + + + Hblame de cazar mutantes. + + + Bueno, no soy el cazador ms experimentado, pero s un par de cosas sobre animales que corren en manada. Cerdos mutantes, jabales, perros ciegos, pseudoperros, snorks, hmsteres... Incluso s algo de los chupasangres. + + + Hblame de los jabales y los cerdos mutantes. + + + Vale. Los cerdos mutantes son los ms inofensivos de todos. Intentan no acercarse a los stalkers, pero contraatacan si t los hostigas primero. Pero si hay un jabal de por medio, la cosa se complica. Trescientos kilos de pura furia... Intenta apartarte si carga contra ti. Hay que usar el impulso en su contra. Una mole de ese calibre no se caracteriza por su agilidad, me sigues? Esquvalo apartndote y llnalo de plomo. + + + Hblame de los perros ciegos y de los pseudoperros. + + + Los cnidos solitarios no son tan peligrosos, pero las manadas pueden ponerte en apuros. Solo atacan si estn hambrientos... Pero lo malo es que eso es casi siempre. Si te enfrentas a toda una manada, trata de abatirlos desde un punto alto o arrasarn contigo, sobre todo si hay pseudoperros adultos entre ellos. No son mucho ms duros que los ciegos, pero s ms astutos y peligrosos. Si uno de repente se convierte en manada, recuerda: te atacan fantasmas. El autntico pseudoperro se quedar atrs y solo te soltar algn que otro mordisco. Trata de identificarlo. En cuanto muera el perro real, los fantasmas desaparecern. + + + Hblame de los snorks. + + + Son restos humanos... Un snork solitario no es problema para un cazador experimentado: esperas a que te salte encima y lo coses a tiros en el aire. Pero cuando hay unos cuantos... Tienes que disparar lo ms rpido que puedas esquivando los saltos. Como ya se lo saben, suelen atacar juntos. + + + Hblame de los hmsteres. + + + Es la pesadilla de todo cazador. Lo peor que puedes hacer es subestimarlos por su tamao. Son increblemente rpidos y giles, y siempre corren en manada. Cuando sientes docenas de dientecillos desgarrndote es cuando te lo tomas en serio y empiezas a disparar. Y sa es la parte ms terrorfica, porque es dificilsimo acertar. Por eso les digo a los stalkers que lleven una escopeta cargada. + + + Hblame de los chupasangres. + + + Son expertos cazadores con una excelente capacidad de disfraz. Cuando se camuflan, es casi imposible verlos. Si quieres cazar a un, prueba a asustarlo. Son ms visibles cuando se mueven. Recuerda: un chupasangre tratar de acercarse sigilosamente por detrs y te echar los tentculos al cuello. Es espeluznante, joder... Si tienes la mala suerte de toparte con un grupo de ellos, mucho ojo a la retaguardia. + + + Vale, olvdalo. + + + Si veo a Urraca, te informar. + + + Te compensar como es debido... Voy a desplumarlo. + + + Qu te ha hecho Urraca? + + + Pues mira, una vez acudi a m diciendo que no poda echar mano a su botn por un controlador. Nos faltaba un hombre, por aquel entonces. Nuestro explorador Danila se haba escindido siguiendo a los chupasangres a su guarida, as que decidimos ayudar a Urraca a conseguir su botn para que luego se nos uniese. Solo tena que vigilar a la quimera cerca de la guarida... + + + Y qu ocurri? + + + Lo que ocurri fue... que el muy cerdo huy con su botn y con el nuestro, ya de paso. Cuando apareci la quimera, fue toda una sorpresa. Garmata no tuvo tiempo de reaccionar, como es natural... Y en lugar de cazar a nuestra presa, acab defendiendo a mis hombres. Al final, her a la quimera, pero le peg un buen tajo a Cangrejo y desapareci. Perdimos toda una semana de preparativos. + + + Llevas la caza en la sangre! Aqu tienes un trofeo, te lo dedico. Como Trapper sola decir, la habilidad es tu principal arma. Por cierto, no irs a Yanov? Estara bien decirle a Trapper que la quimera est muerta. Yo, de momento, me quedo en Skadovsk, a ver si Cangrejo mejora. Te vienes con nosotros? + + + S. En marcha. + + + No. Voy a dar un par de vueltas ms por aqu. + + + Lo logramos. Este pequeo trofeo te lo dedico... La cosa podra haber ido mejor, pero no ha estado mal. Como deca Trapper, con experiencia, quin necesita trampas? Por cierto, no irs a Yanov? Estara bien decirle a Trapper que la quimera est muerta. Yo, de momento, me quedo en Skadovsk, a ver si Cangrejo mejora. Te vienes con nosotros? + + + Garmata ha muerto. La quimera nos ha salido cara. No irs a Yanov? Deberamos decirle a Trapper que la quimera est muerta. Yo, de momento, me quedo en Skadovsk, a ver si Cangrejo mejora. T vas? + + + He encontrado a Danila. Est muerto. Lo mat al final Tremor. + + + Joder! Por qu siempre se van los mejores? Y ese Tremor... ser cabrn! Ha matado a Danila... Era un buen tipo, joder! + + + Crees que Nimble negociar con material robado? + + + Material robado? Qu te hace pensar algo as? Hace mucho que conozco a Nimble; hace mucho que le pido armas de forma regular. Buen gnero a buenos precios. La primera vez que lo oigo. Supongo que tendr nuevos competidores desesperados que hacen correr rumores... + + + Estoy reuniendo un pelotn para ir a Pripyat. Me acompaas? + + + Tengo un acuerdo con los cientficos que debo cumplir. Adems, no me apetece irme. Deberas hablar con Sokolov. No para de fastidiarme con que tiene que ir a Pripyat pero que no tiene agallas para ir solo. Menudo soldado est hecho... + + + Tengo un acuerdo con los cientficos que debo cumplir. Adems, no me apetece irme. Lo siento. + + + No, no me apetece. La caza est aqu. Sabes mejor que nadie la de mutantes que hay an rondando por aqu. Suficientes para ocupar varias vidas de caza intensiva. + + + Te gustara trabajar para los cientficos? + + + En qu consiste el trabajo? + + + Defender su bnker. + + + No, gracias. Soy cazador, yo trabajo con mutantes, Y los mutantes no son una amenaza para el bnker. La gente s, pero es distinto. + + + Hacer mediciones en anomalas. + + + Por qu no? Podemos hacerlo. Declaro oficialmente cerrada la temporada de caza! Ser un buen descanso de la rutina; no sabes qu escalofros cada vez que hay que salir... + + + No, ahora mismo no. Es por la caza; hay que ajustar cuentas con esa quimera. No podemos dejar que un mutante as de sanguinario ande suelto por la Zona, robndonos stalkers. + + + Lo que yo quiero ahora mismo es agarrarle el pescuezo a Urraca. Eso s que me calmara para poder hablar de trabajo contigo. + + + Ms adelante. Ya tenemos suficiente entre manos. Tenemos que cargarnos a una quimera y que localizar a Urraca. No hay tiempo para ms. + + + He encontrado a Urraca. Est en la estacin de Yanov, hacindose pasar por "Pedernal". + + + Ese hijo de puta sigue vivo? Pues no ser por mucho tiempo. Esto es para ti; agradezco la ayuda. Estoy deseando cogerle por banda. Pedernal, dices... + + + S, gracias. + + + Eh, has visto a un tal Urraca? Lo conoces? No? Bueno, si te cruzas con esa escoria, por m puedes meterle un tiro entre ceja y ceja. O dime dnde encontrarlo y yo te compensar. + + + Vaya, hola. + + + Espera! Hemos localizado a la quimera, as que no hay tiempo que perder. Cangrejo sigue mal, Danila no ha vuelto an e ir a por la bestia los dos solos es una estupidez. Tenemos que ser tres. T eres un tipo vlido. Localizaste a Urraca. Y si vamos juntos a por esa apestosa quimera? + + + Espera! Hemos localizado a la quimera, as que no hay tiempo que perder. Cangrejo sigue mal y Danila... En fin... Ir a por la bestia los dos solos es una estupidez. Tenemos que ser tres. T pareces un tipo vlido. Y si vamos juntos a por esa apestosa quimera? + + + Ser un placer. + + + Como deca Trapper, cuando vas de caza, cazar es solo la mitad del trabajo. En fin, mira: tras una noche de caza, la quimera vuelve a su guarida sobre las tres de la maana. Entonces caer profundamente dormida, y ser el momento de atacar. Cuando ests listo, ven a las tres de la maana y probaremos suerte. Estaremos en el bar. + + + Lo pensar. + + + Bueno; si te decides, psate por el bar sobre las tres de la maana. Es el momento en el que la quimera vuelve a su guarida a dormir. + + + Eh, cmo andas? Pareces descansado. + + + Ah, estupendo. El mundo es un pauelo. + + + T dirs! Es la hora de atacar a la quimera. + + + Te han entrado nervios por lo de la cacera? + + + Trapper me pidi que os ayudase a dar caza a la quimera. + + + Ya veo, tan visceral como siempre. La cosa es que por fin hemos localizado a la quimera. Por desgracia, Cangrejo sigue mal y Danila no ha vuelto... as que estamos los tres. Pero si Trapper te eligi, debes de ser buen cazador. Mira: tras una noche de caza, la quimera vuelve a su guarida sobre las tres de la maana. Entonces caer profundamente dormida y ser el momento de atacar. Cuando ests listo, ven a las tres de la maana y probaremos suerte. Estaremos en el bar. + + + Me quieres dejar en ridculo? + + + Eso ya lo haces solito. Y los ridculos requieren educacin. + + + Es igual. El mundo es pequeo y la Zona lo es an ms. Ya volvern a cruzarse nuestros caminos. + + + Venga... Largo de aqu. En Skadovsk no hay peleas que valgan. + + + Ya, vale. + + + Lo admito, me he equivocado, pero t incumpliste las normas. + + + Ah tienes la Zona, para ti. Venga, djate ya de tanta charla. + + + Menudo idiota estar hecho si dej escapar el artefacto. + + + Vale, no te pongas a llorar ahora. De todo se aprende. Y para que esta leccin no se te olvide, te invito a una cerveza. Vers cmo te anima. + + + Yo nunca digo que no. + + + No, gracias. No me hace falta que me inviten. + + + Pero qu cojones te has credo?! Cierra el pico y quietecito! Dame el artefacto, idiota! + + + Gilipollas. Qudate el artefacto... Ojal se te atragante. + + + Que te jodan. + + + Oye, colega! hay un artefacto con poderes curativos. Lo necesito ya. Un amigo mo est a punto de morir por esta condenada enfermedad. Nuestras medicinas son intiles. Intent hacerme con ese artefacto, pero me top con una anomala de gas. No lo habrs visto, verdad? + + + Si tanto significa, ah tienes. + + + Gracias, hermano! No lo olvidar. + + + Cudate. + + + Tengo uno, pero lo necesito para m. + + + Oh, venga ya! Mi amigo... se est muriendo! + + + En la Zona, hay que sobrevivir. Cudate. + + + No, no lo he visto. Cudate. + + + Ese artefacto no te har ningn bien, puedes creerme. + + + Si tanto lo necesitas, aqu lo tienes. + + + Gracias, hermano! No lo olvidar. + + + Cudate. + + + Ya veremos. + + + No tengo nada que hablar contigo. + + + Por qu vives en este cubo de basura? + + + Es un arca! Recurdalo. Lo hars, si quieres sobrevivir! Cuando venga una oleada, no te alejes. Aqu puede que sobrevivas. Ningn mutante conseguir pasar. + + + Has hablado de una oleada... + + + S, la oleada de mutantes que arrasar y despoblar la Zona! Y a los pobres infelices que sobrevivan, les espera una emisin descomunal! Fulminar a todo ser vivo de la Zona... excepto a los que estn preparados. + + + De dnde has sacado a este perro? + + + Es Lassie. Una monada... Si no fuese por ella, ya me habran devorado por la noche hace tiempo. Malditos mutantes... Los odio! En cuanto cierras los ojos, empiezan a acecharte con sus repugnantes garras, colmillos y tentculos. + + + Necesito una Brjula. Sabes dnde podra encontrarla? + + + Esa mierda no te salvar cuando los mutantes te ataquen por sorpresa. Anda, toma esto y desaparece de mi vista. + + + Gracias. + + + Sabes algo de los helicpteros siniestrados? + + + Solo de uno de ellos: que est en la meseta en una zona plagada de snorks. Voy a disparar a unos cuantos cada dos o tres das. Por qu me miras as? No puedo acabar con toda la guarida de una tacada. + + + Cmo se va a la meseta? + + + T tambin quieres abatir a unos cuantos snorks, eh? Genial... Yo te llevar. + + + En marcha. + + + En otra ocasin. + + + Un stalker. + + + Aj. Qu buscas? + + + No te incumbe. + + + Yo te llevar, pero qudate aqu por ahora. Hay una emisin, entiendes? Una emisin! + + + Yo he estado en la guarida. + + + S? No hay modo de apaciguarlos. Cada vez hay ms mutantes, y un buen da atacarn! Arrasarn con todos los de la Zona que no estn preparados! + + + Oye, em... No tendrs una Brjula, por casualidad? + + + Crees que eso te proteger de una emisin? Je... Pues cgela y largo! + + + Gracias. + + + Quin eres? + + + Un stalker. Ya nos conocemos. + + + No me acuerdo. En fin, qu necesitas? + + + Un stalker, sin ms. + + + Ya veo. Buscando refugio en el arca? Ponte cmodo. + + + No te incumbe. + + + Ah, eres t. Qu quieres? + + + No tendrs por casualidad una Brjula de sobra? + + + Hblame de las anomalas. + + + Cuando te aproximes a una anomala, ten en cuenta que har mucho calor, el aire se llenar de gases txicos o se producir un punto crtico de radiacin. Tambin pueden darse trastornos psquicos, pero no voy a entrar en detalles. Depende de la naturaleza de la anomala: calor, gas, electricidad... o gravedad, aunque espero que no te toquen de sas. Tambin hay anomalas mviles, pero eso es harina de otro costal. + + + Hblame de las anomalas de calor. + + + Si ves una especie de luz tenue, como el vapor que desprende el suelo en los das clidos de verano, eso es una anomala de calor. Al contacto, se prende una llama extremadamente abrasadora. Al principio, se crea que eran chorros de gas natural, pero esa teora ya no se sostiene. + + + Hblame de las anomalas de gas. + + + Esta anomala debe su nombre a los extraos y continuos procesos qumicos que conlleva. Produce un cido que corroe la piel en cuestin de segundos, as como gases txicos que te comen los pulmones a la misma velocidad. Por suerte, es fcil detectarlas al aire libre, pero cuando te adentras en un tnel oscuro... ms te vale rezar. + + + Hblame de las anomalas elctricas. + + + Un tipo de anomala muy interesante que acumula una considerable cantidad de electricidad esttica. Los stalkers suelen aprovecharse de que las anomalas elctricas pueden descargarse con cualquier objeto metlico. Lanzan algo y pasan corriendo antes de que vuelva a cargarse. Yo prefiero rodearlas; la fase de recarga es demasiado rpida. + + + Hblame de las anomalas gravitatorias. + + + Son tpicamente estacionarias. Cuando miras a un punto concreto y ves los objetos de atrs distorsionados, ah est. Y ms te vale guardar las distancias. Las tres variedades conocidas son de efecto instantneo y se activan al contacto. Los Trampolines lanzan por los aires cualquier cosa, normalmente con fuerza. Los Vrtices hacen lo contrario: succionan y aplastan con una presin terrible para escupir fragmentos sueltos unos segundos despus. Los Remolinos elevan a sus vctimas para hacerlas girar y destrozarlas. Son finales desagradables de cualquier modo... + + + Hblame de las anomalas mviles. + + + Personalmente, solo me he topado con un Cometa y un Tesla. El primero es una bola de fuego de un metro de dimetro, ms o menos, pero te aseguro que el calor se nota a mucha ms distancia. El otro es, a falta de una descripcin mejor, un relmpago en forma de bola. Como una esfera de naturaleza elctrica. Ambas anomalas se mueven constantemente, pero con un recorrido cerrado. Yendo con cuidado, es fcil rodearlas... pero no te desconcentres. + + + Vale, olvdalo. + + + Hblame de ti. + + + Por algo me llamo Piloto; solo uso rutas seguras. No tengo agallas para reunir artefactos ni para enfrentarme a bandidos, as que... Todo el mundo debera usar su talento para beneficio de otros. Y todo talento tiene un precio. + + + Hblame de las emisiones. + + + Tengo unos mapas de la zona entre Zaton y Jpiter. Quieres echar un vistazo? + + + A ver... Caramba, son muy detallados. En nuestro trabajo, los detalles marcan la diferencia entre la vida y la muerte. Bien! Segn esto, hay una ruta segura justo entre Skadovsk y Yanov. Voy a copiarme los datos en mi PDA, si no te importa. Puedo ofrecerte un buen descuento. + + + No necesitars un gua? Ya sabes, que te indique cmo evitar las anomalas y te mantenga a salvo de emisiones. Piloto a tu servicio. + + + Necesitas ayuda de un gua? + + + Me alegro de verte. Qu puede hacer por ti el viejo Piloto? + + + Otra vez de viaje? + + + Muy buenos das. No te gusta echar races, eh? Estoy a tu disposicin. + + + Hola. Si necesitas un gua, soy tu hombre. En cuanto la emisin remita. Entretanto, podemos matar el tiempo hablando de anomalas. + + + Me temo que, ahora mismo, no podra hacer gran cosa como gua. La emisin est en su plenitud. + + + Cunto por ir a la estacin de Yanov? + + + Me temo que es un largo camino, as que el precio es 3.000. + + + Muy bien, en marcha. + + + No llevo tanto encima. + + + An no puedo irme. + + + Con tus mapas, solo 1.000. + + + Muy bien, en marcha. + + + No llevo tanto encima. + + + An no puedo irme. + + + Es un largo camino, as que el precio es de 3.000. Podemos irnos en cuanto la emisin remita. + + + Con tus mapas, solo 1.000, pero hay que esperar a que pase la emisin. + + + Puedes llevarme a Pripyat? + + + No. Todo el mundo tiene su especialidad. Ves a Garry ah? Creo que podr ayudarte. + + + No, personalmente no, pero por 6.000 puedo llevarte a la estacin de Yanov y negociarlo todo con Garry. Desde ah, l te llevar a Pripyat. Qu te parece? + + + Vale, venga. + + + No llevo tanto encima. + + + An no puedo irme. + + + No, personalmente no, pero por solo 4.000 puedo llevarte a la estacin de Yanov y negociarlo todo con Garry. Desde ah, l te llevar a Pripyat. Qu te parece? + + + Vale, venga. + + + No llevo tanto encima. + + + An no puedo irme. + + + No. Todo el mundo tiene su especialidad. Ves a Garry ah? Creo que podr ayudarte cuando pase la emisin. + + + No, personalmente no, pero por 6.000 podra llevarte a la estacin de Yanov y negociarlo todo con Garry. Desde ah, l te llevar a Pripyat. En cuanto remita la emisin, claro. + + + No, personalmente no, pero por solo 4.000 podra llevarte a la estacin de Yanov y negociarlo todo con Garry. Desde ah, l te llevar a Pripyat. En cuanto remita la emisin, claro. + + + Puedes llevarme a Pripyat? + + + Pripyat? No. Ya tengo suficiente demanda con mi actual ruta, como para ocuparme de otra. Pero tengo un buen amigo que trabajaba en la central de Jpiter. Me dijo que hay unos tneles bajo la planta que llevan a Pripyat. No saba mucho ms, pero pensaba empezar a investigar en el departamento administrativo de la central. + + + No. Si quieres ir para all, tendrs que buscar esos tneles que hay bajo la central de Jpiter. + + + Cunto por ir a Skadovsk? + + + Como hay que dar un rodeo, el precio es de 3.000. + + + Muy bien, en marcha. + + + Ando un poco justo ahora mismo. + + + An no puedo irme. + + + Con la nueva ruta, son solo 1.000. + + + Muy bien, en marcha. + + + Ando un poco justo ahora mismo. + + + An no puedo irme. + + + Como hay que dar un rodeo, el precio es de 3.000. Podemos irnos en cuanto la emisin remita. + + + Con la nueva ruta, solo 1.000, pero hay que esperar a que pase la emisin. + + + Adnde puedes llevarme? + + + A la estacin de Yanov, cerca de la central de Jpiter. Y luego de vuelta a Skadovsk. Prefiero conocer bien una ruta a presumir de saber muchas. + + + He desbaratado la transaccin de armas de los bandidos. + + + Gracias. Me estremezco solo de pensar en los 90 con sus matones armados con lanzagranadas... Anda, toma. El dinero siempre viene bien. + + + Estoy buscando a Urogallo. bamos a reunirnos aqu. + + + Urogallo te dej un mensaje. Dijo que se diriga a las gras del puerto. Y que saba algo nuevo de los stalkers desaparecidos. + + + Urogallo ha muerto. Tremor lo mat, como a los dems stalkers... Y Tremor tambin ha muerto. + + + Tremor? Maldita sea. Tenamos la serpiente delante de nuestras narices. Podra habernos pasado a cualquiera... O sea, que si Urogallo... Gracias, amigo. Has salvado a todo el campamento. Toma. + + + Tremor?! Lo siento, amigo, no me lo trago. Si hubiese algn tipo de prueba, quizs... Pobre Urogallo. + + + Toma la PDA de Tremor. Contiene pruebas que demuestran su participacin. + + + Maldita sea. Tenamos la serpiente delante de nuestras narices. Podra habernos pasado a cualquiera... O sea, que si Urogallo... Gracias, amigo. Has salvado a todo el campamento. Toma. + + + Te ayudar a deshacerte de los bandidos. + + + Magnfico. Ve al puesto de guardabosques. Ah estn nuestros chicos. Ellos te informarn mejor. + + + Qu sabes sobre Nimble? Podra estar negociando con armas robadas? + + + No lo conozco mucho, pero dudo que est metido en eso. Si comercias con mercanca ilegal, no coges pedidos por adelantado. + + + Saba que acabaran desenmascarndome. Solo era cuestin de tiempo. + + + Tremor?! Me puedes explicar de qu va esto? + + + No pienso seguir escondindome. Para qu? Ya lo sabis, fui yo quien mat a Urogallo... Y a Danila y a los otros stalkers desaparecidos. + + + Vale, entendido. Basta de chchara. + + + No has conseguido nada. Nadie me atrapar nunca! + + + Por qu lo hiciste? + + + Adiccin a la hemoglobina. No se lo deseo a nadie. No hay forma de superarla. A veces te sientes capaz de estar un mes entero sin probar una gota de sangre. De hecho, me ha ocurrido, pero luego... Algo en tu interior estalla y necesitas desesperadamente compensar esa carencia. + + + Cmo has conseguido mantenerlo en secreto? + + + Cuando trabajaba en la clnica de ciruga, era fcil ocultarlo. Siempre sobraba sangre de algn donante. Pero en la Zona era otra historia... Crea que este entorno tan hostil me hara dejar a un lado esta adiccin, pero me equivocaba. Me entr ms ansia que nunca y no poda pensar en otra cosa. Decid hacer que los asesinatos pareciesen ataques de chupasangres. Normalmente, elega a objetivos ya heridos. + + + Y qu pasa con Danila y Urogallo? + + + Danila vino a ayudar tras el ataque de chupasangres. Estaba herido. Cuando Urogallo y l decidieron ir a cazar chupasangres, me di cuenta de que yo no iba a aguantar mucho. Aun as, intent proteger mi secreto, pero mi determinacin ceda por momentos. Luego, Urogallo se dio cuenta; entendi la situacin e intent matarme. Lo que nos lleva a este momento. Lo siento por esa gente, pero eso no les devolver la vida. + + + Vale, entendido. Basta de chchara. + + + No has conseguido nada. Nadie me atrapar nunca! + + + Te escucho. + + + Hola, necesitas ayuda? + + + Hola. + + + Necesito asistencia mdica. + + + A ver, que eche un ojo... + + + Bueno, ya est. Puedes irte. + + + Eh! T tambin andas buscando artefactos? + + + Oye! Recogiendo artefactos, eh? Bueno, debera de haber para todos. + + + Oye! T tambin quieres unos cuantos artefactos, eh? + + + Hola. Vas a llevarle ese artefacto a Barbas? + + + Puede que s, puede que no. A ti qu te importa? + + + Lo necesito. + + + Y yo... Pero te lo cambio por un arma nueva. Una avanzada. + + + Tengo una buena arma. Hacemos el cambio? + + + Bien. + + + No, esto no vale. + + + Pues desaparece de mi vista. + + + De acuerdo. + + + Nada, la verdad. + + + Qu sabes de Nimble? + + + Ah, pues no mucho... No hacemos negocios. Mientras l anda peinando la Zona en busca de la superarma definitiva, yo vendo cientos de las normales. Adems, es bastante engredo. Se niega a tratar con los matones locales. Es un comerciante psimo, lo cual me favorece, la verdad. + + + Barbas me cont que tenais un acuerdo distinto. + + + Y una mierda distinto! Ese cerdo seboso ya casi ni entra en sus pantalones! Habra que recordarle quin manda aqu... Oye, hay un tipo muy influyente en Zaton llamado Sultn. Hazle una visita; l te dir qu hacer. + + + Ir a hablar con Sultn. + + + Djate de sultanes. Dame mi parte ya! + + + Em... Vale. Aqu est el dinero. Pero recuerda: Barbas te est engaando. + + + Necesito informacin. + + + Qu quieres saber? + + + Necesito gas venenoso, y me han dicho que te pregunte a ti. + + + Pues s. Te informo por 2.000. + + + Toma. + + + Pues mira: una vez, una columna de transporte militar cargada de gas se qued por el camino. Nadie sabe qu ocurri, pero los tanques de gas deberan seguir por ah. Todo claro? S, tambin debe de haber documentos. Si los encuentras, tremelos e igual recuperas tu inversin. + + + Es demasiado para m. + + + T vers. + + + Dnde puedo encontrar a un stalker llamado Urraca? + + + Si quieres te aconsejo... por 1.000. + + + Toma. + + + Aqu no lo vas a encontrar, pero un pajarito me ha dicho que igual anda por Jpiter, tal vez cerca de la estacin de Yanov. No olvides que quien deja situaciones complicadas, suele cambiar de nombre al irse a otro lado. Y es probable que tambin tenga otro aspecto. La gente andar buscndolo entre stalkers! + + + Estoy buscando a Snag. Sabes dnde puedo encontrarlo? + + + Te lo dir por 1.000. + + + Toma. + + + Snag es un idiota avaricioso; se ha dejado embaucar por gente peligrosa y eso no tiene vuelta atrs. Deberas buscarlo por Jpiter. No tiene otro sitio adonde ir y t no eres el nico que anda buscndolo. + + + Qu sabes de los helicpteros siniestrados? + + + Mmm... Por aqu, todo el mundo sabe dnde cayeron. Uno est por la meseta sur, el segundo fue a parar al pantano y el tercero acab en las torres de la subestacin. Qu sitio te interesa? + + + La meseta sur. + + + La subestacin. + + + El pantano. + + + Eso es todo sobre los helicpteros. + + + Pgame ya; me debes 200. + + + Toma. + + + Pues ese helicptero cay justo al lado de una cueva de snorks. Por lo que s, los militares salieron de ah. No todos, pero casi. Eliminaron a los mutantes y descendieron. Por cierto, si vas para all arriba, puedo ofrecerte una buena escopeta y algo de municin para cargarte a esas bestias. El problema es que el nico que sabe subir a esa meseta es el pirado de No. + + + Es demasiado para m. + + + T vers. + + + Te lo dir por 200. + + + Toma. + + + Te lo dir por 200. + + + Toma. + + + Ahora mismo no. + + + Tienes trabajo para m? + + + En primer lugar, hay un pequeo trabajo con los cientficos; en segundo, necesitamos informacin del campamento de mercenarios; y en tercero, el comerciante sigue necesitando proteccin. Hay mucho donde elegir. T mismo. + + + Hblame del trabajo con los cientficos. + + + Tienes que encontrar tres detectores Veles y llevarlos al bnker de los cientficos cerca de Jpiter. Cuando llegues all, ve a hablar con Novikov. Dijo que iba a hacerles unos ajustillos. Cuando los detectores comiencen a dar beneficios, nos los repartimos por igual, vale? Pues venga. Est chupado. + + + Trato hecho. + + + Quiz la prxima vez. + + + Hblame del campamento de los mercenarios. + + + Una especie de mercenarios apareci en la planta de tratamiento y me muero por saber qu andan tramando... Culate en su campamento y recaba toda la informacin que puedas sobre sus planes. PDA, documentos... Treme todo lo que encuentres, entendido? Venga. Es un juego de nios, si no llamas la atencin. + + + De acuerdo. + + + Ahora no. + + + Hblame de lo de proteger al comerciante. + + + El comerciante necesita guardias para un negocio. No tienes que hacer casi nada, solo quedarte ah y hacer que todo parezca de fiar... Entendido? El comerciante te estar esperando en el puesto de guardabosques para informarte. + + + De acuerdo. + + + Espera. + + + En otra ocasin. + + + Hay un trabajillo con los cientficos. Eso por un lado y, por otro, necesito informacin del campamento de mercenarios. T eliges. + + + Hay un trabajillo con los cientficos. Eso por un lado y, por otro, el comerciante sigue necesitando un guardia. Venga, elige. + + + Necesito que alguien consiga informacin del campamento de mercenarios. Eso por un lado y, por otro, el comerciante sigue necesitando un guardia. Venga, elige. + + + Un trabajillo con los cientficos. Est chupado, en serio: "treme esto", "alcanza aquello"... + + + El comerciante sigue necesitando un guardia para una transaccin comercial. No puede ser ms fcil. + + + No hay ms trabajos. + + + Creo que te puede interesar. + + + Qu tienes? + + + La PDA de No. + + + El chiflado de la barcaza? Te dar 1.000. + + + Trato hecho. + + + No, gracias. Me la quedo, por ahora. + + + Cuidado, no vaya a agujerearte el bolsillo... + + + La PDA de un mercenario llamado Hook. La encontr en la plata de tratamiento de basuras. + + + Te dar 1.000. + + + Trato hecho. + + + Muy interesante... Buen trabajo, stalker. + + + La PDA de un mercenario llamado Ridge. La encontr en la plata de tratamiento de basuras. + + + Te dar 1.000. + + + Trato hecho. + + + Una PDA con informacin de los alijos de Monolith. + + + Te dar 5.000. + + + Trato hecho. + + + La PDA de un hombre conectado con el cliente de los mercenarios. + + + Te dar 4.000. + + + Trato hecho. + + + La PDA de uno de los fundadores de Deber, el general Tachenko. + + + Te pagar bien algo as: 2.500. + + + Trato hecho. + + + La PDA de un mercenario. + + + Te dar 1.000. + + + Trato hecho. + + + La PDA de Morgan. + + + Informacin sobre el comerciante de Deber que vende armas a diestro y siniestro. Para algo valdr. Te pagar 4.000. + + + Trato hecho. + + + Una nota del escondite del grupo de Strelok dirigida a Ghost. + + + Te dar 500. + + + Trato hecho. + + + Una nota del escondite del grupo de Strelok dirigida a Strelok. + + + Te dar 500. + + + Trato hecho. + + + Una nota del escondite del grupo de Strelok dirigida a Fang. + + + Te dar 500. + + + Trato hecho. + + + Documentos de la central de Jpiter, una carpeta con la orden de evacuacin general. + + + Te dar 750. + + + Trato hecho. + + + Documentos de la central de Jpiter, una anotacin en una libreta. + + + Te dar 750. + + + Trato hecho. + + + Documentos de la central de Jpiter, un programa de entregas. + + + Te dar 750. + + + Trato hecho. + + + Documentos de la central de Jpiter, una carta con el decreto para transportar el objeto 62 solo a travs del paso subterrneo. + + + Te dar 750. + + + Trato hecho. + + + No. Con Sultn involucrado, prefiero no meterme. + + + Veamos... S, es buen material. Me lo vendes? + + + Claro, a m no me sirve de nada. + + + Una libreta del campo de mercenarios de la planta de tratamiento de basuras. + + + Te ofrezco 2.000. + + + Trato hecho. + + + Je... Llvaselo a Barbas o a los cientficos. No me gusta la mercanca dudosa. No me atrae la idea de despertarme enfermo por las radiaciones. + + + Y ah es donde debera estar. No me gusta asumir riesgos innecesarios. Quin sabe? Puede que esa cosa origine un campo de anomalas a su alrededor a medianoche. Por qu no se lo llevas a los cientficos para que lo estudien o algo? + + + Y yo tengo una cabeza nuclear en el armario de la cocina! Pero puedes rerte a costa de los cientficos. Les chiflan esas cosas! + + + La PDA de Snag. + + + Veamos... Mmm... Nada especial. Seguro que ya habrs limpiado ese escondite, as que te doy 200. + + + De acuerdo. + + + La PDA de uno del equipo de Sultn. + + + Interesante... Podra ser til. Te dar 1.000. + + + De acuerdo. + + + El mdulo de memoria de un vehculo areo no tripulado. + + + Un descubrimiento interesante... pero no te har rico. Quin sabe si ser el primero en leer la informacin que contiene? Te ofrezco 500. + + + Hecho. + + + Ahora mismo no. + + + Y esos detectores... + + + S? + + + Dnde puedo encontrarlos? + + + No s; t ve a buscarlos. + + + Tengo los detectores. + + + Y qu haces an aqu? Llvaselos a Novikov al bnker de los cientficos, cerca de Jpiter. + + + Le he llevado los detectores a Novikov. + + + Genial. Ahora esperaremos a que les haga unos ajustes. Novikov prometi que nos los mandara con alguien de confianza cuando acabase. + + + Tenemos problemas. Nuestro pequeo negocio est un poco en el aire. Novikov hizo un trabajo extraordinario con esos detectores: aument la distancia de funcionamiento, mejor la sensibilidad y dems... Con estos detectores, puedes dar mil vueltas a los otros buscadores de artefactos. Cerr un acuerdo con Barbas para que los stalkers que contrate los usen. + + + Y? + + + El acuerdo consista en repartir el botn a partes iguales, pero los stalkers se negaron a traernos nuestra parte. Tienes que ir a ver a Barbas y convencerle de que cumpla. T tambin querrs tu parte, no? + + + Necesito tu nuevo detector. + + + Ja. Y yo necesito un arma que lance pepinazos. Si tienes algo bueno y caro, te lo cambio. + + + Eso est hecho. + + + No, gracias. + + + Necesito tu nuevo detector. + + + Es una amenaza? Yo tambin lo necesito, obviamente. + + + No lo entiendes, verdad? El tuyo es el ltimo. No me cost demasiado deshacerme de los otros dueos. + + + Hiciste eso? Te los cargaste? Anda, toma y djame en paz. + + + Eh, y si te vas a tomar por culo? + + + Igual en otro momento. Ahora te estoy pidiendo amablemente que me des el detector. + + + Y yo que te vayas a tomar por culo. + + + Stalker, quieres dinero? + + + En qu consiste el trabajo? + + + Vers, escond un botn en un viejo Zaporozhets, pero hubo un terremoto y el coche qued sepultado. He ido a echar un ojo y no parece inalcanzable, pero... em, hay mutantes. Ya sabes, snorks. Lo creas o no, no me dan miedo ni los controladores, pero esos condenados snorks me resultan demasiado espeluznantes y asquerosos. Si consigues recuperar un contenedor con cierre de seguridad, repartimos el botn. + + + Trato hecho. + + + Gracias, stalker. + + + ste es tu contenedor? + + + Eh, s! T s que sabes! + + + En otra ocasin. + + + Una pena... + + + No, ahora estoy muy ocupado. + + + Vale, como quieras. + + + Y? Alguna novedad? + + + Qu quieres? No ves que estoy ocupado? + + + Eh, sa es mi arma! De dnde la has sacado, ladrn? Me la robaron el otro da. + + + De qu ests hablando? La compr hace poco. + + + No s cmo te habrs hecho con ella, pero es la que me robaron, as que, por favor, si no quieres que me enfade, dame el arma y aqu todos tan contentos. + + + Vale, aqu tienes. No quiero los. + + + Dmela. + + + El arma es ma. + + + Conque s, eh? Te lo advierto, tengo amigos! Aqu todos me conocen! Crees que durars mucho en la zona con mala reputacin, stalker? Qu me dices, eh? No esperes ayuda de nadie de por aqu, porque no recibirs una mierda! + + + Que te den! + + + Seguro que es tu arma? + + + Pues claro. No es que sea muy comn en la Zona, no? Es la ma, no cabe duda. + + + Has cometido un error. Desdcete y olvidemos este asunto. + + + Qu? Que yo he cometido un error? Piensa antes de hablar, gilipollas! Si quieres guerra, todo el mundo estar de mi lado. Devulveme el arma y todos tan contentos. Ser bueno y no le contar ni una palabra a nadie. + + + Qu?! Se te ha ocurrido la idea de que te abra un agujero en la cabeza con la puta arma en este mismo instante? + + + Va, clmate. Este intercambio se nos ha ido de las manos, pero ya me he tranquilizado. No te pongas as. Habr cometido un error. + + + En cuanto al contenedor... + + + Lo has encontrado? + + + An estoy en ello. + + + He decidido no seguir buscndolo. + + + Una pena... + + + Bien, veamos... + + + Por supuesto, un segundo... + + + He decidido quedarme el contenedor. + + + Sers...! sta me la pagas, ya lo vers! + + + Aqu tienes el contenedor. + + + Vale, pues vamos a dividir el botn, hace? + + + Hace. + + + A ver lo que tenemos por aqu... Mi vieja y letal Fora. Hace mucho, mi to la modific con sus propias manos. Es casi como una herencia familiar... S, me la tengo que quedar. + + + No, dmela! + + + Eh, bueno, vale... + + + A ver qu ms hay. + + + No, ya tienes suficiente. + + + A ver qu ms hay. + + + Vale, para ti. Qu ms hay? + + + Bien... Veamos. Un excelente kit mdico, incluso para plantar cara a un oso o un controlador. Para m... + + + Pues me vendra bien un kit mdico! + + + Mmm... vale. + + + A ver qu ms hay. + + + No, ya tienes suficiente. + + + A ver qu ms hay. + + + Puedes quedrtelo. Qu ms hay? + + + Vale... Caramba. Dudo que alguna vez hayas tenido en tus manos un arma as. Una AKM-74/2U mejorada. Le di a un tipo de Deber no s cuntos botiquines para echarle el guante. Fue cuando Libertad dej a un pelotn de Deber en tan mal estado que se quedaron sin medicamentos. Desde entonces, esta preciosidad me ha salvado la vida tres veces. Es para m, no hay duda. + + + Puedo quedrmela? + + + Buf... Me parte el corazn, pero un trato es un trato. Para ti. + + + A ver qu ms hay. + + + No, ya tienes suficiente. + + + A ver qu ms hay. + + + Vale, para ti solito. Qu ms hay? + + + Ooooh... Una preciosa y valiosa pieza. Este artefacto vale muchsimo! La consegu en una anomala, sabes? Y no veas si me cagu de miedo... Es mi trofeo; me cost sangre, sudor y lgrimas. + + + Creo que lo necesito ms que t. + + + Me ests matando, to... Anda, qudatelo. Espero que no olvides mi generosidad. + + + A ver qu ms hay. + + + Ya tienes suficientes cosas. + + + A ver qu ms hay. + + + Para ti. Qu ms? + + + Y por ltimo, pero no por ello menos importante... Un excelente casco hecho a mano. Hace poco, lleg un stalker nuevo a Cordn, todo un artesano. Hizo un montn de cosas chulas antes de palmarla. Este casco es una de ellas. Estas cosas no se suelen ver! Me lo quedo. + + + Mira, soy yo quien arriesg su vida contra esa horda de snorks. Me merezco ese casco. + + + Bueno... Vale, est bien. Que lo disfrutes. + + + A ver qu ms hay. + + + Ya tienes suficientes cosas. Algo me tendr que quedar yo! + + + A ver qu ms hay. + + + Vale, para ti. + + + Se acab; ya no queda ms botn. + + + Pues nada, hasta otra. + + + Ya est, pero no puedo dejar que te vayas con las manos vacas. Toma mi pistola! + + + Buena suerte. + + + A qu te dedicas? + + + Sirvo y protejo. Antes era investigador de la polica y aqu soy una especie de sheriff local. Vine con Barbas y luego l decidi montar un campamento. Por qu seguir si, de todos modos, no conocamos el camino a Pripyat? Aqu hay montones de artefactos, as que nos quedamos. + + + A quin podra contratar para proteger a los cientficos? + + + Tenemos unos cuantos buenos amigos. El grupo de Espartaco, por ejemplo. Son tipos vlidos, autnticos profesionales, muchos con experiencia haciendo cumplir la ley. Si pueden, no encontrars a nadie mejor. + + + Puede que, en el pasado, te hubiera dado algn nombre, pero ya nada. No le interesar a ningn stalker local. + + + A quin podra contratar para tomar medidas para los cientficos? + + + Hay un grupo de stalkers; Gonta es quien lleva el mando. Habla con l, puede que le interese. Les vendr bien evadirse de tanto tirotear mutantes. + + + Si Gonta estuviese aqu con su grupo, te dira que hablases con l, pero como no es as... no se me ocurre nadie adecuado. + + + Le has comprado armas a Nimble? Sabes si comercia con material robado? + + + Crees que es tan falso como para andarse con mierdas a mi espalda? No... Ni de coa. No creo que sea contrabandista. + + + Estoy buscando a Snag. Sabes dnde puedo encontrarlo? + + + Snag... Claro que lo conozco. Menudo imbcil. Algunos de los chicos lo vieron en las gras del puerto el otro da. Debe de ser su nuevo lugar favorito. Ve a mirar. + + + Hola, stalker. Te apetece hacer un dinerillo ayudando a nuestro campamento? + + + Hola, stalker. Sigues aqu? Como sigas a este paso, los chupasangres nos fulminarn a todos. + + + Luego hablamos. Tengo que ocuparme de otra cosa. + + + Qu clase de trabajo puedes ofrecerme? + + + ste es el tema: varios stalkers han desaparecido. Nadie ha odo ni una palabra de ellos, pero el otro da apareci un cuerpo. No tena signos de violencia, pero no le quedaba ni una pizca de sangre. Tremor registr el cadver; podr informarte mejor. Tiene que ser cosa de los chupasangres! Habl con el cazador Danila y fue en busca de su guarida, pero desde entonces no se le ha visto el pelo. + + + Qu quieres que haga? + + + Tienes que localizar la guarida y, si es posible, dar con Danila. Es un asunto peliagudo, pero sabr compensrtelo, vale? + + + De acuerdo. + + + Bien. De acuerdo, he marcado dos lugares para comprobar antes de nada. Las coordenadas estn en tu PDA. Yo voy a hacer unos recados y luego a comprobar el otro sitio. Te informar de lo que averige. + + + Trato hecho. + + + Creo que mejor paso. + + + Vuelve si cambias de idea. + + + No me interesa. + + + Lo mismo... Mientras haya una guarida de chupasangres por ah, nos la jugamos. Y seguimos sin tener noticias del cazador Danila. Nos ayudaras a solucionarlo? + + + Urogallo me dijo que registraste el cadver de uno de los stalkers desaparecidos. Crees que fue un chupasangre quien lo mat? + + + Pues s... Como al resto de vctimas. No hay ninguna otra criatura capaz de hacer algo as, es decir, chupar toda la sangre a alguien hasta la ltima gota. Todas las pruebas apuntan a un ataque de chupasangres. Qu otra conclusin puedo sacar? + + + Hblame de ti. + + + Soy mdico. Cirujano cerebral. Qu ms quieres saber? Puedo extirpar un hipotlamo con la precisin de un lser, pero no he recibido ningn encargo en la Zona hasta el momento. Aqu no soy ms que un mdico del montn, de los que entienden de lo suyo. + + + Te escucho. + + + Puedes desencriptar una caja negra? + + + Pues... la verdad es que no es mi especialidad. Todos esos grficos y algoritmos... No me va mucho. Dame algo basado en fsica sencilla y te lo desencripto como si nada. Retoques por aqu, ajustes por all y todo como la seda. + + + Crees que Nimble negociar con material robado? + + + Eh, para el carro... Nimble y material robado? No me lo trago. Cuando constru mi taller, Nimble fue el nico que me ayud. Y no me cobr ni una msera moneda. Me da igual lo que digan: s que Nimble es buena gente. + + + Tienes trabajo para m? + + + Ah, claro. Tengo unos cuantos trastos que no tengo tiempo de buscar. As funciona esto de los cacharros: te quita mucho tiempo. Si me traes cosas tiles, te ensear lo que es hacer mejoras. Incluso hars algo de pasta. + + + Vale, no bajar la guardia. + + + No, quiz luego. + + + Oh, claro. Necesito herramientas, recuerdas? Yo consigo ayuda y t, unas monedas. + + + Puedes desbloquear un mdulo de memoria? + + + No, que va, en eso no puedo ayudarte. La electrnica moderna y los ordenadores no son para m. Mejor busca a alguien ms joven. Maman eso desde que son canijos. + + + Puedes forzar un contenedor de acero? + + + Eso est chupado. Servicio de primera por 500. + + + Toma. + + + A ver, djame que me ocupe. Levanto esto, empujo aqu... Y voil! Listo! No hay nada que yo no pueda abrir con una palanca y un martillo. + + + No tengo tanto. + + + Vuelve cuando lo tengas. Yo de aqu no me muevo! + + + Lo pensar. + + + Tengo priva. Quieres probar? + + + No, ya no bebo. Cuando vi el objeto 62, pens: "Ya est, me tiembla el pulso". La priva no hace ms que joderte el cuerpo. No es nada saludable. Y si yo falto, quin va a conseguirte municin para tu fusil Gauss? + + + Aqu tienes otra botella. + + + Tengo una tercera, si necesitas ms. + + + Te he trado herramientas. + + + Estupendo. Cules? + + + Las de trabajo bsico. + + + De fbula! Ahora solo necesito las de trabajo profesional y las de calibracin. + + + Las de trabajo profesional. + + + De fbula! Ahora solo necesito las de trabajo bsico y las de calibracin. + + + Las de calibracin. + + + De fbula! Ahora solo necesito las de trabajo bsico y las de trabajo profesional. + + + Nada, por ahora. + + + Fantstico. Ahora, con unas herramientas de calibracin, ya voy servido. + + + Fantstico. Ahora, con unas herramientas de trabajo profesional, ya voy servido. + + + Fantstico. Ahora, con unas herramientas de trabajo bsico, ya voy servido. + + + Fabuloso! As se hace! Cul es tu secreto? Ja, ahora tengo de todo! Observa cmo se hace una ametralladora a base de mecheros! + + + He trado planos y documentacin del objeto 62. + + + Lo has conseguido! De fbula! Saba que esos malnacidos no tendran tiempo para destrozarlo todo. Mmmmm... Conque eso es lo que traman esos hijos de perra. Bien! Tengo un par de horas para zanjar este asunto. Djame el fusil Gauss; intentar meterle mano. Espera aqu; necesito un minuto para que esta preciosidad vuelva a la vida! + + + Necesito bateras para mi fusil Gauss. + + + Te hago precio de cliente predilecto: 2.000. + + + Ah tienes. + + + Lo pensar. + + + Ando un peln justo ahora mismo. + + + Has acabado con el fusil Gauss? + + + Sin pestaear. Sistema de alimentacin despejado. Si empieza a dar guerra, tremelo y lo reajusto. + + + Sigo trabajando en ello. Me gustan los trabajos artesanales. + + + Tengo un modelo de arma desconocido. + + + Cmo que desconocido? A ver, que eche un vistazo... + + + Fjate... Habas visto algo parecido? + + + Ah, eres t... Ha sido un autntico infierno, je... So que me traas algo del pasado... Menos mal que estoy sobrio como una cuba... + + + No sera esta arma la de tu sueo? + + + Buf, vaya... No ha sido un sueo, despus de todo. Este arma es un fusil Gauss, u objeto 62, como se lo ha llamado oficialmente. Fiu... Por aquel entonces, yo era empleado de la central de Jpiter. Diseaba armas, si no recuerdo mal, "basadas en el principio de la aceleracin de proyectiles por campo electromagntico". Ves esos carretes? Los hice yo. Pero cancelaron el proyecto en 2004. No encontramos una fuente energtica suficientemente compacta. + + + No es el primer disparo de este fusil. Qu puede haber cambiado? + + + Quin sabe? Para serte sincero, no me atrevera a meter un destornillador en esa batera. Hay daos mecnicos en el sistema de alimentacin. Los planos nos vendran bastante bien. El taller de pruebas en el que yo trabajaba se encargaba de la documentacin de toda la produccin. Puede que los papeles de este fusil Gauss sigan por ah. Lo curioso es que sigo teniendo la llave magntica del taller. + + + Me das la llave magntica? + + + Bueno, claro... Por qu no? Intenta no perderla. Si me traes esos documentos, igual arreglo el arma. + + + Aqu tienes tu tarjeta de acceso, sana y salva. + + + Gracias. Me trae recuerdos de los viejos tiempos... + + + Y? Em, bueno... Treme todas las armas averiadas que tengas, trajes llenos de agujeros y dems... No controlo mucho cuando estoy sobrio, pero probar. + + + Dnde estabas? Me tenas preocupado; te he buscado por todas partes. "Dnde est el stalker se?", me deca... Salud! + + + Eh, qu detalle haber venido. Ponte cmodo. Me traes algo para arreglar o algo para beber? + + + Eh! De fbula! Las manos no me tiemblan, pero mi cabeza pide ms. Srveme otro trago, joven! + + + Un poco de bro! Abre la siguiente botella! Bebamos por una causa comn. S. El vodka me devuelve la inspiracin, en serio. + + + Ojal estuviese aqu Bromista, brindaramos por Barge... En fin, que descanse en paz. Era un buen tipo, muy entregado. Duro como una roca. + + + Ojal estuviese aqu Bromista, brindaramos por Barge... En fin, que descanse en paz. Era un buen tipo, nunca te fallaba. Siempre cumpli su palabra. + + + Barge... Bromista... Cmo ha podido ocurrir? Una cosa lleva a la otra y... + + + Mmmm? Qu tenemos aqu? Maana me encargar de las ametralladoras blindadas... Poca cosa, tranquilo. Tengo que echar un trago. + + + Ese nmero sesenta y dos... Me encantara echar un ojo a los planos del circuito. + + + Una sabia eleccin, amigo. Hay que tener el arma en perfecto estado y si llevas una botella o dos encima, puedo mejorrtela que ni te cuento. Quieres que te cosa un paracadas a la escopeta? Eso est hecho, je, je. + + + Vaya, fjate! Han metido un artefacto electrosttico en la batera! Ja! Saba que haba alguna movida rara! El principio es para tontos. Ahora podr conseguir yo solito estas clulas! + + + Necesitas alguna chapucilla? + + + Esto es un galimatas. Supongo que he perdido la prctica con los textos tcnicos... + + + S, mira, vine a Zaton con dos amigos: Barge y Bromista... Rebosbamos juventud y vitalidad! Estbamos deseando echar mano a montaas de artefactos. Nos moramos por ser los primeros, los ms rpidos! Cuando vi esa mirada encendida, pens que no acabaran bien. Es bonito hacer fortuna, claro, pero no a costa de lanzarse de cabeza a las fauces de un mutante. + + + Y qu pas? + + + Pues... andbamos por ah una noche, bebiendo, y comenzamos a discutir sobre lo que bamos a hacer: que si nos quedbamos, que si nos bamos, que si adnde... Ninguno ceda y nos pusimos cabezotas. La cosa se calent un poco y, cuando acab la discusin, nos fuimos cada uno por nuestro lado. Les dije que an no haban vivido nada... y alguna que otra cosa peor. Ay... Si pudiese volver a verlos, les pedira perdn. Volveramos a estar juntos como antes y recordaramos los viejos tiempos... + + + Puedo pedirle perdn a Barge de tu parte si me lo encuentro. + + + Eso estara bien. + + + Puedo pedir perdn a tus amigos de tu parte si me los encuentro. + + + Eso estara bien. + + + Puedo pedirle perdn a Bromista de tu parte si me lo encuentro. + + + Eso estara bien. + + + He encontrado esta PDA. Echa un vistazo. + + + Para qu necesito una PDA? De quin es? + + + Barge ha muerto?! No puede ser! Dios! Pero si no haba quien pudiera con l... Oh, Barge... Descansa en paz. Espero que Bromista est bien. + + + Barge ha muerto?! No puede ser! Dios! Pero si no haba quien pudiera con l... Oh, Barge... Y Bromista tambin... Descansad en paz. Cmo ha podido ocurrir...? + + + Han muerto?!... No puede ser! Dios! Pero si no haba quien pudiera con Barge... Y Bromista... Oh... No volveremos a escuchar vuestros chistes. Descansad en paz. Cmo ha podido ocurrir...? + + + Puedes contestar a un par de preguntas? + + + Claro. + + + Cundo estar listo mi pedido? + + + Depende de lo complejo que sea. Suelo tardar un da, a veces menos. + + + Hblame de ti. + + + No hay mucho que contar. Lo he pasado bien y mal, como casi todo el mundo. Me he topado con un par de anomalas, unos bandidos me hicieron rehn... Vine a la Zona jovencito, hace mucho. Al principio, coga encarguillos: antirradiaciones, municin antiblindaje, esa clase de cosas. Luego trabaj para Sidorovich... para compensarle por salvarme el culo. Mientras le sacaba las castaas del fuego, hice algunos contactos tiles y me establec por libre en cuanto pude para empezar a encargarme de pedidos exclusivos. Hasta ahora, he salido airoso, pero siento que la suerte se me acaba. Y al mismo tiempo, no quiero zurrarme ms por pasta. + + + Gracias, lo entiendo. + + + Ser un placer ayudar. + + + Me has vendido un arma robada! + + + De qu ests hablando? No comercio con material robado. Yo negocio directamente. Si no me crees, habla con cualquiera de la base y te dirn que soy un comerciante honrado que nunca ha engaado a nadie. + + + Me encontr con un stalker que asegura que esta arma es suya. + + + Y cmo se llama? + + + Snag. + + + Y a ti qu ms te da? + + + Me interesa. Alguien te est engaando, stalker. + + + Eso ya lo veremos. + + + Alguien te est engaando, stalker. + + + He venido a recoger mi pedido. + + + Aqu est tu guila Esteparia. Ha resultado ms difcil de lo que pensaba. Un aficionado a las pistolas mostr mucho inters y la he conseguido por los pelos. Fjate: es un arma hecha a mano, ajustada pieza a pieza con una precisin incomparable. Nunca has pensado cmo sera la pistola de francotirador perfecta? Pues as. Me debes 2.800 ms. + + + Vale, aqu tienes. + + + Toma. Es un placer hacer negocios contigo. + + + No llevo tanto encima. + + + Vale, te guardar el arma de momento. Espero que consigas dinero pronto. + + + No quiero comprarla. + + + Si te niegas a recoger el pedido, no me fiar de ti la prxima vez. Tendr que incluir una tasa de riesgo en el precio y pedirte un adelanto an mayor. + + + Aun as, no pienso quedarme el pedido. + + + Vale, como quieras. + + + Lo pensar. + + + Claro, t decides. Yo te guardar el arma entretanto. + + + Aqu tienes tu guila Esteparia de ultraprecisin. Me debes otros 2.800. + + + Contempla la Alpina, una autntica belleza. Puedes dar por seguro que no hay otra pistola igual en la Zona. Un modelo nico de una partida muy limitada encargada para una sola unidad especial. No fue fcil conseguirla; hasta tuve que recurrir a uno de mis socios del otro lado del ocano. Tiene un cargador de gran capacidad, can de acero ultrarresistente y cuerpo de polmeros superfuertes. Dame los otros 2.800 y esta preciosidad es tuya. + + + Aqu est tu pistola Alpina con cargador de gran capacidad. Dame los otros 2.800 y esta preciosidad es tuya. + + + Mira, te presento a March. Esta pistola perteneci a un mercenario llamado Perrolobo. Es un arma compacta de gran calibre y corto retroceso con cerrojo ligero. Perrolobo era escoria, pero entenda de armas, eso hay que admitirlo. Dicen que su truco favorito era ir volndole los miembros a sus vctimas, para acabar con sus cabezas antes de que cayeran al suelo. En fin, que me debes 2.800. + + + Aqu tienes tu pistola March de fuego rpido. Me debes 2.800 ms. + + + Aqu tienes: Cuchilla, un subfusil. Te digo una cosa: no te fes de las apariencias. Es un modelo nuevecito que an no se fabrica en serie. Un prototipo recin salido de la armera. Los diseadores queran crear una nueva generacin de arma de corto alcance: una combinacin de gran calibre, disparo rpido y precisin. Me debes 8.000. + + + Aqu tienes: Cuchilla, un subfusil de fuego rpido. Me debes 8.000. + + + Aqu tienes una autntica joya: Mosquetn. Una autntica escopeta militar. Capaz de disparar fuego automtico sin retroceso gracias a un sistema de absorcin de sacudidas. 8.000 y es tuya. + + + Aqu est Mosquetn, una escopeta automtica. 8.000 y es tuya. + + + Creo que es justo lo que necesitas. Fulminadora, toda una innovacin. Iban a enviar todo el lote a frica Central, pero me qued una "muestra" como favor especial de unos amigos. Es una escopeta automtica con cargador grande y un excelente ndice de disparo. Tuya por solo 8.000. + + + Claro. Escopeta automtica Fulminadora con un cargador de gran capacidad. Por 8.000. + + + Claro. Admira a Tormenta, subfusil y lanzagranadas, todo en uno. Este prototipo es una versin modificada de un arma convencional diseada para unidades especiales que operan en la Zona. Innovacin tcnica punta para nuestros hermanos eslavos. 16.000 de los grandes y es tuya. + + + Claro. Aqu est Tormenta, un subfusil y lanzagranadas con cargador de gran capacidad por 16.000 ms. + + + Aqu est: GP37, un innovador fusil de asalto. Preciso, fiable y prctico, como mira ptica integrada. Fue de un observador de la ONU. Vino con su grupo a la Zona para investigar. Sin embargo, la situacin se complic. 16.000 y el fusil es tuyo. + + + Aqu est: GP37, un innovador fusil de asalto. Vale 16.000. + + + Un segundo. Aqu tienes un fusil modular FT-200M, la nia bonita de los fabricantes de armas belgas. Preciso, verstil, til para diestros y zurdos, viene con mira ptica y lanzagranadas. Lo consegu de unos observadores de la ONU poco afortunados. Sern 16.000 ms. + + + Aqu tienes un fusil modular FT-200M. Sern 16.000 ms. + + + Aqu est Marea. Partiendo de un silencioso fusil de francotirador, fue especficamente diseado para que los militares se enfrentaran a los zombis. Marea sacrifica cadencia de disparo por potencia de detencin, lo que permite a un francotirador abatir uno a uno a los zombis sin revelar su posicin. Pero claro, luego vieron que los stalkers se bastaban para detener a los zombis en la Barrera y no llegaron a fabricarlo en masa. Es tuyo por 16.000. + + + Aqu est Marea, un silencioso fusil de francotirador con mayor potencia de detencin. Dame otros 16.000 y disfruta. + + + Mira, esto es un SVU2-A, un fusil de francotirador corto con una cadencia de disparo potenciada. Se lo compr a Mac, el legendario guardia de Libertad. Me jur que no hay otro igual en toda la Zona. Es un objeto exclusivo, al menos por aqu. Son 16.000. + + + S. Un SVU2-A, un fusil de francotirador corto con una cadencia de disparo potenciada. Son 16.000. + + + Claro, echa un vistazo a este Lince. Hecho a mano por un experto local ya fallecido, as que es nico. Parece un fusil cualquiera, pero practica un poco de tiro al blanco y notars la diferencia. Tiene una combinacin perfecta de precisin y potencia de detencin. Dame 16.000 ms y esta preciosidad es tuya. + + + S, un Lince: un fusil francotirador de gran precisin y potencia. Dame 16.000 ms y es tuyo. + + + Fjate: he conseguido tachar todo de la lista. Un CS-3a con casco. El casco no es nada del otro mundo, pero permite instalar un complejo tctico mvil, que incluye un sistema de visin nocturna de gran calidad y un sensor de infrarrojos activo. El blindaje CS-3a es una autntica belleza. Su excelente proteccin contra balas y anomalas sorprende en un elemento tan ligero y transportable. Todo te sale por 32.000. + + + S. Un conjunto de blindaje CS-3a con casco tctico por 32.000 en total. + + + Un traje SEVA especial para ti. Tal y como lo pediste: mdulo de respiracin de ciclo cerrado, resistente a temperaturas extremas, con circuito elctrico protector y materiales externos anticorrosin. Adems, lleva varios portaartefactos integrados. Ideal para un stalker. Dame los 24.000 que acordamos y es tuyo. + + + Toma, un traje SEVA. El precio es 24.000, tal y como acordamos. + + + Aqu tienes, un exoesqueleto de combate extraordinario. La mejor proteccin de la Zona contra balas, garras o fragmentos de granada. La nica excepcin son los vehculos blindados, aunque en esos casos tambin ayuda por su reducido peso... dentro de lo razonable, claro. 48.000 y es tuyo, incluidos defect.... Digo, bateras y servomotores. + + + Aqu tienes, un exoesqueleto de combate extraordinario. 48.000 y es tuyo. + + + Quiero hacer un pedido. + + + No hay problema. Qu necesitas? + + + Una pistola. + + + Pues claro. Sern 3.500, pero necesito un adelanto de 700. + + + Vale, aqu tienes. + + + Me pondr en contacto contigo en cuanto el pedido est listo. + + + No llevo dinero encima. + + + Bueno, pues vuelve cuando traigas pasta. + + + Sabes? Me lo he pensado mejor. + + + Bien. Si te decides finalmente a hacer un pedido, aqu me tienes. + + + No eres un cliente muy fiable, as que la pistola te costar 4.200, de los cuales necesito que me adelantes 1.400. + + + Me temo que las mejores pistolas ya estn agotadas. Si quieres una normalita, ve a ver a Bho. + + + Un arma de corto alcance. + + + Claro. El precio es 10.000 y necesitar un adelanto de 2.000. + + + Te negaste a recoger tu ltimo pedido, as que ste te costar 12.000, y necesito 4.000 por adelantado. + + + Mmm... Pues igual no puedo ayudarte. Hay demasiada demanda. + + + Un arma de asalto. + + + Algo de gran calibre con gran cadencia de disparo, de acuerdo... Yo cobro 20.000 normalmente y necesito un adelanto de 4.000. Qu te parece? + + + Eres un cliente duro de roer. Tendr que cobrarte 24.000 y necesito 8.000 por adelantado. Hecho? + + + Ahora es un mal momento. Los militares estn complicando las cosas en Cordn. Alguien atac su avanzadilla el otro da y ahora estn an ms intratables. + + + Un arma de francotirador. + + + A ti puedo conseguirte lo mejor por solo 20.000, pero tendrs que darme un adelanto de 4.000. + + + Trabajar contigo conlleva cierto riesgo. Puedo prepararte el pedido por 24.000, pero tendrs que darme 8.000 por adelantado. + + + Lo siento, es difcil conseguir ese tipo de arma en este momento. Mi contacto para material de francotirador... digamos que est indispuesto. + + + Un traje blindado. + + + S, se me ocurre algo... adecuado. Te costar 40.000, pero tendrs que darme 8.000 por adelantado. + + + S, se me ocurre algo... adecuado. Te negaste a recoger tu ltimo pedido, as que te costar 48.000 de los grandes y tendrs que darme 16.000 por adelantado. + + + No te voy a poder conseguir nada mejor que el ltimo traje. se era nico y de la mejor calidad. + + + Un traje con mdulo de respiracin de ciclo cerrado. + + + Un pedido especial... No ser fcil de conseguir, ni mucho menos. Puedo intentar conseguirte una de esas preciosidades por 30.000, pero necesito 6.000 por adelantado. + + + Me dejaste tirado con el ltimo pedido, as que esta vez debo pensrmelo. Puedo intentar conseguirte una de esas preciosidades por 36.000, pero necesito 12.000 por adelantado. + + + Me mat para conseguirte uno la ltima vez. No creo que pueda repetirlo. + + + Un exoesqueleto. + + + Debes de haberle dado muchas vueltas. Puedo echar el guante a una versin de combate, pero te costar 60.000. Caro, s, pero lo vale. Eso s, que sepas que quiero 12.000 por adelantado. + + + No te portaste muy bien con el ltimo pedido, as que esta vez te voy a pedir 72.000. Eso s, que sepas que quiero 24.000 por adelantado. + + + Imposible. Desde que cerraron la fbrica, solo hay una forma de conseguir exoesqueletos: en cadveres. Y ah no me meto. + + + Ahora mismo no. + + + Lo siento. Tengo la tienda cerrada ahora mismo. Hay ciertos problemillas con los envos. + + + Hola, soy Nimble. La gente acude a m para conseguir armas nicas: modelos raros, prototipos... esas cosas. Y material de lite, las ltimas innovaciones en trajes protectores y de combate. Compruebo cada artculo personalmente, as que la calidad est garantizada. + + + Hola. Quieres hacer un pedido? + + + Hola. + + + Pronto llegar tu pedido. + + + El pedido est listo. Pasa a recogerlo. + + + Eh! Eres amigo de Snag? + + + S, lo conozco. + + + Me dijo que traas un botn... + + + No recuerdo haber quedado en eso. + + + S, claro. No somos las zorras de Snag, que no nos haga esperar. + + + Adis. + + + Te digo que no! + + + Pinsatelo bien. Si tienes dos dedos de frente, sabrs que conviene guardar las formas cuando ests en minora. + + + He dicho que no! + + + No, no lo conozco. + + + Ah... Maldita sea... Estoy malherido. Aydame, necesito un botiqun. No tengo mucho tiempo... + + + Toma este botiqun. + + + Buf! Gracias, amigo. He estado a punto de palmarla en un Caldero. Esos perros mutantes se hubiesen alegrado... Toma mi detector. Puede que algn da te venga bien. Gracias por salvarme la vida, de verdad. Creo que me tomar un respiro en la base. + + + Buena suerte. + + + Buf! Gracias, amigo. He estado a punto de palmarla. Esos perros mutantes se hubiesen alegrado... Toma mi detector. Puede que algn da te venga bien. Gracias por salvarme la vida, de verdad. Creo que me tomar un respiro en la base. + + + No puedo, lo necesito yo. + + + No tengo botiquines. + + + Gracias de nuevo! Sin ti, ya estara criando malvas... + + + Stalker! Rpido, ven a ayudar a Petrukha! Mira ah, al borde de la grieta! Una anomala se lo llev por delante! El traje no le sirvi de nada! Y yo no tengo. Petrukha y yo unimos nuestros fondos para comprar se. Si doy un paso ms, ser el fin! Aydanos, por favor! + + + Vale, no te muevas. Lo intentar. + + + Apaaos solitos. + + + Gracias por salvar a Petrukha. Maldita sea, por qu no ahorraramos para un traje mejor! + + + Fuera de mi vista. Has dejado morir a Petrukha... l s que era un hombre, y no t! + + + Hasta la prxima. + + + He limpiado la guarida de chupasangres. + + + Bien, has vengado a nuestros hermanos muertos. Dios los bendiga. Te has ganado esto. + + + He encontrado toda una guarida de chupasangres bajo el complejo de la antena. + + + Bien. Hay que eliminar esa guarida. Djame pensar un segundo... A saber cuntos chupasangres hay en esos tneles! A lo mejor deberamos gasearlos. Recuerdo que Bho dijo no s qu de unos tanques de gas. Habla t con l, que no nos llevamos bien. Si consigues llegar al tanque de gas, conctalo al sistema de ventilacin del complejo de la antena y todo acabar en unos minutos. + + + Vale, eso har. + + + Lo pensar. + + + Ya tengo un tanque de gas. + + + Vaya... T s que vales. + + + Ah, ah est nuestro stalker. Te estbamos esperando. + + + Cul es el plan? + + + Vamos a una reunin. No tendrs mucho que hacer, o eso espero. T espera tranquilito. + + + De acuerdo. + + + Ja. Seguro que se han arrepentido. Buena puntera, stalker. Toma. + + + Buena suerte. + + + Sers fracasado... Mira que era fcil, y lo jodes todo. Pirdete. + + + Adis. + + + Qu prisa tienes? + + + Ninguna. + + + Te enva Bho? + + + S. Me dijo que necesitabas ayuda. + + + Pues es cierto. Supongo que t servirs. + + + Vale, de qu se trata? + + + De protegerme durante una transaccin comercial. + + + Puedo hacerlo. + + + Qudate cerca y cbreme. + + + Entendido. + + + Solo hablar con el jefe. + + + T vers. + + + Gracias, stalker. Me has sido de gran ayuda. Tena la sensacin de que esa panda de imbciles lo jodera todo. Los han seguido todo el camino! Toma, por las molestias. + + + Buena suerte. + + + Menudo vago ests hecho; eres un guardaespaldas psimo, pero he prometido pagarte y lo har. + + + Buena suerte. + + + Menudo vago ests hecho; eres un guardaespaldas psimo, pero he prometido pagarte y lo har. + + + Buena suerte. + + + Qu quieres? No tengo nada que agradecerte. Casi no lo cuento. Largo! + + + Buena suerte. + + + Eh, gracias por venir. Queremos acercarnos sigilosamente a los bandidos y espiarlos, a ver qu pasa. + + + Entiendo. + + + Gracias, stalker. Toma esto de nuestra parte. El camarero nos ha dejado tiesos. + + + Entiendo. + + + Hblame de tu vida. + + + No ha sido un camino de rosas, eso seguro... Qu quieres saber, exactamente? + + + Qu es lo que hacis aqu? + + + Vigilamos a los stalkers. Tienes que admitir que sois cros ms que hombres. Vens a la Zona con sueos estpidos o para haceros los hroes, o porque la vida os trata mal. No os dais cuenta de lo que os aguarda aqu: la muerte. De esos nos ocupamos nosotros. Encontramos uno en el vertedero, cogemos sus cosas y lo mandamos de vuelta a Cordn. Los hay que se lo piensan mejor y vuelven al exterior, pero a los que tienen el cuajo de volver los ponemos bajo nuestra proteccin y les cobramos impuestos. En serio, nadie osa adentrarse en nuestro territorio; ni el ejrcito, ni los mercenarios, ni siquiera los mutantes. + + + Qu os trajo al centro de la Zona? + + + Nuestras piernas. Vinimos por los stalkers, claro est! Si no mantenemos el orden nosotros, esto es un autntico caos. Consigues tu botn, lo guardas, pero quin paga tus impuestos? Ya sabes, la paz y los impuestos de seguridad. Por ejemplo, si alguien saca partido de una anomala mientras nosotros vigilamos, manteniendo a raya a los mutantes... Si todo sale bien, nos llevamos una parte... por mantener el orden. + + + Cmo llegaste a ser jefe? + + + Por dnde empiezo? Supongo que todo se remonta al instituto. Tena un buen amigo, el mejor. Nos pasbamos el da fumando, bebiendo y todo eso. Pero l quera cada vez ms emociones. Se meti en las drogas; un poco de hierba al principio, luego caballo y luego coca, cuando empez a pillar algo de pasta. Le deca: "Toylan, tienes que dejar esa mierda antes de que sea demasiado tarde", pero no me escuchaba. Un da le dio un mal viaje y se acab. Di con sus camellos y ajust cuentas con ellos. Me hicieron una foto y ah empez el infierno: chirona, peleas de bandas, pualadas... Sal, mont un negocio, me volvieron a trincar... Cuando volv a salir, dej atrs toda esa mierda y le ech el ojo a la Zona. Pas unos meses dejndome el pellejo y me gan un ascenso. Y aqu estoy, velando por la ley local. + + + Qu opinas de los stalkers? + + + Son todos distintos, no? Hay gamberros que no nos duran ni una semana, otros son curritos... y tambin hay tipos normales que la vida ha echado de ambos lados del Cordn. Nosotros desplumamos a los primeros y cobramos impuestos a los segundos. En cuanto a los ltimos, nos conformamos con no cruzarnos mucho. Una pena que a veces no se distingan a simple vista... + + + Bah, no te preocupes. Olvdalo. + + + Como quieras. + + + Ahora Barbas trabajar para nosotros. + + + Ya sabes, hay que ordear a la vaca mientras sea nuestra; hazle una visita de vez en cuando para recordarle que pague su cuota. + + + Barbas tiene un pedido importante de un artefacto llamado Brjula. + + + Debemos interceptar ese artefacto. Barbas no se mojara por una baratija cualquiera. Tengo la impresin de que la necesita para salvar el culo... Para mantenerse en el negocio, vamos. Treme la Brjula en cuanto la encuentres. + + + He encontrado la Brjula. Toma. + + + Me niego a buscar la Brjula para ti. + + + Eh, imbcil, a ver si te enteras. Si me dices que vas a hacer algo y luego me dejas tirado, pues como que no te voy a tener mucho aprecio. Y la gente que no me cae bien no suele disfrutar de la vida. Lo captas? + + + Lo tendr en cuenta. + + + Conseguir esos detectores de los stalkers. + + + Bien. Mientras tanto, me ocupar de los otros canales de nuestro cliente. + + + Un pajarito me ha dicho que le has dado una Brjula a Barbas. Escchame bien, capullo. Si me dices que vas a hacer algo y luego me dejas tirado, pues como que no te voy a tener mucho aprecio. Y la gente que no me cae bien no suele disfrutar de la vida. Lo captas? + + + Lo tendr en cuenta. + + + Ahora Barbas no tiene detectores mejorados. + + + Maravilloso. Mientras estabas ausente, me he ocupado de cortarle sus otros canales. Ahora el cliente es nuestro, enterito. Ve a ver a Barbas y dile hola de parte de Sultn. + + + Barbas me debe dinero. Bho dijo que podras ayudarme. + + + Supongo que s... Mira lo que se me ocurre: arruinamos a Barbas, nos quedamos su chiringuito y t te llevas tu dinero y parte del pastel. Trato hecho? + + + Trato hecho. + + + Ahora tu misin es enterarte de qu tiene entre manos Barbas. Si cortamos sus canales de suministro, lo conseguiremos. + + + Lo pensar. + + + Pero recuerda: pensar es malo para la salud. + + + Crees que Nimble negociar con material robado? + + + Nimble? No, a se le faltan agallas. Bho es el traficante local de material ilegal. Compra todo lo que vendas sin hacer preguntas. + + + Estoy buscando a Snag. Sabes dnde puedo encontrarlo? + + + Pues s. Mis hombres lo vieron en las gras del puerto hace cosa de dos das. Debera vaciarle los bolsillos por la pasta que me debe, pero siempre me olvido. + + + Tengo un trabajo para ti. Mis hombres van ver a un comerciante... Ya sabes, por negocios. ltimamente, la Zona es peligrosa, as que un arma extra vendr bien. Asegrate de que esa mierda vaya bien. + + + De acuerdo. + + + Bien. Mi gente se reunir contigo cerca del puesto de guardabosques. Las coordenadas estn en tu PDA. + + + Entiendo. + + + No me interesa. + + + Qu coo haces an aqu? Mueve el culo al puesto de guardabosques. + + + Aj. + + + Ya te has decidido? Ests con nosotros o qu? + + + Estoy contigo. + + + Yo voy por libre. + + + Recuerda: soy Sultn. Todo lo que pasa aqu est bajo mi control o pronto lo estar. Si quieres vivir plcidamente, tienes que trabajar para m. Si no, vivirs en la inmundicia. As funciona el tema. + + + Qu necesitas? + + + Qu te trae por aqu? + + + Y bien? + + + He matado a todos los stalkers. + + + Buf, vaya... Mierda, t vas a machete. Vienes y te los cargas como si nada. Para qu coo te he contratado? No nos has conseguido pasta, solo problemas. Clmate un poco, to, me oyes? + + + Te gusta trabajar para los cientficos? + + + No est mal. De momento no hay problemas y todo parece en orden. Los cientficos nos dieron algn material, as que nos va bien. + + + Excelente! El trabajo es sencillo y est bien pagado. Nadie ha venido buscando a los cientficos en este tiempo. Ni los monstruos. + + + Estoy reuniendo un pelotn para ir a Pripyat. Me acompaas? + + + No... Pripyat no me pone tan cachondo como a los otros. Adems, tenemos curro: proteger a los cientficos. Igual quieres llevarte a ese soldado. As podra buscar a sus colegas del ejrcito y a nosotros nos daras un respiro. Es un tipo legal, pero ste no es lugar para l. + + + No... Pripyat no me pone tan cachondo como a los otros. Adems, tenemos curro: proteger a los cientficos. + + + Te gustara trabajar para los cientficos? + + + En qu consiste el trabajo? + + + Defender su bnker. + + + Conque defender, eh? No sera la primera vez. De acuerdo. Iremos hacia al bnker en cuanto estemos listos. + + + Hacer mediciones en anomalas. + + + Mediciones, eh? Tengo cara de mdico de laboratorio? No es mi perfil. + + + Ya lo hablaremos luego. Hay demasiados matones rondando; hay que ponerlos en su sitio y, si se tercia, hablaremos de trabajo. + + + Venga, nos vamos pitando. Se van a enterar! + + + De acuerdo. + + + Ser mejor que nos pongamos a cubierto. Una maldita emisin! + + + Largumonos de aqu. Se van a enterar! Tranquilidad, que todo saldr bien. + + + Menuda zurra, eh? Aqu tienes tu propina, amigo. Ya te avisar si surgen ms "negocios". + + + Buf, vaya... Mierda, t vas a machete. Vienes y te los cargas como si nada. Para qu coo te he contratado? No nos has conseguido pasta, solo problemas. Clmate un poco, to, me oyes? + + + Qu es lo que no entiendes?! El sitio donde estn los stalkers?! Pero qu cojones es esto? Te has chivado, no? No ha podido ser nadie ms! Mis hermanos no se han separado de m... Ahora te machacaremos a ti como bamos a hacer con ellos! Qu coo miras? Vaca los bolsillos, imbcil! + + + Deberamos ir... a la barca. + + + Ey, jefe. Lo siento, pero ahora no me apetece hablar. + + + Te ayudar. + + + Magnfico. Prepararemos el encuentro como acordamos y t te irs. Cuando vengan, les caer una buena por todas partes. Asegrate de guardar las distancias, no vayas a recibir fuego amigo. + + + De acuerdo. + + + No. Yo paso de eso. + + + Ey, stalker. Ahora estoy ocupado. Luego hablamos, vale? + + + Gracias por avisar. A lo mejor te interesa nuestro plan. Es una buena oportunidad para disparar por la espalda a esos malnacidos. + + + Les tenderemos una emboscada. Cuando lo hagamos, dispara a esos cabronazos por detrs. + + + Esos mamones se pueden dar por muertos. Gracias por avisar. + + + Gracias por ayudarnos. + + + Hola. Oye, si no es urgente lo hablamos luego, vale? + + + Hola. + + + He encontrado a Urraca. Estaba en la estacin de Yanov, hacindose pasar por Pedernal. Acab con l. + + + En serio? Qu pena... Me hubiera encantado aplastar personalmente a esa cucaracha. En fin, es una buena noticia. Aqu tienes; soy un hombre de palabra. + + + Gracias. + + + Quiero irme de la Zona. + + + Seguro? No hay vuelta atrs. + + + Segursimo. En marcha. + + + Bueno... De momento me quedo. + + + Vale, coge el dinero. No quiero bronca. + + + Eh? Dame todo lo que tengas, cabronazo! Y pirdete y no aparezcas! + + + Me voy. + + + Te digo que no! + + + Veamos... Con tu salud? Pues si a ti te va mal, yo debo de estar muerto o algo... + + + Oye, hay un asunto urgente. Un comerciante que conozco quiere cerrar un trato, pero sus clientes son de los que causan problemas, as que va a contratar a un guardia de seguridad, por si acaso. Te interesa? + + + S. + + + Vale. El comerciante te estar esperando en el puesto del guardabosques para informarte. + + + No mucho. + + + T vers. Si cambias de idea pronto, puede que an ests a tiempo. + + + Qu clase de trabajo puedes ofrecerme? + + + De los que dan dinero. Ahora piensa: Por qu te lo pido a ti? Eres nuevo y sin contactos, pero si juegas tus cartas, podras ganarte rpidamente el respeto de los locales. Te digo lo que estoy pensando? + + + S, claro. + + + Muy bien, atencin. Tenemos pensado extorsionar a unos stalkers de Barbas. Es pan comido. Bien entrada la noche, t y tus hombres os acercis a Shevchenko, y antes de que esos turistas se den cuenta de lo que ocurre, te los llevas a dar una vuelta. Para nosotros la pasta y para ti lo dems, me sigues? Perfecto. Ves a Knuckles ah? l te dar todos los detalles. + + + No mucho. + + + Vaya... Tmate tu tiempo y pinsatelo. Si sabes lo que te conviene, acabars volviendo. + + + De los que te vienen bien si quieres ir a sitios. Quieres saber qu estoy pensando? + + + Es la PDA de Barge. Encontr su cadver en las cuevas bajo la colina. + + + La encontr junto a unos huesos, cerca de Roblepino. Es la PDA de Bromista. + + + Su PDA?! No puede ser! Buf, no s cmo reaccionar... Bromista ha muerto... Ya no volveremos a escuchar tus chistes... Descansa en paz. Espero que Barge est bien... + + + Su PDA?! No puede ser! Buf, no s cmo reaccionar... Bromista tambin ha muerto... Ya no volveremos a escuchar tus chistes... Descansa en paz. Y Barge... Cmo ha podido ocurrir...? + + + La PDA de Barge y la de Bromista. Una la encontr junto a un esqueleto, cerca de Roblepino, y la otra en un cadver, en las cuevas bajo la granja quemada. + + + Para serte sincero, no hay mucho que contar. Las emisiones son especialmente peligrosas y casi siempre letales. Se nota cuando se aproximan gradualmente, por el cambio de tiempo, pero pasan poco despus de alcanzar su punto crtico. Al primer signo de cercana, corre a refugiarte a una cueva, o algo hecho de cemento, ladrillo o acero. Los hay como yo, a quienes nos duele la espalda cuando se avecina una emisin. En cuanto a su naturaleza, no puedo decirte nada til. No tengo ni idea. + + + Necesitas mercanca? Informacin? O eres t quien vendes? + + + Sultn dice que planeas desplumar a los stalkers. Cuenta conmigo. + + + Genial. Presntate en Shevchenko despus de medianoche; estaremos esperndote. No vayas a aparecer por la maana. + + + Ah, eres t, hermano. Qu habis acordado Sultn y t? + + + Pues... ve a la barcaza despus de medianoche, pero antes de que salga el sol. Te estaremos esperando. + + + Ser mejor que me quede contigo. Esperaremos a medianoche y entonces podrs ensearme el camino a Shevchenko. + + + Perfecto, qudate. Llevarte a la barcaza no es ningn problema. + + + Pues... tengo que ocuparme de unos asuntos. + + + Tengo clientes importantes fuera de la Zona que habitualmente me encargan artefactos, y hay que entregrselos en un plazo determinado. Si me consigues lo que busco, te pagar bien. Ten en cuenta que son pedidos muy importantes para m; por eso intento encargrselos a varios agentes a la vez. Solo pago toda la recompensa a quien me lo trae primero. + + + Por la granja quemada. Mmm... Quin eres, si puede saberse? + + + Tambin llaman a ese lugar el Bosque de Hierro. El helicptero se desplom sobre las torres de electricidad. No sobrevivi ni un militar. Y aunque hubiesen sobrevivido, la habran palmado enseguida. A esos poltergeists les encanta perseguir a gente en anomalas elctricas. Y los muy cabrones responden al menor movimiento, como sabes. + + + Mira: cuando el helicptero se desplom, vieron a cinco soldados. Al parecer, hasta lograron salir del pantano por su propio pie. Llegar hasta ah no es difcil; solo debes alejarte del agua y quedarte en terreno firme. Y tambin te har falta proteccin qumica. Si tienes pensado ir para all, cmprale al mdico unos cuantos antdotos. + + + Qu pena que no estn aqu mis amigos Barge y Bromista... Nos lo pasbamos de puta madre. ramos como hermanos, siempre cubrindonos las espaldas. Cmo ha podido ocurrir? Yo sigo aqu, pero ellos no. + + + Hblame de Bromista y de Barge. + + + Ya tengo algo de ah. + + + Empieza a hablar... Conseguiste algo para m? + + + Bueno, eso lo explicara todo. Lo conozco. Siempre ha sido un ladrn, pero la cosa se le ha ido de las manos ltimamente. Estafar a los stalkers de esa manera... Alguien tendra que ponerlo en su sitio. + + + Necesito informacin sobre el campamento de mercenarios. No es tan duro como parece. + + + Vale, te esperar. Recuerda que es un trabajo urgente: tiene que hacerse en dos das. + + + PDA del mensajero de Sultn. + + + No me interesa tanto. Te doy 500 por ella. + + + De acuerdo. + + + Prototipos de detectores. Querras comprrmelos? + + + Documentos secretos. Los encontr en el puente que est junto a la columna motorizada. Quieres verlos? + + + Un artefacto extrao. Lo encontr junto a la planta de dragado. + + + Un artefacto extrao. Lo encontr junto a la estacin de Yanov. + + + Artefacto Corazn del Oasis. + + + Vamos. + + + Espera. + + + Un grupo de stalkers planea atracarte. Ten cuidado. + + + Cerdos... Muy bien, les daremos una clida bienvenida. Mira, intenta convencerlos de que ests de su parte. As nos ayudars a acabar con ellos. Te recompensaremos bien por ello. + + + Me importa una mierda en lo que quedases. Dame eso pero ya! + + + Vale, aqu tienes. + + + Ah, no? Pues nos importa una mierda. Danos eso, gilipollas! + + + Tranquilo... Toma. + + + Cerdos... Muy bien, les daremos una clida bienvenida. Aydanos a acabar con ellos. Te recompensaremos bien por ello. + + + Menuda zurra, eh? No te involucraste, as que no te llevars tu parte. Ya te avisar si surgen ms "negocios". + + + Eres un intil... No esperes una recompensa. Pero al menos has venido a hablar, eso ya es algo. + + + Hasta luego. + + + Oye. Ahora le apretaremos las tuercas a nuestro clientillo. Barbas les dio a sus stalkers unos detectores muy potentes diseados para encontrar artefactos extraos. Tienes que unirte a ellos para conseguir que los detectores acaben en tu bolsillo, me sigues? + + + No hay forma de dominarlo. Intent reducir sus rutas de suministros pero ese granuja consigui una Brjula igualmente. Parece que le va bien... por el momento. + + + [continuar...] + + + [continuar...] + + + [continuar...] + + + Urogallo ha muerto. Parece que Tremor estaba involucrado, pero l tambin est muerto. + + diff --git a/gamedata/configs/text/spa/st_generate_fnames.xml b/gamedata/configs/text/spa/st_generate_fnames.xml new file mode 100644 index 0000000..6aa8cdd --- /dev/null +++ b/gamedata/configs/text/spa/st_generate_fnames.xml @@ -0,0 +1,492 @@ + + + + Sanek + + + Shurik + + + Vadya + + + Vasyan + + + Vasek + + + Vityukha + + + Vetal + + + Vovan + + + Zhorka + + + Grishka + + + Grishko + + + Dimon + + + Lekha + + + Dimukha + + + Zheka + + + Fimka + + + Ilyukha + + + Kostyan + + + Mitka + + + Mikhal + + + Mikha + + + Mikhas + + + Kolyan + + + Tolyan + + + Pavlukha + + + Sashok + + + Stepka + + + Stepukha + + + Timokha + + + Felka + + + Yuras + + + Yashka + + + Andryukha + + + Tokha + + + Arkasha + + + Temka + + + Boryan + + + Bodya + + + Capitn + + + Teniente + + + Soldado raso + + + Andrey + + + Anton + + + Oleg + + + Roman + + + Aleksandr + + + Sergey + + + Anatoly + + + Yuri + + + Bohdan + + + Veniamin + + + Vitaly + + + Vladimir + + + Dimitri + + + Ivn + + + Konstantin + + + Alexey + + + Sanya + + + Sanek + + + Arthur + + + Yashka + + + Yarik + + + Yara + + + Slava + + + Borya + + + Borka + + + Bohdan + + + Slavik + + + Vadim + + + Vadya + + + Vadik + + + Valik + + + Valera + + + Shurik + + + Vasya + + + Vaska + + + Vasko + + + Venya + + + Vitya + + + Vitka + + + Vitalik + + + Vlad + + + Vova + + + Vovka + + + Lenya + + + Seva + + + Sevka + + + Gena + + + Genka + + + George + + + Gosha + + + Zhora + + + Mark + + + Gleb + + + Grisha + + + Alex + + + Grishka + + + Grishko + + + Danya + + + Kiryukha + + + Danko + + + Dennis + + + Dima + + + Dimka + + + Dmitro + + + Zhenya + + + Leshka + + + Zhenka + + + Egor + + + Egorka + + + Fima + + + Vanya + + + Vanka + + + Igorek + + + Ilya + + + Kostya + + + Kostik + + + Tolik + + + Leva + + + Lenya + + + Lyonka + + + Max + + + Matvei + + + Mitya + + + Misha + + + Mishka + + + Nikita + + + Nik + + + Anton + + + Kolya + + + Oleg + + + Pasha + + + Pashka + + + Petro + + + Petya + + + Petka + + + Roma + + + Romka + + + Rostik + + + Toshka + + + Rus + + + Savva + + + Semyon + + + Sema + + + Serega + + + Rusik + + + Stepan + + + Stepa + + + Tima + + + Timka + + + Artem + + + Fedor + + + Fedya + + + Fedka + + + Filya + + + Filka + + + Edik + + + Yurka + + + Yurik + + + Yurko + + + Yasha + + + Sargento primero + + + Sargento + + diff --git a/gamedata/configs/text/spa/st_generate_snames.xml b/gamedata/configs/text/spa/st_generate_snames.xml new file mode 100644 index 0000000..3ff1cd4 --- /dev/null +++ b/gamedata/configs/text/spa/st_generate_snames.xml @@ -0,0 +1,4836 @@ + + + + Gris + + + Berserk + + + Podrido + + + Patty + + + Espa + + + Bisonte + + + Castor + + + Bulldog + + + Buey + + + Gorrin + + + Pjaro carpintero + + + Bestia + + + Brujo + + + Jorobado + + + Jabal + + + Carpa + + + Canario + + + Chinche + + + Grun + + + Alce + + + Rata + + + Boa + + + Barrapn + + + Roto + + + John el Largo + + + Caos + + + Rayo + + + Cuchilla + + + Tambor + + + Chatarra + + + Tornillos + + + Dinamita + + + rdago + + + Pala + + + Junta + + + Pato de feria + + + Cruz + + + Alquitrn + + + Calcetn + + + Palanqueta + + + Panadol + + + Pincho + + + Pistn + + + Nquel + + + Rabo + + + Letal + + + Cansino + + + Molar + + + As + + + Cincel + + + Mikado + + + Torpedero + + + Travesao + + + Tachas + + + Pelotazo + + + Puos + + + Magullador + + + Renacuajo + + + Hacker + + + Khan + + + Koschei + + + Rambo + + + Gua turstico + + + Exterminador + + + Chapai + + + Genghis + + + Banana + + + Barrapn + + + Dedos de trapo + + + Papi + + + Spike + + + Compadre + + + Gangrena + + + Fallo tcnico + + + Grado + + + Antlope + + + Fomare + + + Paria + + + Gelatina + + + Carbn + + + rdago + + + Junta + + + Calcetn + + + Duende + + + Moro + + + Canuto + + + Fracasado + + + Ravioli + + + Chili + + + Rallador + + + Bola de sebo + + + Bizcocho + + + Gul + + + Rcano + + + Roto + + + Tacao + + + Squint + + + Diablo + + + Tullido + + + Pataslargas + + + Contrahecho + + + Cheposo + + + Chaquetero + + + Tup + + + Feroz + + + Compinche + + + Lugareo + + + Cieno + + + Campen + + + Monculo + + + Granuja + + + Holgazn + + + Sobrado + + + Zurullo + + + Difunto + + + Psicpata + + + Bocazas + + + Rasgado + + + Robatumbas + + + Ciego + + + Soplamocos + + + Gafapasta + + + Metro + + + Cadver + + + Acuchillador + + + Orejotas + + + Bufn + + + Galgo + + + Flojo + + + Recio + + + Cascarrabias + + + Sabihondo + + + Robusto + + + Escudero + + + Sanguijuela + + + Artista + + + Estafador + + + Banquero + + + Vagabundo + + + Barn + + + Buhonero + + + Estrafalario + + + Sintecho + + + Contramaestre + + + Pigmeo + + + Bourbon + + + Burgus + + + Chfer + + + Ladrn + + + Rapado + + + Gnster + + + Mensajero + + + Conde + + + Tirano + + + Salvaje + + + Estrangulador + + + Consejero + + + Tahr + + + Tramposo + + + Padrino + + + Veterano + + + Entrenador + + + Abalorio + + + Manaco + + + Enterrador + + + Carnicero + + + Ninja + + + Verdugo + + + Macarra + + + Guerrillero + + + Pacifista + + + Pen + + + Pirata + + + Pirmano + + + Prncipe + + + Bandolero + + + Kamikaze + + + Chuloputas + + + Tirano + + + Sicario + + + Trombn + + + Qumico + + + Abdurakhmanov + + + Altynnik + + + Barsak + + + Kireev + + + Scherbin + + + Kovalchuk + + + Koev + + + Kozlov + + + Kolontarev + + + Kolontar + + + Kondratenko + + + Korkin + + + Korneev + + + Baul + + + Kravchenko + + + Krivda + + + Krivokhatsky + + + Kuznetsov + + + Kuzmich + + + Kuzyakin + + + Kulchitsky + + + Kuntsev + + + Kurvitz + + + Kucheruk + + + Bashakov + + + Kushnarev + + + Khaladze + + + Lavrik + + + Lavrov + + + Livshits + + + Lisichansky + + + Litvin + + + Lymarenko + + + Mazepa + + + Makarenko + + + Bashmakov + + + Maltsev + + + Mamaev + + + Merzlayev + + + Milchenko + + + Mironyuk + + + Mohrer + + + Kryga + + + Mostovoi + + + Muntyan + + + Mukhamedov + + + Beshevly + + + Myskov + + + Navrotsky + + + Nepritsky + + + Nikanorov + + + Nikeshin + + + Nikulin + + + Futzin + + + Nordiev + + + Nosan + + + Opolev + + + Binoev + + + Orlevich + + + Orlov + + + Petkevich + + + Petrenko + + + Petrov + + + Plokhenko + + + Podyachev + + + Polyanin + + + Poplavsky + + + Popov + + + Blinov + + + Portnykh + + + Prasolov + + + Prokopenko + + + Proskurin + + + Protsenko + + + Prudov + + + Pustovar + + + Puchek + + + Rabinovich + + + Radkevich + + + Bobrov + + + Rezun + + + Rogoza + + + Rodnyansky + + + Rotan + + + Rublev + + + Rudik + + + Rusanov + + + Rychagirsky + + + Savchenko + + + Savchuk + + + Bogdanov + + + Sagitov + + + Sviridov + + + Sedykh + + + Sereda + + + Sidorenko + + + Sidorov + + + Siniy + + + Sinitzyn + + + Skameika + + + Slutsky + + + Boiko + + + Smelov + + + Smoly + + + Sorokin + + + Statzura + + + Stepchin + + + Stychinsky + + + Sykula + + + Tarnavsky + + + Tatarchuk + + + Timchuk + + + Andreychuk + + + Boichenko + + + Boldeskul + + + Bondarev + + + Borisov + + + Brich + + + Bronshtein + + + Buryak + + + Buturin + + + Byalo + + + Valentinov + + + Andruschenko + + + Vasiliev + + + Veselov + + + Vinogradov + + + Vovnenko + + + Volanchuk + + + Volodar + + + Voloshin + + + Vorontsov + + + Vorokhaev + + + Vyushinsky + + + Anisiev + + + Galkin + + + Ganzyuk + + + Garkovenko + + + Garkusha + + + Georgov + + + Glebovsky + + + Gnatyuk + + + Goncharenko + + + Gordienko + + + Gorlevoy + + + Ardashev + + + Gorokhin + + + Goryunov + + + Grebenko + + + Gritzaenko + + + Gritzay + + + Gritzenkov + + + Grishachev + + + Grischuk + + + Gubar + + + Gunko + + + Babich + + + Gurevich + + + Denisenko + + + Dovgalyuk + + + Dombrik + + + Dotsenko + + + Drozdush + + + Dubenchuk + + + Dudorov + + + Duka + + + Dumko + + + Balan + + + Dunaev + + + Dyklov + + + Erofeev + + + Efremov + + + Zhabenko + + + Zhmyev + + + Zhurakovsky + + + Zabyagoda + + + Zagorodnyuk + + + Zamosenchuk + + + Baranov + + + Zarubin + + + Zakharin + + + Zvonnitsky + + + Zinoviev + + + Zozo + + + Zolotar + + + Zubarev + + + Zubkov + + + Ivanov + + + Ignatenko + + + Baranovsky + + + Izhenko + + + Ischuk + + + Kazakov + + + Kazantsev + + + Kandybabko + + + Kapuka + + + Kapustyanko + + + Katz + + + Kikabidze + + + Gatzula + + + Abdurakhmanov + + + Altynnik + + + Barsak + + + Kireev + + + Scherbin + + + Kovalchuk + + + Koev + + + Kozlov + + + Kolontarev + + + Kolontar + + + Kondratenko + + + Korkin + + + Korneev + + + Baul + + + Kravchenko + + + Krivda + + + Krivokhatsky + + + Kuznetsov + + + Kuzmich + + + Kuzyakin + + + Kulchistky + + + Kuntsev + + + Kurvitz + + + Kucheruk + + + Bashakov + + + Kushnarev + + + Khaladze + + + Lavrik + + + Lavrov + + + Livshits + + + Lisichansky + + + Litvin + + + Lymarenko + + + Mazepa + + + Makarenko + + + Bashmakov + + + Maltsev + + + Mamaev + + + Merzlayev + + + Milchenko + + + Mironyuk + + + Mohrer + + + Kryga + + + Mostovoi + + + Muntyan + + + Mukhamedov + + + Beshevly + + + Myskov + + + Navrotsky + + + Nepritsky + + + Nikanorov + + + Nikeshin + + + Nikulin + + + Futzin + + + Nordiev + + + Nosan + + + Opolev + + + Binoev + + + Orlevich + + + Orlov + + + Petkevich + + + Petrenko + + + Petrov + + + Plokhenko + + + Podyachev + + + Polyanin + + + Poplavsky + + + Popov + + + Blinov + + + Portnykh + + + Prasolov + + + Prokopenko + + + Proskurin + + + Protsenko + + + Prudov + + + Pustovar + + + Puchek + + + Rabinovich + + + Radkevich + + + Bobrov + + + Rezun + + + Rogoza + + + Rodnyansky + + + Rotan + + + Rublev + + + Rudik + + + Rusanov + + + Rychagirsky + + + Savchenko + + + Savchuk + + + Bogdanov + + + Sagitov + + + Sviridov + + + Sedykh + + + Sereda + + + Sidorenko + + + Sidorov + + + Siniy + + + Sinitzyn + + + Skameika + + + Slutsky + + + Boiko + + + Smelov + + + Smoly + + + Sorokin + + + Statzura + + + Stepchin + + + Stychinsky + + + Sykula + + + Tarnavsky + + + Tatarchuk + + + Timchuk + + + Andreychuk + + + Boichenko + + + Boldeskul + + + Bondarev + + + Borisov + + + Brich + + + Bronshtein + + + Buryak + + + Buturin + + + Byalo + + + Valentinov + + + Andruschenko + + + Vasiliev + + + Veselov + + + Vinogradov + + + Vovnenko + + + Volanchuk + + + Volodar + + + Voloshin + + + Vorontsov + + + Vorokhaev + + + Vyushinsky + + + Anisiev + + + Galkin + + + Ganzyuk + + + Garkovenko + + + Garkusha + + + Georgov + + + Glebovsky + + + Gnatyuk + + + Goncharenko + + + Gordienko + + + Gorlevoy + + + Ardashev + + + Gorokhin + + + Goryunov + + + Grebenko + + + Gritzaenko + + + Gritzay + + + Gritzenkov + + + Grishachev + + + Grischuk + + + Gubar + + + Gunko + + + Babich + + + Gurevich + + + Denisenko + + + Dovgalyuk + + + Dombrik + + + Dotsenko + + + Drozdush + + + Dubenchuk + + + Dudorov + + + Duka + + + Dumko + + + Balan + + + Dunaev + + + Dyklov + + + Erofeev + + + Efremov + + + Zhabenko + + + Zhmyev + + + Zhurakovsky + + + Zabyagoda + + + Zagorodnyuk + + + Zamosenchuk + + + Baranov + + + Zarubin + + + Zakharin + + + Zvonnitsky + + + Zinoviev + + + Zozo + + + Zolotar + + + Zubarev + + + Zubkov + + + Ivanov + + + Ignatenko + + + Baranovsky + + + Izhenko + + + Ischuk + + + Kazakov + + + Kazantsev + + + Kandybabko + + + Kapuka + + + Kapustyanko + + + Katz + + + Kikabidze + + + Gatzula + + + Abdurakhmanov + + + Altynnik + + + Barsak + + + Kireev + + + Scherbin + + + Kovalchuk + + + Koev + + + Kozlov + + + Kolontarev + + + Kolontar + + + Kondratenko + + + Korkin + + + Korneev + + + Baul + + + Kravchenko + + + Krivda + + + Krivokhatsky + + + Kuznetsov + + + Kuzmich + + + Kuzyakin + + + Kulchistky + + + Kuntsev + + + Kurvitz + + + Kucheruk + + + Bashakov + + + Kushnarev + + + Khaladze + + + Lavrik + + + Lavrov + + + Livshits + + + Lisichansky + + + Litvin + + + Lymarenko + + + Mazepa + + + Makarenko + + + Bashmakov + + + Maltsev + + + Mamaev + + + Merzlayev + + + Milchenko + + + Mironyuk + + + Mohrer + + + Kryga + + + Mostovoi + + + Muntyan + + + Mukhamedov + + + Beshevly + + + Myskov + + + Navrotsky + + + Nepritsky + + + Nikanorov + + + Nikeshin + + + Nikulin + + + Futzin + + + Nordiev + + + Nosan + + + Opolev + + + Binoev + + + Orlevich + + + Orlov + + + Petkevich + + + Petrenko + + + Petrov + + + Plokhenko + + + Podyachev + + + Polyanin + + + Poplavsky + + + Popov + + + Blinov + + + Portnykh + + + Prasolov + + + Prokopenko + + + Proskurin + + + Protsenko + + + Prudov + + + Pustovar + + + Puchek + + + Rabinovich + + + Radkevich + + + Bobrov + + + Rezun + + + Rogoza + + + Rodnyansky + + + Rotan + + + Rublev + + + Rudik + + + Rusanov + + + Rychagirsky + + + Savchenko + + + Savchuk + + + Bogdanov + + + Sagitov + + + Sviridov + + + Sedykh + + + Sereda + + + Sidorenko + + + Sidorov + + + Siniy + + + Sinitzyn + + + Skameika + + + Slutsky + + + Boiko + + + Smelov + + + Smoly + + + Sorokin + + + Statzura + + + Stepchin + + + Stychinsky + + + Sykula + + + Tarnavsky + + + Tatarchuk + + + Timchuk + + + Andreychuk + + + Boichenko + + + Boldeskul + + + Bondarev + + + Borisov + + + Brich + + + Bronshtein + + + Buryak + + + Buturin + + + Byalo + + + Valentinov + + + Andruschenko + + + Vasiliev + + + Veselov + + + Vinogradov + + + Vovnenko + + + Volanchuk + + + Volodar + + + Voloshin + + + Vorontsov + + + Vorokhaev + + + Vyushinsky + + + Anisiev + + + Galkin + + + Ganzyuk + + + Garkovenko + + + Garkusha + + + Georgov + + + Glebovsky + + + Gnatyuk + + + Goncharenko + + + Gordienko + + + Gorlevoy + + + Ardashev + + + Gorokhin + + + Goryunov + + + Grebenko + + + Gritzaenko + + + Gritzay + + + Gritzenkov + + + Grishachev + + + Grischuk + + + Gubar + + + Gunko + + + Babich + + + Gurevich + + + Denisenko + + + Dovgalyuk + + + Dombrik + + + Dotsenko + + + Drozdush + + + Dubenchuk + + + Dudorov + + + Duka + + + Dumko + + + Balan + + + Dunaev + + + Dyklov + + + Erofeev + + + Efremov + + + Zhabenko + + + Zhmyev + + + Zhurakovsky + + + Zabyagoda + + + Zagorodnyuk + + + Zamosenchuk + + + Baranov + + + Zarubin + + + Zakharin + + + Zvonnitsky + + + Zinoviev + + + Zozo + + + Zolotar + + + Zubarev + + + Zubkov + + + Ivanov + + + Ignatenko + + + Baranovsky + + + Izhenko + + + Ischuk + + + Kazakov + + + Kazantsev + + + Kandybabko + + + Kapuka + + + Kapustyanko + + + Katz + + + Kikabidze + + + Gatzula + + + Sinaev + + + Feigelman + + + Ledentsov + + + Alferov + + + Antipin + + + Blinov + + + Bogomolov + + + Vasilevich + + + Geshkenbein + + + Dyakonov + + + Erokhin + + + Zaikin + + + Zakharov + + + Ivchenko + + + Kabanov + + + Larin + + + Manko + + + Mironov + + + Stepanenko + + + Oganesyan + + + Chernodub + + + Shilov + + + Chirikov + + + Belyavin + + + Fadeev + + + Steklov + + + Andreev + + + Spirin + + + Balitsky + + + Abdurakhmanov + + + Altynnik + + + Barsak + + + Kireev + + + Scherbin + + + Kovalchuk + + + Koev + + + Kozlov + + + Kolontarev + + + Kolontar + + + Kondratenko + + + Korkin + + + Korneev + + + Baul + + + Kravchenko + + + Krivda + + + Krivokhatsky + + + Kuznetsov + + + Kuzmich + + + Kuzyakin + + + Kulchistky + + + Kuntsev + + + Kurvitz + + + Kucheruk + + + Bashakov + + + Kushnarev + + + Khaladze + + + Lavrik + + + Lavrov + + + Livshits + + + Lisichansky + + + Litvin + + + Lymarenko + + + Mazepa + + + Makarenko + + + Bashmakov + + + Maltsev + + + Mamaev + + + Merzlayev + + + Milchenko + + + Mironyuk + + + Mohrer + + + Kryga + + + Mostovoi + + + Muntyan + + + Mukhamedov + + + Beshevly + + + Myskov + + + Navrotsky + + + Nepritsky + + + Nikanorov + + + Nikeshin + + + Nikulin + + + Futzin + + + Nordiev + + + Nosan + + + Opolev + + + Binoev + + + Orlevich + + + Orlov + + + Petkevich + + + Petrenko + + + Petrov + + + Plokhenko + + + Podyachev + + + Polyanin + + + Poplavsky + + + Popov + + + Blinov + + + Portnykh + + + Prasolov + + + Prokopenko + + + Proskurin + + + Protsenko + + + Prudov + + + Pustovar + + + Puchek + + + Rabinovich + + + Radkevich + + + Bobrov + + + Rezun + + + Rogoza + + + Rodnyansky + + + Rotan + + + Rublev + + + Rudik + + + Rusanov + + + Rychagirsky + + + Savchenko + + + Savchuk + + + Bogdanov + + + Sagitov + + + Sviridov + + + Sedykh + + + Sereda + + + Sidorenko + + + Sidorov + + + Siniy + + + Sinitzyn + + + Skameika + + + Slutsky + + + Boiko + + + Smelov + + + Smoly + + + Sorokin + + + Statzura + + + Stepchin + + + Stychinsky + + + Sykula + + + Tarnavsky + + + Tatarchuk + + + Timchuk + + + Andreychuk + + + Boichenko + + + Boldeskul + + + Bondarev + + + Borisov + + + Brich + + + Bronshtein + + + Buryak + + + Buturin + + + Byalo + + + Valentinov + + + Andruschenko + + + Vasiliev + + + Veselov + + + Vinogradov + + + Vovnenko + + + Volanchuk + + + Volodar + + + Voloshin + + + Vorontsov + + + Vorokhaev + + + Vyushinsky + + + Anisiev + + + Galkin + + + Ganzyuk + + + Garkovenko + + + Garkusha + + + Georgov + + + Glebovsky + + + Gnatyuk + + + Goncharenko + + + Gordienko + + + Gorlevoy + + + Ardashev + + + Gorokhin + + + Goryunov + + + Grebenko + + + Gritzaenko + + + Gritzay + + + Gritzenkov + + + Grishachev + + + Grischuk + + + Gubar + + + Gunko + + + Babich + + + Gurevich + + + Denisenko + + + Dovgalyuk + + + Dombrik + + + Dotsenko + + + Drozdush + + + Dubenchuk + + + Dudorov + + + Duka + + + Dumko + + + Balan + + + Dunaev + + + Dyklov + + + Erofeev + + + Efremov + + + Zhabenko + + + Zhmyev + + + Zhurakovsky + + + Zabyagoda + + + Zagorodnyuk + + + Zamosenchuk + + + Baranov + + + Zarubin + + + Zakharin + + + Zvonnitsky + + + Zinoviev + + + Zozo + + + Zolotar + + + Zubarev + + + Zubkov + + + Ivanov + + + Ignatenko + + + Baranovsky + + + Izhenko + + + Ischuk + + + Kazakov + + + Kazantsev + + + Kandybabko + + + Kapuka + + + Kapustyanko + + + Katz + + + Kikabidze + + + Gatzula + + + Blanco + + + Verde + + + Inmortal + + + Oxidado + + + Romntico + + + Atroz + + + Cachas + + + Cuentacuentos + + + Ciego + + + Valiente + + + Soplamocos + + + Polmico + + + Vejestorio + + + Berserk + + + Gafapasta + + + Metro + + + Macabro + + + Desgarbado + + + Seco + + + Cabrn afortunado + + + Moteado + + + Bola de sebo + + + Belly + + + Cadver + + + Roto + + + Enteradillo + + + Acuchillador + + + Orejotas + + + Enmascarado + + + Bufn + + + Flojo + + + Recio + + + Huesos + + + Cnico + + + Notas + + + Alegre + + + Cascarrabias + + + Alerta + + + Sabihondo + + + Robusto + + + Iniciado + + + Nativo + + + Aviador + + + Agente + + + Escudero + + + Sanguijuela + + + Compinche + + + Discpulo + + + Artista + + + Asceta + + + Estafador + + + Banquero + + + Bardo + + + Barn + + + Buhonero + + + Estrafalario + + + Corredor + + + Atleta + + + Guerrero + + + Sintecho + + + Contramaestre + + + Pigmeo + + + Bourbon + + + Burgus + + + Burcrata + + + Vndalo + + + Brbaro + + + Conserje + + + Mordaz + + + Zahor + + + Visitante + + + Vikingo + + + Chfer + + + Buzo + + + Jefe + + + Ladrn + + + Viajero + + + Loquero + + + Jinete + + + Bocazas + + + Gnster + + + Gelogo + + + Gladiador + + + Mensajero + + + Invitado + + + Conde + + + Porteador + + + Abuelo + + + Trnsfuga + + + Vendedor + + + Galgo + + + Dandi + + + Sustituto + + + Tirano + + + Salvaje + + + Diplomtico + + + Doc + + + Doctor + + + Profesor + + + Estrangulador + + + Celador + + + Vagabundo + + + Consejero + + + Antiareo + + + Charlatn + + + Tahr + + + Indio + + + Iroqus + + + Capitn + + + Tramposo + + + Payaso + + + Duque + + + Rojo + + + Rapado + + + Cosaco + + + Pinche + + + Brujo + + + Comanche + + + Rey + + + Padrino + + + Mercader + + + Fumador + + + Emisario + + + Entrenador + + + Veterano + + + Legionario + + + Curandero + + + Forester + + + Seor + + + Magnate + + + Abalorio + + + Manaco + + + Marciano + + + Cantero + + + Mecnico + + + Figura + + + Enterrador + + + Moderador + + + Lechero + + + Carnicero + + + Mercenario + + + Afinador + + + Mandams + + + Ninja + + + Operador + + + Maestro armero + + + Suertudo + + + Shah + + + Verdugo + + + Polaco + + + Macarra + + + Papito + + + Guerrillero + + + Clrigo + + + Pastor + + + Anciano + + + Labriego + + + Afortunado + + + Pacifista + + + Transportista + + + Silbato + + + Piloto + + + Pionero + + + Pirata + + + Carpintero + + + Pirmano + + + Bombero + + + Pantuflas + + + Emparrado + + + Subzero + + + Embajador + + + Cartero + + + Poeta + + + Prncipe + + + Profeta + + + Profesor + + + Saltador + + + Apicultor + + + Bestia de carga + + + Leal + + + Rabino + + + Chispas + + + Bandolero + + + Rastafari + + + Celador + + + Roquero + + + Minero + + + Samuri + + + Buscaminas + + + Ordenanza + + + Ojos saltones + + + Sacerdote + + + Secretaria + + + Gigol + + + Farsante + + + Escita + + + Abrecaminos + + + Maquinista + + + Kamikaze + + + Criador + + + Salvavidas + + + Pen + + + Deportista + + + Forastero + + + Estudiante + + + Juez + + + Hongo venenoso + + + Chuloputas + + + Contable + + + Patrullero + + + Bailarn + + + Tirano + + + Podrido + + + Regateador + + + Rebaador + + + Barrendero + + + tnico + + + Turista + + + Sicario + + + Trombn + + + Quarterback + + + Francotirador + + + Qumico + + + Oxidado + + + Verbal + + + Patty + + + Pintor + + + Cuidaovejas + + + Chamn + + + Pocero + + + Carbonero + + + Alguacil + + + Jefe + + + Erudito + + + Taxista + + + Jorobado + + + Espa + + + Electricista + + + Cadete + + + Pagano + + + Caimn + + + Anaconda + + + Mandril + + + Bisonte + + + Castor + + + Mantis + + + Orgulloso + + + Bulldog + + + Ardilla + + + Buey + + + Lechn + + + Gorrin + + + Grajo + + + Rata almizclera + + + Llantn + + + Carroero + + + Grajo + + + Amargado + + + Manul + + + Ganso + + + Delfn + + + Dinosaurio + + + Zorzal + + + Pjaro carpintero + + + Erizo + + + Escarabajo + + + Liebre + + + Bestia + + + Trueno + + + Brujo + + + Uro + + + Pavo + + + Jabal + + + Carpa + + + Canario + + + Chinche + + + Cobra + + + Mosquito + + + Semental + + + Matn + + + Gato + + + Cocodrilo + + + Saltamontes + + + Grun + + + Alce + + + Mamut + + + Elefante + + + Germen + + + Moscn + + + Hormiga + + + John el Largo + + + Tbano + + + Araa + + + Rata + + + Peregrino + + + Piraa + + + Pitn + + + Liebre + + + Bho + + + Halcn + + + Marmota + + + Blandengue + + + Tuza + + + Pececillo + + + Cucaracha + + + Tarntula + + + Hmster + + + Boa + + + Bho + + + Hurn + + + Gusano + + + Pocero + + + Pato de feria + + + Absoluto + + + Anomala + + + Parachoques + + + Barrapn + + + Roto + + + Caos + + + Bola de fuego + + + Rayo + + + Cuchilla + + + Tambor + + + Cansino + + + Dnut + + + Aspiradora + + + Chatarra + + + Guijarro + + + Abanico + + + Helicptero + + + Viento + + + Tornillos + + + Collar + + + Clavo + + + Pelirrojo + + + Renacuajo + + + Cartucho + + + Globo + + + Pen + + + Granada + + + Niebla + + + Atad + + + Verano + + + Motor + + + Dinamita + + + Boquete + + + Dedos de trapo + + + Legal + + + Cierre + + + Recmara + + + Istopo + + + Roca + + + Trampa + + + Hechicero + + + Karma + + + Ladrillo + + + Pegamento + + + Malabestia + + + Llave + + + Ltigo + + + rdago + + + Gorro + + + Parteleos + + + Whisky + + + Races + + + Guadaa + + + Espacio + + + Pala + + + Matojo + + + Junta + + + Cruz + + + Alquitrn + + + Gatillo + + + Calcetn + + + Palanqueta + + + Mquina + + + Diana + + + Motor + + + Bombeador + + + Hierro + + + Nocturno + + + Escopeta + + + Panadol + + + Paracadas + + + Proyectil + + + Cinco + + + Pincho + + + Pistn + + + Masilla + + + Plvora + + + Quincallero + + + Nquel + + + Cohete + + + Cornudo + + + Reactor + + + Hachuela + + + Colador + + + Rabo + + + Robot + + + Venado + + + Pica + + + Carbn + + + Matarratas + + + Bota + + + Sidra + + + Letal + + + Priva + + + Sacaojos + + + Can + + + Cofre + + + Hacha + + + Tonelete + + + Veloz + + + Molar + + + As + + + Nudos + + + Factor + + + Lmpara + + + Cincel + + + Junio + + + Ajo + + + Mikado + + + Azar + + + Bola de sebo + + + Torpedero + + + Espino + + + Armario + + + Travesao + + + Bicho + + + Pulverizador + + + Barras + + + Tachas + + + Tornillos + + + Pelotazo + + + Rcano + + + Sabelotodo + + + Fang + + + Garra + + + Huesos + + + Puos + + + Caradura + + + Esqueleto + + + Colas + + + Cresta + + + Magullador + + + Gris + + + Tacao + + + Hacker + + + Khan + + + Atleta + + + Pinocho + + + Zahor + + + Voldemort + + + Homer + + + Dragn + + + Trueno + + + Gioconda + + + Squint + + + Fideo + + + Hombre de hojalata + + + caro + + + Casanova + + + Koschei + + + Csar + + + Soldado + + + Kutuzov + + + Pocacosa + + + Bonaparte + + + Cerebrito + + + Nelson + + + Neptuno + + + scar + + + Prometeo + + + Pushkin + + + Viernes + + + Rambo + + + Roquefort + + + Gua turstico + + + Exterminador + + + Tarugo + + + Tinta + + + Csar + + + Chapaev + + + Chapai + + + Chebur + + + Cheburashka + + + Chingachgook + + + Genghis + + + Shtirlitz + + + Banana + + + guila + + + Bizcochito + + + Barrapn + + + Papi + + + Spike + + + Compadre + + + Bulkin + + + Bulldozer + + + Amortiguador + + + Buuelo + + + Chitn + + + Sable + + + Gangrena + + + Hbrido + + + Fallo tcnico + + + Batera + + + Escocs + + + Grado + + + Gremlin + + + Antlope + + + To + + + Fomare + + + Carmbano + + + Paria + + + Kagor + + + Repollo + + + Carburo + + + Gelatina + + + rdago + + + Comodoro + + + Rey + + + Junta + + + Calcetn + + + Diablo + + + Hielo + + + Duende + + + Moro + + + Madera + + + Espagueti + + + Maestro + + + Mutante + + + Canuto + + + Fracasado + + + Charca + + + Tullido + + + Detective + + + Ravioli + + + Chili + + + Correas + + + Comeyogures + + + Burbuja + + + Rallador + + + Zumbn + + + Ryazansky + + + Matarratas + + + Tullido + + + Colmenilla + + + Bizcocho + + + Tabaco + + + Fichaturnos + + + As + + + Calabacn + + + Gul + + + Trombn + + + Fantasma + + + Acrbata + + + Gris + + + Pataslargas + + + Coma + + + Contrahecho + + + Patoso + + + Espinazo + + + Cheposo + + + Arco iris + + + Chaquetero + + + Matorral + + + Tup + + + Siniy + + + Lameculos + + + Feroz + + + Pocacosa + + + Estirado + + + Necro + + + Lugareo + + + Tumba + + + Cieno + + + Campen + + + Narciso + + + Negro + + + Sinsangre + + + Perdedor + + + Bobo + + + Latoso + + + Llorica + + + Monculo + + + Granuja + + + Holgazn + + + Paranoia + + + Sobrado + + + Tefln + + + Bribn + + + Zurullo + + + Difunto + + + Virtuoso + + + Simpln + + + Psicpata + + + Bestia de carga + + + Rasgado + + + Robatumbas + + + Chilln + + diff --git a/gamedata/configs/text/spa/st_items_artefacts.xml b/gamedata/configs/text/spa/st_items_artefacts.xml new file mode 100644 index 0000000..e3ce300 --- /dev/null +++ b/gamedata/configs/text/spa/st_items_artefacts.xml @@ -0,0 +1,153 @@ + + + + Este artefacto es un compuesto de formaciones orgnicas huecas; despide una sustancia gaseosa que puede neutralizar partculas radiactivas en el interior del cuerpo sin causarle daos. Dada su gran eficacia, este artefacto tiene mucha demanda. + + + Burbuja + + + Formacin rojiza de fsiles vegetales comprimidos, tierra y restos animales. Neutraliza parcialmente venenos qumicos. Emite radiacin. + + + Sangre petrificada + + + Este artefacto se forma en zonas anmalas de intensa actividad trmica. Consume el exceso de calor, por lo que es fro al tacto. Emite radiacin. + + + Este artefacto est hecho de una piedra similar al granito, alterada por una fuerza gravitatoria extrema que ha dado lugar a una formacin cristalina para la cual la ciencia an no ha encontrado explicacin. Ofrece proteccin moderada contra emisiones psquicas y es radiactiva. + + + Flor de piedra + + + Cristal + + + La composicin de este artefacto incluye elementos electrostticos, pero los cientficos todava no han identificado las condiciones fsicas exactas necesarias para su formacin. Es muy popular en la Zona, y tanto lugareos como visitantes la valoran por sus propiedades tonificantes, aunque su uso prolongado causa fatiga. Emite radiacin. + + + Batera + + + Este artefacto sola considerarse basura, pues careca de propiedades tiles. Sin embargo, los cientficos descubrieron no hace mucho que, si se mantiene en contacto continuo con el cuerpo, estimula el sistema nervioso. Emite radiacin. + + + Concha + + + Este artefacto contina siendo un completo misterio para los cientficos. No obstante, se sabe con certeza que las emisiones producidas por los impulsos de sus secciones ms gruesas coagulan la sangre en las heridas abiertas, formando una especie de costra protectora. Uno de los efectos ms evidentes es el aumento de la velocidad de recuperacin. Emite radiacin. + + + Abalorios de madre + + + Este potente artefacto electrosttico absorbe la electricidad y luego la libera. El Destello puede proteger a su portador de descargas elctricas de hasta 5.000 voltios. Emite radiacin. + + + Destello + + + Este singular artefacto electrosttico reverbera cuando capta ondas psquicas. Los stalkers han aprendido a ajustar el artefacto para que reverbere en una fase opuesta a la fuente de la emisin, neutralizando as sus efectos parcial o totalmente. Emite radiacin. + + + Claro de luna + + + Este artefacto es un brillante ejemplo de la familia electrosttica. Suaviza las fluctuaciones de la densidad de los campos elctricos. Emite radiacin. + + + Bengala + + + Este artefacto, similar a un ojo humano, acelera considerablemente el metabolismo del cuerpo, haciendo que las heridas sanen ms deprisa. Los stalkers ms curtidos afirman que trae suerte. Emite radiacin. + + + Ojo + + + Este artefacto se forma en zonas de gran actividad trmica. Despide potentes emisiones de infrarrojos que intensifican los procesos metablicos, cerrando y curando heridas a ojos vista. Dada la extrema escasez de este artefacto, es sumamente valioso. Emite radiacin. + + + Llama + + + Aunque la Bola de fuego es un artefacto trmico, puede manipularse sin miedo a quemaduras. Es muy preciado por su capacidad de mantener una temperatura de 23 C en un radio pequeo, sean cuales sean las condiciones del entorno. Emite radiacin. + + + Bola de fuego + + + Artefacto relativamente escaso que se forma en zonas contaminadas con productos qumicos. El Soldado es muy preciado por su capacidad de curar cualquier herida en cuestin de minutos. Por causas desconocidas, los cientficos estn propagando el rumor de que afecta al cdigo gentico del portador. Emite radiacin. + + + Soldado + + + Lucirnaga + + + El Pez de colores es el resultado de la interaccin entre un gran nmero de campos gravitatorios. Produce su propio campo de gravedad interno, que elimina el peso de todo lo que se encuentra dentro de su radio de accin. Reduce el peso de la carga acarreada, lo que explica que tenga tanta demanda. Emite radiacin. + + + Pez de colores + + + El Gravi se forma a partir de sustancias metlicas expuestas a efectos gravitatorios prolongados. Esto le permite generar campos antigravitatorios; muchos stalkers lo utilizan para reducir el peso de sus mochilas. Emite radiacin. + + + Gravi + + + A primera vista, este artefacto se parece al Soldado. Hay quien dice que realmente es un Soldado reforzado por la exposicin a un potente campo elctrico. Sus propiedades nicas incrementan considerablemente el tono muscular del portador. Emite radiacin. + + + Copo de nieve + + + Este artefacto gravitatorio atrae y absorbe partculas radiactivas, reduciendo as los efectos de la radiacin sobre el cuerpo. Es muy comn en la Zona, y tambin se utiliza fuera de ella para curar el envenenamiento radiactivo en circunstancias excepcionales. + + + Medusa + + + Este artefacto orgnico est compuesto de tejido animal mutado y deforme. Cuando se coloca en una zona contaminada por sustancias qumicas, la bola de carne transforma las sustancias del aire en un fluido mucoso. Emite radiacin. + + + Bola de carne + + + Este reluciente artefacto genera un campo de baja gravedad. Los stalkers lo utilizan mucho en conjuncin con el Gravi, otro artefacto similar, para aumentar su capacidad de carga. Emite radiacin. + + + Estrella nocturna + + + Artefacto orgnico nico con propiedades igualmente singulares. De algn modo aumenta la tasa de recuperacin del cuerpo para sanar cualquier tipo de dao sin acelerar la acumulacin de toxinas. Debido a su eficacia y su aspecto llamativo, es un valioso objeto de coleccionista. Emite radiacin. + + + Alma + + + Este estrafalario artefacto aparece en lugares de actividad gravitatoria incrementada. Acta como una esponja que absorbe elementos radiactivos; ofrece proteccin contra radiaciones externas y contra las partculas radiactivas que ya se hayan introducido en el cuerpo. + + + Torcedor + + + Brjula + + + Artefacto muy poco comn (hace varios aos que no se ve ninguno). Puede usarse para detectar brechas en campos de anomalas. Se cree que sirve para atravesar las anomalas ms complejas sin sufrir dao alguno. Sin embargo, casi nadie sabe utilizarlo correctamente. + + + Corazn del Oasis + + + Este artefacto se encontr en el centro del legendario Oasis. Parece ser una planta cristalizada que ha adquirido las propiedades curativas del Oasis. Sin embargo, a diferencia del propio Oasis, este artefacto es extremadamente radiactivo. + + + La Lucirnaga altera campos desconocidos por la ciencia para acelerar la tasa de regeneracin de los tejidos y rganos de los seres vivos, adems de normalizar sus procesos metablicos. Este artefacto puede curar a un stalker gravemente herido en cuestin de segundos. Por desgracia, es extremadamente escaso. Emite radiacin. + + diff --git a/gamedata/configs/text/spa/st_items_equipment.xml b/gamedata/configs/text/spa/st_items_equipment.xml new file mode 100644 index 0000000..4ccc00d --- /dev/null +++ b/gamedata/configs/text/spa/st_items_equipment.xml @@ -0,0 +1,156 @@ + + + + Drogas antirradiacin + + + Las drogas antirradiacin de mexamina son muy comunes en la Zona. Cuando se usan, inducen una vasoconstriccin perifrica y privacin de oxgeno, lo que ayuda a tratar y prevenir la exposicin a la radiacin. No tienen efectos secundarios graves, aunque pueden darse casos aislados de nuseas, mareos, calambres y dolores estomacales. + + + Venda + + + Venda elstica normal que detiene hemorragias y evita que las heridas se infecten. Si se trata de una hemorragia normal, basta con aplicar cuidadosamente el vendaje sobre la herida. Si es una hemorragia arterial, debe atarse rpidamente alrededor de la zona afectada. + + + Prismticos militares reglamentarios con una ampliacin mxima de 7.5 aumentos. Son muy tiles en la Zona, ya que permiten al usuario observarlo todo desde una distancia prudencial. + + + Prismticos + + + Pan + + + No se conoce de la existencia de ningn panadero en la Zona, pero este pan no est contaminado ni es radiactivo; no solo est fresco, sino que es comestible. Hasta ahora no se ha quejado nadie. + + + Lata de "Desayuno para turistas" + + + Supuestamente, esta comida enlatada la saquearon unos stalkers de un almacn de suministros militares; es difcil decirlo, ya que no tienen etiqueta. Pero si la fecha de caducidad es correcta, an se puede comer. + + + Detector Eco + + + Este anticuado detector de actividades anmalas emite una seal de alarma cuando capta partculas anmalas. Puede registrar la presencia de artefactos y medir la distancia a la que se encuentra el ms cercano variando la frecuencia del sonido emitido por el detector. Para activar la modalidad de bsqueda de artefactos, basta con abrir el panel frontal. Debido a la sencillez de su diseo, este detector solo sirve para encontrar los artefactos ms comunes. + + + Detector "Oso" + + + Detector Veles + + + Escner detector cientfico de alta tecnologa. Con sus tres cmaras de deteccin modernizadas, registra la posicin de los artefactos en una pantalla especial. Cuando est cerrado, el dispositivo solo capta radiacin y anomalas. Para activar la modalidad de bsqueda de artefactos, basta con abrir el panel frontal. En modo bsqueda, puede localizar todos los artefactos conocidos por la ciencia. + + + Prototipo de detector Svarog + + + Prototipo de escner de anomalas de funcionalidad mejorada. Este dispositivo incluye un programa en su base de datos que identifica zonas estticas de actividad anmala y localiza artefactos. La posicin de estas zonas anmalas y artefactos se muestra en una pantalla especial. El modo de bsqueda de artefactos, que puede activarse abriendo el panel frontal, ha sido modificado para detectar formaciones anmalas actualmente desconocidas para la ciencia. + + + Linterna estndar acoplada a la cabeza. Es muy prctica para los stalkers a quienes sorprende la noche en el exterior, pero si no se utiliza con precaucin puede llamar la atencin de compaa no deseada. + + + Linterna + + + Anabiticos + + + Antdoto + + + La antitoxina IP2 es una droga compleja compuesta por varios antdotos, incluidos metoclopramida, piridoxina, tiamina, riboxina y otros productos farmacuticos. Se usa para inyectar en el torrente sanguneo una dosis de antibiticos que neutralizan venenos naturales e inhiben los artificiales. La IP2 no es muy popular en la Zona, ya que la mayora de los stalkers utilizan mscaras de gas y trajes protectores, pero algunos guardan a buen recaudo un paquete de este antdoto. Sus efectos son duraderos. + + + Hrcules + + + Vinca + + + Vikasolum ucraniano, el equivalente artificial de la vitamina K. El principal propsito de esta droga es incrementar la velocidad de coagulacin de la sangre. Tiene mucha demanda entre los stalkers que quieren curarse cuanto antes de las heridas y laceraciones causadas por los mutantes. Los efectos de esta droga son duraderos. + + + Inhibidor psquico + + + Droga que bloquea los impulsos nerviosos ms impetuosos. Su consumo causa una prdida emocional a corto plazo. Se usa exclusivamente en la Zona para contrarrestar los efectos de campos psquicos anmalos. Los efectos de esta droga son duraderos. + + + Radioprotector + + + Bebida energ. de stalker + + + Usada por los stalkers en viajes largos sin oportunidad de descanso. Contiene carbohidratos de fcil digestin y drogas que estimulan la liberacin de adrenalina en el torrente sanguneo. + + + Una guitarra fiable. + + + Guitarra + + + Salchicha diettica + + + Para bien o para mal, esta salchicha de pollo y sucedneo de soja suele ser desayuno y cena de un stalker, todo en uno. Gracias a su elevado contenido en conservantes puede conservarse durante mucho tiempo. + + + Botiqun de primeros auxilios + + + Botiqun militar + + + Botiqun especializado para practicar primeros auxilios a los heridos en combate. Incluye coagulantes con base de menadiona, analgsicos, antibiticos e inmunoestimuladores, as como instrumental para extraer balas y esquirlas del cuerpo. Es equipo reglamentario estndar del ejrcito, y a menudo lo utilizan las fuerzas de Deber. + + + Botiqun de un solo uso. til para tratar diversas heridas: laceraciones, magulladuras, quemaduras (normales o qumicas) y varios tipos de envenenamiento. Tiene mucha demanda entre los stalkers. + + + Botiqun cientfico + + + Botiqun diseado especficamente para la Zona. Incluye productos para el tratamiento de heridas, la prevencin de envenenamiento radiactivo y la reduccin del nivel de radiacin presente en el organismo. A diferencia de otros botiquines, ste contiene vikasolum, batilolum y nafazolina. + + + No hay datos almacenados. + + + PDA + + + Vodka "El cosaco" + + + Destilado por GSC. Entra con suavidad y reduce considerablemente los efectos de la radiacin. Debe disfrutarse con moderacin. + + + Este novedoso detector de anomalas se usa para localizar formaciones anmalas y tiene un panel frontal de diodos que no solo indica su posicin, sino que mide la distancia a la que se encuentran. Para activar la modalidad de bsqueda de artefactos, basta con abrir el panel frontal. Por desgracia, el dispositivo est programado con una lista anticuada de artefactos detectables. + + + Droga experimental desarrollada por el profesor Ozersky para equipos de investigacin cientfica de la Zona. Contiene tetrodotoxina, conocida coloquialmente como "polvo zombi" debido a que inhibe completamente el sistema nervioso central del sujeto, permitindole sobrevivir a las emisiones sin proteccin. La droga no ha sido sometida a pruebas clnicas ni de campo, por lo que su eficacia es dudosa y es posible que tenga efectos secundarios. + + + Rayo + + + El principal componente de este producto es un andrgeno anablico, un esteroide artificial de composicin qumica parecida a la de la testosterona. Desarrolla los msculos, alivia la fatiga y mejora la circulacin. Los stalkers suelen usarlo en incursiones largas para poder cargar con ms peso. Los efectos de esta droga son duraderos. + + + Radioprotector Indraline B190, incluido en botiquines para el personal de centrales nucleares. En la Zona se utilizaba en lugar del hidrocloruro de cistamina, muy txico, pues su consumo repetido poda causar la muerte. Reduce los efectos de la radiacin gamma en tejidos vivos. Es mejor ingerirlo antes de la exposicin; sus efectos no son instantneos, s duraderos. + + + Harmnica + + + Para los amantes del blues y los romnticos de la crcel. + + diff --git a/gamedata/configs/text/spa/st_items_outfit.xml b/gamedata/configs/text/spa/st_items_outfit.xml new file mode 100644 index 0000000..88d7920 --- /dev/null +++ b/gamedata/configs/text/spa/st_items_outfit.xml @@ -0,0 +1,117 @@ + + + + Blindaje personal CS-3a + + + Blind. Deber PSZ-9d + + + PS5-M Proteccin universal + + + Exoesqueleto + + + Traje blindado Bulat + + + Este exoesqueleto ofrece una proteccin extraordinaria contra proyectiles y metralla a costa de sacrificar movilidad. Es vulnerable a la municin perforante. + + + Exoesqueleto + + + Traje blindado militar diseado para operaciones de asalto. Ofrece una proteccin extraordinaria contra proyectiles de chaqueta metlica y metralla sin reducir la movilidad del usuario. Es vulnerable a la municin perforante. + + + Traje blindado militar + + + Gabardina de cuero negro normal y corriente. Su nica funcin es abrigar al usuario por las noches o protegerlo del ocasional mordisco de perro. Aunque no es particularmente cmoda, los bandidos de la Zona suelen utilizarla a menudo porque les permite ocultarse en la oscuridad (o sencillamente porque mola ms). + + + Gabardina de cuero + + + Traje SEVA + + + Traje blindado Berill-5M + + + Casco Sphere M12 + + + Casco de aluminio/titanio con cobertura de tela y capacidad para acoplar piezas metlicas adicionales y una mscara protectora. El Sphere M12 suele usarse en combinacin con blindajes de Spetsnaz de la gama PSZ. Es muy popular en la Zona por su respirador y su dispositivo integrado de visin nocturna, adems de ofrecer la mejor proteccin posible para la cabeza. Dispone de ranuras para dispositivos electrnicos. + + + Casco de acero + + + Casco militar terriblemente desfasado sin ningn aditamento. No ofrece proteccin contra anomalas ni radiacin, pero puede desviar balas. Este casco nunca ha sido muy popular en la Zona, salvo en breves conflictos armados entre facciones. + + + Casco hermtico + + + Casco ligero con un visor de cierre estanco diseado como proteccin contra anomalas. A juzgar por su diseo, ha sido fabricado por los mismos Institutos de Investigacin para la Defensa que hicieron el traje SEVA. Podra estar diseado para usarlo en combinacin con trajes militares en operaciones en zonas llenas de anomalas. + + + Mscara de gas + + + Mscara de gas corriente de plstico y goma, utilizada para filtrar el aire de partculas radiactivas y sustancias venenosas. Muy usada por novatos y veteranos de todas las facciones por su funcionalidad universal. No ofrece ninguna proteccin fsica. + + + Casco tctico + + + Modelo occidental de casco tctico sin camuflaje. Nadie sabe cmo lleg a la Zona. Ha sido diseado para proporcionar superioridad estratgica a un lder de escuadrn sobre sus enemigos mediante numerosos dispositivos de rastreo y comunicacin va satlite, aunque en este en particular no han sido instalados. Posee varias capas de kevlar y componentes blindados para proteger sus sistemas electrnicos. Incluye respirador y dispositivo de visin nocturna de primera generacin. + + + Traje Amanecer + + + Traje de guardia de Libertad + + + Este traje ligero de stalker ha sido fabricado por los artesanos de Libertad. El tejido ha sido tratado con Horizonte, una solucin especial desarrollada por la faccin a base de ensayo y error que incrementa su resistencia contra anomalas. Al igual que el traje Amanecer, el Viento de Libertad dispone de blindaje integrado y cavidades para artefactos. + + + Traje Viento de Libertad + + + Versin moderna del blindaje estndar de Deber, mejor equipada para los reclutas stalkers acostumbrados a las protecciones livianas. A diferencia de la gama PSZ, este blindaje ofrece buena proteccin contra anomalas y adems puede detener una bala de pistola. No puede modificarse para aadirle un contenedor para artefactos, pero s un sistema de apoyo para combate. + + + Este traje blindado militar est diseado para operaciones de asalto en zonas de anomalas. Est formado por un traje blindado pesado PSZ-12p, un compensador integrado y una malla de proteccin. El blindaje proporciona una proteccin excelente contra balas y metralla, sin reducir demasiado la movilidad. No dispone de contenedores para artefactos. + + + Este traje, diseado para realizar investigaciones en la Zona, combina un mdulo respiratorio de ciclo cerrado y una capa de aislamiento externa que ofrece una proteccin excelente contra las anomalas. Dado que apenas protege de los impactos fsicos, este traje no sirve de gran cosa contra balas y metralla. Dispone de un contenedor para artefactos. + + + Este traje, fabricado por uno de los Institutos de Investigacin para la Defensa de Kiev, es una buena alternativa a otros improvisados. Aunque el blindaje integrado solo es capaz de detener balas de pistola, la proteccin contra anomalas y radiacin es de las mejores. Es modificable y dispone de dos contenedores para artefactos. Es el favorito de muchos stalkers. + + + Este objeto incluye un blindaje personal de gama PS5 con rociador de berilio modificado para su uso en la Zona. Se ha diseado para operaciones de asalto en zonas muy radiactivas, pero es muy poco eficaz en zonas con elevada actividad anmala. El traje llega a manos de los stalkers por el ejrcito, que los canjea por botines. No dispone de contenedores para artefactos. + + + Este traje de stalker, fabricado por amantes del bricolaje, es una combinacin de material recauchutado, un revestimiento de plexigls y un blindaje personal integrado. Aunque ni siquiera protege al usuario de balas de pistola, es muy popular por su bajo coste y posibilidades de modificacin. Dispone de contenedores para artefactos. + + + Este traje de stalker, reforzado con un blindaje fabricado por artesanos de Libertad, combina funciones de combate y proteccin contra anomalas. Dispone de varias placas de blindaje y capas de kevlar que pueden detener una bala de pistola. El traje utiliza el raro y costoso compuesto Soberano para proteger contra anomalas. Dispone de contenedor para artefactos. + + + Esta versin antigua del traje de Deber es el blindaje Spetsnaz PSZ-9 modificado para la Zona. El traje puede detener una bala de fusil, pero tal grado de proteccin se paga con su peso, su volumen y su escassima proteccin contra anomalas. No puede modificarse para aadirle una contenedor para artefactos, pero s un sistema de apoyo para combate. + + + Utilizado anteriormente por escuadrones de asalto de Cielo Despejado. Tras la desaparicin de esta faccin, el blindaje sirve como recordatorio de que ni el mejor de los trajes protectores garantiza la seguridad a este lado del permetro. Es capaz de detener una bala de pistola y de proteger a su portador de las anomalas. Dispone de contenedor para guardar artefactos. + + + Prototipo experimental de exoesqueleto militar. No lleg a fabricarse en serie por su elevado coste y defectos de diseo. Se sigue demandando gracias a su habilidad para soportar el peso del equipo transportado. Por eso, en ciertas instalaciones subterrneas del exterior de Ucrania se produce en pequeas cantidades. Dispone de un contenedor para artefactos. + + + Traje SEVA + + diff --git a/gamedata/configs/text/spa/st_items_quest.xml b/gamedata/configs/text/spa/st_items_quest.xml new file mode 100644 index 0000000..91c3c10 --- /dev/null +++ b/gamedata/configs/text/spa/st_items_quest.xml @@ -0,0 +1,369 @@ + + + + Documentos con notas + + + Segn los documentos, la orden del Departamento 1 de sellar la cerradura de transporte hizo que el paso subterrneo Pripyat 1 quedase inundado por una mezcla de dixido de carbono y algn tipo de aditivo qumico. En consecuencia, todo el personal deba vestir trajes de proteccin qumica con mdulos respiratorios de ciclo cerrado. + + + Carta sobre envos del objeto 62 + + + "Debido a la actividad de las anomalas, el transporte del objeto 62 al aire libre no es factible. Utilicen el paso subterrneo Pripyat 1 para la entrega. Se ha enviado al Departamento 1 el plan de entrega y el subsiguiente sellado del paso." + + + Carpeta con la orden + + + Los documentos mencionan la evacuacin del personal de la central de Jpiter a unos laboratorios subterrneos. Supuestamente, este asunto se discuti en la seccin del laboratorio. + + + Programa de entregas + + + "Programa de entregas del objeto 62: 07/14 20 unidades (una daada); 07/21 32 unidades (2 daadas); 07/28 26 unidades (una daada). El taln de expedicin sobre las unidades perdidas durante el transporte ha sido enviado al encargado de la central con copia al taller de reparaciones." + + + Hoja de libreta + + + Se ha tomado la siguiente decisin en la reunin: el departamento de entregas debe concentrarse en la evacuacin del objeto 62. + + + Registro de actividades de Deber + + + "...18:30 Completado cierre hermtico de secciones del paso P-1. 19:00 Completado cierre hermtico de puertas del ferrocarril. Hubo que soldar puertas para sellarlas. 19:45 Cerradura de transporte sellada. Se activ el generador de emergencia para operar el mecanismo de la cerradura de transporte porque el suministro de energa al paso subterrneo se haba cortado. 20:00 El laboratorio qumico ha comenzado a bombear gas al paso. 22:00 Completado sellado del paso subterrneo, documentos enviados al Departamento 1." + + + Plano del paso subterrneo + + + Plano del paso subterrneo Pripyat 1 que lo ubica bajo la ciudad de Pripyat. El documento tiene varias anotaciones: 1. Sellar cerradura de transporte. 2. Liberar el gas del laboratorio qumico para sellar el paso. + + + Aislante alterado + + + Antes esto era un aislante, pero ahora casi se ha convertido en un artefacto inestable. Es probable que sea la fuente de las emisiones psquicas intermitentes. + + + Lata de colofonio + + + Lata de colofonio utilizado para soldar. Es bastante raro en la Zona, lo que explica por qu los tcnicos locales suelen utilizar cinta aislante para reparar el equipo averiado. + + + Paquete de condensadores + + + Un paquete de condensadores, componentes elctricos bsicos muy abundantes en la Zona porque se utilizan para mejorar artculos tecnolgicos, aunque normalmente no se necesita esta capacidad. + + + Base de textolita + + + La textolita es uno de los componentes bsicos de los circuitos impresos. La sensacin de un tcnico radioaficionado en relacin con la textolita intacta es similar a la experimentada por un escritor ante una hoja de papel en blanco. + + + Caja de transistores + + + Una caja de transistores, semiconductores que generan, transforman y amplifican oscilaciones elctricas. Los transistores son el sueo de todo tcnico de radio de la Zona. + + + Bobina de alambre de cobre + + + El alambre de cobre es un conductor excelente y, al mismo tiempo, sirve como fuente de metal bajo de ley. Debido a esto ltimo, estos alambres escasean mucho en la Zona. Todas las reservas de este material fueron encontradas, fundidas y enviadas a centros de reciclaje en la dcada de los 90. + + + Escner detector de mutantes + + + Este dispositivo, basado en un escner de actividad anmala ordinario, se ha combinado con un sensor detector de mutantes de corto alcance y un dispositivo de registro para almacenar resultados. Viene equipado con un interruptor de desactivacin automtica que se acciona tras recoger una determinada cantidad de datos. + + + Documentos administrativos + + + Una carpeta de documentos que contiene datos puramente administrativos. Segn los documentos, toda la informacin tcnica relacionada con el objeto 62 se envi al taller de pruebas por orden del laboratorio central. + + + PDA de Negro + + + Un mensaje que destaca entre los dems. El remitente es alguien llamado Chacal y dice as: "Mi contacto en el instituto de investigacin recomienda que dirijas la expedicin. Tendr que contratar a tus chicos para proteger el bnker. As lo tendrs todo ms fcil. Recuerda, el cliente no quiere que los cientficos consigan NINGUNA informacin sobre el manejo de los objetos clasificados como X. De ser as, no podremos abandonar la Zona. No me decepciones, Negro." + + + Caja negra + + + La caja negra del Pez Raya 1, intacta tras el accidente. Debera contener datos codificados sobre los ltimos minutos de vuelo del aparato. + + + Explosivo plstico militar con un temporizador de 5 segundos. + + + Explosivos con temporizador + + + Rueda manipulada + + + PDA de Snag + + + La PDA contiene un mapa con una marca junto a la subestacin que seala la existencia de un escondite, adems de un par de fotos erticas. Nada especial. + + + PDA de bandido + + + El ltimo mensaje de la PDA dice as: "Coge a ese cabrn de Snag y trelo aqu; tenemos cuentas pendientes que saldar. Me da igual dnde est, encuntralo. Y si ofrece resistencia, dale una leccin. Sultn". + + + Esta PDA contiene detalles sobre clientes de Morgan, as como las coordenadas del almacn secreto de Deber del que sustrajo armas. Morgan vendi esas armas a mercenarios y contact con alguien llamado Sultn. Para cubrir su rastro, decidi revelar la ubicacin del almacn a Libertad. Su cmplice, Buitre, deba transmitirles esta informacin. La PDA menciona la existencia de un sensor que solo Morgan puede desactivar, y que alertar a Deber si alguien entra en el escondite. Esta informacin es de gran inters tanto para Deber como para Libertad. + + + PDA de Morgan + + + Hay una nota en el dorso de un antiguo documento: "Ghost, me llevo mis cosas. Gracias por el fusil de asalto, voy a necesitarlo. A cambio, te dejo algunos suministros mdicos de Doctor. He logrado atrapar al mercenario que me segua el rastro, as que ya no me hacen falta... espero. Voy a reunirme con Fang; ha logrado montar el descodificador. Si sales de sta, nos encontraremos donde siempre. Strelok". + + + Nota para Ghost + + + Una nota en una hoja cuadriculada: "Strelok, he dejado el otro descodificador en nuestro escondite de Pripyat por si acaso. Ghost y yo nos vamos a Agroprom, as que dejamos aqu la municin que nos sobra. Cgela si la necesitas. Buena caza! Fang." + + + Nota para Strelok + + + Hay una nota en el dorso de un antiguo documento: "Fang, no puedo seguir esperndote, hay todo un escuadrn pisndome los talones. Me voy solo al sarcfago. Te dejar aqu mi arma de la suerte; de todos modos ya no me queda municin. Si no consigo regresar, dsela a Ghost. Si la cuida bien, ella cuidar de l. Cudate t tambin. Strelok". + + + Nota para Fang + + + Un mdulo de memoria del aparato no tripulado. Novikov lo ha desbloqueado, as que ya tienes acceso a la informacin recopilada por el aparato. Entre otras cosas, contiene las coordenadas de tres radiofaros. + + + Mdulo de memoria desbloqueado + + + Un mdulo de memoria del aparato no tripulado. Sigue operativo a pesar del accidente, pero por desgracia est bloqueado. + + + Mdulo de memoria bloqueado + + + Una vieja hoja de papel con la lista de turnos del centinela y los nmeros 1421 debajo. Alguien ha escrito encima con un rotulador: "Teniente V. I. Sokolov. Tras el choque del helicptero proced al punto de evacuacin B205. No se han efectuado intentos de evacuacin en dos das, y es muy arriesgado mantener esta posicin. Por tanto, he decidido abandonar el B205 y dirigirme al laboratorio mvil de la expedicin cientfica. El laboratorio est al noreste del punto de evacuacin." + + + Nota de Sokolov + + + Una planta que formaba parte de una arboleda, pero que ha sido transformada parcialmente por una anomala. La arboleda reaccion agresivamente a la intrusin, pero por ahora la planta parece inofensiva. + + + Planta anmala + + + El ltimo mensaje recibido en la PDA es de Morgan. Bsicamente, es un contrato para asesinar a un stalker llamado Degtyarev. Hay varias fotos adjuntas. Las ltimas instrucciones de Morgan son borrar el mensaje despus de haberlo ledo. + + + PDA de mercenario + + + Este estuche contiene un detector de artefactos, una batera y un potente transmisor. El dispositivo escanea anomalas para determinar la cantidad y el tipo de artefactos que aparecern. Toda esta informacin se transmite automticamente al bnker de los cientficos. + + + Escner de actividad anmala + + + La ltima grabacin de sonido de la PDA dice: \n"... Vayamos a donde vayamos, siempre acabamos en el mismo sitio. No hay forma de acostumbrarse a esta niebla... Es muy raro, Chepurny desapareci sin dejar rastro. Habr encontrado el modo de salir?... \nDa seis... No tenemos agua... El coronel ha perdido la chaveta, dispar a dos de los nuestros a quemarropa y se suicid... Ahora estoy solo en esta maldita anomala... Si no hubiera saboteado las comunicaciones con el cuartel general, podran habernos rescatado... y Deber jams habra existido. Me pregunto cmo habra ido todo... Bah, que le den. Ese capitn Tachenko muri hace mucho... y el general Tachenko de Deber seguir sus pasos... Creo que es lo justo..."\nSe oye un disparo y la grabacin termina. + + + PDA del general Tachenko + + + El manual describe cmo se usa el objeto 62. Las instrucciones hacen especial hincapi en que no se deben hacer ajustes por la trayectoria de la bala ni el viento, ya que no son factores importantes dentro del alcance efectivo del arma.\nEstos documentos no deben caer en manos ajenas, pues seran de gran inters para los analistas de la USS. + + + Manual del objeto 62 + + + La libreta contiene una descripcin detallada del experimento de evaluacin del efecto de un campo psquico sobre un objeto en otro hemisferio. Un grupo de cientficos del Caribe recibi la seal, pero estaba distorsionada. Haba sido alterada de algn modo, como si alguien la hubiese corregido. Una posible explicacin es que la teora de la noosfera es correcta y los cambios se deben a ella.\nEstos documentos no deben caer en manos ajenas, pues seran de gran inters para los analistas de la USS. + + + Libreta con la descripcin de un experimento + + + Estos documentos describen las prestaciones de la antena y su diferencia con los valores planificados. Hay una nota en el lado opuesto en la que se indica que los documentos fueron preparados en el laboratorio X10.\nEstos documentos no deben caer en manos ajenas, pues seran de gran inters para los analistas de la USS. + + + Emisor Arco Iris: prestaciones tcnicas + + + Estos documentos hacen referencia a uno de los hallazgos paralelos de la investigacin, concretamente al descubrimiento de que las criaturas vivas pueden generar emisiones psquicas dirigidas. Como parte de la investigacin llevada a cabo por el laboratorio X16, se cultiv un emisor de campo biolgico (un cerebro gigante, bsicamente).\nEstos documentos no deben caer en manos ajenas, pues seran de gran inters para los analistas de la USS. + + + Documentos de investigacin + + + El informe detalla el estudio de las muestras biolgicas enviadas por el laboratorio X18. Fueron sometidas a efectos de campos informativos de distinta intensidad. El informe describe meticulosamente la mutacin de organismos vivos tras su exposicin a las emisiones.\nEstos documentos no deben caer en manos ajenas, pues seran de gran inters para los analistas de la USS. + + + Informe sobre el estudio de las muestras + + + El documento hace referencia al traslado del equipo de investigacin y de todo el material a otro laboratorio llamado X7, en el que se investigar todo lo relacionado con la influencia de la noosfera. El equipo de investigacin est formado por N. A. Lebedev, E. F. Kalancha y V. I. Suslov.\nEstos documentos no deben caer en manos ajenas, pues seran de gran inters para los analistas de la USS. + + + Orden de transferencia + + + La ltima anotacin de la PDA dice as: "He encontrado el generador de emergencia en la sexta planta, la seccin tcnica. He tardado dos horas en conseguir que funcione otra vez. Me encantara encenderlo, pero Serbin me ha ordenado que espere hasta que traiga ms gente". + + + PDA de Barchuk + + + Una llave magntica roja etiquetada como X8. + + + Llave de acceso X8 roja + + + La PDA contiene muchas anotaciones sin inters, pero una de ellas destaca entre las dems: el Monolito se comunica con el destinatario para ordenarle que consiga municin sobrante y la almacene en lugares ocultos a los no creyentes. stos deben sealarse con la marca del Monolito. En tiempos difciles, los seguidores del Monolito se beneficiarn de su sabidura... He comunicado la voluntad del Monolito a mis hermanos y les he dicho dnde han de guardar la municin..." + + + PDA de soldado de Monolith + + + Juego de herramientas infantiles. No sirve para trabajos de precisin, pero dada la escasez de herramientas en la Zona, podra resultar de utilidad para un tcnico ahorrativo. + + + Herramientas para tareas bsicas + + + Un juego de herramientas bastante completo. Parece cuidadosamente preparado por un tcnico experto. A pesar de su antigedad, las herramientas parecen en buen estado. + + + Herramientas para tareas de precisin + + + Un juego de herramientas profesionales para realizar ajustes en maquinarias. La nota que hay sobre el estuche indica que se fabricaron en Alemania. Contiene todo lo necesario para realizar casi cualquier ajuste y calibracin. + + + Herramientas de calibracin + + + Vieja llave magntica + + + La llave magntica de Cardn. Se utiliz para acceder al taller de pruebas del objeto 62. + + + Documentos sobre el objeto 62 + + + Describen el funcionamiento y las caractersticas tcnicas del dispositivo electromagntico.\nHay una nota en los documentos en la que pone: "Estos documentos deben devolverse al X8, el laboratorio central. Tengo cosas que hacer; debers entregarlo t mismo. Utiliza la llave magntica en la estacin de servicio de Pripyat Yubileiny para bajar al segundo piso del complejo subterrneo; te las apaars desde all. Adjunto tarjeta de acceso.\nN. Lebedev"\nEstos documentos no deben caer en manos ajenas; seran de gran inters para analistas de la USS. + + + Llave de acceso X8 amarilla + + + Orden n. 562 + + + Orden interna n. 423 + + + Llave A + + + Una llave normal etiquetada con la letra "A". + + + Llave B + + + Una llave normal etiquetada con la letra "B". + + + Una de las grabaciones parece especialmente descabellada: "As que ah es donde estn esos putos mutantes! Se escaparon a la meseta pensando que No no los pillara... No podan saber que he descubierto un atajo por la granja del norte. Os vais a enterar, capullos!" + + + PDA de No + + + La libreta contiene mucha morralla, pero uno de los mensajes parece importante:\n"Montad un campamento junto a la planta de tratamiento de basura y todo el que vaya a participar en este trabajo se unir a vosotros. No esperis a Negro, l y los suyos estarn en Jpiter con otra misin. El ejrcito ha cancelado todos los vuelos hacia la Zona, as que un problema menos. Cuando los stalkers encuentren el modo de entrar en Pripyat, enviaremos un gua y el equipo del cliente nos dir dnde est el laboratorio.\nChacal". + + + Libreta de mercenario + + + El ltimo mensaje dice as:\n"Nos lo estamos pasando en grande junto a unos viejos talleres. He enviado a dos de mis muchachos a explorar el terreno para ti. Aunque pensndolo mejor, esperaremos aqu hasta que aparezca el mensajero del cliente; aqu el aire es ms fresco.\nTesak" + + + PDA del mercenario Hook + + + PDA del mercenario Ridge + + + Una lata de un peligroso agente qumico nervioso. + + + Lata de gas Perin B3 + + + La caja est cerrada y tiene una ingeniosa cerradura instalada. Hay algo dentro, a juzgar por su peso y por el ruido que hace al sacudirla. + + + Caja de acero + + + Nota en la PDA: "Estoy seguro de que el artefacto est en el rbol. Puedo subirme a l desde la colina, pero espero no encontrarme con mutantes. Es una pena que haya venido aqu solo, despus de discutir con Cardn y Barge. Pero cuando regrese con el artefacto, les demostrar que tena razn..." + + + PDA de Bromista + + + La ltima nota de la PDA deja claro que la persona que la escribi estaba molesta: "Cardn, ese viejo borracho. En cuanto toma una copa se convierte en un puto vago: mejor nos tomamos todo con calma, pero luego nos dice a Bromista y a m que somos jvenes y que no tenemos ni idea... Ja... Bromista es tambin una joya: de repente se enfada, coge su bolsa y desaparece. Mientras estaba intentando calmar a Cardn, se march a saber dnde. Qu se supone que poda hacer yo? Emborracharme con ese vejestorio? No, gracias! Su vodka es un asco..." + + + PDA de Barge + + + Tremor tena un diario en su PDA y su ltima entrada es la ms interesante: "Grabacin 12. Mi investigacin est a punto de concluir... En el campamento comienzan a sospechar algo. Urogallo y Danila quieren cazar a los chupasangres. Cundo entrarn en razn? Necesito ordenar las probetas de sangre para encontrar las infectadas y esconder las otras... [rpido:] Viene alguien. [se detiene la grabadora y se vuelve a encender]. Grabacin 13... probablemente la ltima. Primero ese cazador metomentodo y ahora Urogallo... No creo que me libre de sta, vendrn a por m, lo s. Da igual: esta adiccin a la hemoglobina me matar ms tarde o ms temprano. Prefiero morir de un balazo". + + + PDA de Tremor + + + Alto secreto. Orden n. 562 del comandante del cuartel general encargado de la seguridad del objeto n. 1 R. Yu. Didenko.\nLa unidad de proteccin qumica n. 423 debe trasladarse del sector B103 al A19 para realizar pruebas con solucin qumica Perin B3 en combate. El coronel P. P. Slavin, comandante de la unidad, es el responsable de las pruebas. El teniente coronel K. S. Valov, segundo al mando, es responsable del transporte y la seguridad. + + + Alto secreto. Orden del coronel P. P. Slavin.\nSegn esta orden, los miembros de la unidad de proteccin qumica n. 423 deben familiarizarse con la siguiente informacin:\n1. Las llaves del contenedor de la solucin qumica Perin B3 obran en poder del coronel P. P. Slavin (llave A) y el teniente coronel K. S. Vlasov (llave B).\n2. Orden del convoy, empezando por delante: vehculo del segundo al mando, vehculo de escolta n. 8, transporte blindado n. 1, vehculo de transporte n. 1, transporte blindado n. 3, vehculo de escolta n. 2, vehculo del comandante de la unidad (P. P. Slavin).\nDeben entregarse copias de esta orden al teniente coronel K. S. Vlasov y al teniente mayor R. B. Nazarenku. + + + Una llave magntica amarilla etiquetada como X8.\nNadie debe apoderarse de ella, ya que permite acceder al laboratorio secreto. + + + PDA del mensajero de Sultn + + + El ltimo mensaje enviado desde esta PDA es un archivo de sonido: "Sultn, le he dado una buena tunda a ese pardillo. No volver a darnos la lata!". + + + Antes era la rueda de la planta de dragado, pero ahora casi se ha convertido en un extrao artefacto. No posee propiedades notables, aparte del brillo que emite y de un poco de radiactividad. + + + El mensaje de la bandeja de entrada dice as:\n"He logrado arreglar el tema de las armas, y ese capullo avaricioso nos va a vender el material de su faccin. Va a ser bastante barato, pero tendremos que ir echando leches a Jpiter.\nBuitre". + + diff --git a/gamedata/configs/text/spa/st_items_weapons.xml b/gamedata/configs/text/spa/st_items_weapons.xml new file mode 100644 index 0000000..e53f1dd --- /dev/null +++ b/gamedata/configs/text/spa/st_items_weapons.xml @@ -0,0 +1,567 @@ + + + + Municin de ACP .45 + + + El proyectil de calibre .45 de chaqueta metlica ha gozado de gran popularidad desde hace ms de cien aos gracias al gran peso de la bala y a su relativamente escasa carga de propulsin. El proyectil es algo lento, pero muy preciso y con un considerable poder de detencin. + + + ACP .45 + + + Municin Hydrashock de ACP .45 + + + Este inusual proyectil de calibre ACP .45 tiene una camisa de punta blanda hueca y cuerpo de acero. Es una combinacin de proyectil de punta blanda y perforante, por lo que disfruta de las ventajas de ambos tipos, aunque tambin sufre sus desventajas. + + + Hydro .45 + + + Municin de perdigones de 12x70 + + + Proyectiles estndar de calibre 12 rellenos con perdigones de 6 mm. Sumamente letales a distancias cortas. Solo pueden usarse con armas no estriadas. + + + Postas de 12x70 + + + Municin de postas de 12x76 + + + Estos pesados proyectiles de postas de calibre 12 suelen utilizarse en caza mayor, pero tambin son adecuados para otros usos. Ms que perforar el blindaje, estos pesados cartuchos lo trituran. + + + Postas de 12x76 + + + Municin perforante de 5,45x39 mm + + + Proyectiles militares perforantes de calibre 5,45x39 7H22 para fusiles automticos de los pases del Pacto de Varsovia. Tienen una punta perforante de aleacin dura. Muy eficaces contra blindajes personales. + + + 5,45x39 perforante + + + Municin de 5,45x39 mm + + + Municin militar perforante mejorada de calibre 5,45x39 7H10 para los fusiles automticos de los pases del Pacto de Varsovia. Es ms eficaz que la municin de calibre 7,62 por su reduccin del retroceso y sus 100 metros adicionales de alcance. + + + 5,45x39 + + + Municin perforante de 5,56x45 mm + + + Municin perforante militar de calibre 5,56x45 de la OTAN, clasificada en su ndice SS190/M855, muy utilizada por las agencias de seguridad y servicios especiales occidentales. Eficaz contra blindajes personales. + + + 5,56x45 mm perforante + + + Municin de 5,56x45 mm + + + Municin estndar reglamentaria de la OTAN, de calibre 5,56x45, especialmente diseada para fuego automtico de precisin. Tiene excelentes prestaciones balsticas, pues ha sido diseada partiendo de proyectiles de caza. Muy conocida por su ndice SS109. + + + 5,56x45 + + + Municin de 7,62x54 mm 7H1 + + + Municin de francotirador de calibre 7,62 con una punta de acero diseada especialmente para el fusil SVD. A diferencia de su equivalente para ametralladoras, la 7H1 proporciona una agrupacin ms precisa y una capacidad de penetracin excelente. + + + 7,62x54 7H1 + + + Municin de 7,62x54 mm PP + + + Municin barata de calibre 7,62 para ametralladoras. Su diseo hace que no sea apta para fusiles de francotirador, por lo que se utiliza nicamente con la ametralladora RP-74. + + + 7,62x54 PP + + + Municin de 9x18 mm + + + Municin de camisa metlica con punta de acero y cuerpo de plomo. Ofrece un buen poder de detencin, pero no es eficaz contra blindajes personales. + + + 9x18 + + + Municin 9x18 mm +P+ + + + Esta municin ofrece un poder de detencin mejorado y su designacin europea +P+ indica que se trata de proyectiles de sobrepresin con un aumento del 30% en la velocidad de disparo. Ineficaz contra blindajes personales. + + + 9x18 +P+ + + + Municin de camisa metlica de 9x19 mm + + + Municin bsica de calibre 9x19 y camisa metlica con excelentes caractersticas y de produccin barata. Es muy popular debido al hecho de que las convenciones internacionales prohben el uso de municin expansiva en combate. Ineficaz contra blindajes personales. + + + 9x19 de camisa metlica + + + Municin de punta hueca de 9x19 mm + + + Municin de calibre 9x19 de punta hueca con carcasa expansiva que ofrece un gran poder de detencin y una baja propensin a los rebotes. Utilizada por la polica y para defensa personal. Ineficaz contra blindajes personales debido a su bajo potencial de penetracin. + + + 9x19 de punta hueca + + + Municin de 9x39 mm SP-6 + + + La SP-6 es municin subsnica para fusiles de asalto; tiene punta blanda y un cuerpo de acero macizo que sobresale del casquillo. Requiere el uso de un silenciador para efectuar disparos inaudibles. Utilizado por los servicios especiales de los pases del Pacto de Varsovia. Eficaz contra blindajes personales. + + + 9x39 SP-6 + + + Municin de 9x39 mm SP-5 + + + La SP-5 es municin subsnica para fusiles de francotirador con casquillo bimetlico. Su cuerpo de acero tiene un hueco relleno de plomo en la parte posterior. Requiere el uso de un silenciador para efectuar disparos inaudibles. Utilizado por los servicios especiales de los pases del Pacto de Varsovia. + + + 9x39 mm SP-5 + + + Bateras + + + Granada de M203 + + + Granada de 40 mm para el lanzagranadas M203. Este proyectil tiene un radio letal de 5 metros. Tambin puede usarse con el lanzagranadas integrado FT-200M. + + + M203 + + + Cohete OG-7V + + + Cohete de fragmentacin antipersona para el lanzagranadas RPG-7u. El principal propsito de este cohete es matar enemigos a cubierto que estn fuera del alcance de las granadas de mano. + + + OG-7V + + + Granada de VOG-25 + + + Granada de fragmentacin estndar para el lanzagranadas acoplado GP-25 Koster. Este proyectil tiene una zona letal de 5 metros. La granada VOG-25 tambin puede usarse con el Tunder S14 y el lanzagranadas Bulldog 6 (similar a un revlver). + + + VOG-25 + + + Mira PSO-1m + + + Mira ptica fija de fabricacin sovitica con zoom de 5.0x y escalado de distancia. Se acopla a las armas mediante una cola de milano, lo normal en los pases del Pacto de Varsovia. + + + Mira PSS-2x + + + Mira ptica fija con zoom de 5.0x y un visor trmico integrado para identificar fuentes de calor similares a las del cuerpo humano. Diseado para las fuerzas especiales. Se acopla a las armas mediante una cola de milano. + + + Mira NSPU-3 + + + Mira fija con zoom de 5.0x, intensificador de imagen y visin nocturna, diseada para el combate en entornos oscuros. Se acopla a las armas mediante una cola de milano. + + + Mira SUSAT 4x + + + Mira ajustable de largo alcance con zoom de 1.64x que dispone de ajuste automtico para mejorar la eficacia de los disparos. Se acopla a las armas mediante el riel Picatinny estndar de la OTAN. + + + Mira fija con zoom de 4x producida principalmente en pases occidentales. Se acopla a las armas mediante el riel Picatinny estndar de la OTAN. A menudo se usa para fuego de precisin con armas cortas a distancias medias y largas. + + + Mira SUSAT Crepsculo x1.6 + + + Mira ptica SUSAT de alto contraste con zoom de 1.6x para el combate con poca luz. Se acopla a las armas mediante el riel Picatinny estndar de la OTAN. + + + Mira SUSAT Noche 4x + + + Mira fija con zoom de 4.0x y un dispositivo de visin nocturna para el combate en la oscuridad a larga distancia. Se acopla a las armas mediante el riel Picatinny estndar de la OTAN. + + + Mira SUSAT 1.6x + + + Mira ptica SUSAT con zoom de 1.6x para el combate a corta y media distancia. Se acopla a las armas mediante el riel Picatinny estndar de la OTAN. + + + Mira PSU-1 + + + Mira ptica con zoom de 2.7x para combate urbano a media distancia. Se acopla a las armas mediante una cola de milano. + + + Silenciador + + + Un eficaz silenciador que puede modificarse sobre la marcha segn sea necesario. El cuerpo del silenciador que rodea el can contiene una fina malla metlica enrollada y la parte frontal est formada por diafragmas metlicos con agujeros para que pase la bala. Incluye adaptadores y selladores para la mayora de las armas. Normalmente se usa para diezmar las filas enemigas discretamente. + + + Granada F1 + + + Granada de mano defensiva; su metralla puede perforar blindajes personales de grado medio. Su radio letal es de 7 metros. Los stalkers consiguen granadas F1 comerciando con los militares, que justifican su desaparicin declarando que las han usado contra mutantes. + + + GP-25 Koster + + + Lanzagranadas de avancarga y disparo nico que se acopla bajo el can de los fusiles de asalto fabricados por los pases del Pacto de Varsovia. El mecanismo de disparo se amartilla solo, tiene un seguro manual y un dispositivo de bloqueo de disparo si se instala incorrectamente. Dispara granadas VOG-25. + + + M203 + + + Lanzagranadas M203 modificado con tres pulgadas menos de longitud. Se acopla a las armas por medio de un riel Picatinny. El mecanismo de acoplamiento puede cambiarse, razn por la cual este lanzagranadas es popular en todo el mundo. + + + Granada RGD-5 + + + Granada de mano ofensiva con un pequeo radio letal de 5 metros. La usan a menudo los stalkers para "ahumar" mutantes debido a su bajo coste. + + + Granada de humo + + + Granada de mano que sirve para desplegar pantallas de humo. Una vez arrojada, la pantalla de humo tarda 10 segundos en formarse. + + + Cuchillo + + + AC-96/2 + + + AKM-74/2 + + + AKM-74/2U + + + Martha + + + Escopeta recortada + + + Escopeta de caza con dos caones paralelos recortados, ms ligera y compacta que una escopeta normal. Es una de las armas ms populares entre bandidos porque es fcil de ocultar y extremadamente eficaz a corta distancia. + + + Kora-919 + + + guila Esteparia + + + Pistola fabricada a mano partiendo del diseo de la Cometa Negra. Sus componentes han sido ajustados hasta alcanzar una precisin increble en una pistola de estas caractersticas. + + + Cometa Negra + + + FT-200M + + + Fora-12 + + + GP37 + + + Fusil Gauss + + + Tunder S14 + + + Este fusil de asalto con lanzagranadas (similar a la gama AKM) se desarroll para unidades de respuesta rpida. Sus diferencias son la municin de calibre 9x39, el cargador detrs del gatillo y sus opciones de configuracin. Es muy apreciado por stalkers militares por su capacidad para matar enemigos con blindajes personales o usando coberturas improvisadas en combate urbano a distancia, adems de por su gran poder de detencin. + + + Tormenta + + + Versin experimental de un fusil de asalto con lanzagranadas integrado, modificacin rusa del Tunder S14 estndar. Ha sido diseada especficamente para las unidades que operan en la Zona. Es conocido por la gran capacidad de su cargador. + + + HPSS-1m + + + Versin modificada de una pistola de la primera mitad del siglo XX; este modelo es tan fiable, potente y preciso como el original. Las pistolas de este modelo tienen una merecida reputacin como las mejores del siglo XX, y tienen mucha demanda en la Zona. + + + IL 86 + + + TRs 301 + + + Vbora 5 + + + Este subfusil se ha hecho popular en todo el mundo gracias a su fiabilidad, sencillez de manejo y precisin. Durante las ltimas dcadas, el Vbora 5 ha sido utilizado por fuerzas especiales y unidades de polica de todo el mundo. Dada su abundancia en el mercado negro global, no es de extraar que haya acabado en la Zona. + + + Frasier + + + Prototipo de subfusil basado en el excelente Vbora 5. Diseado como arma de vanguardia para el combate cuerpo a cuerpo, goza de un calibre superior, mejor precisin y mayor cadencia de disparo. + + + PB-1s + + + RP-74 de Zulu + + + El anterior propietario de esta arma fue Zulu. Presenta ciertas mejoras, como un cargador de ms capacidad y un mecanismo retrctil particularmente fiable. Estas modificaciones han aumentado el peso del arma, pero eso no supuso ningn problema para su anterior propietario. + + + PMm + + + PMm honorfica + + + Antigua PMm entregada a Degtyarev como recompensa por "ejecutar con xito rdenes sumamente peligrosas, as como por su valor y coraje en el cumplimiento del deber". + + + Fulminadora + + + Bulldog-6 + + + Este lanzagranadas con aspecto de revlver est provisto de seis caones de avancarga y nima estriada, idnticos al de los lanzagranadas acoplados. El tambor tambin es de avancarga. Muy utilizado para neutralizar posiciones de fuego enemigas; en campo abierto, tambin se usa para atacar posiciones fijas artilladas o eliminar monstruos especialmente resistentes. + + + RP-74 + + + Esta ametralladora de cinta es una modificacin porttil con un complejo sistema de alimentacin de dos fases. A pesar de su baja precisin y excesivo peso, tiene varios admiradores en la Zona. Se utiliza principalmente para rechazar fuerzas enemigas en conflictos entre facciones y para despejar guaridas de mutantes. + + + RPG-7u + + + SIP-t M200 + + + Alpina + + + Modelo exclusivo de la pistola SIP-t M200. Forma parte de una pequea edicin limitada producida para una unidad de fuerzas especiales sin identificar. El modelo dispone de un cargador de gran capacidad, un can de acero muy resistente y un receptor de polmero ultraduradero. + + + SGI-5k + + + Fusil de asalto relativamente nuevo que ha despertado admiracin en todo el mundo, pese a no tener un diseo muy "moderno". Las armas de esta gama se encuentran entre las mejores de su clase, y son conocidas por su fiabilidad, precisin y sencillez de manejo.Aunque es difcil de encontrar en la Zona, los stalkers ms experimentados pagan grandes sumas de dinero para encargarlos al exterior. + + + SGI-5k de Strelok + + + Fusil de asalto SGI-5k de factura suiza. Aunque no es nuevo, resulta evidente que su anterior propietario lo ha cuidado mucho: el arma ha sido desmontada y vuelta a montar con todos los componentes mejorados y ajustados para optimizar su rendimiento y aumentar su poder de detencin. Han grabado la letra "S" en la culata, junto a 16 muescas. + + + SPSA-14 + + + SPSA-AUT + + + La escopeta SPSA-AUT de amartillado automtico solo se fabrica en los talleres de Deber. Est pensada para eliminar grupos numerosos de mutantes. Su mecanismo de alimentacin mejorado garantiza una elevada cadencia de disparo, y la capacidad de su cargador se ha incrementado a 10 proyectiles. Dispara municin de calibre 12x70. + + + Mosquetn + + + Escopeta militar diseada especficamente para unidades de asalto partiendo del modelo SPSA-14. Puede efectuar disparos en modo automtico, igual que su predecesora, pero compensa mejor el retroceso gracias a un equilibrado sistema de absorcin de sacudidas. + + + SVDm-2 + + + Fusil militar de francotirador que lleva ms de cincuenta aos en el mercado y goza de una merecida reputacin por su excepcional fiabilidad y sencillez de uso. Suele utilizarlo el ejrcito para mejorar el alcance efectivo de sus unidades, pero los stalkers lo respetan por sus propiedades perforantes, que les permite atravesar el pellejo de los mutantes y los blindajes militares. + + + Lince + + + Versin del fusil de francotirador SVDm-2 ensamblada a mano. Su aspecto es idntico, pero proporciona una combinacin ideal de precisin y poder de detencin. + + + SVUmk-2 + + + SVU2-A + + + Este fusil de francotirador recortado con cadencia de disparo mejorada es el prximo paso en la evolucin del SVUmk-2. El arma perteneca a Max, el legendario guardia de Libertad. + + + Escopeta de caza + + + Esta escopeta de caza de caones superpuestos es extremadamente comn y ofrece mejor proteccin contra mutantes que una pistola, gracias a su precisin y potencia de detencin. La utilizan sobre todo los novatos en las afueras de la Zona. + + + Arma no identificada + + + Arma desconocida, cuyo mecanismo de disparo an no se ha determinado. Parece defectuosa; no hace nada al apretar el gatillo. + + + UDP Compacta + + + Su intachable fiabilidad y durabilidad, combinadas con una precisin excelente, son las principales caractersticas de esta arma. Entre sus desventajas se encuentra su considerable tamao, un centro de gravedad relativamente elevado y un cerrojo enorme, que dificultan tenerla oculta pero no eclipsan sus cualidades positivas. Es especialmente popular entre los veteranos de la Zona. + + + March + + + Pistola compacta de gran calibre con un mecanismo de cerrojo de recorrido corto y poco peso. Perteneca a un mercenario llamado Perrolobo. Parece ser una pistola UDP Compacta modificada. + + + SA Avalancha + + + Vintar BC + + + Fusil de francotirador militar especial diseado para efectuar tiros de precisin silenciosos y sin fogonazo en operaciones especiales donde la deteccin del tirador puede ser crtica. El Vintar BC posee una gran capacidad perforante y poder de detencin, y est equipado con una mira ptica integrada de precisin. Pese al reducido tamao de su cargador, muchos stalkers lo tienen en alta estima. + + + Marea + + + Arma producida para unidades militares partiendo del diseo del fusil de francotirador silencioso. Posee mayor poder de detencin que su predecesor, el Vintar BC, en detrimento de su cadencia de disparo, lo que permite al tirador eliminar a sus enemigos uno a uno sin revelar su posicin. + + + Walker P9m + + + Rastreadora 13 + + + Escopeta occidental de nima lisa extremadamente popular en todo el mundo por su sorprendente fiabilidad y velocidad de recarga. Los cazadores de la Zona la valoran especialmente por su funcionalidad. Todas sus piezas estn baadas en un compuesto anticorrosin. + + + Depredadora + + + Escopeta de corredera fabricada a medida; perteneca a Trapper. El nico requisito del cazador respecto a esta arma fue que pudiera matar a un depredador de un solo disparo. Esta filosofa se basaba en la creencia de que, por mucha gente que haya matado, un animal sigue siendo un animal, y por tanto no debe sufrir. + + + Bateras caseras + + + Mira SUSAT Merat + + + Fusil de asalto moderno desarrollado como heredero del AKM 74/2. La principal diferencia es su modalidad de disparo de alta velocidad en rfagas de dos proyectiles, que le permite disparar dos balas en el mismo sitio exacto a distancias de hasta 100 metros. Esto aumenta considerablemente la posibilidad de alcanzar al objetivo en comparacin al modo de disparo individual, lo que mejora su letalidad, poder de detencin y potencial perforante. + + + Esta arma, de 1974, marc el punto en que los pases del Pacto de Varsovia adoptaron la municin de pequeo calibre y bajo impulso. El AKM-74/2 es el sucesor del fusil de asalto ms popular; el freno de su boca es mayor que el de su predecesor, reduciendo su ya controlable retroceso. Esto le da ms precisin y agrupacin de disparos, sobre todo si se dispara tiro a tiro o en rfagas cortas. Es sencillo y fiable como su anterior versin. + + + Aunque tiene el tamao y el peso de un subfusil y comparte su funcin tctica, esta arma est clasificada como fusil de asalto porque su mecanismo interno es idntico al del AKM 74/2. Esta arma es clebre por su movilidad en combate cuerpo a cuerpo y su elevada capacidad de penetracin; sus inconvenientes son su escaso alcance efectivo (pese al gran alcance de sus proyectiles), tendencia a sobrecalentarse y elevada propensin al rebote. + + + Versin mejorada de una clsica arma semiautomtica, que destac en los principales conflictos armados del siglo XX y ha entrado con buen pie en el nuevo milenio. Decenas o incluso cientos de empresas de todo el mundo fabrican el arma original y numerosas modificaciones. La nica desventaja del arma es la escasa capacidad de su cargador, pero est compensado ms que de sobra por su potente municin. + + + El pistoln definitivo: voluminoso, pesado y sumamente letal. Diseada como arma especializada para caza media y mayor y para competiciones de tiro en las que haba que disparar contra blancos de acero a distancias superiores a los 50 metros. Su limitado uso en la Zona se atribuye a su precio, peso y tamao, que duplican a los de otras pistolas. + + + Esta arma de aspecto futurista con el cargador detrs de la empuadura es en realidad un sistema modular fabricado en serie, compuesto por un sistema informtico de control de disparos y un lanzagranadas de 40 mm. Pese a su aspecto voluminoso es muy ergonmica, fcil de usar y goza de buenas prestaciones. + + + Pistola de factura ucraniana usada principalmente por agencias gubernamentales. Ofrece ms precisin, ergonoma y capacidad de cargador que la PMm. Estas pistolas llegaron a la Zona en grandes cantidades gracias a la venta de armas defectuosas con errores tcnicos de clculo en los diseos de los primeros modelos. Pese a ello, la pistola tiene mucha demanda entre stalkers por sus excelentes prestaciones de combate. + + + Recin llegado a la familia de los fusiles de asalto occidentales, que se distingue de los modelos automticos anteriores con mecanismos de cerrojo semiabierto; ste es ms parecido a los fusiles de asalto estadounidenses accionados por gas y posee un sistema de pistones por gas de recorrido corto. Estos cambios hacen que el fusil sea el ejemplo perfecto de arma moderna: ligera, fiable y ergonmica. + + + Los numerosos defectos detectados en este fusil provocaron que se remodelase, y las armas decomisadas acabaron en el mercado negro de la Zona. Sus ventajas son la mira integrada con zoom de 4x, una elevada precisin para disparo individual y una tecnologa de mejoras bastante decente. En fuego automtico, su precisin se reduce bastante y sus mecanismos internos bsicos se vuelven poco fiables. + + + Un nuevo hito en el desarrollo de esta conocida gama estadounidense. Se han aplicado cambios en la mitad superior de la pieza de acero formada por el can, el tubo de gas y el mecanismo de cerrojo, reduciendo el peso del arma y mejorando su ergonoma y sistema de gas. Es muy fiable, aunque dada su propensin a ensuciarse no es apropiada para las difciles condiciones de la Zona. + + + Esta pistola fue desarrollada en la segunda mitad del siglo XX partiendo del modelo de la PMm para ser usada por fuerzas especiales y unidades de exploracin. La parte frontal del can est cubierta por un silenciador, mientras que el mecanismo de cerrojo est acortado, por lo que el resorte de la corredera ha tenido que instalarse en la empuadura del arma. Aunque en teora obsoleta, sigue siendo muy eficaz en las manos apropiadas. + + + Este legado sovitico es la pistola ms habitual en la Zona, y una de las mejores armas cortas de autodefensa disponibles. Es pequea, muy fiable, fcil de usar y no requiere mucho mantenimiento. Al mismo tiempo, adolece de varias desventajas, como su corto alcance, escasa precisin y bajo poder de detencin. Adems, comparada con las pistolas modernas de su clase es demasiado pesada y tiene un cargador pequeo. + + + Escopeta de combate no estriada, de diseo parecido al de un revlver con una potencia de fuego tremenda, ideal para unidades militarizadas. Cuenta con cargador de gran tamao y una cadencia de disparo elevada, pero su gran peso, volumen y tiempo de recarga son sus desventajas. Es poco habitual en la Zona. Se utiliza para despejar espacios cerrados llenos de mutantes. + + + Este lanzagranadas de los 60 lleg a la Zona procedente de polvorines militares. Es un lanzador de disparo nico y nima lisa, sin retroceso y con tubo de lanzamiento de retrocarga. Cuenta con mira ptica PGO-7 con zoom de 2.7x. Aunque no suele ser muy usada por los stalkers debido a su tamao y peso, dado su poder de destruccin y su facilidad de uso, ha encontrado admiradores en la Zona. + + + nico modelo de fabricacin en serie que queda de una pistola de renombre mundial. Este arma tiene una merecida reputacin por su ergonoma y precisin. Aunque su cargador es pequeo, su mecanismo funciona como un reloj suizo. Su otra ventaja es la potente municin que utiliza. Algunos creen que la SIP-t M200 es la mejor pistola de calibre ACP .45 que se ha fabricado en serie y tiene muchos seguidores entre los stalkers y mercenarios. + + + Esta escopeta automtica especial de nima lisa fue diseada en la segunda mitad del siglo XX y dispone de mecanismos de disparo de corredera y amartillado automtico. La polica y las tropas de asalto la utilizan con usos diversos. Aunque fiable y flexible, tambin es bastante pesada, compleja y costosa. Aun as, es bastante popular en la Zona, especialmente entre los stalkers que buscan una proteccin eficaz contra mutantes. + + + Versin modernizada del fusil de francotirador SVDm-2, con un diseo compacto de cargador trasero realizado a peticin de las fuerzas de respuesta rpida. Ofrece mayor precisin en fuego rpido y es bastante ms ligero, pero su precisin en disparo individual a corto y medio alcance es similar al de su predecesor. Sus prestaciones le han granjeado la admiracin de innumerables stalkers. + + + Versin modificada del silencioso fusil de francotirador Vintar BC. Fue diseado como arma para fuerzas especiales. Su principal propsito es proporcionar fuego eficaz contra enemigos con protecciones personales modernas sin revelar la posicin del usuario. Gracias a su silenciador integrado y a sus pesadas balas subsnicas de calibre 9x39, el ruido y fogonazo emitidos al disparar se han reducido al mnimo. + + + Conocido como el objeto 62, este fusil de ltima tecnologa e increble precisin fue desarrollado en los laboratorios secretos del interior de la Zona. El arma acelera sus balas a una velocidad extremadamente elevada por medio de un sistema electromagntico, ofreciendo un poder de detencin asombroso y apenas retroceso. El arma funciona con fragmentos encapsulados de artefactos incluidos en sus bateras. + + + Las pistolas Martha gozan de reputacin como armas fiables en todo el mundo, aunque son bastante aparatosas. La utilizan las fuerzas armadas y policiales del otro lado del ocano, adems de diversas organizaciones militares y de orden pblico. Esta pistola es igualmente popular en los bajos fondos gracias a su potente municin y a la capacidad del cargador. Las Martha que se encuentran en la Zona suelen estar desfasadas. + + + Excelente pistola occidental conocida por su fiabilidad, su cargador de gran capacidad y su notable precisin, adems de encontrarse entre las pistolas ms ergonmicas de su clase. Es una de las pistolas ms utilizadas en la Zona por los novatos y los profesionales que se la pueden permitir. + + + Bateras que utilizan un fragmento encapsulado de Destello como fuente de energa. Fabricadas con equipo de alta tecnologa. + + + Estas clulas de baja capacidad emplean fragmentos encapsulados de Destello como fuente de energa. Su baja capacidad se debe a la produccin improvisada y a la falta de equipo especializado. + + diff --git a/gamedata/configs/text/spa/st_items_weapons_upgrades.xml b/gamedata/configs/text/spa/st_items_weapons_upgrades.xml new file mode 100644 index 0000000..eb776b7 --- /dev/null +++ b/gamedata/configs/text/spa/st_items_weapons_upgrades.xml @@ -0,0 +1,2022 @@ + + + + Trayectoria + + + Calibre + + + Retroceso + + + Fiabilidad + + + Mira rflex 1.6x + + + Mira ptica 4x + + + Silenciador + + + acoplamiento bajo can + + + Peso + + + La rosca del can permite montar un silenciador en el arma. + + + Roscado externo del can + + + Instalacin de un soporte para acoplar miras pticas. + + + Soporte ptico + + + Instalacin de un soporte para acoplar un lanzagranadas debajo del can. + + + Soporte para lanzagranadas acoplados + + + Sustituye el cargador estndar por otro ms grande. + + + Capacidad de cargador incrementada + + + Alteracin compleja e integrada de las piezas mecnicas y automatizadas del arma que le permiten disparar un calibre distinto en detrimento de su fiabilidad. + + + Cambio de calibre a 5x45 + + + Alteracin compleja e integrada de las piezas mecnicas y automatizadas del arma que le permiten disparar un calibre distinto en detrimento de su fiabilidad. + + + Cambio de calibre a 5x56 + + + Alteracin compleja e integrada de las piezas mecnicas y automatizadas del arma que le permiten disparar un calibre distinto en detrimento de su fiabilidad. + + + Cambio de calibre a 9x18 + + + Alteracin compleja e integrada de las piezas mecnicas y automatizadas del arma que le permiten disparar un calibre distinto en detrimento de su fiabilidad. + + + Cambio de calibre a 9x19 + + + Aumenta la capacidad del cargador sin incrementar la longitud de la pieza del arma. + + + Aumento de la capacidad del cargador + + + Una caja para municin hecha de policarbonato, ms liviana pero con mayor capacidad, que compensa parte del incremento en el peso del arma. + + + Capacidad de caja de municin aumentada + + + Una mayor cantidad de placas de titanio mejora considerablemente la durabilidad del blindaje. + + + Placas de aluminio/titanio adicionales + + + Placas reforzadas que duran mucho ms, aunque no son tan resistentes. + + + Placas de kevlar + + + Esta aleacin de aluminio y titanio reduce el peso del titanio empleado en el blindaje personal. + + + Placas de aluminio y titanio + + + Normalmente, el titanio es demasiado pesado para usarlo en blindajes personales, pero en ocasiones se utiliza en los exoesqueletos. + + + Componentes de titanio macizo + + + Reemplazar el metal por fibra de carbono reduce el peso del blindaje personal sin sacrificar su fiabilidad. + + + Sustitucin de piezas de blindaje personal con fibra de carbono + + + El kevlar es uno de los materiales ms usados en los blindajes personales. + + + Placas de kevlar + + + El policarbonato puede detener una bala de pistola, aun siendo tan ligero como el plstico. + + + Placas de policarbonato + + + Las placas cermicas no duran mucho, pero son ms fiables que el kevlar porque poseen mayor capacidad para anular la inercia de las balas. + + + Instalacin de placas cermicas + + + Simples placas de acero cosidas a una gabardina. + + + Placas de acero + + + Una capa cermica exterior puede desviar balas perforantes que impacten en cierto ngulo y reducir a un fino polvo las que impactan de forma directa. + + + Capa exterior de blindaje cermico + + + Una capa de blindaje interior adicional por si la exterior resulta daada. + + + Capa doble de placas protectoras + + + Blindaje con una capa interior que dispersa la energa cintica del impacto sobre una superficie mayor. + + + Elemento de compensacin aadido + + + El armazn es capaz de detener una bala de pistola si el blindaje principal resulta daado. + + + Armazn blindado adicional + + + Las lminas ms finas del blindaje se disponen en capas para incrementar su resistencia al desgaste. + + + Proteccin segmentada + + + Aunque aadir ms placas no mejora la proteccin, s garantiza una durabilidad superior. + + + Segunda capa de refuerzo + + + Estas placas mviles protegen las articulaciones de disparos. + + + Instalacin de placas protectoras mviles para las articulaciones + + + Un armazn de aluminio ms liviano para las placas de blindaje que sustituye al de acero. + + + Armazn ligero de aluminio + + + Los separadores ms gruesos reducen la fuerza que ejercen las balas al impactar en el blindaje personal. + + + Aumento de grosor de separadores de cuero + + + Una capa cermica adicional con refuerzo de silicio. + + + Placas de cermica reforzadas + + + El uso de materiales ms ligeros reduce el peso del blindaje personal. + + + Instalacin de componentes sintticos y plsticos ms ligeros + + + Aunque las placas de titanio macizo son demasiado pesadas para el blindaje de un soldado de infantera, los potentes servos de un exoesqueleto pueden con su peso. + + + Coraza de titanio + + + El SBK-RKhZ.m.II es el segundo modelo de este traje de combate especial que ofrece proteccin radioqumica. + + + Traje de proteccin estanco SBK-RKhZ.m.II + + + Esta ardua y laboriosa mejora no es muy popular, aunque ha salvado alguna que otra vida. + + + Cota de malla confeccionada + + + La modificacin Escama consiste en varias placas cermicas superpuestas que impiden que el impacto alcance de lleno al usuario. + + + Modificacin de cermicas deflectoras Escama + + + Una vez tratado con Soberano, el traje se vuelve prcticamente invulnerable a los daos mecnicos y el rasgado del tejido. + + + Tratamiento con compuesto aglutinante Soberano + + + Las placas cermicas suavizan considerablemente el impacto de las balas al convertirlas en fragmentos quebradizos. + + + Aplicacin de capa cermica a placas + + + Las matrices reforzadas que utilizan berilio en vez de aluminio constituyen una de las formas ms fiables de proteger a los soldados de infantera. + + + Las placas cermicas suavizan considerablemente el impacto de las balas al convertirlas en fragmentos quebradizos. + + + Capa cermica sobre placas + + + La fibra de carbono es uno de los materiales ms duraderos y resistentes; incluso se utiliza en la construccin de aviones. + + + Revestimiento combinado de mltiples capas cermicas y de polmero. + + + Revestimiento mixto de placas + + + Tecnologa domstica y uno de los ltimos desarrollos en el campo de la proteccin personal: el cultivo de zafiros artificiales. + + + El ajuste de los componentes permite que el arma pueda usarse mucho ms tiempo sin riesgo de encasquillamiento. + + + Ajuste de componentes + + + La tendencia a usar componentes de plstico no solo merece la pena, sino que se ha convertido en una mejora bastante popular. + + + Componentes de polimaterial + + + El mecanismo de disparo de bajo impulso reduce el retroceso respecto a versiones anteriores. + + + Mecanismo de disparo de bajo impulso + + + Al situar firmemente el proyectil en el momento de ser disparado, la bala vuela en lnea recta hasta alcanzar al objetivo. + + + Instalacin de unidad de posicionamiento de proyectil + + + Los sistemas de encaje por rodillo suelen usarse en armas porque reducen el retroceso y mejoran la agrupacin de disparos. + + + Cerrojo semilibre con sistema de rodillo + + + La instalacin de un cilindro de gas adicional reduce la carga del arma, lo que a su vez incrementa significativamente su cadencia de disparo. + + + Instalacin de cilindro de gas adicional + + + El motor de gas se usa en escopetas de amartillado automtico para dispararlas en modalidad semiautomtica. + + + Instalacin de motor de gas + + + El rociador protector impide el encasquillamiento del arma debido a averas del mecanismo. + + + Rociador protector de componentes + + + Cada vez que se efecta un disparo, una pieza desplaza el can hasta la posicin de cerrado mediante un movimiento longitudinal de la empuadura frontal. + + + Sistema de cierre del can + + + El sistema automtico por inercia convierte el mecanismo de corredera de las escopetas normales en un mecanismo de amartillado automtico. + + + Instalacin de sistema automtico por inercia + + + Los mdulos de compensacin unificada del retroceso son una de las mejores soluciones tecnolgicas para reducir el retroceso de las armas. + + + Mdulo de compensacin unificada del retroceso + + + La biela automtica mejora la precisin del arma. + + + Instalacin de una biela automtica + + + Un contrapeso activo situado en el mecanismo del cerrojo compensa parcialmente el retroceso. + + + Instalacin de contrapeso activo + + + La instalacin de piezas adicionales de rodillo reduce el retroceso. + + + Instalacin de sistema de compensacin de retroceso mediante rodillo + + + Sustitucin del mecanismo de cerrojo del arma por un diseo ms apropiado que mejora la cadencia de disparo. + + + Sistemas de disparo de cerrojo abierto + + + Cuando se dispara el arma, el armazn del contrapeso oscila en la direccin opuesta al cerrojo, haciendo que disparar la ametralladora no resulte tan incmodo. + + + Instalacin de contrapeso de regulacin automtica + + + Se instala un contrapeso como componente adicional en el cuerpo del arma para reducir el retroceso aplicando una fuerza opuesta. + + + Instalacin de un contrapeso mvil + + + La tendencia a usar componentes de polmero no solo merece la pena, sino que se ha convertido en una mejora bastante popular. + + + Componentes de polmero resistentes a los impactos para elementos automticos + + + Instalacin de un mecanismo especial para proteger el arma de la suciedad. + + + Regulador de gas automtico de dos posiciones + + + Un componente especial sella hermticamente el can para incrementar la presin cuando se efecta un disparo. + + + Instalacin de dispositivo de cierre del can + + + La sincronizacin se consigue mediante un engranaje que mejora la trayectoria de los proyectiles. + + + Sincronizacin del movimiento de la biela + + + Componente instalado en la parte trasera del cuerpo del arma que reduce la velocidad del cerrojo. Mejora la eficacia de los disparos apuntados. + + + Mecanismo de reduccin de inercia + + + Componente especial instalado en el mecanismo del cerrojo para suavizar su movimiento y reducir el retroceso. + + + Dispositivo de reduccin de la velocidad de compensacin del retroceso + + + Mejora integrada que normalmente se aplica a fusiles de francotirador debido al considerable incremento del peso del arma. + + + Sistema integrado de amortizacin de retroceso + + + Instalacin de un mecanismo de componentes mviles que incrementa la velocidad de insercin de proyectiles en la recmara mientras se dispara el arma. + + + Alimentacin automtica de municin + + + Mejora de los componentes automticos del arma que requiere la sustitucin de varias piezas. Mejora la precisin. + + + Sistema equilibrado libre de impactos + + + Componente sinttico situado inmediatamente delante de la zona del recorrido del cerrojo que la comprime considerablemente para mejorar la precisin del disparo. + + + Adicin de dispositivo de parada + + + Conexin que fija la posicin del can; si ste se mueve, se abren orificios de compensacin adicionales. + + + Instalacin de pieza de "compensacin inteligente" + + + Modernizacin que suaviza el mecanismo del gatillo (de vital importancia para francotiradores). + + + Instalacin de mecanismo de regulacin de liberacin del gatillo + + + Este componente permite al tirador sentir el instante en que se dispara el proyectil, mejorando as la precisin del disparo. + + + Instalacin de gatillo de preaviso + + + Los sistemas de encaje por rodillo suelen usarse en las armas occidentales porque reducen el retroceso y mejoran la agrupacin de disparos. + + + Cerrojo semilibre con sistema de rodillo + + + Un mecanismo especial absorbe parte del impacto al disparar, haciendo que resulte ms cmodo disparar el arma. + + + Sistema de amortizacin de disparos + + + Dado que los fusiles de francotirador requieren un mantenimiento ms exhaustivo que las armas normales, pueden mejorarse con dispositivos de regulacin por gas de tres posiciones. + + + Instalacin de dispositivo automtico de regulacin por gas de tres posiciones + + + El rociador impide que se disperse la energa, incrementando as la inercia de las balas. + + + Ajuste de piezas automticas mediante rociador + + + La instalacin de un mecanismo de bielas permite disparar el fusil de francotirador en modo automtico. + + + Mecanismo de bielas + + + El dispositivo de parada afecta al mecanismo de compensacin de retroceso, mejorando la precisin. + + + Instalacin de dispositivo de parada + + + La sustitucin del can normal por otro ms largo mejora la precisin y la trayectoria de los proyectiles. + + + Can alargado + + + La ausencia de cmaras de gas y soporte para el can en la empuadura frontal ejerce un efecto positivo en la precisin. + + + Instalacin de can flotante + + + Esta modificacin se instala para reducir el dao causado por un exceso de cambios en la cadencia de disparo del arma. + + + Instalacin de can con aletas de refrigeracin + + + La sustitucin de una pieza anticuada por otra ms moderna reduce el retroceso. + + + Compensacin optimizada del freno de boca + + + La instalacin de un can con roscas adicionales mejora la velocidad de la bala y la precisin del arma, pero incrementa considerablemente el retroceso. + + + Instalacin de roscas adicionales en el can + + + Este can est pensado para aumentar el radio letal en combate cercano, por lo que no es adecuado para fuego de precisin. La simplificacin del interior estriado del can mejora la cadencia de disparo. + + + Instalacin de can con nima estriada simplificada + + + El estriado poligonal del nima mejora la precisin. + + + Instalacin de can con estriado poligonal + + + Reduce el calentamiento del can y aumenta la cadencia de fuego. + + + Estriado sinusoidal de la recmara del can + + + Recambio especial del can para armas de buena trayectoria que mejora su precisin. + + + Estriado de can de fusil de francotirador + + + Los materiales de alta durabilidad reducen el desgaste del can del arma. + + + Can de aleacin de alta durabilidad + + + El tratamiento de la superficie interna del can lo protege de daos mecnicos. + + + Tratamiento del can + + + El engrosado sinttico de la cavidad del can mejora considerablemente la agrupacin de disparos. + + + Engrosado sinttico del can + + + La sustitucin del can normal por otro ms largo mejora la trayectoria de los proyectiles. + + + Secciones de can ms largas + + + La introduccin de canales de ventilacin de gas en el can no solo impide que acumule suciedad, tambin redirige parte del retroceso hacia el can. + + + Canales longitudinales de ventilacin de gas + + + La sustitucin del can normal por otro ms largo mejora la trayectoria de los proyectiles. + + + Seccin de can alargado + + + Este rociado impide que el can se sobrecaliente, elimina los defectos de fbrica y aumenta en gran medida el ciclo vital del can. + + + Aplicacin de rociador protector al interior del can + + + El sistema de equilibrado del can incluye varios pistones mviles que estabilizan el arma cuando se empua. + + + Sistema de equilibrado del can + + + La parte estriada del can impide que se disparen perdigones, pero el aumento de precisin lo compensa. + + + Caones de nimas estriadas + + + El engrosado con polimateriales incrementa la presin del can, aumentando as la velocidad de las balas. + + + Engrosador dinmico del can + + + La perforacin cilndrica del can ayuda a mejorar la cadencia de disparo sin afectar a la precisin. + + + Perforacin cilndrica del can + + + Cuando se dispara, un contrapeso activo se traslada simultneamente a la boca del can para compensar parte del retroceso. + + + Instalacin de contrapeso activo en la funda del can + + + La sustitucin de un can normal por otro ms largo mejora la precisin y la trayectoria, pero reduce la cadencia de fuego. + + + Seccin larga del can + + + La perforacin del can reduce el retroceso descargando los gases por orificios especiales. + + + Seccin perforada del can + + + Un can recortado ms tecnolgico mejora la cadencia de disparo del arma sin sacrificar trayectoria ni precisin. + + + Seccin recortada del can + + + El cromado mejora el ciclo vital del can. + + + Cromado de la cara interna del can + + + Los separadores absorben parte del retroceso. + + + Instalacin de separadores de goma + + + Una pieza estriada simplificada es til para combates a corta distancia en los que prima la cadencia de fuego sobre la precisin. + + + Instalacin de can con nima estriada simplificada + + + La instalacin de un can con roscas adicionales mejora la velocidad de la bala y la precisin del arma, pero incrementa considerablemente el retroceso. + + + Instalacin de roscas adicionales en el can + + + Aligerar el peso del can y reduce considerablemente el retroceso. + + + Traslado del compensador/reductor de fogonazo del can al cuerpo + + + Reduce el calentamiento del can y aumenta la cadencia de fuego sin sacrificar trayectoria. + + + Estriado sinusoidal del can + + + El estriado poligonal mejora la precisin de los fusiles de francotirador. + + + Instalacin de can con estriado poligonal + + + El potenciador neumtico incrementa la velocidad de disparo transformando parte del retroceso en presin dentro del can. + + + Instalacin de potenciador neumtico + + + Dispositivos motrices adicionales que incrementan la capacidad mxima de carga. + + + Servomotores adicionales + + + Innovacin de los tcnicos de Libertad, los primeros en sustituir el metal por fibra de carbono para reducir el peso de los exoesqueletos. + + + Sustitucin de piezas metlicas por fibra de carbono + + + El blindaje protege de disparos precisos los componentes ms importantes del exoesqueleto. + + + Blindado del aparato de traccin + + + El sistema de movimiento fluido incorpora resortes y articulaciones reforzadas que permiten al usuario utilizar el peso del exoesqueleto para facilitar las funciones motrices. + + + Sistema de movimiento fluido Shagohod + + + Esta modificacin distingue a los exoesqueletos de tercera generacin de los de cuarta. Permite correr a toda velocidad con el exoesqueleto. + + + Instalacin de potenciadores hidrulicos en aparatos de traccin + + + La capa de tejido impide que las zonas blandas se daen en caso de impacto contra el blindaje. + + + Capa de tejido compensatorio + + + Los engrosadores de silicio son ms eficaces que sus contrapartidas de goma y absorben mejor los impactos. + + + Engrosadores compensatorios de silicio + + + Los tejidos, grampas y engrosadores se sustituyen por materiales sintticos ms livianos para reducir el peso. + + + Polmeros y materiales sintticos ms ligeros + + + La capa de caucho impide que las zonas blandas se daen en caso de impacto contra el blindaje. + + + Capa de caucho compensatoria + + + Subcapa protectora en caso de que el tejido principal se desgarre. + + + Mltiples capas de policarbonato, silicio y fibra de carbono por si el blindaje principal es perforado. + + + Separadores protectores de polmero + + + Este traje estanco de Libertad es til para localizar artefactos en zonas de anomalas. + + + Traje de proteccin contra anomalas Expansin + + + Una capa hermtica de materiales sintticos por si la capa externa es daada. + + + Capa sinttica + + + Varios ajustes ergonmicos fabricados con goma que permiten conservar la movilidad aun vistiendo blindajes voluminosos. + + + Traje ergonmico de goma + + + El constantn proporciona aislamiento contra electricidad y tiene un punto de fusin muy elevado. + + + Aislantes trmicos de constantn + + + El plomo es una defensa eficaz contra la radiacin, ya que absorbe los tres tipos existentes. + + + Adicin de plomo al traje + + + Proteccin bsica contra la lluvia y las sustancias custicas que puedan entrar en contacto con la piel. + + + Traje de lona + + + Los tejidos tratados con fluidos ignfugos son populares entre los stalkers que buscan artefactos de fuego. + + + Tejido tratado con sustancia ignfuga + + + Los separadores de magnesio protegen al usuario de riesgos trmicos. + + + Separadores de placas de magnesio + + + Una simple capa interna de plstico puede proteger al usuario de riesgos qumicos y elctricos. + + + Capa interna hermtica de plstico + + + Los tejidos, grampas y engrosadores se sustituyen por materiales sintticos ms livianos para reducir el peso. + + + Sustitucin de tejidos por materiales sintticos + + + El plexigls absorbe dos tipos de radiacin y es mucho ms ligero que el plomo. + + + Capa interna de plexigls contra la radiacin + + + Proteccin fiable contra riesgos qumicos y elctricos. + + + Capa interna hermtica de plstico flexible + + + Una fina capa de constantn basta para aislar contra la electricidad. + + + Capa interna aislante con base de constantn + + + La fibra de vidrio se utiliza en los trajes de los equipos de salvamento para desastres naturales. + + + Proteccin trmica de fibra de vidrio + + + El tejido impregnado evita el envenenamiento qumico. + + + Malla corporal impregnada + + + El caucho ofrece proteccin bsica contra exposiciones breves a la radiacin. + + + Malla corporal de caucho + + + Los stalkers lo usan en sus trajes para aumentar su durabilidad. + + + Armazn protector de alta durabilidad Escudo + + + El nquel es lo bastante ignfugo como para ser usado en separadores de blindaje. + + + Traje ignfugo con separadores de nquel + + + Esta aleacin de nquel y magnesio se usa en los blindajes para proteger contra descargas elctricas. + + + Traje aislante con separadores de manganina + + + Traje estanco con una capa anticorrosin y blindaje de kevlar. + + + Traje blindado integrado Segunda Piel + + + Traje fabricado con polmeros no especificados utilizados anteriormente por el instituto de investigacin de Kiev para desarrollar el traje Eclogo. Cavidades rellenas de bismuto. + + + Traje de polmero Eclogo con separadores de bismuto + + + La malla de plomo ofrece una proteccin total contra radiacin y riesgos qumicos sin perder movilidad. + + + Traje de plexigls Salvavidas con malla de plomo flexible + + + Desarrollo autctono que apareci tras el desastre de Chernbil. Utilizado en exoesqueletos para impedir averas electrnicas. + + + Traje Evacuador con separadores de plomo + + + Mira de asalto para combate a corta distancia. + + + Mira rflex 1.6x + + + Mira ptica para combate a media y larga distancia. + + + Mira ptica 4.0x + + + Mira ptica para combate a larga distancia. + + + Mira ptica 5.0x + + + Mira ptica para combate a larga distancia. + + + Mira ptica 6.0x + + + Modificacin practicada en armas de asalto con miras rflex: consiste en una simple mejora del contraste del espectro amarillo. Vital para combatir en edificios mal iluminados y durante el amanecer. + + + Mejora del contraste de la mira + + + Un visor trmico permite al usuario detectar e identificar fuentes de calor. + + + Seleccin automtica de objetivo + + + Los dispositivos de visin nocturna han salvado a muchos francotiradores. + + + Instalacin de dispositivo de visin nocturna + + + Esta modificacin permite que la mira pueda ajustarse fcilmente a la distancia de disparo. + + + Mira ajustable para el clculo de distancias + + + Las culatas neumticas reducen el retroceso de las rfagas. + + + Culata neumtica + + + Una hombrera mvil reduce considerablemente el impacto del retroceso sobre el cuerpo. + + + Instalacin de hombrera compensatoria + + + Culata moderna que tiene en cuenta la naturaleza especfica de la fisiologa humana. + + + Culata ergonmica + + + Al disparar el arma, el can libera parte de los gases en la cavidad que hay tras el cerrojo, garantizando as que se detenga suavemente al desplazarse hacia atrs. + + + Instalacin de amortiguador de gas con mecanismo de cerrojo + + + El alargamiento parcial de la pieza del cerrojo en la culata aumenta la trayectoria, pero tambin el retroceso. + + + Alargamiento del amortiguador de impacto de la pieza del cerrojo + + + Instalacin de una pieza mvil en la culata que ejerce contrapeso cuando se dispara el arma. + + + Contrapeso mvil + + + Un soporte mayor aumenta la precisin. + + + Aumento del tamao del soporte + + + Un muelle amortiguador de retroceso elimina parte de la incmoda sensacin experimentada al disparar una ametralladora empuada. + + + Resorte amortiguador de retroceso integrado + + + Instalar un amortiguador de gas por cerrojo en la culata absorbe y elimina gran parte del retroceso. + + + Amortiguador de gas con mecanismo de cerrojo adicional + + + Esta pieza recauchutada suele incluirse de serie en las culatas de los fusiles de francotirador de gran calibre. + + + Pieza de culata compensatoria + + + Culata ajustable con una almohadilla para la mejilla, til para disparar desde cualquier posicin. + + + Culata ajustable con almohadilla para la mejilla + + + Pieza de culata para armas de gran calibre con mucho retroceso. + + + Amortiguador de retroceso hidrulico en culata + + + Los filtros activos resisten las sustancias qumicas ms corrosivas. + + + Filtros activos + + + La banda cerrada ha demostrado ser una excelente proteccin parcial contra emisiones psquicas directas. + + + Banda de proteccin psquica de pares de rejillas de acero + + + Una mscara empleada en zonas con aire contaminado o temperaturas extremas (demasiado altas o bajas para respirar). + + + Aplicacin de revestimiento protector + + + Aplicacin de revestimiento protector + + + Un filtro con un revestimiento anticorrosivo reforzado y una capa adicional para extraer sustancias txicas. + + + Filtro para trabajar en zonas contaminadas + + + Una mscara de plexigls ofrece cierta proteccin contra radiacin. + + + Revestimiento de plexigls + + + Una mscara de plexigls ofrece cierta proteccin contra radiacin. + + + Mascarilla hecha de plexigls + + + Aparato respirador para bloqueo total de toxinas. + + + Mascarilla impregnada + + + Esta matriz de berilio y aluminio ofrece una proteccin excelente sin aumentar el peso del casco de forma significativa. + + + Placas de berilio y aluminio + + + La matriz de berilio y titanio garantiza una proteccin ms eficaz sin aumentar el peso de forma significativa. + + + Placas de berilio y titanio + + + Estos filtros mejorados regulan el nivel de oxgeno por muy contaminado que est el entorno. + + + Instalacin de filtros mejorados para tareas cientficas + + + Proteccin psquica de alta tecnologa, supuestamente inventada por un cientfico llamado Sakharov. + + + Instalacin de banda Psicodomo + + + Armazn de aleacin que protege de daos trmicos y elctricos. + + + Blindaje facial de constantn Ave de Trueno + + + Blindaje adicional que aumenta la durabilidad del casco. + + + Armazn de casco blindado reforzado + + + Un filtro con revestimiento purificador adicional y sistema para desechar toxinas. + + + Respirador reforzado para condiciones extremas + + + Instalacin de un dispositivo de visin en la oscuridad para operaciones nocturnas o con poca iluminacin. + + + Dispositivo de visin nocturna de primera generacin + + + Este sistema activa un mecanismo de respiracin de ciclo cerrado si el aire est contaminado con partculas radiactivas o qumicas. + + + Sistema de aviso contra riesgos radiactivos y qumicos + + + Mascarilla de purificacin por vapor + + + Instalacin de un dispositivo de visin nocturna ms avanzado para operar en completa oscuridad. + + + Dispositivo de visin nocturna de segunda generacin + + + Un visor trmico permite al usuario detectar e identificar fuentes de calor. + + + Seleccin automtica de objetivo + + + Dispositivo cientfico de ondas desarrollado para trabajar en zonas anmalas con emisiones psquicas. + + + Estimulante psquico Orculo + + + Instalacin de un dispositivo de visin nocturna ms avanzado para operar en completa oscuridad. + + + Dispositivo de visin nocturna de tercera generacin + + + Las partculas de aire ionizadas recorren los electrodos del sistema en direccin opuesta a los electrones, creando as un viento inico. + + + Sistema de refrigeracin Viento Inico + + + El escner de infrarrojos permite detectar humanos en las inmediaciones. + + + Escner de infrarrojos + + + Sistema de proteccin de ondas psquicas y seguridad psicolgica, modelo cuatro. + + + Sistema de combate SPB VPZ.m.IV + + + El muelle reforzado aumenta la velocidad de las balas. + + + Muelle de retroceso reforzado + + + La instalacin de engrosadores en las piezas mviles del mecanismo hace que el can se desve menos del objetivo al disparar. + + + Compensador del mecanismo de retroceso + + + Instalacin de un resorte adicional con muelle invertido para reducir el retroceso sin sacrificar la trayectoria. + + + Muelle de retroceso adicional + + + Rociador protector que aumenta la fiabilidad, y lo que es ms importante, garantiza el aislamiento, impidiendo as que la energa se disipe. + + + Rociador protector para el mecanismo de retroceso + + + Las bielas de titanio resisten una cadencia de fuego ms alta que las normales. + + + Bielas de titanio para el mecanismo de retroceso + + + Un elemento sinttico instalado en las bielas garantiza que se muevan correctamente, incrementando as la precisin. + + + Elemento equilibrador aadido + + + El engrosado del manguito incrementa la presin del can, aumentando as la velocidad de las balas. + + + Engrosador del manguito del mecanismo de retroceso + + + Conexin que se abre por accin de los gases y se cierra por el propio mecanismo de retroceso, y que permite aprovechar parte de la energa del gas para operar dicho mecanismo. + + + Instalacin de conexin de distribucin + + + El mecanismo de retroceso se sustituye por una versin ms potente compuesta por dos bielas maestras y resortes que incrementan la cadencia de disparo. + + + Conversin a sistema de dos bielas + + + Canales especiales de salida para los gases alrededor del tambor del ama; reducen el retroceso. + + + Uso de energa de gas + + + Se instalan levas diagonales en el tambor para acelerar la rotacin del mecanismo que utiliza energa de gas. + + + Instalacin de levas diagonales en el tambor + + + Esta tpica modificacin europea reduce el peso sin menoscabar la fiabilidad. + + + Culata de polmero resistente a los impactos + + + Un cuerpo duradero permite que los fusiles de asalto se usen peridicamente en combate sin apenas desgaste. + + + Cuerpo de aleacin de alta durabilidad + + + Instalacin de un simple lastre en la parte delantera del cuerpo del arma para reducir el retroceso. + + + Instalacin de contrapeso en la caja de acero + + + La instalacin de fundas ayuda a modificar la cadencia de fuego del arma, lo que produce un incremento de temperatura que debe controlarse. + + + Funda de enfriamiento adicional + + + La forma del arma es ms cmoda e incluye una empuadura para dispararla en movimiento sin problema. + + + Cuerpo ergonmico + + + Modificacin aplicada exclusivamente a caones de armas con el cargador tras el gatillo, para simplificar el mantenimiento. + + + Cuerpo modular + + + Este rociado impide que el can se sobrecaliente, elimina los defectos de fbrica y aumenta en gran medida el ciclo vital del can. + + + Pulido del cuerpo mediante surcos y rociado de cavidades + + + En la empuadura inclinada del arma se instala una pieza mvil de poco peso para compensar el retroceso y estabilizarla. + + + Empuadura inclinada + + + La cavidad que hay dentro de la empuadura reduce el peso del arma. + + + Empuadura inclinada + + + Versin ms ligera de la culata normal. + + + Culata ms ligera + + + El peso del arma se reduce usando un polimaterial ms liviano. + + + Culata de polmero resistente a los impactos + + + Se aade una pieza maciza al arma para reducir el retroceso. + + + Instalacin de un contrapeso + + + Una empuadura ms moderna y cmoda que simplifica el manejo del arma. + + + Empuadura ergonmica + + + Una empuadura compensatoria reduce el retroceso. + + + Empuadura compensatoria + + + Una culata ms moderna y cmoda que simplifica el manejo del arma. + + + Culata ergonmica + + + Revestimiento especial que protege el arma de los elementos. + + + Revestimiento anticorrosivo + + + El absorbedor de mercurio se instala en la culata del arma y consume parte del retroceso cuando se dispara. + + + Absorbedor de retroceso de mercurio + + + Este contrapeso mvil de impulso se desplaza desde el cerrojo cuando se dispara el arma, absorbiendo as parte del retroceso. + + + Instalacin de contrapeso de impulso + + + El cambio de material reduce el dao causado al can por sobrecalentamiento desigual, lo que permite aumentar la cadencia de disparo del arma. + + + Aleaciones de alta durabilidad resistentes al calor + + + Importante modificacin que protege el arma de la temperatura externa al disparar. + + + Instalacin de fundas de regulacin trmica + + + Las aletas son una mejora tecnolgica que requiere una precisin extrema para evitar el sobrecalentamiento en ciertas zonas del can. + + + Aletas externas para el can + + + Sustitucin del can por una versin ms moderna que ofrece un aumento considerable en la precisin. + + + Cambio de la geometra del can + + + Un armazn caro para que el arma dure mucho tiempo. + + + Armazn de titanio + + + Este armazn es ms fiable que el compuesto. + + + Armazn de acero macizo + + + La sustitucin tcnica del armazn de pistola por otro ms ligero no afecta a su fiabilidad. + + + Armazn de pistola de polmero + + + Una empuadura ms moderna y cmoda que simplifica el manejo del arma. + + + Empuadura ergonmica + + + Una empuadura compensatoria reduce el retroceso. + + + Empuadura compensatoria + + + Estas solapas protegen el arma de impactos y suciedad. + + + Engrosadores protectores del cuerpo + + + Cambio en la zona posterior que ofrece un diseo ms ergonmico de la empuadura. + + + Empuadura con parte posterior recta + + + La posibilidad de elegir la longitud ms adecuada de la empuadura permite un diseo ms ergonmico. + + + Empuadura ajustable + + + Esta modificacin solo es posible si se ha instalado un muelle de retroceso en la empuadura. + + + Instalacin de compensador del muelle de retroceso + + + La posibilidad de elegir la placa ms adecuada para la empuadura permite un diseo ms ergonmico. + + + Empuadura modificada con placas reemplazables + + + La funda evita un desgaste prematuro en las armas que se usan a menudo. + + + Instalacin de funda de acero perforada + + + Pieza ms tecnolgica y con mejor absorcin de retroceso que las utilizadas en las armas automticas normales. + + + Freno de boca de compensacin eficaz + + + Un can ms moderno y apropiado para disparos de precisin a distancias muy largas. + + + Instalacin de una seccin de can pesado con estriado poligonal + + + Los surcos longitudinales de la seccin del can impiden que se sobrecaliente y se llene de suciedad. + + + Surcos longitudinales de la seccin del can + + + Silenciador y supresor de fogonazo integrados; esenciales para disparos silenciosos. + + + Instalacin de silenciador integrado + + + El estriado sinusoidal de la recmara del can suele aplicarse a armas de asalto para aumentar su cadencia. + + + Estriado sinusoidal de la recmara del can + + + Desarrollado por uno de los institutos de investigacin de Kiev. Inyecta pequeas dosis de adrenalina en el torrente sanguneo de forma peridica. Puede ser peligroso, pero tambin salvarte la vida en caso de emergencia. + + + Inyector de adrenalina Furia + + + Un sistema para desechar o condensar las toxinas acumuladas en el filtro purificador. + + + Sistema de eliminacin de venenos + + + Este pequeo emisor de ondas desarrollado por Cielo Despejado va montado sobre la espalda y estimula la coagulacin de la sangre. + + + Estimulante sanguneo Rayo + + + Sistema que suministra electricidad al exterior del traje, repeliendo partculas radiactivas y qumicas. + + + Sistema antipolvo integrado + + + Inyector de segunda generacin que inocula un agente coagulador en el organismo si la presin sangunea se reduce significativamente. + + + Inyector de hemoglobina Hidra + + + Este sistema previene la fatiga optimizando la temperatura corporal. + + + Instalacin de sistema de regulacin trmica + + + Este emisor de ondas va montado sobre el pecho y aumenta considerablemente la velocidad de recuperacin, la fuerza del sistema inmunolgico y el umbral de dolor del usuario. + + + Bioestimulante Sol + + + Dispositivo cientfico de ondas desarrollado para trabajar en zonas anmalas con emisiones psquicas. + + + Estimulante psquico Orculo + + + Inyector de tercera generacin que inocula una mezcla de dudoso contenido en el organismo, estimulando la regeneracin de tejidos y mitigando el dolor. + + + Sistema de restauracin Fnix + + + Sistema integrado que monitoriza la salud del usuario y le inyecta vitaminas, adrenalina o sustancias anablicas segn sea necesario. + + + Instalacin de sistema de soporte vital + + + Este emisor de ondas va montado sobre el cuello, y aunque se desconoce su mecanismo, ejerce un fuerte efecto calmante. + + + Neuroestimulador reflexivo + + + La funcin del compensador del percutor del cerrojo es absorber parte del retroceso para mejorar la agrupacin de disparos en rfagas. + + + Compensador del percutor del cerrojo + + + Una de las modificaciones ms simples y populares consiste en reducir la resistencia del gatillo. Sencilla y til. + + + Liberacin sensible del gatillo + + + Seleccin especial de piezas fabricadas con diversos materiales especficos para cada arma. Puede que no sea barata, pero prolonga el ciclo vital del arma. + + + Piezas compuestas del mecanismo de disparo + + + Permite un incremento de la cadencia de disparo a cambio de sacrificar precisin y fiabilidad. + + + Dispositivo de retraso del gatillo + + + La extraccin del resorte permite efectuar el primer disparo medio segundo antes. Quiz no sea mucho, pero te puede salvar la vida. + + + Liberacin del gatillo sin resorte + + + El rociador protector impide el encasquillamiento del arma debido a averas del mecanismo de disparo. + + + Rociador protector para el mecanismo de disparo + + + El anclaje sin cerrojo aumenta la capacidad de carga automtica, mejorando considerablemente la cadencia. + + + Anclaje del mecanismo de disparo sin cerrojo + + + El mecanismo sin impactos perfora el proyectil en lugar de golpearlo, usando un percutor especial que suaviza considerablemente el disparo. + + + Instalacin de mecanismo de disparo sin impacto + + + El gatillo se arma al apretarlo por primera vez, y todos los dems disparos se efectan de forma automtica. + + + Mecanismo de disparo de doble pulsacin + + + Una de las modificaciones ms simples y populares consiste en reducir la resistencia del gatillo. Sencilla y til. + + + Liberacin sensible del gatillo + + + El prearmado parcial permite mejorar la precisin. + + + Mecanismo de disparo con prearmado parcial + + + Permite aplicar la misma presin sobre el gatillo desde el primer disparo hasta el ltimo, mejorando as el manejo del arma. + + + Dispositivo de liberacin segura + + + Modificacin moderna que impide la separacin de la seccin del cerrojo del resto del arma. + + + Cabezal del cerrojo de mayor tamao + + + El mecanismo de disparo modular facilita el mantenimiento, la sustitucin de piezas y el manejo del arma. + + + Mecanismo de disparo modular + + + Reduce considerablemente la cantidad de presin requerida sobre el gatillo, mejorando as la precisin. + + + Instalacin de pieza de armado + + + Nuevo desarrollo tecnolgico que consiste en un simple ajuste para cambiar el mecanismo de disparo. Se trata de otro paso ms para mejorar la ergonoma y facilitar la personalizacin. + + + Modalidad de disparo doble + + + Una vez efectuado el primer disparo, solo se requiere media accin del gatillo para cada disparo adicional. + + + Mecanismo de disparo de corto recorrido + + + Dispositivos motrices adicionales que incrementan la capacidad mxima de carga. + + + Servomotores adicionales + + + Este sistema suministra sustancias antitetnicas, antiinflamatorias y antispticas. + + + Sistema integrado de medicina de campaa + + + Sistema de ventilacin del traje con un filtro de prevencin para trabajar en zonas contaminadas. + + + Sistema de regulacin trmica interna + + + Mejora ergonmica: las monturas especiales acopladas al traje reducen el peso aparente de la carga acarreada. + + + Chaleco de distribucin del peso + + + Los tanques de oxgeno son necesarios para adentrarse en zonas contaminadas por partculas qumicas o radiactivas. + + + Instalacin de tanque de oxgeno + + + Instalacin de cavidad adicional para artefactos. + + + Cavidad adicional para artefactos + + + Este sistema de monturas distribuye equitativamente el peso cargado sobre todo el cuerpo. + + + Monturas de distribucin del peso + + + El armazn dorsal alivia el peso de la carga sobre los hombros distribuyndolo por todo el cuerpo, aumentando as la capacidad mxima de carga. + + + Armazn dorsal de distribucin del peso + + + Este sistema suministra sustancias antispticas, antitetnicas y estimulantes. Es casero, pero no parece perjudicial para el organismo. + + + Sistema integrado de asistencia mdica + + + Dispone de una rejilla especial con una carga idntica a la de las anomalas para minimizar su amenaza. + + + Sistema de contramedidas electrostticas Pez Raya + + + La capa interna impregnada debera evitar envenenamientos qumicos. + + + Capa interna impregnada de proteccin qumica + + + Modelo experimental de sistema para competir en maratones; no se usa fuera de la Zona debido a su elevado coste y dudosas aplicaciones. + + + Sistema integrado de atleta + + + Este sistema elimina las toxinas y la condensacin de las cavidades respiratorias. + + + Sistema de eliminacin de toxinas Antdoto + + + Instalacin de cavidad adicional para artefactos. + + + Cavidad doble adicional para artefactos + + + Sistema de combate integrado en todo el traje. Casi no lo usa nadie aparte del Spetsnaz. Tiene un sistema incorporado que inyecta adrenalina y coagulantes. + + + Sistema de campaa Varyag + + + Los diseadores de este prototipo de sistema de combate prefirieron desechar la inyeccin intrusiva de adrenalina, sustituyndola por sustancias coagulantes. + + + Sistema de campaa Esquife + + + Esta modificacin es bastante cara, pero suele aplicarse a las armas de nueva generacin. + + + Instalacin de cerrojo macizo + + + El engrosado de la seccin del cerrojo impide que la energa se disipe, lo que mejora la trayectoria. + + + Engrosado de la seccin del cerrojo con piezas sintticas + + + Pese a su nombre, lo que se sustituye es el cerrojo, pues debe resistir el efecto de una mayor cadencia de fuego. + + + Liberacin automtica rpida + + + El extractor de gas tiene un bloque que se mueve a la misma velocidad, absorbiendo parte del retroceso. + + + Instalacin de extractor de gas con un bloque mvil + + + Un segundo pistn desplaza el contrapeso para compensar el impulso del mecanismo del cerrojo. + + + Instalacin de pistn de gas adicional + + + Rociador protector que aumenta la fiabilidad, y lo que es ms importante, garantiza el aislamiento, impidiendo as que la energa se disipe en exceso. + + + Rociador protector de la seccin del cerrojo + + + La funcin de los surcos del cuerpo el arma es reducir la friccin y atrapar partculas pequeas, evitando as la contaminacin del mecanismo del cerrojo. + + + Instalacin de surcos longitudinales + + + Reducir el dimetro de la cmara de gas con engrosadores sintticos aumenta la velocidad de las balas. + + + Energa de gas dirigida + + + En su recorrido hasta su posicin inicial, el cerrojo redirige el aire a travs de la recmara del can para enfriarlo. + + + Enfriamiento forzado + + + El cerrojo se desliza a lo largo del can, impidiendo que la boca del arma se eleve. + + + Instalacin de cerrojo deslizante + + + La instalacin de un pistn de gas impide que entre gas en la pieza del cerrojo, lo que reduce considerablemente la suciedad del arma. + + + Instalacin de pistn de gas + + + Este sistema acumula parte de los gases usando la seccin del cerrojo para mejorar su movimiento. + + + Sistema de recoleccin de energa de gas + + + La sustitucin de las piezas automticas es ms una optimizacin que una mejora del pistn de gas. Ofrece un aumento considerable en la cadencia de disparo. + + + Pistn de gas de recorrido corto + + + Los sistemas de encaje por rodillo suelen usarse en las armas modernas porque reducen el retroceso y mejoran la agrupacin de disparos. + + + Cambio a sistema de rodillo con cerrojo semilibre + + + Absorbiendo parte del calor, las piezas reducen la temperatura del arma mientras se dispara. + + + Piezas absorbedoras de calor + + + El aumento del recorrido del pistn aumenta ligeramente la longitud del arma, pero mejora mucho su trayectoria. + + + Pistn de gas de recorrido largo + + + Distribuye equitativamente el retroceso por toda el arma cuando dispara, haciendo que sea menos pronunciado. + + + Instalacin de amortiguador especial de piezas mviles + + + El enfriamiento simtrico de una parte del can se debe a la instalacin de un eyector que impide que el arma se caliente. + + + Sistema de enfriamiento forzado uniforme + + + Aumenta la cadencia de disparo sin sobrecargar otras piezas con un retroceso adicional. + + + Seccin de cerrojo mvil + + + Mejora la trayectoria facilitando la transferencia del impulso a la bala. + + + Sistema de cierre del can para la seccin del cerrojo + + + Suaviza el retroceso ralentizando el movimiento del cerrojo. + + + Sistema de ralentizacin de cerrojo + + + El rociador protege las armas de un desgaste prematuro. + + + Rociador protector de la seccin del cerrojo + + + Mejora la trayectoria facilitando la transferencia del impulso a la bala. + + + Sistema de cierre sesgado del can + + + Un cerrojo cerrado ms pesado que impide que la seccin del cerrojo de la pistola falle. + + + Cerrojo reforzado y cerrado + + + Pequeo amortiguador que absorbe parte del retroceso. + + + Amortiguador de retroceso de polmero + + + La instalacin de un separador de acero ayuda a reducir el retroceso. + + + Instalacin de un separador de cierre con surcos espirales + + + La trayectoria se mejora aumentando el movimiento del cerrojo y reforzando el mecanismo de retroceso. + + + Movimiento del cerrojo mejorado + + + El recorrido corto aumenta considerablemente la cadencia de disparo sin perder trayectoria. + + + Configuracin de cerrojo de recorrido corto + + + El recorrido largo imprime ms energa a las balas. + + + Configuracin de cerrojo de recorrido largo + + + La sustitucin de las piezas automticas es ms una optimizacin que una mejora del pistn de gas. Ofrece un aumento considerable en la cadencia de disparo. + + + Configuracin de uso de energa del retroceso de recorrido corto + + + La instalacin de este mdulo mejora considerablemente la agrupacin sin perder velocidad de disparo. + + + Mdulo de retroceso combinado de doble resorte + + + La introduccin de orificios de compensacin adicionales reduce significativamente el retroceso. + + + Compensador integrado de elevacin del can + + + Modernizacin de las piezas automticas de la pistola ideal para el fuego automtico. + + + Modalidad de fuego automtico + + + Mejora de las piezas automticas de la pistola ideal para disparar rfagas de tres proyectiles. + + + Modalidad de rfaga de tres disparos + + + Coste + + + No se puede instalar + + + Instalada + + + Confirma que quieres instalar: + + + Sel. autom. de objetivo + + + Sel. autom. de objetivo + + + Mira ptica 5x + + + Mira ptica 6x + + + Escner de infrarrojos + + + Peso blindaje personal + + + Disp. visin noct. 2 gen. + + + Disp. visin noct. 3 gen. + + + Soporte para mira ptica + + + Silenciador integrado + + + Lanzagranadas acoplado + + + Curacin de heridas + + + Restauracin de salud + + + Disp. visin noct. 1 gen. + + + Mira ajustable + + + Mira de alto contraste + + + Poten. servomotores + + + Durabilidad del traje + + + No est claro cmo funciona el arma. No puedes repararla sin informacin adicional sobre su diseo. + + + El tcnico no puede realizar esta modificacin + + + Esta pieza ya ha sido modificada + + + No tienes suficiente dinero + + + No usa disparos + + + Modo fuego automtico + + + Modo rfaga de 3 disparos + + + Nmero de contenedores + + + el tcnico necesita vodka + + + el tcnico necesita herramientas para tareas bsicas + + + el tcnico necesita herramientas de trabajo profesional + + + el tcnico necesita herramientas de calibracin + + + el tcnico necesita datos adicionales + + + se necesitan modificaciones anteriores + + + Revestimiento protector Armadillo con base de cristales de zafiro + + + Matriz de titanio y berilio reforzada + + + Revestimiento adicional de fibra de carbono + + + Subcapa de tejido de caucho + + diff --git a/gamedata/configs/text/spa/st_land_names.xml b/gamedata/configs/text/spa/st_land_names.xml new file mode 100644 index 0000000..01c39a4 --- /dev/null +++ b/gamedata/configs/text/spa/st_land_names.xml @@ -0,0 +1,171 @@ + + + + Anomala Garra + + + Anomala Bosque de hierro + + + Aserradero + + + Complejo de la antena de Krug + + + Planta de tratamiento de basura + + + Anomala Circo + + + Puesto de guardabosques + + + Skadovsk + + + Granja quemada + + + Anomala Caldero + + + Pantano + + + Izumrudnoye + + + Shevchenko + + + Planta de dragado + + + Gras del muelle + + + Anomala Roblepino + + + Estacin de servicio + + + Vieja barcaza + + + Anomala Cicatriz + + + Puente Preobrazhensky + + + Meseta sur + + + Talleres de la subestacin + + + La anomala del Cenizal + + + Torre de refrigeracin + + + Subestacin + + + Anomala Plavni + + + Fbrica de cemento + + + Kopachy + + + Yanov + + + Cantera + + + Bnker de los cientficos + + + Complejo Volkhov AA + + + Arboleda anmala + + + Aparcamiento + + + Punto de control + + + La anomala de Bitumen + + + Tnel este + + + Almacn de contenedores + + + Complejo de ventilacin + + + Pistas de aterrizaje + + + La anomala del Bao de Cemento + + + Central de Jpiter + + + Cine Prometeo + + + Puerto fluvial + + + Vieja estacin de servicio + + + Colegio + + + Hospital + + + Estacin de servicio de Yubileiny + + + Lavandera + + + Jardn de infancia + + + Bloque de apartamentos + + + Tienda de ultramarinos + + + Almacn + + + Librera + + + Anomala Volcn + + + Anomala Parra + + diff --git a/gamedata/configs/text/spa/st_mp_mapdesc.xml b/gamedata/configs/text/spa/st_mp_mapdesc.xml new file mode 100644 index 0000000..cb5e03b --- /dev/null +++ b/gamedata/configs/text/spa/st_mp_mapdesc.xml @@ -0,0 +1,126 @@ + + + + Estacin de vehculos + + + Un lugar muy extrao. Este silencioso edificio parece guardar muchos secretos, pero los stalkers vienen aqu por otra razn: en esta peligrosa zona se encuentran numerosos artefactos. Piensa y acta con rapidez y seguro que la suerte estar de tu parte. + + + Un lugar muy extrao. Este silencioso edificio parece guardar muchos secretos, pero los stalkers vienen aqu por otra razn: sus numerosos artefactos. + + + Un almacn que est a la entrada de la Zona. Sus tractores, autobuses y camiones se han detenido para siempre... Aqu todava no se ha encontrado ningn artefacto, pero el lugar es popular entre los saqueadores, que se dedican a perseguir novatos para asesinarlos y quedarse con su botn. Ponte a cubierto en los edificios o detrs de los vehculos, y ten cuidado con los enemigos de los tejados. + + + Un almacn que est a la entrada de la Zona. Sus tractores, autobuses y camiones se han detenido para siempre... + + + Edificio de almacenes abandonados y territorio adyacente. Aqu se pueden encontrar provisiones y equipo, pero buscando mucho. Cuidado con las poderosas anomalas y los francotiradores del tejado del almacn: es una gran posicin de ventaja ya que desde all puede controlarse todo al rea. + + + Edificio de almacenes abandonados y territorio adyacente. Cuidado con las poderosas anomalas y los francotiradores enemigos. + + + Un lugar fascinante y enigmtico. Este estanque se construy para realizar experimentos con personas y objetos, aunque su fin concreto sigue siendo un misterio. No hay artefactos, as que los stalkers solo se acercan por aqu en busca de extraos componentes y dispositivos. Vigila bien los tejados y recuerda que los niveles de radiacin de esta rea son extremadamente elevados. + + + Un lugar fascinante y enigmtico. Este estanque se construy para realizar experimentos con personas y objetos, aunque su fin concreto sigue siendo un misterio. + + + Esta peligrosa zona del Valle Oscuro se compone de una larga calle y de un instituto desierto. Quin sabe las materias que se impartiran all? Hoy en da, solo se puede aprender a sobrevivir. Ah, y echa un vistazo a los tejados... + + + Esta peligrosa zona del Valle Oscuro se compone de una larga calle y de un instituto desierto... + + + Esta fbrica siniestra y abandonada es el lugar de descanso de numerosos stalkers. Un sinfn de anomalas esperan a los visitantes a cada paso, pero eso no es impedimento para que mucha gente se acerque a este lugar, atrada como un imn por sus valiosos artefactos. Cuidado con la radiacin! + + + Esta fbrica siniestra y abandonada es el lugar de descanso de numerosos stalkers. + + + El parque de bomberos que se emple a fondo para intentar salvar del desastre a la central nuclear de Chernbil en 1986. La torre es una posicin de ventaja excelente, desde el que se controlan los alrededores. Muy pocos suben a los pisos de arriba de los edificios, y es posible que tengan una buena razn para no hacerlo. Las facciones de la Zona llevan un tiempo enzarzadas en una batalla en esta rea, para conseguir la mejor posicin estratgica. + + + El parque de bomberos que se emple a fondo para intentar salvar del desastre a la central nuclear de Chernbil en 1986. La estacin es una excelente posicin tctica. + + + Parte de un enorme vertedero, en el que se volcaron montones de desechos radiactivos tras la catstrofe de 1986. La zona est llena de gras oxidadas y equipamientos varios. Otros atractivos de la zona son los edificios abandonados y un enorme hangar. Por su proximidad al Cordn y su relativa abundancia de artefactos, suele ser visitada por muchos stalkers que buscan presas fciles. + + + Parte de un enorme vertedero, en el que se volcaron montones de desechos radiactivos tras la catstrofe de 1986. + + + Un pequeo distrito de la enigmtica ciudad de Limansk, con bloques de apartamentos abandonados y un edifico a medio construir entre ellos. La noticia de la aparicin de varios artefactos caros en esta rea corri como la espuma por toda la Zona. Se construyeron varias carreteras hacia Limansk, y desde entonces los tiroteos no han cesado. + + + Un pequeo distrito de la enigmtica ciudad de Limansk, con bloques de apartamentos abandonados y un edifico a medio construir entre ellos. + + + Un pueblo abandonado por la mano de Dios en lo ms profundo de la Zona. Un lago pequeo, poco profundo y en desuso, repleto de vehculos abandonados. Este ambiente escalofriante te recordar que ests en la Zona. Cuidado con los francotiradores, pero recuerda: en la Zona triunfan los valientes. + + + Un pueblo abandonado por la mano de Dios en lo ms profundo de la Zona. Un lago pequeo, poco profundo y en desuso, repleto de vehculos abandonados. Este ambiente escalofriante te recordar que ests en la Zona. + + + Una base militar abandonada con camiones y transporte blindado en desuso, barracas y cuarteles generales arrasados. Pero no te dejes engaar por su aspecto desrtico: es una autntica mina de oro de artefactos y, por tanto, puede haber un enemigo detrs de cada esquina. + + + Una base militar abandonada con camiones y transporte blindado en desuso, barracas y cuarteles generales arrasados. + + + Este antiguo pueblo es un lugar de lo ms siniestro. Si tienes valor suficiente para entrar aqu, es posible que te den la bienvenida con un tiro en la cabeza. En ninguno de sus lugares estars a salvo, as que confa en tu mira y en tu silenciador. + + + Este antiguo pueblo es un lugar de lo ms siniestro. Si has llegado hasta aqu, no tendrs ni un momento de descanso. + + + Esto no es un estanque: es ms bien un bao de sangre. Escuchars ecos de balas, explosiones y alaridos de agona por todos sus pasillos de baldosas... Pocos stalkers saben cmo llegar y muchos menos han podido salir. + + + Esto no es un estanque: es ms bien un bao de sangre. Escuchars ecos de balas y explosiones por sus pasillos de baldosas. + + + Una pequea estacin de tren cercana a la fbrica de Rostok. + + + Una pequea estacin de tren cercana a la fbrica de Rostok, llena de vagones y locomotoras oxidadas y detenidas para siempre en sus vas. Su gran abundancia de artefactos atrae a los stalkers ms valientes de todos los rincones de la Zona. + + + Una base de reparaciones en las proximidades de un pequeo pueblo. Todos los vehculos en funcionamiento fueron confiscados tras el desastre de Chernbil. Con el tiempo, el resto del equipamiento ha sido saqueado como piezas de repuesto. El rea est llena de peligros, como pantanos y juncos radiactivos. Si tienes suerte, puede que encuentres algo realmente valioso. + + + Una base de reparaciones en las proximidades de un pequeo pueblo. El rea est llena de peligros, como pantanos y juncos radiactivos. + + + Montones de metales oxidados ocultos tras paredes de cemento. Antes del cambio de siglo, la central funcionaba a pleno rendimiento mientras sus altavoces arengaban a los trabajadores con eslganes socialistas. Pero el edificio lleva mucho tiempo abandonado. + + + Una central abandonada: solo quedan montones de metales oxidados ocultos tras paredes de cemento. + + + Un polideportivo de Pripyat, no muy lejos de la escuela abandonada. Los deportes que se practican por aqu han cambiado mucho desde 1986, as como el nmero de deportistas entusiastas. Los stalkers suelen venir aqu atrados por la dudosa fama del lugar, sus botines y sus artefactos. A veces se quedan aqu para siempre. + + + Un polideportivo deportivo de Pripyat, no muy lejos de la escuela abandonada. + + + Un lugar muy extrao. Muchos se rean de los stalkers que afirmaban haberlo visto, pero s es verdad que existe. Las anomalas gravitatorias han arrasado el suelo hasta crear un paisaje extraterrestre. Tres enormes torres dominan el rea; tambin hay restos de equipo militar e islas flotantes de tierra que sobresalen del suelo. + + + Un lugar muy extrao. Las anomalas gravitatorias han arrasado el suelo hasta crear un paisaje extraterrestre. + + + Los restos de la fbrica de Rostok, antes de que Deber se asentase aqu. Es un lugar siniestro que, sin embargo, alberga numerosos artefactos. Cada hangar o almacn vaco est lleno de peligros mortales. Ten muchsimo cuidado y fjate bien en la torre blanca... + + + Los restos de la fbrica de Rostok, antes de que Deber se asentase aqu. Es un lugar siniestro que, sin embargo, alberga numerosos artefactos. + + + Pocos se atreven a adentrarse en la ciudad desierta de Pripyat, antiguo hogar de los trabajadores de la central de Chernbil. A pesar de esto, se han producido salvajes tiroteos en las calles de la ciudad muerta, en una pequea parte de la ciudad comprendida entre el cine Prometeo, el muelle y las casas de la calle Kurchatova. + + + Se han producido salvajes tiroteos en las calles de la ciudad muerta, en una pequea parte de la ciudad comprendida entre el cine Prometeo, el muelle y las casas de la calle Kurchatova. + + diff --git a/gamedata/configs/text/spa/st_mp_speechmenu.xml b/gamedata/configs/text/spa/st_mp_speechmenu.xml new file mode 100644 index 0000000..cadcec9 --- /dev/null +++ b/gamedata/configs/text/spa/st_mp_speechmenu.xml @@ -0,0 +1,57 @@ + + + + Atacad todos! + + + Voy a por el artefacto! Cbreme! + + + Sgueme! + + + De momento protege el artefacto. No lo cojas todava! + + + Mantengo mi posicin! + + + Mantened posiciones! + + + Coge el artefacto! Yo te cubro! + + + Necesito ayuda! + + + No tengo dinero. Cmprame equipo! + + + No. + + + Nadie a la vista! + + + Informa! + + + Retirada! + + + Devuelve el artefacto! + + + Bien. + + + Cllate! + + + No os separis. + + + Coge el artefacto! + + diff --git a/gamedata/configs/text/spa/st_mp_teamdesc.xml b/gamedata/configs/text/spa/st_mp_teamdesc.xml new file mode 100644 index 0000000..63258ef --- /dev/null +++ b/gamedata/configs/text/spa/st_mp_teamdesc.xml @@ -0,0 +1,15 @@ + + + + Los anarquistas de la Zona. Dicen que la Zona es un santuario de libertad y consideran que todas las leyes, normas y convenciones del exterior no son vlidas aqu. Su lema es "haz lo que quieras y ocpate de tus asuntos". Libertad hace frente a los intentos del gobierno por controlar la Zona y est en lucha con los mercenarios. Sus miembros estn equipados principalmente con armas de fuego soviticas y rusas. + + + Faccin Libertad (stalkers libres) + + + Estos matones aventureros vienen de todo el mundo y aceptan los trabajos ms sucios. Su lema es: "El dinero es lo primero". Luchan por el control total de los artefactos de la Zona, siempre que siga habiendo demanda. Los mercenarios estn equipados principalmente con armas occidentales. + + + Faccin de los mercenarios (los matones) + + diff --git a/gamedata/configs/text/spa/st_quests_general.xml b/gamedata/configs/text/spa/st_quests_general.xml new file mode 100644 index 0000000..fbebf30 --- /dev/null +++ b/gamedata/configs/text/spa/st_quests_general.xml @@ -0,0 +1,18 @@ + + + + Atencin! La emisin comenzar en: + + + Busca el lugar ms cercano para guarecerte inmediatamente de la emisin. + + + No debes salir de tu refugio mientras dure la emisin. + + + Emisin: ponte a cubierto + + + Emisin: espera a cubierto + + diff --git a/gamedata/configs/text/spa/st_quests_jupiter.xml b/gamedata/configs/text/spa/st_quests_jupiter.xml new file mode 100644 index 0000000..c8dfafa --- /dev/null +++ b/gamedata/configs/text/spa/st_quests_jupiter.xml @@ -0,0 +1,687 @@ + + + + Deudas: lleva el dinero a los bandidos + + + Vano debe dinero a los bandidos por un traje y no puede saldar la deuda porque los intereses se han disparado. Te ha pedido que le soluciones la papeleta. + + + Deudas: regresa junto a Vano + + + Cuntale a Vano cmo has zanjado su deuda. + + + Deudas: habla con los bandidos + + + Las negociaciones por la deuda de Vano se han complicado. Acaba con los bandidos. + + + Rehn: pide la recompensa a los amigos de Mitay + + + Mitay ha sido liberado. Renete con sus amigos en el bar para recibir tu recompensa. + + + Rehn: libera a Mitay + + + Rehn: habla con Osopardo para asegurarte de que est listo + + + Debes hablar con Osopardo antes de intentar liberar al rehn. + + + Rehn: libera a Mitay por la fuerza + + + Debes eliminar a los bandidos para liberar al stalker Mitay. + + + Rehn: renete con los stalkers + + + Los stalkers te ayudarn a liberar al rehn. Tienes que reunirte con ellos por la noche para atacar todos juntos a los bandidos. + + + Rehn: acuerda el precio del rescate de Mitay + + + Acuerda con el lder de los bandidos el rescate a pagar por el stalker llamado Mitay. + + + Libera a un stalker llamado Mitay que ha sido capturado por los bandidos. + + + Rehn: saca a Mitay del campamento de los bandidos + + + Quedarse en el campamento de los bandidos es demasiado peligroso. Debes escoltar a Mitay fuera del campamento. + + + Rehn: habla con Mitay + + + Mitay est relativamente seguro. Discute con l vuestro prximo paso. + + + Camino a Pripyat: habla con el tcnico sobre el paso subterrneo + + + Los documentos que has encontrado sealan la existencia de un paso subterrneo hacia Pripyat situado bajo la central de Jpiter. No hay energa en el paso, est lleno de gas y la entrada ha sido bloqueada. Debes encontrar un tcnico que pueda activar el generador y abrir la cerradura de entrada. + + + El mdulo de memoria est en manos expertas. Tienes que esperar a que lo desbloqueen. + + + Aparato no tripulado: desbloquea el mdulo de memoria + + + Aparato no tripulado: recupera el mdulo de memoria que le diste a Nitro + + + Aparato no tripulado: recupera el mdulo de memoria que le diste a Novikov + + + Nitro ha desbloqueado el mdulo de memoria. Deberas recuperarlo para ver la informacin que contiene. + + + Novikov ha desbloqueado el mdulo de memoria. Deberas recuperarlo para ver la informacin que contiene. + + + Has logrado recuperar un mdulo de memoria del aparato no tripulado. Debes desbloquearlo para acceder a su informacin. + + + Aparato no tripulado: espera a que el mdulo de memoria sea desbloqueado + + + Oasis: consigue pruebas + + + El oasis ha sido encontrado, y realmente tiene propiedades curativas. Tienes que encontrar pruebas para los cientficos. + + + El oasis: lleva las pruebas a los cientficos + + + El oasis ha sido encontrado, y realmente tiene propiedades curativas. Como prueba, tienes que llevarles a los cientficos el artefacto que has encontrado. + + + El oasis: comprueba si la leyenda es cierta + + + Ozersky, el cientfico del bnker, te ha pedido que busques el oasis, un lugar legendario dentro de la Zona. Segn los rumores hay un manantial de aguas curativas en l, pero nadie sabe con certeza si existe o no. + + + Kopachy: acompaa al to Yar + + + El to Yar necesita ayuda con un asunto. Ve al pueblo de Kopachy con l. + + + Kopachy: elimina a los mercenarios + + + Parece que el to Yar haba previsto la llegada de los mercenarios. Debes eliminarlos. + + + Kopachy: no te separes del to Yar + + + El to Yar te ha pedido que te quedes junto a l sin hacer ruido. + + + Kopachy: habla con el to Yar + + + Los mercenarios estn muertos. Deberas hablar con el to Yar para que te explique lo que ha pasado. + + + Emisiones psquicas intermitentes: lleva la formacin anmala a los cientficos + + + Llvale a Hermann la muestra que has encontrado. Este objeto medio transformado por la exposicin a las anomalas parece ser el origen de las emisiones psquicas intermitentes. + + + Emisiones psquicas intermitentes: investiga el origen + + + Investiga el tnel en busca de alguna formacin anmala. Los cientficos creen que el campo psquico intermitente tiene un origen, probablemente similar a un artefacto. + + + Emisiones psquicas intermitentes: renete con el escuadrn de Topol + + + El escuadrn de Topol fue al tnel de las emisiones psquicas intermitentes. Debes reunirte con ellos all. + + + Emisiones psquicas intermitentes: habla con Topol + + + Acompaa al escuadrn de Topol al tnel de las emisiones psquicas intermitentes. Los stalkers vigilarn el tnel mientras t buscas lo que quieren los cientficos. + + + Deberas llevarle a Nitro todo el material de radio que has encontrado. + + + Nitro necesita material de radio. Puedes darle lo que ya tienes o ir a buscar ms. + + + Equipo de radio: encuentra materiales para Nitro + + + Nitro necesita material de radio. Dice que deberas buscarlo en la fbrica de cemento. + + + Robo: descubre quin ha sido el responsable del robo + + + Pregntale a los stalkers de Yanov si han visto a alguien sospechoso que podra haber robado el contenido de una caja personal. + + + Robo: investiga la subestacin + + + Tienes que investigar la subestacin; el stalker presuntamente responsable del robo se diriga hacia all. + + + Robo: coge tus cosas + + + Todos los objetos robados por Snag deberan estar en su escondite de las cloacas, detrs de la subestacin. + + + Planta anmala: consigue una muestra de la planta + + + Una zona llena de vegetacin anmala ha aparecido junto al borde de la cantera. Ozersky te ha pedido que obtengas una muestra para su investigacin. + + + Planta anmala: dale la muestra a Ozersky + + + Debes llevarle la muestra de la planta a Ozersky. A cambio, Ozersky convencer a Hermann de que te entregue un traje cientfico. + + + Cacera: elimina a los mutantes no identificados + + + Un grupo de stalkers se ha topado con mutantes no identificados en los tneles que hay al norte de la central de Jpiter. Investiga la zona y elimina a los mutantes. + + + Cacera: cobra la recompensa que ofreca Trapper por matar a los mutantes del tnel + + + Los mutantes de los tneles del norte de la central de Jpiter han sido eliminados. Deberas informar a Trapper y cobrar tu recompensa. + + + Hiptesis: coloca el escner en el centro del derrumbamiento + + + Coloca el escner en el centro del derrumbamiento para corroborar la hiptesis de Ozersky. + + + Hiptesis: espera a que termine el experimento + + + El escner ha sido activado y est empezando a captar la presencia de mutantes. Debes esperar a que se haya recabado suficiente informacin para confirmar o refutar la hiptesis. + + + Hiptesis: coge el escner + + + Se han obtenido suficientes datos para confirmar la hiptesis de Ozersky. Coge el escner. + + + Hiptesis: dale el escner a Ozersky + + + Debes darle el escner a Ozersky. Los datos obtenidos deberan bastar para confirmar su hiptesis. + + + Cacera: mata a los chupasangres de pantano + + + Un grupo de chupasangres de pantano ha sido avistado en la Cinaga, detrs de la fbrica de cemento. Los stalkers locales te han pedido que los elimines. + + + Cacera: cobra la recompensa que ofreca Trapper por matar a los chupasangres de pantano + + + Los chupasangres de pantano estn muertos. Deberas hablar con Trapper para cobrar la recompensa ofrecida por los stalkers locales. + + + Cacera nocturna: mata a la quimera + + + Las quimeras son depredadores nocturnos; nadie sabe dnde se oculta sta durante el da. Mtala por la noche, cuando salga a cazar junto al complejo de ventilacin. + + + Cacera nocturna: dile a Trapper que la quimera est muerta + + + La quimera asesina est muerta; el cazador Fox ha sido vengado. Dselo a Trapper. + + + Herramientas: llvale herramientas a Nitro + + + Nitro te ha pedido que le consigas dos juegos de herramientas: uno para tareas bsicas y otro para tareas de precisin. Te pagar por ellas, y podr realizar modificaciones ms avanzadas en armas y blindajes. + + + Herramientas: llvale herramientas a Nitro + + + Nitro te ha pedido que le consigas dos juegos de herramientas: uno para tareas bsicas y otro de calibracin. Te pagar por ellas, y podr realizar modificaciones ms avanzadas en armas y blindajes. + + + Herramientas: llvale herramientas a Nitro + + + Nitro te ha pedido que le consigas un juego de herramientas para tareas bsicas. Te pagar por ellas, y podr realizar modificaciones ms avanzadas en armas y blindajes. + + + Herramientas: llvale herramientas a Nitro + + + Nitro te ha pedido que le consigas dos juegos de herramientas: uno para tareas de precisin y otro de calibracin. Te pagar por ellas, y podr realizar modificaciones ms avanzadas en armas y blindajes. + + + Herramientas: llvale herramientas a Nitro + + + Nitro te ha pedido que le consigas un juego de herramientas para tareas de precisin. Te pagar por ellas, y podr realizar modificaciones ms avanzadas en armas y blindajes. + + + Herramientas: llvale herramientas a Nitro + + + Nitro te ha pedido que le consigas un juego de herramientas de calibracin. Te pagar por ellas, y podr realizar modificaciones ms avanzadas en armas y blindajes. + + + Herramientas: llvale herramientas a Nitro + + + Nitro te ha pedido que le consigas tres juegos de herramientas: uno para tareas bsicas, otro para tareas de precisin y otro de calibracin. Te pagar por ellas, y podr realizar modificaciones ms avanzadas en armas y blindajes. + + + Pripyat 1: encuentra un traje con un mdulo de respiracin de ciclo cerrado + + + Necesitas un traje con mdulo de respiracin de ciclo cerrado para atravesar el paso subterrneo Pripyat 1; est inundado de dixido de carbono mezclado con una sustancia desconocida. + + + Pripyat 1: lleva a Strider ante Zulu + + + Debes llevar a Strider ante Zulu y presentarlo como nuevo miembro del escuadrn. Zulu podra no tomarse a bien la visita de un soldado vestido con un traje del Monolito. + + + Pripyat 1: habla con Strider sobre un traje protector + + + El paso subterrneo Pripyat 1 est inundado de dixido de carbono mezclado con una sustancia desconocida. Debes decirle a Strider que necesitar un traje con un mdulo de respiracin de ciclo cerrado para pasar. + + + Pripyat 1: organiza un escuadrn para ir a Pripyat + + + Nitro podra abrir la cerradura del paso de Pripyat 1, pero se niega a entrar en la central de Jpiter sin proteccin. Te ha recomendado que renas a varios hombres para atravesar el paso subterrneo. Ya tienes a Zulu, y l te ha sugerido que le enves nuevos reclutas. + + + Pripyat 1: habla con Zulu sobre ir a Pripyat + + + Nitro podra abrir la cerradura del paso de Pripyat 1, pero se niega a entrar en la central de Jpiter sin proteccin. Te ha recomendado que renas a varios hombres para atravesar el paso subterrneo. Sugiere que hables con Zulu para que te ayude a reunir un escuadrn. + + + Pripyat 1: lleva a Sokolov ante Zulu + + + Sokolov ha accedido a ir a Pripyat y podra llevarse un traje cientfico del bnker. Deberas llevarlo ante Zulu y presentarlo como nuevo miembro del escuadrn. + + + Pripyat 1: habla con Sokolov sobre un traje protector + + + Pripyat 1: habla con Ozersky sobre un traje para Sokolov + + + Sokolov est dispuesto a protegerse con un traje cientfico, pero Hermann no dejar que se lo lleve del bnker. Deberas hablar con Ozersky; es ms simptico y receptivo. + + + Pripyat 1: habla con Sokolov sobre el traje cientfico + + + Ozersky est muy contento con la muestra de planta. Te ha pedido que le digas a Sokolov que Hermann le dejar llevarse el traje cientfico. + + + El paso subterrneo Pripyat 1 est inundado de dixido de carbono mezclado con una sustancia desconocida. Debes decirle a Sokolov que necesitar un traje con un mdulo de respiracin de ciclo cerrado para pasar. + + + Pripyat 1: consguele dinero a Vano para el traje + + + El traje que Vano debe pagar a los bandidos tiene un mdulo de respiracin de ciclo cerrado. Vano tuvo que empearlo para saldar sus deudas, y necesita 3.000 para recuperarlo. + + + Pripyat 1: lleva a Vano ante Zulu + + + Vano est dispuesto a ir a Pripyat. Debes llevarlo ante Zulu y presentarlo como nuevo miembro del escuadrn. Vano puede recuperar su traje por el camino. + + + Pripyat 1: habla con Vano sobre un traje protector + + + El paso subterrneo Pripyat 1 est inundado de dixido de carbono mezclado con una sustancia desconocida. Debes decirle a Vano que necesitar un traje con un mdulo de respiracin de ciclo cerrado para pasar. + + + Pedernal, alias Urraca, es un cabrn escurridizo. Debes revelar su paradero a los stalkers de Zaton o a otras facciones. As aprender. + + + Est claro que Pedernal est presumiendo de cosas que ni siquiera ha visto. Estara bien dejarlo en evidencia delante de todos. + + + Afirmaciones falsas: encrgate de Pedernal + + + Es evidente que Pedernal se est llevando el mrito por los logros de otros. Debe aprender a morderse la lengua. + + + Pedernal se est pasando con sus alardes; deberas hablar con l y hacerle ver tu opinin. + + + Pedernal, alias Urraca, es un cabrn escurridizo. Debes revelar su paradero a los stalkers de Zaton o a otras facciones; sera una buena venganza. + + + Investigacin de anomalas: consigue los escneres del tcnico + + + Dile a Novikov que te entregue los escneres. Hermann quiere obtener datos sobre la formacin de anomalas, y para eso hay que colocar los escneres en el centro de varias de ellas. + + + Investigacin de anomalas: coloca el escner en la anomala + + + Investigacin de anomalas: cobra la recompensa + + + Cobra la recompensa que te prometieron por colocar escneres en las anomalas. Ahora que estn en posicin, Hermann podr recabar los datos que quera. + + + Coloca el escner en el centro de la anomala. Hermann quiere obtener datos sobre la formacin de anomalas, y para eso hay que colocar los escneres en el centro de varias de ellas. + + + Contrato con los cientficos: lleva el artefacto Kolobok a Garry + + + Garry necesita el artefacto Kolobok para cumplir su contrato con los cientficos. Llvaselo. + + + Contrato con los cientficos: lleva el artefacto Trozo de carne a Garry + + + Garry necesita el artefacto Trozo de carne para cumplir su contrato con los cientficos. Llvaselo. + + + Contrato con los cientficos: lleva los artefactos Trozo de carne y Kolobok a Garry + + + Garry necesita los artefactos Trozo de carne y Kolobok para cumplir su contrato con los cientficos. Llvaselos. + + + Contrato con los cientficos: artefactos entregados + + + Garry tiene ambos artefactos; su contrato ha sido cumplido. + + + Historia de Deber: dale la PDA del fundador de Deber a quien pueda interesar + + + Has encontrado la PDA personal del fundador de Deber, que muri en la anomala. Deberas drsela a quien puedan interesar los ltimos instantes del lder de la faccin. + + + Actividad anmala: investiga el lugar usando un detector mejorado + + + Los escneres de los cientficos han captado una actividad inusual al norte del bnker. Investiga esa zona usando un detector mejorado. + + + Proteger a los cientficos: encuentra gente de confianza + + + El bnker de los cientficos est indefenso. Debes encontrar gente de confianza para protegerlo. + + + Proteger a los cientficos: regresa junto a Hermann para cobrar la recompensa + + + Has encontrado guardias para el bnker de los cientficos. Deberas regresar junto a Hermann para cobrar la recompensa merecida. + + + ltimas innovaciones: encuentra los documentos en la central de Jpiter + + + Hermann est interesado en las ltimas innovaciones de la central de Jpiter. Encuentra los documentos en la seccin administrativa. + + + ltimas innovaciones: llvale los documentos a Hermann + + + Los documentos que has encontrado indican que todos los registros tcnicos han sido trasladados. Aunque no es mucho, deberas darle la informacin a Hermann. + + + ltimas innovaciones: llvale los documentos y la PDA de Negro a Hermann + + + Unos mercenarios nos atacaron mientras buscabas los documentos. Segn la PDA que le cogiste a Negro, su lder, fueron contratados para evitar que los cientficos consiguieran esos documentos. Por otro lado, los datos que has obtenido indican que los registros tcnicos fueron trasladados fuera de la central. Deberas comunicrselo a Hermann y ensearle la PDA de Negro. + + + Supervivientes del Monolito: habla con los habitantes de Yanov sobre el refugio + + + Un escuadrn de soldados del Monolito se ha liberado del embrujo que los haba posedo. Estn buscando un refugio donde protegerse de emisiones y mutantes. Tienes que hablar con los habitantes de la estacin de Yanov para que permitan a los soldados refugiarse all. + + + Lleva a los oficiales de reclutamiento de Deber al anterior escuadrn del Monolito. Si se unen a Deber, podrn protegerse de las emisiones y los mutantes en la estacin de Yanov. + + + Lleva a los oficiales de reclutamiento de Libertad al anterior escuadrn del Monolito. Si se unen a Libertad, podrn protegerse de las emisiones y los mutantes en la estacin de Yanov. + + + Supervivientes del Monolito: lleva a los oficiales de reclutamiento al anterior escuadrn del Monolito + + + Investigacin de anomalas: protege a los stalkers + + + Parece que la medicin de datos en la anomala ha atrado a varios mutantes. Debes proteger a los stalkers hasta que hayan obtenido los datos requeridos. + + + Investigacin de anomalas: protege a los stalkers + + + Parece que la medicin de datos en la anomala ha atrado a varios zombis de Kopachy. Debes proteger a los stalkers hasta que hayan obtenido los datos requeridos. + + + Investigacin de anomalas: habla con Hermann + + + Ya se han obtenido todas las medidas de la anomala. Informa a los cientficos y cobra tu recompensa. + + + Investigacin de anomalas: habla con los stalkers + + + Habla con el escuadrn de stalkers responsable de la obtencin de medidas; tienes que decidir a qu anomala dirigirte. + + + Investigacin de anomalas: habla con los stalkers + + + Ya se han obtenido todas las medidas de la anomala; puedes volver al bnker de los cientficos con el escuadrn. + + + Investigacin de anomalas: habla con los stalkers + + + Se han obtenido medidas de la anomala; habla con el resto del escuadrn para saber adnde ir ahora. + + + Investigacin de anomalas: protege a los stalkers + + + Hermann te ha ofrecido trabajo protegiendo a los stalkers mientras recogen datos en las anomalas. + + + Pez Raya 4: investiga el lugar del accidente + + + Pez Raya 4: averigua por qu se han quemado los aparatos + + + Investiga el lugar del accidente del Pez Raya 4. + + + Debes encontrar el origen de la potente descarga elctrica que alcanz al helicptero Pez Raya 4. + + + Pez Raya 1: dale la caja negra a un tcnico para que la desencripte + + + La caja negra del Pez Raya 1 sigue intacta. Debes llevrsela a un tcnico para que te la desencripte y puedas acceder a los datos que contiene. + + + Pez Raya 1: espera a que se complete el desencriptado de la caja negra + + + Nitro ha accedido a desencriptar la caja negra. Dijo que tardara unas tres horas. Debes esperar a que termine. + + + Pez Raya 1: vuelve junto a Nitro para obtener la informacin de la caja negra + + + Nitro ya debera haber terminado de desencriptar la caja negra. Ve a verle para averiguar qu contiene. + + + Pez Raya 1: investiga el lugar del accidente + + + Investiga el lugar del accidente del Pez Raya 1. + + + Pripyat 1: ve a Pripyat + + + Debes atravesar el paso subterrneo Pripyat 1 y alcanzar el punto de evacuacin militar de Pripyat. + + + Camino a Pripyat: investiga el laboratorio qumico de la central de Jpiter + + + En el laboratorio qumico debera haber informacin que explique por qu se inund el paso subterrneo Pripyat 1 con una especie de gas. + + + Camino a Pripyat: investiga la seccin administrativa de la central de Jpiter + + + El gua no conoce ninguna ruta segura a Pripyat, pero te ha indicado dnde buscar informacin sobre los tneles subterrneos que conectan la central de Jpiter con la ciudad. Deberas empezar por la seccin administrativa. + + + Camino a Pripyat: investiga la seccin del laboratorio de la central de Jpiter + + + Los documentos que has encontrado en la seccin administrativa mencionan la evacuacin del personal de la central de Jpiter. Los registros de este procedimiento deberan estar en la seccin del laboratorio. + + + Camino a Pripyat: comprueba la cerradura de transporte del paso subterrneo Pripyat 1 + + + La entrada al paso subterrneo se halla tras el cierre de transporte. Busca informacin sobre el paso en esta zona. + + + Camino a Pripyat: investiga el Departamento 1 de la central de Jpiter + + + En el Departamento 1 debera haber informacin sobre el paso subterrneo Pripyat 1. Deberas buscarla, podra resultarte til. + + + Camino a Pripyat: investiga el departamento de entregas de la central de Jpiter + + + A juzgar por la nota del laboratorio, los encargados de la evacuacin fueron los miembros del departamento de entregas; deberas buscar all tambin. + + + Camino a Pripyat: investiga el taller de reparaciones de la central de Jpiter + + + El departamento de entregas tena informacin sobre las prdidas ocurridas durante el transporte de algo denominado objeto 62. Segn los informes, los del taller de reparaciones tenan que encargarse de ello; deberas ir a mirar. + + + Camino a Pripyat: habla con el gua + + + Segn la grabacin de la caja negra de uno de los helicpteros, las unidades del ejrcito tenan que encontrarse en el punto de evacuacin B28. A juzgar por los mapas hallados en el otro helicptero que particip en la misin, este punto est en Pripyat. Tendrs que encontrar un modo de llegar hasta all; habla con el gua. + + + Almacn de Deber: coge lo que te has ganado + + + Almacn de Deber: renete con Morgan + + + El comerciante Morgan te ha proporcionado acceso al almacn de Deber como pago por tu silencio. Tienes que reunirte con l junto a la cantera. + + + Debes abrir la puerta para continuar. + + + Debes abrir la puerta para continuar. + + + Debes activar la corriente de la puerta para continuar. + + + Debes desbloquear la puerta para continuar. Probablemente puedas hacerlo desde la sala de control. + + + Grupo de investigacin: contrata a la gente adecuada + + + Un grupo de trabajo que trabajaba para los cientficos ha perecido. Tienes que formar un nuevo grupo para que la investigacin siga. + + + Grupo de investigacin: vuelve con Hermann para recoger la recompensa + + + Has encontrado a la gente adecuada para un nuevo grupo de investigacin. Ahora vuelve con Hermann y recoge tu recompensa. + + + Pripyat 1: completa la misin de Ozersky + + + Tienes que completar la misin de Ozersky en la planta anmala y conseguir un traje protector para Sokolov. + + + Nitro necesita material de radio. Lo encontrars en la fbrica de cemento. + + + Fue Pedernal quien dej morir al disidente en la anomala. Habla con l y averigua por qu lo hizo. + + + Retribucin: venga al disidente + + + Encuentra a quien dej morir al disidente en la anomala y despus se march con su artefacto. Por desgracia, el disidente no logr decir de quin se trataba, solo se sabe que pertenece a Libertad. + + + El teniente coronel Shulga te ha permitido llevarte cualquier equipo que quieras del almacn de Deber si consigues cogerlo. + + + Loki te ha permitido llevarte cualquier equipo que quieras del almacn de Deber mientras lo controlen los soldados de Libertad. + + diff --git a/gamedata/configs/text/spa/st_quests_pripyat.xml b/gamedata/configs/text/spa/st_quests_pripyat.xml new file mode 100644 index 0000000..a3a403f --- /dev/null +++ b/gamedata/configs/text/spa/st_quests_pripyat.xml @@ -0,0 +1,345 @@ + + + + Objeto 62: busca documentos en el taller de pruebas + + + Tienes que buscar documentos relacionados con el objeto 62. Estos documentos deberan aclarar si el arma pudo haber sido usada para derribar los helicpteros. + + + Arma no identificada: ponte a cubierto en el edificio + + + Debes resguardarte en el edificio y rechazar el ataque del Monolito. + + + Arma no identificada: busca informacin + + + El arma no funciona, y no comprendes su mecanismo. Tienes que encontrar a un tcnico que pueda sacar algo en claro de ella. + + + Arma no identificada: mata al lder del escuadrn del Monolito + + + Debes matar al lder del escuadrn del Monolito (el que est usando el arma no identificada). + + + Arma no identificada: registra los cadveres de los soldados del Monolito + + + Los soldados de Monolith deberan tener el arma no identificada en su poder; encuntrala. + + + Arma no identificada: habla con Cardn + + + Cardn ya debe de haberse recuperado de la resaca; es hora de hablar con l sobre el arma no identificada. + + + Arma no identificada: espera a que Cardn recupere el sentido + + + Probablemente Cardn sepa algo del arma; tendrs que hablar con l cuando despierte. + + + Fusil Gauss: habla con Kovalsky sobre el arma + + + Tienes que contarle a Kovalsky todo lo que has averiguado sobre el objeto 62. + + + Arma no identificada: nete al escuadrn + + + Tienes que unirte al escuadrn especial para capturar el arma entre todos. + + + Arma no identificada: recoge el arma + + + Tienes que recoger el arma del lder del escuadrn de Monolito. + + + Arma no identificada: llvale el arma a Kovalsky + + + Ya tienes el arma, ahora debes ensersela a Kovalsky para averiguar si pudieron usarla para derribar los helicpteros. + + + Arma no identificada: participa en la emboscada al Monolito + + + La unidad de reconocimiento del ejrcito va a tender una emboscada al escuadrn del Monolito. Deberas ayudarles. + + + Fuerzas del Monolito: renete con los refuerzos + + + Kovalsky te ha enviado refuerzos para eliminar al escuadrn del Monolito atrincherado en la tienda de libros. + + + Fuerzas del Monolito: despeja la tienda de libros + + + Tienes que eliminar a todas las fuerzas del Monolito que hay en el edificio. Las unidades numerosas son un riesgo para el campamento militar. + + + Fuerzas del Monolito: investiga la extraa construccin + + + Haba un extrao dispositivo en el edificio. Investgalo. + + + Laboratorio X8: busca documentos que hablen de los experimentos + + + La informacin que has encontrado menciona un laboratorio central denominado X8. All podra haber informacin sobre los experimentos secretos realizados en la Zona. + + + Unidad de reconocimiento desaparecida: encuentra al escuadrn + + + La unidad de reconocimiento enviada por Kovalsky desapareci tras una extraa comunicacin. Debes encontrarla para averiguar qu ha sucedido. + + + Centinela desaparecido: investiga la zona donde muri el centinela + + + El centinela se comportaba de forma extraa; deberas investigar el motivo. + + + Centinela desaparecido: encuentra al centinela + + + Uno de los soldados se ha ausentado de su puesto; tienes que encontrarlo y averiguar por qu lo ha hecho. + + + Centinela desaparecido: mata al controlador + + + Haba un controlador cerca del centinela desaparecido; debe ser eliminado. + + + Interferencia de radio: encuentra el escuadrn perdido + + + El escuadrn que buscaba el origen de la interferencia de radio ha desaparecido; tienes que encontrarlo. + + + Interferencia de radio: registra los cadveres + + + Registra los cadveres para determinar la causa de su muerte. + + + Interferencia de radio: registra el cadver + + + Registra el cadver para determinar la causa de su muerte. + + + Interferencia de radio: revienta la puerta + + + Tendrs que volar la puerta usando explosivos para abrirte paso al interior del edificio. + + + Interferencia de radio: investiga el sonido + + + Oyes un ruido procedente del interior de la nevera; parece que hay alguien encerrado dentro. Comprubalo. + + + Interferencia de radio: elimina el origen de la interferencia + + + Has encontrado el origen de la interferencia de radio; tienes que destruirlo. + + + Interferencia de radio: encuentra el origen de la interferencia + + + Hay una fuente de interferencia en el edificio: encuntrala. + + + Interferencia de radio: encuentra los explosivos + + + El escuadrn que buscaba el origen de la interferencia llevaba explosivos. salos para despejar la entrada del edificio. + + + Interferencia de radio: entra en el jardn de infancia + + + La seal procede del interior del jardn de infancia, as que tendrs que entrar. + + + Evacuacin: cubre a los militares + + + Puede que Strelok est muerto, pero an tienes que ayudar al ejrcito a llegar hasta los helicpteros. + + + Evacuacin: cubre a Strelok + + + El CG est interesado en la informacin que Strelok puede ofrecer. Debes llevarlo hasta los helicpteros. + + + Evacuacin: llega hasta los helicpteros + + + Todo el mundo ha muerto; tendrs que llegar t solo a los helicpteros. + + + Evacuacin: habla con Kovalsky + + + Tienes que hablar con Kovalsky antes de que empiece la evacuacin. + + + Evacuacin: dile a Kovalsky que ests listo + + + Deberas informar a Kovalsky de que ests listo para la evacuacin. + + + Evacuacin: espera que termine la evacuacin + + + Tienes que esperar al final de la evacuacin. + + + Desconocido: investiga el origen de la seal + + + Kirillov ha identificado una extraa seal no muy lejos de la base. Tienes que investigar el origen de esta seal. + + + Desconocido: sigue la seal + + + Las coordenadas de la seal vuelven a estar disponibles; sguelas. + + + Desconocido: investiga la ltima posicin conocida de la seal + + + La seal se desvaneci en el patio del edificio; investiga la ltima posicin conocida de la seal. + + + Desconocido: preprate para el ataque a la base + + + Regresa a la base militar y preprate para un posible ataque. + + + Interferencia de radio: habla con Kovalsky + + + El coronel Kovalsky ha preguntado por ti. + + + Laboratorio X8: entra en el hueco del ascensor + + + La entrada al laboratorio subterrneo est bajo la estacin de servicio de Yubileiny. La nica forma de acceder a l es por el hueco del ascensor. + + + Laboratorio X8: encuentra el generador + + + Las puertas del hueco del ascensor no tienen energa.Tendrs que encontrar y activar el generador de emergencia para abrirlas. + + + Laboratorio X8: baja al laboratorio + + + Tienes que usar el ascensor para bajar al laboratorio X8, que est bajo la estacin de servicio de Yubileiny. + + + Un disparo: elimina al mensajero + + + Debes eliminar al mensajero. Si muere, los mercenarios no podrn encontrar el laboratorio. + + + Un disparo: espera al equipo del cliente + + + Espera a que aparezca el equipo del cliente y mata a su lder. Si muere, los mercenarios no podrn encontrar el laboratorio. + + + Un disparo: mata al lder del escuadrn mercenario + + + Debes matar al lder del escuadrn mercenario. Si muere, los mercenarios se desbandarn y no supondrn una amenaza tan grande. + + + Un disparo: espera a que aparezcan los mercenarios + + + Debes esperar a que aparezcan los mercenarios y matar a su lder. Si muere, los mercenarios se desbandarn y no supondrn una amenaza tan grande. + + + Un disparo: habla con Kovalsky + + + Informa a Kovalsky del resultado de la misin. + + + Laboratorio X8: sal del complejo subterrneo o sigue buscando documentos + + + Has encontrado documentos y ya puedes irte del laboratorio, aunque puede haber ms documentacin en el complejo. + + + Laboratorio X8: sal del complejo subterrneo o sigue buscando documentos + + + Has encontrado documentos y ya puedes irte del laboratorio, aunque puede haber ms documentacin en el complejo. + + + Laboratorio X8: sal del complejo subterrneo + + + Parece que has reunido todos los documentos del laboratorio. Ya puedes irte del complejo subterrneo. + + + Fuerzas de Monolith: espera a los refuerzos. + + + Tienes que esperar a los refuerzos enviados por Kovalsky para eliminar a las fuerzas de Monolith de la librera. + + + Conversacin tranquila: habla con Kovalsky + + + Tienes que hablar con Kovalsky. Parece que tiene algo importante que contarte. + + + Evacuacin: resiste junto a los helicpteros + + + Debes proteger los helicpteros de los ataques enemigos hasta que puedan despegar. + + + Evacuacin: reanima al mdico + + + Parece que unas fuerzas sin identificar han vuelto a herir al mdico. Reanmalo cuanto antes. + + + Evacuacin: vuelve a los helicpteros + + + Debes volver a los helicpteros porque podran despegar en cualquier momento. + + + Evacuacin: vuelve a los helicpteros cuanto antes + + + Los helicpteros estn listos para despegar. Debes montarte en uno inmediatamente, los pilotos no pueden esperar mucho. + + diff --git a/gamedata/configs/text/spa/st_quests_zaton.xml b/gamedata/configs/text/spa/st_quests_zaton.xml new file mode 100644 index 0000000..eb7e928 --- /dev/null +++ b/gamedata/configs/text/spa/st_quests_zaton.xml @@ -0,0 +1,780 @@ + + + + Un lugar seguro: llega hasta Skadovsk + + + Los nicos lugares relativamente seguros de la Zona son los campamentos de gran tamao. El ms prximo es Skadovsk y hacia all debes dirigirte. + + + Mapas del lugar: encuentra a alguien interesado en los mapas + + + Mapas del lugar: ofrcele los mapas a Piloto + + + Es posible que Piloto, el gua local, est interesado en los mapas de la zona comprendida entre Zaton y Jpiter. + + + Pez Raya 2: investiga el lugar del accidente + + + Investiga el lugar del accidente del Pez Raya 2. + + + Pez Raya 5: investiga el lugar del accidente + + + Pez Raya 5: averigua por qu se han quemado los aparatos + + + Escuadrn de Peces Raya: encuentra el origen de la descarga que derrib a los dos helicpteros + + + Investiga el lugar del accidente del Pez Raya 5. + + + Debes encontrar el origen de la potente descarga elctrica que alcanz al helicptero Pez Raya 5. + + + Debes averiguar qu fue lo que quem los aparatos de los Peces Raya 4 y 5. Parece que fueron alcanzados por potentes descargas elctricas. + + + Comida: consigue comida para los mercenarios + + + El escuadrn mercenario de los talleres de la subestacin te ha pedido que les lleves seis latas de carne, salchichas troceadas o pan. + + + Comida: llvales la comida a los mercenarios + + + Debes llevarles a los mercenarios de los talleres de la subestacin la comida que has conseguido. + + + Herramientas: investiga los talleres de la subestacin + + + Dicen que podra haber herramientas en los talleres de la subestacin. Hasta puede que encuentres los que busca el tcnico. + + + Caza de la quimera: encuentra al mutante mientras duerme + + + Tienes que encontrar a la quimera antes de que despierte. + + + En busca de Urraca: informa a Gonta + + + Parece que han encontrado a Urraca, el stalker que se la jug al escuadrn de Gonta. Se ha unido a Libertad y ahora se hace llamar Pedernal. + + + Caza de la quimera: mata al mutante + + + La quimera est despierta; deberas matarla antes de que sea demasiado tarde. + + + Caza de la quimera: renete con Gonta en el bar a las 3 a.m. + + + Deberas reunirte con Gonta antes del amanecer para unirte a su escuadrn y cazar a la quimera. + + + Caza de la quimera: informa a Trapper + + + Deberas informar al stalker llamado Trapper de que la caza de la quimera ha tenido xito. l te recompensar. + + + En busca de Urraca: encuentra al stalker + + + Un stalker llamado Urraca enga al escuadrn de Gonta para que se topara con una quimera. Te han pedido que encuentres a ese bastardo. + + + Puntos de evacuacin: investiga la posicin B205 + + + El mapa que encontraste en uno de los helicpteros seala la ubicacin de puntos de evacuacin. Deberas comprobar si los soldados han ido a la posicin B205. + + + Puntos de evacuacin: investiga la posicin B28 + + + El mapa que encontraste en uno de los helicpteros seala la ubicacin de puntos de evacuacin. Deberas comprobar si los soldados han ido a la posicin B28. + + + Puntos de evacuacin: encuentra las coordenadas de la posicin B28 + + + La caja negra de uno de los Peces Raya tena una grabacin en la que el comandante del escuadrn designaba un punto de encuentro. Se trata del punto de evacuacin B28; tendrs que averiguar cules son las coordenadas. + + + Puntos de evacuacin: ve a la posicin B28 + + + La posicin en la que deban encontrarse los soldados se halla en Pripyat. Encuentra el modo de llegar. + + + Puntos de evacuacin: investiga la posicin B2 + + + El mapa que encontraste en uno de los helicpteros seala la ubicacin de puntos de evacuacin. Deberas comprobar si los soldados han ido a la posicin B2. + + + Extrao fenmeno: llvale el artefacto a Barbas + + + El origen del extrao brillo era un peculiar artefacto. Seguro que a Barbas le interesa. + + + Extrao fenmeno: pregunta a los stalkers sobre el artefacto + + + Puede que los stalkers sepan ms sobre el extrao artefacto, o tal vez te indiquen quin puede ayudarte. Deberas hablar con ellos. + + + Extrao fenmeno: busca el origen del brillo en la planta de dragado + + + Se ha avistado un extrao brillo en la planta de dragado. Barbas te ha pedido que investigues su origen. + + + Extrao fenmeno: coge el artefacto + + + El origen del extrao brillo era un peculiar artefacto. Deberas cogerlo. + + + Extrao fenmeno: habla con Barbas sobre el artefacto + + + El origen del extrao brillo era un peculiar artefacto. Aunque no tienes el artefacto, deberas hablarle a Barbas de l. + + + Ascenso a la meseta: salta al interior de la anomala + + + Parece que el camino a la meseta pasa a travs de la anomala. Tendrs que saltar a su interior. + + + Ascenso a la meseta: encuentra el atajo de No + + + En la PDA de No hay una referencia a un "atajo secreto" hacia la meseta. Tienes que encontrarlo. + + + Ascenso a la meseta: averigua cmo hace No para llegar hasta ella + + + Dicen que un stalker llamado No conoce un camino hasta la meseta. Tienes que averiguar cmo llegar. + + + Stalkers desaparecidos: vuelve con pruebas de la implicacin de Trmolo + + + Debes ir a Skadovsk con la PDA que contiene las grabaciones de Trmolo y ensersela a Barbas. En ellas queda claro que el mdico fue el responsable de la desaparicin de los stalkers. + + + Stalkers desaparecidos: busca pruebas de la implicacin de Trmolo + + + Debes comprobar si Trmolo ha dejado alguna prueba de su implicacin en la desaparicin de los stalkers. + + + Pez Raya 3: investiga el lugar del accidente + + + Investiga el lugar del accidente del Pez Raya 3. + + + Tienes que llevarle el artefacto a Barbas, pero el margen de tiempo que te dieron de ventaja ha expirado y tus competidores tambin lo estarn buscando. + + + Tienes que llevarle el artefacto a Barbas. Recuerda que tus competidores tambin lo estn buscando. + + + Tienes que llevarle el artefacto a Barbas, pero otro grupo ha anunciado que ya ha encontrado uno. Deberas rastrear la seal e intentar completar el trabajo antes que tus competidores. + + + Tienes que llevarle el artefacto a Barbas, pero otro grupo ya lo ha hecho. Ahora solo recibirs la mitad de la recompensa. + + + Tienes que llevarle el artefacto a Barbas. + + + Pedido de artefactos: regresa con un Gravi + + + Pedido de artefactos: regresa con un Ojo + + + Pedido de artefactos: regresa con una Burbuja + + + Pedido de artefactos: regresa con una Concha + + + Pedido de artefactos: regresa con un Pez de colores + + + Pedido de artefactos: regresa con una Llama + + + Pedido de artefactos: regresa con una Lucirnaga + + + Pedido de artefactos: regresa con un Copo de nieve + + + Tienes que encontrarle el artefacto a Barbas, pero el margen de tiempo que te dieron de ventaja ha expirado y tus competidores tambin lo estarn buscando. + + + Tienes que encontrarle el artefacto a Barbas. Recuerda que tus competidores tambin lo estn buscando. + + + Tienes que encontrarle el artefacto a Barbas, pero otro grupo ha anunciado que ya ha encontrado uno. Deberas rastrear la seal e intentar completar el trabajo antes que tus competidores. + + + Tienes que llevarle el artefacto a Barbas, pero otro grupo ya ha completado el pedido. Ahora solo recibirs la mitad de la recompensa. + + + Tienes que encontrarle el artefacto a Barbas. + + + Pedido de artefactos: encuentra un Gravi + + + Pedido de artefactos: encuentra un Ojo + + + Pedido de artefactos: encuentra una Burbuja + + + Pedido de artefactos: encuentra una Concha + + + Pedido de artefactos: encuentra un Pez de colores + + + Pedido de artefactos: encuentra una Llama + + + Pedido de artefactos: encuentra una Lucirnaga + + + Pedido de artefactos: encuentra un Copo de nieve + + + Brjula: localiza a No y averigua dnde puedes encontrar el artefacto poco comn + + + Tienes que buscar a No en la vieja barcaza y averiguar dnde puedes encontrar el artefacto Brjula. Barbas lleva mucho tiempo buscndolo y est dispuesto a pagar bien por l. + + + Brjula: llvale el artefacto a Barbas + + + Brjula: pregunta a No dnde puedes encontrar el artefacto poco comn + + + Sultn quiere interceptar el artefacto que est buscando Barbas. Tienes que localizar a No en la vieja barcaza y averiguar dnde est el artefacto. + + + Brjula: llvale el artefacto a Sultn + + + El artefacto que te ha dado No es la Brjula que buscaba Sultn. + + + Un negocio turbio: pdele tu parte a Barbas + + + Deberas pedirle a Barbas que te d tu tajada. + + + Un negocio tentador: habla con Sultn + + + El comerciante Bho cree que Barbas no respeta el acuerdo, y te ha sugerido que pidas ayuda a Sultn, el jefe criminal local. + + + Un negocio turbio: qutale los detectores a los stalkers + + + Debes hacer lo posible por quitarles los prototipos de detectores a los stalkers que buscan artefactos para Barbas. Sin detectores, no tendr ms remedio que aceptar las condiciones de Sultn. + + + Un negocio tentador: habla con Sultn + + + Barbas ya no tiene detectores; deberas hablar con Sultn para averiguar si ha resuelto su problema con los dems proveedores de Barbas. + + + Un negocio turbio: obliga a Barbas a trabajar para Sultn + + + Ahora que Barbas se ha quedado sin detectores y proveedores, no podr hacer nada por s solo; oblgale a trabajar para Sultn. + + + Un negocio turbio: averigua en qu anda metido Barbas + + + Tienes que averiguar en qu chanchullos anda metido Barbas actualmente; as podrs cortar sus vas de suministro. + + + Un negocio turbio: qutales el segundo detector a los stalkers + + + Debes hacer lo posible por quitarles los prototipos de detectores a los stalkers que buscan artefactos para Barbas. Sin detectores, no tendr ms remedio que aceptar las condiciones de Sultn. + + + Un negocio tentador: llvale a Novikov tres detectores Veles + + + El comerciante Bho te ha ofrecido participar en un lucrativo negocio. Tienes que encontrar tres detectores Veles y llevrselos a Novikov al bnker de los cientficos. + + + Un negocio tentador: espera a que Bho consiga los detectores + + + Novikov ha aceptado los detectores y ha prometido devolvrselos al mismo Bho. Tienes que esperar a que termine de trabajar con ellos y luego preguntarle a Bho por los resultados. + + + Un negocio tentador: habla con Bho + + + El comerciante Bho ha contactado contigo por radio para decirte que tiene problemas y que quiere verte. + + + Un negocio tentador: convence a Barbas para que respete el acuerdo + + + El comerciante Bho cree que Barbas no respeta el acuerdo. Tienes que hablar con l y convencerlo de que no lo siga incumpliendo. + + + Un negocio tentador: pdele una tajada a Bho + + + Barbas opina que no le debe nada a Bho; tienes que averiguar quin tiene razn y exigirle tu parte. + + + Snag te ha pedido que le lleves su estuche. Lo escondi en un viejo coche Zaporozhets que se cay a una grieta durante un terremoto. Snag tiene miedo de bajar a la grieta porque est llena de snorks. + + + Tienes el estuche de Snag; deberas llevrselo a su dueo para repartiros su contenido. + + + Guarida de chupasangres: informa a los stalkers + + + Tienes que informar a los stalkers sobre la guarida de chupasangres que hay bajo el complejo de la antena de Krug. + + + Guarida de chupasangres: informa a Barbas + + + Debes contarle a Barbas que has encontrado una guarida de chupasangres bajo el complejo de la antena de Krug; tendr que tomar medidas para proteger a los stalkers. + + + Stalkers desaparecidos: sigue a Urogallo + + + Urogallo te ha pedido que le ayudes a investigar el edificio abandonado del complejo de la antena. Ha visto chupasangres y quiere comprobar si el cazador est all. + + + Stalkers desaparecidos: averigua qu ha ocurrido + + + Parece que Tremor no es tan inocente como pareca. Debes averiguar qu ha sucedido. + + + Stalkers desaparecidos: encuentra a Urogallo + + + Urogallo fue a las gras del muelle por alguna razn; quiz descubri algo sobre los stalkers desaparecidos. Deberas buscarlo all. + + + Stalkers desaparecidos: averigua dnde est Urogallo + + + Urogallo no est en el lugar de costumbre. Deberas preguntarle a Barbas dnde ha ido. + + + Stalkers desaparecidos: encuentra al cazador desaparecido + + + Urogallo te ha pedido que le ayudes a encontrar al cazador que desapareci mientras buscaba la guarida de los chupasangres; segn informes recientes, estas criaturas son las responsables de las desapariciones. + + + Stalkers desaparecidos: sal de la guarida de los chupasangres + + + Has descubierto una guarida de chupasangres en el stano; sus inquilinos parecen estar sumidos en una especie de trance. Debes salir cuanto antes y en silencio. + + + Stalkers desaparecidos: renete con Urogallo + + + Quiz deberas reunirte con Urogallo para planear la bsqueda del cazador desaparecido. + + + Stalkers desaparecidos: renete con Urogallo ms tarde + + + No haba rastro del cazador Danila en el edificio del complejo de la antena. Sin embargo, Urogallo parece perplejo por lo que encontraste y te ha pedido que te renas con l ms tarde para discutir el asunto. + + + Stalkers desaparecidos: renete con Urogallo + + + En el lugar que te indic Urogallo hay un chupasangre muerto, pero ni rastro del cazador Danila. No obstante, parece que Urogallo ha encontrado algo interesante y te ha pedido que te renas con l. + + + Los chupasangres no tenan nada que ver con las desapariciones de stalkers; fue Tremor, el mdico de Skadovsk. + + + Herramientas: llvale herramientas a Cardn + + + Cardn te ha pedido que le consigas dos juegos de herramientas: uno para trabajos bsicos y otro para trabajos profesionales. Te pagar por ellas, y podr realizar modificaciones ms avanzadas en armas y blindajes. + + + Herramientas: llvale herramientas a Cardn + + + Cardn te ha pedido que le consigas dos juegos de herramientas: uno para trabajos bsicos y otro de calibracin. Te pagar por ellas, y podr realizar modificaciones ms avanzadas en armas y blindajes. + + + Herramientas: llvale herramientas a Cardn + + + Cardn te ha pedido que le consigas un juego de herramientas para trabajos bsicos. Te pagar por ellas, y podr realizar modificaciones ms avanzadas en armas y blindajes. + + + Herramientas: llvale herramientas a Cardn + + + Cardn te ha pedido que le consigas dos juegos de herramientas: uno para trabajos profesionales y otro de calibracin. Te pagar por ellas, y podr realizar modificaciones ms avanzadas en armas y blindajes. + + + Herramientas: llvale herramientas a Cardn + + + Cardn te ha pedido que le consigas un juego de herramientas para trabajos profesionales. Te pagar por ellas, y podr realizar modificaciones ms avanzadas en armas y blindajes. + + + Herramientas: llvale herramientas a Cardn + + + Cardn te ha pedido que le consigas un juego de herramientas de calibracin. Te pagar por ellas, y podr realizar modificaciones ms avanzadas en armas y blindajes. + + + Herramientas: llvale herramientas a Cardn + + + Cardn te ha pedido que le consigas tres juegos de herramientas: uno para trabajos bsicos, otro para trabajos profesionales y otro de calibracin. Te pagar por ellas, y podr realizar modificaciones ms avanzadas en armas y blindajes. + + + Campamento de mercenarios: coge toda la informacin que puedas encontrar + + + El comerciante Bho te pagar bien por los datos que encuentres en el campamento de mercenarios de la planta de tratamiento de basura. Est interesado en sus planes. + + + Campamento de mercenarios: coge toda la informacin que puedas encontrar + + + El comerciante Bho te pagar bien por los datos que encuentres en el campamento de mercenarios de la planta de tratamiento de basura. Est interesado en sus planes. + + + Tres camaradas: averigua qu ha sido de Barge + + + Cardn quiere que pidas disculpas en su nombre a su camarada, un stalker llamado Barge. Mantuvieron una discusin y se march sin decir adnde. + + + Tres camaradas: averigua qu ha sido de Barge y Bromista + + + Cardn quiere que pidas disculpas en su nombre a sus camaradas, los stalkers llamados Barge y Bromista. Tuvieron una discusin y se marcharon sin decir adnde. + + + Tres camaradas: averigua qu ha sido de Bromista + + + Cardn quiere que pidas disculpas en su nombre a su camarada, un stalker llamado Bromista. Mantuvieron una discusin y se march sin decir adnde. + + + Pedido especial: recoge la mercanca + + + La mercanca ha sido entregada; renete con Nimble para hacerte con ella. + + + Pedido especial: espera a que se produzca la entrega + + + El pedido se ha formulado, ahora deberas esperar a que Nimble consiga la mercanca. + + + Reputacin: encuentra a Snag + + + Tienes que encontrar a Snag y obligarlo a mantener la boca cerrada. Nimble no ha trabajado nunca con mercanca robada, pero para Snag es el pan de cada da. Lo vieron por ltima vez en las gras del muelle; quiz siga all. + + + Tienes que encontrar a Snag y obligarlo a mantener la boca cerrada. No estaba en las gras del muelle, pero quiz los bandidos sepan dnde se esconde. + + + Tienes que encontrar a Snag y obligarlo a mantener la boca cerrada. Parece que los bandidos estn implicados, seguramente saben dnde se encuentra. + + + Tienes que encontrar a Snag y obligarlo a mantener la boca cerrada. Por el momento no tienes ni idea de dnde puede estar. + + + Tienes que encontrar a Snag y obligarlo a mantener la boca cerrada. A juzgar por la PDA que le cogiste a uno de los bandidos, los hombres de Sultn estn buscando a Snag. Por desgracia nadie sabe dnde se esconde. + + + Reputacin: averigua dnde se ha ocultado Snag + + + Snag no est en el sitio de siempre; deberas preguntarle a los lugareos si saben adnde ha ido. + + + Tienes que encontrar a Snag y obligarlo a mantener la boca cerrada. No est en el sitio de siempre. Puede que Sultn sepa dnde est. + + + Tienes que encontrar a Snag y obligarlo a mantener la boca cerrada. No est en el sitio de siempre. Puede que Barbas sepa dnde est. + + + Reputacin: habla con Snag + + + Tienes que encontrar a Snag y obligarlo a mantener la boca cerrada. Nimble no ha trabajado nunca con mercanca robada, pero para Snag es el pan de cada da. + + + Guarida de chupasangres: encuentra el pozo de ventilacin + + + Encuentra el pozo de ventilacin para inundar la guarida de los chupasangres con gas venenoso. + + + Guarida de chupasangres: busca gas venenoso + + + Necesitars gas venenoso para destruir la guarida de los chupasangres. Bho debera saber dnde encontrarlo. + + + Necesitars gas venenoso para destruir la guarida de los chupasangres. Bho afirma que en el convoy militar abandonado hay varias latas. + + + Guarida de chupasangres: encuentra las llaves del contenedor + + + Los documentos que has encontrado mencionan las llaves de un contenedor de latas de gas. Tienes que encontrarlas. + + + Guarida de chupasangres: halla el modo de abrir el contenedor de latas de gas + + + El contenedor de latas de gas est cerrado con llave. Tienes que hallar el modo de abrirlo. + + + Guarida de chupasangres: coloca la lata de gas + + + Pon la lata de gas en el sistema de ventilacin del stano del complejo de la antena. El gas entrar por el pozo de ventilacin y matar a todos los chupasangres. + + + Guarida de chupasangres: informa a Barbas de la destruccin de la guarida + + + Informa a Barbas de que has destruido la guarida de los chupasangres para garantizar la seguridad de los stalkers de Skadovsk. + + + Guarida de chupasangres: gira la vlvula + + + Gira la vlvula para que el gas venenoso se cuele por el pozo de ventilacin e inunde la guarida. + + + Guarida de chupasangres: espera a que el gas surta efecto + + + Tienes que asegurarte de que el gas llena la guarida y mata a todos los chupasangres. + + + Transaccin: renete con los bandidos junto a la estacin de guardabosques + + + Sultn te ha pedido que participes en una transaccin con un comerciante. Tienes que acompaar a sus hombres y cubrirlos si ocurre algo. + + + Transaccin: renete con el comerciante + + + Bho te ha encargado que protejas a un comerciante durante una transaccin. Es evidente que se trata de un chanchullo y es posible que no salga del todo bien. + + + Transaccin: renete con los stalkers junto al puesto de guardabosques + + + Renete con los stalkers junto al puesto de guardabosques y aydalos a frustrar la transaccin entre los bandidos y el comerciante de armas. + + + Transaccin: protege al comerciante + + + El comerciante te ha explicado tu trabajo: protegerlo durante la transaccin. + + + Transaccin: espa la conversacin + + + Los stalkers quieren or la conversacin entre los bandidos y el comerciante de armas. + + + Transaccin: interrumpe la venta de armas + + + Haz lo que sea necesario para interrumpir la transaccin entre los bandidos y el comerciante. + + + Transaccin: elimina a los testigos + + + La transaccin no ha salido bien; tienes que eliminar a todos los testigos. + + + Transaccin: protege al comerciante + + + Tienes que proteger al comerciante. Tambin te ha ordenado que elimines a todos los testigos de la transaccin (incluidos sus clientes). + + + Transaccin: busca al comerciante + + + El comerciante podra tener informacin importante que te sera de utilidad ms adelante. Deberas aceptarla. + + + Transaccin: cubre a los bandidos durante la transaccin + + + Permanece atento y proporciona cobertura a los bandidos mientras negocian con el comerciante. + + + Transaccin: habla con el comerciante + + + Se ha completado la transaccin con los bandidos; ve a cobrar tu recompensa. + + + Transaccin: pdele tu recompensa a Barbas + + + Barbas prometi recompensarte si interrumpas la transaccin de los bandidos y el comerciante. Ahora que has frustrado la venta, puedes ir a cobrar tu recompensa. + + + Transaccin: habla con el lder de los bandidos + + + Tienes que informar al lder de los bandidos de que ya ests listo para participar en la transaccin. + + + El golpe: decide lo que vas a hacer + + + El golpe: ataca a los stalkers + + + El golpe: cobra tu recompensa + + + El ataque al campamento ha sido rechazado; ya puedes hablar con los stalkers para cobrar tu recompensa. De no haber sido advertidos del ataque, lo habran pasado muy mal. + + + Un grupo de stalkers ha recurrido al bandidaje y a asaltar a sus propios camaradas. Debes decidir entre unirte al asalto, advertir a los dems stalkers o no involucrarte. + + + El golpe: espera al momento acordado + + + El golpe: espera al momento adecuado + + + Escondite inalcanzable: llvale el contenedor a Snag + + + Transaccin: habla con el lder del escuadrn de stalkers + + + La transaccin ha sufrido un sabotaje. El comerciante de armas ha muerto. Habla con el lder del escuadrn de stalkers. + + + Stalkers desaparecidos: informa a los de Skadovsk sobre lo sucedido + + + Tienes que abrir el contenedor con las llaves que encontraste y sacar el tanque de gas envenenado. + + + Guarida de chupasangres: saca el tanque de gas del contenedor + + + El golpe: ataca a los ladrones + + + Atacar a los ladrones por la retaguardia ayudar a los stalkers a repeler su asalto. + + + El golpe: renete con los ladrones + + + nete a los ladrones para atacar el campamento stalker. + + + El golpe: nete a los ladrones + + + Unos stalkers te han pedido que les ayudes a rechazar el ataque de los ladrones. Debes unirte a los ladrones, as podrs atacarlos con total impunidad desde la retaguardia. + + + Los ladrones deberan estar esperando en Shevchenko. Tienes que reunirte con ellos para participar en el asalto a los stalkers. + + + Espera para reunirte con los ladrones. Quieren atacar el campamento stalker despus de medianoche, en la oscuridad. El punto de encuentro acordado es Shevchenko. + + + El golpe: consigue tu parte + + + El ataque a los stalkers ha tenido xito; deberas cobrar tu parte del botn. + + + Espera al momento adecuado para pillar a los ladrones distrados por el ataque. Despus podrs atacarlos por detrs para ayudar a los stalkers de Shevchenko. + + + Un negocio turbio: comienza a trabajar para Barbas + + + Para robar prototipos de detectores a los stalkers que trabajan para Barbas, tendrs que infiltrarte entre ellos. As podrs averiguar quines son tus competidores. + + + Tienes que coger el contenedor y llevrselo a su dueo. + + + El ordenador de a bordo del Pez Raya 2 tena mapas de la zona comprendida entre Zaton y Jpiter. Deberas buscar a alguien que los necesite. + + + Ascenso a la meseta: habla con stalkers + + + Parece que no hay una ruta directa a la meseta. Pregunta a los stalkers del lugar por otros caminos para llegar all. + + + El artefacto que te ha dado No es la Brjula que quiere Barbas. + + diff --git a/gamedata/configs/text/spa/st_subtitles.xml b/gamedata/configs/text/spa/st_subtitles.xml new file mode 100644 index 0000000..3135faa --- /dev/null +++ b/gamedata/configs/text/spa/st_subtitles.xml @@ -0,0 +1,156 @@ + + + + En la maana del 26 de abril de 1986, el reactor del bloque de energa 4 de la central nuclear de Chernbil qued destruido tras una gran explosin trmica. El viento desplaz la nube radiactiva resultante por toda la URSS y tambin por Europa e incluso Amrica. + + + Las ramificaciones de este desastre son tan graves que el gobierno de la Unin Sovitica se ve obligado a evacuar de urgencia a los residentes de las ciudades y pueblos cercanos. + + + Las reas contaminadas en un radio de 30 kilmetros en torno a la central nuclear se convierten en una zona de exclusin poderosamente protegida. + + + La operacin de Chernbil contina con la construccin de un sarcfago reforzado con cemento sobre los restos de la central. La existencia de una fuente masiva de energa, junto con el hecho de que el rea ha quedado deshabitada, se traduce en la creacin de una red de laboratorios secretos. + + + 10 de junio de 2006. Un destello cegador ilumina la Zona, una explosin de luz seguida de un segundo de silencio total mientras varias nubes se evaporan en el cielo. Despus, un trueno sacude el suelo. La mayor parte de los soldados del gobierno que protegen el permetro fallecen al instante. + + + 2007. Los cientficos siguen sin explicarse lo sucedido. Las escasas expediciones que se adentran en la Zona suelen terminar en tragedia, y los supervivientes afirman haber visto seres mutantes con increbles habilidades. + + + 2009. Segn diversos estudios, en la Zona viven entre 100 y 300 individuos desconocidos. Se llaman a s mismos stalkers y se dedican a recoger formaciones anmalas denominadas artefactos, que despus venden a cambio de considerables sumas de dinero. + + + 2010. A pesar de los cordones militares que rodean el permetro, el fenmeno de los stalkers se multiplica. Pero stos se mueven principalmente por los lmites de la Zona. Todos los escasos intentos de adentrarse en la Zona han fracasado. + + + 2012. El stalker Strelok resuelve el secreto del Cauterizador cerebral, un poderoso emisor capaz de destruir mentes humanas, y logra desactivarlo. Despus, todos los stalkers se dirigen al centro de la Zona; algunos con la esperanza de encontrar un arsenal de artefactos, otros en busca del Genio. + + + En estas circunstancias tan inestables, el consejo de defensa y de seguridad nacional de Ucrania decide poner en marcha una operacin inminente especial, conocida como la Operacin Puente. Docenas de helicpteros transportan soldados hacia Chernbil, movindose por los cielos por medio de mapas de campos de anomalas. A pesar de lo meticuloso de los preparativos, la operacin es un fracaso y ningn helicptero regresa de la misin. + + + El mayor Degtyarev, agente especial de la USS y antiguo stalker experimentado, es enviado a la Zona para investigar el fracaso de la operacin. + + + El mayor, equipado con un fusil de asalto, vveres para dos semanas y una radio para comunicarse con el cuartel general, comienza su viaje al centro de la Zona. + + + Habla con varios stalkers pero sin resultado. Ninguno tiene informacin o no la quiere compartir. + + + La Zona dista mucho de ser un complejo turstico. No pasa un solo da sin que el mayor sea atacado por los mutantes o, peor an, la gente. + + + Las comunicaciones con el cuartel general son, como mnimo, poco tiles: la nica informacin veraz disponible son las coordenadas de los cinco helicpteros estrellados. Estando a varios kilmetros de la central, la radio del mayor se avera. + + + Degtyarev se queda solo. + + + Como premio por completar con xito la investigacin, Degtyarev es premiado con un ascenso anticipado al cargo de coronel. Pero ste rechaza ocupar un cmodo puesto de oficina y en su lugar solicita ser enviado a la Zona como observador permanente del servicio de seguridad. + + + La informacin de Degtyarev sobre los dispositivos psquicos pone en alerta a sus superiores. Toda la informacin de los laboratorios X se elimina de los archivos militares y se clasifica como altamente confidencial. Todo el personal de la USS presente en la Zona recibe rdenes de no revelar los datos descubiertos en los laboratorios bajo ningn concepto. + + + Se realizaron varios experimentos tomando como base diversos documentos tcnicos sobre el objeto 62. Tras una serie de pruebas, se decidi no seguir adelante con el despliegue a gran escala del arma dado el alto coste de municin que supondra. De todas formas, existen pruebas de que todava se sigue trabajando en el desarrollo del fusil Gauss. + + + Tras fracasar en su intento de capturar la nave, Sultn y su grupo abandonaron Skadovsk. Esto cre un ambiente de relativa seguridad entre los stalkers, pero tambin un aumento desmesurado del nmero de artefactos vendidos a Barbas, impulsando la popularidad de su negocio. Skadovsk se hizo tan famoso como Los 100 Rads. + + + El grupo de Sultn se estableci con fuerza en Skadovsk, y la nave se convirti en una base de bandidos. Barbas se neg a seguir pagando un porcentaje de sus beneficios y mont un grupo de stalkers para explorar las regiones vrgenes de la Zona. Los intentos por parte de los stalkers para recuperar el control de la nave cesaron rpidamente tras echar por la borda a varios individuos problemticos para dar ejemplo y dejarlos morir en las emisiones. + + + Skadovsk sigui siendo el hogar de todos aquellos que tuvieron la suerte de llegar all. Los bandidos intentaron imponer su "ley" en la nave, pero los stalkers los mantuvieron a raya y se instaur una frgil tranquilidad en la nave. + + + Por desgracia, esta situacin no dur mucho tiempo. Los chupasangres de una guarida cercana a Skadovsk consiguieron llegar a la nave y empezaron a atacar a plena luz del da. Se organiz una misin para acabar con el problema, pero fracas en su intento de despejar los tneles. Poco despus, una oleada de chupasangres aniquil a todos los residentes de la nave. + + + Tras la destruccin de la guarida de chupasangres, los mutantes no consiguieron cambiar significativamente la situacin de Skadovsk. Por un breve tiempo, la vieja nave se convirti en un punto de relativa estabilidad en el mundo siempre cambiante de la Zona. + + + Libertad se gan la confianza de los stalkers de la estacin de Yanov. Deber organiz un ataque para intentar recuperar el territorio perdido, pero el teniente coronel Shulga muri poco despus en un tiroteo. El escuadrn de Deber se disolvi poco despus de perder a su lder. + + + Gracias a los refuerzos y a la creciente popularidad de Deber entre los stalkers, su escuadrn liber a la estacin de Yanov de las garras de Libertad. Tras una salvaje batalla, Loki y su escuadrn fueron aniquilados. + + + En la estacin de Yanov se cre un equilibrio muy frgil entre los escuadrones de Libertad y Deber. Hartos de luchar sin descanso, muchos soldados abandonaron sus facciones para unirse a los stalkers libres. + + + La expedicin organizada por los profesores Hermann y Ozersky fue todo un xito. Los datos recopilados ayudaron en el desarrollo de nuevos y exclusivos dispositivos y drogas, por lo que las subvenciones a programas de investigacin en la Zona aumentaron considerablemente. + + + La expedicin cientfica organizada por los profesores Hermann y Ozersky no reuni datos suficientes y fue cancelada. Los profesores regresaron al mundo exterior para dedicarse a otras actividades. + + + Las historias de Garry sobre la lucha del ejrcito contra los peligros de Pripyat despertaron mucho inters, y pronto varios grupos comenzaron a explorar la ciudad fantasma. A pesar de los constantes ataques de Monolith, los stalkers consiguieron hacerse con el antiguo campamento enemigo, y desde all organizaron ataques a la ciudad, de forma lenta pero constante. + + + Las historias de Garry sobre el final del ejrcito desanimaron a los stalkers en su intento por entrar en Pripyat. Los pocos que lo intentaron vieron fenmenos inexplicables y aterradores que aadieron ms toques sombros a su ya de por s oscura leyenda. + + + La leyenda del Oasis dej de serlo. La identidad de los que consiguieron llegar a la anomala secreta se convirti en tema de conversacin habitual entre los stalkers. Muchos aventureros siguieron intentando encontrar el Oasis, algo de lo que se aprovecharon los bandidos, que se ofrecan a guiar a los novatos hacia dicho lugar para tenderles una trampa una vez lejos de sus compaeros stalkers. + + + Los escuadrones de mercenarios siguen activos en la Zona. Su creciente inters en los laboratorios secretos los puso en el punto de mira de los operativos de la USS. Sin embargo, fracasaron todos los intentos por descubrir la identidad del cliente que pagaba a los mercenarios. + + + El rea en torno a la estacin de Yanov sigue atrayendo a un nmero creciente de stalkers. La ausencia de mutantes peligrosos y la abundancia de reas anmalas ha provocado que muchos se refieran a dicha zona como la cueva del tesoro. + + + El rea en torno a la estacin de Yanov se convirti en uno de los lugares ms peligrosos de la Zona. Cada vez menos stalkers regresaban de sus incursiones en ella; muchos moran a manos de los mutantes sin haberse alejado siquiera de sus campamentos. Entre ellos est Zveroboi, que muri en su ltima cacera, mientras persegua a una quimera. + + + Zulu volvi a la base principal de Deber de la central de Rostok. Nadie sabe de qu discuti con el lder de Deber, el general Voronin, pero poco despus le vieron dirigiendo un gran escuadrn de camino al centro de la Zona. + + + Los rumores sobre el final de Zulu llegaron a odos del lder de Deber, el general Voronin. Para sorpresa de muchos, Voronin decidi premiarle de forma pstuma con el escudo de plata, la mxima condecoracin. + + + Vano se traslad a los almacenes militares controlados por Libertad. Su personalidad alegre y optimista le hizo tan popular como se mereca. Termin dirigiendo a un grupo de investigadores de reas anmalas. + + + Los stalkers de la estacin de Yanov se siguen acordando del talento natural y de la bondad de Vano. Todos parecen estar de acuerdo en que Vano cometi un grave error al intentar buscar el camino hacia Pripyat, y que por eso tuvo tan triste final. + + + Se cre en la Zona un grupo nuevo de stalkers, bien entrenado pero sin objetivos claros. Se rumoreaba que estaba formado por antiguos soldados de Monolith. Su lder se llama Strider. + + + Pocos echaron en falta a Strider, la nica persona que intent entender y ayudar a los que cayeron bajo el influjo del monolito. + + + El teniente segundo Sokolov sigui volando por toda la Zona y su avin fue abatido por mercenarios en Limansk. Dos semanas ms tarde fue recogido por una patrulla cerca del Cordn. Sokolov cambi los aviones de combate por los vuelos civiles poco despus. + + + A la lista de bajas durante la Operacin Puente se ha aadido un nuevo nombre: Teniente segundo O.N. Sokolov. Fallecido en combate. + + + Bho contact con clientes del exterior de la Zona. Intercambia informacin y, de ser ciertos los rumores, uno de sus mejores clientes es la USS. + + + Unos stalkers se vieron obligados a cobijarse en la vieja barcaza de No durante una emisin especialmente poderosa. Poco despus, la barca fue asaltada por una horda de snorks y los stalkers se dieron cuenta de que ese lugar era una fortaleza pequea pero slida. Tambin se sorprendieron con la manada de pseudocachorros que el mismo No azuz contra los snorks. + + + Tras enterarse del final de sus amigos, Cardn abandon su carrera como stalker. Super su alcoholismo y se fue a Yanov, donde se ali con Nitro para crear un taller de reparaciones. Ambos tcnicos dedicaron todo su tiempo libre a construir un vehculo que pudiese moverse por el entorno implacable de la Zona. + + + Tras superar su alcoholismo, Cardn se fue de Skadovsk. Los stalkers dicen que se march a buscar a sus amigos. Regres unos das ms tarde, herido e intoxicado por la radiacin. En cuanto se curaron sus heridas, se fue de la Zona para siempre. + + + Strelok pas a los comandantes de la USS la informacin que consigui en la central de Chernbil. Esto provoc que el gobierno crease un instituto de investigacin del rea anmala de Chernbil. Strelok ocup el puesto de asesor cientfico del instituto. + + + Los descubrimientos de Strelok desaparecieron con l. La informacin que encontr en la central de Chernbil habra servido para comprender mejor los misterios de la Zona, pero se qued para siempre en sus confines. La Zona sabe guardar sus secretos. + + + Cuando el coronel Kovalsky, comandante del grupo Pez Raya, regres de la Zona, inform a sus superiores sobre los motivos del fracaso de la Operacin Puente. Tras una investigacin y el intento fallido por parte del alto mando de convertirlo en cabeza de turco, le concedieron una baja honrosa. + + + El coronel Kovalsky, comandante del grupo Pez Raya, pereci junto a gran parte de su escuadrn. Sus cuerpos desaparecieron en la Zona, y como prueba de su sacrificio tan solo quedan unas viejas y amarillentas fotografas en un museo militar. + + diff --git a/gamedata/configs/text/spa/ui_st_credits.xml b/gamedata/configs/text/spa/ui_st_credits.xml new file mode 100644 index 0000000..a2e2043 --- /dev/null +++ b/gamedata/configs/text/spa/ui_st_credits.xml @@ -0,0 +1,684 @@ + + + + Sergey Chechin + + + Maciej Abramowicz + + + Armen Abroyan + + + Actores + + + Control de calidad + + + AMD/ATI + + + Roman Androshiuk + + + Animacin + + + Departamento de grficos + + + Direccin de grficos + + + Nikita Atroshenko + + + Damian Bajorek + + + Mikhail Bastrykin + + + Kamil Bilinski + + + Krzysztof Binkowski + + + Arkadiusz Bochenek + + + Justin Boggs + + + Anatoly Bogush + + + Wojciech Borowy + + + Stanislaw Burtsau + + + Modelos de personajes + + + Aleksey Cherevatenko + + + Jerzy Chrul + + + Wojciech Ciemny + + + Composicin + + + Dmitry Abe Davidyan + + + Aaron Davies + + + Alexander Demidenko + + + Departamento + + + de programacin + + + Lukasz Derewonko + + + Ruslan Didenko + + + Yuri Doroshenko + + + Elena Dovgaliuk + + + Rafal Durajczyk + + + Petr Dushinsky + + + Maciej Dziarnowski + + + Sergey Eremenko + + + Yuri "Dark Falchenko + + + Jakub Gabryel + + + Cezary Galach + + + Departamento de diseo del juego + + + Programacin del juego + + + CENEGA QA + + + Agradecimientos especiales a + + + Filip Gerasimov + + + Grigory Hermann + + + Angelica Girich + + + Pawel Golubinski + + + Marcin Gorniak + + + Tomasz Goscicki + + + Programadores de grficos + + + Holger Grun + + + Pawel Grzywaczewski + + + Sergiy Grygorovich + + + Marcin Gutowski + + + Dmitry Yasenev + + + Intel + + + Sergey Ivantsov + + + Norbert Jankowski + + + Alexander Kachaniuk + + + Dmitry Kalita + + + Aleksander Keska + + + Andrey Darin Kirienko + + + Lukasz Kobylanski + + + Andrey Kolomiets + + + Artur Komorek + + + Yuri Konstantinov + + + Maria Kotolovskaya + + + Alexander Kovach + + + Kirill Koval + + + Irina Krivchikova + + + Dmitry Krivets + + + Eugene Kuchma + + + Svetlana Kudrya + + + Sergey Kurbatov + + + Olga Kuzhel + + + Dmitry Kuzmenko + + + Aleksey Kuznetsov + + + Oleg Kuznetsov + + + Szymon Lazarski + + + Jefe de animacin + + + Jefe de grafismo + + + Jefe de diseo del juego + + + Jefe de programacin + + + Jefe de control de calidad + + + Jefe de expertos + + + Diseo de niveles + + + Revisin + + + Vladimir Litvinenko + + + Eric Lundgren + + + Sergey Maistrenko + + + Dmitry Macedon + + + Roman Malinkin + + + Jefes de proyecto + + + Alexander Maniliuk + + + Daniel Mankowski + + + Denis Matveenko + + + Maciej Mazurek + + + Piotr Mazurkiewicz + + + Darren McPhee + + + Igor Melnikov + + + Victor Merkulov + + + Damian Mielnik + + + Pavel Mikhailov + + + Konstantin Mironov + + + Agradecimientos especiales a Oleg Fomenko + + + y BuntarMedia + + + por sus consejos para la captura de movimiento + + + Vladimir Morev + + + Andrey Moroz + + + Dawid Mrozowski + + + Yuri Negrobov + + + Programacin multijugador + + + nVidia + + + Aleksey Omelchuk + + + Lukasz Osinski + + + Mikhail Parfeniuk + + + Eugene Pashin + + + Igor Pasichnyi + + + Bartosz Peas + + + Programacin de fsica + + + Jacek Piotrowski + + + Alexander Plichko + + + Departamento de relaciones pblicas + + + Direccin de relaciones pblicas + + + Jefes de relaciones pblicas + + + Sergey Prishepa + + + Produccin + + + Jefe de proyecto + + + Pruebas + + + Anton Ravin + + + Sebastian Rejent + + + Mateusz Rekorajski + + + Filip Resiak + + + Peter Ross + + + Ivan Rozin + + + Lukasz Ruminski + + + Denis Rutkovsky + + + Lukasz Rynkowski + + + Coordinador de desarrollo empresarial + + + Piotr Samborowski + + + Maria Shapunova + + + Sergey Shelest + + + Igor Sidorenko + + + Mikolaj Sitkiewicz + + + Yuri Skripal + + + Konstantin Slipchenko + + + Tomasz Sobotka + + + Produccin de sonido + + + Agradecimientos + + + especiales para + + + Oleg Stalchuk + + + Liudmila Starodub + + + Vladimir Stavitsky + + + Pawel Stempien + + + Pawel Strzelczyk + + + Crditos + + + Konstantin Stupivtsev + + + Servicio + + + al cliente + + + Rafal Szekalski + + + Maciej Szumowski + + + Marcin Szwargolinski + + + Vladimir Tereshiuk + + + Sergey Terliuk + + + Texturas + + + Y a todos los que nos habis ayudado + + + a que este juego fuese an mejor: + + + Konstantin Morozkov + + + Yaroslav Uncle Yar Alexandrov + + + Dmitry Comandor Ivanov + + + Oleg Chernov + + + Ig. Valerian (Golovchenko) alias oVal + + + M. Bystrykhin + + + Eugene Mulder Khaletskiy + + + Pavel Goon Bolotov + + + Alexander Leks Abramov + + + Alexander Novikov + + + Alexander Poshtaruk, Andrey Oleshk + + + Eugene KRANZ Goncharenko + + + Sergey Dvuzhilny + + + Aleksey "Don Reba Badalov + + + Sergey Dvuzhilny, Tolusha + + + Artem Zuev, alias BAC9-FLCL + + + Glot, Patriot, Mers + + + Tiger, Demesis, Kharon, Moby + + + Alexander Oleinik + + + Konstantin Inquisitor Kriuchkov + + + Alexander Shakhovsky, Igor Dolzhenko + + + Sergey Tur Leshenko + + + Dmitry Hill Gorban + + + Mikhail Kliuev + + + Sergey Termite Volchanov + + + Sergey Tikhomirov + + + Ilya Tolmachev + + + Jakub Trudzik + + + Diseo de la interfaz + + + Yuri Uralsky + + + Denis Tetri$Zs Yusupov + + + RandyJ VanderHeyden + + + Vladimir Vazhinsky + + + Andrey Verpakhovsky + + + Alexander Vilkov + + + Anastassia Voskolovich + + + Andrzej Wardziak + + + Programacin del sitio Web + + + Dominik Wojcik + + + Lukasz Watroba + + + Eugene Yablon + + + Yuri Yatsenko + + + Eugene Yatsiuk + + + Oleg Yavorsky + + + Valentin Yeltyshev + + + Eugene Zaitsev + + + Andrey Zakoliukin + + + Marek Zdziarski + + + Michal Zegarski + + + Albert Zmudzki + + + Aleksey Zorin + + + Bartosz Zukowski + + + Victoria Morrant Yukhno + + + Sergey ion Kalintsev + + + Roman RVCool Kulikov + + + Maxim Smirnov + + + Omar Al-Shekhly + + + Roman =Marauder= Arhipov + + diff --git a/gamedata/configs/text/spa/ui_st_inventory.xml b/gamedata/configs/text/spa/ui_st_inventory.xml new file mode 100644 index 0000000..7794664 --- /dev/null +++ b/gamedata/configs/text/spa/ui_st_inventory.xml @@ -0,0 +1,303 @@ + + + + No tienes suficiente dinero + + + El personaje no tiene dinero suficiente + + + $$ACTION_QUICK_USE_1$$ + + + $$ACTION_QUICK_USE_2$$ + + + $$ACTION_QUICK_USE_3$$ + + + $$ACTION_QUICK_USE_4$$ + + + activar artefacto + + + activar lanzagranadas + + + montar mira en + + + montar silenciador en + + + Precio + + + Grupo: + + + Condicin + + + quitar lanzagranadas + + + quitar mira + + + quitar silenciador + + + poner traje + + + soltar + + + soltar todo + + + comer + + + kg + + + poner en cinturn + + + poner en mochila + + + poner en ranura + + + Al comerciante no le interesan estos objetos. + + + El objeto est demasiado estropeado para venderlo. + + + jugar + + + vender objeto + + + Estado del blindaje + + + Contaminacin radiactiva + + + quitar traje + + + descargar + + + usar + + + Peso + + + Tam. carg. + + + Precisin + + + Comprar municin bsica para pistola (Q) + + + Comprar municin para fusil (W) + + + Cura de heridas + + + Cancelar + + + No se puede comprar el arma + + + Restricciones de cantidad + + + Dao + + + Predeterminado (F5) + + + Atrs + + + Comprar lanzagranadas acoplado para fusil (D) + + + Comprar granadas para lanzagranadas acoplado (E) + + + Manejo + + + Ahora + + + Restaurar salud + + + Pesadas + + + Comprar la ltima combinacin comprada + + + Anterior (F4) + + + Dinero + + + Necesario + + + No tienes suficiente dinero + + + Aceptar + + + Peso de carga + + + Prot. trm. + + + Prot. qum. + + + Blindaje + + + Prot. rad. + + + Prot. elc. + + + Prot. psq. + + + In. imp. + + + Recup. energa + + + Equipo 1 (F1) + + + Equipo 2 (F2) + + + Equipo 3 (F3) + + + Radiacin + + + Restriccin de rango + + + Cad. disp. + + + Borrar (C) + + + Fusiles asalto + + + Elim. hambre + + + Comprar mira telescpica para fusil (S) + + + Vender todos los objetos de la mochila (X) + + + Fusiles + + + Comprar silenciador para pistola (A) + + + Comprar silenciador para fusil (F) + + + Francotirador + + + Tiempo + + + Ya tienes uno + + + Los servicios en lnea de S.T.A.L.K.E.R. no estn disponibles. + + + No se puede conectar al servidor principal. + + + Proteccin: + + + Predeterminado + + + Combinacin comprada guardada como + + + Peso total: + + + bebida + + + Recuperacin de energa + + + Hemorragia + + + Peso mximo + + + Salud + + + Municin + + + Duracin + + + seg. + + + Te permite sobrevivir a una emisin + + + llevar casco + + + quitarse casco + + diff --git a/gamedata/configs/text/spa/ui_st_keybinding.xml b/gamedata/configs/text/spa/ui_st_keybinding.xml new file mode 100644 index 0000000..0b0d26a --- /dev/null +++ b/gamedata/configs/text/spa/ui_st_keybinding.xml @@ -0,0 +1,225 @@ + + + + PDA + + + Orden de ataque + + + Caminar + + + Artefacto + + + Atrs + + + Prismticos + + + Men de compra + + + Chat + + + Chat de equipo + + + Consola + + + Contactos en PDA + + + Agacharse + + + Cambiar a agacharse + + + Detector + + + Abajo + + + Soltar + + + Disparar + + + Siguiente modalidad de disparo + + + Anterior modalidad de disparo + + + Adelante + + + Lanzagranadas acoplado + + + General + + + Direccin + + + Mochila + + + Movimiento + + + Multijugador + + + Arma + + + Mochila + + + Saltar + + + Izquierda + + + Inclinarse a la izquierda + + + Desp. lateral izquierdo + + + Mapa en PDA + + + Arma en la siguiente ranura + + + Dispositivo de visin nocturna + + + Pausa + + + PDA + + + Arma en la anterior ranura + + + Atrs + + + Recargar + + + Arreglar + + + Derecha + + + Inclinarse a la derecha + + + Desp. lateral derecho + + + Puntos + + + Captura de pantalla + + + Men de seleccin de modelos + + + Correr + + + Men de seleccin de equipos + + + Linterna + + + Activar + + + Arriba + + + Usar + + + Vendaje rpido + + + Botiqun rpido + + + Comenzar a votar + + + Votar + + + Votar "No" + + + Votar "S" + + + Arma 1 + + + Arma 2 + + + Arma 3 + + + Arma 4 + + + Arma 5 + + + Arma 6 + + + Cambiar municin + + + Previsualizar arma de este tipo + + + Zoom + + + Mensajes de voz (1) + + + Mensajes de voz (2) + + + Ranura de acceso rpido 1 + + + Ranura de acceso rpido 2 + + + Ranura de acceso rpido 3 + + + Ranura de acceso rpido 4 + + diff --git a/gamedata/configs/text/spa/ui_st_loadscreen.xml b/gamedata/configs/text/spa/ui_st_loadscreen.xml new file mode 100644 index 0000000..7ed5c1d --- /dev/null +++ b/gamedata/configs/text/spa/ui_st_loadscreen.xml @@ -0,0 +1,474 @@ + + + + 100 CONSEJOS PARA SOBREVIVIR EN LA ZONA + + + Si disparas a un enemigo en el ojo lo matars en el acto, sea cual sea su nivel de blindaje. + + + El AC-96/2 puede configurarse para disparar rfagas de dos balas que impactan en el mismo punto del objetivo. + + + Las escopetas de dos caones pueden disparar con ambos casi simultneamente. + + + No subestimes las pistolas. Ofrecen un poder de detencin considerable y pueden resultar muy eficaces contra objetivos poco protegidos. + + + Los fusiles de francotirador son ideales para eliminar enemigos desde lejos gracias a su trayectoria y precisin. Son menos eficaces a corta distancia. + + + Si disparas mientras te mueves, la precisin es mucho menor que si lo haces inmvil o arrodillado. + + + Las armas y los trajes protectores se desgastan rpidamente en el entorno hostil de la Zona. Las armas desgastadas son menos precisas y suelen fallar, y los trajes desgastados protegen menos. + + + Para hacer una captura de pantalla, pulsa "$$ACTION_SCREENSHOT$$". + + + El artefacto (o el jugador que lo lleva) aparece en el minimapa. Si est demasiado lejos, vers una flecha que indica la direccin en la que se encuentra. + + + El AC-96/2 puede configurarse para disparar rfagas de dos balas que impactan en el mismo punto del objetivo. + + + Las escopetas de dos caones pueden disparar con ambos casi simultneamente. + + + No subestimes las pistolas. Ofrecen un poder de detencin considerable y pueden resultar muy eficaces contra objetivos poco protegidos. + + + Los fusiles de francotirador son ideales para eliminar enemigos desde lejos gracias a su trayectoria y precisin. Son menos eficaces a corta distancia. + + + Las armas y los trajes protectores se desgastan rpidamente en el entorno hostil de la Zona. Las armas desgastadas son menos precisas y suelen fallar, y los trajes desgastados protegen menos. + + + Algunos productos mdicos tienen propiedades nicas. Por ejemplo, las pldoras Hrcules te permiten acarrear ms peso temporalmente, mientras que los inhibidores psquicos te ayudan a resistir las emisiones psquicas. + + + Para hacer una captura de pantalla, pulsa "$$ACTION_SCREENSHOT$$". + + + Consejo n. + + + El vodka, una alternativa sencilla y barata a los medicamentos antirradiacin, reduce los efectos de la radiacin en el cuerpo. + + + Para acceder a informacin detallada sobre la misin en curso, mantn "$$ACTION_SCORES$$". + + + Necesitas un detector para buscar artefactos. Los mejores detectores facilitan las bsquedas y detectan cosas ms valiosas. + + + Los stalkers no permiten el paso a sus campamentos gente con armas a la vista. Para esconder tu arma, pulsa la tecla apropiada ("$$ACTION_WPN_1$$", "$$ACTION_WPN_2$$", $$ACTION_WPN_3$$", "$$ACTION_WPN_4$$"). + + + Puedes localizar los lmites de una anomala lanzando tornillos. Para sacar un tornillo, pulsa "$$ACTION_WPN_6$$". + + + Adems de saciar el hambre, comer aumenta ligeramente tu nivel de salud. + + + Las bebidas energticas mejoran momentneamente la recuperacin de resistencia, incrementando tu movilidad potencial. + + + Una baja resistencia puede dejarte inmvil y vulnerable ante el enemigo en momentos cruciales. + + + Puedes ver lo oculto que ests con los indicadores de ruido y de deteccin enemiga situados en la parte superior izquierda de la pantalla. + + + Llevar un detector en una mano no te impide usar un cuchillo, una pistola o un tornillo con la otra. + + + Ciertos productos mdicos aumentan la resistencia a los efectos nocivos. Usarlos puede salvarte la vida en reas anmalas. + + + Para abrir el men contextual y acceder a objetos de tu mochila, sita el cursor sobre el elemento necesario y pulsa el botn derecho del ratn. + + + La mayora de los artefactos, adems de tener efectos positivos, emiten radiaciones que puedes compensar usando otros que las absorban. + + + El cuchillo no sirve de nada contra enemigos con armas de fuego. salo en el combate cuerpo a cuerpo o para matar sigilosamente. + + + El peso que lleves encima reduce tu resistencia. Un peso excesivo limitar tu movilidad, y, si te cargas demasiado, no podrs ni moverte. + + + Un detector es lo nico fiable para comprobar si hay artefactos en reas anmalas. + + + La mayora de los artefactos permanecen invisibles en las reas anmalas hasta que los identificas con el detector. + + + Los mutantes son ms activos de noche, lo que explica por qu los stalkers prefieren esperar a que sea de da para adentrarse en la Zona. + + + Si has estado muy expuesto a radiaciones, usa medicamentos antirradiacin. Si no tienes, usa botiquines para tratar los primeros sntomas hasta que des con un mdico. + + + Casi cualquier stalker puede llevarte a un sitio cercano, pero solo un gua experimentado puede conducirte de forma rpida y segura a lugares lejanos. Eso s, te cobrar un ojo de la cara. + + + Vender artefactos no es el nico modo de hacer dinero: deshacerte de equipo innecesario tambin puede ser muy lucrativo. Ten en cuenta que los comerciantes no suelen estar interesados en artculos muy daados. + + + Para desmontar un silenciador, una mira o un lanzagranadas acoplado de un arma, haz clic con el botn derecho en ella cuando est en la mochila y selecciona la accin pertinente del men contextual. + + + Si quieres moverte sin hacer ruido, pulsa "$$ACTION_ACCEL$$" para andar o "$$ACTION_CROUCH$$" para agacharte. + + + Las escopetas son armas de corto alcance. Cuanto ms lejos tengas a un enemigo, menos efectivas sern. + + + Para cubrirte de disparos de armas de fuego pequeas, escndete tras algo slido. A diferencia de los muros de cemento, las tablas de madera y las placas de metal no son seguras. + + + Los disparos a la cabeza son muy dainos y letales para casi cualquier enemigo. + + + Cada tipo de mutante en la zona tiene sus propias caractersticas de combate. Tenlo en cuenta y tendrs ms opciones de sobrevivir. + + + Para ajustar lo lejos que lanzas una granada, mantn "$$ACTION_WPN_ZOOM$$". + + + Los enemigos utilizan granadas. Cuando veas un indicador de granada, abandona el radio letal de inmediato. + + + Acelerar antes de un salto te permite salvar grandes distancias. + + + Los indicadores clave que muestran tu salud y tu resistencia estn situados en la parte inferior derecha de la pantalla. + + + La Zona tiene vida propia, lo que significa que siempre te puedes encontrar mutantes o stalkers enemigos en lugares que ya hayas despejado. + + + Muy atento en la Zona; no te fes de datos anteriores. Al volver a un rea anmala que ya hayas explorado, puedes descubrir que el sendero que conocas ya no existe. + + + Hablar con los stalkers puede proporcionarte informacin til sobre reas o eventos nuevos. + + + Puedes usar cualquier arma en ambas ranuras, lo que te permite crear combinaciones flexibles, como fusil de asalto/escopeta, o pistola/fusil de francotirador. + + + Cada comerciante de los campamentos de stalkers ofrece su propia mercanca nica. Por ejemplo, los mdicos pueden facilitarte los mejores productos mdicos. + + + Si llegas a un campamento de stalkers estando herido o intoxicado por radiaciones, puedes acudir gratuitamente al mdico local. + + + Puedes dejar tus cosas en una caja personal en el campamento para no llevar encima trastos innecesarios. + + + Si tienes que esperar a una determinada hora, puedes echarte una siesta en el campamento para pasar el rato. Busca una zona de descanso, pulsa "$$ACTION_USE$$" y elige cunto quieres dormir. + + + Puedes mejorar el dispositivo de visin nocturna de tu casco. La versin avanzada aumentar considerablemente su alcance. + + + Cuando andes por la Zona, lleva a mano un par de cargadores de sobra. Igual te vienen bien. + + + Recuerda guardar la partida de vez en cuando para no tener que jugar las mismas escenas una y otra vez. + + + Para usar los medicamentos apropiados, es til conocer su efecto. Consulta las descripciones para informarte. + + + Usa granadas para atacar a los enemigos a cubierto. Ten en cuenta su radio de impacto para no herir a tus aliados. + + + Para desechar un objeto de tu mochila, haz clic con el botn derecho encima del objeto y selecciona la accin pertinente del men contextual. + + + Puedes usar una funcin especial del men de opciones para guardar tu progreso en determinados puntos claves de la partida. + + + Al volver al campamento, conviene arreglar tu equipo, vender el botn que no necesites y reabastecerte de municin y suministros mdicos. + + + Para reducir los efectos dainos de reas anmalas durante incursiones a la Zona, usa un traje protector, artefactos o toma el medicamento adecuado. + + + Adems de armas y municin, en los cadveres enemigos puedes encontrar cosas valiosas como una PDA con informacin. + + + Los artefactos no son solo un valioso botn; adems de ser ligeros y caros, suelen tener efectos muy beneficiosos. + + + Debido al entorno de la Zona, muchos mutantes son radioactivos. Acercarte a ellos sin la proteccin adecuada es extremadamente peligroso. + + + Puedes usar una venda, un botiqun militar o medicamentos de Vinca para detener una hemorragia. Si no te das prisa, tu salud pude verse muy perjudicada. + + + Algunas armas te permiten instalar una mira de largo alcance. Para ajustar el alcance, pulsa "$$ACTION_NEXT_SLOT$$" o "$$ACTION_PREV_SLOT$$". + + + Hay lugares por los que no podrs pasar ni siquiera estando agachado. Para agacharte lo mximo posible, mantn "$$ACTION_CROUCH$$" y "$$ACTION_ACCEL$$" simultneamente. + + + Para reducir las posibilidades de resultar herido, dispara apoyado contra las esquinas. Para ello, mantn "$$ACTION_LLOOKOUT$$" o "$$ACTION_RLOOKOUT$$". + + + Gracias al mecanismo integrado de ubicacin de objetivos, los prismticos no solo te permitirn ver perfectamente objetos lejanos, sino tambin localizar a enemigos. Para sacarlos, pulsa "$$ACTION_WPN_5$$". + + + Para encender o apagar la linterna, pulsa "$$ACTION_TORCH$$". + + + Para sacar un tornillo, pulsa "$$ACTION_WPN_6$$". + + + Si tienes un dispositivo de visin nocturna acoplado al casco, puedes activarlo y desactivarlo pulsando "$$ACTION_NIGHT_VISION$$". + + + Pulsa "$$ACTION_QUICK_USE_1$$", "$$ACTION_QUICK_USE_2$$", "$$ACTION_QUICK_USE_3$$" o "$$ACTION_QUICK_USE_4$$" para usar el objeto correspondiente del panel de acceso rpido. + + + Los medicamentos no son de efecto inmediato, aunque algunos duran mucho. + + + Tu PDA contiene un mapa, informacin sobre las misiones en curso, estadsticas personales y un registro de mensajes. Para abrirla, pulsa "$$ACTION_ACTIVE_JOBS$$". + + + Tienes que sacar el detector para buscar artefactos. Para ello, pulsa "$$ACTION_SHOW_DETECTOR$$". + + + Para detener el juego, pulsa "$$ACTION_PAUSE$$". + + + Para guardar rpido, pulsa "$$ACTION_QUICK_SAVE$$". Pulsa "$$ACTION_QUICK_LOAD$$" para cargar el ltimo archivo guardado. + + + Correr es el modo ms rpido de moverse, pero tambin el que ms cansa. Pulsa "$$ACTION_SPRINT_TOGGLE$$" para correr. + + + Si apuntas, sers ms preciso que disparando sin ms. Para apuntar, pulsa "$$ACTION_WPN_ZOOM$$". + + + Si tienes un lanzagranadas acoplado, puedes cambiar el modo de disparo de normal a granadas pulsando "$$ACTION_WPN_FUNC$$". + + + Si tienes varias clases de municin para el arma en uso, puedes cambiar de una a otra pulsando "$$ACTION_WPN_NEXT$$". + + + Para recargar el arma antes de agotar el cargador, pulsa "$$ACTION_WPN_RELOAD$$". + + + Para desechar el arma equipada, pulsa "$$ACTION_DROP$$". + + + Para aguardar a que pase una emisin, refgiate en un edificio fiable o subterrneo, Cuando se aproxime una emisin, vers marcado en tu PDA el punto ms cercano. + + + Para usar un objeto mediante acceso rpido, arrstralo de la mochila a una de las cuatro ranuras sobre los contenedores para artefactos. + + + Si ves una gota de sangre en la esquina inferior derecha de la pantalla, es que sufres una hemorragia y debes detenerla. El color del smbolo vara segn la gravedad. + + + Un smbolo de peligro por radiacin te alerta de que ests expuesto a radiaciones. Cuando eso ocurra, usa medicamentos antirradiacin. El color del smbolo indica el nivel de exposicin sufrido. + + + Puedes ocultar y mostrar diferentes marcadores en el mapa de tu PDA utilizando filtros. Los botones para filtrar se encuentran arriba del mapa, bajo la misin actual. + + + Los artefactos no suelen ser estticos, sino que tienden a moverse en un rea anmala. Si persigues como loco un artefacto acabars metido en una anomala en poco tiempo. + + + Algunos stalkers pueden ofrecer servicios como facilitarte informacin y productos exclusivos, o conseguirte artefactos. + + + Tras una emisin, pueden aparecer nuevos artefactos en reas anmalas que ya hayas explorado. + + + Puedes cambiar la dificultad del juego cuando quieras en el men de opciones. + + + Los tcnicos de los campamentos de stalkers pueden mejorar tus armas, trajes y cascos. + + + Si quieres sobrevivir, permanece atento a los chirridos del contador Geiger, que te avisarn de las radiaciones, y a la seal de peligro por anomala, que te indica que te aproximas a una anomala. + + + Tu relacin con la gente tiene repercusin directa en el precio de los artculos y los servicios. Si no te llevas bien con alguien, no esperes ningn descuento. Sin embargo, si tienes buen trato, puede que hasta te ofrezca algo especial. + + + Puedes descargar las armas que encuentres para conseguir ms municin; haz clic con el botn derecho en el arma dentro de tu mochila y selecciona la accin precisa en el men contextual. + + + Matando a enemigos y consiguiendo artefactos reunirs los puntos necesarios para aumentar de rango. Al subir de rango, puedes acceder a nuevas armas, blindajes y equipo. + + + Las granadas de humo sirven para robar un artefacto u ocultarse. + + + A la izquierda del men de compra vers cinco pestaas. De arriba abajo: pistolas, armas principales, equipo, municin y suministros mdicos. Al seleccionar una, vers todos los elementos accesibles a tu rango. + + + El men de compra de la pantalla tiene 4 ranuras de compra rpida. Pulsa el icono del disco para guardar una combinacin o el nmero pertinente para cargar dicha combinacin. La cuarta ranura es para guardar la ltima combinacin adquirida. + + + Si tienes ms de un arma, puedes cambiar de una a otra pulsando repetidamente "$$ACTION_WPN_3$$". + + + Puedes activar un artefacto para crear una anomala. Para ello, saca el artefacto pulsando "$$ACTION_ARTEFACT$$" y mantn "$$ACTION_WPN_FIRE$$". La anomala que aparezca ser tan peligrosa para tus enemigos como para ti. + + + Un traje de cientfico te ayudar a sobrevivir en anomalas y reas radioactivas. + + + CAZA DE ARTEFACTOS: para ganar, debes llevar un determinado nmero de artefactos a tu base. + + + Para desmontar un silenciador, una mira o un lanzagranadas acoplado de un arma, haz clic con el botn derecho en ella cuando est en la mochila y selecciona la accin pertinente del men contextual. + + + Si quieres moverte sin hacer ruido, pulsa "$$ACTION_ACCEL$$" para andar o "$$ACTION_CROUCH$$" para agacharte. + + + Las escopetas son armas de corto alcance. Cuanto ms lejos tengas a un enemigo, menos efectivas sern. + + + Para cubrirte de disparos de armas de fuego pequeas, escndete tras algo slido. A diferencia de los muros de cemento, las tablas de madera y las placas de metal no son seguras. + + + Los disparos a la cabeza son muy dainos y letales para casi cualquier enemigo. + + + Los movimientos acelerados, los saltos y las heridas minan mucho tu resistencia. + + + Para ajustar lo lejos que lanzas una granada, mantn "$$ACTION_WPN_ZOOM$$". + + + Los enemigos utilizan granadas. Cuando veas un indicador de granada, abandona el radio letal de inmediato. + + + COMBATE A MUERTE: consigue ms puntos letales que nadie para ganar. + + + Acelerar antes de un salto te permite salvar grandes distancias. + + + Los indicadores clave que muestran tu salud y tu resistencia estn situados en la parte inferior derecha de la pantalla. + + + El minimapa indica la direccin del artefacto. Si la flecha seala arriba, el artefacto est por encima de tu posicin actual. Si seala abajo, est por debajo. + + + Puedes recoger mochilas enemigas para reunir dinero extra. El equipo que te sobre, vndelo en la base. + + + Cubre a toda costa al miembro de tu equipo que cargue con los artefactos. + + + Usa granadas para atacar a los enemigos a cubierto. Ten en cuenta su radio de impacto para no herir a tus aliados. + + + Puedes comunicarte con tu equipo mediante mensajes de voz. Para acceder al men de esa opcin, pulsa "$$ACTION_SPEECH_MENU_0$$" o "$$ACTION_SPEECH_MENU_1$$". + + + COMBATE A MUERTE EN EQUIPO: para ganar, tu equipo deber conseguir ms puntos letales que el enemigo. + + + Para iniciar una votacin, pulsa "$$ACTION_VOTE_BEGIN$$". + + + Para ver las puntuaciones del juego, pulsa "$$ACTION_SCORES$$". + + + Para reaparecer, pulsa "$$ACTION_JUMP$$" una vez finalizado el periodo de espera. + + + Para abrir el men de compra, pulsa "$$ACTION_BUY_MENU$$" en el interior de la base. + + + Puedes abrir el chat general pulsando "$$ACTION_CHAT$$". Para comunicarte nicamente con tu equipo, pulsa "$$ACTION_CHAT_TEAM$$". + + + Correr es el modo ms rpido de moverse, pero tambin el que ms cansa. Pulsa "$$ACTION_SPRINT_TOGGLE$$" para correr. + + + Si apuntas, sers ms preciso que disparando sin ms. Para apuntar, pulsa "$$ACTION_WPN_ZOOM$$". + + + Si tienes un lanzagranadas acoplado, puedes cambiar el modo de disparo de normal a granadas pulsando "$$ACTION_WPN_FUNC$$". + + + Si tienes varias clases de municin para el arma en uso, puedes cambiar de una a otra pulsando "$$ACTION_WPN_NEXT$$". + + + Para recargar el arma antes de agotar el cargador, pulsa "$$ACTION_WPN_RELOAD$$". + + + CAPTURA DEL ARTEFACTO: para ganar, debes llevar un determinado nmero de artefactos enemigos a la base. + + + Para desechar el arma equipada, pulsa "$$ACTION_DROP$$". + + + Para mirar en tu mochila, pulsa "$$ACTION_INVENTORY$$". + + + Casi todas las armas tienen varios modos de disparo. Para cambiar de uno a otro, pulsa "$$ACTION_WPN_FIREMODE_NEXT$$" o "$$ACTION_WPN_FIREMODE_PREV$$". + + + Hay lugares por los que no podrs pasar ni siquiera estando agachado. Para agacharte lo mximo posible, mantn "$$ACTION_CROUCH$$" y "$$ACTION_ACCEL$$" simultneamente. + + + Para asomarte por una esquina, pulsa "$$ACTION_LLOOKOUT$$" o "$$ACTION_RLOOKOUT$$". En esta posicin, no puedes disparar. + + + CAPTURA DEL ARTEFACTO: para devolver un artefacto robado a tu base, tienes que matar al enemigo que lo lleve y recogerlo pulsando "$$ACTION_USE$$". + + + CAZA DE ARTEFACTOS: puedes destruir el artefacto activndolo. Para ello, scalo pulsando "$$ACTION_ARTEFACT$$" y mantn "$$ACTION_WPN_FIRE$$". + + + No puedes correr con el artefacto a cuestas. + + + Para mirar en tu mochila, pulsa "$$ACTION_INVENTORY$$". + + + Para reparar un arma, traje o casco, busca un tcnico, selecciona el objeto en la pantalla de modificacin y haz clic en el botn de reparacin. + + + Casi todas las armas tienen varios modos de disparo predeterminados y tambin puedes comprar modificaciones para aadir ms modos. Para cambiar de uno a otro, pulsa "$$ACTION_WPN_FIREMODE_NEXT$$" o "$$ACTION_WPN_FIREMODE_PREV$$". + + + La trayectoria del arma afecta a la direccin de las balas, y el manejo establece el tiempo que tarda la mira en volver a su posicin inicial tras el disparo. + + + Algunos trajes llevan cascos integrados y no es posible combinarlos con otros cascos. + + + Cada arma tiene sus propios valores de precisin, manejo, dao y cadencia de disparo. Elige la que ms que te convenga de una amplia seleccin. + + + La precisin de disparo se ve mermada considerablemente cuando te mueves. Qudate quieto o agchate para mejorarla. + + + Esta bebida energtica acelera la recuperacin de energa temporalmente y te permite esprintar ms tiempo. + + + En el modo Combate a muerte tendrs municin ilimitada. + + + Uno de los peligros ms comunes de la Zona es la radiacin. Una exposicin prolongada minar tu salud y puede ser mortal si no se trata adecuadamente. + + + Lleva comida en las largas incursiones. Si llegas a pasar mucha hambre, tu recuperacin de resistencia se ver afectada. + + diff --git a/gamedata/configs/text/spa/ui_st_mm.xml b/gamedata/configs/text/spa/ui_st_mm.xml new file mode 100644 index 0000000..9b987bd --- /dev/null +++ b/gamedata/configs/text/spa/ui_st_mm.xml @@ -0,0 +1,936 @@ + + + + Despejado + + + Nublado + + + medio + + + mximo + + + alto + + + bajo + + + mnima + + + Noche + + + Lluvia + + + TIPO DE PARTIDA + + + maestro + + + principiante + + + veterano + + + ICONOS + + + MAPA + + + Volver por activacin + + + Permitir votacin + + + Tiempo anomala (min.) + + + Captura del artefacto + + + Desfase del artefacto + + + Nmero de artefactos + + + Tiempo de artefacto + + + Devolver artefacto + + + Equilibrio de equipos automtico + + + Cambio de equipo automtico + + + MAPAS DISPONIBLES + + + Cancelar + + + Clave del CD + + + comprobar clave del CD + + + Cliente + + + Crear + + + Invulnerabilidad (seg.) + + + Indicador de invulnerabilidad + + + Muertes + + + Dedicado + + + Lista de demos + + + estadsticas del jugador + + + Grabar demo + + + Grabacin de demo + + + Vacos + + + Filtros + + + Reaparicin forzada (seg.) + + + Lmite de vidas + + + Vidas + + + Tiempo de desfase + + + Dao de aliado + + + Indicadores de aliados + + + Nombres de aliados + + + Llenos + + + Modo + + + IP/host:puerto + + + Internet + + + Conectar + + + LAN + + + En lista + + + Repetir + + + Lista de mapas + + + Lmite de jugadores + + + Conexin de red + + + Sin anomalas + + + Opciones + + + Contrasea + + + Nombre del jugador: + + + Jugadores + + + nmero de jugadores + + + Servidor de Internet + + + Actualizar rp. + + + Cambiar coeficiente + + + Actualizar todo + + + Refuerzos (seg.) + + + Opciones de reaparicin + + + MAPAS SELECCIONADOS + + + Servidor + + + Lista de servidores + + + Propiedades del servidor + + + Info. servidor + + + Servidor + + + Nombre del servidor + + + Ajustes del servidor + + + Espectador + + + Primera persona + + + Cmara libre + + + Bloqueada libre + + + Tercera persona + + + Ajustes de espectador + + + Solo equipo + + + Tiempo inicial + + + puntos + + + Lmite de tiempo (min.) + + + T. calentamiento (seg.) + + + Opciones meteorolgicas + + + Sin fuego amigo + + + Sin contrasea + + + Sin PunkBuster + + + Sin contrasea + + + LAN + + + Internet + + + Fbrica de Agroprom + + + Estacin de vehculos + + + Estanque + + + Apodo cambiado con xito! + + + Valle Oscuro + + + Fbrica de Yantar + + + error al conectarte al servidor de estadsticas + + + error al conectarte al servidor de inicio de sesin + + + Autorizacin completada + + + Pueblo abandonado + + + Almacenes militares + + + nombre incorrecto + + + Estanque + + + Estacin de tren + + + Fbrica de Rostok + + + apodo incorrecto + + + Confirma que quieres eliminar + + + Fbrica abandonada + + + PING + + + JUGADORES + + + Iluminacin esttica + + + Iluminacin dinmica completa + + + Ilumin. dinmica completa mejorada + + + Iluminacin dinmica de objetos + + + Ilum. din. completa mejor. (DX10) + + + NOMBRE DEL SERVIDOR + + + Caza de artefactos + + + Captura del artefacto + + + Batalla campal + + + Filtro: + + + alto + + + bajo + + + medio + + + no + + + experimentado + + + stalker legendario + + + principiante + + + profesional + + + veterano + + + Juego en equipo + + + Frecuencia 60 Hz + + + Accin + + + Avanzado + + + Alternativo + + + Filtro anisotrpico + + + Aplicar + + + Atrs + + + Sangre + + + Brillo + + + Cancelar + + + Actualizac. + + + Contraste + + + Controles + + + Crditos + + + Distancia del objetivo + + + Predeterminado + + + Borrar + + + Seguro que quieres borrar este archivo? + + + Detalle de la hierba + + + Dificultad + + + Desconectar + + + Seguro que quieres desconectarte? + + + Profundidad de campo + + + Punto de mira dinmico + + + Msica dinmica + + + EAX + + + Pantalla completa + + + Partida + + + Gamma + + + Detalles de objetos + + + Invertir ratn + + + Botn + + + Configuracin del teclado + + + ltimo guardado + + + Distancia de iluminacin + + + Cargar + + + Cargar partida + + + Salir del perfil + + + Maestro + + + Volumen efectos + + + Sensibilidad del ratn + + + Suavizado de objetos de pruebas alfa + + + Optimizar el suavizado + + + MULTIJUGADOR + + + Multijugador + + + Volumen de la msica + + + Los cambios tendrn efecto despus de reiniciar el juego. + + + Multijugador + + + Nueva partida + + + Principiante + + + Linternas de los PNJ + + + OPCIONES + + + Opciones + + + Distancia de partculas + + + Ajustes de calidad + + + Salir a Windows + + + Salir de la partida + + + Seguro que quieres salir de la partida? + + + Seguro que quieres salir a Windows? + + + Nivel de detalles + + + Paralaje empinado + + + Sombras solares + + + Sombra de la hierba + + + Calidad del sol + + + Usar DX10.1 + + + Suavizado de pantalla completa + + + Superficies hmedas + + + Optimizar buffer geomtrico + + + Humo volumtrico + + + Render 2 + + + Tipo de Render + + + Resolucin + + + Volver a la partida + + + Guardar + + + Guardar partida + + + Mostrar punto de mira + + + Mostrar arma + + + Bsicas + + + Dispositivo de sonido + + + Suavizado de partculas + + + Suavizado del agua + + + Sonido + + + Calidad de sonido + + + Stalker + + + Calidad de las sombras + + + Rayos de sol + + + Antialiasing + + + La IA usa linternas + + + Detalle de las texturas + + + Identificacin de PNJ + + + Veterano + + + Vdeo + + + Distancia de visin + + + Luz volumtrica + + + Sincronizacin vertical + + + Cambiar apodo + + + Este correo ya se est usando + + + A travs de Internet + + + A travs de LAN + + + apualado por la espalda + + + desangrado + + + en una explosin + + + en el ojo + + + en la cabeza + + + La versin del archivo guardado no concuerda con la versin del juego. + + + racha de muertes + + + cuchillo + + + ltimo equipo + + + Entrar en multijugador + + + Nombre + + + Cambio + + + Equipo 1 + + + Equipo 2 + + + Equipo 3 + + + Restablecer + + + Vender todo + + + Versin + + + Pripyat + + + Modo agachado/de pie + + + Autoguardando + + + Texturas detalladas + + + Pelculas + + + Entrar + + + Salir + + + Crear + + + Contrasea o correo incorrecto + + + Perfil incorrecto + + + Error de conexin + + + Servidor no disponible actualmente + + + Se necesita iniciar sesin con un perfil + + + Error de conexin + + + Error de conexin + + + Error de conexin + + + Perfil incorrecto + + + Contrasea incorrecta + + + Apodo incorrecto + + + Este apodo ya est en uso + + + Inicia sesin primero con tu perfil + + + Cierra sesin primero con tu perfil + + + Error al conectarte al servidor de perfiles + + + No podrs borrar el perfil despus de crearlo. + + + Calidad SSAO + + + Modo SSAO + + + predeterminado + + + HDAO + + + HBAO + + + Mostrar interfaz + + + El apodo no est registrado. Regstralo. + + + El apodo ha caducado. Vuelve a registrarlo. + + + stalker + + + mximo + + + Ilum. din. completa mejor. (DX11) + + + Inicia sesin para conectar con el servidor externo. + + + Este perfil de GameSpy se est usando en este momento. Usa otro perfil de GameSpy. + + + Correo incorrecto + + + Contrasea incorrecta + + + No puedes usar un perfil de GameSpy para conectar a un servidor local. Usa el modo de juego LAN. + + + Has sido expulsado por el servidor. + + + El administrador te ha inhabilitado: + + + El servidor te ha inhabilitado. + + + Informacin del servidor + + + El correo es demasiado largo. No puede contener ms de 50 caracteres. + + + Correo incorrecto + + + La contrasea es demasiado corta. + + + La contrasea es demasiado larga. + + + Correo no encontrado + + + Apodo no configurado + + + El apodo es demasiado largo. No puede contener ms de 30 caracteres. + + + El apodo solo puede contener nmeros, letras del alfabeto latino y los siguientes smbolos especiales: "#$&'()*+-./:;<=>?@[]^_`{|}~ + + + El apodo no puede contener espacios. + + + El apodo no puede empezar con un nmero ni cualquiera de los siguientes smbolos: "@", "+", ":" o "#" + + + muy alto + + + Mosaico + + + Aplicar cambios? Todos los cambios sern revertidos en + + diff --git a/gamedata/configs/text/spa/ui_st_mp.xml b/gamedata/configs/text/spa/ui_st_mp.xml new file mode 100644 index 0000000..61af62d --- /dev/null +++ b/gamedata/configs/text/spa/ui_st_mp.xml @@ -0,0 +1,741 @@ + + + + Artefacto + + + Amigable + + + Ping mx. + + + Perfil + + + Modos + + + El artefacto se ha destruido. + + + Ha aparecido el artefacto. Trelo a la base para obtener un punto. + + + El artefacto se ha perdido. + + + El artefacto est en nuestra base. + + + El artefacto est en la base enemiga. + + + Artefactos + + + Artefactos + + + Seleccin auto. + + + Atrs + + + 4. Inhabilitar + + + Por anomala + + + Cancelar + + + ha capturado el artefacto + + + 5. Cambiar mapa + + + 6. Cambiar tiempo + + + Cambiar el tiempo a + + + Chat + + + Conectado + + + Muertes + + + Descripcin + + + Desconectado + + + Escribir texto para la votacin + + + se uni a la partida + + + Parque de bomberos + + + (Vista en primera persona) + + + vidas + + + Vidas + + + (Cmara libre) + + + (Vista en tercera persona) + + + con + + + 7. Modo + + + Vertedero + + + ADELANTE! + + + ha perdido%s el artefacto + + + ha perdido el artefacto + + + tiene%s el artefacto + + + Mercenarios + + + ahora es + + + se ha unido a + + + 3. Soltar + + + Limansk + + + Cargando tus premios... + + + Cargando tus rcords... + + + (Bloqueada libre) + + + Descripcin del mapa + + + La partida ha comenzado! + + + Pueblo antiguo + + + Modos + + + Nombre + + + Siguiente + + + No han votado + + + Ping + + + %s ha ganado la partida! + + + Jugadores + + + Pulsa Disparar para cambiar al modo Espectador + + + Pulsa Saltar para comprar una reaparicin instantnea + + + Pulsa Saltar para seleccionar un aspecto + + + Pulsa Saltar para seleccionar los equipos + + + Pulsa Saltar para aparecer + + + Pulsa Saltar para comenzar + + + Pulsa ($$ACTION_BUY_MENU$$) para acceder al men de compra + + + Tienes %d$. Puedes reaparecer por %d$. Haz clic en S para pagar. + + + Listo... + + + Taller de reparaciones + + + 1. Reiniciar + + + 2. Reinicio rpido + + + ha devuelto el artefacto + + + ha conseguido un punto + + + Seleccionar jugador para exclusin por votacin + + + Seleccionar categora de votacin + + + Seleccionar jugador para expulsin por votacin + + + Seleccionar jugador para expulsin por votacin + + + Seleccionar mapa para votar + + + No puedes correr con el artefacto + + + - Nmero + + + - T. perman. + + + - T. reaparicin + + + Anomalas + + + Periodo de anomalas + + + Cualquier momento + + + Artefacto capturado + + + Artefactos: + + + Equilibrio de equipos automtico + + + Cambio de equipo automtico + + + BattlEye + + + Desactivado + + + Activado + + + - Primera persona + + + Reaparicin forzada + + + Lmite de vidas + + + - Vuelo libre + + + - Vista libre + + + Fuego amigo + + + Indicadores de aliados + + + Nombres de aliados + + + Infinito + + + Invisibilidad: + + + - Indicadores + + + - Tiempo + + + - Tercera persona + + + Rotacin mapa + + + Ping mx. + + + min. + + + No + + + Reaparecer + + + Los jugadores han vuelto a las bases + + + seg. + + + Nombre del servidor: + + + Bases protegidas + + + Modos Espectador: + + + - Solo equipo + + + Lmite de tiempo + + + Versin: + + + Votacin + + + Calentamiento + + + S + + + Seleccin de aspecto + + + Espectador + + + ESPECTADORES + + + Polideportivo + + + Estado + + + ha cambiado a + + + Libertad + + + Seleccin de equipo + + + El equipo %s ha ganado! + + + Texto + + + Tiempo para reaparecer + + + Tiempo para empezar: + + + Tiempo restante: %d:%d; Votos positivos: %.2f + + + Campo de entrenamiento + + + Votar A FAVOR-[$$ACTION_VOTE_YES$$]\nVotar en contra -[$$ACTION_VOTE_NO$$]\nResultados-[$$ACTION_VOTE$$] + + + No + + + S + + + Ha votado + + + No + + + S + + + Votacin cancelada por el servidor! + + + Votacin '%s' iniciada por %s. + + + Ha comenzado la votacin! + + + 1. Despejado + + + 4. Nublado + + + 3. Noche + + + 2. Lluvia + + + Apualado! + + + Disparo a la cabeza! + + + Tienes el artefacto enemigo, llvalo a tu base! + + + Tienes el artefacto. Actvalo para llevarlo a tu base! + + + Ahora tu rango es + + + Eres t + + + Las votaciones no estn disponibles en este servidor. + + + No hay votaciones activas. + + + Solo se permite una votacin activa. + + + Listo + + + A todos + + + Al equipo + + + Error al votar! + + + xito al votar! + + + Base de Libertad + + + Base de mercenarios + + + 2. Caza de artefactos + + + 4. Captura del artefacto + + + 1. Batalla campal + + + Crear un nuevo perfil + + + Obteniendo perfiles de cuenta + + + Hola + + + Conectando con el perfil + + + Perfil creado con xito. Inicia sesin. + + + Verificando el apodo... + + + Quieres usar el perfil ya existente con el nombre + + + Cuenta encontrada. Obteniendo perfiles registrados... + + + Ya tienes un perfil. Inicia sesin con l. + + + Verificando cuenta... + + + Este apodo ya est en uso. Elige uno de la lista desplegable de abajo o escribe uno nuevo. + + + Las contraseas no coinciden! + + + 3. Juego en equipo + + + Copiar vnculo + + + Cargar mapa + + + Descripcin + + + Mapa incorrecto o daado + + + Mapa no encontrado + + + Premios + + + Rcords + + + Comprobar + + + Confirmar contrasea + + + Correo + + + Sin contrasea? + + + Pgina de creacin de perfil en GameSpy + + + Contrasea + + + Recordar + + + Apodo + + + Has conseguido cambiar el apodo a + + + Equipo + + + Libertad + + + Mercenarios + + + Nuevo perfil + + + Autorizacin del perfil de GameSpy + + + jugar + + + retroceder + + + reiniciar + + + al comienzo + + + al asesinato + + + a la muerte + + + a la captura del artefacto + + + a la prdida del artefacto + + + a la entrega del artefacto + + + cualquiera + + + Iniciar sesin + + + Capturar pantalla + + + Config. para todos + + + Lmite de ping: + + + Lmite de ping + + + Jugador sel. en pantalla + + + Config. jugador selec. + + + Expulsar jugador selec. + + + Inhab. jugador selec. + + + Reiniciar + + + Reinicio rpido + + + Cambiar tiempo + + + Veloc. cambio tiempo + + + Cambiar tipo de partida + + + Cambiar conf. partida + + + Detener la votacin actual + + + Lmite de tiempo (0, 180) + + + Lmite de vidas (0, 1.000) + + + Lmite artefactos (0, 100) + + + Tiempo calent. (0, 3.600) + + + T. prot. reg. (0, 60 CTA) + + + T. prot. reg. (0, 600 T/DM) + + + Tiempo reg. (-1, 3.600) + + + Error de perfil desconocido (cdigo: 4) + + + 10 minutos + + + 30 minutos + + + 1 hora + + + 6 horas + + + 1 da + + + 1 semana + + + 1 mes + + + 3 meses + + + Permanentemente + + + El apodo es demasiado corto. + + + Error de perfil + + diff --git a/gamedata/configs/text/spa/ui_st_other.xml b/gamedata/configs/text/spa/ui_st_other.xml new file mode 100644 index 0000000..e3119a6 --- /dev/null +++ b/gamedata/configs/text/spa/ui_st_other.xml @@ -0,0 +1,501 @@ + + + + Cancelar + + + No + + + Aceptar + + + S + + + Malo + + + Enemigo + + + Excelente + + + Experimentado + + + Amigo + + + Mapa de la Zona + + + Bien + + + Indiferente + + + Maestro + + + Bonificacin de PDA + + + Solo se permite una votacin activa. + + + Neutral + + + Principiante + + + Partida + + + Usado + + + Nivel + + + Cargando objetos IA + + + Servidor: cargando simulador activo + + + Cargando CFORM + + + Cargando detalles + + + Cargando geometra + + + Cargando partida guardada + + + Cargando sectores y portales + + + Cargando shaders + + + Cargando base de datos espacial + + + Cargando texturas + + + IP directa + + + Tarea inactiva + + + No tienes suficiente dinero + + + El PNJ no tiene dinero suficiente + + + Abriendo secuencia + + + Buscando objetos con antelacin + + + escombros. + + + SERVIDOR: conectando + + + SERVIDOR: iniciando + + + Validando clave del CD + + + Vdeo + + + Terrible + + + Arreglar + + + No es posible ejecutar Render 2 en el PC + + + Faccin + + + Error de conexin: clave del CD desactivada. Contactar con el servicio de atencin al cliente. + + + Error de conexin: clave del CD en uso + + + Error de conexin: clave del CD no vlida + + + Error de conexin: host no vlido + + + Error de conexin: contrasea no vlida + + + Nuevo parche disponible.\n Versin: %s\n Localizacin: %s\nDescargar ahora? + + + No hay nuevos parches disponibles + + + Error de conexin: conexin rechazada por el servidor + + + Error de conexin: servidor lleno + + + Error de conexin: versin diferente + + + Conectando con servidor principal + + + Das + + + Error + + + Error de carga + + + Ya existe un archivo con este nombre. Quieres sobrescribirlo? + + + El archivo no tiene nombre + + + Horas + + + Desconectado por el sistema de proteccin de BattleEye: + + + Desconectado. Razn: + + + Salir + + + Si cargas esta partida, se perdern los datos no guardados. Continuar? + + + min. + + + meses + + + Mochila + + + Parmetros + + + No es posible descargar el parche + + + El parche se ha descargado correctamente. Quieres instalarlo? + + + Precio + + + Rango + + + Actitud + + + Reputacin + + + seg. + + + Selecciona al menos un mapa + + + Coger todo + + + Restante + + + Error al votar + + + Seguro que quieres salir del juego? + + + Total + + + muy mala + + + muy buena + + + Veterano + + + Arreglar + + + Reparar el objeto seleccionado + + + ... + + + movindose en una zona + + + movindose de Zaton a Yanov + + + movindose de Zaton a Pripyat + + + movindose de Yanov a Zaton + + + movindose de Yanov a Pripyat + + + movindose de Pripyat a Zaton + + + movindose de Pripyat a Yanov + + + movindose de Pripyat a X8 + + + movindose de X8 a Pripyat + + + emisin + + + comienzo de la partida + + + llegada a Skadovsk + + + Pez Raya 1 registrado + + + Pez Raya 2 registrado + + + Pez Raya 3 registrado + + + Pez Raya 4 registrado + + + Pez Raya 5 registrado + + + llegando a la meseta + + + llegada a Yanov + + + camino a Pripyat encontrado + + + Zulu se une al escuadrn + + + Deuda de Vano saldada + + + Vano se une al escuadrn + + + planta extraa recogida + + + Sokolov se une al escuadrn + + + Strider se une al escuadrn + + + pelotn reunido + + + llegada al paso subterrneo + + + llegada a Pripyat + + + fuerzas militares localizadas + + + arma no identificada capturada + + + pelotn de reconocimiento encontrado + + + refuerzos recibidos + + + "antena" registrada + + + centinela desaparecido encontrado + + + controlador cercano al centinela asesinado + + + taller de pruebas alcanzado + + + documentacin de fusil Gauss encontrada + + + cadver de soldado encontrado + + + entrada al jardn de infancia + + + mdico militar rescatado + + + comunicaciones con el cuartel general establecidas + + + evacuacin de Pripyat iniciada + + + helicpteros de evacuacin alcanzados + + + evacuacin completada + + + detector de mutantes + + + rescate pagado + + + rehn liberado + + + medidas de la anomala del Cenizal + + + medidas de la anomala Plavni + + + guarida de chupasangres + + + enviado a Kopachy + + + acercamiento a la planta de tratamiento de basura + + + stalker alcanzado + + + contenedor encontrado en el escondite + + + caza de la quimera + + + Oasis encontrado + + + Operacin Un disparo iniciada + + + bsqueda del origen de las emisiones psquicas + + + documentos administrativos + + + acercamiento al taller de la subestacin + + + trato junto al puesto de guardabosques + + + almacn de Deber + + + origen del extrao brillo encontrado + + + Zulu encontrado + + + cueva peligrosa + + + Reparaciones/modificaciones + + + Comprar + + + Vender + + + Intercambiar + + + Cerrar ventana ($$ACTION_USE$$) + + + Abrir ventana de intercambio ($$ACTION_SPRINT_TOGGLE$$) + + + Abrir ventana de reparaciones y modificaciones ($$ACTION_SPRINT_TOGGLE$$) + + + Mover todos los objetos a tu mochila ($$ACTION_SPRINT_TOGGLE$$) + + + Comprar los objetos seleccionados + + + Vender los objetos seleccionados + + + despegue del helicptero de evacuacin + + diff --git a/gamedata/configs/text/spa/ui_st_pda.xml b/gamedata/configs/text/spa/ui_st_pda.xml new file mode 100644 index 0000000..aa1f07b --- /dev/null +++ b/gamedata/configs/text/spa/ui_st_pda.xml @@ -0,0 +1,279 @@ + + + + Tiempo + + + Stalker libre + + + Militar + + + Bandido + + + Deber + + + Cientfico + + + Misiones secundarias + + + Escondites + + + Libertad + + + Mercenarios + + + Registro de misiones + + + Monolith + + + Mutante + + + Abril + + + Agosto + + + Diciembre + + + Febrero + + + Enero + + + Julio + + + Junio + + + March + + + Mayo + + + Noviembre + + + Octubre + + + Septiembre + + + Desactivar PDA + + + Registro de mensajes + + + Mostrar historial de mensajes + + + Mapa del rea + + + Mostrar mapa de la Zona y registro de misiones + + + Estadsticas + + + Ver estadsticas personales + + + Hora actual: + + + Filtro de fecha + + + Mostrar noticias + + + Mostrar dilogos + + + Leyenda + + + Tiempo en la Zona: + + + Emisiones superadas: + + + Misiones completadas: + + + Mutantes muertos: + + + Stalkers muertos: + + + Artefactos encontrados: + + + Escondites encontrados: + + + Arma favorita + + + Mutante ms fuerte asesinado + + + Posicin: + + + Objetivo + + + Misin secundaria + + + Enemigos + + + Amigos + + + Lder de la faccin + + + Misin principal + + + Neutrales + + + Gua + + + Escondites + + + Comandante de pelotn + + + Comerciante + + + Stalker + + + Registro de mensajes + + + Centrado en el jugador + + + Moverse hacia abajo + + + Moverse hacia la izquierda + + + Mostrar leyenda + + + Moverse hacia la derecha + + + Moverse hacia arriba + + + Alejar imagen al mximo + + + Zoom + + + Alejar la imagen + + + Logros + + + Centrar mapa en la misin + + + Centrar mapa en la misin + + + Zombi + + + escala + + + + escala - + + + Tcnico + + + Mdico + + + Misiones actuales + + + Mostrar/ocultar misiones + + + Caja personal + + + Zaton + + + rea en torno a Jpiter + + + Pripyat + + + Paso subterrneo Pripyat 1 + + + Laboratorio X8 + + + Zonas + + + Objetos importantes + + + Zona + + + Los escneres han detectado artefactos: + + + Los escneres no han detectado ningn artefacto + + + Escondite + + + Zona de descanso + + diff --git a/gamedata/configs/text/spa/ui_st_screen.xml b/gamedata/configs/text/spa/ui_st_screen.xml new file mode 100644 index 0000000..cf34f31 --- /dev/null +++ b/gamedata/configs/text/spa/ui_st_screen.xml @@ -0,0 +1,348 @@ + + + + Abrir caja personal ($$ACTION_USE$$) + + + Ests agotado; no puedes moverte + + + Vas demasiado cargado; no puedes moverte + + + Abrir puerta ($$ACTION_USE$$) + + + Hablar ($$ACTION_USE$$) + + + Registrar cuerpo ($$ACTION_USE$$) + + + Registrar cuerpo ($$ACTION_USE$$)\nArrastrar cuerpo (MAYS+$$ACTION_USE$$) + + + Misin completada: + + + Misin fallida: + + + Objeto recibido: + + + Dinero recibido: + + + Nueva misin: + + + Objeto perdido: + + + Dinero perdido: + + + Misin cancelada: + + + Misin actualizada: + + + El arma se ha atascado. Recrgala. + + + Registrar caja ($$ACTION_USE$$) + + + Coger objeto ($$ACTION_USE$$) + + + Registrar avin ($$ACTION_USE$$) + + + Puerta atascada + + + La puerta est cerrada por dentro + + + Caja cerrada + + + Se necesita cdigo + + + Introducir cdigo ($$ACTION_USE$$) + + + Coger planta ($$ACTION_USE$$) + + + Configurar escner ($$ACTION_USE$$) + + + Coger escner ($$ACTION_USE$$) + + + Supresor de agresin de arco iris\nmodelo de complejo de emisiones externas\nescala 1:20 + + + Activar interruptor ($$ACTION_USE$$) + + + Examinar dispositivo ($$ACTION_USE$$) + + + Colocar explosivos ($$ACTION_USE$$) + + + Recuperar ($$ACTION_USE$$) + + + El ascensor no tiene corriente. + + + Activar generador ($$ACTION_USE$$) + + + Dormir + + + No puedes dormir! Te ests desangrando gravemente y te has expuesto a las radiaciones. Necesitas medicinas o un mdico. + + + No puedes dormir! Te ests desangrando gravemente. Necesitas medicinas o un mdico. + + + No puedes dormir! Te has expuesto a las radiaciones. Necesitas medicinas o un mdico. + + + Dormir ($$ACTION_USE$$) + + + Has conseguido el logro Un tipo ecunime. + + + Has conseguido el logro Dominio de las armas. + + + Has conseguido el logro Detective. + + + Has conseguido el logro Diplomtico. + + + Has conseguido el logro Amigo de Deber. + + + Has conseguido el logro Amigo de Libertad. + + + Has conseguido el logro Amigo de los stalkers. + + + Has conseguido el logro Mensajero de la justicia. + + + Has conseguido el logro Experto en tecnologa. + + + Has conseguido el logro Traficante de informacin. + + + Has conseguido el logro Guardin de secretos. + + + Has conseguido el logro Mandams. + + + Has conseguido el logro Lder. + + + Has conseguido el logro Cazador de mutantes. + + + Has conseguido el logro Uno de los nuestros. + + + Has conseguido el logro Precursor. + + + Has conseguido el logro Ayudante de investigacin. + + + Has conseguido el logro Cazador de artefactos. + + + Has conseguido el logro Stalker experimentado. + + + Has conseguido el logro Cliente adinerado. + + + Autoguardando... + + + Ya puedes soltar el arma. + + + Cdigo de bloqueo ($$ACTION_USE$$) + + + Se han aadido medicinas en la caja personal del Skadovsk por resolver el misterio de los stalkers desaparecidos. + + + Se ha aadido un traje blindado universal PS5-M en la caja personal de Yanov por ayudar a Deber. + + + Se ha aadido un traje blindado PSZ-9d de Deber en la caja personal de Yanov por ayudar a Deber. + + + Se ha aadido un traje Viento de Libertad en la caja personal de Yanov por ayudar a Libertad. + + + Se ha aadido un traje de guardia de Libertad en la caja personal de Yanov por ayudar a Libertad. + + + No lograste llegar a los helicpteros y el equipo de evacuacin se ha ido de la Zona sin ti. + + + Listo para irte de la Zona? No hay vuelta atrs. + + + Partida terminada. + + + Pulsa ($$ACTION_JUMP$$) para volver al men principal. + + + Pausa + + + Partida guardada + + + Se ha aadido un artefacto a la caja personal del Skadovsk por ayudar a desenmascarar a Urraca. + + + Tienes que esperar a que el muelle se vuelva estanco. + + + Acceso garantizado + + + Subir en el ascensor ($$ACTION_USE$$) + + + Bajar en el ascensor ($$ACTION_USE$$) + + + Nivel crtico de emisin psquica. Sal del rea de peligro inmediatamente. + + + Niveles de radiacin peligrosos. Necesitas proteccin para seguir. + + + Examinar helicptero ($$ACTION_USE$$) + + + Registrar escondite ($$ACTION_USE$$) + + + h + + + Mensaje + + + Puerta bloqueada + + + Cerrar puerta ($$ACTION_USE$$) + + + Puerta cerrada: campamento en alerta + + + Puerta cerrada: guarda el arma + + + Puerta cerrada + + + La puerta no tiene corriente + + + Abrir puerta ($$ACTION_USE$$) + + + Puerta bloqueada + + + Usar tarjeta de acceso ($$ACTION_USE$$) + + + Se necesita tarjeta de acceso + + + La puerta no puede abrirse por este lado + + + - + + + El contenedor est cerrado. Necesitas dos llaves para abrirlo. + + + Usar llave ($$ACTION_USE$$) + + + Usar llaves ($$ACTION_USE$$) + + + El contenedor est cerrado. Necesitas la segunda llave para abrirlo. + + + Abrir contenedor ($$ACTION_USE$$) + + + El mecanismo de la puerta est bloqueado desde dentro. + + + Conectar tanque de gas ($$ACTION_USE$$) + + + Aviso! Riesgo qumico! + + + Girar vlvula ($$ACTION_USE$$) + + + Registrar coche ($$ACTION_USE$$) + + + Visita a los tenientes Rogovets y Kirillov para que te den provisiones y municin. + + + Una emisin se acaba de producir en la Zona. + + + Has conseguido el logro Marcado por la Zona. + + + Se ha aadido municin a la caja personal de Yanov por eliminar a los mutantes peligrosos. + + + Recibidas coordenadas del escondite que ya ha sido descubierto. + + + Escondite encontrado + + + Recibidas coordenadas del escondite + + + Pulsa cualquier tecla para jugar + + diff --git a/gamedata/configs/ui/actor_menu.xml b/gamedata/configs/ui/actor_menu.xml new file mode 100644 index 0000000..1a5530b --- /dev/null +++ b/gamedata/configs/ui/actor_menu.xml @@ -0,0 +1,504 @@ + + + ui_inGame2_demo_player_info_window + + + + + + +
+ + ui_inGame2_inventory_back + +
+ + + ui_inGame2_left_side + + + + + + + + + + ui_st_community + + + + + + ui_st_rank + + + + + + ui_st_reputation + + + + + + + + + + + + + + + + + + ui_st_community + + + + + + ui_st_rank + + + + + + ui_st_reputation + + + + + + ui_st_relation + + + + + + + + + + + + + + + + + + + + + + + + ui_inGame2_weapon_highlighter + + + + + ui_inGame2_inventory_status_bar + + + + + + + + + ui_inGame2_weapon_highlighter + + + + + ui_inGame2_inventory_status_bar + + + + + + + + + + + + + + + + + ui_inGame2_inventory_status_bar + + + + + + + ui_inGame2_armor_highlighter + + + + + + + + ui_inGame2_detector_highlighter + + + + + + + + + ui_inGame2_helmet_highlighter + + + + ui_inGame2_inventory_status_bar + + + + + + + + + + + + ui_inGame2_quick_item_highlighter + + + ui_inGame2_artefakt_highlighter + + + + quick_use_str_1 + + + quick_use_str_2 + + + quick_use_str_3 + + + quick_use_str_4 + + + + ui_total_weight + + + + + + + + + + ui_total_weight + + + + + + + + ui_inGame2_center_trade_devider + + + + + + + + + + + ui_inGame2_center_trade_devider + + + + + + + + + + + ui_inGame2_artefact_blocker + + + + ui_inGame2_helmet_blocker + + + + + + + + + + + + + + + + + + + + + + + trade_buy_button + ui_inGame2_inventory_button + ui_st_buy + + + + + + + + + + trade_sell_button + ui_inGame2_inventory_button + ui_st_sell + + + + + + + + + + takeall_button + ui_inGame2_big_inventory_button + ui_st_take_all + + + + + + + + + + putall_button + ui_inGame2_big_inventory_button + ui_st_put_all + + + + + + + + + + exit_button + ui_inGame2_big_inventory_button + ui_inv_exit + + + + + + + + + + interface\inv_open + interface\inv_close + interface\inv_slot + interface\inv_belt + interface\inv_ruck + interface\inv_properties + interface\inv_drop + interface\inv_attach_addon + interface\inv_detach_addon + interface\inv_slot + + + + + ui_inGame2_hint_wnd_main_window + + + + + + + + + + ui_inGame2_hint_wnd_main_window + + + + + + + + st_ui_health_sensor + + + ui_inGame2_inventory_health_bar + + + + + + st_ui_bleeding_sensor + + ui_inGame2_bleeding_inv_green + + + ui_inGame2_bleeding_inv_yellow + + + ui_inGame2_bleeding_inv_red + + + + + st_ui_main_sensor + + ui_inGame2_radiation_inv_green + + + ui_inGame2_radiation_inv_yellow + + + ui_inGame2_radiation_inv_red + + + + + ui_inv_outfit_radiation_protection + + + ui_inGame2_inventory_progress_bar + + + + + + ui_inv_outfit_chemical_burn_protection + + + ui_inGame2_inventory_progress_bar + + + + + + ui_inv_outfit_shock_protection + + + ui_inGame2_inventory_progress_bar + + + + + + ui_inv_outfit_burn_protection + + + ui_inGame2_inventory_progress_bar + + + + + + ui_inv_outfit_telepatic_protection + + + ui_inGame2_inventory_progress_bar + + + + + + ui_inv_outfit_wound_protection + + + ui_inGame2_inventory_progress_bar + + + + + + ui_inv_outfit_fire_wound_protection + + 99 + + + + ui_inGame2_inventory_progress_bar + + + + + + ui_inv_outfit_power_restore + + + ui_inGame2_inventory_progress_bar + + + + +
diff --git a/gamedata/configs/ui/actor_menu_16.xml b/gamedata/configs/ui/actor_menu_16.xml new file mode 100644 index 0000000..43d4e60 --- /dev/null +++ b/gamedata/configs/ui/actor_menu_16.xml @@ -0,0 +1,510 @@ + + + ui_inGame2_demo_player_info_window + + + + + + +
+ + ui_inGame2_inventory_back + + + ui_inGame2_widescreen_sidepanels_right + +
+ + + ui_inGame2_left_side + + ui_inGame2_widescreen_sidepanels_left + + + + + + + + + + + ui_st_community + + + + + + ui_st_rank + + + + + + ui_st_reputation + + + + + + + + + + + + + + + + + + ui_st_community + + + + + + ui_st_rank + + + + + + ui_st_reputation + + + + + + ui_st_relation + + + + + + + + + + + + + + + + + + + + + + + + ui_inGame2_weapon_highlighter + + + + + ui_inGame2_inventory_status_bar + + + + + + + + + ui_inGame2_weapon_highlighter + + + + + ui_inGame2_inventory_status_bar + + + + + + + + + + + + + + + + + ui_inGame2_inventory_status_bar + + + + + + + ui_inGame2_armor_highlighter + + + + + + + + ui_inGame2_detector_highlighter + + + + + + + + + ui_inGame2_helmet_highlighter + + + + ui_inGame2_inventory_status_bar + + + + + + + + + + + + + ui_inGame2_quick_item_highlighter + + + ui_inGame2_artefakt_highlighter + + + + quick_use_str_1 + + + quick_use_str_2 + + + quick_use_str_3 + + + quick_use_str_4 + + + + ui_total_weight + + + + + + + + + + ui_total_weight + + + + + + + + ui_inGame2_center_trade_devider + + + + + + + + + + + ui_inGame2_center_trade_devider + + + + + + + + + + + ui_inGame2_artefact_blocker + + + + ui_inGame2_helmet_blocker + + + + + + + + + + + + + + + + + + + + + + trade_buy_button + ui_inGame2_inventory_button + ui_st_buy + + + + + + + + + + trade_sell_button + ui_inGame2_inventory_button + ui_st_sell + + + + + + + + + + takeall_button + ui_inGame2_big_inventory_button + ui_st_take_all + + + + + + + + + + putall_button + ui_inGame2_big_inventory_button + ui_st_put_all + + + + + + + + + + exit_button + ui_inGame2_big_inventory_button + ui_inv_exit + + + + + + + + + + interface\inv_open + interface\inv_close + interface\inv_slot + interface\inv_belt + interface\inv_ruck + interface\inv_properties + interface\inv_drop + interface\inv_attach_addon + interface\inv_detach_addon + interface\inv_slot + + + + + ui_inGame2_hint_wnd_main_window + + + + + + + + + + ui_inGame2_hint_wnd_main_window + + + + + + + + st_ui_health_sensor + + + ui_inGame2_inventory_health_bar + + + + + + st_ui_bleeding_sensor + + ui_inGame2_bleeding_inv_green + + + ui_inGame2_bleeding_inv_yellow + + + ui_inGame2_bleeding_inv_red + + + + + st_ui_main_sensor + + ui_inGame2_radiation_inv_green + + + ui_inGame2_radiation_inv_yellow + + + ui_inGame2_radiation_inv_red + + + + + ui_inv_outfit_radiation_protection + + + ui_inGame2_inventory_progress_bar + + + + + + ui_inv_outfit_chemical_burn_protection + + + ui_inGame2_inventory_progress_bar + + + + + + ui_inv_outfit_shock_protection + + + ui_inGame2_inventory_progress_bar + + + + + + ui_inv_outfit_burn_protection + + + ui_inGame2_inventory_progress_bar + + + + + + ui_inv_outfit_telepatic_protection + + + ui_inGame2_inventory_progress_bar + + + + + + ui_inv_outfit_wound_protection + + + ui_inGame2_inventory_progress_bar + + + + + + ui_inv_outfit_fire_wound_protection + + 99 + + + + ui_inGame2_inventory_progress_bar + + + + + + ui_inv_outfit_power_restore + + + ui_inGame2_inventory_progress_bar + + + + +
diff --git a/gamedata/configs/ui/actor_menu_item.xml b/gamedata/configs/ui/actor_menu_item.xml new file mode 100644 index 0000000..0807f84 --- /dev/null +++ b/gamedata/configs/ui/actor_menu_item.xml @@ -0,0 +1,399 @@ + + + + ui_inGame2_hint_wnd_main_window + + + + + + + + + + + + + + + + + + + + + + + ui_inGame2_hint_wnd_Information + + + + + ui_inGame2_hint_wnd_Properties + + + ui_wp_prop_tochnost + + + ui_wp_prop_ergonomics + + + ui_wp_prop_damage + + + ui_wp_prop_skorostrelnost + + + ui_wp_propery_07 + + + + ui_inv_accuracy + + + ui_inv_handling + + + ui_inv_damage + + + ui_inv_rate_of_fire + + + + + ui_inGame2_hint_wnd_bar_alfa_line + + + ui_inGame2_hint_wnd_bar + + + + + + + ui_inGame2_hint_wnd_bar_alfa_line + + + ui_inGame2_hint_wnd_bar + + + + + + + ui_inGame2_hint_wnd_bar_alfa_line + + + ui_inGame2_hint_wnd_bar + + + + + + + ui_inGame2_hint_wnd_bar_alfa_line + + + ui_inGame2_hint_wnd_bar + + + + + + + ui_ammo_count + + + + + + + ui_ammo_types + + + + + + + + + + + ui_inGame2_hint_wnd_Properties + + + ui_wp_prop_damage + + + ui_wp_prop_ergonomics + + + ui_wp_prop_distantion + + + ui_inv_damage + + + ui_inv_handling + + + ui_inv_dist + + + + + ui_inGame2_hint_wnd_bar_alfa_line_16 + + + ui_inGame2_hint_wnd_bar_16 + + + + + + + ui_inGame2_hint_wnd_bar_alfa_line_16 + + + ui_inGame2_hint_wnd_bar_16 + + + + + + + + + + + + + + + + + + +#include "ui\af_params.xml" +#include "ui\booster_params.xml" + + + + + + ui_inGame2_hint_wnd_main_window + + + + + + + + + + + + + + + + + + + + + ui_inGame2_hint_wnd_upgrades + + + + + + + + + + ui_item_count_back + + + + + ui_icons_newPDA_perssign_h + + + + ui_upgrade_arrow2 + + + + ui\ui_ix-ray_team_logo + + + + + + + + + ui_inGame2_inventory_item_status_bar + + + ui_inGame2_inventory_item_status_bar + + + + + + + + + + ui_inGame2_hint_wnd_Properties + + + + ui_am_prop_thermo + + + + ui_inGame2_hint_wnd_bar_alfa_line + + + ui_inGame2_hint_wnd_bar + + + + + + + + + + + ui_am_prop_electro + + + + ui_inGame2_hint_wnd_bar_alfa_line + + + ui_inGame2_hint_wnd_bar + + + + + + + + + + + ui_am_prop_chem + + + + ui_inGame2_hint_wnd_bar_alfa_line + + + ui_inGame2_hint_wnd_bar + + + + + + + + + + + ui_am_propery_09 + + + + ui_inGame2_hint_wnd_bar_alfa_line + + + ui_inGame2_hint_wnd_bar + + + + + + + + + + + ui_am_propery_11 + + + + ui_inGame2_hint_wnd_bar_alfa_line + + + ui_inGame2_hint_wnd_bar + + + + + + + + + + + ui_am_prop_damage + + + + ui_inGame2_hint_wnd_bar_alfa_line + + + ui_inGame2_hint_wnd_bar + + + + + + + + + + + ui_am_propery_01 + + + + ui_inGame2_hint_wnd_bar_alfa_line + + + ui_inGame2_hint_wnd_bar + + + + + + + + + + + + diff --git a/gamedata/configs/ui/actor_menu_item_16.xml b/gamedata/configs/ui/actor_menu_item_16.xml new file mode 100644 index 0000000..a594322 --- /dev/null +++ b/gamedata/configs/ui/actor_menu_item_16.xml @@ -0,0 +1,385 @@ + + + + ui_inGame2_hint_wnd_main_window + + + + + + + + + + + + + + + + + + + + + + + ui_inGame2_hint_wnd_Information + + + + ui\ui_magnifier + + + + + ui_inGame2_hint_wnd_Properties + + + ui_wp_prop_tochnost + + + ui_wp_prop_ergonomics + + + ui_wp_prop_damage + + + ui_wp_prop_skorostrelnost + + + ui_wp_propery_07 + + + ui_inv_accuracy + + + ui_inv_handling + + + ui_inv_damage + + + ui_inv_rate_of_fire + + + + + ui_inGame2_hint_wnd_bar_alfa_line_16 + + + ui_inGame2_hint_wnd_bar_16 + + + + + + + ui_inGame2_hint_wnd_bar_alfa_line_16 + + + ui_inGame2_hint_wnd_bar_16 + + + + + + + ui_inGame2_hint_wnd_bar_alfa_line_16 + + + ui_inGame2_hint_wnd_bar_16 + + + + + + + ui_inGame2_hint_wnd_bar_alfa_line_16 + + + ui_inGame2_hint_wnd_bar_16 + + + + + + + ui_ammo_count + + + + + + + ui_ammo_types + + + + + + + + + + + ui_inGame2_hint_wnd_Properties + + + ui_wp_prop_damage + + + ui_wp_prop_ergonomics + + + ui_wp_prop_distantion + + + ui_inv_damage + + + ui_inv_handling + + + ui_inv_dist + + + + + ui_inGame2_hint_wnd_bar_alfa_line_16 + + + ui_inGame2_hint_wnd_bar_16 + + + + + + + ui_inGame2_hint_wnd_bar_alfa_line_16 + + + ui_inGame2_hint_wnd_bar_16 + + + + + + + + + + + + + + + + + + +#include "ui\af_params_16.xml" +#include "ui\booster_params_16.xml" + + + + + + ui_inGame2_hint_wnd_main_window + + + + + + + + + + + + + + + + + + + + + ui_inGame2_hint_wnd_upgrades + + + + + + + + + + ui_item_count_back + + + + + ui_icons_newPDA_perssign_h + + + + ui_upgrade_arrow2 + + + + ui\ui_ix-ray_team_logo + + + + + + + + + ui_inGame2_inventory_item_status_bar_16 + + + ui_inGame2_inventory_item_status_bar_16 + + + + + + + + + + ui_inGame2_hint_wnd_Properties + + + + ui_am_prop_thermo + + + + ui_inGame2_hint_wnd_bar_alfa_line_16 + + + ui_inGame2_hint_wnd_bar_16 + + + + + + + + + + + ui_am_prop_electro + + + + ui_inGame2_hint_wnd_bar_alfa_line_16 + + + ui_inGame2_hint_wnd_bar_16 + + + + + + + + + + + ui_am_prop_chem + + + + ui_inGame2_hint_wnd_bar_alfa_line_16 + + + ui_inGame2_hint_wnd_bar_16 + + + + + + + + + + + ui_am_propery_09 + + + + ui_inGame2_hint_wnd_bar_alfa_line_16 + + + ui_inGame2_hint_wnd_bar_16 + + + + + + + + + + + ui_am_propery_11 + + + + ui_inGame2_hint_wnd_bar_alfa_line_16 + + + ui_inGame2_hint_wnd_bar_16 + + + + + + + + + + + ui_am_prop_damage + + + + ui_inGame2_hint_wnd_bar_alfa_line_16 + + + ui_inGame2_hint_wnd_bar_16 + + + + + + + + + + + ui_am_propery_01 + + + + ui_inGame2_hint_wnd_bar_alfa_line_16 + + + ui_inGame2_hint_wnd_bar_16 + + + + + + + + + + + + diff --git a/gamedata/configs/ui/af_params.xml b/gamedata/configs/ui/af_params.xml new file mode 100644 index 0000000..4c8f922 --- /dev/null +++ b/gamedata/configs/ui/af_params.xml @@ -0,0 +1,136 @@ + + + ui_inGame2_hint_wnd_Properties + + + + ui_am_condition + + + + + + + + + ui_am_propery_05 + + + + + + + + + + ui_am_propery_09 + + + ui_am_prop_radio_restore + + + + + + + + ui_am_prop_satiety_restore_speed + + + + + + + + + + ui_am_propery_07 + + + + + + + + + + ui_am_prop_restore_bleeding + + + + + + + + + + + ui_am_prop_thermo + + + + + + + + + + ui_am_prop_electro + + + + + + + + + + ui_am_propery_09 + + + + + + + + + + ui_am_propery_11 + + + + + + + + + + ui_am_prop_chem + + + + + + + + + + ui_am_prop_artefact + + + + + + + + + + ui_am_propery_08 + + + + + + + + diff --git a/gamedata/configs/ui/af_params_16.xml b/gamedata/configs/ui/af_params_16.xml new file mode 100644 index 0000000..960e8c3 --- /dev/null +++ b/gamedata/configs/ui/af_params_16.xml @@ -0,0 +1,136 @@ + + + ui_inGame2_hint_wnd_Properties + + + + ui_am_condition + + + + + + + + + ui_am_propery_05 + + + + + + + + + + ui_am_propery_09 + + + ui_am_prop_radio_restore + + + + + + + + ui_am_prop_satiety_restore_speed + + + + + + + + + + ui_am_propery_07 + + + + + + + + + + ui_am_prop_restore_bleeding + + + + + + + + + + + ui_am_prop_thermo + + + + + + + + + + ui_am_prop_electro + + + + + + + + + + ui_am_propery_09 + + + + + + + + + + ui_am_propery_11 + + + + + + + + + + ui_am_prop_chem + + + + + + + + + + ui_am_prop_artefact + + + + + + + + + + ui_am_propery_08 + + + + + + + + diff --git a/gamedata/configs/ui/backend/arrowstepper.xml b/gamedata/configs/ui/backend/arrowstepper.xml new file mode 100644 index 0000000..e9979d3 --- /dev/null +++ b/gamedata/configs/ui/backend/arrowstepper.xml @@ -0,0 +1,7 @@ + + + ui_date_bt_left + ui_date_bt_right + ui_inGame2_opt_slider_bar + 30 + diff --git a/gamedata/configs/ui/backend/combobox.xml b/gamedata/configs/ui/backend/combobox.xml new file mode 100644 index 0000000..d2f9474 --- /dev/null +++ b/gamedata/configs/ui/backend/combobox.xml @@ -0,0 +1,9 @@ + + + ui_inGame2_combobox_linetext + ui_inGame2_combobox_linetext + ui_inGame2_combobox_line + ui_inGame2_combobox + ui_inGame2_combobox_arrow + 20 + diff --git a/gamedata/configs/ui/backend/cursor.xml b/gamedata/configs/ui/backend/cursor.xml new file mode 100644 index 0000000..89714e9 --- /dev/null +++ b/gamedata/configs/ui/backend/cursor.xml @@ -0,0 +1,6 @@ + + + + ui\ui_ani_cursor + + diff --git a/gamedata/configs/ui/backend/custom_spin.xml b/gamedata/configs/ui/backend/custom_spin.xml new file mode 100644 index 0000000..60aa648 --- /dev/null +++ b/gamedata/configs/ui/backend/custom_spin.xml @@ -0,0 +1,10 @@ + + + ui_inGame2_spin_box + ui_inGame2_spin_box_button_top + ui_inGame2_spin_box_button_bottom + 20 + 11 + 8 + 2 + \ No newline at end of file diff --git a/gamedata/configs/ui/backend/custom_spin_horz.xml b/gamedata/configs/ui/backend/custom_spin_horz.xml new file mode 100644 index 0000000..a6e0182 --- /dev/null +++ b/gamedata/configs/ui/backend/custom_spin_horz.xml @@ -0,0 +1,10 @@ + + + ui_inGame2_edit_box + ui_inGame2_spin_box_button_horz_top + ui_inGame2_spin_box_button_horz_bottom + 20 + 12 + 19 + 1 + \ No newline at end of file diff --git a/gamedata/configs/ui/backend/hud_target.xml b/gamedata/configs/ui/backend/hud_target.xml new file mode 100644 index 0000000..0606038 --- /dev/null +++ b/gamedata/configs/ui/backend/hud_target.xml @@ -0,0 +1,10 @@ + + + hud\cursor + ui\cursor + + + + + + \ No newline at end of file diff --git a/gamedata/configs/ui/backend/trackbar.xml b/gamedata/configs/ui/backend/trackbar.xml new file mode 100644 index 0000000..0b007d1 --- /dev/null +++ b/gamedata/configs/ui/backend/trackbar.xml @@ -0,0 +1,7 @@ + + + ui_inGame2_opt_slider_box + ui_inGame2_opt_slider_bar + 1 + 1 + diff --git a/gamedata/configs/ui/booster_params.xml b/gamedata/configs/ui/booster_params.xml new file mode 100644 index 0000000..b70f54b --- /dev/null +++ b/gamedata/configs/ui/booster_params.xml @@ -0,0 +1,166 @@ + + + ui_inGame2_hint_wnd_Properties + + + + + ui_am_propery_05 + + + + + + + + + + ui_am_propery_09 + + + + + + + + + + + ui_am_prop_satiety_restore_speed + + + + + + + + + + ui_am_prop_Vibros + + + + + + + + + + ui_am_propery_07 + + + + + + + + + + ui_am_prop_restore_bleeding + + + + + + + + + + ui_am_propery_09 + + + + + + + + + + ui_am_propery_11 + + + + + + + + + + ui_am_prop_chem + + + + + + + + + + ui_am_prop_thermo + + + + + + + + + + ui_am_prop_electro + + + + + + + + + + ui_am_propery_09 + + + + + + + + + + ui_am_propery_11 + + + + + + + + + + ui_am_prop_chem + + + + + + + + + + ui_am_propery_08 + + + + + + + + + + ui_am_prop_time_period + + + + + + + diff --git a/gamedata/configs/ui/booster_params_16.xml b/gamedata/configs/ui/booster_params_16.xml new file mode 100644 index 0000000..71a7475 --- /dev/null +++ b/gamedata/configs/ui/booster_params_16.xml @@ -0,0 +1,166 @@ + + + ui_inGame2_hint_wnd_Properties + + + + + ui_am_propery_05 + + + + + + + + + + ui_am_propery_09 + + + + + + + + + + + ui_am_prop_satiety_restore_speed + + + + + + + + + + ui_am_prop_Vibros + + + + + + + + + + ui_am_propery_07 + + + + + + + + + + ui_am_prop_restore_bleeding + + + + + + + + + + ui_am_propery_09 + + + + + + + + + + ui_am_propery_11 + + + + + + + + + + ui_am_prop_chem + + + + + + + + + + ui_am_prop_thermo + + + + + + + + + + ui_am_prop_electro + + + + + + + + + + ui_am_propery_09 + + + + + + + + + + ui_am_propery_11 + + + + + + + + + + ui_am_prop_chem + + + + + + + + + + ui_am_propery_08 + + + + + + + + + + ui_am_prop_time_period + + + + + + + diff --git a/gamedata/configs/ui/car_panel.xml b/gamedata/configs/ui/car_panel.xml new file mode 100644 index 0000000..06eb027 --- /dev/null +++ b/gamedata/configs/ui/car_panel.xml @@ -0,0 +1,40 @@ + + + + + ui_car_panel_back + + + + ui_inGame2_inventory_progress_bar + + + + + ui_inGame2_inventory_progress_bar + + + + + + ui_car_panel_engine + + + ui_car_panel_engine + + + + + + ui_car_panel_light + + + ui_car_panel_light + + + + + + + + \ No newline at end of file diff --git a/gamedata/configs/ui/car_panel_16.xml b/gamedata/configs/ui/car_panel_16.xml new file mode 100644 index 0000000..06eb027 --- /dev/null +++ b/gamedata/configs/ui/car_panel_16.xml @@ -0,0 +1,40 @@ + + + + + ui_car_panel_back + + + + ui_inGame2_inventory_progress_bar + + + + + ui_inGame2_inventory_progress_bar + + + + + + ui_car_panel_engine + + + ui_car_panel_engine + + + + + + ui_car_panel_light + + + ui_car_panel_light + + + + + + + + \ No newline at end of file diff --git a/gamedata/configs/ui/maingame.xml b/gamedata/configs/ui/maingame.xml new file mode 100644 index 0000000..f0cd903 --- /dev/null +++ b/gamedata/configs/ui/maingame.xml @@ -0,0 +1,230 @@ + +
+ + + + + + + + + + + + ui_hud_icon_weapon + + + + ui_microphone_icon + + + + + + + + + + + + + + + ui_inGame2_shield_Psy + + + + ui_inGame2_shield_Radiation + + + + ui_inGame2_shield_biological + + + + ui_inGame2_shield_blood + + + + ui_inGame2_shield_force + + + + ui_inGame2_shield_health + + + + ui_inGame2_shield_stamina + + + + ui_inGame2_shield_radiation_cleanup + + + + + ui_hud_icon_goodmode + + + + ui_hud_icon_artefact + + + + + + + + + ui_hud_icon_PDA + + + + + + detectors\contact_1 + + + + counter + ui_item_count_back + + + + ui_inGame2_Patroni_HUD_active_items_icon + + + + + counter + ui_item_count_back + + + + ui_inGame2_Patroni_HUD_active_items_icon + + + + + counter + ui_item_count_back + + + + ui_inGame2_Patroni_HUD_active_items_icon + + + + + counter + ui_item_count_back + + + + ui_inGame2_Patroni_HUD_active_items_icon + + + + quick_use_str_1 + + + quick_use_str_2 + + + quick_use_str_3 + + + quick_use_str_4 + + + + + + + + + + + + ui_inGame2_Patroni_HUD_main_window + + + + ui_inGame2_Patroni_HUD_red_bar + + + + + + ui_inGame2_Patroni_HUD_blue_bar + + + + + ammo + + + + fmj + + + + ap + + + + gr + + + + + + + + + + + diff --git a/gamedata/configs/ui/maingame_16.xml b/gamedata/configs/ui/maingame_16.xml new file mode 100644 index 0000000..2acd010 --- /dev/null +++ b/gamedata/configs/ui/maingame_16.xml @@ -0,0 +1,242 @@ + +
+ <_auto_static x="512" y="384" width="115" height="115" alignment="c" stretch="1" heading="1" xform_anim="xfrom_rotate_3sec" xform_anim_cyclic="1"> + ui_icons_newPDA_Crclbig_h + +
+ + + + + + + + + + + + ui_hud_icon_weapon + + + + ui_microphone_icon + + + + + + + + + + + + + + + ui_inGame2_shield_Psy + + + + ui_inGame2_shield_Radiation + + + + ui_inGame2_shield_biological + + + + ui_inGame2_shield_blood + + + + ui_inGame2_shield_force + + + + ui_inGame2_shield_health + + + + ui_inGame2_shield_stamina + + + + ui_inGame2_shield_radiation_cleanup + + + + + ui_hud_icon_goodmode + + + + ui_hud_icon_artefact + + + + + + + + + ui_hud_icon_PDA + + + + + + detectors\contact_1 + + + + counter + ui_item_count_back + + + + ui_inGame2_Patroni_HUD_active_items_icon + + + + + counter + ui_item_count_back + + + + ui_inGame2_Patroni_HUD_active_items_icon + + + + + counter + ui_item_count_back + + + + ui_inGame2_Patroni_HUD_active_items_icon + + + + + counter + ui_item_count_back + + + + ui_inGame2_Patroni_HUD_active_items_icon + + + + quick_use_str_1 + + + quick_use_str_2 + + + quick_use_str_3 + + + quick_use_str_4 + + + + + + + + + + + ui_inGame2_Patroni_HUD_main_window + + + + + ui_inGame2_Patroni_HUD_red_bar + + + + + + ui_inGame2_Patroni_HUD_blue_bar + + + + + ammo + + + + fmj + + + + ap + + + + gr + + + + + + + + + + +
diff --git a/gamedata/configs/ui/map_desc.xml b/gamedata/configs/ui/map_desc.xml new file mode 100644 index 0000000..7acad3c --- /dev/null +++ b/gamedata/configs/ui/map_desc.xml @@ -0,0 +1,49 @@ + + + + ui_inGame2_Mp_screen_main_window + + + mp_map_desc + + + ui_inGame2_Mp_screen_map_window + + + ui_inGame2_Mp_screen_mapinfo_window + + + ui_TV_descr_e + + + + ui\ui_noise + + + + + + + + ui_inGame2_Mp_bigbuttone + mp_next + + + + + + + + + + ui_inGame2_Mp_bigbuttone + mp_spectator + + + + + + + + + diff --git a/gamedata/configs/ui/map_desc_16.xml b/gamedata/configs/ui/map_desc_16.xml new file mode 100644 index 0000000..d64dc5d --- /dev/null +++ b/gamedata/configs/ui/map_desc_16.xml @@ -0,0 +1,49 @@ + + + + ui_inGame2_Mp_screen_main_window + + + mp_map_desc + + + ui_inGame2_Mp_screen_map_window + + + ui_inGame2_Mp_screen_mapinfo_window + + + ui_TV_descr_e + + + + ui\ui_noise + + + + + + + + ui_inGame2_Mp_bigbuttone + mp_next + + + + + + + + + + ui_inGame2_Mp_bigbuttone + mp_spectator + + + + + + + + + \ No newline at end of file diff --git a/gamedata/configs/ui/map_spots.xml b/gamedata/configs/ui/map_spots.xml new file mode 100644 index 0000000..ed510bf --- /dev/null +++ b/gamedata/configs/ui/map_spots.xml @@ -0,0 +1,838 @@ + + +#include "ui\map_spots_mp.xml" +#include "ui\map_spots_relations.xml" +#include "ui\map_spots_complex.xml" + + + ui_hud_map_arrow + + + ui_hud_map_arrow + + + + ui_hud_map_arrow + + + ui_hud_map_arrow + + + + + + + ui\ui_common + + + + + + + ui\ui_common + + + + + + + ui\ui_common + + + + + + + + ui_icons_mapPDA_persBig_e + + + ui_icons_newPDA_SmallBlue + ui_mini_sn_spot_below + ui_mini_sn_spot_above + + + + + + + + ui_icons_mapPDA_persBig_h + + + ui_icons_newPDA_SmallGreen + ui_mini_sn_spot_below + ui_mini_sn_spot_above + + + + + + + + ui_icons_mapPDA_mark_t + + + ui_icons_newPDA_SmallRed + ui_mini_sn_spot_below + ui_mini_sn_spot_above + + + + + ui_pda2_hl_quest_base + + + + ui_pda2_hl_quest_base + + + + ui_pda2_hl_quest_base + + + + + + + + ui_icons_newPDA_man + + + + + + + ui_icons_newPDA_manArrow + + + + + + + + ui_pda2_exit_point + + + + + + + ui_pda2_exit_point + + + + + + + ui_pda2_exit_point + + + + + + + ui_pda2_exit_point + + + + + + + ui_pda2_exit_point + + + + + + + ui_pda2_exit_point + + + + + + + ui_pda2_exit_point + + + + + + + ui_pda2_exit_point + + + + + + + + + ui_inGame2_PDA_icon_secret + + + ui_inGame2_PDA_icon_secret + + + + + + + + + ui_mapQuest_gold + + + ui_sm_mapQuest_gold + + + + + + + + ui_mapQuest_gold + + + ui_sm_mapQuest_gold + + + + + + + + ui_mapQuest_gold + + + ui_sm_mapQuest_gold + + + + + + + + ui_alife_combat + + + + + + + + + ui_minimap_point + + + + + + + + + + + ui\ui_common + + + + + + + ui\ui_common + + + + + + + ui\ui_common + + + + + + + ui\ui_common + + + + + + + ui\ui_common + + + + + + + ui\ui_common + + + + + + + ui\ui_common + + + + + + + ui\ui_common + + + + + + + ui\ui_common + + + + + + + + + + + + + + ui_pda2_pt_territory + + + + + + + + ui_pda2_pt_territory + + + + + + + ui_pda2_pt_territory + + + + + + + ui_pda2_base + + + ui_mmap_base + + + + + + + ui_pda2_pt_science + + + + + + ui_pda2_pt_resource + + + + + + + ui_pda2_pt_territory + + + + + + ui_pda2_pt_territory + + + + + + + ui_pda2_base + + + ui_mmap_base + + + + + + + ui_pda2_pt_science + + + + + + ui_pda2_pt_resource + + + + + + + ui_pda2_pt_territory + + + + + + ui_pda2_pt_territory + + + + + + + ui_pda2_base + + + ui_mmap_base + + + + + + + + ui_pda2_pt_science + + + + + + ui_pda2_pt_resource + + + + + + + + ui_pda2_pt_territory + + + + + + ui_pda2_pt_territory + + + + + + + ui_pda2_base + + + ui_mmap_base + + + + + + + + ui_pda2_pt_science + + + + + + ui_pda2_pt_resource + + + + + + + + + + + + + ui_pda2_squad_leader + + + ui_minimap_squad_leader + + + + + + + + ui_pda2_squad_leader + + + ui_minimap_squad_leader + + + + + + + + + ui_pda2_squad_leader + + + ui_minimap_squad_leader + + + + + + + + ui_pda2_squad_leader + + + ui_mmap_squad_leader + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ui_inGame2_PDA_icon_Primary_mission + + ui_pda2_stask_last_02 + + + + + ui_inGame2_PDA_icon_Primary_mission + + ui_mmap_stask_last_02 + + storyline_task_spot_below + storyline_task_spot_above + + + + + + + + + ui_inGame2_PDA_icon_Secondary_mission + + ui_pda2_stask_last_02 + + + + + ui_inGame2_PDA_icon_Secondary_mission + + ui_mmap_stask_last_02 + + secondary_task_spot_below + secondary_task_spot_above + + + + + + + + ui_pda2_stask_last_01a + + + + + + + ui_pda2_stask_last_01a + + + + + + + + + + + ui_pda2_hl_seq_quest2 + + + + + + + + + + ui_inGame2_PDA_icon_Stalker_machanik + + + ui_inGame2_PDA_icon_Stalker_machanik_small + + + + + + + + ui_inGame2_PDA_icon_Stalker_Trader + + + ui_inGame2_PDA_icon_Stalker_Trader_small + + + + + + + + ui_inGame2_PDA_icon_Stalker_guide + + + ui_inGame2_PDA_icon_Stalker_guide_small + + + + + + + + ui_inGame2_PDA_icon_Stalker_VIP + + + ui_inGame2_PDA_icon_Stalker_VIP + + + + + + + + ui_inGame2_PDA_icon_Stalker_Medic + + + ui_inGame2_PDA_icon_Stalker_Medic_small + + + + + + + + ui_inGame2_PDA_icon_Actor_Box + + + ui_inGame2_PDA_icon_Actor_Box_small + + + + + + + + ui_inGame2_PDA_icon_Place_to_rest + + + ui_inGame2_PDA_icon_Place_to_rest_small + + + + + + + + ui_inGame2_PDA_icon_location + + + + + + + ui_pda2_stask_last_01 + + + + + + + ui_pda2_stask_last_01 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/gamedata/configs/ui/map_spots_16.xml b/gamedata/configs/ui/map_spots_16.xml new file mode 100644 index 0000000..4c4d368 --- /dev/null +++ b/gamedata/configs/ui/map_spots_16.xml @@ -0,0 +1,832 @@ + + +#include "ui\map_spots_mp.xml" +#include "ui\map_spots_relations.xml" +#include "ui\map_spots_complex.xml" + + + ui_hud_map_arrow + + + ui_hud_map_arrow + + + + ui_hud_map_arrow + + + ui_hud_map_arrow + + + + + + + ui\ui_common + + + + + + + ui\ui_common + + + + + + + ui\ui_common + + + + + + + + ui_icons_mapPDA_persBig_e + + + ui_icons_newPDA_SmallBlue + ui_mini_sn_spot_below + ui_mini_sn_spot_above + + + + + + + + ui_icons_mapPDA_persBig_h + + + ui_icons_newPDA_SmallGreen + ui_mini_sn_spot_below + ui_mini_sn_spot_above + + + + + + + + ui_icons_mapPDA_mark_t + + + ui_icons_newPDA_SmallRed + ui_mini_sn_spot_below + ui_mini_sn_spot_above + + + + + ui_pda2_hl_quest_base + + + + ui_pda2_hl_quest_base + + + + ui_pda2_hl_quest_base + + + + + + + + ui_icons_newPDA_man + + + + + + + ui_icons_newPDA_manArrow + + + + + + + + ui_pda2_exit_point + + + + + + + ui_pda2_exit_point + + + + + + + ui_pda2_exit_point + + + + + + + ui_pda2_exit_point + + + + + + + ui_pda2_exit_point + + + + + + + ui_pda2_exit_point + + + + + + + ui_pda2_exit_point + + + + + + + ui_pda2_exit_point + + + + + + + + + ui_inGame2_PDA_icon_secret + + + ui_inGame2_PDA_icon_secret + + + + + + + + + ui_mapQuest_gold + + + ui_sm_mapQuest_gold + + + + + + + + ui_mapQuest_gold + + + ui_sm_mapQuest_gold + + + + + + + + ui_mapQuest_gold + + + ui_sm_mapQuest_gold + + + + + + + + ui_alife_combat + + + + + + + + + ui_minimap_point + + + + + + + + + + + ui\ui_common + + + + + + + ui\ui_common + + + + + + + ui\ui_common + + + + + + + ui\ui_common + + + + + + + ui\ui_common + + + + + + + ui\ui_common + + + + + + + ui\ui_common + + + + + + + ui\ui_common + + + + + + + ui\ui_common + + + + + + + + + + + + + + ui_pda2_pt_territory + + + + + + + + ui_pda2_pt_territory + + + + + + + ui_pda2_pt_territory + + + + + + + ui_pda2_base + + + ui_mmap_base + + + + + + + ui_pda2_pt_science + + + + + + ui_pda2_pt_resource + + + + + + + ui_pda2_pt_territory + + + + + + ui_pda2_pt_territory + + + + + + + ui_pda2_base + + + ui_mmap_base + + + + + + + ui_pda2_pt_science + + + + + + ui_pda2_pt_resource + + + + + + + ui_pda2_pt_territory + + + + + + ui_pda2_pt_territory + + + + + + + ui_pda2_base + + + ui_mmap_base + + + + + + + + ui_pda2_pt_science + + + + + + ui_pda2_pt_resource + + + + + + + + ui_pda2_pt_territory + + + + + + ui_pda2_pt_territory + + + + + + + ui_pda2_base + + + ui_mmap_base + + + + + + + + ui_pda2_pt_science + + + + + + ui_pda2_pt_resource + + + + + + + + + + + + + ui_pda2_squad_leader + + + ui_minimap_squad_leader + + + + + + + + ui_pda2_squad_leader + + + ui_minimap_squad_leader + + + + + + + + + ui_pda2_squad_leader + + + ui_minimap_squad_leader + + + + + + + + ui_pda2_squad_leader + + + ui_mmap_squad_leader + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ui_inGame2_PDA_icon_Primary_mission + + ui_pda2_stask_last_02 + + + + + ui_inGame2_PDA_icon_Primary_mission + + ui_mmap_stask_last_02 + + storyline_task_spot_below + storyline_task_spot_above + + + + + + + + + ui_inGame2_PDA_icon_Secondary_mission + + ui_pda2_stask_last_02 + + + + + ui_inGame2_PDA_icon_Secondary_mission + + ui_mmap_stask_last_02 + + secondary_task_spot_below + secondary_task_spot_above + + + + + + + + ui_pda2_stask_last_01a + + + + + + + ui_pda2_stask_last_01a + + + + + + + + + + + ui_pda2_hl_seq_quest2 + + + + + + + + + + ui_inGame2_PDA_icon_Stalker_machanik + + + ui_inGame2_PDA_icon_Stalker_machanik_small + + + + + + + + ui_inGame2_PDA_icon_Stalker_Trader + + + ui_inGame2_PDA_icon_Stalker_Trader_small + + + + + + + + ui_inGame2_PDA_icon_Stalker_guide + + + ui_inGame2_PDA_icon_Stalker_guide_small + + + + + + + + ui_inGame2_PDA_icon_Stalker_VIP + + + ui_inGame2_PDA_icon_Stalker_VIP + + + + + + + + ui_inGame2_PDA_icon_Stalker_Medic + + + ui_inGame2_PDA_icon_Stalker_Medic_small + + + + + + + + ui_inGame2_PDA_icon_Actor_Box + + + ui_inGame2_PDA_icon_Actor_Box_small + + + + + + + + ui_inGame2_PDA_icon_Place_to_rest + + + ui_inGame2_PDA_icon_Place_to_rest_small + + + + + + + + ui_inGame2_PDA_icon_location + + + + + + + ui_pda2_stask_last_01 + + + + + + + ui_pda2_stask_last_01 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/gamedata/configs/ui/pda_character.xml b/gamedata/configs/ui/pda_character.xml new file mode 100644 index 0000000..21a19c0 --- /dev/null +++ b/gamedata/configs/ui/pda_character.xml @@ -0,0 +1,57 @@ + + + + + + + + + + + + + ui_st_community + + + + + + + + + ui_st_reputation + + + + + + + + + ui_st_relation + + + + + + + + ui_st_rank + + + + + + + + + ui\ui_pda_contacts_online + + + + ui\ui_pda_horizontal_line + + + + + diff --git a/gamedata/configs/ui/pda_character_16.xml b/gamedata/configs/ui/pda_character_16.xml new file mode 100644 index 0000000..ac346a6 --- /dev/null +++ b/gamedata/configs/ui/pda_character_16.xml @@ -0,0 +1,57 @@ + + + + + + + + + + + + + ui_st_community + + + + + + + + + ui_st_reputation + + + + + + + + + ui_st_relation + + + + + + + + ui_st_rank + + + + + + + + + ui\ui_pda_contacts_online + + + + ui\ui_pda_horizontal_line + + + + + diff --git a/gamedata/configs/ui/pda_contacts_new.xml b/gamedata/configs/ui/pda_contacts_new.xml new file mode 100644 index 0000000..ad40aee --- /dev/null +++ b/gamedata/configs/ui/pda_contacts_new.xml @@ -0,0 +1,35 @@ + + + + + + + ui_inGame2_pda_buttons_background + + + + ui_inGame2_pda_ranking_icon_over + + + + + <text font="letterica16" r="100" g="100" b="100">Contacts</text> + + ui_inGame2_pda_ranking_center_caption + + + + ui_inGame2_pda_ranking_icon_over + + + + ui_inGame2_pda_ranking_center_caption + + + + + + + + + diff --git a/gamedata/configs/ui/pda_contacts_new_16.xml b/gamedata/configs/ui/pda_contacts_new_16.xml new file mode 100644 index 0000000..f908fb9 --- /dev/null +++ b/gamedata/configs/ui/pda_contacts_new_16.xml @@ -0,0 +1,35 @@ + + + + + + + ui_inGame2_pda_buttons_background + + + + ui_inGame2_pda_ranking_icon_over + + + + + <text font="letterica16" r="100" g="100" b="100">Contacts</text> + + ui_inGame2_pda_ranking_center_caption + + + + ui_inGame2_pda_ranking_icon_over + + + + ui_inGame2_pda_ranking_center_caption + + + + + + + + + diff --git a/gamedata/configs/ui/pda_spot.xml b/gamedata/configs/ui/pda_spot.xml new file mode 100644 index 0000000..6634b63 --- /dev/null +++ b/gamedata/configs/ui/pda_spot.xml @@ -0,0 +1,22 @@ + + + + ui_inGame2_message_box + + + + + + ui_inGame2_edit_box_2 + + + + ui_inv_ok + ui_inGame2_Mp_bigbuttone + + + + ui_inv_cancel + ui_inGame2_Mp_bigbuttone + + \ No newline at end of file diff --git a/gamedata/configs/ui/pda_spot_16.xml b/gamedata/configs/ui/pda_spot_16.xml new file mode 100644 index 0000000..dc6f358 --- /dev/null +++ b/gamedata/configs/ui/pda_spot_16.xml @@ -0,0 +1,22 @@ + + + + ui_inGame2_message_box + + + + + + ui_inGame2_edit_box_2 + + + + ui_inv_ok + ui_inGame2_Mp_bigbuttone + + + + ui_inv_cancel + ui_inGame2_Mp_bigbuttone + + \ No newline at end of file diff --git a/gamedata/configs/ui/talk.xml b/gamedata/configs/ui/talk.xml new file mode 100644 index 0000000..8f6c7ef --- /dev/null +++ b/gamedata/configs/ui/talk.xml @@ -0,0 +1,87 @@ + + +
+ + ui_inGame2_dialog_main_window + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/gamedata/configs/ui/talk_16.xml b/gamedata/configs/ui/talk_16.xml new file mode 100644 index 0000000..f96d834 --- /dev/null +++ b/gamedata/configs/ui/talk_16.xml @@ -0,0 +1,87 @@ + +
+ + ui_inGame2_dialog_main_window + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/gamedata/configs/ui/textures_descr/mod_ui_icons_npc_ixray.xml b/gamedata/configs/ui/textures_descr/mod_ui_icons_npc_ixray.xml new file mode 100644 index 0000000..0106ba0 --- /dev/null +++ b/gamedata/configs/ui/textures_descr/mod_ui_icons_npc_ixray.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/gamedata/configs/ui/textures_descr/ui_actor_multiplayer_menu_screen.xml b/gamedata/configs/ui/textures_descr/ui_actor_multiplayer_menu_screen.xml new file mode 100644 index 0000000..d328015 --- /dev/null +++ b/gamedata/configs/ui/textures_descr/ui_actor_multiplayer_menu_screen.xml @@ -0,0 +1,155 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/gamedata/configs/ui/textures_descr/ui_ixray_ex.xml b/gamedata/configs/ui/textures_descr/ui_ixray_ex.xml new file mode 100644 index 0000000..8e41078 --- /dev/null +++ b/gamedata/configs/ui/textures_descr/ui_ixray_ex.xml @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/gamedata/configs/ui/textures_descr/ui_microphone.xml b/gamedata/configs/ui/textures_descr/ui_microphone.xml new file mode 100644 index 0000000..ad9f3aa --- /dev/null +++ b/gamedata/configs/ui/textures_descr/ui_microphone.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/gamedata/configs/ui/textures_descr/ui_mm_loading_screen.xml b/gamedata/configs/ui/textures_descr/ui_mm_loading_screen.xml new file mode 100644 index 0000000..625e677 --- /dev/null +++ b/gamedata/configs/ui/textures_descr/ui_mm_loading_screen.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/gamedata/configs/ui/textures_descr/ui_npc_monster.xml b/gamedata/configs/ui/textures_descr/ui_npc_monster.xml new file mode 100644 index 0000000..90b5f9e --- /dev/null +++ b/gamedata/configs/ui/textures_descr/ui_npc_monster.xml @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/gamedata/configs/ui/ui_custom_msgs.xml b/gamedata/configs/ui/ui_custom_msgs.xml new file mode 100644 index 0000000..e76469d --- /dev/null +++ b/gamedata/configs/ui/ui_custom_msgs.xml @@ -0,0 +1,228 @@ +
+ + + + ui_hud_timer_games + + + + + + + + + car\trabantnoise + + + + act\act_controller_hit + + + + act\act_controller_hit1 + + + + controller\controller_blood_01 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + st_autosave + + + + + + + + gun_jammed + + + + can_use_weapon_now + + + + cant_walk + + + + cant_walk_weight + + + + st_not_enough_money + + + + st_not_enough_money_npc + + + + ui\ui_cm_connection_error + + + cur_num + + + + + ui\ui_cm_connection_error + + + cur_num + + + + + ui\ui_cm_connection_error + + + cur_num + + + + + ui\ui_cm_connection_error + + + cur_num + + + + + + + ui_sega_healph + + + + + ui_sega_healph + + + + + ui_hud_timer_games + + + + + + + + + ui_hud_timer_games + + + + ui_hud_points_count + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + intro\intro_back + + +
diff --git a/gamedata/configs/ui/ui_game_fmp.xml b/gamedata/configs/ui/ui_game_fmp.xml new file mode 100644 index 0000000..c72a34b --- /dev/null +++ b/gamedata/configs/ui/ui_game_fmp.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/gamedata/configs/ui/ui_game_fmp_16.xml b/gamedata/configs/ui/ui_game_fmp_16.xml new file mode 100644 index 0000000..d26fd15 --- /dev/null +++ b/gamedata/configs/ui/ui_game_fmp_16.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/gamedata/configs/ui/ui_keybinding.xml b/gamedata/configs/ui/ui_keybinding.xml new file mode 100644 index 0000000..5afdef6 --- /dev/null +++ b/gamedata/configs/ui/ui_keybinding.xml @@ -0,0 +1,74 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/gamedata/configs/ui/ui_mm_loading_screen.xml b/gamedata/configs/ui/ui_mm_loading_screen.xml new file mode 100644 index 0000000..f155ab1 --- /dev/null +++ b/gamedata/configs/ui/ui_mm_loading_screen.xml @@ -0,0 +1,38 @@ + + + + ui_mm_loading_screen + + + + + + + + ui_mm_loading_progress_bar + + + + ui_mm_loading_progress_bar + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/gamedata/configs/ui/ui_mm_loading_screen_16.xml b/gamedata/configs/ui/ui_mm_loading_screen_16.xml new file mode 100644 index 0000000..5e2a498 --- /dev/null +++ b/gamedata/configs/ui/ui_mm_loading_screen_16.xml @@ -0,0 +1,44 @@ + + + + ui_mm_loading_screen + + + ui_mm_loading_left_widepanel + + + ui_mm_loading_right_widepanel + + + + + + + + ui_mm_loading_progress_bar + + + + ui_mm_loading_progress_bar + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/gamedata/configs/ui/ui_mm_main.xml b/gamedata/configs/ui/ui_mm_main.xml new file mode 100644 index 0000000..31f1b94 --- /dev/null +++ b/gamedata/configs/ui/ui_mm_main.xml @@ -0,0 +1,117 @@ + + + + ui\video_voroni_crop + + + ui\video_water_crop + + + ui_inGame2_background + + + + + + + ui_inGame2_slider + + ui_magnifier3 + -5 + + + + + + + + + + + +#include "ui\ui_mm_mp_tabclient.xml" +#include "ui\ui_mm_mp_tabserver.xml" +#include "ui\ui_mm_mp_taboptions.xml" +#include "ui\ui_mm_mp_tabdemo.xml" +#include "ui\ui_mm_mp_tabprofile.xml" + + + ui_tablist_textbox + + + + mm_mp_create + ui_inGame2_Mp_bigbuttone + + + + mm_mp_load_demo + ui_inGame2_Mp_bigbuttone + + + + ui_inGame2_Mp_bigbuttone + + + + mm_mp_join + ui_inGame2_Mp_bigbuttone + + + + mm_mp_cancel + ui_inGame2_Mp_bigbuttone + + + + ui_patch_back + + + + mm_mp_progress + + + + + ui_patch_progress + + + + + mm_mp_cancel + ui_button_ordinary + + + + + + + diff --git a/gamedata/configs/ui/ui_mm_mp_16.xml b/gamedata/configs/ui/ui_mm_mp_16.xml new file mode 100644 index 0000000..b35fbd3 --- /dev/null +++ b/gamedata/configs/ui/ui_mm_mp_16.xml @@ -0,0 +1,173 @@ + + + + + ui_inGame2_mp_background + + + ui_st_mp_experience_grow + + + ui_inGame2_main_window + + + ui_inGame2_widescreen_panel_left + + + ui_inGame2_widescreen_panel_right + + + ui_inGame2_GameSpy_logo + + + + + + ui_inGame2_edit_box_1 + + + mm_mp_cd_key + + + + ui_inGame2_edit_box_2 + + + + mm_online_mode + + + + + + + + +#include "ui\ui_mm_mp_tabclient_16.xml" +#include "ui\ui_mm_mp_tabserver_16.xml" +#include "ui\ui_mm_mp_taboptions_16.xml" +#include "ui\ui_mm_mp_tabdemo_16.xml" +#include "ui\ui_mm_mp_tabprofile_16.xml" + + + ui_tablist_textbox + + + + mm_mp_create + ui_inGame2_Mp_bigbuttone + + + + mm_mp_load_demo + ui_inGame2_Mp_bigbuttone + + + + mm_mp_join + ui_inGame2_Mp_bigbuttone + + + + mm_mp_delete_demo + ui_inGame2_Mp_bigbuttone + + + + mm_mp_cancel + ui_inGame2_Mp_bigbuttone + + + + ui_patch_back + + + + mm_mp_progress + + + + + ui_patch_progress + + + + + mm_mp_cancel + ui_button_ordinary + + + + + + + + \ No newline at end of file diff --git a/gamedata/configs/ui/ui_mm_mp_tabclient.xml b/gamedata/configs/ui/ui_mm_mp_tabclient.xml new file mode 100644 index 0000000..9c07f90 --- /dev/null +++ b/gamedata/configs/ui/ui_mm_mp_tabclient.xml @@ -0,0 +1,145 @@ + +
+ + + + ui_inGame2_servers_list_frame + + + + + + + +
+ +
+ + + ui_inGame2_servers_list_button + + + ui_inGame2_servers_list_button_devider + + + + + + + + ui_inGame2_edit_box + + st_mp_gsfilter + + + + + mm_mp_server_prop + ui_inGame2_servers_list_button + + + mm_mp_players + ui_inGame2_servers_list_button + + + mm_mp_frags + ui_inGame2_servers_list_button + + + mm_mp_deaths + ui_inGame2_servers_list_button + + + + + + ui_inGame2_servers_list_frame + + + + + + ui_inGame2_servers_list_frame + + +
+ + + ui_inGame2_text_leyer_1 + + mm_mp_network_connection + + + + + ui_inGame2_text_leyer + + mm_mp_server_list + + + + + ui_inGame2_text_leyer_2 + + mm_mp_filters + + + + + ui_inGame2_checkbox + mm_mp_empty + + + + ui_inGame2_checkbox + mm_mp_full + + + + ui_inGame2_checkbox + mm_mp_withpassword + + + + ui_inGame2_checkbox + mm_mp_withoutpassword + + + + ui_inGame2_checkbox + mm_mp_withoutfriendlyfire + + + + ui_inGame2_checkbox + mm_mp_listenservers + + + + + + + + + + st_mp_direct_ip + ui_inGame2_button + + + mm_mp_refresh + ui_inGame2_button + + + mm_mp_quickrefresh + ui_inGame2_button + + + mm_mp_serverinfo + ui_inGame2_button + + + diff --git a/gamedata/configs/ui/ui_mm_mp_tabclient_16.xml b/gamedata/configs/ui/ui_mm_mp_tabclient_16.xml new file mode 100644 index 0000000..2d1c93d --- /dev/null +++ b/gamedata/configs/ui/ui_mm_mp_tabclient_16.xml @@ -0,0 +1,145 @@ + +
+ + + + ui_inGame2_servers_list_frame + + + + + + + +
+ +
+ + + ui_inGame2_servers_list_button + + + ui_inGame2_servers_list_button_devider + + + + + + + + ui_inGame2_edit_box + + st_mp_gsfilter + + + + + mm_mp_server_prop + ui_inGame2_servers_list_button + + + mm_mp_players + ui_inGame2_servers_list_button + + + mm_mp_frags + ui_inGame2_servers_list_button + + + mm_mp_deaths + ui_inGame2_servers_list_button + + + + + + ui_inGame2_servers_list_frame + + + + + + ui_inGame2_servers_list_frame + + +
+ + + ui_inGame2_text_leyer_1 + + mm_mp_network_connection + + + + + ui_inGame2_text_leyer + + mm_mp_server_list + + + + + ui_inGame2_text_leyer_2 + + mm_mp_filters + + + + + + + + + + ui_inGame2_checkbox + mm_mp_empty + + + + ui_inGame2_checkbox + mm_mp_full + + + + + ui_inGame2_checkbox + mm_mp_withpassword + + + + ui_inGame2_checkbox + mm_mp_withoutpassword + + + + ui_inGame2_checkbox + mm_mp_withoutfriendlyfire + + + + ui_inGame2_checkbox + mm_mp_listenservers + + + + + st_mp_direct_ip + ui_inGame2_button + + + mm_mp_refresh + ui_inGame2_button + + + mm_mp_quickrefresh + ui_inGame2_button + + + mm_mp_serverinfo + ui_inGame2_button + + diff --git a/gamedata/configs/ui/ui_mm_mp_taboptions.xml b/gamedata/configs/ui/ui_mm_mp_taboptions.xml new file mode 100644 index 0000000..0ec680d --- /dev/null +++ b/gamedata/configs/ui/ui_mm_mp_taboptions.xml @@ -0,0 +1,277 @@ + +
+ + ui_inGame2_servers_list_frame + + + ui_inGame2_servers_list_frame + + + ui_inGame2_servers_list_frame + + + + ui_inGame2_servers_list_button + + mm_mp_network_connection + + + + ui_inGame2_servers_list_button + + mm_mp_respawnoptions + + + + ui_inGame2_servers_list_button + + mm_mp_serverlist + + + + ui_inGame2_servers_list_button + + mm_mp_weatheroptions + + + + ui_inGame2_servers_list_button + + mm_mp_spectator_options + + + + ui_inGame2_servers_list_button + + mm_mp_demosave_options + + + + + ui_inGame2_checkbox_t + + mm_mp_publicserver + + + + ui_inGame2_checkbox_d + + mm_mp_publicserver + + + + + ui_inGame2_checkbox + + mm_mp_publicserver + + + + mm_mp_max_ping + + + + + + + ui_inGame2_checkbox + + mm_mp_spectator + + + + + + + ui_inGame2_checkbox + + mm_mp_allowvoting + + + + + + + + + + + + + + + + + + + mm_mp_damageblock + + + + + + + + ui_inGame2_checkbox + + mm_mp_damageblockindicator + + + + mm_mp_artret_time + + + + + + + + ui_inGame2_checkbox + + mm_mp_actret_time + + + + mm_mp_friendlyfire + + + + + + + mm_mp_fraglimit + + + + + + + mm_mp_timelimit + + + + + + + mm_mp_artefstay + + + + + + + mm_mp_artefnum + + + + + + + mm_mp_artefdelay + + + + + + + ui_inGame2_checkbox + + mm_mp_pda_hunt + + + ui_inGame2_checkbox + + mm_mp_autoteambalance + + + ui_inGame2_checkbox + + mm_mp_autoteamswap + + + ui_inGame2_checkbox + + mm_mp_friendlyindicators + + + ui_inGame2_checkbox + + mm_mp_friendlynames + + + ui_inGame2_checkbox + + mm_mp_noanomalies + + + + mm_mp_anomalytime + + + + + + + mm_mp_warmuptime + + + + + + + mm_mp_startweather + + + + + + + + + mm_mp_rateofchange + + + + + + + ui_inGame2_checkbox + mm_mp_spectator_teamonly + + + + ui_inGame2_checkbox + mm_mp_spectator_freefly + + + + ui_inGame2_checkbox + mm_mp_spectator_firsteye + + + + ui_inGame2_checkbox + mm_mp_spectator_lookat + + + + ui_inGame2_checkbox + mm_mp_spectator_freelook + + + + + + + ui_inGame2_checkbox + + mm_mp_demosave + + + diff --git a/gamedata/configs/ui/ui_mm_mp_taboptions_16.xml b/gamedata/configs/ui/ui_mm_mp_taboptions_16.xml new file mode 100644 index 0000000..7f70ac1 --- /dev/null +++ b/gamedata/configs/ui/ui_mm_mp_taboptions_16.xml @@ -0,0 +1,277 @@ + +
+ + ui_inGame2_servers_list_frame + + + ui_inGame2_servers_list_frame + + + ui_inGame2_servers_list_frame + + + + ui_inGame2_servers_list_button + + mm_mp_network_connection + + + + ui_inGame2_servers_list_button + + mm_mp_respawnoptions + + + + ui_inGame2_servers_list_button + + mm_mp_serverlist + + + + ui_inGame2_servers_list_button + + mm_mp_weatheroptions + + + + ui_inGame2_servers_list_button + + mm_mp_spectator_options + + + + ui_inGame2_servers_list_button + + mm_mp_demosave_options + + + + + ui_inGame2_checkbox_t + + mm_mp_publicserver + + + + ui_inGame2_checkbox_d + + mm_mp_publicserver + + + + + ui_inGame2_checkbox + + mm_mp_publicserver + + + + mm_mp_max_ping + + + + + + + ui_inGame2_checkbox + + mm_mp_spectator + + + + + + + ui_inGame2_checkbox + + mm_mp_allowvoting + + + + + + + + + + + + + + + + + + + mm_mp_damageblock + + + + + + + + ui_inGame2_checkbox + + mm_mp_damageblockindicator + + + + mm_mp_artret_time + + + + + + + + ui_inGame2_checkbox + + mm_mp_actret_time + + + + mm_mp_friendlyfire + + + + + + + mm_mp_fraglimit + + + + + + + mm_mp_timelimit + + + + + + + mm_mp_artefstay + + + + + + + mm_mp_artefnum + + + + + + + mm_mp_artefdelay + + + + + + + ui_inGame2_checkbox + + mm_mp_pda_hunt + + + ui_inGame2_checkbox + + mm_mp_autoteambalance + + + ui_inGame2_checkbox + + mm_mp_autoteamswap + + + ui_inGame2_checkbox + + mm_mp_friendlyindicators + + + ui_inGame2_checkbox + + mm_mp_friendlynames + + + ui_inGame2_checkbox + + mm_mp_noanomalies + + + + mm_mp_anomalytime + + + + + + + mm_mp_warmuptime + + + + + + + mm_mp_startweather + + + + + + + + + mm_mp_rateofchange + + + + + + + ui_inGame2_checkbox + mm_mp_spectator_teamonly + + + + ui_inGame2_checkbox + mm_mp_spectator_freefly + + + + ui_inGame2_checkbox + mm_mp_spectator_firsteye + + + + ui_inGame2_checkbox + mm_mp_spectator_lookat + + + + ui_inGame2_checkbox + mm_mp_spectator_freelook + + + + + + + ui_inGame2_checkbox + + mm_mp_demosave + + + diff --git a/gamedata/configs/ui/ui_mm_opt.xml b/gamedata/configs/ui/ui_mm_opt.xml new file mode 100644 index 0000000..8956fe7 --- /dev/null +++ b/gamedata/configs/ui/ui_mm_opt.xml @@ -0,0 +1,830 @@ + + + + + ui\video_window + + + + ui_inGame2_opt_background + + + + + + + + + ui_inGame2_opt_main_window + + ui_inGame2_opt_buttons_frame + + + + + ui_mm_apply + ui_inGame2_Mp_bigbuttone + + + + + + + ui_mm_cancel + ui_inGame2_Mp_bigbuttone + + + + + + + + + + + + + + + + + + + + ui_mm_renderer + + + + + + + + + + + + ui_mm_quality_presets + + + + + + + + + + + + ui_mm_resolution + + + + + + + + + + + + ui_mm_gamma + + + + + + + ui_mm_contrast + + + + + + + ui_mm_brightness + + + + + + + ui_mm_fullscreen + + + ui_inGame2_checkbox + + + + + ui_mm_vsync + + + ui_inGame2_checkbox + + + + + ui_rs_device_active + + + ui_inGame2_checkbox + + + + + ui_mm_screenshot_format + + + + + + + + + + + + ui_mm_advanced + ui_inGame2_button + + + + + + + + + + + + + ui_mm_vis_distance + + + + + + + ui_mm_geometry_lod + + + + + + + ui_mm_detail_density + + + + + + + ui_mm_grass_distance + + + + + + + ui_mm_texture_quality + + + + + + + ui_mm_anisotropic + + + + + + + ui_mm_r_scale_mode + + + + + + + + + + + + ui_mm_r_scale_preset + + + + + + + + + + + + ui_mm_vid_scale + + + + + + + ui_mm_cas_sharpening + + + + + + + ui_mm_supersample + + + + + + + + + + + + + + + ui_inGame2_servers_list_button + + + + ui_mm_r2_sun + + + ui_inGame2_checkbox + + + + + ui_mm_r1_detail_textures + + + ui_inGame2_checkbox + + + + + ui_mm_r2_detail_bump + + + ui_inGame2_checkbox + + + + + ui_mm_r2_steep_parallax + + + ui_inGame2_checkbox + + + + + ui_mm_r2_sun_quality + + + + + + + + + + + + ui_mm_r2_details_shadows + + + ui_inGame2_checkbox + + + + + ui_mm_lights_details + + + ui_inGame2_checkbox + + + + + ui_mm_r_actor_shadow + + + ui_inGame2_checkbox + + + + + ui_mm_r4_hud_shadows + + + ui_inGame2_checkbox + + + + + ui_mm_hashed_alpha_test + + + ui_inGame2_checkbox + + + + + ui_mm_r2_cloud_shadows + + + ui_inGame2_checkbox + + + + + ui_mm_r3_dynamic_wet_surfaces + + + ui_inGame2_checkbox + + + + + ui_mm_r3_volumetric_smoke + + + ui_inGame2_checkbox + + + + + ui_mm_puddles + + + ui_inGame2_checkbox + + + + + ui_mm_light_distance + + + + + + + ui_mm_r__smap_size + + + + + + + + + + + + ui_mm_npc_torch + + + ui_inGame2_checkbox + + + + + ui_mm_sun_quality + + + + + + + ui_mm_mt_tex_load + + + ui_inGame2_checkbox + + + + + ui_mm_sun_shafts + + + + + + + + + + + + ui_mm_ssao_text + + + + + + + + + + + + + ui_mm_vignette + + + ui_inGame2_checkbox + + + + + ui_mm_aberration + + + ui_inGame2_checkbox + + + + + ui_mm_saturation + + + ui_inGame2_checkbox + + + + + ui_mm_sslr_water + + + ui_inGame2_checkbox + + + + + ui_mm_soft_water + + + ui_inGame2_checkbox + + + + + ui_mm_soft_particles + + + ui_inGame2_checkbox + + + + + ui_mm_dof + + + ui_inGame2_checkbox + + + + + ui_mm_dof_reload + + + ui_inGame2_checkbox + + + + + ui_mm_dof_talk + + + ui_inGame2_checkbox + + + + + ui_mm_volumetric_light + + + ui_inGame2_checkbox + + + + + ui_mm_r4_enable_tessellation + + + ui_inGame2_checkbox + + + + + ui_mm_simply + ui_inGame2_button + + + + + + + + + ui_mm_master_volume + + + + + + + ui_mm_music_volume + + + + + + + ui_mm_snd_device + + + + + + + + + + + + ui_mm_eax + + + ui_inGame2_checkbox + + + + + ui_mm_dynamic_music + + + ui_inGame2_checkbox + + + + + + ui_mm_difficulty + + + + + + + + + + + + + ui_mm_lang + + + + + + + + + + + + + ui_mm_bobbing_factor + + + + + + + ui_mm_hit_slowmo + + + ui_inGame2_checkbox + + + + + ui_mm_wpn_aim_toggle + + + ui_inGame2_checkbox + + + + + ui_mm_show_crosshair + + + ui_inGame2_checkbox + + + + + ui_mm_dyn_crosshair + + + ui_inGame2_checkbox + + + + + ui_mm_show_weapon + + + ui_inGame2_checkbox + + + + + ui_mm_crosshair_distance + + + ui_inGame2_checkbox + + + + + ui_mm_tips + + + ui_inGame2_checkbox + + + + + ui_mm_crouch_toggle + + + ui_inGame2_checkbox + + + + + ui_mm_important_save + + + ui_inGame2_checkbox + + + + + ui_st_disable_hud + + + ui_inGame2_checkbox + + + + + ui_rs_fps_show + + + ui_inGame2_checkbox + + + + + + ui_mm_mouse_sense + + + + + + + ui_mm_mouse_sense_ui + + + + + + + ui_mm_invert_mouse + + + ui_inGame2_checkbox + + + + + ui_inGame2_servers_list_button + + ui_mm_keyboard_setup + + + + + + ui_inGame2_servers_list_button + + ui_mm_action + + + + ui_inGame2_servers_list_button + + ui_mm_key + + + + ui_inGame2_servers_list_button + + + ui_inGame2_empty_frameline_15 + + ui_mm_alternative + + + + + ui_inGame2_servers_list_frame + + + + + + + + + + + + + + + ui_mm_default + ui_inGame2_button + + + + + + + + ui_patch_back + + + + mm_mp_progress + + + + + ui_patch_progress + + + + + mm_mp_cancel + + + + ui_button_ordinary + + diff --git a/gamedata/configs/ui/ui_mm_opt_16.xml b/gamedata/configs/ui/ui_mm_opt_16.xml new file mode 100644 index 0000000..2a047a5 --- /dev/null +++ b/gamedata/configs/ui/ui_mm_opt_16.xml @@ -0,0 +1,833 @@ + + + + ui_inGame2_opt_background + + + ui\video_window + + + ui_inGame2_opt_left_widepanel + + + ui_inGame2_opt_right_widepanel + + + + + + + + ui_inGame2_opt_main_window + + ui_inGame2_opt_buttons_frame + + + + + ui_mm_apply + ui_inGame2_Mp_bigbuttone + + + + + + + ui_mm_cancel + ui_inGame2_Mp_bigbuttone + + + + + + + + + + + + + + + + + + + + ui_mm_renderer + + + + + + + + + + + + ui_mm_quality_presets + + + + + + + + + + + + ui_mm_resolution + + + + + + + + + + + + ui_mm_gamma + + + + + + + ui_mm_contrast + + + + + + + ui_mm_brightness + + + + + + + ui_mm_fullscreen + + + ui_inGame2_checkbox + + + + + ui_mm_vsync + + + ui_inGame2_checkbox + + + + + ui_rs_device_active + + + ui_inGame2_checkbox + + + + + ui_mm_screenshot_format + + + + + + + + + + + + ui_mm_advanced + ui_inGame2_button + + + + + + + + + + + + + ui_mm_vis_distance + + + + + + + ui_mm_geometry_lod + + + + + + + ui_mm_detail_density + + + + + + + ui_mm_grass_distance + + + + + + + ui_mm_texture_quality + + + + + + + ui_mm_anisotropic + + + + + + + ui_mm_r_scale_mode + + + + + + + + + + + + ui_mm_r_scale_preset + + + + + + + + + + + + ui_mm_vid_scale + + + + + + + ui_mm_cas_sharpening + + + + + + + ui_mm_supersample + + + + + + + + + + + + + + + ui_inGame2_servers_list_button + + + + ui_mm_r2_sun + + + ui_inGame2_checkbox + + + + + ui_mm_r1_detail_textures + + + ui_inGame2_checkbox + + + + + ui_mm_r2_detail_bump + + + ui_inGame2_checkbox + + + + + ui_mm_r2_steep_parallax + + + ui_inGame2_checkbox + + + + + ui_mm_r2_sun_quality + + + + + + + + + + + + ui_mm_r2_details_shadows + + + ui_inGame2_checkbox + + + + + ui_mm_lights_details + + + ui_inGame2_checkbox + + + + + ui_mm_r_actor_shadow + + + ui_inGame2_checkbox + + + + + ui_mm_r4_hud_shadows + + + ui_inGame2_checkbox + + + + + ui_mm_hashed_alpha_test + + + ui_inGame2_checkbox + + + + + ui_mm_r2_cloud_shadows + + + ui_inGame2_checkbox + + + + + ui_mm_r3_dynamic_wet_surfaces + + + ui_inGame2_checkbox + + + + + ui_mm_r3_volumetric_smoke + + + ui_inGame2_checkbox + + + + + ui_mm_puddles + + + ui_inGame2_checkbox + + + + + ui_mm_light_distance + + + + + + + ui_mm_r__smap_size + + + + + + + + + + + + ui_mm_npc_torch + + + ui_inGame2_checkbox + + + + + ui_mm_sun_quality + + + + + + + ui_mm_mt_tex_load + + + ui_inGame2_checkbox + + + + + ui_mm_sun_shafts + + + + + + + + + + + + ui_mm_ssao_text + + + + + + + + + + + + + ui_mm_vignette + + + ui_inGame2_checkbox + + + + + ui_mm_aberration + + + ui_inGame2_checkbox + + + + + ui_mm_saturation + + + ui_inGame2_checkbox + + + + + ui_mm_sslr_water + + + ui_inGame2_checkbox + + + + + ui_mm_soft_water + + + ui_inGame2_checkbox + + + + + ui_mm_soft_particles + + + ui_inGame2_checkbox + + + + + ui_mm_dof + + + ui_inGame2_checkbox + + + + + ui_mm_dof_reload + + + ui_inGame2_checkbox + + + + + ui_mm_dof_talk + + + ui_inGame2_checkbox + + + + + ui_mm_volumetric_light + + + ui_inGame2_checkbox + + + + + ui_mm_r4_enable_tessellation + + + ui_inGame2_checkbox + + + + + ui_mm_simply + ui_inGame2_button + + + + + + + + + ui_mm_master_volume + + + + + + + ui_mm_music_volume + + + + + + + ui_mm_snd_device + + + + + + + + + + + + ui_mm_eax + + + ui_inGame2_checkbox + + + + + ui_mm_dynamic_music + + + ui_inGame2_checkbox + + + + + + ui_mm_difficulty + + + + + + + + + + + + + ui_mm_lang + + + + + + + + + + + + + ui_mm_bobbing_factor + + + + + + + ui_mm_hit_slowmo + + + ui_inGame2_checkbox + + + + + ui_mm_wpn_aim_toggle + + + ui_inGame2_checkbox + + + + + ui_mm_show_crosshair + + + ui_inGame2_checkbox + + + + + ui_mm_dyn_crosshair + + + ui_inGame2_checkbox + + + + + ui_mm_show_weapon + + + ui_inGame2_checkbox + + + + + ui_mm_crosshair_distance + + + ui_inGame2_checkbox + + + + + ui_mm_tips + + + ui_inGame2_checkbox + + + + + ui_mm_crouch_toggle + + + ui_inGame2_checkbox + + + + + ui_mm_important_save + + + ui_inGame2_checkbox + + + + + ui_st_disable_hud + + + ui_inGame2_checkbox + + + + + ui_rs_fps_show + + + ui_inGame2_checkbox + + + + + + ui_mm_mouse_sense + + + + + + + ui_mm_mouse_sense_ui + + + + + + + ui_mm_invert_mouse + + + ui_inGame2_checkbox + + + + + ui_inGame2_servers_list_button + + ui_mm_keyboard_setup + + + + + + ui_inGame2_servers_list_button + + ui_mm_action + + + + ui_inGame2_servers_list_button + + ui_mm_key + + + + ui_inGame2_servers_list_button + + + ui_inGame2_empty_frameline_15 + + ui_mm_alternative + + + + + ui_inGame2_servers_list_frame + + + + + + + + + + + + + + + ui_mm_default + ui_inGame2_button + + + + + + + + ui_patch_back + + + + mm_mp_progress + + + + + ui_patch_progress + + + + + mm_mp_cancel + + + + ui_button_ordinary + + diff --git a/gamedata/configs/ui/ui_mp_admin_menu.xml b/gamedata/configs/ui/ui_mp_admin_menu.xml new file mode 100644 index 0000000..bd3dbbd --- /dev/null +++ b/gamedata/configs/ui/ui_mp_admin_menu.xml @@ -0,0 +1,305 @@ + + + + ui_inGame2_screen_4 + + + + + + + + ui_inGame2_inventory_button + mm_mp_cancel + + + + + + + + ui_inGame2_inventory_button + mm_mp_refresh + + + ui_inGame2_inventory_button + ui_mp_am_screen_all + + + ui_inGame2_inventory_button + ui_mp_am_config_all + + + ui_mp_am_ping_limit + + + + + + ui_inGame2_inventory_button + ui_mp_am_set_ping_limit + + + ui_inGame2_inventory_button + ui_mp_am_screen_selected + + + ui_inGame2_inventory_button + ui_mp_am_config_selected + + + ui_inGame2_inventory_button + ui_mp_am_kick_selected + + + + + + + + + + ui_inGame2_inventory_button + ui_mp_am_ban_selected + + + + + ui_inGame2_inventory_button + mp_back + + + + ui_inGame2_inventory_button + ui_mp_am_restart + + + ui_inGame2_inventory_button + ui_mp_am_fast_restart + + + ui_inGame2_inventory_button + ui_mp_am_change_weather + + + ui_inGame2_inventory_button + ui_mp_am_change_game_type + + + ui_inGame2_inventory_button + ui_mp_am_change_game_limits + + + ui_inGame2_inventory_button + ui_mp_am_stop_cur_voting + + + + + ui_inGame2_inventory_button + Clear + + + ui_inGame2_inventory_button + Cloudy + + + ui_inGame2_inventory_button + Rain + + + ui_inGame2_inventory_button + Night + + + + + + ui_inGame2_inventory_button + ui_mp_am_set_change_rate + + + + + ui_inGame2_inventory_button + st_deathmatch + + + ui_inGame2_inventory_button + st_team_deathmatch + + + ui_inGame2_inventory_button + st_capture_the_artefact + + + ui_inGame2_inventory_button + st_artefacthunt + + + ui_inGame2_inventory_button + st_freemp + + + + + + ui_inGame2_edit_box_1 + + + ui_inGame2_inventory_button + ui_mp_am_set_time_limit + + + + ui_inGame2_edit_box_1 + + + ui_inGame2_inventory_button + ui_mp_am_set_frag_limit + + + + ui_inGame2_edit_box_1 + + + ui_inGame2_inventory_button + ui_mp_am_set_art_limit + + + + ui_inGame2_edit_box_1 + + + ui_inGame2_inventory_button + ui_mp_am_set_warm_up_time + + + ui_inGame2_checkbox + + mm_mp_spectator_firsteye + + + ui_inGame2_checkbox + + mm_mp_spectator_freefly + + + ui_inGame2_checkbox + + mm_mp_spectator_freelook + + + ui_inGame2_checkbox + + mm_mp_spectator_lookat + + + ui_inGame2_checkbox + + mm_mp_spectator_teamonly + + + + ui_inGame2_edit_box_1 + + + ui_inGame2_inventory_button + ui_mp_am_set_invincible_time + + + + ui_inGame2_edit_box_1 + + + ui_inGame2_inventory_button + ui_mp_am_set_damage_block_time + + + + ui_inGame2_edit_box_1 + + + ui_inGame2_inventory_button + ui_mp_am_set_reinforcement_time + + + ui_inGame2_checkbox + + mm_mp_allowvoting + + + ui_inGame2_checkbox + + mm_mp_damageblockindicator + + + ui_inGame2_checkbox + + mm_mp_friendlynames + + + ui_inGame2_checkbox + + mm_mp_friendlyindicators + + + ui_inGame2_checkbox + + mp_si_afbearer_cant_sprint + + + + + + + + + ui\ui_noise + + + ui_inGame2_Mp_screen_map_window + + + + + + mp_si_maprotation + ui_inGame2_inventory_button + + + diff --git a/gamedata/fonts/editors/robotomono.ttf b/gamedata/fonts/editors/robotomono.ttf new file mode 100644 index 0000000..fc0ff94 --- /dev/null +++ b/gamedata/fonts/editors/robotomono.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d9a1fa4dfe5a5deea780f6513996141425ef782d7cc5665d4d459146fd3a71c +size 87236 diff --git a/gamedata/fonts/eng/arial.ttf b/gamedata/fonts/eng/arial.ttf new file mode 100644 index 0000000..67d4d92 --- /dev/null +++ b/gamedata/fonts/eng/arial.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9b76220a5be42ead4733611e417cd65c5fd8aeaa33eb56576ac378a37d130a1 +size 1036584 diff --git a/gamedata/fonts/eng/arialbd.ttf b/gamedata/fonts/eng/arialbd.ttf new file mode 100644 index 0000000..07fb567 --- /dev/null +++ b/gamedata/fonts/eng/arialbd.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:766f06ac8761f82f25d032a220e89438f6064591af9915061f20b949efdedf69 +size 980756 diff --git a/gamedata/fonts/eng/arialbi.ttf b/gamedata/fonts/eng/arialbi.ttf new file mode 100644 index 0000000..b6287a7 --- /dev/null +++ b/gamedata/fonts/eng/arialbi.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e432c1b3568bd207e30e3d52d41e6431ea53a679eb52dd79b1a36aa6a4f3b994 +size 721144 diff --git a/gamedata/fonts/eng/ariali.ttf b/gamedata/fonts/eng/ariali.ttf new file mode 100644 index 0000000..e8b04f4 --- /dev/null +++ b/gamedata/fonts/eng/ariali.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:79a5742b865cf06891d4ae43e42cac0e5169c7b7b06b5b3c24ef8e0966d27b62 +size 717428 diff --git a/gamedata/fonts/eng/arialn.ttf b/gamedata/fonts/eng/arialn.ttf new file mode 100644 index 0000000..c5141dc --- /dev/null +++ b/gamedata/fonts/eng/arialn.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62e15117f7d314900949fe60b62c2e908c3921d0425cf26a9cf606d46ab96b16 +size 173936 diff --git a/gamedata/fonts/eng/arialnb.ttf b/gamedata/fonts/eng/arialnb.ttf new file mode 100644 index 0000000..8eadd8f --- /dev/null +++ b/gamedata/fonts/eng/arialnb.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc7f1542fca0f52bdf53e24a49dbb6e9a733c6beeb5ccb27dd0215713d126233 +size 178864 diff --git a/gamedata/fonts/eng/arialnbi.ttf b/gamedata/fonts/eng/arialnbi.ttf new file mode 100644 index 0000000..7ed8221 --- /dev/null +++ b/gamedata/fonts/eng/arialnbi.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a2aa71a058516435f4f1a389f403f14159ee629fa74eb333f0f7e3aff01b7c40 +size 178316 diff --git a/gamedata/fonts/eng/arialni.ttf b/gamedata/fonts/eng/arialni.ttf new file mode 100644 index 0000000..2b85ddf --- /dev/null +++ b/gamedata/fonts/eng/arialni.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aaeb7fef1dcc8a0a7c355da23c58bde97c6518a6e0792558edfa0c788ec9ae67 +size 179368 diff --git a/gamedata/fonts/eng/ariblk.ttf b/gamedata/fonts/eng/ariblk.ttf new file mode 100644 index 0000000..cf109b8 --- /dev/null +++ b/gamedata/fonts/eng/ariblk.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10df702864b1f89cb29ba0d6b97c04228338d16807e13e8d8c74b91aba5e5f23 +size 167592 diff --git a/gamedata/fonts/eng/consola.ttf b/gamedata/fonts/eng/consola.ttf new file mode 100644 index 0000000..a858e88 --- /dev/null +++ b/gamedata/fonts/eng/consola.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c6e6ce8119fdd47ec6a5449a08e2d2ad7f41ea03143aae193068ed9fa58eaebc +size 459180 diff --git a/gamedata/fonts/eng/consolab.ttf b/gamedata/fonts/eng/consolab.ttf new file mode 100644 index 0000000..f245eb5 --- /dev/null +++ b/gamedata/fonts/eng/consolab.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8fa803e5abc7fff0c78c62cd22d07c705f3273c53312380c36ff484246ed3c1b +size 397896 diff --git a/gamedata/fonts/eng/consolai.ttf b/gamedata/fonts/eng/consolai.ttf new file mode 100644 index 0000000..13f677d --- /dev/null +++ b/gamedata/fonts/eng/consolai.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:81e2a95d3c49468029c07e58f71a5f0ca4cfcb617eaf6bd77576fb03aa430bb2 +size 467584 diff --git a/gamedata/fonts/eng/consolaz.ttf b/gamedata/fonts/eng/consolaz.ttf new file mode 100644 index 0000000..4ff3f92 --- /dev/null +++ b/gamedata/fonts/eng/consolaz.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1df27cbcc8a9fb7f843bc24e257b78e8ff93de70e8c1ad2caab8379e7d6a1eab +size 407956 diff --git a/gamedata/fonts/eng/graffiti1ctt.ttf b/gamedata/fonts/eng/graffiti1ctt.ttf new file mode 100644 index 0000000..dd433b5 --- /dev/null +++ b/gamedata/fonts/eng/graffiti1ctt.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:58d82fb5f5de08f1bc5e049067e76a1297f90bfc5b7ba4f14f5365d38fb27f94 +size 65104 diff --git a/gamedata/fonts/eng/letterica.ttf b/gamedata/fonts/eng/letterica.ttf new file mode 100644 index 0000000..a193202 --- /dev/null +++ b/gamedata/fonts/eng/letterica.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:addce3a6673790849430407b618754fc055487e7c9ef40d00586af3328221c5c +size 36248 diff --git a/gamedata/fonts/eng/roboto.ttf b/gamedata/fonts/eng/roboto.ttf new file mode 100644 index 0000000..e777296 --- /dev/null +++ b/gamedata/fonts/eng/roboto.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e147ab64b9fdf6d89d01f6b8c3ca0b3cddc59d608a8e2218f9a2504b5c98e14 +size 168260 diff --git a/gamedata/fonts/eng/robotocondensed.ttf b/gamedata/fonts/eng/robotocondensed.ttf new file mode 100644 index 0000000..4f4b465 --- /dev/null +++ b/gamedata/fonts/eng/robotocondensed.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2af71369b6e1ab597407c5d720ca6e3fcf33554762c14953aa21dbb8667c55f0 +size 144852 diff --git a/gamedata/fonts/eng/robotomono-bold.ttf b/gamedata/fonts/eng/robotomono-bold.ttf new file mode 100644 index 0000000..a8458d1 --- /dev/null +++ b/gamedata/fonts/eng/robotomono-bold.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f4e0cd7747df32a34748a66c1274d76712cab429c75e75f5f0167319b97fccb +size 87392 diff --git a/gamedata/fonts/eng/robotomono-light.ttf b/gamedata/fonts/eng/robotomono-light.ttf new file mode 100644 index 0000000..3d18087 --- /dev/null +++ b/gamedata/fonts/eng/robotomono-light.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:79b7fbe124cd1d4e2b4b115805b5d827907dcb2ccf7671be64a9253506f4edb9 +size 87980 diff --git a/gamedata/fonts/eng/robotomono-medium.ttf b/gamedata/fonts/eng/robotomono-medium.ttf new file mode 100644 index 0000000..3e1d094 --- /dev/null +++ b/gamedata/fonts/eng/robotomono-medium.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f1c247bde0eed1e58e3b9eee89b2188dc5dfa44b8c2716044556662dd70cb7b1 +size 87172 diff --git a/gamedata/fonts/eng/robotomono.ttf b/gamedata/fonts/eng/robotomono.ttf new file mode 100644 index 0000000..fc0ff94 --- /dev/null +++ b/gamedata/fonts/eng/robotomono.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d9a1fa4dfe5a5deea780f6513996141425ef782d7cc5665d4d459146fd3a71c +size 87236 diff --git a/gamedata/fonts/rus/arial.ttf b/gamedata/fonts/rus/arial.ttf new file mode 100644 index 0000000..67d4d92 --- /dev/null +++ b/gamedata/fonts/rus/arial.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9b76220a5be42ead4733611e417cd65c5fd8aeaa33eb56576ac378a37d130a1 +size 1036584 diff --git a/gamedata/fonts/rus/arialbd.ttf b/gamedata/fonts/rus/arialbd.ttf new file mode 100644 index 0000000..07fb567 --- /dev/null +++ b/gamedata/fonts/rus/arialbd.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:766f06ac8761f82f25d032a220e89438f6064591af9915061f20b949efdedf69 +size 980756 diff --git a/gamedata/fonts/rus/arialbi.ttf b/gamedata/fonts/rus/arialbi.ttf new file mode 100644 index 0000000..b6287a7 --- /dev/null +++ b/gamedata/fonts/rus/arialbi.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e432c1b3568bd207e30e3d52d41e6431ea53a679eb52dd79b1a36aa6a4f3b994 +size 721144 diff --git a/gamedata/fonts/rus/ariali.ttf b/gamedata/fonts/rus/ariali.ttf new file mode 100644 index 0000000..e8b04f4 --- /dev/null +++ b/gamedata/fonts/rus/ariali.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:79a5742b865cf06891d4ae43e42cac0e5169c7b7b06b5b3c24ef8e0966d27b62 +size 717428 diff --git a/gamedata/fonts/rus/arialn.ttf b/gamedata/fonts/rus/arialn.ttf new file mode 100644 index 0000000..c5141dc --- /dev/null +++ b/gamedata/fonts/rus/arialn.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62e15117f7d314900949fe60b62c2e908c3921d0425cf26a9cf606d46ab96b16 +size 173936 diff --git a/gamedata/fonts/rus/arialnb.ttf b/gamedata/fonts/rus/arialnb.ttf new file mode 100644 index 0000000..8eadd8f --- /dev/null +++ b/gamedata/fonts/rus/arialnb.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc7f1542fca0f52bdf53e24a49dbb6e9a733c6beeb5ccb27dd0215713d126233 +size 178864 diff --git a/gamedata/fonts/rus/arialnbi.ttf b/gamedata/fonts/rus/arialnbi.ttf new file mode 100644 index 0000000..7ed8221 --- /dev/null +++ b/gamedata/fonts/rus/arialnbi.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a2aa71a058516435f4f1a389f403f14159ee629fa74eb333f0f7e3aff01b7c40 +size 178316 diff --git a/gamedata/fonts/rus/arialni.ttf b/gamedata/fonts/rus/arialni.ttf new file mode 100644 index 0000000..2b85ddf --- /dev/null +++ b/gamedata/fonts/rus/arialni.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aaeb7fef1dcc8a0a7c355da23c58bde97c6518a6e0792558edfa0c788ec9ae67 +size 179368 diff --git a/gamedata/fonts/rus/ariblk.ttf b/gamedata/fonts/rus/ariblk.ttf new file mode 100644 index 0000000..cf109b8 --- /dev/null +++ b/gamedata/fonts/rus/ariblk.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10df702864b1f89cb29ba0d6b97c04228338d16807e13e8d8c74b91aba5e5f23 +size 167592 diff --git a/gamedata/fonts/rus/consola.ttf b/gamedata/fonts/rus/consola.ttf new file mode 100644 index 0000000..a858e88 --- /dev/null +++ b/gamedata/fonts/rus/consola.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c6e6ce8119fdd47ec6a5449a08e2d2ad7f41ea03143aae193068ed9fa58eaebc +size 459180 diff --git a/gamedata/fonts/rus/consolab.ttf b/gamedata/fonts/rus/consolab.ttf new file mode 100644 index 0000000..f245eb5 --- /dev/null +++ b/gamedata/fonts/rus/consolab.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8fa803e5abc7fff0c78c62cd22d07c705f3273c53312380c36ff484246ed3c1b +size 397896 diff --git a/gamedata/fonts/rus/consolai.ttf b/gamedata/fonts/rus/consolai.ttf new file mode 100644 index 0000000..13f677d --- /dev/null +++ b/gamedata/fonts/rus/consolai.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:81e2a95d3c49468029c07e58f71a5f0ca4cfcb617eaf6bd77576fb03aa430bb2 +size 467584 diff --git a/gamedata/fonts/rus/consolaz.ttf b/gamedata/fonts/rus/consolaz.ttf new file mode 100644 index 0000000..4ff3f92 --- /dev/null +++ b/gamedata/fonts/rus/consolaz.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1df27cbcc8a9fb7f843bc24e257b78e8ff93de70e8c1ad2caab8379e7d6a1eab +size 407956 diff --git a/gamedata/fonts/rus/graffiti1ctt.ttf b/gamedata/fonts/rus/graffiti1ctt.ttf new file mode 100644 index 0000000..dd433b5 --- /dev/null +++ b/gamedata/fonts/rus/graffiti1ctt.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:58d82fb5f5de08f1bc5e049067e76a1297f90bfc5b7ba4f14f5365d38fb27f94 +size 65104 diff --git a/gamedata/fonts/rus/letterica.ttf b/gamedata/fonts/rus/letterica.ttf new file mode 100644 index 0000000..a193202 --- /dev/null +++ b/gamedata/fonts/rus/letterica.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:addce3a6673790849430407b618754fc055487e7c9ef40d00586af3328221c5c +size 36248 diff --git a/gamedata/fonts/rus/roboto.ttf b/gamedata/fonts/rus/roboto.ttf new file mode 100644 index 0000000..e777296 --- /dev/null +++ b/gamedata/fonts/rus/roboto.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e147ab64b9fdf6d89d01f6b8c3ca0b3cddc59d608a8e2218f9a2504b5c98e14 +size 168260 diff --git a/gamedata/fonts/rus/robotocondensed.ttf b/gamedata/fonts/rus/robotocondensed.ttf new file mode 100644 index 0000000..4f4b465 --- /dev/null +++ b/gamedata/fonts/rus/robotocondensed.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2af71369b6e1ab597407c5d720ca6e3fcf33554762c14953aa21dbb8667c55f0 +size 144852 diff --git a/gamedata/fonts/rus/robotomono-bold.ttf b/gamedata/fonts/rus/robotomono-bold.ttf new file mode 100644 index 0000000..a8458d1 --- /dev/null +++ b/gamedata/fonts/rus/robotomono-bold.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f4e0cd7747df32a34748a66c1274d76712cab429c75e75f5f0167319b97fccb +size 87392 diff --git a/gamedata/fonts/rus/robotomono-light.ttf b/gamedata/fonts/rus/robotomono-light.ttf new file mode 100644 index 0000000..3d18087 --- /dev/null +++ b/gamedata/fonts/rus/robotomono-light.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:79b7fbe124cd1d4e2b4b115805b5d827907dcb2ccf7671be64a9253506f4edb9 +size 87980 diff --git a/gamedata/fonts/rus/robotomono-medium.ttf b/gamedata/fonts/rus/robotomono-medium.ttf new file mode 100644 index 0000000..3e1d094 --- /dev/null +++ b/gamedata/fonts/rus/robotomono-medium.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f1c247bde0eed1e58e3b9eee89b2188dc5dfa44b8c2716044556662dd70cb7b1 +size 87172 diff --git a/gamedata/fonts/rus/robotomono.ttf b/gamedata/fonts/rus/robotomono.ttf new file mode 100644 index 0000000..fc0ff94 --- /dev/null +++ b/gamedata/fonts/rus/robotomono.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d9a1fa4dfe5a5deea780f6513996141425ef782d7cc5665d4d459146fd3a71c +size 87236 diff --git a/gamedata/scripts/.vscode/launch.json b/gamedata/scripts/.vscode/launch.json new file mode 100644 index 0000000..89967bd --- /dev/null +++ b/gamedata/scripts/.vscode/launch.json @@ -0,0 +1,22 @@ + +{ + // Используйте IntelliSense, чтобы узнать о возможных атрибутах. + // Наведите указатель мыши, чтобы просмотреть описания существующих атрибутов. + // Для получения дополнительной информации посетите: https://go.microsoft.com/fwlink/?linkid=830387 + "version": "0.2.0", + "configurations": [ + { + "type": "lua", + "request": "launch", + "name": "LuaPanda", + "description": "IX-Ray Lua Debug", + "cwd": "${workspaceFolder}", + "luaFileExtension": "script", + "connectionPort": 8818, + "stopOnEntry": true, + "useCHook": true, + "autoPathMode": true, + "updateTips": true + } + ] +} \ No newline at end of file diff --git a/gamedata/scripts/.vscode/settings.json b/gamedata/scripts/.vscode/settings.json new file mode 100644 index 0000000..5254150 --- /dev/null +++ b/gamedata/scripts/.vscode/settings.json @@ -0,0 +1,5 @@ +{ + "Lua.diagnostics.disable": [ + "undefined-global" + ] +} \ No newline at end of file diff --git a/gamedata/scripts/alife_storage_manager.script b/gamedata/scripts/alife_storage_manager.script new file mode 100644 index 0000000..205c960 --- /dev/null +++ b/gamedata/scripts/alife_storage_manager.script @@ -0,0 +1,218 @@ +--[[ + This script handles the serialization of data using the marshal library and the saving of this data to disk depending + on save game name. What this means is that you can save entire tables to disk instead of saving to object packet. + This script was created to alleviate issues with using packets to save dynamic data (pstor) which lead to save corruption. + Also it removes some restrictions on what you can save. + + *only store valid lua types such as numbers, strings, boolean, functions or tables that contain these valid types. Userdata needs to have a special + __persist function defined in it's metatable. See how it is done for CTime in _G.script + + *Supposedly you can save userdata if you write a proper __persist method for the metatable but I have failed to achieve proper results with serializing CTime. + + *You must register for 'save_state' and 'load_state' and add your own table to m_data for it to be encoded then stored in *.scoc + *Although marshal is pretty fast, keep in mind that encoding/decoding a ton of data, saves will start to noticeablely take longer to save/load. + *For testing/debugging you can uncomment the print_table calls in save_state and load_state. It will save the before and after tables to print_table.txt in your main directory. + + + by: Alundaio +--]] +local m_data = {} + +-- store stuff that you want to persist even offline +m_data.se_object = {} + +-- store stuff only for online objects. When object goes offline this table is purged. +m_data.game_object = {} + +-- PDA known contacts +-- m_data.actor_contacts = {} + +saved_game_extension_ex = save_extension() .. "_data" + +local function on_pstor_load_all(obj,packet) + local id = obj:id() + local state = get_game_object_state(obj,false) + if (state and db.storage[id]) then + if (state.pstor_all) then + db.storage[id].pstor = state.pstor_all + state.pstor_all = nil + end + + if (state.pstor_ctime) then + db.storage[id].pstor_ctime = state.pstor_ctime + state.pstor_ctime = nil + end + end +end + +function on_game_start() + if not isMarshal then + return + end + --RegisterScriptCallback("on_pstor_load_all",on_pstor_load_all) +end + +-- called from engine! +function CALifeStorageManager_before_save(fname) + if not isMarshal then + return + end + + --printf("CALifeStorageManager_before_save BEFORE callback") + + m_data.GAME_VERSION = GAME_VERSION + + SendScriptCallback("save_state",m_data) + + --printf("CALifeStorageManager_before_save AFTER callback") + + -- save pstor + for id,t in pairs(db.storage) do + if (m_data.game_object[id]) then + if (t.pstor and not is_empty(t.pstor)) then + m_data.game_object[id].pstor_all = t.pstor + end + + -- serialization with game.CTime.__persist + if (t.pstor_ctime and not is_empty(t.pstor_ctime)) then + m_data.game_object[id].pstor_ctime = t.pstor_ctime + end + end + end + + --ProcessEventQueueState(m_data,true) + + -- clean out game_object table of empty sub tables + for id,tbl in pairs(m_data.game_object) do + for k,v in pairs(tbl) do + if (type(v) == "table" and is_empty(v)) then + m_data.game_object[id][k] = nil + end + end + end + + local data = marshal.encode(m_data) + if not (data) then + return + end + + local path = getFS():update_path('$game_saves$', '') + + lfs.mkdir(path) -- incase savegame folder doesn't exist yet + path = path .. fname:sub(0,-6):lower() .. saved_game_extension_ex + + local savegame = io.open(path,"wb") + if not (io.type(savegame) == "file") then + printf("Error: Unable to write to %s",path) + return + end + + --printf("axr_main: saving custom data %s",path) + savegame:write(data) + savegame:close() + + --printf("CALifeStorageManager_before_save FINISHED") +end + +-- called from engine! +function CALifeStorageManager_after_save(fname) + if ffx_path_utils then + fname = ffx_path_utils.get_file_name(fname, false) + end + + local _path = getFS():update_path('$game_saves$', '') + + SendScriptCallback("save_file_created", _path, fname) +end + +-- called from engine! +function CALifeStorageManager_new_game(fname) + if ffx_path_utils then + fname = ffx_path_utils.get_file_name(fname, false) + end + + local _path = getFS():update_path('$game_saves$', '') + + SendScriptCallback("new_game_created", _path, fname) +end + +-- called from engine! +function CALifeStorageManager_save(fname) + --printf("CALifeStorageManager_save START FINISHED") +end + +-- called from engine +function CALifeStorageManager_load(fname) + if not isMarshal then + return + end + + local path = fname:sub(0,-6) .. saved_game_extension_ex + + --alun_utils.debug_write(strformat("CALifeStorageManager_load %s",path)) + + local savegame = io.open(path,"rb") + if not (io.type(savegame) == "file") then + return + end + + local data = savegame:read("*all") + savegame:close() + + if not (data and data ~= "") then + printf("Error: Failed to read %s",path) + return + end + + m_data = marshal.decode(data) + + --ProcessEventQueueState(m_data,false) + + -- For debugging save state + --alun_utils.print_table(m_data,"m_data_on_load ("..path..")") + + SendScriptCallback("load_state",m_data) + + if ffx_path_utils then + fname = ffx_path_utils.get_file_name(fname, false) + end + local _path = getFS():update_path('$game_saves$', '') + SendScriptCallback("save_file_loaded", _path, fname) + + --alun_utils.debug_write(strformat("CALifeStorageManager_load END")) +end + +function get_state() + return m_data +end + +function decode(t) + return marshal.decode(t) +end + +-- storage based on ID but verified by object name +function get_game_object_state(obj,create_if_dont_exist) + local id = obj:id() + local name = obj:name() + if not (m_data.game_object[id]) then + if not (create_if_dont_exist) then + return + end + m_data.game_object[id] = {} + m_data.game_object[id].name = name + end + return m_data.game_object[id] +end + +function get_se_obj_state(se_obj,create_if_dont_exist) + local id = se_obj.id + local name = se_obj:name() + if not (m_data.se_object[id]) then + if not (create_if_dont_exist) then + return + end + m_data.se_object[id] = {} + m_data.se_object[id].name = name + end + return m_data.se_object[id] +end diff --git a/gamedata/scripts/bind_crow.script b/gamedata/scripts/bind_crow.script new file mode 100644 index 0000000..350aa5e --- /dev/null +++ b/gamedata/scripts/bind_crow.script @@ -0,0 +1,96 @@ +-------------------------------------------------------------------------------- +-- Crow binding ---------------------------------------------------------------- +-- Made by Peacemaker ---------------------------------------------------------- +-- 25.12.07 -------------------------------------------------------------------- +-------------------------------------------------------------------------------- +crow_storage = {} +crow_counter = 0 +-- Standart function for object binding +function bind(obj) +-- local new_binder = crow_binder(obj) + obj:bind_object(crow_binder(obj)) +end +-------------------------------------------------------------------------------- +-- Class "crow_binder" +-------------------------------------------------------------------------------- +class "crow_binder" (object_binder) +-- Class constructor +function crow_binder:__init(obj) super(obj) + self.body_timer = 0 +end +-- Class update +function crow_binder:update(delta) +-- standart update + object_binder.update(self, delta) + if not(self.object:alive()) and (self.body_timer<=time_global()-120000) and (self.body_timer~=0) then +-- if crow is killed and body lays down for two minutes - release it + printf("releasing object ["..self.object:name().."]") + alife():release(alife():object(self.object:id()), true) + end +end +-- Reload object +function crow_binder:reload(section) + object_binder.reload(self, section) +end +-- Reinitialize object +function crow_binder:reinit() + self.body_timer = 0 + object_binder.reinit(self) + db.storage[self.object:id()] = {} + self.st = db.storage[self.object:id()] +end +-- Net spawn +function crow_binder:net_spawn(sobject) + if not(object_binder.net_spawn(self, sobject)) then + return false + end + db.add_obj(self.object) + bind_crow.crow_storage[self.object:id()] = self.object:id() + bind_crow.crow_counter = bind_crow.crow_counter + 1 + self.object:set_callback(callback.death, self.death_callback, self) + return true +end +-- Net destroy +function crow_binder:net_destroy() + self.object:set_callback(callback.death, nil) + if (bind_crow.crow_storage[self.object:id()] ~= nil) then --*Crow FIX* + bind_crow.crow_storage[self.object:id()] = nil + bind_crow.crow_counter = bind_crow.crow_counter - 1 + if (bind_crow.crow_counter < 0) then --*Crow FIX* + bind_crow.crow_counter = 0 --*Crow FIX* + end --*Crow FIX* + end --*Crow FIX* + db.del_obj(self.object) + object_binder.net_destroy(self) +end +-- Crow death callback +function crow_binder:death_callback(victim, who) + self.body_timer = time_global() + if (bind_crow.crow_storage[self.object:id()] ~= nil) then --*Crow FIX* + bind_crow.crow_storage[self.object:id()] = nil + bind_crow.crow_counter = bind_crow.crow_counter - 1 + if (bind_crow.crow_counter < 0) then --*Crow FIX* + bind_crow.crow_counter = 0 --*Crow FIX* + end --*Crow FIX* + end --*Crow FIX* +end +-- Standart function for save +function crow_binder:net_save_relevant() + return true +end +-- Saving crow +function crow_binder:save(package) + set_save_marker(package, "save", false, "crow_binder") + object_binder.save(self, package) + xr_logic.save_obj(self.object, package) + package:w_u32(self.body_timer) + set_save_marker(package, "save", true, "crow_binder") +end +-- Loading crow +function crow_binder:load(reader) + set_save_marker(reader, "load", false, "crow_binder") + object_binder.load(self, reader) + xr_logic.load_obj(self.object, reader) + self.body_timer = reader:r_u32() + set_save_marker(reader, "load", true, "crow_binder") +end diff --git a/gamedata/scripts/bind_monster.script b/gamedata/scripts/bind_monster.script new file mode 100644 index 0000000..7be5be9 --- /dev/null +++ b/gamedata/scripts/bind_monster.script @@ -0,0 +1,321 @@ +----------------------------------------------------------------------------------- +-- Monster binding +----------------------------------------------------------------------------------- + +function bind(obj) + printf("_bp: monster.bind: name='%s', id='%d'", obj:name(), obj:id()) + + -- + --xr_spawner.spawn_client(obj) + + local new_binder = generic_object_binder(obj) + obj:bind_object(new_binder) +end + +local last_update = 0 -- combat +------------------------------------------------------------------------------------ +class "generic_object_binder" (object_binder) + +function generic_object_binder:__init(obj) super(obj) + self.loaded = false +end + +function generic_object_binder:reload(section) + object_binder.reload(self, section) +end + +function generic_object_binder:reinit() + object_binder.reinit(self) + + db.storage[self.object:id()] = { } + + self.st = db.storage[self.object:id()] + + self.object:set_callback(callback.patrol_path_in_point, self.waypoint_callback, self) + self.object:set_callback(callback.hit, self.hit_callback, self) + self.object:set_callback(callback.death, self.death_callback, self) + self.object:set_callback(callback.sound, self.hear_callback, self) +end + +function generic_object_binder:update(delta) + object_binder.update(self, delta) + + if xr_combat_ignore.fighting_with_actor_npcs[self.object:id()] and self.object:best_enemy() == nil then + xr_combat_ignore.fighting_with_actor_npcs[self.object:id()] = nil + end + + local squad = get_object_squad(self.object) + local object_alive = self.object:alive() + --' printf("_bp: generic_object_binder: UPDATE [name='%s' time=%d]", + --' self.object:name(), time_global()) + + if not object_alive then + return + end + + local st = db.storage[self.object:id()] + if st ~= nil and st.active_scheme ~= nil then + xr_logic.try_switch_to_another_section(self.object, st[st.active_scheme], db.actor) + end + -- + if squad ~= nil then + if squad:commander_id() == self.object:id() then + squad:update() + end + end + + + self.object:info_clear() + + local active_section = db.storage[self.object:id()] and db.storage[self.object:id()].active_section + if active_section then + self.object:info_add("section: " .. active_section) + end + local best_enemy = self.object:best_enemy() + if best_enemy then + self.object:info_add("enemy: " .. best_enemy:name()) + end + self.object:info_add(self.object:name().." ["..self.object:team().."]["..self.object:squad().."]["..self.object:group().."]") + + if alife():object(self.object:id()) == nil then + return + end + + if squad ~= nil then + self.object:info_add("squad_id: " .. squad:section_name()) + if squad.current_action ~= nil then + local target = squad.assigned_target_id and alife():object(squad.assigned_target_id) and alife():object(squad.assigned_target_id):name() + self.object:info_add("current_action: " .. squad.current_action.name .."["..tostring(target).."]") + end + end + + +-- , !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + if self.object:get_enemy() then + if xr_logic.mob_captured(self.object) then + xr_logic.mob_release(self.object) + end + return + end + + + + if squad and squad.current_action and squad.current_action.name == "reach_target" then + local squad_target = simulation_objects.get_sim_obj_registry().objects[squad.assigned_target_id] + if squad_target == nil then return end + -- printf("_bp: mob_reach_task:reset_scheme: %s", self.object:name()) + + local target_pos, target_lv_id, target_gv_id = squad_target:get_location() + -- if not xr_logic.mob_captured(self.object) then + xr_logic.mob_capture(self.object, true) + -- end + if squad:commander_id() == self.object:id() then + action(self.object, move(move.walk_with_leader, target_pos), + cond(cond.move_end)) + else + local commander_pos = alife():object(squad:commander_id()).position + if commander_pos:distance_to(self.object:position()) > 10 then + action(self.object, move(move.run_with_leader, target_pos), + cond(cond.move_end)) + else + action(self.object, move(move.walk_with_leader, target_pos), + cond(cond.move_end)) + end + end + return + end + + if self.st.active_section ~= nil then + xr_logic.issue_event(self.object, self.st[self.st.active_scheme], "update", delta) + end +end + +function generic_object_binder:extrapolate_callback() + -- , + if db.storage[self.object:id()] == nil or + db.storage[self.object:id()].object == nil + then + return + end + + + local cur_pt = self.object:get_current_point_index() + if self.object:get_script() == false then + return false + end + + local patrol_path = self.object:patrol() + if not level.patrol_path_exists(patrol_path) then + return false + --abort("bind_monster:extrapolate_callback(). There is no patrol path [%s]", tostring(patrol_path)) + end + if patrol(patrol_path):flags(cur_pt):get() == 0 then + --printf("_bp: generic_object_binder: extrapolate_callback: cur_pt = %d: true", cur_pt) + return true + end + --printf("_bp: generic_object_binder: extrapolate_callback: cur_pt = %d: false", cur_pt) + return false +end + +function generic_object_binder:waypoint_callback(obj, action_type, index) + if self.st.active_section ~= nil then + xr_logic.issue_event(self.object, self.st[self.st.active_scheme], "waypoint_callback", obj, action_type, index) + end +end + +function generic_object_binder:death_callback(victim, who) + printf("stop_dead_id"..self.object:id()) + + xr_combat_ignore.fighting_with_actor_npcs[self.object:id()] = nil + + self:hit_callback(victim, 1, vector():set(0,0,0), who, "from_death_callback") + if who:id() == db.actor:id() then + xr_statistic.inc_killed_monsters_counter() + xr_statistic.set_best_monster(self.object) + end + + if self.st.mob_death then + xr_logic.issue_event(self.object, self.st.mob_death, "death_callback", victim, who) + end + + if self.st.active_section then + xr_logic.issue_event(self.object, self.st[self.st.active_scheme], "death_callback", victim, who) + end + --' . + local h = hit() + h.draftsman = self.object + h.type = hit.fire_wound + h.direction = db.actor:position():sub(self.object:position()) + h:bone("pelvis") + h.power = 1 + h.impulse = 10 + self.object:hit(h) + + local obj_clsid = self.object:clsid() + if obj_clsid == clsid.poltergeist_s then + printf("releasing object ["..self.object:name().."]") + if alife():object(self.object:id()) ~= nil then + alife():release(alife():object(self.object:id()), true) + end + end +end + +function generic_object_binder:hit_callback(obj, amount, local_direction, who, bone_index) +-- printf("HIT_CALLBACK: [%s] amount[%s]", obj:name(), amount) + + if(who:id()==db.actor:id()) then + xr_statistic.set_best_weapon(amount) + end + + if self.st.hit then + xr_logic.issue_event(self.object, self.st.hit, "hit_callback", obj, amount, local_direction, who, bone_index) + end + + if amount > 0 then + printf("HIT_CALLBACK: %s amount=%s bone=%s who:id() = [%s] actor:id() = [%s]", obj:name(), amount, tostring(bone_index), who:id(), db.actor:id()) + end +end + +function generic_object_binder:hear_callback(self, who_id, sound_type, sound_position, sound_power) + if who_id == self:id() then + return + end + xr_hear.hear_callback(self, who_id, sound_type, sound_position, sound_power) +end + +function generic_object_binder:net_spawn(sobject) + if not object_binder.net_spawn(self, sobject) then + return false + end + + local on_offline_condlist = db.storage[self.object:id()] and db.storage[self.object:id()].overrides and db.storage[self.object:id()].overrides.on_offline_condlist + if on_offline_condlist ~= nil then + xr_logic.pick_section_from_condlist(db.actor, self.object, on_offline_condlist) + end + + if not self.object:alive() then + return true + end + if alife():object(self.object:id()) == nil then + return false + end + +-- local pos = self.object:position() +-- printf("net_spawn mpos[%s][%s][%s]", tostring(pos.x), tostring(pos.y), tostring(pos.z)) + + db.add_obj(self.object) + +--******************************* ...***************************** + local se_obj = alife():object(self.object:id()) + if db.spawned_vertex_by_id[se_obj.id] ~= nil then + self.object:set_npc_position(level.vertex_position(db.spawned_vertex_by_id[se_obj.id])) + db.spawned_vertex_by_id[se_obj.id] = nil + elseif db.offline_objects[se_obj.id] ~= nil and db.offline_objects[se_obj.id].level_vertex_id ~= nil then + printf("changing position for object[%s] from %s to %s : level vertex [%s] to [%s]", se_obj:name(), vec_to_str(se_obj.position), vec_to_str(level.vertex_position(db.offline_objects[se_obj.id].level_vertex_id)), tostring(se_obj.m_level_vertex_id), tostring(db.offline_objects[se_obj.id].level_vertex_id)) + self.object:set_npc_position(level.vertex_position(db.offline_objects[se_obj.id].level_vertex_id)) + elseif se_obj.m_smart_terrain_id ~= 65535 then + local smart_terrain = alife():object(se_obj.m_smart_terrain_id) + if smart_terrain.arriving_npc[se_obj.id] == nil then + local smart_task = smart_terrain.job_data[smart_terrain.npc_info[se_obj.id].job_id].alife_task + self.object:set_npc_position(smart_task:position()) + end + end +--****************************************************************************************************************** + + + smart_terrain.setup_gulag_and_logic_on_spawn( self.object, self.st, sobject, modules.stype_mobile, self.loaded) + + return true +end + +function generic_object_binder:net_destroy() + self.object:set_callback(callback.death, nil) + self.object:set_callback(callback.patrol_path_in_point, nil) + self.object:set_callback(callback.hit, nil) + self.object:set_callback(callback.sound, nil) + xr_sound.stop_sounds_by_id(self.object:id()) + + xr_combat_ignore.fighting_with_actor_npcs[self.object:id()] = nil + + local st = db.storage[self.object:id()] + if st and st.active_scheme then + xr_logic.issue_event(self.object, st[st.active_scheme], "net_destroy") + end + +-- -------- +if db.offline_objects[self.object:id()] then + db.offline_objects[self.object:id()].level_vertex_id = self.object:level_vertex_id() + db.offline_objects[self.object:id()].active_section = db.storage[self.object:id()].active_section +end +------------------------------------------------n + + db.del_obj(self.object) + db.storage[self.object:id()] = nil + object_binder.net_destroy(self) +end + +function generic_object_binder:reload(section) + object_binder.reload(self, section) + --printf("generic_object_binder:reload(): self.object:name()='%s'", self.object:name()) +end + +function generic_object_binder:net_save_relevant() + --printf("generic_object_binder:net_save_relevant(): self.object:name()='%s'", self.object:name()) + return true +end + +function generic_object_binder:save(packet) + + set_save_marker(packet, "save", false, "generic_object_binder") + object_binder.save(self, packet) + xr_logic.save_obj(self.object, packet) + set_save_marker(packet, "save", true, "generic_object_binder") +end + +function generic_object_binder:load(reader) + self.loaded = true + set_save_marker(reader, "load", false, "generic_object_binder") + object_binder.load(self, reader) + xr_logic.load_obj(self.object, reader) + set_save_marker(reader, "load", true, "generic_object_binder") +end diff --git a/gamedata/scripts/bind_stalker.script b/gamedata/scripts/bind_stalker.script new file mode 100644 index 0000000..ec91a00 --- /dev/null +++ b/gamedata/scripts/bind_stalker.script @@ -0,0 +1,597 @@ +function init (obj) + xr_motivator.AddToMotivator(obj) +end + +function actor_init (npc) + npc:bind_object(actor_binder(npc)) +end + +local game_difficulty_by_num = { + [0] = "gd_novice", + [1] = "gd_stalker", + [2] = "gd_veteran", + [3] = "gd_master" + } + +local weapon_hide = {} +local primary_objects_filled = false +---------------------------------------------------------------------------------------------------------------------- +class "actor_binder" (object_binder) +---------------------------------------------------------------------------------------------------------------------- +function actor_binder:__init (obj) super(obj) + self.bCheckStart = false + self.weather_manager = level_weathers.get_weather_manager() + self.surge_manager = surge_manager.get_surge_manager() + --self.actor_detector = xr_detector.actor_detector() + self.last_level_name = nil + self.deimos_intensity = nil +-- self.actor_weapon_on_start = true + self.loaded_active_slot = 3 + self.loaded_slot_applied = false + self.last_detective_achievement_spawn_time = nil + self.last_mutant_hunter_achievement_spawn_time = nil +end +---------------------------------------------------------------------------------------------------------------------- +function actor_binder:net_spawn(data) +-- printf("actor net spawn") + level.show_indicators() + self.bCheckStart = true + self.weapon_hide = false -- спрятано или нет оружие при разговоре. + self.weapon_hide_in_dialog = false + weapon_hide = {} -- устанавливаем глобальный дефолтовый флаг. + if object_binder.net_spawn(self,data) == false then + return false + end + db.add_actor(self.object) + db.actor.deimos_intensity = self.deimos_intensity + self.deimos_intensity = nil + if self.st.disable_input_time == nil then + level.enable_input() + end + xr_s.on_game_load() --' Distemper 03.2008 -- + self.weather_manager:reset() + --' Загружаем настройки дропа + death_manager.init_drop_settings() + --'Устанавливаем ссылку на таскменеджер + self.task_manager = task_manager.get_task_manager() + self.spawn_frame = device().frame + self.already_jumped = false + -- self.loaded = false + benchmark.main() --' Distemper 06.2008 -- + return true +end +---------------------------------------------------------------------------------------------------------------------- +function actor_binder:net_destroy() + xr_sound.stop_sounds_by_id(self.object:id()) + local board_factions = sim_board.get_sim_board().players + if(board_factions) then + for k,v in pairs (board_factions) do + xr_sound.stop_sounds_by_id(v.id) + end + end + if(actor_stats.remove_from_ranking~=nil)then + actor_stats.remove_from_ranking(self.object:id()) + end + level.show_weapon(true) + db.del_actor(self.object) + + self.object:set_callback(callback.inventory_info, nil) + self.object:set_callback(callback.article_info, nil) + self.object:set_callback(callback.on_item_take, nil) + self.object:set_callback(callback.on_item_drop, nil) + self.object:set_callback(callback.task_state, nil) + self.object:set_callback(callback.level_border_enter, nil) + self.object:set_callback(callback.level_border_exit, nil) + self.object:set_callback(callback.take_item_from_box, nil) + self.object:set_callback(callback.use_object, nil) + -- IX-Ray + self.object:set_callback(callback.actor_before_death, nil) + -- END IX-Ray + + log("--------->"..tostring(_G.amb_vol)) + log("--------->"..tostring(_G.mus_vol)) + if(_G.amb_vol~=0) then + get_console():execute("snd_volume_eff "..tostring(_G.amb_vol)) + _G.amb_vol = 0 + end + if(_G.mus_vol~=0) then + get_console():execute("snd_volume_music "..tostring(_G.mus_vol)) + _G.mus_vol = 0 + end + if sr_psy_antenna.psy_antenna then + sr_psy_antenna.psy_antenna:destroy() + sr_psy_antenna.psy_antenna = false + end + xrs_dyn_music.finish_theme() + xr_s.on_actor_destroy() + object_binder.net_destroy(self) +end +---------------------------------------------------------------------------------------------------------------------- +function actor_binder:reinit() + object_binder.reinit(self) + local npc_id = self.object:id() + db.storage[npc_id] = { } + self.st = db.storage[npc_id] + self.st.pstor = nil + + self.object:set_callback(callback.inventory_info, self.info_callback, self) + self.object:set_callback(callback.on_item_take, self.on_item_take, self) + self.object:set_callback(callback.on_item_drop, self.on_item_drop, self) + self.object:set_callback(callback.trade_sell_buy_item, self.on_trade, self) -- for game stats + self.object:set_callback(callback.task_state, self.task_callback, self) + self.object:set_callback(callback.take_item_from_box, self.take_item_from_box, self) + self.object:set_callback(callback.use_object, self.use_inventory_item, self) + -- IX-Ray + self.object:set_callback(callback.actor_before_death, self.on_actor_before_death, self) + -- END IX-Ray +end + +-- IX-Ray +-- actor before death callback +-- IMPORTANT: if you wish to kill actor you need to call db.actor:kill(level.object_by_id(whoID), true) in actor_before_death callback, to ensure all objects are properly destroyed. +function actor_binder:on_actor_before_death(whoID) + local killer = level.object_by_id(whoID) or db.actor + db.actor:kill(killer, true) +end +-- END IX-Ray +---------------------------------------------------------------------------------------------------------------------- +function actor_binder:take_item_from_box(box, item) + local box_name = box:name() +end + +---------------------------------------------------------------------------------------------------------------------- +function actor_binder:info_callback(npc, info_id) + printf("*INFO*: npc='%s' id='%s'", npc:name(), info_id) + --' Сюжет + -- Отметки на карте +end +---------------------------------------------------------------------------------------------------------------------- +function actor_binder:on_trade (item, sell_bye, money) + if sell_bye == true then + game_stats.money_trade_update (money) + else + game_stats.money_trade_update (-money) + end +end +---------------------------------------------------------------------------------------------------------------------- +function actor_binder:article_callback(npc, group, name) +end +---------------------------------------------------------------------------------------------------------------------- +function actor_binder:on_item_take (obj) + printf("on_item_take [%s]", obj:name()) + if isArtefact(obj) then + local anomal_zone = bind_anomaly_zone.parent_zones_by_artefact_id[obj:id()] + if anomal_zone ~= nil then + anomal_zone:on_artefact_take(obj) + else + bind_anomaly_zone.artefact_ways_by_id[obj:id()] = nil + end + local artefact = obj:get_artefact() + artefact:FollowByPath("NULL",0,vector():set(500,500,500)) + xr_statistic.inc_founded_artefacts_counter(obj:id()) +--[[ + local s_art = alife():object(obj:id()) + if(s_art) then + xr_statistic.inc_founded_artefacts_counter(s_art:section_name()) + else + xr_statistic.inc_founded_artefacts_counter() + end +]] + end + treasure_manager.get_treasure_manager():on_item_take(obj:id()) +end +---------------------------------------------------------------------------------------------------------------------- +function actor_binder:on_item_drop (obj) +end + +function actor_binder:use_inventory_item(obj) + if(obj) then + local s_obj = alife():object(obj:id()) + if(s_obj) and (s_obj:section_name()=="drug_anabiotic") then + xr_effects.disable_ui_only(db.actor, nil) + level.add_cam_effector("camera_effects\\surge_02.anm", 10, false, "bind_stalker.anabiotic_callback") + level.add_pp_effector("surge_fade.ppe", 11, false) + give_info("anabiotic_in_process") + _G.mus_vol = get_console():get_float("snd_volume_music") + _G.amb_vol = get_console():get_float("snd_volume_eff") + get_console():execute("snd_volume_music 0") + get_console():execute("snd_volume_eff 0") + end + end +end + +function anabiotic_callback() + level.add_cam_effector("camera_effects\\surge_01.anm", 10, false, "bind_stalker.anabiotic_callback2") + local rnd = math.random(35,45) + local m = surge_manager.get_surge_manager() + if(m.started) then + local tf = level.get_time_factor() + local diff_sec = math.ceil(game.get_game_time():diffSec(m.inited_time)/tf) + if(rnd>(m.surge_time-diff_sec)*tf/60) then + m.time_forwarded = true + m.ui_disabled = true + m:kill_all_unhided() + m:end_surge() + end + end + level.change_game_time(0,0,rnd) + level_weathers.get_weather_manager():forced_weather_change() + printf("anabiotic_callback: time forwarded on [%d]", rnd) +end + +function anabiotic_callback2() + xr_effects.enable_ui(db.actor, nil) + get_console():execute("snd_volume_music "..tostring(_G.mus_vol)) + get_console():execute("snd_volume_eff "..tostring(_G.amb_vol)) + _G.amb_vol = 0 + _G.mus_vol = 0 + disable_info("anabiotic_in_process") +end +---------------------------------------------------------------------------------------------------------------------- + +function actor_binder:task_callback(_task, _state) + if _state ~= task.fail then + if _state == task.completed then + news_manager.send_task(db.actor, "complete", _task) + else + news_manager.send_task(db.actor, "new", _task) + end + end + task_manager.task_callback(_task, _state) +end + +---------------------------------------------------------------------------------------------------------------------- + +function actor_binder:update(delta) + object_binder.update(self, delta) + + if string.find(command_line(), "-designer") then + return + end + + if self.already_jumped==false and jump_level.need_jump==true and (device().frame > self.spawn_frame+2000) then + jump_level.try_to_jump() + self.already_jumped = true + return + end + + -- Вызов апдейта переноса игрока проводником + if travel_func ~= nil then + travel_func() + end + + -- DEBUG slowdown + --slowdown.update() + local time = time_global() + game_stats.update (delta, self.object) + -- апдейт погоды + self.weather_manager:update() + + self:check_detective_achievement() + self:check_mutant_hunter_achievement() + + --' Апдейт саундменеджера + xr_sound.update(self.object:id()) + + -- Обновление отключения ввода с клавиатуры. + if self.st.disable_input_time ~= nil and + game.get_game_time():diffSec(self.st.disable_input_time) >= self.st.disable_input_idle + then + level.enable_input() + self.st.disable_input_time = nil + end + + -- Апдейт прятание оружия игрока во время диалога + if self.object:is_talking() then + if self.weapon_hide_in_dialog == false then + self.object:hide_weapon() + printf("hiding weapon!!!") + self.weapon_hide_in_dialog = true + end + else + if self.weapon_hide_in_dialog == true then + printf("restoring weapon!!!") + self.object:restore_weapon() + self.weapon_hide_in_dialog = false + end + end + -- Апдейт прятание оружия игрока в зоне sr_no_weapon + if check_for_weapon_hide_by_zones() == true then + if self.weapon_hide == false then + printf("hiding weapon!!!") + self.object:hide_weapon() + self.weapon_hide = true + end + else + if self.weapon_hide == true then + printf("restoring weapon!!!") + self.object:restore_weapon() + self.weapon_hide = false + end + end + + -- обновление пси-антенны + if sr_psy_antenna.psy_antenna then + sr_psy_antenna.psy_antenna:update(delta) + end +--[[ + --' Вывод сообщения о большой радиации + if self.object.radiation >= 0.7 then + local hud = get_hud() + local custom_static = hud:GetCustomStatic("cs_radiation_danger") + if custom_static == nil then + hud:AddCustomStatic("cs_radiation_danger", true) + hud:GetCustomStatic("cs_radiation_danger"):wnd():TextControl():SetTextST("st_radiation_danger") + end + else + local hud = get_hud() + local custom_static = hud:GetCustomStatic("cs_radiation_danger") + if custom_static ~= nil then + hud:RemoveCustomStatic("cs_radiation_danger") + end + end +]]-- + + if self.bCheckStart then + printf("SET DEFAULT INFOS") + if not has_alife_info("global_dialogs") then + self.object:give_info_portion("global_dialogs") + end + if not has_alife_info("level_changer_icons") then + self.object:give_info_portion("level_changer_icons") + end + self.bCheckStart = false + +-- if self.actor_weapon_on_start == true then +-- db.actor:activate_slot(3) +-- self.actor_weapon_on_start = false +-- end + end +-- device().precache_frame == 0 and + if not self.loaded_slot_applied then + self.object:activate_slot(self.loaded_active_slot) + self.loaded_slot_applied = true + end + + xr_s.on_actor_update(delta) + + if(self.surge_manager) then + if(self.f_surge_manager_loaded ~= true) then + self.surge_manager:initialize() + self.f_surge_manager_loaded = true + end + if(self.surge_manager.levels_respawn[level.name()]) then + self.surge_manager:respawn_artefacts_and_replace_anomaly_zone() + end + self.surge_manager:update() + end + -- Апдейт доступности для симуляции. + simulation_objects.get_sim_obj_registry():update_avaliability(alife():actor()) + + -- Not used + --if not self.loaded then + -- get_console():execute("dump_infos") + -- self.loaded = true + --end + treasure_manager.get_treasure_manager():update() + + if not(primary_objects_filled) then + pda.fill_primary_objects() + primary_objects_filled = true + end + pda.fill_sleep_zones() + + SendScriptCallback("update") -- IX-Ray +end +---------------------------------------------------------------------------------------------------------------------- +function actor_binder:save(packet) + set_save_marker(packet, "save", false, "actor_binder") + object_binder.save(self, packet) + --' Сохраняем уровень сложности + packet:w_u8(level.get_game_difficulty()) + --' Сохраняем данные об отключенном вводе + if self.st.disable_input_time == nil then + packet:w_bool(false) + else + packet:w_bool(true) + utils.w_CTime(packet, self.st.disable_input_time) + end + xr_logic.pstor_save_all(self.object, packet) + self.weather_manager:save(packet) + release_body_manager.get_release_body_manager():save(packet) + self.surge_manager:save(packet) + sr_psy_antenna.save( packet ) + packet:w_bool(sim_board.get_sim_board().simulation_started) + + xr_sound.actor_save(packet) + packet:w_stringZ(tostring(self.last_level_name)) + xr_statistic.save(packet) + treasure_manager.get_treasure_manager():save(packet) + + local n = 0 + for k,v in pairs(db.script_ids) do + n = n + 1 + end + packet:w_u8(n) + for k,v in pairs (db.script_ids) do + packet:w_u16(k) + packet:w_stringZ(v) + end + task_manager.get_task_manager():save(packet) + +-- packet:w_bool(self.actor_weapon_on_start) + + packet:w_u8(self.object:active_slot()) + + + local deimos_exist = false + for k,v in pairs(db.zone_by_name) do + if(db.storage[v:id()] and db.storage[v:id()].active_scheme=="sr_deimos") then + deimos_exist = true + packet:w_bool(true) + packet:w_float(db.storage[v:id()].sr_deimos.intensity) + end + end + if not deimos_exist then + packet:w_bool(false) + end + + if self.last_detective_achievement_spawn_time == nil then + packet:w_bool(false) + else + packet:w_bool(true) + utils.w_CTime(packet, self.last_detective_achievement_spawn_time) + end + if self.last_mutant_hunter_achievement_spawn_time == nil then + packet:w_bool(false) + else + packet:w_bool(true) + utils.w_CTime(packet, self.last_mutant_hunter_achievement_spawn_time) + end + set_save_marker(packet, "save", true, "actor_binder") + + SendScriptCallback("save", packet) -- IX-Ray +end +---------------------------------------------------------------------------------------------------------------------- +function actor_binder:load(reader) + set_save_marker(reader, "load", false, "actor_binder") + object_binder.load(self, reader) + --' Загружаем уровень сложности + local game_difficulty = reader:r_u8() + printf("load game_difficulty %s", tostring(game_difficulty)) + get_console():execute("g_game_difficulty "..game_difficulty_by_num[game_difficulty]) + local stored_input_time = reader:r_u8() + if stored_input_time == true then + self.st.disable_input_time = utils.r_CTime(reader) + end + xr_logic.pstor_load_all(self.object, reader) + self.weather_manager:load(reader) + release_body_manager.get_release_body_manager():load(reader) +-- self.surge_manager:initialize() + self.surge_manager:load(reader) + self.f_surge_manager_loaded = true + sr_psy_antenna.load(reader) + sim_board.get_sim_board().simulation_started = reader:r_bool() + + xr_sound.actor_load(reader) + local n = reader:r_stringZ() + if(n~="nil") then + self.last_level_name = n + end + xr_statistic.load(reader) + treasure_manager.get_treasure_manager():load(reader) + n = reader:r_u8() + for i = 1,n do + db.script_ids[reader:r_u16()] = reader:r_stringZ() + end + + task_manager.get_task_manager():load(reader) + +-- self.actor_weapon_on_start = reader:r_bool() + + self.loaded_active_slot = reader:r_u8() + + self.loaded_slot_applied = false + + local b = reader:r_bool() + if(b) then + self.deimos_intensity = reader:r_float() + end + + local stored_achievement_time = reader:r_bool() + if stored_achievement_time == true then + self.last_detective_achievement_spawn_time = utils.r_CTime(reader) + end + stored_achievement_time = reader:r_bool() + if stored_achievement_time == true then + self.last_mutant_hunter_achievement_spawn_time = utils.r_CTime(reader) + end + set_save_marker(reader, "load", true, "actor_binder") + + SendScriptCallback("load", reader) -- IX-Ray +end + +--************************************************************* +--* Подспаун вещей в ящики * +--************************************************************* +local detective_achievement_items = { "medkit", + "antirad", + "bandage"} + +local mutant_hunter_achievement_items = { "ammo_5.45x39_ap", + "ammo_5.56x45_ap", + "ammo_9x39_ap", + "ammo_5.56x45_ap", + "ammo_12x76_zhekan"} + +local function spawn_achivement_items(items_table, count, inv_box_story_id) + local inv_box = alife():object(get_story_object_id(inv_box_story_id)) + for i = 1,count do + alife():create(items_table[math.random(#items_table)], + inv_box.position, + inv_box.m_level_vertex_id, + inv_box.m_game_vertex_id, + inv_box.id) + end +end + +function actor_binder:check_detective_achievement() + if not has_alife_info("detective_achievement_gained") then + return + end + if self.last_detective_achievement_spawn_time == nil then + self.last_detective_achievement_spawn_time = game.get_game_time() + end + if game.get_game_time():diffSec(self.last_detective_achievement_spawn_time) > 43200 then + spawn_achivement_items(detective_achievement_items, 4, "zat_a2_actor_treasure") + xr_effects.send_tip(db.actor, nil, {"st_detective_news","got_medicine"}) + self.last_detective_achievement_spawn_time = game.get_game_time() + end +end + +function actor_binder:check_mutant_hunter_achievement() + if not has_alife_info("mutant_hunter_achievement_gained") then + return + end + if self.last_mutant_hunter_achievement_spawn_time == nil then + self.last_mutant_hunter_achievement_spawn_time = game.get_game_time() + end + if game.get_game_time():diffSec(self.last_mutant_hunter_achievement_spawn_time) > 43200 then + spawn_achivement_items(mutant_hunter_achievement_items, 5, "jup_b202_actor_treasure") + xr_effects.send_tip(db.actor, nil, {"st_mutant_hunter_news","got_ammo"}) + self.last_mutant_hunter_achievement_spawn_time = game.get_game_time() + end + +end + +---------------------------------------------------------------------------------------------------------------------- + +function check_for_weapon_hide_by_zones() + for k,v in pairs(weapon_hide) do + if v == true then + return true + end + end + return false +end + +-- Weapon functions +function hide_weapon(zone_id) + printf("[WEAPON_CONTROL]:hiding weapon from zone [%s] in section [%s]!!!", zone_id, db.storage[zone_id].active_section) + weapon_hide[zone_id] = true +end + +function restore_weapon(zone_id) + printf("[WEAPON_CONTROL]:restoring weapon from zone [%s] in section [%s]!!!", zone_id, db.storage[zone_id].active_section) + weapon_hide[zone_id] = false +end + + + + + + + + + + diff --git a/gamedata/scripts/gulag_general.script b/gamedata/scripts/gulag_general.script new file mode 100644 index 0000000..98d56cf --- /dev/null +++ b/gamedata/scripts/gulag_general.script @@ -0,0 +1,1023 @@ +local ltx + +function load_job(smart) + printf("LOAD JOB %s", smart:name()) + -- Иерархия задается таблицей вида: +--[[ + self.jobs = { + { + _precondition_is_monster = true, + _precondition_function = function(se_obj) ... end, + _prior = ..., + jobs = { + _precondition_function = function(se_obj) ... end, + _prior = ... + job_id = ... + }, + { + _precondition_function = function(se_obj) ... end, + _prior = ... + job_id = ... + } + }, + { + _precondition_is_monster = false, + _prior = ... + job_id = ... + }, + + ... + {}, + } +]] + + local gname = smart:name() + local t + local board = sim_board.get_sim_board() + local job_table = {} + + + ltx = "" .. + + "[meet@generic_lager]\n".. + "close_distance = {=is_wounded} 0, 2\n".. + "close_anim = {=is_wounded} nil, {!is_squad_commander} nil, {=actor_has_weapon} threat_na, talk_default\n".. + "close_snd_hello = {=is_wounded} nil, {!is_squad_commander} nil, {=actor_enemy} nil, {=actor_has_weapon} meet_hide_weapon, meet_hello\n".. + "close_snd_bye = {=is_wounded} nil, {!is_squad_commander} nil, {=actor_enemy} nil, {=actor_has_weapon} nil, meet_hello\n".. + "close_victim = {=is_wounded} nil, {!is_squad_commander} nil, actor\n".. + "far_distance = 0\n".. + "far_anim = nil\n".. + "far_snd = nil\n".. + "far_victim = nil\n".. + "use = {=is_wounded} false, {!is_squad_commander} false, {=actor_enemy} false, {=has_enemy} false, {=actor_has_weapon} false, {=dist_to_actor_le(3)} true, false\n".. + "snd_on_use = {=is_wounded} nil, {=actor_enemy} nil, {!is_squad_commander} meet_use_no_talk_leader, {=actor_has_weapon} meet_use_no_weapon, {=has_enemy} meet_use_no_fight, {=dist_to_actor_le(3)} meet_use_no_default, nil\n".. + "meet_dialog = nil\n".. + "abuse = {=has_enemy} false, true\n".. + "trade_enable = true\n".. + "allow_break = true\n".. + "use_text = nil\n".. + + "[meet@generic_animpoint]\n".. + "close_distance = 0\n".. + "close_anim = {!is_squad_commander} nil, nil\n".. + "close_snd_hello = {!is_squad_commander} nil, nil\n".. + "close_snd_bye = {!is_squad_commander} nil, nil\n".. + "close_victim = {!is_squad_commander} nil, nil\n".. + "far_distance = 0\n".. + "far_anim = nil\n".. + "far_snd = nil\n".. + "far_victim = nil\n".. + "use = {=is_wounded} false, {!is_squad_commander} false, {=actor_enemy} false, {=has_enemy} false, {=actor_has_weapon} false, {=dist_to_actor_le(3)} true, false\n".. + "snd_on_use = {=is_wounded} nil, {=actor_enemy} nil, {!is_squad_commander} meet_use_no_talk_leader, {=actor_has_weapon} meet_use_no_weapon, {=has_enemy} meet_use_no_fight, {=dist_to_actor_le(3)} meet_use_no_default, nil\n".. + "meet_dialog = nil\n".. + "abuse = {=has_enemy} false, true\n".. + "trade_enable = true\n".. + "allow_break = true\n".. + "meet_on_talking = false\n".. + "use_text = nil\n" + + +--'------------------------------------------------------------------------ +--' РАБОТЫ СТАЛКЕРОВ +--'------------------------------------------------------------------------ + local stalker_jobs = {_precondition_is_monster = false, _prior = 60, jobs = {}} + + --'------------------------------------------------------------------------ + --' ОБЫЧНОЕ СОСТОЯНИЕ + --'------------------------------------------------------------------------ + --'------------------------------------------------------------------------ + --' GENERIC POINT + --'------------------------------------------------------------------------ + -- Проверяем наличие патрулей обхода в лагере. + local stalker_generic_point = {_prior = 3, jobs = {}} + for it=1,20 do + -- Необходимо вычитать количество работ из названия точки пути. + local name = gname.."_point_"..it + + -- добавляем должность + t = { _prior = 3, + job_id = { section = "logic@"..name, + job_type = "point_job" } + } + + + table.insert(stalker_generic_point.jobs, t) + + -- добавляем описание должности в лтх. + local job_ltx = "[logic@"..name.."]\n".. + "active = cover@"..name.."\n".. + + "[cover@"..name.."]\n".. + "meet = meet@generic_lager\n".. + "smart = "..gname.."\n".. + "radius_min = 3\n".. + "radius_max = 8\n".. + "use_attack_direction = false\n".. + "anim = {!npc_community(zombied)} sit, guard\n" + + if smart.def_restr ~= nil then + job_ltx = job_ltx .."out_restr = "..smart.def_restr.."\n" + end + + if smart.base_on_actor_control ~= nil and + smart.base_on_actor_control.ignore_zone ~= nil + then + job_ltx = job_ltx .."combat_ignore_cond = {=npc_in_zone(smart.base_on_actor_control.ignore_zone)} true \n".. + "combat_ignore_keep_when_attacked = true \n" + end + + ltx = ltx..job_ltx + end + table.insert(stalker_jobs.jobs, stalker_generic_point) + + --'------------------------------------------------------------------------ + --' SURGE + --'------------------------------------------------------------------------ + -- Проверяем наличие путей брожения внутри лагеря. + local stalker_surge = {_prior = 50, jobs = {}} + + it = 1 + while level.patrol_path_exists(gname.."_surge_"..it.."_walk") do + -- Необходимо вычитать количество работ из названия точки пути. + local way_name = gname.."_surge_"..it.."_walk" + + -- добавляем должность + t = { _prior = 50, + job_id = { section = "logic@"..way_name, + job_type = "path_job" }, + _precondition_params = { }, + _precondition_function = function(se_obj, smart, precond_params) + return xr_conditions.surge_started() + end + } + table.insert(stalker_surge.jobs, t) + + -- добавляем описание должности в лтх. + local job_ltx = "[logic@"..way_name.."]\n".. + "active = walker@"..way_name.."\n".. + + "[walker@"..way_name.."]\n".. + "sound_idle = state\n".. + "use_camp = true\n".. + "meet = meet@generic_lager\n".. + "path_walk = surge_"..it.."_walk\n".. + "def_state_standing = guard\n".. + "def_state_moving = patrol\n" + + if level.patrol_path_exists(gname.."_surge_"..it.."_look") then + job_ltx = job_ltx.."path_look = surge_"..it.."_look\n" + end + + if smart.def_restr ~= nil then + job_ltx = job_ltx .."out_restr = "..smart.def_restr.."\n" + end + + if smart.base_on_actor_control ~= nil and + smart.base_on_actor_control.ignore_zone ~= nil and + xr_gulag.job_in_restrictor(smart, smart.base_on_actor_control.ignore_zone, way_name) + then + job_ltx = job_ltx .."combat_ignore_cond = {=npc_in_zone(smart.base_on_actor_control.ignore_zone)} true \n".. + "combat_ignore_keep_when_attacked = true \n" + end + + ltx = ltx..job_ltx + it = it + 1 + end + if it > 1 then table.insert(stalker_jobs.jobs, stalker_surge) end + + -- START IX-Ray + --'------------------------------------------------------------------------ + --' kamp + --'------------------------------------------------------------------------ + local stalker_kamp = {_prior = 14, jobs = {}} + it = 1 + while level.patrol_path_exists(gname.."_kamp_"..it) do + -- Необходимо вычитать количество работ из названия точки пути. + local way_name = gname.."_kamp_"..it + local job_count = 5 + + for i = 1, job_count do + -- добавляем должность + t = { _prior = 10+i, + job_id = { section = "logic@"..way_name, + job_type = "point_job" }, + _precondition_params = { }, + _precondition_function = function(se_obj, smart, precond_params) + if smart.smart_alarm_time == nil then + return true + end + + if smart.safe_restr == nil then + return true + end + + if precond_params.is_safe_job == nil then + precond_params.is_safe_job = xr_gulag.job_in_restrictor(smart, smart.safe_restr, way_name) + end + + return precond_params.is_safe_job ~= false + end + } + table.insert(stalker_kamp.jobs, t) + end + -- добавляем описание должности в лтх. + local job_ltx = "[logic@"..way_name.."]\n".. + "active = kamp@"..way_name.."\n".. + + "[kamp@"..way_name.."]\n".. + "meet = meet@generic_lager\n".. + "center_point = kamp_"..it.."\n" + + if smart.def_restr ~= nil then + job_ltx = job_ltx .."out_restr = "..smart.def_restr.."\n" + end + + if smart.base_on_actor_control ~= nil and + smart.base_on_actor_control.ignore_zone ~= nil and + xr_gulag.job_in_restrictor(smart, smart.base_on_actor_control.ignore_zone, way_name) + then + job_ltx = job_ltx .."combat_ignore_cond = {=npc_in_zone(smart.base_on_actor_control.ignore_zone)} true \n".. + "combat_ignore_keep_when_attacked = true \n" + end + + ltx = ltx..job_ltx + it = it + 1 + end + if it > 1 then table.insert(stalker_jobs.jobs, stalker_kamp) end + -- END IX-Ray + + --'------------------------------------------------------------------------ + --' SLEEP + --'------------------------------------------------------------------------ + -- Проверяем наличие путей для сна. + local stalker_sleep = {_prior = 10, jobs = {}} + it = 1 + while level.patrol_path_exists(gname.."_sleep_"..it) do + -- Необходимо вычитать количество работ из названия точки пути. + local way_name = gname.."_sleep_"..it + + -- добавляем должность + t = { _prior = 10, + job_id = { section = "logic@"..way_name, + job_type = "path_job" }, + _precondition_params = { }, + _precondition_function = function(se_obj, smart, precond_params) + if se_obj:community() == "zombied" then + return false + end + + + if not in_time_interval(21,7) then + return false + end + + if smart.smart_alarm_time == nil then + return true + end + + if smart.safe_restr == nil then + return true + end + + if precond_params.is_safe_job == nil then + precond_params.is_safe_job = xr_gulag.job_in_restrictor(smart, smart.safe_restr, way_name) + end + + return precond_params.is_safe_job ~= false + end + } + table.insert(stalker_sleep.jobs, t) + + -- добавляем описание должности в лтх. + local job_ltx = "[logic@"..way_name.."]\n".. + "active = sleeper@"..way_name.."\n".. + + "[sleeper@"..way_name.."]\n".. + "path_main = sleep_"..it.."\n" + + if smart.safe_restr ~= nil and xr_gulag.job_in_restrictor(smart, smart.safe_restr, way_name) then + job_ltx = job_ltx .. "invulnerable = {=npc_in_zone(smart.safe_restr)} true\n" + end + + if smart.def_restr ~= nil then + job_ltx = job_ltx .."out_restr = "..smart.def_restr.."\n" + end + + if smart.base_on_actor_control ~= nil and + smart.base_on_actor_control.ignore_zone ~= nil and + xr_gulag.job_in_restrictor(smart, smart.base_on_actor_control.ignore_zone, way_name) + then + job_ltx = job_ltx .."combat_ignore_cond = {=npc_in_zone(smart.base_on_actor_control.ignore_zone)} true \n".. + "combat_ignore_keep_when_attacked = true \n" + end + + ltx = ltx..job_ltx + it = it + 1 + end + if it > 1 then table.insert(stalker_jobs.jobs, stalker_sleep) end + + --'------------------------------------------------------------------------ + --' COLLECTOR + --'------------------------------------------------------------------------ + -- Проверяем наличие путей брожения внутри лагеря. + local stalker_collector = {_prior = 25, jobs = {}} + it = 1 + while level.patrol_path_exists(gname.."_collector_"..it.."_walk") do + -- Необходимо вычитать количество работ из названия точки пути. + local way_name = gname.."_collector_"..it.."_walk" + + -- добавляем должность + t = { _prior = 25, + job_id = { section = "logic@"..way_name, + job_type = "path_job" }, + _precondition_params = { }, + _precondition_function = function(se_obj, smart, precond_params) + if se_obj:community() == "zombied" then + return false + end + + -- Проверяем, что у НПС есть детектор. + local st = db.storage[se_obj.id] + + if st == nil then + return false + end + + local npc = st.object + + if npc == nil then + return false + end + + local detectors = { "detector_simple", "detector_advanced", "detector_elite", "detector_scientific" } + + for k,v in pairs(detectors) do + local obj = npc:object(v) + if obj ~= nil then + return true + end + end + return false + end + } + table.insert(stalker_collector.jobs, t) + + -- добавляем описание должности в лтх. + local job_ltx = "[logic@"..way_name.."]\n".. + "active = walker@"..way_name.."\n".. + + "[walker@"..way_name.."]\n".. + "sound_idle = state\n".. + "meet = meet@generic_lager\n".. + "path_walk = collector_"..it.."_walk\n".. + "def_state_standing = guard\n".. + "def_state_moving = patrol\n" + + if level.patrol_path_exists(gname.."_collector_"..it.."_look") then + job_ltx = job_ltx.."path_look = collector_"..it.."_look\n" + end + + if smart.safe_restr ~= nil and xr_gulag.job_in_restrictor(smart, smart.safe_restr, way_name) then + job_ltx = job_ltx .. "invulnerable = {=npc_in_zone(smart.safe_restr)} true\n" + end + + if smart.def_restr ~= nil then + job_ltx = job_ltx .."out_restr = "..smart.def_restr.."\n" + end + + if smart.base_on_actor_control ~= nil and + smart.base_on_actor_control.ignore_zone ~= nil and + xr_gulag.job_in_restrictor(smart, smart.base_on_actor_control.ignore_zone, way_name) + then + job_ltx = job_ltx .."combat_ignore_cond = {=npc_in_zone(smart.base_on_actor_control.ignore_zone)} true \n".. + "combat_ignore_keep_when_attacked = true \n" + end + + ltx = ltx..job_ltx + it = it + 1 + end + if it > 1 then table.insert(stalker_jobs.jobs, stalker_collector) end + + --'------------------------------------------------------------------------ + --' WALKER + --'------------------------------------------------------------------------ + -- Проверяем наличие путей брожения внутри лагеря. + local stalker_walker = {_prior = 15, jobs = {}} + it = 1 + + while level.patrol_path_exists(gname.."_walker_"..it.."_walk") do + + -- Необходимо вычитать количество работ из названия точки пути. + local way_name = gname.."_walker_"..it.."_walk" + + -- добавляем должность + t = { _prior = 15, + job_id = { section = "logic@"..way_name, + job_type = "path_job" }, + _precondition_params = { }, + _precondition_function = function(se_obj, smart, precond_params) + if smart.smart_alarm_time == nil then + return true + end + + if smart.safe_restr == nil then + return true + end + + if precond_params.is_safe_job == nil then + precond_params.is_safe_job = xr_gulag.job_in_restrictor(smart, smart.safe_restr, way_name) + end + + return precond_params.is_safe_job ~= false + end + } + table.insert(stalker_walker.jobs, t) + + -- добавляем описание должности в лтх. + local job_ltx = "[logic@"..way_name.."]\n".. + "active = walker@"..way_name.."\n".. + + "[walker@"..way_name.."]\n".. + "sound_idle = state\n".. + "meet = meet@generic_lager\n".. + "path_walk = walker_"..it.."_walk\n".. + "def_state_standing = guard\n".. + "def_state_moving = patrol\n" + + if level.patrol_path_exists(gname.."_walker_"..it.."_look") then + job_ltx = job_ltx.."path_look = walker_"..it.."_look\n" + end + + if smart.safe_restr ~= nil and xr_gulag.job_in_restrictor(smart, smart.safe_restr, way_name) then + job_ltx = job_ltx .. "invulnerable = {=npc_in_zone(smart.safe_restr)} true\n" + end + + if smart.def_restr ~= nil then + job_ltx = job_ltx .."out_restr = "..smart.def_restr.."\n" + end + + if smart.base_on_actor_control ~= nil and + smart.base_on_actor_control.ignore_zone ~= nil and + xr_gulag.job_in_restrictor(smart, smart.base_on_actor_control.ignore_zone, way_name) + then + job_ltx = job_ltx .."combat_ignore_cond = {=npc_in_zone(smart.base_on_actor_control.ignore_zone)} true \n".. + "combat_ignore_keep_when_attacked = true \n" + end + + ltx = ltx..job_ltx + it = it + 1 + end + if it > 1 then table.insert(stalker_jobs.jobs, stalker_walker) end + + --'------------------------------------------------------------------------ + --' PATROL + --'------------------------------------------------------------------------ + -- Проверяем наличие патрулей обхода в лагере. + local stalker_patrol = {_prior = 20, jobs = {}} + it = 1 + while level.patrol_path_exists(gname.."_patrol_"..it.."_walk") do + -- Необходимо вычитать количество работ из названия точки пути. + local way_name = gname.."_patrol_"..it.."_walk" + local ptr = patrol(way_name) + local wp_prop = utils.parse_waypoint_data(way_name, ptr:flags(0), ptr:name(0)) + local job_count = 3 + if wp_prop.count ~= nil then + job_count = wp_prop.count + end + + for i = 1, job_count do + -- добавляем должность + t = { _prior = 20, + job_id = { section = "logic@"..way_name, + job_type = "path_job" }, + _precondition_params = { }, + _precondition_function = function(se_obj, smart, precond_params) + if se_obj:community() == "zombied" then + return false + end + + + if smart.smart_alarm_time == nil then + return true + end + + if smart.safe_restr == nil then + return true + end + + if precond_params.is_safe_job == nil then + precond_params.is_safe_job = xr_gulag.job_in_restrictor(smart, smart.safe_restr, way_name) + end + + return precond_params.is_safe_job ~= false + end + } + table.insert(stalker_patrol.jobs, t) + end + + -- добавляем описание должности в лтх. + local job_ltx = "[logic@"..way_name.."]\n".. + "active = patrol@"..way_name.."\n".. + + "[patrol@"..way_name.."]\n".. + "meet = meet@generic_lager\n".. + "formation = back\n".. + "path_walk = patrol_"..it.."_walk\n".. + "on_signal = end| %=search_gulag_job%\n" + + if level.patrol_path_exists(gname.."_patrol_"..it.."_look") then + job_ltx = job_ltx.."path_look = patrol_"..it.."_look\n" + end + + if smart.safe_restr ~= nil and xr_gulag.job_in_restrictor(smart, smart.safe_restr, way_name) then + job_ltx = job_ltx .. "invulnerable = {=npc_in_zone(smart.safe_restr)} true\n" + end + + if smart.def_restr ~= nil then + job_ltx = job_ltx .."out_restr = "..smart.def_restr.."\n" + end + + ltx = ltx..job_ltx + it = it + 1 + end + if it > 1 then table.insert(stalker_jobs.jobs, stalker_patrol) end + + + --'------------------------------------------------------------------------ + --' XR_ANIMPOINT + --'------------------------------------------------------------------------ + -- Проверяем наличие патрулей обхода в лагере. + it = 1 + while se_smart_cover.registered_smartcovers[gname.."_animpoint_"..it] ~= nil do + -- Необходимо вычитать количество работ из названия точки пути. + local smartcover_name = gname.."_animpoint_"..it + + -- добавляем должность + t = { _prior = 15, + job_id = { section = "logic@"..smartcover_name, + job_type = "smartcover_job" }, + _precondition_params = { }, + _precondition_function = function(se_obj, smart, precond_params) + --if smart.smart_alarm_time == nil then + --return true + --end + + --if smart.safe_restr == nil then + -- return true + --end + + if se_obj:community() == "zombied" then + return false + end + + --if precond_params.is_safe_job == nil then + -- precond_params.is_safe_job = xr_gulag.job_in_restrictor(smart, smart.safe_restr, way_name) + --end + + --return precond_params.is_safe_job ~= false + return true + end + + } + table.insert(stalker_jobs.jobs, t) + + -- добавляем описание должности в лтх. + local job_ltx = "[logic@"..smartcover_name.."]\n".. + "active = animpoint@"..smartcover_name.."\n".. + + "[animpoint@"..smartcover_name.."]\n".. + "meet = meet@generic_animpoint\n".. + "cover_name = "..smartcover_name.."\n" + + if smart.def_restr ~= nil then + job_ltx = job_ltx .."out_restr = "..smart.def_restr.."\n" + end + + if smart.safe_restr ~= nil and xr_gulag.job_in_restrictor(smart, smart.safe_restr, way_name) then + job_ltx = job_ltx .. "invulnerable = {=npc_in_zone(smart.safe_restr)} true\n" + end + + if smart.base_on_actor_control ~= nil and + smart.base_on_actor_control.ignore_zone ~= nil + then + job_ltx = job_ltx .."combat_ignore_cond = {=npc_in_zone(smart.base_on_actor_control.ignore_zone)} true \n".. + "combat_ignore_keep_when_attacked = true \n" + end + + ltx = ltx..job_ltx + it = it + 1 + end + + + --'------------------------------------------------------------------------ + --' GUARD + --'------------------------------------------------------------------------ + -- Проверяем наличие часовых в лагере. + local stalker_guard = {_prior = 25, jobs = {}} + it = 1 + while level.patrol_path_exists(gname.."_guard_"..it.."_walk") do + -- Необходимо вычитать количество работ из названия точки пути. + local way_name = gname.."_guard_"..it.."_walk" + --local guard_timeout = tostring(math.random(180,300))*1000 + local guard_timeout = tostring(math.random(20,21))*1000 + + -- добавляем должность + t = { _prior = 25, + job_id = { section = "logic@"..way_name, + job_type = "path_job" }, + _precondition_params = { }, + _precondition_function = function(se_obj, smart, precond_params) + if smart.smart_alarm_time == nil then + return true + end + + if smart.safe_restr == nil then + return true + end + + if precond_params.is_safe_job == nil then + precond_params.is_safe_job = xr_gulag.job_in_restrictor(smart, smart.safe_restr, way_name) + end + + return precond_params.is_safe_job ~= false + end + } + table.insert(stalker_guard.jobs, t) + + -- добавляем описание должности в лтх. + local job_ltx = "[logic@"..way_name.."]\n".. + "active = walker@"..way_name.."\n".. + + "[walker@"..way_name.."]\n".. + "meet = meet@generic_lager\n".. + "path_walk = guard_"..it.."_walk\n".. + "path_look = guard_"..it.."_look\n" + + if smart.safe_restr ~= nil and xr_gulag.job_in_restrictor(smart, smart.safe_restr, way_name) then + job_ltx = job_ltx .. "invulnerable = {=npc_in_zone(smart.safe_restr)} true\n" + end + + if smart.def_restr ~= nil then + job_ltx = job_ltx .."out_restr = "..smart.def_restr.."\n" + end + + local job1_ltx ="[walker1@"..way_name.."]\n".. + "meet = meet@generic_lager\n".. + "path_walk = guard_"..it.."_walk\n".. + "path_look = guard_"..it.."_look\n".. + "def_state_standing = wait_na\n".. + "on_info = {!is_obj_on_job(logic@follower_"..way_name..":3)} walker@"..way_name.."\n".. + "on_info2 = {=distance_to_obj_on_job_le(logic@follower_"..way_name..":3)} remark@"..way_name.."\n" + + if smart.safe_restr ~= nil and xr_gulag.job_in_restrictor(smart, smart.safe_restr, way_name) then + job1_ltx = job1_ltx .. "invulnerable = {=npc_in_zone(smart.safe_restr)} true\n" + end + + if smart.def_restr ~= nil then + job1_ltx = job1_ltx .."out_restr = "..smart.def_restr.."\n" + end + + job1_ltx = job1_ltx .. "[remark@"..way_name.."]\n".. + "anim = wait_na\n".. + "target = logic@follower_"..way_name.."\n" + + if smart.def_restr ~= nil then + job1_ltx = job1_ltx .."out_restr = "..smart.def_restr.."\n" + end + + --' настройки фоловера для каждого гварда!!!!!!!!!!!!!!!!! + t = { _prior = 24, + job_id = { section = "logic@follower_"..way_name, + job_type = "path_job" }, + _precondition_params = { changing_job = "logic@"..way_name }, + _precondition_function = function(se_obj, smart, precond_params, npc_info) + return npc_info.need_job == precond_params.changing_job + end } + table.insert(stalker_guard.jobs, t) + + local follower_ltx = "[logic@follower_"..way_name.."]\n".. + "active = walker@follow_"..way_name.."\n".. + + "[walker@follow_"..way_name.."]\n".. + "meet = meet@generic_lager\n".. + "path_walk = guard_"..it.."_walk\n".. + "path_look = guard_"..it.."_look\n".. + "on_info = {=distance_to_obj_on_job_le(logic@"..way_name..":3)} remark@follower_"..way_name.."\n" + + if smart.def_restr ~= nil then + follower_ltx = follower_ltx .."out_restr = "..smart.def_restr.."\n" + end + + follower_ltx = follower_ltx .. "[remark@follower_"..way_name.."]\n".. + "anim = wait_na\n".. + "target = logic@"..way_name.."\n".. + "on_timer = 2000 | %=switch_to_desired_job%\n" + + if smart.def_restr ~= nil then + follower_ltx = follower_ltx .."out_restr = "..smart.def_restr.."\n" + end + + ltx = ltx..job_ltx..job1_ltx..follower_ltx + it = it + 1 + end + if it > 1 then table.insert(stalker_jobs.jobs, stalker_guard) end + + + + + + + + --'------------------------------------------------------------------------ + --' SNIPER + --'------------------------------------------------------------------------ + -- Проверяем наличие снайперов в лагере. + local stalker_def_sniper = {_prior = 30, jobs = {}} + it = 1 + while level.patrol_path_exists(gname.."_sniper_"..it.."_walk") do + -- Необходимо вычитать количество работ из названия точки пути. + local way_name = gname.."_sniper_"..it.."_walk" + local ptr = patrol(way_name) + local wp_prop = utils.parse_waypoint_data(way_name, ptr:flags(0), ptr:name(0)) + local state = "hide" + + if wp_prop.state ~= nil then + if wp_prop.state == "stand" then + state = "threat" + end + end + -- добавляем должность + t = { _prior = 30, + job_id = { section = "logic@"..way_name, + job_type = "path_job" }, + _precondition_params = { way_name = way_name }, + _precondition_function = function(se_obj, smart, precond_params) + if se_obj:community() == "zombied" then + return false + end + + return combat_restrictor.accessible_job(se_obj, precond_params.way_name) + end + } + table.insert(stalker_def_sniper.jobs, t) + + -- добавляем описание должности в лтх. + local job_ltx = "[logic@"..way_name.."]\n".. + "active = camper@"..way_name.."\n".. + + "[camper@"..way_name.."]\n".. + "meet = meet@generic_lager\n".. + "path_walk = sniper_"..it.."_walk\n".. + "path_look = sniper_"..it.."_look\n".. + "sniper = true\n".. + "def_state_campering ="..state.."\n".. + "def_state_campering_fire ="..state.."_fire\n" + + if smart.def_restr ~= nil then + job_ltx = job_ltx .."out_restr = "..smart.def_restr..","..combat_restrictor.get_job_restrictor(way_name).."\n" + end + + ltx = ltx..job_ltx + it = it + 1 + end + if it > 1 then table.insert(stalker_jobs.jobs, stalker_def_sniper) end + + + --'------------------------------------------------------------------------ + --' CAMPER + --'------------------------------------------------------------------------ + -- Проверяем возможность стать кемпером :-) + local stalker_def_camper = {_prior = 45, jobs = {}} + it = 1 + while level.patrol_path_exists(gname.."_camper_"..it.."_walk") do + -- Необходимо вычитать количество работ из названия точки пути. + local way_name = gname.."_camper_"..it.."_walk" + local ptr = patrol(way_name) + local wp_prop = utils.parse_waypoint_data(way_name, ptr:flags(0), ptr:name(0)) + local state = "hide" + local radius = 0 + if wp_prop.state ~= nil then + if wp_prop.state == "stand" then + state = "threat" + end + end + if wp_prop.radius ~= nil then + radius = wp_prop.radius + end + -- добавляем должность + t = { _prior = 45, + job_id = { section = "logic@"..way_name, + job_type = "path_job" }, + _precondition_params = { way_name = way_name }, + _precondition_function = function(se_obj, smart, precond_params) + return combat_restrictor.accessible_job(se_obj, precond_params.way_name) + end + } + table.insert(stalker_def_camper.jobs, t) + + -- добавляем описание должности в лтх. + local job_ltx = "[logic@"..way_name.."]\n".. + "active = camper@"..way_name.."\n".. + + "[camper@"..way_name.."]\n".. + "meet = meet@generic_lager\n".. + "radius = "..tostring(radius).."\n".. + "path_walk = camper_"..it.."_walk\n".. + "def_state_moving = rush\n".. + "def_state_campering ="..state.."\n".. + "def_state_campering_fire ="..state.."_fire\n" + + if level.patrol_path_exists(gname.."_camper_"..it.."_look") then + job_ltx = job_ltx.."path_look = camper_"..it.."_look\n" + end + + if smart.def_restr ~= nil then + job_ltx = job_ltx .."out_restr = "..smart.def_restr..","..combat_restrictor.get_job_restrictor(way_name).."\n" + end + + ltx = ltx..job_ltx + it = it + 1 + end + if it > 1 then table.insert(stalker_jobs.jobs, stalker_def_camper) end + + + table.insert(job_table, stalker_jobs) + + + + + + + + + + + + + + + +--'------------------------------------------------------------------------ +--' РАБОТЫ МОНСТРОВ +--'------------------------------------------------------------------------ + local monster_jobs = {_precondition_is_monster = true, _prior = 50, jobs = {}} + + --'------------------------------------------------------------------------ + --' MOB HOME + --'------------------------------------------------------------------------ + + for it = 1,20 do + -- Необходимо вычитать количество работ из названия точки пути. + local name = gname.."_home_"..it + local home_min_radius = 10 + local home_mid_radius = 20 + local home_max_radius = 70 + + t = { _prior = 40, + job_id = { section = "logic@"..name, + job_type = "point_job" } + } + table.insert(monster_jobs.jobs, t) + + -- добавляем описание должности в лтх. + local job_ltx = "[logic@"..name.."]\n".. + "active = mob_home@"..name.."\n".. + + "[mob_home@"..name.."]\n".. + "gulag_point = true\n".. + "home_min_radius = "..home_min_radius.."\n".. + "home_mid_radius = "..home_mid_radius.."\n".. + "home_max_radius = "..home_max_radius.."\n" + + if smart.def_restr ~= nil then + job_ltx = job_ltx .."out_restr = "..smart.def_restr.."\n" + end + + ltx = ltx..job_ltx + end + + + + table.insert(job_table, monster_jobs) + + + + +--'------------------------------------------------------------------------ +--' ЭКСКЛЮЗИВНЫЕ РАБОТЫ +--'------------------------------------------------------------------------ + local smart_ini = smart.ini + if smart_ini:section_exist(smart_terrain.SMART_TERRAIN_SECT) then + if smart_ini:section_exist("exclusive") then + local n = smart_ini:line_count("exclusive") + local id, value = "","" + for i=0,n-1 do + result, id, value = smart_ini:r_line("exclusive",i,"","") + add_exclusive_job("exclusive", id, smart_ini, job_table) + end + else + local num = 1 + while smart_ini:line_exist(smart_terrain.SMART_TERRAIN_SECT, "work"..num) do + add_exclusive_job(smart_terrain.SMART_TERRAIN_SECT, "work"..num, smart_ini, job_table) + num = num + 1 + end + end + end + + + return job_table +end + +local job_type_by_scheme = { + ["walker"] = "path_job", + ["camper"] = "path_job", + ["patrol"] = "path_job", + ["animpoint"] = "smartcover_job", + ["smartcover"] = "smartcover_job", + ["remark"] = "point_job", + ["cover"] = "point_job", + ["sleeper"] = "path_job", + ["mob_walker"] = "path_job", + ["mob_home"] = "path_job", + ["mob_jump"] = "point_job", + ["companion"] = "point_job" +} + +function add_exclusive_job(sect, work_field, smart_ini, job_table) + local work = utils.cfg_get_string(smart_ini, sect, work_field, nil, false, "") + if work == nil then return end + local ini_path = "scripts\\"..work -- IX-Ray + + local fs = getFS() + if fs:exist("$game_config$",ini_path) == nil then + abort("there is no configuration file [%s]", ini_path) + end + local job_ini_file = ini_file(ini_path) + local job_online = utils.cfg_get_string(job_ini_file, "logic@"..work_field, "job_online", db.actor ,false , "", nil) + + -- добавляем возможность указать приоритет уникальной работы в секции логики.(по дефолту её приоритет равен 45-ти) + local new_prior = utils.cfg_get_number(job_ini_file, "logic@"..work_field, "prior", nil , false, 45) + + -- Проверяем есть ли у работы поле suitable. Если есть, нам нужно добавить прекондишн + local job_suitable = utils.cfg_get_string(job_ini_file, "logic@"..work_field, "suitable", smart, false, "") + local is_monster = utils.cfg_get_bool(job_ini_file, "logic@"..work_field, "monster_job", smart, false, false) + + local active_section = utils.cfg_get_string(job_ini_file, "logic@"..work_field, "active", smart, false, "") + local scheme = utils.get_scheme_by_section(active_section) + local job_type = job_type_by_scheme[scheme] + if scheme == "mob_home" then + if utils.cfg_get_bool(job_ini_file, active_section, "gulag_point", smart, false, false) then + job_type = "point_job" + end + end + + if job_suitable == nil then + local t = { _prior = new_prior, + _precondition_is_monster = is_monster, + job_id = { section = "logic@"..work_field, + ini_path = ini_path, + online = job_online, + ini_file = job_ini_file, + job_type = job_type } + } + table.insert(job_table, t) + return + end + + local condlist = xr_logic.parse_condlist(smart, "logic@"..work_field, "suitable", job_suitable) + local t = { _prior = new_prior, + _precondition_is_monster = is_monster, + job_id = { section = "logic@"..work_field, + ini_path = ini_path, + ini_file = job_ini_file, + online = job_online, + job_type = job_type }, + _precondition_params = { condlist = condlist }, + _precondition_function = function(se_obj, smart, precond_params) + local result = xr_logic.pick_section_from_condlist(db.actor, se_obj, precond_params.condlist) + if result == "false" or result == nil then + return false + end + return true + end + } + table.insert(job_table, t) + + -- Затычка для оффлайна, когда невозможно проверить прекондишн + t = { _prior = -1, + _precondition_is_monster = is_monster, + job_id = { section = "logic@"..work_field, + ini_file = job_ini_file, + job_type = job_type } + } + + table.insert(job_table, t) +end + + +-------------------------------------------------------------------------- +-- Dynamic ltx +-------------------------------------------------------------------------- +function load_ltx(gname) + return ltx +end diff --git a/gamedata/scripts/ixray_global.script b/gamedata/scripts/ixray_global.script new file mode 100644 index 0000000..3ad1582 --- /dev/null +++ b/gamedata/scripts/ixray_global.script @@ -0,0 +1,49 @@ +math.randomseed(time_global()) + +_G.isMarshal = marshal ~= nil +_G.isLfs = lfs ~= nil + +_G.bit_and = bit.band +_G.bit_or = bit.bor +_G.bit_xor = bit.bxor +_G.bit_not = bit.bnot + +--// Some X-Ray block +_G.DebugLog = false + +_G.log = function (str) + if DebugLog then + SemiLog(str) + end + if DebuggerMode then + LuaPanda.printToVSCode(str,1,2) + end +end + +function register(object_factory) + class_registrator.cs_register(object_factory, "CCar", "se_car.se_car", "SCRPTCAR", "car_s") +end + +_G.convert_class_name = function(obj) + if obj then + local name = class_info(obj).name + + if name == "game_object" then + return "client" + else + return "server" + end + else + return "nil" + end +end + +_G.g_EnablePrintfXRScript = false + +-- используется для выявления сигнатур функций которые заложены в xr_conditions +_G.printf_xrscript = function(fmt, ...) + if g_EnablePrintfXRScript then + log(debug.traceback(1)) + printf(fmt, ...) + end +end diff --git a/gamedata/scripts/ixray_system/dynamic_callbacks.lua b/gamedata/scripts/ixray_system/dynamic_callbacks.lua new file mode 100644 index 0000000..7b733c1 --- /dev/null +++ b/gamedata/scripts/ixray_system/dynamic_callbacks.lua @@ -0,0 +1,47 @@ +local intercepts = +{ + save = {}, + load = {}, + update = {}, + + save_state = {}, + load_state = {} +} + +function RegisterScriptCallback(name, func_or_userdata) + if (func_or_userdata == nil) then + SemiLog("! func_or_userdata == nil") + callstack() + end + + if (name == nil) then + SemiLog("! name == nil") + callstack() + end + if (intercepts == nil) then + SemiLog("! intercepts == nil") + callstack() + end + + if (intercepts[name]) then + intercepts[name][func_or_userdata] = true + end +end + +function UnregisterScriptCallback(name, func_or_userdata) + if (intercepts[name]) then + intercepts[name][func_or_userdata] = nil + end +end + +function SendScriptCallback(name,...) + if (intercepts[name]) then + for func_or_userdata,v in pairs(intercepts[name]) do + if (type(func_or_userdata) == "function") then + func_or_userdata(...) + elseif (func_or_userdata[name]) then + func_or_userdata[name](func_or_userdata,...) + end + end + end +end \ No newline at end of file diff --git a/gamedata/scripts/ixray_system/global.lua b/gamedata/scripts/ixray_system/global.lua new file mode 100644 index 0000000..0cba33a --- /dev/null +++ b/gamedata/scripts/ixray_system/global.lua @@ -0,0 +1,34 @@ +--// General +jit.opt.start(2) + +string.gfind = string.gmatch +math.mod = math.fmod + +--// LuaPandas +DebuggerMode = false + +function debug_jit_off() + if DebuggerMode then + if jit then jit.off() end + end +end + +function debug_jit_on() + if DebuggerMode then + if jit then jit.on() end + end +end + +function debugger_attach() + if DebuggerMode then + debug_jit_off() + LuaPanda.reConnect() + debug_jit_on() + else + debug_jit_off() + SemiLog('LuaPanda starting...') + LuaPanda.start("127.0.0.1", 8818) + DebuggerMode = true + debug_jit_on() + end +end \ No newline at end of file diff --git a/gamedata/scripts/ixray_system/luapanda.lua b/gamedata/scripts/ixray_system/luapanda.lua new file mode 100644 index 0000000..5d1a871 --- /dev/null +++ b/gamedata/scripts/ixray_system/luapanda.lua @@ -0,0 +1,3626 @@ +-- Tencent is pleased to support the open source community by making LuaPanda available. +-- Copyright (C) 2019 THL A29 Limited, a Tencent company. All rights reserved. +-- Licensed under the BSD 3-Clause License (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at +-- https://opensource.org/licenses/BSD-3-Clause +-- Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + +-- API: +-- LuaPanda.printToVSCode(logStr, printLevel, type) +-- 打印日志到VSCode Output下 LuaPanda Debugger 中 +-- @printLevel: debug(0)/info(1)/error(2) 这里的日志等级需高于launch.json中配置等级日志才能输出 (可选参数,默认0) +-- @type(可选参数,默认0): 0:VSCode output console 1:VSCode tip 2:VSCode debug console + +-- LuaPanda.BP() +-- 强制打断点,可以在协程中使用。建议使用以下写法: +-- local ret = LuaPanda and LuaPanda.BP and LuaPanda.BP(); +-- 如果成功加入断点ret返回true,否则是nil + +-- LuaPanda.getInfo() +-- 返回获取调试器信息。包括版本号,是否使用lib库,系统是否支持loadstring(load方法)。返回值类型string, 推荐在调试控制台中使用。 + +-- LuaPanda.testBreakpoint() +-- 测试断点,用于分析路径错误导致断点无法停止的情况。测试方法是 +-- 1. launch.json 中开启 stopOnEntry, 或者在代码中加入LuaPanda.BP()。 +-- 2. 运行调试器和 lua 进程,当停止在 stopOnEntry 或者 LuaPanda.BP() 时在调试控制台输入 LuaPanda.testBreakpoint() +-- 3. 根据提示更新断点后再次输入 LuaPanda.testBreakpoint()。此时系统会输出一些提示,帮助用户分析断点可能无法停止的原因。 + +-- LuaPanda.doctor() +-- 返回对当前环境的诊断信息,提示可能存在的问题。返回值类型string, 推荐在调试控制台中使用。 + +-- LuaPanda.getBreaks() +-- 获取断点信息,推荐在调试控制台中使用。 + +-- LuaPanda.serializeTable(table) +-- 把table序列化为字符串,返回值类型是string。 + +-- LuaPanda.stopAttach() +-- 断开连接,停止attach,本次被调试程序运行过程无法再次进行attach连接。 + +-- 其他说明: +-- 关于真机调试,首次使用真机调试时要注意下方"用户设置项"中的配置 +-- 1. 确定 attach 开关打开: openAttachMode = true; 这样可以避免先启动手机app之后启动调试器无法连接。 +-- 2. 把连接时间放长: connectTimeoutSec 设置为 0.5 或者 1。首次尝试真机调试时这个值可以设置大一点,之后再根据自己的网络状况向下调整。 +-- 调试方法可以参考 github 文档 + +--用户设置项 +local openAttachMode = true; --是否开启attach模式。attach模式开启后可以在任意时刻启动vscode连接调试。缺点是没有连接调试时也会略降低lua执行效率(会不断进行attach请求) +local attachInterval = 1; --attach间隔时间(s) +local connectTimeoutSec = 0.005; --lua进程作为Client时, 连接超时时间, 单位s. 时间过长等待attach时会造成卡顿,时间过短可能无法连接。建议值0.005 - 0.05 +local listeningTimeoutSec = 0.5; -- lua进程作为Server时,连接超时时间, 单位s. 时间过长等待attach时会造成卡顿,时间过短可能无法连接。建议值0.1 - 1 +local userDotInRequire = true; --兼容require中使用 require(a.b) 和 require(a/b) 的形式引用文件夹中的文件,默认无需修改 +local traversalUserData = false; --如果可以的话(取决于userdata原表中的__pairs),展示userdata中的元素。 如果在调试器中展开userdata时有错误,请关闭此项. +local customGetSocketInstance = nil; --支持用户实现一个自定义调用luasocket的函数,函数返回值必须是一个socket实例。例: function() return require("socket.core").tcp() end; +local consoleLogLevel = 2; --打印在控制台(print)的日志等级 0 : all/ 1: info/ 2: error. +--用户设置项END + +local debuggerVer = "3.3.1"; --debugger版本号 +LuaPanda = {}; +local this = LuaPanda; +local tools = {}; --引用的开源工具,包括json解析和table展开工具等 +this.tools = tools; +this.curStackId = 0; +--json处理 +local json; +--hook状态列表 +local hookState = { + DISCONNECT_HOOK = 0, --断开连接 + LITE_HOOK = 1, --全局无断点 + MID_HOOK = 2, --全局有断点,本文件无断点 + ALL_HOOK = 3, --本文件有断点 +}; +--运行状态列表 +local runState = { + DISCONNECT = 0, --未连接 + WAIT_CMD = 1, --已连接,等待命令 + STOP_ON_ENTRY = 2, --初始状态 + RUN = 3, + STEPOVER = 4, + STEPIN = 5, + STEPOUT = 6, + STEPOVER_STOP = 7, + STEPIN_STOP = 8, + STEPOUT_STOP = 9, + HIT_BREAKPOINT = 10 +}; + +local TCPSplitChar = "|*|"; --json协议分隔符,请不要修改 +local MAX_TIMEOUT_SEC = 3600 * 24; --网络最大超时等待时间 +--当前运行状态 +local currentRunState; +local currentHookState; +--断点信息 +local breaks = {}; --保存断点的数组 +this.breaks = breaks; --供hookLib调用 +local recCallbackId = ""; +--VSCode端传过来的配置,在VSCode端的launch配置,传过来并赋值 +local luaFileExtension = ""; --vscode传过来的脚本后缀 +local cwd = ""; --工作路径 +local DebuggerFileName = ""; --Debugger文件名(原始,未经path处理), 函数中会自动获取 +local DebuggerToolsName = ""; +local lastRunFunction = {}; --上一个执行过的函数。在有些复杂场景下(find,getcomponent)一行会挺两次 +local currentCallStack = {}; --获取当前调用堆栈信息 +local hitBP = false; --BP()中的强制断点命中标记 +local TempFilePath_luaString = ""; --VSCode端配置的临时文件存放路径 +local recordHost; --记录连接端IP +local recordPort; --记录连接端口号 +local sock; --lua socket 文件描述符 +local server; --server 描述符 +local OSType; --VSCode识别出的系统类型,也可以自行设置。Windows_NT | Linux | Darwin +local clibPath; --chook库在VScode端的路径,也可自行设置。 +local hookLib; --chook库的引用实例 +local adapterVer; --VScode传来的adapter版本号 +local truncatedOPath; --VScode中用户设置的用于截断opath路径的标志,注意这里可以接受lua魔法字符 +local distinguishSameNameFile = false; --是否区分lua同名文件中的断点,在VScode launch.json 中 distinguishSameNameFile 控制 +--标记位 +local logLevel = 1; --日志等级all/info/error. 此设置对应的是VSCode端设置的日志等级. +local variableRefIdx = 1; --变量索引 +local variableRefTab = {}; --变量记录table +local lastRunFilePath = ""; --最后执行的文件路径 +local pathCaseSensitivity = true; --路径是否发大小写敏感,这个选项接收VScode设置,请勿在此处更改 +local recvMsgQueue = {}; --接收的消息队列 +local coroutinePool = setmetatable({}, {__mode = "v"}); --保存用户协程的队列 +local winDiskSymbolUpper = false;--设置win下盘符的大小写。以此确保从VSCode中传入的断点路径,cwd和从lua虚拟机获得的文件路径盘符大小写一致 +local isNeedB64EncodeStr = false;-- 记录是否使用base64编码字符串 +local loadclibErrReason = 'launch.json文件的配置项useCHook被设置为false.'; +local OSTypeErrTip = ""; +local pathErrTip = "" +local winDiskSymbolTip = ""; +local isAbsolutePath = false; +local stopOnEntry; --用户在VSCode端设置的是否打开stopOnEntry +local userSetUseClib; --用户在VSCode端设置的是否是用clib库 +local autoPathMode = false; +local autoExt; --调试器启动时自动获取到的后缀, 用于检测lua虚拟机返回的路径是否带有文件后缀。他可以是空值或者".lua"等 +local luaProcessAsServer; +local testBreakpointFlag = false; -- 测试断点的标志位。结合 LuaPanda.testBreakpoint() 测试断点无法停止的原因 +--Step控制标记位 +local stepOverCounter = 0; --STEPOVER over计数器 +local stepOutCounter = 0; --STEPOVER out计数器 +local HOOK_LEVEL = 3; --调用栈偏移量,使用clib时为3,lua中不再使用此变量,而是通过函数getSpecificFunctionStackLevel获取 +local isUseLoadstring = 0; +local debugger_loadString; +--临时变量 +local recordBreakPointPath; --记录最后一个[可能命中]的断点,用于getInfo以及doctor的断点测试 +local coroutineCreate; --用来记录lua原始的coroutine.create函数 +local stopConnectTime = 0; --用来临时记录stop断开连接的时间 +local isInMainThread; +local receiveMsgTimer = 0; +local isUserSetClibPath = false; --用户是否在本文件中自设了clib路径 +local hitBpTwiceCheck; -- 命中断点的Vscode校验结果,默认true (true是命中,false是未命中) +local formatPathCache = {}; -- getinfo -> format +function this.formatPathCache() return formatPathCache; end +local fakeBreakPointCache = {}; --其中用 路径-{行号列表} 形式保存错误命中信息 +function this.fakeBreakPointCache() return fakeBreakPointCache; end +--5.1/5.3兼容 +if _VERSION == "Lua 5.1" then + debugger_loadString = loadstring; +else + debugger_loadString = load; +end + +--用户在控制台输入信息的环境变量 +local env = setmetatable({ }, { + __index = function( _ , varName ) + local ret = this.getWatchedVariable( varName, _G.LuaPanda.curStackId , false); + return ret; + end, + + __newindex = function( _ , varName, newValue ) + this.setVariableValue( varName, _G.LuaPanda.curStackId, newValue); + end +}); + +----------------------------------------------------------------------------- +-- 流程 +----------------------------------------------------------------------------- + +---this.bindServer 当lua进程作为Server时,server绑定函数 +--- server 在bind时创建, 连接成功后关闭listen , disconnect时置空。reconnect时会查询server,没有的话重新绑定,如果已存在直接accept +function this.bindServer(host, port) + server = sock + server:settimeout(listeningTimeoutSec); + assert(server:bind(host, port)); + server:setoption("reuseaddr", true); --防止已连接状态下新的连接进入,不再reuse + assert(server:listen(0)); +end + +-- 以lua作为服务端的形式启动调试器 +-- @host 绑定ip , 默认 0.0.0.0 +-- @port 绑定port, 默认 8818 +function this.startServer(host, port) + host = tostring(host or "0.0.0.0") ; + port = tonumber(port) or 8818; + luaProcessAsServer = true; + this.printToConsole("Debugger start as SERVER. bind host:" .. host .. " port:".. tostring(port), 1); + if sock ~= nil then + this.printToConsole("[Warning] 调试器已经启动,请不要再次调用start()" , 1); + return; + end + + --尝试初次连接 + this.changeRunState(runState.DISCONNECT); + if not this.reGetSock() then + this.printToConsole("[Error] LuaPanda debugger start success , but get Socket fail , please install luasocket!", 2); + return; + end + recordHost = host; + recordPort = port; + + this.bindServer(recordHost, recordPort); + local connectSuccess = server:accept(); + sock = connectSuccess; + + if connectSuccess then + this.printToConsole("First connect success!"); + this.connectSuccess(); + else + this.printToConsole("First connect failed!"); + this.changeHookState(hookState.DISCONNECT_HOOK); + end +end + +-- 启动调试器 +-- @host adapter端ip, 默认127.0.0.1 +-- @port adapter端port ,默认8818 +function this.start(host, port) + host = tostring(host or "127.0.0.1") ; + port = tonumber(port) or 8818; + this.printToConsole("Debugger start as CLIENT. connect host:" .. host .. " port:".. tostring(port), 1); + if sock ~= nil then + this.printToConsole("[Warning] 调试器已经启动,请不要再次调用start()" , 1); + return; + end + + --尝试初次连接 + this.changeRunState(runState.DISCONNECT); + if not this.reGetSock() then + this.printToConsole("[Error] Start debugger but get Socket fail , please install luasocket!", 2); + return; + end + recordHost = host; + recordPort = port; + + sock:settimeout(connectTimeoutSec); + local connectSuccess = this.sockConnect(sock); + + if connectSuccess then + this.printToConsole("First connect success!"); + this.connectSuccess(); + else + this.printToConsole("First connect failed!"); + this.changeHookState(hookState.DISCONNECT_HOOK); + end +end + +function this.sockConnect(sock) + if sock then + local connectSuccess, status = sock:connect(recordHost, recordPort); + if status == "connection refused" or (not connectSuccess and status == "already connected") then + this.reGetSock(); + end + + return connectSuccess + end + return nil; +end + +-- 连接成功,开始初始化 +function this.connectSuccess() + if server then + server:close(); -- 停止listen + end + + this.changeRunState(runState.WAIT_CMD); + this.printToConsole("connectSuccess", 1); + --设置初始状态 + local ret = this.debugger_wait_msg(); + + --获取debugger文件路径 + if DebuggerFileName == "" then + local info = debug.getinfo(1, "S") + for k,v in pairs(info) do + if k == "source" then + DebuggerFileName = tostring(v); + -- 从代码中去后缀 + autoExt = DebuggerFileName:gsub('.*[Ll][Uu][Aa][Pp][Aa][Nn][Dd][Aa]', ''); + + if hookLib ~= nil then + hookLib.sync_debugger_path(DebuggerFileName); + end + end + end + end + if DebuggerToolsName == "" then + DebuggerToolsName = tools.getFileSource(); + if hookLib ~= nil then + hookLib.sync_tools_path(DebuggerToolsName); + end + end + + if ret == false then + this.printToVSCode("[debugger error]初始化未完成, 建立连接但接收初始化消息失败。请更换端口重试", 2); + return; + end + this.printToVSCode("debugger init success", 1); + + this.changeHookState(hookState.ALL_HOOK); + if hookLib == nil then + --协程调试 + this.changeCoroutinesHookState(); + end + +end + +--重置数据 +function this.clearData() + OSType = nil; + clibPath = nil; + -- reset breaks + breaks = {}; + formatPathCache = {}; + fakeBreakPointCache = {}; + this.breaks = breaks; + if hookLib ~= nil then + hookLib.sync_breakpoints(); --清空断点信息 + hookLib.clear_pathcache(); --清空路径缓存 + end +end + +-- 本次连接过程中停止attach ,以提高运行效率 +function this.stopAttach() + openAttachMode = false; + this.printToConsole("Debugger stopAttach", 1); + this.clearData() + this.changeHookState( hookState.DISCONNECT_HOOK ); + stopConnectTime = os.time(); + this.changeRunState(runState.DISCONNECT); + if sock ~= nil then + sock:close(); + if luaProcessAsServer and server then server = nil; end; + end +end + +--断开连接 +function this.disconnect() + this.printToConsole("Debugger disconnect", 1); + this.clearData() + this.changeHookState( hookState.DISCONNECT_HOOK ); + stopConnectTime = os.time(); + this.changeRunState(runState.DISCONNECT); + + if sock ~= nil then + sock:close(); + sock = nil; + server = nil; + end + + if recordHost == nil or recordPort == nil then + --异常情况处理, 在调用LuaPanda.start()前首先调用了LuaPanda.disconnect() + this.printToConsole("[Warning] User call LuaPanda.disconnect() before set debug ip & port, please call LuaPanda.start() first!", 2); + return; + end + + this.reGetSock(); +end + +function this.replaceCoroutineFuncs() + if hookLib == nil then + if coroutineCreate == nil and type(coroutine.create) == "function" then + this.printToConsole("change coroutine.create"); + coroutineCreate = coroutine.create; + coroutine.create = function(...) + local co = coroutineCreate(...) + table.insert(coroutinePool, co); + --运行状态下,创建协程即启动hook + this.changeCoroutineHookState(co, currentHookState); + return co; + end + end + end +end + +----------------------------------------------------------------------------- +-- 调试器通用方法 +----------------------------------------------------------------------------- +-- 返回断点信息 +function this.getBreaks() + return breaks; +end + +---testBreakpoint 测试断点 +function this.testBreakpoint() + if recordBreakPointPath and recordBreakPointPath ~= "" then + -- testBreakpointFlag = false; + return this.breakpointTestInfo(); + else + local strTable = {}; + strTable[#strTable + 1] = "正在准备进行断点测试,请按照如下步骤操作\n" + strTable[#strTable + 1] = "1. 请[删除]当前项目中所有断点;\n" + strTable[#strTable + 1] = "2. 在当前停止行打一个断点;\n" + strTable[#strTable + 1] = "3. 再次运行 'LuaPanda.testBreakpoint()'" + testBreakpointFlag = true; + + return table.concat(strTable); + end +end + +-- 返回路径相关信息 +-- cwd:配置的工程路径 | info["source"]:通过 debug.getinfo 获得执行文件的路径 | format:格式化后的文件路径 +function this.breakpointTestInfo() + local ly = this.getSpecificFunctionStackLevel(lastRunFunction.func); + if type(ly) ~= "number" then + ly = 2; + end + local runSource = lastRunFunction["source"]; + if runSource == nil and hookLib ~= nil then + runSource = this.getPath(tostring(hookLib.get_last_source())); + end + local info = debug.getinfo(ly, "S"); + local NormalizedPath = this.formatOpath(info["source"]); + NormalizedPath = this.truncatedPath(NormalizedPath, truncatedOPath); + + local strTable = {} + local FormatedPath = tostring(runSource); + strTable[#strTable + 1] = "\n- BreakPoint Test:" + strTable[#strTable + 1] = "\nUser set lua extension: ." .. tostring(luaFileExtension); + strTable[#strTable + 1] = "\nAuto get lua extension: " .. tostring(autoExt); + if truncatedOPath and truncatedOPath ~= '' then + strTable[#strTable + 1] = "\nUser set truncatedOPath: " .. truncatedOPath; + end + strTable[#strTable + 1] = "\nGetInfo: ".. info["source"]; + strTable[#strTable + 1] = "\nNormalized: " .. NormalizedPath; + strTable[#strTable + 1] = "\nFormated: " .. FormatedPath; + if recordBreakPointPath and recordBreakPointPath ~= "" then + strTable[#strTable + 1] = "\nBreakpoint: " .. recordBreakPointPath; + end + + if not autoPathMode then + if isAbsolutePath then + strTable[#strTable + 1] = "\n说明:从lua虚拟机获取到的是绝对路径,Formated使用GetInfo路径。" .. winDiskSymbolTip; + else + strTable[#strTable + 1] = "\n说明:从lua虚拟机获取到的路径(GetInfo)是相对路径,调试器运行依赖的绝对路径(Formated)是来源于cwd+GetInfo拼接。如Formated路径错误请尝试调整cwd或改变VSCode打开文件夹的位置。也可以在Formated对应的文件下打一个断点,调整直到Formated和Breaks Info中断点路径完全一致。" .. winDiskSymbolTip; + end + else + strTable[#strTable + 1] = "\n说明:自动路径(autoPathMode)模式已开启。"; + if recordBreakPointPath and recordBreakPointPath ~= "" then + if string.find(recordBreakPointPath , FormatedPath, (-1) * string.len(FormatedPath) , true) then + -- 短路径断点命中 + if distinguishSameNameFile == false then + strTable[#strTable + 1] = "本文件中断点可正常命中。" + strTable[#strTable + 1] = "同名文件中的断点识别(distinguishSameNameFile) 未开启,请确保 VSCode 断点不要存在于同名 lua 文件中。"; + else + strTable[#strTable + 1] = "同名文件中的断点识别(distinguishSameNameFile) 已开启。"; + if string.find(recordBreakPointPath, NormalizedPath, 1, true) then + strTable[#strTable + 1] = "本文件中断点可被正常命中" + else + strTable[#strTable + 1] = "断点可能无法被命中,因为 lua 虚拟机中获得的路径 Normalized 不是断点路径 Breakpoint 的子串。 如有需要,可以在 launch.json 中设置 truncatedOPath 来去除 Normalized 部分路径。" + end + end + else + strTable[#strTable + 1] = "断点未被命中,原因是 Formated 不是 Breakpoint 路径的子串,或者 Formated 和 Breakpoint 文件后缀不一致" + end + else + strTable[#strTable + 1] = "如果要进行断点测试,请使用 LuaPanda.testBreakpoint()。" + end + end + return table.concat(strTable) +end + +--返回版本号等配置 +function this.getBaseInfo() + local strTable = {}; + local jitVer = ""; + if jit and jit.version then + jitVer = "," .. tostring(jit.version); + end + + strTable[#strTable + 1] = "Lua Ver:" .. _VERSION .. jitVer .." | Adapter Ver:" .. tostring(adapterVer) .. " | Debugger Ver:" .. tostring(debuggerVer); + local moreInfoStr = ""; + if hookLib ~= nil then + local clibVer, forluaVer = hookLib.sync_getLibVersion(); + local clibStr = forluaVer ~= nil and tostring(clibVer) .. " for " .. tostring(math.ceil(forluaVer)) or tostring(clibVer); + strTable[#strTable + 1] = " | hookLib Ver:" .. clibStr; + moreInfoStr = moreInfoStr .. "说明: 已加载 libpdebug 库."; + else + moreInfoStr = moreInfoStr .. "说明: 未能加载 libpdebug 库。原因请使用 LuaPanda.doctor() 查看"; + end + + local outputIsUseLoadstring = false + if type(isUseLoadstring) == "number" and isUseLoadstring == 1 then + outputIsUseLoadstring = true; + end + + strTable[#strTable + 1] = " | supportREPL:".. tostring(outputIsUseLoadstring); + strTable[#strTable + 1] = " | useBase64EncodeString:".. tostring(isNeedB64EncodeStr); + strTable[#strTable + 1] = " | codeEnv:" .. tostring(OSType); + strTable[#strTable + 1] = " | distinguishSameNameFile:" .. tostring(distinguishSameNameFile) .. '\n'; + + strTable[#strTable + 1] = moreInfoStr; + if OSTypeErrTip ~= nil and OSTypeErrTip ~= '' then + strTable[#strTable + 1] = '\n' ..OSTypeErrTip; + end + return table.concat(strTable); +end + +--自动诊断当前环境的错误,并输出信息 +function this.doctor() + local strTable = {}; + if debuggerVer ~= adapterVer then + strTable[#strTable + 1] = "\n- 建议更新版本\nLuaPanda VSCode插件版本是" .. adapterVer .. ", LuaPanda.lua文件版本是" .. debuggerVer .. "。建议检查并更新到最新版本。"; + strTable[#strTable + 1] = "\n更新方式 : https://github.com/Tencent/LuaPanda/blob/master/Docs/Manual/update.md"; + strTable[#strTable + 1] = "\nRelease版本: https://github.com/Tencent/LuaPanda/releases"; + end + --plibdebug + if hookLib == nil then + strTable[#strTable + 1] = "\n\n- libpdebug 库没有加载\n"; + if userSetUseClib then + --用户允许使用clib插件 + if isUserSetClibPath == true then + --用户自设了clib地址 + strTable[#strTable + 1] = "用户使用 LuaPanda.lua 中 clibPath 变量指定了 plibdebug 的位置: " .. clibPath; + if this.tryRequireClib("libpdebug", clibPath) then + strTable[#strTable + 1] = "\n引用成功"; + else + strTable[#strTable + 1] = "\n引用错误:" .. loadclibErrReason; + end + else + --使用默认clib地址 + local clibExt, platform; + if OSType == "Darwin" then clibExt = "/?.so;"; platform = "mac"; + elseif OSType == "Linux" then clibExt = "/?.so;"; platform = "linux"; + else clibExt = "/?.dll;"; platform = "win"; end + local lua_ver; + if _VERSION == "Lua 5.1" then + lua_ver = "501"; + elseif _VERSION == "Lua 5.4" then + lua_ver = "504"; + else + lua_ver = "503"; + end + local x86Path = clibPath .. platform .."/x86/".. lua_ver .. clibExt; + local x64Path = clibPath .. platform .."/x86_64/".. lua_ver .. clibExt; + local armPath = clibPath .. platform .."/arm_64/".. lua_ver .. clibExt; + + if platform == "mac" then + -- mac下先检测arm库 + strTable[#strTable + 1] = "尝试引用arm库: ".. armPath; + if this.tryRequireClib("libpdebug", armPath) then + strTable[#strTable + 1] = "\n引用成功"; + return; + end + end + + strTable[#strTable + 1] = "尝试引用x64库: ".. x64Path; + if this.tryRequireClib("libpdebug", x64Path) then + strTable[#strTable + 1] = "\n引用成功"; + else + strTable[#strTable + 1] = "\n引用错误:" .. loadclibErrReason; + strTable[#strTable + 1] = "\n尝试引用x86库: ".. x86Path; + if this.tryRequireClib("libpdebug", x86Path) then + strTable[#strTable + 1] = "\n引用成功"; + else + strTable[#strTable + 1] = "\n引用错误:" .. loadclibErrReason; + end + end + end + else + strTable[#strTable + 1] = "原因是" .. loadclibErrReason; + end + end + + --path + --尝试直接读当前getinfo指向的文件,看能否找到。如果能,提示正确,如果找不到,给出提示,建议玩家在这个文件中打一个断点 + --检查断点,文件和当前文件的不同,给出建议 + local runSource = lastRunFilePath; + if hookLib ~= nil then + runSource = this.getPath(tostring(hookLib.get_last_source())); + end + + -- 在精确路径模式下的路径错误检测 + if not autoPathMode and runSource and runSource ~= "" then + -- 读文件 + local isFileExist = this.fileExists(runSource); + if not isFileExist then + strTable[#strTable + 1] = "\n\n- 路径存在问题\n"; + --解析路径,得到文件名,到断点路径中查这个文件名 + local pathArray = this.stringSplit(runSource, '/'); + --如果pathArray和断点能匹配上 + local fileMatch= false; + for key, _ in pairs(this.getBreaks()) do + if string.find(key, pathArray[#pathArray], 1, true) then + --和断点匹配了 + fileMatch = true; + -- retStr = retStr .. "\n请对比如下路径:\n"; + strTable[#strTable + 1] = this.breakpointTestInfo(); + strTable[#strTable + 1] = "\nfilepath: " .. key; + if isAbsolutePath then + strTable[#strTable + 1] = "\n说明:从lua虚拟机获取到的是绝对路径,format使用getinfo路径。"; + else + strTable[#strTable + 1] = "\n说明:从lua虚拟机获取到的是相对路径,调试器运行依赖的绝对路径(format)是来源于cwd+getinfo拼接。"; + end + strTable[#strTable + 1] = "\nfilepath是VSCode通过获取到的文件正确路径 , 对比format和filepath,调整launch.json中CWD,或改变VSCode打开文件夹的位置。使format和filepath一致即可。\n如果format和filepath路径仅大小写不一致,设置launch.json中 pathCaseSensitivity:false 可忽略路径大小写"; + end + end + + if fileMatch == false then + --未能和断点匹配 + strTable[#strTable + 1] = "\n找不到文件:" .. runSource .. ", 请检查路径是否正确。\n或者在VSCode文件" .. pathArray[#pathArray] .. "中打一个断点后,再执行一次doctor命令,查看路径分析结果。"; + end + end + end + + --日志等级对性能的影响 + if logLevel < 1 or consoleLogLevel < 1 then + strTable[#strTable + 1] = "\n\n- 日志等级\n"; + if logLevel < 1 then + strTable[#strTable + 1] = "当前日志等级是" .. logLevel .. ", 会产生大量日志,降低调试速度。建议调整launch.json中logLevel:1"; + end + if consoleLogLevel < 1 then + strTable[#strTable + 1] = "当前console日志等级是" .. consoleLogLevel .. ", 过低的日志等级会降低调试速度,建议调整LuaPanda.lua文件头部consoleLogLevel=2"; + end + end + + if #strTable == 0 then + strTable[#strTable + 1] = "未检测出问题"; + end + return table.concat(strTable); +end + +function this.fileExists(path) + local f=io.open(path,"r"); + if f~= nil then io.close(f) return true else return false end + end + +--返回一些信息,帮助用户定位问题 +function this.getInfo() + --用户设置项 + local strTable = {}; + strTable[#strTable + 1] = "\n- Base Info: \n"; + strTable[#strTable + 1] = this.getBaseInfo(); + --已经加载C库,x86/64 未能加载,原因 + strTable[#strTable + 1] = "\n\n- User Setting: \n"; + strTable[#strTable + 1] = "stopOnEntry:" .. tostring(stopOnEntry) .. ' | '; + -- strTable[#strTable + 1] = "luaFileExtension:" .. luaFileExtension .. ' | '; + strTable[#strTable + 1] = "logLevel:" .. logLevel .. ' | ' ; + strTable[#strTable + 1] = "consoleLogLevel:" .. consoleLogLevel .. ' | '; + strTable[#strTable + 1] = "pathCaseSensitivity:" .. tostring(pathCaseSensitivity) .. ' | '; + strTable[#strTable + 1] = "attachMode:".. tostring(openAttachMode).. ' | '; + strTable[#strTable + 1] = "autoPathMode:".. tostring(autoPathMode).. ' | '; + + if userSetUseClib then + strTable[#strTable + 1] = "useCHook:true"; + else + strTable[#strTable + 1] = "useCHook:false"; + end + + if logLevel == 0 or consoleLogLevel == 0 then + strTable[#strTable + 1] = "\n说明:日志等级过低,会影响执行效率。请调整logLevel和consoleLogLevel值 >= 1"; + end + + strTable[#strTable + 1] = "\n\n- Path Info: \n"; + strTable[#strTable + 1] = "clibPath: " .. tostring(clibPath) .. '\n'; + strTable[#strTable + 1] = "debugger: " .. DebuggerFileName .. " | " .. this.getPath(DebuggerFileName) .. '\n'; + strTable[#strTable + 1] = "cwd : " .. cwd .. '\n'; + strTable[#strTable + 1] = this.breakpointTestInfo(); + + if pathErrTip ~= nil and pathErrTip ~= '' then + strTable[#strTable + 1] = '\n' .. pathErrTip; + end + + strTable[#strTable + 1] = "\n\n- Breaks Info: \nUse 'LuaPanda.getBreaks()' to watch."; + return table.concat(strTable); +end + +--判断是否在协程中 +function this.isInMain() + return isInMainThread; +end + +--添加路径,尝试引用库。完成后把cpath还原,返回引用结果true/false +-- @libName 库名 +-- path lib的cpath路径 +function this.tryRequireClib(libName , libPath) + this.printToVSCode("tryRequireClib search : [" .. libName .. "] in "..libPath); + local savedCpath = package.cpath; + package.cpath = package.cpath .. ';' .. libPath; + this.printToVSCode("package.cpath:" .. package.cpath); + local status, err = pcall(function() hookLib = require(libName) end); + if status then + if type(hookLib) == "table" and this.getTableMemberNum(hookLib) > 0 then + this.printToVSCode("tryRequireClib success : [" .. libName .. "] in "..libPath); + package.cpath = savedCpath; + return true; + else + loadclibErrReason = "tryRequireClib fail : require success, but member function num <= 0; [" .. libName .. "] in "..libPath; + this.printToVSCode(loadclibErrReason); + hookLib = nil; + package.cpath = savedCpath; + return false; + end + else + -- 此处考虑到tryRequireClib会被调用两次,日志级别设置为0,防止输出不必要的信息。 + loadclibErrReason = err; + this.printToVSCode("[Require clib error]: " .. err, 0); + end + package.cpath = savedCpath; + return false +end +------------------------字符串处理------------------------- +-- 倒序查找字符串 a.b/c查找/ , 返回4 +-- @str 被查找的长串 +-- @subPattern 查找的子串, 也可以是pattern +-- @plain plane text / pattern +-- @return 未找到目标串返回nil. 否则返回倒序找到的字串位置 +function this.revFindString(str, subPattern, plain) + local revStr = string.reverse(str); + local _, idx = string.find(revStr, subPattern, 1, plain); + if idx == nil then return nil end; + return string.len(revStr) - idx + 1; +end + +-- 反序裁剪字符串 如:print(subString("a.b/c", "/"))输出c +-- @return 未找到目标串返回nil. 否则返回被裁剪后的字符串 +function this.revSubString(str, subStr, plain) + local idx = this.revFindString(str, subStr, plain) + if idx == nil then return nil end; + return string.sub(str, idx + 1, str.length) +end + +-- 把字符串按reps分割成并放入table +-- @str 目标串 +-- @reps 分割符。注意这个分隔符是一个pattern +function this.stringSplit( str, separator ) + local retStrTable = {} + string.gsub(str, '[^' .. separator ..']+', function ( word ) + table.insert(retStrTable, word) + end) + return retStrTable; +end + +-- 保存CallbackId(通信序列号) +function this.setCallbackId( id ) + if id ~= nil and id ~= "0" then + recCallbackId = tostring(id); + end +end + +-- 读取CallbackId(通信序列号)。读取后记录值将被置空 +function this.getCallbackId() + if recCallbackId == nil then + recCallbackId = "0"; + end + local id = recCallbackId; + recCallbackId = "0"; + return id; +end + +-- reference from https://www.lua.org/pil/20.1.html +function this.trim (s) + return (string.gsub(s, "^%s*(.-)%s*$", "%1")) +end + +--返回table中成员数量(数字key和非数字key之和) +-- @t 目标table +-- @return 元素数量 +function this.getTableMemberNum(t) + local retNum = 0; + if type(t) ~= "table" then + this.printToVSCode("[debugger Error] getTableMemberNum get "..tostring(type(t)), 2) + return retNum; + end + for k,v in pairs(t) do + retNum = retNum + 1; + end + return retNum; +end + +-- 生成一个消息Table +function this.getMsgTable(cmd ,callbackId) + callbackId = callbackId or 0; + local msgTable = {}; + msgTable["cmd"] = cmd; + msgTable["callbackId"] = callbackId; + msgTable["info"] = {}; + return msgTable; +end + +function this.serializeTable(tab, name) + local sTable = tools.serializeTable(tab, name); + return sTable; +end +------------------------日志打印相关------------------------- +-- 把日志打印在VSCode端 +-- @str: 日志内容 +-- @printLevel: all(0)/info(1)/error(2) +-- @type: 0:vscode console 1:vscode tip +function this.printToVSCode(str, printLevel, type) + type = type or 0; + printLevel = printLevel or 0; + if currentRunState == runState.DISCONNECT or logLevel > printLevel then + return; + end + + local sendTab = {}; + sendTab["callbackId"] = "0"; + if type == 0 then + sendTab["cmd"] = "output"; + elseif type == 1 then + sendTab["cmd"] = "tip"; + else -- type == 2 + sendTab["cmd"] = "debug_console"; + end + sendTab["info"] = {}; + sendTab["info"]["logInfo"] = tostring(str); + this.sendMsg(sendTab); +end + +-- 把日志打印在控制台 +-- @str: 日志内容 +-- @printLevel: all(0)/info(1)/error(2) +function this.printToConsole(str, printLevel) + printLevel = printLevel or 0; + if consoleLogLevel > printLevel then + return; + end + print("[LuaPanda] ".. tostring(str)); +end + +----------------------------------------------------------------------------- +-- 提升兼容性方法 +----------------------------------------------------------------------------- +--生成平台无关的路径。 +--return:nil(error)/path +function this.genUnifiedPath(path) + if path == "" or path == nil then + return ""; + end + --大小写不敏感时,路径全部转为小写 + if pathCaseSensitivity == false then + path = string.lower(path); + end + --统一路径全部替换成/ + path = string.gsub(path, [[\]], "/"); + --处理 /../ /./ + local pathTab = this.stringSplit(path, '/'); + local newPathTab = {}; + for k, v in ipairs(pathTab) do + if v == '.' then + --continue + elseif v == ".." and #newPathTab >= 1 and newPathTab[#newPathTab]:sub(2,2) ~= ':' then + --newPathTab有元素,最后一项不是X: + table.remove(newPathTab); + else + table.insert(newPathTab, v); + end + end + --重新拼合后如果是mac路径第一位是/ + local newpath = table.concat(newPathTab, '/'); + if path:sub(1,1) == '/' then + newpath = '/'.. newpath; + end + + --win下按照winDiskSymbolUpper的设置修改盘符大小 + if "Windows_NT" == OSType then + if winDiskSymbolUpper then + newpath = newpath:gsub("^%a:", string.upper); + winDiskSymbolTip = "路径中Windows盘符已转为大写。" + else + newpath = newpath:gsub("^%a:", string.lower); + winDiskSymbolTip = "路径中Windows盘符已转为小写。" + end + end + + return newpath; +end + +function this.getCacheFormatPath(source) + if source == nil then return formatPathCache end; + return formatPathCache[source]; +end + +function this.setCacheFormatPath(source, dest) + formatPathCache[source] = dest; +end + +-- 处理 opath(info.source) 的函数, 生成一个规范的路径函数(和VScode端checkRightPath逻辑完全一致) +function this.formatOpath(opath) + -- delete @ + if opath:sub(1,1) == '@' then + opath = opath:sub(2); + end + -- change ./ to / + if opath:sub(1,2) == './' then + opath = opath:sub(2); + end + + opath = this.genUnifiedPath(opath); + + -- lower + if pathCaseSensitivity == false then + opath = string.lower(opath); + end + --把filename去除后缀 + if autoExt == nil or autoExt == '' then + -- 在虚拟机返回路径没有后缀的情况下,用户必须自设后缀 + -- 确定filePath中最后一个.xxx 不等于用户配置的后缀, 则把所有的. 转为 / + if not opath:find(luaFileExtension , (-1) * luaFileExtension:len(), true) then + -- getinfo 路径没有后缀,把 . 全部替换成 / ,我们不允许用户在文件(或文件夹)名称中出现"." , 因为无法区分 + opath = string.gsub(opath, "%.", "/"); + else + -- 有后缀,那么把除后缀外的部分中的. 转为 / + opath = this.changePotToSep(opath, luaFileExtension); + end + else + -- 虚拟机路径有后缀 + opath = this.changePotToSep(opath, autoExt); + end + + -- 截取 路径+文件名 (不带后缀) + -- change pot to / + -- opath = string.gsub(opath, "%.", "/"); + return opath; +end + +----------------------------------------------------------------------------- +-- 内存相关 +----------------------------------------------------------------------------- +function this.sendLuaMemory() + local luaMem = collectgarbage("count"); + local sendTab = {}; + sendTab["callbackId"] = "0"; + sendTab["cmd"] = "refreshLuaMemory"; + sendTab["info"] = {}; + sendTab["info"]["memInfo"] = tostring(luaMem); + this.sendMsg(sendTab); +end + +----------------------------------------------------------------------------- +-- 网络相关方法 +----------------------------------------------------------------------------- +-- 刷新socket +-- @return true/false 刷新成功/失败 +function this.reGetSock() + if server then return true end + + if sock ~= nil then + pcall(function() sock:close() end); + end + + --call slua-unreal luasocket + sock = lua_extension and lua_extension.luasocket and lua_extension.luasocket().tcp(); + if sock == nil then + --call normal luasocket + if pcall(function() sock = require("socket.core").tcp(); end) then + this.printToConsole("reGetSock success"); + else + --call custom function to get socket + if customGetSocketInstance and pcall( function() sock = customGetSocketInstance(); end ) then + this.printToConsole("reGetSock custom success"); + else + this.printToConsole("[Error] reGetSock fail", 2); + return false; + end + end + else + --set ue4 luasocket + this.printToConsole("reGetSock ue4 success"); + end + return true; +end + +-- 定时(以函数return为时机) 进行attach连接 +-- 返回值 hook 可以继续往下走时返回1 ,无需继续时返回0 +function this.reConnect() + if currentHookState == hookState.DISCONNECT_HOOK then + if os.time() - stopConnectTime < attachInterval then + -- 未到重连时间 + -- this.printToConsole("Reconnect time less than 1s"); + -- this.printToConsole("os.time:".. os.time() .. " | stopConnectTime:" ..stopConnectTime); + return 0; + end + this.printToConsole("Reconnect !"); + if sock == nil then + this.reGetSock(); + end + + local connectSuccess; + if luaProcessAsServer == true and currentRunState == runState.DISCONNECT then + -- 在 Server 模式下,以及当前处于未连接状态下,才尝试accept新链接。如果不判断可能会出现多次连接,导致sock被覆盖 + if server == nil then + this.bindServer(recordHost, recordPort); + end + + sock = server:accept(); + connectSuccess = sock; + else + sock:settimeout(connectTimeoutSec); + connectSuccess = this.sockConnect(sock); + end + + if connectSuccess then + this.printToConsole("reconnect success"); + this.connectSuccess(); + return 1; + else + this.printToConsole("reconnect failed" ); + stopConnectTime = os.time(); + return 0; + end + end + -- 不必重连,正常继续运行 + return 1; +end + +-- 向adapter发消息 +-- @sendTab 消息体table +function this.sendMsg( sendTab ) + if isNeedB64EncodeStr and sendTab["info"] ~= nil then + for _, v in ipairs(sendTab["info"]) do + if v["type"] == "string" then + v["value"] = tools.base64encode(v["value"]) + end + end + end + + local sendStr = json.encode(sendTab); + if currentRunState == runState.DISCONNECT then + this.printToConsole("[debugger error] disconnect but want sendMsg:" .. sendStr, 2); + this.disconnect(); + return; + end + + local succ,err; + if pcall(function() succ,err = sock:send(sendStr..TCPSplitChar.."\n"); end) then + if succ == nil then + if err == "closed" then + this.disconnect(); + end + end + end +end + +-- 处理 收到的消息 +-- @dataStr 接收的消息json +function this.dataProcess( dataStr ) + this.printToVSCode("debugger get:"..dataStr); + local dataTable = json.decode(dataStr); + if dataTable == nil then + this.printToVSCode("[error] Json is error", 2); + return; + end + + if dataTable.callbackId ~= "0" then + this.setCallbackId(dataTable.callbackId); + end + + if dataTable.cmd == "continue" then + local info = dataTable.info; + if info.isFakeHit == "true" and info.fakeBKPath and info.fakeBKLine then + -- 设置校验结果标志位,以便hook流程知道结果 + hitBpTwiceCheck = false; + if hookLib ~= nil and hookLib.set_bp_twice_check_res then + -- 把结果同步给C + hookLib.set_bp_twice_check_res(0); + end + -- 把假断点的信息加入cache + if nil == fakeBreakPointCache[info.fakeBKPath] then + fakeBreakPointCache[info.fakeBKPath] = {}; + end + table.insert(fakeBreakPointCache[info.fakeBKPath] ,info.fakeBKLine); + else + this.changeRunState(runState.RUN); + end + local msgTab = this.getMsgTable("continue", this.getCallbackId()); + this.sendMsg(msgTab); + + elseif dataTable.cmd == "stopOnStep" then + this.changeRunState(runState.STEPOVER); + local msgTab = this.getMsgTable("stopOnStep", this.getCallbackId()); + this.sendMsg(msgTab); + this.changeHookState(hookState.ALL_HOOK); + + elseif dataTable.cmd == "stopOnStepIn" then + this.changeRunState(runState.STEPIN); + local msgTab = this.getMsgTable("stopOnStepIn", this.getCallbackId()); + this.sendMsg(msgTab); + this.changeHookState(hookState.ALL_HOOK); + + elseif dataTable.cmd == "stopOnStepOut" then + this.changeRunState(runState.STEPOUT); + local msgTab = this.getMsgTable("stopOnStepOut", this.getCallbackId()); + this.sendMsg(msgTab); + this.changeHookState(hookState.ALL_HOOK); + + elseif dataTable.cmd == "setBreakPoint" then + this.printToVSCode("dataTable.cmd == setBreakPoint"); + -- 设置断点时,把 fakeBreakPointCache 清空。这是一个简单的做法,也可以清除具体的条目 + fakeBreakPointCache = {} + local bkPath = dataTable.info.path; + bkPath = this.genUnifiedPath(bkPath); + if testBreakpointFlag then + recordBreakPointPath = bkPath; + end + if autoPathMode then + -- 自动路径模式下,仅保留文件名 + -- table[文件名.后缀] -- [fullpath] -- [line , type] + -- | - [fullpath] -- [line , type] + + local bkShortPath = this.getFilenameFromPath(bkPath); + if breaks[bkShortPath] == nil then + breaks[bkShortPath] = {}; + end + breaks[bkShortPath][bkPath] = dataTable.info.bks; + -- 当v为空时,从断点列表中去除文件 + for k, v in pairs(breaks[bkShortPath]) do + if next(v) == nil then + breaks[bkShortPath][k] = nil; + end + end + else + if breaks[bkPath] == nil then + breaks[bkPath] = {}; + end + -- 两级 bk path 是为了和自动路径模式结构保持一致 + breaks[bkPath][bkPath] = dataTable.info.bks; + -- 当v为空时,从断点列表中去除文件 + for k, v in pairs(breaks[bkPath]) do + if next(v) == nil then + breaks[bkPath][k] = nil; + end + end + end + + -- 当v为空时,从断点列表中去除文件 + for k, v in pairs(breaks) do + if next(v) == nil then + breaks[k] = nil; + end + end + + --sync breaks to c + if hookLib ~= nil then + hookLib.sync_breakpoints(); + end + + if currentRunState ~= runState.WAIT_CMD then + if hookLib == nil then + local fileBP, G_BP =this.checkHasBreakpoint(lastRunFilePath); + if fileBP == false then + if G_BP == true then + this.changeHookState(hookState.MID_HOOK); + else + this.changeHookState(hookState.LITE_HOOK); + end + else + this.changeHookState(hookState.ALL_HOOK); + end + end + else + local msgTab = this.getMsgTable("setBreakPoint", this.getCallbackId()); + this.sendMsg(msgTab); + return; + end + --其他时机收到breaks消息 + local msgTab = this.getMsgTable("setBreakPoint", this.getCallbackId()); + this.sendMsg(msgTab); + -- 打印调试信息 + this.printToVSCode("LuaPanda.getInfo()\n" .. this.getInfo()) + this.debugger_wait_msg(); + elseif dataTable.cmd == "setVariable" then + if currentRunState == runState.STOP_ON_ENTRY or + currentRunState == runState.HIT_BREAKPOINT or + currentRunState == runState.STEPOVER_STOP or + currentRunState == runState.STEPIN_STOP or + currentRunState == runState.STEPOUT_STOP then + local msgTab = this.getMsgTable("setVariable", this.getCallbackId()); + local varRefNum = tonumber(dataTable.info.varRef); + local newValue = tostring(dataTable.info.newValue); + local needFindVariable = true; --如果变量是基础类型,直接赋值,needFindVariable = false; 如果变量是引用类型,needFindVariable = true + local varName = tostring(dataTable.info.varName); + -- 根据首末含有" ' 判断 newValue 是否是字符串 + local first_chr = string.sub(newValue, 1, 1); + local end_chr = string.sub(newValue, -1, -1); + if first_chr == end_chr then + if first_chr == "'" or first_chr == '"' then + newValue = string.sub(newValue, 2, -2); + needFindVariable = false; + end + end + --数字,nil,false,true的处理 + if newValue == "nil" and needFindVariable == true then newValue = nil; needFindVariable = false; + elseif newValue == "true" and needFindVariable == true then newValue = true; needFindVariable = false; + elseif newValue == "false" and needFindVariable == true then newValue = false; needFindVariable = false; + elseif tonumber(newValue) and needFindVariable == true then newValue = tonumber(newValue); needFindVariable = false; + end + + -- 如果新值是基础类型,则不需遍历 + if dataTable.info.stackId ~= nil and tonumber(dataTable.info.stackId) ~= nil and tonumber(dataTable.info.stackId) > 1 then + this.curStackId = tonumber(dataTable.info.stackId); + else + this.printToVSCode("未能获取到堆栈层级,默认使用 this.curStackId;") + end + + if varRefNum < 10000 then + -- 如果修改的是一个 引用变量,那么可直接赋值。但还是要走变量查询过程。查找和赋值过程都需要steakId。 目前给引用变量赋值Object,steak可能有问题 + msgTab.info = this.createSetValueRetTable(varName, newValue, needFindVariable, this.curStackId, variableRefTab[varRefNum]); + else + -- 如果修改的是一个基础类型 + local setLimit; --设置检索变量的限定区域 + if varRefNum >= 10000 and varRefNum < 20000 then setLimit = "local"; + elseif varRefNum >= 20000 and varRefNum < 30000 then setLimit = "global"; + elseif varRefNum >= 30000 then setLimit = "upvalue"; + end + msgTab.info = this.createSetValueRetTable(varName, newValue, needFindVariable, this.curStackId, nil, setLimit); + end + + this.sendMsg(msgTab); + this.debugger_wait_msg(); + end + + elseif dataTable.cmd == "getVariable" then + --仅在停止时处理消息,其他时刻收到此消息,丢弃 + if currentRunState == runState.STOP_ON_ENTRY or + currentRunState == runState.HIT_BREAKPOINT or + currentRunState == runState.STEPOVER_STOP or + currentRunState == runState.STEPIN_STOP or + currentRunState == runState.STEPOUT_STOP then + --发送变量给游戏,并保持之前的状态,等待再次接收数据 + --dataTable.info.varRef 10000~20000局部变量 + -- 20000~30000全局变量 + -- 30000~ upvalue + -- 1000~2000局部变量的查询,2000~3000全局,3000~4000upvalue + local msgTab = this.getMsgTable("getVariable", this.getCallbackId()); + local varRefNum = tonumber(dataTable.info.varRef); + if varRefNum < 10000 then + --查询变量, 此时忽略 stackId + local varTable = this.getVariableRef(dataTable.info.varRef, true); + msgTab.info = varTable; + elseif varRefNum >= 10000 and varRefNum < 20000 then + --局部变量 + if dataTable.info.stackId ~= nil and tonumber(dataTable.info.stackId) > 1 then + this.curStackId = tonumber(dataTable.info.stackId); + if type(currentCallStack[this.curStackId - 1]) ~= "table" or type(currentCallStack[this.curStackId - 1].func) ~= "function" then + local str = "getVariable getLocal currentCallStack " .. this.curStackId - 1 .. " Error\n" .. this.serializeTable(currentCallStack, "currentCallStack"); + this.printToVSCode(str, 2); + msgTab.info = {}; + else + local stackId = this.getSpecificFunctionStackLevel(currentCallStack[this.curStackId - 1].func); --去除偏移量 + local varTable = this.getVariable(stackId, true); + msgTab.info = varTable; + end + end + + elseif varRefNum >= 20000 and varRefNum < 30000 then + --全局变量 + local varTable = this.getGlobalVariable(); + msgTab.info = varTable; + elseif varRefNum >= 30000 then + --upValue + if dataTable.info.stackId ~= nil and tonumber(dataTable.info.stackId) > 1 then + this.curStackId = tonumber(dataTable.info.stackId); + if type(currentCallStack[this.curStackId - 1]) ~= "table" or type(currentCallStack[this.curStackId - 1].func) ~= "function" then + local str = "getVariable getUpvalue currentCallStack " .. this.curStackId - 1 .. " Error\n" .. this.serializeTable(currentCallStack, "currentCallStack"); + this.printToVSCode(str, 2); + msgTab.info = {}; + else + local varTable = this.getUpValueVariable(currentCallStack[this.curStackId - 1 ].func, true); + msgTab.info = varTable; + end + end + end + this.sendMsg(msgTab); + this.debugger_wait_msg(); + end + elseif dataTable.cmd == "initSuccess" then + --初始化会传过来一些变量,这里记录这些变量 + --Base64 + if dataTable.info.isNeedB64EncodeStr == "true" then + isNeedB64EncodeStr = true; + else + isNeedB64EncodeStr = false; + end + --path + luaFileExtension = dataTable.info.luaFileExtension; + local TempFilePath = dataTable.info.TempFilePath; + if TempFilePath:sub(-1, -1) == [[\]] or TempFilePath:sub(-1, -1) == [[/]] then + TempFilePath = TempFilePath:sub(1, -2); + end + TempFilePath_luaString = TempFilePath; + cwd = this.genUnifiedPath(dataTable.info.cwd); + --logLevel + logLevel = tonumber(dataTable.info.logLevel) or 1; + --autoPathMode + if dataTable.info.autoPathMode == "true" then + autoPathMode = true; + else + autoPathMode = false; + end + + if dataTable.info.pathCaseSensitivity == "true" then + pathCaseSensitivity = true; + truncatedOPath = dataTable.info.truncatedOPath or ""; + else + pathCaseSensitivity = false; + truncatedOPath = string.lower(dataTable.info.truncatedOPath or ""); + end + + if dataTable.info.distinguishSameNameFile == "true" then + distinguishSameNameFile = true; + else + distinguishSameNameFile = false; + end + + --OS type + if nil == OSType then + --用户未主动设置OSType, 接收VSCode传来的数据 + if type(dataTable.info.OSType) == "string" then + OSType = dataTable.info.OSType; + else + OSType = "Windows_NT"; + OSTypeErrTip = "未能检测出OSType, 可能是node os库未能加载,系统使用默认设置Windows_NT" + end + else + --用户自设OSType, 使用用户的设置 + end + + --检测用户是否自设了clib路径 + isUserSetClibPath = false; + if nil == clibPath then + --用户未设置clibPath, 接收VSCode传来的数据 + if type(dataTable.info.clibPath) == "string" then + clibPath = dataTable.info.clibPath; + else + clibPath = ""; + pathErrTip = "未能正确获取libpdebug库所在位置, 可能无法加载libpdebug库。"; + end + else + --用户自设clibPath + isUserSetClibPath = true; + end + + --查找c++的hook库是否存在. 当lua5.4时默认不使用c库 + if tostring(dataTable.info.useCHook) == "true" then + userSetUseClib = true; --用户确定使用clib + if isUserSetClibPath == true then --如果用户自设了clib路径 + if luapanda_chook ~= nil then + hookLib = luapanda_chook; + else + if not(this.tryRequireClib("libpdebug", clibPath)) then + this.printToVSCode("Require clib failed, use Lua to continue debug, use LuaPanda.doctor() for more information.", 1); + end + end + else + local clibExt, platform; + if OSType == "Darwin" then clibExt = "/?.so;"; platform = "mac"; + elseif OSType == "Linux" then clibExt = "/?.so;"; platform = "linux"; + else clibExt = "/?.dll;"; platform = "win"; end + + local lua_ver; + if _VERSION == "Lua 5.1" then + lua_ver = "501"; + elseif _VERSION == "Lua 5.4" then + lua_ver = "504"; + else + lua_ver = "503"; + end + + local x86Path = clibPath.. platform .."/x86/".. lua_ver .. clibExt; + local x64Path = clibPath.. platform .."/x86_64/".. lua_ver .. clibExt; + local armPath = clibPath .. platform .."/arm_64/".. lua_ver .. clibExt; + + if luapanda_chook ~= nil then + hookLib = luapanda_chook; + else + local requireCLibSuccess = false; + if platform == "mac" then + requireCLibSuccess = this.tryRequireClib("libpdebug", armPath) + end + + if not requireCLibSuccess and not(this.tryRequireClib("libpdebug", x64Path) or this.tryRequireClib("libpdebug", x86Path)) then + this.printToVSCode("Require clib failed, use Lua to continue debug, use LuaPanda.doctor() for more information.", 1); + end + end + end + else + userSetUseClib = false; + end + + --adapter版本信息 + adapterVer = tostring(dataTable.info.adapterVersion); + local msgTab = this.getMsgTable("initSuccess", this.getCallbackId()); + --回传是否使用了lib,是否有loadstring函数 + local isUseHookLib = 0; + if hookLib ~= nil then + isUseHookLib = 1; + --同步数据给c hook + local luaVerTable = this.stringSplit(debuggerVer , '%.'); + local luaVerNum = luaVerTable[1] * 10000 + luaVerTable[2] * 100 + luaVerTable[3]; + if hookLib.sync_lua_debugger_ver then + hookLib.sync_lua_debugger_ver(luaVerNum); + end + -- hookLib.sync_config(logLevel, pathCaseSensitivity and 1 or 0, autoPathMode and 1 or 0); + hookLib.sync_config(logLevel, pathCaseSensitivity and 1 or 0); + hookLib.sync_tempfile_path(TempFilePath_luaString); + hookLib.sync_cwd(cwd); + hookLib.sync_file_ext(luaFileExtension); + end + --detect LoadString + isUseLoadstring = 0; + if debugger_loadString ~= nil and type(debugger_loadString) == "function" then + if(pcall(debugger_loadString("return 0"))) then + isUseLoadstring = 1; + end + end + local tab = { debuggerVer = tostring(debuggerVer) , UseHookLib = tostring(isUseHookLib) , UseLoadstring = tostring(isUseLoadstring), isNeedB64EncodeStr = tostring(isNeedB64EncodeStr) }; + msgTab.info = tab; + this.sendMsg(msgTab); + --上面getBK中会判断当前状态是否WAIT_CMD, 所以最后再切换状态。 + stopOnEntry = dataTable.info.stopOnEntry; + if dataTable.info.stopOnEntry == "true" then + this.changeRunState(runState.STOP_ON_ENTRY); --停止在STOP_ON_ENTRY再接收breaks消息 + else + this.debugger_wait_msg(1); --等待1s bk消息 如果收到或超时(没有断点)就开始运行 + this.changeRunState(runState.RUN); + end + + elseif dataTable.cmd == "getWatchedVariable" then + local msgTab = this.getMsgTable("getWatchedVariable", this.getCallbackId()); + local stackId = tonumber(dataTable.info.stackId); + --loadstring系统函数, watch插件加载 + if isUseLoadstring == 1 then + --使用loadstring + this.curStackId = stackId; + local retValue = this.processWatchedExp(dataTable.info); + msgTab.info = retValue + this.sendMsg(msgTab); + this.debugger_wait_msg(); + return; + else + --旧的查找方式 + local wv = this.getWatchedVariable(dataTable.info.varName, stackId, true); + if wv ~= nil then + msgTab.info = wv; + end + this.sendMsg(msgTab); + this.debugger_wait_msg(); + end + elseif dataTable.cmd == "stopRun" then + --停止hook,已不在处理任何断点信息,也就不会产生日志等。发送消息后等待前端主动断开连接 + local msgTab = this.getMsgTable("stopRun", this.getCallbackId()); + this.sendMsg(msgTab); + if not luaProcessAsServer then + this.disconnect(); + end + elseif "LuaGarbageCollect" == dataTable.cmd then + this.printToVSCode("collect garbage!"); + collectgarbage("collect"); + --回收后刷一下内存 + this.sendLuaMemory(); + this.debugger_wait_msg(); + elseif "runREPLExpression" == dataTable.cmd then + this.curStackId = tonumber(dataTable.info.stackId); + local retValue = this.processExp(dataTable.info); + local msgTab = this.getMsgTable("runREPLExpression", this.getCallbackId()); + msgTab.info = retValue + this.sendMsg(msgTab); + this.debugger_wait_msg(); + else + end +end + +-- 变量赋值的处理函数。基本逻辑是先从当前栈帧(curStackId)中取 newValue 代表的变量,找到之后再把找到的值通过setVariableValue写回。 +-- @varName 被设置值的变量名 +-- @newValue 新值的名字,它是一个string +-- @needFindVariable 是否需要查找引用变量。(用户输入的是否是一个Object) +-- @curStackId 当前栈帧(查找和变量赋值用) +-- @assigndVar 被直接赋值(省去查找过程) +-- @setLimit 赋值时的限制范围(local upvalue global) +function this.createSetValueRetTable(varName, newValue, needFindVariable, curStackId, assigndVar , setLimit) + local info; + local getVarRet; + -- needFindVariable == true,则使用getWatchedVariable处理(可选, 用来支持 a = b (b为变量的情况))。 + if needFindVariable == false then + getVarRet = {}; + getVarRet[1] = {variablesReference = 0, value = newValue, name = varName, type = type(newValue)}; + else + getVarRet = this.getWatchedVariable( tostring(newValue), curStackId, true); + end + if getVarRet ~= nil then + -- newValue赋变量真实值 + local realVarValue; + local displayVarValue = getVarRet[1].value; + if needFindVariable == true then + if tonumber(getVarRet[1].variablesReference) > 0 then + realVarValue = variableRefTab[tonumber(getVarRet[1].variablesReference)]; + else + if getVarRet[1].type == 'number' then realVarValue = tonumber(getVarRet[1].value) end + if getVarRet[1].type == 'string' then + realVarValue = tostring(getVarRet[1].value); + local first_chr = string.sub(realVarValue, 1, 1); + local end_chr = string.sub(realVarValue, -1, -1); + if first_chr == end_chr then + if first_chr == "'" or first_chr == '"' then + realVarValue = string.sub(realVarValue, 2, -2); + displayVarValue = realVarValue; + end + end + end + if getVarRet[1].type == 'boolean' then + if getVarRet[1].value == "true" then + realVarValue = true; + else + realVarValue = false; + end + end + if getVarRet[1].type == 'nil' then realVarValue = nil end + end + else + realVarValue = getVarRet[1].value; + end + + local setVarRet; + if type(assigndVar) ~= table then + setVarRet = this.setVariableValue( varName, curStackId, realVarValue, setLimit ); + else + assigndVar[varName] = realVarValue; + setVarRet = true; + end + + if getVarRet[1].type == "string" then + displayVarValue = '"' .. displayVarValue .. '"'; + end + + if setVarRet ~= false and setVarRet ~= nil then + local retTip = "变量 ".. varName .." 赋值成功"; + info = { success = "true", name = getVarRet[1].name , type = getVarRet[1].type , value = displayVarValue, variablesReference = tostring(getVarRet[1].variablesReference), tip = retTip}; + else + info = { success = "false", type = type(realVarValue), value = displayVarValue, tip = "找不到要设置的变量"}; + end + + else + info = { success = "false", type = nil, value = nil, tip = "输入的值无意义"}; + end + return info +end + +--接收消息 +--这里维护一个接收消息队列,因为Lua端未做隔断符保护,变量赋值时请注意其中不要包含隔断符 |*| +-- @timeoutSec 超时时间 +-- @return boolean 成功/失败 +function this.receiveMessage( timeoutSec ) + timeoutSec = timeoutSec or MAX_TIMEOUT_SEC; + sock:settimeout(timeoutSec); + --如果队列中还有消息,直接取出来交给dataProcess处理 + if #recvMsgQueue > 0 then + local saved_cmd = recvMsgQueue[1]; + table.remove(recvMsgQueue, 1); + this.dataProcess(saved_cmd); + return true; + end + + if currentRunState == runState.DISCONNECT then + this.disconnect(); + return false; + end + + if sock == nil then + this.printToConsole("[debugger error]接收信息失败 | reason: socket == nil", 2); + return; + end + local response, err = sock:receive("*l"); + if response == nil then + if err == "closed" then + this.printToConsole("[debugger error]接收信息失败 | reason:"..err, 2); + this.disconnect(); + end + return false; + else + + --判断是否是一条消息,分拆 + local proc_response = string.sub(response, 1, -1 * (TCPSplitChar:len() + 1 )); + local match_res = string.find(proc_response, TCPSplitChar, 1, true); + if match_res == nil then + --单条 + this.dataProcess(proc_response); + else + --有粘包 + repeat + --待处理命令 + local str1 = string.sub(proc_response, 1, match_res - 1); + table.insert(recvMsgQueue, str1); + --剩余匹配 + local str2 = string.sub(proc_response, match_res + TCPSplitChar:len() , -1); + match_res = string.find(str2, TCPSplitChar, 1, true); + until not match_res + this.receiveMessage(); + end + return true; + end +end + +--这里不用循环,在外面处理完消息会在调用回来 +-- @timeoutSec 等待时间s +-- @entryFlag 入口标记,用来标识是从哪里调入的 +function this.debugger_wait_msg(timeoutSec) + timeoutSec = timeoutSec or MAX_TIMEOUT_SEC; + + if currentRunState == runState.WAIT_CMD then + local ret = this.receiveMessage(timeoutSec); + return ret; + end + + if currentRunState == runState.STEPOVER or + currentRunState == runState.STEPIN or + currentRunState == runState.STEPOUT or + currentRunState == runState.RUN then + this.receiveMessage(0); + return + end + + if currentRunState == runState.STEPOVER_STOP or + currentRunState == runState.STEPIN_STOP or + currentRunState == runState.STEPOUT_STOP or + currentRunState == runState.HIT_BREAKPOINT or + currentRunState == runState.STOP_ON_ENTRY + then + this.sendLuaMemory(); + this.receiveMessage(MAX_TIMEOUT_SEC); + return + end +end + +----------------------------------------------------------------------------- +-- 调试器核心方法 +----------------------------------------------------------------------------- + +------------------------堆栈管理------------------------- + + +--getStackTable需要建立stackTable,保存每层的lua函数实例(用来取upvalue),保存函数展示层级和ly的关系(便于根据前端传来的stackId查局部变量) +-- @level 要获取的层级 +function this.getStackTable( level ) + local functionLevel = 0 + if hookLib ~= nil then + functionLevel = level or HOOK_LEVEL; + else + functionLevel = level or this.getSpecificFunctionStackLevel(lastRunFunction.func); + end + local stackTab = {}; + local userFuncSteakLevel = 0; --用户函数的steaklevel + local clevel = 0 + repeat + local info = debug.getinfo(functionLevel, "SlLnf") + if info == nil then + break; + end + if info.source ~= "=[C]" then + local ss = {}; + ss.file = this.getPath(info); + local oPathFormated = this.formatOpath(info.source) ; --从lua虚拟机获得的原始路径, 它用于帮助定位VScode端原始lua文件的位置(存在重名文件的情况)。 + ss.oPath = this.truncatedPath(oPathFormated, truncatedOPath); + ss.name = "文件名"; --这里要做截取 + ss.line = tostring(info.currentline); + --使用hookLib时,堆栈有偏移量,这里统一调用栈顶编号2 + local ssindex = functionLevel - 3; + if hookLib ~= nil then + ssindex = ssindex + 2; + end + ss.index = tostring(ssindex); + table.insert(stackTab,ss); + --把数据存入currentCallStack + local callStackInfo = {}; + callStackInfo.name = ss.file; + callStackInfo.line = ss.line; + callStackInfo.func = info.func; --保存的function + callStackInfo.realLy = functionLevel; --真实堆栈层functionLevel(仅debug时用) + table.insert(currentCallStack, callStackInfo); + + --level赋值 + if userFuncSteakLevel == 0 then + userFuncSteakLevel = functionLevel; + end + else + local callStackInfo = {}; + callStackInfo.name = info.source; + callStackInfo.line = info.currentline; --C函数行号 + callStackInfo.func = info.func; --保存的function + callStackInfo.realLy = functionLevel; --真实堆栈层functionLevel(仅debug时用) + table.insert(currentCallStack, callStackInfo); + clevel = clevel + 1 + end + functionLevel = functionLevel + 1; + until info == nil + return stackTab, userFuncSteakLevel; +end + +-- 把路径中去除后缀部分的.变为/, +-- @filePath 被替换的路径 +-- @ext 后缀(后缀前的 . 不会被替换) +function this.changePotToSep(filePath, ext) + local idx = filePath:find(ext, (-1) * ext:len() , true) + if idx then + local tmp = filePath:sub(1, idx - 1):gsub("%.", "/"); + filePath = tmp .. ext; + end + return filePath; +end + +--- this.truncatedPath 从 beTruncatedPath 字符串中去除 rep 匹配到的部分 +function this.truncatedPath(beTruncatedPath, rep) + if beTruncatedPath and beTruncatedPath ~= '' and rep and rep ~= "" then + local _, lastIdx = string.find(beTruncatedPath , rep); + if lastIdx then + beTruncatedPath = string.sub(beTruncatedPath, lastIdx + 1); + end + end + return beTruncatedPath; +end + +--这个方法是根据的cwd和luaFileExtension对getInfo获取到的路径进行标准化 +-- @info getInfo获取的包含调用信息table +function this.getPath( info ) + local filePath = info; + if type(info) == "table" then + filePath = info.source; + end + --尝试从Cache中获取路径 + local cachePath = this.getCacheFormatPath(filePath); + if cachePath~= nil and type(cachePath) == "string" then + return cachePath; + end + + -- originalPath是getInfo的原始路径,后面用来填充路径缓存的key + local originalPath = filePath; + + --如果路径头部有@,去除 + if filePath:sub(1,1) == '@' then + filePath = filePath:sub(2); + end + + --如果路径头部有./,去除 + if filePath:sub(1,2) == './' then + filePath = filePath:sub(3); + end + -- getPath的参数路径可能来自于hook, 也可能是一个已标准的路径 + if userDotInRequire then + if autoExt == nil or autoExt == '' then + -- 在虚拟机返回路径没有后缀的情况下,用户必须自设后缀 + -- 确定filePath中最后一个.xxx 不等于用户配置的后缀, 则把所有的. 转为 / + if not filePath:find(luaFileExtension , (-1) * luaFileExtension:len(), true) then + -- getinfo 路径没有后缀,把 . 全部替换成 / ,我们不允许用户在文件(或文件夹)名称中出现"." , 因为无法区分 + filePath = string.gsub(filePath, "%.", "/"); + else + -- 有后缀,那么把除后缀外的部分中的. 转为 / + filePath = this.changePotToSep(filePath, luaFileExtension); + end + + else + -- 虚拟机路径有后缀 + filePath = this.changePotToSep(filePath, autoExt); + end + end + + --后缀处理 + if luaFileExtension ~= "" then + --判断后缀中是否包含%1等魔法字符.用于从lua虚拟机获取到的路径含.的情况 + if string.find(luaFileExtension, "%%%d") then + filePath = string.gsub(filePath, "%.[%w%.]+$", luaFileExtension); + else + filePath = string.gsub(filePath, "%.[%w%.]+$", ""); + filePath = filePath .. "." .. luaFileExtension; + end + end + + + if not autoPathMode then + --绝对路径和相对路径的处理 | 若在Mac下以/开头,或者在Win下以*:开头,说明是绝对路径,不需要再拼。 + if filePath:sub(1,1) == [[/]] or filePath:sub(1,2):match("^%a:") then + isAbsolutePath = true; + else + isAbsolutePath = false; + if cwd ~= "" then + --查看filePath中是否包含cwd + local matchRes = string.find(filePath, cwd, 1, true); + if matchRes == nil then + filePath = cwd.."/"..filePath; + end + end + end + end + filePath = this.genUnifiedPath(filePath); + + if autoPathMode then + -- 自动路径模式下,只保留文件名 + filePath = this.getFilenameFromPath(filePath) + end + --放入Cache中缓存 + this.setCacheFormatPath(originalPath, filePath); + return filePath; +end + +--从路径中获取[文件名.后缀] +function this.getFilenameFromPath(path) + if path == nil then + return ''; + end + + return string.match(path, "([^/]*)$"); +end + +--获取当前函数的堆栈层级 +--原理是向上查找,遇到DebuggerFileName就调过。但是可能存在代码段和C导致不确定性。目前使用getSpecificFunctionStackLevel代替。 +function this.getCurrentFunctionStackLevel() + -- print(debug.traceback("===getCurrentFunctionStackLevel Stack trace===")) + local funclayer = 2; + repeat + local info = debug.getinfo(funclayer, "S"); --通过name来判断 + if info ~= nil then + local matchRes = ((info.source == DebuggerFileName) or (info.source == DebuggerToolsName)); + if matchRes == false then + return (funclayer - 1); + end + end + funclayer = funclayer + 1; + until not info + return 0; +end + +--获取指定函数的堆栈层级 +--通常用来获取最后一个用户函数的层级,用法是从currentCallStack取用户点击的栈,再使用本函数取对应层级。 +-- @func 被获取层级的function +function this.getSpecificFunctionStackLevel( func ) + local funclayer = 2; + repeat + local info = debug.getinfo(funclayer, "f"); --通过name来判断 + if info ~= nil then + if info.func == func then + return (funclayer - 1); + end + end + funclayer = funclayer + 1; + until not info + return 0; +end + +--检查当前堆栈是否是Lua +-- @checkLayer 指定的栈层 +function this.checkCurrentLayerisLua( checkLayer ) + local info = debug.getinfo(checkLayer, "S"); + if info == nil then + return nil; + end + info.source = this.genUnifiedPath(info.source); + if info ~= nil then + for k,v in pairs(info) do + if k == "what" then + if v == "C" then + return false; + else + return true; + end + end + end + end + return nil; +end + +-- 在 fakeBreakPointCache 中查询此断点是否真实存在 +-- 因为同名文件的影响, 有些断点是命中错误的。经过VScode校验后,这些错误命中的断点信息被存在fakeBreakPointCache中 +function this.checkRealHitBreakpoint( oPath, line ) + -- 在假命中列表中搜索,如果本行有过假命中记录,返回 false + if oPath and fakeBreakPointCache[oPath] then + for _, value in ipairs(fakeBreakPointCache[oPath]) do + if tonumber(value) == tonumber(line) then + this.printToVSCode("cache hit bp in same name file. source:" .. tostring(oPath) .. " line:" .. tostring(line)); + return false; + end + end + end + return true; +end + +------------------------断点处理------------------------- +--- this.isHitBreakpoint 判断断点是否命中。这个方法在c mod以及lua中都有调用 +-- @param breakpointPath 文件名+后缀 +-- @param opath getinfo path +-- @param curLine 当前执行行号 +function this.isHitBreakpoint(breakpointPath, opath, curLine) + if breaks[breakpointPath] then + local oPathFormated; + for fullpath, fullpathNode in pairs(breaks[breakpointPath]) do + recordBreakPointPath = fullpath; --这里是为了兼容用户断点行号没有打对的情况 + local line_hit,cur_node = false,{}; + for _, node in ipairs(fullpathNode) do + if tonumber(node["line"]) == tonumber(curLine) then + line_hit = true; -- fullpath 文件中 有行号命中 + cur_node = node; + recordBreakPointPath = fullpath; --行号命中后,再设置一次,保证路径准确 + break; + end + end + + -- 在lua端不知道是否有同名文件,基本思路是先取文件名,用文件名和breakpointArray 进行匹配。 + -- 当文件名匹配上时,可能存在多个同名文件中存在断点的情况。这时候需要用 oPath 和 fullpath 进行对比,取出正确的。 + -- 当本地文件中有断点,lua做了初步命中后,可能存在 stack , 断点文件有同名的情况。这就需要vscode端也需要checkfullpath函数,使用opath进行文件校验。 + if line_hit then + if oPathFormated == nil then + -- 为了避免性能消耗,仅在行号命中时才处理 opath 到标准化路径 + oPathFormated = this.formatOpath(opath); + -- 截取 + oPathFormated = this.truncatedPath(oPathFormated, truncatedOPath); + end + + if (not distinguishSameNameFile) or (string.match(fullpath, oPathFormated ) and this.checkRealHitBreakpoint(opath, curLine)) then + -- type是TS中的枚举类型,其定义在BreakPoint.tx文件中 + -- enum BreakpointType { + -- conditionBreakpoint = 0, + -- logPoint, + -- lineBreakpoint + -- } + + -- 处理断点 + if cur_node["type"] == "0" then + -- condition breakpoint + -- 注意此处不要使用尾调用,否则会影响调用栈,导致Lua5.3和Lua5.1中调用栈层级不同 + local conditionRet = this.IsMeetCondition(cur_node["condition"]); + -- this.printToVSCode("Condition BK: condition:" .. cur_node["condition"] .. " conditionRet " .. tostring(conditionRet)); + return conditionRet; + elseif cur_node["type"] == "1" then + -- log point + this.printToVSCode("[LogPoint Output]: " .. cur_node["logMessage"], 2, 2); + return false; + else + -- line breakpoint + return true; + end + end + end + end + else + testBreakpointFlag = false; --如果用户打开了测试断点的标志位而未主动关闭,会在lua继续运行时关闭。 + recordBreakPointPath = ''; --当切换文件时置空,避免提示给用户错误信息 + end + return false; +end + +-- 条件断点处理函数 +-- 返回true表示条件成立 +-- @conditionExp 条件表达式 +function this.IsMeetCondition(conditionExp) + -- 判断条件之前更新堆栈信息 + currentCallStack = {}; + variableRefTab = {}; + variableRefIdx = 1; + if hookLib then + this.getStackTable(4); + else + this.getStackTable(); + end + + this.curStackId = 2; --在用户空间最上层执行 + + local conditionExpTable = {["varName"] = conditionExp} + local retTable = this.processWatchedExp(conditionExpTable) + + local isMeetCondition = false; + local function HandleResult() + if retTable[1]["isSuccess"] == "true" then + if retTable[1]["value"] == "nil" or (retTable[1]["value"] == "false" and retTable[1]["type"] == "boolean") then + isMeetCondition = false; + else + isMeetCondition = true; + end + else + isMeetCondition = false; + end + end + + xpcall(HandleResult, function() isMeetCondition = false; end) + return isMeetCondition; +end + +--加入断点函数 +function this.BP() + this.printToConsole("BP()"); + if hookLib == nil then + if currentHookState == hookState.DISCONNECT_HOOK then + this.printToConsole("BP() but NO HOOK"); + return; + end + + local co, isMain = coroutine.running(); + if _VERSION == "Lua 5.1" then + if co == nil then + isMain = true; + else + isMain = false; + end + end + + if isMain == true then + this.printToConsole("BP() in main"); + else + this.printToConsole("BP() in coroutine"); + debug.sethook(co, this.debug_hook, "lrc"); + end + hitBP = true; + else + if hookLib.get_libhook_state() == hookState.DISCONNECT_HOOK then + this.printToConsole("BP() but NO C HOOK"); + return; + end + + --clib, set hitBP + hookLib.sync_bp_hit(1); + end + this.changeHookState(hookState.ALL_HOOK); + return true; +end + +-- 检查当前文件中是否有断点 +-- 如果填写参数fileName 返回fileName中有无断点, 全局有无断点 +-- fileName为空,返回全局是否有断点 +function this.checkHasBreakpoint(fileName) + local hasBk = false; + --有无全局断点 + if next(breaks) == nil then + hasBk = false; + else + hasBk = true; + end + --当前文件中是否有断点 + if fileName ~= nil then + return breaks[fileName] ~= nil, hasBk; + else + return hasBk; + end +end + +function this.checkfuncHasBreakpoint(sLine, eLine, fileName) + if breaks[fileName] == nil then + return false; + end + sLine = tonumber(sLine); + eLine = tonumber(eLine); + + --起始行号>结束行号,或者sLine = eLine = 0 + if sLine >= eLine then + return true; + end + + if this.getTableMemberNum(breaks[fileName]) <= 0 then + return false; + else + for k,v in pairs(breaks[fileName]) do + for _, node in ipairs(v) do + if tonumber(node.line) > sLine and tonumber(node.line) <= eLine then + return true; + end + end + end + end + return false; +end +------------------------HOOK模块------------------------- +-- 钩子函数 +-- @event 执行状态(call,return,line) +-- @line 行号 +function this.debug_hook(event, line) + if this.reConnect() == 0 then return; end + + if logLevel == 0 then + local logTable = {"-----enter debug_hook-----\n", "event:", event, " line:", tostring(line), " currentHookState:",currentHookState," currentRunState:", currentRunState}; + local logString = table.concat(logTable); + this.printToVSCode(logString); + end + + --litehook 仅非阻塞接收断点 + if currentHookState == hookState.LITE_HOOK then + local ti = os.time(); + if ti - receiveMsgTimer > 1 then + this.debugger_wait_msg(0); + receiveMsgTimer = ti; + end + return; + end + + --运行中 + local info; + local co, isMain = coroutine.running(); + if _VERSION == "Lua 5.1" then + if co == nil then + isMain = true; + else + isMain = false; + end + end + isInMainThread = isMain; + if isMain == true then + info = debug.getinfo(2, "Slf") + else + info = debug.getinfo(co, 2, "Slf") + end + info.event = event; + + this.real_hook_process(info); +end + +function this.real_hook_process(info) + local jumpFlag = false; + local event = info.event; + + --如果当前行在Debugger中,不做处理 + local matchRes = ((info.source == DebuggerFileName) or (info.source == DebuggerToolsName)); + if matchRes == true then + return; + end + + --即使MID hook在C中, 或者是Run或者单步时也接收消息 + if currentRunState == runState.RUN or + currentRunState == runState.STEPOVER or + currentRunState == runState.STEPIN or + currentRunState == runState.STEPOUT then + local ti = os.time(); + if ti - receiveMsgTimer > 1 then + this.debugger_wait_msg(0); + receiveMsgTimer = ti; + end + end + + --不处理C函数 + if info.source == "=[C]" then + this.printToVSCode("current method is C"); + return; + end + + --不处理 slua "temp buffer" + if info.source == "temp buffer" then + this.printToVSCode("current method is in temp buffer"); + return; + end + + --不处理 xlua "chunk" + if info.source == "chunk" then + this.printToVSCode("current method is in chunk"); + return; + end + + --lua 代码段的处理,目前暂不调试代码段。 + if info.short_src:match("%[string \"") then + --当shortSrc中出现[string时]。要检查一下source, 区别是路径还是代码段. 方法是看路径中有没有\t \n ; + if info.source:match("[\n;=]") then + --是代码段,调过 + this.printToVSCode("hook jump Code String!"); + jumpFlag = true; + end + end + + --标准路径处理 + if jumpFlag == false then + info.orininal_source = info.source; --使用 info.orininal_source 记录lua虚拟机传来的原始路径 + info.source = this.getPath(info); + end + --本次执行的函数和上次执行的函数作对比,防止在一行停留两次 + if lastRunFunction["currentline"] == info["currentline"] and lastRunFunction["source"] == info["source"] and lastRunFunction["func"] == info["func"] and lastRunFunction["event"] == event then + this.printToVSCode("run twice"); + end + --记录最后一次调用信息 + if jumpFlag == false then + lastRunFunction = info; + lastRunFunction["event"] = event; + lastRunFilePath = info.source; + end + --输出函数信息到前台 + if logLevel == 0 and jumpFlag == false then + local logTable = {"[lua hook] event:", tostring(event), " currentRunState:",tostring(currentRunState)," currentHookState:",tostring(currentHookState)," jumpFlag:", tostring(jumpFlag)}; + for k,v in pairs(info) do + table.insert(logTable, tostring(k)); + table.insert(logTable, ":"); + table.insert(logTable, tostring(v)); + table.insert(logTable, " "); + end + local logString = table.concat(logTable); + this.printToVSCode(logString); + end + + --仅在line时做断点判断。进了断点之后不再进入本次STEP类型的判断,用Aflag做标记 + local isHit = false; + if tostring(event) == "line" and jumpFlag == false then + if currentRunState == runState.RUN or currentRunState == runState.STEPOVER or currentRunState == runState.STEPIN or currentRunState == runState.STEPOUT then + --断点判断 + isHit = this.isHitBreakpoint(info.source, info.orininal_source, info.currentline) or hitBP; + if isHit == true then + this.printToVSCode("HitBreakpoint!"); + --备份信息 + local recordStepOverCounter = stepOverCounter; + local recordStepOutCounter = stepOutCounter; + local recordCurrentRunState = currentRunState; + --计数器清0 + stepOverCounter = 0; + stepOutCounter = 0; + this.changeRunState(runState.HIT_BREAKPOINT); + hitBpTwiceCheck = true; -- 命中标志默认设置为true, 如果校验通过,会保留这个标记,校验失败会修改 + if hitBP then + hitBP = false; --hitBP是断点硬性命中标记 + --发消息并等待 + this.SendMsgWithStack("stopOnCodeBreakpoint"); + else + --发消息并等待 + this.SendMsgWithStack("stopOnBreakpoint"); + --若二次校验未命中,恢复状态 + if hitBpTwiceCheck == false then + isHit = false; + -- 确认未命中,把状态恢复,继续运行 + this.changeRunState(recordCurrentRunState); + stepOverCounter = recordStepOverCounter; + stepOutCounter = recordStepOutCounter; + end + end + end + end + end + + if isHit == true then + return; + end + + if currentRunState == runState.STEPOVER then + -- line stepOverCounter!= 0 不作操作 + -- line stepOverCounter == 0 停止 + if event == "line" and stepOverCounter <= 0 and jumpFlag == false then + stepOverCounter = 0; + this.changeRunState(runState.STEPOVER_STOP) + this.SendMsgWithStack("stopOnStep"); + elseif event == "return" or event == "tail return" then + --5.1中是tail return + if stepOverCounter ~= 0 then + stepOverCounter = stepOverCounter - 1; + end + elseif event == "call" then + stepOverCounter = stepOverCounter + 1; + end + elseif currentRunState == runState.STOP_ON_ENTRY then + --在Lua入口点处直接停住 + if event == "line" and jumpFlag == false then + --初始化内存分析的变量 + -- MemProfiler.getSystemVar(); + --这里要判断一下是Lua的入口点,否则停到 + this.SendMsgWithStack("stopOnEntry"); + end + elseif currentRunState == runState.STEPIN then + if event == "line" and jumpFlag == false then + this.changeRunState(runState.STEPIN_STOP) + this.SendMsgWithStack("stopOnStepIn"); + end + elseif currentRunState == runState.STEPOUT then + --line 不做操作 + --in 计数器+1 + --out 计数器-1 + if jumpFlag == false then + if stepOutCounter <= -1 then + stepOutCounter = 0; + this.changeRunState(runState.STEPOUT_STOP) + this.SendMsgWithStack("stopOnStepOut"); + end + end + + if event == "return" or event == "tail return" then + stepOutCounter = stepOutCounter - 1; + elseif event == "call" then + stepOutCounter = stepOutCounter + 1; + end + end + + --在RUN时检查并改变状态 + if hookLib == nil then + if currentRunState == runState.RUN and jumpFlag == false and currentHookState ~= hookState.DISCONNECT_HOOK then + local fileBP, G_BP = this.checkHasBreakpoint(lastRunFilePath); + if fileBP == false then + --文件无断点 + if G_BP == true then + this.changeHookState(hookState.MID_HOOK); + else + this.changeHookState(hookState.LITE_HOOK); + end + else + --文件有断点, 判断函数内是否有断点 + local funHasBP = this.checkfuncHasBreakpoint(lastRunFunction.linedefined, lastRunFunction.lastlinedefined, lastRunFilePath); + if funHasBP then + --函数定义范围内 + this.changeHookState(hookState.ALL_HOOK); + else + this.changeHookState(hookState.MID_HOOK); + end + end + + --MID_HOOK状态下,return需要在下一次hook检查文件(return时,还是当前文件,检查文件时状态无法转换) + if (event == "return" or event == "tail return") and currentHookState == hookState.MID_HOOK then + this.changeHookState(hookState.ALL_HOOK); + end + end + end +end + +-- 向Vscode发送标准通知消息,cmdStr是消息类型 +-- @cmdStr 命令字 +function this.SendMsgWithStack(cmdStr) + local msgTab = this.getMsgTable(cmdStr); + local userFuncLevel = 0; + msgTab["stack"] , userFuncLevel= this.getStackTable(); + if userFuncLevel ~= 0 then + lastRunFunction["func"] = debug.getinfo( (userFuncLevel - 1) , 'f').func; + end + this.sendMsg(msgTab); + this.debugger_wait_msg(); +end + +-- hook状态改变 +-- @s 目标状态 +function this.changeHookState( s ) + if hookLib == nil and currentHookState == s then + return; + end + + this.printToConsole("change hook state :"..s) + if s ~= hookState.DISCONNECT_HOOK then + this.printToVSCode("change hook state : "..s) + end + + currentHookState = s; + if s == hookState.DISCONNECT_HOOK then + --为了实现通用attach模式,require即开始hook,利用r作为时机发起连接 + if openAttachMode == true then + if hookLib then hookLib.lua_set_hookstate(hookState.DISCONNECT_HOOK); else debug.sethook(this.debug_hook, "r", 1000000); end + else + if hookLib then hookLib.endHook(); else debug.sethook(); end + end + elseif s == hookState.LITE_HOOK then + if hookLib then hookLib.lua_set_hookstate(hookState.LITE_HOOK); else debug.sethook(this.debug_hook, "r"); end + elseif s == hookState.MID_HOOK then + if hookLib then hookLib.lua_set_hookstate(hookState.MID_HOOK); else debug.sethook(this.debug_hook, "rc"); end + elseif s == hookState.ALL_HOOK then + if hookLib then hookLib.lua_set_hookstate(hookState.ALL_HOOK); else debug.sethook(this.debug_hook, "lrc");end + end + --coroutine + if hookLib == nil then + this.changeCoroutinesHookState(); + end +end + +-- 运行状态机,状态变更 +-- @s 目标状态 +-- @isFromHooklib 1:从libc库中发来的状态改变 | 0:lua发来的状态改变 +function this.changeRunState(s , isFromHooklib) + local msgFrom; + if isFromHooklib == 1 then + msgFrom = "libc"; + else + msgFrom = "lua"; + end + + --WAIT_CMD状态会等待接收消息,以下两个状态下不能发消息 + this.printToConsole("changeRunState :"..s.. " | from:"..msgFrom); + if s ~= runState.DISCONNECT and s ~= runState.WAIT_CMD then + this.printToVSCode("changeRunState :"..s.." | from:"..msgFrom); + end + + if hookLib ~= nil and isFromHooklib ~= 1 then + hookLib.lua_set_runstate(s); + end + currentRunState = s; + --状态切换时,清除记录栈信息的状态 + currentCallStack = {}; + variableRefTab = {}; + variableRefIdx = 1; +end + +-- 修改协程状态 +-- @s hook标志位 +function this.changeCoroutinesHookState(s) + s = s or currentHookState; + this.printToConsole("change [Coroutine] HookState: "..tostring(s)); + for k ,co in pairs(coroutinePool) do + if coroutine.status(co) == "dead" then + coroutinePool[k] = nil + else + this.changeCoroutineHookState(co, s) + end + end +end + +function this.changeCoroutineHookState(co, s) + if s == hookState.DISCONNECT_HOOK then + if openAttachMode == true then + debug.sethook(co, this.debug_hook, "r", 1000000); + else + debug.sethook(co, this.debug_hook, ""); + end + elseif s == hookState.LITE_HOOK then + debug.sethook(co , this.debug_hook, "r"); + elseif s == hookState.MID_HOOK then + debug.sethook(co , this.debug_hook, "rc"); + elseif s == hookState.ALL_HOOK then + debug.sethook(co , this.debug_hook, "lrc"); + end +end +-------------------------变量处理相关----------------------------- + +--清空REPL的env环境 +function this.clearEnv() + if this.getTableMemberNum(env) > 0 then + --清空env table + env = setmetatable({}, getmetatable(env)); + end +end + +--返回REPL的env环境 +function this.showEnv() + return env; +end + +-- 用户观察table的查找函数。用tableVarName作为key去查逐层级查找realVar是否匹配 +-- @tableVarName 是用户观察的变量名,已经按层级被解析成table。比如用户输出a.b.c,tableVarName是 a = { b = { c } } +-- @realVar 是待查询 table +-- @return 返回查到的table。没查到返回nil +function this.findTableVar( tableVarName, realVar) + if type(tableVarName) ~= "table" or type(realVar) ~= "table" then + return nil; + end + + local layer = 2; + local curVar = realVar; + local jumpOutFlag = false; + repeat + if tableVarName[layer] ~= nil then + --这里优先展示数字key,比如a{"1" = "aa", [1] = "bb"} 会展示[1]的值 + local tmpCurVar = nil; + xpcall(function() tmpCurVar = curVar[tonumber(tableVarName[layer])]; end , function() tmpCurVar = nil end ); + if tmpCurVar == nil then + xpcall(function() curVar = curVar[tostring(tableVarName[layer])]; end , function() curVar = nil end ); + else + curVar = tmpCurVar; + end + layer = layer + 1; + if curVar == nil then + return nil; + end + else + --找到 + jumpOutFlag = true; + end + until(jumpOutFlag == true) + return curVar; +end + +-- 根据传入信息生成返回的变量信息 +-- @variableName 变量名 +-- @variableIns 变量实例 +-- @return 包含变量信息的格式化table +function this.createWatchedVariableInfo(variableName, variableIns) + local var = {}; + var.name = variableName; + var.type = tostring(type(variableIns)); + xpcall(function() var.value = tostring(variableIns) end , function() var.value = tostring(type(variableIns)) .. " [value can't trans to string]" end ); + var.variablesReference = "0"; --这个地方必须用“0”, 以免variableRefTab[0]出错 + + if var.type == "table" or var.type == "function" or var.type == "userdata" then + var.variablesReference = variableRefIdx; + variableRefTab[variableRefIdx] = variableIns; + variableRefIdx = variableRefIdx + 1; + if var.type == "table" then + local memberNum = this.getTableMemberNum(variableIns); + var.value = memberNum .." Members ".. var.value; + end + elseif var.type == "string" then + var.value = '"' ..variableIns.. '"'; + end + return var; +end + +-- 设置 global 变量 +-- @varName 被修改的变量名 +-- @newValue 新的值 +function this.setGlobal(varName, newValue) + _G[varName] = newValue; + this.printToVSCode("[setVariable success] 已设置 _G.".. varName .. " = " .. tostring(newValue) ); + return true; +end + +-- 设置 upvalue 变量 +-- @varName 被修改的变量名 +-- @newValue 新的值 +-- @stackId 变量所在stack栈层 +-- @tableVarName 变量名拆分成的数组 +function this.setUpvalue(varName, newValue, stackId, tableVarName) + local ret = false; + local upTable = this.getUpValueVariable(currentCallStack[stackId - 1 ].func, true); + for i, realVar in ipairs(upTable) do + if realVar.name == varName then + if #tableVarName > 0 and type(realVar) == "table" then + --处理a.b.c的table类型 + local findRes = this.findTableVar(tableVarName, variableRefTab[realVar.variablesReference]); + if findRes ~= nil then + --命中 + local setVarRet = debug.setupvalue (currentCallStack[stackId - 1 ].func, i, newValue); + if setVarRet == varName then + this.printToConsole("[setVariable success1] 已设置 upvalue ".. varName .. " = " .. tostring(newValue) ); + ret = true; + else + this.printToConsole("[setVariable error1] 未能设置 upvalue ".. varName .. " = " .. tostring(newValue).." , 返回结果: ".. tostring(setVarRet)); + end + return ret; + end + else + --命中 + local setVarRet = debug.setupvalue (currentCallStack[stackId - 1 ].func, i, newValue); + if setVarRet == varName then + this.printToConsole("[setVariable success] 已设置 upvalue ".. varName .. " = " .. tostring(newValue) ); + ret = true; + else + this.printToConsole("[setVariable error] 未能设置 upvalue ".. varName .. " = " .. tostring(newValue).." , 返回结果: ".. tostring(setVarRet)); + end + return ret; + end + end + end + return ret; +end + +-- 设置local 变量 +-- @varName 被修改的变量名 +-- @newValue 新的值 +-- @tableVarName 变量名拆分成的数组 +function this.setLocal( varName, newValue, tableVarName, stackId) + local istackId = tonumber(stackId); + local offset = (istackId and istackId - 2) or 0; + local layerVarTab, ly = this.getVariable(nil , true, offset); + local ret = false; + for i, realVar in ipairs(layerVarTab) do + if realVar.name == varName then + if #tableVarName > 0 and type(realVar) == "table" then + --处理a.b.c的table类型 + local findRes = this.findTableVar(tableVarName, variableRefTab[realVar.variablesReference]); + if findRes ~= nil then + --命中 + local setVarRet = debug.setlocal(ly , layerVarTab[i].index, newValue); + if setVarRet == varName then + this.printToConsole("[setVariable success1] 已设置 local ".. varName .. " = " .. tostring(newValue) ); + ret = true; + else + this.printToConsole("[setVariable error1] 未能设置 local ".. varName .. " = " .. tostring(newValue).." , 返回结果: ".. tostring(setVarRet)); + end + return ret; + end + else + + local setVarRet = debug.setlocal(ly , layerVarTab[i].index, newValue); + + if setVarRet == varName then + this.printToConsole("[setVariable success] 已设置 local ".. varName .. " = " .. tostring(newValue) ); + ret = true; + else + this.printToConsole("[setVariable error] 未能设置 local ".. varName .. " = " .. tostring(newValue) .." , 返回结果: ".. tostring(setVarRet)); + end + return ret; + end + end + end + return ret; +end + + +-- 设置变量的值 +-- @varName 被修改的变量名 +-- @curStackId 调用栈层级(仅在固定栈层查找) +-- @newValue 新的值 +-- @limit 限制符, 10000表示仅在局部变量查找 ,20000 global, 30000 upvalue +function this.setVariableValue (varName, stackId, newValue , limit) + this.printToConsole("setVariableValue | varName:" .. tostring(varName) .. " stackId:".. tostring(stackId) .." newValue:" .. tostring(newValue) .." limit:"..tostring(limit) ) + if tostring(varName) == nil or tostring(varName) == "" then + --赋值错误 + this.printToConsole("[setVariable Error] 被赋值的变量名为空", 2 ); + this.printToVSCode("[setVariable Error] 被赋值的变量名为空", 2 ); + return false; + end + + --支持a.b.c形式。切割varName + local tableVarName = {}; + if varName:match('%.') then + tableVarName = this.stringSplit(varName , '%.'); + if type(tableVarName) ~= "table" or #tableVarName < 1 then + return false; + end + varName = tableVarName[1]; + end + + if limit == "local" then + local ret = this.setLocal( varName, newValue, tableVarName, stackId); + return ret; + elseif limit == "upvalue" then + local ret = this.setUpvalue(varName, newValue, stackId, tableVarName); + return ret + elseif limit == "global" then + local ret = this.setGlobal(varName, newValue); + return ret; + else + local ret = this.setLocal( varName, newValue, tableVarName, stackId) or this.setUpvalue(varName, newValue, stackId, tableVarName) or this.setGlobal(varName, newValue); + this.printToConsole("set Value res :".. tostring(ret)); + return ret; + end +end + +-- 按照local -> upvalue -> _G 顺序查找观察变量 +-- @varName 用户输入的变量名 +-- @stackId 调用栈层级(仅在固定栈层查找) +-- @isFormatVariable 是否把变量格式化为VSCode接收的形式 +-- @return 查到返回信息,查不到返回nil +function this.getWatchedVariable( varName , stackId , isFormatVariable ) + this.printToConsole("getWatchedVariable | varName:" .. tostring(varName) .. " stackId:".. tostring(stackId) .." isFormatVariable:" .. tostring(isFormatVariable) ) + if tostring(varName) == nil or tostring(varName) == "" then + return nil; + end + + if type(currentCallStack[stackId - 1]) ~= "table" or type(currentCallStack[stackId - 1].func) ~= "function" then + local str = "getWatchedVariable currentCallStack " .. stackId - 1 .. " Error\n" .. this.serializeTable(currentCallStack, "currentCallStack"); + this.printToVSCode(str, 2); + return nil; + end + + --orgname 记录原名字. 用来处理a.b.c的形式 + local orgname = varName; + --支持a.b.c形式。切割varName + local tableVarName = {}; + if varName:match('%.') then + tableVarName = this.stringSplit(varName , '%.'); + if type(tableVarName) ~= "table" or #tableVarName < 1 then + return nil; + end + varName = tableVarName[1]; + end + --用来返回,带有查到变量的table + local varTab = {}; + local ly = this.getSpecificFunctionStackLevel(currentCallStack[stackId - 1].func); + + local layerVarTab = this.getVariable(ly, isFormatVariable); + local upTable = this.getUpValueVariable(currentCallStack[stackId - 1 ].func, isFormatVariable); + local travelTab = {}; + table.insert(travelTab, layerVarTab); + table.insert(travelTab, upTable); + for _, layerVarTab in ipairs(travelTab) do + for i,realVar in ipairs(layerVarTab) do + if realVar.name == varName then + if #tableVarName > 0 and type(realVar) == "table" then + --处理a.b.c的table类型 + local findRes = this.findTableVar(tableVarName, variableRefTab[realVar.variablesReference]); + if findRes ~= nil then + --命中 + if isFormatVariable then + local var = this.createWatchedVariableInfo( orgname , findRes ); + table.insert(varTab, var); + return varTab; + else + return findRes.value; + end + end + else + --命中 + if isFormatVariable then + table.insert(varTab, realVar); + return varTab; + else + return realVar.value; + end + end + end + end + end + + --在全局变量_G中查找 + if _G[varName] ~= nil then + --命中 + if #tableVarName > 0 and type(_G[varName]) == "table" then + local findRes = this.findTableVar(tableVarName, _G[varName]); + if findRes ~= nil then + if isFormatVariable then + local var = this.createWatchedVariableInfo( orgname , findRes ); + table.insert(varTab, var); + return varTab; + else + return findRes; + end + end + else + if isFormatVariable then + local var = this.createWatchedVariableInfo( varName , _G[varName] ); + table.insert(varTab, var); + return varTab; + else + return _G[varName]; + end + end + end + this.printToConsole("getWatchedVariable not find variable"); + return nil; +end + +-- 查询引用变量 +-- @refStr 变量记录id(variableRefTab索引) +-- @return 格式化的变量信息table +function this.getVariableRef( refStr ) + local varRef = tonumber(refStr); + local varTab = {}; + + if tostring(type(variableRefTab[varRef])) == "table" then + for n,v in pairs(variableRefTab[varRef]) do + local var = {}; + if type(n) == "string" then + var.name = '"' .. tostring(n) .. '"'; + else + var.name = tostring(n); + end + var.type = tostring(type(v)); + xpcall(function() var.value = tostring(v) end , function() var.value = tostring(type(v)) .. " [value can't trans to string]" end ); + var.variablesReference = "0"; + if var.type == "table" or var.type == "function" or var.type == "userdata" then + var.variablesReference = variableRefIdx; + variableRefTab[variableRefIdx] = v; + variableRefIdx = variableRefIdx + 1; + if var.type == "table" then + local memberNum = this.getTableMemberNum(v); + var.value = memberNum .." Members ".. ( var.value or '' ); + end + elseif var.type == "string" then + var.value = '"' ..v.. '"'; + end + table.insert(varTab, var); + end + --获取一下mtTable + local mtTab = getmetatable(variableRefTab[varRef]); + if mtTab ~= nil and type(mtTab) == "table" then + local var = {}; + var.name = "_Metatable_"; + var.type = tostring(type(mtTab)); + xpcall(function() var.value = "元表 "..tostring(mtTab); end , function() var.value = "元表 [value can't trans to string]" end ); + var.variablesReference = variableRefIdx; + variableRefTab[variableRefIdx] = mtTab; + variableRefIdx = variableRefIdx + 1; + table.insert(varTab, var); + end + elseif tostring(type(variableRefTab[varRef])) == "function" then + --取upvalue + varTab = this.getUpValueVariable(variableRefTab[varRef], true); + elseif tostring(type(variableRefTab[varRef])) == "userdata" then + --取mt table + local udMtTable = getmetatable(variableRefTab[varRef]); + if udMtTable ~= nil and type(udMtTable) == "table" then + local var = {}; + var.name = "_Metatable_"; + var.type = tostring(type(udMtTable)); + xpcall(function() var.value = "元表 "..tostring(udMtTable); end , function() var.value = "元表 [value can't trans to string]" end ); + var.variablesReference = variableRefIdx; + variableRefTab[variableRefIdx] = udMtTable; + variableRefIdx = variableRefIdx + 1; + table.insert(varTab, var); + + if traversalUserData and udMtTable.__pairs ~= nil and type(udMtTable.__pairs) == "function" then + for n,v in pairs(variableRefTab[varRef]) do + local var = {}; + var.name = tostring(n); + var.type = tostring(type(v)); + xpcall(function() var.value = tostring(v) end , function() var.value = tostring(type(v)) .. " [value can't trans to string]" end ); + var.variablesReference = "0"; + if var.type == "table" or var.type == "function" or var.type == "userdata" then + var.variablesReference = variableRefIdx; + variableRefTab[variableRefIdx] = v; + variableRefIdx = variableRefIdx + 1; + if var.type == "table" then + local memberNum = this.getTableMemberNum(v); + var.value = memberNum .." Members ".. ( var.value or '' ); + end + elseif var.type == "string" then + var.value = '"' ..v.. '"'; + end + table.insert(varTab, var); + end + end + end + end + return varTab; +end + +-- 获取全局变量。方法和内存管理中获取全局变量的方法一样 +-- @return 格式化的信息, 若未找到返回空table +function this.getGlobalVariable( ... ) + --成本比较高,这里只能遍历_G中的所有变量,并去除系统变量,再返回给客户端 + local varTab = {}; + for k,v in pairs(_G) do + local var = {}; + var.name = tostring(k); + var.type = tostring(type(v)); + xpcall(function() var.value = tostring(v) end , function() var.value = tostring(type(v)) .." [value can't trans to string]" end ); + var.variablesReference = "0"; + if var.type == "table" or var.type == "function" or var.type == "userdata" then + var.variablesReference = variableRefIdx; + variableRefTab[variableRefIdx] = v; + variableRefIdx = variableRefIdx + 1; + if var.type == "table" then + local memberNum = this.getTableMemberNum(v); + var.value = memberNum .." Members ".. ( var.value or '' ); + end + elseif var.type == "string" then + var.value = '"' ..v.. '"'; + end + table.insert(varTab, var); + end + return varTab; +end + +-- 获取upValues +-- @isFormatVariable true返回[值] true返回[格式化的数据] +function this.getUpValueVariable( checkFunc , isFormatVariable) + local isGetValue = true; + if isFormatVariable == true then + isGetValue = false; + end + + --通过Debug获取当前函数的Func + checkFunc = checkFunc or lastRunFunction.func; + + local varTab = {}; + if checkFunc == nil then + return varTab; + end + local i = 1 + repeat + local n, v = debug.getupvalue(checkFunc, i) + if n then + + local var = {}; + var.name = n; + var.type = tostring(type(v)); + var.variablesReference = "0"; + + if isGetValue == false then + xpcall(function() var.value = tostring(v) end , function() var.value = tostring(type(v)) .. " [value can't trans to string]" end ); + if var.type == "table" or var.type == "function" or var.type == "userdata" then + var.variablesReference = variableRefIdx; + variableRefTab[variableRefIdx] = v; + variableRefIdx = variableRefIdx + 1; + if var.type == "table" then + local memberNum = this.getTableMemberNum(v); + var.value = memberNum .." Members ".. ( var.value or '' ); + end + elseif var.type == "string" then + var.value = '"' ..v.. '"'; + end + else + var.value = v; + end + + table.insert(varTab, var); + i = i + 1 + end + until not n + return varTab; +end + +-- 获取局部变量 checkLayer是要查询的层级,如果不设置则查询当前层级 +-- @isFormatVariable 是否取值,true:取值的tostring +function this.getVariable( checkLayer, isFormatVariable , offset) + local isGetValue = true; + if isFormatVariable == true then + isGetValue = false; + end + + local ly = 0; + if checkLayer ~= nil and type(checkLayer) == "number" then ly = checkLayer + 1; + else ly = this.getSpecificFunctionStackLevel(lastRunFunction.func); end + + if ly == 0 then + this.printToVSCode("[error]获取层次失败!", 2); + return; + end + local varTab = {}; + local stacklayer = ly; + local k = 1; + + if type(offset) == 'number' then + stacklayer = stacklayer + offset; + end + + repeat + local n, v = debug.getlocal(stacklayer, k) + if n == nil then + break; + end + + --(*temporary)是系统变量,过滤掉。这里假设(*temporary)仅出现在最后 + if "(*temporary)" ~= tostring(n) and "(temporary)" ~= tostring(n) then + local var = {}; + var.name = n; + var.type = tostring(type(v)); + var.variablesReference = "0"; + var.index = k; + + if isGetValue == false then + xpcall(function() var.value = tostring(v) end , function() var.value = tostring(type(v)) .. " [value can't trans to string]" end ); + if var.type == "table" or var.type == "function" or var.type == "userdata" then + var.variablesReference = variableRefIdx; + variableRefTab[variableRefIdx] = v; + variableRefIdx = variableRefIdx + 1; + if var.type == "table" then + local memberNum = this.getTableMemberNum(v); + var.value = memberNum .." Members ".. ( var.value or '' ); + end + elseif var.type == "string" then + var.value = '"' ..v.. '"'; + end + else + var.value = v; + end + + local sameIdx = this.checkSameNameVar(varTab, var); + if sameIdx ~= 0 then + varTab[sameIdx] = var; + else + table.insert(varTab, var); + end + end + k = k + 1 + until n == nil + return varTab, stacklayer - 1; +end + +--检查变量列表中的同名变量 +function this.checkSameNameVar(varTab, var) + for k , v in pairs(varTab) do + if v.name == var.name then + return k; + end + end + return 0; +end + +-- 执行表达式 +function this.processExp(msgTable) + local retString; + local var = {}; + var.isSuccess = "true"; + if msgTable ~= nil then + local expression = this.trim(tostring(msgTable.Expression)); + local isCmd = false; + if isCmd == false then + --兼容旧版p 命令 + if expression:find("p ", 1, true) == 1 then + expression = expression:sub(3); + end + + local expressionWithReturn = "return " .. expression; + local f = debugger_loadString(expressionWithReturn) or debugger_loadString(expression); + --判断结果,如果表达式错误会返回nil + if type(f) == "function" then + if _VERSION == "Lua 5.1" then + setfenv(f , env); + else + debug.setupvalue(f, 1, env); + end + --表达式要有错误处理 + xpcall(function() retString = f() end , function() retString = "输入错误指令。\n + 请检查指令是否正确\n + 指令仅能在[暂停在断点时]输入, 请不要在程序持续运行时输入"; var.isSuccess = false; end) + else + retString = "指令执行错误。\n + 请检查指令是否正确\n + 可以直接输入表达式,执行函数或变量名,并观察执行结果"; + var.isSuccess = false; + end + end + end + + var.name = "Exp"; + var.type = tostring(type(retString)); + xpcall(function() var.value = tostring(retString) end , function(e) var.value = tostring(type(retString)) .. " [value can't trans to string] ".. e; var.isSuccess = false; end); + var.variablesReference = "0"; + if var.type == "table" or var.type == "function" or var.type == "userdata" then + variableRefTab[variableRefIdx] = retString; + var.variablesReference = variableRefIdx; + variableRefIdx = variableRefIdx + 1; + if var.type == "table" then + local memberNum = this.getTableMemberNum(retString); + var.value = memberNum .." Members ".. var.value; + end + elseif var.type == "string" then + var.value = '"' ..retString.. '"'; + end + --string执行完毕后清空env环境 + this.clearEnv(); + local retTab = {} + table.insert(retTab ,var); + return retTab; +end + +--执行变量观察表达式 +function this.processWatchedExp(msgTable) + local retString; + local expression = "return ".. tostring(msgTable.varName) + this.printToConsole("processWatchedExp | expression: " .. expression); + local f = debugger_loadString(expression); + local var = {}; + var.isSuccess = "true"; + --判断结果,如果表达式错误会返回nil + if type(f) == "function" then + --表达式正确 + if _VERSION == "Lua 5.1" then + setfenv(f , env); + else + debug.setupvalue(f, 1, env); + end + xpcall(function() retString = f() end , function() retString = "输入了错误的变量信息"; var.isSuccess = "false"; end) + else + retString = "未能找到变量的值"; + var.isSuccess = "false"; + end + + var.name = msgTable.varName; + var.type = tostring(type(retString)); + xpcall(function() var.value = tostring(retString) end , function() var.value = tostring(type(retString)) .. " [value can't trans to string]"; var.isSuccess = "false"; end ); + var.variablesReference = "0"; + + if var.type == "table" or var.type == "function" or var.type == "userdata" then + variableRefTab[variableRefIdx] = retString; + var.variablesReference = variableRefIdx; + variableRefIdx = variableRefIdx + 1; + if var.type == "table" then + local memberNum = this.getTableMemberNum(retString); + var.value = memberNum .." Members ".. var.value; + end + elseif var.type == "string" then + var.value = '"' ..retString.. '"'; + end + + local retTab = {} + table.insert(retTab ,var); + return retTab; +end + + +function tools.getFileSource() + local info = debug.getinfo(1, "S") + for k,v in pairs(info) do + if k == "source" then + return v; + end + end +end + +--序列化并打印table +function tools.printTable(t, name ,indent) + local str = (tools.show(t, name, indent)); + print(str); +end + +--序列化并返回table +function tools.serializeTable(t, name, indent) + local str = (tools.show(t, name, indent)) + return str +end + +--[[ +Author: Julio Manuel Fernandez-Diaz +Date: January 12, 2007 +Modified slightly by RiciLake to avoid the unnecessary table traversal in tablecount() +Formats tables with cycles recursively to any depth. +The output is returned as a string. +References to other tables are shown as values. +Self references are indicated. +The string returned is "Lua code", which can be procesed +(in the case in which indent is composed by spaces or "--"). +Userdata and function keys and values are shown as strings, +which logically are exactly not equivalent to the original code. +This routine can serve for pretty formating tables with +proper indentations, apart from printing them: +print(table.show(t, "t")) -- a typical use +Heavily based on "Saving tables with cycles", PIL2, p. 113. +Arguments: +t is the table. +name is the name of the table (optional) +indent is a first indentation (optional). +--]] +function tools.show(t, name, indent) + local cart -- a container + local autoref -- for self references + + local function isemptytable(t) return next(t) == nil end + + local function basicSerialize (o) + local so = tostring(o) + if type(o) == "function" then + local info = debug.getinfo(o, "S") + -- info.name is nil because o is not a calling level + if info.what == "C" then + return string.format("%q", so .. ", C function") + else + -- the information is defined through lines + return string.format("%q", so .. ", defined in (" .. + info.linedefined .. "-" .. info.lastlinedefined .. + ")" .. info.source) + end + elseif type(o) == "number" or type(o) == "boolean" then + return so + else + return string.format("%q", so) + end + end + + local function addtocart (value, name, indent, saved, field) + indent = indent or "" + saved = saved or {} + field = field or name + + cart = cart .. indent .. field + + if type(value) ~= "table" then + cart = cart .. " = " .. basicSerialize(value) .. ";\n" + else + if saved[value] then + cart = cart .. " = {}; -- " .. saved[value] + .. " (self reference)\n" + autoref = autoref .. name .. " = " .. saved[value] .. ";\n" + else + saved[value] = name + --if tablecount(value) == 0 then + if isemptytable(value) then + cart = cart .. " = {};\n" + else + cart = cart .. " = {\n" + for k, v in pairs(value) do + k = basicSerialize(k) + local fname = string.format("%s[%s]", name, k) + field = string.format("[%s]", k) + -- three spaces between levels + addtocart(v, fname, indent .. " ", saved, field) + end + cart = cart .. indent .. "};\n" + end + end + end + end + + name = name or "PRINT_Table" + if type(t) ~= "table" then + return name .. " = " .. basicSerialize(t) + end + cart, autoref = "", "" + addtocart(t, name, indent) + return cart .. autoref +end + +----------------------------------------------------------------------------- +-- JSON4Lua: JSON encoding / decoding support for the Lua language. +-- json Module. +-- Author: Craig Mason-Jones +-- Homepage: http://github.com/craigmj/json4lua/ +-- Version: 1.0.0 +-- This module is released under the MIT License (MIT). +-- Please see LICENCE.txt for details. +-- +-- USAGE: +-- This module exposes two functions: +-- json.encode(o) +-- Returns the table / string / boolean / number / nil / json.null value as a JSON-encoded string. +-- json.decode(json_string) +-- Returns a Lua object populated with the data encoded in the JSON string json_string. +-- +-- REQUIREMENTS: +-- compat-5.1 if using Lua 5.0 +-- +-- CHANGELOG +-- 0.9.20 Introduction of local Lua functions for private functions (removed _ function prefix). +-- Fixed Lua 5.1 compatibility issues. +-- Introduced json.null to have null values in associative arrays. +-- json.encode() performance improvement (more than 50%) through table.concat rather than .. +-- Introduced decode ability to ignore /**/ comments in the JSON string. +-- 0.9.10 Fix to array encoding / decoding to correctly manage nil/null values in arrays. +----------------------------------------------------------------------------- + +function tools.createJson() + ----------------------------------------------------------------------------- + -- Imports and dependencies + ----------------------------------------------------------------------------- + local math = require('math') + local string = require("string") + local table = require("table") + + ----------------------------------------------------------------------------- + -- Module declaration + ----------------------------------------------------------------------------- + local json = {} -- Public namespace + local json_private = {} -- Private namespace + + -- Public constants + json.EMPTY_ARRAY={} + json.EMPTY_OBJECT={} + + -- Public functions + + -- Private functions + local decode_scanArray + local decode_scanComment + local decode_scanConstant + local decode_scanNumber + local decode_scanObject + local decode_scanString + local decode_scanWhitespace + local encodeString + local isArray + local isEncodable + + ----------------------------------------------------------------------------- + -- PUBLIC FUNCTIONS + ----------------------------------------------------------------------------- + --- Encodes an arbitrary Lua object / variable. + -- @param v The Lua object / variable to be JSON encoded. + -- @return String containing the JSON encoding in internal Lua string format (i.e. not unicode) + function json.encode (v) + -- Handle nil values + if v==nil then + return "null" + end + + local vtype = type(v) + + -- Handle strings + if vtype=='string' then + return '"' .. json_private.encodeString(v) .. '"' -- Need to handle encoding in string + end + + -- Handle booleans + if vtype=='number' or vtype=='boolean' then + return tostring(v) + end + + -- Handle tables + if vtype=='table' then + local rval = {} + -- Consider arrays separately + local bArray, maxCount = isArray(v) + if bArray then + for i = 1,maxCount do + table.insert(rval, json.encode(v[i])) + end + else -- An object, not an array + for i,j in pairs(v) do + if isEncodable(i) and isEncodable(j) then + table.insert(rval, '"' .. json_private.encodeString(i) .. '":' .. json.encode(j)) + end + end + end + if bArray then + return '[' .. table.concat(rval,',') ..']' + else + return '{' .. table.concat(rval,',') .. '}' + end + end + + -- Handle null values + if vtype=='function' and v==json.null then + return 'null' + end + + assert(false,'encode attempt to encode unsupported type ' .. vtype .. ':' .. tostring(v)) + end + + + --- Decodes a JSON string and returns the decoded value as a Lua data structure / value. + -- @param s The string to scan. + -- @param [startPos] Optional starting position where the JSON string is located. Defaults to 1. + -- @param Lua object, number The object that was scanned, as a Lua table / string / number / boolean or nil, + -- and the position of the first character after + -- the scanned JSON object. + function json.decode(s, startPos) + startPos = startPos and startPos or 1 + startPos = decode_scanWhitespace(s,startPos) + assert(startPos<=string.len(s), 'Unterminated JSON encoded object found at position in [' .. s .. ']') + local curChar = string.sub(s,startPos,startPos) + -- Object + if curChar=='{' then + return decode_scanObject(s,startPos) + end + -- Array + if curChar=='[' then + return decode_scanArray(s,startPos) + end + -- Number + if string.find("+-0123456789.e", curChar, 1, true) then + return decode_scanNumber(s,startPos) + end + -- String + if curChar==[["]] or curChar==[[']] then + return decode_scanString(s,startPos) + end + if string.sub(s,startPos,startPos+1)=='/*' then + return json.decode(s, decode_scanComment(s,startPos)) + end + -- Otherwise, it must be a constant + return decode_scanConstant(s,startPos) + end + + --- The null function allows one to specify a null value in an associative array (which is otherwise + -- discarded if you set the value with 'nil' in Lua. Simply set t = { first=json.null } + function json.null() + return json.null -- so json.null() will also return null ;-) + end + ----------------------------------------------------------------------------- + -- Internal, PRIVATE functions. + -- Following a Python-like convention, I have prefixed all these 'PRIVATE' + -- functions with an underscore. + ----------------------------------------------------------------------------- + + --- Scans an array from JSON into a Lua object + -- startPos begins at the start of the array. + -- Returns the array and the next starting position + -- @param s The string being scanned. + -- @param startPos The starting position for the scan. + -- @return table, int The scanned array as a table, and the position of the next character to scan. + function decode_scanArray(s,startPos) + local array = {} -- The return value + local stringLen = string.len(s) + assert(string.sub(s,startPos,startPos)=='[','decode_scanArray called but array does not start at position ' .. startPos .. ' in string:\n'..s ) + startPos = startPos + 1 + -- Infinite loop for array elements + local index = 1 + repeat + startPos = decode_scanWhitespace(s,startPos) + assert(startPos<=stringLen,'JSON String ended unexpectedly scanning array.') + local curChar = string.sub(s,startPos,startPos) + if (curChar==']') then + return array, startPos+1 + end + if (curChar==',') then + startPos = decode_scanWhitespace(s,startPos+1) + end + assert(startPos<=stringLen, 'JSON String ended unexpectedly scanning array.') + local object + object, startPos = json.decode(s,startPos) + array[index] = object + index = index + 1 + until false + end + + --- Scans a comment and discards the comment. + -- Returns the position of the next character following the comment. + -- @param string s The JSON string to scan. + -- @param int startPos The starting position of the comment + function decode_scanComment(s, startPos) + assert( string.sub(s,startPos,startPos+1)=='/*', "decode_scanComment called but comment does not start at position " .. startPos) + local endPos = string.find(s,'*/',startPos+2) + assert(endPos~=nil, "Unterminated comment in string at " .. startPos) + return endPos+2 + end + + --- Scans for given constants: true, false or null + -- Returns the appropriate Lua type, and the position of the next character to read. + -- @param s The string being scanned. + -- @param startPos The position in the string at which to start scanning. + -- @return object, int The object (true, false or nil) and the position at which the next character should be + -- scanned. + function decode_scanConstant(s, startPos) + local consts = { ["true"] = true, ["false"] = false, ["null"] = nil } + local constNames = {"true","false","null"} + + for i,k in pairs(constNames) do + if string.sub(s,startPos, startPos + string.len(k) -1 )==k then + return consts[k], startPos + string.len(k) + end + end + assert(nil, 'Failed to scan constant from string ' .. s .. ' at starting position ' .. startPos) + end + + --- Scans a number from the JSON encoded string. + -- (in fact, also is able to scan numeric +- eqns, which is not + -- in the JSON spec.) + -- Returns the number, and the position of the next character + -- after the number. + -- @param s The string being scanned. + -- @param startPos The position at which to start scanning. + -- @return number, int The extracted number and the position of the next character to scan. + function decode_scanNumber(s,startPos) + local endPos = startPos+1 + local stringLen = string.len(s) + local acceptableChars = "+-0123456789.e" + while (string.find(acceptableChars, string.sub(s,endPos,endPos), 1, true) + and endPos<=stringLen + ) do + endPos = endPos + 1 + end + -- local stringValue = 'return ' .. string.sub(s, startPos, endPos - 1) + -- local stringEval = loadstring(stringValue) + -- assert(stringEval, 'Failed to scan number [ ' .. stringValue .. '] in JSON string at position ' .. startPos .. ' : ' .. endPos) + local numberValue = string.sub(s, startPos, endPos - 1) + return numberValue, endPos + end + + --- Scans a JSON object into a Lua object. + -- startPos begins at the start of the object. + -- Returns the object and the next starting position. + -- @param s The string being scanned. + -- @param startPos The starting position of the scan. + -- @return table, int The scanned object as a table and the position of the next character to scan. + function decode_scanObject(s,startPos) + local object = {} + local stringLen = string.len(s) + local key, value + assert(string.sub(s,startPos,startPos)=='{','decode_scanObject called but object does not start at position ' .. startPos .. ' in string:\n' .. s) + startPos = startPos + 1 + repeat + startPos = decode_scanWhitespace(s,startPos) + assert(startPos<=stringLen, 'JSON string ended unexpectedly while scanning object.') + local curChar = string.sub(s,startPos,startPos) + if (curChar=='}') then + return object,startPos+1 + end + if (curChar==',') then + startPos = decode_scanWhitespace(s,startPos+1) + end + assert(startPos<=stringLen, 'JSON string ended unexpectedly scanning object.') + -- Scan the key + key, startPos = json.decode(s,startPos) + assert(startPos<=stringLen, 'JSON string ended unexpectedly searching for value of key ' .. key) + startPos = decode_scanWhitespace(s,startPos) + assert(startPos<=stringLen, 'JSON string ended unexpectedly searching for value of key ' .. key) + assert(string.sub(s,startPos,startPos)==':','JSON object key-value assignment mal-formed at ' .. startPos) + startPos = decode_scanWhitespace(s,startPos+1) + assert(startPos<=stringLen, 'JSON string ended unexpectedly searching for value of key ' .. key) + value, startPos = json.decode(s,startPos) + object[key]=value + until false -- infinite loop while key-value pairs are found + end + + -- START SoniEx2 + -- Initialize some things used by decode_scanString + -- You know, for efficiency + local escapeSequences = { + ["\\t"] = "\t", + ["\\f"] = "\f", + ["\\r"] = "\r", + ["\\n"] = "\n", + ["\\b"] = "\b" + } + setmetatable(escapeSequences, {__index = function(t,k) + -- skip "\" aka strip escape + return string.sub(k,2) + end}) + -- END SoniEx2 + + --- Scans a JSON string from the opening inverted comma or single quote to the + -- end of the string. + -- Returns the string extracted as a Lua string, + -- and the position of the next non-string character + -- (after the closing inverted comma or single quote). + -- @param s The string being scanned. + -- @param startPos The starting position of the scan. + -- @return string, int The extracted string as a Lua string, and the next character to parse. + function decode_scanString(s,startPos) + assert(startPos, 'decode_scanString(..) called without start position') + local startChar = string.sub(s,startPos,startPos) + -- START SoniEx2 + -- PS: I don't think single quotes are valid JSON + assert(startChar == [["]] or startChar == [[']],'decode_scanString called for a non-string') + --assert(startPos, "String decoding failed: missing closing " .. startChar .. " for string at position " .. oldStart) + local t = {} + local i,j = startPos,startPos + while string.find(s, startChar, j+1) ~= j+1 do + local oldj = j + i,j = string.find(s, "\\.", j+1) + local x,y = string.find(s, startChar, oldj+1) + if not i or x < i then + i,j = x,y-1 + end + table.insert(t, string.sub(s, oldj+1, i-1)) + if string.sub(s, i, j) == "\\u" then + local a = string.sub(s,j+1,j+4) + j = j + 4 + local n = tonumber(a, 16) + assert(n, "String decoding failed: bad Unicode escape " .. a .. " at position " .. i .. " : " .. j) + -- math.floor(x/2^y) == lazy right shift + -- a % 2^b == bitwise_and(a, (2^b)-1) + -- 64 = 2^6 + -- 4096 = 2^12 (or 2^6 * 2^6) + local x + if n < 0x80 then + x = string.char(n % 0x80) + elseif n < 0x800 then + -- [110x xxxx] [10xx xxxx] + x = string.char(0xC0 + (math.floor(n/64) % 0x20), 0x80 + (n % 0x40)) + else + -- [1110 xxxx] [10xx xxxx] [10xx xxxx] + x = string.char(0xE0 + (math.floor(n/4096) % 0x10), 0x80 + (math.floor(n/64) % 0x40), 0x80 + (n % 0x40)) + end + table.insert(t, x) + else + table.insert(t, escapeSequences[string.sub(s, i, j)]) + end + end + table.insert(t,string.sub(j, j+1)) + assert(string.find(s, startChar, j+1), "String decoding failed: missing closing " .. startChar .. " at position " .. j .. "(for string at position " .. startPos .. ")") + return table.concat(t,""), j+2 + -- END SoniEx2 + end + + --- Scans a JSON string skipping all whitespace from the current start position. + -- Returns the position of the first non-whitespace character, or nil if the whole end of string is reached. + -- @param s The string being scanned + -- @param startPos The starting position where we should begin removing whitespace. + -- @return int The first position where non-whitespace was encountered, or string.len(s)+1 if the end of string + -- was reached. + function decode_scanWhitespace(s,startPos) + local whitespace=" \n\r\t" + local stringLen = string.len(s) + while ( string.find(whitespace, string.sub(s,startPos,startPos), 1, true) and startPos <= stringLen) do + startPos = startPos + 1 + end + return startPos + end + + --- Encodes a string to be JSON-compatible. + -- This just involves back-quoting inverted commas, back-quotes and newlines, I think ;-) + -- @param s The string to return as a JSON encoded (i.e. backquoted string) + -- @return The string appropriately escaped. + + local escapeList = { + ['"'] = '\\"', + ['\\'] = '\\\\', + ['/'] = '\\/', + ['\b'] = '\\b', + ['\f'] = '\\f', + ['\n'] = '\\n', + ['\r'] = '\\r', + ['\t'] = '\\t' + } + + function json_private.encodeString(s) + local s = tostring(s) + return s:gsub(".", function(c) return escapeList[c] end) -- SoniEx2: 5.0 compat + end + + -- Determines whether the given Lua type is an array or a table / dictionary. + -- We consider any table an array if it has indexes 1..n for its n items, and no + -- other data in the table. + -- I think this method is currently a little 'flaky', but can't think of a good way around it yet... + -- @param t The table to evaluate as an array + -- @return boolean, number True if the table can be represented as an array, false otherwise. If true, + -- the second returned value is the maximum + -- number of indexed elements in the array. + function isArray(t) + -- Next we count all the elements, ensuring that any non-indexed elements are not-encodable + -- (with the possible exception of 'n') + if (t == json.EMPTY_ARRAY) then return true, 0 end + if (t == json.EMPTY_OBJECT) then return false end + + local maxIndex = 0 + for k,v in pairs(t) do + if (type(k)=='number' and math.floor(k)==k and 1<=k) then -- k,v is an indexed pair + if (not isEncodable(v)) then return false end -- All array elements must be encodable + maxIndex = math.max(maxIndex,k) + else + if (k=='n') then + if v ~= (t.n or #t) then return false end -- False if n does not hold the number of elements + else -- Else of (k=='n') + if isEncodable(v) then return false end + end -- End of (k~='n') + end -- End of k,v not an indexed pair + end -- End of loop across all pairs + return true, maxIndex + end + + --- Determines whether the given Lua object / table / variable can be JSON encoded. The only + -- types that are JSON encodable are: string, boolean, number, nil, table and json.null. + -- In this implementation, all other types are ignored. + -- @param o The object to examine. + -- @return boolean True if the object should be JSON encoded, false if it should be ignored. + function isEncodable(o) + local t = type(o) + return (t=='string' or t=='boolean' or t=='number' or t=='nil' or t=='table') or + (t=='function' and o==json.null) + end + return json +end + +-- Sourced from http://lua-users.org/wiki/BaseSixtyFour + +-- Lua 5.1+ base64 v3.0 (c) 2009 by Alex Kloss +-- licensed under the terms of the LGPL2 + +-- character table string +local base64CharTable='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/' + +-- encoding +function tools.base64encode(data) + return ((data:gsub('.', function(x) + local r,b='',x:byte() + for i=8,1,-1 do r=r..(b%2^i-b%2^(i-1)>0 and '1' or '0') end + return r; + end)..'0000'):gsub('%d%d%d?%d?%d?%d?', function(x) + if (#x < 6) then return '' end + local c=0 + for i=1,6 do c=c+(x:sub(i,i)=='1' and 2^(6-i) or 0) end + return base64CharTable:sub(c+1,c+1) + end)..({ '', '==', '=' })[#data%3+1]) +end + +-- decoding +function tools.base64decode(data) + data = string.gsub(data, '[^'..base64CharTable..'=]', '') + return (data:gsub('.', function(x) + if (x == '=') then return '' end + local r,f='',(base64CharTable:find(x)-1) + for i=6,1,-1 do r=r..(f%2^i-f%2^(i-1)>0 and '1' or '0') end + return r; + end):gsub('%d%d%d?%d?%d?%d?%d?%d?', function(x) + if (#x ~= 8) then return '' end + local c=0 + for i=1,8 do c=c+(x:sub(i,i)=='1' and 2^(8-i) or 0) end + return string.char(c) + end)) +end + +-- tools变量 +json = tools.createJson(); --json处理 +this.printToConsole("load LuaPanda success", 1); +this.replaceCoroutineFuncs() +return this; \ No newline at end of file diff --git a/gamedata/scripts/ixray_system/socket.lua b/gamedata/scripts/ixray_system/socket.lua new file mode 100644 index 0000000..65cb709 --- /dev/null +++ b/gamedata/scripts/ixray_system/socket.lua @@ -0,0 +1,149 @@ +----------------------------------------------------------------------------- +-- LuaSocket helper module +-- Author: Diego Nehab +----------------------------------------------------------------------------- + +----------------------------------------------------------------------------- +-- Declare module and import dependencies +----------------------------------------------------------------------------- +local base = _G +local string = require("string") +local math = require("math") +local socket = require("socket.core") + +local _M = socket + +----------------------------------------------------------------------------- +-- Exported auxiliar functions +----------------------------------------------------------------------------- +function _M.connect4(address, port, laddress, lport) + return socket.connect(address, port, laddress, lport, "inet") +end + +function _M.connect6(address, port, laddress, lport) + return socket.connect(address, port, laddress, lport, "inet6") +end + +function _M.bind(host, port, backlog) + if host == "*" then host = "0.0.0.0" end + local addrinfo, err = socket.dns.getaddrinfo(host); + if not addrinfo then return nil, err end + local sock, res + err = "no info on address" + for i, alt in base.ipairs(addrinfo) do + if alt.family == "inet" then + sock, err = socket.tcp4() + else + sock, err = socket.tcp6() + end + if not sock then return nil, err end + sock:setoption("reuseaddr", true) + res, err = sock:bind(alt.addr, port) + if not res then + sock:close() + else + res, err = sock:listen(backlog) + if not res then + sock:close() + else + return sock + end + end + end + return nil, err +end + +_M.try = _M.newtry() + +function _M.choose(table) + return function(name, opt1, opt2) + if base.type(name) ~= "string" then + name, opt1, opt2 = "default", name, opt1 + end + local f = table[name or "nil"] + if not f then base.error("unknown key (".. base.tostring(name) ..")", 3) + else return f(opt1, opt2) end + end +end + +----------------------------------------------------------------------------- +-- Socket sources and sinks, conforming to LTN12 +----------------------------------------------------------------------------- +-- create namespaces inside LuaSocket namespace +local sourcet, sinkt = {}, {} +_M.sourcet = sourcet +_M.sinkt = sinkt + +_M.BLOCKSIZE = 2048 + +sinkt["close-when-done"] = function(sock) + return base.setmetatable({ + getfd = function() return sock:getfd() end, + dirty = function() return sock:dirty() end + }, { + __call = function(self, chunk, err) + if not chunk then + sock:close() + return 1 + else return sock:send(chunk) end + end + }) +end + +sinkt["keep-open"] = function(sock) + return base.setmetatable({ + getfd = function() return sock:getfd() end, + dirty = function() return sock:dirty() end + }, { + __call = function(self, chunk, err) + if chunk then return sock:send(chunk) + else return 1 end + end + }) +end + +sinkt["default"] = sinkt["keep-open"] + +_M.sink = _M.choose(sinkt) + +sourcet["by-length"] = function(sock, length) + return base.setmetatable({ + getfd = function() return sock:getfd() end, + dirty = function() return sock:dirty() end + }, { + __call = function() + if length <= 0 then return nil end + local size = math.min(socket.BLOCKSIZE, length) + local chunk, err = sock:receive(size) + if err then return nil, err end + length = length - string.len(chunk) + return chunk + end + }) +end + +sourcet["until-closed"] = function(sock) + local done + return base.setmetatable({ + getfd = function() return sock:getfd() end, + dirty = function() return sock:dirty() end + }, { + __call = function() + if done then return nil end + local chunk, err, partial = sock:receive(socket.BLOCKSIZE) + if not err then return chunk + elseif err == "closed" then + sock:close() + done = 1 + return partial + else return nil, err end + end + }) +end + + +sourcet["default"] = sourcet["until-closed"] + +_M.source = _M.choose(sourcet) + +return _M \ No newline at end of file diff --git a/gamedata/scripts/luaxml.script b/gamedata/scripts/luaxml.script new file mode 100644 index 0000000..6ce61ec --- /dev/null +++ b/gamedata/scripts/luaxml.script @@ -0,0 +1,117 @@ +local base = _G +local xml = xml +module("xml") + +-- symbolic name for tag index, this allows accessing the tag by var[xml.TAG] +TAG = 0 + +-- sets or returns tag of a LuaXML object +function tag(var,tag) + if base.type(var)~="table" then return end + if base.type(tag)=="nil" then + return var[TAG] + end + var[TAG] = tag +end + +-- creates a new LuaXML object either by setting the metatable of an existing Lua table or by setting its tag +function new(arg) + if base.type(arg)=="table" then + base.setmetatable(arg,{__index=xml, __tostring=xml.str}) + return arg + end + local var={} + base.setmetatable(var,{__index=xml, __tostring=xml.str}) + if base.type(arg)=="string" then var[TAG]=arg end + return var +end + +-- appends a new subordinate LuaXML object to an existing one, optionally sets tag +function append(var,tag) + if base.type(var)~="table" then return end + local newVar = new(tag) + var[#var+1] = newVar + return newVar +end + +-- converts any Lua var into an XML string +function str(var,indent,tagValue) + if base.type(var)=="nil" then return end + local indent = indent or 0 + local indentStr="" + for i = 1,indent do indentStr=indentStr.." " end + local tableStr="" + + if base.type(var)=="table" then + local tag = var[0] or tagValue or base.type(var) + local s = indentStr.."<"..tag + for k,v in base.pairs(var) do -- attributes + if base.type(k)=="string" then + if base.type(v)=="table" and k~="_M" then -- otherwise recursiveness imminent + tableStr = tableStr..str(v,indent+1,k) + else + s = s.." "..k.."=\""..encode(base.tostring(v)).."\"" + end + end + end + if #var==0 and #tableStr==0 then + s = s.." />\n" + elseif #var==1 and base.type(var[1])~="table" and #tableStr==0 then -- single element + s = s..">"..encode(base.tostring(var[1])).."\n" + else + s = s..">\n" + for k,v in base.ipairs(var) do -- elements + if base.type(v)=="string" then + s = s..indentStr.." "..encode(v).." \n" + else + s = s..str(v,indent+1) + end + end + s=s..tableStr..indentStr.."\n" + end + return s + else + local tag = base.type(var) + return indentStr.."<"..tag.."> "..encode(base.tostring(var)).." \n" + end +end + + +-- saves a Lua var as xml file +function save(var,filename) + if not var then return end + if not filename or #filename==0 then return end + local file = base.io.open(filename,"w") + file:write("\n\n\n") + file:write(str(var)) + base.io.close(file) +end + + +-- recursively parses a Lua table for a substatement fitting to the provided tag and attribute +function find(var, tag, attributeKey,attributeValue) + -- check input: + if base.type(var)~="table" then return end + if base.type(tag)=="string" and #tag==0 then tag=nil end + if base.type(attributeKey)~="string" or #attributeKey==0 then attributeKey=nil end + if base.type(attributeValue)=="string" and #attributeValue==0 then attributeValue=nil end + -- compare this table: + if tag~=nil then + if var[0]==tag and ( attributeValue == nil or var[attributeKey]==attributeValue ) then + base.setmetatable(var,{__index=xml, __tostring=xml.str}) + return var + end + else + if attributeValue == nil or var[attributeKey]==attributeValue then + base.setmetatable(var,{__index=xml, __tostring=xml.str}) + return var + end + end + -- recursively parse subtags: + for k,v in base.ipairs(var) do + if base.type(v)=="table" then + local ret = find(v, tag, attributeKey,attributeValue) + if ret ~= nil then return ret end + end + end +end \ No newline at end of file diff --git a/gamedata/scripts/pda.script b/gamedata/scripts/pda.script new file mode 100644 index 0000000..d7a9ee6 --- /dev/null +++ b/gamedata/scripts/pda.script @@ -0,0 +1,450 @@ +-- вызывается 1 раз в 3 секунды +function fill_faction_state(state) + local board = sim_board.get_sim_board() + + state.member_count = 0 + state.resource = 0 + state.power = 0 + + + state.actor_goodwill = 3000 + state.name = "ui_inGame2_hint_wnd_bar" + state.icon = "ui_inGame2_hint_wnd_bar" + state.icon_big = "logos_big_empty" + state.target = game.translate_string("ui_st_no_faction") + state.target_desc = "aaa" + state.location = "a" + + state.war_state1 = "a" + state.war_state_hint1 = "1" + state.war_state2 = "3" + state.war_state_hint2 = "2" + state.war_state3 = "33" + state.war_state_hint3 = "" + state.war_state4 = "23" + state.war_state_hint4 = "" + state.war_state5 = "5" + state.war_state_hint5 = "5" + + state.bonus = 0 + + + + +end + +--int get_max_member_count (); ------ 1 раз в 3 секунды +--float get_max_resource(); +--float get_max_power(); + +function get_max_member_count() + return 10 +end + +function get_max_resource() + return 10 +end + +function get_max_power() + return 10 +end + + +-- потом это нужно стереть + +-- int mode: +-- 0 = Undefined = закрыто +-- 1 = Inventory +-- 2 = Trade +-- 3 = Upgrade +-- 4 = DeadBodySearch +-- 10 = Talk dialog show +-- 11 = Talk dialog hide +local last_mode = 0 +dialog_closed = false +trade_closed = false +upgrade_closed = false +function actor_menu_mode(mode) + if(mode==0) then + if(last_mode==1) then + inventory_wnd_closed() + elseif(last_mode==2) then + trade_wnd_closed() + elseif(last_mode==3) then + upgrade_wnd_closed() + elseif(last_mode==4) then + dead_body_search_wnd_closed() + end + last_mode = 0 + elseif(mode==1) then + last_mode = 1 + inventory_wnd_opened() + elseif(mode==2) then + last_mode = 2 + trade_wnd_opened() + elseif(mode==3) then + last_mode = 3 + upgrade_wnd_opened() + elseif(mode==4) then + last_mode = 4 + dead_body_search_wnd_opened() + elseif(mode==10) then + dialog_wnd_showed() + elseif(mode==11) then + dialog_wnd_closed() + end +end + +function inventory_wnd_opened() + --printf("---:>Inventory opened") +end + +function inventory_wnd_closed() + --printf("---:>Inventory closed") +end + +function trade_wnd_opened() + dialog_closed = false + --printf("---:>Trade opened") +end + +function trade_wnd_closed() + --printf("---:>Trade closed") + trade_closed = true +end + +function upgrade_wnd_opened() + dialog_closed = false + --printf("---:>Upgrade opened") +end + +function upgrade_wnd_closed() + --printf("---:>Upgrade closed") + upgrade_closed = true +end + +function dead_body_search_wnd_opened() + --printf("---:>DeadBodySearch opened") +end + +function dead_body_search_wnd_closed() + --printf("---:>DeadBodySearch closed") +end + +function dialog_wnd_showed() + dialog_closed = false + for k,v in pairs(db.storage) do + local npc = v.object + if npc ~= nil then + local npc_id = npc:id() + if npc:is_talking() and npc_id ~= db.actor:id() then + local sound_theme = xr_sound.sound_table[npc_id] + if sound_theme and sound_theme.reset then + sound_theme:reset(npc_id) + end + break + end + end + end + --printf("---:>Talk Dialog show") +end + +function dialog_wnd_closed() + --printf("---:>Talk Dialog hide") + dialog_closed = true +end + +-- CoCray +function get_time_elapsed() + local s_time = level.get_start_time() + local seconds = tonumber(game.get_game_time():diffSec(s_time)) + + if (seconds < 60) then + return string.format("%d %s",seconds,game.translate_string("ui_st_secs")) + elseif (seconds < 3600) then + return string.format("%d %s",seconds/60,game.translate_string("ui_st_mins")) + elseif (seconds < 86400) then + return string.format("%d %s",seconds/60/60,game.translate_string("ui_st_hours")) + end + + return string.format("%d %s",seconds/60/60/24,game.translate_string("ui_st_days")) +end +--// + +function get_stat(index) -- index= int return string + if(index==0) then + return tostring(get_time_elapsed()) + elseif(index==1) then + return tostring(xr_statistic.actor_statistic.surges) + elseif(index==2) then + return tostring(xr_statistic.actor_statistic.completed_quests) + elseif(index==3) then + return tostring(xr_statistic.actor_statistic.killed_monsters) + elseif(index==4) then + return tostring(xr_statistic.actor_statistic.killed_stalkers) + elseif(index==5) then + return tostring(xr_statistic.actor_statistic.artefacts_founded) + elseif(index==6) then + return tostring(xr_statistic.actor_statistic.founded_secrets) + end + return "Unknown" +end + +killed_monsters_tbl = +{ + bloodsucker_weak = {back = "ui_inGame2_Krovosos", icon = ""}, + bloodsucker_normal = {back = "ui_inGame2_Krovosos_1", icon = ""}, + bloodsucker_strong = {back = "ui_inGame2_Krovosos_2", icon = ""}, + boar_weak = {back = "ui_inGame2_Kaban_1", icon = ""}, + boar_strong = {back = "ui_inGame2_Kaban", icon = ""}, + burer = {back = "ui_inGame2_Burer", icon = ""}, + chimera = {back = "ui_inGame2_Himera", icon = ""}, + controller = {back = "ui_inGame2_Controller", icon = ""}, + dog = {back = "ui_inGame2_Blind_Dog", icon = ""}, + flesh_weak = {back = "ui_inGame2_Flesh", icon = ""}, + flesh_strong = {back = "ui_inGame2_Flesh_1", icon = ""}, + gigant = {back = "ui_inGame2_Pseudo_Gigant", icon = ""}, + poltergeist_tele = {back = "ui_inGame2_Poltergeyst", icon = ""}, + poltergeist_flame = {back = "ui_inGame2_Poltergeist_1", icon = ""}, + psy_dog_weak = {back = "ui_inGame2_PseudoDog_1", icon = ""}, + psy_dog_strong = {back = "ui_inGame2_PseudoDog", icon = ""}, + pseudodog_weak = {back = "ui_inGame2_PseudoDog_1", icon = ""}, + pseudodog_strong = {back = "ui_inGame2_PseudoDog", icon = ""}, + snork = {back = "ui_inGame2_Snork", icon = ""}, + tushkano = {back = "ui_inGame2_Tushkan", icon = ""}, + none = {back = "", icon = ""} +} +function get_monster_back() + if not(xr_statistic.actor_statistic.best_monster) or not(killed_monsters_tbl[xr_statistic.actor_statistic.best_monster]) then + return tostring(killed_monsters_tbl.none.back) + end + return tostring(killed_monsters_tbl[xr_statistic.actor_statistic.best_monster].back) +end +function get_monster_icon() + if not(xr_statistic.actor_statistic.best_monster) or not(killed_monsters_tbl[xr_statistic.actor_statistic.best_monster]) then + return tostring(killed_monsters_tbl.none.icon) + end + return tostring(killed_monsters_tbl[xr_statistic.actor_statistic.best_monster].icon) +end +function get_favorite_weapon() + if not(xr_statistic.actor_statistic.favorite_weapon_sect) then + return "wpn_knife" + end + return xr_statistic.actor_statistic.favorite_weapon_sect +end + +local primary_objects_tbl = +{ + {target="zat_b55_spot", hint="st_zat_b55_name"}, + {target="zat_b100_spot", hint="st_zat_b100_name"}, + {target="zat_b104_spot", hint="st_zat_b104_name"}, + {target="zat_b38_spot", hint="st_zat_b38_name"}, + {target="zat_b40_spot", hint="st_zat_b40_name"}, + {target="zat_b56_spot", hint="st_zat_b56_name"}, + {target="zat_b5_spot", hint="st_zat_b5_name"}, + {target="zat_a2_spot", hint="st_zat_a2_name"}, + {target="zat_b20_spot", hint="st_zat_b20_name"}, + {target="zat_b53_spot", hint="st_zat_b53_name"}, + {target="zat_b101_spot", hint="st_zat_b101_name"}, + {target="zat_b106_spot", hint="st_zat_b106_name"}, + {target="zat_b7_spot", hint="st_zat_b7_name"}, + {target="zat_b14_spot", hint="st_zat_b14_name"}, + {target="zat_b52_spot", hint="st_zat_b52_name"}, + {target="zat_b39_spot", hint="st_zat_b39_name"}, + {target="zat_b33_spot", hint="st_zat_b33_name"}, + {target="zat_b18_spot", hint="st_zat_b18_name"}, + {target="zat_b54_spot", hint="st_zat_b54_name"}, + {target="zat_b12_spot", hint="st_zat_b12_name"}, + {target="zat_b28_spot", hint="st_zat_b28_name"}, + {target="zat_b103_spot", hint="st_zat_b103_name"}, + + {target="jup_b1_spot", hint="st_jup_b1_name"}, + {target="jup_b46_spot", hint="st_jup_b46_name"}, + {target="jup_b202_spot", hint="st_jup_b202_name"}, + {target="jup_b211_spot", hint="st_jup_b211_name"}, + {target="jup_b200_spot", hint="st_jup_b200_name"}, + {target="jup_b19_spot", hint="st_jup_b19_name"}, + {target="jup_a6_spot", hint="st_jup_a6_name"}, + {target="jup_b25_spot", hint="st_jup_b25_name"}, + {target="jup_b6_spot", hint="st_jup_b6_name"}, + {target="jup_b205_spot", hint="st_jup_b205_name"}, + {target="jup_b206_spot", hint="st_jup_b206_name"}, + {target="jup_b32_spot", hint="st_jup_b32_name"}, + {target="jup_a10_spot", hint="st_jup_a10_name"}, + {target="jup_b209_spot", hint="st_jup_b209_name"}, + {target="jup_b208_spot", hint="st_jup_b208_name"}, + {target="jup_a12_spot", hint="st_jup_a12_name"}, + {target="jup_b212_spot", hint="st_jup_b212_name"}, + {target="jup_b9_spot", hint="st_jup_b9_name"}, + {target="jup_b201_spot", hint="st_jup_b201_name"}, + {target="jup_a9_spot", hint="st_jup_a9_name"}, + + {target="pri_a28_spot", hint="st_pri_a28_name"}, + {target="pri_b36_spot", hint="st_pri_b36_name"}, + {target="pri_b303_spot", hint="st_pri_b303_name"}, + {target="pri_b301_spot", hint="st_pri_b301_name"}, + {target="pri_a17_spot", hint="st_pri_a17_name"}, + {target="pri_b306_spot", hint="st_pri_b306_name"}, + {target="pri_a16_spot", hint="st_pri_a16_name"}, + {target="pri_a25_spot", hint="st_pri_a25_name"}, + {target="pri_b35_spot", hint="st_pri_b35_name"}, + {target="pri_a21_spot", hint="st_pri_a21_name"}, + {target="pri_b304_spot", hint="st_pri_b304_name"}, + {target="pri_a18_spot", hint="st_pri_a18_name"} +} + +local change_objects_tbl = +{ + {target = "jup_b32_spot", hint = "st_jup_b32_name", zone = "jup_b32_anomal_zone", group = "jup_b32_scanner_1_placed", enabled = false}, + {target = "jup_b201_spot", hint = "st_jup_b201_name", zone = "jup_b201_anomal_zone", group = "jup_b32_scanner_2_placed", enabled = false}, + {target = "jup_b209_spot", hint = "st_jup_b209_name", zone = "jup_b209_anomal_zone", group = "jup_b32_scanner_3_placed", enabled = false}, + {target = "jup_b211_spot", hint = "st_jup_b211_name", zone = "jup_b211_anomal_zone", group = "jup_b32_scanner_4_placed", enabled = false}, + {target = "jup_b1_spot", hint = "st_jup_b1_name", zone = "jup_b10_anomal_zone", group = "jup_b32_scanner_5_placed", enabled = false}, + +} + +local sleep_zones_tbl = +{ + {target = "zat_a2_sr_sleep_id", hint = "st_ui_pda_sleep_place"}, + {target = "jup_a6_sr_sleep_id", hint = "st_ui_pda_sleep_place"}, + {target = "pri_a16_sr_sleep_id", hint = "st_ui_pda_sleep_place"}, +} + +function fill_primary_objects() + for k,v in pairs(primary_objects_tbl) do + local obj_id = get_story_object_id(v.target) + if(obj_id) then + level.map_add_object_spot(obj_id, "primary_object", v.hint) + end + end + change_anomalies_names() + fill_sleep_zones() +end + +function fill_sleep_zones() + for k,v in pairs(sleep_zones_tbl) do + local obj_id = get_story_object_id(v.target) + if(obj_id and db.storage[obj_id] and db.storage[obj_id].object) then + if(db.storage[obj_id].object:position():distance_to(db.actor:position())<=150 and level.map_has_object_spot(obj_id, "ui_pda2_actor_sleep_location")==0) then + level.map_add_object_spot(obj_id, "ui_pda2_actor_sleep_location", v.hint) + elseif(db.storage[obj_id].object:position():distance_to(db.actor:position())>150 and level.map_has_object_spot(obj_id, "ui_pda2_actor_sleep_location")~=0) then + level.map_remove_object_spot(obj_id, "ui_pda2_actor_sleep_location") + end + end + end +end + +function add_quick_slot_items_on_game_start() + local _ini = system_ini() + local str = utils.cfg_get_string(_ini, "actor", "quick_item_1", db.actor, false, "", "") + get_console():execute("slot_0 "..str) + local str = utils.cfg_get_string(_ini, "actor", "quick_item_2", db.actor, false, "", "") + get_console():execute("slot_1 "..str) + local str = utils.cfg_get_string(_ini, "actor", "quick_item_3", db.actor, false, "", "") + get_console():execute("slot_2 "..str) + local str = utils.cfg_get_string(_ini, "actor", "quick_item_4", db.actor, false, "", "") + get_console():execute("slot_3 "..str) +end + +function change_anomalies_names() + if has_alife_info("jup_b32_scanner_reward") then + for k,v in pairs(change_objects_tbl) do + if has_alife_info(v.group) and not v.enabled then + v.enabled = true + end + end + end + + if level.name() ~= "jupiter" then + return + end + for k,v in pairs(change_objects_tbl) do + if v.enabled then + local obj_id = get_story_object_id(v.target) + if (obj_id) and (level.map_has_object_spot(obj_id, "primary_object") ~= 0) then + level.map_remove_object_spot(obj_id, "primary_object") + end + local hint = game.translate_string(v.hint).."\\n".." \\n" + local has_af = false + local af_table = {} + has_af, af_table = xr_conditions.anomaly_has_artefact(db.actor, nil, {v.zone}) + if has_af then + hint = hint..game.translate_string("st_jup_b32_has_af") + for k,v in pairs(af_table) do + hint = hint.."\\n"..game.translate_string("st_"..v.."_name") + end + else + hint = hint..game.translate_string("st_jup_b32_no_af") + end + if (obj_id) and level.map_has_object_spot(obj_id, "primary_object") == 0 then + level.map_add_object_spot(obj_id, "primary_object", hint) + end + end + end +end + +-- CoCray +---------------------------------------------------------------------------- +-- Engine->lua function calls +---------------------------------------------------------------------------- + +-- PDA Tabs +-- It's now possible to add new button tabs to pda*.xml. +-- You can use ActorMenu.get_pda_menu():GetActiveSection() to find out active pda tab +-- UI returned must be CUIScriptWnd +function set_active_subdialog(section) + --printf("section=%s",section) + if (section == "eptTasks") then + + elseif (section == "eptRanking") then + + elseif (section == "eptLogs") then + return nil + + elseif (section == "eptRelations") then + --return ui_pda_relations_tab.get_ui() + elseif (section == "eptContacts") then + --return ui_pda_contacts_tab.get_ui() + elseif (section == "eptEncyclopedia") then + --return ui_pda_encyclopedia_tab.get_ui() + end +end + +function property_box_clicked(property_ui) + -- See CoC for implmentation +end + +function property_box_add_properties(property_ui,id,level_name,hint) + -- See CoC for implmentation +end + +-- called from engine! It's how many character rankings to display! u8 (max 255) +function get_rankings_array_size() + return 1 +end + +-- called from engine! must return bool! +function coc_rankings_can_show(index) + return false +end + +-- called from engine! must return string! +function coc_rankings_set_name(index) + return "" +end + +-- called from engine! must return string! +function coc_rankings_set_hint(index) + return "" +end + +-- called from engine! must return string! +function coc_rankings_set_description(index) + return "" +end + +-- called from engine! must return string! +function coc_rankings_set_icon(index) + return "" +end +-- // diff --git a/gamedata/scripts/se_car.script b/gamedata/scripts/se_car.script new file mode 100644 index 0000000..b9c1956 --- /dev/null +++ b/gamedata/scripts/se_car.script @@ -0,0 +1,37 @@ +--------------------------------------------------------------------- +class "se_car" (cse_alife_car) +-------------------- +function se_car:__init (section) super (section) + --log("_bp: set_car:__init") + self.ini = nil + self.spawner_present = false +end + +function se_car:on_register() + cse_alife_car.on_register(self) + -- Проверяем кастомдату обьекта на наличие стори айди. + story_objects.check_spawn_ini_for_story_id(self) + + --from test xr_effects.spawn_object_in(db.actor, nil, {"wpn_pm","my_moskvich_story_id"}) +end +function se_car:on_unregister() + unregister_story_object_by_id(self.id) + cse_alife_car.on_unregister(self) +end +-------------------- +function se_car:can_switch_offline () + return cse_alife_car.can_switch_offline(self) +end +-------------------- +function se_car:can_switch_online () + if self.ini == nil then + self.ini = self:spawn_ini() + self.spawner_present = self.ini:section_exist("spawner") + end + + if self.ini == nil or self.spawner_present == false then + return cse_alife_car.can_switch_online(self) + end + return xr_spawner.check_spawn (self) +end +-------------------- diff --git a/gamedata/scripts/se_item.script b/gamedata/scripts/se_item.script new file mode 100644 index 0000000..19d05b8 --- /dev/null +++ b/gamedata/scripts/se_item.script @@ -0,0 +1,512 @@ +local registred_items = {} +-- Outfits --------------------------------------------------------------------- +class "se_outfit" (cse_alife_item_custom_outfit) +function se_outfit:__init (section) super (section) + self.secret_item = false +end +function se_outfit:on_register() + cse_alife_item_custom_outfit.on_register( self ) + -- Проверяем кастомдату обьекта на наличие стори айди. + story_objects.check_spawn_ini_for_story_id(self) + + -- Собираем статистику по предметам. + if registred_items[self:section_name()] == nil then + registred_items[self:section_name()] = 1 + else + registred_items[self:section_name()] = registred_items[self:section_name()] + 1 + end + + self.secret_item = treasure_manager.get_treasure_manager():register_item(self) +end +function se_outfit:on_unregister() + --' Отрегистрация в таскменеджере + unregister_story_object_by_id(self.id) + cse_alife_item_custom_outfit.on_unregister( self ) +end +function se_outfit:can_switch_online() + if(self.secret_item) then + return false + end + return cse_alife_item_custom_outfit.can_switch_online(self) +end + +class "se_helmet" (cse_alife_item_helmet) +function se_helmet:__init (section) super (section) + self.secret_item = false +end +function se_helmet:on_register() + cse_alife_item_helmet.on_register( self ) + -- Проверяем кастомдату обьекта на наличие стори айди. + story_objects.check_spawn_ini_for_story_id(self) + + -- Собираем статистику по предметам. + if registred_items[self:section_name()] == nil then + registred_items[self:section_name()] = 1 + else + registred_items[self:section_name()] = registred_items[self:section_name()] + 1 + end + + self.secret_item = treasure_manager.get_treasure_manager():register_item(self) +end +function se_helmet:on_unregister() + --' Отрегистрация в таскменеджере + unregister_story_object_by_id(self.id) + cse_alife_item_helmet.on_unregister( self ) +end +function se_helmet:can_switch_online() + if(self.secret_item) then + return false + end + return cse_alife_item_helmet.can_switch_online(self) +end + +-- Weapons --------------------------------------------------------------------- +class "se_weapon" (cse_alife_item_weapon) +function se_weapon:__init (section) super (section) + self.secret_item = false +end +function se_weapon:on_register() + cse_alife_item_weapon.on_register( self ) + -- Проверяем кастомдату обьекта на наличие стори айди. + story_objects.check_spawn_ini_for_story_id(self) + + + -- Собираем статистику по предметам. + if registred_items[self:section_name()] == nil then + registred_items[self:section_name()] = 1 + else + registred_items[self:section_name()] = registred_items[self:section_name()] + 1 + end + + self.secret_item = treasure_manager.get_treasure_manager():register_item(self) +end +function se_weapon:on_unregister() + --' Отрегистрация в таскменеджере + unregister_story_object_by_id(self.id) + cse_alife_item_weapon.on_unregister( self ) +end +function se_weapon:can_switch_online() + if(self.secret_item) then + return false + end + return cse_alife_item_weapon.can_switch_online(self) +end + +class "se_weapon_shotgun" (cse_alife_item_weapon_shotgun) +function se_weapon_shotgun:__init (section) super (section) + self.secret_item = false +end +function se_weapon_shotgun:on_register() + cse_alife_item_weapon_shotgun.on_register( self ) + -- Проверяем кастомдату обьекта на наличие стори айди. + story_objects.check_spawn_ini_for_story_id(self) + -- Собираем статистику по предметам. + if registred_items[self:section_name()] == nil then + registred_items[self:section_name()] = 1 + else + registred_items[self:section_name()] = registred_items[self:section_name()] + 1 + end + + self.secret_item = treasure_manager.get_treasure_manager():register_item(self) +end +function se_weapon_shotgun:on_unregister() + --' Отрегистрация в таскменеджере + unregister_story_object_by_id(self.id) + cse_alife_item_weapon_shotgun.on_unregister( self ) +end +function se_weapon_shotgun:can_switch_online() + if(self.secret_item) then + return false + end + return cse_alife_item_weapon_shotgun.can_switch_online(self) +end + +class "se_weapon_automatic_shotgun" (cse_alife_item_weapon_auto_shotgun) +function se_weapon_automatic_shotgun:__init (section) super (section) + self.secret_item = false +end +function se_weapon_automatic_shotgun:on_register() + cse_alife_item_weapon_auto_shotgun.on_register( self ) + -- Проверяем кастомдату обьекта на наличие стори айди. + story_objects.check_spawn_ini_for_story_id(self) + -- Собираем статистику по предметам. + if registred_items[self:section_name()] == nil then + registred_items[self:section_name()] = 1 + else + registred_items[self:section_name()] = registred_items[self:section_name()] + 1 + end + + self.secret_item = treasure_manager.get_treasure_manager():register_item(self) +end +function se_weapon_automatic_shotgun:on_unregister() + --' Отрегистрация в таскменеджере + unregister_story_object_by_id(self.id) + cse_alife_item_weapon_auto_shotgun.on_unregister( self ) +end +function se_weapon_automatic_shotgun:can_switch_online() + if(self.secret_item) then + return false + end + return cse_alife_item_weapon_auto_shotgun.can_switch_online(self) +end + +class "se_weapon_magazined" (cse_alife_item_weapon_magazined) +function se_weapon_magazined:__init (section) super (section) + self.secret_item = false +end +function se_weapon_magazined:on_register() + cse_alife_item_weapon_magazined.on_register( self ) + -- Проверяем кастомдату обьекта на наличие стори айди. + story_objects.check_spawn_ini_for_story_id(self) + -- Собираем статистику по предметам. + if registred_items[self:section_name()] == nil then + registred_items[self:section_name()] = 1 + else + registred_items[self:section_name()] = registred_items[self:section_name()] + 1 + end + + self.secret_item = treasure_manager.get_treasure_manager():register_item(self) +end +function se_weapon_magazined:on_unregister() + --' Отрегистрация в таскменеджере + unregister_story_object_by_id(self.id) + cse_alife_item_weapon_magazined.on_unregister( self ) +end +function se_weapon_magazined:can_switch_online() + if(self.secret_item) then + return false + end + return cse_alife_item_weapon_magazined.can_switch_online(self) +end + +class "se_weapon_magazined_w_gl" (cse_alife_item_weapon_magazined_w_gl) +function se_weapon_magazined_w_gl:__init (section) super (section) + self.secret_item = false +end +function se_weapon_magazined_w_gl:on_register() + cse_alife_item_weapon_magazined_w_gl.on_register( self ) + -- Проверяем кастомдату обьекта на наличие стори айди. + story_objects.check_spawn_ini_for_story_id(self) + -- Собираем статистику по предметам. + if registred_items[self:section_name()] == nil then + registred_items[self:section_name()] = 1 + else + registred_items[self:section_name()] = registred_items[self:section_name()] + 1 + end + + self.secret_item = treasure_manager.get_treasure_manager():register_item(self) +end +function se_weapon_magazined_w_gl:on_unregister() + --' Отрегистрация в таскменеджере + unregister_story_object_by_id(self.id) + cse_alife_item_weapon_magazined_w_gl.on_unregister( self ) +end +function se_weapon_magazined_w_gl:can_switch_online() + if(self.secret_item) then + return false + end + return cse_alife_item_weapon_magazined_w_gl.can_switch_online(self) +end + +-- Items ----------------------------------------------------------------------- +class "se_item" (cse_alife_item) +function se_item:__init (section) super (section) + self.secret_item = false +end +function se_item:on_register() + cse_alife_item.on_register( self ) + -- Проверяем кастомдату обьекта на наличие стори айди. + story_objects.check_spawn_ini_for_story_id(self) + -- Собираем статистику по предметам. + if registred_items[self:section_name()] == nil then + registred_items[self:section_name()] = 1 + else + registred_items[self:section_name()] = registred_items[self:section_name()] + 1 + end + + self.secret_item = treasure_manager.get_treasure_manager():register_item(self) +end +function se_item:on_unregister() + --' Отрегистрация в таскменеджере + unregister_story_object_by_id(self.id) + cse_alife_item.on_unregister( self ) +end +function se_item:can_switch_online() + if(self.secret_item) then + return false + end + return cse_alife_item.can_switch_online(self) +end + +class "se_item_torch" (cse_alife_item_torch) +function se_item_torch:__init (section) super (section) + self.secret_item = false +end +function se_item_torch:on_register() + cse_alife_item_torch.on_register( self ) + -- Проверяем кастомдату обьекта на наличие стори айди. + story_objects.check_spawn_ini_for_story_id(self) + -- Собираем статистику по предметам. + if registred_items[self:section_name()] == nil then + registred_items[self:section_name()] = 1 + else + registred_items[self:section_name()] = registred_items[self:section_name()] + 1 + end + + self.secret_item = treasure_manager.get_treasure_manager():register_item(self) +end +function se_item_torch:on_unregister() + --' Отрегистрация в таскменеджере + unregister_story_object_by_id(self.id) + cse_alife_item_torch.on_unregister( self ) +end +function se_item_torch:can_switch_online() + if(self.secret_item) then + return false + end + return cse_alife_item_torch.can_switch_online(self) +end + +--' ФИзобъекты +class "se_physic" (cse_alife_object_physic) +function se_physic:__init (section) super (section) + self.secret_item = false +end +function se_physic:on_register() + cse_alife_object_physic.on_register(self) + -- Проверяем кастомдату обьекта на наличие стори айди. + story_objects.check_spawn_ini_for_story_id(self) + + self.secret_item = treasure_manager.get_treasure_manager():register_item(self) +end +function se_physic:on_unregister() + unregister_story_object_by_id(self.id) + cse_alife_object_physic.on_unregister(self) +end +function se_physic:keep_saved_data_anyway() + return true +end +function se_physic:can_switch_online() + if(self.secret_item) then + return false + end + return cse_alife_object_physic.can_switch_online(self) +end + +class "se_lamp" (cse_alife_object_hanging_lamp) +function se_lamp:__init (section) super (section) + self.secret_item = false +end +function se_lamp:on_register() + cse_alife_object_hanging_lamp.on_register(self) + -- Проверяем кастомдату обьекта на наличие стори айди. + story_objects.check_spawn_ini_for_story_id(self) + + self.secret_item = treasure_manager.get_treasure_manager():register_item(self) +end +function se_lamp:on_unregister() + unregister_story_object_by_id(self.id) + cse_alife_object_hanging_lamp.on_unregister(self) +end +function se_lamp:keep_saved_data_anyway() + return true +end +function se_lamp:can_switch_online() + if(self.secret_item) then + return false + end + return cse_alife_object_hanging_lamp.can_switch_online(self) +end + + + + +-- AMMO ------------------------------------------------------------------------ +class "se_ammo" (cse_alife_item_ammo) +function se_ammo:__init (section) super (section) + self.secret_item = false +end + +function se_ammo:on_register() + cse_alife_item_ammo.on_register( self ) + -- Проверяем кастомдату обьекта на наличие стори айди. + story_objects.check_spawn_ini_for_story_id(self) + + self.secret_item = treasure_manager.get_treasure_manager():register_item(self) +end + +function se_ammo:on_unregister() + unregister_story_object_by_id(self.id) + cse_alife_item_ammo.on_unregister(self) +end +function se_ammo:can_switch_online() + if(self.secret_item) then + return false + end + return cse_alife_item_ammo.can_switch_online(self) +end + -- IX-Ray START +function se_ammo:keep_saved_data_anyway() + return false +end + -- IX-Ray END +-- GRENADES -------------------------------------------------------------------------------------------------------------------------- +class "se_grenade" (cse_alife_item_grenade) +function se_grenade:__init (section) super (section) + self.secret_item = false +end + +function se_grenade:on_register() + cse_alife_item_grenade.on_register( self ) + -- Проверяем кастомдату обьекта на наличие стори айди. + story_objects.check_spawn_ini_for_story_id(self) + + self.secret_item = treasure_manager.get_treasure_manager():register_item(self) +end + +function se_grenade:on_unregister() + unregister_story_object_by_id(self.id) + cse_alife_item_grenade.on_unregister(self) +end +function se_grenade:can_switch_online() + if(self.secret_item) then + return false + end + return cse_alife_item_grenade.can_switch_online(self) +end +-- EATEBLE --------------------------------------------------------------------------------------------------------------------------- +class "se_eatable" (cse_alife_item) +function se_eatable:__init (section) super (section) + self.secret_item = false +end + +function se_eatable:on_register() + cse_alife_item.on_register( self ) + -- Проверяем кастомдату обьекта на наличие стори айди. + story_objects.check_spawn_ini_for_story_id(self) + self.secret_item = treasure_manager.get_treasure_manager():register_item(self) +end + +function se_eatable:on_unregister() + unregister_story_object_by_id(self.id) + cse_alife_item.on_unregister(self) +end +function se_eatable:can_switch_online() + if(self.secret_item) then + return false + end + return cse_alife_item.can_switch_online(self) +end + +-- INVENTORY BOX --------------------------------------------------------------------------------------------------------------------- +class "se_invbox" (cse_alife_inventory_box) +function se_invbox:__init (section) super (section) + self.secret_item = false +end + +function se_invbox:on_register() + cse_alife_inventory_box.on_register( self ) + -- Проверяем кастомдату обьекта на наличие стори айди. + story_objects.check_spawn_ini_for_story_id(self) + + self.secret_item = treasure_manager.get_treasure_manager():register_item(self) +end + +function se_invbox:on_unregister() + unregister_story_object_by_id(self.id) + cse_alife_inventory_box.on_unregister(self) +end +function se_invbox:can_switch_online() + if(self.secret_item) then + return false + end + return cse_alife_inventory_box.can_switch_online(self) +end + +-- EXPLOSIVE ------------------------------------------------------------------------------------------------------------------------- +class "se_explosive" (cse_alife_item_explosive) +function se_explosive:__init (section) super (section) + self.secret_item = false +end + +function se_explosive:on_register() + cse_alife_item_explosive.on_register( self ) + -- Проверяем кастомдату обьекта на наличие стори айди. + story_objects.check_spawn_ini_for_story_id(self) + + self.secret_item = treasure_manager.get_treasure_manager():register_item(self) +end + +function se_explosive:on_unregister() + unregister_story_object_by_id(self.id) + cse_alife_item_explosive.on_unregister(self) +end +function se_explosive:can_switch_online() + if(self.secret_item) then + return false + end + return cse_alife_item_explosive.can_switch_online(self) +end + +-- PDA ------------------------------------------------------------------------------------------------------------------------------- +class "se_pda" (cse_alife_item_pda) +function se_pda:__init (section) super (section) + self.secret_item = false +end + +function se_pda:on_register() + cse_alife_item_pda.on_register( self ) + -- Проверяем кастомдату обьекта на наличие стори айди. + story_objects.check_spawn_ini_for_story_id(self) + + self.secret_item = treasure_manager.get_treasure_manager():register_item(self) +end + +function se_pda:on_unregister() + unregister_story_object_by_id(self.id) + cse_alife_item_pda.on_unregister(self) +end +function se_pda:can_switch_online() + if(self.secret_item) then + return false + end + return cse_alife_item_pda.can_switch_online(self) +end + +class "se_detector" (cse_alife_item_detector) +function se_detector:__init (section) super (section) + self.secret_item = false +end +function se_detector:on_register() + cse_alife_item_detector.on_register( self ) + -- Проверяем кастомдату обьекта на наличие стори айди. + story_objects.check_spawn_ini_for_story_id(self) + -- Собираем статистику по предметам. + if registred_items[self:section_name()] == nil then + registred_items[self:section_name()] = 1 + else + registred_items[self:section_name()] = registred_items[self:section_name()] + 1 + end + + self.secret_item = treasure_manager.get_treasure_manager():register_item(self) +end +function se_detector:on_unregister() + --' Отрегистрация в таскменеджере + unregister_story_object_by_id(self.id) + cse_alife_item_detector.on_unregister( self ) +end +function se_detector:can_switch_online() + if(self.secret_item) then + return false + end + return cse_alife_item_detector.can_switch_online(self) +end + + +-------------------------------------------------------------------------------- +function stats() + printf("*** SIM ITEMS STATISTIC ***") + for k,v in pairs(registred_items) do + printf("item = %s, num = %s", k, v) + end +end diff --git a/gamedata/scripts/se_smart_cover.script b/gamedata/scripts/se_smart_cover.script new file mode 100644 index 0000000..654dcc5 --- /dev/null +++ b/gamedata/scripts/se_smart_cover.script @@ -0,0 +1,153 @@ +--'****************************************************** +--'* серверный класс объекта смарт кавер . +--'****************************************************** +registered_smartcovers = {} +registered_smartcovers_by_lv_id = {} + +class "se_smart_cover" (cse_smart_cover) +function se_smart_cover:__init (section) super (section) +-- printf("se_smart_cover:__init( ) called") + self.loopholes = {} + self.last_description = "" + if self.set_available_loopholes ~= nil then + self:set_available_loopholes ( self.loopholes ) + end +end +function se_smart_cover:STATE_Write (packet) + cse_smart_cover.STATE_Write (self, packet) + packet:w_stringZ(self.last_description) + local n = 0 + for k,v in pairs (self.loopholes) do + n = n + 1 + end + packet:w_u8(n) + for k,v in pairs (self.loopholes) do + packet:w_stringZ(k) + packet:w_bool(v) + end +-- printf("write") +-- print_table(self.loopholes) +end +function se_smart_cover:STATE_Read (packet, size) + cse_smart_cover.STATE_Read (self, packet, size) + if self.script_version >= 9 then + self.last_description = packet:r_stringZ() + local smart_cover_description + if self.last_description ~= "" then + smart_cover_description = self.last_description + else + smart_cover_description = self:description() + end + local existing_loopholes = {} + if smart_cover_description ~= nil then + printf("name %s descr %s", self:name(), tostring(smart_cover_description)) + if smart_covers == nil then + abort("smartcovers is nil") + end + if smart_covers.descriptions[smart_cover_description] == nil then + abort("smartcover [%s] has wrong description [%s]!!!", self:name(), tostring(smart_cover_description)) + end + local loopholes = smart_covers.descriptions[smart_cover_description].loopholes + for k,v in pairs (loopholes) do + existing_loopholes[v.id] = true + end + end + + local n = packet:r_u8() + for i = 1, n do + local loophole_id = packet:r_stringZ() + local loophole_exist = packet:r_bool() + if existing_loopholes[loophole_id] then + self.loopholes[loophole_id] = loophole_exist + end + end + else + local smart_cover_description = self:description() + if smart_cover_description ~= nil and + smart_covers.descriptions[smart_cover_description] ~= nil -- IX-Ray: Fixed scripts working in editors + then + local loopholes = smart_covers.descriptions[smart_cover_description].loopholes + for k,v in pairs (loopholes) do + self.loopholes[v.id] = true + end + self.last_description = smart_cover_description + end + end +end +function se_smart_cover:on_before_register() + cse_smart_cover.on_before_register( self ) + registered_smartcovers[self:name()] = self +end +function se_smart_cover:on_register() + cse_smart_cover.on_register( self ) + story_objects.check_spawn_ini_for_story_id(self) + local level_id = game_graph():vertex(self.m_game_vertex_id):level_id() + if registered_smartcovers_by_lv_id[level_id] == nil then + registered_smartcovers_by_lv_id[level_id] = {} + end + registered_smartcovers_by_lv_id[level_id][self.m_level_vertex_id] = self +-- printf("smart_cover [%s] is registered lvlid [%s] lvid[%s]", self:name(), tostring(level_id), tostring(self.m_level_vertex_id)) +end +function se_smart_cover:on_unregister() + unregister_story_object_by_id(self.id) + registered_smartcovers[self:name()] = nil + local level_id = game_graph():vertex(self.m_game_vertex_id):level_id() + registered_smartcovers_by_lv_id[level_id][self.m_level_vertex_id] = nil +-- printf("smart_cover [%s] is unregistered", self:name()) + cse_smart_cover.on_unregister(self) +end +function se_smart_cover:update() + cse_smart_cover.update(self) +end + +function se_smart_cover:FillProps (pref,items) +-- log ("CSE_NewAttachableItem::FillProps called!") +-- log (tostring(self:description())) + cse_smart_cover.FillProps (self,pref,items) + local prefix = pref .. "\\" .. self:section_name().."\\" + local smart_cover_description = self:description() + if smart_cover_description ~= self.last_description then + for k,v in pairs (self.loopholes) do + self.loopholes[k] = nil + end + self.last_description = tostring(smart_cover_description) + end + if smart_cover_description ~= nil then + local loopholes = smart_covers.descriptions[smart_cover_description].loopholes + for k,v in pairs (loopholes) do + if self.loopholes[v.id] == nil then + self.loopholes[v.id] = true + end + local h = properties_helper():create_bool (items, prefix .. "loopholes\\"..v.id,self,self.loopholes,v.id) + self:set_loopholes_table_checker(h) + end + end +end + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/gamedata/scripts/sim_squad_scripted.script b/gamedata/scripts/sim_squad_scripted.script new file mode 100644 index 0000000..3ecdd94 --- /dev/null +++ b/gamedata/scripts/sim_squad_scripted.script @@ -0,0 +1,1058 @@ +--'****************************************************** +--'* Боевой отряд группировки. (Скриптовая версия) +--'* Наследован от обычного боевого отряда. +--'* Отличия: +--'* - Детерминированные состав отряда +--'* - Возможность жестко указать активное действие +--'****************************************************** +local squad_behaviour_ini = ini_file("misc\\squad_behaviours.ltx") +local locations_ini = ini_file("misc\\smart_terrain_masks.ltx") +--function printf() +--end + +class "sim_squad_scripted" (cse_alife_online_offline_group) + +--*********************************************************************************************** +--* INITIALIZATION * +--*********************************************************************************************** + +function sim_squad_scripted:__init(section) super (section) + --' смарт, в котором сейчас находится отряд. + self.smart_id = nil + self.board = sim_board.get_sim_board() + self.current_spot_id = nil --' ID объекта на который сейчас установлен мапспот. + + --' Текущее действие + self.current_action = nil + + self.current_target_id = nil + + self.assigned_target_id = nil + + --' Саундменеджер отряда + self.sound_manager = sound_manager.get_sound_manager("squad_"..self:section_name() ) + + self.settings_id = self:section_name() + + self:init_squad() + + self:set_squad_behaviour() +end +--' Инициализация +function sim_squad_scripted:init_squad() + self.player_id = utils.cfg_get_string(sim_board.squad_ltx, self.settings_id, "faction", self, true, "") + self.action_condlist = xr_logic.parse_condlist(self, "assign_action", "target_smart", utils.cfg_get_string(sim_board.squad_ltx, self.settings_id, "target_smart", self, false, "", "")) + self.death_condlist = xr_logic.parse_condlist(self, "death_condlist", "on_death", utils.cfg_get_string(sim_board.squad_ltx, self.settings_id, "on_death", self, false, "", "")) + self.invulnerability = xr_logic.parse_condlist(self, "invulnerability", "invulnerability", utils.cfg_get_string(sim_board.squad_ltx, self.settings_id, "invulnerability", self, false, "", "")) + self.relationship = self.relationship or utils.cfg_get_string(sim_board.squad_ltx, self.settings_id, "relationship", self, false, "", nil) + self.sympathy = utils.cfg_get_number(sim_board.squad_ltx, self.settings_id, "sympathy", self, false, nil) + self.show_spot = xr_logic.parse_condlist(self, "show_spot", "show_spot", utils.cfg_get_string(sim_board.squad_ltx, self.settings_id, "show_spot", self, false, "", "false")) + + self.always_walk = utils.cfg_get_bool(sim_board.squad_ltx, self.settings_id, "always_walk", self, false) + self.always_arrived = utils.cfg_get_bool(sim_board.squad_ltx, self.settings_id, "always_arrived", self, false) + self:set_location_types_section("stalker_terrain") + self:set_squad_sympathy() +end + +-- Инициализация отряда на загрузке +function sim_squad_scripted:init_squad_on_load() + -- Прописываем сквад в нужные смарты + printf("Init squad %s on load", self.id) + self:set_squad_sympathy() + self.board:assign_squad_to_smart(self, self.smart_id) + + if self.smart_id ~= nil then + self.board:enter_smart(self, self.smart_id, true) + end + self.need_to_reset_location_masks = true +end + +-- Вычитываем настройки поведения сквада. +function sim_squad_scripted:set_squad_behaviour() + self.behaviour = {} + local behaviour_section = utils.cfg_get_string(sim_board.squad_ltx, self.settings_id, "behaviour", self, false, "", self.player_id) + if not squad_behaviour_ini:section_exist(behaviour_section) then + abort("There is no section ["..behaviour_section.."] in 'misc\\squad_behaviours.ltx'") + end + local n = squad_behaviour_ini:line_count(behaviour_section) + for j=0,n-1 do + local result, prop_name, prop_condlist = squad_behaviour_ini:r_line(behaviour_section,j,"","") + self.behaviour[prop_name] = prop_condlist + end +end + +--*********************************************************************************************** +--* SCRIPT_TARGET_SELECTION * +--*********************************************************************************************** + +--' Возвращает скриптовую цель. +function sim_squad_scripted:get_script_target() + local new_target = xr_logic.pick_section_from_condlist(db.actor, self, self.action_condlist) + + if new_target == nil then +-- printf("[%s] get_script_target nil_condlist", self.id) + return nil + end + + if new_target ~= self.last_target then + self.last_target = new_target + --' Парсим новые задачи для отряда + self.parsed_targets = utils.parse_names(new_target) + + if self.need_free_update ~= true then + self.next_target = 1 + else + self.need_free_update = false + end + end + if self.parsed_targets[self.next_target] == nil then + self.next_target = 1 + end + + + local nt = self:pick_next_target() + if nt == "nil" then + return nil + elseif nt == "loop" then + self.next_target = 1 + nt = self:pick_next_target() + end + local point = self.board.smarts_by_names[nt] + if point == nil then + abort("Incorrect next point [%s] for squad [%s]", tostring(nt), tostring(self.id)) + end + return point.id +end + + +--' Выбор следующей цели +function sim_squad_scripted:pick_next_target() + --printf("Picking next target for [%s] = %s by %s", self:section_name(), tostring(self.parsed_targets[self.next_target]), self.next_target) + return self.parsed_targets[self.next_target] +end + + +--' Проверка пришел ли отряд в очередной поинт +function sim_squad_scripted:check_squad_come_to_point() + --printf("[%s] check squad point", self.id) + if self.parsed_targets == nil then + return true + end + --' Если мы уже дошли до точки. + local next_target = self.next_target or 0 + if self.assigned_target_id ~= nil and self.smart_id == self.assigned_target_id then + if self.parsed_targets[next_target+1] ~= nil then + self.next_target = next_target+1 + return true + end + end + return false +end + +--' Проверка пришел ли отряд в очередной поинт +function sim_squad_scripted:update_current_action() + local is_finished = self.current_action:update(false) + if not is_finished then + return false + end + return true +end + +function sim_squad_scripted:update() + cse_alife_online_offline_group.update (self) + self:refresh() + + -- Апдейт доступности для симуляции. + simulation_objects.get_sim_obj_registry():update_avaliability(self) + + self:check_invulnerability() + + local script_target = self:get_script_target() + + --printf("[%s] SCRIPTED UPDATE. Target[%s]", self.id, tostring(script_target)) + if script_target == nil then + self:generic_update() + if self.need_to_reset_location_masks then + self:set_location_types() + self.need_to_reset_location_masks = false + end + return + end + + self.sound_manager:update() + + local need_to_find_new_action = false + if self.assigned_target_id ~= nil and self.assigned_target_id == script_target then + if self.current_action ~= nil then + if self.current_action.name == "stay_point" then + --' Если экшн stay_point. Проверяем пришли ли до экшна. + if self:check_squad_come_to_point() then + --' Пришли в точку, перевыбрали цель + need_to_find_new_action = true + --printf("[%s] SCRIPTED need_to_find_new_action %s", self.id, tostring(need_to_find_new_action)) + else + --' Не пришли в точку, апдейтимся дальше + need_to_find_new_action = self:update_current_action() + --printf("[%s] SCRIPTED need_to_find_new_action %s", self.id, tostring(need_to_find_new_action)) + end + else + --' Если экшн attack_point. Проверяем пришли ли после экшна. + if self:update_current_action() then + self:check_squad_come_to_point() + need_to_find_new_action = true + --printf("[%s] SCRIPTED need_to_find_new_action %s", self.id, tostring(need_to_find_new_action)) + end + end + else + --' Проверяем пришли ли + self:check_squad_come_to_point() + need_to_find_new_action = true + --printf("[%s] SCRIPTED need_to_find_new_action %s", self.id, tostring(need_to_find_new_action)) + end + else + if self.current_action == nil then + need_to_find_new_action = true + --printf("[%s] SCRIPTED need_to_find_new_action %s", self.id, tostring(need_to_find_new_action)) + else + if self.current_action.major == true then + if self:update_current_action() then + self:check_squad_come_to_point() + need_to_find_new_action = true + --printf("[%s] SCRIPTED need_to_find_new_action %s", self.id, tostring(need_to_find_new_action)) + end + else + need_to_find_new_action = true + --printf("[%s] SCRIPTED need_to_find_new_action %s", self.id, tostring(need_to_find_new_action)) + end + end + end + + if need_to_find_new_action == true then + self.assigned_target_id = script_target + + if self.current_action ~= nil then + self.current_action:finalize() + self.current_action = nil + end + --' Если у нас нет текущей цели - просим выдать нам задание. + self:get_next_action(false) + end + if self.need_to_reset_location_masks then + self:set_location_types() + self.need_to_reset_location_masks = false + end +end + + + +--*********************************************************************************************** +--* SIMULATION_TARGET_SELECTION * +--*********************************************************************************************** + +function sim_squad_scripted:clear_assigned_target() + self.assigned_target_id = nil +end + +function sim_squad_scripted:assigned_target_avaliable() + local target_obj = self.assigned_target_id and alife():object(self.assigned_target_id) + if target_obj == nil then + return false + end + -- В данном случае нужно проверять попьюлейшн минус один, т.к. я уже состою в смарте. + return target_obj:target_precondition(self, true) +end + +local function can_help_actor(squad) + if empty(xr_combat_ignore.fighting_with_actor_npcs) then + return false + end + if game_graph():vertex(squad.m_game_vertex_id):level_id() ~= game_graph():vertex(alife():actor().m_game_vertex_id):level_id() then + return false + end + if has_alife_info("sim_duty_help_harder") and squad:get_squad_community() == "duty" then + return true + elseif has_alife_info("sim_freedom_help_harder") and squad:get_squad_community() == "freedom" then + return true + elseif has_alife_info("sim_stalker_help_harder") and squad:get_squad_community() == "stalker" then + return true + end + return false +end + +local function get_help_target_id(squad) + if not can_help_actor(squad) then + return nil + end + for k,v in pairs (xr_combat_ignore.fighting_with_actor_npcs) do + local enemy_squad_id = alife():object(k).group_id + if enemy_squad_id ~= nil then + local target_squad = alife():object(enemy_squad_id) + if target_squad and squad.position:distance_to_sqr(target_squad.position) < 150^2 and + game_relations.is_factions_enemies(squad:get_squad_community(), target_squad:get_squad_community()) then + return enemy_squad_id + end + end + end + return nil +end + + +--' Апдейт отряда для выбора симуляционных целей. +function sim_squad_scripted:generic_update() + --printf("Squad[%s] UPDATE", self.id) + --' Если у нас есть незавершенное действие - ждем пока оно завершится. + self.sound_manager:update() + self:refresh() + + local help_target_id = get_help_target_id(self) + + if help_target_id then + self.assigned_target_id = help_target_id + self.current_action = nil + self:get_next_action(false) + return + end + if self.assigned_target_id and alife():object(self.assigned_target_id) and alife():object(self.assigned_target_id):clsid() ~= clsid.online_offline_group_s then + local squad_target = self.board:get_squad_target(self) + if squad_target:clsid() == clsid.online_offline_group_s then + self.assigned_target_id = squad_target.id + self.current_action = nil + self:get_next_action(true) + return + end + end + + if self.current_action ~= nil and self:assigned_target_avaliable() then + --printf("[%s] CURRENT ACTION [%s]", self.id, self.current_action.name) + local is_finished = self.current_action:update(true) + + if is_finished then + self.current_action:finalize() + if self.current_action.name == "stay_point" or self.assigned_target_id == nil then + self.assigned_target_id = self.board:get_squad_target(self).id + end + self.current_action = nil + else + return + end + else + self.current_action = nil + self.current_target_id = nil + self.assigned_target_id = self.board:get_squad_target(self).id + end + self:get_next_action(true) +end +--' Получение следующего экшна на выполнение +function sim_squad_scripted:get_next_action(under_simulation) + local squad_target = alife():object(self.assigned_target_id) + --printf("assigned_target = [%s]", tostring(self.assigned_target_id)) + if self.current_target_id == nil then + if squad_target == nil or squad_target:am_i_reached(self) then + if squad_target ~= nil then + squad_target:on_reach_target(self) + squad_target:on_after_reach(self) + end + self.current_action = sim_squad_actions.stay_on_target(self) + self.current_target_id = self.assigned_target_id + self.current_action:make(under_simulation) + return + end + end + + if (self.assigned_target_id == self.current_target_id) or self.assigned_target_id == nil then + self.current_action = sim_squad_actions.stay_on_target(self) + self.current_target_id = self.assigned_target_id + self.current_action:make(under_simulation) + else + self.current_action = sim_squad_actions.reach_target(self) + self.current_action:make(under_simulation) + end +end + +--*********************************************************************************************** +--* MEMBERS_CONTROL * +--*********************************************************************************************** +--' Удаление персонажей отряда +function sim_squad_scripted:remove_squad() + local squad_npcs = {} + for k in self:squad_members() do + squad_npcs[k.id] = true + end +-- + for j,v in pairs(squad_npcs) do + local obj = alife():object(j) + if obj ~= nil then + self:unregister_member(j) + alife():release(obj, true) + end + end + self:hide() +-- alife():release(self, true) +end +--' Удаление конкретного персонажа отряда +function sim_squad_scripted:remove_npc(npc_id) + local npc = alife():object(npc_id) + self:on_npc_death(npc) + --printf("releasing object ["..npc:name().."]") + alife():release(npc, true) +end +--' Убийство НПС +function sim_squad_scripted:on_npc_death(npc) + printf("Squad %s. Killed member %s", tostring(self.id), npc.id) + + self.sound_manager:unregister_npc(npc.id) + self:unregister_member(npc.id) + + if self:npc_count() == 0 then + printf("REMOVING DEAD SQUAD %s", tostring(self.id)) + if self.current_action ~= nil then + self.current_action:finalize() + self.current_action = nil + end + + if self.death_condlist ~= nil then + xr_logic.pick_section_from_condlist(db.actor, self, self.death_condlist) + end + self.board:remove_squad(self) + return + end + self:refresh() +end +function sim_squad_scripted:assign_squad_member_to_smart(member_id, smart, old_smart_id) + local obj = alife():object(member_id) + if obj ~= nil then + --printf(" npc [%s] smart [%s]", obj:name(), tostring(obj.m_smart_terrain_id)) + if obj.m_smart_terrain_id == self.smart_id then + return + end + + if obj.m_smart_terrain_id ~= 65535 and old_smart_id ~= nil and (obj.m_smart_terrain_id == old_smart_id) and self.board.smarts[old_smart_id] ~= nil then + self.board.smarts[old_smart_id].smrt:unregister_npc(obj) + end + + if smart ~= nil then + smart:register_npc(obj) + end + end +end +--' Назначение смарта +function sim_squad_scripted:assign_smart(smart) + local old_smart = self.smart_id + self.smart_id = smart and smart.id + --printf(" squad %s assign smart. old[%s] new[%s]", self.id, tostring(old_smart), tostring(self.smart_id)) + --callstack() + for k in self:squad_members() do + self:assign_squad_member_to_smart(k.id, smart, old_smart) + end +end + +function sim_squad_scripted:check_invulnerability() + if self.squad_online ~= true then + return + end + local invulnerability = xr_logic.pick_section_from_condlist(db.actor, self, self.invulnerability) == "true" + + for k in self:squad_members() do + local npc_st = db.storage[k.id] + if npc_st ~= nil then + local npc = npc_st.object + if npc:invulnerable() ~= invulnerabilty and utils.cfg_get_string(npc_st.ini, npc_st.active_section, "invulnerable", npc, false, "", nil) == nil then +-- printf("RESET INVULNERABILITY. npc[%s] = [%s]", npc:name(), tostring(invulnerability)) + npc:invulnerable(invulnerability) + end + end + end +end + +function sim_squad_scripted:set_location_types_section (section) +-- printf("set_location_types_section[%s] for [%s]", tostring(section), tostring(self:name())) + if locations_ini:section_exist(section) then + local result, id, value = locations_ini:r_line(section,0,"","") + self:add_location_type(id) + end +end +function sim_squad_scripted:set_location_types(new_smart_name) + local default_location = "stalker_terrain" + printf("set_location_types for squad [%s]", self:name()) + self:clear_location_types() + --[[for k,v in pairs(simulation_objects.get_sim_obj_registry().objects) do + if alife():object(k):clsid() == clsid.smart_terrain then + self:set_location_types_section(alife():object(k):name()) + end + end]]-- + + if alife():object(self.assigned_target_id):clsid() == clsid.smart_terrain then + self:set_location_types_section(default_location) + local old_smart_name = self.smart_id and alife():object(self.smart_id) and alife():object(self.smart_id):name() + --printf("old_smart_name = [%s]!", tostring(old_smart_name)) + if old_smart_name then + self:set_location_types_section(old_smart_name) + end + --printf("new_smart_name = [%s]!", tostring(new_smart_name)) + if new_smart_name then + self:set_location_types_section(new_smart_name) + end + else + --printf("target is squad or actor setting [squad_terrain]!") + self:set_location_types_section("squad_terrain") + for k,v in pairs(simulation_objects.get_sim_obj_registry().objects) do + if alife():object(k):clsid() == clsid.smart_terrain then + local props_base = alife():object(k).props and alife():object(k).props["base"] + if props_base and tonumber(props_base) == 0 then + self:set_location_types_section(alife():object(k):name()) + end + end + end + end +end + +function sim_squad_scripted:add_squad_member(spawn_section, spawn_position, lv_id, gv_id, sect_number) + local spawn_sections_ltx = system_ini() + local custom_data = utils.cfg_get_string(spawn_sections_ltx, spawn_section, "custom_data", self, false, "", "default_custom_data.ltx") + if custom_data ~= "default_custom_data.ltx" then + printf("INCORRECT npc_spawn_section USED [%s]. You cannot use npc with custom_data in squads", spawn_section) + end + + local position = spawn_position + + local obj = alife():create(spawn_section, + position, + lv_id, + gv_id) + + self:register_member(obj.id) + self.sound_manager:register_npc(obj.id) + + if simulation_objects.is_on_the_same_level(obj, alife():actor()) and position:distance_to_sqr(alife():actor().position) <= alife():switch_distance()^2 then + db.spawned_vertex_by_id[obj.id] = lv_id + end + + return obj.id +end + +--' Создание чуваков в отряд +function sim_squad_scripted:create_npc(spawn_smart) + local ini = system_ini() + local spawn_sections = utils.parse_names(utils.cfg_get_string(ini, self.settings_id, "npc", self, false, "", "")) + + local spawn_point = utils.cfg_get_string(ini, self.settings_id, "spawn_point", self, false, "","self") or + utils.cfg_get_string(spawn_smart.ini, smart_terrain.SMART_TERRAIN_SECT, "spawn_point", self, false,"","self") + spawn_point = xr_logic.parse_condlist(self, "spawn_point", "spawn_point", spawn_point) + spawn_point = xr_logic.pick_section_from_condlist(db.actor, self, spawn_point) + + --print_table(debug.getinfo(1)) + printf("SPAWN SMART %s", spawn_smart:name()) + --' Высчитываем базовую позицию спауна + local base_spawn_position = spawn_smart.position + local base_lvi = spawn_smart.m_level_vertex_id + local base_gvi = spawn_smart.m_game_vertex_id + if spawn_point ~= nil then + if spawn_point == "self" then + base_spawn_position = spawn_smart.position + base_lvi = spawn_smart.m_level_vertex_id + base_gvi = spawn_smart.m_game_vertex_id + else + base_spawn_position = patrol(spawn_point):point(0) + base_lvi = patrol(spawn_point):level_vertex_id(0) + base_gvi = patrol(spawn_point):game_vertex_id(0) + end + elseif spawn_smart.spawn_point ~= nil then + base_spawn_position = patrol(spawn_smart.spawn_point):point(0) + base_lvi = patrol(spawn_smart.spawn_point):level_vertex_id(0) + base_gvi = patrol(spawn_smart.spawn_point):game_vertex_id(0) + end + if #spawn_sections ~= 0 then + for k,v in pairs(spawn_sections) do + self:add_squad_member(v, base_spawn_position, base_lvi, base_gvi,k) + end + end + + -- подспаун рэндомных чуваков... + local random_spawn = utils.cfg_get_string(ini, self.settings_id, "npc_random", self, false, "",nil) + if random_spawn ~= nil then + random_spawn = utils.parse_names(random_spawn) + local count_min, count_max = utils.r_2nums( ini, self.settings_id, "npc_in_squad", 1, 2 ) + if count_min > count_max then + abort("min_count can't be greater then max_count [%s]!!!!!", self.settings_id) + end + local random_count = math.random(count_min, count_max) + for i = 1,random_count do + local random_id = math.random(1, #random_spawn) + self:add_squad_member(random_spawn[random_id], base_spawn_position, base_lvi, base_gvi,random_id) + end + elseif #spawn_sections == 0 then + abort("You are trying to spawn an empty squad [%s]!!!", self.settings_id) + end + + + self.smart_id = spawn_smart.id + self:refresh() +end + +function sim_squad_scripted:set_squad_sympathy(sympathy) + local symp = sympathy or self.sympathy + if(symp~=nil) then + for k in self:squad_members() do + local npc = db.storage[k.id] and db.storage[k.id].object + if(npc) then + game_relations.set_npc_sympathy(npc, symp) + else + if(db.goodwill.sympathy==nil) then + db.goodwill.sympathy = {} + end + db.goodwill.sympathy[k.id] = symp + end + end + end +end +local function set_relation(npc1, npc2, new_relation) + local goodwill = 0 + if(new_relation=="enemy") then + goodwill = -1000 + elseif(new_relation=="friend") then + goodwill = 1000 + end + if npc1 and npc2 then + npc1:force_set_goodwill(goodwill, npc2.id) + else + abort("Npc not set in goodwill function!!!") + end +end +function sim_squad_scripted:set_squad_relation(relation) + local rel = relation or self.relationship + if(rel~=nil) then + for k in self:squad_members() do + local npc = db.storage[k.id] and db.storage[k.id].object + if(npc) then + game_relations.set_npcs_relation(npc, db.actor, rel) + else + set_relation(alife():object(k.id), alife():actor(),rel) + end + end + end +end + + +local function reset_animation(npc) + local state_mgr = db.storage[npc:id()].state_mgr + if state_mgr == nil then + return + end + local planner = npc:motivation_action_manager() + + state_mgr.animation:set_state(nil, true) + state_mgr.animation:set_control() + state_mgr.animstate:set_state(nil, true) + state_mgr.animstate:set_control() + + state_mgr:set_state("idle", nil, nil, nil, {fast_set = true}) + +-- planner:update() +-- planner:update() +-- planner:update() + + state_mgr:update() + state_mgr:update() + state_mgr:update() + state_mgr:update() + state_mgr:update() + state_mgr:update() + state_mgr:update() + + npc:set_body_state(move.standing) + npc:set_mental_state(anim.free) + +end + +function sim_squad_scripted:set_squad_position(position) + if self.online == false then + self:force_change_position(position) + end + + for k in self:squad_members() do + local cl_object = level.object_by_id(k.id) + db.offline_objects[k.id].level_vertex_id = level.vertex_id(position) + if cl_object then + reset_animation(cl_object) + printf("teleporting npc [%s]", k.id) + cl_object:set_npc_position(position) + printf("end of teleporting npc [%s]", k.id) + else + k.object.position = position + end + end +end + +function sim_squad_scripted:has_detector() + for k in self:squad_members() do + if alife():object(k.id) and alife():object(k.id):has_detector() then + return true + end + end + return false +end + +function sim_squad_scripted:get_squad_community() + local squad_community = squad_community_by_behaviour[self.player_id] + if squad_community == nil then + abort("squad community is 'nil' for player_id [%s]", self.player_id) + end + return squad_community +end + +--*********************************************************************************************** +--* SAVE\LOAD * +--*********************************************************************************************** + +function sim_squad_scripted:STATE_Write(packet) + cse_alife_online_offline_group.STATE_Write (self, packet) + set_save_marker(packet, "save", false, "sim_squad_scripted") + + + packet:w_stringZ(tostring(self.current_target_id)) + packet:w_stringZ(tostring(self.respawn_point_id)) + packet:w_stringZ(tostring(self.respawn_point_prop_section)) + packet:w_stringZ(tostring(self.smart_id)) + + set_save_marker(packet, "save", true, "sim_squad_scripted") +end +function sim_squad_scripted:STATE_Read(packet, size) + cse_alife_online_offline_group.STATE_Read (self, packet, size) + set_save_marker(packet, "load", false, "sim_squad_scripted") + + self.current_target_id = packet:r_stringZ() + if self.current_target_id == "nil" then + self.current_target_id = nil + else + self.current_target_id = tonumber(self.current_target_id) + end + self.respawn_point_id = packet:r_stringZ() + if self.respawn_point_id == "nil" then + self.respawn_point_id = nil + else + self.respawn_point_id = tonumber(self.respawn_point_id) + end + self.respawn_point_prop_section = packet:r_stringZ() + if self.respawn_point_prop_section == "nil" then + self.respawn_point_prop_section = nil + end + self.smart_id = packet:r_stringZ() + if self.smart_id == "nil" then + self.smart_id = nil + else + self.smart_id = tonumber(self.smart_id) + end + + self:init_squad_on_load() + set_save_marker(packet, "load", true, "sim_squad_scripted") +end +--*********************************************************************************************** +--* SERVER_OBJECT * +--*********************************************************************************************** + +function sim_squad_scripted:on_register() + cse_alife_online_offline_group.on_register( self ) + self.board.squads[self.id] = self + -- Проверяем кастомдату обьекта на наличие стори айди. + story_objects.check_spawn_ini_for_story_id(self) + simulation_objects.get_sim_obj_registry():register(self) +end +function sim_squad_scripted:on_unregister() + --' Отрегистрация в таскменеджере + unregister_story_object_by_id(self.id) + --' Удалить отряд + self.board.squads[self.id] = nil + self.board:assign_squad_to_smart(self, nil) + cse_alife_online_offline_group.on_unregister( self ) + simulation_objects.get_sim_obj_registry():unregister(self) + if self.respawn_point_id ~= nil then + local smart = alife():object(self.respawn_point_id) + -- затычка для дестроя левела(смарты дестроятся раньше сквадов) + if smart == nil then + return + end + smart.already_spawned[self.respawn_point_prop_section].num = smart.already_spawned[self.respawn_point_prop_section].num - 1 + end +end +function sim_squad_scripted:can_switch_offline() + return cse_alife_online_offline_group.can_switch_offline(self) +end +function sim_squad_scripted:can_switch_online() + return cse_alife_online_offline_group.can_switch_online(self) +end + +--*********************************************************************************************** +--* MAP LOCATION * +--*********************************************************************************************** + +--[[ +monster_predatory_day +monster_predatory_night +monster_vegetarian +monster_zombied_day +monster_zombied_night +monster_special +]]-- + +is_squad_monster = +{ + ["monster_predatory_day"] = true, + ["monster_predatory_night"] = true, + ["monster_vegetarian"] = true, + ["monster_zombied_day"] = true, + ["monster_zombied_night"] = true, + ["monster_special"] = true, + ["monster"] = true +} + +function sim_squad_scripted:refresh() + if(self:commander_id()==nil) then + self:hide() + return + end + self:show() +end + + +function sim_squad_scripted:hide() + if(self.current_spot_id==nil) or (self.spot_section==nil) then + return + end + level.map_remove_object_spot(self.current_spot_id, self.spot_section) + self.current_spot_id = nil + self.spot_section = nil +end + +--' Показать отряд на карте +function sim_squad_scripted:show() + if self.show_disabled then + self:hide() + return + end + + if(level.map_has_object_spot(self:commander_id(), "ui_pda2_trader_location")~=0) or + (level.map_has_object_spot(self:commander_id(), "ui_pda2_mechanic_location")~=0) or + (level.map_has_object_spot(self:commander_id(), "ui_pda2_scout_location")~=0) or + (level.map_has_object_spot(self:commander_id(), "ui_pda2_quest_npc_location")~=0) or + (level.map_has_object_spot(self:commander_id(), "ui_pda2_medic_location")~=0) then + self.show_disabled = true + return + end + + if self.current_spot_id ~= self:commander_id() then + self:hide() + self.current_spot_id = self:commander_id() + self:show() + return + end + local spot = "" + if dev_debug then -- IX-Ray: Fixed PDA squad rendering in Lua devmode + if not(is_squad_monster[self.player_id]) then + local relation = game_relations.get_squad_goodwill_to_actor_by_id(self.id) + if(relation=="friends") then + spot = "alife_presentation_squad_friend_debug" + elseif(relation=="neutral") then + spot = "alife_presentation_squad_neutral_debug" + else + spot = "alife_presentation_squad_enemy_debug" + end + else + spot = "alife_presentation_squad_monster_debug" + end + else + if not(is_squad_monster[self.player_id]) then + local relation = game_relations.get_squad_relation_to_actor_by_id(self.id) + if(relation=="friends") then + spot = "alife_presentation_squad_friend" + elseif(relation=="neutral") then + spot = "alife_presentation_squad_neutral" + end + end + end + if(spot~="") then + if spot == self.spot_section then + level.map_change_spot_hint(self.current_spot_id, self.spot_section, self:get_squad_props()) + return + end + if self.spot_section == nil then + level.map_add_object_spot(self.current_spot_id, spot, self:get_squad_props()) + else + level.map_remove_object_spot(self.current_spot_id, self.spot_section) + level.map_add_object_spot(self.current_spot_id, spot, self:get_squad_props()) + end + self.spot_section = spot + elseif(self.spot_section~=nil) then + level.map_remove_object_spot(self.current_spot_id, self.spot_section) + self.spot_section = nil + end +end + +function sim_squad_scripted:get_squad_props() + if dev_debug then + local t = "["..tostring(self:name()).."]\\n".. + "current_target = ["..tostring(self.current_target_id and alife():object(self.current_target_id) and alife():object(self.current_target_id):name()).."]\\n".. + "assigned_target = ["..tostring(self.assigned_target_id and alife():object(self.assigned_target_id) and alife():object(self.assigned_target_id):name()).."]\\n" + if self.current_action and self.current_action.name == "stay_point" then + t = t.."stay_on_point = ["..tostring(self.current_action.idle_time - game.get_game_time():diffSec(self.current_action.start_time)).."]" + end + return t + else + return "" + end +end + + + + +--*********************************************************************************************** +--* SIMULATION_TARGET_SQUAD * +--*********************************************************************************************** +-- Получить позицию, левел вертекс, гейм вертекс обьекта. +function sim_squad_scripted:get_location() + return self.position, self.m_level_vertex_id, self.m_game_vertex_id +end + +function sim_squad_scripted:get_current_task() + if self.assigned_target_id ~= nil and alife():object(self.assigned_target_id) ~= nil then + local smart_terrain = alife():object(self.assigned_target_id) + if smart_terrain.arriving_npc ~= nil and smart_terrain.arriving_npc[self:commander_id()] == nil + and smart_terrain.npc_info and smart_terrain.npc_info[self:commander_id()] + and smart_terrain.npc_info[self:commander_id()].job_id and smart_terrain.job_data[smart_terrain.npc_info[self:commander_id()].job_id] then + return smart_terrain.job_data[smart_terrain.npc_info[self:commander_id()].job_id].alife_task + end + return alife():object(self.assigned_target_id):get_alife_task() + end + return self:get_alife_task() +end +-- Достигнут ли я отрядом выбравшим меня как цель. +function sim_squad_scripted:am_i_reached(squad) + return self:npc_count() == 0 +end +-- Вызывается 1 раз после достижения меня отрядом выбравшим меня как цель. +function sim_squad_scripted:on_after_reach(squad) + +end +-- Вызывается 1 раз в момент выбора меня как цели. +function sim_squad_scripted:on_reach_target(squad) + squad:set_location_types() + for k in squad:squad_members() do + if db.offline_objects[k.id] ~= nil then + db.offline_objects[k.id] = {} + end + end + self.board:assign_squad_to_smart(squad, nil) +end +-- Возвращает CALifeSmartTerrainTask на меня, вызывается из smart_terrain:task() +function sim_squad_scripted:get_alife_task() + --printf("Returning alife task for object [%s] game_vertex [%s] level_vertex [%s] position %s", self.id, self.m_game_vertex_id, self.m_level_vertex_id, vec_to_str(self.position)) + return CALifeSmartTerrainTask(self.m_game_vertex_id, self.m_level_vertex_id) +end + +local smarts_by_no_assault_zones = { + ["zat_a2_sr_no_assault"] = "zat_stalker_base_smart", + ["jup_a6_sr_no_assault"] = "jup_a6", + ["jup_b41_sr_no_assault"] = "jup_b41" +} + +function sim_squad_scripted:sim_available() + for k,v in pairs (smarts_by_no_assault_zones) do + local zone = db.zone_by_name[k] + if zone and zone:inside(self.position) then + local smart = sim_board.get_sim_board():get_smart_by_name(v) + if smart and smart.base_on_actor_control ~= nil and smart.base_on_actor_control.status ~= smart_terrain_control.ALARM then + return false + end + end + end + + if self.smart_id == nil then + return true + end + -- Удалять из регистра сим обьектов если мы идем на базу. + local props_base = alife():object(self.smart_id).props and alife():object(self.smart_id).props["base"] + if props_base and tonumber(props_base) > 0 then + return false + end + + + local smart = alife():object(self.smart_id) + if smart.base_on_actor_control ~= nil and smart.base_on_actor_control.status ~= smart_terrain_control.NORMAL then + if db.zone_by_name[smart.base_on_actor_control.noweap_zone] == nil or not db.zone_by_name[smart.base_on_actor_control.noweap_zone]:inside(self.position) then + return false + end + end + return true +end + +-- Мой прекондишн. +function sim_squad_scripted:target_precondition(squad) + local squad_params = sim_board.simulation_activities[squad.player_id] + if squad_params == nil or squad_params.squad == nil then + return false + end + + local self_params = squad_params.squad[self.player_id] + if self_params == nil or self_params.prec(squad, self) == false then + return false + end + return true + +--[[ + if squad.player_id == "dolg" and + (is_squad_monster[self.player_id] or self.player_id == "freedom") and + in_time_interval(8,22) then + return true + end + + + if squad.player_id == "bandit" and self.player_id == "stalker" then + return true + end + if squad.player_id == "freedom" and self.player_id == "dolg" and in_time_interval(8,22) then + return true + end + + -- Травоядные днем атакуют проходящих мимо сталкеров.(плоть, кабан) + if squad.player_id == "monster_vegetarian" and in_time_interval(8,22) and not is_squad_monster[self.player_id] then + return true + end + + -- Хищники днем атакуют сталкеров и травоядных(собаки, псевдособаки, пси собаки) + if squad.player_id == "monster_predatory_day" and + in_time_interval(8,22) and + (self.player_id == "monster_vegetarian" or not is_squad_monster[self.player_id]) then + return true + end + -- Хищники ночью атакуют сталкеров и травоядных(тушканы,кровосос, химера) + if squad.player_id == "monster_predatory_night" and + in_time_interval( 22 , 8) and + (self.player_id == "monster_vegetarian" or not is_squad_monster[self.player_id]) then + return true + end + -- Зомбиобразные днем атакуют проходящих мимо сталкеров. + if squad.player_id == "monster_zombied_day" and + in_time_interval(8,22) and + (not is_squad_monster[self.player_id]) then + return true + end + -- Зомбиобразные днем атакуют проходящих мимо сталкеров. + if squad.player_id == "monster_zombied_night" and + in_time_interval(22,8) and + (not is_squad_monster[self.player_id]) then + return true + end + -- Особенные днем атакуют проходящих мимо сталкеров. + if squad.player_id == "monster_special" and + in_time_interval(8,22) and + (not is_squad_monster[self.player_id]) then + return true + end + + return false + ]] +end + +-- Посчитать мой приоритет для отряда. +function sim_squad_scripted:evaluate_prior(squad) + return simulation_objects.evaluate_prior(self, squad) +end diff --git a/gamedata/scripts/smart_terrain.script b/gamedata/scripts/smart_terrain.script new file mode 100644 index 0000000..9cde4b6 --- /dev/null +++ b/gamedata/scripts/smart_terrain.script @@ -0,0 +1,1427 @@ +local DEATH_IDLE_TIME = 10*60 -- секунд +SMART_TERRAIN_SECT = "smart_terrain" +smart_terrains_by_name = {} +local locations_ini = ini_file("misc\\smart_terrain_masks.ltx") + +nearest_to_actor_smart = {id = nil , dist = math.huge} + +local path_fields = { "path_walk", "path_main", "path_home", "center_point" } + +local valid_territory = { + default = true, + base = true, + resource = true, + territory = true +} + +--' Проверка, что нпс подходит работе +local function job_avail_to_npc(npc_info, job_info, smart) + --printf("job_avail_to_npc %s job %s smart %s", npc_info.se_obj:name(), tostring(job_info.job_id), smart:name()) + local job = smart.job_data[job_info.job_id] + if job ~= nil then + job = job.section + end + + if smart.dead_time[job_info.job_id] ~= nil then + return false + end + + -- Проверка условия "монстровости" + if job_info._precondition_is_monster ~= nil and job_info._precondition_is_monster ~= npc_info.is_monster then + return false + end + + --' Проверяем подходит ли нпс по предикату + if job_info._precondition_function ~= nil then + if not job_info._precondition_function(npc_info.se_obj, smart, job_info._precondition_params, npc_info) then + return false + end + end + return true +end + + +-- Итерируемся по НПС, начинаем со свободных нпс, потом НПС на низкоприоритетных работах, потом на высокоприоритетных. +-- Для каждого конкретного НПС ищем работу. +-- Отсеиваем в поиске работы, приоритет которых ниже, чем у текущей. +local function job_iterator(jobs, npc_data, selected_job_prior, smart) + --printf(" iterate") + -- итерируемся по работам + local current_job_prior = selected_job_prior + local selected_job_id = nil + local selected_job_link = nil + for k,v in pairs(jobs) do + -- Если приоритет у проверяемой работы ниже, чем приоритет текущей выбранной работы НПС - завершаем выполнение + if current_job_prior > v._prior then + return selected_job_id, current_job_prior, selected_job_link + end + -- Проверяем, может ли НПС занять данную работу + if job_avail_to_npc(npc_data, v, smart) then + -- Это работа-кластер или работа-описание. + if v.job_id == nil then + -- Вызываем рекурсивно себя для списка работ кластера + selected_job_id, current_job_prior, selected_job_link = job_iterator(v.jobs, npc_data, selected_job_prior, smart) + else + -- Если работа пустая или ее занимаем мы сами - выбираем ее. + if v.npc_id == nil then + return v.job_id, v._prior, v + elseif v.job_id == npc_data.job_id then + return v.job_id, v._prior, v + end + end + end + end + return selected_job_id, current_job_prior, selected_job_link +end + +-- Расстояние до работы +local function arrived_to_smart(obj, smart) + local obj_gv, obj_pos + + local storage = db.storage[obj.id] + + if storage == nil then + obj_gv, obj_pos = game_graph():vertex(obj.m_game_vertex_id), obj.position + else + local obj = db.storage[obj.id].object + obj_gv, obj_pos = game_graph():vertex(obj:game_vertex_id()), obj:position() + end + + local smart_gv = game_graph():vertex(smart.m_game_vertex_id) + + if obj.group_id then + local squad = smart.board.squads[obj.group_id] + if squad ~= nil and squad.current_action then + if squad.current_action.name == "reach_target" then + local squad_target = simulation_objects.get_sim_obj_registry().objects[squad.assigned_target_id] + if squad_target ~= nil then + return squad_target:am_i_reached(squad) + else + return alife():object(squad.assigned_target_id):am_i_reached(squad) + end + elseif squad.current_action.name == "stay_point" then + return true + end + end + end + + if obj_gv:level_id() == smart_gv:level_id() then + return obj_pos:distance_to_sqr(smart.position) <= 10000 --Ближе 100 метров + else + return false + end +end + +---------------------------------------------------------------------------------------------------------------------- +-- Класс "se_smart_terrain". Обеспечивает поддержку smart terrain в ОФЛАЙНЕ. +---------------------------------------------------------------------------------------------------------------------- +class "se_smart_terrain" (cse_alife_smart_zone) +function se_smart_terrain:__init(section) super(section) + self.initialized = false + self.b_registred = false + self.population = 0 + + self.npc_to_register = {} + self.npc_by_job_section = {} + self.dead_time = {} + + -- Таблица для хранения зарегистренных НПС + self.npc_info = {} -- Те, кто уже пришел и стал на работу + self.arriving_npc = {} -- Только идущие на работу. + + self.respawn_radius = 150 + self.respawn_time = 1000 +end +function se_smart_terrain:on_before_register() + cse_alife_smart_zone.on_before_register(self) + self.board = sim_board.get_sim_board() + self.board:register_smart(self) + self.smart_level = alife():level_name(game_graph():vertex(self.m_game_vertex_id):level_id()) + --printf("SMARTLEVEL %s level %s", self:name(), tostring(self.smart_level)) +end + +function se_smart_terrain:on_register() + cse_alife_smart_zone.on_register(self) + -- Проверяем кастомдату обьекта на наличие стори айди. + story_objects.check_spawn_ini_for_story_id(self) + simulation_objects.get_sim_obj_registry():register(self) + + printf("register smart %s", self:name()) + + if dev_dedug then + self:refresh() + end + + printf("Returning alife task for object [%s] game_vertex [%s] level_vertex [%s] position %s", self.id, self.m_game_vertex_id, self.m_level_vertex_id, vec_to_str(self.position)) + self.smart_alife_task = CALifeSmartTerrainTask(self.m_game_vertex_id, self.m_level_vertex_id) + + smart_terrains_by_name[self:name()] = self + self.b_registred = true + + self:load_jobs() + + self.board:init_smart(self) + + if self.need_init_npc == true then + self.need_init_npc = false + self:init_npc_after_load() + end + + -- Регистрим персонажей, которые добавили до регистрации смарта. (отложенный список) + self:register_delayed_npc() + + self.check_time = time_global() +end +-- анрегистрация объекта в симуляторе. +-- вызывается симулятором. +function se_smart_terrain:on_unregister() + cse_alife_smart_zone.on_unregister(self) + self.board:unregister_smart(self) + smart_terrains_by_name[self:name()] = nil + unregister_story_object_by_id(self.id) + simulation_objects.get_sim_obj_registry():unregister(self) +end +-- чтение custom data. +function se_smart_terrain:read_params() + self.ini = self:spawn_ini() + + if not self.ini:section_exist( SMART_TERRAIN_SECT ) then + abort( "[smart_terrain %s] no configuration!", self:name() ) + self.disabled = true + return + end + local filename = utils.cfg_get_string(self.ini, SMART_TERRAIN_SECT, "cfg", self, false, "") + local fs = getFS() + if filename and filename~="" then + if fs:exist("$game_config$",filename) then + self.ini = ini_file(filename) + else + abort("There is no configuration file [%s] in smart_terrain [%s]", filename, self:name()) + end + end + local ini = self.ini + self.sim_type = utils.cfg_get_string(ini, SMART_TERRAIN_SECT, "sim_type", self, false, "", "default") + + --' Вычитка симуляционных свойств + if valid_territory[self.sim_type] == nil then + abort("Wrong sim_type value [%s] in smart [%s]", self.sim_type, self:name()) + end + + self.squad_id = utils.cfg_get_number(ini, SMART_TERRAIN_SECT, "squad_id", self, false, 0) + self.respawn_sector = utils.cfg_get_string(ini, SMART_TERRAIN_SECT, "respawn_sector", self, false, "") + self.respawn_radius = utils.cfg_get_number(ini, SMART_TERRAIN_SECT, "respawn_radius", self, false, 150) -- радиус респауна (если актер ближе, то не спаунить) + self.respawn_time = utils.cfg_get_number(ini, SMART_TERRAIN_SECT, "respawn_time", self, false, 1000) -- в секундах игрового времени + if self.respawn_sector ~= nil then + if self.respawn_sector == "default" then + self.respawn_sector = "all" + end + self.respawn_sector = xr_logic.parse_condlist(nil, SMART_TERRAIN_SECT, "respawn_sector", self.respawn_sector) + end + + self.mutant_lair = utils.cfg_get_bool(ini, SMART_TERRAIN_SECT, "mutant_lair", self, false) + self.no_mutant = utils.cfg_get_bool(ini, SMART_TERRAIN_SECT, "no_mutant", self, false) + if self.no_mutant == true then + printf("Found no mutant point %s", self:name()) + end + self.forbidden_point = utils.cfg_get_string(ini, SMART_TERRAIN_SECT, "forbidden_point", self, false, "") + + --' Рестрикторы для симуляции + self.def_restr = utils.cfg_get_string(ini, SMART_TERRAIN_SECT, "def_restr", self, false, "", nil) + self.att_restr = utils.cfg_get_string(ini, SMART_TERRAIN_SECT, "att_restr", self, false, "", nil) + self.safe_restr = utils.cfg_get_string(ini, SMART_TERRAIN_SECT, "safe_restr", self, false, "", nil) + + self.spawn_point = utils.cfg_get_string(ini, SMART_TERRAIN_SECT, "spawn_point", self, false, "") + + self.arrive_dist = utils.cfg_get_number(ini, SMART_TERRAIN_SECT, "arrive_dist", self, false, 30) + +-- self.max_population = utils.cfg_get_number(ini, SMART_TERRAIN_SECT, "max_population", self, false, 0) + local max_population = utils.cfg_get_string(ini, SMART_TERRAIN_SECT, "max_population", self, false, "", 0) + local parsed_condlist = xr_logic.parse_condlist(nil, SMART_TERRAIN_SECT, "max_population", max_population) + self.max_population = tonumber(xr_logic.pick_section_from_condlist(get_story_object("actor"), nil, parsed_condlist)) + +-- self.sim_avail = utils.cfg_get_string(ini, SMART_TERRAIN_SECT, "sim_avail", self, false, "") +-- if self.sim_avail ~= nil then +-- self.sim_avail = xr_logic.parse_condlist(nil, SMART_TERRAIN_SECT, "sim_avail", self.sim_avail) +-- end + + local respawn_params = utils.cfg_get_string(ini, SMART_TERRAIN_SECT, "respawn_params", self, false, "", nil) + self.respawn_only_smart = utils.cfg_get_bool(ini, SMART_TERRAIN_SECT, "respawn_only_smart", self, false, false) + + local smart_control_section = utils.cfg_get_string(ini, SMART_TERRAIN_SECT, "smart_control", self, false, "", nil) + + if smart_control_section ~= nil then + self.base_on_actor_control = smart_terrain_control.CBaseOnActorControl(self, ini, smart_control_section) + end + self.respawn_point = false + if respawn_params ~= nil then + self:check_respawn_params(respawn_params) + end + + + if level.patrol_path_exists(self:name() .. "_traveller_actor") then + printf("Smart_terrain [%s] has no traveller_actor path!!!!!", self:name()) + self.traveler_actor_path = self:name() .. "_traveller_actor" + end + + if level.patrol_path_exists(self:name() .. "_traveller_squad") then + printf("Smart_terrain [%s] has no traveller_squad path!!!!!", self:name()) + self.traveler_squad_path = self:name() .. "_traveller_squad" + end + + if not locations_ini:section_exist(self:name()) then + printf("! SMART_TERRAIN [%s] has no terrain_mask section in smart_terrain_masks.ltx!!!",self:name()) + end +end + +--******************************************************* +-- МЕТОДЫ ДЛЯ РАБОТЫ С НПС +--******************************************************* +-- заполнить информацию о персонаже +-- у монстров нету метода profile_name() +function se_smart_terrain:fill_npc_info(obj) + local npc_info = {} + printf("filling npc_info for obj [%s]", tostring(obj:name())) + + local is_stalker = IsStalker(obj) + npc_info.se_obj = obj + npc_info.is_monster = not is_stalker + npc_info.need_job = "nil" -- Специально для смены гвардов. Указывает на какую работу хочет данный чувак. + npc_info.job_prior = -1 + npc_info.job_id = -1 + npc_info.begin_job = false + + if is_stalker then + npc_info.stype = modules.stype_stalker + else + npc_info.stype = modules.stype_mobile + end + + return npc_info +end + +function se_smart_terrain:refresh_script_logic(obj_id) + local object = alife():object(obj_id) + local stype = modules.stype_mobile + if IsStalker(object) then + stype = modules.stype_stalker + end + xr_logic.initialize_obj(db.storage[object.id].object, db.storage[object.id], false, db.actor, stype) +end + +-- добавить npc в smart terrain. +function se_smart_terrain:register_npc(obj) + printf("[smart_terrain %s] register called obj=%s", self:name(), obj:name()) + self.population = self.population + 1 + + if self.b_registred == false then + table.insert(self.npc_to_register, obj) + return + end + + -- Только для монстров, чтобы ходили по смартам. + if not IsStalker(obj) then + obj:smart_terrain_task_activate() + end + + obj.m_smart_terrain_id = self.id + if arrived_to_smart(obj, self) then + self.npc_info[obj.id] = self:fill_npc_info(obj) + + -- Затычка на случай если мы регистримся в смарт, из которого только что сами вынесли всех врагов. + self.dead_time = {} + + -- тут надо найти чуваку работу + self:select_npc_job(self.npc_info[obj.id]) + else + self.arriving_npc[obj.id] = obj + end +end +-- Регистрация НПС в список отложенных. Осуществляется на загрузке или на регистрации НПС, пока не зарегистрен смарт +function se_smart_terrain:register_delayed_npc() + for k,v in pairs(self.npc_to_register) do + self:register_npc(v) + end + self.npc_to_register = {} +end +-- отпустить npc +function se_smart_terrain:unregister_npc(obj) + --callstack() + printf("smart [%s] unregister npc [%s]", self:name(), obj:name()) + + self.population = self.population - 1 + + if self.npc_info[obj.id] ~= nil then + -- TODO: Тут надо выгнать чувака с занимаемой им работы + if self.npc_info[obj.id].job_link == nil then + return + end + self.npc_info[obj.id].job_link.npc_id = nil + self.npc_info[obj.id] = nil + obj:clear_smart_terrain() + + if db.storage[obj.id] ~= nil then + local object = db.storage[obj.id].object + local stype = modules.stype_mobile + if IsStalker(obj) then + stype = modules.stype_stalker + end + xr_logic.initialize_obj(object, db.storage[obj.id], false, db.actor, stype) + end + return + end + if self.arriving_npc[obj.id] ~= nil then + self.arriving_npc[obj.id] = nil + obj:clear_smart_terrain() + return + end + + abort("self.npc_info[obj.id] = nil !!! obj.id=%d", obj.id) +end +-- Убрать убитого +function se_smart_terrain:clear_dead(obj) + if self.npc_info[obj.id] ~= nil then + -- Устанавливаем таймер смерти на работе + self.dead_time[self.npc_info[obj.id].job_id] = game.get_game_time() + + if self.npc_info[obj.id].job_link == nil then + return + end + + self.npc_info[obj.id].job_link.npc_id = nil + self.npc_info[obj.id] = nil + obj:clear_smart_terrain() + return + end + if self.arriving_npc[obj.id] ~= nil then + self.arriving_npc[obj.id] = nil + obj:clear_smart_terrain() + return + end + + abort("self.npc_info[obj.id] = nil !!! obj.id=%d", obj.id) +end +-- выдать объекту задание. +function se_smart_terrain:task(obj) + if self.arriving_npc[obj.id] ~= nil then + return self.smart_alife_task + end + return self.job_data[self.npc_info[obj.id].job_id].alife_task +end + + +--******************************************************* +-- Функции для работы с работами +--******************************************************* +-- Загрузка работ (из gulag_general) +function se_smart_terrain:load_jobs() + --printf("LOAD JOBS %s", self:name()) + -- Загружаем иерархию работ + self.jobs = gulag_general.load_job(self) + + -- Загружаем ltx работ. + self.ltx, self.ltx_name = xr_gulag.loadLtx(self:name()) + -- Сортируем всю иерархию по уменьшению приоритета + -- Рекурсивная функция сортировки + local function sort_jobs(jobs) + for k,v in pairs(jobs) do + if v.jobs ~= nil then + sort_jobs(v.jobs) + end + end + table.sort(jobs, function(a,b) return a._prior > b._prior end ) + end + +-- if self:name() == "jup_a10_smart_terrain" then +-- printf("before sort") +-- store_table(self.jobs) +-- end + + sort_jobs(self.jobs) + + --if self:name() == "jup_a10_smart_terrain" then + -- printf("after sort") + -- store_table(self.jobs) + --end + + + -- Надо сделать постобработку работ. Проинитить все неиниченные поля + -- Для более быстрого доступа нужно вычленить параметры работ в отдельную таблицу вида: + --self.job_data[job_id] = {} + local id = 0 + self.job_data = {} + local function get_jobs_data(jobs) + for k,v in pairs(jobs) do + if v.jobs ~= nil then + get_jobs_data(v.jobs) + else + if v.job_id == nil then + print_table(self.jobs) + abort("Incorrect job table") + end + self.job_data[id] = v.job_id + + self.job_data[id]._prior = v._prior -- Кешируем для проверки + v.job_id = id + id = id + 1 + end + end + end + + get_jobs_data(self.jobs) + -- Пробегаемся по работам и высчитываем для каждой работы alife_task + for k,v in pairs(self.job_data) do + local section = v.section + local ltx = v.ini_file or self.ltx + if not ltx:line_exist(section, "active") then + abort("gulag: ltx=%s no 'active' in section %s", self.ltx_name, section) + end + local active_section = ltx:r_string(section, "active") + + +-- printf("job_type %s job_section %s", tostring(v.job_type), tostring(section)) + -- В зависимости от типа работы по разному считаем alife_path + if v.job_type == "path_job" then -- работа задается патрульным путем + local path_field + for i,vv in pairs(path_fields) do + if ltx:line_exist(active_section, vv) then + path_field = vv + break + end + end + + --printf("path_field %s prefix_name %s active_section %s", tostring(path_field), tostring(v.prefix_name), tostring(active_section)) + local path_name = ltx:r_string(active_section, path_field) + if v.prefix_name ~= nil then + path_name = v.prefix_name .. "_" .. path_name + else + path_name = self:name() .. "_" .. path_name + end + + if path_field == "center_point" then --' TODO убрать затык когда переделаем кемпы на смарткаверы + if level.patrol_path_exists(path_name .. "_task") then + path_name = path_name .. "_task" + end + end + + v.alife_task = CALifeSmartTerrainTask(path_name) + + elseif v.job_type == "smartcover_job" then -- работа задается смарткавером + local smartcover_name = ltx:r_string(active_section, "cover_name") + local smartcover = se_smart_cover.registered_smartcovers[smartcover_name] + if smartcover == nil then + abort("There is an exclusive job with wrong smatrcover name [%s] smartterrain [%s]", tostring(smartcover_name), self:name()) + end + printf("Returning alife task for object [%s] game_vertex [%s] level_vertex [%s] position %s", smartcover.id, smartcover.m_game_vertex_id, smartcover.m_level_vertex_id, vec_to_str(smartcover.position)) + v.alife_task = CALifeSmartTerrainTask(smartcover.m_game_vertex_id, smartcover.m_level_vertex_id) + + elseif v.job_type == "point_job" then -- работа задается позицией + v.alife_task = self.smart_alife_task + end + + v.game_vertex_id = v.alife_task:game_vertex_id() + v.level_id = game_graph():vertex(v.game_vertex_id):level_id() + v.position = v.alife_task:position() + end +end + +-- Апдейт работ смарттеррейна. +-- Если передается object, то значит нужно найти только для него +function se_smart_terrain:update_jobs() + self:check_alarm() + --printf("UPDATE JOBS %s", self:name()) + + -- Проверяем, дошел ли кто-то до смарта + for k,v in pairs(self.arriving_npc) do + if arrived_to_smart(v, self) then + self.npc_info[v.id] = self:fill_npc_info(v) + + -- Затычка на случай если мы регистримся в смарт, из которого только что сами вынесли всех врагов. + self.dead_time = {} + + -- тут надо найти чуваку работу + self:select_npc_job(self.npc_info[v.id]) + + self.arriving_npc[k] = nil + end + end + + -- Сортируем НПС по увеличению приоритета занимаемой работы + table.sort(self.npc_info, function(a,b) return a.job_prior < b.job_prior end ) + for k,v in pairs(self.npc_info) do + self:select_npc_job(v) + end +end +-- Выбор работы для персонажа +function se_smart_terrain:select_npc_job(npc_info) + -- Выбираем работу + local selected_job_id, selected_job_prior, selected_job_link = job_iterator(self.jobs, npc_info, 0, self) + if selected_job_id == nil then + print_table(self.jobs) + abort("Insufficient smart_terrain jobs %s", self:name()) + end + + -- Назначаем работу + if selected_job_id ~= npc_info.job_id and selected_job_link ~= nil then + -- Установить себе выбранную работу + --printf("NPC %s FOUND JOB %s SECTION %s", npc_info.se_obj:name(), selected_job_id, self.job_data[selected_job_link.job_id].section) + -- Если НПС был на работе - выгоняем его с нее. + if npc_info.job_link ~= nil then + self.npc_by_job_section[self.job_data[npc_info.job_link.job_id].section] = nil + npc_info.job_link.npc_id = nil + end + + selected_job_link.npc_id = npc_info.se_obj.id + self.npc_by_job_section[self.job_data[selected_job_link.job_id].section] = selected_job_link.npc_id + + npc_info.job_id = selected_job_link.job_id + npc_info.job_prior = selected_job_link._prior + npc_info.begin_job = false + -- сохраняем ссылку на работу, для облегчения удаления + npc_info.job_link = selected_job_link + + -- завершаем текущую работу + local obj_storage = db.storage[npc_info.se_obj.id] + if obj_storage ~= nil then + xr_logic.switch_to_section(obj_storage.object, self.ltx, "nil") + end + end + + if npc_info.begin_job ~= true then + -- Проверяем, дошел ли персонаж до работы (то есть может ли он начать ее выполнение) + local job_data = self.job_data[npc_info.job_id] + if job_data == nil then + return + end + -- Начинаем выполнять работу + printf("[smart_terrain %s] gulag: beginJob: obj=%s job= %s", self:name(), npc_info.se_obj:name(), job_data.section) + -- Смена работы, очищаем память для оффлайнового обьекта. + db.offline_objects[npc_info.se_obj.id] = {} + npc_info.begin_job = true + + local obj_storage = db.storage[npc_info.se_obj.id] + if obj_storage ~= nil then + self:setup_logic(obj_storage.object) + end + end +end +-- настроить логику для объекта, который в онлайне. +function se_smart_terrain:setup_logic(obj) + --printf("setup npc logic %s", obj:name()) +-- callstack() + local npc_data = self.npc_info[obj:id()] + + if npc_data == nil then + return + end + + local job = self.job_data[npc_data.job_id] + local ltx = job.ini_file or self.ltx + local ltx_name = job.ini_path or self.ltx_name + + xr_logic.configure_schemes(obj, ltx, ltx_name, npc_data.stype, job.section, job.prefix_name or self:name()) + + local sect = xr_logic.determine_section_to_activate(obj, ltx, job.section, db.actor) + if utils.get_scheme_by_section(job.section) == "nil" then + abort("[smart_terrain %s] section=%s, don't use section 'nil'!", self:name(), sect) + end + + xr_logic.activate_by_section(obj, ltx, sect, job.prefix_name or self:name(), false) +end +-- получить работу, которую занимает объект +function se_smart_terrain:getJob(obj_id) + return self.npc_info[obj_id] and self.job_data[self.npc_info[obj_id].job_id] +end +-- Получение персонажа, который занимает указанную работу. +function se_smart_terrain:idNPCOnJob(job_name) + return self.npc_by_job_section[job_name] +end +function se_smart_terrain:switch_to_desired_job(npc) + -- Берем текущую работу НПС + local npc_id = npc:id() + local npc_info = self.npc_info[npc_id] + + --printf("***** %s -> %s", npc:name(), tostring(npc_info.need_job)) + local changing_npc_id = self.npc_by_job_section[npc_info.need_job] + --printf("changing_npc_id %s", tostring(changing_npc_id)) + + if changing_npc_id == nil then + -- Мы не нашли с кем меняться, просто ресетим себя + self.npc_info[npc_id].job_link = nil + self.npc_info[npc_id].job_id = -1 + self.npc_info[npc_id].job_prior = -1 + self:select_npc_job(self.npc_info[npc_id]) + + --print_table(self.npc_by_job_section) + --abort("ERROR during channging NPC") + return + end + + if self.npc_info[changing_npc_id] == nil then + -- Мы не нашли с кем меняться, просто ресетим себя + self.npc_info[npc_id].job_link = nil + self.npc_info[npc_id].job_id = -1 + self.npc_info[npc_id].job_prior = -1 + self:select_npc_job(self.npc_info[npc_id]) + + --print_table(self.npc_by_job_section) + --abort("ERROR during channging NPC") + return + end + + local desired_job = self.npc_info[changing_npc_id].job_id + + -- Переключаем НПС на желаемую работу + if npc_info.job_link ~= nil then + self.npc_by_job_section[self.job_data[npc_info.job_link.job_id].section] = nil + npc_info.job_link.npc_id = nil + end + + local selected_job_link = self.npc_info[changing_npc_id].job_link + + selected_job_link.npc_id = npc_info.se_obj.id + + self.npc_by_job_section[self.job_data[selected_job_link.job_id].section] = selected_job_link.npc_id + + npc_info.job_id = selected_job_link.job_id + npc_info.job_prior = selected_job_link._prior + npc_info.begin_job = true + + -- сохраняем ссылку на работу, для облегчения удаления + npc_info.job_link = selected_job_link + npc_info.need_job = "nil" + + local obj_storage = db.storage[npc_id] + if obj_storage ~= nil then + self:setup_logic(obj_storage.object) + end + + -- Освобождаем НПС, который занимает желаемую работу и говорим ему перевыбрать работу + self.npc_info[changing_npc_id].job_link = nil + self.npc_info[changing_npc_id].job_id = -1 + self.npc_info[changing_npc_id].job_prior = -1 + self:select_npc_job(self.npc_info[changing_npc_id]) +end + + +--******************************************************* +-- СЕЙВ/ЛОАД +--******************************************************* +-- сохранение +function se_smart_terrain:STATE_Write(packet) + cse_alife_smart_zone.STATE_Write(self, packet) + + set_save_marker(packet, "save", false, "se_smart_terrain") + + -- Информацию о НПС, идущих в смарт + local n = 0 + for k,v in pairs(self.arriving_npc) do + n = n + 1 + end + packet:w_u8(n) + for k,v in pairs(self.arriving_npc) do + packet:w_u16(k) + end + + + -- Информацию о НПС в смарте + n = 0 + for k,v in pairs(self.npc_info) do + n = n + 1 + end + + packet:w_u8(n) + for k,v in pairs(self.npc_info) do + packet:w_u16(k) + packet:w_u8(v.job_prior) + packet:w_u8(v.job_id) + packet:w_bool(v.begin_job) + packet:w_stringZ(v.need_job) + end + + n = 0 + for k,v in pairs(self.dead_time) do + n = n + 1 + end + packet:w_u8(n) + for k,v in pairs(self.dead_time) do + packet:w_u8(k) + utils.w_CTime(packet, v) + end + + if self.base_on_actor_control ~= nil then + packet:w_bool(true) + self.base_on_actor_control:save(packet) + else + packet:w_bool(false) + end + + if self.respawn_point then + packet:w_bool(true) + local n = 0 + for k,v in pairs(self.already_spawned) do + n = n + 1 + end + packet:w_u8(n) + for k,v in pairs(self.already_spawned) do + packet:w_stringZ(k) + packet:w_u8(v.num) + end + + if self.last_respawn_update ~= nil then + packet:w_bool(true) + utils.w_CTime(packet, self.last_respawn_update) + else + packet:w_bool(false) + end + else + packet:w_bool(false) + end + + if self.population < 0 then + abort("Smart_terrain [%s] population can't be less than zero!!!", self:name()) + end + packet:w_u8(self.population) + + set_save_marker(packet, "save", true, "se_smart_terrain") +end + +-- восстановление +function se_smart_terrain:STATE_Read(packet, size) + cse_alife_smart_zone.STATE_Read(self, packet, size) + + -- под LevelEditor не пытаться читать из пакета ничего + if editor() then + return + end + + set_save_marker(packet, "load", false, "se_smart_terrain") + self:read_params() + + -- Информацию о НПС, идущих в смарт + local n = packet:r_u8() + self.arriving_npc = {} + for i = 1,n do + local id = packet:r_u16() + self.arriving_npc[id] = false + end + + -- Информацию о НПС в смарте + n = packet:r_u8() + --printf("load %s npc", tostring(n)) + self.npc_info = {} + for i = 1,n do + local id = packet:r_u16() + --printf("__ id %s", tostring(id)) + self.npc_info[id] = {} + local npc_info = self.npc_info[id] + npc_info.job_prior = packet:r_u8() + --printf("__ job_prior %s", tostring(npc_info.job_prior)) + if npc_info.job_prior == 255 then + npc_info.job_prior = -1 + end + npc_info.job_id = packet:r_u8() + --printf("__ job_id %s", tostring(npc_info.job_id)) + if npc_info.job_id == 255 then + npc_info.job_id = -1 + end + npc_info.begin_job = packet:r_bool() + --printf("__ begin_job %s", tostring(npc_info.begin_job)) + npc_info.need_job = packet:r_stringZ() + end + + n = packet:r_u8() + self.dead_time = {} + --printf("load %s dead_time", tostring(n)) + for i =1,n do + local job_id = packet:r_u8() + --printf("__ job_id %s", tostring(job_id)) + local dead_time = utils.r_CTime(packet) + self.dead_time[job_id] = dead_time + end + + self.need_init_npc = true + + if self.script_version > 9 then + if packet:r_bool() == true then + --self.base_on_actor_control + self.base_on_actor_control:load(packet) + end + end + + local respawn_point = packet:r_bool() + --printf("LOAD RESPAWN %s", self:name()) + if respawn_point then + n = packet:r_u8() + for i = 1, n do + local id = packet:r_stringZ() + local num = packet:r_u8() + self.already_spawned[id].num = num + end + + if self.script_version > 11 then + local exist = packet:r_bool() + if exist then + self.last_respawn_update = utils.r_CTime(packet) + else + self.last_respawn_update = nil + end + end + end + + self.population = packet:r_u8() + + set_save_marker(packet, "load", true, "se_smart_terrain") +end +-- Инициализация НПС после загрузки. +function se_smart_terrain:init_npc_after_load() + local function find_job(jobs, npc_info) + for k,v in pairs(jobs) do + if v.jobs ~= nil then + find_job(v.jobs, npc_info) + else + if v.job_id == npc_info.job_id then + npc_info.job_link = v + v.npc_id = npc_info.se_obj.id + return + end + end + end + end + + + local sim = alife() + --printf("[%s] init_npc_after_load", self:name()) + for k,v in pairs(self.arriving_npc) do + local sobj = sim:object(k) + if sobj ~= nil then + self.arriving_npc[k] = sobj + else + self.arriving_npc[k] = nil + end + end + + for k,v in pairs(self.npc_info) do + local sobj = sim:object(k) + if sobj ~= nil then + local npc_info = self:fill_npc_info(sobj) + + npc_info.job_prior = v.job_prior + npc_info.job_id = v.job_id + npc_info.begin_job = v.begin_job + npc_info.need_job = v.need_job + + --Теперь надо найти данную работу и выставить ссылку на нее. + find_job(self.jobs, npc_info) + + self.npc_info[k] = npc_info + if npc_info.job_link ~= nil then + self.npc_by_job_section[self.job_data[npc_info.job_link.job_id].section] = k + end + else + self.npc_info[k] = nil + end + end +end + + +--' Возвращает отформатированную строку свойств смарта +function se_smart_terrain:get_smart_props() + local props = smart_names.get_smart_terrain_name(self) + if(props==nil) or (_G.dev_debug) then + props = self:name().." ["..self.id.."]\\n".. + self.sim_type.."\\n".. + "squad_id = "..tostring(self.id).."\\n".. + "capacity = "..tostring(self.max_population).." ("..sim_board.get_sim_board():get_smart_population(self)..")\\n" + + if self.respawn_point ~= nil and self.already_spawned ~= nil then + props = props.."\\nalready_spawned :\n" + for k,v in pairs(self.already_spawned) do + props = props.."["..k.."] = "..v.num.."("..xr_logic.pick_section_from_condlist(db.actor, nil,self.respawn_params[k].num)..")\\n" + end + if self.last_respawn_update then + props = props.."\\ntime_to_spawn:"..tostring(self.respawn_time - game.get_game_time():diffSec(self.last_respawn_update)).."\\n" + end + end + + --' Добавляем информацию о находящихся в смарте отрядах + for k,v in pairs(sim_board.get_sim_board().smarts[self.id].squads) do + props = props .. tostring(v.id) .. "\\n" + end + end + return props +end + + + +--' Отрисовка смарта на игровом поле +function se_smart_terrain:show() + local time = time_global() + if(self.showtime~=nil) and (self.showtime+200>=time) then + return + end + self.showtime = time + + local player = self.player_name + local spot = "neutral" + + if self.sim_avail == nil or xr_logic.pick_section_from_condlist(db.actor or alife():actor(), self, self.sim_avail) == "true" then + spot = "friend" + else + spot = "enemy" + end + + + if(self.smrt_showed_spot==spot) then + level.map_change_spot_hint(self.id, "alife_presentation_smart_"..self.sim_type.."_"..self.smrt_showed_spot, self:get_smart_props()) + return + end + + if(_G.dev_debug) then + if(self.smrt_showed_spot~=nil) then + level.map_remove_object_spot(self.id, "alife_presentation_smart_"..self.sim_type.."_"..self.smrt_showed_spot) + end + level.map_add_object_spot(self.id, "alife_presentation_smart_"..self.sim_type.."_"..spot, self:get_smart_props()) + self.smrt_showed_spot = spot + else + + if(self.smrt_showed_spot~=nil) and + (level.map_has_object_spot(self.id, "alife_presentation_smart_"..self.sim_type.."_"..self.smrt_showed_spot)~=0) + then + level.map_remove_object_spot(self.id, "alife_presentation_smart_base_"..self.smrt_showed_spot) + end + + end +end +--' Обновление информации о смарте на игровом поле +function se_smart_terrain:refresh() + self:show() +end +--' Убирание отрисовки смарта на игровом поле +function se_smart_terrain:hide() + if self.smrt_showed_spot == nil then + return + end + level.map_remove_object_spot(self.id, "alife_presentation_smart_"..self.sim_type.."_"..self.smrt_showed_spot) +end + + +local function is_only_monsters_on_jobs(npc_info) + for k,v in pairs (npc_info) do + if v.is_monster == false then + return false + end + end + return true +end + +-- Обновление. +-- В онлайне вызывается через binder. +-- Также может вызваться принудительно из xr_effects +function se_smart_terrain:update() + cse_alife_smart_zone.update( self ) + if dev_debug then + self:refresh() -- Не забыть потом заремить + end + + local current_time = time_global() + + if simulation_objects.is_on_the_same_level(self, alife():actor()) then + local dist_to_actor = self.position:distance_to(alife():actor().position) + local old_dist_to_actor = (nearest_to_actor_smart.id == nil and nearest_to_actor_smart.dist) or alife():object(nearest_to_actor_smart.id).position:distance_to(alife():actor().position) + if dist_to_actor < old_dist_to_actor then + nearest_to_actor_smart.id = self.id + nearest_to_actor_smart.dist = dist_to_actor + end + end + + -- Апдейт респауна отрядов симуляции. + if self.respawn_params ~= nil then + self:try_respawn() + end + + if self.check_time~=nil and current_time < self.check_time then + return + end + + --проверить есть ли кто-то в смарте, если есть и костры не включены то включить, + --еще проверить есть ли актер, чтоб была гарантия что костры проспонились... + if is_only_monsters_on_jobs(self.npc_info) and self.campfires_on then + bind_campfire.turn_off_campfires_by_smart_name(self:name()) + self.campfires_on = false + elseif not is_only_monsters_on_jobs(self.npc_info) and not self.campfires_on then + bind_campfire.turn_on_campfires_by_smart_name(self:name()) + self.campfires_on = true + end + + if db.actor ~= nil then + local distance = db.actor:position():distance_to_sqr(self.position) + local idle_time = math.max(60, 0.003 * distance) + self.check_time = current_time + idle_time + else + self.check_time = current_time + 10 + end + + -- Проверяем, не истек ли запрет на занимание работы, на которой убили НПС + local current_time = game.get_game_time() + for k,v in pairs(self.dead_time) do + if current_time:diffSec(v) >= DEATH_IDLE_TIME then + self.dead_time[k] = nil + end + end + + -- Перевыбор работ + self:update_jobs() + + -- Апдейтим контрол реакции базы на игрока + if self.base_on_actor_control ~= nil then + self.base_on_actor_control:update() + end + -- Апдейт доступности для симуляции. + simulation_objects.get_sim_obj_registry():update_avaliability(self) +end +-- Переведение смарта в напряженное состояние +function se_smart_terrain:set_alarm() + self.smart_alarm_time = game.get_game_time() +end +-- Проверяет. а не прошел ли аларм в смарте +function se_smart_terrain:check_alarm() + if self.smart_alarm_time == nil then + return + end + if game.get_game_time():diffSec(self.smart_alarm_time) > 21600 then -- 6 Игровых часов + self.smart_alarm_time = nil + end +end + + +-- установить логику и сообщить смарту, что объект перешёл в онлайн. +-- вызывается из net_spawn() объектов +function setup_gulag_and_logic_on_spawn(obj, st, sobject, stype, loaded) + local sim = alife() + local sobject = alife():object(obj:id()) + if sim ~= nil and sobject then + local strn_id = sobject.m_smart_terrain_id + printf( "setup_gulag_and_logic_on_spawn obj=%s, strn_id=%s, loaded=%s", obj:name(), tostring(strn_id), tostring(loaded)) + + if strn_id ~= nil and strn_id ~= 65535 then + local strn = sim:object(strn_id) + local need_setup_logic = (not loaded) and (strn.npc_info[obj:id()] and strn.npc_info[obj:id()].begin_job == true) + + if need_setup_logic then + strn:setup_logic(obj) + else + xr_logic.initialize_obj(obj, st, loaded, db.actor, stype) + end + else + xr_logic.initialize_obj(obj, st, loaded, db.actor, stype) + end + else + xr_logic.initialize_obj(obj, st, loaded, db.actor, stype) + end +end + +-- Убираем объект из смарта при смерти +function on_death(obj) + local sim = alife() + if sim then + local obj = sim:object(obj.id) + if obj == nil then return end + local strn_id = obj:smart_terrain_id() + if strn_id ~= 65535 then + printf("clear dead object %s", obj:name()) + sim:object(strn_id):clear_dead(obj) + end + end +end + + +--*********************************************************************************************** +--* SIMULATION_TARGET_SMART * +--*********************************************************************************************** +-- Получить позицию, левел вертекс, гейм вертекс обьекта. +function se_smart_terrain:get_location() + return self.position, self.m_level_vertex_id, self.m_game_vertex_id +end + +-- Достигнут ли я отрядом выбравшим меня как цель. +function se_smart_terrain:am_i_reached(squad) + local squad_pos, squad_lv_id, squad_gv_id = squad:get_location() + local target_pos, target_lv_id, target_gv_id = self:get_location() + if game_graph():vertex(squad_gv_id):level_id() ~= game_graph():vertex(target_gv_id):level_id() then + return false + end + if IsMonster(alife():object(squad:commander_id())) and squad:get_script_target() == nil then + return squad_pos:distance_to_sqr(target_pos) <= 25 + end + return squad.always_arrived or squad_pos:distance_to_sqr(target_pos) <= self.arrive_dist^2 +end + +-- Вызывается 1 раз после достижения меня отрядом выбравшим меня как цель. +function se_smart_terrain:on_after_reach(squad) + for k in squad:squad_members() do + local obj = k.object + squad.board:setup_squad_and_group(obj) + end + squad.current_target_id = self.id +end + +-- Вызывается 1 раз в момент выбора меня как цели. +function se_smart_terrain:on_reach_target(squad) +-- squad.sound_manager:set_storyteller(squad:commander_id()) +-- squad.sound_manager:set_story("squad_begin_attack") + squad:set_location_types(self:name()) + self.board:assign_squad_to_smart(squad, self.id) + for k in squad:squad_members() do + if db.offline_objects[k.id] ~= nil then + db.offline_objects[k.id] = {} + end + end +-- self.board:exit_smart(squad, squad.smart_id) +end + +-- Возвращает CALifeSmartTerrainTask на меня, вызывается из smart_terrain:task() +function se_smart_terrain:get_alife_task() + return self.smart_alife_task +end + +function smart_terrain_squad_count(board_smart_squads) + local count = 0 + for k,v in pairs(board_smart_squads) do + if v:get_script_target() == nil then + count = count + 1 + end + end + return count +end + +function se_smart_terrain:sim_available() + if self.base_on_actor_control ~= nil and self.base_on_actor_control.status ~= smart_terrain_control.NORMAL then + return false + end + return true +end + +local is_squad_monster = +{ + ["monster_predatory_day"] = true, + ["monster_predatory_night"] = true, + ["monster_vegetarian"] = true, + ["monster_zombied_day"] = true, + ["monster_zombied_night"] = true, + ["monster_special"] = true +} +function surge_stats() + local sim_obj_registry = simulation_objects.get_sim_obj_registry().objects + local sim_squads = { + ["zaton"] = {}, + ["jupiter"] = {}, + ["pripyat"] = {} + } + local sim_smarts = { + ["zaton"] = {}, + ["jupiter"] = {}, + ["pripyat"] = {} + } + for k,v in pairs(sim_obj_registry) do + if v:clsid() == clsid.smart_terrain and tonumber(v.props["surge"]) > 0 then + local level_name = alife():level_name(game_graph():vertex(v.m_game_vertex_id):level_id()) + if sim_smarts[level_name] ~= nil then + table.insert(sim_smarts[level_name], v) + end + end + if v:clsid() == clsid.online_offline_group_s then + local squad_params = sim_board.simulation_activities[v.player_id] + if squad_params ~= nil then + local smart_params = squad_params.smart.surge + if smart_params ~= nil then + local level_name = alife():level_name(game_graph():vertex(v.m_game_vertex_id):level_id()) + if sim_squads[level_name] ~= nil then + table.insert(sim_squads[level_name], v) + end + end + end + end + end + local function print_smarts_and_squads_by_level(level_name) + printf("LEVEL: [%s]", level_name) + local max_capacity_total = 0 + for i = 1, #sim_smarts[level_name] do + local smart = sim_smarts[level_name][i] + max_capacity_total = max_capacity_total + smart.max_population + local squad_count = smart_terrain_squad_count(sim_board.get_sim_board().smarts[smart.id].squads) + printf("smart: [%s] max_population [%d] squad_count [%d]", smart:name(),smart.max_population, squad_count) + end + printf("TOTAL: capacity total : [%d] squads total [%d]" , max_capacity_total, #sim_squads[level_name]) + end + print_smarts_and_squads_by_level("zaton") + print_smarts_and_squads_by_level("jupiter") + print_smarts_and_squads_by_level("pripyat") +end +-- Мой прекондишн. +function se_smart_terrain:target_precondition(squad, need_to_dec_population) + if self.respawn_only_smart == true then + return false + end + + local squad_count = smart_terrain_squad_count(self.board.smarts[self.id].squads) + if need_to_dec_population then + squad_count = squad_count - 1 + end + if squad_count ~= nil and (self.max_population <= squad_count) then + --printf("smart terrain [%s] precondition returns false for squad [%s]", self:name(), squad:name()) +-- if tonumber(self.props["surge"]) > 0 and xr_conditions.surge_started() then +-- printf("SURGE_SMART_STATS : smart [%s]\n max_population = %d \ squad_count = %d", self:name(), self.max_population, squad_count) +-- end + return false + end + + local squad_params = sim_board.simulation_activities[squad.player_id] + if squad_params == nil or squad_params.smart == nil then + --printf("smart terrain [%s] precondition returns false for squad [%s]", self:name(), squad:name()) + return false + end + + if tonumber(self.props["resource"] )> 0 then + local smart_params = squad_params.smart.resource + if smart_params ~= nil and smart_params.prec(squad, self) then + return true + end + end + if tonumber(self.props["base"] )> 0 then + local smart_params = squad_params.smart.base + if smart_params ~= nil and smart_params.prec(squad, self) then + return true + end + end + if tonumber(self.props["lair"] )> 0 then + local smart_params = squad_params.smart.lair + if smart_params ~= nil and smart_params.prec(squad, self) then + return true + end + end + if tonumber(self.props["territory"] )> 0 then + local smart_params = squad_params.smart.territory + if smart_params ~= nil and smart_params.prec(squad, self) then + return true + end + end + if tonumber(self.props["surge"] )> 0 then + local smart_params = squad_params.smart.surge + if smart_params ~= nil and smart_params.prec(squad, self) then + return true + end + end + --printf("smart terrain [%s] precondition returns false for squad [%s]", self:name(), squad:name()) + return false + + +--[[ + local squad_count = smart_terrain_squad_count(self.board.smarts[self.id].squads) + if squad_count ~= nil and (self.max_population <= squad_count) then return false end + + + if squad.player_id == "stalker" and in_time_interval(9,19) and tonumber(self.props["resource"] )> 0 then + return true + end + --if squad.player_id ~= "monster_predatory" and squad.player_id ~= "monster_vegetarian" then + + if not is_squad_monster[squad.player_id] then + if tonumber(self.props["base"]) > 0 and in_time_interval(20,8) then + return true + end + if tonumber(self.props["base"] ) > 0 and xr_conditions.surge_started() then + return true + end + else + if tonumber(self.props["lair"] ) > 0 and xr_conditions.surge_started() then + return true + end + if tonumber(self.props["lair"] ) > 0 and in_time_interval(7,20) then + return true + end + end + return false +]] +end + +-- Посчитать мой приоритет для отряда. +function se_smart_terrain:evaluate_prior(squad) + return simulation_objects.evaluate_prior(self, squad) +end + +-- Респаун симуляции. + +function se_smart_terrain:check_respawn_params(respawn_params) + --printf("CHECK RESPAWN PARAMS %s", self:name()) + self.respawn_params = {} + self.already_spawned = {} + self.respawn_point = true + if not self.ini:section_exist(respawn_params) then + abort("Wrong smatr_terrain respawn_params section [%s](there is no section)", respawn_params) + end + local n = self.ini:line_count(respawn_params) + if n == 0 then + abort("Wrong smatr_terrain respawn_params section [%s](empty params)", respawn_params) + end + for j=0,n-1 do + local result, prop_name, prop_condlist = self.ini:r_line(respawn_params,j,"","") + if not self.ini:section_exist(prop_name) then + abort("Wrong smatr_terrain respawn_params section [%s] prop [%s](there is no section)", respawn_params, prop_name) + end + local spawn_squads = utils.cfg_get_string(self.ini, prop_name, "spawn_squads", self, false, "", nil) + local spawn_num = utils.cfg_get_string(self.ini, prop_name, "spawn_num", self, false, "", nil) + if spawn_squads == nil then + abort("Wrong smatr_terrain respawn_params section [%s] prop [%s] line [spawn_squads](there is no line)", respawn_params, prop_name) + elseif spawn_num == nil then + abort("Wrong smatr_terrain respawn_params section [%s] prop [%s] line [spawn_num](there is no line)", respawn_params, prop_name) + end + spawn_squads = utils.parse_names(spawn_squads) + spawn_num = xr_logic.parse_condlist(nil, prop_name, "spawn_num", spawn_num) + self.respawn_params[prop_name] = {} + self.already_spawned[prop_name] = {} + self.respawn_params[prop_name].squads = spawn_squads + self.respawn_params[prop_name].num = spawn_num + self.already_spawned[prop_name].num = 0 + end +end + +function se_smart_terrain:call_respawn() + local available_sects = {} + printf("respawn called from smart_terrain [%s]", self:name()) + for k,v in pairs(self.respawn_params) do + if tonumber(xr_logic.pick_section_from_condlist(db.actor, nil,v.num)) > self.already_spawned[k].num then + table.insert(available_sects,k) + end + end + if #available_sects > 0 then + local sect_to_spawn = available_sects[math.random(1,#available_sects)] + local sect_to_spawn_params = self.respawn_params[sect_to_spawn] + local squad = sect_to_spawn_params.squads[math.random(1,#sect_to_spawn_params.squads)] + squad = self.board:create_squad(self, squad) + squad.respawn_point_id = self.id + squad.respawn_point_prop_section = sect_to_spawn + self.board:enter_smart(squad, self.id) + for m in squad:squad_members() do + self.board:setup_squad_and_group(m.object) + end + self.already_spawned[sect_to_spawn].num = self.already_spawned[sect_to_spawn].num + 1 + end +end + +function se_smart_terrain:try_respawn() + --printf("TRY RESPAWN %s", self:name()) + local curr_time = game.get_game_time() + if self.last_respawn_update == nil or curr_time:diffSec(self.last_respawn_update) > self.respawn_time then + self.last_respawn_update = curr_time + + if self.sim_avail ~= nil and xr_logic.pick_section_from_condlist(db.actor or alife():actor(), self, self.sim_avail) ~= "true" then return end + + local squad_count = smart_terrain_squad_count(self.board.smarts[self.id].squads) + if self.max_population <= squad_count then printf("%s cannot respawn due to squad_count %s of %s", self:name(), self.max_population, squad_count) return end + + local dist_to_actor = alife():actor().position:distance_to_sqr(self.position) + if dist_to_actor < self.respawn_radius^2 then printf("%s cannot respawn due to distance", self:name()) return end + + self:call_respawn() + end +end diff --git a/gamedata/scripts/state_lib.script b/gamedata/scripts/state_lib.script new file mode 100644 index 0000000..a64e782 --- /dev/null +++ b/gamedata/scripts/state_lib.script @@ -0,0 +1,781 @@ +---------------------------------------------------------------------------------------------------------------------- +-- Библиотека состояний тела +-- автор: Диденко Руслан (Stohe) +-- TODO: +---------------------------------------------------------------------------------------------------------------------- + +states = { + -- Дефолтовый + idle = { weapon = nil, + movement = nil, + mental = nil, + bodystate = nil, + animstate = nil, + animation = nil + }, + smartcover = { weapon = "unstrapped", + movement = nil, + mental = nil, + bodystate = nil, + animstate = nil, + animation = nil, + direction = CSightParams.eSightTypeAnimationDirection + }, + + -- Ходячие состояния + walk = { weapon = "strapped", + movement = move.walk, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = nil + }, + walk_noweap = { weapon = "none", + movement = move.walk, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = nil + }, + run = { weapon = "strapped", + movement = move.run, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = nil + }, + sprint = { weapon = "strapped", + movement = move.run, + mental = anim.panic, + bodystate = move.standing, + animstate = nil, + animation = nil + }, + patrol = { weapon = "unstrapped", + movement = move.walk, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = nil + }, + patrol_fire = { weapon = "fire", + movement = move.walk, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = nil + }, + raid = { weapon = "unstrapped", + movement = move.walk, + mental = anim.danger, + special_danger_move = true, + bodystate = move.standing, + animstate = nil, + animation = nil + }, + raid_fire = {weapon = "fire", + movement = move.walk, + mental = anim.danger, + bodystate = move.standing, + animstate = nil, + animation = nil + }, + sneak = { weapon = "unstrapped", + movement = move.walk, + mental = anim.danger, + bodystate = move.crouch, + animstate = nil, + animation = nil + }, + sneak_run = { weapon = "unstrapped", + movement = move.run, + mental = anim.danger, + bodystate = move.crouch, + animstate = nil, + animation = nil + }, + sneak_no_wpn = { weapon = "strapped", + movement = move.walk, + mental = anim.danger, + bodystate = move.crouch, + animstate = nil, + animation = nil + }, + sneak_fire = { weapon = "fire", + movement = move.walk, + mental = anim.danger, + bodystate = move.crouch, + animstate = nil, + animation = nil + }, + assault = { weapon = "unstrapped", + movement = move.run, + mental = anim.danger, + bodystate = move.standing, + animstate = nil, + animation = nil + }, + assault_fire = { weapon = "fire", + movement = move.run, + mental = anim.danger, + bodystate = move.standing, + animstate = nil, + animation = nil + }, + rush = { weapon = "unstrapped", + movement = move.run, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = nil + }, + + -- Стоячие состояния + wait = { weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "idle" + }, + wait_trade = { weapon = "none", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "idle" + }, + wait_na = { weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = nil + }, + guard = { weapon = "unstrapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "idle" + }, + guard_chasovoy = { weapon = "unstrapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "idle_chasovoy" + }, + guard_na = {weapon = "unstrapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = nil + }, + guard_fire = { weapon = "fire", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = nil + }, + threat = { weapon = "unstrapped", + movement = move.stand, + mental = anim.danger, + bodystate = move.standing, + animstate = nil, + animation = nil, + fast_set = true + }, + threat_danger = { weapon = "unstrapped", + movement = move.stand, + mental = anim.danger, + bodystate = move.standing, + animstate = nil, + animation = "bloodsucker_search", + }, + give_orders = { weapon = "unstrapped", + movement = move.stand, + mental = anim.danger, + bodystate = move.standing, + animstate = nil, + animation = "give_orders", + }, + threat_heli = { weapon = "unstrapped", + movement = move.stand, + mental = anim.danger, + bodystate = move.standing, + animstate = nil, + animation = nil + }, + threat_na = { weapon = "unstrapped", + movement = move.stand, + mental = anim.danger, + bodystate = move.standing, + animstate = nil, + animation = nil, + fast_set = true + }, + threat_fire = { weapon = "fire", + movement = move.stand, + mental = anim.danger, + bodystate = move.standing, + animstate = nil, + animation = nil + }, + threat_sniper_fire = { weapon = "sniper_fire", + movement = move.stand, + mental = anim.danger, + bodystate = move.standing, + animstate = nil, + animation = nil + }, + hide = { weapon = "unstrapped", + movement = move.stand, + mental = anim.danger, + bodystate = move.crouch, + animstate = nil, + animation = "hide" + }, + hide_na = { weapon = "unstrapped", + movement = move.stand, + mental = anim.danger, + bodystate = move.crouch, + animstate = nil, + animation = nil + }, + hide_fire = { weapon = "fire", + movement = move.stand, + mental = anim.danger, + bodystate = move.crouch, + animstate = nil, + animation = nil + }, + hide_sniper_fire = { weapon = "sniper_fire", + movement = move.stand, + mental = anim.danger, + bodystate = move.crouch, + animstate = nil, + animation = nil + }, + caution = { weapon = nil, + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "caution" + }, + choose = {weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "choosing" + }, + press = {weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "press" + }, + ward = {weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "warding" + }, + ward_short = {weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "warding_short" + }, + ward_noweap = {weapon = "none", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "warding" + }, + ward_noweap_short = {weapon = "none", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "warding_short" + }, + fold_arms = {weapon = "none", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "fold_arms" + }, + + search = {weapon = nil, + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "poisk" + }, + stoop_no_weap = {weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "stoop_no_weap" + }, + salut = {weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "salut" + }, + salut_free = {weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "salut_free" + }, + prisoner = {weapon = "strapped", + movement = nil, + mental = anim.danger, + bodystate = move.standing, + animstate = nil, + animation = "prisoner" + }, + + hide_no_wpn = { weapon = "strapped", + movement = move.stand, + mental = anim.danger, + bodystate = move.crouch, + animstate = nil, + animation = "hide" + }, + -- Сидячие состояния + sit = { weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = "sit", + animation = nil + }, + sit_knee = {weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = "sit_knee", + animation = nil + }, + sit_ass = { weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = "sit_ass", + animation = nil + }, + + play_guitar = { weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = "sit_knee", + animation = "play_guitar" + }, + play_harmonica = { weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = "sit_ass", + animation = "play_harmonica" + }, + + + + sleep = { weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "sleeping" + }, + -- START IX-Ray + sleep_sit = { weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = "sit_ass", + animation = "sleep_sit" + }, + eat_bread = { weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = "sit_knee", + animation = "eat_bread" + }, + eat_vodka = { weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = "sit_ass", + animation = "eat_vodka" + }, + eat_energy = { weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = "sit_ass", + animation = "eat_energy" + }, + eat_kolbasa = { weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = "sit_ass", + animation = "eat_kolbasa" + }, + + guitar = { weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = "sit_knee", + animation = "guitar" + }, + harmonica = { weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = "sit_ass", + animation = "harmonica" + }, + -- END IX-Ray + hello = { weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "hello" + }, + hello_wpn = {weapon = "unstrapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "hello" + }, + + refuse = { weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "refuse" + }, + claim = { weapon = "unstrapped", + movement = move.stand, + mental = anim.danger, + bodystate = move.standing, + animstate = nil, + animation = "claim" + }, + backoff = { weapon = "unstrapped", + movement = move.stand, + mental = anim.danger, + bodystate = move.standing, + animstate = nil, + animation = "backoff" + }, + backoff2 = {weapon = "unstrapped", + movement = move.stand, + mental = anim.danger, + bodystate = move.standing, + animstate = nil, + animation = "backoff" + }, + punch = { weapon = nil, + movement = move.stand, + mental = anim.danger, + bodystate = move.standing, + animstate = nil, + animation = "punch" + }, + + search_corpse = {weapon = "strapped", + movement = move.stand, + mental = anim.danger, + bodystate = move.crouch, + animstate = nil, + animation = "search_corpse" + }, + + help_wounded = {weapon = "strapped", + movement = move.stand, + mental = anim.danger, + bodystate = move.crouch, + animstate = nil, + animation = "help_wounded" + }, + + dynamite = {weapon = "strapped", + movement = move.stand, + mental = anim.danger, + bodystate = move.crouch, + animstate = nil, + animation = "dynamite" + }, + + binocular = {weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "binocular" + }, + hide_rac = {weapon = "unstrapped", + movement = move.stand, + mental = anim.danger, + bodystate = move.crouch, + animstate = nil, + animation = "cr_raciya" + }, + wait_rac = {weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "raciya" + }, + wait_rac_noweap = {weapon = "none", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "raciya" + }, + wait_rac_stc = {weapon = "unstrapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "raciya_stc" + }, + guard_rac = {weapon = "unstrapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "raciya" + }, + + probe_stand = {weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "probe_stand" + }, + probe_stand_detector_advanced = {weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "probe_stand_detector_advanced" + }, + probe_stand_detector_elite = {weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "probe_stand_detector_elite" + }, + probe_way = {weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "probe_way" + }, + probe_way_detector_advanced = {weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "probe_way_detector_advanced" + }, + probe_way_detector_elite = {weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "probe_way_detector_elite" + }, + probe_crouch = {weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "probe_crouch" + }, + probe_crouch_detector_advanced = {weapon = "strapped", + movement = move.stand, + mental = anim.danger, + bodystate = move.standing, + animstate = nil, + animation = "probe_crouch_detector_advanced" + }, + probe_crouch_detector_elite = {weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "probe_crouch_detector_elite" + }, + + scaner_stand = {weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "scaner_stand" + }, + scaner_way = {weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "scaner_way" + }, + + scaner_crouch = {weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "scaner_crouch" + }, + + hands_up = {weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "hands_up" + }, + + + + -- Раненый + wounded = { weapon = "strapped", + movement = move.stand, + mental = anim.danger, + bodystate = move.crouch, + direction = look.cur_dir, + animstate = nil, + animation = "wounded" + }, + wounded_heavy = { weapon = "drop", + movement = move.stand, + mental = anim.danger, + bodystate = move.crouch, + direction = look.cur_dir, --CSightParams.eSightTypeAnimationDirection + animstate = nil, + animation = "wounded_heavy_1" + }, + wounded_heavy_2 = { weapon = "drop", + movement = move.stand, + mental = anim.danger, + bodystate = move.crouch, + direction = look.cur_dir, + animstate = nil, + animation = "wounded_heavy_2" + }, + wounded_heavy_3 = { weapon = "drop", + movement = move.stand, + mental = anim.danger, + bodystate = move.crouch, + direction = look.cur_dir, + animstate = nil, + animation = "wounded_heavy_3" + }, + wounded_zombie = { weapon = "drop", + movement = move.stand, + mental = anim.danger, + bodystate = move.crouch, + direction = look.cur_dir, + animstate = nil, + animation = "wounded_zombie" + }, + trans_0 = { weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "trans_0" + }, + trans_1 = { weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "trans_1" + }, + trans_zombied = {weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "trans_zombied" + }, + + talk_default = { weapon = "strapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "talk_default" + }, + + -- Пси раненый + psy_pain = {weapon = "drop", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "psy_armed" + }, + psy_armed = {weapon = "unstrapped", + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "psy_armed" + }, + psy_shoot = {weapon = "fire", + weapon_slot = 1, + movement = move.stand, + mental = anim.free, + bodystate = move.standing, + animstate = nil, + animation = "psy_shoot" + }, + lay_on_bed = { weapon = "drop", + movement = move.stand, + mental = anim.danger, + bodystate = move.crouch, + direction = look.cur_dir, + animstate = nil, + animation = "wounded_heavy_1"} +} + +utils.copy_table(states, state_lib_animpoint.add_state_lib()) +utils.copy_table(states, state_mgr_scenario.add_state_lib()) +utils.copy_table(states, state_mgr_pri_a15.add_state_lib()) \ No newline at end of file diff --git a/gamedata/scripts/state_mgr_animation_list.script b/gamedata/scripts/state_mgr_animation_list.script new file mode 100644 index 0000000..74eca9c --- /dev/null +++ b/gamedata/scripts/state_mgr_animation_list.script @@ -0,0 +1,751 @@ +animations = { + idle = { prop = { maxidle = 5, + sumidle = 3, + rnd = 80 }, + into = nil, + out = nil, + idle = { [0] = "idle_0_idle_1", + [1] = "idle_1_idle_1", + [2] = "idle_2_idle_1", + [3] = "idle_3_idle_1", + [4] = "idle_4_idle_1", + [8] = "idle_8_idle_1", + [9] = "idle_2_idle_1", + [10]= "idle_10_idle_1" }, + rnd = { [0] = { "idle_0_idle_0", + "idle_0_idle_2", + "idle_0_idle_3", + "idle_0_idle_4" }, + [1] = { "idle_1_idle_0", + "idle_1_idle_2", + "idle_1_idle_3", + "idle_1_idle_4" }, + [2] = { "idle_2_idle_0", + "idle_2_idle_2", + "idle_2_idle_3", + "idle_2_idle_4"}, + [3] = { "idle_3_idle_0", + "idle_3_idle_2", + "idle_3_idle_3", + "idle_3_idle_4" }, + [4] = { "idle_4_idle_0", + "idle_4_idle_2", + "idle_4_idle_3", + "idle_4_idle_4" }, + [8] = { "idle_8_idle_0", + "idle_8_idle_2", + "idle_8_idle_3", + "idle_8_idle_4" }, + [9] = { "idle_2_idle_0", + "idle_2_idle_2", + "idle_2_idle_3", + "idle_2_idle_4" }, + [10]= { "idle_10_idle_0", + "idle_10_idle_2", + "idle_10_idle_3", + "idle_10_idle_4" }}}, + idle_chasovoy = { prop = { maxidle = 5, + sumidle = 3, + rnd = 80 }, + into = nil, + out = nil, + idle = { [0] = "idle_0_idle_1", + [1] = "idle_1_idle_1", + [2] = "idle_2_idle_1", + [3] = "idle_3_idle_1", + [4] = "idle_4_idle_1", + [8] = "idle_8_idle_1", + [9] = "idle_2_idle_1", + [10]= "idle_10_idle_1" }, + rnd = { [0] = { "chasovoy_0", + "chasovoy_1", + "chasovoy_2", + "chasovoy_3", + "chasovoy_4" }, + [1] = { "chasovoy_0", + "chasovoy_1", + "chasovoy_2", + "chasovoy_3", + "chasovoy_4"}, + [2] = { "chasovoy_0", + "chasovoy_1", + "chasovoy_2", + "chasovoy_3", + "chasovoy_4"}, + [3] = { "chasovoy_0", + "chasovoy_1", + "chasovoy_2", + "chasovoy_3", + "chasovoy_4"}, + [4] = { "chasovoy_0", + "chasovoy_1", + "chasovoy_2", + "chasovoy_3", + "chasovoy_4"}, + [8] = { "chasovoy_0", + "chasovoy_1", + "chasovoy_2", + "chasovoy_3", + "chasovoy_4"}, + [9] = { "chasovoy_0", + "chasovoy_1", + "chasovoy_2", + "chasovoy_3", + "chasovoy_4"}, + [10]= { "chasovoy_0", + "chasovoy_1", + "chasovoy_2", + "chasovoy_3", + "chasovoy_4"}}}, + caution = { prop = { maxidle = 5, + sumidle = 3, + rnd = 80 }, + into = { [0] = { "prisluh_0_in" }, + [1] = { "prisluh_1_in" }, + [2] = { "prisluh_2_in" }, + [3] = { "prisluh_3_in" }, + [4] = { "prisluh_4_in" }, + [8] = { "prisluh_8_in" }, + [9] = { "prisluh_9_in" }, + [10]= { "prisluh_10_in" } }, + out = { [0] = { "prisluh_0_out" }, + [1] = { "prisluh_1_out" }, + [2] = { "prisluh_2_out" }, + [3] = { "prisluh_3_out" }, + [4] = { "prisluh_4_out" }, + [8] = { "prisluh_8_out" }, + [9] = { "prisluh_9_out" }, + [10]= { "prisluh_10_out" } }, + idle = { [0] = "prisluh_0_1", + [1] = "prisluh_1_1", + [2] = "prisluh_2_1", + [3] = "prisluh_3_1", + [4] = "prisluh_4_1", + [8] = "prisluh_8_1", + [9] = "prisluh_9_1", + [10]= "prisluh_10_1" }, + rnd = { [0] = { "prisluh_0_0", + "prisluh_0_2" }, + [1] = { "prisluh_1_0", + "prisluh_1_2" }, + [2] = { "prisluh_2_0", + "prisluh_2_2" }, + [3] = { "prisluh_3_0", + "prisluh_3_2" }, + [4] = { "prisluh_4_0", + "prisluh_4_2" }, + [8] = { "prisluh_8_0", + "prisluh_8_2" }, + [9] = { "prisluh_9_0", + "prisluh_9_2" }, + [10]= { "prisluh_10_0", + "prisluh_10_2" }}}, + poisk = { prop = { maxidle = 5, + sumidle = 3, + rnd = 80 }, + into = nil, + out = nil, + idle = { [0] = "poisk_0_idle_1", + [1] = "poisk_1_idle_1", + [2] = "poisk_2_idle_1", + [3] = "poisk_3_idle_1", + [4] = "poisk_4_idle_1", + [8] = "poisk_8_idle_1", + [9] = "poisk_9_idle_1", + [10]= "poisk_10_idle_1"}, + rnd = { [0] = { "poisk_0_idle_0", + "poisk_0_idle_2" }, + [1] = { "poisk_1_idle_0", + "poisk_1_idle_2" }, + [2] = { "poisk_2_idle_0", + "poisk_2_idle_2" }, + [3] = { "poisk_3_idle_0", + "poisk_3_idle_2" }, + [4] = { "poisk_4_idle_0", + "poisk_4_idle_2" }, + [8] = { "poisk_8_idle_0", + "poisk_8_idle_2" }, + [9] = { "poisk_9_idle_0", + "poisk_9_idle_2" }, + [10]= { "poisk_10_idle_0", + "poisk_10_idle_2" }}}, + stoop_no_weap = { prop = { maxidle = 2, + sumidle = 1, + rnd = 80 }, + into = nil, + out = nil, + idle = { [0] = "poisk_0_idle_0"}, + rnd = nil}, + hide = { prop = { maxidle = 5, + sumidle = 3, + rnd = 80 }, + into = { [0] = { "cr_idle_0_in" }, + [1] = { "cr_idle_1_in" }, + [2] = { "cr_idle_2_in" }, + [3] = { "cr_idle_3_in" }, + [4] = { "cr_idle_4_in" }, + [8] = { "cr_idle_8_in" }, + [9] = { "cr_idle_9_in" }, + [10] ={ "cr_idle_10_in" }}, + out = { [0] = { "cr_idle_0_out" }, + [1] = { "cr_idle_1_out" }, + [2] = { "cr_idle_2_out" }, + [3] = { "cr_idle_3_out" }, + [4] = { "cr_idle_4_out" }, + [8] = { "cr_idle_8_out" }, + [9] = { "cr_idle_9_out" }, + [10] ={ "cr_idle_10_out" }}, + idle = { [0] = "cr_idle_0_1", + [1] = "cr_idle_1_1", + [2] = "cr_idle_2_1", + [3] = "cr_idle_3_1", + [4] = "cr_idle_4_1", + [8] = "cr_idle_8_1", + [9] = "cr_idle_9_1", + [10]= "cr_idle_10_1" }, + rnd = { [0] = { "cr_idle_0_0", + "cr_idle_0_2" }, + [1] = { "cr_idle_1_0", + "cr_idle_1_2" }, + [2] = { "cr_idle_2_0", + "cr_idle_2_2" }, + [3] = { "cr_idle_3_0", + "cr_idle_3_2" }, + [4] = { "cr_idle_4_0", + "cr_idle_4_2" }, + [8] = { "cr_idle_8_0", + "cr_idle_8_2" }, + [9] = { "cr_idle_9_0", + "cr_idle_9_2" }, + [10]= { "cr_idle_10_0", + "cr_idle_10_2" }}}, + + play_guitar = { prop = { maxidle = 3, + sumidle = 3, + rnd = 80 }, + into = { [0] = {"sit_1_guitar_0_0", {a="guitar_a"}, {f=sr_camp.start_guitar}, "sit_1_guitar_0_1"}}, + out = { [0] = {"guitar_0_sit_1_0", {d="guitar_a"}, "guitar_0_sit_1_1"} }, + idle = { [0] = "guitar_0" }, + rnd = nil }, + play_harmonica = { prop = { maxidle = 3, + sumidle = 3, + rnd = 80 }, + into = { [0] = {"sit_2_harmonica_1_0", {a="harmonica_a"}, {f=sr_camp.start_harmonica}, "sit_2_harmonica_1_1"}}, + out = { [0] = {"harmonica_1_sit_2_0", {d="harmonica_a"}, "harmonica_1_sit_2_1"} }, + idle = { [0] = "harmonica_0" }, + rnd = nil }, + + + + hello = { prop = { maxidle = 5, + sumidle = 5, + rnd = 100 }, + into = nil, + out = nil, + idle = nil, + rnd = { [0] = { "hello_0_idle_0" }, + [1] = { "hello_1_idle_0" }, + [2] = { "hello_2_idle_0" }, + [3] = { "hello_3_idle_0" }, + [4] = { "hello_4_idle_0" }, + [8] = { "hello_8_idle_0" }, + [9] = { "hello_9_idle_0" }, + [10]= { "hello_10_idle_0" }}}, + refuse = { prop = { maxidle = 3, + sumidle = 3, + rnd = 100 }, + into = nil, + out = nil, + idle = nil, + rnd = { [0] = { "net_0_0" }, + [1] = { "net_1_0" }, + [2] = { "net_2_0" }, + [3] = { "net_3_0" }, + [4] = { "net_4_0" }, + [8] = { "net_8_0" }, + [9] = { "net_9_0" }, + [10]= { "net_10_0" }}}, + claim = { prop = { maxidle = 5, + sumidle = 2, + rnd = 100 }, + into = nil, + out = nil, + idle = nil, + rnd = { [0] = nil, + [1] = { "gop_stop_1_0" }, + [2] = { "gop_stop_2_0" }, + [3] = { "gop_stop_3_0" }, + [4] = { "gop_stop_4_0" }, + [8] = { "gop_stop_8_0" }, + [9] = { "gop_stop_9_0" }, + [10]= { "gop_stop_10_0" }}}, + backoff = { prop = { maxidle = 5, + sumidle = 2, + rnd = 100 }, + into = nil, + out = nil, + idle = nil, + rnd = { [0] = { "uhodi_1_0", + "uhodi_1_1" }, + [1] = { "uhodi_1_0", + "uhodi_1_1" }, + [2] = { "uhodi_2_0", + "uhodi_2_1" }, + [3] = { "uhodi_3_0", + "uhodi_3_1" }, + [4] = { "uhodi_4_0", + "uhodi_4_1" }, + [8] = { "uhodi_8_0", + "uhodi_8_1" }, + [9] = { "uhodi_9_0", + "uhodi_9_1" }, + [10]= { "uhodi_10_0", + "uhodi_10_1" }}}, + + punch = { prop = { maxidle = 5, + sumidle = 2, + rnd = 100 }, + into = { [0] = { "norm_facer_0_0", {f=xr_effects.actor_punch}, "norm_facer_0_1", {f=xr_effects.clearAbuse}}, + [1] = { "norm_facer_1_0", {f=xr_effects.actor_punch}, "norm_facer_1_1", {f=xr_effects.clearAbuse}}, + [2] = { "norm_facer_2_0", {f=xr_effects.actor_punch}, "norm_facer_2_1", {f=xr_effects.clearAbuse}}, + [3] = { "norm_facer_3_0", {f=xr_effects.actor_punch}, "norm_facer_3_1", {f=xr_effects.clearAbuse}}, + [4] = { "norm_facer_4_0", {f=xr_effects.actor_punch}, "norm_facer_4_1", {f=xr_effects.clearAbuse}}, + [8] = { "norm_facer_8_0", {f=xr_effects.actor_punch}, "norm_facer_8_1", {f=xr_effects.clearAbuse}}, + [9] = { "norm_facer_9_0", {f=xr_effects.actor_punch}, "norm_facer_9_1", {f=xr_effects.clearAbuse}}, + [10]= { "norm_facer_10_0", {f=xr_effects.actor_punch}, "norm_facer_10_1", {f=xr_effects.clearAbuse}}}, + out = nil, + idle = nil, + rnd = nil}, + + sleeping = { prop = { maxidle = 5, + sumidle = 10, + rnd = 100 }, + into = { [0] = { "idle_0_to_sit_0","sit_to_sleep_0" }}, + out = { [0] = { "sleep_to_sit_0", "sit_0_to_idle_0" }}, + idle = { [0] = "sleep_idle_0" }, + rnd = { [0] = { "sleep_idle_1" }}}, + + wounded = { prop = { maxidle = 5, + sumidle = 10, + rnd = 70 }, + into = { [0] = {"idle_to_wounded_0"}}, + out = { [0] = {"wounded_to_idle_0"}}, + idle = { [0] = "wounded_idle_0" }, + rnd = nil }, + wounded_heavy_1 = { prop = { maxidle = 5, + sumidle = 10, + rnd = 70 }, + into = { [0] = {"idle_to_wounded_1"}}, + out = { [0] = {"waunded_1_out"}}, + idle = { [0] = "waunded_1_idle_0" }, + rnd = nil }, + wounded_heavy_2 = { prop = { maxidle = 5, + sumidle = 10, + rnd = 70 }, + into = { [0] = {"idle_to_wounded_2"}}, + out = { [0] = {"wounded_2_out"}}, + idle = { [0] = "wounded_2_idle_0" }, + rnd = nil }, + wounded_heavy_3 = { prop = { maxidle = 5, + sumidle = 10, + rnd = 70 }, + into = { [0] = {"idle_to_wounded_3"}}, + out = { [0] = {"wounded_3_out"}}, + idle = { [0] = "wounded_3_idle_0" }, + rnd = nil }, + wounded_zombie = { prop = { maxidle = 5, + sumidle = 10, + rnd = 70 }, + into = { [0] = {"idle_to_wounded_0"}}, + out = { [0] = {"wounded_to_idle_0"}}, + idle = { [0] = "wounded_idle_0" }, + rnd = { [0] = { "wounded_idle_1" }}}, +-- START IX-Ray + eat_bread = { prop = { maxidle = 3, + sumidle = 3, + rnd = 80 }, + into = { [0] = {"item_2_draw_0", {a="bread"}, "item_2_draw_1"} }, + out = { [0] = {"item_2_holster_0", {d="bread"}, "item_2_holster_1"} }, + idle = { [0] = "item_2_aim_0" }, + rnd = { [0] = { "item_2_prepare_0", + "item_2_attack_0" } }}, + eat_vodka = { prop = { maxidle = 3, + sumidle = 3, + rnd = 80 }, + into = { [0] = {"item_4_draw_0", {a="vodka"}, "item_4_draw_1"} }, + out = { [0] = {"item_4_holster_0", {d="vodka"}, "item_4_holster_1"} }, + idle = { [0] = "item_4_aim_0" }, + rnd = { [0] = { "item_4_prepare_0", + "item_4_attack_0" } }}, + eat_energy = { prop = { maxidle = 3, + sumidle = 3, + rnd = 80 }, + into = { [0] = {"item_5_draw_0", {a="energy_drink"}, "item_5_draw_1"} }, + out = { [0] = {"item_5_holster_0", {d="energy_drink"}, "item_5_holster_1"} }, + idle = { [0] = "item_5_aim_0" }, + rnd = { [0] = { "item_5_prepare_0", + "item_5_attack_0" } }}, + eat_kolbasa = { prop = { maxidle = 3, + sumidle = 3, + rnd = 80 }, + into = { [0] = {"item_1_draw_0", {a="kolbasa"}, "item_1_draw_1"}}, + out = { [0] = {"item_1_holster_0", {d="kolbasa"}, "item_1_holster_1"} }, + idle = { [0] = "item_1_idle_1" }, + rnd = { [0] = { "item_1_attack_0", + "item_1_idle_0" } }}, + + guitar = { prop = { maxidle = 3, + sumidle = 3, + rnd = 80 }, + into = { [0] = {"sit_1_guitar_0_0", {a="guitar_a"}, {f=sr_camp.start_guitar}, "sit_1_guitar_0_1"}}, + out = { [0] = {"guitar_0_sit_1_0", {d="guitar_a"}, "guitar_0_sit_1_1"} }, + idle = { [0] = "guitar_0" }, + -- rnd = { [0] = { "guitar_1", "guitar_2" } }, + }, + harmonica = { prop = { maxidle = 3, + sumidle = 3, + rnd = 80 }, + into = { [0] = {"sit_2_harmonica_1_0", {a="harmonica_a"}, {f=sr_camp.start_harmonica}, "sit_2_harmonica_1_1"}}, + out = { [0] = {"harmonica_1_sit_2_0", {d="harmonica_a"}, "harmonica_1_sit_2_1"} }, + idle = { [0] = "harmonica_0" }, + -- rnd = { [0] = { "harmonica_2","harmonica_3" } } + }, +-- END IX-Ray + choosing = { prop = { maxidle = 8, + sumidle = 10, + rnd = 80 }, + into = nil, + out = nil, + idle = nil, + rnd = { [0] = { "komandir_0", + "komandir_1", + "komandir_2" } }}, + press = { prop = { maxidle = 8, + sumidle = 10, + rnd = 80 }, + into = { [0] = { "knopka_0" } }, + out = { [0] = { "knopka_1" } }, + idle = { [0] = "knopka_2" }, + rnd = nil }, + + + warding = { prop = { maxidle = 10, + sumidle = 10, + rnd = 0 }, + into = { [0] = { "ohrana_0" }}, + out = { [0] = { "ohrana_2" }}, + idle = { [0] = "ohrana_1"}, + rnd = nil }, + + warding_short = { prop = { maxidle = 10, + sumidle = 10, + rnd = 0 }, + into = { [0] = { "ohrana_0" }}, + out = { [0] = { "ohrana_2" }}, + idle = { [0] = "ohrana_1_short"}, + rnd = nil }, + + fold_arms = { prop = { maxidle = 10, + sumidle = 10, + rnd = 0 }, + into = nil, + out = nil, + idle = { [0] = "cut_scene_idle_0"}, + rnd = nil }, + + + + talk_default = { prop = { maxidle = 5, + sumidle = 5, + rnd = 70 }, + into = { [0] = nil, + [2] = { "norm_talk_2_in_0" } }, + out = { [0] = nil, + [2] = { "norm_talk_2_out_0" } }, + idle = { [0] = "idle_0_idle_1", + [2] = "norm_talk_2_idle_1" }, + rnd = { [0] = { "idle_0_idle_0" }, + [2] = { "norm_talk_2_idle_0", + "norm_talk_2_idle_2", + "norm_talk_2_idle_3", + "norm_talk_2_idle_4"} } }, + + binocular = { prop = { maxidle = 1, + sumidle = 1, + rnd = 100 }, + into = { [0] = {"binoculars_draw_0", {a="wpn_binoc"}, "binoculars_draw_1", "binoculars_zoom_in_0"} }, + + out = { [0] = {"binoculars_zoom_out_0", "binoculars_hide_0", {d="wpn_binoc"}, "binoculars_hide_1"} }, + idle = { [0] = "binoculars_zoom_idle_0" }, + rnd = { [0] = {"binoculars_zoom_idle_1", + "binoculars_zoom_idle_2", + "binoculars_zoom_idle_3", + "binoculars_zoom_idle_4"} } }, + salut = { prop = { maxidle = 1, + sumidle = 1, + rnd = 100 }, + into = { [0] = {"chest_0_idle_0", "chest_0_idle_2"} }, + out = { [0] = {"chest_0_idle_3"} }, + idle = { [0] = "chest_0_idle_1" }, + rnd = nil }, + salut_free = { prop = { maxidle = 1, + sumidle = 1, + rnd = 100 }, + into = { [0] = {"chest_1_idle_0"} }, + out = nil, + idle = nil, + rnd = nil }, + hands_up = { prop = { maxidle = 1, + sumidle = 1, + rnd = 100 }, + into = nil, + out = nil, + idle = { [0] = "hand_up_0" }, + rnd = nil }, + trans_0 = { prop = { maxidle = 1, + sumidle = 1, + rnd = 100 }, + into = { [0] = {"idle_0_to_trans_0"} }, + out = { [0] = {"trans_0_to_idle_0"} }, + idle = { [0] = "trans_0_idle_0" }, + rnd = nil }, + trans_1 = { prop = { maxidle = 1, + sumidle = 1, + rnd = 100 }, + into = { [0] = {"idle_0_to_trans_1"} }, + out = { [0] = {"trans_1_to_idle_0"} }, + idle = { [0] = "trans_1_idle_0" }, + rnd = nil }, + trans_zombied = { prop = { maxidle = 1, + sumidle = 1, + rnd = 100 }, + into = nil, + out = nil, + idle = { [0] = "trans_0_idle_1" }, + rnd = { [0] = {"trans_0_idle_0", + "trans_0_idle_2", + "trans_0_idle_3", + "trans_0_idle_4", + "trans_0_idle_5", + "trans_0_idle_6"} } }, + + + + + + + + + + + + + + + + + + + + probe_stand = { prop = { maxidle = 0, + sumidle = 0, + rnd = 100 }, + into = { [0] = {"metering_anomalys_0_draw_0", {f=xr_effects.get_best_detector}, "metering_anomalys_0_draw_1"} }, + out = { [0] = {"metering_anomalys_0_hide_0", {f=xr_effects.hide_best_detector}, "metering_anomalys_0_hide_1"} }, + idle = { [0] = "metering_anomalys_0_idle_0" }, + rnd = { [0] = {"metering_anomalys_0_idle_1", + "metering_anomalys_0_idle_2", + "metering_anomalys_0_idle_3", + "metering_anomalys_0_idle_4", + "metering_anomalys_0_idle_5"} } }, + + + probe_way = { prop = { maxidle = 0, + sumidle = 0, + rnd = 100 }, + into = { [0] = {"metering_anomalys_0_draw_0", {f=xr_effects.get_best_detector}, "metering_anomalys_0_draw_1", "metering_anomalys_0_idle_6"} }, + out = { [0] = {"metering_anomalys_0_hide_0", {f=xr_effects.hide_best_detector}, "metering_anomalys_0_hide_1"} }, + idle = { [0] = "metering_anomalys_0_idle_0" }, + rnd = nil }, + + + + probe_crouch = { prop = { maxidle = 0, + sumidle = 0, + rnd = 100 }, + into = { [0] = {"metering_anomalys_1_draw_0", {f=xr_effects.get_best_detector}, "metering_anomalys_1_draw_1"} }, + out = { [0] = {"metering_anomalys_1_hide_0", {f=xr_effects.hide_best_detector}, "metering_anomalys_1_hide_1"} }, + idle = { [0] = "metering_anomalys_1_idle_0" }, + rnd = { [0] = {"metering_anomalys_1_idle_1", + "metering_anomalys_1_idle_2", + "metering_anomalys_1_idle_3", + "metering_anomalys_1_idle_4"} } }, + + scaner_stand = { prop = { maxidle = 0, + sumidle = 0, + rnd = 100 }, + into = { [0] = {"metering_anomalys_0_draw_0", {a="anomaly_scaner"}, "metering_anomalys_0_draw_1"} }, + out = { [0] = {"metering_anomalys_0_hide_0", {d="anomaly_scaner"}, "metering_anomalys_0_hide_1"} }, + idle = { [0] = "metering_anomalys_0_idle_0" }, + rnd = { [0] = {"metering_anomalys_0_idle_1", + "metering_anomalys_0_idle_2", + "metering_anomalys_0_idle_3", + "metering_anomalys_0_idle_4", + "metering_anomalys_0_idle_5"} } }, + + + scaner_way = { prop = { maxidle = 0, + sumidle = 0, + rnd = 100 }, + into = { [0] = {"metering_anomalys_0_draw_0", {a="anomaly_scaner"}, "metering_anomalys_0_draw_1", "metering_anomalys_0_idle_6"} }, + out = { [0] = {"metering_anomalys_0_hide_0", {d="anomaly_scaner"}, "metering_anomalys_0_hide_1"} }, + idle = { [0] = "metering_anomalys_0_idle_0" }, + rnd = nil }, + + + + scaner_crouch = { prop = { maxidle = 0, + sumidle = 0, + rnd = 100 }, + into = { [0] = {"metering_anomalys_1_draw_0", {a="anomaly_scaner"}, "metering_anomalys_1_draw_1"} }, + out = { [0] = {"metering_anomalys_1_hide_0", {d="anomaly_scaner"}, "metering_anomalys_1_hide_1"} }, + idle = { [0] = "metering_anomalys_1_idle_0" }, + rnd = { [0] = {"metering_anomalys_1_idle_1", + "metering_anomalys_1_idle_2", + "metering_anomalys_1_idle_3", + "metering_anomalys_1_idle_4"} } }, + + prisoner = { prop = { maxidle = 1, + sumidle = 1, + rnd = 100 }, + into = { [0] = {"prisoner_0_sit_down_0"}}, + out = { [0] = {"prisoner_0_stand_up_0"}}, + idle = { [0] = "prisoner_0_sit_idle_0" }, + rnd = nil }, + + + raciya = { prop = { maxidle = 1, + sumidle = 1, + rnd = 100 }, + into = { [0] = {"raciya_0_draw_0", {a="hand_radio"}, "raciya_0_draw_1"}, + [1] = {"raciya_1_draw_0", {a="hand_radio"}, "raciya_1_draw_1"}, + [2] = {"raciya_2_draw_0", {a="hand_radio"}, "raciya_2_draw_1"}, + [3] = {"raciya_3_draw_0", {a="hand_radio"}, "raciya_3_draw_1"}, + [4] = {"raciya_4_draw_0", {a="hand_radio"}, "raciya_4_draw_1"}, + [8] = {"raciya_8_draw_0", {a="hand_radio"}, "raciya_8_draw_1"}, + [9] = {"raciya_9_draw_0", {a="hand_radio"}, "raciya_9_draw_1"}, + [10]= {"raciya_10_draw_0",{a="hand_radio"}, "raciya_10_draw_1"} }, + out = { [0] = {"raciya_0_hide_0", {d="hand_radio"}, "raciya_0_hide_1"}, + [1] = {"raciya_1_hide_0", {d="hand_radio"}, "raciya_1_hide_1"}, + [2] = {"raciya_2_hide_0", {d="hand_radio"}, "raciya_2_hide_1"}, + [3] = {"raciya_3_hide_0", {d="hand_radio"}, "raciya_3_hide_1"}, + [4] = {"raciya_4_hide_0", {d="hand_radio"}, "raciya_4_hide_1"}, + [8] = {"raciya_8_hide_0", {d="hand_radio"}, "raciya_8_hide_1"}, + [9] = {"raciya_9_hide_0", {d="hand_radio"}, "raciya_9_hide_1"}, + [10]= {"raciya_10_hide_0",{d="hand_radio"}, "raciya_10_hide_1"} }, + idle = { [0] = "raciya_0_idle_0", + [1] = "raciya_1_idle_0", + [2] = "raciya_2_idle_0", + [3] = "raciya_3_idle_0", + [4] = "raciya_4_idle_0", + [8] = "raciya_8_idle_0", + [9] = "raciya_9_idle_0", + [10]= "raciya_10_idle_0" }, + rnd = { [0] = {"raciya_0_talk_0"}, + [1] = {"raciya_1_talk_0"}, + [2] = {"raciya_2_talk_0"}, + [3] = {"raciya_3_talk_0"}, + [4] = {"raciya_4_talk_0"}, + [8] = {"raciya_8_talk_0"}, + [9] = {"raciya_9_talk_0"}, + [10]= {"raciya_10_talk_0"} } }, + + cr_raciya = { prop = { maxidle = 1, + sumidle = 1, + rnd = 100 }, + into = { [0] = {"cr_raciya_0_draw_0", {a="hand_radio"}, "cr_raciya_0_draw_1"}, + [1] = {"cr_raciya_1_draw_0", {a="hand_radio"}, "cr_raciya_1_draw_1"}, + [2] = {"cr_raciya_2_draw_0", {a="hand_radio"}, "cr_raciya_2_draw_1"}, + [3] = {"cr_raciya_3_draw_0", {a="hand_radio"}, "cr_raciya_3_draw_1"}, + [4] = {"cr_raciya_4_draw_0", {a="hand_radio"}, "cr_raciya_4_draw_1"}, + [8] = {"cr_raciya_8_draw_0", {a="hand_radio"}, "cr_raciya_8_draw_1"}, + [9] = {"cr_raciya_9_draw_0", {a="hand_radio"}, "cr_raciya_9_draw_1"}, + [10]= {"cr_raciya_10_draw_0",{a="hand_radio"},"cr_raciya_10_draw_1"} }, + out = { [0] = {"cr_raciya_0_hide_0", {d="hand_radio"}, "cr_raciya_0_hide_1"}, + [1] = {"cr_raciya_1_hide_0", {d="hand_radio"}, "cr_raciya_1_hide_1"}, + [2] = {"cr_raciya_2_hide_0", {d="hand_radio"}, "cr_raciya_2_hide_1"}, + [3] = {"cr_raciya_3_hide_0", {d="hand_radio"}, "cr_raciya_3_hide_1"}, + [4] = {"cr_raciya_4_hide_0", {d="hand_radio"}, "cr_raciya_4_hide_1"}, + [8] = {"cr_raciya_8_hide_0", {d="hand_radio"}, "cr_raciya_8_hide_1"}, + [9] = {"cr_raciya_9_hide_0", {d="hand_radio"}, "cr_raciya_9_hide_1"}, + [10]= {"cr_raciya_10_hide_0",{d="hand_radio"},"cr_raciya_10_hide_1"} }, + idle = { [0] = "cr_raciya_0_idle_0", + [1] = "cr_raciya_1_idle_0", + [2] = "cr_raciya_2_idle_0", + [3] = "cr_raciya_3_idle_0", + [4] = "cr_raciya_4_idle_0", + [8] = "cr_raciya_8_idle_0", + [9] = "cr_raciya_9_idle_0", + [10]= "cr_raciya_10_idle_0" }, + rnd = { [0] = {"cr_raciya_0_talk_0"}, + [1] = {"cr_raciya_1_talk_0"}, + [2] = {"cr_raciya_2_talk_0"}, + [3] = {"cr_raciya_3_talk_0"}, + [4] = {"cr_raciya_4_talk_0"}, + [8] = {"cr_raciya_8_talk_0"}, + [9] = {"cr_raciya_9_talk_0"}, + [10]= {"cr_raciya_10_talk_0"} } }, + + + + psy_armed = { prop = { maxidle = 1, + sumidle = 1, + rnd = 100 }, + into = { [0] = { "idle_0_to_psy_0_idle_0" }, + [1] = { "idle_0_to_psy_1_idle_0" } }, + out = { [0] = { "psy_0_idle_0_to_idle_0" }, + [1] = { "psy_1_idle_0_to_idle_0" } }, + idle = { [0] = "psy_0_idle_0", + [1] = "psy_1_idle_0" }, + rnd = { [0] = { "psy_0_idle_1", + "psy_0_idle_2", + "psy_0_idle_3" }, + [1] = { "psy_1_idle_1", + "psy_1_idle_2", + "psy_1_idle_3" } } }, + psy_shoot = { prop = { maxidle = 1, + sumidle = 1, + rnd = 100 }, + into = { [1] = {"psy_1_shot_0", {sh=1000}} }, + out = nil, + idle = { [1] = "psy_1_death_0" }, + rnd = nil }, + lay_on_bed = { prop = { maxidle = 1, + sumidle = 1, + rnd = 100, + moving = true }, + into = { [0] = {"cut_scene_0_actor"}}, + out = nil, + idle = nil, + rnd = nil}, + + search_corpse = {prop = { maxidle = 1, + sumidle = 1, + rnd = 100 }, + into = { [0] = { "dinamit_1", {f=xr_corpse_detection.get_all_from_corpse} }}, + out = nil, + rnd = nil, + idle = nil}, + + help_wounded = {prop = { maxidle = 1, + sumidle = 1, + rnd = 100 }, + into = { [0] = { "dinamit_1", {f=xr_help_wounded.help_wounded} }}, + out = nil, + rnd = nil, + idle = nil}, + } + +utils.copy_table(animations, state_mgr_animation_list_animpoint.add_animation_list()) +utils.copy_table(animations, state_mgr_scenario.add_animation_list()) +utils.copy_table(animations, state_mgr_pri_a15.add_animation_list()) \ No newline at end of file diff --git a/gamedata/scripts/task_functor.script b/gamedata/scripts/task_functor.script new file mode 100644 index 0000000..518b3db --- /dev/null +++ b/gamedata/scripts/task_functor.script @@ -0,0 +1,176 @@ +--'************************************************************************************* +--' Функторы тайтла и описания квеста (должны возвращать строку) +--'************************************************************************************* + +function condlist(id, field, p, cached_condlist) -- MTB-marek.siemieniuk: cached condlist + local cond_string = p + + -- MTB-marek.siemieniuk Start: cached condlist + local parsed_condlist = cached_condlist[cond_string]; + if parsed_condlist == nil then + parsed_condlist = xr_logic.parse_condlist(nil, "task", "task_condlist", cond_string) + cached_condlist[cond_string] = parsed_condlist + end + -- MTB-marek.siemieniuk End + + return xr_logic.pick_section_from_condlist(get_story_object("actor"), nil, parsed_condlist) +end + +function zat_b29_adv_title(id, field, p, cached_condlist) -- MTB-marek.siemieniuk: cached condlist + local actor = get_story_object("actor") + for i = 16, 23 do + if (has_alife_info(dialogs_zaton.zat_b29_infop_bring_table[i]) and actor:object(dialogs_zaton.zat_b29_af_table[i])) then + title = "zat_b29_simple_bring_title_"..i + break + elseif has_alife_info(dialogs_zaton.zat_b29_infop_bring_table[i]) then + title = "zat_b29_simple_find_title_"..i + break + end + end + + return title +end + +function zat_b29_adv_descr(id, field, p, cached_condlist) -- MTB-marek.siemieniuk: cached condlist + local descr + local f_af = 0 + local actor = get_story_object("actor") + + for i = 16, 23 do + if (has_alife_info(dialogs_zaton.zat_b29_infop_bring_table[i]) and actor:object(dialogs_zaton.zat_b29_af_table[i])) then + f_af = 1 + descr = "zat_b29_simple_bring_text_5" + if has_alife_info("zat_b29_stalker_rival_1_found_af") and has_alife_info("zat_b29_first_rival_taken_out") and f_af ~= 0 then + return descr + elseif has_alife_info("zat_b29_stalker_rival_2_found_af") and has_alife_info("zat_b29_second_rival_taken_out") and f_af ~= 0 then + return descr + elseif has_alife_info("zat_b29_linker_take_af_from_rival") then + descr = "zat_b29_simple_bring_text_4" + elseif has_alife_info("zat_b29_stalkers_rivals_found_af") then + descr = "zat_b29_simple_bring_text_3" + elseif has_alife_info("zat_b29_rivals_search") and has_alife_info("zat_b29_exclusive_conditions") then + descr = "zat_b29_simple_bring_text_1" + elseif has_alife_info("zat_b29_rivals_search") then + descr = "zat_b29_simple_bring_text_2" + end + break + elseif has_alife_info(dialogs_zaton.zat_b29_infop_bring_table[i]) then + descr = "zat_b29_simple_find_text_5" + if has_alife_info("zat_b29_stalker_rival_1_found_af") and has_alife_info("zat_b29_first_rival_taken_out") and f_af ~= 0 then + return descr + elseif has_alife_info("zat_b29_stalker_rival_2_found_af") and has_alife_info("zat_b29_second_rival_taken_out") and f_af ~= 0 then + return descr + elseif has_alife_info("zat_b29_linker_take_af_from_rival") then + descr = "zat_b29_simple_find_text_4" + elseif has_alife_info("zat_b29_stalkers_rivals_found_af") then + descr = "zat_b29_simple_find_text_3" + elseif has_alife_info("zat_b29_rivals_search") and has_alife_info("zat_b29_exclusive_conditions") then + descr = "zat_b29_simple_find_text_1" + elseif has_alife_info("zat_b29_rivals_search") then + descr = "zat_b29_simple_find_text_2" + end + break + end + end + + return descr +end + +function surge_task_title(id, field, p, cached_condlist) -- MTB-marek.siemieniuk: cached condlist + if(surge_manager.actor_in_cover()) then + return "hide_from_surge_name_2" + else + return "hide_from_surge_name_1" + end +end + +function surge_task_descr(id, field, p, cached_condlist) -- MTB-marek.siemieniuk: cached condlist + return surge_manager.get_task_descr() +end +--'************************************************************************************* +--' Функторы цели квеста (должны возвращать id персонажа) +--'************************************************************************************* + +function target_condlist(id, field, p, cached_condlist) -- MTB-marek.siemieniuk: cached condlist + local cond_string = p + + -- MTB-marek.siemieniuk Start: cached condlist + local parsed_condlist = cached_condlist[cond_string]; + if parsed_condlist == nil then + parsed_condlist = xr_logic.parse_condlist(nil, "task", "task_condlist", cond_string) + cached_condlist[cond_string] = parsed_condlist + end + -- MTB-marek.siemieniuk End + + local value = xr_logic.pick_section_from_condlist(get_story_object("actor"), nil, parsed_condlist) + + if value == nil then + return nil + end + + local target_obj_id = get_story_object_id(value) + + if target_obj_id == nil then + -- abort("There is no object with story_id %s", value) + end + + return target_obj_id +end + +function zat_b29_adv_target(id, field, p, cached_condlist) -- MTB-marek.siemieniuk: cached condlist + local target_obj_id = "zat_a2_stalker_barmen" + local af = nil + local actor = get_story_object("actor") + + + for i = 16, 23 do + if (has_alife_info(dialogs_zaton.zat_b29_infop_bring_table[i]) + and actor:object(dialogs_zaton.zat_b29_af_table[i])) then + af = dialogs_zaton.zat_b29_af_table[i] + break + end + end + + if (not has_alife_info("zat_b29_linker_take_af_from_rival") and has_alife_info("zat_b29_stalkers_rivals_found_af")) then + if has_alife_info("zat_b29_stalker_rival_1_found_af") then + if not has_alife_info("zat_b29_first_rival_taken_out") then + if has_alife_info("zat_b29_exclusive_conditions") then + target_obj_id = "zat_b29_stalker_rival_1" + else + target_obj_id = "zat_b29_stalker_rival_default_1" + end + elseif af == nil then + if has_alife_info("zat_b29_exclusive_conditions") then + target_obj_id = "zat_b29_stalker_rival_1" + else + target_obj_id = "zat_b29_stalker_rival_default_1" + end + end + elseif has_alife_info("zat_b29_stalker_rival_2_found_af") then + if not has_alife_info("zat_b29_second_rival_taken_out") then + if has_alife_info("zat_b29_exclusive_conditions") then + target_obj_id = "zat_b29_stalker_rival_2" + else + target_obj_id = "zat_b29_stalker_rival_default_2" + end + elseif af == nil then + if has_alife_info("zat_b29_exclusive_conditions") then + target_obj_id = "zat_b29_stalker_rival_2" + else + target_obj_id = "zat_b29_stalker_rival_default_2" + end + end + end + return get_story_object_id(target_obj_id) + end + + if af ~= nil then + return get_story_object_id(target_obj_id) + end + + return nil +end + +function surge_task_target(id, field, p, cached_condlist) -- MTB-marek.siemieniuk: cached condlist + return surge_manager.get_task_target() +end diff --git a/gamedata/scripts/task_objects.script b/gamedata/scripts/task_objects.script new file mode 100644 index 0000000..022b6d0 --- /dev/null +++ b/gamedata/scripts/task_objects.script @@ -0,0 +1,364 @@ +--'************************************************************************************* +--' Дескриптор обычного задания +--'************************************************************************************* +local guiders_by_level = { + ["zaton"]={["jupiter"]="zat_b215_stalker_guide_zaton", ["pripyat"]="zat_b215_stalker_guide_zaton"}, + ["jupiter"]={["zaton"]="zat_b215_stalker_guide_jupiter", ["pripyat"]="jup_b43_stalker_assistant"}, + ["pripyat"]={["zaton"]="jup_b43_stalker_assistant_pri", ["jupiter"]="jup_b43_stalker_assistant_pri"}, + } +function get_guider(target_level) + local ln = level.name() + if(guiders_by_level[ln] and guiders_by_level[ln][target_level]) then + return get_story_object_id(guiders_by_level[ln][target_level]) + end + return nil +end + +local valid_values = { + complete = true, + fail = true, + reversed = true +} + +--[[ +C++ class task { + const additional = 1; + const completed = 2; + const fail = 0; + const in_progress = 1; + const insignificant = 2; + const storyline = 0; + const task_dummy = 65535; +}; +]] + +local status_by_id = { + [0] = "normal", + [1] = "selected", + [2] = "completed", + [3] = "fail", + [4] = "reversed" +} + +local id_by_status = { + normal = 0, + selected = 1, + completed = 2, + fail = 3, + reversed = 4 +} + +class "CGeneralTask" +function CGeneralTask:__init(task_ini, id) + self.task_ini = task_ini + + self.id = id + + self.title = utils.cfg_get_string(task_ini, id, "title", nil, false, "", "TITLE_DOESNT_EXIST") + self.title_functor = utils.cfg_get_string(task_ini, id, "title_functor", nil, false, "", "condlist") + self.current_title = nil + + self.descr = utils.cfg_get_string(task_ini, id, "descr", nil, false, "", "DESCR_DOESNT_EXIST") + self.descr_functor = utils.cfg_get_string(task_ini, id, "descr_functor", nil, false, "", "condlist") + self.current_descr = nil + + self.target = utils.cfg_get_string(task_ini, id, "target", nil, false, "", "DESCR_DOESNT_EXIST") + self.target_functor = utils.cfg_get_string(task_ini, id, "target_functor", nil, false, "", "target_condlist") + self.current_target = nil + + self.icon = utils.cfg_get_string(task_ini, id, "icon", nil, false, "", "ui_pda2_mtask_overlay") + self.prior = utils.cfg_get_number(task_ini, id, "prior", nil, false, 0) + self.storyline = utils.cfg_get_bool(task_ini, id, "storyline", nil, false, true) + + --' Условия выполнения и провала квеста + local i = 0 + self.condlist = {} + while task_ini:line_exist(id, "condlist_"..i) do + self.condlist[i] = xr_logic.parse_condlist(nil, "task_manager", "condlist", task_ini:r_string(id, "condlist_"..i)) + i = i + 1 + end + + --' Кондлисты на статусы квеста + self.on_init = xr_logic.parse_condlist(nil, "task_manager", "condlist", utils.cfg_get_string(task_ini, id, "on_init", nil, false, "", "")) + self.on_complete = xr_logic.parse_condlist(nil, "task_manager", "condlist", utils.cfg_get_string(task_ini, id, "on_complete", nil, false, "", "")) + self.on_reversed = xr_logic.parse_condlist(nil, "task_manager", "condlist", utils.cfg_get_string(task_ini, id, "on_reversed", nil, false, "", "")) + + --' Награды за квест + self.reward_money = xr_logic.parse_condlist(nil, "task_manager", "condlist", utils.cfg_get_string(task_ini, id, "reward_money", nil, false, "", "")) + self.reward_item = xr_logic.parse_condlist(nil, "task_manager", "condlist", utils.cfg_get_string(task_ini, id, "reward_item", nil, false, "", "")) + + self.community_relation_delta_fail = utils.cfg_get_number(task_ini, id, "community_relation_delta_fail", nil, false, 0) + self.community_relation_delta_complete = utils.cfg_get_number(task_ini, id, "community_relation_delta_complete", nil, false, 0) + + --' Статус квеста, может быть: "normal", "selected", "completed", "fail", "reversed" + self.status = "normal" + + self.cached_condlist = {} -- MTB-marek.siemieniuk: cached condlist + + self.current_title = task_functor[self.title_functor](self.id, "title", self.title, self.cached_condlist) -- MTB-marek.siemieniuk: cached condlist + self.current_descr = task_functor[self.descr_functor](self.id, "descr", self.descr, self.cached_condlist) -- MTB-marek.siemieniuk: cached condlist + + local time = 0 + if self.wait_time ~= nil then + time = self.wait_time -- Тут время задано в игровых секундах + end + if(self.storyline) then + if time == 0 then + self.spot = "storyline_task_location" + else + self.spot = "storyline_task_location_complex_timer" + end + else + if time == 0 then + self.spot = "secondary_task_location" + else + self.spot = "secondary_task_location_complex_timer" + end + end + self.current_target = task_functor[self.target_functor](self.id, "target", self.target, self.cached_condlist) -- MTB-marek.siemieniuk: cached condlist + self.dont_send_update_news = utils.cfg_get_bool(task_ini, id, "dont_send_update_news", nil, false, false) +end +--' Выдача квеста +function CGeneralTask:give_task(community) + local t = CGameTask() + t:set_id(tostring(self.id)) + if(self.storyline) then + t:set_type(task.storyline) + else + t:set_type(task.additional) + end + t:set_title(self.current_title) + t:set_description(self.current_descr) + t:set_priority(self.prior) + t:set_icon_name(self.icon) + t:add_complete_func("task_manager.task_complete") + t:add_fail_func("task_manager.task_fail") + + xr_logic.pick_section_from_condlist(db.actor, db.actor, self.on_init) + + if self.current_target ~= nil then + t:set_map_location(self.spot) + t:set_map_object_id(self.current_target) + + if(self.storyline) then + level.map_add_object_spot(self.current_target, "ui_storyline_task_blink", "") + else + level.map_add_object_spot(self.current_target, "ui_secondary_task_blink", "") + end + end + local time = 0 + if self.wait_time ~= nil then + time = self.wait_time -- Тут время задано в игровых секундах + end + --' Заносим в task_info + self.status = "selected" + self.inited_time = game.get_game_time() + + db.actor:give_task(t, time*10, false, time) + self.t = t +end +--' Проверка текущего выполнения квеста +function CGeneralTask:check_task(tm) + local global_time = time_global() + local task_updated = false + if self.check_time ~= nil and + self.last_check_task ~= nil and + global_time - self.check_time <= 50 + then + --' Возвращаем результат прошлой проверки (для оптимизации) + return + end + if self.t == nil then + self.t = db.actor and db.actor:get_task(self.id, true) + return + end + + self.check_time = global_time + + local t_tile = task_functor[self.title_functor](self.id, "title", self.title, self.cached_condlist) -- MTB-marek.siemieniuk: cached condlist + if self.current_title ~= t_tile then + printf("task [%s] updated due to title change from [%s] to [%s]", tostring(self.id), tostring(self.current_title), tostring(t_tile)) + task_updated = true + self.current_title = t_tile + self.t:set_title(game.translate_string(t_tile)) + end + + local t_descr = task_functor[self.descr_functor](self.id, "descr", self.descr, self.cached_condlist) -- MTB-marek.siemieniuk: cached condlist + if self.current_descr ~= t_descr then + printf("task [%s] updated due to description change from [%s] to [%s]", tostring(self.id), tostring(self.current_descr), tostring(t_descr)) + task_updated = true + self.current_descr = t_descr + self.t:set_description(game.translate_string(t_descr)) + end + + local t_target = task_functor[self.target_functor](self.id, "target", self.target, self.cached_condlist) -- MTB-marek.siemieniuk: cached condlist + self:check_level(t_target) + if self.current_target ~= t_target then + printf("task [%s] updated due to target change from [%s] to [%s]", tostring(self.id), tostring(self.current_target), tostring(t_target)) + if self.current_target == nil then + task_updated = true + self.t:change_map_location(self.spot, t_target) + if(self.storyline) then + level.map_add_object_spot(t_target, "ui_storyline_task_blink", "") + else + level.map_add_object_spot(t_target, "ui_secondary_task_blink", "") + end + else + if t_target == nil then + self.t:remove_map_locations(false) + task_updated = true + else + if(self.storyline) then + level.map_add_object_spot(t_target, "ui_storyline_task_blink", "") + else + level.map_add_object_spot(t_target, "ui_secondary_task_blink", "") + end + self.t:change_map_location(self.spot, t_target) + task_updated = true + end + end + self.current_target = t_target + end + if task_updated and not(self.dont_send_update_news) then + news_manager.send_task(db.actor, "updated", self.t) + end + for k,v in pairs(self.condlist) do + local t = xr_logic.pick_section_from_condlist(db.actor, db.actor, v) + if t ~= nil then + --' Проверка на валидность + if valid_values[t] ~= true then + abort("Invalid task status [%s] for task [%s]", t, self.name) + end + self.last_check_task = t + return + end + end + +end + +--' Инициализация награды +function CGeneralTask:give_reward() + xr_logic.pick_section_from_condlist(db.actor, db.actor, self.on_complete) + + local money = xr_logic.pick_section_from_condlist(db.actor, db.actor, self.reward_money) + local items = xr_logic.pick_section_from_condlist(db.actor, db.actor, self.reward_item) + + -- Награду можно выдать двумя методами: от нпс или просто свалитьс неба. Если не найден НПС, с которым мы в диалоге, то просто валим с неба + + local npc = inventory_upgrades.victim + + if money ~= nil then + dialogs.relocate_money(npc, tonumber(money), "in") + end + + if items ~= nil then + local ancillary_item_table = {} + for k,v in pairs(utils.parse_names(items)) do + if ancillary_item_table[v] == nil then + ancillary_item_table[v] = 1 + else + ancillary_item_table[v] = ancillary_item_table[v] + 1 + end + end + for k,v in pairs(ancillary_item_table) do + dialogs.relocate_item_section(npc, k, "in", v) + end + end + +end +function CGeneralTask:reverse_task() + self.last_check_task = "reversed" +end +--' Деактивация квеста +function CGeneralTask:deactivate_task(task) + printf("deactivate task %s", self.id) + + self.check_time = nil + if self.last_check_task == "fail" then + news_manager.send_task(db.actor, "fail", task) + elseif self.last_check_task == "reversed" then + xr_logic.pick_section_from_condlist(db.actor, db.actor, self.on_reversed) + news_manager.send_task(db.actor, "reversed", task) + end + self.last_check_task = nil + + self.status = "normal" +end +function CGeneralTask:check_level(target) + if not(db.actor:is_active_task(self.t)) or not(target) then + return + end + if not(level) then + return + end + local s_obj = alife():object(target) + if(s_obj) then + local target_level = alife():level_name(game_graph():vertex(s_obj.m_game_vertex_id):level_id()) + local level_name = level.name() + if(level_name~=target_level) then + local guider_id = get_guider(target_level) + if not(guider_id) then + return + end + local guider_spot = "" + local guider_spot2 = "" + if(self.storyline) then + guider_spot = "storyline_task_on_guider" + guider_spot2 = "secondary_task_on_guider" + else + guider_spot = "secondary_task_on_guider" + guider_spot2 = "storyline_task_on_guider" + end + if(level.map_has_object_spot(guider_id, guider_spot2)~=0) then + level.map_remove_object_spot(guider_id, guider_spot2) + end + if(guider_id and level.map_has_object_spot(guider_id, guider_spot)==0) then + level.map_add_object_spot(guider_id, guider_spot, "") + end + else + self:remove_guider_spot() + end + end +end +function CGeneralTask:remove_guider_spot(target) + if not(guiders_by_level[level.name()]) then + return + end + for k,v in pairs(guiders_by_level[level.name()]) do + local guider_id = get_story_object_id(v) + if(guider_id) then + if(level.map_has_object_spot(guider_id, "storyline_task_on_guider")~=0) then + level.map_remove_object_spot(guider_id, "storyline_task_on_guider") + end + if(level.map_has_object_spot(guider_id, "secondary_task_on_guider")~=0) then + level.map_remove_object_spot(guider_id, "secondary_task_on_guider") + end + end + end +end +-- Save quest +function CGeneralTask:save(packet) + set_save_marker(packet, "save", false, "CGeneralTask") + packet:w_u8(id_by_status[self.status]) + utils.w_CTime(packet, self.inited_time) + packet:w_stringZ(self.current_title) + packet:w_stringZ(self.current_descr) + packet:w_stringZ(tostring(self.current_target)) + set_save_marker(packet, "save", true, "CGeneralTask") +end +-- Load quest +function CGeneralTask:load(packet) + set_save_marker(packet, "load", false, "CGeneralTask") + self.status = status_by_id[packet:r_u8()] + self.inited_time = utils.r_CTime(packet) + self.current_title = packet:r_stringZ() + self.current_descr = packet:r_stringZ() + self.current_target = packet:r_stringZ() + if self.current_target == "nil" then + self.current_target = nil + else + self.current_target = tonumber(self.current_target) + end + + set_save_marker(packet, "load", true, "CGeneralTask") +end diff --git a/gamedata/scripts/ui_load_dialog.script b/gamedata/scripts/ui_load_dialog.script new file mode 100644 index 0000000..ced0608 --- /dev/null +++ b/gamedata/scripts/ui_load_dialog.script @@ -0,0 +1,365 @@ +saved_game_extension = save_extension() +saved_game_extension_ex = alife_storage_manager.saved_game_extension_ex + +class "load_item" (CUIListBoxItem) + +function load_item:__init(height) super(height) + printf("%f",height) + self.file_name = "filename" + + self:SetTextColor(GetARGB(255, 170, 170, 170)) + + self.fn = self:GetTextItem() + self.fn:SetFont(GetFontLetterica18Russian()) + self.fn:SetEllipsis(true) +end + +function load_item:__finalize() +end + +class "load_dialog" (CUIScriptWnd) + +function load_dialog:__init() super() + self:InitControls() + self:InitCallBacks() +end + +function load_dialog:__finalize() +end + +function load_dialog:FillList() + self.list_box:RemoveAll() + local f = getFS() + local flist = f:file_list_open_ex("$game_saves$",bit_or(FS.FS_ListFiles,FS.FS_RootOnly),"*"..saved_game_extension) + local f_cnt = flist:Size() + + flist:Sort(FS.FS_sort_by_modif_down) + + for it=0, f_cnt-1 do + local file = flist:GetAt(it) + local file_name = string.sub(file:NameFull(), 0, (string.len(file:NameFull()) - string.len(saved_game_extension))) + local date_time = "[" .. file:ModifDigitOnly() .. "]" + --menu_item = .. + self:AddItemToList(file_name, date_time) + end +end + +function load_dialog:InitControls() + self:SetWndRect (Frect():set(0,0,1024,768)) + + local xml = CScriptXmlInit() + local ctrl + xml:ParseFile ("ui_mm_load_dlg.xml") + + xml:InitStatic ("background",self) + + ctrl = CUIWindow() + xml:InitWindow ("file_item:main",0,ctrl) + + self.file_item_main_sz = vector2():set(ctrl:GetWidth(),ctrl:GetHeight()) + + xml:InitWindow ("file_item:fn",0,ctrl) + self.file_item_fn_sz = vector2():set(ctrl:GetWidth(),ctrl:GetHeight()) + + xml:InitWindow ("file_item:fd",0,ctrl) + self.file_item_fd_sz = vector2():set(ctrl:GetWidth(),ctrl:GetHeight()) + + self.form = xml:InitStatic("form",self) + + xml:InitStatic ("form:caption",self.form) + + self.picture = xml:InitStatic("form:picture",self.form) + +-- xml:InitStatic ("form:file_info",self.form) + + self.file_caption = xml:InitTextWnd("form:file_caption",self.form) + self.file_data = xml:InitTextWnd("form:file_data",self.form) + + xml:InitFrame ("form:list_frame",self.form) + + self.list_box = xml:InitListBox("form:list",self.form) + + self.list_box:ShowSelectedItem (true) + self:Register (self.list_box, "list_window") + + ctrl = xml:Init3tButton("form:btn_load", self.form) + self:Register (ctrl, "button_load") + + ctrl = xml:Init3tButton ("form:btn_delete", self.form) + self:Register (ctrl, "button_del") + + ctrl = xml:Init3tButton ("form:btn_cancel", self.form) + self:Register (ctrl, "button_back") + + self.message_box = CUIMessageBoxEx() + self:Register (self.message_box,"message_box") +end + +function load_dialog:InitCallBacks() + self:AddCallback("button_load", ui_events.BUTTON_CLICKED, self.OnButton_load_clicked, self) + self:AddCallback("button_back", ui_events.BUTTON_CLICKED, self.OnButton_back_clicked, self) + self:AddCallback("button_del", ui_events.BUTTON_CLICKED, self.OnButton_del_clicked, self) + self:AddCallback("message_box", ui_events.MESSAGE_BOX_YES_CLICKED, self.OnMsgYes, self) + self:AddCallback("message_box", ui_events.MESSAGE_BOX_OK_CLICKED, self.OnMsgYes, self) + + self:AddCallback("list_window", ui_events.LIST_ITEM_CLICKED, self.OnListItemClicked, self) + self:AddCallback("list_window", ui_events.WINDOW_LBUTTON_DB_CLICK, self.OnListItemDbClicked, self) + + +end + +function file_exist(fname) + local f = getFS(); + local flist = f:file_list_open_ex("$game_saves$",bit_or(FS.FS_ListFiles,FS.FS_RootOnly) , fname) + local f_cnt = flist:Size() + + if f_cnt > 0 then + return true + else + return false + end +end + +function delete_save_game(filename) + + local save_file = filename .. saved_game_extension + local dds_file = filename .. ".dds" + + local f = getFS() + + f:file_delete("$game_saves$", save_file) + + -- START IX-Ray + if (file_exist(filename..saved_game_extension_ex)) then + f:file_delete("$game_saves$",filename..saved_game_extension_ex) + end + -- END IX-Ray + + if file_exist(dds_file) then + f:file_delete("$game_saves$", dds_file) + end + +end + +function AddTimeDigit(str, dig) + if (dig > 9) then + str = str .. dig + else + str = str .. "0" .. dig + end + + return str + +end + +function file_data(fname) + local f = getFS(); + local flist = f:file_list_open_ex("$game_saves$",bit_or(FS.FS_ListFiles,FS.FS_RootOnly) , fname .. saved_game_extension) + local f_cnt = flist:Size() + + if f_cnt > 0 then + local file = flist:GetAt(0) + local sg = CSavedGameWrapper(fname) + + local y,m,d,h,min,sec,ms = 0,0,0,0,0,0,0 + y,m,d,h,min,sec,ms = sg:game_time():get(y,m,d,h,min,sec,ms) + + + local date_time = "" + + date_time = AddTimeDigit(date_time, h) + date_time = date_time .. ":" + date_time = AddTimeDigit(date_time, min) + date_time = date_time .. " " + date_time = AddTimeDigit(date_time, m) + date_time = date_time .. "/" + date_time = AddTimeDigit(date_time, d) + date_time = date_time .. "/" + + date_time = date_time .. y + + + --string.format("[%d/%d/%d %d]",m,d,h,min,y) + local health = string.format("\\n%s %d%s", game.translate_string("st_ui_health_sensor"),sg:actor_health()*100,"%") + + return game.translate_string("st_level") .. ": " .. game.translate_string(sg:level_name()) .. "\\n" .. game.translate_string("ui_inv_time")..": " .. date_time .. health + else + return "no file data" + end +end + +function load_dialog:OnListItemClicked() + if self.list_box:GetSize()==0 then return end + + local item = self.list_box:GetSelectedItem() + + if item == nil then + self.file_caption:SetText ("") + self.file_data:SetText ("") + + local r = self.picture:GetTextureRect() + self.picture:InitTexture ("ui\\ui_noise") + self.picture:SetTextureRect(Frect():set(r.x1,r.y1,r.x2,r.y2)) + + return + end + local item_text = item.fn:GetText() + self.file_caption:SetText (item_text) + self.file_caption:SetEllipsis(true) + self.file_data:SetText (file_data(item_text)) + + if file_exist(item_text .. saved_game_extension) ~= true then + self.list_box:RemoveItem(item) + return + end + + local r = self.picture:GetTextureRect() + if file_exist(item_text .. ".dds") then + self.picture:InitTexture(item_text) + else + self.picture:InitTexture("ui\\ui_noise") + end +-- self.picture:SetTextureRect(Frect():set(r.x1,r.y1,r.x2,r.y2)) +end + +function load_dialog:OnListItemDbClicked() + self:OnButton_load_clicked() +end + +function load_dialog:OnMsgYes() + local index = self.list_box:GetSelectedIndex() + + if index == -1 then return end + + if self.msgbox_id == 1 then + local item = self.list_box:GetItemByIndex(index) + + local fname = item.fn:GetText() + + delete_save_game (fname) + + self.list_box:RemoveItem(item) + + self:OnListItemClicked() + elseif self.msgbox_id == 2 then + self:load_game_internal() + end + + self.msgbox_id = 0 +end + +function load_dialog:load_game_internal() + local console = get_console() + + if self.list_box:GetSize()==0 then return end + + local index = self.list_box:GetSelectedIndex() + + if index == -1 then return end + + local item = self.list_box:GetItemByIndex(index) + + local fname = item.fn:GetText() + + if (alife() == nil) then + console:execute ("disconnect") + console:execute ("start server(" .. fname .. "/single/alife/load) client(localhost)") + else + console:execute ("load " .. fname) + end +end + +function load_dialog:OnButton_load_clicked() + local console = get_console() + + if self.list_box:GetSize()==0 then + return + end + + local item = self.list_box:GetSelectedItem() + if item == nil then + return + end + + local fname = item.fn:GetText() + + if ( not valid_saved_game(fname) ) then + self.msgbox_id = 0 + self.message_box:InitMessageBox ("message_box_invalid_saved_game") + self.message_box:ShowDialog(true) + return + end + + if (alife() == nil) then + self:load_game_internal () + return + end + + if ( (db.actor ~= nil) and (db.actor:alive() == false) ) then + self:load_game_internal () + return + end + + self.msgbox_id = 2 + self.message_box:InitMessageBox ("message_box_confirm_load_save") + self.message_box:ShowDialog(true) +end + +function load_dialog:OnButton_back_clicked() + self.owner:ShowDialog(true) + self:HideDialog() + self.owner:Show (true) +end + +function load_dialog:OnButton_del_clicked() + if self.list_box:GetSize()==0 then return end + local index = self.list_box:GetSelectedIndex() + local item = self.list_box:GetItemByIndex(index) -- Suhar_ + + if index == -1 or item==nil then -- Suhar_ + return + end + + self.msgbox_id = 1 + + self.message_box:InitMessageBox("message_box_delete_file_name") + self.message_box:ShowDialog(true) + +end + +function load_dialog:OnKeyboard(dik, keyboard_action) --virtual function + CUIScriptWnd.OnKeyboard(self,dik,keyboard_action) + local bind = dik_to_bind(dik) + if bind == key_bindings.kQUIT then + self:OnButton_back_clicked() + else + + DIK_RETURN = 40 -- IX-Ray: Fixed DIK_RETURN + + if dik == DIK_RETURN and keyboard_action == ui_events.WINDOW_KEY_PRESSED then + self:OnButton_load_clicked() + end + end + return true +end + +function load_dialog:AddItemToList(file_name, date_time) + + local _itm = load_item(self.file_item_main_sz.y) + + _itm:SetWndSize (self.file_item_main_sz) + + _itm.fn:SetWndPos (vector2():set(0,0)) + _itm.fn:SetWndSize (self.file_item_fn_sz) + _itm.fn:SetText (file_name) + + _itm.fage = _itm:AddTextField(date_time, self.file_item_fd_sz.x) + _itm.fage:SetFont (GetFontLetterica16Russian()) + _itm.fage:SetWndPos (vector2():set(self.file_item_fn_sz.x+4, 0)) + _itm.fage:SetWndSize(self.file_item_fd_sz) + + self.list_box:AddExistingItem(_itm) +end + + + diff --git a/gamedata/scripts/ui_main_menu.script b/gamedata/scripts/ui_main_menu.script new file mode 100644 index 0000000..4d81775 --- /dev/null +++ b/gamedata/scripts/ui_main_menu.script @@ -0,0 +1,381 @@ +-- File: UI_MAIN_MENU.SCRIPT +-- Description: Load Dialog for STALKER +-- Created: 28.10.2004 +-- Lasd edit: 18.01.2006 +-- Copyright: 2004 GSC Game World +-- Author: Serhiy Vynnychenko (narrator@gsc-game.kiev.ua) +-- Version: 0.9 + +class "main_menu" (CUIScriptWnd) + +function main_menu:__init() super() + self.mbox_mode = 0 + self:InitControls() + self:InitCallBacks() + xr_s.on_main_menu_on() --' Distemper 03.2008 -- +end + +function main_menu:__finalize() +end + +function main_menu:InitControls() + self:SetWndRect (Frect():set(0,0,1024,768)) + + local xml = CScriptXmlInit() + xml:ParseFile ("ui_mm_main.xml") + + xml:InitStatic ("background", self) + self.shniaga = xml:InitMMShniaga("shniaga_wnd",self); + + self.message_box = CUIMessageBoxEx() + self:Register (self.message_box, "msg_box") + + local _ver = xml:InitStatic ("static_version",self) + local mm = _G.main_menu.get_main_menu() + _ver:TextControl():SetText ("ver. " .. mm:GetGSVer()) + + -- IX-Ray start + local btn + if xml:NodeExist("english_lang", 0) then + btn = xml:Init3tButton("english_lang", self) + self:Register(btn, "english_lang") + end + + if xml:NodeExist("russian_lang", 0) then + btn = xml:Init3tButton("russian_lang", self) + self:Register(btn, "russian_lang") + end + -- IX-Ray end +end + +function main_menu:Show(f) + self.shniaga:SetVisibleMagnifier(f) +end + + +function main_menu:InitCallBacks() + -- new game + self:AddCallback("btn_novice", ui_events.BUTTON_CLICKED, self.OnButton_new_novice_game, self) + self:AddCallback("btn_stalker", ui_events.BUTTON_CLICKED, self.OnButton_new_stalker_game, self) + self:AddCallback("btn_veteran", ui_events.BUTTON_CLICKED, self.OnButton_new_veteran_game, self) + self:AddCallback("btn_master", ui_events.BUTTON_CLICKED, self.OnButton_new_master_game, self) + self:AddCallback("btn_spawn", ui_events.BUTTON_CLICKED, self.OnButton_load_spawn, self) + -- options + self:AddCallback("btn_options", ui_events.BUTTON_CLICKED, self.OnButton_options_clicked, self) + -- load + self:AddCallback("btn_load", ui_events.BUTTON_CLICKED, self.OnButton_load_clicked, self) + -- save + self:AddCallback("btn_save", ui_events.BUTTON_CLICKED, self.OnButton_save_clicked, self) + + -- multiplayer + if (IsSupportMP()) then -- IX-Ray: Optional multiplayer check + self:AddCallback("btn_net_game", ui_events.BUTTON_CLICKED, self.OnButton_network_game_clicked, self) + self:AddCallback("btn_internet", ui_events.BUTTON_CLICKED, self.OnButton_internet_clicked, self) + self:AddCallback("btn_localnet", ui_events.BUTTON_CLICKED, self.OnButton_localnet_clicked, self) + self:AddCallback("btn_multiplayer", ui_events.BUTTON_CLICKED, self.OnButton_multiplayer_clicked, self) + end + + self:AddCallback("btn_logout", ui_events.BUTTON_CLICKED, self.OnButton_logout_clicked, self) + + -- quit + self:AddCallback("btn_quit", ui_events.BUTTON_CLICKED, self.OnButton_quit_clicked, self) + self:AddCallback("btn_quit_to_mm", ui_events.BUTTON_CLICKED, self.OnButton_disconnect_clicked, self) + self:AddCallback("btn_ret", ui_events.BUTTON_CLICKED, self.OnButton_return_game, self) + self:AddCallback("btn_lastsave", ui_events.BUTTON_CLICKED, self.OnButton_last_save, self) + self:AddCallback("btn_credits", ui_events.BUTTON_CLICKED, self.OnButton_credits_clicked, self) + + -- IX-Ray start + self:AddCallback("english_lang", ui_events.BUTTON_CLICKED, self.OnBtnEnglish, self) + self:AddCallback("russian_lang", ui_events.BUTTON_CLICKED, self.OnBtnRussian, self) + -- IX-Ray end + + -- message box + self:AddCallback("msg_box", ui_events.MESSAGE_BOX_OK_CLICKED, self.OnMsgOk, self) + self:AddCallback("msg_box", ui_events.MESSAGE_BOX_CANCEL_CLICKED, self.OnMsgCancel, self) + self:AddCallback("msg_box", ui_events.MESSAGE_BOX_YES_CLICKED, self.OnMsgYes, self) + self:AddCallback("msg_box", ui_events.MESSAGE_BOX_NO_CLICKED, self.OnMsgNo, self) + self:AddCallback("msg_box", ui_events.MESSAGE_BOX_QUIT_GAME_CLICKED,self.OnMessageQuitGame, self) + self:AddCallback("msg_box", ui_events.MESSAGE_BOX_QUIT_WIN_CLICKED, self.OnMessageQuitWin, self) + + self:Register(self, "self") + self:AddCallback("self", ui_events.MAIN_MENU_RELOADED, self.OnMenuReloaded, self) +end +function main_menu:OnMsgOk() + self.mbox_mode = 0 +end + +function main_menu:OnMsgCancel() + self.mbox_mode = 0 +end + +function main_menu:OnMsgYes() + + if self.mbox_mode == 1 then + self:LoadLastSave() + end + + self.mbox_mode = 0 +end + +function main_menu:OnMsgNo() + self.mbox_mode = 0 +end + +function main_menu:LoadLastSave() + local console = get_console() + console:execute ("main_menu off") + console:execute ("load_last_save") +end + +function main_menu:OnButton_last_save() + if ( alife() == nil) then + self:LoadLastSave () + return + end + + if ( (db.actor ~= nil) and (db.actor:alive() == false) ) then + self:LoadLastSave () + return + end + + self.mbox_mode = 1 + self.message_box:InitMessageBox ("message_box_confirm_load_save") + self.message_box:ShowDialog(true) +end + +function main_menu:OnButton_credits_clicked() +-- local console = get_console() +-- console:execute("main_menu off") + game.start_tutorial("credits_seq") +end + +function main_menu:OnButton_quit_clicked() + self.message_box:InitMessageBox("message_box_quit_windows") + self.message_box:ShowDialog(true) +end + + +function main_menu:OnButton_disconnect_clicked() + self.message_box:InitMessageBox("message_box_quit_game") + + if (level.game_id() ~= 1) then + self.message_box:SetText("ui_mm_disconnect_message") -- MultiPlayer + else + self.message_box:SetText("ui_mm_quit_game_message") -- SinglePlayer + end + self.message_box:ShowDialog(true) +end + +function main_menu:OnMessageQuitGame() + local console = get_console() + console:execute("disconnect") +end + +function main_menu:OnMessageQuitWin() + local console = get_console() + console:execute("quit") +end + +function main_menu:OnButton_return_game() + local console = get_console() + console:execute("main_menu off") + xr_s.on_main_menu_off() --' Distemper 03.2008 -- +end + +function main_menu:OnButton_new_novice_game() + local console = get_console() + console:execute("g_game_difficulty gd_novice") + self:StartGame() +end + +function main_menu:OnButton_new_stalker_game() + local console = get_console() + console:execute("g_game_difficulty gd_stalker") + self:StartGame() +end + +function main_menu:OnButton_new_veteran_game() + local console = get_console() + console:execute("g_game_difficulty gd_veteran") + self:StartGame() +end + +function main_menu:OnButton_new_master_game() + local console = get_console() + console:execute("g_game_difficulty gd_master") + self:StartGame() +end + +function main_menu:StartGame() + local console = get_console() + + if (alife() ~= nil) then + console:execute ("disconnect") + end + device():pause(false) + console:execute("start server(all/single/alife/new) client(localhost)") + console:execute("main_menu off") +end + +function main_menu:OnButton_load_spawn() + if self.spawn_dlg == nil then + self.spawn_dlg = ui_spawn_dialog.spawn_dialog() + self.spawn_dlg.owner = self + end + + self.spawn_dlg:ShowDialog(true) + self:HideDialog() + self:Show(false) +end + +function main_menu:OnButton_save_clicked() + if self.save_dlg == nil then + self.save_dlg = ui_save_dialog.save_dialog() + self.save_dlg.owner = self + end + + self.save_dlg:FillList() + self.save_dlg:ShowDialog(true) + self:HideDialog() + self:Show(false) +end + +function main_menu:OnButton_options_clicked() + if self.opt_dlg == nil then + self.opt_dlg = ui_mm_opt_main.options_dialog() + self.opt_dlg.owner = self + end + + self.opt_dlg:SetCurrentValues() + self.opt_dlg:ShowDialog(true) + self:HideDialog() + self:Show(false) +end + +-- IX-Ray start +function main_menu:OnBtnEnglish() + local console = get_console() + console:execute("language eng") +end + +function main_menu:OnBtnRussian() + local console = get_console() + console:execute("language rus") +end +-- IX-Ray end + +function main_menu:OnButton_load_clicked() + if self.load_dlg ==nil then + self.load_dlg = ui_load_dialog.load_dialog() + self.load_dlg.owner = self + end + + self.load_dlg:FillList() + self.load_dlg:ShowDialog(true) + self:HideDialog() + self:Show(false) +end + +function main_menu:OnButton_network_game_clicked() + self.shniaga:ShowPage(CUIMMShniaga.epi_new_network_game) +end + +function main_menu:OnButton_multiplayer_clicked() + -- assert(self.gs_profile) + + if not(self.mp_dlg) then + self.mp_dlg = ui_mp_main.mp_main() + self.mp_dlg.owner = self + self.mp_dlg:OnRadio_NetChanged() + end + self.mp_dlg:UpdateControls() + self.mp_dlg:ShowDialog(true) + + self:HideDialog() + self:Show(false) + + local console = get_console() + console:execute ("check_for_updates 0") +end + +function main_menu:OnButton_logout_clicked() + -- assert(self.gs_profile) + self.shniaga:ShowPage(CUIMMShniaga.epi_new_network_game) --fake + self.l_mgr:logout() + self.gs_profile = nil + self.mp_dlg = nil + self.shniaga:SetPage(CUIMMShniaga.epi_main, "ui_mm_main.xml", "menu_main") + self.shniaga:ShowPage(CUIMMShniaga.epi_main) +end + +function main_menu:OnButton_internet_clicked() + if not(self.gs_dlg) then + self.gs_dlg = ui_mm_mp_gamespy.gamespy_page() + self.gs_dlg.owner = self + end + self.gs_dlg:ShowLoginPage() + self.gs_dlg:ShowDialog(true) + + self:HideDialog() + self:Show(false) + + local console = get_console() + console:execute ("check_for_updates 0") +end + +function main_menu:OnButton_localnet_clicked() + if not(self.ln_dlg) then + self.ln_dlg = ui_mm_mp_localnet.localnet_page() + self.ln_dlg.owner = self + self.ln_dlg.lp_nickname:SetText(self.l_mgr:get_nick_from_registry()) + self.ln_dlg.lp_check_remember_me:SetCheck(self.l_mgr:get_remember_me_from_registry()) + end + self.ln_dlg:ShowDialog(true) + + self:HideDialog() + self:Show(false) + + local console = get_console() + console:execute ("check_for_updates 0") +end + +function main_menu:Dispatch(cmd, param) --virtual function + if cmd == 2 then + self:OnButton_multiplayer_clicked() + end + return true +end + +function main_menu:OnKeyboard(dik, keyboard_action) --virtual function + CUIScriptWnd.OnKeyboard(self,dik,keyboard_action) + local bind = dik_to_bind(dik) + local console = get_console() + + if keyboard_action == ui_events.WINDOW_KEY_PRESSED then + if dik == DIK_keys.DIK_ESCAPE then + if level.present() and + ( ((db.actor ~= nil)and(db.actor:alive())) or + (false==IsGameTypeSingle()) + ) then + self.OnButton_return_game() --' xStream 02.2008 + -- console:execute("main_menu off") --' xStream 02.2008 + end + end + +-- if dik == DIK_keys.DIK_S then +-- self:OnButton_load_spawn() + +-- else + if dik == DIK_keys.DIK_Q then + self:OnMessageQuitWin() + end + + end + + return true +end + +function main_menu:OnMenuReloaded() + self:OnButton_options_clicked() + self.opt_dlg:OnMenuReloaded() +end \ No newline at end of file diff --git a/gamedata/scripts/ui_mm_mp_join.script b/gamedata/scripts/ui_mm_mp_join.script new file mode 100644 index 0000000..a50b139 --- /dev/null +++ b/gamedata/scripts/ui_mm_mp_join.script @@ -0,0 +1,85 @@ +-- file: UI_MM_MP_JOIN.SCRIPT +-- description: join tab in mm_mp +-- created: 16.05.2005 +-- author: Serge Vynnychenko +-- mail: narrator@gsc-game.kiev.ua +-- +-- Copyright 2005 GSC Game World + + +class "mp_join" (CUIWindow) + +function mp_join:__init() super() +end + +function mp_join:__finalize() +end + +function mp_join:InitControls(x, y, xml, handler) + self:SetAutoDelete (true) + + xml:InitWindow ("tab_client:main", 0, self) +-- self.bk = xml:InitFrame ("frame", self) +-- xml:InitFrameLine ("tab_client:vert_separator",self) + + handler.server_list = xml:InitServerList("tab_client:server_list", self) + +-- xml:InitStatic("tab_client:cap_network_connection", self) + xml:InitStatic("tab_client:cap_server_list", self) + xml:InitStatic("tab_client:cap_filters",self) + +-- xml:InitStatic("tab_client:rust_00",self) +-- xml:InitStatic("tab_client:rust_01",self) + + + local radio = xml:InitTab("tab_client:radio_tab_network_connection", self) + handler:Register(radio, "radio_net_conn") + handler.radio_net_connection = radio + radio:SetActiveTab("internet") + + local btn = xml:Init3tButton("tab_client:btn_direct_ip", self) + handler:Register(btn, "btn_direct_ip") + handler.btn_direct_ip = btn + handler.filters = {} + + local btn = xml:InitCheck("tab_client:check_empty", self) + handler:Register(btn, "check_empty") + handler.filters.btn_check_empty = btn + btn:SetCheck(true) + + btn = xml:InitCheck("tab_client:check_full", self) + handler:Register(btn, "check_full") + handler.filters.btn_check_full = btn + btn:SetCheck(true) + + btn = xml:InitCheck("tab_client:check_with_pass", self) + handler:Register(btn, "check_with_pass") + handler.filters.btn_check_with_pass = btn + btn:SetCheck(true) + + btn = xml:InitCheck("tab_client:check_without_pass", self) + handler:Register(btn, "check_without_pass") + handler.filters.btn_check_without_pass = btn + btn:SetCheck(true) + + btn = xml:InitCheck("tab_client:check_without_ff", self) + handler:Register(btn, "check_without_ff") + handler.filters.btn_check_without_ff = btn + btn:SetCheck(true) + + btn = xml:InitCheck("tab_client:check_listen_servers", self) + handler:Register(btn, "check_listen_servers") + handler.filters.btn_check_listen_servers = btn + btn:SetCheck(true) + + btn = xml:Init3tButton("tab_client:btn_refresh", self) + handler:Register(btn, "btn_refresh") + + btn = xml:Init3tButton("tab_client:btn_quick_refresh", self) + handler:Register(btn,"btn_quick_refresh") + + + btn = xml:Init3tButton("tab_client:btn_server_info", self) + handler:Register(btn, "btn_server_info") + +end diff --git a/gamedata/scripts/ui_mm_mp_options.script b/gamedata/scripts/ui_mm_mp_options.script new file mode 100644 index 0000000..43f6bfa --- /dev/null +++ b/gamedata/scripts/ui_mm_mp_options.script @@ -0,0 +1,199 @@ +-- file: UI_MM_MP_CREATE.SCRIPT +-- + + +class "mp_options" (CUIWindow) + +function mp_options:__init() super() +end + +function mp_options:__finalize() +end + +function mp_options:InitControls(x, y, xml, handler) + + self:SetAutoDelete (true) + xml:InitWindow ("tab_options:main", 0, self) + +-- self.bk = xml:InitFrame("frame", self) + xml:InitFrame("tab_options:frame_1", self) + xml:InitFrame("tab_options:frame_2", self) + xml:InitFrame("tab_options:frame_3", self) + +-- xml:InitFrameLine("tab_options:vert_separator", self) +-- xml:InitFrameLine("tab_options:vert_separator_2", self) + xml:InitFrameLine("tab_options:cap_network_connection", self) + xml:InitFrameLine("tab_options:cap_respawn_options", self) + xml:InitFrameLine("tab_options:cap_server_list", self) + xml:InitFrameLine("tab_options:cap_weather_options", self) + xml:InitFrameLine("tab_options:cap_spectator_options", self) + xml:InitFrameLine("tab_options:cap_demosave_options", self) + xml:InitStatic("tab_options:cap_damage_block", self) + xml:InitStatic("tab_options:cap_artreturn_time", self) + + xml:InitStatic("tab_options:cap_friendly_fire", self) + xml:InitStatic("tab_options:cap_frag_limit", self) + xml:InitStatic("tab_options:cap_time_limit", self) + xml:InitStatic("tab_options:cap_artefact_stay", self) + xml:InitStatic("tab_options:cap_artefact_num", self) + xml:InitStatic("tab_options:cap_anomaly_time", self) + xml:InitStatic("tab_options:cap_warm_up_time", self) + xml:InitStatic("tab_options:cap_artefact_delay", self) + xml:InitStatic("tab_options:cap_starting_weather", self) + xml:InitStatic("tab_options:cap_rate_of_change", self) + xml:InitStatic("tab_options:cap_max_ping", self) + +-- xml:InitStatic("tab_options:public_server_t", self) + + handler.check_public_server = xml:InitCheck("tab_options:check_public_server", self) + handler.check_spectator = xml:InitCheck("tab_options:check_spectator", self) + handler.check_allow_voting = xml:InitCheck("tab_options:check_allow_voting", self) + handler.spin_max_ping = xml:InitSpinNum("tab_options:spin_max_ping", self) + + + handler.check_damage_block = xml:InitCheck("tab_options:check_damage_block", self) + handler.check_auto_team_balance = xml:InitCheck("tab_options:check_auto_team_balance", self) + handler.check_auto_team_swap = xml:InitCheck("tab_options:check_auto_team_swap", self) + handler.check_friendly_indicators = xml:InitCheck("tab_options:check_friendly_indicators", self) + handler.check_friendly_names = xml:InitCheck("tab_options:check_friendly_names", self) + handler.check_no_anmalies = xml:InitCheck("tab_options:check_no_anmalies", self) + + handler.check_spec_teamonly = xml:InitCheck("tab_options:check_spec_teamonly", self) + handler.check_spec_freefly = xml:InitCheck("tab_options:check_spec_freefly", self) + handler.check_spec_firsteye = xml:InitCheck("tab_options:check_spec_firsteye", self) + handler.check_spec_lookat = xml:InitCheck("tab_options:check_spec_lookat", self) + handler.check_spec_freelook = xml:InitCheck("tab_options:check_spec_freelook", self) + + handler.check_demosave = xml:InitCheck("tab_options:check_demosave", self) + handler:Register (handler.check_demosave, "check_demosave") + + handler.tab_respawn = xml:InitTab("tab_options:radio_tab_respawn_options", self) + -- spin boxes + handler.spin_friendly_fire = xml:InitSpinFlt("tab_options:spin_friendly_fire", self) + handler.spin_artefacts_num = xml:InitSpinNum("tab_options:spin_artefacts_num", self) + handler.spin_spectator = xml:InitSpinNum("tab_options:spin_spectator", self) + handler.spin_force_respawn = xml:InitSpinNum("tab_options:spin_force_respawn", self) + handler.spin_reinforcement = xml:InitSpinNum("tab_options:spin_reinforcement", self) + + handler.spin_damage_block = xml:InitSpinNum("tab_options:spin_damage_block", self) + handler.spin_artreturn_time = xml:InitSpinNum("tab_options:spin_artreturn_time", self) + handler.check_activated_return = xml:InitCheck("tab_options:check_activated_return", self) + handler.spin_frag_limit = xml:InitSpinNum("tab_options:spin_frag_limit", self) + handler.spin_time_limit = xml:InitSpinNum("tab_options:spin_time_limit", self) + handler.spin_artefact_stay = xml:InitSpinNum("tab_options:spin_artefact_stay", self) + handler.spin_artefact_delay = xml:InitSpinNum("tab_options:spin_artefact_delay", self) + handler.spin_anomaly_time = xml:InitSpinNum("tab_options:spin_anomaly_time", self) + handler.spin_warm_up_time = xml:InitSpinNum("tab_options:spin_warm_up_time", self) + + handler.check_pda_hunt = xml:InitCheck("tab_options:check_pda_hunt", self) + + handler.spin_rate_of_change = xml:InitSpinFlt("tab_options:spin_rate_of_change", self) + + handler.spin_weather = xml:InitComboBox("tab_options:spin_weather", self) + + handler.check_spectator:SetDependControl(handler.spin_spectator) + +-- handler.check_public_server:SetDependControl(handler.check_verify_cdkey) + +--[[if (self.online) then +-- handler.check_public_server:SetCheck(true) + else +-- handler.check_public_server:SetCheck(false) + end]] + + +end + +function mp_options:SetGameMode(mode, handler) + handler.spin_friendly_fire:Enable(true) + handler.check_auto_team_balance:Enable(true) + handler.check_auto_team_swap:Enable(true) + handler.spin_artefacts_num:Enable(true) + handler.spin_artefact_delay:Enable(true) + handler.spin_artefact_stay:Enable(true) + handler.check_friendly_indicators:Enable(true) + handler.check_friendly_names:Enable(true) + handler.spin_reinforcement:Enable(true) + handler.spin_frag_limit:Enable(true) + handler.check_spec_teamonly:Enable(true) + + handler.spin_artreturn_time:Enable(true); + handler.check_activated_return:Enable(true) + + + local btn_reinforcement = handler.tab_respawn:GetButtonById("reinforcement") + local btn_artefactcapture = handler.tab_respawn:GetButtonById("artefactcapture") + btn_reinforcement:Enable (true) + btn_artefactcapture:Enable (true) + + + if GAME_TYPE.GAME_UNKNOWN ~= 0 then + if GAME_TYPE.eGameIDDeathmatch == mode then + handler.spin_friendly_fire:Enable(false) + handler.check_auto_team_balance:Enable(false) + handler.check_auto_team_swap:Enable(false) + handler.spin_artefacts_num:Enable(false) + handler.spin_artefact_delay:Enable(false) + handler.spin_artefact_stay:Enable(false) + handler.check_friendly_indicators:Enable(false) + handler.check_friendly_names:Enable(false) + handler.check_spec_teamonly:Enable(false) + handler.spin_reinforcement:Enable(false) + -- tab + handler.tab_respawn:SetActiveTab("forcerespawn") + btn_reinforcement:Enable(false) + btn_artefactcapture:Enable(false) + handler.spin_artreturn_time:Enable(false); + handler.check_activated_return:Enable(false) + elseif GAME_TYPE.eGameIDTeamDeathmatch == mode then + handler.spin_artefacts_num:Enable(false) + handler.spin_artefact_delay:Enable(false) + handler.spin_artefact_stay:Enable(false) + -- tab + handler.tab_respawn:SetActiveTab("forcerespawn") + btn_reinforcement:Enable(false) + btn_artefactcapture:Enable(false) + handler.spin_artreturn_time:Enable(false); + handler.check_activated_return:Enable(false) + elseif GAME_TYPE.eGameIDArtefactHunt == mode then + handler.spin_frag_limit:Enable(false) + handler.spin_artreturn_time:Enable(false); + handler.check_activated_return:Enable(false) + elseif GAME_TYPE.eGameIDCaptureTheArtefact == mode then + handler.spin_artefact_delay:Enable(false) + handler.spin_artefact_stay:Enable(false) + handler.spin_frag_limit:Enable(false) + end + elseif GAME_TYPE.GAME_UNKNOWN == 0 then + handler.spin_artreturn_time:Enable(false); + handler.check_activated_return:Enable(false) + if GAME_TYPE.GAME_DEATHMATCH == mode then + handler.spin_friendly_fire:Enable(false) + handler.check_auto_team_balance:Enable(false) + handler.check_auto_team_swap:Enable(false) + handler.spin_artefacts_num:Enable(false) + handler.spin_artefact_delay:Enable(false) + handler.spin_artefact_stay:Enable(false) + handler.check_friendly_indicators:Enable(false) + handler.check_friendly_names:Enable(false) + handler.check_spec_teamonly:Enable(false) + handler.spin_reinforcement:Enable(false) + -- tab + handler.tab_respawn:SetActiveTab("forcerespawn") + btn_reinforcement:Enable(false) + btn_artefactcapture:Enable(false) + elseif GAME_TYPE.GAME_TEAMDEATHMATCH == mode then + handler.spin_artefacts_num:Enable(false) + handler.spin_artefact_delay:Enable(false) + handler.spin_artefact_stay:Enable(false) + -- tab + handler.tab_respawn:SetActiveTab("forcerespawn") + btn_reinforcement:Enable(false) + btn_artefactcapture:Enable(false) + elseif GAME_TYPE.GAME_ARTEFACTHUNT == mode then + handler.spin_frag_limit:Enable(false) + end + end +end + + diff --git a/gamedata/scripts/ui_mm_opt_controls.script b/gamedata/scripts/ui_mm_opt_controls.script new file mode 100644 index 0000000..23f0f3b --- /dev/null +++ b/gamedata/scripts/ui_mm_opt_controls.script @@ -0,0 +1,34 @@ +class "opt_controls" (CUIWindow) + +function opt_controls:__init() super() +end + +function opt_controls:__finalize() + +end + +function opt_controls:InitControls(x, y, xml, handler) + + self:SetWndPos(vector2():set(x,y)) + self:SetWndSize(vector2():set(738,416)) + + self:SetAutoDelete(true) + +-- self.bk = xml:InitFrame("frame", self) + + xml:InitStatic ("tab_controls:cap_mousesens", self) + xml:InitTrackBar ("tab_controls:track_mousesens", self) + xml:InitStatic ("tab_controls:cap_mousesens_ui", self) + xml:InitTrackBar ("tab_controls:track_mousesens_ui", self) + xml:InitFrameLine ("tab_controls:cap_keyboardsetup", self) + xml:InitFrameLine ("tab_controls:cap_keyboardsetup", self) + xml:InitStatic ("tab_controls:cap_check_mouseinvert", self) + xml:InitCheck ("tab_controls:check_mouseinvert", self) + xml:InitKeyBinding ("tab_controls:key_binding", self) + + local btn + btn = xml:Init3tButton("tab_controls:btn_default", self) + handler:Register(btn, "btn_keyb_default") + + +end diff --git a/gamedata/scripts/ui_mm_opt_gameplay.script b/gamedata/scripts/ui_mm_opt_gameplay.script new file mode 100644 index 0000000..03460e2 --- /dev/null +++ b/gamedata/scripts/ui_mm_opt_gameplay.script @@ -0,0 +1,92 @@ +class "opt_gameplay" (CUIWindow) + +function opt_gameplay:__init() super() +end + +function opt_gameplay:__finalize() + +end + +function opt_gameplay:InitControls(x, y, xml, handler) + + self:SetWndPos(vector2():set(x,y)) + self:SetWndSize(vector2():set(738,416)) + self:SetAutoDelete(true) + self.scroll_v = xml:InitScrollView("main_dialog:scroll_v", self) + + local _st + local addControl = function(crl) + self.scroll_v:AddWindow(crl, true) + crl:SetAutoDelete(false) + end + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("tab_gameplay:cap_difficulty", _st) + xml:InitComboBox("tab_gameplay:list_difficulty", _st) + addControl(_st) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("tab_gameplay:cap_lang", _st) + xml:InitComboBox("tab_gameplay:list_lang", _st) + addControl(_st) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("tab_gameplay:cap_bobbing_factor", _st) + xml:InitTrackBar("tab_gameplay:track_bobbing_factor", _st) + addControl(_st) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("tab_gameplay:cap_hit_slowmo", _st) + xml:InitCheck("tab_gameplay:check_hit_slowmo", _st) + addControl(_st) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("tab_gameplay:cap_wpn_aim_toggle", _st) + xml:InitCheck("tab_gameplay:check_wpn_aim_toggle", _st) + addControl(_st) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("tab_gameplay:cap_check_crosshair", _st) + xml:InitCheck("tab_gameplay:check_crosshair", _st) + addControl(_st) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("tab_gameplay:cap_check_dyn_crosshair", _st) + xml:InitCheck("tab_gameplay:check_dyn_crosshair", _st) + addControl(_st) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("tab_gameplay:cap_check_show_weapon", _st) + xml:InitCheck("tab_gameplay:check_show_weapon", _st) + addControl(_st) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("tab_gameplay:cap_check_dist", _st) + xml:InitCheck("tab_gameplay:check_dist", _st) + addControl(_st) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("tab_gameplay:cap_check_tips", _st) + xml:InitCheck("tab_gameplay:check_tips", _st) + addControl(_st) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("tab_gameplay:cap_check_crouch_toggle", _st) + xml:InitCheck("tab_gameplay:check_crouch_toggle", _st) + addControl(_st) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("tab_gameplay:cap_check_important_save", _st) + xml:InitCheck("tab_gameplay:check_important_save", _st) + addControl(_st) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("tab_gameplay:cap_check_hud_draw", _st) + xml:InitCheck("tab_gameplay:check_hud_draw", _st) + addControl(_st) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("tab_gameplay:cap_rs_fps_show", _st) + xml:InitCheck("tab_gameplay:check_rs_fps_show", _st) + addControl(_st) +end diff --git a/gamedata/scripts/ui_mm_opt_main.script b/gamedata/scripts/ui_mm_opt_main.script new file mode 100644 index 0000000..7b31ffd --- /dev/null +++ b/gamedata/scripts/ui_mm_opt_main.script @@ -0,0 +1,353 @@ +class "options_dialog" (CUIScriptWnd) + +function options_dialog:__init() super() + + self.m_preconditions = {} + self.m_deffer_ex = {} + self:InitControls() + self:InitCallBacks() + self.tab:SetActiveTab ("video") +end + +function options_dialog:__finalize() + +end + +function options_dialog:InitControls() + self:SetWndRect (Frect():set(0,0,1024,768)) + self:Enable (true) + + local xml = CScriptXmlInit() + xml:ParseFile ("ui_mm_opt.xml") + + xml:InitStatic ("background", self) + self.dialog = xml:InitStatic("main_dialog:dialog", self) + +-- xml:InitStatic ("main_dialog:cap_options", self.dialog) + + self.dlg_video = ui_mm_opt_video.opt_video() + self.dlg_video:InitControls (0,0, xml, self) + self.dlg_video:Show (false) + self.dialog:AttachChild (self.dlg_video) + xml:InitWindow ("tab_size", 0, self.dlg_video) + + self.dlg_sound = ui_mm_opt_sound.opt_sound() + self.dlg_sound:InitControls (0,0, xml, self) + self.dlg_sound:Show (false) + self.dialog:AttachChild (self.dlg_sound) + xml:InitWindow ("tab_size", 0, self.dlg_sound) + + self.dlg_gameplay = ui_mm_opt_gameplay.opt_gameplay() + self.dlg_gameplay:InitControls(0,0, xml, self) + self.dlg_gameplay:Show (false) + self.dialog:AttachChild (self.dlg_gameplay) + xml:InitWindow ("tab_size", 0, self.dlg_gameplay) + + self.dlg_controls = ui_mm_opt_controls.opt_controls() + self.dlg_controls:InitControls(0,0, xml, self) + self.dlg_controls:Show (false) + self.dialog:AttachChild (self.dlg_controls) + xml:InitWindow ("tab_size", 0, self.dlg_controls) +--[[ + self.dlg_con_cmd = ui_mm_opt_con_cmd.opt_con_cmd() + self.dlg_con_cmd:InitControls(0,0, xml, self) + self.dlg_con_cmd:Show (false) + self.dialog:AttachChild (self.dlg_con_cmd) + xml:InitWindow ("tab_size", 0, self.dlg_con_cmd) +]] + self.dlg_video_adv = ui_mm_opt_video_adv.opt_video_adv() + self.dlg_video_adv:InitControls(0,0, xml, self) + self.dlg_video_adv:Show (false) + self.dialog:AttachChild (self.dlg_video_adv) + xml:InitWindow ("tab_size", 0, self.dlg_video_adv) + + local btn + btn = xml:Init3tButton ("main_dialog:btn_accept", self.dialog) + self:Register (btn, "btn_accept") + btn = xml:Init3tButton ("main_dialog:btn_cancel", self.dialog) + self:Register (btn, "btn_cancel") + + self.tab = xml:InitTab("main_dialog:tab", self.dialog) + self:Register (self.tab, "tab") + + + self.message_box = CUIMessageBoxEx() + self:Register (self.message_box, "mb") + + self.b_restart_system_shown = false + self.timer = nil + + self.cap_download = xml:InitStatic ("download_static",self) + self.text_download = xml:InitStatic ("download_text",self) + self.download_progress = xml:InitProgressBar ("progress_download", self) + self.btn_cancel_download = xml:Init3tButton ("btn_cancel_download", self) + self:Register (self.btn_cancel_download, "btn_cancel_download") + +end + +function options_dialog:SetCurrentValues() + local opt = COptionsManager() + + opt:SetCurrentValues("mm_opt_video_preset") + opt:SaveBackupValues("mm_opt_video_preset") + + opt:SetCurrentValues("mm_opt_video") + opt:SaveBackupValues("mm_opt_video") + + opt:SetCurrentValues("mm_opt_video_adv") + opt:SaveBackupValues("mm_opt_video_adv") + + opt:SetCurrentValues("mm_opt_gameplay") + opt:SaveBackupValues("mm_opt_gameplay") + + opt:SetCurrentValues("mm_opt_sound") + opt:SaveBackupValues("mm_opt_sound") + + opt:SetCurrentValues("mm_opt_controls") + opt:SaveBackupValues("mm_opt_controls") + + opt:SetCurrentValues("key_binding") + opt:SaveBackupValues("key_binding") + + self:UpdateDependControls() +end + +function options_dialog:UpdateDependControls() + self.scroll_v:Clear() + + local current_id = self.combo_renderer:CurrentID() + local value = self.combo_renderer:GetValueOf(current_id) + + for _, j in pairs(self.m_preconditions) do + if j.func(value) then + self.scroll_v:AddWindow(j.control, true) + j.control:SetAutoDelete(false) + end + end + + for _, t in pairs(self.m_deffer_ex) do + t.func(t.arg) + end +end + +function options_dialog:InitCallBacks() + self:AddCallback("tab", ui_events.TAB_CHANGED, self.OnTabChange, self) + self:AddCallback("btn_advanced_graphic",ui_events.BUTTON_CLICKED, self.OnBtnAdvGraphic, self) + self:AddCallback("btn_accept", ui_events.BUTTON_CLICKED, self.OnBtnAccept, self) + self:AddCallback("btn_cancel", ui_events.BUTTON_CLICKED, self.OnBtnCancel, self) + self:AddCallback("btn_default_graphic", ui_events.BUTTON_CLICKED, self.OnBtnDefGraph, self) + self:AddCallback("btn_default_sound", ui_events.BUTTON_CLICKED, self.OnBtnDefSound, self) + self:AddCallback("combo_preset", ui_events.LIST_ITEM_SELECT, self.OnPresetChanged, self) + self:AddCallback("btn_simply_graphic", ui_events.BUTTON_CLICKED, self.OnSimplyGraphic, self) + self:AddCallback("btn_keyb_default", ui_events.BUTTON_CLICKED, self.OnBtnKeybDefault, self) + self:AddCallback("combo_renderer", ui_events.LIST_ITEM_SELECT, self.UpdateDependControls, self) + self:AddCallback("btn_cancel_download", ui_events.BUTTON_CLICKED, self.OnBtn_CancelDownload, self) + + self:AddCallback("mb", ui_events.MESSAGE_BOX_YES_CLICKED, self.OnApplyChanges, self) + self:AddCallback("mb", ui_events.MESSAGE_BOX_NO_CLICKED, self.OnDiscardChanges,self) +end + +function options_dialog:OnBtnCheckUpdates() + local console = get_console() + console:execute ("check_for_updates 1") +end + +function options_dialog:OnBtnKeybDefault() + local console = get_console() + console:execute ("default_controls") + + local opt = COptionsManager() + opt:SetCurrentValues ("mm_opt_controls") + opt:SetCurrentValues ("key_binding") +end + +function options_dialog:OnPresetChanged() + local opt = COptionsManager() + opt:SetCurrentValues ("mm_opt_video_adv") +end + + +function options_dialog:OnBtnDefGraph() + local opt = COptionsManager() + opt:SendMessage2Group("mm_opt_video","set_default_value") +end + +function options_dialog:OnBtnDefSound() + local opt = COptionsManager() + opt:SendMessage2Group("mm_opt_sound","set_default_value") +end + +function options_dialog:OnBtnAccept() + + local opt = COptionsManager() + local console = get_console() + + console:execute("cfg_save tmp") + + opt:SaveValues("mm_opt_video_preset") + opt:SaveValues("key_binding") + opt:SaveValues("mm_opt_video") + opt:SaveValues("mm_opt_video_adv") + opt:SaveValues("mm_opt_gameplay") + opt:SaveValues("mm_opt_sound") + opt:SaveValues("mm_opt_controls") + + if opt:NeedVidRestart() then + _G.b_discard_settings_shown = true + self.message_box:InitMessageBox("message_box_yes_no") + self.message_box:SetText(string.format("%s %d% s", game.translate_string("ui_mm_confirm_changes"), 15, game.translate_string("mp_si_sec"))) + self.message_box:ShowDialog(true) + else + self:OnApplyChanges() + end + + opt:OptionsPostAccept() + + console:execute("cfg_save") +end + +function options_dialog:OnBtnCancel() + local opt = COptionsManager() + opt:UndoGroup ("mm_opt_video_preset") + opt:UndoGroup ("mm_opt_video") + opt:UndoGroup ("mm_opt_video_adv") + opt:UndoGroup ("mm_opt_sound") + opt:OptionsPostAccept () + + self.owner:ShowDialog(true) + self:HideDialog() + self.owner:Show(true) +end + +function options_dialog:OnTabChange() + self.dlg_video:Show (false) + self.dlg_sound:Show (false) + self.dlg_gameplay:Show (false) + self.dlg_controls:Show (false) + self.dlg_video_adv:Show (false) + + local ids = self.tab:GetActiveId() + if ids == "video" then + self.dlg_video:Show(true) + elseif ids == "sound" then + self.dlg_sound:Show(true) + elseif ids == "gameplay" then + self.dlg_gameplay:Show(true) + elseif ids == "controls" then + self.dlg_controls:Show(true) + end + +end + +function options_dialog:OnBtnAdvGraphic() + self.dlg_video:Show (false) + self.dlg_video_adv:Show (true) +end + +function options_dialog:OnSimplyGraphic() + self.dlg_video:Show (true) + self.dlg_video_adv:Show (false) +end + +function options_dialog:OnKeyboard(dik, keyboard_action) + local res = CUIScriptWnd.OnKeyboard(self,dik,keyboard_action) + + if res==false then + + local bind = dik_to_bind(dik) + + if keyboard_action == ui_events.WINDOW_KEY_PRESSED then + if dik == DIK_keys.DIK_ESCAPE then + if self.dlg_video_adv:IsShown() then + self.dlg_video_adv:Show (false) + self.dlg_video:Show (true) + else + self.owner:ShowDialog(true) + self:HideDialog() + self.owner:Show(true) + end + end + + end + end + + return res +end + +function options_dialog:Update() + CUIScriptWnd.Update(self) + + local mm = main_menu.get_main_menu() + local sss = mm:GetPatchProgress() + + if sss:GetInProgress() then + self.text_download:Show (true) + self.cap_download:Show (true) + self.download_progress:Show (true) + local _progr = sss:GetProgress() + self.download_progress:SetProgressPos (_progr) + local str = string.format("%.0f%%(%s)",_progr,sss:GetFlieName()) + self.text_download:TextControl():SetText (str) + self.btn_cancel_download:Show (true) + else + self.text_download:Show (false) + self.cap_download:Show (false) + self.download_progress:Show (false) + self.btn_cancel_download:Show (false) + end + if(_G.b_discard_settings_shown) then + local tg = math.floor(time_global_async()/1000) + if(self.timer==nil) then + self.timer = tg + end + self.message_box:SetText(string.format("%s %d %s", game.translate_string("ui_mm_confirm_changes"), 15-(tg-self.timer), game.translate_string("mp_si_sec"))) + if(tg-self.timer>=15) then + self.message_box:HideDialog() + self:OnDiscardChanges() + end + end +end + +function options_dialog:OnBtn_CancelDownload() + local mm = main_menu.get_main_menu() + mm:CancelDownload() +end + +function options_dialog:OnApplyChanges() + self.timer = nil + _G.b_discard_settings_shown = false + + self.owner:ShowDialog(true) + self:HideDialog() + self.owner:Show(true) + + if false==self.b_restart_system_shown then + local opt = COptionsManager() + if opt:NeedSystemRestart() then + self.b_restart_system_shown = true + self.message_box:InitMessageBox("message_box_restart_game") + self.message_box:ShowDialog(true) + end + end +end + +function options_dialog:OnDiscardChanges() + self.timer = nil + _G.b_discard_settings_shown = false + + local c = get_console() + c:execute("cfg_load tmp") + + self:SetCurrentValues() + + c:execute("vid_restart") + c:execute("cfg_save") +end + +function options_dialog:OnMenuReloaded() + if(_G.b_discard_settings_shown) then + self.message_box:InitMessageBox("message_box_yes_no") + self.message_box:SetText(string.format("%s %d% s", game.translate_string("ui_mm_confirm_changes"), 15, game.translate_string("mp_si_sec"))) + self.message_box:ShowDialog(true) + end +end diff --git a/gamedata/scripts/ui_mm_opt_sound.script b/gamedata/scripts/ui_mm_opt_sound.script new file mode 100644 index 0000000..aa5db8d --- /dev/null +++ b/gamedata/scripts/ui_mm_opt_sound.script @@ -0,0 +1,49 @@ +class "opt_sound" (CUIWindow) + +function opt_sound:__init() super() +end + +function opt_sound:__finalize() + +end + +function opt_sound:InitControls(x, y, xml, handler) + + self:SetWndPos(vector2():set(x,y)) + self:SetWndSize(vector2():set(738,416)) + self:SetAutoDelete(true) + self.scroll_v = xml:InitScrollView("main_dialog:scroll_v", self) + + local _st + local addControl = function(crl) + self.scroll_v:AddWindow(crl, true) + crl:SetAutoDelete(false) + end + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("tab_sound:cap_mastervolume", _st) + xml:InitTrackBar("tab_sound:track_mastervolume", _st) + addControl(_st) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("tab_sound:cap_musicvolume", _st) + xml:InitTrackBar("tab_sound:track_musicvolume", _st) + addControl(_st) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("tab_sound:cap_snd_device", _st) + xml:InitComboBox("tab_sound:list_snd_device", _st) + addControl(_st) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitCheck("tab_sound:check_dynamic_music", _st) + xml:InitStatic("tab_sound:cap_check_dynamic_music", _st) + addControl(_st) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("tab_sound:cap_check_eax", _st) + xml:InitCheck("tab_sound:check_eax", _st) + addControl(_st) + + +end diff --git a/gamedata/scripts/ui_mm_opt_video.script b/gamedata/scripts/ui_mm_opt_video.script new file mode 100644 index 0000000..55c2089 --- /dev/null +++ b/gamedata/scripts/ui_mm_opt_video.script @@ -0,0 +1,77 @@ +class "opt_video" (CUIWindow) + +function opt_video:__init() super() +end + +function opt_video:__finalize() + +end + +function opt_video:InitControls(x, y, xml, handler) + + self:SetWndPos(vector2():set(x,y)) + self:SetWndSize(vector2():set(738,416)) + self:SetAutoDelete(true) + self.scroll_v = xml:InitScrollView("main_dialog:scroll_v", self) + + local _st + local addControl = function(crl) + self.scroll_v:AddWindow(crl, true) + crl:SetAutoDelete(false) + end + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("tab_video:cap_renderer", _st) + handler.combo_renderer = xml:InitComboBox("tab_video:list_renderer", _st) + handler:Register(handler.combo_renderer, "combo_renderer") + addControl(_st) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("tab_video:cap_preset", _st) + handler.combo_preset = xml:InitComboBox("tab_video:list_presets", _st) + handler:Register(handler.combo_preset, "combo_preset") + addControl(_st) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("tab_video:cap_resolution",_st) + xml:InitComboBox("tab_video:list_resolution",_st) + addControl(_st) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("tab_video:cap_brightness", _st) + xml:InitTrackBar("tab_video:track_brightness", _st) + addControl(_st) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("tab_video:cap_contrast", _st) + xml:InitTrackBar("tab_video:track_contrast", _st) + addControl(_st) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("tab_video:cap_gamma", _st) + xml:InitTrackBar("tab_video:track_gamma", _st) + addControl(_st) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic ("tab_video:cap_fullscreen", _st) + xml:InitCheck ("tab_video:check_fullscreen", _st) + addControl(_st) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("tab_video:cap_rs_device_active", _st) + xml:InitCheck("tab_video:check_rs_device_active", _st) + addControl(_st) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("tab_video:cap_vsync", _st) + xml:InitCheck("tab_video:check_vsync", _st) + addControl(_st) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("tab_video:cap_screenshot_format", _st) + xml:InitComboBox("tab_video:list_screenshot_format", _st) + addControl(_st) + + btn = xml:Init3tButton("tab_video:btn_advanced", self) + handler:Register(btn, "btn_advanced_graphic") +end diff --git a/gamedata/scripts/ui_mm_opt_video_adv.script b/gamedata/scripts/ui_mm_opt_video_adv.script new file mode 100644 index 0000000..1438af2 --- /dev/null +++ b/gamedata/scripts/ui_mm_opt_video_adv.script @@ -0,0 +1,414 @@ +class "opt_video_adv" (CUIWindow) +function opt_video_adv:__init() super() +end + +function opt_video_adv:__finalize() +end + +function all_modes(render_id) + return true +end + +function mode_1(id) + return id == "renderer_r1" +end + +function mode_2(id) + return id ~= "renderer_r1" +end + +function mode_4(id) + return id == "renderer_r4" +end + +function opt_video_adv:InitControls(x, y, xml, handler) + self:SetWndPos(vector2():set(x,y)) + self:SetWndSize(vector2():set(738,416)) + self:SetAutoDelete(true) + + self.scroll_v = xml:InitScrollView("video_adv:scroll_v", self) + handler.scroll_v = self.scroll_v + + btn = xml:Init3tButton("video_adv:btn_to_simply", self) + handler:Register(btn, "btn_simply_graphic") + + local ctl = nil + local _st = nil + + ----------------------------------------------------------------------------- + ----------------------------------------------------------------------------- + ----------------------------------------------------------------------------- + + local lineFrame = function (prec, text) + local static = xml:InitStatic("video_adv:templ_item", nil) + local temp = xml:InitFrameLine("video_adv:header_setup", static) + local tempText = xml:InitTextWnd("video_adv:cap_header_setup", temp) + table.insert(handler.m_preconditions, {func=prec, control=static}) + tempText:SetTextST(text) + end + + local reloadControls = function() + local pos = handler.scroll_v:GetCurrentScrollPos() + handler:UpdateDependControls() + handler.scroll_v:SetScrollPos(pos) + end + + ----------------------------------------------------------------------------- + ----------------------------------------------------------------------------- + ----------------------------------------------------------------------------- + + lineFrame(all_modes, "st_common_settings") + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_detail_density", _st) + xml:InitTrackBar("video_adv:track_detail_density", _st) + table.insert(handler.m_preconditions, {func=all_modes, control=_st}) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_detail_radius", _st) + xml:InitTrackBar("video_adv:track_detail_radius", _st) + table.insert(handler.m_preconditions, {func=all_modes, control=_st}) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_vis_dist", _st) + xml:InitTrackBar("video_adv:track_vis_dist", _st) + table.insert(handler.m_preconditions, {func=all_modes, control=_st}) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_geometry_lod", _st) + xml:InitTrackBar("video_adv:track_geometry_lod", _st) + table.insert(handler.m_preconditions, {func=all_modes, control=_st}) + +----------------------------------------------------------------------------- + ----------------------------------------------------------------------------- + ----------------------------------------------------------------------------- + + lineFrame(all_modes, "st_surface_options") + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_texture_lod", _st) + ctl = xml:InitTrackBar("video_adv:track_texture_lod", _st) + handler.texture_lod_track = ctl + table.insert(handler.m_preconditions, {func=all_modes, control=_st}) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_aniso", _st) + xml:InitTrackBar("video_adv:track_aniso", _st) + table.insert(handler.m_preconditions, {func=all_modes, control=_st}) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_r1_detail_textures", _st) + ctl = xml:InitCheck("video_adv:check_r1_detail_textures", _st) + table.insert(handler.m_preconditions, {func=mode_1, control=_st}) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_r2_detail_bump", _st) + ctl = xml:InitCheck("video_adv:check_r2_detail_bump", _st) + table.insert(handler.m_preconditions, {func=mode_2, control=_st}) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_r2_steep_parallax", _st) + ctl = xml:InitCheck("video_adv:check_r2_steep_parallax", _st) + table.insert(handler.m_preconditions, {func=mode_2, control=_st}) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_r4_tessellation", _st) + ctl = xml:InitCheck("video_adv:check_r4_tessellation", _st) + table.insert(handler.m_preconditions, {func=mode_4, control=_st}) + + ----------------------------------------------------------------------------- + ----------------------------------------------------------------------------- + ----------------------------------------------------------------------------- + + lineFrame(all_modes, "st_aa_options") + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_r_scale_mode", _st) + ctl = xml:InitComboBox("video_adv:list_r_scale_mode", _st) + + handler:Register(ctl, "scaleMode") + handler.scaleMode = ctl + + table.insert(handler.m_preconditions, {func=mode_4, control=_st}) + handler:AddCallback("scaleMode", ui_events.LIST_ITEM_SELECT, reloadControls, nil) + + local scalePresetPrec = function(id) + if mode_4(id) then + local current_id = handler.scaleMode:CurrentID() + if current_id > 1 then + return true + end + -- get_console():execute("vid_scale_preset st_scale_custom") + -- handler.scalePreset:SetCurrentOptValue() + end + return false + end + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_r_scale_preset", _st) + ctl = xml:InitComboBox("video_adv:list_r_scale_preset", _st) + + handler:Register(ctl, "scalePreset") + handler.scalePreset = ctl + + table.insert(handler.m_preconditions, {func=scalePresetPrec, control=_st}) + handler:AddCallback("scalePreset", ui_events.LIST_ITEM_SELECT, reloadControls, nil) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_vid_scale", _st) + ctl = xml:InitTrackBar("video_adv:track_vid_scale", _st) + + local vidScalePrec = function(id) + if mode_4(id) then + local scale_mode = handler.scaleMode:CurrentID() + if scale_mode > 1 then + local scale_preset = handler.scalePreset:CurrentID() + local value = handler.scalePreset:GetValueOf(scale_preset) + return value == "st_scale_custom" + end + return true + end + return false + end + + table.insert(handler.m_preconditions, {func=vidScalePrec, control=_st}) + + local typeAAPrec = function(id) + if mode_4(id) then + local current_id = handler.scaleMode:CurrentID() + if current_id > 1 then + handler.hashedAplha:Enable(true) + return false + end + handler.hashedAplha:Enable(false) + handler.hashedAplha:SetCheck(false) + end + return true + end + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_r_type_aa", _st) + ctl = xml:InitComboBox("video_adv:list_r_type_aa", _st) + table.insert(handler.m_preconditions, {func=typeAAPrec, control=_st}) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_cas_sharpening", _st) + xml:InitTrackBar("video_adv:track_cas_sharpening", _st) + table.insert(handler.m_preconditions, {func=mode_4, control=_st}) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_r4_hashed_aref", _st) + ctl = xml:InitCheck ("video_adv:check_r4_hashed_aref", _st) + table.insert(handler.m_preconditions, {func=mode_4, control=_st}) + handler.hashedAplha = ctl + + ----------------------------------------------------------------------------- + ----------------------------------------------------------------------------- + ----------------------------------------------------------------------------- + + lineFrame(all_modes, "st_lights_options") + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_particles_distance", _st) + ctl = xml:InitTrackBar("video_adv:track_particles_distance", _st) + table.insert(handler.m_preconditions, {func=mode_2, control=_st}) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_light_distance", _st) + ctl = xml:InitTrackBar("video_adv:track_light_distance", _st) + table.insert(handler.m_preconditions, {func=mode_2, control=_st}) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_npc_torch", _st) + xml:InitCheck("video_adv:check_npc_torch", _st) + table.insert(handler.m_preconditions, {func=all_modes, control=_st}) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_volumetric_light", _st) + ctl = xml:InitCheck("video_adv:check_volumetric_light", _st) + table.insert(handler.m_preconditions, {func=mode_2, control=_st}) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_r4_hud_shadows", _st) + ctl = xml:InitCheck ("video_adv:check_r4_hud_shadows", _st) + table.insert(handler.m_preconditions, {func=mode_4, control=_st}) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_r_actor_shadow", _st) + ctl = xml:InitCheck ("video_adv:check_r_actor_shadow", _st) + table.insert(handler.m_preconditions, {func=all_modes, control=_st}) + + ----------------------------------------------------------------------------- + ----------------------------------------------------------------------------- + ----------------------------------------------------------------------------- + + lineFrame(mode_2, "st_sunlight_options") + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_r2_sun", _st) + ctl = xml:InitCheck("video_adv:check_r2_sun", _st) + + handler:Register(ctl, "enableSun") + handler.enableSun = ctl + + local sunTable = {} + local enableSunFunc = function(id) + if mode_2(id) then + for _, control in pairs(sunTable) do + control:Enable(handler.enableSun:GetCheck()) + if control.GetCheck then + control:SetCheck(control:GetCheck() and handler.enableSun:GetCheck()) + end + end + return true + end + return false + end + + table.insert(handler.m_preconditions, {func=enableSunFunc, control=_st}) + handler:AddCallback("enableSun", ui_events.BUTTON_CLICKED, reloadControls, nil) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_r2_sun_details", _st) + ctl = xml:InitCheck ("video_adv:check_r2_sun_details", _st) + + table.insert(sunTable, ctl) + table.insert(handler.m_preconditions, {func=mode_2, control=_st}) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_r2_lights_details", _st) + ctl = xml:InitCheck ("video_adv:check_r2_lights_details", _st) + + table.insert(sunTable, ctl) + table.insert(handler.m_preconditions, {func=mode_2, control=_st}) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_r2_cloud_shadows", _st) + ctl = xml:InitCheck ("video_adv:check_r2_cloud_shadows", _st) + + table.insert(sunTable, ctl) + table.insert(handler.m_preconditions, {func=mode_2, control=_st}) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_r2_sun_quality", _st) + ctl = xml:InitComboBox("video_adv:list_r2_sun_quality", _st) + + table.insert(sunTable, ctl) + table.insert(handler.m_preconditions, {func=mode_2, control=_st}) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_sun_shafts", _st) + ctl = xml:InitComboBox("video_adv:combo_sun_shafts", _st) + + table.insert(sunTable, ctl) + table.insert(handler.m_preconditions, {func=mode_2, control=_st}) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_smap_size", _st) + ctl = xml:InitComboBox("video_adv:combo_smap_size", _st) + handler.combo_smap_size = ctl + table.insert(handler.m_preconditions, {func=mode_2, control=_st}) + + ----------------------------------------------------------------------------- + ----------------------------------------------------------------------------- + ----------------------------------------------------------------------------- + + lineFrame(mode_2, "st_effects_options") + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_ao", _st) + ctl = xml:InitComboBox("video_adv:combo_ao_options", _st) + table.insert(handler.m_preconditions, {func=mode_2, control=_st}) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_soft_water", _st) + ctl = xml:InitCheck("video_adv:check_soft_water", _st) + table.insert(handler.m_preconditions, {func=mode_2, control=_st}) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_soft_particles", _st) + ctl = xml:InitCheck("video_adv:check_soft_particles", _st) + table.insert(handler.m_preconditions, {func=mode_2, control=_st}) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_r3_dynamic_wet_surfaces", _st) + ctl = xml:InitCheck ("video_adv:check_r3_dynamic_wet_surfaces", _st) + table.insert(handler.m_preconditions, {func=mode_4, control=_st}) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_sslr_water", _st) + ctl = xml:InitCheck("video_adv:check_sslr_water", _st) + table.insert(handler.m_preconditions, {func=mode_4, control=_st}) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_r3_volumetric_smoke", _st) + ctl = xml:InitCheck("video_adv:check_r3_volumetric_smoke", _st) + table.insert(handler.m_preconditions, {func=mode_4, control=_st}) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_r4_puddles", _st) + ctl = xml:InitCheck("video_adv:check_r4_puddles", _st) + table.insert(handler.m_preconditions, {func=mode_4, control=_st}) + ----------------------------------------------------------------------------- + ----------------------------------------------------------------------------- + ----------------------------------------------------------------------------- + + lineFrame(mode_2, "st_postprocess_options") + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_vignette", _st) + ctl = xml:InitCheck("video_adv:check_vignette", _st) + table.insert(handler.m_preconditions, {func=mode_2, control=_st}) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_aberration", _st) + ctl = xml:InitCheck("video_adv:check_aberration", _st) + table.insert(handler.m_preconditions, {func=mode_2, control=_st}) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_saturation", _st) + ctl = xml:InitCheck("video_adv:check_saturation", _st) + table.insert(handler.m_preconditions, {func=mode_2, control=_st}) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_dof", _st) + ctl = xml:InitCheck("video_adv:check_dof", _st) + + handler:Register(ctl, "enableDof") + handler.enableDof = ctl + + table.insert(handler.m_preconditions, {func=mode_2, control=_st}) + handler:AddCallback("enableDof", ui_events.BUTTON_CLICKED, reloadControls, nil) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_dof_reload", _st) + ctl = xml:InitCheck("video_adv:check_dof_reload", _st) + handler.reloadDof = ctl + + local enableReloadDofFunc = function(id) + if mode_2(id) then + handler.reloadDof:Enable(handler.enableDof:GetCheck()) + handler.reloadDof:SetCheck(handler.reloadDof:GetCheck() and handler.enableDof:GetCheck()) + return true + end + return false + end + + table.insert(handler.m_preconditions, {func=enableReloadDofFunc, control=_st}) + + _st = xml:InitStatic("video_adv:templ_item", nil) + xml:InitStatic("video_adv:cap_dof_talk", _st) + ctl = xml:InitCheck("video_adv:check_dof_talk", _st) + handler.talkDof = ctl + + local enableTalkDofFunc = function(id) + if mode_2(id) then + handler.talkDof:Enable(handler.enableDof:GetCheck()) + handler.talkDof:SetCheck(handler.talkDof:GetCheck() and handler.enableDof:GetCheck()) + return true + end + return false + end + + table.insert(handler.m_preconditions, {func=enableTalkDofFunc, control=_st}) +end diff --git a/gamedata/scripts/ui_mp_main.script b/gamedata/scripts/ui_mp_main.script new file mode 100644 index 0000000..b284d41 --- /dev/null +++ b/gamedata/scripts/ui_mp_main.script @@ -0,0 +1,628 @@ +-- file: UI_MP_MAIN.SCRIPT +-- description: MP dialog with Join Game/Create Server/Options +-- created: 26.04.2005 +-- author: Serge Vynnychenko +-- mail: narrator@gsc-game.kiev.ua +-- +-- copyright 2005 GSC Game World + +class "mp_main" (CUIScriptWnd) + +function mp_main:__init() super() + self:InitControls() + self:InitCallBacks() + self.tab:SetActiveTab("client") +end + +function mp_main:__finalize() + +end + + +function mp_main:InitControls() + + self:SetWndRect (Frect():set(0,0,1024,768)) + + local xml = CScriptXmlInit() + xml:ParseFile ("ui_mm_mp.xml") + + + local bk = xml:InitStatic("background", self) + self:Enable (true) + local wrk_area = CUIWindow() + xml:InitWindow ("wrk_area", 0, wrk_area) + wrk_area:SetAutoDelete (true) + self:AttachChild (wrk_area) + + self.player_name = xml:InitMPPlayerName("edit_player_name", wrk_area) + xml:InitStatic ("cap_mode", wrk_area) + + self.dlg_join = ui_mm_mp_join.mp_join() + self.dlg_join:InitControls (0,0, xml, self) + wrk_area:AttachChild (self.dlg_join) + + self.dlg_options = ui_mm_mp_options.mp_options() + self.dlg_options:InitControls (0,0, xml, self) + self.dlg_options:Show (false) + wrk_area:AttachChild (self.dlg_options) + + self.dlg_server = ui_mm_mp_server.mp_server() + self.dlg_server:InitControls (0,0, xml, self) + self.dlg_server:Show (false) + wrk_area:AttachChild (self.dlg_server) + + self.dlg_demo = ui_mm_mp_demo.mp_demo() + self.dlg_demo:InitControls (0,0, xml, self) + self.dlg_demo:Show (false) + wrk_area:AttachChild (self.dlg_demo) + + + btn = xml:Init3tButton("btn_create", wrk_area) + self:Register (btn, "btn_create") + self.btn_create = btn + btn:Enable (false) + + btn = xml:Init3tButton("btn_play_demo", wrk_area) + self:Register (btn, "btn_play_demo") + self.btn_play_demo = btn + btn:Enable (false) + + btn = xml:Init3tButton("btn_join", wrk_area) + self:Register (btn, "btn_join") + self.btn_join = btn + + btn = xml:Init3tButton("btn_cancel", wrk_area) + self:Register (btn, "btn_cancel") + + self.tab = xml:InitTab("tab",wrk_area) + self:Register (self.tab, "tab") + + self.message_box = CUIMessageBoxEx() + self:Register (self.message_box, "msg_box") + + self.cap_download = xml:InitStatic ("download_static", wrk_area) + self.text_download = xml:InitStatic ("download_text", wrk_area) + self.download_progress = xml:InitProgressBar ("progress_download", wrk_area) + self.btn_cancel_download = xml:Init3tButton ("btn_cancel_download", wrk_area) + self:Register (self.btn_cancel_download, "btn_cancel_download") + +-- xml:InitStatic ("static_gs_logo",self) + + local _ver = xml:InitStatic ("static_version",self) + local mm = main_menu.get_main_menu() + _ver:TextControl():SetText ("ver. " .. mm:GetGSVer()) + + self.player_name:SetText ( mm:GetPlayerName() ) + + self.server_list:SetConnectionErrCb(connect_error_cb(self, mp_main.OnConnectError)) +end + +function mp_main:UpdateControls() + local opt = COptionsManager() + opt:SetCurrentValues("mm_mp_client") + opt:SetCurrentValues("mm_mp_server") + opt:SetCurrentValues("mm_mp_srv_filter") + + opt:SaveBackupValues("mm_mp_client") + opt:SaveBackupValues("mm_mp_server") + opt:SaveBackupValues("mm_mp_srv_filter") + + self.map_list:ClearList() + self.map_list:OnModeChange() + self.dlg_options:SetGameMode(self.map_list:GetCurGameType(), self) + + local mm = main_menu.get_main_menu() + + self.player_name:SetText ( mm:GetPlayerName() ) + + self:OnGameModeChange() + + if( level.present() ) then + self.btn_create:Enable (false) + self.btn_join:Enable (false) + self.btn_direct_ip:Enable(false) + self.tab:Enable (false) + self.cdkey:Enable (false) + self.player_name:Enable (false) + end +end + +function mp_main:InitCallBacks() + self:AddCallback("btn_cancel", ui_events.BUTTON_CLICKED, self.OnBtn_Calncel, self) + self:AddCallback("btn_create", ui_events.BUTTON_CLICKED, self.OnBtn_Create, self) + self:AddCallback("btn_join", ui_events.BUTTON_CLICKED, self.OnBtn_Join, self) + + self:AddCallback("check_empty", ui_events.BUTTON_CLICKED, self.OnFilterChange,self) + self:AddCallback("check_full", ui_events.BUTTON_CLICKED, self.OnFilterChange,self) + self:AddCallback("check_with_pass", ui_events.BUTTON_CLICKED, self.OnFilterChange,self) + self:AddCallback("check_without_pass", ui_events.BUTTON_CLICKED, self.OnFilterChange,self) + self:AddCallback("check_without_ff", ui_events.BUTTON_CLICKED, self.OnFilterChange,self) + self:AddCallback("check_listen_servers",ui_events.BUTTON_CLICKED, self.OnFilterChange,self) + + self:AddCallback("btn_direct_ip", ui_events.BUTTON_CLICKED, self.OnBtn_DirectIP,self) + + -- ui_mm_mp_options + self:AddCallback("spin_game_mode", ui_events.LIST_ITEM_SELECT, self.OnGameModeChange,self) + + self:AddCallback("tab", ui_events.TAB_CHANGED, self.OnTabChange, self) + -- ui_mm_mp_join + self:AddCallback("btn_refresh", ui_events.BUTTON_CLICKED, self.OnBtn_Refresh, self) + self:AddCallback("btn_quick_refresh", ui_events.BUTTON_CLICKED, self.OnBtn_RefreshQuick,self) + self:AddCallback("btn_server_info", ui_events.BUTTON_CLICKED, self.OnBtn_SrvInfo,self) + self:AddCallback("radio_net_conn", ui_events.TAB_CHANGED, self.OnRadio_NetChanged,self) + + -- msg_box + self:AddCallback("msg_box", ui_events.MESSAGE_BOX_YES_CLICKED, self.OnDirectIP_yes,self) + + self:AddCallback("edit_cd_key", ui_events.EDIT_TEXT_COMMIT, self.OnCDKeyChanged, self) + self:AddCallback("edit_player_name", ui_events.EDIT_TEXT_COMMIT, self.OnPlayerNameChanged, self) + + self:AddCallback("btn_cancel_download", ui_events.BUTTON_CLICKED, self.OnBtn_CancelDownload, self) + -- demo playing + + self:AddCallback("demo_list_window", ui_events.LIST_ITEM_CLICKED, self.dlg_demo.SelectDemoFile, self.dlg_demo) + self:AddCallback("demo_list_window", ui_events.WINDOW_LBUTTON_DB_CLICK, self.dlg_demo.PlaySelectedDemo, self.dlg_demo) + + self:AddCallback("btn_play_demo", ui_events.BUTTON_CLICKED, self.dlg_demo.PlaySelectedDemo, self.dlg_demo) + self:AddCallback("demo_file_name", ui_events.EDIT_TEXT_COMMIT, self.dlg_demo.OnRenameDemo, self.dlg_demo) + self:AddCallback("demo_message_box", ui_events.MESSAGE_BOX_YES_CLICKED, self.dlg_demo.OnMsgBoxYes, self.dlg_demo) + self:AddCallback("demo_message_box", ui_events.MESSAGE_BOX_OK_CLICKED, self.dlg_demo.OnMsgBoxYes, self.dlg_demo) + + self:AddCallback("check_demosave", ui_events.BUTTON_CLICKED, self.OnDemoSaveChange, self) +end + +function mp_main:OnBtn_DirectIP() + + self.message_box:InitMessageBox("message_box_direct_ip") + self.message_box:ShowDialog(true) +end + +function mp_main:OnDirectIP_yes() + + if (string.len(self.message_box:GetHost()) ~= 0) then + local cmd = "start client(" .. self.message_box:GetHost() .. "/name=" .. self.player_name:GetText() .. "/psw=" .. self.message_box:GetPassword() .. ")" + local console = get_console() + console:execute(cmd) + end + +end + +function mp_main:OnCDKeyChanged() + local cmdstr = "" + tmp = self.cdkey:GetText() + + if tmp=="" then + tmp = "clear" + end + + cmdstr = "cdkey " .. tmp + local console = get_console() + console:execute(cmdstr) +end + +function mp_main:OnPlayerNameChanged() + local tmp = self.player_name:GetText() + local cmdstr = "name " .. tmp + local console = get_console() + console:execute(cmdstr) +end + +function mp_main:ChangeNickOperationResult(profile, descr) + -- assert(profile) +end + +function mp_main:OnBtn_SrvInfo() + self.server_list:ShowServerInfo() +end + +function mp_main:OnGameModeChange() + self.map_list:OnModeChange() + self.dlg_options:SetGameMode(self.map_list:GetCurGameType(), self) +end + +function mp_main:OnFilterChange() + local sf = SServerFilters() + sf.empty = self.filters.btn_check_empty:GetCheck() + sf.full = self.filters.btn_check_full:GetCheck() + sf.with_pass = self.filters.btn_check_with_pass:GetCheck() + sf.without_pass = self.filters.btn_check_without_pass:GetCheck() + sf.without_ff = self.filters.btn_check_without_ff:GetCheck() + sf.listen_servers = self.filters.btn_check_listen_servers:GetCheck() + + self.server_list:SetFilters(sf) + +end + +function mp_main:OnDemoSaveChange() + local console = get_console() + if (self.check_demosave:GetCheck()) then + console:execute("cl_mpdemosave 1") + else + console:execute("cl_mpdemosave 0") + end +end + +function mp_main:OnTabChange() + self.dlg_join:Show(false) + self.dlg_options:Show(false) + self.dlg_server:Show(false) + self.dlg_demo:Show(false) + + self.btn_join:Show(false) + self.btn_create:Show(false) + self.btn_play_demo:Show(false) + + local i = self.tab:GetActiveId() + if i == "client" then + self.dlg_join:Show(true) + self.btn_join:Show(true) + elseif i == "options" then + self.dlg_options:Show(true) + self.btn_create:Show(true) + elseif i == "server" then + self.map_list:LoadMapList() + self.map_list:OnModeChange() + self.dlg_server:Show(true) + self.btn_create:Show(true) + elseif i == "demo" then + self.dlg_demo:FillList() + self.dlg_demo:Show(true) + self.btn_play_demo:Show(true) + end +end + +function mp_main:OnRadio_NetChanged() + local i = self.radio_net_connection:GetActiveId() + self.server_list:NetRadioChanged(i~="internet") + + if i == "internet" then + self.server_list:RefreshList(false) + else + self.server_list:RefreshList(true) + end + + self:OnFilterChange() +end + +function mp_main:OnBtn_Refresh() + local i = self.radio_net_connection:GetActiveId() + if i == "internet" then + self.server_list:RefreshList(false) + else + self.server_list:RefreshList(true) + end + self:OnFilterChange() +end + +function mp_main:OnBtn_RefreshQuick() + self.server_list:RefreshQuick() +end + +function mp_main:OnBtn_Calncel() + local opt = COptionsManager() + opt:UndoGroup("mm_mp_client") + opt:UndoGroup("mm_mp_server") + opt:UndoGroup("mm_mp_srv_filter") + + self.owner:ShowDialog(true) + self:HideDialog() + self.owner:Show (true) +end + +function mp_main:OnBtn_Create() + if self.map_list:IsEmpty() then + self.message_box:InitMessageBox("select_map") + self.message_box:ShowDialog(true) + return + end + + local mm = main_menu.get_main_menu() + + local opt = COptionsManager() + local console = get_console() + opt:SaveValues("mm_mp_server") + opt:SaveValues("mm_mp_client") + opt:SaveValues("mm_mp_srv_filter") + self.map_list:SaveMapList() + self:GatherServerData() + if self.check_dedicated:GetCheck() then + self.map_list:StartDedicatedServer() + else + local command = self.map_list:GetCommandLine(self.player_name:GetText()) + console:execute("main_menu off") + console:execute(command) + end +end + +function mp_main:GatherServerData() + local cmdstr = "" + local tmp; + + -- server name ------------------------------------------------------------------ + tmp = self.edit_server_name:GetText() + if string.len(tmp) > 0 then + cmdstr = "/hname=" .. tmp + end + -- password --------------------------------------------------------------------- + tmp = self.edit_password:GetText() + if string.len(tmp) > 0 then + cmdstr = cmdstr .. "/psw=" .. tmp + end + -- max players ------------------------------------------------------------------ + tmp = self.spin_max_players:GetText() + if string.len(tmp) > 0 then + cmdstr = cmdstr .. "/maxplayers=" .. tmp + end + -- public server ---------------------------------------------------------------- + tmp = self.check_public_server:GetCheck() + if true == tmp then + cmdstr = cmdstr .. "/public=1" + end + + tmp = self.spin_max_ping:GetText() + if string.len(tmp) > 0 then + cmdstr = cmdstr .. "/maxping=" .. tmp + end + + -- spectator -------------------------------------------------------------------- + if self.check_spectator:GetCheck() then + tmp = self.spin_spectator:GetText() + if string.len(tmp) > 0 then + cmdstr = cmdstr .. "/spectr=" .. tmp + end + end + + -- spectator options -- + tmp = 0; + if self.check_spec_freefly:GetCheck() then + tmp = tmp + 1 + end + if self.check_spec_firsteye:GetCheck() then + tmp = tmp + 2 + end + if self.check_spec_lookat:GetCheck() then + tmp = tmp + 4 + end + if self.check_spec_freelook:GetCheck() then + tmp = tmp + 8 + end + if self.check_spec_teamonly:GetCheck() then + tmp = tmp + 16 + end + + cmdstr = cmdstr .. "/spectrmds=" .. tmp + + -- allow voting ------------------------------------------------------------------ + tmp = self.check_allow_voting:GetCheck() + if true == tmp then + cmdstr = cmdstr .. "/vote=1" + end + -- damage block ------------------------------------------------------------------ + tmp = self.spin_damage_block:GetText() + if string.len(tmp) > 0 then + cmdstr = cmdstr .. "/dmgblock=" .. tmp + end + if self.check_damage_block:GetCheck() then + cmdstr = cmdstr .. "/dmbi=1" + end + -- frag limit --------------------------------------------------------------------- + tmp = self.spin_frag_limit:GetText() + if string.len(tmp) > 0 then + cmdstr = cmdstr .. "/fraglimit=" .. tmp + end + -- time limit --------------------------------------------------------------------- + tmp = self.spin_time_limit:GetText() + if string.len(tmp) > 0 then + cmdstr = cmdstr .. "/timelimit=" .. tmp + end + -- friendly fire ------------------------------------------------------------------ + tmp = self.spin_friendly_fire:GetText() + if string.len(tmp) > 0 then + cmdstr = cmdstr .. "/ffire=" .. tmp + end + -- auto team balance -------------------------------------------------------------- + if self.check_auto_team_balance:GetCheck() then + cmdstr = cmdstr .. "/abalance=1" + end + -- auto team swap -------------------------------------------------------------- + if self.check_auto_team_swap:GetCheck() then + cmdstr = cmdstr .. "/aswap=1" + end + -- Force respawn -------------------------------------------------------------- + if self.tab_respawn:GetActiveId() == "reinforcement" then + tmp = self.spin_force_respawn:GetText() + if string.len(tmp) > 0 then + cmdstr = cmdstr .. "/frcrspwn=" .. tmp + end + end + + -- ARTEFACTHUNT only ---------------------------------------------- + if GAME_TYPE.GAME_UNKNOWN ~= 0 then + if self.map_list:GetCurGameType() == GAME_TYPE.eGameIDArtefactHunt then + -- number of artefacts --------------------------------------------------------- + tmp = self.spin_artefacts_num:GetText() + if string.len(tmp) > 0 then + cmdstr = cmdstr .. "/anum=" .. tmp + end + -- aretefact delay -------------------------------------------------------------- + tmp = self.spin_artefact_delay:GetText() + if string.len(tmp) > 0 then + cmdstr = cmdstr .. "/ardelta=" .. tmp + end + -- artefact stay ---------------------------------------------------------------- + tmp = self.spin_artefact_stay:GetText() + if string.len(tmp) > 0 then + cmdstr = cmdstr .. "/astime=" .. tmp + end + + if self.tab_respawn:GetActiveId() == "artefactcapture" then -- artefact capture selected + cmdstr = cmdstr .. "/reinf=-1" + else + tmp = self.spin_reinforcement:GetText() + if string.len(tmp) > 0 then + cmdstr = cmdstr .. "/reinf=" .. tmp + end + end + end + -- CAPTURETHEARTEFACT only ---------------------------------------------- + if self.map_list:GetCurGameType() == GAME_TYPE.eGameIDCaptureTheArtefact then + -- number of artefacts --------------------------------------------------------- + tmp = self.spin_artefacts_num:GetText() + if string.len(tmp) > 0 then + cmdstr = cmdstr .. "/anum=" .. tmp + end + + tmp = self.spin_reinforcement:GetText() + if string.len(tmp) > 0 then + cmdstr = cmdstr .. "/reinf=" .. tmp + end + + tmp = self.spin_artreturn_time:GetText() + if string.len(tmp) > 0 then + cmdstr = cmdstr .. "/artrettime=" .. tmp + end + + if self.check_activated_return:GetCheck() then + cmdstr = cmdstr .. "/actret=1" + end + end + elseif GAME_TYPE.GAME_UNKNOWN == 0 then + if self.map_list:GetCurGameType() == GAME_TYPE.GAME_ARTEFACTHUNT then + -- number of artefacts --------------------------------------------------------- + tmp = self.spin_artefacts_num:GetText() + if string.len(tmp) > 0 then + cmdstr = cmdstr .. "/anum=" .. tmp + end + -- aretefact delay -------------------------------------------------------------- + tmp = self.spin_artefact_delay:GetText() + if string.len(tmp) > 0 then + cmdstr = cmdstr .. "/ardelta=" .. tmp + end + -- artefact stay ---------------------------------------------------------------- + tmp = self.spin_artefact_stay:GetText() + if string.len(tmp) > 0 then + cmdstr = cmdstr .. "/astime=" .. tmp + end + + if self.tab_respawn:GetActiveId() == "artefactcapture" then -- artefact capture selected + cmdstr = cmdstr .. "/reinf=-1" + else + tmp = self.spin_reinforcement:GetText() + if string.len(tmp) > 0 then + cmdstr = cmdstr .. "/reinf=" .. tmp + end + end + end + end + + -- friendly indicators -------------------------------------------------------------- + if self.check_friendly_indicators:GetCheck() then + cmdstr = cmdstr .. "/fi=1" .. tmp + end + -- friendly indicators -------------------------------------------------------------- + if self.check_friendly_names:GetCheck() then + cmdstr = cmdstr .. "/fn=1" .. tmp + end + -- anomaly time --------------------------------------------------------------------- + if false == self.check_no_anmalies:GetCheck() then + tmp = self.spin_anomaly_time:GetText() + if string.len(tmp) > 0 then + cmdstr = cmdstr .. "/ans=1/anslen=" .. tmp + end + else + cmdstr = cmdstr .. "/ans=0" + end + + -- pda hunt ------------------------------------------------------------------------- + if self.check_pda_hunt:GetCheck() then + cmdstr = cmdstr .. "/pdahunt=1" + end + + -- warm up time --------------------------------------------------------------------- + tmp = self.spin_warm_up_time:GetText() + if string.len(tmp) > 0 then + cmdstr = cmdstr .. "/warmup=" .. tmp + end + -- rate of weather change ----------------------------------------------------------- + tmp = self.spin_rate_of_change:GetText() + if string.len(tmp) > 0 then + cmdstr = cmdstr .. "/etimef=" .. tmp + end + + self.map_list:SetServerParams(cmdstr) +end + +function mp_main:GoToProfileTab() + self.tab:SetActiveTab("profile") +end + +function mp_main:OnConnectError(err_code, descr) + self.message_box:InitMessageBox("message_box_error") + if (descr == "") then + descr = "mp_gp_connect_error" + end + self.message_box:SetText(game.translate_string(descr)) + + --if ((err_code == CServerList.ece_unique_nick_not_registred) or + -- (err_code == CServerList.ece_unique_nick_expired)) then + self:GoToProfileTab() + self.message_box:ShowDialog(true) + +end + +function mp_main:OnBtn_Join() + local opt = COptionsManager() + opt:SaveValues("mm_mp_client") + opt:SaveValues("mm_mp_server") + opt:SaveValues("mm_mp_srv_filter") + + self.server_list:SetPlayerName(self.player_name:GetText()) + self.server_list:ConnectToSelected() +end + +function mp_main:OnKeyboard(dik, keyboard_action) + CUIScriptWnd.OnKeyboard(self,dik,keyboard_action) + + local bind = dik_to_bind(dik) + local console = get_console() + + if keyboard_action == ui_events.WINDOW_KEY_PRESSED then + if dik == DIK_keys.DIK_ESCAPE then + self.owner:ShowDialog(true) --new(show main window) + self:HideDialog() + self.owner:Show(true) + end + end + + return true +end + +function mp_main:Update() + CUIScriptWnd.Update(self) + + local mm = main_menu.get_main_menu() + local sss = mm:GetPatchProgress() + + if sss:GetInProgress() then + self.text_download:Show (true) + self.cap_download:Show (true) + self.download_progress:Show (true) + local _progr = sss:GetProgress() + self.download_progress:SetProgressPos (_progr) + local str = string.format("%.0f%%(%s)",_progr,sss:GetFlieName()) + self.text_download:TextControl():SetText(str) + self.btn_cancel_download:Show (true) + else + self.text_download:Show (false) + self.cap_download:Show (false) + self.download_progress:Show (false) + self.btn_cancel_download:Show (false) + end +end + + + +function mp_main:OnBtn_CancelDownload() + local mm = main_menu.get_main_menu() + mm:CancelDownload() +end diff --git a/gamedata/scripts/ui_save_dialog.script b/gamedata/scripts/ui_save_dialog.script new file mode 100644 index 0000000..8934813 --- /dev/null +++ b/gamedata/scripts/ui_save_dialog.script @@ -0,0 +1,238 @@ +-- File: UI_SAVE_DIALOG.SCRIPT +-- Description: Save Dialog for STALKER +-- Created: 27.9.2004 +-- Author: Serhiy Vynnychenko (narrator@gsc-game.kiev.ua) +-- Copyright: 2004 GSC Game World +-- Version: 1.0 +-- Modified: Serhiy Pryshchepa (peacemaker@gsc-game.kiev.ua) +local saved_game_extension = ui_load_dialog.saved_game_extension + +class "save_item" (CUIListBoxItem) + +function save_item:__init(height) super(height) + self:SetTextColor (GetARGB(255, 170, 170, 170)) + self.fn = self:GetTextItem() + self.fn:SetFont (GetFontLetterica18Russian()) + self.fn:SetEllipsis (true) +end + +class "save_dialog" (CUIScriptWnd) + +function save_dialog:__init() super() + self:InitControls () + self:InitCallBacks () + self:FillList () +end + +function save_dialog:__finalize() + +end + +function save_dialog:FillList() + self.list_box:RemoveAll() + local flist = getFS():file_list_open_ex("$game_saves$",FS.FS_ListFiles,"*"..saved_game_extension) + local f_cnt = flist:Size() + + flist:Sort(FS.FS_sort_by_modif_down) + + for it=0, f_cnt-1 do + local file = flist:GetAt(it) + local file_name = string.sub(file:NameFull(), 0, (string.len(file:NameFull()) - string.len(saved_game_extension))) + local date_time = "[" .. file:ModifDigitOnly() .. "]" + --menu_item = .. + self:AddItemToList(file_name, date_time) + end +end + +function save_dialog:InitControls() + self:SetWndRect(Frect():set(0,0,1024,768)) + + self.list_file_font = GetFontMedium() + self.list_date_font = GetFontMedium() + + local xml = CScriptXmlInit() + xml:ParseFile("ui_mm_save_dlg.xml") + + local ctrl + + xml:InitWindow ("background", 0, self) + + ctrl = CUIWindow() + xml:InitWindow ("file_item:main", 0, ctrl) + + self.file_item_main_sz = vector2():set(ctrl:GetWidth(),ctrl:GetHeight()) + + xml:InitWindow ("file_item:fn",0,ctrl) + self.file_item_fn_sz = vector2():set(ctrl:GetWidth(),ctrl:GetHeight()) + + xml:InitWindow ("file_item:fd",0,ctrl) + self.file_item_fd_sz = vector2():set(ctrl:GetWidth(),ctrl:GetHeight()) + + + self.form = xml:InitStatic ("form", self) + + xml:InitTextWnd ("form:caption", self.form) + + self.editbox = xml:InitEditBox("form:edit", self.form) + self:Register (self.editbox, "edit_filename") + + xml:InitFrame ("form:list_frame", self.form) + + self.list_box = xml:InitListBox ("form:list", self.form) + self.list_box:ShowSelectedItem (true) + self:Register (self.list_box, "list_window") + + ctrl = xml:Init3tButton ("form:btn_save", self.form) + self:Register (ctrl, "button_ok") + + ctrl = xml:Init3tButton ("form:btn_delete", self.form) + self:Register (ctrl, "button_del") + + ctrl = xml:Init3tButton ("form:btn_cancel", self.form) + self:Register (ctrl, "button_cancel") + + self.message_box = CUIMessageBoxEx() + self:Register (self.message_box,"message_box") + + self.mbox_mode = 0 +end + +function save_dialog:InitCallBacks() + -- main frame buttons + self:AddCallback("button_ok", ui_events.BUTTON_CLICKED, self.OnButton_ok_clicked, self) + self:AddCallback("button_cancel", ui_events.BUTTON_CLICKED, self.OnButton_cancel_clicked, self) + self:AddCallback("button_del", ui_events.BUTTON_CLICKED, self.OnButton_del_clicked, self) + + self:AddCallback("message_box", ui_events.MESSAGE_BOX_YES_CLICKED, self.OnMsgYes, self) + self:AddCallback("list_window", ui_events.LIST_ITEM_CLICKED, self.OnListItemClicked, self) +end + +function save_dialog:OnListItemClicked() + if self.list_box:GetSize()==0 then return end + + local item = self.list_box:GetSelectedItem() + + if item==nil then return end + + local item_text = item.fn:GetText() + self.editbox:SetText (item_text) +end + +function save_dialog:OnMsgYes() + if self.mbox_mode == 1 then + self:SaveFile(self.new_save) + + self.owner:ShowDialog(true) + self:HideDialog() + self.owner:Show(true) + + elseif self.mbox_mode == 2 then + self:delete_selected_file() + end +end + +function save_dialog:OnButton_del_clicked() + if self.list_box:GetSize()==0 then return end + + local item = self.list_box:GetSelectedItem() + if item == nil then return end + + self.mbox_mode = 2 + self.message_box:InitMessageBox("message_box_delete_file_name") + self.message_box:ShowDialog(true) +end + +function save_dialog:delete_selected_file() + if self.list_box:GetSize()==0 then return end + + local index = self.list_box:GetSelectedIndex() + + if index == -1 then return end + + local item = self.list_box:GetItemByIndex(index) + local filename = item.fn:GetText() + + ui_load_dialog.delete_save_game(filename) + + self.list_box:RemoveItem(item) + self:OnListItemClicked() +end + +function save_dialog:OnButton_ok_clicked() + -- prepare message box + + -- Get file name + self.new_save = self.editbox:GetText() + + -- check for empty name + if string.len(self.new_save) == 0 then + self.mbox_mode = 0 + self.message_box:InitMessageBox("message_box_empty_file_name") + self.message_box:ShowDialog(true) + return + end + + -- check for match name + local f = getFS() + local flist = f:file_list_open("$game_saves$",FS.FS_ListFiles) + local file_struct = f:exist("$game_saves$", self.new_save .. saved_game_extension ) + + if file_struct ~= nil then + self.mbox_mode = 1 + self.message_box:InitMessageBox("message_box_file_already_exist") + self.message_box:ShowDialog(true) + + flist:Free() + return + end + flist:Free() + self:SaveFile(self.new_save) + + self.owner:ShowDialog(true) + self:HideDialog() + self.owner:Show(true) +end + +function save_dialog:OnButton_cancel_clicked() + self.owner:ShowDialog(true) + self:HideDialog() + self.owner:Show(true) +end + +function save_dialog:OnKeyboard(dik, keyboard_action) --virtual function + CUIScriptWnd.OnKeyboard(self,dik,keyboard_action) + local bind = dik_to_bind(dik) + if bind == key_bindings.kQUIT then + self:OnButton_cancel_clicked() + else + + DIK_RETURN = 40 -- IX-Ray: Fixed DIK_RETURN + + if dik == DIK_RETURN and keyboard_action == ui_events.WINDOW_KEY_PRESSED then + self:OnButton_ok_clicked() + end + end + return true +end + +function save_dialog:AddItemToList(file_name, date_time) + local _itm = save_item(self.file_item_main_sz.y) + _itm:SetWndSize (self.file_item_main_sz) + + _itm.fn:SetWndPos (vector2():set(0,0)) + _itm.fn:SetWndSize (self.file_item_fn_sz) + _itm.fn:SetText (file_name) + + _itm.fage = _itm:AddTextField(date_time, self.file_item_fd_sz.x) + _itm.fage:SetFont (GetFontLetterica16Russian()) + _itm.fage:SetWndPos (vector2():set(self.file_item_fn_sz.x+4, 0)) + + self.list_box:AddExistingItem(_itm) +end + +function save_dialog:SaveFile(fileName) + if nil~= fileName then + local console = get_console() + console:execute("save " .. fileName) + end +end diff --git a/gamedata/scripts/xr_animpoint_predicates.script b/gamedata/scripts/xr_animpoint_predicates.script new file mode 100644 index 0000000..cd60417 --- /dev/null +++ b/gamedata/scripts/xr_animpoint_predicates.script @@ -0,0 +1,266 @@ +local smart_table = { + "zat_stalker_base_smart", + "jup_b41", + "jup_a6", + "pri_a16", + } + +local eatable_visuals = { + ["actors\\stalker_hero\\stalker_hero_1"] = true, + ["actors\\stalker_hero\\stalker_hero_novice_1"] = true, + ["actors\\stalker_hero\\stalker_hero_stalker_1"] = true, + ["actors\\stalker_hero\\stalker_hero_dolg_1"] = true, + ["actors\\stalker_hero\\stalker_hero_dolg_2"] = true, + ["actors\\stalker_hero\\stalker_hero_freedom_1"] = true, + ["actors\\stalker_hero\\stalker_hero_freedom_2"] = true, + ["actors\\stalker_hero\\stalker_hero_specops"] = true, + ["actors\\stalker_hero\\stalker_hero_military"] = true, + ["actors\\stalker_hero\\stalker_hero_neutral_nauchniy"] = true, + ["actors\\stalker_hero\\stalker_hero_cs_heavy"] = true, + ["actors\\stalker_hero\\stalker_hero_exo"] = true, + ["actors\\stalker_bandit\\stalker_bandit_3"] = true, + ["actors\\stalker_bandit\\stalker_bandit_3_face_1"] = true, + ["actors\\stalker_bandit\\stalker_bandit_3_mask"] = true, + ["actors\\stalker_bandit\\stalker_bandit_4"] = true, + ["actors\\stalker_dolg\\stalker_dolg_2_face_1"] = true, + ["actors\\stalker_dolg\\stalker_dolg_1_face_1"] = true, + ["actors\\stalker_dolg\\stalker_dolg_3_face_1"] = true, + ["actors\\stalker_freedom\\stalker_freedom_1_face_1"] = true, + ["actors\\stalker_freedom\\stalker_freedom_2_face_1"] = true, + ["actors\\stalker_freedom\\stalker_freedom_2_face_2"] = true, + ["actors\\stalker_freedom\\stalker_freedom_3"] = true, + ["actors\\stalker_freedom\\stalker_freedom_3_face_1"] = true, + ["actors\\stalker_monolith\\stalker_monolith_1_face_1"] = true, + ["actors\\stalker_nebo\\stalker_nebo_2_face_1"] = true, + ["actors\\stalker_neutral\\stalker_neutral_1_face_1"] = true, + ["actors\\stalker_neutral\\stalker_neutral_1_face_2"] = true, + ["actors\\stalker_neutral\\stalker_neutral_1_face_3"] = true, + ["actors\\stalker_bandit\\stalker_bandit_3_face_3"] = true, + ["actors\\stalker_neutral\\stalker_neutral_2_face_1"] = true, + ["actors\\stalker_neutral\\stalker_neutral_2_face_2"] = true, + ["actors\\stalker_neutral\\stalker_neutral_2_face_3"] = true, + ["actors\\stalker_neutral\\stalker_neutral_2_face_4"] = true, + ["actors\\stalker_neutral\\stalker_neutral_2_face_5"] = true, + ["actors\\stalker_neutral\\stalker_neutral_2_face_6"] = true, + ["actors\\stalker_neutral\\stalker_neutral_2_face_7"] = true, + ["actors\\stalker_bandit\\stalker_bandit_3_face_2"] = true, + ["actors\\stalker_neutral\\stalker_neutral_3_face_1"] = true, + ["actors\\stalker_neutral\\stalker_neutral_nauchniy_face_1"] = true, + ["actors\\stalker_neutral\\stalker_neutral_nauchniy_face_3"] = true, + ["actors\\stalker_soldier\\stalker_soldier_1"] = true, + ["actors\\stalker_soldier\\stalker_soldier_1_face_1"] = true, + ["actors\\stalker_soldier\\stalker_solider_2"] = true, + ["actors\\stalker_soldier\\stalker_solider_2_face_1"] = true, + ["actors\\stalker_soldier\\stalker_solider_3_face_1"] = true, + ["actors\\stalker_soldier\\stalker_solider_ecolog_face_1"] = true, + ["actors\\stalker_ucheniy\\stalker_ucheniy_1_face_1"] = true, + ["actors\\stalker_ucheniy\\stalker_ucheniy_1_face_2"] = true, + ["actors\\stalker_zombied\\stalker_zombied_1"] = true, + ["actors\\stalker_zombied\\stalker_zombied_3"] = true, + ["actors\\stalker_neutral\\stalker_neutral_nauchniy_face_2"] = true +} + +local harmonica_visuals = { + ["actors\\stalker_hero\\stalker_hero_1"] = true, + ["actors\\stalker_hero\\stalker_hero_novice_1"] = true, + ["actors\\stalker_hero\\stalker_hero_stalker_1"] = true, + ["actors\\stalker_hero\\stalker_hero_dolg_1"] = true, + ["actors\\stalker_hero\\stalker_hero_dolg_2"] = true, + ["actors\\stalker_hero\\stalker_hero_freedom_1"] = true, + ["actors\\stalker_hero\\stalker_hero_freedom_2"] = true, + ["actors\\stalker_hero\\stalker_hero_specops"] = true, + ["actors\\stalker_hero\\stalker_hero_military"] = true, + ["actors\\stalker_hero\\stalker_hero_neutral_nauchniy"] = true, + ["actors\\stalker_hero\\stalker_hero_cs_heavy"] = true, + ["actors\\stalker_hero\\stalker_hero_exo"] = true, + ["actors\\stalker_bandit\\stalker_bandit_1"] = true, + ["actors\\stalker_bandit\\stalker_bandit_2"] = true, + ["actors\\stalker_bandit\\stalker_bandit_3"] = true, + ["actors\\stalker_bandit\\stalker_bandit_3_face_1"] = true, + ["actors\\stalker_bandit\\stalker_bandit_3_mask"] = true, + ["actors\\stalker_bandit\\stalker_bandit_4"] = true, + ["actors\\stalker_dolg\\stalker_dolg_2_face_1"] = true, + ["actors\\stalker_dolg\\stalker_dolg_1_face_1"] = true, + ["actors\\stalker_dolg\\stalker_dolg_2_mask"] = true, + ["actors\\stalker_dolg\\stalker_dolg_3_face_1"] = true, + ["actors\\stalker_freedom\\stalker_freedom_1_face_1"] = true, + ["actors\\stalker_freedom\\stalker_freedom_2_face_1"] = true, + ["actors\\stalker_freedom\\stalker_freedom_2_face_2"] = true, + ["actors\\stalker_freedom\\stalker_freedom_2_mask"] = true, + ["actors\\stalker_freedom\\stalker_freedom_3"] = true, + ["actors\\stalker_freedom\\stalker_freedom_3_face_1"] = true, + ["actors\\stalker_monolith\\stalker_monolith_1_face_1"] = true, + ["actors\\stalker_nebo\\stalker_nebo_2_face_1"] = true, + ["actors\\stalker_neutral\\stalker_neutral_1"] = true, + ["actors\\stalker_neutral\\stalker_neutral_1_face_1"] = true, + ["actors\\stalker_neutral\\stalker_neutral_1_face_2"] = true, + ["actors\\stalker_neutral\\stalker_neutral_1_face_3"] = true, + ["actors\\stalker_bandit\\stalker_bandit_3_face_3"] = true, + ["actors\\stalker_neutral\\stalker_neutral_2_face_1"] = true, + ["actors\\stalker_neutral\\stalker_neutral_2_face_2"] = true, + ["actors\\stalker_neutral\\stalker_neutral_2_face_3"] = true, + ["actors\\stalker_neutral\\stalker_neutral_2_face_4"] = true, + ["actors\\stalker_neutral\\stalker_neutral_2_face_5"] = true, + ["actors\\stalker_neutral\\stalker_neutral_2_face_6"] = true, + ["actors\\stalker_neutral\\stalker_neutral_2_face_7"] = true, + ["actors\\stalker_bandit\\stalker_bandit_3_face_2"] = true, + ["actors\\stalker_neutral\\stalker_neutral_2_mask"] = true, + ["actors\\stalker_neutral\\stalker_neutral_3_face_1"] = true, + ["actors\\stalker_neutral\\stalker_neutral_nauchniy_face_1"] = true, + ["actors\\stalker_neutral\\stalker_neutral_nauchniy_face_3"] = true, + ["actors\\stalker_soldier\\stalker_soldier_1"] = true, + ["actors\\stalker_soldier\\stalker_soldier_1_face_1"] = true, + ["actors\\stalker_soldier\\stalker_solider_2"] = true, + ["actors\\stalker_soldier\\stalker_solider_2_face_1"] = true, + ["actors\\stalker_soldier\\stalker_solider_3_face_1"] = true, + ["actors\\stalker_soldier\\stalker_solider_ecolog_face_1"] = true, + ["actors\\stalker_ucheniy\\stalker_ucheniy_1_face_1"] = true, + ["actors\\stalker_ucheniy\\stalker_ucheniy_1_face_2"] = true, + ["actors\\stalker_zombied\\stalker_zombied_1"] = true, + ["actors\\stalker_zombied\\stalker_zombied_2"] = true, + ["actors\\stalker_zombied\\stalker_zombied_3"] = true, + ["actors\\stalker_zombied\\stalker_zombied_4"] = true, + ["actors\\stalker_neutral\\stalker_neutral_nauchniy_face_2"] = true +} + +-------------------------------------------------------------------------------- +-- Predicate functions for xr_animpoint actions -------------------------------- +-------------------------------------------------------------------------------- +function const_predicate_true(npc_id) + return true +end + +function animpoint_predicate_bread(npc_id) + if(db.storage[npc_id] and db.storage[npc_id].object and eatable_visuals[db.storage[npc_id].object:get_visual_name()] and db.storage[npc_id].object:object("bread")) == true then + return true + end + return false +end + +function animpoint_predicate_kolbasa(npc_id) + if(db.storage[npc_id] and db.storage[npc_id].object and eatable_visuals[db.storage[npc_id].object:get_visual_name()] and db.storage[npc_id].object:object("kolbasa")) then + return true + end + return false +end + +function animpoint_predicate_vodka(npc_id) + if(db.storage[npc_id] and db.storage[npc_id].object and eatable_visuals[db.storage[npc_id].object:get_visual_name()] and db.storage[npc_id].object:object("vodka")) then + return true + end + return false +end + +function animpoint_predicate_energy(npc_id) + if(db.storage[npc_id] and db.storage[npc_id].object and eatable_visuals[db.storage[npc_id].object:get_visual_name()] and db.storage[npc_id].object:object("energy_drink")) then + return true + end + return false +end + +function animpoint_predicate_guitar(npc_id, is_in_camp) + --printf(" predicate_guitar %s", npc_id) + --printf(" registred_camp %s", tostring(is_in_camp)) + if is_in_camp == true and db.storage[npc_id] and db.storage[npc_id].object and db.storage[npc_id].object:object("guitar_a") then + --printf(" return true") + return true + end + --printf(" return false") + return false +end + +function animpoint_predicate_harmonica(npc_id, is_in_camp) + --printf(" predicate_harmonica %s", npc_id) + --printf(" registred_camp %s", tostring(is_in_camp)) + if is_in_camp == true and db.storage[npc_id] and db.storage[npc_id].object and harmonica_visuals[db.storage[npc_id].object:get_visual_name()] and db.storage[npc_id].object:object("harmonica_a") then + --printf(" return true") + return true + end + --printf(" return false") + return false +end + + +function animpoint_predicate_weapon(npc_id) + if(db.storage[npc_id] and db.storage[npc_id].object) then + local smart = xr_gulag.get_npc_smart(db.storage[npc_id].object) + if(smart) then + for k,v in pairs(smart_table) do + if smart:name() == v then + return false + end + end + end + end + return true +end + +-------------------------------------------------------------------------------- +-- Associative table (smartcover - animation) ---------------------------------- +-------------------------------------------------------------------------------- +associations = { + animpoint_stay_wall = { + {name = "animpoint_stay_wall", predicate = xr_animpoint_predicates.const_predicate_true}, + {name = "animpoint_stay_wall_eat_bread", predicate = xr_animpoint_predicates.animpoint_predicate_bread}, + {name = "animpoint_stay_wall_eat_kolbasa", predicate = xr_animpoint_predicates.animpoint_predicate_kolbasa}, + {name = "animpoint_stay_wall_drink_vodka", predicate = xr_animpoint_predicates.animpoint_predicate_vodka}, + {name = "animpoint_stay_wall_drink_energy", predicate = xr_animpoint_predicates.animpoint_predicate_energy}, +-- {name = "animpoint_stay_wall_guitar", predicate = xr_animpoint_predicates.animpoint_predicate_guitar}, +-- {name = "animpoint_stay_wall_harmonica", predicate = xr_animpoint_predicates.animpoint_predicate_harmonica}, + {name = "animpoint_stay_wall_weapon", predicate = xr_animpoint_predicates.animpoint_predicate_weapon}, + }, + animpoint_stay_table = { + {name = "animpoint_stay_table", predicate = xr_animpoint_predicates.const_predicate_true}, + {name = "animpoint_stay_table_eat_bread", predicate = xr_animpoint_predicates.animpoint_predicate_bread}, + {name = "animpoint_stay_table_eat_kolbasa", predicate = xr_animpoint_predicates.animpoint_predicate_kolbasa}, + {name = "animpoint_stay_table_drink_vodka", predicate = xr_animpoint_predicates.animpoint_predicate_vodka}, + {name = "animpoint_stay_table_drink_energy", predicate = xr_animpoint_predicates.animpoint_predicate_energy}, +-- {name = "animpoint_stay_table_guitar", predicate = xr_animpoint_predicates.animpoint_predicate_guitar}, +-- {name = "animpoint_stay_table_harmonica", predicate = xr_animpoint_predicates.animpoint_predicate_harmonica}, + {name = "animpoint_stay_table_weapon", predicate = xr_animpoint_predicates.animpoint_predicate_weapon}, + }, + animpoint_sit_high = { + {name = "animpoint_sit_high", predicate = xr_animpoint_predicates.const_predicate_true}, + {name = "animpoint_sit_high_eat_bread", predicate = xr_animpoint_predicates.animpoint_predicate_bread}, + {name = "animpoint_sit_high_eat_kolbasa", predicate = xr_animpoint_predicates.animpoint_predicate_kolbasa}, + {name = "animpoint_sit_high_drink_vodka", predicate = xr_animpoint_predicates.animpoint_predicate_vodka}, + {name = "animpoint_sit_high_drink_energy", predicate = xr_animpoint_predicates.animpoint_predicate_energy}, +-- {name = "animpoint_sit_high_guitar", predicate = xr_animpoint_predicates.animpoint_predicate_guitar}, + {name = "animpoint_sit_high_harmonica", predicate = xr_animpoint_predicates.animpoint_predicate_harmonica}, +-- {name = "animpoint_sit_high_weapon", predicate = xr_animpoint_predicates.animpoint_predicate_weapon}, + }, + animpoint_sit_normal = { + {name = "animpoint_sit_normal", predicate = xr_animpoint_predicates.const_predicate_true}, + {name = "animpoint_sit_normal_eat_bread", predicate = xr_animpoint_predicates.animpoint_predicate_bread}, + {name = "animpoint_sit_normal_eat_kolbasa", predicate = xr_animpoint_predicates.animpoint_predicate_kolbasa}, + {name = "animpoint_sit_normal_drink_vodka", predicate = xr_animpoint_predicates.animpoint_predicate_vodka}, + {name = "animpoint_sit_normal_drink_energy", predicate = xr_animpoint_predicates.animpoint_predicate_energy}, + {name = "animpoint_sit_normal_guitar", predicate = xr_animpoint_predicates.animpoint_predicate_guitar}, +-- {name = "animpoint_sit_normal_harmonica", predicate = xr_animpoint_predicates.animpoint_predicate_harmonica}, +-- {name = "animpoint_sit_normal_weapon", predicate = xr_animpoint_predicates.animpoint_predicate_weapon}, + }, + animpoint_sit_low = { + {name = "animpoint_sit_low", predicate = xr_animpoint_predicates.const_predicate_true}, + {name = "animpoint_sit_low_eat_bread", predicate = xr_animpoint_predicates.animpoint_predicate_bread}, + {name = "animpoint_sit_low_eat_kolbasa", predicate = xr_animpoint_predicates.animpoint_predicate_kolbasa}, + {name = "animpoint_sit_low_drink_vodka", predicate = xr_animpoint_predicates.animpoint_predicate_vodka}, + {name = "animpoint_sit_low_drink_energy", predicate = xr_animpoint_predicates.animpoint_predicate_energy}, + {name = "animpoint_sit_low_guitar", predicate = xr_animpoint_predicates.animpoint_predicate_guitar}, + {name = "animpoint_sit_low_harmonica", predicate = xr_animpoint_predicates.animpoint_predicate_harmonica}, +-- {name = "animpoint_sit_low_weapon", predicate = xr_animpoint_predicates.animpoint_predicate_weapon}, + }, + walker_camp = { {name = "play_guitar", predicate = xr_animpoint_predicates.animpoint_predicate_guitar}, + {name = "play_harmonica", predicate = xr_animpoint_predicates.animpoint_predicate_harmonica} + }, + -- START IX-Ray + kamp = { + {name = "kamp", predicate = xr_animpoint_predicates.const_predicate_true}, + {name = "kamp_eat_bread", predicate = xr_animpoint_predicates.animpoint_predicate_bread}, + {name = "kamp_eat_kolbasa", predicate = xr_animpoint_predicates.animpoint_predicate_kolbasa}, + {name = "kamp_drink_vodka", predicate = xr_animpoint_predicates.animpoint_predicate_vodka}, + {name = "kamp_drink_energy", predicate = xr_animpoint_predicates.animpoint_predicate_energy}, + {name = "kamp_guitar", predicate = xr_animpoint_predicates.animpoint_predicate_guitar}, + {name = "kamp_harmonica", predicate = xr_animpoint_predicates.animpoint_predicate_harmonica}, + }, + -- END IX-Ray +} diff --git a/gamedata/scripts/xr_combat_ignore.script b/gamedata/scripts/xr_combat_ignore.script new file mode 100644 index 0000000..db79057 --- /dev/null +++ b/gamedata/scripts/xr_combat_ignore.script @@ -0,0 +1,198 @@ +--[[------------------------------------------------------------------------------------------------------------------ +Игнорирование врагов +Чугай Александр +--------------------------------------------------------------------------------------------------------------------]] +local ignored_smart = { + zat_stalker_base_smart = true, + jup_b41 = true, + jup_a6 = true, + pri_a16 = true +} + +fighting_with_actor_npcs = { +} + +local smarts_by_no_assault_zones = { + ["zat_a2_sr_no_assault"] = "zat_stalker_base_smart", + ["jup_a6_sr_no_assault"] = "jup_a6", + ["jup_b41_sr_no_assault"] = "jup_b41" +} + + +function is_enemy(obj, enemy, st, not_check_sim) + if not obj:alive() then + return false + end + + if obj:critically_wounded() then + return true + end + + if st.enabled == false then + return true + end + + local overrides = st.overrides + local obj_id = obj:id() + local storage = db.storage[obj_id] + if storage == nil then + return true + end + storage.enemy_id = enemy:id() + + --' Отсеиваем по зоне + local active_sector = storage.active_sector + if active_sector ~= nil then + if sr_danger.check_danger_position(enemy:position(), active_sector) == false then +-- obj:enable_memory_object( enemy, false ) + return false + end + end + + -- Проверка на зоны комбат игнора возле баз: + -- игнорировать если: + -- враг не актер. + -- сталкер находится в зоне. + -- смарт в котором находится сталкер не в состоянии тревоги. + if db.actor and enemy and enemy:id() ~= db.actor:id() then + for k,v in pairs (smarts_by_no_assault_zones) do + local zone = db.zone_by_name[k] + if zone and (utils.npc_in_zone(obj, zone) or utils.npc_in_zone(enemy, zone)) then + local smart = sim_board.get_sim_board():get_smart_by_name(v) + if smart and smart.base_on_actor_control ~= nil and smart.base_on_actor_control.status ~= smart_terrain_control.ALARM then + return false + end + end + end + end + + local se_enemy = alife():object(enemy:id()) + if se_enemy ~= nil and se_enemy.m_smart_terrain_id ~= nil and se_enemy.m_smart_terrain_id ~= 65535 then + local enemy_smart = alife():object(se_enemy.m_smart_terrain_id) + local smart_name = enemy_smart:name() + if ignored_smart[smart_name] == true then +-- obj:enable_memory_object( enemy, false ) + return false + end + end + --printf("checking combat_ignore for stalker[%s] enemy name [%s] in section[%s]",obj:name(), enemy:name(),storage.active_section) + --' Если есть оверрайды, то работаем по ним. + if overrides and + overrides.combat_ignore + then + local ret_value = xr_logic.pick_section_from_condlist( enemy, obj, overrides.combat_ignore.condlist ) + if ret_value == "true" then + --printf("pl:Disabling_memory_object[1] for stalker[%s] enemy name [%s] in section[%s]",obj:name(), enemy:name(),storage.active_section) +-- obj:enable_memory_object( enemy, false ) + return false + end + return true + end + return true +end +---------------------------------------------------------------------------------------------------------------------- + +class "action_process_enemy" + +function action_process_enemy:__init( obj, storage ) + self.object = obj + self.st = storage +end + +function action_process_enemy:enemy_callback( obj, enemy ) +--' local obj_pos = self.object:position() +--' local ene_pos = enemy:position() +--' printf("FOUND ENEMY [%s](%s,%s,%s) -> [%s](%s,%s,%s)", self.object:name(), obj_pos.x, obj_pos.y, obj_pos.z, +--' enemy:name(), ene_pos.x, ene_pos.y, ene_pos.z) + if enemy:id() == db.actor:id() then + fighting_with_actor_npcs[obj:id()] = true + end + + local is_obj_enemy = is_enemy( obj, enemy, self.st, false ) + if is_obj_enemy == true then + local se_obj = alife():object(obj:id()) + if se_obj and se_obj.m_smart_terrain_id ~= 65535 then + local smart_obj = alife():object(se_obj.m_smart_terrain_id) + smart_obj:set_alarm() + + if db.actor and enemy and enemy:id() == db.actor:id() and smart_obj.base_on_actor_control ~= nil then + -- Fix start for detecting attacking of the base even when attacked npc is not near the base + local base_pos = db.zone_by_name[smart_obj.base_on_actor_control.noweap_zone]:position() + local distance = obj:position():distance_to(base_pos) + if distance < 100 then + smart_obj.base_on_actor_control:actor_attack() + end + -- Fix end for detecting attacking of the base even when attacked npc is not near the base + end + end + local se_enemy = alife():object(enemy:id()) + if se_obj and se_enemy then + local sim_obj_registry = simulation_objects.get_sim_obj_registry() + if se_obj.group_id ~= 65535 and sim_obj_registry.objects[se_obj.group_id] ~= nil and + se_enemy.group_id ~= 65535 and sim_obj_registry.objects[se_enemy.group_id] == nil and + se_obj.position:distance_to_sqr(se_enemy.position) > 900 then + return false + end + end + end + + return is_obj_enemy +end + +function action_process_enemy:hit_callback(obj, amount, local_direction, who, bone_index) + if who == nil then + return + end + +-- printf("_bp: action_process_enemy: hit_callback(): obj='%s'", obj:name()) + if amount == 0 then + -- Кто-то стрельнул в воздух + return + end + + if who:id() == db.actor:id() then + local overrides = self.st.overrides + if not overrides or not overrides.combat_ignore_keep_when_attacked then + --printf("_bp: action_process_enemy: hit_callback(): obj='%s': SCHEME DISABLED", obj:name()) + self.st.enabled = false + end + end +end + +---------------------------------------------------------------------------------------------------------------------- +-- binder +---------------------------------------------------------------------------------------------------------------------- +function add_to_binder( npc, ini, scheme, section, storage ) + local new_action = this.action_process_enemy( npc, storage ) + storage.action = new_action +end + +function set_combat_ignore_checker( npc, ini, scheme) + local st = xr_logic.assign_storage_and_bind( npc, ini, scheme ) +end + +function reset_combat_ignore_checker(npc, scheme, st, section) + local storage = st.combat_ignore + + npc:set_enemy_callback( storage.action.enemy_callback, storage.action ) + + -- Подписываемся на hit callback-и: + xr_logic.subscribe_action_for_events( npc, storage, storage.action ) + + storage.overrides = xr_logic.generic_scheme_overrides(npc) + + storage.enabled = true +end + + + +function disable_scheme( npc, scheme ) + npc:set_enemy_callback() + + -- Отписываемся от hit callback. Это делать обязательно, потому что иначе при переключении на другой набор + -- схем, в котором нет перехвата боя, продолжится вызываться callback в старом подписанном action-е. + local st = db.storage[npc:id()][scheme] + if st then + xr_logic.unsubscribe_action_from_events(npc, st, st.action) + end +end diff --git a/gamedata/scripts/xr_effects.script b/gamedata/scripts/xr_effects.script new file mode 100644 index 0000000..dd16f47 --- /dev/null +++ b/gamedata/scripts/xr_effects.script @@ -0,0 +1,3384 @@ +-- ---------------------------------------------------------------------------------------------------- +-- Общие функции +-- ---------------------------------------------------------------------------------------------------- + +-- Принудительно апдейтит логику у объектов, переданных параметром. Пока работает только с НПС +function update_npc_logic(actor, object, p) + --printf("UPDATE NPC LOGIC %s", device():time_global()) + for k,v in pairs(p) do + local npc = get_story_object(v) + if npc ~= nil then + xr_motivator.update_logic(npc) + + local planner = npc:motivation_action_manager() + planner:update() + planner:update() + planner:update() + + db.storage[npc:id()].state_mgr:update() + db.storage[npc:id()].state_mgr:update() + db.storage[npc:id()].state_mgr:update() + db.storage[npc:id()].state_mgr:update() + db.storage[npc:id()].state_mgr:update() + db.storage[npc:id()].state_mgr:update() + db.storage[npc:id()].state_mgr:update() + end + end +end + +function update_obj_logic(actor, object, p) + --printf("UPDATE OBJ LOGIC %s", device():time_global()) + for k,v in pairs(p) do + local obj = get_story_object(v) + if obj ~= nil then + + local st = db.storage[obj:id()] + xr_logic.try_switch_to_another_section(obj, st[st.active_scheme], actor) + +-- if st.active_scheme == "sr_cutscene" then +-- st[st.active_scheme].cutscene_action +-- end + + end + end +end + +local ui_active_slot = 0 + +function disable_ui(actor, npc, p) + if db.actor:is_talking() then + db.actor:stop_talk() + end + level.show_weapon(false) + + if not p or (p and p[1] ~= "true") then + local slot = db.actor:active_slot() + if(slot~=0) then + ui_active_slot = slot + db.actor:activate_slot(0) + end + end + + level.disable_input() + level.hide_indicators_safe() + local hud = get_hud() + hud:HideActorMenu() + hud:HidePdaMenu() + disable_actor_nightvision(nil,nil) + disable_actor_torch(nil,nil) +end + +function disable_ui_only(actor, npc) + if db.actor:is_talking() then + db.actor:stop_talk() + end + level.show_weapon(false) + + if not p or (p and p[1] ~= "true") then + local slot = db.actor:active_slot() + if(slot~=0) then + ui_active_slot = slot + db.actor:activate_slot(0) + end + end + + level.disable_input() + level.hide_indicators_safe() + local hud = get_hud() + hud:HideActorMenu() + hud:HidePdaMenu() +end + +function enable_ui(actor, npc, p) + --db.actor:restore_weapon() + + if not p or (p and p[1] ~= "true") then + if ui_active_slot ~= 0 and db.actor:item_in_slot(ui_active_slot) ~= nil then + db.actor:activate_slot(ui_active_slot) + end + end + + ui_active_slot = 0 + level.show_weapon(true) + level.enable_input() + level.show_indicators() + enable_actor_nightvision(nil,nil) + enable_actor_torch(nil,nil) +end + +local cam_effector_playing_object_id = nil + +function run_cam_effector(actor, npc, p) + if p[1] then + local loop, num = false, (1000 + math.random(100)) + if p[2] and type(p[2]) == "number" and p[2] > 0 then + num = p[2] + end + if p[3] and p[3] == "true" then + loop = true + end + --level.add_pp_effector(p[1] .. ".ppe", num, loop) + level.add_cam_effector("camera_effects\\" .. p[1] .. ".anm", num, loop, "xr_effects.cam_effector_callback") + cam_effector_playing_object_id = npc:id() + end +end + +function stop_cam_effector(actor, npc, p) + if p[1] and type(p[1]) == "number" and p[1] > 0 then + level.remove_cam_effector(p[1]) + end +end + +function run_cam_effector_global(actor, npc, p) + local num = 1000 + math.random(100) + if p[2] and type(p[2]) == "number" and p[2] > 0 then + num = p[2] + end + local fov = device().fov + if p[3] ~= nil and type(p[3]) == "number" then + fov = p[3] + end + level.add_cam_effector2("camera_effects\\" .. p[1] .. ".anm", num, false, "xr_effects.cam_effector_callback", fov) + cam_effector_playing_object_id = npc:id() +end + +function cam_effector_callback() + if cam_effector_playing_object_id == nil then + printf("cam_eff:callback1!") + return + end + local st = db.storage[cam_effector_playing_object_id] + if st == nil or st.active_scheme == nil then + printf("cam_eff:callback2!") + return + end + + if st[st.active_scheme].signals == nil then + printf("cam_eff:callback3!") + return + end + st[st.active_scheme].signals["cameff_end"] = true +end + +function run_postprocess(actor, npc, p) + if (p[1]) then + if(system_ini():section_exist(p[1])) then + local num = 2000 + math.random(100) + if(p[2] and type(p[2]) == "number" and p[2]>0) then + num = p[2] + end + printf("adding complex effector [%s], id [%s], from [%s]", p[1], tostring(p[2]), tostring(npc:name())) + level.add_complex_effector(p[1], num) + else + abort("Complex effector section is no set! [%s]", tostring(p[1])) + end + end +end + +function stop_postprocess(actor, npc, p) + if(p[1] and type(p[1]) == "number" and p[1]>0) then + printf("removing complex effector id [%s] from [%s]", tostring(p[1]), tostring(npc:name())) + level.remove_complex_effector(p[1]) + end +end + +function run_tutorial(actor, npc, p) + printf("run tutorial called") + game.start_tutorial(p[1]) +end + +--[[ +function run_tutorial_if_newbie(actor, npc, p) + if has_alife_info("esc_trader_newbie") then + game.start_tutorial(p[1]) + end +end +]]-- + +function jup_b32_place_scanner(actor, npc) + for i = 1, 5 do + if xr_conditions.actor_in_zone(actor, npc, {"jup_b32_sr_scanner_place_"..i}) + and not has_alife_info("jup_b32_scanner_"..i.."_placed") then + db.actor:give_info_portion("jup_b32_scanner_"..i.."_placed") + db.actor:give_info_portion("jup_b32_tutorial_done") + remove_item(actor, npc, {"jup_b32_scanner_device"}) + spawn_object(actor, nil, {"jup_b32_ph_scanner","jup_b32_scanner_place_"..i}) + end + end +end + +function jup_b32_pda_check(actor, npc) + pda.change_anomalies_names() +end + +function pri_b306_generator_start(actor, npc) + if xr_conditions.actor_in_zone(actor, npc, {"pri_b306_sr_generator"}) then + give_info("pri_b306_lift_generator_used") + end +end + +function jup_b206_get_plant(actor, npc) + if xr_conditions.actor_in_zone(actor, npc, {"jup_b206_sr_quest_line"}) then + give_info("jup_b206_anomalous_grove_has_plant") + give_actor(actor, npc, {"jup_b206_plant"}) + destroy_object(actor, npc, {"story", "jup_b206_plant_ph"}) + end +end + +function pas_b400_switcher(actor, npc) + if xr_conditions.actor_in_zone(actor, npc, {"pas_b400_sr_switcher"}) then + give_info("pas_b400_switcher_use") + end +end + + +function jup_b209_place_scanner(actor, npc) + if xr_conditions.actor_in_zone(actor, npc, {"jup_b209_hypotheses"}) then + scenario_autosave(db.actor, nil, {"st_save_jup_b209_placed_mutant_scanner"}) + db.actor:give_info_portion("jup_b209_scanner_placed") + remove_item(actor, npc, {"jup_b209_monster_scanner"}) + spawn_object(actor, nil, {"jup_b209_ph_scanner","jup_b209_scanner_place_point"}) + end +end + +function jup_b9_heli_1_searching(actor, npc) + if xr_conditions.actor_in_zone(actor, npc, {"jup_b9_heli_1"}) + then + db.actor:give_info_portion("jup_b9_heli_1_searching") + end +end + +function pri_a18_use_idol(actor, npc) + if xr_conditions.actor_in_zone(actor, npc, {"pri_a18_use_idol_restrictor"}) + then + db.actor:give_info_portion("pri_a18_run_cam") + end +end + +function jup_b8_heli_4_searching(actor, npc) + if xr_conditions.actor_in_zone(actor, npc, {"jup_b8_heli_4"}) + then + db.actor:give_info_portion("jup_b8_heli_4_searching") + end +end + +function jup_b10_ufo_searching(actor, npc) + if xr_conditions.actor_in_zone(actor, npc, {"jup_b10_ufo_restrictor"}) + then + db.actor:give_info_portion("jup_b10_ufo_memory_started") + give_actor(db.actor,nil,{"jup_b10_ufo_memory"}) + end +end + + +function zat_b101_heli_5_searching(actor, npc) + if xr_conditions.actor_in_zone(actor, npc, {"zat_b101_heli_5"}) + then + db.actor:give_info_portion("zat_b101_heli_5_searching") + end +end + +function zat_b28_heli_3_searching(actor, npc) + if xr_conditions.actor_in_zone(actor, npc, {"zat_b28_heli_3"}) + then + db.actor:give_info_portion("zat_b28_heli_3_searching") + end +end + +function zat_b100_heli_2_searching(actor, npc) + if xr_conditions.actor_in_zone(actor, npc, {"zat_b100_heli_2"}) then + db.actor:give_info_portion("zat_b100_heli_2_searching") + end +end + +function teleport_actor(actor, npc, p) + local point = patrol(p[1]) + local dir + if p[2] ~= nil then + local look = patrol(p[2]) + dir = -look:point(0):sub(point:point(0)):getH() + db.actor:set_actor_direction(dir) + end + + for k,v in pairs(db.no_weap_zones) do + local zone = db.zone_by_name[k] + if utils.npc_in_zone(db.actor, zone) then + db.no_weap_zones[k] = true + end + end + + if npc and npc:name() ~= nil then + printf("teleporting actor from [%s]", tostring(npc:name())) + end + + db.actor:set_actor_position(point:point(0)) +end + + +local function reset_animation(npc) + local state_mgr = db.storage[npc:id()].state_mgr + if state_mgr == nil then + return + end + local planner = npc:motivation_action_manager() + + state_mgr.animation:set_state(nil, true) + state_mgr.animation:set_control() + state_mgr.animstate:set_state(nil, true) + state_mgr.animstate:set_control() + + state_mgr:set_state("idle", nil, nil, nil, {fast_set = true}) + +-- planner:update() +-- planner:update() +-- planner:update() + + state_mgr:update() + state_mgr:update() + state_mgr:update() + state_mgr:update() + state_mgr:update() + state_mgr:update() + state_mgr:update() + + npc:set_body_state(move.standing) + npc:set_mental_state(anim.free) + +end + + +function teleport_npc(actor, npc, p) + local patrol_point = p[1] + local patrol_point_index = p[2] or 0 + if patrol_point == nil then + abort("Wrong parameters in 'teleport_npc' function!!!") + end + local position = patrol(patrol_point):point(patrol_point_index) + reset_animation(npc) + + npc:set_npc_position(position) +end + +function teleport_npc_by_story_id(actor, npc, p) + local story_id = p[1] + local patrol_point = p[2] + local patrol_point_index = p[3] or 0 + if story_id == nil or patrol_point == nil then + abort("Wrong parameters in 'teleport_npc_by_story_id' function!!!") + end + local position = patrol(tostring(patrol_point)):point(patrol_point_index) + local npc_id = get_story_object_id(story_id) + if npc_id == nil then + abort("There is no story object with id [%s]", story_id) + end + local cl_object = level.object_by_id(npc_id) + if cl_object then + reset_animation(cl_object) + cl_object:set_npc_position(position) + else + alife():object(npc_id).position = position + end +end + +function teleport_squad(actor, npc, p) + local squad_story_id = p[1] + local patrol_point = p[2] + local patrol_point_index = p[3] or 0 + if squad_story_id == nil or patrol_point == nil then + abort("Wrong parameters in 'teleport_squad' function!!!") + end + local position = patrol(patrol_point):point(patrol_point_index) + local squad = get_story_squad(squad_story_id) + if squad == nil then + abort("There is no squad with story id [%s]", squad_story_id) + end + squad:set_squad_position(position) +end + +function jup_teleport_actor(actor, npc) + local point_in = patrol("jup_b16_teleport_in"):point(0) + local point_out = patrol("jup_b16_teleport_out"):point(0) + local actor_position = actor:position() + local out_position = vector():set(actor_position.x - point_in.x + point_out.x, actor_position.y - point_in.y + point_out.y , actor_position.z - point_in.z + point_out.z) + db.actor:set_actor_position(out_position) +end +----------------------------------------------------------------------------- +--[[ +local drop_point, drop_object = 0, 0 +local function drop_object_item(item) + drop_object:drop_item_and_teleport(item, drop_point) +end + +function drop_actor_inventory(actor, npc, p) + if p[1] then + drop_point = patrol(p[1]):point(0) + drop_object = actor + actor:inventory_for_each(drop_object_item) + end +end + + +-- FIXME: drop_npc_inventory doesn't work +function drop_npc_inventory(actor, npc, p) + if p[1] then + drop_point = patrol(p[1]):point(0) + drop_object = npc + npc:inventory_for_each(drop_object_item) + end +end + +function drop_npc_item(actor, npc, p) + if p[1] then + local item = npc:object(p[1]) + if item then + npc:drop_item(item) + end + end +end + +function drop_npc_items(actor, npc, p) + local item = 0 + for i, v in pairs(p) do + item = npc:object(v) + if item then + npc:drop_item(item) + end + end +end +]]-- + +function give_items(actor, npc, p) + local pos, lv_id, gv_id, npc_id = npc:position(), npc:level_vertex_id(), npc:game_vertex_id(), npc:id() + for i, v in pairs(p) do + alife():create(v, pos, lv_id, gv_id, npc_id) + end +end + +function give_item(actor, npc, p) + if p[2] ~= nil then + npc_id = get_story_object_id(p[2]) + else + npc_id = npc:id() + end + npc = alife():object(npc_id) + local pos, lv_id, gv_id, npc_id = npc.position, npc.m_level_vertex_id, npc.m_game_vertex_id, npc.id + alife():create(p[1], pos, lv_id, gv_id, npc_id) +end + +function play_particle_on_path(actor, npc, p) + local name = p[1] + local path = p[2] + local point_prob = p[3] + if name == nil or path == nil then + return + end + if point_prob == nil then + point_prob = 100 + end + + local path = patrol(path) + local count = path:count() + for a = 0,count-1,1 do + local particle = particles_object(name) + if math.random(100) <= point_prob then + particle:play_at_pos(path:point(a)) + end + end +end + + +----------------------------------------------------------------------------- +--[[ +send_tip(news_id:sender:sender_id) + 1. news_id + 2. sender* + 3. sender_id* + * - not necessary +--]] +function send_tip(actor, npc, p) + news_manager.send_tip(actor, p[1], nil, p[2], nil, p[3]) +end + +--[[ +Дать сталкеру небольшой пинок. Например чтоб скинуть его с возвышения. +параметры: actor, npc, p[direction,bone,power,impulse,reverse=false] + 1. direction - если строка, то считается, что это имя пути и в сторону + первой точки производится толчек. Если же это число, то оно + рассматривается как story_id персонажа от которого должен поступить хит. + 2. bone - строка. Имя кости, по которой наносится удар. + 3. power - сила удара + 4. impulse - импульс + 5. reverse (true/false) - изменение направления удара. по умолчанию false +--]] +function hit_npc(actor, npc, p) + local h = hit() + local rev = p[6] and p[6] == 'true' + h.draftsman = npc + h.type = hit.wound + if p[1] ~= "self" then + local hitter = get_story_object(p[1]) + if not hitter then return end + if rev then + h.draftsman = hitter + h.direction = hitter:position():sub(npc:position()) + else + h.direction = npc:position():sub(hitter:position()) + end + else + if rev then + h.draftsman = nil + h.direction = npc:position():sub(patrol(p[2]):point(0)) + else + h.direction = patrol(p[2]):point(0):sub(npc:position()) + end + end + h:bone(p[3]) + h.power = p[4] + h.impulse = p[5] + printf("HIT EFFECT: (%s, %s,%d,%d) health(%s)", npc:name(), p[2], h.power, h.impulse, npc.health) + npc:hit(h) +end + +--[[ +Дать обьекту, заданному story_id, хит. +параметры: actor, npc, p[sid,bone,power,impulse,hit_src=npc:position()] + 1. sid - story_id обьекта, по которому наносится хит. + 2. bone - строка. Имя кости, по которой наносится удар. + 3. power - сила удара + 4. impulse - импульс + 5. hit_src - если число, то рассматривается как story_id обьекта, со стороны + которого наносится хит (он же является и инициатором хита), иначе это + точка (waypoint), из которой по объекту наносится хит. + Если не задано, то берется позиция обьекта, из которого была вызвана + данная функция. +--]] +function hit_obj(actor, npc, p) + local h = hit() + local obj = get_story_object(p[1]) + local sid = nil + + if not obj then +-- abort("HIT_OBJ [%s]. Target object does not exist", npc:name()) + return + end + + h:bone(p[2]) + h.power = p[3] + h.impulse = p[4] + + if p[5] then + sid = get_story_object(sid) + if sid then + h.direction = vector():sub(sid:position(), obj:position()) + end + if not sid then + h.direction = vector():sub(patrol(p[5]):point(0), obj:position()) + end + else + h.direction = vector():sub(npc:position(), obj:position()) + end + h.draftsman = sid or npc + h.type = hit.wound + obj:hit(h) +end + +--[[ +function hit_obj_chemical(actor, npc, p) + local h = hit() + local obj = get_story_object(p[1]) + local sid = nil + + if not obj then +-- abort("HIT_OBJ [%s]. Target object does not exist", npc:name()) + return + end + + h:bone(p[2]) + h.power = p[3] + h.impulse = p[4] + + if p[5] then + sid = get_story_object(sid) + if sid then + h.direction = vector():sub(sid:position(), obj:position()) + end + if not sid then + h.direction = vector():sub(patrol(p[5]):point(0), obj:position()) + end + else + h.direction = vector():sub(npc:position(), obj:position()) + end + + h.draftsman = sid or npc + h.type = hit.chemical_burn + obj:hit(h) +end + +function hit_obj_fire_wound(actor, npc, p) + local h = hit() + local obj = get_story_object(p[1]) + local sid = nil + + if not obj then +-- abort("HIT_OBJ [%s]. Target object does not exist", npc:name()) + return + end + + h:bone(p[2]) + h.power = p[3] + h.impulse = p[4] + + if p[5] then + sid = get_story_object(sid) + if sid then + h.direction = vector():sub(sid:position(), obj:position()) + end + if not sid then + h.direction = vector():sub(patrol(p[5]):point(0), obj:position()) + end + else + h.direction = vector():sub(npc:position(), obj:position()) + end + + h.draftsman = sid or npc + h.type = hit.fire_wound + obj:hit(h) +end +]]-- +--[[ +Дать сталкеру небольшой пинок после смерти. Аналогично предыдущему, только направление хита теперь +вычисляется через убийцу. Поэтому параметра direction нет. +параметры: actor, npc, p[bone,power,impulse] +FIXME: killer:position() isn't working +--]] +function hit_by_killer(actor, npc, p) + if not npc then return end + local t = db.storage[npc:id()].death + if t == nil or t.killer == -1 then return end + local killer = db.storage[t.killer] + if killer == nil then return end + local p1, p2 + p1 = npc:position() + p2 = killer:position() + local h = hit() + h.draftsman = npc + h.type = hit.wound + h.direction = utils.vector_copy_by_val(p1):sub(p2) + h.bone = p[1] + h.power = p[2] + h.impulse = p[3] + npc:hit(h) +end + + +function hit_npc_from_actor(actor, npc, p) + local h = hit() + local sid = nil + h.draftsman = actor + h.type = hit.wound + + if p and p[1] then + sid = get_story_object(p[1]) + if sid then + h.direction = actor:position():sub(sid:position()) + end + if not sid then + h.direction = actor:position():sub(npc:position()) + end + else + h.direction = actor:position():sub(npc:position()) + sid = npc + end + + h:bone("bip01_spine") + h.power = 0.001 + h.impulse = 0.001 + sid:hit(h) +end + +--[[ +-- Хитует нпс от нпс, если задан один параметр (стори айди), то нпс с таким стори айди хитнет нпс у которого вызвали эту функцию. +-- если задано 2 стори айди , то нпс с 1-ым стори айди хитнет нпс со 2-ым стори айди. +function hit_npc_from_npc(actor, npc, p) + if p == nil then abort("Invalid parameter in function 'hit_npc_from_npc'!!!!") end + local h = hit() + local hitted_npc = npc + h.draftsman = get_story_object(p[1]) + if p[2] ~= nil then + hitted_npc = get_story_object(p[2]) + end + h.type = hit.wound + h.direction = h.draftsman:position():sub(hitted_npc:position()) + h:bone("bip01_spine") + h.power = 0.03 + h.impulse = 0.03 + hitted_npc:hit(h) +end + +function hit_actor(actor, npc, p) + local h = hit() + h.direction = vector():set(0,0,0) + h.draftsman = actor + h.type = hit.shock + h:bone("bip01_spine") + h.power = (p and p[1] and tonumber(p[1])) or 0.001 + h.impulse = 0.001 + actor:hit(h) +end +]]-- + +function restore_health(actor, npc) + --printf("HEALTH RESTORE") + npc.health = 1 +end + +function make_enemy(actor, npc, p) + if p == nil then abort("Invalid parameter in function 'hit_npc_from_npc'!!!!") end + local h = hit() + local hitted_npc = npc + h.draftsman = get_story_object(p[1]) + if p[2] ~= nil then + hitted_npc = get_story_object(p[2]) + end + h.type = hit.wound + h.direction = h.draftsman:position():sub(hitted_npc:position()) + h:bone("bip01_spine") + h.power = 0.03 + h.impulse = 0.03 + hitted_npc:hit(h) +end + +function sniper_fire_mode(actor, npc, p) + if p[1] == "true" then + --printf("SNIPER FIRE MODE ON") + npc:sniper_fire_mode(true) + else + --printf("SNIPER FIRE MODE OFF") + npc:sniper_fire_mode(false) + end +end + +function kill_npc(actor, npc, p) + if p and p[1] then + npc = get_story_object(p[1]) + end + if npc ~= nil and npc:alive() then + npc:kill(npc) + end +end + +function remove_npc(actor, npc, p) + if p and p[1] then + npc_id = get_story_object_id(p[1]) + end + if npc_id ~= nil then + alife():release(alife():object(npc_id), true) + end +end + +-- прибавить к указанному счётчику актёра 1 +function inc_counter(actor, npc, p) + if p and p[1] then + local inc_value = p[2] or 1 + local new_value = xr_logic.pstor_retrieve(actor, p[1], 0) + inc_value + if npc and npc:name() then + printf("inc_counter '%s' to value [%s], by [%s]", p[1], tostring(new_value), tostring(npc:name())) + end + xr_logic.pstor_store(actor, p[1], new_value) + end +end + +function dec_counter(actor, npc, p) + if p and p[1] then + local dec_value = p[2] or 1 + local new_value = xr_logic.pstor_retrieve(actor, p[1], 0) - dec_value + if new_value < 0 then + new_value = 0 + end + xr_logic.pstor_store(actor, p[1], new_value) + if npc and npc:name() then + printf( "dec_counter [%s] value [%s] by [%s]", p[1], xr_logic.pstor_retrieve(actor, p[1], 0), tostring(npc:name())) + end + end +end + +function set_counter(actor, npc, p) + if p and p[1] then + local count = p[2] or 0 +-- printf( "set_counter '%s' %s", p[1], count) + xr_logic.pstor_store(actor, p[1], count) +-- printf("counter [%s] value [%s]", p[1], xr_logic.pstor_retrieve(actor, p[1], 0)) + end +end + + +------------------------------------------------------------------------------------------------------------------------ +-- постпроцесс и влияние удара в морду +function actor_punch(npc) + if db.actor:position():distance_to_sqr(npc:position()) > 4 then + return + end + + set_inactivate_input_time(30) + level.add_cam_effector("camera_effects\\fusker.anm", 999, false, "") + + local active_slot = db.actor:active_slot() + if active_slot ~= 2 and + active_slot ~= 3 + then + return + end + + local active_item = db.actor:active_item() + if active_item then + db.actor:drop_item(active_item) + end +end + +-- забывание обиды +function clearAbuse(npc) + printf("CLEAR_ABUSE") + xr_abuse.clear_abuse(npc) +end + +function turn_off_underpass_lamps(actor, npc) + local lamps_table = { + ["pas_b400_lamp_start_flash"] = true, + ["pas_b400_lamp_start_red"] = true, + ["pas_b400_lamp_elevator_green"] = true, + ["pas_b400_lamp_elevator_flash"] = true, + ["pas_b400_lamp_elevator_green_1"] = true, + ["pas_b400_lamp_elevator_flash_1"] = true, + ["pas_b400_lamp_track_green"] = true, + ["pas_b400_lamp_track_flash"] = true, + ["pas_b400_lamp_downstairs_green"] = true, + ["pas_b400_lamp_downstairs_flash"] = true, + ["pas_b400_lamp_tunnel_green"] = true, + ["pas_b400_lamp_tunnel_flash"] = true, + ["pas_b400_lamp_tunnel_green_1"] = true, + ["pas_b400_lamp_tunnel_flash_1"] = true, + ["pas_b400_lamp_control_down_green"] = true, + ["pas_b400_lamp_control_down_flash"] = true, + ["pas_b400_lamp_control_up_green"] = true, + ["pas_b400_lamp_control_up_flash"] = true, + ["pas_b400_lamp_hall_green"] = true, + ["pas_b400_lamp_hall_flash"] = true, + ["pas_b400_lamp_way_green"] = true, + ["pas_b400_lamp_way_flash"] = true, + } + local obj + for k,v in pairs(lamps_table) do + obj = get_story_object(k) + + if obj then + obj:get_hanging_lamp():turn_off() + else + printf("function 'turn_off_underpass_lamps' lamp [%s] does not exist", tostring(k)) + --abort("function 'turn_off_underpass_lamps' lamp [%s] does not exist", tostring(k)) + end + end +end + +---Выключение динамической лампочки (hanging_lamp) +function turn_off(actor, npc, p) + local obj + for k,v in pairs(p) do + obj = get_story_object(v) + + if not obj then + abort("TURN_OFF. Target object with story_id [%s] does not exist", v) + return + end + obj:get_hanging_lamp():turn_off() + --printf("TURN_OFF. Target object with story_id [%s] turned off.", v) + end +end + +function turn_off_object(actor, npc) + npc:get_hanging_lamp():turn_off() +end + +---Включение динамической лампочки (hanging_lamp) +function turn_on(actor, npc, p) + local obj + for k,v in pairs(p) do + obj = get_story_object(v) + + if not obj then + abort("TURN_ON [%s]. Target object does not exist", npc:name()) + return + end + obj:get_hanging_lamp():turn_on() + end +end + +---Включение и запуск динамической лампочки (hanging_lamp) +function turn_on_and_force(actor, npc, p) + local obj = get_story_object(p[1]) + if not obj then + abort("TURN_ON_AND_FORCE. Target object does not exist") + return + end + if p[2] == nil then p[2] = 55 end + if p[3] == nil then p[3] = 14000 end + obj:set_const_force(vector():set(0,1,0), p[2], p[3]) + obj:start_particles("weapons\\light_signal", "link") + obj:get_hanging_lamp():turn_on() +end + +---Выключение динамической лампочки и партиклов (hanging_lamp) +function turn_off_and_force(actor, npc, p) + local obj = get_story_object(p[1]) + if not obj then + abort("TURN_OFF [%s]. Target object does not exist", npc:name()) + return + end + obj:stop_particles("weapons\\light_signal", "link") + obj:get_hanging_lamp():turn_off() +end + + +function turn_on_object(actor, npc) + npc:get_hanging_lamp():turn_on() +end + +function turn_off_object(actor, npc) + npc:get_hanging_lamp():turn_off() +end + + +-- Вызов этой функции отключит обработчик [combat] боя для персонажа. +-- Используется в случаях, когда все необходимые действия, такие как переключение на другую секцию, +-- уже выполнены, и повторно выполнять их во время боя нельзя (а условия секции [combat] проверяются на каждом +-- апдейте, когда персонаж в бою, если, конечно, не отключены вызовом этой функции). +function disable_combat_handler(actor, npc) + if db.storage[npc:id()].combat then + db.storage[npc:id()].combat.enabled = false + end + + if db.storage[npc:id()].mob_combat then + db.storage[npc:id()].mob_combat.enabled = false + end +end + +-- Вызов этой функции отключит обработчик [combat_ignore] перехвата боя для персонажа. +function disable_combat_ignore_handler(actor, npc) + if db.storage[npc:id()].combat_ignore then + db.storage[npc:id()].combat_ignore.enabled = false + end +end + +------------------------------------------------------------------------------------- +-- Функции для работы с вертолётами +------------------------------------------------------------------------------------- +--[[ +function heli_set_enemy_actor(actor, npc) + local st = db.storage[npc:id()] + if not st.combat.enemy_id and actor:alive() then + st.combat.enemy_id = actor:id() + heli_snd.play_snd( st, heli_snd.snd_see_enemy, 1 ) + end +end + +function heli_set_enemy(actor, npc, p) + local st = db.storage[npc:id()] + local obj = get_story_object( p[1] ) + if not st.combat.enemy_id and obj:alive() then + st.combat.enemy_id = obj:id() + heli_snd.play_snd( st, heli_snd.snd_see_enemy, 1 ) + end +end + +function heli_clear_enemy(actor, npc) + db.storage[npc:id()].combat:forget_enemy() +end +]]-- + +function heli_start_flame(actor, npc) + bind_heli.heli_start_flame( npc ) +end + +function heli_die(actor, npc) + bind_heli.heli_die( npc ) +end + + +--'----------------------------------------------------------------------------------- +--' Функции для работы с погодными эффектами +--'----------------------------------------------------------------------------------- + +-- Принудительная установка погодных условий +-- =set_weather(<секция погоды>:true) - установка погоды сразу, false - через некоторое время +-- Будет использоваться на старте игры Зов Припяти и в сцене jup_b15 - утро после пьянки с Зулусом +function set_weather(actor, npc, p) + if(p[1]) then + if(p[2]=="true") then + level.set_weather(p[1],true) + else + level.set_weather(p[1],false) + end + end +end +--[[ +function update_weather(actor, npc, p) + if p and p[1] then + if p[1] == "true" then + level_weathers.get_weather_manager():select_weather(true) + elseif p[1] == "false" then + level_weathers.get_weather_manager():select_weather(false) + end + end +end + +function start_small_reject(actor, npc) + level.set_weather_fx("fx_surge_day_3") + level.add_pp_effector("vibros_p.ppe", 1974, false) + this.aes_earthshake(npc) +end + +function start_full_reject(actor, npc) + level.set_weather_fx("fx_surge_day_3") + level.remove_pp_effector(1974) + level.remove_cam_effector(1975) + level.add_cam_effector("camera_effects\\earthquake.anm", 1975, true, "") +end + +function stop_full_reject(actor, npc) + level.remove_pp_effector(1974) + level.remove_cam_effector(1975) +end + +function run_weather_pp(actor,npc, p) + local weather_fx = p[1] + if weather_fx == nil then + weather_fx = "fx_surge_day_3" + end + level.set_weather_fx(weather_fx) +end +]]-- + +function game_disconnect(actor, npc) + local c = get_console() + c:execute("disconnect") +-- c:execute_deferred("main_menu off") +-- c:execute_deferred("hide") +end + +function game_credits(actor, npc) + db.gameover_credits_started = true + game.start_tutorial("credits_seq") +end + +function game_over(actor, npc) + if db.gameover_credits_started ~= true then + return + end + local c = get_console() + printf("main_menu on console command is executed") + c:execute("main_menu on") +end + +function after_credits(actor, npc) + get_console():execute ("main_menu on") +end + +function before_credits(actor, npc) + get_console():execute ("main_menu off") +end + +function on_tutor_gameover_stop() + local c = get_console() + printf("main_menu on console command is executed") + c:execute("main_menu on") +end + +function on_tutor_gameover_quickload() + local c = get_console() + c:execute("load_last_save") +end + + +-- для смены работы +function get_stalker_for_new_job(actor, npc, p) + xr_gulag.find_stalker_for_job(npc,p[1]) +end +function switch_to_desired_job(actor, npc, p) + xr_gulag.switch_to_desired_job(npc) +end + +--[[ +function death_hit(actor, npc, p) + local draftsman = get_story_object (p[1]) + local hitted_obj = (p[2] ~= nil and get_story_object (p[2])) or npc + if draftsman == nil or hitted_obj == nil then + return + end + local h = hit() + h.power = 1000 + h.direction = hitted_obj:direction() + h.draftsman = draftsman + h.impulse = 1 + h.type = hit.wound + hitted_obj:hit(h) +end +]]-- + +--'----------------------------------------------------------------------------------- +--' Функции для работы с подспауном +--'----------------------------------------------------------------------------------- +function spawn_object(actor, obj, p) + --' p[1] - секция кого спаунить + --' p[2] - имя патрульного пути где спа унить. + local spawn_sect = p[1] + if spawn_sect == nil then + abort("Wrong spawn section for 'spawn_object' function %s. For object %s", tostring(spawn_sect), obj:name()) + end + + local path_name = p[2] + if path_name == nil then + abort("Wrong path_name for 'spawn_object' function %s. For object %s", tostring(path_name), obj:name()) + end + + if not level.patrol_path_exists(path_name) then + abort("Path %s doesnt exist. Function 'spawn_object' for object %s ", tostring(path_name), obj:name()) + end + local ptr = patrol(path_name) + local index = p[3] or 0 + local yaw = p[4] or 0 + + --' printf("Spawning %s at %s, %s", tostring(p[1]), tostring(p[2]), tostring(p[3])) + local se_obj = alife():create(spawn_sect, + ptr:point(index), + ptr:level_vertex_id(0), + ptr:game_vertex_id(0)) + if IsStalker( nil, se_obj:clsid()) then + se_obj:o_torso().yaw = yaw * math.pi / 180 + elseif se_obj:clsid() == clsid.script_phys then + se_obj:set_yaw(yaw * math.pi / 180) + end +end + +local jup_b219_position +local jup_b219_lvid +local jup_b219_gvid + +function jup_b219_save_pos() + local obj = get_story_object("jup_b219_gate_id") + if obj and obj:position() then + jup_b219_position = obj:position() + jup_b219_lvid = obj:level_vertex_id() + jup_b219_gvid = obj:game_vertex_id() + else + return + end + sobj = alife():object(obj:id()) + if sobj then + alife():release(sobj, true) + end +end + +function jup_b219_restore_gate() + local yaw = 0 + local spawn_sect = "jup_b219_gate" + if jup_b219_position then + local se_obj = alife():create(spawn_sect, + vector():set(jup_b219_position), + jup_b219_lvid, + jup_b219_gvid) + se_obj:set_yaw(yaw * math.pi / 180) + end +end + +function spawn_corpse(actor, obj, p) + --' p[1] - секция кого спаунить + --' p[2] - имя патрульного пути где спаунить. + local spawn_sect = p[1] + if spawn_sect == nil then + abort("Wrong spawn section for 'spawn_corpse' function %s. For object %s", tostring(spawn_sect), obj:name()) + end + + local path_name = p[2] + if path_name == nil then + abort("Wrong path_name for 'spawn_corpse' function %s. For object %s", tostring(path_name), obj:name()) + end + + if not level.patrol_path_exists(path_name) then + abort("Path %s doesnt exist. Function 'spawn_corpse' for object %s ", tostring(path_name), obj:name()) + end + local ptr = patrol(path_name) + local index = p[3] or 0 + + local se_obj = alife():create(spawn_sect, + ptr:point(index), + ptr:level_vertex_id(0), + ptr:game_vertex_id(0)) + se_obj:kill() +end + + +function spawn_object_in(actor, obj, p) + --' p[1] - секция кого спаунить + --' p[2] - стори айди обьекта в который спавнить + local spawn_sect = p[1] + if spawn_sect == nil then + abort("Wrong spawn section for 'spawn_object' function %s. For object %s", tostring(spawn_sect), obj:name()) + end + if p[2] == nil then + abort("Wrong target_name for 'spawn_object_in' function %s. For object %s", tostring(target_name), obj:name()) + end +-- local box = alife():object(target_name) +-- if(box==nil) then + + printf("trying to find object %s", tostring(p[2])) + + local target_obj_id = get_story_object_id(p[2]) + if target_obj_id ~= nil then + box = alife():object(target_obj_id) + if box == nil then + abort("There is no such object %s", p[2]) + end + alife():create(spawn_sect,vector(),0,0,target_obj_id) + else + abort("object is nil %s", tostring(p[2])) + end +end + + +function spawn_npc_in_zone(actor, obj, p) + --' p[1] - секция кого спаунить + --' p[2] - имя зоны в которой спаунить. + local spawn_sect = p[1] + if spawn_sect == nil then + abort("Wrong spawn section for 'spawn_object' function %s. For object %s", tostring(spawn_sect), obj:name()) + end + local zone_name = p[2] + if zone_name == nil then + abort("Wrong zone_name for 'spawn_object' function %s. For object %s", tostring(zone_name), obj:name()) + end + if db.zone_by_name[zone_name] == nil then + abort("Zone %s doesnt exist. Function 'spawn_object' for object %s ", tostring(zone_name), obj:name()) + end + local zone = db.zone_by_name[zone_name] +-- printf("spawn_npc_in_zone: spawning %s at zone %s, squad %s", tostring(p[1]), tostring(p[2]), tostring(p[3])) + local spawned_obj = alife():create( spawn_sect, + zone:position(), + zone:level_vertex_id(), + zone:game_vertex_id()) + spawned_obj.sim_forced_online = true + spawned_obj.squad = 1 or p[3] + db.script_ids[spawned_obj.id] = zone_name +end + +function destroy_object(actor, obj, p) + local sobj + if p == nil then + sobj = alife():object(obj:id()) + else + if p[1] == nil or p[2] == nil then + abort("Wrong parameters in destroy_object function!!!") + end + local target_str = nil + if p[3] ~= nil then + target_str = p[1].."|"..p[2]..","..p[3] + else + target_str = p[1].."|"..p[2] + end + local target_position, target_id, target_init = xr_remark.init_target(obj, target_str) + if target_id == nil then + printf("You are trying to set non-existant target [%s] for object [%s] in section [%s]", tostring(target_str), tostring(obj:name()), tostring(db.storage[obj:id()].active_section)) + end + sobj = alife():object(target_id) + end + if sobj == nil then + return + end + printf("releasing object ["..sobj:name().."]") + alife():release(sobj, true) +end + +function give_actor(actor, npc, p) + for k,v in pairs(p) do + alife():create(v, + db.actor:position(), + db.actor:level_vertex_id(), + db.actor:game_vertex_id(), + db.actor:id()) + news_manager.relocate_item(db.actor, "in", v) + end +end + +function activate_weapon_slot(actor, npc, p) + db.actor:activate_slot(p[1]) +end + +function anim_obj_forward(actor, npc, p) + for k,v in pairs(p) do + if v ~= nil then + db.anim_obj_by_name[v]:anim_forward() + end + end +end +function anim_obj_backward(actor, npc, p) + if p[1] ~= nil then + db.anim_obj_by_name[p[1]]:anim_backward() + end +end +function anim_obj_stop(actor, npc, p) + if p[1] ~= nil then + db.anim_obj_by_name[p[1]]:anim_stop() + end +end + +-- Функции для работы с огненными зонами. +--[[ +function turn_on_fire_zone(actor, npc, p) + bind_campfire.fire_zones_table[ p[1] ]:turn_on() +end + +function turn_off_fire_zone(actor, npc, p) + bind_campfire.fire_zones_table[ p[1] ]:turn_off() +end +]]-- +--'----------------------------------------------------------------------------------- +--' Функции для отыгрывания звука +--'----------------------------------------------------------------------------------- +function play_sound(actor, obj, p) + local theme = p[1] + local faction = p[2] + local point = sim_board.get_sim_board().smarts_by_names[p[3]] + if point ~= nil then + point = point.id + elseif p[3]~=nil then + point = p[3] + end + + if obj and IsStalker(obj) then + if not obj:alive() then + abort("Stalker [%s][%s] is dead, but you wants to say something for you: [%s]!", tostring(obj:id()), tostring(obj:name()), p[1]) + end + end + + xr_sound.set_sound_play(obj:id(), theme, faction, point) +end + +function play_sound_by_story(actor, obj, p) + local story_obj = get_story_object_id(p[1]) + local theme = p[2] + local faction = p[3] + local point = sim_board.get_sim_board().smarts_by_names[p[4]] + if point ~= nil then + point = point.id + elseif p[4]~=nil then + point = p[4] + end + xr_sound.set_sound_play(story_obj, theme, faction, point) +end + +function stop_sound(actor, npc) + xr_sound.stop_sounds_by_id(npc:id()) +end + +function play_sound_looped(actor, obj, p) + local theme = p[1] + xr_sound.play_sound_looped(obj:id(), theme) +end + +function stop_sound_looped(actor, obj) + xr_sound.stop_sound_looped(obj:id()) +end + +function barrel_explode (actor , npc , p) + local expl_obj = get_story_object (p[1]) + if expl_obj ~= nil then + expl_obj:explode(0) + end +end + +--'----------------------------------------------------------------------------------- +--' Alife support +--'----------------------------------------------------------------------------------- +--[[ +function start_sim(actor, obj) + sim_board.get_sim_board():start_sim() +end + +function stop_sim(actor, obj) + sim_board.get_sim_board():stop_sim() +end + +function update_faction_brain(actor, obj, p) + if p[1] == nil then + abort("Wrong parameters update_faction_brain") + end + local board = sim_board.get_sim_board() + local player = board.players[ p[1] ] + if player == nil then + abort("Can't find player %s", tostring(p[1])) + end + player:faction_brain_update() +end +]]-- + +function create_squad(actor, obj, p) + if obj ~= nil then + printf("pl:creating_squad from obj [%s] in section [%s]", tostring(obj:name()), tostring(db.storage[obj:id()].active_section)) + end + local squad_id = p[1] + if squad_id == nil then + abort("Wrong squad identificator [NIL] in create_squad function") + end + local smart_name = p[2] + if smart_name == nil then + abort("Wrong smart name [NIL] in create_squad function") + end + + local ltx = sim_board.squad_ltx + + if not ltx:section_exist(squad_id) then + abort("Wrong squad identificator [%s]. Squad descr doesnt exist.", tostring(squad_id)) + end + + local board = sim_board.get_sim_board() + local smart = board.smarts_by_names[smart_name] + if smart == nil then + abort("Wrong smart_name [%s] for [%s] faction in create_squad function", tostring(smart_name), tostring(player_name)) + end + + local squad = board:create_squad(smart, squad_id) + + + board:enter_smart(squad, smart.id) + + for k in squad:squad_members() do + board:setup_squad_and_group(k.object) + end + + squad:update() +end + +function create_squad_member(actor, obj, p) + local squad_member_sect = p[1] + local story_id = p[2] + local position = nil + local level_vertex_id = nil + local game_vertex_id = nil + if story_id == nil then + abort("Wrong squad identificator [NIL] in 'create_squad_member' function") + end + local board = sim_board.get_sim_board() + local squad = get_story_squad(story_id) + local squad_smart = board.smarts[squad.smart_id].smrt + if p[3] ~= nil then + local spawn_point + if p[3] == "simulation_point" then + spawn_point = utils.cfg_get_string(sim_board.squad_ltx, squad:section_name(), "spawn_point", obj, false, "") + if spawn_point == "" or spawn_point == nil then + spawn_point = xr_logic.parse_condlist(obj, "spawn_point", "spawn_point", squad_smart.spawn_point) + else + spawn_point = xr_logic.parse_condlist(obj, "spawn_point", "spawn_point", spawn_point) + end + spawn_point = xr_logic.pick_section_from_condlist(db.actor, obj, spawn_point) + else + spawn_point = p[3] + end + position = patrol(spawn_point):point(0) + level_vertex_id = patrol(spawn_point):level_vertex_id(0) + game_vertex_id = patrol(spawn_point):game_vertex_id(0) + else + local commander = alife():object(squad:commander_id()) + position = commander.position + level_vertex_id = commander.m_level_vertex_id + game_vertex_id = commander.m_game_vertex_id + end + local new_member_id = squad:add_squad_member(squad_member_sect, position, level_vertex_id, game_vertex_id) + squad:assign_squad_member_to_smart(new_member_id, squad_smart) + board:setup_squad_and_group(alife():object(new_member_id)) + --squad_smart:refresh() + squad:update() +end + +function remove_squad(actor, obj, p) + local story_id = p[1] + if story_id == nil then + abort("Wrong squad identificator [NIL] in remove_squad function") + end + local squad = get_story_squad(story_id) + if squad == nil then + assert("Wrong squad identificator [%s]. squad doesnt exist", tostring(story_id)) + return + end + local board = sim_board.get_sim_board() + board:remove_squad(squad) +end + +function kill_squad(actor, obj, p) + local story_id = p[1] + if story_id == nil then + abort("Wrong squad identificator [NIL] in kill_squad function") + end + local squad = get_story_squad(story_id) + if squad == nil then + return + end + local squad_npcs = {} + for k in squad:squad_members() do + squad_npcs[k.id] = true + end + + for k,v in pairs(squad_npcs) do + local cl_obj = db.storage[k] and db.storage[k].object + if cl_obj == nil then + alife():object(tonumber(k)):kill() + else + cl_obj:kill(cl_obj) + end + end +end + +function heal_squad(actor, obj, p) + local story_id = p[1] + local health_mod = 1 + if p[2] and p[2] ~= nil then + health_mod = math.ceil(p[2]/100) + end + if story_id == nil then + abort("Wrong squad identificator [NIL] in heal_squad function") + end + local squad = get_story_squad(story_id) + if squad == nil then + return + end + for k in squad:squad_members() do + local cl_obj = db.storage[k.id] and db.storage[k.id].object + if cl_obj ~= nil then + cl_obj.health = health_mod + end + end +end + +--[[ +function update_squad(actor, obj, p) + local squad_id = p[1] + if squad_id == nil then + abort("Wrong squad identificator [NIL] in remove_squad function") + end + local board = sim_board.get_sim_board() + local squad = board.squads[squad_id] + if squad == nil then + assert("Wrong squad identificator [%s]. squad doesnt exist", tostring(squad_id)) + return + end + squad:update() +end +]]-- + +function clear_smart_terrain(actor, obj, p) + local smart_name = p[1] + if smart_name == nil then + abort("Wrong squad identificator [NIL] in clear_smart_terrain function") + end + + local board = sim_board.get_sim_board() + local smart = board.smarts_by_names[smart_name] + local smart_id = smart.id + for k,v in pairs(board.smarts[smart_id].squads) do + if p[2] and p[2] == "false" then + if not get_object_story_id(v.id) then + board:exit_smart(v, smart_id) + board:remove_squad(v) + end + else + board:exit_smart(v, smart_id) + board:remove_squad(v) + end + end +end + +--[[ +function set_actor_faction(actor, obj, p) + if p[1] == nil then + abort("Wrong parameters") + end + sim_board.get_sim_board():set_actor_community(p[1]) +end +]]-- +--'----------------------------------------------------------------------------------- +--' Quest support +--'----------------------------------------------------------------------------------- +function give_task(actor, obj, p) + if p[1] == nil then + abort("No parameter in give_task function.") + end + task_manager.get_task_manager():give_task(p[1]) +end + +function set_active_task(actor, npc, p) + if(p[1]) then + local t = db.actor:get_task(tostring(p[1]), true) + if(t) then + db.actor:set_active_task(t) + end + end +end + +-- Функции для работы с отношениями + +function actor_friend(actor, npc) + printf("_bp: xr_effects: actor_friend(): npc='%s': time=%d", npc:name(), time_global()) + npc:force_set_goodwill( 1000, actor) +end + +function actor_neutral(actor, npc) + npc:force_set_goodwill( 0, actor) +end + +function actor_enemy(actor, npc) + npc:force_set_goodwill( -1000, actor) +end + +function set_squad_neutral_to_actor(actor, npc, p) + local story_id = p[1] + local squad = get_story_squad(story_id) + if squad == nil then + printf("There is no squad with id[%s]", tostring(story_id)) + return + end + squad:set_squad_relation("neutral") +end + +function set_squad_friend_to_actor(actor, npc, p) + local story_id = p[1] + local squad = get_story_squad(story_id) + if squad == nil then + printf("There is no squad with id[%s]", tostring(story_id)) + return + end + squad:set_squad_relation("friend") +end + +--Сделать актера врагом к отряду, передается имя отряда +function set_squad_enemy_to_actor( actor, npc, p) + local story_id = p[1] + local squad = get_story_squad(story_id) + if squad == nil then + printf("There is no squad with id[%s]", tostring(story_id)) + return + end + squad:set_squad_relation("enemy") +end + +--[[ +function set_friends(actor, npc, p) + local npc1 + for i, v in pairs(p) do + npc1 = get_story_object(v) + if npc1 and npc1:alive() then + --printf("_bp: %d:set_friends(%d)", npc:id(), npc1:id()) + npc:set_relation(game_object.friend, npc1) + npc1:set_relation(game_object.friend, npc) + end + end +end + +function set_enemies(actor, npc, p) + local npc1 + for i, v in pairs(p) do + --printf("_bp: set_enemies(%d)", v) + npc1 = get_story_object(v) + if npc1 and npc1:alive() then + npc:set_relation(game_object.enemy, npc1) + npc1:set_relation(game_object.enemy, npc) + end + end +end + +function set_gulag_relation_actor(actor, npc, p) + if(p[1]) and (p[2]) then + game_relations.set_gulag_relation_actor(p[1], p[2]) + end +end + +function set_factions_community(actor, npc, p) + if(p[1]~=nil) and (p[2]~=nil) and (p[3]~=nil) then + game_relations.set_factions_community(p[1], p[2], p[3]) + end +end + +function set_squad_community_goodwill(actor, npc, p) + if(p[1]~=nil) and (p[2]~=nil) and (p[3]~=nil) then + game_relations.set_squad_community_goodwill(p[1], p[2], p[3]) + end +end +]]-- + +--sets NPC relation to actor +--set_npc_sympathy(number) +--call only from npc`s logic +function set_npc_sympathy(actor, npc, p) + if(p[1]~=nil) then + game_relations.set_npc_sympathy(npc, p[1]) + end +end + +--sets SQUAD relation to actor +--set_squad_goodwill(faction:number) +function set_squad_goodwill(actor, npc, p) + if(p[1]~=nil) and (p[2]~=nil) then + game_relations.set_squad_goodwill(p[1], p[2]) + end +end + +function set_squad_goodwill_to_npc(actor, npc, p) + if(p[1]~=nil) and (p[2]~=nil) then + game_relations.set_squad_goodwill_to_npc(npc, p[1], p[2]) + end +end + +function inc_faction_goodwill_to_actor(actor, npc, p) + local community = p[1] + local delta = p[2] + if delta and community then + game_relations.change_factions_community_num(community,actor:id(), tonumber(delta)) + else + abort("Wrong parameters in function 'inc_faction_goodwill_to_actor'") + end +end + +function dec_faction_goodwill_to_actor(actor, npc, p) + local community = p[1] + local delta = p[2] + if delta and community then + game_relations.change_factions_community_num(community,actor:id(), -tonumber(delta)) + else + abort("Wrong parameters in function 'dec_faction_goodwill_to_actor'") + end +end + + +--[[ +function add_custom_static(actor, npc, p) + if p[1] ~= nil and p[2] ~= nil then + get_hud():AddCustomStatic(p[1], true) + get_hud():GetCustomStatic(p[1]):wnd():SetTextST(p[2]) + else + abort("Invalid parameters in function add_custom_static!!!") + end +end + +function remove_custom_static(actor, npc, p) + if p[1] ~= nil then + get_hud():RemoveCustomStatic(p[1]) + else + abort("Invalid parameters in function remove_custom_static!!!") + end +end +]]-- + +function kill_actor(actor, npc) + db.actor:kill(db.actor) +end + +----------------------------------------------------------------------- +-- Treasures support +----------------------------------------------------------------------- +function give_treasure (actor, npc, p) + if p == nil then + abort("Required parameter is [NIL]") + end + for k,v in pairs(p) do + treasure_manager.get_treasure_manager():give_treasure(v) + end +end + +--[[ +function change_tsg(actor, npc, p) + npc:change_team(p[1], p[2], p[3]) +end + +function exit_game(actor, npc) + get_console():execute("quit") +end +]]-- + +function start_surge(actor, npc, p) + surge_manager.start_surge(p) +end + +function stop_surge(actor, npc, p) + surge_manager.stop_surge() +end + +function set_surge_mess_and_task(actor, npc, p) + if(p) then + surge_manager.set_surge_message(p[1]) + if(p[2]) then + surge_manager.set_surge_task(p[2]) + end + end +end + +--[[ +function enable_level_changer(actor, npc, p) + if(p[1]~=nil) then + local obj = get_story_object(p[1]) + if(obj) then + if db.storage[obj:id()] and db.storage[obj:id()].s_obj then + db.storage[obj:id()].s_obj.enabled = true + db.storage[obj:id()].s_obj.hint = "level_changer_invitation" + else + return + end + obj:enable_level_changer(true) + level_tasks.add_lchanger_location() + obj:set_level_changer_invitation("level_changer_invitation") + end + end +end + +function disable_level_changer(actor, npc, p) + if(p[1]~=nil) then + local obj = get_story_object(p[1]) + if(obj) then + if not(db.storage[obj:id()] and db.storage[obj:id()].s_obj) then + return + end + obj:enable_level_changer(false) + level_tasks.del_lchanger_mapspot(tonumber(p[1])) + db.storage[obj:id()].s_obj.enabled = false + if(p[2]==nil) then + obj:set_level_changer_invitation("level_changer_disabled") + db.storage[obj:id()].s_obj.hint = "level_changer_disabled" + else + obj:set_level_changer_invitation(p[2]) + db.storage[obj:id()].s_obj.hint = p[2] + end + end + end +end + +function change_actor_community(actor, npc, p) + if(p[1]~=nil) then + db.actor:set_character_community(p[1], 0, 0) + end +end + +function set_faction_community_to_actor(actor, npc, p) +-- run_string xr_effects.change_actor_community(nil,nil,{"actor_dolg"}) + if(p[1]~=nil) and (p[2]~=nil) then + local rel = 0 + if(p[2]=="enemy") then + rel = -3000 + elseif(p[2]=="friend") then + rel = 1000 + end + db.actor:set_community_goodwill(p[1], rel) + end +end + +function disable_collision(actor, npc) + npc:wounded(true) +end +function enable_collision(actor, npc) + npc:wounded(false) +end + +function disable_actor_collision(actor, npc) + actor:wounded(true) +end +function enable_actor_collision(actor, npc) + actor:wounded(false) +end + +function relocate_actor_inventory_to_box(actor, npc, p) + local function transfer_object_item(item) + if item:section() ~= "wpn_binoc" and item:section() ~= "wpn_knife" and item:section() ~= "device_torch" then + db.actor:transfer_item(item, inv_box_1) + end + end + inv_box_1 = get_story_object (p[1]) + actor:inventory_for_each(transfer_object_item) +end +]]-- + +function set_level_faction_community(actor, npc, p) + if(p[1]~=nil) and (p[2]~= nil) and (p[3]~= nil) then + local faction = sim_board.get_sim_board().players[p[1]] + local goodwill = 0 + if(p[3]=="enemy") then + goodwill = -3000 + elseif(p[3]=="friend") then + goodwill = 1000 + end + for k,v in pairs(faction.squads) do + local squad_level = alife():level_name(game_graph():vertex(alife():object(v:commander_id()).m_game_vertex_id):level_id()) + if(squad_level==p[2]) then + for kk in v:squad_members() do + local npc = kk.object + local tbl = game_relations.temp_goodwill_table + if(tbl.communities==nil) then + tbl.communities = {} + end + if(tbl.communities[p[1]]==nil) then + tbl.communities[p[1]] = {} + end + tbl.communities[p[1]][npc.id] = goodwill + if(db.storage[npc.id]~=nil) then + game_relations.set_level_faction_community(db.storage[npc.id].object) + end + end + end + end + end +end + +--[[ +function make_actor_visible_to_npc(actor,npc,p) + npc:make_object_visible_somewhen(db.actor) +end +]]-- + +function make_actor_visible_to_squad(actor,npc,p) + local story_id = p and p[1] + local squad = get_story_squad(story_id) + if squad == nil then abort("There is no squad with id[%s]", story_id) end + for k in squad:squad_members() do + local obj = level.object_by_id(k.id) + if obj ~= nil then + obj:make_object_visible_somewhen( db.actor ) + end + end +end + +function stop_sr_cutscene(actor,npc,p) + local obj = db.storage[npc:id()] + if(obj.active_scheme~=nil) then + obj[obj.active_scheme].signals["cam_effector_stop"] = true + end +end + +--[[ +function reset_dialog_end_signal(actor, npc, p) + local st = db.storage[npc:id()] + if(st.active_scheme==nil) then + return + end + if(st[st.active_scheme].signals==nil) then + return + end + st[st.active_scheme].signals["dialog_end"] = nil +end + +function add_map_spot(actor, npc, p) + if(p[1]==nil) then + abort("Story id for add map spot function is not set") + else + local story_id = tonumber(p[1]) + local id = id_by_sid(story_id) + if(id==nil) then + local obj = alife():object(p[1]) + id = obj and obj.id + end + if(id~=nil) then + if(p[2]==nil) then + p[2] = "primary_task_location" + end + if(p[3]==nil) then + p[3] = "default" + end + if level.map_has_object_spot(id, p[2]) == 0 then + level.map_add_object_spot_ser(id, p[2], p[3]) + end + else + abort("Wrong story id or name [%s] for map spot function", tostring(story_id)) + end + end +end + +function remove_map_spot(actor, npc, p) + if(p[1]==nil) then + abort("Story id for add map spot function is not set") + else + local story_id = tonumber(p[1]) + local id = id_by_sid(story_id) + if(id==nil) then + local obj = alife():object(p[1]) + id = obj and obj.id + end + if(id~=nil) then + if(p[2]==nil) then + p[2] = "primary_task_location" + end + if level.map_has_object_spot(id, p[2]) ~= 0 then + level.map_remove_object_spot(id, p[2]) + end + else + abort("Wrong story id or name [%s] for map spot function", tostring(story_id)) + end + end +end +]]-- + +-- Anomal fields support +function enable_anomaly(actor, npc, p) + if p[1] == nil then + abort("Story id for enable_anomaly function is not set") + end + + local obj = get_story_object(p[1]) + if not obj then + abort("There is no object with story_id %s for enable_anomaly function", tostring(p[1])) + end + obj:enable_anomaly() +end + +function disable_anomaly(actor, npc, p) + if p[1] == nil then + abort("Story id for disable_anomaly function is not set") + end + + local obj = get_story_object(p[1]) + if not obj then + abort("There is no object with story_id %s for disable_anomaly function", tostring(p[1])) + end + obj:disable_anomaly() +end + +function launch_signal_rocket(actor, obj, p) + if p==nil then + abort("Signal rocket name is not set!") + end + if db.signal_light[p[1]] then + db.signal_light[p[1]]:launch() + else + abort("No such signal rocket: [%s] on level", tostring(p[1])) + end +end + +--[[ +function reset_faction_goodwill(actor, obj, p) + if db.actor and p[1] then + local board = sim_board.get_sim_board() + local faction = board.players[ p[1] ] + if faction then + db.actor:set_community_goodwill(p[1], 0) + end + end +end +]]-- + +function add_cs_text(actor, npc, p) + if p[1] then + local hud = get_hud() + local cs_text = hud:GetCustomStatic("text_on_screen_center") + if cs_text then + hud:RemoveCustomStatic("text_on_screen_center") + end + hud:AddCustomStatic("text_on_screen_center", true) + cs_text = hud:GetCustomStatic("text_on_screen_center") + cs_text:wnd():TextControl():SetText(game.translate_string(p[1])) + end +end + +function del_cs_text(actor, npc, p) + local hud = get_hud() + cs_text = hud:GetCustomStatic("text_on_screen_center") + if cs_text then + hud:RemoveCustomStatic("text_on_screen_center") + end +end + +function spawn_item_to_npc(actor, npc, p) + local new_item = p[1] + if p[1] then + alife():create(new_item, + npc:position(), + npc:level_vertex_id(), + npc:game_vertex_id(), + npc:id()) + end +end + +function give_money_to_npc(actor, npc, p) + local money = p[1] + if p[1] then + npc:give_money(money) + end +end + +function seize_money_to_npc(actor, npc, p) + local money = p[1] + if p[1] then + npc:give_money(-money) + end +end + +-- Передача предмета от непися к неписю +-- relocate_item(item_name:story_id_from:story_id_to) +function relocate_item(actor, npc, p) + local item = p and p[1] + local from_obj = p and get_story_object(p[2]) + local to_obj = p and get_story_object(p[3]) + if to_obj ~= nil then + if from_obj ~= nil and from_obj:object(item) ~= nil then + from_obj:transfer_item(from_obj:object(item), to_obj) + else + alife():create(item, + to_obj:position(), + to_obj:level_vertex_id(), + to_obj:game_vertex_id(), + to_obj:id()) + end + else + abort("Couldn't relocate item to NULL") + end +end + +-- Сделать сквады врагами, передаются два сквада set_squads_enemies(squad_name_1:squad_name_2) +function set_squads_enemies(actor, npc, p) + if (p[1] == nil or p[2] == nil) then + abort("Wrong parameters in function set_squad_enemies") + return + end + + local squad_1 = get_story_squad(p[1]) + local squad_2 = get_story_squad(p[2]) + + if squad_1 == nil then + assert("There is no squad with id[%s]", tostring(p[1])) + return + end + if squad_2 == nil then + assert("There is no squad with id[%s]", tostring(p[2])) + return + end + + for k in squad_1:squad_members() do + local npc_obj_1 = db.storage[k.id] and db.storage[k.id].object + if npc_obj_1 ~= nil then + for kk in squad_2:squad_members() do + local npc_obj_2 = db.storage[kk.id] and db.storage[kk.id].object + if npc_obj_2 ~= nil then + npc_obj_1:set_relation(game_object.enemy, npc_obj_2) + npc_obj_2:set_relation(game_object.enemy, npc_obj_1) + printf("set_squads_enemies: %d:set_enemy(%d)", npc_obj_1:id(), npc_obj_2:id()) + end + end + end + end +end + +local particles_table = { +[1] = {particle = particles_object("anomaly2\\teleport_out_00"), sound = sound_object("anomaly\\teleport_incoming")}, +[2] = {particle = particles_object("anomaly2\\teleport_out_00"), sound = sound_object("anomaly\\teleport_incoming")}, +[3] = {particle = particles_object("anomaly2\\teleport_out_00"), sound = sound_object("anomaly\\teleport_incoming")}, +[4] = {particle = particles_object("anomaly2\\teleport_out_00"), sound = sound_object("anomaly\\teleport_incoming")}, +} + +function jup_b16_play_particle_and_sound(actor, npc, p) + particles_table[p[1]].particle :play_at_pos(patrol(npc:name().."_particle"):point(0)) + --particles_table[p[1]].sound :play_at_pos(actor, patrol(npc:name().."_particle"):point(0), 0, sound_object.s3d) +end +--Функция установки состояния видимости кровососа. +-- Возможный набор параметров --> story_id:visibility_state(можно вызывать откуда угодно) или visibility_state(если вызывается из кастомдаты кровососа) +-- visibility_state --> +-- 0 - невидимый +-- 1 - полувидимый +-- 2 - полностью видимый +function set_bloodsucker_state(actor, npc, p) + if (p and p[1]) == nil then abort("Wrong parameters in function 'set_bloodsucker_state'!!!") end + local state = p[1] + if p[2] ~= nil then + state = p[2] + npc = get_story_object(p[1]) + end + if npc ~= nil then + if state == "default" then + npc:force_visibility_state(-1) + else + npc:force_visibility_state(tonumber(state)) + end + end +end + +--Функция вставки предмета в определенную точку, сделал для сцены б57 +function drop_object_item_on_point(actor, npc, p) + local drop_object = db.actor:object(p[1]) + local drop_point = patrol(p[2]):point(0) + db.actor:drop_item_and_teleport(drop_object, drop_point) +end + +--Функция отнятия предмета у игрока +function remove_item(actor, npc, p) + if (p and p[1]) == nil then abort("Wrong parameters in function 'remove_item'!!!") end + local item = p[1] + + local obj = db.actor:object(item) + if obj ~= nil then + alife():release(alife():object(obj:id()), true) + else + abort("Actor has no such item!") + end + news_manager.relocate_item(db.actor, "out", item) +end + +-- Сюжетное сохранение в важных местах +function scenario_autosave(actor, npc, p) + local save_name = p[1] + if save_name == nil then + abort("You are trying to use scenario_autosave without save name") + end + + if IsImportantSave() then + local save_param = user_name().." - "..game.translate_string(save_name) + + get_console():execute("save "..save_param) + end +end + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +function zat_b29_create_random_infop(actor, npc, p) + if p[2] == nil then + abort("Not enough parameters for zat_b29_create_random_infop!") + end + + local amount_needed = p[1] + local current_infop = 0 + local total_infop = 0 + + if (not amount_needed or amount_needed == nil) then + amount_needed = 1 + end + + for k,v in pairs(p) do + if k > 1 then + total_infop = total_infop + 1 + disable_info(v) + end + end + + if amount_needed > total_infop then + amount_needed = total_infop + end + + for i = 1, amount_needed do + current_infop = math.random(1, total_infop) + for k,v in pairs(p) do + if k > 1 then + if (k == current_infop + 1 and (not has_alife_info(v))) then + db.actor:give_info_portion(v) + break + end + end + end + end +end + +function give_item_b29(actor, npc, p) +-- local story_object = p and get_story_object(p[1]) + local az_name + local az_table = { + "zat_b55_anomal_zone", + "zat_b54_anomal_zone", + "zat_b53_anomal_zone", + "zat_b39_anomal_zone", + "zaton_b56_anomal_zone", + } + + for i = 16, 23 do + if has_alife_info(dialogs_zaton.zat_b29_infop_bring_table[i]) then + for k,v in pairs(az_table) do + if has_alife_info(v) then + az_name = v + disable_info(az_name) + break + end + end + pick_artefact_from_anomaly(nil, nil, {p[1], az_name, dialogs_zaton.zat_b29_af_table[i]}) + break + end + end +end + +function relocate_item_b29(actor, npc, p) + local item + for i = 16, 23 do + if has_alife_info(dialogs_zaton.zat_b29_infop_bring_table[i]) then + item = dialogs_zaton.zat_b29_af_table[i] + break + end + end + local from_obj = p and get_story_object(p[1]) + local to_obj = p and get_story_object(p[2]) + if to_obj ~= nil then + if from_obj ~= nil and from_obj:object(item) ~= nil then + from_obj:transfer_item(from_obj:object(item), to_obj) + else + alife():create(item, + to_obj:position(), + to_obj:level_vertex_id(), + to_obj:game_vertex_id(), + to_obj:id()) + end + else + abort("Couldn't relocate item to NULL") + end +end + +-- Функция ресетит секвенсную звукокую тему у непися. by peacemaker, hein, redstain +function reset_sound_npc(actor, npc, p) + local obj_id = npc:id() + if obj_id and xr_sound.sound_table and xr_sound.sound_table[obj_id] then + xr_sound.sound_table[obj_id]:reset(obj_id) + end +end + +function jup_b202_inventory_box_relocate(actor, npc) + local inv_box_out = get_story_object("jup_b202_actor_treasure") + local inv_box_in = get_story_object("jup_b202_snag_treasure") + local items_to_relocate = {} + local function relocate(inv_box_out, item) + table.insert(items_to_relocate, item) + end + inv_box_out:iterate_inventory_box (relocate, inv_box_out) + for k,v in pairs(items_to_relocate) do + inv_box_out:transfer_item(v, inv_box_in) + end +end + +function clear_box(actor, npc, p) + if (p and p[1]) == nil then abort("Wrong parameters in function 'clear_box'!!!") end + + local inv_box = get_story_object(p[1]) + + if inv_box == nil then + abort("There is no object with story_id [%s]", tostring(p[1])) + end + + local items_table = {} + + local function add_items(inv_box, item) + table.insert(items_table, item) + end + + inv_box:iterate_inventory_box(add_items, inv_box) + + for k,v in pairs(items_table) do + alife():release(alife():object(v:id()), true) + end +end + +function activate_weapon(actor, npc, p) + local object = actor:object(p[1]) + if object == nil then + assert("Actor has no such weapon! [%s]", p[1]) + end + if object ~= nil then + actor:make_item_active(object) + end +end + +function set_game_time(actor, npc, p) + local real_hours = level.get_time_hours() + local real_minutes = level.get_time_minutes() + local hours = tonumber(p[1]) + local minutes = tonumber(p[2]) + if p[2] == nil then + minutes = 0 + end + local hours_to_change = hours - real_hours + if hours_to_change <= 0 then + hours_to_change = hours_to_change + 24 + end + local minutes_to_change = minutes - real_minutes + if minutes_to_change <= 0 then + minutes_to_change = minutes_to_change + 60 + hours_to_change = hours_to_change - 1 + elseif hours == real_hours then + hours_to_change = hours_to_change - 24 + end + level.change_game_time(0,hours_to_change,minutes_to_change) + level_weathers.get_weather_manager():forced_weather_change() + surge_manager.get_surge_manager().time_forwarded = true + printf("set_game_time: time changed to [%d][%d]", hours_to_change, minutes_to_change) +end + +function forward_game_time(actor, npc, p) + if not p then + abort("Insufficient or invalid parameters in function 'forward_game_time'!") + end + + local hours = tonumber(p[1]) + local minutes = tonumber(p[2]) + + if p[2] == nil then + minutes = 0 + end + level.change_game_time(0,hours,minutes) + level_weathers.get_weather_manager():forced_weather_change() + surge_manager.get_surge_manager().time_forwarded = true + printf("forward_game_time: time forwarded on [%d][%d]", hours, minutes) +end + +function stop_tutorial() + printf("stop tutorial called") + game.stop_tutorial() +end + +function jup_b10_spawn_drunk_dead_items(actor, npc, p) + local items_all = { + ["wpn_ak74"] = 1, + ["ammo_5.45x39_fmj"] = 5, + ["ammo_5.45x39_ap"] = 3, + ["wpn_fort"] = 1, + ["ammo_9x18_fmj"] = 3, + ["ammo_12x70_buck"] = 5, + ["ammo_11.43x23_hydro"] = 2, + ["grenade_rgd5"] = 3, + ["grenade_f1"] = 2, + ["medkit_army"] = 2, + ["medkit"] = 4, + ["bandage"] = 4, + ["antirad"] = 2, + ["vodka"] = 3, + ["energy_drink"] = 2, + ["conserva"] = 1, + ["jup_b10_ufo_memory_2"] = 1, + } + + local items = { + [2] = { + ["wpn_sig550_luckygun"] = 1, + }, + [1] = { + ["ammo_5.45x39_fmj"] = 5, + ["ammo_5.45x39_ap"] = 3, + ["wpn_fort"] = 1, + ["ammo_9x18_fmj"] = 3, + ["ammo_12x70_buck"] = 5, + ["ammo_11.43x23_hydro"] = 2, + ["grenade_rgd5"] = 3, + ["grenade_f1"] = 2, + }, + [0] = { + ["medkit_army"] = 2, + ["medkit"] = 4, + ["bandage"] = 4, + ["antirad"] = 2, + ["vodka"] = 3, + ["energy_drink"] = 2, + ["conserva"] = 1, + }, + } + + if p and p[1] ~= nil then + local cnt = xr_logic.pstor_retrieve(actor, "jup_b10_ufo_counter", 0) + if cnt > 2 then return end + for k,v in pairs(items[cnt]) do + local target_obj_id = get_story_object_id(p[1]) + if target_obj_id ~= nil then + box = alife():object(target_obj_id) + if box == nil then + abort("There is no such object %s", p[1]) + end + for i = 1,v do + alife():create(k,vector(),0,0,target_obj_id) + end + else + abort("object is nil %s", tostring(p[1])) + end + end + else + for k,v in pairs(items_all) do + for i = 1,v do + alife():create(k, + npc:position(), + npc:level_vertex_id(), + npc:game_vertex_id(), + npc:id()) + end + end + end + +end + +function pick_artefact_from_anomaly(actor, npc, p) + local npc + local az_name = p and p[2] + local af_name = p and p[3] + local af_id + local af_obj + local anomal_zone = db.anomaly_by_name[az_name] + + if p and p[1] then +-- if p[1] == "actor" then +-- npc = db.actor +-- else +-- npc = get_story_object(p[1]) +-- end + + local npc_id = get_story_object_id(p[1]) + if npc_id == nil then + abort("Couldn't relocate item to NULL in function 'pick_artefact_from_anomaly!'") + end + npc = alife():object(npc_id) + if npc and (not IsStalker(npc) or not npc:alive()) then + abort("Couldn't relocate item to NULL (dead or not stalker) in function 'pick_artefact_from_anomaly!'") + end + end + + if anomal_zone == nil then + abort("No such anomal zone in function 'pick_artefact_from_anomaly!'") + end + + if anomal_zone.spawned_count < 1 then + printf("No artefacts in anomal zone [%s]", az_name) + return + end + + for k,v in pairs(anomal_zone.artefact_ways_by_id) do + if alife():object(tonumber(k)) and af_name == alife():object(tonumber(k)):section_name() then + af_id = tonumber(k) + af_obj = alife():object(tonumber(k)) + break + end + if af_name == nil then + af_id = tonumber(k) + af_obj = alife():object(tonumber(k)) + af_name = af_obj:section_name() + break + end + end + + if af_id == nil then + printf("No such artefact [%s] found in anomal zone [%s]", tostring(af_name), az_name) + return + end + + anomal_zone:on_artefact_take(af_obj) + + alife():release(af_obj, true) + give_item(db.actor, npc, {af_name, p[1]}) +-- alife():create(af_name, +-- npc.position, +-- npc.level_vertex_id, +-- npc.game_vertex_id, +-- npc.id) +end + +function anomaly_turn_off (actor, npc, p) + local anomal_zone = db.anomaly_by_name[p[1]] + if anomal_zone == nil then + abort("No such anomal zone in function 'anomaly_turn_off!'") + end + anomal_zone:turn_off() +end + +function anomaly_turn_on (actor, npc, p) + local anomal_zone = db.anomaly_by_name[p[1]] + if anomal_zone == nil then + abort("No such anomal zone in function 'anomaly_turn_on!'") + end + if p[2] then + anomal_zone:turn_on(true) + else + anomal_zone:turn_on(false) + end +end + +function zat_b202_spawn_random_loot(actor, npc, p) + local si_table = {} + si_table[1] = { + [1] = {item = {"bandage","bandage","bandage","bandage","bandage","medkit","medkit","medkit","conserva","conserva"}}, + [2] = {item = {"medkit","medkit","medkit","medkit","medkit","vodka","vodka","vodka","kolbasa","kolbasa"}}, + [3] = {item = {"antirad","antirad","antirad","medkit","medkit","bandage","kolbasa","kolbasa","conserva"}}, + } + si_table[2] = { + [1] = {item = {"grenade_f1","grenade_f1","grenade_f1"}}, + [2] = {item = {"grenade_rgd5","grenade_rgd5","grenade_rgd5","grenade_rgd5","grenade_rgd5"}} + } + si_table[3] = { + [1] = {item = {"detector_elite"}}, + [2] = {item = {"detector_advanced"}} + } + si_table[4] = { + [1] = {item = {"helm_hardhat"}}, + [2] = {item = {"helm_respirator"}} + } + si_table[5] = { + [1] = {item = {"wpn_val","ammo_9x39_ap","ammo_9x39_ap","ammo_9x39_ap"}}, + [2] = {item = {"wpn_spas12","ammo_12x70_buck","ammo_12x70_buck","ammo_12x70_buck","ammo_12x70_buck"}}, + [3] = {item = {"wpn_desert_eagle","ammo_11.43x23_fmj","ammo_11.43x23_fmj","ammo_11.43x23_hydro","ammo_11.43x23_hydro"}}, + [4] = {item = {"wpn_abakan","ammo_5.45x39_ap","ammo_5.45x39_ap"}}, + [5] = {item = {"wpn_sig550","ammo_5.56x45_ap","ammo_5.56x45_ap"}}, + [6] = {item = {"wpn_ak74","ammo_5.45x39_fmj","ammo_5.45x39_fmj"}}, + [7] = {item = {"wpn_l85","ammo_5.56x45_ss190","ammo_5.56x45_ss190"}} + } + si_table[6] = { + [1] = {item = {"specops_outfit"}}, + [2] = {item = {"stalker_outfit"}} + } + weight_table = {} + weight_table[1] = 2 + weight_table[2] = 2 + weight_table[3] = 2 + weight_table[4] = 2 + weight_table[5] = 4 + weight_table[6] = 4 + local spawned_item = {} + local max_weight = 12 + repeat + local n = 0 + repeat + n = math.random(1, #weight_table) + local prap = true + for k,v in pairs(spawned_item) do + if v == n then + prap = false + break + end + end + until (prap) and ((max_weight - weight_table[n]) >= 0) + max_weight = max_weight - weight_table[n] + table.insert(spawned_item,n) + local item = math.random(1, #si_table[n]) + for k,v in pairs(si_table[n][item].item) do + spawn_object_in(actor, npc, {tostring(v),"jup_b202_snag_treasure"}) + end + until max_weight <= 0 +end + +function zat_a1_tutorial_end_give(actor, npc) +-- level.add_pp_effector("black.ppe", 1313, true) ---do not stop on r1 ! + db.actor:give_info_portion("zat_a1_tutorial_end") +end + +function oasis_heal() + local d_health = 0.005 + local d_power = 0.01 + local d_bleeding = 0.05 + local d_radiation = -0.05 + if(db.actor.health<1) then + db.actor.health = d_health + end + if(db.actor.power<1) then + db.actor.power = d_power + end + if(db.actor.radiation>0) then + db.actor.radiation = d_radiation + end + if(db.actor.bleeding>0) then + db.actor.bleeding = d_bleeding + end + db.actor.satiety = 0.01 +end + +--Функция принимает только одно значение, определяющее для какой групировки запускается. доступные значения [duty, freedom] +function jup_b221_play_main(actor, npc, p) + local info_table = {} + local main_theme + local reply_theme + local info_need_reply + local reachable_theme = {} + local theme_to_play = 0 + + if (p and p[1]) == nil then + abort("No such parameters in function 'jup_b221_play_main'") + end +--Составляем таблицу инфопоршинов определяющих доступность той или иной темы, определяем префиксы темы, ответа и реакции, соответственно для долга или для свободы. + if tostring(p[1]) == "duty" then + info_table = { + [1] = "jup_b25_freedom_flint_gone", + [2] = "jup_b25_flint_blame_done_to_duty", + [3] = "jup_b4_monolith_squad_in_duty", + [4] = "jup_a6_duty_leader_bunker_guards_work", + [5] = "jup_a6_duty_leader_employ_work", + [6] = "jup_b207_duty_wins" + } + main_theme = "jup_b221_duty_main_" + reply_theme = "jup_b221_duty_reply_" + info_need_reply = "jup_b221_duty_reply" + elseif tostring(p[1]) == "freedom" then + info_table = { + [1] = "jup_b207_freedom_know_about_depot", + [2] = "jup_b46_duty_founder_pda_to_freedom", + [3] = "jup_b4_monolith_squad_in_freedom", + [4] = "jup_a6_freedom_leader_bunker_guards_work", + [5] = "jup_a6_freedom_leader_employ_work", + [6] = "jup_b207_freedom_wins" + } + main_theme = "jup_b221_freedom_main_" + reply_theme = "jup_b221_freedom_reply_" + info_need_reply = "jup_b221_freedom_reply" + else + abort("Wrong parameters in function 'jup_b221_play_main'") + end +--Составляем таблицу достыпных тем(тлько номера тем). + for k,v in pairs(info_table) do + if (has_alife_info(v)) and (not has_alife_info(main_theme .. tostring(k) .. "_played")) then + table.insert(reachable_theme,k) +-- printf("jup_b221_play_main: table reachable_theme ------------------------------> [%s]", tostring(k)) + end + end +--Если таблица доступных тем пуста играем ответ. Если же она не пуста играем основную тему. Если играем основную тему заносим значение счетчика для повторного выполнения функции. Тему выбираем по рандому. + if #reachable_theme ~= 0 then + disable_info(info_need_reply) + theme_to_play = reachable_theme[math.random(1, #reachable_theme)] +-- printf("jup_b221_play_main: variable theme_to_play ------------------------------> [%s]", tostring(theme_to_play)) + xr_logic.pstor_store(actor,"jup_b221_played_main_theme",tostring(theme_to_play)) + db.actor:give_info_portion(main_theme .. tostring(theme_to_play) .."_played") + if theme_to_play ~= 0 then + play_sound(actor, npc, {main_theme .. tostring(theme_to_play)}) + else + abort("No such theme_to_play in function 'jup_b221_play_main'") + end + else + db.actor:give_info_portion(info_need_reply) + theme_to_play = tonumber(xr_logic.pstor_retrieve(actor,"jup_b221_played_main_theme",0)) + if theme_to_play ~= 0 then + play_sound(actor, npc, {reply_theme..tostring(theme_to_play)}) + else + abort("No such theme_to_play in function 'jup_b221_play_main'") + end + xr_logic.pstor_store(actor,"jup_b221_played_main_theme","0") + end +end + +function pas_b400_play_particle(actor, npc, p) + db.actor:start_particles("zones\\zone_acidic_idle","bip01_head") +end + +function pas_b400_stop_particle(actor, npc, p) + db.actor:stop_particles("zones\\zone_acidic_idle","bip01_head") +end + +function damage_actor_items_on_start(actor, npc) + local actor = db.actor + + local obj = actor:object("helm_respirator") + if obj ~= nil then + obj:set_condition(0.8) + end + + obj = actor:object("stalker_outfit") + if obj ~= nil then + obj:set_condition(0.76) + end + + obj = actor:object("wpn_pm_actor") + if obj ~= nil then + obj:set_condition(0.9) + end + + obj = actor:object("wpn_ak74u") + if obj ~= nil then + obj:set_condition(0.7) + end + +end + +function damage_pri_a17_gauss() + local obj = get_story_object("pri_a17_gauss_rifle") + --local obj = npc:object("pri_a17_gauss_rifle") + if obj ~= nil then + obj:set_condition(0.0) + end +end + +function pri_a17_hard_animation_reset(actor, npc, p) + --db.storage[npc:id()].state_mgr:set_state("pri_a17_fall_down", nil, nil, nil, {fast_set = true}) + db.storage[npc:id()].state_mgr:set_state("pri_a17_fall_down") + + local state_mgr = db.storage[npc:id()].state_mgr + if state_mgr ~= nil then + state_mgr.animation:set_state(nil, true) + state_mgr.animation:set_state("pri_a17_fall_down") + state_mgr.animation:set_control() + end +end + +function jup_b217_hard_animation_reset(actor, npc, p) + db.storage[npc:id()].state_mgr:set_state("jup_b217_nitro_straight") + + local state_mgr = db.storage[npc:id()].state_mgr + if state_mgr ~= nil then + state_mgr.animation:set_state(nil, true) + state_mgr.animation:set_state("jup_b217_nitro_straight") + state_mgr.animation:set_control() + end +end + + + + +function sleep(actor, npc) + local sleep_zones = { + "zat_a2_sr_sleep", + "jup_a6_sr_sleep", + "pri_a16_sr_sleep", + "actor_surge_hide_2" + } + + for k,v in pairs(sleep_zones) do + if utils.npc_in_zone(db.actor, db.zone_by_name[v]) then + ui_sleep_dialog.sleep() + give_info("sleep_active") + end + end + +end + + + +--[[ +function set_tip_to_story(actor, npc, p) + if p == nil or p[2] == nil then + abort("Not enough parameters in 'set_tip_to_story' function!") + end + + local obj = get_story_object(p[1]) + + if not obj then + return + end + + local tip = p[2] + + obj:set_tip_text(tip) +end + +function clear_tip_from_story(actor, npc, p) + if p == nil or p[1] == nil then + abort("Not enough parameters in 'clear_tip_from_story' function!") + end + + local obj = get_story_object(p[1]) + + if not obj then + return + end + + obj:set_tip_text("") +end +]]-- + +function mech_discount(actor, npc, p) + if(p[1]) then + inventory_upgrades.mech_discount(tonumber(p[1])) + end +end + +function polter_actor_ignore(actor, npc, p) + if p[1] and p[1] == "true" then + npc:poltergeist_set_actor_ignore(true) + elseif p[1] and p[1] == "false" then + npc:poltergeist_set_actor_ignore(false) + end +end + +function burer_force_gravi_attack(actor, npc) + npc:burer_set_force_gravi_attack(true) +end + +function burer_force_anti_aim(actor, npc) + npc:set_force_anti_aim(true) +end + +function show_freeplay_dialog(actor, npc, p) + if p[1] and p[2] and p[2] == "true" then + ui_freeplay_dialog.show("message_box_yes_no", p[1]) + elseif p[1] then + ui_freeplay_dialog.show("message_box_ok", p[1]) + end +end + + + +local detectors = { "detector_simple", "detector_advanced", "detector_elite", "detector_scientific" } + +-- Только для state_mgr +function get_best_detector(npc) + for k,v in pairs(detectors) do + local obj = npc:object(v) + if obj ~= nil then + obj:enable_attachable_item(true) + return + end + end +end + +function hide_best_detector(npc) + for k,v in pairs(detectors) do + local obj = npc:object(v) + if obj ~= nil then + obj:enable_attachable_item(false) + return + end + end +end + +-- Инфопоршны для синхронизации анимации нпс с прочими действиями, и для других целей +function pri_a18_radio_start(actor, npc) + db.actor:give_info_portion("pri_a18_radio_start") +end + +function pri_a17_ice_climb_end(actor, npc) + db.actor:give_info_portion("pri_a17_ice_climb_end") +end + +function jup_b219_opening(actor, npc) + db.actor:give_info_portion("jup_b219_opening") +end + +function jup_b219_entering_underpass(actor, npc) + db.actor:give_info_portion("jup_b219_entering_underpass") +end + +function pri_a17_pray_start(actor, npc) + db.actor:give_info_portion("pri_a17_pray_start") +end + +function zat_b38_open_info(actor, npc) + db.actor:give_info_portion("zat_b38_open_info") +end + +function zat_b38_switch_info(actor, npc) + db.actor:give_info_portion("zat_b38_switch_info") +end +function zat_b38_cop_dead(actor, npc) + db.actor:give_info_portion("zat_b38_cop_dead") +end + +function jup_b15_zulus_drink_anim_info(actor, npc) + db.actor:give_info_portion("jup_b15_zulus_drink_anim_info") +end + +function pri_a17_preacher_death(actor, npc) + db.actor:give_info_portion("pri_a17_preacher_death") +end + +function zat_b3_tech_surprise_anim_end(actor, npc) + db.actor:give_info_portion("zat_b3_tech_surprise_anim_end") +end + +function zat_b3_tech_waked_up(actor, npc) + db.actor:give_info_portion("zat_b3_tech_waked_up") +end + +function zat_b3_tech_drinked_out(actor, npc) + db.actor:give_info_portion("zat_b3_tech_drinked_out") +end + +function pri_a28_kirillov_hq_online(actor, npc) + db.actor:give_info_portion("pri_a28_kirillov_hq_online") +end + +function pri_a20_radio_start(actor, npc) + db.actor:give_info_portion("pri_a20_radio_start") +end + +function pri_a22_kovalski_speak(actor, npc) + db.actor:give_info_portion("pri_a22_kovalski_speak") +end + +function zat_b38_underground_door_open(actor, npc) + db.actor:give_info_portion("zat_b38_underground_door_open") +end + +function zat_b38_jump_tonnel_info(actor, npc) + db.actor:give_info_portion("zat_b38_jump_tonnel_info") +end + +function jup_a9_cam1_actor_anim_end(actor, npc) + db.actor:give_info_portion("jup_a9_cam1_actor_anim_end") +end + +function pri_a28_talk_ssu_video_end(actor, npc) + db.actor:give_info_portion("pri_a28_talk_ssu_video_end") +end + +function set_torch_state(actor, npc, p) + if p == nil or p[2] == nil then + abort("Not enough parameters in 'set_torch_state' function!") + end + + local obj = get_story_object(p[1]) + + if not obj then + return + end + local torch = obj:object("device_torch") + if torch then + if p[2] == "on" then + torch:enable_attachable_item(true) + elseif p[2] == "off" then + torch:enable_attachable_item(false) + end + end +end + + +local actor_nightvision = false +local actor_torch = false + +function disable_actor_nightvision(actor, npc) + local nightvision = db.actor + if nightvision ~= nil and nightvision:night_vision_enabled() then + nightvision:enable_night_vision(false) + actor_nightvision = true + end +end + +function enable_actor_nightvision(actor, npc) + local nightvision = db.actor + if nightvision ~= nil and not nightvision:night_vision_enabled() and actor_nightvision then + nightvision:enable_night_vision(true) + actor_nightvision = false + end +end + +function disable_actor_torch(actor, npc) + local torch = db.actor:object("device_torch") + if torch ~= nil and torch:torch_enabled() then + torch:enable_torch(false) + actor_torch = true + end +end + +function enable_actor_torch(actor, npc) + local torch = db.actor:object("device_torch") + if torch ~= nil and not torch:torch_enabled() and actor_torch then + torch:enable_torch(true) + actor_torch = false + end +end + + +function create_cutscene_actor_with_weapon(actor, npc, p) + --' p[1] - секция кого спаунить + --' p[2] - имя патрульного пути где спаунить. + --' p[3] - точка патрульного пути + --' p[4] - поворот по оси Y + --' p[5] - принудительный слот - будет работать даже при disable_ui + local spawn_sect = p[1] + if spawn_sect == nil then + abort("Wrong spawn section for 'spawn_object' function %s. For object %s", tostring(spawn_sect), obj:name()) + end + + local path_name = p[2] + if path_name == nil then + abort("Wrong path_name for 'spawn_object' function %s. For object %s", tostring(path_name), obj:name()) + end + + if not level.patrol_path_exists(path_name) then + abort("Path %s doesnt exist. Function 'spawn_object' for object %s ", tostring(path_name), obj:name()) + end + local ptr = patrol(path_name) + local index = p[3] or 0 + local yaw = p[4] or 0 + + local npc = alife():create(spawn_sect, ptr:point(index), ptr:level_vertex_id(0), ptr:game_vertex_id(0)) + if IsStalker( nil, npc:clsid()) then + npc:o_torso().yaw = yaw * math.pi / 180 + else + npc.angle.y = yaw * math.pi / 180 + end + + local slot_override = p[5] or 0 + + local slot + local active_item + + if slot_override == 0 then + slot = db.actor:active_slot() + if(slot~=2 and slot~=3) then + return + end + active_item = db.actor:active_item() + else + if db.actor:item_in_slot(slot_override) ~= nil then + active_item = db.actor:item_in_slot(slot_override) + else + if db.actor:item_in_slot(3) ~= nil then + active_item = db.actor:item_in_slot(3) + elseif db.actor:item_in_slot(2) ~= nil then + active_item = db.actor:item_in_slot(2) + else + return + end + end + end + + local actor_weapon = alife():object(active_item:id()) + local section_name = actor_weapon:section_name() + if section_name == "pri_a17_gauss_rifle" then + section_name = "wpn_gauss" + end + + if (active_item) then + local new_weapon = alife():create(section_name, + ptr:point(index), + ptr:level_vertex_id(0), + ptr:game_vertex_id(0), + npc.id) + if section_name ~= "wpn_gauss" then + new_weapon:clone_addons(actor_weapon) + end + end +end + +-- Заставить играть уникальные анимации сна(у кровососа) +function set_force_sleep_animation(actor, npc, p) + local num = p[1] + npc:force_stand_sleep_animation(tonumber(num)) +end +-- Убрать уникальные анимации сна(у кровососа) +function release_force_sleep_animation(actor, npc) + npc:release_stand_sleep_animation() +end + +function zat_b33_pic_snag_container(actor, npc) + if xr_conditions.actor_in_zone(actor, npc, {"zat_b33_tutor"}) then + give_actor(actor, npc, {"zat_b33_safe_container"}) + db.actor:give_info_portion("zat_b33_find_package") + if not has_alife_info("zat_b33_safe_container") then + local zone = db.zone_by_name["zat_b33_tutor"] + play_sound(actor, zone, {"pda_news"}) + end + end +end + +--Отключение воздействия вражеского нпс на индикатор видимости врага на хаде игрока. +--Исп. только из логики нпс. +function set_visual_memory_enabled(actor, npc, p) + if (p and p[1]) and (tonumber(p[1]) >= 0) and (tonumber(p[1]) <= 1) then + local boolval = false + if (tonumber(p[1]) == 1) then + boolval = true + end + npc:set_visual_memory_enabled(boolval) + end +end + +function disable_memory_object (actor, npc) + local best_enemy = npc:best_enemy() + if best_enemy then + npc:enable_memory_object(best_enemy, false) + end +end + +function zat_b202_spawn_b33_loot(actor, npc, p) + local info_table = { + "zat_b33_first_item_gived", + "zat_b33_second_item_gived", + "zat_b33_third_item_gived", + "zat_b33_fourth_item_gived", + "zat_b33_fifth_item_gived" + } + local item_table = {} + item_table[1] = { + "wpn_fort_snag" + } + item_table[2] = { + "medkit_scientic", + "medkit_scientic", + "medkit_scientic", + "antirad", + "antirad", + "antirad", + "bandage", + "bandage", + "bandage", + "bandage", + "bandage" + } + item_table[3] = { + "wpn_ak74u_snag" + } + item_table[4] = { + "af_soul" + } + item_table[5] = { + "helm_hardhat_snag" + } + for k,v in pairs(info_table) do + local obj_id + if (k == 1) or (k == 3) then + obj_id = "jup_b202_stalker_snag" + else + obj_id = "jup_b202_snag_treasure" + end + if not has_alife_info(tostring(v)) then + for l,m in pairs(item_table[k]) do +-- printf("zat_b202_spawn_b33_loot: number [%s] item [%s] to [%s]", tostring(k), tostring(m), tostring(obj_id)) + spawn_object_in(actor, npc, {tostring(m),tostring(obj_id)}) + end + end + end +end + +function set_monster_animation (actor, npc, p) + if not (p and p[1]) then + abort("Wrong parameters in function 'set_monster_animation'!!!") + end + npc:set_override_animation (p[1]) +end + +function clear_monster_animation (actor, npc) + npc:clear_override_animation () +end + +local actor_position_for_restore +local actor_direction_for_restore + +function save_actor_position() + actor_position_for_restore = get_story_object("actor"):position() + --actor_direction_for_restore = get_story_object("actor"):direction() +end + +function restore_actor_position() + --db.actor:set_actor_direction(actor_direction_for_restore) + db.actor:set_actor_position(actor_position_for_restore) +end + +function upgrade_hint(actor, npc, p) + if(p) then + inventory_upgrades.cur_hint = p + end +end + +function force_obj(actor, npc, p) + local obj = get_story_object(p[1]) + if not obj then + abort("'force_obj' Target object does not exist") + return + end + if p[2] == nil then p[2] = 20 end + if p[3] == nil then p[3] = 100 end + obj:set_const_force(vector():set(0,1,0), p[2], p[3]) +end + +function pri_a28_check_zones() + local story_obj_id + local dist + local index = 0 + + local zones_tbl = { + [1] = "pri_a28_sr_mono_add_1", + [2] = "pri_a28_sr_mono_add_2", + [3] = "pri_a28_sr_mono_add_3", + } + + local info_tbl = { + [1] = "pri_a28_wave_1_spawned", + [2] = "pri_a28_wave_2_spawned", + [3] = "pri_a28_wave_3_spawned", + } + + local squad_tbl = { + [1] = "pri_a28_heli_mono_add_1", + [2] = "pri_a28_heli_mono_add_2", + [3] = "pri_a28_heli_mono_add_3", + } + + for k,v in pairs(zones_tbl) do + story_obj_id = get_story_object_id(v) + if story_obj_id then + local se_obj = alife():object(story_obj_id) + local curr_dist = se_obj.position:distance_to(db.actor:position()) + if index == 0 then + dist = curr_dist + index = k + elseif dist < curr_dist then + dist = curr_dist + index = k + end + end + end + + if index == 0 then + abort("Found no distance or zones in func 'pri_a28_check_zones'") + end + + if has_alife_info(info_tbl[index]) then + for k,v in pairs(info_tbl) do + if not has_alife_info(info_tbl[k]) then + db.actor:give_info_portion(info_tbl[k]) + end + end + else + db.actor:give_info_portion(info_tbl[index]) + end + + create_squad(db.actor,nil,{squad_tbl[index],"pri_a28_heli"}) +end + +function eat_vodka_script() + if db.actor:object("vodka_script") ~= nil then + db.actor:eat(db.actor:object("vodka_script")) + end +end + +local mat_table = { + "jup_b200_material_1", + "jup_b200_material_2", + "jup_b200_material_3", + "jup_b200_material_4", + "jup_b200_material_5", + "jup_b200_material_6", + "jup_b200_material_7", + "jup_b200_material_8", + "jup_b200_material_9", + } + +function jup_b200_count_found(actor) + local cnt = 0 + + for k,v in pairs(mat_table) do + local material_obj = get_story_object(v) + if material_obj then + local parent = material_obj:parent() + if parent then + local parent_id = parent:id() + if parent_id ~= 65535 and parent_id == actor:id() then + cnt = cnt + 1 + end + end + end + end + + cnt = cnt + xr_logic.pstor_retrieve(actor, "jup_b200_tech_materials_brought_counter", 0) + xr_logic.pstor_store(actor, "jup_b200_tech_materials_found_counter", cnt) +end diff --git a/gamedata/scripts/xr_kamp.script b/gamedata/scripts/xr_kamp.script new file mode 100644 index 0000000..1100db2 --- /dev/null +++ b/gamedata/scripts/xr_kamp.script @@ -0,0 +1,432 @@ +---------------------------------------------------------------------------------------------------------------------- +-- Схема лагерь. Чудак(и) у костра. +-- автор: Диденко Руслан (Stohe) +-- TODO: +---------------------------------------------------------------------------------------------------------------------- +--function printf() +--end + +local ActionToStateTable = { + idle = {director = { "sit", "sit_ass", "sit_knee", "eat_bread", "eat_kolbasa", "eat_vodka", "eat_energy"}, listener = {"sit", "sit_ass", "sit_knee", "eat_bread", "eat_kolbasa", "eat_vodka", "eat_energy"}}, + harmonica = {director = {"harmonica"}, listener = {"sit", "sit_ass", "sit_knee", "eat_bread", "eat_kolbasa", "eat_vodka", "eat_energy"}}, + guitar = {director = {"guitar"}, listener = {"sit", "sit_ass", "sit_knee", "eat_bread", "eat_kolbasa", "eat_vodka", "eat_energy"}}, + story = {director = {"sit", "sit_ass", "sit_knee"}, listener = {"sit", "sit_ass", "sit_knee", "eat_bread", "eat_kolbasa", "eat_vodka", "eat_energy"}}, +} + +local ActionAvailabilityTable = { + eat_bread = "kamp_eat_bread", + eat_kolbasa = "kamp_eat_kolbasa", + eat_vodka = "kamp_drink_vodka", + eat_energy = "kamp_drink_energy", +} + +local ActionTimingTable = { + sit = {min = 60*2*1000,max = 60*10*1000}, + sit_ass = {min =60*2*1000,max = 60*10*1000}, + sit_knee = {min = 60*2*1000,max = 60*10*1000} +} + + +kamps = {} +--------------------------------------------------------------------------------------------------------------------- +--Evaluators +---------------------------------------------------------------------------------------------------------------------- +--' Условие завершения скрипта +class "evaluator_kamp_end" (property_evaluator) +function evaluator_kamp_end:__init(name, storage) super (nil, name) + self.a = storage +end +function evaluator_kamp_end:evaluate() + return not xr_logic.is_active(self.object, self.a) +end +--' Находимся ли мы на заданной позиции +class "evaluator_on_position" (property_evaluator) +function evaluator_on_position:__init(name, storage) super (nil, name) + self.a = storage +end +function evaluator_on_position:evaluate() + if self.object:level_vertex_id() == self.a.pos_vertex then + return true + end + return false +end +---------------------------------------------------------------------------------------------------------------------- +--Actions +---------------------------------------------------------------------------------------------------------------------- +--' Идет в заданную область +class "action_go_position" (action_base) +function action_go_position:__init (npc_name,action_name,storage) super (nil,action_name) + self.a = storage +end +function action_go_position:initialize() + action_base.initialize(self) +-- self.object:set_node_evaluator() +-- self.object:set_path_evaluator() + self.object:set_desired_position() + self.object:set_desired_direction() + + self.a.pos_vertex = nil + self.a.npc_position_num = nil + self.a.signals = {} +end +function action_go_position:execute () + action_base.execute (self) + + -- Спрашиваем где сидеть + local tmp_pos_vertex, npc_position_num = kamps[self.a.center_point]:getDestVertex(self.object, self.a.radius) + + if tmp_pos_vertex == nil then + return + end + + if self.a.npc_position_num ~= npc_position_num then + self.a.npc_position_num = npc_position_num + self.a.pos_vertex = tmp_pos_vertex + + --' Определяем куда смотреть. + self.a.pp = patrol(self.a.center_point):point(0) + + local dir = vector():set(math.random(-1,1), 0, math.random(-1,1)) + dir:normalize() + + local delta_dist = math.random(0,0.5) + self.a.pp.x = self.a.pp.x + dir.x * delta_dist + self.a.pp.z = self.a.pp.z + dir.z * delta_dist + + + + self.object:set_dest_level_vertex_id(self.a.pos_vertex) + --printf("vertex_position") + local desired_direction = vector():sub(self.a.pp,level.vertex_position(self.a.pos_vertex)) + --printf("desired_direction = %s", vec_to_str(desired_direction)) + if desired_direction ~= nil and not utils.vector_cmp(desired_direction, vector():set(0,0,0)) then + desired_direction:normalize() + self.object:set_desired_direction(desired_direction) + end + self.object:set_path_type(game_object.level_path) + state_mgr.set_state(self.object, self.a.def_state_moving) + end +end +function action_go_position:finalize () + action_base.finalize (self) +end + +--' Просто сидит и втыкает +class "action_wait" (action_base) +function action_wait:__init (npc_name,action_name,storage) super (nil,action_name) + self.a = storage +end +function action_wait:initialize() + action_base.initialize(self) +-- self.object:set_node_evaluator() +-- self.object:set_path_evaluator() + self.object:set_desired_position() + self.object:set_desired_direction() + + local avail_actions = xr_animpoint_predicates.associations[self.a.description] + self.a.approved_actions = {} + + for k,v in pairs(avail_actions) do + -- Убираем те действия, которые не подходят по прекондишну + if v.predicate(self.object:id(),true)==true then + table.insert(self.a.approved_actions, v) + kamps[self.a.center_point]:AddAvailableAction(self.object,v.name) + end + end + + kamps[self.a.center_point]:increasePops(self.object) + +end +function action_wait:activate_scheme() + self.a.signals = {} +end +function action_wait:execute() + -- action_base.execute (self) + + -- --' повернуть его лицом к центру + -- state_mgr.set_state(self.object, "sit", nil, nil, {look_position = self.a.pp}) + + action_base.execute (self) + local state = kamps[self.a.center_point]:updateNpc(self.object) + + --' повернуть его лицом к центру + state_mgr.set_state(self.object, state, nil, nil, {look_position = self.a.pp}) +end +function action_wait:finalize() + kamps[self.a.center_point]:decreasePops(self.object) + action_base.finalize (self) +end +function action_wait:deactivate(npc) + kamps[self.a.center_point]:removeNpc(npc) +end +function action_wait:death_callback(npc) + kamps[self.a.center_point]:removeNpc(npc) +end +function action_wait:net_destroy(npc) + kamps[self.a.center_point]:removeNpc(npc) +end + + +class "CKampManager" +function CKampManager:__init(path) + self.kamp_name = path + self.patrol = patrol(path) + --self.center = self.patrol:level_vertex_id(0) + self.position = {{dir = vector():set(1, 0, 0), used = nil}, + {dir = vector():set(1, 0, 1), used = nil}, + {dir = vector():set(0, 0, 1), used = nil}, + {dir = vector():set(-1, 0, 1), used = nil}, + {dir = vector():set(-1, 0, 0), used = nil}, + {dir = vector():set(-1, 0, -1),used = nil}, + {dir = vector():set(0, 0, -1), used = nil}, + {dir = vector():set(1, 0, -1), used = nil}} + self.npc = {} + self.population = 0 +end +function CKampManager:selectPosition(npc_id) + -- создаем список доступных позиций + --printf("KAMP. [%s] called select position", npc_id) + local free = {} + for k,v in pairs(self.position) do + if v.used == nil then + table.insert(free, k) + end + end + --' затем из доступных позиций выбрать рандомно одну. + if #free > 0 then + --printf("KAMP [%s] free node > 0", npc_id) + local rr = math.random(#free) + self.position[free[rr]].used = npc_id + self.npc[npc_id].position = free[rr] + end + --printf("KAMP [%s] npc table", npc_id) + --print_table(self.npc) + --printf("KAMP [%s] position table", npc_id) + --print_table(self.position) +end +function CKampManager:getDestVertex(npc, radius) + local npc_id = npc:id() + --printf("get dest Vertex called [%s]", npc_id) + if self.npc[npc_id].position == nil then + --printf("-------debug_info------------- %s", self.kamp_name) + --print_table(self.npc) + --printf("-------debug_info------------- %s", self.kamp_name) + --print_table(self.position) + --printf("-------debug_info------------- %s", self.kamp_name) + abort("get dest Vertex: nil [%s]", npc_id) + return nil + end + + -- высчитываем вертех по направлению + -- Берем позицию в заданном направлении, затем берем ниарест точку от нее. + + local pp = self.patrol:point(0) + local dir = self.position[self.npc[npc_id].position].dir + + -- Считаем рандомное отклонение направления. + dir.x = dir.x + math.random(-1,1)/5 + dir.z = dir.z + math.random(-1,1)/5 + dir:normalize() + + radius = radius + math.random(-0.3,0.3) + + local dest_vertex = 4294967295 + + while dest_vertex == 4294967295 do + local tmp_pos = vector():set(0,0,0) + tmp_pos.x = pp.x + dir.x * radius + tmp_pos.z = pp.z + dir.z * radius + tmp_pos.y = pp.y + dest_vertex = level.vertex_id(tmp_pos) + if dest_vertex == 4294967295 then + if radius < 1 then + SemiLog("Invalid AI map at kamp point ["..self.kamp_name.."]") + return nil + else + radius = radius - 0.5 + end + end + end + + if not npc:accessible(dest_vertex) then + --printf("vertex_position %s", tostring(dest_vertex)) + local vp = level.vertex_position(dest_vertex) + --printf("Nearest for npc[%s] kamp [%s] position [%s:%s:%s]", npc:name(), tostring(self.kamp_name),tostring(vp.x), tostring(vp.y), tostring(vp.z)) + local nearest_vertex = npc:accessible_nearest(vp, vector():set(0,0,0)) + --printf("Nearest for npc[%s] kamp [%s] position [%s:%s:%s]", npc:name(), tostring(self.kamp_name), vec_to_str(nearest_vertex)) + return nearest_vertex, self.npc[npc_id].position + end + + return dest_vertex, self.npc[npc_id].position +end + +function CKampManager:updateNpc(npc) + + local tbl = {} + local npc_id = npc:id() + local camp_action, is_director + + if not self.camp then + camp_action = "idle" + is_director = false + else + camp_action, is_director = self.camp:get_camp_action(npc_id) + end + + + if(is_director) then + tbl = ActionToStateTable[camp_action].director + else + tbl = ActionToStateTable[camp_action].listener + end + + if self.npc[npc_id].begin == nil or time_global() - self.npc[npc_id].begin >= self.npc[npc_id].state_idle or self.npc[npc_id].is_director ~= is_director then + self.npc[npc_id].begin = time_global() + if (self.npc[npc_id].camp_action == "story" or self.npc[npc_id].camp_action == "idle") and (camp_action =="idle" or camp_action == "story") and self.npc[npc_id].is_director ~= is_director then + self.npc[npc_id].is_director = is_director + self.npc[npc_id].camp_action = camp_action + return self.npc[npc_id].state_selected + end + local Action = "kamp" + repeat + local rnd = math.random(#tbl) + self.npc[npc_id].state_selected = tbl[rnd] + if ActionAvailabilityTable[self.npc[npc_id].state_selected] then + Action = ActionAvailabilityTable[self.npc[npc_id].state_selected] + else + Action = "kamp" + end + until self.npc[npc_id].AvailableActions[Action] + + if ActionTimingTable[self.npc[npc_id].state_selected] ~= nil then + self.npc[npc_id].state_idle = math.random(ActionTimingTable[self.npc[npc_id].state_selected].min,ActionTimingTable[self.npc[npc_id].state_selected].max) + else + self.npc[npc_id].state_idle = math.random(15*1000,60*1000) + end + self.npc[npc_id].is_director = is_director + self.npc[npc_id].camp_action = camp_action + end + return self.npc[npc_id].state_selected + +end + +function CKampManager:addNpc(npc) + if self.npc[npc:id()] ~= nil then + return + end + + self.npc[npc:id()] = {name = npc:name(), position = nil, AvailableActions = {}} + self:selectPosition(npc:id()) + +end +function CKampManager:removeNpc(npc) + local npc_id = npc:id() + if self.npc[npc_id] ~= nil then + self.position[self.npc[npc_id].position].used = nil + self.npc[npc_id] = nil + end + + if self.camp ~= nil then + self.camp:unregister_npc(npc:id()) + end +end + +function CKampManager:increasePops(npc) + self.population = self.population + 1 + + if not self.camp then + self.camp = sr_camp.get_current_camp(self.patrol:point(0)) + end + + if self.camp ~= nil then + self.camp:register_npc(npc:id()) + end + -- local campfire = bind_campfire.campfire_table[self.kamp_name.."_campfire"] + -- if self.population > 0 and campfire ~= nil and not campfire:is_on() then + -- campfire:turn_on() + -- end +end +function CKampManager:decreasePops(npc) + self.population = self.population - 1 + -- local campfire = bind_campfire.campfire_table[self.kamp_name.."_campfire"] + -- if self.population < 1 and campfire ~= nil and campfire:is_on() then + -- campfire:turn_off() + -- end +end + +function CKampManager:AddAvailableAction(NPC,StateName) + self.npc[NPC:id()].AvailableActions[StateName] = true +end + + + +---------------------------------------------------------------------------------------------------------------------- +--Kamp binder +---------------------------------------------------------------------------------------------------------------------- +function add_to_binder(object, ini, scheme, section, storage) + local operators = {} + local properties = {} + + local manager = object:motivation_action_manager() + + properties["kamp_end"] = xr_evaluators_id.stohe_kamp_base + 1 + properties["on_position"] = xr_evaluators_id.stohe_kamp_base + 2 + properties["contact"] = xr_evaluators_id.stohe_meet_base + 1 + + operators["go_position"] = xr_actions_id.stohe_kamp_base + 1 + operators["wait"] = xr_actions_id.stohe_kamp_base + 3 + properties["state_mgr_logic_active"] = xr_evaluators_id.state_mgr + 4 + + -- Evaluators + manager:add_evaluator (properties["kamp_end"], this.evaluator_kamp_end ("kamp_end", storage, "kamp_end")) + manager:add_evaluator (properties["on_position"], this.evaluator_on_position ("kamp_on_position", storage, "kamp_on_position")) + + -- Actions + local action = this.action_wait (object:name(),"action_kamp_wait", storage) + action:add_precondition (world_property(stalker_ids.property_alive, true)) + action:add_precondition (world_property(stalker_ids.property_danger,false)) + action:add_precondition (world_property(stalker_ids.property_enemy, false)) + action:add_precondition (world_property(stalker_ids.property_anomaly,false)) + xr_motivator.addCommonPrecondition(action) + action:add_precondition (world_property(properties["on_position"], true)) + action:add_effect (world_property(properties["kamp_end"], true)) + action:add_effect (world_property(properties["state_mgr_logic_active"], false)) + manager:add_action (operators["wait"], action) + xr_logic.subscribe_action_for_events(object, storage, action) + + action = this.action_go_position (object:name(),"action_go_kamp", storage) + action:add_precondition (world_property(stalker_ids.property_alive, true)) + action:add_precondition (world_property(stalker_ids.property_danger,false)) + action:add_precondition (world_property(stalker_ids.property_enemy, false)) + action:add_precondition (world_property(stalker_ids.property_anomaly,false)) + xr_motivator.addCommonPrecondition(action) + action:add_precondition (world_property(properties["on_position"], false)) + action:add_effect (world_property(properties["on_position"], true)) + action:add_effect (world_property(properties["state_mgr_logic_active"], false)) + manager:add_action (operators["go_position"], action) + + action = manager:action (xr_actions_id.alife) + action:add_precondition (world_property(properties["kamp_end"], true)) + +end +-- включение лагеря +function set_scheme(npc, ini, scheme, section, gulag_name) + local st = xr_logic.assign_storage_and_bind(npc, ini, scheme, section) + + st.logic = xr_logic.cfg_get_switch_conditions(ini, section, npc) + + st.center_point = utils.cfg_get_string(ini, section, "center_point", npc, true, gulag_name) + st.radius = utils.cfg_get_number(ini, section, "radius", npc, false, 2) + st.description = "kamp" + st.base_action = "kamp" + + + + if kamps[st.center_point] == nil then + kamps[st.center_point] = CKampManager(st.center_point) + end + kamps[st.center_point]:addNpc(npc) + st.pos_vertex = nil + + st.def_state_moving = utils.cfg_get_string(ini, section, "def_state_moving", npc, false, "", "walk") +end diff --git a/gamedata/shaders/d3d11/accum_base.ps.hlsl b/gamedata/shaders/d3d11/accum_base.ps.hlsl new file mode 100644 index 0000000..cc28b75 --- /dev/null +++ b/gamedata/shaders/d3d11/accum_base.ps.hlsl @@ -0,0 +1,52 @@ +#include "common.hlsli" +#include "shadow.hlsli" + +#include "metalic_roughness_light.hlsli" +#include "ScreenSpaceContactShadows.hlsl" + +uniform float4 m_lmap[2]; +uniform int Ldynamic_hud; + +//LVutner: Force early-z +[earlydepthstencil] +float4 main(p_volume I, float4 pos2d : SV_POSITION) : SV_Target +{ + float2 tcProj = I.tc.xy / I.tc.w; + + IXrayGbuffer O; + GbufferUnpack(tcProj, pos2d.xy, O); + + float4 Point = float4(Ldynamic_hud > 0 ? O.PointHud.xyz : O.Point.xyz, 1.0f); + + float3 LightDirection = normalize(O.PointReal.xyz - Ldynamic_pos.xyz); + float3 Light = DirectLight(Ldynamic_color, LightDirection, O.Normal, O.View.xyz, O.Color, O.Metalness, O.Roughness, O.F0); + + float3 Lightmap = ComputeLightAttention(Point.xyz - Ldynamic_pos.xyz, Ldynamic_pos.w); + Point.xyz += O.Normal * 0.025f; + + float4 PS = mul(m_shadow, Point); + +#ifdef USE_SHADOW + Lightmap *= max(Ldynamic_hud, shadow(PS)); + + #ifdef USE_HUD_SHADOWS + if (O.Depth < 0.02f && dot(Lightmap.xyz, Light.xyz) > 0.0001f) + { + RayTraceContactShadow(tcProj, O.PointHud, LightDirection, Lightmap); + } + #endif +#endif + +#ifdef USE_LMAP + #ifdef USE_LMAPXFORM + PS.x = dot(Point, m_lmap[0]); + PS.y = dot(Point, m_lmap[1]); + #endif + Lightmap *= s_lmap.SampleLevel(smp_rtlinear, PS.xy / PS.w, 0.0f).xyz; +#endif + + Lightmap = PushGamma(Lightmap); + return float4(Lightmap.xyz * Light.xyz, 0.0f); +} + + diff --git a/gamedata/shaders/d3d11/accum_emissive.ps.hlsl b/gamedata/shaders/d3d11/accum_emissive.ps.hlsl new file mode 100644 index 0000000..6d7d93b --- /dev/null +++ b/gamedata/shaders/d3d11/accum_emissive.ps.hlsl @@ -0,0 +1,7 @@ +#include "common.hlsli" + +float4 main(p_bumped_new I) : SV_Target +{ + return float4(PushGamma(s_base.Sample(smp_base, I.tcdh.xy).xyz) * 16.0f, 0.0f); +} + diff --git a/gamedata/shaders/d3d11/accum_emissivel.ps.hlsl b/gamedata/shaders/d3d11/accum_emissivel.ps.hlsl new file mode 100644 index 0000000..af0d38d --- /dev/null +++ b/gamedata/shaders/d3d11/accum_emissivel.ps.hlsl @@ -0,0 +1,7 @@ +#include "common.hlsli" + +float4 main(p_bumped_new I) : SV_Target +{ + return float4(PushGamma(s_base.Sample(smp_base, I.tcdh.xy).xyz), 0.0f); +} + diff --git a/gamedata/shaders/d3d11/accum_emissivew.ps.hlsl b/gamedata/shaders/d3d11/accum_emissivew.ps.hlsl new file mode 100644 index 0000000..c0da2c5 --- /dev/null +++ b/gamedata/shaders/d3d11/accum_emissivew.ps.hlsl @@ -0,0 +1,6 @@ +#include "common.hlsli" + +float4 main(p_bumped_new I) : SV_Target +{ + return float4(s_base.Sample(smp_base, I.tcdh.xy).xyz * 9.0f, 0.0f); +} diff --git a/gamedata/shaders/d3d11/accum_indirect.ps.hlsl b/gamedata/shaders/d3d11/accum_indirect.ps.hlsl new file mode 100644 index 0000000..204e7b4 --- /dev/null +++ b/gamedata/shaders/d3d11/accum_indirect.ps.hlsl @@ -0,0 +1,7 @@ +#include "common.hlsli" + +float4 main() : SV_Target +{ + return 0; +} + diff --git a/gamedata/shaders/d3d11/accum_mask.vs.hlsl b/gamedata/shaders/d3d11/accum_mask.vs.hlsl new file mode 100644 index 0000000..6b18503 --- /dev/null +++ b/gamedata/shaders/d3d11/accum_mask.vs.hlsl @@ -0,0 +1,7 @@ +#include "common.hlsli" + +float4 main(float4 P : POSITION) : SV_POSITION +{ + return mul(m_WVP, P); +} + diff --git a/gamedata/shaders/d3d11/accum_sun.ps.hlsl b/gamedata/shaders/d3d11/accum_sun.ps.hlsl new file mode 100644 index 0000000..ff9a882 --- /dev/null +++ b/gamedata/shaders/d3d11/accum_sun.ps.hlsl @@ -0,0 +1,64 @@ +#include "common.hlsli" + +#if SUN_QUALITY > 2 + #define USE_ULTRA_SHADOWS +#endif + +#include "shadow.hlsli" +#include "metalic_roughness_light.hlsli" +#include "ScreenSpaceContactShadows.hlsl" + +float4 main(v2p_volume I) : SV_Target +{ + float2 tcProj = I.tc.xy / I.tc.w; + + IXrayGbuffer O; + GbufferUnpack(tcProj, I.hpos.xy, O); + + float3 Shift = O.Normal; + + if (O.SSS > 0.0f) + { + Shift *= dot(Ldynamic_dir.xyz, Shift) >= 0.0 ? -1.0f : 1.0f; + } + + float4 Point = float4(O.Point.xyz, 1.f); + Point.xyz += Shift * 0.025f; + + float4 PS = mul(m_shadow, Point); + +#ifdef USE_FAR_ATTENTION + float3 Factor = smoothstep(0.5f, 0.45f, abs(PS.xyz / PS.w - 0.5f)); + float Fade = Factor.x * Factor.y * Factor.z; + + O.SSS *= 0.5f + 0.5f * Fade; +#endif + + float3 Light = DirectLight(Ldynamic_color, Ldynamic_dir.xyz, O.Normal, O.View.xyz, O.Color, O.Metalness, O.Roughness, O.F0); + Light += SimpleTranslucency(Ldynamic_color.xyz, Ldynamic_dir.xyz, O.Normal) * O.SSS * O.Color; + +#if SUN_QUALITY == 2 + float Shadow = shadow_high(PS); +#else + float Shadow = shadow(PS); +#endif + +#ifdef USE_FAR_ATTENTION + float FarShadow = dot(Ldynamic_dir.xyz, O.Normal.xyz); + FarShadow = smoothstep(0.75f, 0.6f, FarShadow) * saturate(O.Hemi * 8.0f - 2.0f); + + Shadow = lerp(FarShadow, Shadow, Fade); + +#elif defined(USE_HUD_SHADOWS) + if (O.Depth < 0.02f && dot(Shadow.xxx, Light.xyz) > 0.0001f) + { + RayTraceContactShadow(tcProj, O.PointHud, Ldynamic_dir.xyz, Light); + } +#endif + + Shadow *= sunmask(Point); + Shadow = PushGamma(Shadow); + + return float4(Light * Shadow, Shadow); +} + diff --git a/gamedata/shaders/d3d11/accum_sun.vs.hlsl b/gamedata/shaders/d3d11/accum_sun.vs.hlsl new file mode 100644 index 0000000..6542bbd --- /dev/null +++ b/gamedata/shaders/d3d11/accum_sun.vs.hlsl @@ -0,0 +1,12 @@ +#include "common.hlsli" + +uniform float4x4 m_texgen; + +// Vertex +v2p_volume main(float4 P : POSITION) +{ + v2p_volume O; + O.hpos = mul(m_WVP, P); + O.tc = mul(m_texgen, P); + return O; +} diff --git a/gamedata/shaders/d3d11/accum_sun_mask.ps.hlsl b/gamedata/shaders/d3d11/accum_sun_mask.ps.hlsl new file mode 100644 index 0000000..2db6db6 --- /dev/null +++ b/gamedata/shaders/d3d11/accum_sun_mask.ps.hlsl @@ -0,0 +1,18 @@ +#include "common.hlsli" + +#define EPS (0.9f / 255.f) +#define CLIP_THRESHOLD (1.0f / 255.f) + +float4 main(p_TL I, float4 pos2d : SV_POSITION) : SV_Target +{ + IXrayGbuffer O; + GbufferUnpack(I.Tex0, pos2d.xy, O); + + // float4 NH = float4(O.Normal, O.Hemi); + float L = O.Hemi + O.SSS; + + clip(L); + + return float4(L, L, L, L); +} + diff --git a/gamedata/shaders/d3d11/accum_volume.vs.hlsl b/gamedata/shaders/d3d11/accum_volume.vs.hlsl new file mode 100644 index 0000000..cc78e02 --- /dev/null +++ b/gamedata/shaders/d3d11/accum_volume.vs.hlsl @@ -0,0 +1,13 @@ +#include "common.hlsli" + +uniform float4x4 m_texgen; + +// Vertex +v2p_volume main(float4 P : POSITION) +{ + v2p_volume O; + O.hpos = mul(m_WVP, P); + O.tc = mul(m_texgen, P); + return O; +} + diff --git a/gamedata/shaders/d3d11/accum_volumetric.ps.hlsl b/gamedata/shaders/d3d11/accum_volumetric.ps.hlsl new file mode 100644 index 0000000..0df2e73 --- /dev/null +++ b/gamedata/shaders/d3d11/accum_volumetric.ps.hlsl @@ -0,0 +1,68 @@ +#include "common.hlsli" +#include "shadow.hlsli" + +struct v2p +{ + float3 lightToPos : TEXCOORD0; // light center to plane vector + float3 vPos : TEXCOORD1; // position in camera space + float fDensity : TEXCOORD2; // plane density along Z axis +}; + +uniform float4 m_lmap[2]; +Texture2D s_noise; + +#define USE_LMAP +#define USE_LMAPXFORM +#define USE_SHADOW + +// Pixel +float4 main(v2p I) : SV_Target +{ + // ----- shadow + float4 P4 = float4(I.vPos, 1); + float4 PS = mul(m_shadow, P4); + float s = 1.0f; + +#ifdef USE_SHADOW + s = shadow(PS); +#endif + + // ----- lightmap + float4 lightmap = 1.0f; + +#ifdef USE_LMAP + #ifdef USE_LMAPXFORM + PS.x = dot(P4, m_lmap[0]); + PS.y = dot(P4, m_lmap[1]); + #endif + lightmap = s_lmap.Sample(smp_rtlinear, PS.xy / PS.w); +#endif + + // ----- attenuate + float rsqr = dot(I.lightToPos, I.lightToPos); // distance 2 light (squared) + float att = saturate(1 - rsqr * Ldynamic_pos.w); // q-linear attenuate + + // ----- noise + PS.xy /= PS.w; + PS.xy *= 0.3333; + float time = timers.z * 0.1; + PS.x += time; + + float4 t_noise = s_noise.SampleLevel(smp_linear, PS.xy, 0); + + PS.x -= time; + PS.y -= time * 0.70091; + + t_noise *= s_noise.SampleLevel(smp_linear, PS.xy, 0); + t_noise = t_noise * 0.5 + 0.5; + + // out + float maxIntens = I.fDensity; + float3 result = maxIntens * s * att; + + result *= lightmap.xyz; + result *= Ldynamic_color.xyz * t_noise.xyz; + + return float4(PushGamma(result), 0); +} + diff --git a/gamedata/shaders/d3d11/accum_volumetric.vs.hlsl b/gamedata/shaders/d3d11/accum_volumetric.vs.hlsl new file mode 100644 index 0000000..a407fd6 --- /dev/null +++ b/gamedata/shaders/d3d11/accum_volumetric.vs.hlsl @@ -0,0 +1,43 @@ +#include "common.hlsli" + +cbuffer VolumetricLights +{ + float3 vMinBounds; + float3 vMaxBounds; + float4 FrustumClipPlane[6]; +} + +struct v2p +{ + float3 lightToPos : TEXCOORD0; // light center to plane vector + float3 vPos : TEXCOORD1; // position in camera space + float fDensity : TEXCOORD2; // plane density alon Z axis + float3 clip0 : SV_ClipDistance0; + float3 clip1 : SV_ClipDistance1; + float4 hpos : SV_POSITION; +}; + +v2p main(float3 P : POSITION) +{ + v2p o; + float4 vPos = 1.0f; + vPos.xyz = lerp(vMinBounds, vMaxBounds, P); + + o.hpos = mul(m_P, vPos); + + o.lightToPos = vPos.xyz - Ldynamic_pos.xyz; + o.vPos = vPos.xyz; + + o.fDensity = 0.025f; + + o.clip0.x = dot(o.hpos, FrustumClipPlane[0]); + o.clip0.y = dot(o.hpos, FrustumClipPlane[1]); + o.clip0.z = dot(o.hpos, FrustumClipPlane[2]); + + o.clip1.x = dot(o.hpos, FrustumClipPlane[3]); + o.clip1.y = dot(o.hpos, FrustumClipPlane[4]); + o.clip1.z = dot(o.hpos, FrustumClipPlane[5]); + + return o; +} + diff --git a/gamedata/shaders/d3d11/accum_volumetric.xml b/gamedata/shaders/d3d11/accum_volumetric.xml new file mode 100644 index 0000000..f9e9c5a --- /dev/null +++ b/gamedata/shaders/d3d11/accum_volumetric.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/gamedata/shaders/d3d11/accum_volumetric_sun.lua b/gamedata/shaders/d3d11/accum_volumetric_sun.lua new file mode 100644 index 0000000..f2c2777 --- /dev/null +++ b/gamedata/shaders/d3d11/accum_volumetric_sun.lua @@ -0,0 +1,15 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("stub_notransform_2uv", "accum_volumetric_sun") + :fog(false) + :zb(false, false) + :blend(true, blend.one, blend.one) + :sorting(2, false) + + shader:dx10texture("s_smap", "$user$smap_depth") + shader:dx10texture("s_position", "$user$position") + shader:dx10texture("jitter0", "$user$jitter_0") + + shader:dx10sampler("smp_nofilter") + shader:dx10sampler("smp_jitter") + shader:dx10sampler("smp_smap") +end diff --git a/gamedata/shaders/d3d11/accum_volumetric_sun.ps.hlsl b/gamedata/shaders/d3d11/accum_volumetric_sun.ps.hlsl new file mode 100644 index 0000000..ecc3e71 --- /dev/null +++ b/gamedata/shaders/d3d11/accum_volumetric_sun.ps.hlsl @@ -0,0 +1,92 @@ +#include "common.hlsli" + +#undef USE_ULTRA_SHADOWS + +#define RAY_PATH 2.0h +#define JITTER_TEXTURE_SIZE 64.0f + +#define JITTER_SUN_SHAFTS + +#ifdef SUN_SHAFTS_QUALITY + #if SUN_SHAFTS_QUALITY == 1 + // #define FILTER_LOW + #define RAY_SAMPLES 20 + #elif SUN_SHAFTS_QUALITY == 2 + // #define FILTER_LOW + #define RAY_SAMPLES 20 + #elif SUN_SHAFTS_QUALITY == 3 + // #define FILTER_LOW + #define RAY_SAMPLES 40 + #endif +#endif + +#include "shadow.hlsli" + +float4 volume_range; // x - near plane, y - far plane +float4 sun_shafts_intensity; + +float4 main(v2p_TL I) : SV_Target +{ +#ifndef SUN_SHAFTS_QUALITY + return float4(0, 0, 0, 0); +#else // SUN_SHAFTS_QUALITY + IXrayGbuffer O; + GbufferUnpack(I.Tex0.xy, I.HPos.xy, O); + + float3 P = O.Point; + +#ifndef JITTER_SUN_SHAFTS + // Fixed ray length, fixed step dencity + // float3 direction = (RAY_PATH/RAY_SAMPLES)*normalize(P); + // Variable ray length, variable step dencity + float3 direction = P / RAY_SAMPLES; +#else // JITTER_SUN_SHAFTS + // Variable ray length, variable step dencity, use jittering + float4 J0 = jitter0.Sample(smp_jitter, I.HPos.xy / JITTER_TEXTURE_SIZE); + float coeff = (RAY_SAMPLES - J0.x) / (RAY_SAMPLES * RAY_SAMPLES); + float3 direction = P * coeff; +#endif // JITTER_SUN_SHAFTS + + float depth = P.z; + float deltaDepth = direction.z; + + float4 current = mul(m_shadow, float4(P, 1.0f)); + float4 delta = mul(m_shadow, float4(direction, 0.0f)); + + float res = 0.0f; + float max_density = sun_shafts_intensity.x; + float density = max_density / RAY_SAMPLES; + + if(O.Depth > 0.9999f) { + depth = 0.0f; + res = max_density; + } + + [unroll] for(int i = 0; i < RAY_SAMPLES; ++i) + { + if (depth > 0.3) + { + #ifndef FILTER_LOW + res += density * shadow(current); + #else + res += density * sample_hw_pcf(current, float4(0, 0, 0, 0)); + #endif + } + + depth -= deltaDepth; + current -= delta; + } + + float fSturation = dot(normalize(P), -Ldynamic_dir.xyz); + + // Normalize dot product to + fSturation = 0.4f * fSturation + 0.6f; + + float fog = saturate(length(P.xyz) * fog_params.w + fog_params.x); + res = lerp(res, max_density, fog); + res *= fSturation; + + return PushGamma(res * Ldynamic_color); +#endif // SUN_SHAFTS_QUALITY +} + diff --git a/gamedata/shaders/d3d11/base_lplanes.ps.hlsl b/gamedata/shaders/d3d11/base_lplanes.ps.hlsl new file mode 100644 index 0000000..4e6b2c8 --- /dev/null +++ b/gamedata/shaders/d3d11/base_lplanes.ps.hlsl @@ -0,0 +1,15 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float4 c0 : COLOR0; // sun +}; + +// Pixel +float4 main(v2p I) : SV_Target +{ + float4 t_base = s_base.Sample(smp_base, I.tc0); + return PushGamma(float4(t_base.xyz, t_base.w * I.c0.w)); +} + diff --git a/gamedata/shaders/d3d11/base_lplanes.vs.hlsl b/gamedata/shaders/d3d11/base_lplanes.vs.hlsl new file mode 100644 index 0000000..d899fcf --- /dev/null +++ b/gamedata/shaders/d3d11/base_lplanes.vs.hlsl @@ -0,0 +1,27 @@ +#include "common.hlsli" + +struct vf +{ + float2 tc0 : TEXCOORD0; // base + float4 c0 : COLOR0; // color + float4 hpos : SV_POSITION; +}; + +vf main(v_static v) +{ + vf o; + + o.hpos = mul(m_WVP, v.P); // xform, input in world coords + o.tc0 = unpack_tc_base(v.tc, v.T.w, v.B.w); // copy tc + + // calculate fade + float3 dir_v = normalize(mul(m_WV, v.P)); + float3 norm_v = normalize(mul((float3x3)m_WV, unpack_normal(v.Nh.zyx))); + float fade = abs(dot(dir_v, norm_v)); + o.c0 = fade; + + o.hpos.xy += m_taa_jitter.xy * o.hpos.w; + + return o; +} + diff --git a/gamedata/shaders/d3d11/base_lplanes_fft.ps.hlsl b/gamedata/shaders/d3d11/base_lplanes_fft.ps.hlsl new file mode 100644 index 0000000..87dbd54 --- /dev/null +++ b/gamedata/shaders/d3d11/base_lplanes_fft.ps.hlsl @@ -0,0 +1,31 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0: TEXCOORD0; // base +// float2 tc1: TEXCOORD1; // lmap + float4 c0: COLOR0; // sun +}; + +uniform float4 m_hud_params; + +inline bool isCollimatorActive() +{ + return (m_hud_params.w == 1.f); +} + +////////////////////////////////////////////////////////////////////////////////////////// +// Pixel +float4 main( p_bumped_new I ) : SV_Target +{ + float4 color = s_base.Sample(smp_base, I.tcdh.xy); + + if (isCollimatorActive()) + { + return float4(color.xyz * color.w, 0.0f); + } + else + { + return float4(0.0, 0.0, 0.0, 0.0); + } +} diff --git a/gamedata/shaders/d3d11/bloom_build.ps.hlsl b/gamedata/shaders/d3d11/bloom_build.ps.hlsl new file mode 100644 index 0000000..fe5a5fd --- /dev/null +++ b/gamedata/shaders/d3d11/bloom_build.ps.hlsl @@ -0,0 +1,17 @@ +#include "common.hlsli" + +uniform float4 b_params; + +float4 main(p_build I) : SV_Target +{ + float3 s0 = s_image.Sample(smp_rtlinear, I.Tex0.xy).xyz; + float3 s1 = s_image.Sample(smp_rtlinear, I.Tex1.xy).xyz; + float3 s2 = s_image.Sample(smp_rtlinear, I.Tex2.xy).xyz; + float3 s3 = s_image.Sample(smp_rtlinear, I.Tex3.xy).xyz; + + float3 avg = PopGamma(s0 + s1 + s2 + s3) / (2.0f * def_hdr); + float hi = dot(avg, 1.h) - b_params.x; + + return float4(avg, hi); +} + diff --git a/gamedata/shaders/d3d11/bloom_filter.ps.hlsl b/gamedata/shaders/d3d11/bloom_filter.ps.hlsl new file mode 100644 index 0000000..e7852fd --- /dev/null +++ b/gamedata/shaders/d3d11/bloom_filter.ps.hlsl @@ -0,0 +1,33 @@ +#include "common.hlsli" + +uniform float4 weight[2]; + +float4 main(p_filter I) : SV_Target +{ + float4 accum = weight[1].w * s_bloom.Sample(smp_rtlinear, I.Tex0.xy); + + accum += weight[0].x * s_bloom.Sample(smp_rtlinear, I.Tex1.xy); + accum += weight[0].x * s_bloom.Sample(smp_rtlinear, I.Tex1.wz); + + accum += weight[0].y * s_bloom.Sample(smp_rtlinear, I.Tex2.xy); + accum += weight[0].y * s_bloom.Sample(smp_rtlinear, I.Tex2.wz); + + accum += weight[0].z * s_bloom.Sample(smp_rtlinear, I.Tex3.xy); + accum += weight[0].z * s_bloom.Sample(smp_rtlinear, I.Tex3.wz); + + accum += weight[0].w * s_bloom.Sample(smp_rtlinear, I.Tex4.xy); + accum += weight[0].w * s_bloom.Sample(smp_rtlinear, I.Tex4.wz); + + accum += weight[1].x * s_bloom.Sample(smp_rtlinear, I.Tex5.xy); + accum += weight[1].x * s_bloom.Sample(smp_rtlinear, I.Tex5.wz); + + accum += weight[1].y * s_bloom.Sample(smp_rtlinear, I.Tex6.xy); + accum += weight[1].y * s_bloom.Sample(smp_rtlinear, I.Tex6.wz); + + accum += weight[1].z * s_bloom.Sample(smp_rtlinear, I.Tex7.xy); + accum += weight[1].z * s_bloom.Sample(smp_rtlinear, I.Tex7.wz); + + // OK + return accum; +} + diff --git a/gamedata/shaders/d3d11/bloom_filter_f.ps.hlsl b/gamedata/shaders/d3d11/bloom_filter_f.ps.hlsl new file mode 100644 index 0000000..1b34754 --- /dev/null +++ b/gamedata/shaders/d3d11/bloom_filter_f.ps.hlsl @@ -0,0 +1,28 @@ +#include "common.hlsli" + +/* +struct v2p +{ + float2 tc0: TEXCOORD0; // base + float2 tc1: TEXCOORD1; // base + float2 tc2: TEXCOORD2; // base + float2 tc3: TEXCOORD3; // base +}; +*/ + +// Pixel +float4 main(p_build I) : SV_Target +{ + // float4 t_0 = tex2D (s_bloom,I.tc0); + // float4 t_1 = tex2D (s_bloom,I.tc1); + // float4 t_2 = tex2D (s_bloom,I.tc2); + // float4 t_3 = tex2D (s_bloom,I.tc3); + + float4 t_0 = s_image.Sample(smp_rtlinear, I.Tex0); + float4 t_1 = s_image.Sample(smp_rtlinear, I.Tex1); + float4 t_2 = s_image.Sample(smp_rtlinear, I.Tex2); + float4 t_3 = s_image.Sample(smp_rtlinear, I.Tex3); + + // out + return ((t_0 + t_1) + (t_2 + t_3)) / 2; +} diff --git a/gamedata/shaders/d3d11/bloom_luminance_1.ps.hlsl b/gamedata/shaders/d3d11/bloom_luminance_1.ps.hlsl new file mode 100644 index 0000000..756a087 --- /dev/null +++ b/gamedata/shaders/d3d11/bloom_luminance_1.ps.hlsl @@ -0,0 +1,21 @@ +#include "common.hlsli" + +float luminance(float2 tc) +{ + float3 source = s_image.Sample(smp_rtlinear, tc).xyz; + return dot(source, LUMINANCE_VECTOR) * def_hdr; +} + +float4 main(p_build I) : SV_Target +{ + float4 final; + + final.x = luminance(I.Tex0); + final.y = luminance(I.Tex1); + final.z = luminance(I.Tex2); + final.w = luminance(I.Tex3); + + // OK + return final; +} + diff --git a/gamedata/shaders/d3d11/bloom_luminance_2.ps.hlsl b/gamedata/shaders/d3d11/bloom_luminance_2.ps.hlsl new file mode 100644 index 0000000..e29aa8f --- /dev/null +++ b/gamedata/shaders/d3d11/bloom_luminance_2.ps.hlsl @@ -0,0 +1,59 @@ +#include "common.hlsli" + +struct v2p +{ + float4 tc0 : TEXCOORD0; + float4 tc1 : TEXCOORD1; + float4 tc2 : TEXCOORD2; + float4 tc3 : TEXCOORD3; + float4 tc4 : TEXCOORD4; + float4 tc5 : TEXCOORD5; + float4 tc6 : TEXCOORD6; + float4 tc7 : TEXCOORD7; +}; + +float sample(float2 tc) +{ + float4 data = s_image.Sample(smp_rtlinear, tc); + return dot(data, 0.25f); +} + +float4 main(p_filter I) : SV_Target +{ + // sample + float4 accum0; + accum0.x = sample(I.Tex0.xy); + accum0.y = sample(I.Tex1.xy); + accum0.z = sample(I.Tex2.xy); + accum0.w = sample(I.Tex3.xy); + + float4 accum1; + accum1.x = sample(I.Tex4.xy); + accum1.y = sample(I.Tex5.xy); + accum1.z = sample(I.Tex6.xy); + accum1.w = sample(I.Tex7.xy); + + float4 accum2; + accum2.x = sample(I.Tex0.wz); + accum2.y = sample(I.Tex1.wz); + accum2.z = sample(I.Tex2.wz); + accum2.w = sample(I.Tex3.wz); + + float4 accum3; + accum3.x = sample(I.Tex4.wz); + accum3.y = sample(I.Tex5.wz); + accum3.z = sample(I.Tex6.wz); + accum3.w = sample(I.Tex7.wz); + + // perform accumulation + float4 final; + + final.x = dot(accum0, 0.25f); + final.y = dot(accum1, 0.25f); + final.z = dot(accum2, 0.25f); + final.w = dot(accum3, 0.25f); + + // OK + return final; +} + diff --git a/gamedata/shaders/d3d11/bloom_luminance_3.ps.hlsl b/gamedata/shaders/d3d11/bloom_luminance_3.ps.hlsl new file mode 100644 index 0000000..3f825b5 --- /dev/null +++ b/gamedata/shaders/d3d11/bloom_luminance_3.ps.hlsl @@ -0,0 +1,59 @@ +#include "common.hlsli" + +uniform float4 MiddleGray; + +float sample(float2 tc) +{ + float4 data = s_image.Sample(smp_rtlinear, tc); + return dot(data, 0.25f); +} + +float4 main(p_filter I) : SV_Target +{ + // sample + float4 accum0; + accum0.x = sample(I.Tex0.xy); + accum0.y = sample(I.Tex1.xy); + accum0.z = sample(I.Tex2.xy); + accum0.w = sample(I.Tex3.xy); + + float4 accum1; + accum1.x = sample(I.Tex4.xy); + accum1.y = sample(I.Tex5.xy); + accum1.z = sample(I.Tex6.xy); + accum1.w = sample(I.Tex7.xy); + + float4 accum2; + accum2.x = sample(I.Tex0.wz); + accum2.y = sample(I.Tex1.wz); + accum2.z = sample(I.Tex2.wz); + accum2.w = sample(I.Tex3.wz); + + float4 accum3; + accum3.x = sample(I.Tex4.wz); + accum3.y = sample(I.Tex5.wz); + accum3.z = sample(I.Tex6.wz); + accum3.w = sample(I.Tex7.wz); + + // perform accumulation + float4 final; + + final.x = dot(accum0, 0.25f); + final.y = dot(accum1, 0.25f); + final.z = dot(accum2, 0.25f); + final.w = dot(accum3, 0.25f); + + float result = dot(final, 0.25f); + + result = PushGamma(result); + + // OK + float scale = MiddleGray.x / (result * MiddleGray.y + MiddleGray.z); + float scale_prev = s_tonemap.Sample(smp_nofilter, I.Tex0.xy).x; + float rvalue = lerp(scale_prev, scale, MiddleGray.w); + + clamp(rvalue, 1.f / 128.f, 20.0f); + + return rvalue; +} + diff --git a/gamedata/shaders/d3d11/cgim.h b/gamedata/shaders/d3d11/cgim.h new file mode 100644 index 0000000..971f449 --- /dev/null +++ b/gamedata/shaders/d3d11/cgim.h @@ -0,0 +1,65 @@ +#ifndef cgim_h_included +#define cgim_h_included + +// creates more light by a vector from the sky +#define SMALLSKY_TOP_VECTOR_POWER 0.75f + +// Break default bloom to soften the overall picture +#define BROKE_BLOOM_POWER 1.5f + +#define CGIM_LUM float3(0.2126f, 0.7152f, 0.0722f) + +float Luminance(float3 Color) +{ + return dot(Color, CGIM_LUM); +} + +float3 TonemapRobo(float3 c) +{ + float l = Luminance(c); + return c / sqrt(1.0 + l * l); +} + +float TonemapRobo(float c) +{ + return c / sqrt(1.0 + c * c); +} + +float4 BrokeBloom(float4 c) +{ + c *= BROKE_BLOOM_POWER; + c = float4(TonemapRobo(c.rgb), TonemapRobo(c.a)); + c /= BROKE_BLOOM_POWER; + + return c; +} + +float3 Uncharted2ACES(float3 x) +{ + static const float A = 0.15f; // Shoulder strength + static const float B = 0.50f; // Linear strength + static const float C = 0.10f; // Linear angle + static const float D = 0.20f; // Toe strength + static const float E = 0.02f; // Toe numerator + static const float F = 0.30f; // Toe denominator + return ((x * (A * x + C * B) + D * E) / (x * (A * x + B) + D * F)) - E / F; +} + +// Uncharted 2 tonemapping +#define UNCHARTED2TONEMAP_WHITEPT 1.35 +#define UNCHARTED2TONEMAP_EXPOSURE 1.0 + +float3 Uncharted2Tonemap(float3 c) +{ + c *= UNCHARTED2TONEMAP_EXPOSURE; + + float3 tc = Uncharted2ACES(c); + float l = Luminance(c); + + c = lerp(c * Uncharted2ACES(l) / l, tc, tc); + c /= Uncharted2ACES(UNCHARTED2TONEMAP_WHITEPT); + + return c; +} + +#endif \ No newline at end of file diff --git a/gamedata/shaders/d3d11/chromatic_aberration.ps.hlsl b/gamedata/shaders/d3d11/chromatic_aberration.ps.hlsl new file mode 100644 index 0000000..bd128f6 --- /dev/null +++ b/gamedata/shaders/d3d11/chromatic_aberration.ps.hlsl @@ -0,0 +1,13 @@ +#include "common.hlsli" +uniform float4 screen_res; + +float4 main(p_shadow I) : SV_Target +{ + float3 col; + float factor = saturate(distance(I.tc0, float2(0.5, 0.5))); + col.r = s_image.Sample(smp_rtlinear, float2(I.tc0 + float2(screen_res.z * factor, 0))).r; + col.g = s_image.Sample(smp_rtlinear, float2(I.tc0 + float2(-0.866, -0.5) * screen_res.zw * factor)).g; + col.b = s_image.Sample(smp_rtlinear, float2(I.tc0 + float2(0.866, -0.5) * screen_res.zw * factor)).b; + + return float4(col, 1); +} diff --git a/gamedata/shaders/d3d11/clouds.lua b/gamedata/shaders/d3d11/clouds.lua new file mode 100644 index 0000000..ccc1007 --- /dev/null +++ b/gamedata/shaders/d3d11/clouds.lua @@ -0,0 +1,12 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("clouds", "clouds") + :fog(false) + :zb(false, false) + :sorting(3, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + + shader:dx10texture("s_clouds0", "null") + shader:dx10texture("s_clouds1", "null") + + shader:dx10sampler("smp_base") +end diff --git a/gamedata/shaders/d3d11/clouds.ps.hlsl b/gamedata/shaders/d3d11/clouds.ps.hlsl new file mode 100644 index 0000000..e78af26 --- /dev/null +++ b/gamedata/shaders/d3d11/clouds.ps.hlsl @@ -0,0 +1,26 @@ +#include "common.hlsli" + +struct v2p +{ + float4 color : COLOR0; + float2 tc0 : TEXCOORD0; + float2 tc1 : TEXCOORD1; +}; + +Texture2D s_clouds0 : register(t0); +Texture2D s_clouds1 : register(t1); + +// Pixel +float4 main(v2p I) : SV_Target +{ + float4 s0 = s_clouds0.Sample(smp_base, I.tc0); + float4 s1 = s_clouds1.Sample(smp_base, I.tc1); + float4 mix = I.color * (s0 + s1); + +#ifdef USE_LEGACY_SKY_TONEMAP + return float4(detonemap(mix.xyz), mix.w); +#else + return float4(PushGamma(mix.xyz), mix.w); +#endif +} + diff --git a/gamedata/shaders/d3d11/clouds.vs.hlsl b/gamedata/shaders/d3d11/clouds.vs.hlsl new file mode 100644 index 0000000..89b935c --- /dev/null +++ b/gamedata/shaders/d3d11/clouds.vs.hlsl @@ -0,0 +1,37 @@ +#include "common.hlsli" +#include "shared\cloudconfig.hlsli" + +struct vi +{ + float4 p : POSITION; + float4 dir : COLOR0; // dir0,dir1(w<->z) + float4 color : COLOR1; // rgb. intensity +}; + +struct vf +{ + float4 color : COLOR0; // rgb. intensity, for SM3 - tonemap-prescaled, HI-res + float2 tc0 : TEXCOORD0; + float2 tc1 : TEXCOORD1; + float4 hpos : SV_POSITION; +}; + +vf main(vi v) +{ + vf o; + o.hpos = mul(m_WVP, v.p); // xform, input in world coords + o.hpos.xy += m_taa_jitter.xy * o.hpos.w; + + // generate tcs + float2 d0 = v.dir.xy * 2.0f - 1.0f; + float2 d1 = v.dir.wz * 2.0f - 1.0f; + float2 _0 = v.p.xz * CLOUD_TILE0 + d0 * timers.z * CLOUD_SPEED0; + float2 _1 = v.p.xz * CLOUD_TILE1 + d1 * timers.z * CLOUD_SPEED1; + o.tc0 = _0; + o.tc1 = _1; + + o.color = v.color; + o.color.w *= pow(v.p.y, 25.0f); + + return o; +} diff --git a/gamedata/shaders/d3d11/combine_1.ps.hlsl b/gamedata/shaders/d3d11/combine_1.ps.hlsl new file mode 100644 index 0000000..ef0d42b --- /dev/null +++ b/gamedata/shaders/d3d11/combine_1.ps.hlsl @@ -0,0 +1,57 @@ +#include "common.hlsli" + +#if defined(USE_OFFSCREEN_REFLECTIONS) && !defined(USE_SSLR_REFLECTIONS) +#define USE_VIEW_REFLECTIONS +#endif + +#include "metalic_roughness_light.hlsli" +#include "metalic_roughness_ambient.hlsli" +#include "reflections.hlsli" + +Texture2D s_occ; + +struct _input +{ + float4 tc0 : TEXCOORD0; + float2 tcJ : TEXCOORD1; + float4 pos2d : SV_POSITION; +}; + +float4 main(_input I) : SV_Target +{ + IXrayGbuffer O; + GbufferUnpack(I.tc0.xy, I.pos2d.xy, O); + float3 Light = s_accumulator.Load(int3(I.pos2d.xy, 0)).xyz; + +#ifdef USE_R2_STATIC_SUN + Light += O.SSS * DirectLight(Ldynamic_color, Ldynamic_dir.xyz, O.Normal, O.View.xyz, O.Color, O.Metalness, O.Roughness, O.F0); +#endif + + float Occ = O.AO * s_occ.SampleLevel(smp_rtlinear, I.tc0.xy, 0.0f).x; + +#ifndef USE_LEGACY_LIGHT + #ifdef USE_SSLR_REFLECTIONS + float3 SpecularIrradance = s_refl.SampleLevel(smp_rtlinear, I.tc0, 0.0).xyz; + SpecularIrradance *= rcp(1.00001f - SpecularIrradance); + #else + float3 SpecularIrradance = CompureSpecularIrradance(reflect(O.View, O.Normal), O.Hemi, O.Roughness); + #endif + + float3 DiffuseIrradance = CompureDiffuseIrradance(O.Normal, O.Hemi) + L_ambient.xyz; + float3 Ambient = AmbientLighting(DiffuseIrradance, SpecularIrradance, max(0.0, dot(O.Normal, -O.View.xyz)), O.Color, O.Metalness, O.Roughness, O.F0); +#else + float3 Ambient = AmbientLighting(O.View, O.Normal, O.Color, O.Metalness, O.Roughness, O.Hemi, O.F0); +#endif + + float3 Color = Occ * Ambient + Light; + + float Fog = PushGamma(saturate(O.ViewDist * fog_params.w + fog_params.x)); + Color = lerp(Color, PushGamma(fog_color.xyz), Fog); + +#ifdef USE_LEGACY_LIGHT + Fog *= Fog; +#endif + + return float4(Color, Fog); +} + diff --git a/gamedata/shaders/d3d11/combine_1.vs.hlsl b/gamedata/shaders/d3d11/combine_1.vs.hlsl new file mode 100644 index 0000000..f6c3c5b --- /dev/null +++ b/gamedata/shaders/d3d11/combine_1.vs.hlsl @@ -0,0 +1,24 @@ +#include "common.hlsli" + +struct _in +{ + float4 P : POSITIONT; // xy=pos, zw=tc0 + float2 tcJ : TEXCOORD0; // jitter coords +}; + +struct v2p +{ + float4 tc0 : TEXCOORD0; // tc.xy, tc.w = tonemap scale + float2 tcJ : TEXCOORD1; // jitter coords + float4 hpos : SV_POSITION; +}; + +// Vertex +v2p main(_in I) +{ + v2p O; + O.hpos = float4(I.P.x, -I.P.y, 0, 1); + O.tc0 = float4(I.P.zw, 1, 1); + O.tcJ = I.tcJ; + return O; +} diff --git a/gamedata/shaders/d3d11/combine_2.ps.hlsl b/gamedata/shaders/d3d11/combine_2.ps.hlsl new file mode 100644 index 0000000..f01fb15 --- /dev/null +++ b/gamedata/shaders/d3d11/combine_2.ps.hlsl @@ -0,0 +1,31 @@ +#include "common.hlsli" +#include "mblur.hlsli" +#include "dof.hlsli" + +Texture3D s_lut; + +float3 main(v2p_aa_AA I) : SV_Target +{ + float3 Color = max(0.0f, dof(I.Tex0)); + float4 Bloom = s_bloom.Sample(smp_rtlinear, I.Tex0); + +#ifdef USE_CGIM_BLOOM_TWEAK + Bloom = BrokeBloom(Bloom); +#endif + + float Scale = s_tonemap.Sample(smp_nofilter, float2(0.5f, 0.5f)).x; + Color = tonemap(Color, Scale); + + Color = combine_bloom(Color, Bloom).xyz; + +#ifdef USE_CGIM_COLOR_TWEAK + Color = Uncharted2Tonemap(Color); +#endif + +#ifdef USE_LUT_TEXTURE + Color = s_lut.Sample(smp_rtlinear, saturate(Color)).xyz; +#endif + + return Color; +} + diff --git a/gamedata/shaders/d3d11/combine_distort.ps.hlsl b/gamedata/shaders/d3d11/combine_distort.ps.hlsl new file mode 100644 index 0000000..c37bf81 --- /dev/null +++ b/gamedata/shaders/d3d11/combine_distort.ps.hlsl @@ -0,0 +1,21 @@ +#include "common.hlsli" +Texture2D s_distort; + +float4 main(v2p_TL Input) : SV_Target +{ + float4 distort = s_distort.SampleLevel(smp_nofilter, Input.Tex0, 0); + float2 offset = distort.xy - (127.0f / 255.0f); + + float2 center = Input.Tex0 + offset * def_distort; + float depth_x = s_position.SampleLevel(smp_nofilter, center, 0).x; + +#ifdef SIMPLE_DISTORTION_FIX + float depth = s_position.SampleLevel(smp_nofilter, Input.Tex0, 0).x; +#else + #define depth 0.02f +#endif + center = depth_x < depth ? Input.Tex0 : center; + + return s_image.SampleLevel(smp_nofilter, center, 0); +} + diff --git a/gamedata/shaders/d3d11/combine_volumetric.lua b/gamedata/shaders/d3d11/combine_volumetric.lua new file mode 100644 index 0000000..1b78551 --- /dev/null +++ b/gamedata/shaders/d3d11/combine_volumetric.lua @@ -0,0 +1,10 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("combine_1", "combine_volumetric") + :fog(false) + :zb(false, false) + :blend(true, blend.one, blend.one) + :sorting(2, false) + + shader:dx10texture("s_vollight", "$user$generic2") + shader:dx10sampler("smp_nofilter") +end diff --git a/gamedata/shaders/d3d11/combine_volumetric.ps.hlsl b/gamedata/shaders/d3d11/combine_volumetric.ps.hlsl new file mode 100644 index 0000000..5bdc2b4 --- /dev/null +++ b/gamedata/shaders/d3d11/combine_volumetric.ps.hlsl @@ -0,0 +1,13 @@ +#include "common.hlsli" +Texture2D s_vollight; + +struct _input +{ + float4 tc0 : TEXCOORD0; +}; + +float4 main(_input I) : SV_Target +{ + return s_vollight.Load(int3(I.tc0.xy * pos_decompression_params2.xy, 0)); +} + diff --git a/gamedata/shaders/d3d11/common.hlsli b/gamedata/shaders/d3d11/common.hlsli new file mode 100644 index 0000000..f120696 --- /dev/null +++ b/gamedata/shaders/d3d11/common.hlsli @@ -0,0 +1,19 @@ +#ifndef COMMON_H +#define COMMON_H + +#pragma warning(disable : 4000) + +#include "shared\common.hlsli" + +#include "common_defines.hlsli" +#include "common_defines.hlsli" +#include "common_policies.hlsli" +#include "common_iostructs.hlsli" +#include "common_samplers.hlsli" +#include "common_cbuffers.hlsli" +#include "common_functions.hlsli" +#include "metalic_roughness_base.hlsli" +#include "cgim.h" + +#endif + diff --git a/gamedata/shaders/d3d11/common_cbuffers.hlsli b/gamedata/shaders/d3d11/common_cbuffers.hlsli new file mode 100644 index 0000000..005d47c --- /dev/null +++ b/gamedata/shaders/d3d11/common_cbuffers.hlsli @@ -0,0 +1,21 @@ +#ifndef common_cbuffers_h_included +#define common_cbuffers_h_included + +// Used by dynamic lights and volumetric effects +cbuffer dynamic_light +{ + float4 Ldynamic_color; // dynamic light color (rgb1) - spot/point/sun + float4 Ldynamic_pos; // dynamic light pos+1/range(w) - spot/point + float4 Ldynamic_dir; // dynamic light direction - sun +} + +#else + +cbuffer dynamic_light +{ + float4 Ldynamic_color; // dynamic light color (rgb1) - spot/point/sun + float4 Ldynamic_pos; // dynamic light pos+1/range(w) - spot/point + float4 Ldynamic_dir; // dynamic light direction - sun +} + +#endif // common_cbuffers_h_included diff --git a/gamedata/shaders/d3d11/common_defines.hlsli b/gamedata/shaders/d3d11/common_defines.hlsli new file mode 100644 index 0000000..5e82eea --- /dev/null +++ b/gamedata/shaders/d3d11/common_defines.hlsli @@ -0,0 +1,24 @@ +#ifndef common_defines_h_included +#define common_defines_h_included + +// Defines // +#define def_gloss float(2.f / 255.f) +#define def_dbumph float(0.333f) +#define def_virtualh float(0.05f) // 5cm +#define def_distort float(0.05f) // we get -0.5 .. 0.5 range, this is -512 .. 512 for 1024, so scale it +#define def_hdr float(9.h) // hight luminance range float(3.h) +#define def_hdr_clip float(0.75h) // + +#define LUMINANCE_VECTOR float3(0.3f, 0.38f, 0.22f) + +#if defined(SM_5) || defined(SM_4_1) + #define TEXTURE2DMS(a, b) Texture2DMS +#else + #define TEXTURE2DMS(a, b) Texture2DMS +#endif + +#ifndef SMAP_size + #define SMAP_size 1024 +#endif + +#endif // common_defines_h_included diff --git a/gamedata/shaders/d3d11/common_functions.hlsli b/gamedata/shaders/d3d11/common_functions.hlsli new file mode 100644 index 0000000..f89fdb2 --- /dev/null +++ b/gamedata/shaders/d3d11/common_functions.hlsli @@ -0,0 +1,290 @@ +#ifndef common_functions_h_included +#define common_functions_h_included + +// contrast function +float Contrast(float Input, float ContrastPower) +{ + // piecewise contrast function + bool IsAbovefloat = Input > 0.5f; + float ToRaise = saturate(2.0f * (IsAbovefloat ? 1.0f - Input : Input)); + float Output = 0.5f * pow(ToRaise, ContrastPower); + Output = IsAbovefloat ? 1.0f - Output : Output; + return Output; +} + +#ifndef SRGB_GAMMA +#define SRGB_GAMMA 2.2 +#endif + +#ifndef USE_LEGACY_LIGHT + #define PushGamma(x) pow(abs(x), SRGB_GAMMA) + #define PopGamma(x) pow(abs(x), rcp(SRGB_GAMMA)) +#else + #define PushGamma(x) abs(x) + #define PopGamma(x) abs(x) +#endif + +#ifndef USE_CGIM_WHITE_TWEAK + #define RCP_WHITE_SQR 0.34602f + #define INV_TONEMAP_COEF_ONE 0.61592f + #define INV_TONEMAP_COEF_TWO 1.44565f +#else + #define RCP_WHITE_SQR 0.416233f + #define INV_TONEMAP_COEF_ONE 0.335068f + #define INV_TONEMAP_COEF_TWO 1.20125f +#endif + +float3 tonemap(float3 rgb, float scale) +{ + rgb = rgb * scale; + rgb = rgb * (1.0f + rgb * RCP_WHITE_SQR) * rcp(rgb + 1.0f); + + return PopGamma(rgb); +} + +float3 detonemap(float3 rgb) +{ + rgb = PushGamma(rgb); + + float3 scale = rgb * rgb - INV_TONEMAP_COEF_ONE * rgb + 1.0f; + rgb = rgb + sqrt(scale) - 1.0f; + + return rgb * INV_TONEMAP_COEF_TWO; +} + +void RemapVector(inout float3 View) +{ + float3 ViewPos = abs(View); + float ViewPosMax = max(ViewPos.x, max(ViewPos.y, ViewPos.z)); + + View *= rcp(ViewPosMax); + View.y = View.y * 2.0 - 1.0; +} + +// Функции генерации случайных чисел [0, 1] +// START + +float Hash(float n) +{ + return frac(sin(n) * 43758.5453123f); +} + +float Hash(float2 n) +{ + return Hash(Hash(n.x) + n.y); +} + +float Hash(float3 n) +{ + return Hash(Hash(dot(n.xy, float2(12.989, 78.233))) + n.z); +} + +float2 Hash22(float2 value) +{ + return float2( + Hash(dot(value, float2(12.989, 78.233))), + Hash(dot(value, float2(39.346, 11.135)))); +} + +float3 Hash23(float2 value) +{ + return float3( + Hash(dot(value, float2(12.989, 78.233))), + Hash(dot(value, float2(39.346, 11.135))), + Hash(dot(value, float2(73.156, 52.235)))); +} + +float2 Hash32(float3 value) +{ + return float2( + Hash(dot(value, float3(12.989, 78.233, 123.134f))), + Hash(dot(value, float3(39.346, 11.135, 543.142f)))); +} + +float3 Hash33(float3 value) +{ + return float3( + Hash(dot(value, float3(12.989, 78.233, 123.134f))), + Hash(dot(value, float3(39.346, 11.135, 543.142f))), + Hash(dot(value, float3(73.156, 52.235, 143.425f)))); +} + +// END + +float GetBorderAtten(float2 tc, float2 att) +{ + att.x *= pos_decompression_params2.y * pos_decompression_params2.z; + float2 factors = saturate(min(1.0f - tc, tc) * rcp(att)); + return factors.x * factors.y; +} + +bool GetBorderAtten(float2 tc) +{ + float2 factors = min(1.0f - tc, tc); + return min(factors.x, factors.y) > 0.0f; +} + +float GetMaxDirLength(float3 Point, float3 RDir) +{ + float3 FirstPoint = RDir - Point * RDir; + float3 LastPoint = -Point * RDir; + + float3 MaxPoint = max(FirstPoint, LastPoint); + return min(MaxPoint.x, min(MaxPoint.y, MaxPoint.z)); +} + +// Hashed Alpha Testing +// The implementation was taken from https://cwyman.org/papers/i3d17_hashedAlpha.pdf document by Chris Wyman and Morgan McGuire +float hashed_alpha_test(float3 position) +{ + if (m_taa_jitter.z < 0.0f) + { + return def_aref; + } + // Find the discretized derivatives of our coordinates + float maxDeriv = max(length(ddx(position.xyz)), length(ddy(position.xyz))); + float pixScale = rcp(def_aref * maxDeriv); // Let's use def_aref as temporary pixel scale + float pixScaleLog2 = log2(pixScale); + + // Find two nearest log-discretized noise scales + float2 pixScales = float2(exp2(floor(pixScaleLog2)), exp2(ceil(pixScaleLog2))); + + // Compute alpha thresholds at our two noise scales + float2 alpha = float2(Hash(floor(pixScales.x * position.xyz)), Hash(floor(pixScales.y * position.xyz))); + + // Factor to interpolate lerp with + float lerpFactor = frac(log2(pixScale)); + + // Interpolate alpha threshold from noise at two scales + float x = lerp(alpha.x, alpha.y, lerpFactor); + + // Pass into CDF to compute uniformly distrib threshold + float a = min(lerpFactor, 1.0 - lerpFactor); + float3 cases; + cases.x = x * x * rcp(2.0 * a * (1.0 - a)); + cases.y = (x - 0.5 * a) * rcp(1.0 - a); + cases.z = 1.0 - ((1.0 - x) * (1.0 - x) * rcp(2.0 * a * (1.0 - a))); + + // Find our final, uniformly distributed alpha threshold + float thresh = (x < (1.0 - a)) ? ((x < a) ? cases.x : cases.y) : cases.z; + + // R1 sequence to animate our noise for TAA/FSR/DLSS + // Todo: Check if player has enabled TAA/upscaling to enable anim + thresh = frac(thresh + m_taa_jitter.z); + + // Clamp alpha + return clamp(thresh, 0.063f, 1.0f); +} + +#define IMAGE_BITRATE float3(255.f, 255.f, 255.f) + +// Deband color function (by Hozar 2002) - may be huita +float3 deband_color(float3 image, float2 uv) +{ + float3 dither = Hash23(cos(uv.xy * timers.x) * 1245.0f); + + float3 color = saturate(image) * IMAGE_BITRATE; + float3 pq = frac(color); + + color -= pq; + pq = step(dither, pq); + + color += pq; + color *= rcp(IMAGE_BITRATE); + + return color; +} + +//Builds a cotangent frame. Source: http://www.thetenthplanet.de/archives/1180 +void build_contangent_frame(float3 position, float3 normal, float2 uv, out float3 tangent, out float3 binormal) +{ + float4 duv = float4(ddx(uv), ddy(uv)); + float3 dp1perp = cross(normal, ddx(position)); + float3 dp2perp = cross(ddy(position), normal); + + tangent = dp2perp * duv.x + dp1perp * duv.z; + binormal = dp2perp * duv.y + dp1perp * duv.w; + + float invmax = rsqrt(max(dot(tangent, tangent), dot(binormal, binormal))); + + tangent *= invmax; + binormal *= invmax; +} + +float4 combine_bloom(float3 low, float4 high) +{ + return float4(low.xyz + high.xyz * high.w, 1.f); +} + +float calc_fogging(float3 pos) +{ + return saturate(length(pos - eye_position) * fog_params.w + fog_params.x); +} + +float2 unpack_tc_base(float2 tc, float du, float dv) +{ + return (tc.xy + float2(du, dv)) * (32.f / 32768.f); //! Increase from 32bit to 64bit floating point +} + +float3 unpack_normal(float3 v) +{ + return 2 * v - 1; +} + +float3 unpack_bx2(float3 v) +{ + return 2 * v - 1; +} + +float3 unpack_bx4(float3 v) +{ + return 4 * v - 2; +} //! reduce the amount of stretching from 4*v-2 and increase precision + +float2 unpack_tc_lmap(float2 tc) +{ + return tc * (1.f / 32768.f); +} // [-1 .. +1 ] + +float4 unpack_color(float4 c) +{ + return c.bgra; +} + +float4 unpack_D3DCOLOR(float4 c) +{ + return c.bgra; +} + +float3 unpack_D3DCOLOR(float3 c) +{ + return c.bgr; +} + +float3 p_hemi(float2 tc) +{ + float4 t_lmh = s_hemi.Sample(smp_rtlinear, tc); + return t_lmh.w; +} + +float get_hemi(float4 lmh) +{ + return lmh.w; +} + +float get_sun(float4 lmh) +{ + return lmh.y; +} + +float3 v_sun(float3 N) +{ + return L_sun_color.xyz * dot(N, -L_sun_dir_w.xyz); +} + +float3 calc_reflection(float3 pos_w, float3 norm_w) +{ + return reflect(normalize(pos_w - eye_position), norm_w); +} + +#endif // common_functions_h_included diff --git a/gamedata/shaders/d3d11/common_iostructs.hlsli b/gamedata/shaders/d3d11/common_iostructs.hlsli new file mode 100644 index 0000000..488d4db --- /dev/null +++ b/gamedata/shaders/d3d11/common_iostructs.hlsli @@ -0,0 +1,514 @@ +#ifndef common_iostructs_h_included +#define common_iostructs_h_included + +//////////////////////////////////////////////////////////////// +// This file contains io structs: +// v_name : input for vertex shader. +// v2p_name: output for vertex shader. +// p_name : input for pixel shader. +//////////////////////////////////////////////////////////////// + +//////////////////////////////////////////////////////////////// +// TL0uv +struct v_TL0uv_positiont +{ + float4 P : POSITIONT; + float4 Color : COLOR; +}; + +struct v_TL0uv +{ + float4 P : POSITION; + float4 Color : COLOR; +}; + +struct v2p_TL0uv +{ + float4 Color : COLOR; + float4 HPos : SV_POSITION; // Clip-space position (for rasterization) +}; + +struct p_TL0uv +{ + float4 Color : COLOR; + // float4 HPos : SV_POSITION; // Clip-space position (for rasterization) +}; + +//////////////////////////////////////////////////////////////// +// TL +struct v_TL_positiont +{ + float4 P : POSITIONT; + float2 Tex0 : TEXCOORD0; + float4 Color : COLOR; +}; + +struct v_TL +{ + float4 P : POSITION; + float2 Tex0 : TEXCOORD0; + float4 Color : COLOR; +}; + +struct v2p_TL +{ + float2 Tex0 : TEXCOORD0; + float4 Color : COLOR; + float4 HPos : SV_POSITION; // Clip-space position (for rasterization) +}; + +struct p_TL +{ + float2 Tex0 : TEXCOORD0; + float4 Color : COLOR; + // float4 HPos : SV_POSITION; // Clip-space position (for rasterization) +}; + +//////////////////////////////////////////////////////////////// +// TL2uv +struct v_TL2uv +{ + float4 P : POSITIONT; + float2 Tex0 : TEXCOORD0; + float2 Tex1 : TEXCOORD1; + float4 Color : COLOR; +}; + +struct v2p_TL2uv +{ + float2 Tex0 : TEXCOORD0; + float2 Tex1 : TEXCOORD1; + float4 Color : COLOR; + float4 HPos : SV_POSITION; // Clip-space position (for rasterization) +}; + +struct p_TL2uv +{ + float2 Tex0 : TEXCOORD0; + float2 Tex1 : TEXCOORD1; + float4 Color : COLOR; + // float4 HPos : SV_POSITION; // Clip-space position (for rasterization) +}; +//////////////////////////////////////////////////////////////// +// postpr +struct v_postpr +{ + float4 P : POSITIONT; + float2 Tex0 : TEXCOORD0; // base1 (duality) + float2 Tex1 : TEXCOORD1; // base2 (duality) + float2 Tex2 : TEXCOORD2; // base (noise) + float4 Color : COLOR0; // multiplier, color.w = noise_amount + float4 Gray : COLOR1; // (.3,.3,.3.,amount) +}; + +struct v2p_postpr +{ + float2 Tex0 : TEXCOORD0; // base1 (duality) + float2 Tex1 : TEXCOORD1; // base2 (duality) + float2 Tex2 : TEXCOORD2; // base (noise) + float4 Color : COLOR0; // multiplier, color.w = noise_amount + float4 Gray : COLOR1; // (.3,.3,.3.,amount) + float4 HPos : SV_POSITION; // Clip-space position (for rasterization) +}; + +struct p_postpr +{ + float2 Tex0 : TEXCOORD0; // base1 (duality) + float2 Tex1 : TEXCOORD1; // base2 (duality) + float2 Tex2 : TEXCOORD2; // base (noise) + float4 Color : COLOR0; // multiplier, color.w = noise_amount + float4 Gray : COLOR1; // (.3,.3,.3.,amount) + // float4 HPos : SV_POSITION; // Clip-space position (for rasterization) +}; +//////////////////////////////////////////////////////////////// +// build (bloom_build) +struct v_build +{ + float4 P : POSITIONT; + float2 Tex0 : TEXCOORD0; + float2 Tex1 : TEXCOORD1; + float2 Tex2 : TEXCOORD2; + float2 Tex3 : TEXCOORD3; +}; + +struct v2p_build +{ + float2 Tex0 : TEXCOORD0; + float2 Tex1 : TEXCOORD1; + float2 Tex2 : TEXCOORD2; + float2 Tex3 : TEXCOORD3; + float4 HPos : SV_POSITION; // Clip-space position (for rasterization) +}; + +struct p_build +{ + float2 Tex0 : TEXCOORD0; + float2 Tex1 : TEXCOORD1; + float2 Tex2 : TEXCOORD2; + float2 Tex3 : TEXCOORD3; + // float4 HPos : SV_POSITION; // Clip-space position (for rasterization) +}; +//////////////////////////////////////////////////////////////// +// filter (bloom_filter) +struct v_filter +{ + float4 P : POSITIONT; + float4 Tex0 : TEXCOORD0; + float4 Tex1 : TEXCOORD1; + float4 Tex2 : TEXCOORD2; + float4 Tex3 : TEXCOORD3; + float4 Tex4 : TEXCOORD4; + float4 Tex5 : TEXCOORD5; + float4 Tex6 : TEXCOORD6; + float4 Tex7 : TEXCOORD7; +}; + +struct v2p_filter +{ + float4 Tex0 : TEXCOORD0; + float4 Tex1 : TEXCOORD1; + float4 Tex2 : TEXCOORD2; + float4 Tex3 : TEXCOORD3; + float4 Tex4 : TEXCOORD4; + float4 Tex5 : TEXCOORD5; + float4 Tex6 : TEXCOORD6; + float4 Tex7 : TEXCOORD7; + float4 HPos : SV_POSITION; // Clip-space position (for rasterization) +}; + +struct p_filter +{ + float4 Tex0 : TEXCOORD0; + float4 Tex1 : TEXCOORD1; + float4 Tex2 : TEXCOORD2; + float4 Tex3 : TEXCOORD3; + float4 Tex4 : TEXCOORD4; + float4 Tex5 : TEXCOORD5; + float4 Tex6 : TEXCOORD6; + float4 Tex7 : TEXCOORD7; + // float4 HPos : SV_POSITION; // Clip-space position (for rasterization) +}; + +//////////////////////////////////////////////////////////////// +// aa_AA +struct v_aa_AA +{ + float4 P : POSITIONT; + float2 Tex0 : TEXCOORD0; + float2 Tex1 : TEXCOORD1; + float2 Tex2 : TEXCOORD2; + float2 Tex3 : TEXCOORD3; + float2 Tex4 : TEXCOORD4; + float4 Tex5 : TEXCOORD5; + float4 Tex6 : TEXCOORD6; +}; + +struct v2p_aa_AA +{ + float2 Tex0 : TEXCOORD0; + float2 Tex1 : TEXCOORD1; + float2 Tex2 : TEXCOORD2; + float2 Tex3 : TEXCOORD3; + float2 Tex4 : TEXCOORD4; + float4 Tex5 : TEXCOORD5; + float4 Tex6 : TEXCOORD6; + float4 HPos : SV_POSITION; // Clip-space position (for rasterization) +}; + +struct p_aa_AA +{ + float2 Tex0 : TEXCOORD0; + float2 Tex1 : TEXCOORD1; + float2 Tex2 : TEXCOORD2; + float2 Tex3 : TEXCOORD3; + float2 Tex4 : TEXCOORD4; + float4 Tex5 : TEXCOORD5; + float4 Tex6 : TEXCOORD6; + // float4 HPos :SV_POSITION; // Clip-space position (for rasterization) +}; + +struct p_aa_AA_sun +{ + float2 tc : TEXCOORD0; + float2 unused : TEXCOORD1; + float2 LT : TEXCOORD2; + float2 RT : TEXCOORD3; + float2 LB : TEXCOORD4; + float2 RB : TEXCOORD5; + // float4 HPos :SV_POSITION; // Clip-space position (for rasterization) +}; + +//////////////////////////////////////////////////////////////// +// dumb +struct v_dumb +{ + float4 P : POSITION; // Clip-space position (for rasterization) +}; + +struct v2p_dumb +{ + float4 HPos : SV_POSITION; // Clip-space position (for rasterization) +}; + +//////////////////////////////////////////////////////////////// +// Volume +struct v2p_volume +{ + float4 tc : TEXCOORD0; + float4 hpos : SV_POSITION; // Clip-space position (for rasterization) +}; +struct p_volume +{ + float4 tc : TEXCOORD0; + // float4 hpos :SV_POSITION; // Clip-space position (for rasterization) +}; +//////////////////////////////////////////////////////////////// +// Static +struct v_static +{ + float4 Nh : NORMAL; // (nx,ny,nz,hemi occlusion) + float4 T : TANGENT; // tangent + float4 B : BINORMAL; // binormal + int2 tc : TEXCOORD0; // (u,v) +#ifdef USE_LM_HEMI + int2 lmh : TEXCOORD1; // (lmu,lmv) +#endif + float4 P : POSITION; // (float,float,float,1) +}; + +struct v_static_color +{ + float4 P : POSITION; // (float,float,float,1) + + float4 Nh : NORMAL; // (nx,ny,nz,hemi occlusion) + float4 T : TANGENT; // tangent + float4 B : BINORMAL; // binormal + + float4 color : COLOR0; // (r,g,b,dir-occlusion) // Swizzle before use!!! + int2 tc : TEXCOORD0; // (u,v) + +#ifdef USE_LM_HEMI + int2 lmh : TEXCOORD1; // (lmu,lmv) +#endif +}; + +struct f_deffer +{ + float4 Ne : SV_Target0; + float4 C : SV_Target1; + float2 V : SV_Target2; +}; + +struct f_forward +{ + float4 Color : SV_Target0; + float Reactive : SV_Target1; + float2 Velocity : SV_Target2; +}; + +struct gbuffer_data +{ + float3 P; + float3 P_hud; + float3 P_real; + + float depth; + + float mtl; + float3 N; + float hemi; + float3 C; + float gloss; + + float sss; +}; + +//////////////////////////////////////////////////////////////// +// Defer bumped +struct p_bumped_new +{ + float4 hpos : SV_POSITION; + + float4 tcdh : TEXCOORD0; // Texture coordinates, sun_occlusion || lm-hemi + float4 position : TEXCOORD1; // position + hemi + float3 M1 : TEXCOORD2; // nmap 2 eye - 1 + float3 M2 : TEXCOORD3; // nmap 2 eye - 2 + float3 M3 : TEXCOORD4; // nmap 2 eye - 3 + + float4 hpos_curr : TEXCOORD5; + float4 hpos_old : TEXCOORD6; + + float snow_mask : TEXCOORD7; + +#ifndef USE_LM_HEMI +#ifdef USE_LENGTH_BUFFER + float3 lmap : TEXCOORD8; +#endif +#endif +}; + +struct p_bilbord +{ + float4 hpos : SV_POSITION; + float4 af : COLOR1; + + float3 position : TEXCOORD0; + float2 tc0 : TEXCOORD1; + float2 tc1 : TEXCOORD2; + + float4 hpos_curr : TEXCOORD3; + float4 hpos_old : TEXCOORD4; +}; + +struct v2p_bumped +{ +#if defined(USE_R2_STATIC_SUN) && !defined(USE_LM_HEMI) + float4 tcdh : TEXCOORD0; // Texture coordinates, w=sun_occlusion +#else + float2 tcdh : TEXCOORD0; // Texture coordinates +#endif + float4 position : TEXCOORD1; // position + hemi + float3 M1 : TEXCOORD2; // nmap 2 eye - 1 + float3 M2 : TEXCOORD3; // nmap 2 eye - 2 + float3 M3 : TEXCOORD4; // nmap 2 eye - 3 +#ifdef USE_TDETAIL + float2 tcdbump : TEXCOORD5; // d-bump +#endif +#ifdef USE_LM_HEMI + float2 lmh : TEXCOORD6; // lm-hemi +#endif + float4 hpos_curr : POSITION0; + float4 hpos_old : POSITION1; + float4 hpos : SV_POSITION; +}; + +struct p_bumped +{ +#if defined(USE_R2_STATIC_SUN) && !defined(USE_LM_HEMI) + float4 tcdh : TEXCOORD0; // Texture coordinates, w=sun_occlusion +#else + float2 tcdh : TEXCOORD0; // Texture coordinates +#endif + float4 position : TEXCOORD1; // position + hemi + float3 M1 : TEXCOORD2; // nmap 2 eye - 1 + float3 M2 : TEXCOORD3; // nmap 2 eye - 2 + float3 M3 : TEXCOORD4; // nmap 2 eye - 3 +#ifdef USE_TDETAIL + float2 tcdbump : TEXCOORD5; // d-bump +#endif +#ifdef USE_LM_HEMI + float2 lmh : TEXCOORD6; // lm-hemi +#endif + float4 hpos_curr : POSITION0; + float4 hpos_old : POSITION1; +}; + +// Defer flat +struct v2p_flat +{ +#if defined(USE_R2_STATIC_SUN) && !defined(USE_LM_HEMI) + float4 tcdh : TEXCOORD0; // Texture coordinates, w=sun_occlusion +#else + float2 tcdh : TEXCOORD0; // Texture coordinates +#endif + float4 position : TEXCOORD1; // position + hemi + float3 N : TEXCOORD2; // Eye-space normal (for lighting) +#ifdef USE_TDETAIL + float2 tcdbump : TEXCOORD3; // d-bump +#endif +#ifdef USE_LM_HEMI + float2 lmh : TEXCOORD4; // lm-hemi +#endif + float4 hpos_curr : POSITION0; + float4 hpos_old : POSITION1; + float4 hpos : SV_POSITION; +}; + +struct p_flat +{ +#if defined(USE_R2_STATIC_SUN) && !defined(USE_LM_HEMI) + float4 tcdh : TEXCOORD0; // Texture coordinates, w=sun_occlusion +#else + float2 tcdh : TEXCOORD0; // Texture coordinates +#endif + float4 position : TEXCOORD1; // position + hemi + float3 N : TEXCOORD2; // Eye-space normal (for lighting) +#ifdef USE_TDETAIL + float2 tcdbump : TEXCOORD3; // d-bump +#endif +#ifdef USE_LM_HEMI + float2 lmh : TEXCOORD4; // lm-hemi +#endif + float4 hpos_curr : POSITION0; + float4 hpos_old : POSITION1; +}; + +// Shadow +struct v_shadow_direct_aref +{ + float4 P : POSITION; // (float,float,float,1) + int4 tc : TEXCOORD0; // (u,v,frac,???) +}; + +struct v_shadow_direct +{ + float4 P : POSITION; // (float,float,float,1) +}; + +struct v2p_shadow_direct_aref +{ + float2 tc0 : TEXCOORD0; // Diffuse map for aref + float4 hpos : SV_POSITION; // Clip-space position (for rasterization) +}; + +struct v2p_shadow_direct +{ + float4 hpos : SV_POSITION; // Clip-space position (for rasterization) +}; + +struct p_shadow_direct_aref +{ + float2 tc0 : TEXCOORD0; // Diffuse map for aref +}; + +struct p_shadow +{ + float2 tc0 : TEXCOORD0; + float4 hpos : SV_POSITION; +}; + +struct v2p_screen +{ + float2 tc0 : TEXCOORD0; + float4 HPos : POSITIONT; // Clip-space position (for rasterization) +}; + +// Model +struct v_model +{ + float4 P : POSITION; // (float,float,float,1) + float3 N : NORMAL; // (nx,ny,nz) + float3 T : TANGENT; // (nx,ny,nz) + float3 B : BINORMAL; // (nx,ny,nz) + float2 tc : TEXCOORD0; // (u,v) + float4 P_old : TEXCOORD1; // (float,float,float,1) +}; + +// Tree +struct v_tree +{ + float4 P : POSITION; // (float,float,float,1) + float4 Nh : NORMAL; // (nx,ny,nz) + float3 T : TANGENT; // tangent + float3 B : BINORMAL; // binormal + int4 tc : TEXCOORD0; // (u,v,frac,???) +}; + +// Details +struct v_detail +{ + float4 pos : POSITION; // position, frac + float2 tc : TEXCOORD0; // texcoord +}; + +#endif // common_iostructs_h_included diff --git a/gamedata/shaders/d3d11/common_policies.hlsli b/gamedata/shaders/d3d11/common_policies.hlsli new file mode 100644 index 0000000..1610e52 --- /dev/null +++ b/gamedata/shaders/d3d11/common_policies.hlsli @@ -0,0 +1,12 @@ +#ifndef common_policies_h_included +#define common_policies_h_included + +#ifndef ISAMPLE + #define ISAMPLE 0 +#endif // ISAMPLE + +///////////////////////////////////////////////////////////////////////////// +#define GLD_P(_tc, _pos2d, _iSample) _tc, _pos2d +#define CS_P(_P, _N, _tc0, _tcJ, _pos2d, _iSample) _P, _N, _tc0, _tcJ, _pos2d + +#endif // common_policies_h_included diff --git a/gamedata/shaders/d3d11/common_samplers.hlsli b/gamedata/shaders/d3d11/common_samplers.hlsli new file mode 100644 index 0000000..7b45713 --- /dev/null +++ b/gamedata/shaders/d3d11/common_samplers.hlsli @@ -0,0 +1,67 @@ +#ifndef common_samplers_h_included +#define common_samplers_h_included + +// Geometry phase / deferring // + +sampler smp_nofilter; // Use D3DTADDRESS_CLAMP, D3DTEXF_POINT, D3DTEXF_NONE, D3DTEXF_POINT +sampler smp_rtlinear; // Use D3DTADDRESS_CLAMP, D3DTEXF_LINEAR, D3DTEXF_NONE, D3DTEXF_LINEAR +sampler smp_linear; // Use D3DTADDRESS_WRAP, D3DTEXF_LINEAR, D3DTEXF_LINEAR, D3DTEXF_LINEAR +sampler smp_base; // Use D3DTADDRESS_WRAP, D3DTEXF_ANISOTROPIC, D3DTEXF_LINEAR, D3DTEXF_ANISOTROPIC + +Texture2D s_base; // smp_base +Texture2D s_generic; +Texture2D s_bump; // +Texture2D s_bumpX; // +Texture2D s_detail; // +Texture2D s_detailBump; // +Texture2D s_detailBumpX; // Error for bump detail +// Texture2D s_bumpD; // +Texture2D s_hemi; // + +Texture2D s_mask; // + +Texture2D s_dt_r; // +Texture2D s_dt_g; // +Texture2D s_dt_b; // +Texture2D s_dt_a; // + +Texture2D s_dn_r; // +Texture2D s_dn_g; // +Texture2D s_dn_b; // +Texture2D s_dn_a; // + +Texture2D s_dn_rX; +Texture2D s_dn_gX; +Texture2D s_dn_bX; +Texture2D s_dn_aX; + +Texture2D s_refl; +TextureCube s_env; + +TextureCube env_s0; +TextureCube env_s1; +TextureCube sky_s0; +TextureCube sky_s1; + +// Lighting/shadowing phase // + +sampler smp_material; + +// uniform sampler2D s_depth; // +Texture2D s_position; // smp_nofilter or Load +Texture2D s_surface; // smp_nofilter or Load +Texture2D s_normal; // smp_nofilter or Load +Texture2D s_lmap; // 2D/???cube projector lightmap +Texture3D s_material; // smp_material +// uniform sampler1D s_attenuate; // + +// Combine phase // +Texture2D s_diffuse; // rgb.a = diffuse.gloss +Texture2D s_accumulator; // rgb.a = diffuse.specular +// uniform sampler2D s_generic; // +Texture2D s_bloom; // +Texture2D s_image; // used in various post-processing +Texture2D s_velocity; // used in various post-processing +Texture2D s_tonemap; // actually MidleGray / exp(Lw + eps) + +#endif // #ifndef common_samplers_h_included diff --git a/gamedata/shaders/d3d11/contrast_adaptive_sharpening.ps.hlsl b/gamedata/shaders/d3d11/contrast_adaptive_sharpening.ps.hlsl new file mode 100644 index 0000000..f5b9436 --- /dev/null +++ b/gamedata/shaders/d3d11/contrast_adaptive_sharpening.ps.hlsl @@ -0,0 +1,66 @@ +// This is really short version of CAS based on AMD presentation (https://gpuopen.com/wp-content/uploads/2019/07/FidelityFX-CAS.pptx) +#include "common.hlsli" + +float sharpening_intensity; + +float4 main(v2p_TL Input) : SV_Target +{ + float2 texcoord = Input.Tex0; + // fetch a 3x3 neighborhood around the pixel 'e', + // a b c + // d(e)f + // g h i + + float3 a = s_image.SampleLevel(smp_rtlinear, texcoord, 0.0, int2(-1, -1)).xyz; a *= rcp(1.0f + a); + float3 b = s_image.SampleLevel(smp_rtlinear, texcoord, 0.0, int2(0, -1)).xyz; b *= rcp(1.0f + b); + float3 c = s_image.SampleLevel(smp_rtlinear, texcoord, 0.0, int2(1, -1)).xyz; c *= rcp(1.0f + c); + + float3 d = s_image.SampleLevel(smp_rtlinear, texcoord, 0.0, int2(-1, 0)).xyz; d *= rcp(1.0f + d); + float3 g = s_image.SampleLevel(smp_rtlinear, texcoord, 0.0, int2(-1, 1)).xyz; g *= rcp(1.0f + g); + + float3 e = s_image.SampleLevel(smp_rtlinear, texcoord, 0.0).xyz; e *= rcp(1.0f + e); + + float3 f = s_image.SampleLevel(smp_rtlinear, texcoord, 0.0, int2(1, 0)).xyz; f *= rcp(1.0f + f); + float3 h = s_image.SampleLevel(smp_rtlinear, texcoord, 0.0, int2(0, 1)).xyz; h *= rcp(1.0f + h); + float3 i = s_image.SampleLevel(smp_rtlinear, texcoord, 0.0, int2(1, 1)).xyz; i *= rcp(1.0f + i); + + // Soft min and max. + // a b c b + // d e f * 0.5 + d e f * 0.5 + // g h i h + // These are 2.0x bigger (factored out the extra multiply). + float3 mnRGB = min(min(min(d, e), min(f, b)), h); + float3 mnRGB2 = min(mnRGB, min(min(a, c), min(g, i))); + mnRGB += mnRGB2; + + float3 mxRGB = max(max(max(d, e), max(f, b)), h); + float3 mxRGB2 = max(mxRGB, max(max(a, c), max(g, i))); + mxRGB += mxRGB2; + + // Smooth minimum distance to signal limit divided by smooth max. + float3 rcpMRGB = rcp(mxRGB); + float3 ampRGB = saturate(min(mnRGB, 2.0 - mxRGB) * rcpMRGB); + + // Shaping amount of sharpening. + ampRGB = rsqrt(ampRGB); + + float Contrast = 1.0f; //sharpening_intensity; //1.0f; + float Sharpening = sharpening_intensity; //sharpening_intensity; + + float peak = -3.0 * Contrast + 8.0; + float3 wRGB = -rcp(ampRGB * peak); + + float3 rcpWeightRGB = rcp(4.0 * wRGB + 1.0); + + // 0 w 0 + // Filter shape: w 1 w + // 0 w 0 + + float3 window = (b + d) + (f + h); + float3 outColor = saturate((window * wRGB + e) * rcpWeightRGB); + + outColor = lerp(e, outColor, Sharpening); + + return float4(outColor * rcp(max(0.00001f, 1.0 - outColor)), 1.0f); +} + diff --git a/gamedata/shaders/d3d11/copy.ps.hlsl b/gamedata/shaders/d3d11/copy.ps.hlsl new file mode 100644 index 0000000..533afdf --- /dev/null +++ b/gamedata/shaders/d3d11/copy.ps.hlsl @@ -0,0 +1,12 @@ +#include "common.hlsli" + +#ifndef ISAMPLE + #define ISAMPLE 0 +#endif + +// Pixel +// TODO: DX10: move to load instead of sample (will need to provide integer texture coordinates) +float4 main(float2 tc : TEXCOORD0) : SV_Target +{ + return s_generic.Sample(smp_nofilter, tc); +} diff --git a/gamedata/shaders/d3d11/copy_image.ps.hlsl b/gamedata/shaders/d3d11/copy_image.ps.hlsl new file mode 100644 index 0000000..929b08f --- /dev/null +++ b/gamedata/shaders/d3d11/copy_image.ps.hlsl @@ -0,0 +1,6 @@ +#include "common.hlsli" + +float4 main(float2 tc : TEXCOORD0) : SV_Target +{ + return s_image.Sample(FILTER_TYPE, tc); +} diff --git a/gamedata/shaders/d3d11/copy_p.ps.hlsl b/gamedata/shaders/d3d11/copy_p.ps.hlsl new file mode 100644 index 0000000..cfdeb5c --- /dev/null +++ b/gamedata/shaders/d3d11/copy_p.ps.hlsl @@ -0,0 +1,7 @@ +#include "common.hlsli" + +float4 main(float4 tc : TEXCOORD0) : SV_Target +{ + return s_generic.Sample(smp_nofilter, tc.xy / tc.w); +} + diff --git a/gamedata/shaders/d3d11/debug_draw.lua b/gamedata/shaders/d3d11/debug_draw.lua new file mode 100644 index 0000000..399e134 --- /dev/null +++ b/gamedata/shaders/d3d11/debug_draw.lua @@ -0,0 +1,14 @@ +-- without depth test +function l_special(shader, t_base, t_second, t_detail) + shader:begin("debug_draw", "debug_draw") + :zb(false, false) + + shader:dx10texture("s_position", "$user$position") + shader:dx10sampler("smp_nofilter") +end + +-- depth test +function normal(shader, t_base, t_second, t_detail) + shader:begin("debug_draw", "debug_draw_nodepth") + :zb(true, false) +end \ No newline at end of file diff --git a/gamedata/shaders/d3d11/debug_draw.ps.hlsl b/gamedata/shaders/d3d11/debug_draw.ps.hlsl new file mode 100644 index 0000000..f9271a6 --- /dev/null +++ b/gamedata/shaders/d3d11/debug_draw.ps.hlsl @@ -0,0 +1,20 @@ +#include "common.hlsli" + +uniform float4 screen_res; + +// vertex output +struct v2p_L +{ + float4 pos : SV_POSITION; + float4 viewpos : TEXCOORD0; + float4 color : COLOR0; +}; + +float4 main(v2p_L I) : SV_TARGET +{ + float depth = s_position.SampleLevel(smp_nofilter, I.pos.xy * screen_res.zw, 0).x; + depth = depth_unpack.x / (depth - depth_unpack.y); + clip(depth - I.viewpos.z); + + return I.color; +} diff --git a/gamedata/shaders/d3d11/debug_draw.vs.hlsl b/gamedata/shaders/d3d11/debug_draw.vs.hlsl new file mode 100644 index 0000000..09dd829 --- /dev/null +++ b/gamedata/shaders/d3d11/debug_draw.vs.hlsl @@ -0,0 +1,26 @@ +#include "common.hlsli" + +// input +struct v_vert +{ + float4 pos : POSITION; // (float,float,float,1) + float4 color : COLOR0; // (r,g,b,dir-occlusion) +}; + +// output +struct v2p_L +{ + float4 pos : SV_POSITION; + float4 viewpos : TEXCOORD0; + float4 color : COLOR0; +}; + +// Vertex +v2p_L main(v_vert I) +{ + v2p_L O; + O.pos = mul(m_WVP, I.pos); + O.viewpos = float4(mul(m_WV, I.pos), 1.0f); + O.color = I.color.bgra; // swizzle vertex colour + return O; +} diff --git a/gamedata/shaders/d3d11/debug_draw_nodepth.ps.hlsl b/gamedata/shaders/d3d11/debug_draw_nodepth.ps.hlsl new file mode 100644 index 0000000..73e2348 --- /dev/null +++ b/gamedata/shaders/d3d11/debug_draw_nodepth.ps.hlsl @@ -0,0 +1,14 @@ +#include "common.hlsli" + +// vertex output +struct v2p_L +{ + float4 pos : SV_POSITION; + float4 viewpos : TEXCOORD0; + float4 color : COLOR0; +}; + +float4 main(v2p_L I) : SV_TARGET +{ + return I.color; +} diff --git a/gamedata/shaders/d3d11/deffer_base.ps.hlsl b/gamedata/shaders/d3d11/deffer_base.ps.hlsl new file mode 100644 index 0000000..6ac2692 --- /dev/null +++ b/gamedata/shaders/d3d11/deffer_base.ps.hlsl @@ -0,0 +1,72 @@ +#include "common.hlsli" +#include "sload.hlsli" + +void main(p_bumped_new I, out IXrayGbufferPack O) +{ + IXrayMaterial M; + M.Depth = I.position.z; + +#ifdef USE_CLIP_NEAR_PLANE + clip(I.hpos_curr.z - I.hpos_curr.w * 0.02f); +#endif + + M.Sun = I.tcdh.w; + M.Hemi = I.tcdh.z; + M.Point = I.position.xyz; + + SloadNew(I, M); + +#ifdef USE_AREF + #if defined(USE_HASHED_AREF) && !defined(DETAIL_SHADOW_PASS) + clip(M.Color.w - hashed_alpha_test(M.Point)); + #else + clip(M.Color.w - def_aref); + #endif + #ifdef USE_DXT1_HACK + M.Color.xyz *= rcp(max(0.0001f, M.Color.w)); + #endif +#endif + +#if defined(USE_BUMP) || defined(USE_TDETAIL_BUMP) + M.Normal = mul(float3x3(I.M1, I.M2, I.M3), M.Normal); +#else + M.Normal = float3(I.M1.z, I.M2.z, I.M3.z); +#endif + + M.Normal = normalize(M.Normal); + +#ifdef USE_LM_HEMI + float4 lm = s_hemi.Sample(smp_rtlinear, I.tcdh.zw); + + M.Sun = get_sun(lm); + M.Hemi = get_hemi(lm); +#endif + +#ifdef USE_LEGACY_LIGHT + #ifndef USE_PBR + M.Metalness = L_material.w; + #else + M.Color.xyz *= M.AO; + M.AO = 1.0f; + float Specular = M.Metalness * dot(M.Color.xyz, LUMINANCE_VECTOR); + M.Color.xyz = lerp(M.Color.xyz, 0.04f, M.Metalness); + M.Metalness = 0.5f - M.Roughness * M.Roughness * 0.5f; + M.Roughness = Specular; + #endif +#endif + +#ifdef IGNORE_SNOW_MASK + M.SnowMask = 0.0f; +#endif + +#ifdef USE_AREF + #ifdef USE_TREEWAVE + M.SSS = 1.0f; + #endif + M.SnowMask = 0.0f; +#endif + + O.Velocity = I.hpos_curr.xy / I.hpos_curr.w - I.hpos_old.xy / I.hpos_old.w; + GbufferPack(O, M); +} + diff --git a/gamedata/shaders/d3d11/deffer_base.vs.hlsl b/gamedata/shaders/d3d11/deffer_base.vs.hlsl new file mode 100644 index 0000000..42a3f19 --- /dev/null +++ b/gamedata/shaders/d3d11/deffer_base.vs.hlsl @@ -0,0 +1,58 @@ +#include "common.hlsli" + +#ifdef USE_LM_HEMI + #define v_in v_static +#else + #define v_in v_static_color +#endif + +void main(in v_in I, out p_bumped_new O) +{ + float2 tc = unpack_tc_base(I.tc, I.T.w, I.B.w); + float3 Pe = mul(m_WV, I.P); + + O.tcdh = float4(tc.xy, I.Nh.w, I.Nh.w); + O.position = float4(Pe, 1.0f); + + float3 N = unpack_bx4(unpack_D3DCOLOR(I.Nh).xyz); + +#if defined(USE_BUMP) || defined(USE_TDETAIL_BUMP) + float3 T = unpack_bx4(unpack_D3DCOLOR(I.T).xyz); + float3 B = unpack_bx4(unpack_D3DCOLOR(I.B).xyz); + + float3x3 xform = mul((float3x3)m_WV, float3x3( + T.x, B.x, N.x, + T.y, B.y, N.y, + T.z, B.z, N.z) + ); + + O.M1 = xform[0]; + O.M2 = xform[1]; + O.M3 = xform[2]; +#else + N = mul((float3x3)m_WV, N); + + O.M1 = N.xxx; + O.M2 = N.yyy; + O.M3 = N.zzz; +#endif + + O.snow_mask = normalize(mul((float3x3)m_W, N)).y; + +#ifdef USE_LM_HEMI + O.tcdh.zw = unpack_tc_lmap(I.lmh); +#else + #ifdef USE_LENGTH_BUFFER + O.lmap = unpack_D3DCOLOR(I.color.xyz); + #endif + O.tcdh.w = I.color.w; +#endif + + O.hpos = mul(m_WVP, I.P); + + O.hpos_curr = O.hpos; + O.hpos_old = mul(m_WVP_old, I.P); + + O.hpos.xy += m_taa_jitter.xy * O.hpos.w; +} + diff --git a/gamedata/shaders/d3d11/deffer_detail.vs.hlsl b/gamedata/shaders/d3d11/deffer_detail.vs.hlsl new file mode 100644 index 0000000..d0598cf --- /dev/null +++ b/gamedata/shaders/d3d11/deffer_detail.vs.hlsl @@ -0,0 +1,106 @@ +#include "common.hlsli" + +cbuffer DetailConstants +{ + float4 consts; + + float4 wave; + float4 wave_old; + + float4 dir2D; + float4 dir2D_old; +}; + +//LVutner: Has to match the CPU struct +struct InstanceData +{ + float3 hpb; + float scale; + float3 pos; + float hemi; +}; + +//LVutner: Always bound to slot0 (see CPP code) +StructuredBuffer detail_buffer : register(t0); + +float3x3 setMatrix (float3 hpb) +{ + float _ch, _cp, _cb, _sh, _sp, _sb, _cc, _cs, _sc, _ss; + + sincos(hpb.x, _sh, _ch); + sincos(hpb.y, _sp, _cp); + sincos(hpb.z, _sb, _cb); + + _cc = _ch*_cb; _cs = _ch*_sb; _sc = _sh*_cb; _ss = _sh*_sb; + + return float3x3(_cc-_sp*_ss, _sp*_sc+_cs, -_cp*_sh, + -_cp*_sb, _cp*_cb, _sp, + _sp*_cs+_sc, _ss-_sp*_cc, _cp*_ch); +}; + +void main(in v_detail I, out p_bumped_new O, uint instance_id : SV_InstanceID) +{ + //LVutner: Read our structured buffer + InstanceData det = detail_buffer[instance_id]; + + float3x3 mmhpb = setMatrix(det.hpb); + + float hemi = abs(det.hemi); + float sun = sign(det.hemi)*0.25f+0.25f; + + float4 m0 = float4(mmhpb[0]*det.scale, det.pos.x); + float4 m1 = float4(mmhpb[1]*det.scale, det.pos.y); + float4 m2 = float4(mmhpb[2]*det.scale, det.pos.z); + + float4 pos, pos_old; + pos.x = dot(m0, float4(I.pos.xyz, 1.0)); + pos.y = dot(m1, float4(I.pos.xyz, 1.0)); + pos.z = dot(m2, float4(I.pos.xyz, 1.0)); + + pos.w = 1.0f; + pos_old = pos; + +#ifdef USE_TREEWAVE + float H = I.pos.y * length(m1.xyz); + + float dp = calc_cyclic(dot(pos, wave)); + float inten = H * dp; + + pos.xz += calc_xz_wave(dir2D.xz * inten, I.pos.w); + + #ifndef DETAIL_SHADOW_PASS + float dp_old = calc_cyclic(dot(pos_old, wave_old)); + float inten_old = H * dp_old; + + pos_old.xz += calc_xz_wave(dir2D_old.xz * inten_old, I.pos.w); + #endif +#endif + + float3 Pe = mul(m_WV, pos); + + float3 N; + N.x = pos.x - m0.w; + N.y = pos.y - m1.w + 0.75f; + N.z = pos.z - m2.w; + + O.tcdh = float4(I.tc.xy, hemi, sun); + O.position = float4(Pe, 1.0f); + + N.xyz = mul((float3x3)m_WV, N.xyz); + + O.M1 = N.xxx; + O.M2 = N.yyy; + O.M3 = N.zzz; + + O.hpos = mul(m_WVP, pos); + +#ifndef DETAIL_SHADOW_PASS + O.hpos_curr = O.hpos; + O.hpos_old = mul(m_VP_old, pos_old); + + O.hpos.xy += m_taa_jitter.xy * O.hpos.w; +#else + O.hpos_curr = O.hpos_old = O.hpos; +#endif + O.snow_mask = 0.0; +} \ No newline at end of file diff --git a/gamedata/shaders/d3d11/deffer_impl.ps.hlsl b/gamedata/shaders/d3d11/deffer_impl.ps.hlsl new file mode 100644 index 0000000..d3ee52f --- /dev/null +++ b/gamedata/shaders/d3d11/deffer_impl.ps.hlsl @@ -0,0 +1,162 @@ +#include "common.hlsli" +#include "sload.hlsli" + +#ifndef USE_LENGTH_BUFFER + #define OutStructure IXrayGbufferPack +#else + #define OutStructure f_forward + +#include "metalic_roughness_light.hlsli" +#include "metalic_roughness_ambient.hlsli" + +#endif + +void main(p_bumped_new I, out OutStructure O) +{ + IXrayMaterial M; + M.Depth = I.position.z; + + M.Sun = I.tcdh.w; + M.Hemi = I.tcdh.z; + M.Point = I.position.xyz; + + M.Color = s_base.Sample(smp_base, I.tcdh.xy); + M.Metalness = 0.0f; + M.SSS = 0.0f; + M.AO = 1.0f; + + float4 Lmap = s_lmap.Sample(smp_base, I.tcdh.xy); + float2 tcdbump = I.tcdh.xy * dt_params.xy; + +#ifdef USE_PBR + #ifdef USE_4_BUMP + float4 Mask = s_mask.Sample(smp_base, I.tcdh.xy); + Mask /= dot(Mask, 1.0f); + + float3 r_base = s_dt_r.Sample(smp_base, tcdbump).xyz * Mask.x; + float3 g_base = s_dt_g.Sample(smp_base, tcdbump).xyz * Mask.y; + float3 b_base = s_dt_b.Sample(smp_base, tcdbump).xyz * Mask.z; + float3 a_base = s_dt_a.Sample(smp_base, tcdbump).xyz * Mask.w; + + float4 r_bump = s_dn_r.Sample(smp_base, tcdbump) * Mask.x; + float4 g_bump = s_dn_g.Sample(smp_base, tcdbump) * Mask.y; + float4 b_bump = s_dn_b.Sample(smp_base, tcdbump) * Mask.z; + float4 a_bump = s_dn_a.Sample(smp_base, tcdbump) * Mask.w; + + float4 r_bumpX = s_dn_rX.Sample(smp_base, tcdbump) * Mask.x; + float4 g_bumpX = s_dn_gX.Sample(smp_base, tcdbump) * Mask.y; + float4 b_bumpX = s_dn_bX.Sample(smp_base, tcdbump) * Mask.z; + float4 a_bumpX = s_dn_aX.Sample(smp_base, tcdbump) * Mask.w; + + //Unpack normals (if something is wrong - unpack and then blend them) + M.Normal.xy = (r_bump.wy + g_bump.wy + b_bump.wy + a_bump.wy) * 2.0 - 1.0; + M.Normal.z = sqrt(1.0f - saturate(dot(M.Normal.xy, M.Normal.xy))); + + #ifndef USE_DX_NORMAL_MAP + M.Normal.y *= -1.0f; + #endif + + M.Color.xyz *= (r_base + g_base + b_base + a_base) * 2.0f; //LVutner: Change later + M.Metalness = r_bumpX.x + g_bumpX.x + b_bumpX.x + a_bumpX.x; + M.Roughness = r_bumpX.y + g_bumpX.y + b_bumpX.y + a_bumpX.y; + M.SSS = r_bumpX.z + g_bumpX.z + b_bumpX.z + a_bumpX.z; + M.AO = r_bumpX.w + g_bumpX.w + b_bumpX.w + a_bumpX.w; + #else + float4 Detail = s_detail.Sample(smp_base, tcdbump); + float4 DetailBump = s_detailBump.Sample(smp_base, tcdbump); + float4 DetailBumpX = s_detailBumpX.Sample(smp_base, tcdbump); + + M.Roughness = DetailBumpX.y; + M.Metalness = DetailBumpX.x; + M.Normal.xy = DetailBump.wy * 2.0 - 1.0; + M.Normal.z = sqrt(1.0f - saturate(dot(M.Normal.xy, M.Normal.xy))); + M.Color.xyz *= Detail * 2.0f; + #endif +#else + #ifdef USE_4_BUMP + float4 Mask = s_mask.Sample(smp_base, I.tcdh.xy); + Mask /= dot(Mask, 1.0f); + + float3 Detail_R = s_dt_r.Sample(smp_base, tcdbump).xyz * Mask.x; + float3 Detail_G = s_dt_g.Sample(smp_base, tcdbump).xyz * Mask.y; + float3 Detail_B = s_dt_b.Sample(smp_base, tcdbump).xyz * Mask.z; + float3 Detail_A = s_dt_a.Sample(smp_base, tcdbump).xyz * Mask.w; + float3 Detail = Detail_R + Detail_G + Detail_B + Detail_A; + + float4 Normal_R = s_dn_r.Sample(smp_base, tcdbump) * Mask.x; + float4 Normal_G = s_dn_g.Sample(smp_base, tcdbump) * Mask.y; + float4 Normal_B = s_dn_b.Sample(smp_base, tcdbump) * Mask.z; + float4 Normal_A = s_dn_a.Sample(smp_base, tcdbump) * Mask.w; + + M.Normal = Normal_R.wzy + Normal_G.wzy + Normal_B.wzy + Normal_A.wzy - 0.5; + M.Roughness = min(1.0f, Normal_R.x + Normal_G.x + Normal_B.x + Normal_A.x); + #else + float4 Detail = s_detail.Sample(smp_base, tcdbump); + float4 DetailBump = s_detailBump.Sample(smp_base, tcdbump); + + M.Roughness = DetailBump.x; + M.Normal.xyz = DetailBump.wzy - 0.5f; + #endif + M.Normal.z *= 0.5f; + M.Color.xyz *= Detail * 2.0f; +#endif + + + M.Normal = mul(float3x3(I.M1, I.M2, I.M3), M.Normal); + M.Normal = normalize(M.Normal); + + M.Sun = Lmap.w; + M.Hemi = M.Color.w; + +#ifdef USE_LEGACY_LIGHT + M.Metalness = L_material.w; +#else + #ifndef USE_PBR + M.Roughness = 1.0f - M.Roughness * 0.9f; + #endif +#endif + +#ifdef IGNORE_SNOW_MASK_ON_TERRAIN + M.SnowMask = 0.0f; +#else + M.SnowMask = 1.0f; +#endif + + O.Velocity = I.hpos_curr.xy / I.hpos_curr.w - I.hpos_old.xy / I.hpos_old.w; + +#ifndef USE_LENGTH_BUFFER + GbufferPack(O, M); +#else + float4 LightColor = float4(L_sun_color.xyz, 0.5f); + + M.Sun = saturate(M.Sun * 2.0f); + M.Color.xyz = PushGamma(saturate(M.Color.xyz)); + + float ViewLength = length(M.Point); + float3 View = M.Point.xyz * rcp(ViewLength); + +#ifndef USE_PBR + float3 F0 = 0.0f; +#else + float3 F0 = 0.04f; +#endif + + float3 Light = M.Sun * DirectLight(LightColor, mul((float3x3)m_V, L_sun_dir_w.xyz), M.Normal, View, M.Color.xyz, M.Metalness, M.Roughness, F0); + float3 Ambient = PushGamma(M.AO) * AmbientLighting(View, M.Normal, M.Color.xyz, M.Metalness, M.Roughness, M.Hemi, F0); + + Light += DirectLight(float4(Lmap.xyz, 0.5f), View, M.Normal, View, M.Color.xyz, M.Metalness, M.Roughness, F0); + + O.Color.xyz = Ambient + Light; + O.Color.w = 1.0f; + + float Fog = PushGamma(saturate(ViewLength * fog_params.w + fog_params.x)); + O.Color = lerp(O.Color, PushGamma(fog_color), Fog); + + O.Velocity = I.hpos_curr.xy / I.hpos_curr.w - I.hpos_old.xy / I.hpos_old.w; + O.Reactive = O.Color.w * 0.9f; + + O.Color.w = ViewLength; + O.Color.xyz *= rcp(1.0f + O.Color.xyz); +#endif +} + diff --git a/gamedata/shaders/d3d11/deffer_lod.vs.hlsl b/gamedata/shaders/d3d11/deffer_lod.vs.hlsl new file mode 100644 index 0000000..673191f --- /dev/null +++ b/gamedata/shaders/d3d11/deffer_lod.vs.hlsl @@ -0,0 +1,88 @@ +#include "common.hlsli" + +cbuffer LodConstants +{ + float3x4 m_xform; + float3x4 m_xform_v; + + float4 consts; + float4 wind; + float4 wave; + + float4 consts_old; + float4 wave_old; + float4 wind_old; + + float4 c_scale; + float4 c_bias; + + float2 c_sun; +} + +void main(in v_tree I, out p_bumped_new O) +{ + float4 pos = float4(mul(m_xform, I.P).xyz, 1.0); + float4 pos_old = pos; + + float2 tc = I.tc.xy * consts.xy; + float sun = I.Nh.w * c_sun.x + c_sun.y; + float hemi = I.Nh.w * c_scale.w + c_bias.w; + +#ifdef USE_LENGTH_BUFFER + O.lmap = I.Nh.w * c_scale.xyz + c_bias.xyz; +#endif + +#ifdef USE_TREEWAVE + float base = m_xform._24; + float H = pos.y - base; + + float dp = calc_cyclic(wave.w + dot(pos.xyz, wave.xyz)); + float frac = I.tc.z * consts.x; + float inten = H * dp; + + pos.xz += calc_xz_wave(wind.xz * inten, frac); + + float dp_old = calc_cyclic(wave_old.w + dot(pos_old.xyz, wave_old.xyz)); + float frac_old = I.tc.z * consts_old.x; + float inten_old = H * dp_old; + + pos_old.xz += calc_xz_wave(wind_old.xz * inten_old, frac_old); +#endif + + float3 Pe = mul(m_V, pos); + + O.tcdh = float4(tc.xy, hemi, sun); + O.position = float4(Pe, 1.0f); + + float3 N = unpack_bx4(unpack_D3DCOLOR(I.Nh).xyz); + +#if defined(USE_BUMP) || defined(USE_TDETAIL_BUMP) + float3 T = unpack_bx4(unpack_D3DCOLOR(I.T).xyz); + float3 B = unpack_bx4(unpack_D3DCOLOR(I.B).xyz); + + float3x3 xform = mul((float3x3)m_xform_v, float3x3( + T.x, B.x, N.x, + T.y, B.y, N.y, + T.z, B.z, N.z)); + + O.M1 = xform[0]; + O.M2 = xform[1]; + O.M3 = xform[2]; +#else + N = mul((float3x3)m_xform_v, N); + + O.M1 = N.xxx; + O.M2 = N.yyy; + O.M3 = N.zzz; +#endif + + O.hpos = mul(m_VP, pos); + + O.hpos_curr = O.hpos; + O.hpos_old = mul(m_VP_old, pos_old); + + O.hpos.xy += m_taa_jitter.xy * O.hpos.w; + + O.snow_mask = normalize(mul(m_xform, N)).y; +} + diff --git a/gamedata/shaders/d3d11/deffer_model.vs.hlsl b/gamedata/shaders/d3d11/deffer_model.vs.hlsl new file mode 100644 index 0000000..54894f9 --- /dev/null +++ b/gamedata/shaders/d3d11/deffer_model.vs.hlsl @@ -0,0 +1,81 @@ +#include "common.hlsli" +#include "skin.hlsli" + +void skinned_main(in v_model I, out p_bumped_new O) +{ + float3 Nw = mul((float3x3)m_W, (float3)I.N); + float3 hc_pos = (float3)hemi_cube_pos_faces; + float3 hc_neg = (float3)hemi_cube_neg_faces; + float3 hc_mixed = (Nw < 0.0f) ? -hc_neg : hc_pos; + float hemi_val = saturate(dot(hc_mixed, Nw)); + float3 Pe = mul(m_WV, I.P); + + O.tcdh = float4(I.tc.xy, hemi_val, L_material.y); + O.position = float4(Pe, 1.0f); + + float3 N = I.N * 2.0f; + +#if defined(USE_BUMP) || defined(USE_TDETAIL_BUMP) + float3 T = I.T * 2.0f; + float3 B = I.B * 2.0f; + + float3x3 xform = mul((float3x3)m_WV, float3x3( + T.x, B.x, N.x, + T.y, B.y, N.y, + T.z, B.z, N.z)); + + O.M1 = xform[0]; + O.M2 = xform[1]; + O.M3 = xform[2]; +#else + N = mul((float3x3)m_WV, N); + + O.M1 = N.xxx; + O.M2 = N.yyy; + O.M3 = N.zzz; +#endif + + O.hpos = mul(m_WVP, I.P); + + O.hpos_curr = O.hpos; + O.hpos_old = mul(m_WVP_old, I.P_old); + + O.hpos.xy += m_taa_jitter.xy * O.hpos.w; + + // Для НПС раскомментировать (не рекомендую) + // O.snow_mask = normalize(mul((float3x3)m_W, N)).y; + O.snow_mask = 0.0f; +} + +#if defined(SKIN_0) +void main(in v_model_skinned_0 I, out p_bumped_new O) +{ + skinned_main(skinning_0(I), O); +} +#elif defined(SKIN_1) +void main(in v_model_skinned_1 I, out p_bumped_new O) +{ + skinned_main(skinning_1(I), O); +} +#elif defined(SKIN_2) +void main(in v_model_skinned_2 I, out p_bumped_new O) +{ + skinned_main(skinning_2(I), O); +} +#elif defined(SKIN_3) +void main(in v_model_skinned_3 I, out p_bumped_new O) +{ + skinned_main(skinning_3(I), O); +} +#elif defined(SKIN_4) +void main(in v_model_skinned_4 I, out p_bumped_new O) +{ + skinned_main(skinning_4(I), O); +} +#else +void main(in v_model I, out p_bumped_new O) +{ + skinned_main(I, O); +} +#endif + diff --git a/gamedata/shaders/d3d11/deffer_particle.ps.hlsl b/gamedata/shaders/d3d11/deffer_particle.ps.hlsl new file mode 100644 index 0000000..9c94178 --- /dev/null +++ b/gamedata/shaders/d3d11/deffer_particle.ps.hlsl @@ -0,0 +1,15 @@ +#include "common.hlsli" +#include "sload.hlsli" + +struct p_particle +{ + float4 color : COLOR0; +}; + +float4 main(p_particle II) : SV_Target0 +{ + discard; + return II.color; +} + +// THIS SHADER SHOD BE DELEATED OR FIXED diff --git a/gamedata/shaders/d3d11/deffer_particle.vs.hlsl b/gamedata/shaders/d3d11/deffer_particle.vs.hlsl new file mode 100644 index 0000000..0f2db82 --- /dev/null +++ b/gamedata/shaders/d3d11/deffer_particle.vs.hlsl @@ -0,0 +1,24 @@ +#include "common.hlsli" + +struct vv +{ + float4 P : POSITION; + float2 tc : TEXCOORD0; + float4 c : COLOR0; +}; + +struct v2p_particle +{ + float4 color : COLOR0; + float4 hpos : SV_POSITION; +}; + +void main(in vv I, out v2p_particle pp) +{ + pp.color = I.c; + + pp.hpos = mul(m_WVP, I.P); + pp.hpos.xy += m_taa_jitter.xy * pp.hpos.w; +} + +// THIS SHADER SHOD BE DELEATED OR FIXED \ No newline at end of file diff --git a/gamedata/shaders/d3d11/depth_downs.ps.hlsl b/gamedata/shaders/d3d11/depth_downs.ps.hlsl new file mode 100644 index 0000000..b2ca43c --- /dev/null +++ b/gamedata/shaders/d3d11/depth_downs.ps.hlsl @@ -0,0 +1,28 @@ +#include "common.hlsli" + +struct _input +{ + float4 tc0 : TEXCOORD0; // tc.xy, tc.w = tonemap scale + float2 tcJ : TEXCOORD1; // jitter coords + float4 pos2d : SV_POSITION; +}; + +uniform float4 scaled_screen_res; + +float4 main(_input I) : SV_Target0 +{ + float4 Depth; + +#ifndef SM_5 + Depth.x = s_position.SampleLevel(smp_nofilter, I.tc0.xy, int2(1, 0), 0).x; + Depth.y = s_position.SampleLevel(smp_nofilter, I.tc0.xy, int2(1, 1), 0).x; + Depth.z = s_position.SampleLevel(smp_nofilter, I.tc0.xy, int2(0, 1), 0).x; + Depth.w = s_position.SampleLevel(smp_nofilter, I.tc0.xy, int2(0, 0), 0).x; +#else // !SM_5 + Depth = s_position.GatherRed(smp_nofilter, I.tc0.xy + 0.5f * scaled_screen_res.zw); +#endif // SM_5 + + Depth = depth_unpack.x * rcp(Depth - depth_unpack.y); + return min(min(Depth.x, Depth.y), min(Depth.z, Depth.w)); +} + diff --git a/gamedata/shaders/d3d11/details_lod.lua b/gamedata/shaders/d3d11/details_lod.lua new file mode 100644 index 0000000..725a6cc --- /dev/null +++ b/gamedata/shaders/d3d11/details_lod.lua @@ -0,0 +1,21 @@ +function pass_setup_common(shader, t_base, t_second, t_detail) + shader:blend(false, blend.one, blend.zero) + :zb(true, true) + :fog(false) + + :dx10stencil(true, cmp_func.always, + 255, 127, + stencil_op.keep, stencil_op.replace, stencil_op.keep) + :dx10stencil_ref(1) + + shader:dx10texture("s_base", t_base) + shader:dx10texture("s_hemi", t_base .. "_nm") + + shader:dx10sampler("smp_base"); + shader:dx10sampler("smp_linear"); +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("lod", "lod") + details_lod.pass_setup_common(shader, t_base, t_second, t_detail) +end diff --git a/gamedata/shaders/d3d11/distort.lua b/gamedata/shaders/d3d11/distort.lua new file mode 100644 index 0000000..e6b62d3 --- /dev/null +++ b/gamedata/shaders/d3d11/distort.lua @@ -0,0 +1,10 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("stub_notransform_t", "distort") + :fog(false) + :zb(false, false) + + shader:dx10texture("s_base", "$user$generic") + shader:dx10texture("s_distort", "$user$generic1") + + shader:dx10sampler("smp_rtlinear"); +end diff --git a/gamedata/shaders/d3d11/distort.ps.hlsl b/gamedata/shaders/d3d11/distort.ps.hlsl new file mode 100644 index 0000000..eeed4c4 --- /dev/null +++ b/gamedata/shaders/d3d11/distort.ps.hlsl @@ -0,0 +1,19 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc : TEXCOORD0; // base & distort +}; + +Texture2D s_distort; + +// Pixel +float4 main(v2p I) : SV_Target +{ + float2 distort = s_distort.Sample(smp_rtlinear, I.tc).xy; + float2 offset = (distort - 127.0f / 255.0f) * def_distort; + float3 image = s_base.Sample(smp_rtlinear, I.tc + offset).xyz; + + return float4(image, 1); +} + diff --git a/gamedata/shaders/d3d11/dof.hlsli b/gamedata/shaders/d3d11/dof.hlsli new file mode 100644 index 0000000..31f3535 --- /dev/null +++ b/gamedata/shaders/d3d11/dof.hlsli @@ -0,0 +1,80 @@ +#ifndef DOF_H_INCLUDED +#define DOF_H_INCLUDED + +uniform float4 screen_res; + +#ifndef USE_DOF + +float3 dof(float2 center) +{ + float3 img = s_image.Sample(smp_rtlinear, center).xyz; + return img; +} + +#else // USE_DOF + +// x - near y - focus z - far w - sky distance +float4 dof_params; +float3 dof_kernel; // x,y - resolution pre-scaled z - just kernel size + +float DOFFactor(float depth) +{ + float dist_to_focus = depth - dof_params.y; + float blur_far = saturate(dist_to_focus * rcp(dof_params.z - dof_params.y)); + float blur_near = saturate(dist_to_focus * rcp(dof_params.x - dof_params.y)); + float blur = blur_near + blur_far; + blur *= blur; + return blur; +} + +float sampleDepth(float2 center) +{ + float P = s_position.SampleLevel(smp_nofilter, center, 0).x; + return P > 0.9999f ? dof_params.w : (depth_unpack.x * rcp(P - depth_unpack.y)); +} + +#define MAXCOF 7.h +#define EPSDEPTH 0.0001h + +float3 dof(float2 center) +{ + // Scale tap offsets based on render target size + float depth = sampleDepth(center); + float blur = DOFFactor(depth); + float2 scale = 0.5f * screen_res.zw * dof_kernel.z * blur; + + // poisson + float2 o[12]; + o[0] = float2(-0.326212f, -0.405810f) * scale; + o[1] = float2(-0.840144f, -0.073580f) * scale; + o[2] = float2(-0.695914f, 0.457137f) * scale; + o[3] = float2(-0.203345f, 0.620716f) * scale; + o[4] = float2(0.962340f, -0.194983f) * scale; + o[5] = float2(0.473434f, -0.480026f) * scale; + o[6] = float2(0.519456f, 0.767022f) * scale; + o[7] = float2(0.185461f, -0.893124f) * scale; + o[8] = float2(0.507431f, 0.064425f) * scale; + o[9] = float2(0.896420f, 0.412458f) * scale; + o[10] = float2(-0.321940f, -0.932615f) * scale; + o[11] = float2(-0.791559f, -0.597710f) * scale; + + float3 sum = s_image.Sample(smp_nofilter, center).xyz; + float contrib = 1.h; + + [unroll] + for (int i = 0; i < 12; i++) + { + float2 tap = center + o[i]; + float3 tap_color = s_image.Sample(smp_nofilter, tap).xyz; + float tap_depth = sampleDepth(tap); + float tap_contrib = DOFFactor(tap_depth); + sum += tap_color * tap_contrib; + contrib += tap_contrib; + } + + return float3(sum / contrib); +} + +#endif // USE_DOF +#endif // DOF_H_INCLUDED + diff --git a/gamedata/shaders/d3d11/dumb.ps.hlsl b/gamedata/shaders/d3d11/dumb.ps.hlsl new file mode 100644 index 0000000..035a7c2 --- /dev/null +++ b/gamedata/shaders/d3d11/dumb.ps.hlsl @@ -0,0 +1,7 @@ +#include "common.hlsli" + +// Pixel +float4 main() : SV_Target +{ + return 0; +} diff --git a/gamedata/shaders/d3d11/dumb.vs.hlsl b/gamedata/shaders/d3d11/dumb.vs.hlsl new file mode 100644 index 0000000..65e7977 --- /dev/null +++ b/gamedata/shaders/d3d11/dumb.vs.hlsl @@ -0,0 +1,11 @@ +#include "common.hlsli" + +// Vertex +v2p_dumb main(v_dumb I) +{ + v2p_dumb O; + + O.HPos = mul(m_WVP, I.P); + + return O; +} diff --git a/gamedata/shaders/d3d11/editor.vs.hlsl b/gamedata/shaders/d3d11/editor.vs.hlsl new file mode 100644 index 0000000..610e6c7 --- /dev/null +++ b/gamedata/shaders/d3d11/editor.vs.hlsl @@ -0,0 +1,24 @@ +#include "common.hlsli" + +struct vf +{ + float4 C : COLOR0; + float4 P : POSITION; +}; + +struct v2p +{ + float4 C : COLOR0; + float4 P : SV_POSITION; +}; + +uniform float4 tfactor; +v2p main(vf i) +{ + v2p o; + + o.P = mul(m_WVP, i.P); // xform, input in world coords + o.C = tfactor * i.C; + + return o; +} diff --git a/gamedata/shaders/d3d11/effects_bullet_tracer.lua b/gamedata/shaders/d3d11/effects_bullet_tracer.lua new file mode 100644 index 0000000..c403223 --- /dev/null +++ b/gamedata/shaders/d3d11/effects_bullet_tracer.lua @@ -0,0 +1,7 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("stub_default", "stub_srgb") + :zb(true, false) + :blend(true, blend.one, blend.one) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") +end diff --git a/gamedata/shaders/d3d11/effects_flare.lua b/gamedata/shaders/d3d11/effects_flare.lua new file mode 100644 index 0000000..eb0eb1b --- /dev/null +++ b/gamedata/shaders/d3d11/effects_flare.lua @@ -0,0 +1,7 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("effects_sun", "stub_default") + :blend(true, blend.srcalpha, blend.one) + :zb(false, false) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") +end diff --git a/gamedata/shaders/d3d11/effects_lightning.lua b/gamedata/shaders/d3d11/effects_lightning.lua new file mode 100644 index 0000000..ae9945e --- /dev/null +++ b/gamedata/shaders/d3d11/effects_lightning.lua @@ -0,0 +1,10 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("stub_default", "stub_srgb") + + :zb(true, false) + :blend(true, blend.srcalpha, blend.one) + :aref(true, 2) + + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") +end diff --git a/gamedata/shaders/d3d11/effects_lightplanes.lua b/gamedata/shaders/d3d11/effects_lightplanes.lua new file mode 100644 index 0000000..5b61962 --- /dev/null +++ b/gamedata/shaders/d3d11/effects_lightplanes.lua @@ -0,0 +1,12 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("base_lplanes", "base_lplanes") + + :fog(false) + :zb(true, false) + :blend(true, blend.srcalpha, blend.one) + :aref(true, 0) + :sorting(2, false) + + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") +end diff --git a/gamedata/shaders/d3d11/effects_rain.lua b/gamedata/shaders/d3d11/effects_rain.lua new file mode 100644 index 0000000..f731843 --- /dev/null +++ b/gamedata/shaders/d3d11/effects_rain.lua @@ -0,0 +1,10 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("stub_default", "stub_srgb") + + :zb(true, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") +end diff --git a/gamedata/shaders/d3d11/effects_sun.lua b/gamedata/shaders/d3d11/effects_sun.lua new file mode 100644 index 0000000..f26c9da --- /dev/null +++ b/gamedata/shaders/d3d11/effects_sun.lua @@ -0,0 +1,9 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("effects_sun", "stub_srgb") + + :blend(true, blend.srcalpha, blend.one) + :zb(true, false) + + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") +end diff --git a/gamedata/shaders/d3d11/effects_sun.vs.hlsl b/gamedata/shaders/d3d11/effects_sun.vs.hlsl new file mode 100644 index 0000000..6b76610 --- /dev/null +++ b/gamedata/shaders/d3d11/effects_sun.vs.hlsl @@ -0,0 +1,15 @@ +#include "common.hlsli" + +// Vertex +v2p_TL main(v_TL I) +{ + v2p_TL O; + + // O.HPos = I.P; + O.HPos = mul(m_VP, I.P); // xform, input in world coords + O.HPos.z = O.HPos.w; + O.Tex0 = I.Tex0; + O.Color = I.Color.bgra; // swizzle vertex colour + + return O; +} diff --git a/gamedata/shaders/d3d11/effects_wallmark.lua b/gamedata/shaders/d3d11/effects_wallmark.lua new file mode 100644 index 0000000..218141f --- /dev/null +++ b/gamedata/shaders/d3d11/effects_wallmark.lua @@ -0,0 +1,8 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("effects_wallmark", "stub_default_ma") + :blend(true, blend.destcolor, blend.srccolor) + :zb(true, false) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_rtlinear") + shader:dx10color_write_enable(true, true, true, false) +end diff --git a/gamedata/shaders/d3d11/effects_wallmark.vs.hlsl b/gamedata/shaders/d3d11/effects_wallmark.vs.hlsl new file mode 100644 index 0000000..7e805d3 --- /dev/null +++ b/gamedata/shaders/d3d11/effects_wallmark.vs.hlsl @@ -0,0 +1,15 @@ +#include "common.hlsli" + +// Vertex +v2p_TL main(v_TL I) +{ + v2p_TL O; + + O.HPos = mul(m_VP, I.P); + O.Tex0 = I.Tex0; + O.Color = I.Color.bgra; // swizzle vertex colour + + O.HPos.xy += m_taa_jitter.xy * O.HPos.w; + + return O; +} diff --git a/gamedata/shaders/d3d11/effects_wallmarkblend.lua b/gamedata/shaders/d3d11/effects_wallmarkblend.lua new file mode 100644 index 0000000..f35743c --- /dev/null +++ b/gamedata/shaders/d3d11/effects_wallmarkblend.lua @@ -0,0 +1,13 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("wmark", "simple") + :sorting(1, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :zb(true, false) + :fog(false) + :wmark(true) + -- shader:sampler ("s_base") :texture (t_base) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_rtlinear") + shader:dx10color_write_enable(true, true, true, false) +end diff --git a/gamedata/shaders/d3d11/effects_wallmarkmult.lua b/gamedata/shaders/d3d11/effects_wallmarkmult.lua new file mode 100644 index 0000000..b4338b6 --- /dev/null +++ b/gamedata/shaders/d3d11/effects_wallmarkmult.lua @@ -0,0 +1,13 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("wmark", "simple") + :sorting(1, false) + :blend(true, blend.destcolor, blend.srccolor) + :aref(true, 0) + :zb(true, false) + :fog(false) + :wmark(true) + -- shader:sampler ("s_base") :texture (t_base) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_rtlinear") + shader:dx10color_write_enable(true, true, true, false) +end diff --git a/gamedata/shaders/d3d11/effects_wallmarkset.lua b/gamedata/shaders/d3d11/effects_wallmarkset.lua new file mode 100644 index 0000000..f2fd129 --- /dev/null +++ b/gamedata/shaders/d3d11/effects_wallmarkset.lua @@ -0,0 +1,12 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("wmark", "simple") + :sorting(1, false) + :aref(false, 0) + :zb(true, true) + :fog(false) + :wmark(true) + -- shader:sampler ("s_base") :texture (t_base) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_rtlinear") + shader:dx10color_write_enable(true, true, true, false) +end diff --git a/gamedata/shaders/d3d11/effects_water.lua b/gamedata/shaders/d3d11/effects_water.lua new file mode 100644 index 0000000..0258c45 --- /dev/null +++ b/gamedata/shaders/d3d11/effects_water.lua @@ -0,0 +1,62 @@ +local tex_base = "water\\water_water" +local tex_nmap = "water\\water_normal" +local tex_dist = "water\\water_dudv" +local tex_caustic = "water\\water_caustic" + +local tex_env0 = "$user$sky0" +local tex_env1 = "$user$sky1" + +local tex_leaves = "water\\water_foam" + +function normal(shader, t_base, t_second, t_detail) + shader:begin("water", "water") + :sorting(2, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :distort(true) + :fog(true) + + shader:dx10texture("s_base", tex_base) + + shader:dx10texture("s_nmap", tex_nmap) + + shader:dx10texture("s_env0", tex_env0) + shader:dx10texture("s_env1", tex_env1) + + shader:dx10texture("s_env", "$user$sky") + + shader:dx10texture("env_s0", "$user$env_s0") + shader:dx10texture("env_s1", "$user$env_s1") + + shader:dx10texture("s_accumulator", "$user$accum") + shader:dx10texture("s_position", "$user$position") + shader:dx10texture("s_velocity", "$user$velocity") + shader:dx10texture("s_image", "$user$generic") + + shader:dx10texture("s_material", "$user$material") + + shader:dx10texture("s_leaves", tex_leaves) + shader:dx10texture("s_caustic", tex_caustic) + + shader:dx10sampler("smp_base") + shader:dx10sampler("smp_nofilter") + shader:dx10sampler("smp_rtlinear") +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("water", "waterd") + :sorting(2, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + + shader:dx10color_write_enable(true, true, true, false) + + shader:dx10texture("s_base", tex_base) + shader:dx10texture("s_distort", tex_dist) + shader:dx10texture("s_position", "$user$position") + + shader:dx10sampler("smp_base") + shader:dx10sampler("smp_nofilter") +end diff --git a/gamedata/shaders/d3d11/effects_water_puddles.lua b/gamedata/shaders/d3d11/effects_water_puddles.lua new file mode 100644 index 0000000..9d99062 --- /dev/null +++ b/gamedata/shaders/d3d11/effects_water_puddles.lua @@ -0,0 +1,36 @@ +local tex_base = "water\\water_water" +local tex_nmap = "water\\water_normal" + +local tex_env0 = "$user$sky0" +local tex_env1 = "$user$sky1" + +function normal(shader, t_base, t_second, t_detail) + shader:begin("water_puddles", "water_puddles") + :sorting(2, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(true) + + shader:dx10texture("s_base", tex_base) + + shader:dx10texture("s_nmap", tex_nmap) + + shader:dx10texture("s_env0", tex_env0) + shader:dx10texture("s_env1", tex_env1) + + shader:dx10texture("s_env", "$user$sky") + + shader:dx10texture("env_s0", "$user$env_s0") + shader:dx10texture("env_s1", "$user$env_s1") + + shader:dx10texture("s_accumulator", "$user$accum") + shader:dx10texture("s_position", "$user$position") + shader:dx10texture("s_velocity", "$user$velocity") + shader:dx10texture("s_image", "$user$generic") + + shader:dx10texture("s_material", "$user$material") + + shader:dx10sampler("smp_base") + shader:dx10sampler("smp_nofilter") + shader:dx10sampler("smp_rtlinear") +end \ No newline at end of file diff --git a/gamedata/shaders/d3d11/effects_waterryaska.lua b/gamedata/shaders/d3d11/effects_waterryaska.lua new file mode 100644 index 0000000..a4cdb35 --- /dev/null +++ b/gamedata/shaders/d3d11/effects_waterryaska.lua @@ -0,0 +1,62 @@ +local tex_base = "water\\water_ryaska1" +local tex_nmap = "water\\water_normal" +local tex_dist = "water\\water_dudv" +local tex_caustic = "water\\water_caustic" + +local tex_env0 = "$user$sky0" +local tex_env1 = "$user$sky1" + +local tex_leaves = "water\\water_foam" + +function normal(shader, t_base, t_second, t_detail) + shader:begin("water", "water") + :sorting(2, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :distort(true) + :fog(true) + + shader:dx10texture("s_base", tex_base) + + shader:dx10texture("s_nmap", tex_nmap) + + shader:dx10texture("s_env0", tex_env0) + shader:dx10texture("s_env1", tex_env1) + + shader:dx10texture("s_env", "$user$sky") + + shader:dx10texture("env_s0", "$user$env_s0") + shader:dx10texture("env_s1", "$user$env_s1") + + shader:dx10texture("s_accumulator", "$user$accum") + shader:dx10texture("s_position", "$user$position") + shader:dx10texture("s_velocity", "$user$velocity") + shader:dx10texture("s_image", "$user$generic") + + shader:dx10texture("s_material", "$user$material") + + shader:dx10texture("s_leaves", tex_leaves) + shader:dx10texture("s_caustic", tex_caustic) + + shader:dx10sampler("smp_base") + shader:dx10sampler("smp_nofilter") + shader:dx10sampler("smp_rtlinear") +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("water", "waterd") + :sorting(2, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + + shader:dx10color_write_enable(true, true, true, false) + + shader:dx10texture("s_base", tex_base) + shader:dx10texture("s_distort", tex_dist) + shader:dx10texture("s_position", "$user$position") + + shader:dx10sampler("smp_base") + shader:dx10sampler("smp_nofilter") +end diff --git a/gamedata/shaders/d3d11/effects_waterstuden.lua b/gamedata/shaders/d3d11/effects_waterstuden.lua new file mode 100644 index 0000000..9071bbf --- /dev/null +++ b/gamedata/shaders/d3d11/effects_waterstuden.lua @@ -0,0 +1,62 @@ +local tex_base = "water\\water_studen" +local tex_nmap = "water\\water_normal" +local tex_dist = "water\\water_dudv" +local tex_caustic = "water\\water_caustic" + +local tex_env0 = "$user$sky0" +local tex_env1 = "$user$sky1" + +local tex_leaves = "water\\water_foam" + +function normal(shader, t_base, t_second, t_detail) + shader:begin("water", "water") + :sorting(2, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :distort(true) + :fog(true) + + shader:dx10texture("s_base", tex_base) + + shader:dx10texture("s_nmap", tex_nmap) + + shader:dx10texture("s_env0", tex_env0) + shader:dx10texture("s_env1", tex_env1) + + shader:dx10texture("s_env", "$user$sky") + + shader:dx10texture("env_s0", "$user$env_s0") + shader:dx10texture("env_s1", "$user$env_s1") + + shader:dx10texture("s_accumulator", "$user$accum") + shader:dx10texture("s_position", "$user$position") + shader:dx10texture("s_velocity", "$user$velocity") + shader:dx10texture("s_image", "$user$generic") + + shader:dx10texture("s_material", "$user$material") + + shader:dx10texture("s_leaves", tex_leaves) + shader:dx10texture("s_caustic", tex_caustic) + + shader:dx10sampler("smp_base") + shader:dx10sampler("smp_nofilter") + shader:dx10sampler("smp_rtlinear") +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("water", "waterd") + :sorting(2, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + + shader:dx10color_write_enable(true, true, true, false) + + shader:dx10texture("s_base", tex_base) + shader:dx10texture("s_distort", tex_dist) + shader:dx10texture("s_position", "$user$position") + + shader:dx10sampler("smp_base") + shader:dx10sampler("smp_nofilter") +end diff --git a/gamedata/shaders/d3d11/fluid3d_stub.lua b/gamedata/shaders/d3d11/fluid3d_stub.lua new file mode 100644 index 0000000..2c376d8 --- /dev/null +++ b/gamedata/shaders/d3d11/fluid3d_stub.lua @@ -0,0 +1,10 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("stub_default", "stub_default") + -- shader:begin ("stub_default","test","stub_default") + :zb(true, false) + :blend(true, blend.one, blend.one) + :sorting(2, true) + + shader:dx10texture("s_base", "water\\water_ryaska1") + shader:dx10sampler("smp_base") +end diff --git a/gamedata/shaders/d3d11/fluid_advect.ps.hlsl b/gamedata/shaders/d3d11/fluid_advect.ps.hlsl new file mode 100644 index 0000000..e7eb671 --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_advect.ps.hlsl @@ -0,0 +1,14 @@ +#include "fluid_common.hlsli" + +// Pixel +float4 main(p_fluidsim input) : SV_Target +{ + if (IsNonEmptyCell(input.texcoords.xyz)) + { + return 0; + } + + float3 npos = GetAdvectedPosTexCoords(input); + + return Texture_color.SampleLevel(samLinear, npos, 0) * modulate; +} diff --git a/gamedata/shaders/d3d11/fluid_advect_bfecc.ps.hlsl b/gamedata/shaders/d3d11/fluid_advect_bfecc.ps.hlsl new file mode 100644 index 0000000..af8ef9a --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_advect_bfecc.ps.hlsl @@ -0,0 +1,32 @@ +#include "fluid_common.hlsli" + +////////////////////////////////////////////////////////////////////////////////////////// +// Pixel +float4 main(p_fluidsim input) : SV_Target +{ + if (IsNonEmptyCell(input.texcoords.xyz)) + { + return 0; + } + + float3 npos = GetAdvectedPosTexCoords(input); + + float4 r; + float3 diff = abs(floatVolumeDim.xyz - input.cell0.xyz); + + // Must use regular semi-Lagrangian advection instead of BFECC at the volume boundaries + if ((diff.x > (floatVolumeDim.x - 4)) || (diff.y > (floatVolumeDim.y - 4)) || (diff.z > (floatVolumeDim.z - 4))) + { + r = Texture_color.SampleLevel(samLinear, npos, 0); + } + else + { + // Texture_color contains \phi^n; Texture_tempscalar contains \bar{\phi} + // (i.e.: the result of 1 forward advection step, followed by a backwards advection step) + r = 1.5f * Texture_color.SampleLevel(samLinear, npos, 0) - + 0.5f * Texture_tempscalar.SampleLevel(samLinear, npos, 0); + } + + r = saturate(r); + return r * modulate; +} diff --git a/gamedata/shaders/d3d11/fluid_advect_bfecc_temp.ps.hlsl b/gamedata/shaders/d3d11/fluid_advect_bfecc_temp.ps.hlsl new file mode 100644 index 0000000..6d2436b --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_advect_bfecc_temp.ps.hlsl @@ -0,0 +1,63 @@ +#include "fluid_common.hlsli" + +#define Texture_phi_n Texture_color +#define Texture_phi_n_hat Texture_tempscalar + +// Advect MCCormack + +// Pixel +float4 main(p_fluidsim input) : SV_Target +{ + if (IsNonEmptyCell(input.texcoords.xyz)) + { + return 0; + } + + // get advected new position + float3 npos = input.cell0 - timestep * forward * + Texture_velocity0.SampleLevel(samPointClamp, input.texcoords, 0).xyz; + + // convert new position to texture coordinates + float3 nposTC = float3(npos.x / textureWidth, npos.y / textureHeight, (npos.z + 0.5) / textureDepth); + + // find the texel corner closest to the semi-Lagrangian "particle" + float3 nposTexel = floor(npos + float3(0.5f, 0.5f, 0.5f)); + float3 nposTexelTC = float3(nposTexel.x / textureWidth, nposTexel.y / textureHeight, (nposTexel.z + 0.5) / textureDepth); + + // ht (float-texel) + float3 ht = float3(0.5f / textureWidth, 0.5f / textureHeight, 0.5f / textureDepth); + + // get the values of nodes that contribute to the interpolated value + // (texel centers are at float-integer locations) + float4 nodeValues[8]; + nodeValues[0] = Texture_phi_n.SampleLevel(samPointClamp, nposTexelTC + float3(-ht.x, -ht.y, -ht.z), 0); + nodeValues[1] = Texture_phi_n.SampleLevel(samPointClamp, nposTexelTC + float3(-ht.x, -ht.y, ht.z), 0); + nodeValues[2] = Texture_phi_n.SampleLevel(samPointClamp, nposTexelTC + float3(-ht.x, ht.y, -ht.z), 0); + nodeValues[3] = Texture_phi_n.SampleLevel(samPointClamp, nposTexelTC + float3(-ht.x, ht.y, ht.z), 0); + nodeValues[4] = Texture_phi_n.SampleLevel(samPointClamp, nposTexelTC + float3(ht.x, -ht.y, -ht.z), 0); + nodeValues[5] = Texture_phi_n.SampleLevel(samPointClamp, nposTexelTC + float3(ht.x, -ht.y, ht.z), 0); + nodeValues[6] = Texture_phi_n.SampleLevel(samPointClamp, nposTexelTC + float3(ht.x, ht.y, -ht.z), 0); + nodeValues[7] = Texture_phi_n.SampleLevel(samPointClamp, nposTexelTC + float3(ht.x, ht.y, ht.z), 0); + + // determine a valid range for the result + float4 phiMin = min(min(min(nodeValues[0], nodeValues[1]), nodeValues[2]), nodeValues[3]); + phiMin = min(min(min(min(phiMin, nodeValues[4]), nodeValues[5]), nodeValues[6]), nodeValues[7]); + + float4 phiMax = max(max(max(nodeValues[0], nodeValues[1]), nodeValues[2]), nodeValues[3]); + phiMax = max(max(max(max(phiMax, nodeValues[4]), nodeValues[5]), nodeValues[6]), nodeValues[7]); + + float4 r; + // Perform final MACCORMACK advection step: + // You can use point sampling and keep Texture_phi_n_1_hat + // r = Texture_phi_n_1_hat.SampleLevel( samPointClamp, input.texcoords, 0 ) + // OR use bilerp to avoid the need to keep a separate texture for phi_n_1_hat + r = Texture_phi_n.SampleLevel(samLinear, nposTC, 0) + 0.5 * (Texture_phi_n.SampleLevel(samPointClamp, input.texcoords, 0) - + Texture_phi_n_hat.SampleLevel(samPointClamp, input.texcoords, 0)); + + // clamp result to the desired range + r = max(min(r, phiMax), phiMin); + + float4 ret = r * modulate - k; + ret = clamp(ret, float4(0, 0, 0, 0), float4(5, 5, 5, 5)); + return ret; +} diff --git a/gamedata/shaders/d3d11/fluid_advect_temp.ps.hlsl b/gamedata/shaders/d3d11/fluid_advect_temp.ps.hlsl new file mode 100644 index 0000000..e4ab038 --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_advect_temp.ps.hlsl @@ -0,0 +1,15 @@ +#include "fluid_common.hlsli" + +// Pixel +float4 main(p_fluidsim input) : SV_Target +{ + if (IsNonEmptyCell(input.texcoords.xyz)) + { + return 0; + } + + float3 npos = GetAdvectedPosTexCoords(input); + float4 ret = Texture_color.SampleLevel(samLinear, npos, 0) * modulate - k; + ret = clamp(ret, float4(0, 0, 0, 0), float4(5, 5, 5, 5)); + return ret; +} diff --git a/gamedata/shaders/d3d11/fluid_advect_vel.ps.hlsl b/gamedata/shaders/d3d11/fluid_advect_vel.ps.hlsl new file mode 100644 index 0000000..d78d5ce --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_advect_vel.ps.hlsl @@ -0,0 +1,21 @@ +#include "fluid_common.hlsli" + +float GravityBuoyancy; + +// Pixel +float4 main(p_fluidsim input) : SV_Target +{ + float3 npos = GetAdvectedPosTexCoords(input); + + float4 Velocity = Texture_velocity0.SampleLevel(samLinear, npos, 0) * modulate; + +#ifdef USE_GRAVITY + + float Dencity = Texture_color.SampleLevel(samLinear, npos, 0).x; + Velocity.y += Dencity * GravityBuoyancy; + +#endif // USE_GRAVITY + + return Velocity; +} + diff --git a/gamedata/shaders/d3d11/fluid_advect_vel_g.ps.hlsl b/gamedata/shaders/d3d11/fluid_advect_vel_g.ps.hlsl new file mode 100644 index 0000000..4bf5e35 --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_advect_vel_g.ps.hlsl @@ -0,0 +1,3 @@ +#define USE_GRAVITY +#include "fluid_advect_vel.ps.hlsl" +// main diff --git a/gamedata/shaders/d3d11/fluid_array.gs.hlsl b/gamedata/shaders/d3d11/fluid_array.gs.hlsl new file mode 100644 index 0000000..9c885a5 --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_array.gs.hlsl @@ -0,0 +1,21 @@ +#include "fluid_common.hlsli" + +// Geometry +[maxvertexcount(3)] +void main(triangle v2g_fluidsim In[3], inout TriangleStream triStream) +{ + g2p_fluidsim Out; + // cell0.z of the first vertex in the triangle determines the destination slice index + Out.RTIndex = In[0].cell0.z; + for (int v = 0; v < 3; v++) + { + Out.pos = In[v].pos; + Out.cell0 = In[v].cell0; + Out.texcoords = In[v].texcoords; + Out.LR = In[v].LR; + Out.BT = In[v].BT; + Out.DU = In[v].DU; + triStream.Append(Out); + } + triStream.RestartStrip(); +} diff --git a/gamedata/shaders/d3d11/fluid_array_dyn_oobb.gs.hlsl b/gamedata/shaders/d3d11/fluid_array_dyn_oobb.gs.hlsl new file mode 100644 index 0000000..fae8dbc --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_array_dyn_oobb.gs.hlsl @@ -0,0 +1,20 @@ +#include "fluid_common.hlsli" + +// Geometry +[maxvertexcount(3)] +void main(triangle v2g_fluidsim_dyn_aabb In[3], inout TriangleStream triStream) +{ + g2p_fluidsim_dyn_aabb Out; + // cell0.z of the first vertex in the triangle determines the destination slice index + Out.RTIndex = In[0].cell0.z; + for (int v = 0; v < 3; v++) + { + Out.pos = In[v].pos; + Out.cell0 = In[v].cell0; + Out.velocity = In[v].velocity; + Out.clip0 = In[v].clip0; + Out.clip1 = In[v].clip1; + triStream.Append(Out); + } + triStream.RestartStrip(); +} diff --git a/gamedata/shaders/d3d11/fluid_array_oobb.gs.hlsl b/gamedata/shaders/d3d11/fluid_array_oobb.gs.hlsl new file mode 100644 index 0000000..ddd0659 --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_array_oobb.gs.hlsl @@ -0,0 +1,23 @@ +#include "fluid_common.hlsli" + +// Geometry +[maxvertexcount(3)] +void main(triangle v2g_fluidsim_clip In[3], inout TriangleStream triStream) +{ + g2p_fluidsim_clip Out; + // cell0.z of the first vertex in the triangle determines the destination slice index + Out.RTIndex = In[0].cell0.z; + for (int v = 0; v < 3; v++) + { + Out.pos = In[v].pos; + Out.cell0 = In[v].cell0; + Out.texcoords = In[v].texcoords; + Out.LR = In[v].LR; + Out.BT = In[v].BT; + Out.DU = In[v].DU; + Out.clip0 = In[v].clip0; + Out.clip1 = In[v].clip1; + triStream.Append(Out); + } + triStream.RestartStrip(); +} diff --git a/gamedata/shaders/d3d11/fluid_common.hlsli b/gamedata/shaders/d3d11/fluid_common.hlsli new file mode 100644 index 0000000..907b691 --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_common.hlsli @@ -0,0 +1,214 @@ +//-------------------------------------------------------------------------------------- +// Defines +//-------------------------------------------------------------------------------------- + +#define LEFTCELL float3(input.LR.x, input.texcoords.y, input.texcoords.z) +#define RIGHTCELL float3(input.LR.y, input.texcoords.y, input.texcoords.z) +#define BOTTOMCELL float3(input.texcoords.x, input.BT.x, input.texcoords.z) +#define TOPCELL float3(input.texcoords.x, input.BT.y, input.texcoords.z) +#define DOWNCELL float3(input.texcoords.x, input.texcoords.y, input.DU.x) +#define UPCELL float3(input.texcoords.x, input.texcoords.y, input.DU.y) + +// 1.73 - voxel diagonal length +#define BOX_EXPANSION 1.73 + +//-------------------------------------------------------------------------------------- +// Textures +//-------------------------------------------------------------------------------------- + +Texture3D Texture_velocity0; +Texture3D Texture_velocity1; +Texture3D Texture_color; +Texture3D Texture_obstacles; +Texture3D Texture_obstvelocity; +Texture3D Texture_pressure; +Texture3D Texture_tempscalar; +Texture3D Texture_tempvector; + +//-------------------------------------------------------------------------------------- +// Samplers +//-------------------------------------------------------------------------------------- + +sampler samPointClamp; +sampler samLinear; + +//-------------------------------------------------------------------------------------- +// Variables +//-------------------------------------------------------------------------------------- + +cbuffer FluidSimConfig +{ + float textureHeight; + float textureWidth; + float textureDepth; + + float modulate = 1.0; + float epsilon; + float timestep; + float forward = 1.0; + float4 floatVolumeDim; // Actually float3. We don't support float3 and float2 +} + +cbuffer AABBBounds +{ + float4 boxLBDcorner; // float3 + float4 boxRTUcorner; // float3 +} + +cbuffer EmitterParams +{ + float size; + float4 center; // Actually float3. We don't support float3 and float2 + float4 splatColor; +} + +cbuffer OOBBClipPlanes +{ + float4 OOBBClipPlane[6]; + // 0 - Top + // 1 - Bottom +} + +// For fire simulation. Fuel extinction speed. +static const float k = 0.006; + +///////////////////////////////////////////////////////////////// +// Structs + +///////////////////////////////////////////////////////////////// +// fluidsim +struct v_fluidsim +{ + float3 position : POSITION; // 2D slice vertex coordinates in clip space + float3 textureCoords0 : TEXCOORD; // 3D cell coordinates (x,y,z in 0-dimension range) +}; + +struct v2g_fluidsim +{ + float3 cell0 : TEXCOORD0; + float3 texcoords : TEXCOORD1; + float2 LR : TEXCOORD2; + float2 BT : TEXCOORD3; + float2 DU : TEXCOORD4; + float4 pos : SV_POSITION; +}; + +struct g2p_fluidsim +{ + float3 cell0 : TEXCOORD0; // 3D cell coordinates (x,y,z in 0-dimension range) + float3 texcoords : TEXCOORD1; // 3D cell texcoords (x,y,z in 0-1 range) + float2 LR : TEXCOORD2; // 3D cell texcoords for the Left and Right neighbors + float2 BT : TEXCOORD3; // 3D cell texcoords for the Bottom and Top neighbors + float2 DU : TEXCOORD4; // 3D cell texcoords for the Down and Up neighbors + float4 pos : SV_POSITION; // 2D slice vertex coordinates in homogenous clip space + uint RTIndex : SV_RenderTargetArrayIndex; // used to choose the destination slice +}; + +struct p_fluidsim +{ + float3 cell0 : TEXCOORD0; // 3D cell coordinates (x,y,z in 0-dimension range) + float3 texcoords : TEXCOORD1; // 3D cell texcoords (x,y,z in 0-1 range) + float2 LR : TEXCOORD2; // 3D cell texcoords for the Left and Right neighbors + float2 BT : TEXCOORD3; // 3D cell texcoords for the Bottom and Top neighbors + float2 DU : TEXCOORD4; // 3D cell texcoords for the Down and Up neighbors +}; + +///////////////////////////////////////////////////////////////// +// fluidsim_clip +// TODO: DX10: These structures are used for obstacle rendering. Remove unused fields. + +struct v2g_fluidsim_clip +{ + float3 cell0 : TEXCOORD0; + float3 texcoords : TEXCOORD1; + float2 LR : TEXCOORD2; + float2 BT : TEXCOORD3; + float2 DU : TEXCOORD4; + float3 clip0 : SV_ClipDistance0; + float3 clip1 : SV_ClipDistance1; + float4 pos : SV_POSITION; +}; + +struct g2p_fluidsim_clip +{ + float3 cell0 : TEXCOORD0; // 3D cell coordinates (x,y,z in 0-dimension range) + float3 texcoords : TEXCOORD1; // 3D cell texcoords (x,y,z in 0-1 range) + float2 LR : TEXCOORD2; // 3D cell texcoords for the Left and Right neighbors + float2 BT : TEXCOORD3; // 3D cell texcoords for the Bottom and Top neighbors + float2 DU : TEXCOORD4; // 3D cell texcoords for the Down and Up neighbors + float3 clip0 : SV_ClipDistance0; + float3 clip1 : SV_ClipDistance1; + float4 pos : SV_POSITION; // 2D slice vertex coordinates in homogenous clip space + uint RTIndex : SV_RenderTargetArrayIndex; // used to choose the destination slice +}; + +struct p_fluidsim_clip +{ + float3 cell0 : TEXCOORD0; // 3D cell coordinates (x,y,z in 0-dimension range) + float3 texcoords : TEXCOORD1; // 3D cell texcoords (x,y,z in 0-1 range) + float2 LR : TEXCOORD2; // 3D cell texcoords for the Left and Right neighbors + float2 BT : TEXCOORD3; // 3D cell texcoords for the Bottom and Top neighbors + float2 DU : TEXCOORD4; // 3D cell texcoords for the Down and Up neighbors + float3 clip0 : SV_ClipDistance0; + float3 clip1 : SV_ClipDistance1; +}; + +///////////////////////////////////////////////////////////////// +// fluidsim_clip +// TODO: DX10: These structures are used for obstacle rendering. Remove unused fields. + +struct v2g_fluidsim_dyn_aabb +{ + float3 cell0 : TEXCOORD0; + float3 velocity : TEXCOORD1; + float3 clip0 : SV_ClipDistance0; + float3 clip1 : SV_ClipDistance1; + float4 pos : SV_POSITION; +}; + +struct g2p_fluidsim_dyn_aabb +{ + float3 cell0 : TEXCOORD0; // 3D cell coordinates (x,y,z in 0-dimension range) + float3 velocity : TEXCOORD1; // speed of the point in local space + float3 clip0 : SV_ClipDistance0; + float3 clip1 : SV_ClipDistance1; + float4 pos : SV_POSITION; // 2D slice vertex coordinates in homogenous clip space + uint RTIndex : SV_RenderTargetArrayIndex; // used to choose the destination slice +}; + +struct p_fluidsim_dyn_aabb +{ + float3 cell0 : TEXCOORD0; // 3D cell coordinates (x,y,z in 0-dimension range) + float3 velocity : TEXCOORD1; + float3 clip0 : SV_ClipDistance0; + float3 clip1 : SV_ClipDistance1; +}; + +//-------------------------------------------------------------------------------------- +// Helper functions +//-------------------------------------------------------------------------------------- + +float4 GetObstVelocity(float3 cellTexCoords) +{ + return Texture_obstvelocity.SampleLevel(samPointClamp, cellTexCoords, 0); +} + +bool IsNonEmptyCell(float3 cellTexCoords) +{ + return (Texture_obstacles.SampleLevel(samPointClamp, cellTexCoords, 0).r > 0.0); +} + +bool IsBoundaryCell(float3 cellTexCoords) +{ + return (Texture_obstacles.SampleLevel(samPointClamp, cellTexCoords, 0).r > 0.9); +} + +float3 GetAdvectedPosTexCoords(p_fluidsim input) +{ + float3 pos = input.cell0; + + pos -= timestep * forward * + Texture_velocity0.SampleLevel(samPointClamp, input.texcoords, 0).xyz; + + return float3(pos.x / textureWidth, pos.y / textureHeight, (pos.z + 0.5) / textureDepth); +} diff --git a/gamedata/shaders/d3d11/fluid_common_render.hlsli b/gamedata/shaders/d3d11/fluid_common_render.hlsli new file mode 100644 index 0000000..f682569 --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_common_render.hlsli @@ -0,0 +1,344 @@ +//-------------------------------------------------------------------------------------- +// Defines +//-------------------------------------------------------------------------------------- +// #define OCCLUDED_PIXEL_RAYVALUE float4(1, 0, 0, 0) +// Use very large value for aplha to help edge detection +#define OCCLUDED_PIXEL_RAYVALUE float4(1, 0, 0, 100000) +#define NEARCLIPPED_PIXEL_RAYPOS float3(0, -1, 0) + +// Z for skybox is zero, so patch this in shader +#define Z_EPSILON 0.00001 +// Value for skybox depth +#define Z_MAX 100000 + +#pragma warning(disable : 4000) + +//-------------------------------------------------------------------------------------- +// Textures +//-------------------------------------------------------------------------------------- +Texture2D sceneDepthTex; +Texture3D colorTex; + +Texture2D rayDataTex; +Texture2D rayDataTexSmall; +Texture2D rayCastTex; +Texture2D edgeTex; +Texture2D jitterTex; + +Texture2D fireTransferFunction; + +//-------------------------------------------------------------------------------------- +// Samplers +//-------------------------------------------------------------------------------------- + +sampler samPointClamp; +sampler samLinearClamp; +sampler samRepeat; + +//-------------------------------------------------------------------------------------- +// Variables +//-------------------------------------------------------------------------------------- +// Set once per volume +// Use for all rendering passes +cbuffer FluidRenderConfig +{ + float RTWidth; + float RTHeight; + + float4 DiffuseLight; + float4 DepthUnpack; + + float4x4 WorldViewProjection; + float4x4 InvWorldViewProjection; + + float ZNear; + float ZFar; + + float4 gridDim; // float3 + float4 recGridDim; // float3 + float maxGridDim; + float gridScaleFactor = 1.0; + float4 eyeOnGrid; // float3 +} + +// static float edgeThreshold = 0.2; +// static float edgeThreshold = 0.1; +static float edgeThreshold = 0.01; + +static const bool g_bRaycastFilterTricubic = false; // true: tricubic; false: trilinear +// static const bool g_bRaycastFilterTricubic = true; // true: tricubic; false: trilinear + +#include "fluid_common_tricubic.hlsli" + +// Fire setup +static const float RednessFactor = 5.0f; +static const float fireAlphaMultiplier = 0.95f; +// static const float smokeAlphaMultiplier = 0.05f; +static const float smokeAlphaMultiplier = 0.5f; +// static const float smokeColorMultiplier = 2.00f; +static const float smokeColorMultiplier = 0.02f; + +//-------------------------------------------------------------------------------------- +// Structs +//-------------------------------------------------------------------------------------- +struct VS_INPUT +{ + float3 pos : POSITION; +}; + +struct PS_INPUT_RAYDATA_BACK +{ + float4 pos : SV_POSITION; + float depth : TEXCOORD0; +}; + +struct PS_INPUT_RAYDATA_FRONT +{ + float4 pos : SV_POSITION; + float3 posInGrid : POSITION; + float depth : TEXCOORD0; +}; + +struct PS_INPUT_RAYCAST +{ + float4 pos : SV_POSITION; + float3 posInGrid : POSITION; +}; + +struct VS_OUTPUT_EDGE +{ + // There's no textureUV11 because its weight is zero. + float4 position : SV_POSITION; // vertex position + float2 textureUV00 : TEXCOORD0; // kernel tap texture coords + float2 textureUV01 : TEXCOORD1; // kernel tap texture coords + float2 textureUV02 : TEXCOORD2; // kernel tap texture coords + float2 textureUV10 : TEXCOORD3; // kernel tap texture coords + float2 textureUV12 : TEXCOORD4; // kernel tap texture coords + float2 textureUV20 : TEXCOORD5; // kernel tap texture coords + float2 textureUV21 : TEXCOORD6; // kernel tap texture coords + float2 textureUV22 : TEXCOORD7; // kernel tap texture coords +}; + +//-------------------------------------------------------------------------------------- +// Functions +//-------------------------------------------------------------------------------------- + +float EdgeDetectScalar(float sx, float sy, float threshold) +{ + float dist = (sx * sx + sy * sy); + float e = (dist > threshold * ZFar) ? 1 : 0; + return e; +} + +/* +// We can select either back=to-front or front-to-back raycasting and blending. +// front-to-back may be slightly more expensive, but if the smoke is dense it allows +// early-out when the opacity gets saturated (close to 1.0), making it a bit cheaper +// +// Define BACK_TO_FRONT to use back-to-front raycasting +//#define BACK_TO_FRONT 1 +void DoSample(float weight, float3 O, inout float4 color ) +{ + // This value can be tuned to produce denser or thinner looking smoke + // Alternatively a transfer function could be used + #define OPACITY_MODULATOR 0.1 + + float3 texcoords; + float4 sample; + float t; + + texcoords = float3( O.x, 1 - O.y, O.z) ; +// sample = weight * colorTex.SampleLevel(samLinearClamp, texcoords, 0); +// sample = weight * abs(SampleTricubic(colorTex, texcoords)); +// sample = weight * abs(SampleTrilinear(colorTex, texcoords)); + sample = weight * abs(Sample(colorTex, texcoords)); + sample.a = (sample.r) * OPACITY_MODULATOR; + +#ifdef BACK_TO_FRONT // back-to-front blending + color.rgb = (1 - sample.a) * color.r + sample.a * sample.r; + color.a = (1 - sample.a) * color.a + sample.a; +#else // front-to-back blending + t = sample.a * (1.0-color.a); + color.rgb += t * sample.r; + color.a += t; +#endif + +} + +float4 Raycast( PS_INPUT_RAYCAST input ) +{ + float4 color = 0; + float4 rayData = rayDataTex.Sample(samLinearClamp, float2(input.pos.x/RTWidth,input.pos.y/RTHeight)); + + // Don't raycast if the starting position is negative + // (see use of OCCLUDED_PIXEL_RAYVALUE in PS_RAYDATA_FRONT) + if(rayData.x < 0) + return color; + + // If the front face of the box was clipped here by the near plane of the camera + // (see use of NEARCLIPPED_PIXEL_RAYPOS in PS_RAYDATA_BACK) + if(rayData.y < 0) + { + // Initialize the position of the fragment and adjust the depth + rayData.xyz = input.posInGrid; + rayData.w = rayData.w - ZNear; +// return float4 (1,0,0,saturate(rayData.w/5)); + } + + float3 rayOrigin = rayData.xyz; + float Offset = jitterTex.Sample( samRepeat, input.pos.xy / 256.0 ).r; + float rayLength = rayData.w; + + // Sample twice per voxel + float fSamples = ( rayLength / gridScaleFactor * maxGridDim ) * 2.0; + int nSamples = floor(fSamples); + float3 stepVec = normalize( (rayOrigin - eyeOnGrid) * gridDim ) * recGridDim * 0.5; + + float3 O = rayOrigin + stepVec*Offset; + +#ifdef BACK_TO_FRONT + // In back-to-front blending we start raycasting from the surface point and step towards the eye + O += fSamples * stepVec; + stepVec = -stepVec; +#endif + + for( int i=0; i 0.99 ) + break; +#endif + } + + // The last sample is weighted by the fractional part of the ray length in voxel + // space (fSamples), thus avoiding banding artifacts when the smoke is blended against the scene + if( i == nSamples ) + { + DoSample(frac(fSamples), O, color); + } + + return color; +} +*/ + +// #define RENDER_FIRE +void DoSample(float weight, float3 O, inout float4 color) +{ +// This value can be tuned to produce denser or thinner looking smoke +// Alternatively a transfer function could be used +#define OPACITY_MODULATOR 0.1 + + float3 texcoords; + texcoords = float3(O.x, 1 - O.y, O.z); + +#ifndef RENDER_FIRE + // render smoke with front to back blending + float t; + float4 sample = weight * abs(Sample(colorTex, texcoords)); + sample.a = (sample.r) * 0.1; + t = sample.a * (1.0 - color.a); + color.rgb += t * sample.r; + color.a += t; +#else // RENDER_FIRE + // render fire and smoke with back to front blending + + // dont render the area below where the fire originates + // if(O.z < OBSTACLE_MAX_HEIGHT/gridDim.z) + // return; + + // this is the threshold at which we decide whether to render fire or smoke + float threshold = 1.4; + float maxValue = 3; + + float s = colorTex.SampleLevel(samLinearClamp, texcoords, 0).x; + s = clamp(s, 0, maxValue); + + if (s > threshold) + { + // render fire + float lookUpVal = ((s - threshold) / (maxValue - threshold)); + lookUpVal = 1.0 - pow(lookUpVal, RednessFactor); + lookUpVal = clamp(lookUpVal, 0, 1); + float3 interpColor = fireTransferFunction.SampleLevel(samLinearClamp, float2(lookUpVal, 0), 0).xyz; + float mult = (s - threshold); + color += float4(weight * interpColor.rgb, weight * mult * mult * fireAlphaMultiplier); + } + else + { + // render smoke + float4 sample = weight * s; + sample.a = sample.r * 0.1 * smokeAlphaMultiplier; + float3 smokeColor = float3(0.9, 0.35, 0.055); + color.rgb = (1 - sample.a) * color.rgb + sample.a * sample.rrr * smokeColor * smokeColorMultiplier * 5.0; + color.a = (1 - sample.a) * color.a + sample.a; + } +#endif // RENDER_FIRE +} + +float4 Raycast(PS_INPUT_RAYCAST input) +{ + float4 color = 0; + float4 rayData = rayDataTex.Sample(samLinearClamp, float2(input.pos.x / RTWidth, input.pos.y / RTHeight)); + + // Don't raycast if the starting position is negative + // (see use of OCCLUDED_PIXEL_RAYVALUE in PS_RAYDATA_FRONT) + if (rayData.x < 0) + { + return color; + } + + // If the front face of the box was clipped here by the near plane of the camera + // (see use of NEARCLIPPED_PIXEL_RAYPOS in PS_RAYDATA_BACK) + if (rayData.y < 0) + { + // Initialize the position of the fragment and adjust the depth + rayData.xyz = input.posInGrid; + rayData.w = rayData.w - ZNear; + // return float4 (1,0,0,saturate(rayData.w/5)); + } + + float3 rayOrigin = rayData.xyz; + float Offset = jitterTex.Sample(samRepeat, input.pos.xy / 256.0).r; + float rayLength = rayData.w; + + // Sample twice per voxel + float fSamples = (rayLength / gridScaleFactor * maxGridDim) * 2.0; + int nSamples = floor(fSamples); + float3 stepVec = normalize((rayOrigin - eyeOnGrid.xyz) * gridDim.xyz) * recGridDim.xyz * 0.5; + + float3 O = rayOrigin + stepVec * Offset; + +#ifdef RENDER_FIRE + // In back-to-front blending we start raycasting from the surface point and step towards the eye + O += fSamples * stepVec; + stepVec = -stepVec; +#endif // RENDER_FIRE + + for (int i = 0; i < nSamples; i++) + { + DoSample(1, O, color); + O += stepVec; + +#ifndef RENDER_FIRE + // If doing front-to-back blending we can do early exit when opacity saturates + if (color.a > 0.99) + { + break; + } +#endif // RENDER_FIRE + } + + // The last sample is weighted by the fractional part of the ray length in voxel + // space (fSamples), thus avoiding banding artifacts when the smoke is blended against the scene + if (i == nSamples) + { + DoSample(frac(fSamples), O, color); + } + + return color; +} + diff --git a/gamedata/shaders/d3d11/fluid_common_tricubic.hlsli b/gamedata/shaders/d3d11/fluid_common_tricubic.hlsli new file mode 100644 index 0000000..6e39298 --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_common_tricubic.hlsli @@ -0,0 +1,233 @@ +///////////////////////////////// +// BEGIN Custom Sampling Functions +Texture1D HHGGTex; + +// cubic b-spline +float bsW0(float a) +{ + return (1.0 / 6.0 * (-(a * a * a) + (3.0 * a * a) - (3.0 * a) + 1.0)); +} + +float bsW1(float a) +{ + return (1.0 / 6.0 * ((3.0 * a * a * a) - (6.0 * a * a) + 4.0)); +} + +float bsW2(float a) +{ + return (1.0 / 6.0 * (-(3.0 * a * a * a) + (3.0 * a * a) + (3.0 * a) + 1.0)); +} + +float bsW3(float a) +{ + return (1.0 / 6.0 * a * a * a); +} + +float g0(float a) +{ + return (bsW0(a) + bsW1(a)); +} + +float g1(float a) +{ + return (bsW2(a) + bsW3(a)); +} + +float h0texels(float a) +{ + return (1.0 + a - (bsW1(a) / (bsW0(a) + bsW1(a)))); +} + +float h1texels(float a) +{ + return (1.0 - a + (bsW3(a) / (bsW2(a) + bsW3(a)))); +} +/// end cubic-bspline + +// first derivative of cubic b-spline +float bsfdW0(float a) +{ + return (1.0 / 6.0 * (-(3.0 * a * a) + (6.0 * a) - 3.0)); +} + +float bsfdW1(float a) +{ + return (1.0 / 6.0 * ((9.0 * a * a) - (12.0 * a))); +} + +float bsfdW2(float a) +{ + return (1.0 / 6.0 * (-(9.0 * a * a) + (6.0 * a) + 3.0)); +} + +float bsfdW3(float a) +{ + return (1.0 / 6.0 * 3.0 * a * a); +} + +float gfd0(float a) +{ + return (bsfdW0(a) + bsfdW1(a)); +} + +float gfd1(float a) +{ + return (bsfdW2(a) + bsfdW3(a)); +} + +float hfd0texels(float a) +{ + return (1.0 + a - (bsfdW1(a) / (bsfdW0(a) + bsfdW1(a)))); +} + +float hfd1texels(float a) +{ + return (1.0 - a + (bsfdW3(a) / (bsfdW2(a) + bsfdW3(a)))); +} +/// end first derivative of cubic b-spline + +float4 getHHGG(float xTexels) +{ + // float a = frac(xTexels); + // return float4( -h0texels(a), h1texels(a), 1.0-g0(a), g0(a) ); + + return HHGGTex.SampleLevel(samRepeat, xTexels, 0); +} + +float4 getfdHHGG(float xTexels) +{ + float a = frac(xTexels); + return float4(-hfd0texels(a), hfd1texels(a), gfd1(a), -gfd1(a)); +} + +float4 SampleTricubicGeneric(Texture3D tex, float3 tc, float4 hg_x, float4 hg_y, float4 hg_z) +{ + float3 tc100, tc000, tc110, tc010, + tc101, tc001, tc111, tc011; + + tc100 = tc; + tc000 = tc; + tc100.x += (hg_x.x * recGridDim.x); + tc000.x += (hg_x.y * recGridDim.x); + + tc110 = tc100; + tc010 = tc000; + tc110.y += (hg_y.x * recGridDim.y); + tc010.y += (hg_y.x * recGridDim.y); + tc100.y += (hg_y.y * recGridDim.y); + tc000.y += (hg_y.y * recGridDim.y); + + tc111 = tc110; + tc011 = tc010; + tc101 = tc100; + tc001 = tc000; + tc111.z += (hg_z.x * recGridDim.z); + tc011.z += (hg_z.x * recGridDim.z); + tc101.z += (hg_z.x * recGridDim.z); + tc001.z += (hg_z.x * recGridDim.z); + + float4 v001 = tex.SampleLevel(samLinearClamp, tc001, 0); + float4 v011 = tex.SampleLevel(samLinearClamp, tc011, 0); + float4 v101 = tex.SampleLevel(samLinearClamp, tc101, 0); + float4 v111 = tex.SampleLevel(samLinearClamp, tc111, 0); + + float4 v0Y1 = (v001 * hg_y.z) + (v011 * hg_y.w); + float4 v1Y1 = (v101 * hg_y.z) + (v111 * hg_y.w); + + float4 vXY1 = (v0Y1 * hg_x.z) + (v1Y1 * hg_x.w); + + tc110.z += (hg_z.y * recGridDim.z); + tc010.z += (hg_z.y * recGridDim.z); + tc100.z += (hg_z.y * recGridDim.z); + tc000.z += (hg_z.y * recGridDim.z); + + float4 v000 = tex.SampleLevel(samLinearClamp, tc000, 0); + float4 v010 = tex.SampleLevel(samLinearClamp, tc010, 0); + float4 v100 = tex.SampleLevel(samLinearClamp, tc100, 0); + float4 v110 = tex.SampleLevel(samLinearClamp, tc110, 0); + + float4 v0Y0 = (v000 * hg_y.z) + (v010 * hg_y.w); + float4 v1Y0 = (v100 * hg_y.z) + (v110 * hg_y.w); + + float4 vXY0 = (v0Y0 * hg_x.z) + (v1Y0 * hg_x.w); + + float4 vXYZ = (vXY0 * hg_z.z) + (vXY1 * hg_z.w); + + return vXYZ; +} + +float4 SampleTricubic(Texture3D tex, float3 tc) +{ + float3 tcTexels = (tc * gridDim.xyz) - 0.49; + + float4 hg_x = getHHGG(tcTexels.x); + float4 hg_y = getHHGG(tcTexels.y); + float4 hg_z = getHHGG(tcTexels.z); + + return SampleTricubicGeneric(tex, tc, hg_x, hg_y, hg_z); +} + +float4 SampleGradientTricubic(Texture3D tex, float3 tc) +{ + float3 tcTexels = (tc * gridDim.xyz) - 0.49; + + float4 hg_x = getHHGG(tcTexels.x); + float4 hg_y = getHHGG(tcTexels.y); + float4 hg_z = getHHGG(tcTexels.z); + float4 hgfd_x = getfdHHGG(tcTexels.x); + float4 hgfd_y = getfdHHGG(tcTexels.y); + float4 hgfd_z = getfdHHGG(tcTexels.z); + + return float4(SampleTricubicGeneric(tex, tc, hgfd_x, hg_y, hg_z).r, + SampleTricubicGeneric(tex, tc, hg_x, hgfd_y, hg_z).r, + SampleTricubicGeneric(tex, tc, hg_x, hg_y, hgfd_z).r, 1.0); +} + +float4 SampleTrilinear(Texture3D tex, float3 tc) +{ + return tex.SampleLevel(samLinearClamp, tc, 0); +} + +float4 SampleGradientTrilinear(Texture3D tex, float3 tc) +{ +#define LEFTCELL float3(tc.x - (1.0 / gridDim.x), tc.y, tc.z) +#define RIGHTCELL float3(tc.x + (1.0 / gridDim.x), tc.y, tc.z) +#define BOTTOMCELL float3(tc.x, (tc.y - (1.0 / gridDim.y)), tc.z) +#define TOPCELL float3(tc.x, (tc.y + (1.0 / gridDim.y)), tc.z) +#define DOWNCELL float3(tc.x, tc.y, tc.z - (1.0 / gridDim.z)) +#define UPCELL float3(tc.x, tc.y, tc.z + (1.0 / gridDim.z)) + + float4 texL = tex.SampleLevel(samLinearClamp, LEFTCELL, 0); + float4 texR = tex.SampleLevel(samLinearClamp, RIGHTCELL, 0); + float4 texB = tex.SampleLevel(samLinearClamp, BOTTOMCELL, 0); + float4 texT = tex.SampleLevel(samLinearClamp, TOPCELL, 0); + float4 texU = tex.SampleLevel(samLinearClamp, UPCELL, 0); + float4 texD = tex.SampleLevel(samLinearClamp, DOWNCELL, 0); + return float4(texR.r - texL.r, texT.r - texB.r, texU.r - texD.r, 1); +} + +float4 Sample(Texture3D tex, float3 tc) +{ + if (g_bRaycastFilterTricubic) + { + return SampleTricubic(tex, tc); + } + else + { + return SampleTrilinear(tex, tc); + } +} + +float4 SampleGradient(Texture3D tex, float3 tc) +{ + if (g_bRaycastFilterTricubic) + { + return SampleGradientTricubic(tex, tc); + } + else + { + return SampleGradientTrilinear(tex, tc); + } +} +// END Custom Sampling Functions +///////////////////////////////// diff --git a/gamedata/shaders/d3d11/fluid_confinement.ps.hlsl b/gamedata/shaders/d3d11/fluid_confinement.ps.hlsl new file mode 100644 index 0000000..5f4e386 --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_confinement.ps.hlsl @@ -0,0 +1,30 @@ +#include "fluid_common.hlsli" + +// Pixel +float3 main(p_fluidsim input) : SV_Target +{ + // Texture_tempvector contains the vorticity computed by PS_VORTICITY + float4 omega = Texture_tempvector.SampleLevel(samPointClamp, input.texcoords, 0); + + // Potential optimization: don't find length multiple times - do once for the entire texture + float omegaL = length(Texture_tempvector.SampleLevel(samPointClamp, LEFTCELL, 0)); + float omegaR = length(Texture_tempvector.SampleLevel(samPointClamp, RIGHTCELL, 0)); + float omegaB = length(Texture_tempvector.SampleLevel(samPointClamp, BOTTOMCELL, 0)); + float omegaT = length(Texture_tempvector.SampleLevel(samPointClamp, TOPCELL, 0)); + float omegaD = length(Texture_tempvector.SampleLevel(samPointClamp, DOWNCELL, 0)); + float omegaU = length(Texture_tempvector.SampleLevel(samPointClamp, UPCELL, 0)); + + float3 eta = 0.5 * float3(omegaR - omegaL, + omegaT - omegaB, + omegaU - omegaD); + + eta = normalize(eta + float3(0.001, 0.001, 0.001)); + + float3 force = timestep * epsilon * float3(eta.y * omega.z - eta.z * omega.y, + eta.z * omega.x - eta.x * omega.z, + eta.x * omega.y - eta.y * omega.x); + + // Note: the result is added to the current velocity at each cell using "additive blending" + return force; +} + diff --git a/gamedata/shaders/d3d11/fluid_divergence.ps.hlsl b/gamedata/shaders/d3d11/fluid_divergence.ps.hlsl new file mode 100644 index 0000000..96ed080 --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_divergence.ps.hlsl @@ -0,0 +1,42 @@ +#include "fluid_common.hlsli" + +// Pixel +float4 main(p_fluidsim input) : SV_Target +{ + float4 fieldL = Texture_velocity1.SampleLevel(samPointClamp, LEFTCELL, 0); + float4 fieldR = Texture_velocity1.SampleLevel(samPointClamp, RIGHTCELL, 0); + float4 fieldB = Texture_velocity1.SampleLevel(samPointClamp, BOTTOMCELL, 0); + float4 fieldT = Texture_velocity1.SampleLevel(samPointClamp, TOPCELL, 0); + float4 fieldD = Texture_velocity1.SampleLevel(samPointClamp, DOWNCELL, 0); + float4 fieldU = Texture_velocity1.SampleLevel(samPointClamp, UPCELL, 0); + + if (IsBoundaryCell(LEFTCELL)) + { + fieldL = GetObstVelocity(LEFTCELL); + } + if (IsBoundaryCell(RIGHTCELL)) + { + fieldR = GetObstVelocity(RIGHTCELL); + } + if (IsBoundaryCell(BOTTOMCELL)) + { + fieldB = GetObstVelocity(BOTTOMCELL); + } + if (IsBoundaryCell(TOPCELL)) + { + fieldT = GetObstVelocity(TOPCELL); + } + if (IsBoundaryCell(DOWNCELL)) + { + fieldD = GetObstVelocity(DOWNCELL); + } + if (IsBoundaryCell(UPCELL)) + { + fieldU = GetObstVelocity(UPCELL); + } + + float divergence = 0.5 * + ((fieldR.x - fieldL.x) + (fieldT.y - fieldB.y) + (fieldU.z - fieldD.z)); + + return divergence; +} diff --git a/gamedata/shaders/d3d11/fluid_draw_texture.ps.hlsl b/gamedata/shaders/d3d11/fluid_draw_texture.ps.hlsl new file mode 100644 index 0000000..4440b28 --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_draw_texture.ps.hlsl @@ -0,0 +1,19 @@ +#include "fluid_common.hlsli" + +// Pixel +float4 main(p_fluidsim input) : SV_Target +{ + if (textureNumber == 1) + { + return abs(Texture_color.SampleLevel(samLinear, input.texcoords, 0)).xxxx; + } + else if (textureNumber == 2) + { + return abs(Texture_velocity0.SampleLevel(samLinear, input.texcoords, 0)); + } + else + { + return float4(abs(Texture_obstvelocity.SampleLevel(samLinear, input.texcoords, 0).xy), + abs(Texture_obstacles.SampleLevel(samLinear, input.texcoords, 0).r), 1); + } +} diff --git a/gamedata/shaders/d3d11/fluid_edge_detect.ps.hlsl b/gamedata/shaders/d3d11/fluid_edge_detect.ps.hlsl new file mode 100644 index 0000000..932abd2 --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_edge_detect.ps.hlsl @@ -0,0 +1,83 @@ +#include "fluid_common_render.hlsli" + +// Pixel +// A full-screen edge detection pass to locate artifacts +// these artifacts are located on a downsized version of the rayDataTexture +// We use a smaller texture both to accurately find all the depth artifacts +// when raycasting to this smaller size and to save on the cost of this pass +// Use col.a to find depth edges of objects occluding the smoke +// Use col.g to find the edges where the camera near plane cuts the smoke volume +// +float4 main(VS_OUTPUT_EDGE vIn) : SV_Target +{ + // We need eight samples (the centre has zero weight in both kernels). + float4 col; + col = rayDataTexSmall.Sample(samPointClamp, vIn.textureUV00); + float g00 = col.a; + if (col.g < 0) + { + g00 *= -1; + } + col = rayDataTexSmall.Sample(samPointClamp, vIn.textureUV01); + float g01 = col.a; + if (col.g < 0) + { + g01 *= -1; + } + col = rayDataTexSmall.Sample(samPointClamp, vIn.textureUV02); + float g02 = col.a; + if (col.g < 0) + { + g02 *= -1; + } + col = rayDataTexSmall.Sample(samPointClamp, vIn.textureUV10); + float g10 = col.a; + if (col.g < 0) + { + g10 *= -1; + } + col = rayDataTexSmall.Sample(samPointClamp, vIn.textureUV12); + float g12 = col.a; + if (col.g < 0) + { + g12 *= -1; + } + col = rayDataTexSmall.Sample(samPointClamp, vIn.textureUV20); + float g20 = col.a; + if (col.g < 0) + { + g20 *= -1; + } + col = rayDataTexSmall.Sample(samPointClamp, vIn.textureUV21); + float g21 = col.a; + if (col.g < 0) + { + g21 *= -1; + } + col = rayDataTexSmall.Sample(samPointClamp, vIn.textureUV22); + float g22 = col.a; + if (col.g < 0) + { + g22 *= -1; + } + + // Sobel in horizontal dir. + float sx = 0; + sx -= g00; + sx -= g01 * 2; + sx -= g02; + sx += g20; + sx += g21 * 2; + sx += g22; + // Sobel in vertical dir - weights are just rotated 90 degrees. + float sy = 0; + sy -= g00; + sy += g02; + sy -= g10 * 2; + sy += g12 * 2; + sy -= g20; + sy += g22; + + float e = EdgeDetectScalar(sx, sy, edgeThreshold); + return float4(e, e, e, 1); +} diff --git a/gamedata/shaders/d3d11/fluid_edge_detect.vs.hlsl b/gamedata/shaders/d3d11/fluid_edge_detect.vs.hlsl new file mode 100644 index 0000000..332cf94 --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_edge_detect.vs.hlsl @@ -0,0 +1,26 @@ +#include "fluid_common_render.hlsli" + +// Vertex +// A full-screen edge detection pass to locate artifacts +VS_OUTPUT_EDGE main(VS_INPUT input) +{ + VS_OUTPUT_EDGE output = (VS_OUTPUT_EDGE)0; + output.position = float4(input.pos, 1); + + float2 texelSize = 1.0 / float2(RTWidth, RTHeight); + float2 center = float2((input.pos.x + 1) / 2.0, 1.0 - (input.pos.y + 1) / 2.0); + + // Eight nearest neighbours needed for Sobel. + output.textureUV00 = center + float2(-texelSize.x, -texelSize.y); + output.textureUV01 = center + float2(-texelSize.x, 0); + output.textureUV02 = center + float2(-texelSize.x, texelSize.y); + + output.textureUV10 = center + float2(0, -texelSize.y); + output.textureUV12 = center + float2(0, texelSize.y); + + output.textureUV20 = center + float2(texelSize.x, -texelSize.y); + output.textureUV21 = center + float2(texelSize.x, 0); + output.textureUV22 = center + float2(texelSize.x, texelSize.y); + + return output; +} diff --git a/gamedata/shaders/d3d11/fluid_gaussian.ps.hlsl b/gamedata/shaders/d3d11/fluid_gaussian.ps.hlsl new file mode 100644 index 0000000..74e05aa --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_gaussian.ps.hlsl @@ -0,0 +1,22 @@ +#include "fluid_common.hlsli" + +// Pixel +float4 main(p_fluidsim input) : SV_Target +{ + if (IsNonEmptyCell(input.texcoords.xyz)) + { + return 0; + } + + float dist = length(input.cell0 - center.xyz) * size; + // float dist = length( input.cell0 - center ) * size / 2; + float4 result; + // result.rgb = splatColor; // + sin(splatColor.rgb*10.0+cell*5.0)*0.2; + result.rgb = splatColor.xyz + length(splatColor) * sin(splatColor.xyz * 10.0 + input.cell0 * 5.0) * 0.2; + // result.a = exp( -dist*dist/(0.05) ); + // result.a = exp( -dist*dist ); + result.a = exp(-dist * dist / 0.5); + + return result; +} + diff --git a/gamedata/shaders/d3d11/fluid_grid.vs.hlsl b/gamedata/shaders/d3d11/fluid_grid.vs.hlsl new file mode 100644 index 0000000..00febd0 --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_grid.vs.hlsl @@ -0,0 +1,28 @@ +#include "fluid_common.hlsli" + +// Vertex +v2g_fluidsim main(v_fluidsim input) +{ + v2g_fluidsim output = (v2g_fluidsim)0; + + output.pos = float4(input.position.x, input.position.y, input.position.z, 1.0); + output.cell0 = float3(input.textureCoords0.x, input.textureCoords0.y, input.textureCoords0.z); + output.texcoords = float3((input.textureCoords0.x) / (textureWidth), + (input.textureCoords0.y) / (textureHeight), + (input.textureCoords0.z + 0.5) / (textureDepth)); + + float x = output.texcoords.x; + float y = output.texcoords.y; + float z = output.texcoords.z; + + // compute single texel offsets in each dimension + float invW = 1.0 / textureWidth; + float invH = 1.0 / textureHeight; + float invD = 1.0 / textureDepth; + + output.LR = float2(x - invW, x + invW); + output.BT = float2(y - invH, y + invH); + output.DU = float2(z - invD, z + invD); + + return output; +} diff --git a/gamedata/shaders/d3d11/fluid_grid_dyn_oobb.vs.hlsl b/gamedata/shaders/d3d11/fluid_grid_dyn_oobb.vs.hlsl new file mode 100644 index 0000000..7aee2f6 --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_grid_dyn_oobb.vs.hlsl @@ -0,0 +1,54 @@ +#include "fluid_common.hlsli" + +cbuffer DynOOBBData +{ + float3x4 WorldToLocal; // World to local of fog volume + float3x4 LocalToWorld; // Local of fog volume to world + float4 MassCenter; // Center for angular velocity + float4 OOBBWorldAngularVelocity; + float4 OOBBWorldTranslationVelocity; +} + +// Vertex +v2g_fluidsim_dyn_aabb main(v_fluidsim input) +{ + v2g_fluidsim_dyn_aabb output = (v2g_fluidsim_dyn_aabb)0; + + output.pos = float4(input.position.x, input.position.y, input.position.z, 1.0); + output.cell0 = float3(input.textureCoords0.x, input.textureCoords0.y, input.textureCoords0.z); + + output.velocity = 0; + + { + output.velocity = OOBBWorldTranslationVelocity.xyz; + + float3 r = mul(LocalToWorld, float4(output.cell0, 1)).xyz - MassCenter.xyz; + + float3 AngularVel = cross(OOBBWorldAngularVelocity.xyz, r); + + output.velocity += AngularVel; + + output.velocity = mul((float3x3)WorldToLocal, output.velocity); + } + + // for (int i = 0; i < 3; ++i) + // { + // output.clip0[i] = dot(float4(output.cell0, 1), OOBBClipPlane[i]); + // output.clip1[i] = dot(float4(output.cell0, 1), OOBBClipPlane[i + 3]); + // // Make box a voxel bigger in each direction + // // BOX_EXPANSION - voxel diagonal length + // // output.clip0[i] += BOX_EXPANSION; + // // output.clip1[i] += BOX_EXPANSION; + // } + + output.clip0.x = dot(float4(output.cell0, 1), OOBBClipPlane[0]); + output.clip0.y = dot(float4(output.cell0, 1), OOBBClipPlane[1]); + output.clip0.z = dot(float4(output.cell0, 1), OOBBClipPlane[2]); + + output.clip1.x = dot(float4(output.cell0, 1), OOBBClipPlane[3]); + output.clip1.y = dot(float4(output.cell0, 1), OOBBClipPlane[4]); + output.clip1.z = dot(float4(output.cell0, 1), OOBBClipPlane[5]); + + return output; +} + diff --git a/gamedata/shaders/d3d11/fluid_grid_oobb.vs.hlsl b/gamedata/shaders/d3d11/fluid_grid_oobb.vs.hlsl new file mode 100644 index 0000000..b2be738 --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_grid_oobb.vs.hlsl @@ -0,0 +1,49 @@ +#include "fluid_common.hlsli" + +// Vertex +v2g_fluidsim_clip main(v_fluidsim input) +{ + v2g_fluidsim_clip output = (v2g_fluidsim_clip)0; + + output.pos = float4(input.position.x, input.position.y, input.position.z, 1.0); + output.cell0 = float3(input.textureCoords0.x, input.textureCoords0.y, input.textureCoords0.z); + output.texcoords = float3((input.textureCoords0.x) / (textureWidth), + (input.textureCoords0.y) / (textureHeight), + (input.textureCoords0.z + 0.5) / (textureDepth)); + + float x = output.texcoords.x; + float y = output.texcoords.y; + float z = output.texcoords.z; + + // compute single texel offsets in each dimension + float invW = 1.0 / textureWidth; + float invH = 1.0 / textureHeight; + float invD = 1.0 / textureDepth; + + output.LR = float2(x - invW, x + invW); + output.BT = float2(y - invH, y + invH); + output.DU = float2(z - invD, z + invD); + + // float3 clip0 : SV_ClipDistance0; + // float3 clip1 : SV_ClipDistance1; + // for (int i = 0; i < 3; ++i) + // { + // output.clip0[i] = dot(float4(output.cell0, 1), OOBBClipPlane[i]); + // output.clip1[i] = dot(float4(output.cell0, 1), OOBBClipPlane[i + 3]); + // // Make box a voxel bigger in each direction + // // BOX_EXPANSION - voxel diagonal length + // // output.clip0[i] += BOX_EXPANSION; + // // output.clip1[i] += BOX_EXPANSION; + // } + + output.clip0.x = dot(float4(output.cell0, 1), OOBBClipPlane[0]); + output.clip0.y = dot(float4(output.cell0, 1), OOBBClipPlane[1]); + output.clip0.z = dot(float4(output.cell0, 1), OOBBClipPlane[2]); + + output.clip1.x = dot(float4(output.cell0, 1), OOBBClipPlane[3]); + output.clip1.y = dot(float4(output.cell0, 1), OOBBClipPlane[4]); + output.clip1.z = dot(float4(output.cell0, 1), OOBBClipPlane[5]); + + return output; +} + diff --git a/gamedata/shaders/d3d11/fluid_jacobi.ps.hlsl b/gamedata/shaders/d3d11/fluid_jacobi.ps.hlsl new file mode 100644 index 0000000..0407c94 --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_jacobi.ps.hlsl @@ -0,0 +1,44 @@ +#include "fluid_common.hlsli" + +// Pixel +float4 main(p_fluidsim input) : SV_Target +{ + float pCenter = Texture_pressure.SampleLevel(samPointClamp, input.texcoords, 0).x; + // Texture_tempvector contains the "divergence" computed by PS_DIVERGENCE + float bC = Texture_tempvector.SampleLevel(samPointClamp, input.texcoords, 0).x; + + float pL = Texture_pressure.SampleLevel(samPointClamp, LEFTCELL, 0).x; + float pR = Texture_pressure.SampleLevel(samPointClamp, RIGHTCELL, 0).x; + float pB = Texture_pressure.SampleLevel(samPointClamp, BOTTOMCELL, 0).x; + float pT = Texture_pressure.SampleLevel(samPointClamp, TOPCELL, 0).x; + float pD = Texture_pressure.SampleLevel(samPointClamp, DOWNCELL, 0).x; + float pU = Texture_pressure.SampleLevel(samPointClamp, UPCELL, 0).x; + + if (IsBoundaryCell(LEFTCELL)) + { + pL = pCenter; + } + if (IsBoundaryCell(RIGHTCELL)) + { + pR = pCenter; + } + if (IsBoundaryCell(BOTTOMCELL)) + { + pB = pCenter; + } + if (IsBoundaryCell(TOPCELL)) + { + pT = pCenter; + } + if (IsBoundaryCell(DOWNCELL)) + { + pD = pCenter; + } + if (IsBoundaryCell(UPCELL)) + { + pU = pCenter; + } + + return (pL + pR + pB + pT + pU + pD - bC) / 6.0; +} + diff --git a/gamedata/shaders/d3d11/fluid_obst_dynamic_oobb.ps.hlsl b/gamedata/shaders/d3d11/fluid_obst_dynamic_oobb.ps.hlsl new file mode 100644 index 0000000..0af3e7b --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_obst_dynamic_oobb.ps.hlsl @@ -0,0 +1,29 @@ +#include "fluid_common.hlsli" + +struct PSDrawBoxOut +{ + float4 obstacle : SV_TARGET0; + float4 velocity : SV_TARGET1; +}; + +// Pixel +PSDrawBoxOut main(p_fluidsim_dyn_aabb input) +{ + PSDrawBoxOut voxel; + + // cells completely inside box = 0.5 + if ((input.clip0.x > BOX_EXPANSION) && (input.clip1.x > BOX_EXPANSION) && + (input.clip0.y > BOX_EXPANSION) && (input.clip1.y > BOX_EXPANSION) && + (input.clip0.z > BOX_EXPANSION) && (input.clip1.z > BOX_EXPANSION)) + { + voxel.obstacle = 0.5; + voxel.velocity = 0; + return voxel; + } + else // cells in box boundary = 1.0 + { + voxel.obstacle = 1.0; + voxel.velocity = float4(input.velocity, 1); + return voxel; + } +} diff --git a/gamedata/shaders/d3d11/fluid_obst_static_oobb.ps.hlsl b/gamedata/shaders/d3d11/fluid_obst_static_oobb.ps.hlsl new file mode 100644 index 0000000..92e7e90 --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_obst_static_oobb.ps.hlsl @@ -0,0 +1,37 @@ +#include "fluid_common.hlsli" + +struct PSDrawBoxOut +{ + float4 obstacle : SV_TARGET0; + float4 velocity : SV_TARGET1; +}; + +bool PointIsInsideBox(float3 p, float3 LBUcorner, float3 RTDcorner) +{ + return ((p.x > LBUcorner.x) && (p.x < RTDcorner.x) && + (p.y > LBUcorner.y) && (p.y < RTDcorner.y) && + (p.z > LBUcorner.z) && (p.z < RTDcorner.z)); +} + +// Pixel +PSDrawBoxOut main(p_fluidsim_clip input) +{ + PSDrawBoxOut voxel; + + // cells completely inside box = 0.5 + if ((input.clip0.x > BOX_EXPANSION) && (input.clip1.x > BOX_EXPANSION) && + (input.clip0.y > BOX_EXPANSION) && (input.clip1.y > BOX_EXPANSION) && + (input.clip0.z > BOX_EXPANSION) && (input.clip1.z > BOX_EXPANSION)) + { + voxel.obstacle = 0.5; + voxel.velocity = 0; + return voxel; + } + else // cells in box boundary = 1.0 + { + voxel.obstacle = 1.0; + // voxel.velocity = float4(obstVelocity.xyz,1); + voxel.velocity = 0; + return voxel; + } +} diff --git a/gamedata/shaders/d3d11/fluid_obststaticbox.ps.hlsl b/gamedata/shaders/d3d11/fluid_obststaticbox.ps.hlsl new file mode 100644 index 0000000..6650a08 --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_obststaticbox.ps.hlsl @@ -0,0 +1,51 @@ +#include "fluid_common.hlsli" + +cbuffer BoxBounds +{ + // float3 boxLBDcorner; + // float3 boxRTUcorner; + float4 boxLBDcorner; + float4 boxRTUcorner; +} + +struct PSDrawBoxOut +{ + float4 obstacle : SV_TARGET0; + float4 velocity : SV_TARGET1; +}; + +bool PointIsInsideBox(float3 p, float3 LBUcorner, float3 RTDcorner) +{ + return ((p.x > LBUcorner.x) && (p.x < RTDcorner.x) && + (p.y > LBUcorner.y) && (p.y < RTDcorner.y) && + (p.z > LBUcorner.z) && (p.z < RTDcorner.z)); +} + +// Pixel +PSDrawBoxOut main(p_fluidsim input) +{ + PSDrawBoxOut voxel; + float3 innerboxLBDcorner = boxLBDcorner + 1; + float3 innerboxRTUcorner = boxRTUcorner - 1; + // cells completely inside box = 1.0 + if (PointIsInsideBox(input.cell0, innerboxLBDcorner, innerboxRTUcorner)) + { + voxel.obstacle = 0.5; + voxel.velocity = 0; + return voxel; + } + + // cells in box boundary = 0.5 + if (PointIsInsideBox(input.cell0, boxLBDcorner, boxRTUcorner)) + { + voxel.obstacle = 1.0; + // voxel.velocity = float4(obstVelocity.xyz,1); + voxel.velocity = 0; + return voxel; + } + + // Kill texel to preserve other obstacles + clip(-1); + + return (PSDrawBoxOut)0; +} diff --git a/gamedata/shaders/d3d11/fluid_project.ps.hlsl b/gamedata/shaders/d3d11/fluid_project.ps.hlsl new file mode 100644 index 0000000..df213b4 --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_project.ps.hlsl @@ -0,0 +1,71 @@ +#include "fluid_common.hlsli" + +// Pixel +float3 main(p_fluidsim input) : SV_Target +{ + if (IsBoundaryCell(input.texcoords.xyz)) + { + return GetObstVelocity(input.texcoords.xyz).xyz; + } + + float pCenter = Texture_pressure.SampleLevel(samPointClamp, input.texcoords, 0).x; + float pL = Texture_pressure.SampleLevel(samPointClamp, LEFTCELL, 0).x; + float pR = Texture_pressure.SampleLevel(samPointClamp, RIGHTCELL, 0).x; + float pB = Texture_pressure.SampleLevel(samPointClamp, BOTTOMCELL, 0).x; + float pT = Texture_pressure.SampleLevel(samPointClamp, TOPCELL, 0).x; + float pD = Texture_pressure.SampleLevel(samPointClamp, DOWNCELL, 0).x; + float pU = Texture_pressure.SampleLevel(samPointClamp, UPCELL, 0).x; + + float3 obstV = float3(0, 0, 0); + float3 vMask = float3(1, 1, 1); + float3 vLeft = GetObstVelocity(LEFTCELL).xyz; + float3 vRight = GetObstVelocity(RIGHTCELL).xyz; + float3 vBottom = GetObstVelocity(BOTTOMCELL).xyz; + float3 vTop = GetObstVelocity(TOPCELL).xyz; + float3 vDown = GetObstVelocity(DOWNCELL).xyz; + float3 vUp = GetObstVelocity(UPCELL).xyz; + float3 v; + + if (IsBoundaryCell(LEFTCELL)) + { + pL = pCenter; + obstV.x = vLeft.x; + vMask.x = 0; + } + if (IsBoundaryCell(RIGHTCELL)) + { + pR = pCenter; + obstV.x = vRight.x; + vMask.x = 0; + } + if (IsBoundaryCell(BOTTOMCELL)) + { + pB = pCenter; + obstV.y = vBottom.y; + vMask.y = 0; + } + if (IsBoundaryCell(TOPCELL)) + { + pT = pCenter; + obstV.y = vTop.y; + vMask.y = 0; + } + if (IsBoundaryCell(DOWNCELL)) + { + pD = pCenter; + obstV.z = vDown.z; + vMask.z = 0; + } + if (IsBoundaryCell(UPCELL)) + { + pU = pCenter; + obstV.z = vUp.z; + vMask.z = 0; + } + + v = (Texture_velocity1.SampleLevel(samPointClamp, input.texcoords, 0).xyz - + (0.5 * modulate * float3(pR - pL, pT - pB, pU - pD))); + + return vMask * v + obstV; +} + diff --git a/gamedata/shaders/d3d11/fluid_raycast_quad.ps.hlsl b/gamedata/shaders/d3d11/fluid_raycast_quad.ps.hlsl new file mode 100644 index 0000000..7142c8d --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_raycast_quad.ps.hlsl @@ -0,0 +1,9 @@ +#include "fluid_common_render.hlsli" + +// Pixel +// TODO: DX10: replace WorldViewProjection with m_WVP +float4 main(PS_INPUT_RAYCAST input) : SV_Target +{ + return Raycast(input); +} + diff --git a/gamedata/shaders/d3d11/fluid_raycast_quad.vs.hlsl b/gamedata/shaders/d3d11/fluid_raycast_quad.vs.hlsl new file mode 100644 index 0000000..3e4355c --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_raycast_quad.vs.hlsl @@ -0,0 +1,13 @@ +#include "fluid_common_render.hlsli" + +// Vertex +// TODO: DX10: replace WorldViewProjection with m_WVP +PS_INPUT_RAYCAST main(VS_INPUT input) +{ + PS_INPUT_RAYCAST output = (PS_INPUT_RAYCAST)0; + output.pos = float4(input.pos, 1); + // output.posInGrid = mul( float4( input.pos.xy*ZNear, 0, ZNear ), InvWorldViewProjection ); + output.posInGrid = mul(InvWorldViewProjection, float4(input.pos.xy * ZNear, 0, ZNear)).xyz; + return output; +} + diff --git a/gamedata/shaders/d3d11/fluid_raycast_quad_fire.ps.hlsl b/gamedata/shaders/d3d11/fluid_raycast_quad_fire.ps.hlsl new file mode 100644 index 0000000..30200ee --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_raycast_quad_fire.ps.hlsl @@ -0,0 +1,4 @@ +#define RENDER_FIRE + +#include "fluid_raycast_quad.ps.hlsl" +// main diff --git a/gamedata/shaders/d3d11/fluid_raycastcopy_quad.ps.hlsl b/gamedata/shaders/d3d11/fluid_raycastcopy_quad.ps.hlsl new file mode 100644 index 0000000..b1d4d49 --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_raycastcopy_quad.ps.hlsl @@ -0,0 +1,32 @@ +#include "fluid_common_render.hlsli" + +// Pixel +// TODO: DX10: replace WorldViewProjection with m_WVP +float4 main(PS_INPUT_RAYCAST input) : SV_Target +{ + float edge = edgeTex.Sample(samLinearClamp, float2(input.pos.x / RTWidth, input.pos.y / RTHeight)).r; + +#ifdef RENDER_FIRE + float4 tex = rayCastTex.Sample(samLinearClamp, float2(input.pos.x / RTWidth, input.pos.y / RTHeight)); + if (edge > 0 && tex.a > 0) + { + return Raycast(input); + } + else + { + return tex; + } +#else // RENDER_FIRE + float4 tex = rayCastTex.Sample(samLinearClamp, float2(input.pos.x / RTWidth, input.pos.y / RTHeight)); + if (edge > 0 && tex.a > 0) + { + return Raycast(input) * DiffuseLight; + } + // return float4(1,0,0,1); + else + { + return tex * DiffuseLight; + } +#endif // RENDER_FIRE +} + diff --git a/gamedata/shaders/d3d11/fluid_raycastcopy_quad_fire.ps.hlsl b/gamedata/shaders/d3d11/fluid_raycastcopy_quad_fire.ps.hlsl new file mode 100644 index 0000000..9c404bd --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_raycastcopy_quad_fire.ps.hlsl @@ -0,0 +1,4 @@ +#define RENDER_FIRE + +#include "fluid_raycastcopy_quad.ps.hlsl" +// main diff --git a/gamedata/shaders/d3d11/fluid_raydata_back.ps.hlsl b/gamedata/shaders/d3d11/fluid_raydata_back.ps.hlsl new file mode 100644 index 0000000..b0c8471 --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_raydata_back.ps.hlsl @@ -0,0 +1,13 @@ +#include "fluid_common_render.hlsli" + +void main(PS_INPUT_RAYDATA_BACK input, out float4 output : SV_Target) +{ + float sceneZ = sceneDepthTex.SampleLevel(samLinearClamp, float2(input.pos.x / RTWidth, input.pos.y / RTHeight), 0).x; + sceneZ = DepthUnpack.x * rcp(sceneZ - DepthUnpack.y); + + // This value will only remain if no fragments get blended on top in the next pass (front-faces) + // which would happen if the front faces of the box get clipped by the near plane of the camera + + output.xyz = NEARCLIPPED_PIXEL_RAYPOS; + output.w = min(input.depth, sceneZ); +} \ No newline at end of file diff --git a/gamedata/shaders/d3d11/fluid_raydata_back.vs.hlsl b/gamedata/shaders/d3d11/fluid_raydata_back.vs.hlsl new file mode 100644 index 0000000..137d59e --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_raydata_back.vs.hlsl @@ -0,0 +1,12 @@ +#include "fluid_common_render.hlsli" + +// Vertex +// TODO: DX10: replace WorldViewProjection with m_WVP +PS_INPUT_RAYDATA_BACK main(VS_INPUT input) +{ + PS_INPUT_RAYDATA_BACK output = (PS_INPUT_RAYDATA_BACK)0; + // output.pos = mul(float4(input.pos,1), WorldViewProjection); + output.pos = mul(WorldViewProjection, float4(input.pos, 1)); + output.depth = output.pos.w; + return output; +} diff --git a/gamedata/shaders/d3d11/fluid_raydata_front.ps.hlsl b/gamedata/shaders/d3d11/fluid_raydata_front.ps.hlsl new file mode 100644 index 0000000..d21be5e --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_raydata_front.ps.hlsl @@ -0,0 +1,25 @@ +#include "fluid_common_render.hlsli" + +// Pixel +// TODO: DX10: replace WorldViewProjection with m_WVP +float4 main(PS_INPUT_RAYDATA_FRONT input) : SV_Target +{ + float4 output; + // float sceneZ = sceneDepthTex.SampleLevel( samLinearClamp, float2(input.pos.x/RTWidth, input.pos.y/RTHeight),0).r; + float sceneZ = sceneDepthTex.SampleLevel(samLinearClamp, float2(input.pos.x / RTWidth, input.pos.y / RTHeight), 0).z; + if (sceneZ < Z_EPSILON) + { + sceneZ = Z_MAX; + } + + if (sceneZ < input.depth) + { + // If the scene occludes intersection point we want to kill the pixel early in PS + return OCCLUDED_PIXEL_RAYVALUE; + } + // We negate input.posInGrid because we use subtractive blending in front faces + // Note that we set xyz to 0 when rendering back faces + output.xyz = -input.posInGrid; + output.w = input.depth; + return output; +} diff --git a/gamedata/shaders/d3d11/fluid_raydata_front.vs.hlsl b/gamedata/shaders/d3d11/fluid_raydata_front.vs.hlsl new file mode 100644 index 0000000..dbde7a4 --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_raydata_front.vs.hlsl @@ -0,0 +1,13 @@ +#include "fluid_common_render.hlsli" + +// Vertex +// TODO: DX10: replace WorldViewProjection with m_WVP +PS_INPUT_RAYDATA_FRONT main(VS_INPUT input) +{ + PS_INPUT_RAYDATA_FRONT output = (PS_INPUT_RAYDATA_FRONT)0; + // output.pos = mul(float4(input.pos,1), WorldViewProjection); + output.pos = mul(WorldViewProjection, float4(input.pos, 1)); + output.posInGrid = input.pos; + output.depth = output.pos.w; + return output; +} diff --git a/gamedata/shaders/d3d11/fluid_raydatacopy_quad.ps.hlsl b/gamedata/shaders/d3d11/fluid_raydatacopy_quad.ps.hlsl new file mode 100644 index 0000000..410eebe --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_raydatacopy_quad.ps.hlsl @@ -0,0 +1,8 @@ +#include "fluid_common_render.hlsli" + +// Pixel +// TODO: DX10: replace WorldViewProjection with m_WVP +float4 main(PS_INPUT_RAYCAST input) : SV_Target +{ + return rayDataTex.Sample(samPointClamp, float2(input.pos.x / RTWidth, input.pos.y / RTHeight)); +} diff --git a/gamedata/shaders/d3d11/fluid_vorticity.ps.hlsl b/gamedata/shaders/d3d11/fluid_vorticity.ps.hlsl new file mode 100644 index 0000000..3659cf5 --- /dev/null +++ b/gamedata/shaders/d3d11/fluid_vorticity.ps.hlsl @@ -0,0 +1,19 @@ +#include "fluid_common.hlsli" + +// Pixel +float3 main(p_fluidsim input) : SV_Target +{ + float4 L = Texture_velocity1.SampleLevel(samPointClamp, LEFTCELL, 0); + float4 R = Texture_velocity1.SampleLevel(samPointClamp, RIGHTCELL, 0); + float4 B = Texture_velocity1.SampleLevel(samPointClamp, BOTTOMCELL, 0); + float4 T = Texture_velocity1.SampleLevel(samPointClamp, TOPCELL, 0); + float4 D = Texture_velocity1.SampleLevel(samPointClamp, DOWNCELL, 0); + float4 U = Texture_velocity1.SampleLevel(samPointClamp, UPCELL, 0); + + float3 vorticity = 0.5 * float3(((T.z - B.z) - (U.y - D.y)), + ((U.x - D.x) - (R.z - L.z)), + ((R.y - L.y) - (T.x - B.x))); + + return vorticity; +} + diff --git a/gamedata/shaders/d3d11/font2.ps.hlsl b/gamedata/shaders/d3d11/font2.ps.hlsl new file mode 100644 index 0000000..afd11bd --- /dev/null +++ b/gamedata/shaders/d3d11/font2.ps.hlsl @@ -0,0 +1,29 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base +}; + +// Pixel +float4 main(p_TL I) : SV_Target +{ + float4 r = s_base.Sample(smp_base, I.Tex0); + + r.w = 1 - r.w; + + return r; +} + +/* +float4 main( v2p I ) : SV_Target +{ +// float4 r = tex2D (s_base,I.tc0); + float4 r = s_base.Sample( smp_base, I.tc0 ); +// r.x = 1 - r.x; +// r.y = 1 - r.y; +// r.z = 1 - r.z; + r.w = 1 - r.w; + return r; +} +*/ diff --git a/gamedata/shaders/d3d11/forward_base.ps.hlsl b/gamedata/shaders/d3d11/forward_base.ps.hlsl new file mode 100644 index 0000000..858bb07 --- /dev/null +++ b/gamedata/shaders/d3d11/forward_base.ps.hlsl @@ -0,0 +1,99 @@ +#include "common.hlsli" +#include "sload.hlsli" + +#ifdef USE_OFFSCREEN_REFLECTIONS +#define USE_VIEW_REFLECTIONS +#define USE_OLD_VIEW_REFLECTIONS +#endif + +#include "metalic_roughness_light.hlsli" +#include "metalic_roughness_ambient.hlsli" + +void main(p_bumped_new I, out f_forward O) +{ + IXrayMaterial M; + M.Depth = I.position.z; + + M.Sun = I.tcdh.w; + M.Hemi = I.tcdh.z; + M.Point = I.position.xyz; + + SloadNew(I, M); + +#if defined(USE_LENGTH_BUFFER) && defined(USE_AREF) + clip(M.Color.w - def_aref); + #ifdef USE_DXT1_HACK + M.Color.xyz *= rcp(max(0.0001f, M.Color.w)); + #endif +#endif + +#if defined(USE_BUMP) || defined(USE_TDETAIL_BUMP) + M.Normal = mul(float3x3(I.M1, I.M2, I.M3), M.Normal); +#else + M.Normal = float3(I.M1.z, I.M2.z, I.M3.z); +#endif + + M.Normal = normalize(M.Normal); + +#ifdef USE_LM_HEMI + float4 hs = s_hemi.Sample(smp_rtlinear, I.tcdh.zw); + + M.Sun = get_sun(hs); + M.Hemi = get_hemi(hs); +#endif + + M.Sun = saturate(M.Sun * 2.0f); + M.Color.xyz = PushGamma(saturate(M.Color.xyz)); + +#ifndef USE_PBR + float3 F0 = 0.0f; +#else + float3 F0 = 0.04f; +#endif + +#ifdef USE_LEGACY_LIGHT + #ifndef USE_PBR + M.Metalness = L_material.w; + #else + M.Color.xyz *= M.AO; + M.AO = 1.0f; + float Specular = M.Metalness * dot(M.Color.xyz, LUMINANCE_VECTOR); + M.Color.xyz = lerp(M.Color.xyz, 0.04f, M.Metalness); + M.Metalness = 0.5f - M.Roughness * M.Roughness * 0.5f; + M.Roughness = Specular; + #endif +#endif + + float4 LightColor = float4(L_sun_color.xyz, 0.5f); + + float ViewLength = length(M.Point); + float3 View = M.Point.xyz * rcp(ViewLength); + + float3 Light = M.Sun * DirectLight(LightColor, mul((float3x3)m_V, L_sun_dir_w.xyz), M.Normal, View, M.Color.xyz, M.Metalness, M.Roughness, F0); + float3 Ambient = PushGamma(M.AO) * AmbientLighting(View, M.Normal, M.Color.xyz, M.Metalness, M.Roughness, M.Hemi, F0); + +#ifdef USE_LENGTH_BUFFER + #ifdef USE_LM_HEMI + float3 Lmap = s_lmap.Sample(smp_rtlinear, I.tcdh.zw).xyz; + #else + float3 Lmap = I.lmap; + #endif + + Light += DirectLight(float4(Lmap.xyz * 2.0f, 0.5f), View, M.Normal, View, M.Color.xyz, M.Metalness, M.Roughness, F0); +#endif + + O.Color.xyz = Ambient + Light.xyz; + O.Color.w = M.Color.w; + + float Fog = PushGamma(saturate(ViewLength * fog_params.w + fog_params.x)); + O.Color = lerp(O.Color, PushGamma(fog_color), Fog); + + O.Velocity = I.hpos_curr.xy / I.hpos_curr.w - I.hpos_old.xy / I.hpos_old.w; + O.Reactive = O.Color.w * 0.9f; + +#ifdef USE_LENGTH_BUFFER + O.Color.w = ViewLength; + O.Color.xyz = saturate(O.Color.xyz * rcp(1.0f + O.Color.xyz)); +#endif +} + diff --git a/gamedata/shaders/d3d11/friendly_indicator.lua b/gamedata/shaders/d3d11/friendly_indicator.lua new file mode 100644 index 0000000..78ac623 --- /dev/null +++ b/gamedata/shaders/d3d11/friendly_indicator.lua @@ -0,0 +1,12 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("stub_default", "stub_default") + + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + + -- Decouple sampler and texture + -- shader:sampler ("s_base") : texture(t_base) : clamp() : f_linear () + -- TODO: DX10: move stub_default to smp_rtlinear + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") +end diff --git a/gamedata/shaders/d3d11/fxaa.hlsli b/gamedata/shaders/d3d11/fxaa.hlsli new file mode 100644 index 0000000..31a63ef --- /dev/null +++ b/gamedata/shaders/d3d11/fxaa.hlsli @@ -0,0 +1,1318 @@ +#include "common.hlsli" + +uniform float4 screen_res; + +#ifdef SM_5 + #define FXAA_HLSL_5 1 +#else + #define FXAA_HLSL_4 1 +#endif + +#define FXAA_PC 1 +#define FXAA_QUALITY__PRESET 39 +#define FXAA_GREEN_AS_LUMA 1 + +/*--------------------------------------------------------------------------*/ +#ifndef FXAA_PC_CONSOLE + // + // The console algorithm for PC is included + // for developers targeting really low spec machines. + // Likely better to just run FXAA_PC, and use a really low preset. + // + #define FXAA_PC_CONSOLE 0 +#endif +/*--------------------------------------------------------------------------*/ +#ifndef FXAA_GLSL_120 + #define FXAA_GLSL_120 0 +#endif +/*--------------------------------------------------------------------------*/ +#ifndef FXAA_GLSL_130 + #define FXAA_GLSL_130 0 +#endif +/*--------------------------------------------------------------------------*/ +#ifndef FXAA_HLSL_3 + #define FXAA_HLSL_3 0 +#endif +/*--------------------------------------------------------------------------*/ +#ifndef FXAA_HLSL_4 + #define FXAA_HLSL_4 0 +#endif +/*--------------------------------------------------------------------------*/ +#ifndef FXAA_HLSL_5 + #define FXAA_HLSL_5 0 +#endif +/*==========================================================================*/ +#ifndef FXAA_GREEN_AS_LUMA + // + // For those using non-linear color, + // and either not able to get luma in alpha, or not wanting to, + // this enables FXAA to run using green as a proxy for luma. + // So with this enabled, no need to pack luma in alpha. + // + // This will turn off AA on anything which lacks some amount of green. + // Pure red and blue or combination of only R and B, will get no AA. + // + // Might want to lower the settings for both, + // fxaaConsoleEdgeThresholdMin + // fxaaQualityEdgeThresholdMin + // In order to insure AA does not get turned off on colors + // which contain a minor amount of green. + // + // 1 = On. + // 0 = Off. + // + #define FXAA_GREEN_AS_LUMA 0 +#endif +/*--------------------------------------------------------------------------*/ +#ifndef FXAA_EARLY_EXIT + // + // Controls algorithm's early exit path. + // On PS3 turning this ON adds 2 cycles to the shader. + // On 360 turning this OFF adds 10ths of a millisecond to the shader. + // Turning this off on console will result in a more blurry image. + // So this defaults to on. + // + // 1 = On. + // 0 = Off. + // + #define FXAA_EARLY_EXIT 1 +#endif +/*--------------------------------------------------------------------------*/ +#ifndef FXAA_DISCARD + // + // Only valid for PC OpenGL currently. + // Probably will not work when FXAA_GREEN_AS_LUMA = 1. + // + // 1 = Use discard on pixels which don't need AA. + // For APIs which enable concurrent TEX+ROP from same surface. + // 0 = Return unchanged color on pixels which don't need AA. + // + #define FXAA_DISCARD 0 +#endif +/*--------------------------------------------------------------------------*/ +#ifndef FXAA_FAST_PIXEL_OFFSET + // + // Used for GLSL 120 only. + // + // 1 = GL API supports fast pixel offsets + // 0 = do not use fast pixel offsets + // + #ifdef GL_EXT_gpu_shader4 + #define FXAA_FAST_PIXEL_OFFSET 1 + #endif + #ifdef GL_NV_gpu_shader5 + #define FXAA_FAST_PIXEL_OFFSET 1 + #endif + #ifdef GL_ARB_gpu_shader5 + #define FXAA_FAST_PIXEL_OFFSET 1 + #endif + #ifndef FXAA_FAST_PIXEL_OFFSET + #define FXAA_FAST_PIXEL_OFFSET 0 + #endif +#endif +/*--------------------------------------------------------------------------*/ +#ifndef FXAA_GATHER4_ALPHA + // + // 1 = API supports gather4 on alpha channel. + // 0 = API does not support gather4 on alpha channel. + // + #if (FXAA_HLSL_5 == 1) + #define FXAA_GATHER4_ALPHA 1 + #endif + #ifdef GL_ARB_gpu_shader5 + #define FXAA_GATHER4_ALPHA 1 + #endif + #ifdef GL_NV_gpu_shader5 + #define FXAA_GATHER4_ALPHA 1 + #endif + #ifndef FXAA_GATHER4_ALPHA + #define FXAA_GATHER4_ALPHA 0 + #endif +#endif + +/*============================================================================ + FXAA QUALITY - TUNING KNOBS +------------------------------------------------------------------------------ +NOTE the other tuning knobs are now in the shader function inputs! +============================================================================*/ +#ifndef FXAA_QUALITY__PRESET + // + // Choose the quality preset. + // This needs to be compiled into the shader as it effects code. + // Best option to include multiple presets is to + // in each shader define the preset, then include this file. + // + // OPTIONS + // ----------------------------------------------------------------------- + // 10 to 15 - default medium dither (10=fastest, 15=highest quality) + // 20 to 29 - less dither, more expensive (20=fastest, 29=highest quality) + // 39 - no dither, very expensive + // + // NOTES + // ----------------------------------------------------------------------- + // 12 = slightly faster then FXAA 3.9 and higher edge quality (default) + // 13 = about same speed as FXAA 3.9 and better than 12 + // 23 = closest to FXAA 3.9 visually and performance wise + // _ = the lowest digit is directly related to performance + // _ = the highest digit is directly related to style + // + #define FXAA_QUALITY__PRESET 12 +#endif + +/*============================================================================ + + FXAA QUALITY - PRESETS + +============================================================================*/ + +/*============================================================================ + FXAA QUALITY - MEDIUM DITHER PRESETS +============================================================================*/ +#if (FXAA_QUALITY__PRESET == 10) + #define FXAA_QUALITY__PS 3 + #define FXAA_QUALITY__P0 1.5 + #define FXAA_QUALITY__P1 3.0 + #define FXAA_QUALITY__P2 12.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 11) + #define FXAA_QUALITY__PS 4 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 3.0 + #define FXAA_QUALITY__P3 12.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 12) + #define FXAA_QUALITY__PS 5 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 4.0 + #define FXAA_QUALITY__P4 12.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 13) + #define FXAA_QUALITY__PS 6 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 4.0 + #define FXAA_QUALITY__P5 12.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 14) + #define FXAA_QUALITY__PS 7 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 2.0 + #define FXAA_QUALITY__P5 4.0 + #define FXAA_QUALITY__P6 12.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 15) + #define FXAA_QUALITY__PS 8 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 2.0 + #define FXAA_QUALITY__P5 2.0 + #define FXAA_QUALITY__P6 4.0 + #define FXAA_QUALITY__P7 12.0 +#endif + +/*============================================================================ + FXAA QUALITY - LOW DITHER PRESETS +============================================================================*/ +#if (FXAA_QUALITY__PRESET == 20) + #define FXAA_QUALITY__PS 3 + #define FXAA_QUALITY__P0 1.5 + #define FXAA_QUALITY__P1 2.0 + #define FXAA_QUALITY__P2 8.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 21) + #define FXAA_QUALITY__PS 4 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 8.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 22) + #define FXAA_QUALITY__PS 5 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 8.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 23) + #define FXAA_QUALITY__PS 6 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 2.0 + #define FXAA_QUALITY__P5 8.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 24) + #define FXAA_QUALITY__PS 7 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 2.0 + #define FXAA_QUALITY__P5 3.0 + #define FXAA_QUALITY__P6 8.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 25) + #define FXAA_QUALITY__PS 8 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 2.0 + #define FXAA_QUALITY__P5 2.0 + #define FXAA_QUALITY__P6 4.0 + #define FXAA_QUALITY__P7 8.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 26) + #define FXAA_QUALITY__PS 9 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 2.0 + #define FXAA_QUALITY__P5 2.0 + #define FXAA_QUALITY__P6 2.0 + #define FXAA_QUALITY__P7 4.0 + #define FXAA_QUALITY__P8 8.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 27) + #define FXAA_QUALITY__PS 10 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 2.0 + #define FXAA_QUALITY__P5 2.0 + #define FXAA_QUALITY__P6 2.0 + #define FXAA_QUALITY__P7 2.0 + #define FXAA_QUALITY__P8 4.0 + #define FXAA_QUALITY__P9 8.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 28) + #define FXAA_QUALITY__PS 11 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 2.0 + #define FXAA_QUALITY__P5 2.0 + #define FXAA_QUALITY__P6 2.0 + #define FXAA_QUALITY__P7 2.0 + #define FXAA_QUALITY__P8 2.0 + #define FXAA_QUALITY__P9 4.0 + #define FXAA_QUALITY__P10 8.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 29) + #define FXAA_QUALITY__PS 12 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 2.0 + #define FXAA_QUALITY__P5 2.0 + #define FXAA_QUALITY__P6 2.0 + #define FXAA_QUALITY__P7 2.0 + #define FXAA_QUALITY__P8 2.0 + #define FXAA_QUALITY__P9 2.0 + #define FXAA_QUALITY__P10 4.0 + #define FXAA_QUALITY__P11 8.0 +#endif + +/*============================================================================ + FXAA QUALITY - EXTREME QUALITY +============================================================================*/ +#if (FXAA_QUALITY__PRESET == 39) + #define FXAA_QUALITY__PS 12 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.0 + #define FXAA_QUALITY__P2 1.0 + #define FXAA_QUALITY__P3 1.0 + #define FXAA_QUALITY__P4 1.0 + #define FXAA_QUALITY__P5 1.5 + #define FXAA_QUALITY__P6 2.0 + #define FXAA_QUALITY__P7 2.0 + #define FXAA_QUALITY__P8 2.0 + #define FXAA_QUALITY__P9 2.0 + #define FXAA_QUALITY__P10 4.0 + #define FXAA_QUALITY__P11 8.0 +#endif + +/*============================================================================ + + API PORTING + +============================================================================*/ +#if (FXAA_GLSL_120 == 1) || (FXAA_GLSL_130 == 1) + #define FxaaBool bool + #define FxaaDiscard discard + #define FxaaFloat float + #define FxaaFloat2 vec2 + #define FxaaFloat3 vec3 + #define FxaaFloat4 vec4 + #define FxaaInt2 ivec2 + #define FxaaSat(x) clamp(x, 0.0, 1.0) + #define FxaaTex sampler2D +#else + #define FxaaBool bool + #define FxaaDiscard clip(-1) + #define FxaaFloat float + #define FxaaFloat2 float2 + #define FxaaFloat3 float3 + #define FxaaFloat4 float4 + #define FxaaSat(x) saturate(x) +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_GLSL_120 == 1) + // Requires, + // #version 120 + // And at least, + // #extension GL_EXT_gpu_shader4 : enable + // (or set FXAA_FAST_PIXEL_OFFSET 1 to work like DX9) + #define FxaaTexTop(t, p) texture2DLod(t, p, 0.0) + #if (FXAA_FAST_PIXEL_OFFSET == 1) + #define FxaaTexOff(t, p, o, r) texture2DLodOffset(t, p, 0.0, o) + #else + #define FxaaTexOff(t, p, o, r) texture2DLod(t, p + (o * r), 0.0) + #endif + #if (FXAA_GATHER4_ALPHA == 1) + // use #extension GL_ARB_gpu_shader5 : enable + #define FxaaTexAlpha4(t, p) textureGather(t, p, 3) + #define FxaaTexOffAlpha4(t, p, o) textureGatherOffset(t, p, o, 3) + #define FxaaTexGreen4(t, p) textureGather(t, p, 1) + #define FxaaTexOffGreen4(t, p, o) textureGatherOffset(t, p, o, 1) + #endif +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_GLSL_130 == 1) + // Requires "#version 130" or better + #define FxaaTexTop(t, p) textureLod(t, p, 0.0) + #define FxaaTexOff(t, p, o, r) textureLodOffset(t, p, 0.0, o) + #if (FXAA_GATHER4_ALPHA == 1) + // use #extension GL_ARB_gpu_shader5 : enable + #define FxaaTexAlpha4(t, p) textureGather(t, p, 3) + #define FxaaTexOffAlpha4(t, p, o) textureGatherOffset(t, p, o, 3) + #define FxaaTexGreen4(t, p) textureGather(t, p, 1) + #define FxaaTexOffGreen4(t, p, o) textureGatherOffset(t, p, o, 1) + #endif +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_HLSL_3 == 1) || (FXAA_360 == 1) || (FXAA_PS3 == 1) + #define FxaaInt2 float2 + #define FxaaTex sampler2D + #define FxaaTexTop(t, p) tex2Dlod(t, float4(p, 0.0, 0.0)) + #define FxaaTexOff(t, p, o, r) tex2Dlod(t, float4(p + (o * r), 0, 0)) +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_HLSL_4 == 1) + #define FxaaInt2 int2 +struct FxaaTex +{ + SamplerState smpl; + Texture2D tex; +}; + #define FxaaTexTop(t, p) t.tex.SampleLevel(t.smpl, p, 0.0) + #define FxaaTexOff(t, p, o, r) t.tex.SampleLevel(t.smpl, p, 0.0, o) +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_HLSL_5 == 1) + #define FxaaInt2 int2 +struct FxaaTex +{ + SamplerState smpl; + Texture2D tex; +}; + #define FxaaTexTop(t, p) t.tex.SampleLevel(t.smpl, p, 0.0) + #define FxaaTexOff(t, p, o, r) t.tex.SampleLevel(t.smpl, p, 0.0, o) + #define FxaaTexAlpha4(t, p) t.tex.GatherAlpha(t.smpl, p) + #define FxaaTexOffAlpha4(t, p, o) t.tex.GatherAlpha(t.smpl, p, o) + #define FxaaTexGreen4(t, p) t.tex.GatherGreen(t.smpl, p) + #define FxaaTexOffGreen4(t, p, o) t.tex.GatherGreen(t.smpl, p, o) +#endif + +/*============================================================================ + GREEN AS LUMA OPTION SUPPORT FUNCTION +============================================================================*/ +#if (FXAA_GREEN_AS_LUMA == 0) +FxaaFloat FxaaLuma(FxaaFloat4 rgba) +{ + return rgba.w; +} +#else +FxaaFloat FxaaLuma(FxaaFloat4 rgba) +{ + return rgba.y; +} +#endif + +/*============================================================================ + + FXAA3 QUALITY - PC + +============================================================================*/ +#if (FXAA_PC == 1) +/*--------------------------------------------------------------------------*/ +FxaaFloat4 FxaaPixelShader( + // + // Use noperspective interpolation here (turn off perspective interpolation). + // {xy} = center of pixel + FxaaFloat2 pos, + // + // Used only for FXAA Console, and not used on the 360 version. + // Use noperspective interpolation here (turn off perspective interpolation). + // {xy__} = upper left of pixel + // {__zw} = lower right of pixel + FxaaFloat4 fxaaConsolePosPos, + // + // Input color texture. + // {rgb_} = color in linear or perceptual color space + // if (FXAA_GREEN_AS_LUMA == 0) + // {___a} = luma in perceptual color space (not linear) + FxaaTex tex, + // + // Only used on the optimized 360 version of FXAA Console. + // For everything but 360, just use the same input here as for "tex". + // For 360, same texture, just alias with a 2nd sampler. + // This sampler needs to have an exponent bias of -1. + FxaaTex fxaaConsole360TexExpBiasNegOne, + // + // Only used on the optimized 360 version of FXAA Console. + // For everything but 360, just use the same input here as for "tex". + // For 360, same texture, just alias with a 3nd sampler. + // This sampler needs to have an exponent bias of -2. + FxaaTex fxaaConsole360TexExpBiasNegTwo, + // + // Only used on FXAA Quality. + // This must be from a constant/uniform. + // {x_} = 1.0/screenWidthInPixels + // {_y} = 1.0/screenHeightInPixels + FxaaFloat2 fxaaQualityRcpFrame, + // + // Only used on FXAA Console. + // This must be from a constant/uniform. + // This effects sub-pixel AA quality and inversely sharpness. + // Where N ranges between, + // N = 0.50 (default) + // N = 0.33 (sharper) + // {x___} = -N/screenWidthInPixels + // {_y__} = -N/screenHeightInPixels + // {__z_} = N/screenWidthInPixels + // {___w} = N/screenHeightInPixels + FxaaFloat4 fxaaConsoleRcpFrameOpt, + // + // Only used on FXAA Console. + // Not used on 360, but used on PS3 and PC. + // This must be from a constant/uniform. + // {x___} = -2.0/screenWidthInPixels + // {_y__} = -2.0/screenHeightInPixels + // {__z_} = 2.0/screenWidthInPixels + // {___w} = 2.0/screenHeightInPixels + FxaaFloat4 fxaaConsoleRcpFrameOpt2, + // + // Only used on FXAA Console. + // Only used on 360 in place of fxaaConsoleRcpFrameOpt2. + // This must be from a constant/uniform. + // {x___} = 8.0/screenWidthInPixels + // {_y__} = 8.0/screenHeightInPixels + // {__z_} = -4.0/screenWidthInPixels + // {___w} = -4.0/screenHeightInPixels + FxaaFloat4 fxaaConsole360RcpFrameOpt2, + // + // Only used on FXAA Quality. + // This used to be the FXAA_QUALITY__SUBPIX define. + // It is here now to allow easier tuning. + // Choose the amount of sub-pixel aliasing removal. + // This can effect sharpness. + // 1.00 - upper limit (softer) + // 0.75 - default amount of filtering + // 0.50 - lower limit (sharper, less sub-pixel aliasing removal) + // 0.25 - almost off + // 0.00 - completely off + FxaaFloat fxaaQualitySubpix, + // + // Only used on FXAA Quality. + // This used to be the FXAA_QUALITY__EDGE_THRESHOLD define. + // It is here now to allow easier tuning. + // The minimum amount of local contrast required to apply algorithm. + // 0.333 - too little (faster) + // 0.250 - low quality + // 0.166 - default + // 0.125 - high quality + // 0.063 - overkill (slower) + FxaaFloat fxaaQualityEdgeThreshold, + // + // Only used on FXAA Quality. + // This used to be the FXAA_QUALITY__EDGE_THRESHOLD_MIN define. + // It is here now to allow easier tuning. + // Trims the algorithm from processing darks. + // 0.0833 - upper limit (default, the start of visible unfiltered edges) + // 0.0625 - high quality (faster) + // 0.0312 - visible limit (slower) + // Special notes when using FXAA_GREEN_AS_LUMA, + // Likely want to set this to zero. + // As colors that are mostly not-green + // will appear very dark in the green channel! + // Tune by looking at mostly non-green content, + // then start at zero and increase until aliasing is a problem. + FxaaFloat fxaaQualityEdgeThresholdMin, + // + // Only used on FXAA Console. + // This used to be the FXAA_CONSOLE__EDGE_SHARPNESS define. + // It is here now to allow easier tuning. + // This does not effect PS3, as this needs to be compiled in. + // Use FXAA_CONSOLE__PS3_EDGE_SHARPNESS for PS3. + // Due to the PS3 being ALU bound, + // there are only three safe values here: 2 and 4 and 8. + // These options use the shaders ability to a free *|/ by 2|4|8. + // For all other platforms can be a non-power of two. + // 8.0 is sharper (default!!!) + // 4.0 is softer + // 2.0 is really soft (good only for vector graphics inputs) + FxaaFloat fxaaConsoleEdgeSharpness, + // + // Only used on FXAA Console. + // This used to be the FXAA_CONSOLE__EDGE_THRESHOLD define. + // It is here now to allow easier tuning. + // This does not effect PS3, as this needs to be compiled in. + // Use FXAA_CONSOLE__PS3_EDGE_THRESHOLD for PS3. + // Due to the PS3 being ALU bound, + // there are only two safe values here: 1/4 and 1/8. + // These options use the shaders ability to a free *|/ by 2|4|8. + // The console setting has a different mapping than the quality setting. + // Other platforms can use other values. + // 0.125 leaves less aliasing, but is softer (default!!!) + // 0.25 leaves more aliasing, and is sharper + FxaaFloat fxaaConsoleEdgeThreshold, + // + // Only used on FXAA Console. + // This used to be the FXAA_CONSOLE__EDGE_THRESHOLD_MIN define. + // It is here now to allow easier tuning. + // Trims the algorithm from processing darks. + // The console setting has a different mapping than the quality setting. + // This only applies when FXAA_EARLY_EXIT is 1. + // This does not apply to PS3, + // PS3 was simplified to avoid more shader instructions. + // 0.06 - faster but more aliasing in darks + // 0.05 - default + // 0.04 - slower and less aliasing in darks + // Special notes when using FXAA_GREEN_AS_LUMA, + // Likely want to set this to zero. + // As colors that are mostly not-green + // will appear very dark in the green channel! + // Tune by looking at mostly non-green content, + // then start at zero and increase until aliasing is a problem. + FxaaFloat fxaaConsoleEdgeThresholdMin, + // + // Extra constants for 360 FXAA Console only. + // Use zeros or anything else for other platforms. + // These must be in physical constant registers and NOT immedates. + // Immedates will result in compiler un-optimizing. + // {xyzw} = float4(1.0, -1.0, 0.25, -0.25) + FxaaFloat4 fxaaConsole360ConstDir) +{ + /*--------------------------------------------------------------------------*/ + FxaaFloat2 posM; + posM.x = pos.x; + posM.y = pos.y; + #if (FXAA_GATHER4_ALPHA == 1) + #if (FXAA_DISCARD == 0) + FxaaFloat4 rgbyM = FxaaTexTop(tex, posM); + #if (FXAA_GREEN_AS_LUMA == 0) + #define lumaM rgbyM.w + #else + #define lumaM rgbyM.y + #endif + #endif + #if (FXAA_GREEN_AS_LUMA == 0) + FxaaFloat4 luma4A = FxaaTexAlpha4(tex, posM); + FxaaFloat4 luma4B = FxaaTexOffAlpha4(tex, posM, FxaaInt2(-1, -1)); + #else + FxaaFloat4 luma4A = FxaaTexGreen4(tex, posM); + FxaaFloat4 luma4B = FxaaTexOffGreen4(tex, posM, FxaaInt2(-1, -1)); + #endif + #if (FXAA_DISCARD == 1) + #define lumaM luma4A.w + #endif + #define lumaE luma4A.z + #define lumaS luma4A.x + #define lumaSE luma4A.y + #define lumaNW luma4B.w + #define lumaN luma4B.z + #define lumaW luma4B.x + #else + FxaaFloat4 rgbyM = FxaaTexTop(tex, posM); + #if (FXAA_GREEN_AS_LUMA == 0) + #define lumaM rgbyM.w + #else + #define lumaM rgbyM.y + #endif + FxaaFloat lumaS = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(0, 1), fxaaQualityRcpFrame.xy)); + FxaaFloat lumaE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(1, 0), fxaaQualityRcpFrame.xy)); + FxaaFloat lumaN = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(0, -1), fxaaQualityRcpFrame.xy)); + FxaaFloat lumaW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1, 0), fxaaQualityRcpFrame.xy)); + #endif + /*--------------------------------------------------------------------------*/ + FxaaFloat maxSM = max(lumaS, lumaM); + FxaaFloat minSM = min(lumaS, lumaM); + FxaaFloat maxESM = max(lumaE, maxSM); + FxaaFloat minESM = min(lumaE, minSM); + FxaaFloat maxWN = max(lumaN, lumaW); + FxaaFloat minWN = min(lumaN, lumaW); + FxaaFloat rangeMax = max(maxWN, maxESM); + FxaaFloat rangeMin = min(minWN, minESM); + FxaaFloat rangeMaxScaled = rangeMax * fxaaQualityEdgeThreshold; + FxaaFloat range = rangeMax - rangeMin; + FxaaFloat rangeMaxClamped = max(fxaaQualityEdgeThresholdMin, rangeMaxScaled); + FxaaBool earlyExit = range < rangeMaxClamped; + /*--------------------------------------------------------------------------*/ + if (earlyExit) + #if (FXAA_DISCARD == 1) + FxaaDiscard; + #else + return rgbyM; + #endif + /*--------------------------------------------------------------------------*/ + #if (FXAA_GATHER4_ALPHA == 0) + FxaaFloat lumaNW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1, -1), fxaaQualityRcpFrame.xy)); + FxaaFloat lumaSE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(1, 1), fxaaQualityRcpFrame.xy)); + FxaaFloat lumaNE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(1, -1), fxaaQualityRcpFrame.xy)); + FxaaFloat lumaSW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1, 1), fxaaQualityRcpFrame.xy)); + #else + FxaaFloat lumaNE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(1, -1), fxaaQualityRcpFrame.xy)); + FxaaFloat lumaSW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1, 1), fxaaQualityRcpFrame.xy)); + #endif + /*--------------------------------------------------------------------------*/ + FxaaFloat lumaNS = lumaN + lumaS; + FxaaFloat lumaWE = lumaW + lumaE; + FxaaFloat subpixRcpRange = 1.0 / range; + FxaaFloat subpixNSWE = lumaNS + lumaWE; + FxaaFloat edgeHorz1 = (-2.0 * lumaM) + lumaNS; + FxaaFloat edgeVert1 = (-2.0 * lumaM) + lumaWE; + /*--------------------------------------------------------------------------*/ + FxaaFloat lumaNESE = lumaNE + lumaSE; + FxaaFloat lumaNWNE = lumaNW + lumaNE; + FxaaFloat edgeHorz2 = (-2.0 * lumaE) + lumaNESE; + FxaaFloat edgeVert2 = (-2.0 * lumaN) + lumaNWNE; + /*--------------------------------------------------------------------------*/ + FxaaFloat lumaNWSW = lumaNW + lumaSW; + FxaaFloat lumaSWSE = lumaSW + lumaSE; + FxaaFloat edgeHorz4 = (abs(edgeHorz1) * 2.0) + abs(edgeHorz2); + FxaaFloat edgeVert4 = (abs(edgeVert1) * 2.0) + abs(edgeVert2); + FxaaFloat edgeHorz3 = (-2.0 * lumaW) + lumaNWSW; + FxaaFloat edgeVert3 = (-2.0 * lumaS) + lumaSWSE; + FxaaFloat edgeHorz = abs(edgeHorz3) + edgeHorz4; + FxaaFloat edgeVert = abs(edgeVert3) + edgeVert4; + /*--------------------------------------------------------------------------*/ + FxaaFloat subpixNWSWNESE = lumaNWSW + lumaNESE; + FxaaFloat lengthSign = fxaaQualityRcpFrame.x; + FxaaBool horzSpan = edgeHorz >= edgeVert; + FxaaFloat subpixA = subpixNSWE * 2.0 + subpixNWSWNESE; + /*--------------------------------------------------------------------------*/ + if (!horzSpan) + { + lumaN = lumaW; + } + if (!horzSpan) + { + lumaS = lumaE; + } + if (horzSpan) + { + lengthSign = fxaaQualityRcpFrame.y; + } + FxaaFloat subpixB = (subpixA * (1.0 / 12.0)) - lumaM; + /*--------------------------------------------------------------------------*/ + FxaaFloat gradientN = lumaN - lumaM; + FxaaFloat gradientS = lumaS - lumaM; + FxaaFloat lumaNN = lumaN + lumaM; + FxaaFloat lumaSS = lumaS + lumaM; + FxaaBool pairN = abs(gradientN) >= abs(gradientS); + FxaaFloat gradient = max(abs(gradientN), abs(gradientS)); + if (pairN) + { + lengthSign = -lengthSign; + } + FxaaFloat subpixC = FxaaSat(abs(subpixB) * subpixRcpRange); + /*--------------------------------------------------------------------------*/ + FxaaFloat2 posB; + posB.x = posM.x; + posB.y = posM.y; + FxaaFloat2 offNP; + offNP.x = (!horzSpan) ? 0.0 : fxaaQualityRcpFrame.x; + offNP.y = (horzSpan) ? 0.0 : fxaaQualityRcpFrame.y; + if (!horzSpan) + { + posB.x += lengthSign * 0.5; + } + if (horzSpan) + { + posB.y += lengthSign * 0.5; + } + /*--------------------------------------------------------------------------*/ + FxaaFloat2 posN; + posN.x = posB.x - offNP.x * FXAA_QUALITY__P0; + posN.y = posB.y - offNP.y * FXAA_QUALITY__P0; + FxaaFloat2 posP; + posP.x = posB.x + offNP.x * FXAA_QUALITY__P0; + posP.y = posB.y + offNP.y * FXAA_QUALITY__P0; + FxaaFloat subpixD = ((-2.0) * subpixC) + 3.0; + FxaaFloat lumaEndN = FxaaLuma(FxaaTexTop(tex, posN)); + FxaaFloat subpixE = subpixC * subpixC; + FxaaFloat lumaEndP = FxaaLuma(FxaaTexTop(tex, posP)); + /*--------------------------------------------------------------------------*/ + if (!pairN) + { + lumaNN = lumaSS; + } + FxaaFloat gradientScaled = gradient * 1.0 / 4.0; + FxaaFloat lumaMM = lumaM - lumaNN * 0.5; + FxaaFloat subpixF = subpixD * subpixE; + FxaaBool lumaMLTZero = lumaMM < 0.0; + /*--------------------------------------------------------------------------*/ + lumaEndN -= lumaNN * 0.5; + lumaEndP -= lumaNN * 0.5; + FxaaBool doneN = abs(lumaEndN) >= gradientScaled; + FxaaBool doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P1; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P1; + } + FxaaBool doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P1; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P1; + } + /*--------------------------------------------------------------------------*/ + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P2; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P2; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P2; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P2; + } + /*--------------------------------------------------------------------------*/ + #if (FXAA_QUALITY__PS > 3) + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P3; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P3; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P3; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P3; + } + /*--------------------------------------------------------------------------*/ + #if (FXAA_QUALITY__PS > 4) + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P4; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P4; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P4; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P4; + } + /*--------------------------------------------------------------------------*/ + #if (FXAA_QUALITY__PS > 5) + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P5; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P5; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P5; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P5; + } + /*--------------------------------------------------------------------------*/ + #if (FXAA_QUALITY__PS > 6) + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P6; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P6; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P6; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P6; + } + /*--------------------------------------------------------------------------*/ + #if (FXAA_QUALITY__PS > 7) + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P7; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P7; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P7; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P7; + } + /*--------------------------------------------------------------------------*/ + #if (FXAA_QUALITY__PS > 8) + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P8; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P8; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P8; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P8; + } + /*--------------------------------------------------------------------------*/ + #if (FXAA_QUALITY__PS > 9) + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P9; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P9; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P9; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P9; + } + /*--------------------------------------------------------------------------*/ + #if (FXAA_QUALITY__PS > 10) + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P10; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P10; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P10; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P10; + } + /*--------------------------------------------------------------------------*/ + #if (FXAA_QUALITY__PS > 11) + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P11; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P11; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P11; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P11; + } + /*--------------------------------------------------------------------------*/ + #if (FXAA_QUALITY__PS > 12) + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P12; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P12; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P12; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P12; + } + /*--------------------------------------------------------------------------*/ + } + #endif + /*--------------------------------------------------------------------------*/ + } + #endif + /*--------------------------------------------------------------------------*/ + } + #endif + /*--------------------------------------------------------------------------*/ + } + #endif + /*--------------------------------------------------------------------------*/ + } + #endif + /*--------------------------------------------------------------------------*/ + } + #endif + /*--------------------------------------------------------------------------*/ + } + #endif + /*--------------------------------------------------------------------------*/ + } + #endif + /*--------------------------------------------------------------------------*/ + } + #endif + /*--------------------------------------------------------------------------*/ + } + #endif + /*--------------------------------------------------------------------------*/ + } + /*--------------------------------------------------------------------------*/ + FxaaFloat dstN = posM.x - posN.x; + FxaaFloat dstP = posP.x - posM.x; + if (!horzSpan) + { + dstN = posM.y - posN.y; + } + if (!horzSpan) + { + dstP = posP.y - posM.y; + } + /*--------------------------------------------------------------------------*/ + FxaaBool goodSpanN = (lumaEndN < 0.0) != lumaMLTZero; + FxaaFloat spanLength = (dstP + dstN); + FxaaBool goodSpanP = (lumaEndP < 0.0) != lumaMLTZero; + FxaaFloat spanLengthRcp = 1.0 / spanLength; + /*--------------------------------------------------------------------------*/ + FxaaBool directionN = dstN < dstP; + FxaaFloat dst = min(dstN, dstP); + FxaaBool goodSpan = directionN ? goodSpanN : goodSpanP; + FxaaFloat subpixG = subpixF * subpixF; + FxaaFloat pixelOffset = (dst * (-spanLengthRcp)) + 0.5; + FxaaFloat subpixH = subpixG * fxaaQualitySubpix; + /*--------------------------------------------------------------------------*/ + FxaaFloat pixelOffsetGood = goodSpan ? pixelOffset : 0.0; + FxaaFloat pixelOffsetSubpix = max(pixelOffsetGood, subpixH); + if (!horzSpan) + { + posM.x += pixelOffsetSubpix * lengthSign; + } + if (horzSpan) + { + posM.y += pixelOffsetSubpix * lengthSign; + } + #if (FXAA_DISCARD == 1) + return FxaaTexTop(tex, posM); + #else + return FxaaFloat4(FxaaTexTop(tex, posM).xyz, lumaM); + #endif +} +/*==========================================================================*/ +#endif diff --git a/gamedata/shaders/d3d11/fxaa_main.ps.hlsl b/gamedata/shaders/d3d11/fxaa_main.ps.hlsl new file mode 100644 index 0000000..a090da1 --- /dev/null +++ b/gamedata/shaders/d3d11/fxaa_main.ps.hlsl @@ -0,0 +1,28 @@ +#include "common.hlsli" +#include "fxaa.hlsli" + +uniform float4 scaled_screen_res; + +float4 main(v2p_aa_AA I) : SV_Target +{ + float2 rcpFrame = scaled_screen_res.zw; + FxaaTex tex = {smp_rtlinear, s_image}; + + return FxaaPixelShader(I.Tex0.xy, + FxaaFloat4(0.0f, 0.0f, 0.0f, 0.0f), // FxaaFloat4 fxaaConsolePosPos, + tex, // FxaaTex tex, + tex, // FxaaTex fxaaConsole360TexExpBiasNegOne, + tex, // FxaaTex fxaaConsole360TexExpBiasNegTwo, + rcpFrame, // FxaaFloat2 fxaaQualityRcpFrame, + FxaaFloat4(0.0f, 0.0f, 0.0f, 0.0f), // FxaaFloat4 fxaaConsoleRcpFrameOpt, + FxaaFloat4(0.0f, 0.0f, 0.0f, 0.0f), // FxaaFloat4 fxaaConsoleRcpFrameOpt2, + FxaaFloat4(0.0f, 0.0f, 0.0f, 0.0f), // FxaaFloat4 fxaaConsole360RcpFrameOpt2, + 0.35f, // FxaaFloat fxaaQualitySubpix, + 0.166f, // FxaaFloat fxaaQualityEdgeThreshold, + 0.0f, // FxaaFloat fxaaQualityEdgeThresholdMin, + 0.0f, // FxaaFloat fxaaConsoleEdgeSharpness, + 0.0f, // FxaaFloat fxaaConsoleEdgeThreshold, + 0.0f, // FxaaFloat fxaaConsoleEdgeThresholdMin, + FxaaFloat4(0.0f, 0.0f, 0.0f, 0.0f) // FxaaFloat fxaaConsole360ConstDir, + ); +} diff --git a/gamedata/shaders/d3d11/gamma_apply.ps.hlsl b/gamedata/shaders/d3d11/gamma_apply.ps.hlsl new file mode 100644 index 0000000..e92c8b1 --- /dev/null +++ b/gamedata/shaders/d3d11/gamma_apply.ps.hlsl @@ -0,0 +1,21 @@ +#include "common.hlsli" + +uniform float4 color_params; +uniform float4 color_grading; + +struct PSInput +{ + float4 hpos : SV_POSITION; + float2 texcoord : TEXCOORD0; +}; + +float4 main(in PSInput I) : SV_Target +{ + float3 color = s_image.Sample(smp_nofilter, I.texcoord.xy).xyz; + + color = color_params.x * pow(color, color_params.y) + color_params.z; + color = saturate(color.xyz * color_grading.xyz); + + color = deband_color(color, I.texcoord.xy); + return float4(color, 1.0f); +} \ No newline at end of file diff --git a/gamedata/shaders/d3d11/gtao_filter.ps.hlsl b/gamedata/shaders/d3d11/gtao_filter.ps.hlsl new file mode 100644 index 0000000..b671d4c --- /dev/null +++ b/gamedata/shaders/d3d11/gtao_filter.ps.hlsl @@ -0,0 +1,69 @@ +/* + Guided GTAO filter + + References: + - https://bartwronski.com/2019/09/22/local-linear-models-guided-filter/ + + Author: + - LVutner + + This is a classic guided box filter, accelerated with GatherRed. + Because we read from (packed) UINT buffer, we can fetch occ&depth with single gather + some bitwise magic. + + ---IX-Ray Engine--- +*/ + +#include "common.hlsli" + +struct PSInput +{ + float4 hpos : SV_POSITION; + float4 texcoord : TEXCOORD0; +}; + +Texture2D t_gtao_packed; + +float main(PSInput I) : SV_Target +{ + int kernel = 7; + int half_kernel = kernel / 2; + + // We only need a depth tap, no reason to unpack occ + float center_tap = f16tof32(t_gtao_packed[I.hpos.xy] & 0x0000ffff); + + // Texture coordinates used for Gather4 + float2 gather_texcoord = (floor(I.texcoord.xy * pos_decompression_params2.xy - 0.5f) + 1.0f) * pos_decompression_params2.zw; + + // Accumulated moments + float4 x_x2_y_xy = (float4)0.0; + + [loop] + for (int i = -half_kernel; i <= half_kernel; i += 2) + { + [loop] + for (int j = -half_kernel; j <= half_kernel; j += 2) + { + // This is why I used UINT rendertarget ;) + uint4 tap = t_gtao_packed.Gather(smp_nofilter, gather_texcoord, int2(i, j)); + + // Unpack view-z and occlusion values + float4 depth_tap = f16tof32(tap & 0x0000ffff); + float4 occ_tap = f16tof32(tap >> 16); + + // Accumulate moments + x_x2_y_xy += float4(dot(depth_tap, (1.0).xxxx), dot(depth_tap, depth_tap), dot(occ_tap, (1.0).xxxx), dot(occ_tap, depth_tap)); + } + } + + // Weight the samples + x_x2_y_xy *= rcp((kernel + 1) * (kernel + 1)); + + float cyx = (x_x2_y_xy.w - x_x2_y_xy.x * x_x2_y_xy.z); + float vx = (x_x2_y_xy.y - x_x2_y_xy.x * x_x2_y_xy.x) + 1e-4; // Avoid NaNs + + float beta = cyx * rcp(vx); + float alpha = x_x2_y_xy.z - beta * x_x2_y_xy.x; + + // Final, filtered value + return saturate(beta * center_tap + alpha); +} diff --git a/gamedata/shaders/d3d11/gtao_render.ps.hlsl b/gamedata/shaders/d3d11/gtao_render.ps.hlsl new file mode 100644 index 0000000..e3d2989 --- /dev/null +++ b/gamedata/shaders/d3d11/gtao_render.ps.hlsl @@ -0,0 +1,183 @@ +/* + Ground-Truth *Based* Ambient Occlusion (unidirectional variant, no arccos) + + References: + - Practical Real-Time Strategies for Accurate Indirect Occlusion [Jimenez et. al]; + - Screen space indirect lighting with visibility bitmask [Olivier Therrien, Yannick Levesque, Guillaume Gilet] + - "GT-VBAO (uniformly weighted)" on ShaderToy [TinyTexel] + + Credits: + - MartyMcFly (huge help with GTAO(VB) implementation and understading the concept of visibility bitmask) + - TinyTexel (no-arccosine GTAO; main inspiration, https://www.shadertoy.com/view/4cdfzf) + - Olivier Therrien (original bitmask implementation, + https://x.com/volfaze/status/1865481248929456639) + + Author: + - LVutner + + ---IX-Ray Engine--- +*/ + +#include "common.hlsli" + +struct PSInput +{ + float4 hpos : SV_POSITION; + float2 texcoord : TEXCOORD0; +}; + +float gtao_parameters; //Factor used to transform world space radius into screen space + +float example_how_to_not_implement_gtao(float3 view_position, float3 view_normal, float2 texcoord, float2 jitter) +{ + //Few constants + //TBD: Put everything into common header + const float GTAO_PI = 3.1415927; + const float GTAO_TAU = 6.2831854; + const float GTAO_HALF_PI = 1.5707964; + const float GTAO_PI_RCP = 0.31830988148; + const float GTAO_2_OVER_PI = 0.63661976296; + + //Settings + int GTAO_DIRECTIONS = 3; //Direction count (3 is sufficient for low radii) + int GTAO_STEPS = 4; //Step count + float GTAO_RADIUS = 0.85; //World space radius (Keep it low. Cache-trasher. I am not joking.) + float GTAO_NEG_1_OVER_RADIUSQR = -1.0 / (GTAO_RADIUS * GTAO_RADIUS); //Just for falloff. Hardcode it if you need to + + //Bias the position to avoid numerical issues + //0.9992 would be OK even for vanilla view-z buffer + view_position *= 0.9992; + + //View direction + float3 view_direction = -normalize(view_position); + + //Screen-space radius (clamped) + float screen_radius = min((GTAO_RADIUS * gtao_parameters) / view_position.z, 256.0); + + //Slice scale + //Y flipped as in original GTAO paper, DirectX hello + float2 slice_scale = pos_decompression_params2.zw * screen_radius * float2(1.0, -1.0); + + //Slice angle, we integrate AO over 2*PI + float slice_angle = GTAO_TAU / float(GTAO_DIRECTIONS); + + //Accumulated occlusion and slice weight + float2 occ_weight = (0.0).xx; + + for (int i = 0; i < GTAO_DIRECTIONS; i++) + { + float angle = (float(i) + jitter.x) * slice_angle; + + //Slice direction + float3 slice_direction = float3(cos(angle), sin(angle), 0.0); + + //GTAO math + float3 axis = cross(view_direction, slice_direction); + float3 proj_normal = view_normal - axis * dot(view_normal, axis); + float3 proj_tangent = cross(axis, proj_normal); + float proj_normal_length = length(proj_normal); + float sin_n = dot(proj_tangent, view_direction) * rcp(proj_normal_length); + + //Init horizon + float max_horizon_cos = sin_n; + + //Find hot horizons in your area :flushed: + for(int j = 0; j < GTAO_STEPS; j += 2) + { + //Ray increment + float2 increment = (j + float2(0.0, 1.0) + jitter.yy) / GTAO_STEPS; + + //Squared for more detail in crevices... + increment *= increment; + + //le sample coords + float4 s_texcoord = texcoord.xyxy + slice_direction.xyxy * slice_scale.xyxy * increment.xxyy; + + //Guard band + if(dot(s_texcoord.zw - saturate(s_texcoord.zw), 1.0) != 0.0) + break; + + //Fetch z-buffer + float2 s_depth = { + s_position.SampleLevel(smp_nofilter, s_texcoord.xy, 0.0f).x, + s_position.SampleLevel(smp_nofilter, s_texcoord.zw, 0.0f).x + }; + + //1st tap + //Manual unrolling, process 2 steps at the time + { + // Sample the view space position + float3 s_vector = GbufferGetPointRealUnjitter(s_texcoord.xy, s_depth.x); + s_vector -= view_position; //Occlusion vector + + float s_vec_length = dot(s_vector, s_vector); + float s_horizon = dot(s_vector, view_direction) * rsqrt(s_vec_length); + + //'Obscurance' term, basically a simple falloff known from HBAO/HBAO+. Just a MAD + saturate + float falloff = saturate(s_vec_length * GTAO_NEG_1_OVER_RADIUSQR + 1.0); + s_horizon = lerp(-1.0, s_horizon, falloff); + + max_horizon_cos = max(max_horizon_cos, s_horizon); + } + + //2nd tap + { + float3 s_vector = GbufferGetPointRealUnjitter(s_texcoord.zw, s_depth.y); + s_vector -= view_position; + + float s_vec_length = dot(s_vector, s_vector); + float s_horizon = dot(s_vector, view_direction) * rsqrt(s_vec_length); + + float falloff = saturate(s_vec_length * GTAO_NEG_1_OVER_RADIUSQR + 1.0); + s_horizon = lerp(-1.0, s_horizon, falloff); + + max_horizon_cos = max(max_horizon_cos, s_horizon); + } + } + + //This is an approximation of importance sampling (Horizon remap is baked into equation) + //Marty's MXAO uses smoothstep() which is a neat approximation (~2% error IIRC?). + //Note: 1.0 + sinNm - c_horizon_cos is identical to uniformly weighted GTAO (See Jimenez et al presentation for details) + max_horizon_cos = saturate(0.5 * sin(GTAO_HALF_PI * (1.0 + sin_n) - GTAO_HALF_PI * max_horizon_cos) + 0.5); + + //Accumulate + //rcp(x) because we are supposed to weight samples by length of projected normal + occ_weight += float2(1.0 - max_horizon_cos, 1.0) * proj_normal_length; + } + + //Normalize + occ_weight.x *= rcp(occ_weight.y); + + //Compensate for missing side... + return saturate(1.0 - occ_weight.x * 2.0); +} + +Texture3D s_blue_noise; +uint main(PSInput I) : SV_Target +{ + //Sample depth buffer + float zbuffer = s_position.SampleLevel(smp_nofilter, I.texcoord.xy, 0.0f).x; + + //Early exit + if(zbuffer == 1.0) + return asuint(f32tof16(1000.0)) | (asuint(f32tof16(1.0)) << 16); + + //Sample blue noise texture + //You can replace 0 with m_taa_jitter.w % 32 to animate it (texture contains 32 frames) + float3 jitter_tex = s_blue_noise[uint3(uint2(I.hpos.xy) % 128, 0)].xyz; + + //Unpack G-Buffer data... + float3 Normal, Point; + { + Normal = s_normal.SampleLevel(smp_nofilter, I.texcoord.xy, 0.0f).xyz; + Normal = NormalDecode(Normal.xy); + Point = GbufferGetPointRealUnjitter(I.texcoord.xy, zbuffer); + } + + //Init. Don't render GTAO past 60 units. It will become a noisy mess... + //View-pos is shifted towards view normal; this eliminates self-occlusion + float occlusion = Point.z > 60.0 ? 1.0 : example_how_to_not_implement_gtao(Point + Normal * 0.0035, Normal, I.texcoord.xy, jitter_tex.xy); + + //Pack the data into R32_UINT (16 bits for depth, and 16 for occlusion) + return asuint(f32tof16(Point.z)) | (asuint(f32tof16(occlusion)) << 16); + +} diff --git a/gamedata/shaders/d3d11/hud3d.ps.hlsl b/gamedata/shaders/d3d11/hud3d.ps.hlsl new file mode 100644 index 0000000..9f19607 --- /dev/null +++ b/gamedata/shaders/d3d11/hud3d.ps.hlsl @@ -0,0 +1,14 @@ +#include "common.hlsli" + +struct ui_vert_out +{ + float2 tc0 : TEXCOORD0; +}; + +float4 main(ui_vert_out I) : SV_Target +{ + float4 r = s_base.Sample(smp_base, I.tc0); + r.xyz = PushGamma(r.xyz); + + return r; +} diff --git a/gamedata/shaders/d3d11/hud3d.vs.hlsl b/gamedata/shaders/d3d11/hud3d.vs.hlsl new file mode 100644 index 0000000..0b4c221 --- /dev/null +++ b/gamedata/shaders/d3d11/hud3d.vs.hlsl @@ -0,0 +1,27 @@ +#include "common.hlsli" + +struct ui_vert_in +{ + float4 P : POSITION; + float4 color : COLOR0; + float2 uv : TEXCOORD0; +}; + +struct ui_vert_out +{ + float2 tc0 : TEXCOORD0; + float4 P : SV_POSITION; +}; + +ui_vert_out main(ui_vert_in v) +{ + ui_vert_out O; + + O.tc0 = v.uv; + O.P = v.P; + O.P.w = 1; + O.P = mul(m_WVP, O.P); + + O.P.xy += m_taa_jitter.xy * O.P.w; + return O; +} diff --git a/gamedata/shaders/d3d11/hud_crosshair.lua b/gamedata/shaders/d3d11/hud_crosshair.lua new file mode 100644 index 0000000..90b0baa --- /dev/null +++ b/gamedata/shaders/d3d11/hud_crosshair.lua @@ -0,0 +1,6 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("hud_crosshair", "simple_color") + :fog(false) + :zb(false, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) +end diff --git a/gamedata/shaders/d3d11/hud_crosshair.vs.hlsl b/gamedata/shaders/d3d11/hud_crosshair.vs.hlsl new file mode 100644 index 0000000..90a7385 --- /dev/null +++ b/gamedata/shaders/d3d11/hud_crosshair.vs.hlsl @@ -0,0 +1,23 @@ +#include "common_iostructs.hlsli" +// #include "common.hlsli" + +uniform float4 screen_res; // Screen resolution (x-Width,y-Height, zw - 1/resolution) + +// Vertex +v2p_TL0uv main(v_TL0uv_positiont I) +{ + v2p_TL0uv O; + + { + I.P.xy += 0.5f; + // O.HPos.x = I.P.x/1024 * 2 - 1; + // O.HPos.y = (I.P.y/768 * 2 - 1)*-1; + O.HPos.x = I.P.x * screen_res.z * 2 - 1; + O.HPos.y = (I.P.y * screen_res.w * 2 - 1) * -1; + O.HPos.zw = I.P.zw; + } + + O.Color = I.Color.bgra; // swizzle vertex colour + + return O; +} diff --git a/gamedata/shaders/d3d11/hud_font.lua b/gamedata/shaders/d3d11/hud_font.lua new file mode 100644 index 0000000..1e6583c --- /dev/null +++ b/gamedata/shaders/d3d11/hud_font.lua @@ -0,0 +1,9 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("stub_notransform_t", "hud_font") + :fog(false) + :zb(false, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + -- shader:sampler ("s_base") :texture (t_base) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") +end diff --git a/gamedata/shaders/d3d11/hud_font.ps.hlsl b/gamedata/shaders/d3d11/hud_font.ps.hlsl new file mode 100644 index 0000000..2dc7257 --- /dev/null +++ b/gamedata/shaders/d3d11/hud_font.ps.hlsl @@ -0,0 +1,13 @@ +#include "common.hlsli" + +// Pixel +float4 main(p_TL I) : SV_Target +{ + float4 r = s_base.Sample(smp_base, I.Tex0); + + r.rgb = I.Color.xyz; + r.a *= I.Color.a; + + return r; +} + diff --git a/gamedata/shaders/d3d11/hud_font2.lua b/gamedata/shaders/d3d11/hud_font2.lua new file mode 100644 index 0000000..1aa16fd --- /dev/null +++ b/gamedata/shaders/d3d11/hud_font2.lua @@ -0,0 +1,9 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("stub_notransform_t", "hud_font2") + :fog(false) + :zb(false, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + -- shader:sampler ("s_base") :texture (t_base) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") +end diff --git a/gamedata/shaders/d3d11/hud_font2.ps.hlsl b/gamedata/shaders/d3d11/hud_font2.ps.hlsl new file mode 100644 index 0000000..0344bc6 --- /dev/null +++ b/gamedata/shaders/d3d11/hud_font2.ps.hlsl @@ -0,0 +1,11 @@ +#include "common.hlsli" + +// Pixel +float4 main(p_TL I) : SV_Target +{ + float4 r = s_base.Sample(smp_base, I.Tex0); + r.w = 1 - r.w; + + return r; +} + diff --git a/gamedata/shaders/d3d11/hud_movie.lua b/gamedata/shaders/d3d11/hud_movie.lua new file mode 100644 index 0000000..3c3dbb8 --- /dev/null +++ b/gamedata/shaders/d3d11/hud_movie.lua @@ -0,0 +1,11 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("stub_notransform_t", "yuv2rgb") + :fog(false) + :zb(false, false) + -- TODO: DX10: Setup samplers + :blend(true, blend.srcalpha, blend.invsrcalpha) + -- shader:sampler ("s_base") :texture (t_base) + + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") +end diff --git a/gamedata/shaders/d3d11/hud_p3d.lua b/gamedata/shaders/d3d11/hud_p3d.lua new file mode 100644 index 0000000..e2a46fc --- /dev/null +++ b/gamedata/shaders/d3d11/hud_p3d.lua @@ -0,0 +1,9 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("hud3d", "hud3d") + :fog(false) + :zb(true, false) + :blend(true, blend.srcalpha, blend.one) + :dx10color_write_enable(true, true, true, false) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") +end diff --git a/gamedata/shaders/d3d11/lod.ps.hlsl b/gamedata/shaders/d3d11/lod.ps.hlsl new file mode 100644 index 0000000..0bc51bf --- /dev/null +++ b/gamedata/shaders/d3d11/lod.ps.hlsl @@ -0,0 +1,56 @@ +#include "common.hlsli" +#include "sload.hlsli" + +void sample_Textures(inout float4 D, inout float4 H, float2 tc1, float2 tc0, float4 af) +{ + float4 D1 = s_base.SampleLevel(smp_base, tc1, 0.0f); + float4 D0 = s_base.SampleLevel(smp_base, tc0, 0.0f); + float4 H0 = s_hemi.SampleLevel(smp_base, tc0, 0.0f); + float4 H1 = s_hemi.SampleLevel(smp_base, tc1, 0.0f); + + H0.xyz = H0.rgb * 2.0f - 1.0f; + H1.xyz = H1.rgb * 2.0f - 1.0f; + + D = lerp(D0, D1, af.w); + D.w *= af.z; + H = lerp(H0, H1, af.w); + H.w *= af.x; +} + +void main(in p_bilbord I, out IXrayGbufferPack O) +{ + float4 D, H; + sample_Textures(D, H, I.tc1, I.tc0, I.af); + float3 N = normalize(H.xyz); + + clip(D.w - def_aref); + + float Sun = saturate(H.w * 2.0f); + + IXrayMaterial M; + M.Depth = I.position.z; + + M.Point = I.position.xyz; + M.Color = D; + + M.Sun = Sun; + + M.AO = 1.0f; + M.SSS = 0.0f; + M.Hemi = H.w; + + M.Normal = N.xyz; + + M.Roughness = 0.95f; + M.Metalness = 0.0f; + +#ifdef USE_LEGACY_LIGHT + M.Metalness = L_material.w; + M.Roughness = def_gloss; +#endif + + M.SnowMask = 0.95f; + O.Velocity = I.hpos_curr.xy / I.hpos_curr.w - I.hpos_old.xy / I.hpos_old.w; + + GbufferPack(O, M); +} diff --git a/gamedata/shaders/d3d11/lod.vs.hlsl b/gamedata/shaders/d3d11/lod.vs.hlsl new file mode 100644 index 0000000..ca15747 --- /dev/null +++ b/gamedata/shaders/d3d11/lod.vs.hlsl @@ -0,0 +1,42 @@ +#include "common.hlsli" +#define L_SCALE 3.1f + +struct v_bolbord +{ + float3 pos0 : POSITION0; + float3 pos1 : POSITION1; + + float3 n0 : NORMAL0; + float3 n1 : NORMAL1; + + float2 tc0 : TEXCOORD0; + float2 tc1 : TEXCOORD1; + + float4 rgbh0 : TEXCOORD2; + float4 rgbh1 : TEXCOORD3; + + float4 sun_af : COLOR0; +}; + +void main(in v_bolbord I, out p_bilbord O) +{ + I.sun_af.xyz = I.sun_af.zyx; + I.rgbh0.xyz = I.rgbh0.zyx; + I.rgbh1.xyz = I.rgbh1.zyx; + + float4 pos = float4(lerp(I.pos0, I.pos1, I.sun_af.w), 1.0f); + float h = lerp(I.rgbh0.w, I.rgbh1.w, I.sun_af.w) * L_SCALE; + O.af = float4(h, h, I.sun_af.z, I.sun_af.w); + + O.hpos = mul(m_VP, pos); + O.position = mul(m_V, pos); + + O.tc0 = I.tc0; + O.tc1 = I.tc1; + + O.hpos_curr = O.hpos; + O.hpos_old = mul(m_VP_old, pos); + + O.hpos.xy += m_taa_jitter.xy * O.hpos.w; +} + diff --git a/gamedata/shaders/d3d11/mark_adjust.hlsli b/gamedata/shaders/d3d11/mark_adjust.hlsli new file mode 100644 index 0000000..e69de29 diff --git a/gamedata/shaders/d3d11/mblur.hlsli b/gamedata/shaders/d3d11/mblur.hlsli new file mode 100644 index 0000000..f6db396 --- /dev/null +++ b/gamedata/shaders/d3d11/mblur.hlsli @@ -0,0 +1,9 @@ +#ifndef MBLUR_H +#define MBLUR_H + +float3 mblur(float2 UV, float3 pos, float3 c_original) +{ + return c_original; +} + +#endif diff --git a/gamedata/shaders/d3d11/metalic_roughness_ambient.hlsli b/gamedata/shaders/d3d11/metalic_roughness_ambient.hlsli new file mode 100644 index 0000000..e25bd97 --- /dev/null +++ b/gamedata/shaders/d3d11/metalic_roughness_ambient.hlsli @@ -0,0 +1,172 @@ +#ifndef metalic_roughness_ambient_h_ixray_included +#define metalic_roughness_ambient_h_ixray_included + +#include "common.hlsli" + +//fitted for height-correlated smith +float2 EpicGamesEnvBRDFApprox(float NdotV, float roughness) +{ + //clamped cuz of extreme spike + NdotV = min(NdotV, 0.998); + + float nsqr = NdotV * NdotV; + float rsqr = roughness * roughness; + + float4 fac = float4(0.0187, 1.0133, 1.0000, 1.0000) + + float4(1.9496, -2.4717, -0.0333, 2.0508) * NdotV + + float4(1.2265, -1.2172, -1.3097, 0.2342) * roughness + + float4(-7.6907, 3.4300, 0.5972, -26.9406) * NdotV * roughness + + float4(18.3314, 1.4794, 19.3537, 11.1429) * nsqr + + float4(-0.2894, 0.5564, 1.5052, 7.0828) * rsqr + + float4(-19.3056, -2.2456, -28.2302, 18.5470) * nsqr * roughness + + float4(7.0144, -1.8934, 1.3307, 50.6469) * NdotV * rsqr + + float4(1.5728, 1.3618, 15.2939, -63.3557) * nsqr * rsqr; + + return saturate(fac.xy / fac.zw); +} + +float3 CompureDiffuseIrradance(float3 N, float3 Hemi) +{ + float3 LightDirection = mul((float3x3)m_invV, N).xyz; + +#ifdef IBL_REMAP_IRRADANCE + RemapVector(LightDirection); +#endif + +#ifdef USE_NORMAL_HEMI_DISTRIBUTION + Hemi = min(Hemi, LightDirection.yyy * 0.375f + 0.375f); +#endif + + float3 SampleLast = env_s0.SampleLevel(smp_linear, LightDirection, 0.0f).xyz; + float3 SampleNext = env_s1.SampleLevel(smp_linear, LightDirection, 0.0f).xyz; + +#ifdef USE_CGIM_SKY_TWEAK + float topToDownVec = saturate(LightDirection.y); + topToDownVec *= topToDownVec; + + float Factor = SMALLSKY_TOP_VECTOR_POWER; + Factor = saturate(Factor + (1.0 - Factor) * topToDownVec) + (1.0 - Factor) * 0.5f; + + Hemi *= Factor * Factor; float3 Irradance = 1.0f; + Hemi *= lerp(SampleLast, SampleNext, L_hemi_color.w); +#else + float3 Irradance = lerp(SampleLast, SampleNext, L_hemi_color.w); +#endif + +#ifdef USE_DIFFUSE_SKY_COLOR + #ifdef USE_BGRA_SKYCOLOR + Irradance *= L_sky_color.zyx; + #else + Irradance *= L_sky_color.xyz; + #endif +#else + Irradance *= L_hemi_color.xyz; +#endif + +#ifdef USE_LEGACY_LIGHT + Irradance *= Irradance; +#endif + + return Irradance * Hemi; +} + +float3 CompureSpecularIrradance(float3 R, float3 Hemi, float Roughness) +{ + float3 LightDirection = mul((float3x3)m_invV, R); + +#ifdef USE_OLD_VIEW_REFLECTIONS + R = mul(m_V_old, LightDirection); +#endif + +#ifndef IBL_MAX_LOD + float4 MipLevels = 0.0f; + sky_s0.GetDimensions(MipLevels.x, MipLevels.y, MipLevels.z, MipLevels.w); + float2 Lod = MipLevels.w * Roughness; + #ifdef USE_HQ_SKY2_LOD + sky_s1.GetDimensions(MipLevels.x, MipLevels.y, MipLevels.z, MipLevels.w); + Lod.y = MipLevels.w * Roughness; + #endif +#else + float2 Lod = IBL_MAX_LOD * Roughness; +#endif + +#ifdef IBL_FAKE_IRRADANCE + float3 SampleLastD = env_s0.SampleLevel(smp_rtlinear, LightDirection, 0.0f).xyz; + float3 SampleNextD = env_s1.SampleLevel(smp_rtlinear, LightDirection, 0.0f).xyz; +#endif + +#ifdef IBL_REMAP_POSITIVE_Y + LightDirection.y = abs(LightDirection.y); +#endif + +#ifdef IBL_REMAP_REFLECTIONS + RemapVector(LightDirection); +#endif + + float3 SampleLast = sky_s0.SampleLevel(smp_linear, LightDirection, Lod.x).xyz; + float3 SampleNext = sky_s1.SampleLevel(smp_linear, LightDirection, Lod.y).xyz; + +#ifdef IBL_FAKE_IRRADANCE + SampleLast = lerp(SampleLast, SampleLastD, Roughness); + SampleNext = lerp(SampleNext, SampleNextD, Roughness); +#endif + + float3 Irradance = lerp(SampleLast, SampleNext, L_hemi_color.w); + +#ifdef USE_SPECULAR_HEMI_COLOR + Irradance *= L_hemi_color.xyz; +#else + #ifdef USE_BGRA_SKYCOLOR + Irradance *= L_sky_color.zyx; + #else + Irradance *= L_sky_color.xyz; + #endif +#endif + +#ifdef USE_VIEW_REFLECTIONS + float4 SampleRef = s_env.SampleLevel(smp_linear, R, 8.0f * Roughness); + SampleRef.xyz *= rcp(1.00001f - SampleRef.xyz); + + float fog = saturate(SampleRef.w * fog_params.w + fog_params.x); + Irradance = lerp(PopGamma(SampleRef.xyz), Irradance, fog); +#endif + + return Irradance * Hemi; +} + +float3 AmbientLighting(float3 DiffuseIrradance, float3 SpecularIrradance, float NdotV, float3 Color, float Metalness, float Roughness, float3 F0 = 0.04f) +{ + DiffuseIrradance = PushGamma(DiffuseIrradance); + SpecularIrradance = PushGamma(SpecularIrradance); + + DiffuseIrradance *= (1.0f - Metalness) * Color; + + float2 BRDF = EpicGamesEnvBRDFApprox(NdotV, Roughness); + float3 F = lerp(F0, Color, Metalness) * BRDF.x + BRDF.y; + + return lerp(DiffuseIrradance, SpecularIrradance, F); +} + +float3 AmbientLighting(float3 View, float3 Normal, float3 Color, float Metalness, float Roughness, float Hemi, float3 F0 = 0.04f) +{ + float3 Reflect = reflect(View, Normal); + +#ifndef USE_LEGACY_LIGHT + float3 DiffuseIrradance = CompureDiffuseIrradance(Normal, Hemi) + L_ambient.xyz; + float3 SpecularIrradance = CompureSpecularIrradance(Reflect, Hemi, Roughness); + float NdotV = max(0.0, dot(Normal, -View)); + + return AmbientLighting(DiffuseIrradance, SpecularIrradance, NdotV, Color, Metalness, Roughness, F0); +#else + float Specular = 0.5f - 0.5f * dot(View, Reflect); + float2 Material = s_material.SampleLevel(smp_material, float3(Hemi, Specular, Metalness), 0).xy; + + float3 DiffuseIrradance = CompureDiffuseIrradance(Normal, Material.x) + L_ambient.xyz; + float3 SpecularIrradance = CompureDiffuseIrradance(Reflect, Material.y); + + return DiffuseIrradance * Color + SpecularIrradance * Roughness; +#endif +} +#endif + + diff --git a/gamedata/shaders/d3d11/metalic_roughness_base.hlsli b/gamedata/shaders/d3d11/metalic_roughness_base.hlsli new file mode 100644 index 0000000..994d8d1 --- /dev/null +++ b/gamedata/shaders/d3d11/metalic_roughness_base.hlsli @@ -0,0 +1,231 @@ +#ifndef metalic_roughness_base_h_ixray_included +#define metalic_roughness_base_h_ixray_included + +#include "common.hlsli" +#define PI 3.141592653589793f + +struct IXrayMaterial +{ + float Metalness; + float Roughness; + + float3 Normal; + float3 Point; + float4 Color; + + float Depth; + + float Hemi; + float Sun; + + float SSS; + float AO; + + float SnowMask; +}; + +struct IXrayGbufferPack +{ + float4 Color : SV_Target0; + + float4 Normal : SV_Target1; + float4 Material : SV_Target2; + + float2 Velocity : SV_Target3; +}; + +struct IXrayGbuffer +{ + float Metalness; + float Roughness; + + float3 Normal; + float3 Color; + float3 F0; + + float Depth; + float Hemi; + + float3 Point; + float3 PointHud; + float3 PointReal; + + float3 View; + float ViewDist; + + float SSS; + float AO; + float SnowMask; +}; + +float2 PackNormalVector(float3 Vector) { + float PackedZ = 0.5f + 0.5f * Vector.z; + float Scale = rcp(dot(Vector.xy, Vector.xy)); + return Vector.xy * sqrt(PackedZ * Scale); +} + +float3 UnPackNormalVector(float2 Packed) { + float PackedZ = dot(Packed, Packed); + + float3 Vector; + + Vector.z = PackedZ * 2.0f - 1.0f; + Vector.xy = Packed * sqrt(1.0f - PackedZ) * 2.0f; + + return Vector; +} + +float2 NormalEncode(float3 Normal) +{ + Normal *= rcp(abs(Normal.x) + abs(Normal.y) + abs(Normal.z)); + float Shift = saturate(-Normal.z); + Normal.xy += Normal.xy > 0.0f ? Shift : -Shift; + + return Normal.xy * 0.5f + 0.5f; +} + +float3 NormalDecode(float2 InNormal) +{ + InNormal = InNormal * 2.0f - 1.0f; + + float3 Normal = float3(InNormal, 1.0f - abs(InNormal.x) - abs(InNormal.y)); + float Shift = saturate(-Normal.z); + + Normal.xy -= Normal.xy > 0.0f ? Shift : -Shift; + + return normalize(Normal); +} + +void GbufferPack(inout IXrayGbufferPack O, inout IXrayMaterial M) +{ + O.Normal.xy = NormalEncode(M.Normal.xyz); + O.Normal.z = M.Roughness; + O.Normal.w = M.SnowMask; + + O.Color.xyz = M.Color.xyz; + O.Color.w = M.SSS; + +#ifdef USE_R2_STATIC_SUN + O.Color.w = M.Sun; +#endif + + O.Material.x = M.Metalness; + O.Material.y = M.Hemi; + + O.Material.z = M.AO; + +#ifndef USE_PBR + O.Material.w = 0.0f; +#else + O.Material.w = 1.0f; +#endif +} + +float4 GbufferGetPoint(in float2 HPos) +{ + float Depth = s_position.Load(int3(HPos, 0)).x; + HPos = HPos - m_taa_jitter.xy * float2(0.5f, -0.5f) * pos_decompression_params2.xy; + float3 Point = float3(HPos * pos_decompression_params.zw - pos_decompression_params.xy, 1.0f); + Point *= depth_unpack.x * rcp(Depth - depth_unpack.y); + return float4(Point, 1.0f); +} + +float3 GbufferGetPointRealUnjitter(in float2 TexCoord, in float Depth) +{ + float3 Point = float3(TexCoord * 2.0f - 1.0f, 1.0f); + + if(Depth < 0.02f) { + Point.z = depth_unpack.z * rcp(Depth * 50.0f - depth_unpack.w); + Point.xy *= pos_decompression_params_hud.xy * Point.z; + } else { + Point.z = depth_unpack.x * rcp(Depth - depth_unpack.y); + Point.xy *= pos_decompression_params.xy * Point.z; + } + + return Point; +} + +float3 GbufferGetPointRealUnjitter(in float2 TexCoord) +{ + float Depth = s_position.Load(int3(TexCoord * pos_decompression_params2.xy, 0)).x; + return GbufferGetPointRealUnjitter(TexCoord, Depth); +} + +void GbufferUnpack(in float2 TexCoord, in float2 HPos, inout IXrayGbuffer O) +{ + float4 NormalHemi = s_normal.Load(int3(HPos, 0)); + + float4 Material = s_surface.Load(int3(HPos, 0)); + float4 ColorSSS = s_diffuse.Load(int3(HPos, 0)); + + O.Depth = s_position.Load(int3(HPos, 0)).x; + + HPos = HPos - m_taa_jitter.xy * float2(0.5f, -0.5f) * pos_decompression_params2.xy; + + float3 P = float3(HPos * pos_decompression_params.zw - pos_decompression_params.xy, 1.0f); + float3 P_hud = float3(HPos * pos_decompression_params_hud.zw - pos_decompression_params_hud.xy, 1.0f); + + O.Point = P * depth_unpack.x * rcp(O.Depth - depth_unpack.y); + O.PointHud = P_hud * depth_unpack.z * rcp(O.Depth * 50.0f - depth_unpack.w); + + O.PointReal = O.Depth < 0.02f ? O.PointHud : O.Point; + + O.ViewDist = length(O.PointReal); + O.View = O.PointReal * rcp(O.ViewDist); + + O.Normal.xyz = NormalDecode(NormalHemi.xy); + O.Hemi = Material.y; + + O.Color.xyz = PushGamma(ColorSSS.xyz); + O.SSS = ColorSSS.w; + + O.Metalness = Material.x; + O.Roughness = NormalHemi.z; + + O.AO = PushGamma(Material.z); + O.F0 = 0.002f + 0.028f * Material.w; + + O.SnowMask = NormalHemi.w; +} + +void GbufferUnpack(in float2 TexCoord, inout IXrayGbuffer O) +{ + float2 HPos = TexCoord * pos_decompression_params2.xy; + + float4 NormalHemi = s_normal.SampleLevel(smp_rtlinear, TexCoord, 0); + + float4 Material = s_surface.SampleLevel(smp_rtlinear, TexCoord, 0); + float4 ColorSSS = s_diffuse.SampleLevel(smp_rtlinear, TexCoord, 0); + + O.Depth = s_position.Load(int3(HPos, 0)).x; + + HPos = HPos - m_taa_jitter.xy * float2(0.5f, -0.5f) * pos_decompression_params2.xy; + + float3 P = float3(HPos * pos_decompression_params.zw - pos_decompression_params.xy, 1.0f); + float3 P_hud = float3(HPos * pos_decompression_params_hud.zw - pos_decompression_params_hud.xy, 1.0f); + + O.Point = P * depth_unpack.x * rcp(O.Depth - depth_unpack.y); + O.PointHud = P_hud * depth_unpack.z * rcp(O.Depth * 50.0f - depth_unpack.w); + + O.PointReal = O.Depth < 0.02f ? O.PointHud : O.Point; + + O.ViewDist = length(O.PointReal); + O.View = O.PointReal * rcp(O.ViewDist); + + O.Normal.xyz = NormalDecode(NormalHemi.xy); + O.Hemi = Material.y; + + O.Color.xyz = PushGamma(ColorSSS.xyz); + O.SSS = ColorSSS.w; + + O.Metalness = Material.x; + O.Roughness = NormalHemi.z; + + O.AO = PushGamma(Material.z); + O.F0 = 0.002f + 0.028f * Material.w; + + O.SnowMask = NormalHemi.w; +} + +#endif + diff --git a/gamedata/shaders/d3d11/metalic_roughness_light.hlsli b/gamedata/shaders/d3d11/metalic_roughness_light.hlsli new file mode 100644 index 0000000..a89507c --- /dev/null +++ b/gamedata/shaders/d3d11/metalic_roughness_light.hlsli @@ -0,0 +1,79 @@ +#ifndef metalic_roughness_light_h_ixray_included +#define metalic_roughness_light_h_ixray_included + +#include "common.hlsli" + +float DistributionGGX(float NdotH, float Roughness) +{ + float Alpha = Roughness * Roughness; + float AlphaTwo = Alpha * Alpha; + + float AlphaTwoInv = AlphaTwo - 1.0f; + + float Divider = NdotH * NdotH * AlphaTwoInv + 1.0f; + return AlphaTwo * rcp(Divider * Divider); +} + +// Simple GSC - like attention +float ComputeLightAttention(float3 PointToLight, float MinAttention) +{ + return saturate(1.0f - dot(PointToLight, PointToLight) * MinAttention); +} + +float GeometrySmithD(float NdotL, float NdotV, float Roughness) +{ + float R = Roughness + 1.0f; + float K = R * R * 0.125f; + float InvK = 1.0f - K; + + float DivGGXL = 1.0f * rcp(K + NdotL * InvK); + float DivGGXV = 1.0f * rcp(K + NdotV * InvK); + + return 0.25f * DivGGXL * DivGGXV; +} + +float3 FresnelSchlick(float3 F, float NdotV) +{ + return F + (1.0f - F) * pow(1.0f - NdotV, 5.0f); +} + +float3 DirectLight(float4 Radiance, float3 Light, float3 Normal, float3 View, float3 Color, float Metalness, float Roughness, float3 F0 = 0.04f) +{ + float3 Half = normalize(Light + View); + + float NdotL = max(0.0f, -dot(Normal, Light)); + float NdotH = max(0.0f, -dot(Normal, Half)); + +#ifndef USE_LEGACY_LIGHT + float NdotV = max(0.0f, -dot(Normal, View)); + float HdotV = max(0.0f, dot(Half, View)); + + float3 D = DistributionGGX(NdotH, Roughness); + float3 G = GeometrySmithD(NdotL, NdotV, Roughness); + float3 F = FresnelSchlick(lerp(F0, Color, Metalness), HdotV); + + float3 Specular = D * G; + float3 Diffuse = Color * (1.0f - Metalness); + + float3 BRDF = lerp(Diffuse, Specular, F); + return PushGamma(Radiance.xyz) * NdotL * BRDF; +#else + float2 Material = s_material.SampleLevel(smp_material, float3(NdotL, NdotH, Metalness), 0).xy; + return Radiance.xyz * (Material.x * Color.xyz + Material.y * Roughness.x * Radiance.w); +#endif +} + +float3 SimpleTranslucency(float3 Radiance, float3 Light, float3 Normal) +{ + float NdotL = dot(Light, Normal); + float Scale = 0.36f * NdotL; + + float Attention = Scale + 0.0769f; Attention *= Attention * 1.171f; + float Factor = 1.0f - saturate(abs(Scale) * 13.0f - 1.0f); + + float SSS = lerp(saturate(NdotL), Attention, Factor * Factor); + return PushGamma(Radiance) * saturate(3.5f * SSS + 0.1f); +} + +#endif + diff --git a/gamedata/shaders/d3d11/model_clockarrow_h.ps.hlsl b/gamedata/shaders/d3d11/model_clockarrow_h.ps.hlsl new file mode 100644 index 0000000..1e7f2dc --- /dev/null +++ b/gamedata/shaders/d3d11/model_clockarrow_h.ps.hlsl @@ -0,0 +1,45 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0: TEXCOORD0; // base + float3 tc1: TEXCOORD1; + float4 c0: COLOR0; // sun.(fog*fog) +}; + +float get_noise(float2 co) +{ + return (frac(sin(dot(co.xy ,float2(12.9898,78.233))) * 43758.5453))*0.5; +}; + +uniform float4 m_affects; +uniform float4 m_timearrow; + +float4 main( v2p I ) : SV_Target +{ + float2 coords = I.tc0; + float2 coords_new; + + // Rotate texture + float sin_a = m_timearrow.x; + float cos_a = m_timearrow.y; + coords.x = coords.x-0.5; + coords.y = coords.y-0.5; + + coords_new.x = coords.x * cos_a + coords.y * sin_a; + coords_new.y = -coords.x * sin_a + coords.y * cos_a; + + coords_new.x = coords_new.x+0.5; + coords_new.y = coords_new.y+0.5; + + + float4 t_base = s_base.Sample( smp_base, coords_new ); + float4 t_noise = s_lmap.Sample( smp_base, coords_new ); + + float noise = get_noise(I.tc0*timers.z) * m_affects.x * m_affects.x * 30; + + t_base.rgb += t_noise.rgb*noise+0.1; + t_base.xyz = detonemap(t_base.xyz); + + return t_base; +} diff --git a/gamedata/shaders/d3d11/model_clockarrow_m.ps.hlsl b/gamedata/shaders/d3d11/model_clockarrow_m.ps.hlsl new file mode 100644 index 0000000..29ec524 --- /dev/null +++ b/gamedata/shaders/d3d11/model_clockarrow_m.ps.hlsl @@ -0,0 +1,45 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0: TEXCOORD0; // base + float3 tc1: TEXCOORD1; + float4 c0: COLOR0; // sun.(fog*fog) +}; + +float get_noise(float2 co) +{ + return (frac(sin(dot(co.xy ,float2(12.9898,78.233))) * 43758.5453))*0.5; +}; + +uniform float4 m_affects; +uniform float4 m_timearrow; + +float4 main( v2p I ) : SV_Target +{ + float2 coords = I.tc0; + float2 coords_new; + + // Rotate texture + float sin_a = m_timearrow.z; + float cos_a = m_timearrow.a; + coords.x = coords.x-0.5; + coords.y = coords.y-0.5; + + coords_new.x = coords.x * cos_a + coords.y * sin_a; + coords_new.y = -coords.x * sin_a + coords.y * cos_a; + + coords_new.x = coords_new.x+0.5; + coords_new.y = coords_new.y+0.5; + + + float4 t_base = s_base.Sample( smp_base, coords_new ); + float4 t_noise = s_lmap.Sample( smp_base, coords_new ); + + float noise = get_noise(I.tc0*timers.z) * m_affects.x * m_affects.x * 30; + + t_base.rgb += t_noise.rgb*noise+0.1; + t_base.xyz = detonemap(t_base.xyz); + + return t_base; +} diff --git a/gamedata/shaders/d3d11/model_clockarrow_s.ps.hlsl b/gamedata/shaders/d3d11/model_clockarrow_s.ps.hlsl new file mode 100644 index 0000000..59f2a71 --- /dev/null +++ b/gamedata/shaders/d3d11/model_clockarrow_s.ps.hlsl @@ -0,0 +1,45 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0: TEXCOORD0; // base + float3 tc1: TEXCOORD1; + float4 c0: COLOR0; // sun.(fog*fog) +}; + +float get_noise(float2 co) +{ + return (frac(sin(dot(co.xy ,float2(12.9898,78.233))) * 43758.5453))*0.5; +}; + +uniform float4 m_affects; +uniform float4 m_timearrow2; + +float4 main( v2p I ) : SV_Target +{ + float2 coords = I.tc0; + float2 coords_new; + + // Rotate texture + float sin_a = m_timearrow2.x; + float cos_a = m_timearrow2.y; + coords.x = coords.x-0.5; + coords.y = coords.y-0.5; + + coords_new.x = coords.x * cos_a + coords.y * sin_a; + coords_new.y = -coords.x * sin_a + coords.y * cos_a; + + coords_new.x = coords_new.x+0.5; + coords_new.y = coords_new.y+0.5; + + + float4 t_base = s_base.Sample( smp_base, coords_new ); + float4 t_noise = s_lmap.Sample( smp_base, coords_new ); + + float noise = get_noise(I.tc0*timers.z) * m_affects.x * m_affects.x * 30; + + t_base.rgb += t_noise.rgb*noise+0.1; + t_base.xyz = detonemap(t_base.xyz); + + return t_base; +} diff --git a/gamedata/shaders/d3d11/model_compassarrow.ps.hlsl b/gamedata/shaders/d3d11/model_compassarrow.ps.hlsl new file mode 100644 index 0000000..f0cadf1 --- /dev/null +++ b/gamedata/shaders/d3d11/model_compassarrow.ps.hlsl @@ -0,0 +1,45 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0: TEXCOORD0; // base + float3 tc1: TEXCOORD1; + float4 c0: COLOR0; // sun.(fog*fog) +}; + +float get_noise(float2 co) +{ + return (frac(sin(dot(co.xy ,float2(12.9898,78.233))) * 43758.5453))*0.5; +}; + +uniform float4 m_affects; +uniform float4 m_timearrow2; + +float4 main( v2p I ) : SV_Target +{ + float2 coords = I.tc0; + float2 coords_new; + + // Rotate texture + float sin_a = m_timearrow2.z; + float cos_a = m_timearrow2.a; + coords.x = coords.x-0.5; + coords.y = coords.y-0.5; + + coords_new.x = coords.x * cos_a + coords.y * sin_a; + coords_new.y = -coords.x * sin_a + coords.y * cos_a; + + coords_new.x = coords_new.x+0.5; + coords_new.y = coords_new.y+0.5; + + + float4 t_base = s_base.Sample( smp_base, coords_new ); + float4 t_noise = s_lmap.Sample( smp_base, coords_new ); + + float noise = get_noise(I.tc0*timers.z) * m_affects.x * m_affects.x * 30; + + t_base.rgb += t_noise.rgb*noise+0.1; + t_base.xyz = detonemap(t_base.xyz); + + return t_base; +} diff --git a/gamedata/shaders/d3d11/model_distort.vs.hlsl b/gamedata/shaders/d3d11/model_distort.vs.hlsl new file mode 100644 index 0000000..0f451a4 --- /dev/null +++ b/gamedata/shaders/d3d11/model_distort.vs.hlsl @@ -0,0 +1,71 @@ +#include "common.hlsli" +#include "skin.hlsli" + +struct vf +{ + float2 tc0 : TEXCOORD0; // base + float4 c0 : COLOR0; // color + float4 hpos : SV_POSITION; + float fog : FOG; +}; + +vf _main(v_model v) +{ + vf o; + + o.hpos = mul(m_WVP, v.P); // xform, input in world coords + o.tc0 = v.tc.xy; // copy tc + + // calculate fade + float3 dir_v = normalize(mul(m_WV, v.P)); + float3 norm_v = normalize(mul((float3x3)m_WV, v.N.xyz)); + float fade = 1 - abs(dot(dir_v, norm_v)); + o.c0 = fade; + o.fog = 1.0f - calc_fogging(float4(mul(m_W, v.P), 1.0f).xyz); // fog, input in world coords + + o.hpos.xy += m_taa_jitter.xy * o.hpos.w; + + return o; +} + +#ifdef SKIN_NONE +vf main(v_model v) +{ + return _main(v); +} +#endif + +#ifdef SKIN_0 +vf main(v_model_skinned_0 v) +{ + return _main(skinning_0(v)); +} +#endif + +#ifdef SKIN_1 +vf main(v_model_skinned_1 v) +{ + return _main(skinning_1(v)); +} +#endif + +#ifdef SKIN_2 +vf main(v_model_skinned_2 v) +{ + return _main(skinning_2(v)); +} +#endif + +#ifdef SKIN_3 +vf main(v_model_skinned_3 v) +{ + return _main(skinning_3(v)); +} +#endif + +#ifdef SKIN_4 +vf main(v_model_skinned_4 v) +{ + return _main(skinning_4(v)); +} +#endif diff --git a/gamedata/shaders/d3d11/model_distort4ghost.vs.hlsl b/gamedata/shaders/d3d11/model_distort4ghost.vs.hlsl new file mode 100644 index 0000000..d674324 --- /dev/null +++ b/gamedata/shaders/d3d11/model_distort4ghost.vs.hlsl @@ -0,0 +1,69 @@ +#include "common.hlsli" +#include "skin.hlsli" + +struct vf +{ + float2 tc0 : TEXCOORD0; // base + float4 c0 : COLOR0; // color + float4 hpos : SV_POSITION; + float fog : FOG; +}; + +vf _main(v_model v) +{ + vf o; + + o.hpos = mul(m_WVP, v.P); // xform, input in world coords + o.tc0 = v.tc.xy; // copy tc + + // calculate fade + float3 dir_v = normalize(mul(m_WV, v.P)); + float3 norm_v = normalize(mul((float3x3)m_WV, v.N.xyz)); + float fade = 1.3 * (1 - abs(dot(dir_v, norm_v))); + o.c0 = fade; + o.fog = 1.0f - calc_fogging(float4(mul(m_W, v.P), 1.0f).xyz); // fog, input in world coords + + return o; +} + +#ifdef SKIN_NONE +vf main(v_model v) +{ + return _main(v); +} +#endif + +#ifdef SKIN_0 +vf main(v_model_skinned_0 v) +{ + return _main(skinning_0(v)); +} +#endif + +#ifdef SKIN_1 +vf main(v_model_skinned_1 v) +{ + return _main(skinning_1(v)); +} +#endif + +#ifdef SKIN_2 +vf main(v_model_skinned_2 v) +{ + return _main(skinning_2(v)); +} +#endif + +#ifdef SKIN_3 +vf main(v_model_skinned_3 v) +{ + return _main(skinning_3(v)); +} +#endif + +#ifdef SKIN_4 +vf main(v_model_skinned_4 v) +{ + return _main(skinning_4(v)); +} +#endif diff --git a/gamedata/shaders/d3d11/model_distort4glass.vs.hlsl b/gamedata/shaders/d3d11/model_distort4glass.vs.hlsl new file mode 100644 index 0000000..5048207 --- /dev/null +++ b/gamedata/shaders/d3d11/model_distort4glass.vs.hlsl @@ -0,0 +1,70 @@ +#include "common.hlsli" +#include "skin.hlsli" + +struct vf +{ + float2 tc0 : TEXCOORD0; // base + float4 c0 : COLOR0; // color + float4 hpos : SV_POSITION; + float fog : FOG; +}; + +vf _main(v_model v) +{ + vf o; + + o.hpos = mul(m_WVP, v.P); // xform, input in world coords + o.tc0 = v.tc.xy; // copy tc + + // calculate fade + float3 dir_v = normalize(mul(m_WV, v.P)); + float3 norm_v = normalize(mul((float3x3)m_WV, v.N.xyz)); + float fade = 0.9 * abs(dot(dir_v, norm_v)); + o.c0 = fade; + o.fog = 1.0f - calc_fogging(float4(mul(m_W, v.P), 1.0f).xyz); // fog, input in world coords + + return o; +} + +#ifdef SKIN_NONE +vf main(v_model v) +{ + return _main(v); +} +#endif + +#ifdef SKIN_0 +vf main(v_model_skinned_0 v) +{ + return _main(skinning_0(v)); +} +#endif + +#ifdef SKIN_1 +vf main(v_model_skinned_1 v) +{ + return _main(skinning_1(v)); +} +#endif + +#ifdef SKIN_2 +vf main(v_model_skinned_2 v) +{ + return _main(skinning_2(v)); +} +#endif + +#ifdef SKIN_3 +vf main(v_model_skinned_3 v) +{ + return _main(skinning_3(v)); +} +#endif + +#ifdef SKIN_4 +vf main(v_model_skinned_4 v) +{ + return _main(skinning_4(v)); +} +#endif + diff --git a/gamedata/shaders/d3d11/model_distort_inv.vs.hlsl b/gamedata/shaders/d3d11/model_distort_inv.vs.hlsl new file mode 100644 index 0000000..79e3329 --- /dev/null +++ b/gamedata/shaders/d3d11/model_distort_inv.vs.hlsl @@ -0,0 +1,69 @@ +#include "common.hlsli" +#include "skin.hlsli" + +struct vf +{ + float2 tc0 : TEXCOORD0; // base + float4 c0 : COLOR0; // color + float4 hpos : SV_POSITION; + float fog : FOG; +}; + +vf _main(v_model v) +{ + vf o; + + o.hpos = mul(m_WVP, v.P); // xform, input in world coords + o.tc0 = v.tc.xy; // copy tc + + // calculate fade + float3 dir_v = normalize(mul(m_WV, v.P)); + float3 norm_v = normalize(mul((float3x3)m_WV, v.N.xyz)); + float fade = abs(dot(dir_v, norm_v)); + o.c0 = fade; + o.fog = 1.0f - calc_fogging(float4(mul(m_W, v.P), 1.0f).xyz); // fog, input in world coords + + return o; +} + +#ifdef SKIN_NONE +vf main(v_model v) +{ + return _main(v); +} +#endif + +#ifdef SKIN_0 +vf main(v_model_skinned_0 v) +{ + return _main(skinning_0(v)); +} +#endif + +#ifdef SKIN_1 +vf main(v_model_skinned_1 v) +{ + return _main(skinning_1(v)); +} +#endif + +#ifdef SKIN_2 +vf main(v_model_skinned_2 v) +{ + return _main(skinning_2(v)); +} +#endif + +#ifdef SKIN_3 +vf main(v_model_skinned_3 v) +{ + return _main(skinning_3(v)); +} +#endif + +#ifdef SKIN_4 +vf main(v_model_skinned_4 v) +{ + return _main(skinning_4(v)); +} +#endif diff --git a/gamedata/shaders/d3d11/model_exohealth.ps.hlsl b/gamedata/shaders/d3d11/model_exohealth.ps.hlsl new file mode 100644 index 0000000..c07fd7c --- /dev/null +++ b/gamedata/shaders/d3d11/model_exohealth.ps.hlsl @@ -0,0 +1,50 @@ +#include "common.hlsli" + +uniform float4 m_actor_params; +uniform float4 m_affects; + +struct v2p +{ + float2 tc0: TEXCOORD0; // base + float3 tc1: TEXCOORD1; // environment + float4 c0: COLOR0; // sun.(fog*fog) +}; + +float get_noise(float2 co) +{ + return (frac(sin(dot(co.xy ,float2(12.9898,78.233))) * 43758.5453))*0.5; +}; + +////////////////////////////////////////////////////////////////////////////////////////// + +float4 main( v2p I ) : SV_Target +{ + // ������� ������� ��������� + float problems = cos( ( frac( timers.z * 4 ) - 0.5 ) * 3.1416 )*2 - 0.8; + float AMPL = 0.3; + I.tc0.y -= ( m_affects.x > 0.15 && I.tc0.x > problems-AMPL && I.tc0.x < problems+AMPL) ? cos(4.71*(I.tc0.x-problems)/AMPL) * sin( frac(timers.z)*6.2831*90 ) * (m_affects.x/10) * (AMPL-abs(I.tc0.x-problems))/AMPL : 0; + + float4 t_base = s_base.Sample ( smp_base, I.tc0); + + + float tmp = 1-m_actor_params.y; + tmp = clamp(tmp, 0, 0.5); + t_base.r +=tmp*t_base.a; + + tmp = 0.5-abs(m_actor_params.y-0.5); + tmp = clamp(tmp, 0, 0.5); + t_base.g +=tmp*t_base.a; + + // + float noise = get_noise(I.tc0*timers.z) * m_affects.x * 2; + t_base.r += noise; + t_base.g += noise; + t_base.b += noise; + t_base.xyz = detonemap(t_base.xyz); + + + return float4 (t_base.r, t_base.g, t_base.b, 1); + +} + + diff --git a/gamedata/shaders/d3d11/model_exoscreen.ps.hlsl b/gamedata/shaders/d3d11/model_exoscreen.ps.hlsl new file mode 100644 index 0000000..f83d8b2 --- /dev/null +++ b/gamedata/shaders/d3d11/model_exoscreen.ps.hlsl @@ -0,0 +1,33 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0: TEXCOORD0; // base + float4 c0: COLOR0; // sun +}; + +uniform float4 m_affects; + +float get_noise(float2 co) +{ + return (frac(sin(dot(co.xy ,float2(12.9898,78.233))) * 43758.5453))*0.5; +}; + +////////////////////////////////////////////////////////////////////////////////////////// +// Pixel +float4 main( v2p I ) : SV_Target +{ + float4 t_base = s_base.Sample( smp_base, I.tc0 ); + + // + float noise = get_noise(I.tc0*timers.z) * m_affects.x * 2; + t_base.r += noise; + t_base.g += noise; + t_base.b += noise; + + t_base.xyz = detonemap(t_base.xyz); + + // #TODO: plohoi fix, no aref model sloman + return float4(t_base.xyz*4.0f,t_base.w * I.c0.w); +} + diff --git a/gamedata/shaders/d3d11/model_green_conditionbar.ps.hlsl b/gamedata/shaders/d3d11/model_green_conditionbar.ps.hlsl new file mode 100644 index 0000000..660d0f1 --- /dev/null +++ b/gamedata/shaders/d3d11/model_green_conditionbar.ps.hlsl @@ -0,0 +1,39 @@ +#include "common.hlsli" + +uniform float4 m_actor_params; +uniform float4 m_affects; + +struct v2p +{ + float2 tc0: TEXCOORD0; // base + float3 tc1: TEXCOORD1; // environment + float4 c0: COLOR0; // sun.(fog*fog) +}; + +float get_noise(float2 co) +{ + return (frac(sin(dot(co.xy ,float2(12.9898,78.233))) * 43758.5453))*0.5; +}; + + +////////////////////////////////////////////////////////////////////////////////////////// + +float4 main( v2p I ) : SV_Target +{ + float4 t_base = s_base.Sample ( smp_base, I.tc0); + + t_base.a = (I.tc0.x < m_actor_params.z) ? 1 : 0; + t_base.r += (0.5 < m_actor_params.z) ? 0 : 0.5; + t_base.g -= (0.25 < m_actor_params.z) ? 0 : 0.5; + + // + float noise = get_noise(I.tc0*timers.z) * m_affects.x * m_affects.x * 30; + t_base.r += noise; + t_base.g += noise; + t_base.b += noise; + t_base.xyz = detonemap(t_base.xyz); + + return float4 (t_base.r, t_base.g, t_base.b, t_base.a); +} + + diff --git a/gamedata/shaders/d3d11/model_green_energybar.ps.hlsl b/gamedata/shaders/d3d11/model_green_energybar.ps.hlsl new file mode 100644 index 0000000..450ec29 --- /dev/null +++ b/gamedata/shaders/d3d11/model_green_energybar.ps.hlsl @@ -0,0 +1,38 @@ +#include "common.hlsli" + +uniform float4 m_actor_params; +uniform float4 m_affects; + +struct v2p +{ + float2 tc0: TEXCOORD0; // base + float3 tc1: TEXCOORD1; // environment + float4 c0: COLOR0; // sun.(fog*fog) +}; + +float get_noise(float2 co) +{ + return (frac(sin(dot(co.xy ,float2(12.9898,78.233))) * 43758.5453))*0.5; +}; + +////////////////////////////////////////////////////////////////////////////////////////// + +float4 main( v2p I ) : SV_Target +{ + float4 t_base = s_base.Sample ( smp_base, I.tc0); + + t_base.a = (I.tc0.x < m_actor_params.a) ? 1 : 0; + t_base.r += (0.1 < m_actor_params.a) ? 0 : 0.5; + t_base.g -= (0.1 < m_actor_params.a) ? 0 : 0.5; + + // + float noise = get_noise(I.tc0*timers.z) * m_affects.x * m_affects.x * 30; + t_base.r += noise; + t_base.g += noise; + t_base.b += noise; + t_base.xyz = detonemap(t_base.xyz); + + return float4 (t_base.r, t_base.g, t_base.b, t_base.a); +} + + diff --git a/gamedata/shaders/d3d11/model_pda_screen.ps.hlsl b/gamedata/shaders/d3d11/model_pda_screen.ps.hlsl new file mode 100644 index 0000000..b060aef --- /dev/null +++ b/gamedata/shaders/d3d11/model_pda_screen.ps.hlsl @@ -0,0 +1,59 @@ +#include "common.hlsli" + +uniform float4 m_affects; + +struct v2p +{ + float2 tc0: TEXCOORD0; // base + float3 tc1: TEXCOORD1; // environment + float4 c0: COLOR0; // sun.(fog*fog) +}; + +float get_noise(float2 co) +{ + return (frac(sin(dot(co.xy ,float2(12.9898,78.233))) * 43758.5453))*0.5; +}; + +Texture2D s_vp2; +Texture2D s_load; +float4 problems_main( v2p I ) +{ + // + float problems = frac( timers.z * 5*(1 + 2 * m_affects.x) ); + I.tc0.x+= ( m_affects.x > 0.09 && I.tc0.y > problems-0.01 && I.tc0.y < problems) ? sin((I.tc0.y-problems)*5*m_affects.y) : 0; + + // + problems = cos( ( frac( timers.z *2 ) - 0.5 ) * 3.1416 )*2 - 0.8; + float AMPL = 0.13; + I.tc0.x -= ( m_affects.x > 0.15 && I.tc0.y > problems-AMPL && I.tc0.y < problems+AMPL) ? cos(4.71*(I.tc0.y-problems)/AMPL) * sin( frac(timers.z)*6.2831*90 ) * 0.02 * (AMPL-abs(I.tc0.y-problems))/AMPL : 0; + + // - + I.tc0.x += ( m_affects.x > 0.38 ) ? (m_affects.y - 0.5) * 0.04 : 0; + + float4 t_vp2 = (m_affects.x < 0.27) ? s_vp2.Sample ( smp_base, I.tc0) : s_base.Sample ( smp_base, I.tc0) ; + + // + float noise = get_noise(I.tc0*timers.z) * m_affects.x * m_affects.x * 20; + t_vp2.r += noise; + t_vp2.g += noise; + t_vp2.b += noise; + + // + t_vp2.rgb = (m_affects.x > 0.41) ? 0 : t_vp2.rgb; + + return float4 (t_vp2.r, t_vp2.g, t_vp2.b, 1); +} + + +float4 loading_main( v2p I ) +{ + float4 t_load = s_load.Sample ( smp_base, I.tc0); + return float4 (t_load.r, t_load.g, t_load.b, 1); +} + +float4 main( v2p I ) : SV_Target +{ + float4 t_base = (m_affects.a > 0 && m_affects.x >= 0.08 ) ? loading_main(I) : problems_main(I); + t_base.xyz = detonemap(t_base.xyz); + return t_base; +} \ No newline at end of file diff --git a/gamedata/shaders/d3d11/model_scope_gauss.ps.hlsl b/gamedata/shaders/d3d11/model_scope_gauss.ps.hlsl new file mode 100644 index 0000000..23337eb --- /dev/null +++ b/gamedata/shaders/d3d11/model_scope_gauss.ps.hlsl @@ -0,0 +1,119 @@ +// #include "common.hlsli" + +// uniform float4 m_hud_params; +// uniform float4 m_zoom_deviation; +// uniform float4 m_affects; + +// struct v2p +// { + // float2 tc0: TEXCOORD0; // base + // float3 tc1: TEXCOORD1; // environment + // float4 c0: COLOR0; // sun.(fog*fog) +// }; + +// float get_noise(float2 co) +// { + // return (frac(sin(dot(co.xy ,float2(12.9898,78.233))) * 43758.5453))*0.5; +// }; + +// ////////////////////////////////////////////////////////////////////////////////////////// + +// float resize(float input, float factor, float offset) +// { + // return (input-0.5f+offset) / factor+0.5f-offset; +// } + +// // Pixel +// uniform float4 screen_res; + +// Texture2D s_vp2; +// //Texture2D s_skymap; + +// //uniform samplerCUBE s_env0; +// //uniform samplerCUBE s_env1; + +// float random(float2 co) +// { + // return 0.5+(frac(sin(dot(co.xy ,float2(12.9898,78.233))) * 43758.5453))*0.5; +// }; + +// float4 main( v2p I ) : SV_Target +// { + // if (m_hud_params.y < 0.0001) return float4 (0,0,0,0); + +// // float2 distort = s_distort.Sample( smp_rtlinear, I.tc); +// // float3 image = s_base.Sample( smp_rtlinear, I.tc + offset); + + // float4 t_base = s_base.Sample ( smp_base, I.tc0); // + // // float4 t_skymap = s_skymap.Sample ( smp_base, I.tc0); // + + // // + // I.tc0.x = I.tc0.x+m_zoom_deviation.x; + // I.tc0.y = I.tc0.y+m_zoom_deviation.y; + + // // , + // I.tc0.x = resize(I.tc0.x, screen_res.x/screen_res.y, 0); + + // float4 t_vp2 = s_vp2.Sample ( smp_base, I.tc0); // + + // // + // float2 offset = distance(I.tc0, float2( .5f, .5f ))*float2(m_hud_params.z, m_hud_params.z); + + // t_vp2.r = s_vp2.Sample ( smp_base, I.tc0+offset).r; + // t_vp2.b = s_vp2.Sample ( smp_base, I.tc0-offset).b; + + // float3 final = float3(0, 0, 0); + + // // + // float noise = random(I.tc0*timers.z) * m_zoom_deviation.w; + + // float gray = ((t_vp2.r + t_vp2.g + t_vp2.b))*m_zoom_deviation.z*7; + // t_vp2.r = t_vp2.r*(1-m_zoom_deviation.z) + gray; + // t_vp2.g = t_vp2.g*(1-m_zoom_deviation.z) + gray; + // t_vp2.b = t_vp2.b*(1-m_zoom_deviation.z) + gray; + + // t_vp2.b+= (0.4 + noise)*m_zoom_deviation.z; + + // // + // float blow_noise = get_noise(I.tc0*timers.z) * m_affects.x * m_affects.x * 30; + // t_vp2.r += blow_noise; + // t_vp2.g += blow_noise; + // t_vp2.b += blow_noise; + // t_base.xyz = detonemap(t_base.xyz); + + // // + // final = lerp (t_vp2, t_base, t_base.a); + + // // out + // return float4 (final.r, final.g, final.b, min(m_hud_params.y, m_hud_params.a)); +// } + +#include "common.hlsli" + +uniform float4 m_hud_params; + +struct v2p +{ + float2 tc0: TEXCOORD0; + float3 tc1: TEXCOORD1; + float4 c0: COLOR0; +}; + +float4 main(v2p I, float4 pos2d : SV_POSITION) : SV_Target +{ + if (m_hud_params.y * m_hud_params.a < 0.0001f) { + return 0.0f; + } + + float4 t_base = s_base.Sample(smp_base, I.tc0); + t_base.xyz = detonemap(t_base.xyz); + + float4 t_vp2 = s_image[pos2d.xy]; + + float alpha = m_hud_params.y * m_hud_params.a; + t_vp2 *= saturate(alpha * 2.0f - 1.0f); + + float3 final = lerp(t_vp2.xyz, t_base.xyz, t_base.a); + return float4(final.xyz, saturate(alpha * 2.0f)); +} + diff --git a/gamedata/shaders/d3d11/model_scope_lense.lua b/gamedata/shaders/d3d11/model_scope_lense.lua new file mode 100644 index 0000000..48348e4 --- /dev/null +++ b/gamedata/shaders/d3d11/model_scope_lense.lua @@ -0,0 +1,31 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "forward_base") + :fog(true) + :zb(true, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :sorting(3, true) + :scope(true) + + shader:dx10texture("s_base", t_base) + + shader:dx10texture("env_s0", "$user$env_s0") + shader:dx10texture("env_s1", "$user$env_s1") + + shader:dx10texture("sky_s0", "$user$sky0") + shader:dx10texture("sky_s1", "$user$sky1") + + shader:dx10texture("s_material", "$user$material") + + shader:dx10sampler("smp_base") + shader:dx10sampler("smp_rtlinear") + shader:dx10sampler("smp_material") +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("scope_lense_mask", "scope_lense_mask") + : zb(false, true) : scope(true) : fog(false) + + shader : dx10texture("s_position", "$user$position") + shader : dx10sampler("smp_base") +end diff --git a/gamedata/shaders/d3d11/model_scope_lense.ps.hlsl b/gamedata/shaders/d3d11/model_scope_lense.ps.hlsl new file mode 100644 index 0000000..4cd6898 --- /dev/null +++ b/gamedata/shaders/d3d11/model_scope_lense.ps.hlsl @@ -0,0 +1,29 @@ +#include "common.hlsli" + +uniform float4 m_hud_params; + +struct v2p +{ + float2 tc0: TEXCOORD0; + float3 tc1: TEXCOORD1; + float4 c0: COLOR0; +}; + +float4 main(v2p I, float4 pos2d : SV_POSITION) : SV_Target +{ + if (m_hud_params.y * m_hud_params.a < 0.0001f) { + return 0.0f; + } + + float4 t_base = s_base.Sample(smp_base, I.tc0); + t_base.xyz = detonemap(t_base.xyz); + + float4 t_vp2 = s_image[pos2d.xy]; + + float alpha = m_hud_params.y * m_hud_params.a; + t_vp2 *= saturate(alpha * 2.0f - 1.0f); + + float3 final = lerp(t_vp2.xyz, t_base.xyz, t_base.a); + return float4(final.xyz, saturate(alpha * 2.0f)); +} + diff --git a/gamedata/shaders/d3d11/model_scope_lense_lerp.ps.hlsl b/gamedata/shaders/d3d11/model_scope_lense_lerp.ps.hlsl new file mode 100644 index 0000000..5b6cc22 --- /dev/null +++ b/gamedata/shaders/d3d11/model_scope_lense_lerp.ps.hlsl @@ -0,0 +1,38 @@ +#include "common.hlsli" + +uniform float4 m_hud_params; +uniform float4 m_zoom_deviation; + +struct v2p +{ + float2 tc0: TEXCOORD0; + float3 tc1: TEXCOORD1; + float4 c0: COLOR0; +}; + +float4 main(v2p I, float4 pos2d : SV_POSITION) : SV_Target +{ + if (m_hud_params.y * m_hud_params.a < 0.0001f) { + return 0.0f; + } + + float2 coords = I.tc0; + coords.x *= 0.5f; + + float4 base2 = s_base.Sample(smp_base, coords); + coords.x += 0.5f; + + float4 t_base = s_base.Sample(smp_base, coords); + + t_base = lerp(base2, t_base, m_zoom_deviation.z); + t_base.xyz = detonemap(t_base.xyz); + + float4 t_vp2 = s_image[pos2d.xy]; + + float alpha = m_hud_params.y * m_hud_params.a; + t_vp2 *= saturate(alpha * 2.0f - 1.0f); + + float3 final = lerp(t_vp2.xyz, t_base.xyz, t_base.a); + return float4(final.xyz, saturate(alpha * 2.0f)); +} + diff --git a/gamedata/shaders/d3d11/model_scope_lense_night.ps.hlsl b/gamedata/shaders/d3d11/model_scope_lense_night.ps.hlsl new file mode 100644 index 0000000..3e03f0d --- /dev/null +++ b/gamedata/shaders/d3d11/model_scope_lense_night.ps.hlsl @@ -0,0 +1,31 @@ +#include "common.hlsli" +#include "pnv.hlsli" + +uniform float4 m_hud_params; + +struct v2p +{ + float2 tc0: TEXCOORD0; + float3 tc1: TEXCOORD1; + float4 c0: COLOR0; +}; + +float4 main(v2p I, float4 pos2d : SV_POSITION) : SV_Target +{ + if (m_hud_params.y * m_hud_params.a < 0.0001f) { + return 0.0f; + } + + float4 t_base = s_base.Sample(smp_base, I.tc0); + t_base.xyz = detonemap(t_base.xyz); + + float4 t_vp2 = s_image[pos2d.xy]; + t_vp2.xyz = calc_night_vision_effect(I.tc0, t_vp2, float3(1.0, 2.0, 1.0)); + + float alpha = m_hud_params.y * m_hud_params.a; + t_vp2 *= saturate(alpha * 2.0f - 1.0f); + + float3 final = lerp(t_vp2.xyz, t_base.xyz, t_base.a); + return float4(final.xyz, saturate(alpha * 2.0f)); +} + diff --git a/gamedata/shaders/d3d11/model_tricolor_conditionbar.ps.hlsl b/gamedata/shaders/d3d11/model_tricolor_conditionbar.ps.hlsl new file mode 100644 index 0000000..ac5f117 --- /dev/null +++ b/gamedata/shaders/d3d11/model_tricolor_conditionbar.ps.hlsl @@ -0,0 +1,26 @@ +#include "common.hlsli" + +uniform float4 m_actor_params; + +struct v2p +{ + float2 tc0: TEXCOORD0; // base + float3 tc1: TEXCOORD1; // environment + float4 c0: COLOR0; // sun.(fog*fog) +}; + +////////////////////////////////////////////////////////////////////////////////////////// + +float4 main( v2p I ) : SV_Target +{ + float4 t_base; + t_base.r = ((m_actor_params.z<0.5) && (I.tc0.x < m_actor_params.z)) ? 1 : 0; + t_base.g = ((m_actor_params.z>0.25) && (I.tc0.x < m_actor_params.z)) ? 1 : 0; + t_base.b = 0; + t_base.a = (I.tc0.x < m_actor_params.z) ? 1 : 0; + + return float4 (t_base.r, t_base.g, t_base.b, t_base.a); + +} + + diff --git a/gamedata/shaders/d3d11/models_clockarrow_h.lua b/gamedata/shaders/d3d11/models_clockarrow_h.lua new file mode 100644 index 0000000..7f3d599 --- /dev/null +++ b/gamedata/shaders/d3d11/models_clockarrow_h.lua @@ -0,0 +1,12 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_distort","model_clockarrow_h") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:dx10texture ("s_base", t_base) + shader:dx10texture ("s_lmap", "$blackalpha") + shader:dx10sampler ("smp_base") +end \ No newline at end of file diff --git a/gamedata/shaders/d3d11/models_clockarrow_h_screen.lua b/gamedata/shaders/d3d11/models_clockarrow_h_screen.lua new file mode 100644 index 0000000..06d4bc7 --- /dev/null +++ b/gamedata/shaders/d3d11/models_clockarrow_h_screen.lua @@ -0,0 +1,12 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_distort","model_clockarrow_h") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:dx10texture ("s_base", t_base) + shader:dx10texture ("s_lmap", "$alphadxt1") + shader:dx10sampler ("smp_base") +end diff --git a/gamedata/shaders/d3d11/models_clockarrow_m.lua b/gamedata/shaders/d3d11/models_clockarrow_m.lua new file mode 100644 index 0000000..cf54b92 --- /dev/null +++ b/gamedata/shaders/d3d11/models_clockarrow_m.lua @@ -0,0 +1,12 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_distort","model_clockarrow_m") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:dx10texture ("s_base", t_base) + shader:dx10texture ("s_lmap", "$blackalpha") + shader:dx10sampler ("smp_base") +end diff --git a/gamedata/shaders/d3d11/models_clockarrow_m_screen.lua b/gamedata/shaders/d3d11/models_clockarrow_m_screen.lua new file mode 100644 index 0000000..4265e8d --- /dev/null +++ b/gamedata/shaders/d3d11/models_clockarrow_m_screen.lua @@ -0,0 +1,12 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_distort","model_clockarrow_m") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:dx10texture ("s_base", t_base) + shader:dx10texture ("s_lmap", "$alphadxt1") + shader:dx10sampler ("smp_base") +end diff --git a/gamedata/shaders/d3d11/models_clockarrow_s.lua b/gamedata/shaders/d3d11/models_clockarrow_s.lua new file mode 100644 index 0000000..891c101 --- /dev/null +++ b/gamedata/shaders/d3d11/models_clockarrow_s.lua @@ -0,0 +1,12 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_distort","model_clockarrow_s") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:dx10texture ("s_base", t_base) + shader:dx10texture ("s_lmap", "$blackalpha") + shader:dx10sampler ("smp_base") +end diff --git a/gamedata/shaders/d3d11/models_clockarrow_s_screen.lua b/gamedata/shaders/d3d11/models_clockarrow_s_screen.lua new file mode 100644 index 0000000..4d47486 --- /dev/null +++ b/gamedata/shaders/d3d11/models_clockarrow_s_screen.lua @@ -0,0 +1,12 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_distort","model_clockarrow_s") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:dx10texture ("s_base", t_base) + shader:dx10texture ("s_lmap", "$alphadxt1") + shader:dx10sampler ("smp_base") +end diff --git a/gamedata/shaders/d3d11/models_collimator.lua b/gamedata/shaders/d3d11/models_collimator.lua new file mode 100644 index 0000000..525e0d7 --- /dev/null +++ b/gamedata/shaders/d3d11/models_collimator.lua @@ -0,0 +1,11 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "base_lplanes_fft") + : fog(true) + : zb(true, false) + : blend(true, blend.one, blend.one) + : aref(true, 0) + : sorting(3, true) + : distort(true) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") +end \ No newline at end of file diff --git a/gamedata/shaders/d3d11/models_collimsight.lua b/gamedata/shaders/d3d11/models_collimsight.lua new file mode 100644 index 0000000..70fd6b3 --- /dev/null +++ b/gamedata/shaders/d3d11/models_collimsight.lua @@ -0,0 +1,11 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_distort_inv", "base_lplanes") + :fog(false) + :zb(true, false) + :blend(true, blend.srcalpha, blend.one) + :aref(true, 0) + :sorting(2, true) + --shader:sampler ("s_base") :texture (t_base) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") +end diff --git a/gamedata/shaders/d3d11/models_compass_arrow.lua b/gamedata/shaders/d3d11/models_compass_arrow.lua new file mode 100644 index 0000000..007d51d --- /dev/null +++ b/gamedata/shaders/d3d11/models_compass_arrow.lua @@ -0,0 +1,12 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_distort","model_compassarrow") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:dx10texture ("s_base", t_base) + shader:dx10texture ("s_lmap", "$blackalpha") + shader:dx10sampler ("smp_base") +end diff --git a/gamedata/shaders/d3d11/models_compass_arrow_screen.lua b/gamedata/shaders/d3d11/models_compass_arrow_screen.lua new file mode 100644 index 0000000..c492e58 --- /dev/null +++ b/gamedata/shaders/d3d11/models_compass_arrow_screen.lua @@ -0,0 +1,12 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_distort","model_compassarrow") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:dx10texture ("s_base", t_base) + shader:dx10texture ("s_lmap", "$alphadxt1") + shader:dx10sampler ("smp_base") +end diff --git a/gamedata/shaders/d3d11/models_compscreen.lua b/gamedata/shaders/d3d11/models_compscreen.lua new file mode 100644 index 0000000..88885dc --- /dev/null +++ b/gamedata/shaders/d3d11/models_compscreen.lua @@ -0,0 +1,18 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "deffer_base") + :fog(false) + :emissive(true) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") + shader:dx10stencil(true, cmp_func.always, 255, 127, stencil_op.keep, stencil_op.replace, stencil_op.keep) + shader:dx10stencil_ref(1) +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "accum_emissivel") + :zb(true, false) + :fog(false) + :emissive(true) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") +end \ No newline at end of file diff --git a/gamedata/shaders/d3d11/models_condition.lua b/gamedata/shaders/d3d11/models_condition.lua new file mode 100644 index 0000000..8636229 --- /dev/null +++ b/gamedata/shaders/d3d11/models_condition.lua @@ -0,0 +1,14 @@ +local tex_env0 = "$user$sky0" +local tex_env1 = "$user$sky1" + +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_distort","model_green_conditionbar") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:dx10texture ("s_base", t_base) + shader:dx10sampler ("smp_base") +end diff --git a/gamedata/shaders/d3d11/models_digiclock_hh_screen.lua b/gamedata/shaders/d3d11/models_digiclock_hh_screen.lua new file mode 100644 index 0000000..d43c5fd --- /dev/null +++ b/gamedata/shaders/d3d11/models_digiclock_hh_screen.lua @@ -0,0 +1,18 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "deffer_base") + :fog(false) + :emissive(true) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") + shader:dx10stencil(true, cmp_func.always, 255, 127, stencil_op.keep, stencil_op.replace, stencil_op.keep) + shader:dx10stencil_ref(1) +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "accum_emissivel") + :zb(true, false) + :fog(false) + :emissive(true) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") +end diff --git a/gamedata/shaders/d3d11/models_digiclock_hl_screen.lua b/gamedata/shaders/d3d11/models_digiclock_hl_screen.lua new file mode 100644 index 0000000..d43c5fd --- /dev/null +++ b/gamedata/shaders/d3d11/models_digiclock_hl_screen.lua @@ -0,0 +1,18 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "deffer_base") + :fog(false) + :emissive(true) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") + shader:dx10stencil(true, cmp_func.always, 255, 127, stencil_op.keep, stencil_op.replace, stencil_op.keep) + shader:dx10stencil_ref(1) +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "accum_emissivel") + :zb(true, false) + :fog(false) + :emissive(true) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") +end diff --git a/gamedata/shaders/d3d11/models_digiclock_mh_screen.lua b/gamedata/shaders/d3d11/models_digiclock_mh_screen.lua new file mode 100644 index 0000000..d43c5fd --- /dev/null +++ b/gamedata/shaders/d3d11/models_digiclock_mh_screen.lua @@ -0,0 +1,18 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "deffer_base") + :fog(false) + :emissive(true) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") + shader:dx10stencil(true, cmp_func.always, 255, 127, stencil_op.keep, stencil_op.replace, stencil_op.keep) + shader:dx10stencil_ref(1) +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "accum_emissivel") + :zb(true, false) + :fog(false) + :emissive(true) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") +end diff --git a/gamedata/shaders/d3d11/models_digiclock_ml_screen.lua b/gamedata/shaders/d3d11/models_digiclock_ml_screen.lua new file mode 100644 index 0000000..d43c5fd --- /dev/null +++ b/gamedata/shaders/d3d11/models_digiclock_ml_screen.lua @@ -0,0 +1,18 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "deffer_base") + :fog(false) + :emissive(true) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") + shader:dx10stencil(true, cmp_func.always, 255, 127, stencil_op.keep, stencil_op.replace, stencil_op.keep) + shader:dx10stencil_ref(1) +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "accum_emissivel") + :zb(true, false) + :fog(false) + :emissive(true) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") +end diff --git a/gamedata/shaders/d3d11/models_energy_gauss.lua b/gamedata/shaders/d3d11/models_energy_gauss.lua new file mode 100644 index 0000000..ecf7cf1 --- /dev/null +++ b/gamedata/shaders/d3d11/models_energy_gauss.lua @@ -0,0 +1,14 @@ +local tex_env0 = "$user$sky0" +local tex_env1 = "$user$sky1" + +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_distort","model_green_energybar") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:dx10texture ("s_base", t_base) + shader:dx10sampler ("smp_base") +end diff --git a/gamedata/shaders/d3d11/models_exohealth.lua b/gamedata/shaders/d3d11/models_exohealth.lua new file mode 100644 index 0000000..6f6f2fe --- /dev/null +++ b/gamedata/shaders/d3d11/models_exohealth.lua @@ -0,0 +1,14 @@ +local tex_env0 = "$user$sky0" +local tex_env1 = "$user$sky1" + +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_distort","model_exohealth") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:dx10texture ("s_base", t_base) + shader:dx10sampler ("smp_base") +end diff --git a/gamedata/shaders/d3d11/models_exoscreen01.lua b/gamedata/shaders/d3d11/models_exoscreen01.lua new file mode 100644 index 0000000..fefa49a --- /dev/null +++ b/gamedata/shaders/d3d11/models_exoscreen01.lua @@ -0,0 +1,11 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_distort","model_exoscreen") + : fog (false) + : zb (true,false) + : blend (true,blend.srcalpha,blend.one) + : aref (true,0) + : sorting (2, true) + --shader:sampler ("s_base") :texture (t_base) + shader:dx10texture ("s_base", t_base) + shader:dx10sampler ("smp_base") +end diff --git a/gamedata/shaders/d3d11/models_laserray.lua b/gamedata/shaders/d3d11/models_laserray.lua new file mode 100644 index 0000000..3824325 --- /dev/null +++ b/gamedata/shaders/d3d11/models_laserray.lua @@ -0,0 +1,11 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_distort","base_lplanes") + : fog (false) + : zb (true,false) + : blend (true,blend.srcalpha,blend.one) + : aref (true,0) + : sorting (2, true) + --shader:sampler ("s_base") :texture (t_base) + shader:dx10texture ("s_base", t_base) + shader:dx10sampler ("smp_base") +end diff --git a/gamedata/shaders/d3d11/models_lense_scope.lua b/gamedata/shaders/d3d11/models_lense_scope.lua new file mode 100644 index 0000000..335423f --- /dev/null +++ b/gamedata/shaders/d3d11/models_lense_scope.lua @@ -0,0 +1,12 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("deffer_model","model_scope_lense") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:dx10texture ("s_base", t_base) + shader:dx10texture ("s_vp2", "$user$viewport2") + shader:dx10sampler ("smp_base") +end diff --git a/gamedata/shaders/d3d11/models_lfo_glass_lens_weapons.lua b/gamedata/shaders/d3d11/models_lfo_glass_lens_weapons.lua new file mode 100644 index 0000000..c716089 --- /dev/null +++ b/gamedata/shaders/d3d11/models_lfo_glass_lens_weapons.lua @@ -0,0 +1,14 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("models_reflex_lens", "models_reflex_lens") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:dx10texture("s_base", t_base) + shader:dx10texture("s_tonemap", "$user$tonemap") + shader:dx10texture("s_env0", "$user$sky0") + shader:dx10texture("s_env1", "$user$sky1") + shader:dx10sampler("smp_rtlinear") +end diff --git a/gamedata/shaders/d3d11/models_lfo_light_dot_weapons.lua b/gamedata/shaders/d3d11/models_lfo_light_dot_weapons.lua new file mode 100644 index 0000000..a3aec79 --- /dev/null +++ b/gamedata/shaders/d3d11/models_lfo_light_dot_weapons.lua @@ -0,0 +1,11 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("parallax_mark", "parallax_mark") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.one) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_rtlinear") +end diff --git a/gamedata/shaders/d3d11/models_lightplanes.lua b/gamedata/shaders/d3d11/models_lightplanes.lua new file mode 100644 index 0000000..86820ba --- /dev/null +++ b/gamedata/shaders/d3d11/models_lightplanes.lua @@ -0,0 +1,11 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_distort_inv", "base_lplanes") + :fog(false) + :zb(true, false) + :blend(true, blend.srcalpha, blend.one) + :aref(true, 0) + :sorting(2, true) + --shader:sampler ("s_base") :texture (t_base) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") +end diff --git a/gamedata/shaders/d3d11/models_pautina.lua b/gamedata/shaders/d3d11/models_pautina.lua new file mode 100644 index 0000000..c0740bf --- /dev/null +++ b/gamedata/shaders/d3d11/models_pautina.lua @@ -0,0 +1,23 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_distort4ghost", "particle_hard") + :sorting(3, true) + :blend(true, blend.srccolor, blend.invsrcalpha) + :aref(true, 0) + :zb(true, false) + :fog(false) + :distort(false) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort4ghost", "particle_distort_hard") + :sorting(3, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:dx10texture("s_base", t_base) + shader:dx10texture("s_distort", "pfx\\pfx_dist_glass") + shader:dx10sampler("smp_linear") +end diff --git a/gamedata/shaders/d3d11/models_pda.lua b/gamedata/shaders/d3d11/models_pda.lua new file mode 100644 index 0000000..809d7b0 --- /dev/null +++ b/gamedata/shaders/d3d11/models_pda.lua @@ -0,0 +1,18 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "deffer_base") + :fog(false) + :emissive(true) + shader:dx10texture("s_base", "$user$ui_pda") + shader:dx10sampler("smp_base") + shader:dx10stencil(true, cmp_func.always, 255, 127, stencil_op.keep, stencil_op.replace, stencil_op.keep) + shader:dx10stencil_ref(1) +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "accum_emissivel") + :zb(true, false) + :fog(false) + :emissive(true) + shader:dx10texture("s_base", "$user$ui_pda") + shader:dx10sampler("smp_base") +end diff --git a/gamedata/shaders/d3d11/models_reflex_lens.lua b/gamedata/shaders/d3d11/models_reflex_lens.lua new file mode 100644 index 0000000..c716089 --- /dev/null +++ b/gamedata/shaders/d3d11/models_reflex_lens.lua @@ -0,0 +1,14 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("models_reflex_lens", "models_reflex_lens") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:dx10texture("s_base", t_base) + shader:dx10texture("s_tonemap", "$user$tonemap") + shader:dx10texture("s_env0", "$user$sky0") + shader:dx10texture("s_env1", "$user$sky1") + shader:dx10sampler("smp_rtlinear") +end diff --git a/gamedata/shaders/d3d11/models_reflex_lens.ps.hlsl b/gamedata/shaders/d3d11/models_reflex_lens.ps.hlsl new file mode 100644 index 0000000..9724798 --- /dev/null +++ b/gamedata/shaders/d3d11/models_reflex_lens.ps.hlsl @@ -0,0 +1,90 @@ +/* + ===================================================================== + Addon : Parallax Reflex Sights + Link : https://www.moddb.com/mods/stalker-anomaly/addons/parallax-reflex-sights + Authors : LVutner, party_50 + Date : 06.02.2024 + Last Edit : 15.05.2025 + ===================================================================== +*/ + +#include "common.hlsli" + +struct vf +{ + float4 hpos : SV_Position; + float2 tc0 : TEXCOORD0; + float3 T : TEXCOORD1; + float3 B : TEXCOORD2; + float3 N : TEXCOORD3; + float3 P : TEXCOORD4; +}; + +TextureCube s_env0; +TextureCube s_env1; + +float3 sample_sky(float3 dir) +{ + dir.y = (dir.y - max(cos(dir.x) * 0.65, cos(dir.z) * 0.65)) * 2.1; + dir.y -= -0.35; + + float3 sky0 = s_env0.SampleLevel(smp_base, dir, 0).xyz; + float3 sky1 = s_env1.SampleLevel(smp_base, dir, 0).xyz; + + return lerp(sky0, sky1, L_ambient.w); +} + +float current_lum() +{ + float lum_min = 0.85; + float lum_max = 3; + float lum = s_tonemap.Load(int3(0, 0, 0)).x; + return clamp(1 - (lum - lum_min) / (lum_max - lum_min), 0, 1); +} + +float3 sample_lens_normalmap(float2 tc, float radius) +{ + float2 xy = (tc - 0.5) * 2; + return float3(xy, sign(radius) * sqrt(pow(radius, 2) - dot(xy, xy))); +} + +float4 sample_reflections(float2 tc, float3x3 TBNw_inv, float3 w_pos, float3 w_nrm) +{ + float3 normalmap = sample_lens_normalmap(tc, 2); + float3 lensnormal = normalize(float3(dot(normalmap, TBNw_inv[0]), dot(normalmap, TBNw_inv[1]), dot(normalmap, TBNw_inv[2]))); + + float3 reflections = sample_sky(reflect(normalize(normalize(w_pos - eye_position)), lensnormal)); + + float angle_factor = (dot(normalize(w_pos - eye_position), normalize(w_nrm)) + 1) / 2; + + float4 color_direct = s_base.Sample(smp_rtlinear, float2(tc.x / 2 + 0.5, tc.y / 2)); + float4 color_angled = s_base.Sample(smp_rtlinear, float2(tc.x / 2 + 0.5, tc.y / 2 + 0.5)); + float4 color = lerp(color_direct, color_angled, smoothstep(0, 0.5, angle_factor)); + reflections = saturate(reflections * color.rgb); + + return float4(reflections, current_lum() * smoothstep(0, 0.03, angle_factor) * color.a); +} + +float4 sample_dirt(float2 tc, float3 w_nrm) +{ + float4 color = s_base.Sample(smp_rtlinear, float2(tc.x / 2, tc.y / 2 + 0.5)); + return float4(color.rgb * 2 * calc_model_lq_lighting(w_nrm), color.a); +} + +float4 rgba_blend(float4 b, float4 a) +{ + float na = a.a + b.a * (1 - a.a); + float3 nc = na > 0 ? (a.rgb * a.a + b.rgb * b.a * (1 - a.a)) / na : float3(0, 0, 0); + return float4(nc, na); +} + +float4 main(vf I): SV_Target +{ + float4 lens = s_base.Sample(smp_rtlinear, I.tc0 / 2); + lens.a *= current_lum(); + + float4 reflections = sample_reflections(I.tc0, transpose(float3x3(I.T, I.B, I.N)), I.P, I.N); + float4 dirt = sample_dirt(I.tc0, I.N); + + return rgba_blend(rgba_blend(lens, reflections), dirt); +} diff --git a/gamedata/shaders/d3d11/models_reflex_lens.vs.hlsl b/gamedata/shaders/d3d11/models_reflex_lens.vs.hlsl new file mode 100644 index 0000000..220940f --- /dev/null +++ b/gamedata/shaders/d3d11/models_reflex_lens.vs.hlsl @@ -0,0 +1,51 @@ +#include "common.hlsli" +#include "skin.hlsli" + +struct vf +{ + float4 hpos : SV_Position; + float2 tc0 : TEXCOORD0; + float3 T : TEXCOORD1; + float3 B : TEXCOORD2; + float3 N : TEXCOORD3; + float3 P : TEXCOORD4; +}; + +vf _main (v_model v) +{ + vf o; + + o.hpos = mul(m_WVP, v.P); + o.tc0 = v.tc.xy; + o.T = mul(m_W, v.T).xyz; + o.B = mul(m_W, v.B).xyz; + o.N = mul(m_W, v.N).xyz; + o.P = mul(m_W, v.P).xyz; + + return o; +} + +// Skinning +#ifdef SKIN_NONE +vf main(v_model v) { return _main(v); } +#endif + +#ifdef SKIN_0 +vf main(v_model_skinned_0 v) { return _main(skinning_0(v)); } +#endif + +#ifdef SKIN_1 +vf main(v_model_skinned_1 v) { return _main(skinning_1(v)); } +#endif + +#ifdef SKIN_2 +vf main(v_model_skinned_2 v) { return _main(skinning_2(v)); } +#endif + +#ifdef SKIN_3 +vf main(v_model_skinned_3 v) { return _main(skinning_3(v)); } +#endif + +#ifdef SKIN_4 +vf main(v_model_skinned_4 v) { return _main(skinning_4(v)); } +#endif diff --git a/gamedata/shaders/d3d11/models_reflex_reticle.lua b/gamedata/shaders/d3d11/models_reflex_reticle.lua new file mode 100644 index 0000000..a65cde7 --- /dev/null +++ b/gamedata/shaders/d3d11/models_reflex_reticle.lua @@ -0,0 +1,11 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("models_reflex_reticle", "models_reflex_reticle") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.one) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_rtlinear") +end diff --git a/gamedata/shaders/d3d11/models_reflex_reticle.ps.hlsl b/gamedata/shaders/d3d11/models_reflex_reticle.ps.hlsl new file mode 100644 index 0000000..cca21a5 --- /dev/null +++ b/gamedata/shaders/d3d11/models_reflex_reticle.ps.hlsl @@ -0,0 +1,41 @@ +/* + ===================================================================== + Addon : Parallax Reflex Sights + Link : https://www.moddb.com/mods/stalker-anomaly/addons/parallax-reflex-sights + Authors : LVutner, party_50 + Date : 06.02.2024 + Last Edit : 12.05.2025 + ===================================================================== +*/ + +#include "common.hlsli" +#include "mark_adjust.hlsli" + +#define OFFSET 0.0039 +#define PARALLAX 1000.0 +#define SCALE 160.0 + +struct vf +{ + float4 hpos : SV_Position; + float2 tc0 : TEXCOORD0; + float3 P : TEXCOORD1; + float3 T : TEXCOORD3; + float3 B : TEXCOORD4; + float3 N : TEXCOORD5; +}; + +float4 main(vf I): SV_Target +{ + float3x3 TBN = float3x3(I.T + OFFSET, I.B + OFFSET, I.N); + float3 V_tangent = normalize(float3(dot(-I.P, TBN[0]), dot(-I.P, TBN[1]), dot(-I.P, TBN[2]))); + float2 parallax_tc = I.tc0 - V_tangent.xy * PARALLAX; + + parallax_tc = (parallax_tc + (SCALE - 1) / 2) / SCALE; + + #ifdef MARK_ADJUST + parallax_tc = mark_adjust(parallax_tc); + #endif + + return s_base.SampleLevel(smp_rtlinear, parallax_tc, 0.0); +} diff --git a/gamedata/shaders/d3d11/models_reflex_reticle.vs.hlsl b/gamedata/shaders/d3d11/models_reflex_reticle.vs.hlsl new file mode 100644 index 0000000..70fc037 --- /dev/null +++ b/gamedata/shaders/d3d11/models_reflex_reticle.vs.hlsl @@ -0,0 +1,51 @@ +#include "common.hlsli" +#include "skin.hlsli" + +struct vf +{ + float4 hpos : SV_Position; + float2 tc0 : TEXCOORD0; + float3 P : TEXCOORD1; + float3 T : TEXCOORD2; + float3 B : TEXCOORD3; + float3 N : TEXCOORD4; +}; + +vf _main (v_model v) +{ + vf o; + + o.hpos = mul(m_WVP, v.P); + o.tc0 = v.tc.xy; + o.P = mul(m_WV, v.P).xyz; + o.T = mul(m_WV, v.T).xyz; + o.B = mul(m_WV, v.B).xyz; + o.N = mul(m_WV, v.N).xyz; + + return o; +} + +// Skinning +#ifdef SKIN_NONE +vf main(v_model v) { return _main(v); } +#endif + +#ifdef SKIN_0 +vf main(v_model_skinned_0 v) { return _main(skinning_0(v)); } +#endif + +#ifdef SKIN_1 +vf main(v_model_skinned_1 v) { return _main(skinning_1(v)); } +#endif + +#ifdef SKIN_2 +vf main(v_model_skinned_2 v) { return _main(skinning_2(v)); } +#endif + +#ifdef SKIN_3 +vf main(v_model_skinned_3 v) { return _main(skinning_3(v)); } +#endif + +#ifdef SKIN_4 +vf main(v_model_skinned_4 v) { return _main(skinning_4(v)); } +#endif diff --git a/gamedata/shaders/d3d11/models_selflight.lua b/gamedata/shaders/d3d11/models_selflight.lua new file mode 100644 index 0000000..4a22654 --- /dev/null +++ b/gamedata/shaders/d3d11/models_selflight.lua @@ -0,0 +1,18 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "deffer_base") + :fog(false) + :emissive(true) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") + shader:dx10stencil(true, cmp_func.always, 255, 127, stencil_op.keep, stencil_op.replace, stencil_op.keep) + shader:dx10stencil_ref(1) +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "accum_emissive") + :zb(true, false) + :fog(false) + :emissive(true) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") +end diff --git a/gamedata/shaders/d3d11/models_selflight_det.lua b/gamedata/shaders/d3d11/models_selflight_det.lua new file mode 100644 index 0000000..fbadbe0 --- /dev/null +++ b/gamedata/shaders/d3d11/models_selflight_det.lua @@ -0,0 +1,23 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "deffer_base") + :fog(false) + :emissive(true) + -- shader:sampler ("s_base") :texture (t_base) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") + shader:dx10stencil(true, cmp_func.always, + 255, 127, + stencil_op.keep, stencil_op.replace, stencil_op.keep) + shader:dx10stencil_ref(1) + shader:dx10color_write_enable(true, true, true, false) +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "accum_emissivel") + :zb(true, false) + :fog(false) + :emissive(true) + shader:dx10color_write_enable(true, true, true, false) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") +end diff --git a/gamedata/shaders/d3d11/models_selflightl.lua b/gamedata/shaders/d3d11/models_selflightl.lua new file mode 100644 index 0000000..d43c5fd --- /dev/null +++ b/gamedata/shaders/d3d11/models_selflightl.lua @@ -0,0 +1,18 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "deffer_base") + :fog(false) + :emissive(true) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") + shader:dx10stencil(true, cmp_func.always, 255, 127, stencil_op.keep, stencil_op.replace, stencil_op.keep) + shader:dx10stencil_ref(1) +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "accum_emissivel") + :zb(true, false) + :fog(false) + :emissive(true) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") +end diff --git a/gamedata/shaders/d3d11/models_selflightw.xml b/gamedata/shaders/d3d11/models_selflightw.xml new file mode 100644 index 0000000..e8857a8 --- /dev/null +++ b/gamedata/shaders/d3d11/models_selflightw.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/gamedata/shaders/d3d11/models_xanomaly.lua b/gamedata/shaders/d3d11/models_xanomaly.lua new file mode 100644 index 0000000..28f4ab5 --- /dev/null +++ b/gamedata/shaders/d3d11/models_xanomaly.lua @@ -0,0 +1,34 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "forward_base") + :fog(true) + :zb(true, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :sorting(3, true) + + shader:dx10texture("s_base", t_base) + + shader:dx10texture("env_s0", "$user$env_s0") + shader:dx10texture("env_s1", "$user$env_s1") + + shader:dx10texture("sky_s0", "$user$sky0") + shader:dx10texture("sky_s1", "$user$sky1") + + shader:dx10texture("s_material", "$user$material") + + shader:dx10sampler("smp_base") + shader:dx10sampler("smp_rtlinear") + shader:dx10sampler("smp_material") +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort4glass", "particle_distort_hard") + :sorting(2, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, true) + :fog(false) + :distort(true) + shader:dx10texture("s_base", t_base) + shader:dx10texture("s_distort", "pfx\\pfx_dist_glass3") + shader:dx10sampler("smp_linear") +end diff --git a/gamedata/shaders/d3d11/models_xdistort.lua b/gamedata/shaders/d3d11/models_xdistort.lua new file mode 100644 index 0000000..256bd52 --- /dev/null +++ b/gamedata/shaders/d3d11/models_xdistort.lua @@ -0,0 +1,26 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_distort", "particle_alphaonly") -- particle_alphaonly + :sorting(3, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :zb(true, false) + :fog(false) + :distort(true) + -- shader:sampler("s_base") :texture (t_base) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort", "particle_distort_hard") + :sorting(3, false) + :blend(true, blend.srccolor, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + -- shader:sampler ("s_base") :texture (t_base) + -- shader:sampler ("s_distort") :texture (t_base) -- "pfx\\pfx_distortion" + shader:dx10texture("s_base", t_base) + shader:dx10texture("s_distort", t_base) + shader:dx10sampler("smp_linear") +end diff --git a/gamedata/shaders/d3d11/models_xdistortcolor.lua b/gamedata/shaders/d3d11/models_xdistortcolor.lua new file mode 100644 index 0000000..1fe8dc9 --- /dev/null +++ b/gamedata/shaders/d3d11/models_xdistortcolor.lua @@ -0,0 +1,25 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_distort", "particle_hard") + :sorting(3, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :zb(true, false) + :fog(false) + :distort(true) + + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort", "particle_distort_hard") + :sorting(3, false) + :blend(true, blend.srccolor, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + + shader:dx10texture("s_base", t_base) + shader:dx10texture("s_distort", t_base) + shader:dx10sampler("smp_linear") +end diff --git a/gamedata/shaders/d3d11/models_xdistortcolorl.lua b/gamedata/shaders/d3d11/models_xdistortcolorl.lua new file mode 100644 index 0000000..cc4489c --- /dev/null +++ b/gamedata/shaders/d3d11/models_xdistortcolorl.lua @@ -0,0 +1,26 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_distort", "particle_hard") -- particle_alphaonly + :sorting(2, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :zb(true, false) + :fog(false) + :distort(true) + -- shader:sampler ("s_base") :texture (t_base) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort", "particle_distort_hard") + :sorting(3, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + -- shader:sampler ("s_base") :texture (t_base) + -- shader:sampler ("s_distort") :texture (t_base) -- "pfx\\pfx_distortion" + shader:dx10texture("s_base", t_base) + shader:dx10texture("s_distort", t_base) + shader:dx10sampler("smp_linear") +end diff --git a/gamedata/shaders/d3d11/models_xdistortcolorlinv.lua b/gamedata/shaders/d3d11/models_xdistortcolorlinv.lua new file mode 100644 index 0000000..c2a18f8 --- /dev/null +++ b/gamedata/shaders/d3d11/models_xdistortcolorlinv.lua @@ -0,0 +1,26 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_distort_inv", "particle_hard") + :sorting(2, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :zb(true, false) + :fog(false) + :distort(true) + -- shader:sampler ("s_base") :texture (t_base) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort", "particle_distort_hard") + :sorting(3, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + -- shader:sampler ("s_base") :texture (t_base) + -- shader:sampler ("s_distort") :texture (t_base) -- "pfx\\pfx_distortion" + shader:dx10texture("s_base", t_base) + shader:dx10texture("s_distort", t_base) + shader:dx10sampler("smp_linear") +end diff --git a/gamedata/shaders/d3d11/models_xdistortinv.lua b/gamedata/shaders/d3d11/models_xdistortinv.lua new file mode 100644 index 0000000..82817fc --- /dev/null +++ b/gamedata/shaders/d3d11/models_xdistortinv.lua @@ -0,0 +1,26 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_distort_inv", "particle_alphaonly") -- particle_alphaonly + :sorting(3, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :zb(true, false) + :fog(false) + :distort(true) + -- shader:sampler ("s_base") :texture (t_base) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort_inv", "particle_distort_hard") + :sorting(3, false) + :blend(true, blend.srccolor, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + -- shader:sampler ("s_base") :texture (t_base) + -- shader:sampler ("s_distort") :texture (t_base) -- "pfx\\pfx_distortion" + shader:dx10texture("s_base", t_base) + shader:dx10texture("s_distort", t_base) + shader:dx10sampler("smp_linear") +end diff --git a/gamedata/shaders/d3d11/models_xmonolith.lua b/gamedata/shaders/d3d11/models_xmonolith.lua new file mode 100644 index 0000000..5a0b4ae --- /dev/null +++ b/gamedata/shaders/d3d11/models_xmonolith.lua @@ -0,0 +1,35 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "forward_base") + :fog(true) + :zb(true, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :sorting(3, true) + + shader:dx10texture("s_base", t_base) + + shader:dx10texture("env_s0", "$user$env_s0") + shader:dx10texture("env_s1", "$user$env_s1") + + shader:dx10texture("sky_s0", "$user$sky0") + shader:dx10texture("sky_s1", "$user$sky1") + + shader:dx10texture("s_material", "$user$material") + + shader:dx10sampler("smp_base") + shader:dx10sampler("smp_rtlinear") + shader:dx10sampler("smp_material") +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort4glass", "particle_distort_hard") + :sorting(3, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + + shader:dx10texture("s_base", t_base) + shader:dx10texture("s_distort", "pfx\\pfx_dist_glass4") + shader:dx10sampler("smp_linear") +end diff --git a/gamedata/shaders/d3d11/models_xwindows.lua b/gamedata/shaders/d3d11/models_xwindows.lua new file mode 100644 index 0000000..9dd5dde --- /dev/null +++ b/gamedata/shaders/d3d11/models_xwindows.lua @@ -0,0 +1,35 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "forward_base") + :fog(true) + :zb(true, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :sorting(3, true) + + shader:dx10texture("s_base", t_base) + + shader:dx10texture("env_s0", "$user$env_s0") + shader:dx10texture("env_s1", "$user$env_s1") + + shader:dx10texture("sky_s0", "$user$sky0") + shader:dx10texture("sky_s1", "$user$sky1") + + shader:dx10texture("s_material", "$user$material") + + shader:dx10sampler("smp_base") + shader:dx10sampler("smp_rtlinear") + shader:dx10sampler("smp_material") +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort4glass", "particle_distort_hard") + :sorting(3, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + + shader:dx10texture("s_base", t_base) + shader:dx10texture("s_distort", "pfx\\pfx_dist_glass") + shader:dx10sampler("smp_linear") +end diff --git a/gamedata/shaders/d3d11/models_zoom.lua b/gamedata/shaders/d3d11/models_zoom.lua new file mode 100644 index 0000000..3bac93f --- /dev/null +++ b/gamedata/shaders/d3d11/models_zoom.lua @@ -0,0 +1,25 @@ +local tex_env0 = "$user$sky0" +local tex_env1 = "$user$sky1" + +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_distort","model_scope_lense") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:dx10texture ("s_base", t_base) + shader:dx10texture ("s_image", "$user$accum") + shader:dx10sampler ("smp_base") + shader:dx10sampler ("smp_rtlinear") + shader:dx10sampler ("smp_nofilter") +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("scope_lense_mask", "scope_lense_mask") + : zb(false, true) : scope(true) : fog(false) + + shader : dx10texture("s_position", "$user$position") + shader : dx10sampler("smp_base") +end diff --git a/gamedata/shaders/d3d11/models_zoom_gauss.lua b/gamedata/shaders/d3d11/models_zoom_gauss.lua new file mode 100644 index 0000000..3670157 --- /dev/null +++ b/gamedata/shaders/d3d11/models_zoom_gauss.lua @@ -0,0 +1,25 @@ +local tex_env0 = "$user$sky0" +local tex_env1 = "$user$sky1" + +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_distort","model_scope_gauss") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:dx10texture ("s_base", t_base) + shader:dx10texture ("s_image", "$user$accum") + shader:dx10sampler ("smp_base") + shader:dx10sampler ("smp_rtlinear") + shader:dx10sampler ("smp_nofilter") +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("scope_lense_mask", "scope_lense_mask") + : zb(false, true) : scope(true) : fog(false) + + shader : dx10texture("s_position", "$user$position") + shader : dx10sampler("smp_base") +end diff --git a/gamedata/shaders/d3d11/models_zoom_lerp.lua b/gamedata/shaders/d3d11/models_zoom_lerp.lua new file mode 100644 index 0000000..64a04f1 --- /dev/null +++ b/gamedata/shaders/d3d11/models_zoom_lerp.lua @@ -0,0 +1,25 @@ +local tex_env0 = "$user$sky0" +local tex_env1 = "$user$sky1" + +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_distort","model_scope_lense_lerp") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:dx10texture ("s_base", t_base) + shader:dx10texture ("s_image", "$user$accum") + shader:dx10sampler ("smp_base") + shader:dx10sampler ("smp_rtlinear") + shader:dx10sampler ("smp_nofilter") +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("scope_lense_mask", "scope_lense_mask") + : zb(false, true) : scope(true) : fog(false) + + shader : dx10texture("s_position", "$user$position") + shader : dx10sampler("smp_base") +end diff --git a/gamedata/shaders/d3d11/models_zoomnight.lua b/gamedata/shaders/d3d11/models_zoomnight.lua new file mode 100644 index 0000000..db8aa44 --- /dev/null +++ b/gamedata/shaders/d3d11/models_zoomnight.lua @@ -0,0 +1,25 @@ +local tex_env0 = "$user$sky0" +local tex_env1 = "$user$sky1" + +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_distort","model_scope_lense_night") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:dx10texture ("s_base", t_base) + shader:dx10texture ("s_image", "$user$accum") + shader:dx10sampler ("smp_base") + shader:dx10sampler ("smp_rtlinear") + shader:dx10sampler ("smp_nofilter") +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("scope_lense_mask", "scope_lense_mask") + : zb(false, true) : scope(true) : fog(false) + + shader : dx10texture("s_position", "$user$position") + shader : dx10sampler("smp_base") +end diff --git a/gamedata/shaders/d3d11/parallax_mark.ps.hlsl b/gamedata/shaders/d3d11/parallax_mark.ps.hlsl new file mode 100644 index 0000000..e25fed6 --- /dev/null +++ b/gamedata/shaders/d3d11/parallax_mark.ps.hlsl @@ -0,0 +1,105 @@ +/* + ===================================================================== + Addon : Parallax Reflex Sights + Link : https://www.moddb.com/mods/stalker-anomaly/addons/parallax-reflex-sights + Authors : LVutner, party_50 + Date : 06.02.2024 + Last Edit : 06.02.2024 + ===================================================================== +*/ + +#include "common.hlsli" + +// Important: +// In perfect world OFFSET constants should be 0, but most of reflex sight lenses +// are not actually parallel to screen, so we compensate it. For PROJECT_DISTANCE=100 +// offset values should be at least 0.005 even for perfect models and position configs due +// to normal vectors resolution. +// +// If you want the most realistic look, set PROJECT_DISTANCE to some high value (like 100.0), +// increase SIZE_FACTOR to something like 20.0, set OFFSET_X and OFFSET_Y to 0.005. +// Then you will have to adjust models so that mark texture point is exactly in center +// and edit aim position in configs. + +#define OFFSET_X 0.004 // (default 0.004) Normal vector x coordinate max absolute value which is considered 0 +#define OFFSET_Y 0.05 // (default 0.05) Normal vector y coordinate max absolute value which is considered 0 +#define PROJECT_DISTANCE 20.0 // (default 20.0) Distance to projected mark +#define SIZE_FACTOR 4.0 // (default 4.0) Mark size factor + +// Vertex to Pixel struct +struct vf +{ + float2 tc0 : TEXCOORD0; + float3 v_pos : TEXCOORD1; + float3 v_nrm : TEXCOORD2; +}; + +// This gives us cotangent basis that can be used instead of TBN. +// It is useful when tangents of your mesh are broken, or not available. +// Source: http://www.thetenthplanet.de/archives/1180 +float3x3 cotangent_frame(float3 N, float3 P, float2 uv) +{ + // Get edge vectors of the pixel triangle + float3 dp1 = ddx(P); + float3 dp2 = ddy(P); + float2 duv1 = ddx(uv); + float2 duv2 = ddy(uv); + + // Solve the linear system + float3 dp2perp = cross(dp2, N); + float3 dp1perp = cross(N, dp1); + float3 T = dp2perp * duv1.x + dp1perp * duv2.x; + float3 B = dp2perp * duv1.y + dp1perp * duv2.y; + + // Construct a scale-invariant frame + float invmax = rsqrt(max(dot(T, T), dot(B, B))); + return float3x3(T * invmax, B * invmax, N); +} + +// If N.xy vector is close to zero, make it zero +float3 offset_normal(float3 N) +{ + if (N.x > 0) + N.x = max(N.x, OFFSET_X) - OFFSET_X; + else + N.x = min(N.x, -OFFSET_X) + OFFSET_X; + + if (N.y > 0) + N.y = max(N.y, OFFSET_Y) - OFFSET_Y; + else + N.y = min(N.y, -OFFSET_Y) + OFFSET_Y; + + return N; +} + +float4 main(vf I): SV_Target +{ + // Derive view direction from view space position + float3 V = -I.v_pos; + + // Build cotangent frame + // Important: In theory, you don't need to do this. It should be possible to pass TBN straight from VS + float3x3 TBN = cotangent_frame(offset_normal(I.v_nrm), I.v_pos, I.tc0.xy); + + // Transform view direction to tangent space, and normalize (Just in case) + float3 V_tangent = normalize(float3(dot(V, TBN[0]), dot(V, TBN[1]), dot(V, TBN[2]))); + + // Calculate texture coordinates used to fetch the mark texture + // Important: PROJECT_DISTANCE can be positive or negative, 0 = no projection at all + float2 parallax_tc = I.tc0 - V_tangent.xy * PROJECT_DISTANCE; + + // Upscaling the texture + parallax_tc.x = (parallax_tc.x + (SIZE_FACTOR - 1) / 2) / SIZE_FACTOR; + parallax_tc.y = (parallax_tc.y + (SIZE_FACTOR - 1) / 2) / SIZE_FACTOR; + + #ifdef MARK_ADJUST + parallax_tc = mark_adjust(parallax_tc); + #endif + + // Fetch the mark texture + // Important: We do not want texture to repeat itself, so we use sampler with CLAMP address + // Important2: We do not want to sample mip levels of the mark texture, let's keep this thing sharp as fuck + float4 mark_texture = s_base.SampleLevel(smp_rtlinear, parallax_tc, 0.0); + + return mark_texture; +} diff --git a/gamedata/shaders/d3d11/parallax_mark.vs.hlsl b/gamedata/shaders/d3d11/parallax_mark.vs.hlsl new file mode 100644 index 0000000..c4e9e36 --- /dev/null +++ b/gamedata/shaders/d3d11/parallax_mark.vs.hlsl @@ -0,0 +1,49 @@ +#include "common.hlsli" +#include "skin.hlsli" + +// Vertex to Pixel struct +struct vf +{ + float2 tc0 : TEXCOORD0; + float3 v_pos : TEXCOORD1; + float3 v_nrm : TEXCOORD2; + float4 hpos : SV_Position; +}; + +vf _main (v_model v) +{ + vf o; + + o.hpos = mul(m_WVP, v.P); // Homogenous position + o.tc0 = v.tc.xy; //Texture coordinates + + o.v_pos = mul(m_WV, v.P).xyz; // Position in view space + o.v_nrm = mul(m_WV, v.N).xyz; // Normal in view space + + return o; +} + +//Skinning +#ifdef SKIN_NONE +vf main(v_model v) { return _main(v); } +#endif + +#ifdef SKIN_0 +vf main(v_model_skinned_0 v) { return _main(skinning_0(v)); } +#endif + +#ifdef SKIN_1 +vf main(v_model_skinned_1 v) { return _main(skinning_1(v)); } +#endif + +#ifdef SKIN_2 +vf main(v_model_skinned_2 v) { return _main(skinning_2(v)); } +#endif + +#ifdef SKIN_3 +vf main(v_model_skinned_3 v) { return _main(skinning_3(v)); } +#endif + +#ifdef SKIN_4 +vf main(v_model_skinned_4 v) { return _main(skinning_4(v)); } +#endif diff --git a/gamedata/shaders/d3d11/particle-clip.vs.hlsl b/gamedata/shaders/d3d11/particle-clip.vs.hlsl new file mode 100644 index 0000000..6abd381 --- /dev/null +++ b/gamedata/shaders/d3d11/particle-clip.vs.hlsl @@ -0,0 +1,27 @@ +#include "common.hlsli" + +struct vv +{ + float4 P : POSITION; + float2 tc : TEXCOORD0; + float4 c : COLOR0; +}; +struct v2p +{ + float2 tc : TEXCOORD0; + float4 c : COLOR0; + float4 hpos : SV_POSITION; +}; + +v2p main(vv v) +{ + v2p o; + + o.hpos = mul(m_WVP, v.P); // xform, input in world coords + o.hpos.z = abs(o.hpos.z); + o.hpos.w = abs(o.hpos.w); + o.tc = v.tc; // copy tc + o.c = v.c; // copy color + + return o; +} diff --git a/gamedata/shaders/d3d11/particle.ps.hlsl b/gamedata/shaders/d3d11/particle.ps.hlsl new file mode 100644 index 0000000..cd3dcc3 --- /dev/null +++ b/gamedata/shaders/d3d11/particle.ps.hlsl @@ -0,0 +1,32 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; + float4 c : COLOR0; + +// Igor: for additional depth dest +#ifdef USE_SOFT_PARTICLES + float4 tctexgen : TEXCOORD1; +#endif // USE_SOFT_PARTICLES + + float4 hpos : SV_POSITION; + float fog : FOG; +}; + +// Pixel +float4 main(v2p I) : SV_Target +{ + float4 result = I.c * s_base.Sample(smp_base, I.tc0); + + // Igor: additional depth test +#ifdef USE_SOFT_PARTICLES + float4 Point = GbufferGetPoint(I.hpos.xy); + float spaceDepth = Point.z - I.tctexgen.z; + result *= Contrast(saturate(spaceDepth * 1.3f), 2.0f); +#endif // USE_SOFT_PARTICLES + + clip(result.a - (0.01f / 255.0f)); + return PushGamma(lerp(fog_color, result, I.fog)); +} + diff --git a/gamedata/shaders/d3d11/particle.vs.hlsl b/gamedata/shaders/d3d11/particle.vs.hlsl new file mode 100644 index 0000000..7a3c24c --- /dev/null +++ b/gamedata/shaders/d3d11/particle.vs.hlsl @@ -0,0 +1,45 @@ +#include "common.hlsli" + +struct vv +{ + float4 P : POSITION; + float2 tc : TEXCOORD0; + float4 c : COLOR0; +}; + +struct v2p +{ + float2 tc : TEXCOORD0; + float4 c : COLOR0; + +// Igor: for additional depth dest +#ifdef USE_SOFT_PARTICLES + float4 tctexgen : TEXCOORD1; +#endif // USE_SOFT_PARTICLES + + float4 hpos : SV_POSITION; + float fog : FOG; +}; + +uniform float4x4 mVPTexgen; + +v2p main(vv v) +{ + v2p o; + + o.hpos = mul(m_WVP, v.P); // xform, input in world coords + // o.hpos = mul (m_VP, v.P); // xform, input in world coords + o.tc = v.tc; // copy tc + o.c = unpack_D3DCOLOR(v.c); // copy color + + o.hpos.xy += m_taa_jitter.xy * o.hpos.w; +// Igor: for additional depth dest +#ifdef USE_SOFT_PARTICLES + o.tctexgen = mul(mVPTexgen, v.P); + o.tctexgen.z = mul(m_WV, v.P).z; +#endif // USE_SOFT_PARTICLES + + o.fog = 1.0f - calc_fogging(v.P.xyz); // fog, input in world coords + return o; +} + diff --git a/gamedata/shaders/d3d11/particle_add.ps.hlsl b/gamedata/shaders/d3d11/particle_add.ps.hlsl new file mode 100644 index 0000000..b6ae2f9 --- /dev/null +++ b/gamedata/shaders/d3d11/particle_add.ps.hlsl @@ -0,0 +1,39 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; + float4 c : COLOR0; + +// Igor: for additional depth dest +#ifdef USE_SOFT_PARTICLES + float4 tctexgen : TEXCOORD1; +#endif // USE_SOFT_PARTICLES + + float4 hpos : SV_POSITION; + float fog : FOG; +}; + +// Must be less than view near +#define DEPTH_EPSILON 0.1h + +float4 main(v2p I) : SV_Target +{ + float4 result = I.c * s_base.Sample(smp_base, I.tc0); + + // Igor: additional depth test +#ifdef USE_SOFT_PARTICLES + float4 Point = GbufferGetPoint(I.hpos.xy); + + float spaceDepth = Point.z - I.tctexgen.z; + result *= Contrast(saturate(spaceDepth * 1.3f), 2.0f); +#endif // USE_SOFT_PARTICLES + + clip(result.a - (0.01f / 255.0f)); + + result.w *= I.fog; + result.xyz *= I.fog; + + return PushGamma(result); +} + diff --git a/gamedata/shaders/d3d11/particle_alphaonly.ps.hlsl b/gamedata/shaders/d3d11/particle_alphaonly.ps.hlsl new file mode 100644 index 0000000..2c4ca01 --- /dev/null +++ b/gamedata/shaders/d3d11/particle_alphaonly.ps.hlsl @@ -0,0 +1,14 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float4 c : COLOR0; // diffuse +}; + +// Pixel +float4 main(v2p I) : SV_Target +{ + return PushGamma(I.c.a * s_base.Sample(smp_base, I.tc0).a); +} + diff --git a/gamedata/shaders/d3d11/particle_distort.ps.hlsl b/gamedata/shaders/d3d11/particle_distort.ps.hlsl new file mode 100644 index 0000000..f408a73 --- /dev/null +++ b/gamedata/shaders/d3d11/particle_distort.ps.hlsl @@ -0,0 +1,32 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float4 c : COLOR0; // diffuse + +#ifdef USE_SOFT_PARTICLES + // Igor: for additional depth dest + float4 tctexgen : TEXCOORD1; +#endif // USE_SOFT_PARTICLES + + float4 hpos : SV_POSITION; +}; + +// Pixel +Texture2D s_distort; +float4 main(v2p I) : SV_Target +{ + float4 distort = s_distort.Sample(smp_linear, I.tc0); + float factor = distort.w * dot(I.c.xyz, 0.3333f); + + // #ifdef USE_SOFT_PARTICLES + // float4 Point = GbufferGetPoint(I.hpos.xy); + + // float spaceDepth = Point.z - I.tctexgen.z; + // factor *= Contrast(saturate(spaceDepth * 1.3f), 2.0f); + // #endif // USE_SOFT_PARTICLES + + return float4(distort.xyz, factor); +} + diff --git a/gamedata/shaders/d3d11/particle_distort_hard.ps.hlsl b/gamedata/shaders/d3d11/particle_distort_hard.ps.hlsl new file mode 100644 index 0000000..0c6e97a --- /dev/null +++ b/gamedata/shaders/d3d11/particle_distort_hard.ps.hlsl @@ -0,0 +1,2 @@ +#undef USE_SOFT_PARTICLES +#include "particle_distort.ps.hlsl" diff --git a/gamedata/shaders/d3d11/particle_hard.ps.hlsl b/gamedata/shaders/d3d11/particle_hard.ps.hlsl new file mode 100644 index 0000000..385c7a7 --- /dev/null +++ b/gamedata/shaders/d3d11/particle_hard.ps.hlsl @@ -0,0 +1,2 @@ +#undef USE_SOFT_PARTICLES +#include "particle.ps.hlsl" diff --git a/gamedata/shaders/d3d11/particle_s-aadd.ps.hlsl b/gamedata/shaders/d3d11/particle_s-aadd.ps.hlsl new file mode 100644 index 0000000..78d9156 --- /dev/null +++ b/gamedata/shaders/d3d11/particle_s-aadd.ps.hlsl @@ -0,0 +1,16 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float4 c : COLOR0; // diffuse +}; + +// Pixel +float4 main(v2p I) : SV_Target +{ + float4 c = I.c * s_base.Sample(smp_base, I.tc0); + c.xyz *= c.w; + float3 r = float3(1, 1, 1) - c.xyz + c.xyz * c.xyz; + return float4(PushGamma(r), 1); +} diff --git a/gamedata/shaders/d3d11/particle_s-add.ps.hlsl b/gamedata/shaders/d3d11/particle_s-add.ps.hlsl new file mode 100644 index 0000000..7b2abd1 --- /dev/null +++ b/gamedata/shaders/d3d11/particle_s-add.ps.hlsl @@ -0,0 +1,16 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float4 c : COLOR0; // diffuse +}; + +// Pixel +float4 main(v2p I) : SV_Target +{ + float4 c = I.c * s_base.Sample(smp_base, I.tc0); + float3 r = float3(1, 1, 1) - c.xyz - c.xyz * c.xyz; + return float4(PushGamma(r), 1); +} + diff --git a/gamedata/shaders/d3d11/particle_s-blend.ps.hlsl b/gamedata/shaders/d3d11/particle_s-blend.ps.hlsl new file mode 100644 index 0000000..6b97382 --- /dev/null +++ b/gamedata/shaders/d3d11/particle_s-blend.ps.hlsl @@ -0,0 +1,16 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float4 c : COLOR0; // diffuse +}; + +// Pixel +float4 main(v2p I) : SV_Target +{ + float4 c = I.c * s_base.Sample(smp_base, I.tc0); + float3 r = lerp(float3(1, 1, 1), c.xyz, c.w); + return float4(PushGamma(r), 1); +} + diff --git a/gamedata/shaders/d3d11/particle_s-mul.ps.hlsl b/gamedata/shaders/d3d11/particle_s-mul.ps.hlsl new file mode 100644 index 0000000..0e57a2f --- /dev/null +++ b/gamedata/shaders/d3d11/particle_s-mul.ps.hlsl @@ -0,0 +1,15 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float4 c : COLOR0; // diffuse +}; + +////////////////////////////////////////////////////////////////////////////////////////// +// Pixel +float4 main(v2p I) : SV_Target +{ + float4 c = I.c * s_base.Sample(smp_base, I.tc0); + return float4(c.xyz, 1); +} \ No newline at end of file diff --git a/gamedata/shaders/d3d11/particles_add.lua b/gamedata/shaders/d3d11/particles_add.lua new file mode 100644 index 0000000..cc18dcd --- /dev/null +++ b/gamedata/shaders/d3d11/particles_add.lua @@ -0,0 +1,14 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("particle", "particle_add") + :sorting(3, false) + :blend(true, blend.one, blend.one) + :aref(false, 0) + :zb(true, false) + :fog(false) + + shader:dx10texture("s_base", t_base) + shader:dx10texture("s_position", "$user$position") + + shader:dx10sampler("smp_base") + shader:dx10sampler("smp_nofilter") +end diff --git a/gamedata/shaders/d3d11/particles_xadd.lua b/gamedata/shaders/d3d11/particles_xadd.lua new file mode 100644 index 0000000..e5948ec --- /dev/null +++ b/gamedata/shaders/d3d11/particles_xadd.lua @@ -0,0 +1,37 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("particle", "particle_add") + :sorting(3, false) + :blend(true, blend.one, blend.one) + :aref(false, 0) + :zb(true, false) + :fog(false) + :distort(true) + -- shader:sampler ("s_base") :texture (t_base) + -- shader:sampler ("s_position") :texture ("$user$position") + + shader:dx10texture("s_base", t_base) + shader:dx10texture("s_position", "$user$position") + + shader:dx10sampler("smp_base") + shader:dx10sampler("smp_nofilter") +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("particle", "particle_distort") + :sorting(3, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + -- shader:sampler ("s_base") :texture (t_base) + -- shader:sampler ("s_distort") :texture (t_second) -- "pfx\\pfx_distortion" + -- shader:sampler ("s_position") :texture ("$user$position") + + shader:dx10texture("s_base", t_base) + shader:dx10texture("s_distort", t_second) -- "pfx\\pfx_distortion" + shader:dx10texture("s_position", "$user$position") + + shader:dx10sampler("smp_base") + shader:dx10sampler("smp_linear") + shader:dx10sampler("smp_nofilter") +end diff --git a/gamedata/shaders/d3d11/particles_xdistort.lua b/gamedata/shaders/d3d11/particles_xdistort.lua new file mode 100644 index 0000000..333d62a --- /dev/null +++ b/gamedata/shaders/d3d11/particles_xdistort.lua @@ -0,0 +1,19 @@ +function l_special(shader, t_base, t_second, t_detail) + shader:begin("particle", "particle_distort") + :sorting(3, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + -- shader:sampler ("s_base") :texture (t_base) + -- shader:sampler ("s_distort") :texture (t_base) -- "pfx\\pfx_distortion" + -- shader:sampler ("s_position") :texture ("$user$position") + + shader:dx10texture("s_base", t_base) + shader:dx10texture("s_distort", t_base) -- "pfx\\pfx_distortion" + shader:dx10texture("s_position", "$user$position") + + shader:dx10sampler("smp_base") + shader:dx10sampler("smp_linear") + shader:dx10sampler("smp_nofilter") +end diff --git a/gamedata/shaders/d3d11/pnv.hlsli b/gamedata/shaders/d3d11/pnv.hlsli new file mode 100644 index 0000000..84acf5f --- /dev/null +++ b/gamedata/shaders/d3d11/pnv.hlsli @@ -0,0 +1,57 @@ +////////////////////////////////////////////////////////////////////////////////////////// +//NV Shader by LVutner (basing on yaz NV) +//Last edit: 5:12 (22.05.19) +//Edit for 'GUNSLINGER Mod' by Romann[MNP_TEAM] (04.01.2020) +////////////////////////////////////////////////////////////////////////////////////////// + +//defines +#define NV_BRIGHTNESS 5.0 + +//effects +#define NV_FLICKERING +#define NV_NOISE +//#define NV_VIGNETTE +#define NV_SCANLINES + +//effect settings +#define FLICKERING_INTENSITY 0.003 // +#define FLICKERING_FREQ 60.0 // +#define NOISE_INTENSITY 0.13 // +#define SCANLINES_INTENSITY 0.015 // +#define VIGNETTE_RADIUS 1.0 // + +// Pixel +uniform float4 screen_res; +uniform float4 m_zoom_deviation; + +float4 calc_night_vision_effect(float2 tc0, float4 color, float3 NV_COLOR) +{ + float lum = dot(color.rgb, float3( 0.3f, 0.38f, 0.22f)*NV_BRIGHTNESS ); //instead of float3 use LUMINANCE_floatTOR in stalker + color.rgb = m_zoom_deviation.z*NV_COLOR*lum; + + //cheap noise function + float noise = frac(sin(dot(tc0, float2(12.0, 78.0) + (timers.x*1.17f) )) * 43758.0); + + ////////////////////////////////////////////////////////////////////////////////////////// + // scanlines + #ifdef NV_SCANLINES + color += SCANLINES_INTENSITY*sin(tc0.y*screen_res.y*2.0); + #endif + ////////////////////////////////////////////////////////////////////////////////////////// + // noise + #ifdef NV_NOISE + color += noise * NOISE_INTENSITY; + #endif + ////////////////////////////////////////////////////////////////////////////////////////// + // screen flickering + #ifdef NV_FLICKERING + color += FLICKERING_INTENSITY * sin(timers.x*FLICKERING_FREQ); + #endif + ////////////////////////////////////////////////////////////////////////////////////////// + // vignette + #ifdef NV_VIGNETTE + color *= VIGNETTE_RADIUS-(distance(tc0.xy,float2( 0.5f, 0.5f))); + #endif + + return color; +} diff --git a/gamedata/shaders/d3d11/portal.lua b/gamedata/shaders/d3d11/portal.lua new file mode 100644 index 0000000..56e08e5 --- /dev/null +++ b/gamedata/shaders/d3d11/portal.lua @@ -0,0 +1,7 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("portal", "portal") + :fog(true) + :zb(true, false) + :sorting(3, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) +end diff --git a/gamedata/shaders/d3d11/portal.ps.hlsl b/gamedata/shaders/d3d11/portal.ps.hlsl new file mode 100644 index 0000000..6e1ae1a --- /dev/null +++ b/gamedata/shaders/d3d11/portal.ps.hlsl @@ -0,0 +1,7 @@ +#include "common.hlsli" + +float4 main(float4 C : COLOR0) : SV_Target +{ + return PushGamma(C); +} + diff --git a/gamedata/shaders/d3d11/portal.vs.hlsl b/gamedata/shaders/d3d11/portal.vs.hlsl new file mode 100644 index 0000000..2645f81 --- /dev/null +++ b/gamedata/shaders/d3d11/portal.vs.hlsl @@ -0,0 +1,29 @@ +#include "common.hlsli" + +struct v_vert +{ + float4 pos : POSITION; // (float,float,float,1) + float4 color : COLOR0; // (r,g,b,dir-occlusion) +}; + +struct v2p +{ + float4 c : COLOR0; + float fog : FOG; + float4 hpos : SV_POSITION; +}; + +v2p main(v_vert v) +{ + v2p o; + + o.hpos = mul(m_VP, v.pos); // xform, input in world coords + o.c = v.color; + o.fog = calc_fogging(v.pos.xyz); // fog, input in world coords + o.c = lerp(o.c, fog_color, o.fog); + o.fog = 1.0f - o.fog; + + o.hpos.xy += m_taa_jitter.xy * o.hpos.w; + return o; +} + diff --git a/gamedata/shaders/d3d11/postprocess.lua b/gamedata/shaders/d3d11/postprocess.lua new file mode 100644 index 0000000..f6c6b29 --- /dev/null +++ b/gamedata/shaders/d3d11/postprocess.lua @@ -0,0 +1,32 @@ +-- normal pp +t_rt = "$user$albedo" +t_noise = "fx\\fx_noise2" + +function normal(shader, t_base, t_second, t_detail) + shader:begin("stub_notransform_postpr", "postprocess") + :fog(false) + :zb(false, false) + + shader:dx10texture("s_base0", "$user$backbuffer") + shader:dx10texture("s_base1", "$user$backbuffer") + shader:dx10texture("s_noise", "fx\\fx_noise2") + + shader:dx10sampler("smp_rtlinear") + shader:dx10sampler("smp_linear") +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("stub_notransform_postpr", "postprocess_CM") + :fog(false) + :zb(false, false) + + shader:dx10texture("s_base0", "$user$backbuffer") + shader:dx10texture("s_base1", "$user$backbuffer") + shader:dx10texture("s_noise", "fx\\fx_noise2") + + shader:dx10texture("s_grad0", "$user$cmap0") + shader:dx10texture("s_grad1", "$user$cmap1") + + shader:dx10sampler("smp_rtlinear") + shader:dx10sampler("smp_linear") +end diff --git a/gamedata/shaders/d3d11/postprocess.ps.hlsl b/gamedata/shaders/d3d11/postprocess.ps.hlsl new file mode 100644 index 0000000..5f567af --- /dev/null +++ b/gamedata/shaders/d3d11/postprocess.ps.hlsl @@ -0,0 +1,27 @@ +#include "common.hlsli" + +Texture2D s_base0; +Texture2D s_base1; +Texture2D s_noise; + +uniform float4 c_brightness; + +// Pixel +float4 main(p_postpr I) : SV_Target +{ + float3 t_0 = saturate(s_base0.Sample(smp_rtlinear, I.Tex0.xy).xyz); + float3 t_1 = saturate(s_base1.Sample(smp_rtlinear, I.Tex1.xy).xyz); + float3 image = (t_0 + t_1) * 0.5f; + + float gray = dot(image, I.Gray.xyz); + image = lerp(gray, image, I.Gray.w); + + float3 t_noise = s_noise.Sample(smp_linear, I.Tex2.xy).xyz; + float3 noised = image * t_noise * 2.0f; + + image = lerp(noised, image, I.Color.w); + image = (image * I.Color.xyz + c_brightness.xyz) * 2.0f; + + return float4(image, 1.0h); +} + diff --git a/gamedata/shaders/d3d11/postprocess_cm.ps.hlsl b/gamedata/shaders/d3d11/postprocess_cm.ps.hlsl new file mode 100644 index 0000000..22ff548 --- /dev/null +++ b/gamedata/shaders/d3d11/postprocess_cm.ps.hlsl @@ -0,0 +1,38 @@ +#include "common.hlsli" + +Texture2D s_base0; +Texture2D s_base1; +Texture2D s_noise; + +Texture2D s_grad0; +Texture2D s_grad1; + +uniform float4 c_brightness; +uniform float4 c_colormap; + +// Pixel +float4 main(p_postpr I) : SV_Target +{ + float3 t_0 = saturate(s_base0.Sample(smp_rtlinear, I.Tex0.xy).xyz); + float3 t_1 = saturate(s_base1.Sample(smp_rtlinear, I.Tex1.xy).xyz); + float3 image_o = (t_0 + t_1) * 0.5f; + + float grad_i = dot(image_o, 0.3333f); + + float3 image0 = s_grad0.Sample(smp_rtlinear, float2(grad_i, 0.5f)).xyz; + float3 image1 = s_grad1.Sample(smp_rtlinear, float2(grad_i, 0.5f)).xyz; + + float3 image = lerp(image0, image1, c_colormap.y); + image = lerp(image_o, image, c_colormap.x); + + float gray = dot(image, I.Gray.xyz); + image = lerp(gray, image, I.Gray.w); + + float3 t_noise = s_noise.Sample(smp_linear, I.Tex2.xy).xyz; + float3 noised = image * t_noise * 2.0f; + + image = lerp(noised, image, I.Color.w); + image = (image * I.Color.xyz + c_brightness.xyz) * 2.0f; + + return float4(image, 1.0h); +} \ No newline at end of file diff --git a/gamedata/shaders/d3d11/rain_apply_gloss.ps.hlsl b/gamedata/shaders/d3d11/rain_apply_gloss.ps.hlsl new file mode 100644 index 0000000..4a77388 --- /dev/null +++ b/gamedata/shaders/d3d11/rain_apply_gloss.ps.hlsl @@ -0,0 +1,13 @@ +#include "common.hlsli" + +Texture2D s_patched_normal; + +float4 main(float2 tc : TEXCOORD0, float2 tcJ : TEXCOORD1) : SV_Target +{ + float Gloss = s_patched_normal.Sample(smp_nofilter, tc).w; + + float ColorIntencity = 1.0f - sqrt(Gloss); + ColorIntencity = max(ColorIntencity, 0.5f); + + return float4(ColorIntencity, ColorIntencity, ColorIntencity, 0.0f); +} diff --git a/gamedata/shaders/d3d11/rain_apply_normal.ps.hlsl b/gamedata/shaders/d3d11/rain_apply_normal.ps.hlsl new file mode 100644 index 0000000..9250529 --- /dev/null +++ b/gamedata/shaders/d3d11/rain_apply_normal.ps.hlsl @@ -0,0 +1,10 @@ +#include "common.hlsli" + +Texture2D s_patched_normal; + +float4 main(float2 tc : TEXCOORD0) : SV_Target +{ + float3 Normal = s_patched_normal.Sample(smp_nofilter, tc).xyz; + return float4(Normal, 1.0f); +} + diff --git a/gamedata/shaders/d3d11/rain_layer.ps.hlsl b/gamedata/shaders/d3d11/rain_layer.ps.hlsl new file mode 100644 index 0000000..913f875 --- /dev/null +++ b/gamedata/shaders/d3d11/rain_layer.ps.hlsl @@ -0,0 +1,26 @@ +#include "common.hlsli" +#include "shadow.hlsli" + +#ifndef USE_SUNMASK +float3x4 m_sunmask; +#endif + +Texture2D s_water; + +float4 main(float2 tc : TEXCOORD0, float2 tcJ : TEXCOORD1, float4 pos2d : SV_POSITION) : SV_Target +{ + float4 P = GbufferGetPoint(pos2d.xy); + float4 PS = mul(m_shadow, P); + + float s = shadow(PS); + float2 tc1 = mul(m_sunmask, P).xy; + + float4 water = s_water.SampleLevel(smp_linear, frac(tc1 * 0.5f), 0); + + water.xyz = (water.xzy - 0.5f) * 2.0f; + water.xyz = mul((float3x3)m_V, water.xyz); + water *= s; + + return float4(water.xyz, s * 0.5f); +} + diff --git a/gamedata/shaders/d3d11/rain_patch_normal.ps.hlsl b/gamedata/shaders/d3d11/rain_patch_normal.ps.hlsl new file mode 100644 index 0000000..91083db --- /dev/null +++ b/gamedata/shaders/d3d11/rain_patch_normal.ps.hlsl @@ -0,0 +1,124 @@ +#include "common.hlsli" +#include "shadow.hlsli" + +#ifndef USE_SUNMASK +float3x4 m_sunmask; // ortho-projection +#endif + +Texture3D s_water; +Texture2D s_waterFall; +float4 RainDensity; // float +float4 RainFallof; +float4 WorldX; // Float3 +float4 WorldZ; // Float3 + +float3 GetNVNMap(Texture3D s_texture, float2 tc, float time) +{ + // Unpack NVidia normal map + float4 water = s_texture.SampleBias(smp_base, float3(tc, time), -3.) - 0.5; + + // Swizzle + water.xyz = water.wyz; + + // Renormalize (*2) and scale (*3) + water.xyz *= 6; + water.y = 0; + + return water.xyz; +} + +float3 GetWaterNMap(Texture2D s_texture, float2 tc) +{ + // Unpack normal map + float4 water = s_texture.Sample(smp_base, tc); + water.xyz = (water.xzy - 0.5) * 2; + + water.xyz *= 0.3; + water.y = 0; + + return water.xyz; +} + +#ifndef ISAMPLE + #define ISAMPLE 0 +#endif + +float4 main(float2 tc : TEXCOORD0, float2 tcJ : TEXCOORD1, float4 Color : COLOR, float4 pos2d : SV_POSITION) : SV_Target +{ + IXrayGbuffer O; + GbufferUnpack(tc, pos2d.xy, O); + + float4 P = float4(O.PointReal, 1.0f); + float3 N = O.Normal; + float3 D = O.Color; + + P.xyz += N.xyz * 0.15f; + float4 PS = mul(m_shadow, P); + + float3 WorldP = mul(m_sunmask, P); + float3 WorldN = mul((float3x3)m_sunmask, N.xyz); + + // Read rain projection with some jetter. Also adding pixel normal + // factor to jitter to make rain strips more realistic. + float s = shadow_hw(PS) * saturate(O.Hemi * 10.0f); + + // Apply distance falloff + // Using fixed fallof factors according to float16 depth coordinate precision. + float fAtten = 1 - smoothstep(min(RainFallof.y - 15.0f, RainFallof.x), RainFallof.y, P.z); + s *= fAtten * fAtten; + //s *= 1.0f - O.SSS; + + // Apply rain density + s *= RainDensity.x; + + float fIsUp = -dot(Ldynamic_dir.xyz, N.xyz); + s *= saturate(fIsUp * 10.0f + 5.5); + + fIsUp = max(0, fIsUp); + + float fIsX = WorldN.x; + float fIsZ = WorldN.z; + + float3 waterSplash = GetNVNMap(s_water, WorldP.xz, timers.x * 3.0); + float3 tc1 = WorldP * 0.5f; + + float fAngleFactor = 1 - fIsUp; + fAngleFactor = 0.1 * ceil(10 * fAngleFactor); + + // Just slow down effect. + fAngleFactor *= 0.5; + + float3 waterFallX = GetWaterNMap(s_waterFall, float2(tc1.z, tc1.y + timers.x * fAngleFactor)); + float3 waterFallZ = GetWaterNMap(s_waterFall, float2(tc1.x, tc1.y + timers.x * fAngleFactor)); + + float2 IsDir = (float2(fIsZ, fIsX)); + + IsDir = normalize(IsDir); + + float3 waterFall = GetWaterNMap(s_waterFall, float2(dot(tc1.xz, IsDir), tc1.y + timers.x)); + float WeaponAttenuation = O.Depth > 0.2 ? 1.0f : 0.0f; + float ApplyNormalCoeff = s * WeaponAttenuation; + + float3 water = waterSplash * (fIsUp * ApplyNormalCoeff); + + water += waterFallX.yxz * (abs(fIsX) * ApplyNormalCoeff); + water += waterFallZ.zxy * (abs(fIsZ) * ApplyNormalCoeff); + + // Translate NM to view space + water.xyz = mul((float3x3)m_V, water.xyz); + s *= dot(D.xyz, float3(0.33, 0.33, 0.33)); + + N += water.xyz; + N = normalize(N); + + N.xy = NormalEncode(N); + +#ifdef USE_LEGACY_LIGHT + N.z = 0.8f * s + O.Roughness; +#else + N.z = lerp(O.Roughness, 0.01f, saturate(s * 4.0f)); +#endif + + return float4(N, s); +} + diff --git a/gamedata/shaders/d3d11/rain_patch_normal_new.ps.hlsl b/gamedata/shaders/d3d11/rain_patch_normal_new.ps.hlsl new file mode 100644 index 0000000..d34c9c6 --- /dev/null +++ b/gamedata/shaders/d3d11/rain_patch_normal_new.ps.hlsl @@ -0,0 +1,113 @@ +#include "common.hlsli" +#include "shadow.hlsli" + +#ifndef USE_SUNMASK +float3x4 m_sunmask; // ortho-projection +#endif + +// Texture2D s_water; +Texture3D s_water; +Texture3D s_waterFall; +float4 RainDensity; +float4 RainFallof; +float4 WorldX; // Float3 +float4 WorldZ; // Float3 + +float3 GetNVNMap(Texture3D s_texture, float2 tc, float time) +{ + // Unpack NVidia normal map + float4 water = s_texture.SampleBias(smp_base, float3(tc, time), -3.) - 0.5; + + // Swizzle + water.xyz = water.wyz; + + // Renormalize (*2) and scale (*3) + water.xyz *= 6; + water.y = 0; + + return water.xyz; +} + +float3 GetWaterNMap(Texture3D s_texture, float2 tc, float time) +{ + // Unpack normal map + float4 water = s_texture.Sample(smp_base, float3(tc, time)); + water.xyz = (water.xzy - 0.5) * 2; + + water.xyz *= 0.3; + water.y = 0; + + return water.xyz; +} + +#ifndef ISAMPLE + #define ISAMPLE 0 +#endif + +float4 main(float2 tc : TEXCOORD0, float2 tcJ : TEXCOORD1, float4 Color : COLOR, float4 pos2d : SV_POSITION) : SV_Target +{ + gbuffer_data gbd = gbuffer_load_data(tc, pos2d); + + float4 _P = float4(gbd.P, 1.0); + float3 _N = gbd.N; + float3 D = gbd.C; + + _N.xyz = normalize(_N.xyz); + + float4 PS = mul(m_shadow, _P); + + float3 WorldP = mul(m_sunmask, _P); + float3 WorldN = mul(m_sunmask, _N.xyz); + + float s = shadow_rain(PS, WorldP.xz * 2); + + // Apply distance falloff + float fAtten = 1 - smoothstep(10, 30, length(_P.xyz)); + s *= fAtten * fAtten; + + // Apply rain density + s *= RainDensity.x; + + float fIsUp = -dot(Ldynamic_dir.xyz, _N.xyz); + s *= saturate(fIsUp * 10 + (10 * 0.5) + 0.5); + fIsUp = max(0, fIsUp); + + float fIsX = WorldN.x; + float fIsZ = WorldN.z; + + float3 waterSplash = GetNVNMap(s_water, WorldP.xz, timers.x * 3.0); + + float3 tc1 = WorldP / 2; + + float fAngleFactor = 1 - fIsUp; + + fAngleFactor = 0.1 * ceil(10 * fAngleFactor); + + // Just slow down effect. + fAngleFactor *= 1.3; + + float3 waterFallX = GetWaterNMap(s_waterFall, float2(tc1.z, tc1.y + timers.x * fAngleFactor), 0.5); + float3 waterFallZ = GetWaterNMap(s_waterFall, float2(tc1.x, tc1.y + timers.x * fAngleFactor), 0.5); + + float2 IsDir = (float2(fIsZ, fIsX)); + IsDir = normalize(IsDir); + + float3 waterFall = GetWaterNMap(s_waterFall, float2(dot(tc1.xz, IsDir), tc1.y + timers.x), 0.5); + + float WeaponAttenuation = smoothstep(0.8, 0.9, length(_P.xyz)); + float ApplyNormalCoeff = s * WeaponAttenuation; + + float3 water = waterSplash * (fIsUp * ApplyNormalCoeff); + + water += waterFallX.yxz * (abs(fIsX) * ApplyNormalCoeff); + water += waterFallZ.zxy * (abs(fIsZ) * ApplyNormalCoeff); + + // Translate NM to view space + water.xyz = mul(m_V, water.xyz); + + _N += 0.01 * water.xyz; + _N = normalize(_N); + s *= dot(D.xyz, float3(0.33, 0.33, 0.33)); + + return float4(_N, s); +} diff --git a/gamedata/shaders/d3d11/reflections.hlsli b/gamedata/shaders/d3d11/reflections.hlsli new file mode 100644 index 0000000..b205728 --- /dev/null +++ b/gamedata/shaders/d3d11/reflections.hlsli @@ -0,0 +1,279 @@ +#ifndef reflections_h_2134124_inc +#define reflections_h_2134124_inc + +// Screen Space Sky Reflections off +#define SKYBLED_FADE +#define USE_BASE_HUD_REFLECTIONS + +#define USE_VASYAN_CUTOFF + +// #define VSLR_SLOW_BREAK +// #define SSLR_SLOW_BREAK + +uniform float4 scaled_screen_res; + +float get_depth_fast(float2 tc) +{ + float P = s_position.SampleLevel(smp_rtlinear, tc, 0).x; + return depth_unpack.x * rcp(P - depth_unpack.y); +} + +float3 gbuf_unpack_position(float2 uv) +{ + float depth = get_depth_fast(uv); + uv = uv * 2.0f - 1.0f; + return float3(uv * pos_decompression_params.xy, 1.0f) * depth; +} + +float3 gbuf_unpack_position(float2 uv, float depth) +{ + uv = uv * 2.0f - 1.0f; + return float3(uv * pos_decompression_params.xy, 1.0f) * depth; +} + +float2 gbuf_unpack_uv(float3 position) +{ + position.xy *= rcp(pos_decompression_params.xy * position.z); + return saturate(position.xy * 0.5 + 0.5); +} + +#define SSLR_STEPS 30 +#define MAX_FIND_STEP 5 + +float BinaryRefinement(inout float3 EndProj, float3 Reflect) +{ + float HitDepth = 0.0f; + + [unroll(MAX_FIND_STEP)] + for(int i = 0; i < MAX_FIND_STEP; ++i) + { + HitDepth = s_env.SampleLevel(smp_nofilter, EndProj.xyz, 0).w; + HitDepth *= HitDepth; + + Reflect *= 0.5f; + EndProj += dot(EndProj, EndProj) > HitDepth ? -Reflect : Reflect; + } + + HitDepth = s_env.SampleLevel(smp_nofilter, EndProj.xyz, 0).w; + HitDepth *= HitDepth; + + return HitDepth; +} + +float BinaryRefinementHUD(inout float3 EndProj, float3 Reflect) +{ + float HitDepth = 0.0f; + + [unroll(MAX_FIND_STEP)] + for(int i = 0; i < MAX_FIND_STEP; ++i) + { + HitDepth = s_position.SampleLevel(smp_nofilter, EndProj.xy, 0).x; + + Reflect *= 0.5f; + EndProj += EndProj.z > HitDepth ? -Reflect : Reflect; + } + + HitDepth = s_position.SampleLevel(smp_nofilter, EndProj.xy, 0).x; + + return HitDepth; +} + +float4 FastViewReflections(float3 Point, float3 Reflect) +{ + float3 SamplePoint = Reflect; + + float SampleHitPointLen = 0; + float Step = rcp(SSLR_STEPS + 1) * 0.01f; + float L = 0.011f; + + float RadiusS = fog_params.z * fog_params.z; + float DistanceS = dot(Point, Point); + + float DirectionS = dot(Reflect, Reflect); + + if(DistanceS >= RadiusS) { + return float4(SamplePoint, 0.0f); + } + + Step *= fog_params.z - length(Point); //sqrt((RadiusS - DistanceS) * rcp(DirectionS)); + + float Fade = 0; + float Delta = 0.0f; + + [loop] + for(uint i = 0; i < SSLR_STEPS; ++i) + { + float JStep = Step * lerp(0.8f, 1.2f, Hash(dot(sin(SamplePoint.xyz * timers.x), float3(12.989, 42.364, 78.233)))); + L += JStep; + + Step *= 1.25f; + + SamplePoint.xyz = Point.xyz + Reflect * L; + + SampleHitPointLen = s_env.SampleLevel(smp_nofilter, SamplePoint.xyz, 0).w; + SampleHitPointLen *= SampleHitPointLen; + + Delta = dot(SamplePoint, SamplePoint) - SampleHitPointLen; + + if (Delta > 0 /*&& Delta <= JStep * 0.8f*/) + { + float3 JReflect = Reflect * JStep * 0.5f; + SamplePoint.xyz -= JReflect; + + SampleHitPointLen = BinaryRefinement(SamplePoint.xyz, JReflect); + Delta = dot(SamplePoint.xyz, SamplePoint.xyz) - SampleHitPointLen; + Fade = abs(Delta) / max(dot(SamplePoint.xyz, SamplePoint.xyz), SampleHitPointLen) < 0.1f; + +#ifdef VSLR_SLOW_BREAK + if(Fade) +#endif + break; + } + } + + SamplePoint = normalize(SamplePoint) * sqrt(SampleHitPointLen); + return float4(SamplePoint, Fade); +} + +float4 FastViewReflectionsSSR(float3 Point, float3 Reflect, bool is_hud) +{ + float4 StartProj, EndProj; + float3 ReflectBase = Reflect; + + float Step = rcp(SSLR_STEPS + 1); + bool Fade = false; + + if(is_hud) { + StartProj = mul(m_P_hud, float4(Point, 1.0f)); StartProj.xyz /= StartProj.w; + EndProj = mul(m_P_hud, float4(Point + Reflect * Point.z, 1.0f)); EndProj.xyz /= EndProj.w; + + StartProj.z *= 0.02f; + EndProj.z *= 0.02f; + } else { + StartProj = mul(m_P, float4(Point, 1.0f)); StartProj.xyz /= StartProj.w; + EndProj = mul(m_P, float4(Point + Reflect * Point.z, 1.0f)); EndProj.xyz /= EndProj.w; + } + + Reflect = EndProj.xyz - StartProj.xyz; + + StartProj.xy = StartProj.xy * float2(0.5f, -0.5f) + 0.5f; + Reflect.xy = Reflect.xy * float2(0.5f, -0.5f); + + Reflect.xyz = normalize(Reflect.xyz); + Step *= GetMaxDirLength(StartProj.xyz, rcp(Reflect)); + + float L = 0.001f; + + Step *= is_hud ? 0.2f : 1.0f; + float StepScale = is_hud ? 1.095f : 1.0f; + + [loop] + for(uint i = 0; i < SSLR_STEPS; ++i) + { + float JStep = Step * lerp(0.8f, 1.2f, Hash(dot(sin(EndProj.xyz * timers.x), float3(12.989, 42.364, 78.233)))); + L += JStep; + + Step *= StepScale; + + EndProj.xyz = StartProj.xyz + Reflect * L; + + float HitDepth = s_position.SampleLevel(smp_nofilter, EndProj.xy, 0).x; + float Delta = EndProj.z - HitDepth; + + if (Delta > 0 && (is_hud || HitDepth > 0.02f)) + { + float3 JReflect = Reflect * JStep * 0.5f; + EndProj.xyz -= JReflect; + + HitDepth = BinaryRefinementHUD(EndProj.xyz, JReflect); + + float2 depthL = rcp(max(1.0f - HitDepth, 0.00001f)); + float2 depthR = rcp(max(1.0f - EndProj.z, 0.00001f)); + + EndProj.z = HitDepth; + + Fade = is_hud || abs(depthL - depthR) * rcp(max(depthL, depthR)) < 0.01f; + +#ifdef SSLR_SLOW_BREAK + if(Fade) +#endif + break; + } + } + + if(is_hud) { + Fade = Fade && EndProj.z < 0.02f; + +#ifdef USE_BASE_HUD_REFLECTIONS + if(!Fade && ReflectBase.z > 0.0f) { + EndProj = mul(m_P, float4(ReflectBase, 1.0f)); EndProj.xyz /= EndProj.w; + EndProj.xy = EndProj.xy * float2(0.5f, -0.5f) + 0.5f; + EndProj.xy = saturate(EndProj.xy); + + EndProj.z = s_position.SampleLevel(smp_nofilter, EndProj.xy, 0).x; + Fade = GetBorderAtten(EndProj.xy, 0.001f) > 0.0f; + Fade = Fade && EndProj.z > 0.02f && EndProj.z < 1.0f; + + EndProj.z *= 0.0002f; + } +#endif + } else { + Fade = Fade && EndProj.z < 1.0f && EndProj.z > 0.02f; + } + + float3 ReflPoint = GbufferGetPointRealUnjitter(EndProj.xy, EndProj.z); + return float4(ReflPoint, Fade); +} + +float4 ScreenSpaceLocalReflections(float3 Point, float3 Reflect) +{ + float2 ReflUV = 0.0; + float3 HitPos, TestPos; + float L = 0.025f, DeltaL = 0.0f; + + float Fade = saturate(dot(Reflect, normalize(Point)) * 4.0f); + + if (Fade < 0.001f) + { + return 0.0f; + } + + [unroll(15)] + for (int i = 0; i < 15; i++) + { + TestPos = Point + Reflect * L; + ReflUV = gbuf_unpack_uv(TestPos); + HitPos = gbuf_unpack_position(ReflUV); + if (all(min(min(1.f - ReflUV.x, ReflUV.x), min(1.f - ReflUV.y, ReflUV.y)))) + { + L = length(Point - HitPos); + } + else + { + return 0.0f; + } + } + + DeltaL = length(HitPos) - length(Point); + Fade *= step(-0.4f, DeltaL); + + float Attention = GetBorderAtten(ReflUV, 0.125f); + ReflUV -= s_velocity.SampleLevel(smp_rtlinear, ReflUV, 0).xy * float2(0.5f, -0.5f); + Fade *= min(Attention, GetBorderAtten(ReflUV, 0.125f)); + +#ifdef SKYBLED_FADE + float Fog = saturate(length(HitPos) * fog_params.w + fog_params.x); + Fade *= 1.f - Fog * Fog; +#endif + + float3 Color = s_image.SampleLevel(smp_rtlinear, ReflUV, 0).xyz; + return float4(Color, Fade); +} + +float4 calc_reflections(float2 pos2d, float zpos, float3 vreflect) +{ + float3 Point = zpos * float3(pos2d * pos_decompression_params.zw - pos_decompression_params.xy, 1.0f); + return ScreenSpaceLocalReflections(Point, mul((float3x3)m_V, vreflect)); +} +#endif + diff --git a/gamedata/shaders/d3d11/saturation.ps.hlsl b/gamedata/shaders/d3d11/saturation.ps.hlsl new file mode 100644 index 0000000..c2d4f98 --- /dev/null +++ b/gamedata/shaders/d3d11/saturation.ps.hlsl @@ -0,0 +1,15 @@ +#include "common.hlsli" + +float3 pharse_saturation(float3 Color) +{ + float Luma = dot(Color.xyz, 0.33f) + 0.001f; + return lerp(Luma.xxx, Color.xyz, 1.2f); +} + +float4 main(p_shadow I) : SV_Target +{ + float3 col = s_image.Load(int3(I.hpos.xy, 0), 0).xyz; + col = 1.2f * pharse_saturation(col); + + return float4(col, 1.0f); +} diff --git a/gamedata/shaders/d3d11/scope_lense_mask.ps.hlsl b/gamedata/shaders/d3d11/scope_lense_mask.ps.hlsl new file mode 100644 index 0000000..df40086 --- /dev/null +++ b/gamedata/shaders/d3d11/scope_lense_mask.ps.hlsl @@ -0,0 +1,14 @@ +#include "common.hlsli" +uniform float4 m_hud_params; + +float main(float Z : TEXCOORD0, float4 pos2d : SV_POSITION) : SV_Depth +{ + float Depth = s_position.Load(int3(pos2d.xy, 0)).x; + float Alpha = m_hud_params.y * m_hud_params.w; + + if(Depth > pos2d.z * 0.02f && Alpha >= 0.5f) { + return 1.0f; + } + + return Depth; +} \ No newline at end of file diff --git a/gamedata/shaders/d3d11/scope_lense_mask.vs.hlsl b/gamedata/shaders/d3d11/scope_lense_mask.vs.hlsl new file mode 100644 index 0000000..ce6307f --- /dev/null +++ b/gamedata/shaders/d3d11/scope_lense_mask.vs.hlsl @@ -0,0 +1,41 @@ +#include "common.hlsli" +#include "skin.hlsli" + +void skinned_main(in v_model I, out float4 HPos) +{ + HPos = mul(m_WVP, I.P); + HPos.xy += m_taa_jitter.xy * HPos.w; +} + +#if defined(SKIN_0) +void main(in v_model_skinned_0 I, out float4 HPos : SV_POSITION) +{ + skinned_main(skinning_0(I), HPos); +} +#elif defined(SKIN_1) +void main(in v_model_skinned_1 I, out float4 HPos : SV_POSITION) +{ + skinned_main(skinning_1(I), HPos); +} +#elif defined(SKIN_2) +void main(in v_model_skinned_2 I, out float4 HPos : SV_POSITION) +{ + skinned_main(skinning_2(I), HPos); +} +#elif defined(SKIN_3) +void main(in v_model_skinned_3 I, out float4 HPos : SV_POSITION) +{ + skinned_main(skinning_3(I), HPos); +} +#elif defined(SKIN_4) +void main(in v_model_skinned_4 I, out float4 HPos : SV_POSITION) +{ + skinned_main(skinning_4(I), HPos); +} +#else +void main(in v_model I, out float4 HPos : SV_POSITION) +{ + skinned_main(I, HPos); +} +#endif + diff --git a/gamedata/shaders/d3d11/screenspacecontactshadows.hlsl b/gamedata/shaders/d3d11/screenspacecontactshadows.hlsl new file mode 100644 index 0000000..7d97375 --- /dev/null +++ b/gamedata/shaders/d3d11/screenspacecontactshadows.hlsl @@ -0,0 +1,66 @@ +#ifndef screenspacecontactshadows_hlsl_included +#define screenspacecontactshadows_hlsl_included + +#ifndef HUD_SHADOWS_STEPS +#define HUD_SHADOWS_STEPS 35 +#endif + +#ifndef HUD_SHADOWS_TRACE_LEN +#define HUD_SHADOWS_TRACE_LEN 0.07f +#endif + +float SampleHudHitPoint(float2 TexCoord) +{ + float depth = s_position.SampleLevel(smp_nofilter, TexCoord, 0).x; + return depth_unpack.z * rcp(min(1.0f, depth * 50.0f) - depth_unpack.w); +} + +float2 GetPointTexCoord(float3 Point) +{ + Point.xy *= rcp(pos_decompression_params_hud.xy * Point.z); + return saturate(Point.xy * 0.5f + 0.5f); +} + +void RayTraceContactShadow(float2 TexCoord, float3 Point, float3 LightDir, inout float3 Light) +{ + Point.xyz *= 0.99f; + + LightDir *= min(Point.z, HUD_SHADOWS_TRACE_LEN); + float4 StartProj = mul(m_P_hud, float4(Point, 1.0f)); StartProj.xyz /= StartProj.w; + float4 EndProj = mul(m_P_hud, float4(Point - LightDir, 1.0f)); EndProj.xyz /= EndProj.w; + + StartProj.xy = StartProj.xy * float2(0.5f, -0.5f) + 0.5f; StartProj.z *= 0.02f; + EndProj.xy = EndProj.xy * float2(0.5f, -0.5f) + 0.5f; EndProj.z *= 0.02f; + + LightDir = EndProj.xyz - StartProj.xyz; + StartProj.xy = TexCoord.xy; + + float Len = GetMaxDirLength(StartProj.xyz, rcp(LightDir)); + + LightDir *= min(1.0f, Len); + LightDir *= rcp(HUD_SHADOWS_STEPS); + + float ContactShadow = 0.0f; + + [unroll(HUD_SHADOWS_STEPS)] + for (int i = 0; i < HUD_SHADOWS_STEPS; ++i) + { + StartProj.xyz += LightDir * float(0.8f + 0.4f * Hash(StartProj.xyz)); + float HitDepth = s_position.SampleLevel(smp_nofilter, StartProj.xy, 0).x; + + if (HitDepth <= StartProj.z) + { + ContactShadow += 0.2f; + if (ContactShadow >= 1.0f) + { + ContactShadow = 1.0f; + break; + } + } + } + + ContactShadow *= GetBorderAtten(StartProj.xy, 0.0125f); + Light *= 1.0f - saturate(ContactShadow); +} +#endif + diff --git a/gamedata/shaders/d3d11/selflight.lua b/gamedata/shaders/d3d11/selflight.lua new file mode 100644 index 0000000..bed56fa --- /dev/null +++ b/gamedata/shaders/d3d11/selflight.lua @@ -0,0 +1,12 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("dumb", "dumb") + :fog(false) + :zb(false, false) + :blend(true, blend.zero, blend.one) + :aref(false, 0) + :sorting(2, false) + -- shader:sampler ("s_base") :texture (t_base) + + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") +end diff --git a/gamedata/shaders/d3d11/selflight2.lua b/gamedata/shaders/d3d11/selflight2.lua new file mode 100644 index 0000000..d08ab15 --- /dev/null +++ b/gamedata/shaders/d3d11/selflight2.lua @@ -0,0 +1,18 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("deffer_base", "deffer_base") + :fog(false) + :emissive(true) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") + shader:dx10stencil(true, cmp_func.always, 255, 127, stencil_op.keep, stencil_op.replace, stencil_op.keep) + shader:dx10stencil_ref(1) +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("deffer_base", "accum_emissivel") + :zb(true, false) + :fog(false) + :emissive(true) + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") +end diff --git a/gamedata/shaders/d3d11/shadow.hlsli b/gamedata/shaders/d3d11/shadow.hlsli new file mode 100644 index 0000000..60ae9a4 --- /dev/null +++ b/gamedata/shaders/d3d11/shadow.hlsli @@ -0,0 +1,660 @@ +#ifndef SHADOW_H +#define SHADOW_H + +#include "common.hlsli" +uniform float4x4 m_shadow; + +Texture2D s_smap : register(ps, t0); +SamplerComparisonState smp_smap; +sampler smp_jitter; + +Texture2D jitter0; +Texture2D jitter1; + +#ifndef USE_ULTRA_SHADOWS + #define KERNEL 0.6f +#else + #define KERNEL 1.0f +#endif + +float4 sm_gather(float2 tc, int2 offset) +{ +#ifdef SM_4_1 + return s_smap.Gather(smp_nofilter, tc, offset); +#else + static const float scale = float(SMAP_size); + float2 fc = frac(tc * scale); + + tc -= fc / scale; + + float s0 = s_smap.SampleLevel(smp_nofilter, tc, 0, offset + int2(0, 1)).x; + float s1 = s_smap.SampleLevel(smp_nofilter, tc, 0, offset + int2(1, 1)).x; + float s2 = s_smap.SampleLevel(smp_nofilter, tc, 0, offset + int2(1, 0)).x; + float s3 = s_smap.SampleLevel(smp_nofilter, tc, 0, offset + int2(0, 0)).x; + + return float4(s0, s1, s2, s3); +#endif +} + +////////////////////////////////////////////////////////////////////////////////////////// +// hardware + PCF +////////////////////////////////////////////////////////////////////////////////////////// +float sample_hw_pcf(float4 tc, float4 shift) +{ + static const float ts = KERNEL / float(SMAP_size); + + tc.xyz /= tc.w; + tc.xy += shift.xy * ts; + + return s_smap.SampleCmpLevelZero(smp_smap, tc.xy, tc.z).x; +} + +#define GS2 3 + +float shadow_hw(float4 tc) +{ + float s0 = sample_hw_pcf(tc, float4(-1, -1, 0, 0)); + float s1 = sample_hw_pcf(tc, float4(+1, -1, 0, 0)); + float s2 = sample_hw_pcf(tc, float4(-1, +1, 0, 0)); + float s3 = sample_hw_pcf(tc, float4(+1, +1, 0, 0)); + + return (s0 + s1 + s2 + s3) / 4.h; +} + +#if SUN_QUALITY >= 4 + #define FILTER_SIZE 11 + #define FS FILTER_SIZE + #define FS2 (FILTER_SIZE / 2) + +static const float W2[11][11] = +{ + { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f }, + { 0.0f, 0.2f, 0.2f, 0.2f, 0.2f, 0.2f, 0.2f, 0.2f, 0.2f, 0.2f, 0.0f }, + { 0.0f, 0.2f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 0.2f, 0.0f }, + { 0.0f, 0.2f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 0.2f, 0.0f }, + { 0.0f, 0.2f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 0.2f, 0.0f }, + { 0.0f, 0.2f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 0.2f, 0.0f }, + { 0.0f, 0.2f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 0.2f, 0.0f }, + { 0.0f, 0.2f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 0.2f, 0.0f }, + { 0.0f, 0.2f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 0.2f, 0.0f }, + { 0.0f, 0.2f, 0.2f, 0.2f, 0.2f, 0.2f, 0.2f, 0.2f, 0.2f, 0.2f, 0.0f }, + { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f }, +}; + +static const float W1[11][11] = +{ + { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f }, + { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f }, + { 0.0f, 0.0f, 0.2f, 0.2f, 0.2f, 0.2f, 0.2f, 0.2f, 0.2f, 0.0f, 0.0f }, + { 0.0f, 0.0f, 0.2f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 0.2f, 0.0f, 0.0f }, + { 0.0f, 0.0f, 0.2f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 0.2f, 0.0f, 0.0f }, + { 0.0f, 0.0f, 0.2f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 0.2f, 0.0f, 0.0f }, + { 0.0f, 0.0f, 0.2f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 0.2f, 0.0f, 0.0f }, + { 0.0f, 0.0f, 0.2f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 0.2f, 0.0f, 0.0f }, + { 0.0f, 0.0f, 0.2f, 0.2f, 0.2f, 0.2f, 0.2f, 0.2f, 0.2f, 0.0f, 0.0f }, + { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f }, + { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f }, +}; + +static const float W0[11][11] = +{ + { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f }, + { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f }, + { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f }, + { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f }, + { 0.0f, 0.0f, 0.0f, 0.0f, 0.1f, 0.1f, 0.1f, 0.0f, 0.0f, 0.0f, 0.0f }, + { 0.0f, 0.0f, 0.0f, 0.0f, 0.1f, 1.0f, 0.1f, 0.0f, 0.0f, 0.0f, 0.0f }, + { 0.0f, 0.0f, 0.0f, 0.0f, 0.1f, 0.1f, 0.1f, 0.0f, 0.0f, 0.0f, 0.0f }, + { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f }, + { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f }, + { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f }, + { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f }, +}; + +float Fw(int r, int c, float fL) +{ + return (1.0 - fL) * (1.0 - fL) * (1.0 - fL) * W0[r][c] + + 3.0f * (1.0 - fL) * (1.0 - fL) * fL * W1[r][c] + + 3.0f * fL * fL * (1.0 - fL) * W2[r][c] + + fL * fL * fL * 1.0f; +} + + #define BLOCKER_FILTER_SIZE 11 + #define BFS BLOCKER_FILTER_SIZE + #define BFS2 (BLOCKER_FILTER_SIZE / 2) + + #define SUN_WIDTH 300.0f + +// uses gather for DX11/10.1 and visibilty encoding for DX10.0 +static const float2 poissonDisk[16] = { + float2( -0.94201624f, -0.39906216f ), + float2( 0.94558609f, -0.76890725f ), + float2( -0.094184101f, -0.92938870f ), + float2( 0.34495938f, 0.29387760f ), + float2( -0.91588581f, 0.45771432f ), + float2( -0.81544232f, -0.87912464f ), + float2( -0.38277543f, 0.27676845f ), + float2( 0.97484398f, 0.75648379f ), + float2( 0.44323325f, -0.97511554f ), + float2( 0.53742981f, -0.47373420f ), + float2( -0.26496911f, -0.41893023f ), + float2( 0.79197514f, 0.19090188f ), + float2( -0.24188840f, 0.99706507f ), + float2( -0.81409955f, 0.91437590f ), + float2( 0.19984126f, 0.78641367f ), + float2( 0.14383161f, -0.14100790f ) + }; + +#define PCSS_PIXEL 5 +#define PCSS_STEP 5 +#define PCSS_PIXEL_MIN 1.0f +#define PCSS_SUN_WIDTH 300.f +#define PCSS_NUM_SAMPLES 16 + +float shadow_extreme_quality( float3 tc ) +{ + int3 uv = int3(tc.xy * float(SMAP_size), 0); + float zBlock = tc.z - 0.0001f; + float avgBlockerDepth = 0.f; + float blockerCount = 0.f; + + [unroll] for( int row = -PCSS_PIXEL; row <= PCSS_PIXEL; row += PCSS_STEP ) + { + [unroll] for( int col = -PCSS_PIXEL; col <= PCSS_PIXEL; col += PCSS_STEP ) + { + float shadowMapDepth = s_smap.Load( uv, int2( col, row ) ).x; + float b1 = ( shadowMapDepth < zBlock ) ? 1.f : 0.f; + blockerCount += b1; + avgBlockerDepth += shadowMapDepth * b1; + } + } + + if( blockerCount < 1 || blockerCount >= 9 ) + return 1.f - min(1.f, blockerCount); + + avgBlockerDepth /= blockerCount; + float fRatio = saturate( ( ( tc.z - avgBlockerDepth ) * PCSS_SUN_WIDTH ) / avgBlockerDepth ); + fRatio *= fRatio; + fRatio = max(PCSS_PIXEL_MIN, fRatio * float(PCSS_PIXEL)) / float(SMAP_size); + + float s = 0.f; + [unroll] for( uint i = 0; i < PCSS_NUM_SAMPLES; ++i ) + { + float2 offset = poissonDisk[i] * fRatio; + s += s_smap.SampleCmpLevelZero( smp_smap, tc.xy + offset, tc.z ).x; + } + return s / PCSS_NUM_SAMPLES; +} + +float4 Fw(int r, int c) +{ + return float4(W0[r][c], W1[r][c], W2[r][c], 1.0f); +} + +//====================================================================================== +// This shader computes the contact hardening shadow filter +//====================================================================================== +float shadow_extreme_quality_fused(float3 tc) +{ + float4 s = (0.0f).xxxx; + float2 stc = (SMAP_size * tc.xy) + float2(0.5, 0.5); + float2 tcs = floor(stc); + float2 fc; + int row; + int col; + float w = 0.0; + float avgBlockerDepth = 0; + float blockerCount = 0; + float fRatio; + float4 v1[FS2 + 1]; + float2 v0[FS2 + 1]; + float2 off; + + fc = stc - tcs; + tc.xy = tc.xy - (fc * (1.0f / SMAP_size)); + + // filter shadow map samples using the dynamic weights + [unroll(FS)] + for (row = -FS2; row <= FS2; row += 2) + { + for (col = -FS2; col <= FS2; col += 2) + { + float4 d4; + + #ifndef PS_4 + d4 = s_smap.Gather(smp_nofilter, tc.xy + (1.0f / SMAP_size) * float2(col, row)); + #else + d4.w = s_smap.SampleLevel(smp_nofilter, tc.xy + (1.0f / SMAP_size) * float2(col, row), 0).x; + d4.z = s_smap.SampleLevel(smp_nofilter, tc.xy + (1.0f / SMAP_size) * float2(col + 1, row), 0).x; + d4.y = s_smap.SampleLevel(smp_nofilter, tc.xy + (1.0f / SMAP_size) * float2(col + 1, row + 1), 0).x; + d4.x = s_smap.SampleLevel(smp_nofilter, tc.xy + (1.0f / SMAP_size) * float2(col, row + 1), 0).x; + #endif + float4 b4 = (tc.zzzz <= d4) ? (0.0f).xxxx : (1.0f).xxxx; + + v1[(col + FS2) / 2] = (tc.zzzz <= d4) ? (1.0f).xxxx : (0.0f).xxxx; + blockerCount += dot(b4, (1.0).xxxx); + avgBlockerDepth += dot(d4, b4); + + if (col == -FS2) + { + s += (1 - fc.y) * (v1[0].w * (Fw(row + FS2, 0) - + Fw(row + FS2, 0) * fc.x) + + v1[0].z * + (fc.x * (Fw(row + FS2, 0) - + Fw(row + FS2, 1)) + + Fw(row + FS2, 1))); + s += (fc.y) * (v1[0].x * (Fw(row + FS2, 0) - + Fw(row + FS2, 0) * fc.x) + + v1[0].y * (fc.x * (Fw(row + FS2, 0) - + Fw(row + FS2, 1)) + + Fw(row + FS2, 1))); + if (row > -FS2) + { + s += (1 - fc.y) * (v0[0].x * (Fw(row + FS2 - 1, 0) - + Fw(row + FS2 - 1, 0) * fc.x) + + v0[0].y * + (fc.x * (Fw(row + FS2 - 1, 0) - + Fw(row + FS2 - 1, 1)) + + Fw(row + FS2 - 1, 1))); + s += (fc.y) * (v1[0].w * (Fw(row + FS2 - 1, 0) - + Fw(row + FS2 - 1, 0) * fc.x) + + v1[0].z * + (fc.x * (Fw(row + FS2 - 1, 0) - + Fw(row + FS2 - 1, 1)) + + Fw(row + FS2 - 1, 1))); + } + } + else if (col == FS2) + { + s += (1 - fc.y) * (v1[FS2].w * (fc.x * (Fw(row + FS2, FS - 2) - + Fw(row + FS2, FS - 1)) + + Fw(row + FS2, FS - 1)) + + v1[FS2].z * fc.x * + Fw(row + FS2, FS - 1)); + s += (fc.y) * (v1[FS2].x * (fc.x * (Fw(row + FS2, FS - 2) - + Fw(row + FS2, FS - 1)) + + Fw(row + FS2, FS - 1)) + + v1[FS2].y * fc.x * + Fw(row + FS2, FS - 1)); + if (row > -FS2) + { + s += (1 - fc.y) * (v0[FS2].x * (fc.x * + (Fw(row + FS2 - 1, FS - 2) - + Fw(row + FS2 - 1, FS - 1)) + + Fw(row + FS2 - 1, FS - 1)) + + v0[FS2].y * fc.x * Fw(row + FS2 - 1, FS - 1)); + s += (fc.y) * (v1[FS2].w * (fc.x * + (Fw(row + FS2 - 1, FS - 2) - + Fw(row + FS2 - 1, FS - 1)) + + Fw(row + FS2 - 1, FS - 1)) + + v1[FS2].z * fc.x * Fw(row + FS2 - 1, FS - 1)); + } + } + else + { + s += (1 - fc.y) * (v1[(col + FS2) / 2].w * (fc.x * + (Fw(row + FS2, col + FS2 - 1) - + Fw(row + FS2, col + FS2 + 0)) + + Fw(row + FS2, col + FS2 + 0)) + + v1[(col + FS2) / 2].z * (fc.x * + (Fw(row + FS2, col + FS2 - 0) - + Fw(row + FS2, col + FS2 + 1)) + + Fw(row + FS2, col + FS2 + 1))); + s += (fc.y) * (v1[(col + FS2) / 2].x * (fc.x * + (Fw(row + FS2, col + FS2 - 1) - + Fw(row + FS2, col + FS2 + 0)) + + Fw(row + FS2, col + FS2 + 0)) + + v1[(col + FS2) / 2].y * (fc.x * + (Fw(row + FS2, col + FS2 - 0) - + Fw(row + FS2, col + FS2 + 1)) + + Fw(row + FS2, col + FS2 + 1))); + if (row > -FS2) + { + s += (1 - fc.y) * (v0[(col + FS2) / 2].x * (fc.x * + (Fw(row + FS2 - 1, col + FS2 - 1) - + Fw(row + FS2 - 1, col + FS2 + 0)) + + Fw(row + FS2 - 1, col + FS2 + 0)) + + v0[(col + FS2) / 2].y * (fc.x * + (Fw(row + FS2 - 1, col + FS2 - 0) - + Fw(row + FS2 - 1, col + FS2 + 1)) + + Fw(row + FS2 - 1, col + FS2 + 1))); + s += (fc.y) * (v1[(col + FS2) / 2].w * (fc.x * + (Fw(row + FS2 - 1, col + FS2 - 1) - + Fw(row + FS2 - 1, col + FS2 + 0)) + + Fw(row + FS2 - 1, col + FS2 + 0)) + + v1[(col + FS2) / 2].z * (fc.x * + (Fw(row + FS2 - 1, col + FS2 - 0) - + Fw(row + FS2 - 1, col + FS2 + 1)) + + Fw(row + FS2 - 1, col + FS2 + 1))); + } + } + + if (row != FS2) + { + v0[(col + FS2) / 2] = v1[(col + FS2) / 2].xy; + } + } + } + + // compute ratio using formulas from PCSS + if (blockerCount > 0.0) + { + avgBlockerDepth /= blockerCount; + fRatio = saturate(((tc.z - avgBlockerDepth) * SUN_WIDTH) / avgBlockerDepth); + fRatio *= fRatio; + } + else + { + fRatio = 0.0; + } + + // sum up weights of dynamic filter matrix + for (row = 0; row < FS; ++row) + { + for (col = 0; col < FS; ++col) + { + w += Fw(row, col, fRatio); + } + } + + return dot(s, float4((1.0f - fRatio) * (1.0f - fRatio) * (1.0f - fRatio), + 3.0f * (1.0 - fRatio) * (1.0 - fRatio) * fRatio, + 3.0f * fRatio * fRatio * (1.0 - fRatio), + fRatio * fRatio * fRatio)) / + w; +} +#endif + +#ifdef SM_4_1 + +float dx10_1_hw_hq_7x7(float3 tc) +{ + float s = 0.0f; + float2 stc = (SMAP_size * tc.xy) + float2(0.5, 0.5); + float2 tcs = floor(stc); + float2 fc; + int row; + int col; + + fc.xy = stc - tcs; + tc.xy = tcs * (1.0 / SMAP_size); + + // loop over the rows + for (row = -GS2; row <= GS2; row += 2) + { + [unroll] for (col = -GS2; col <= GS2; col += 2) + { + float4 v = (tc.zzzz <= s_smap.Gather(smp_nofilter, tc.xy, int2(col, row))) ? (1.0).xxxx : (0.0).xxxx; + + if (row == -GS2) // top row + { + if (col == -GS2) // left + { + s += dot(float4(1.0 - fc.x, 1.0, 1.0 - fc.y, (1.0 - fc.x) * (1.0 - fc.y)), v); + } + else if (col == GS2) // right + { + s += dot(float4(1.0f, fc.x, fc.x * (1.0 - fc.y), 1.0 - fc.y), v); + } + else // center + { + s += dot(float4(1.0, 1.0, 1.0 - fc.y, 1.0 - fc.y), v); + } + } + else if (row == GS2) // bottom row + { + if (col == -GS2) // left + { + s += dot(float4((1.0 - fc.x) * fc.y, fc.y, 1.0, (1.0 - fc.x)), v); + } + else if (col == GS2) // right + { + s += dot(float4(fc.y, fc.x * fc.y, fc.x, 1.0), v); + } + else // center + { + s += dot(float4(fc.yy, 1.0, 1.0), v); + } + } + else // center rows + { + if (col == -GS2) // left + { + s += dot(float4((1.0 - fc.x), 1.0, 1.0, (1.0 - fc.x)), v); + } + else if (col == GS2) // right + { + s += dot(float4(1.0, fc.x, fc.x, 1.0), v); + } + else // center + { + s += dot((1.0).xxxx, v); + } + } + } + } + + return s * (1.0 / 49.0); +} + +#endif + +float dx10_0_hw_hq_7x7(float4 tc) +{ + tc.xyz /= tc.w; + + float s = 0.0; + float2 stc = (SMAP_size * tc.xy) + float2(0.5, 0.5); + float2 tcs = floor(stc); + float2 fc; + + fc = stc - tcs; + tc.xy = tc.xy - (fc * (1.0 / SMAP_size)); + + float2 pwAB = ((2.0).xx - fc); + float2 tcAB = (1.0 / SMAP_size).xx / pwAB; + float2 tcM = (0.5 / SMAP_size).xx; + float2 pwGH = ((1.0).xx + fc); + float2 tcGH = (1.0 / SMAP_size) * (fc / pwGH); + + for (int row = -GS2; row <= GS2; row += 2) + { + for (int col = -GS2; col <= GS2; col += 2) + { + if (row == -GS2) // top row + { + if (col == -GS2) // left + { + s += (pwAB.x * pwAB.y) * s_smap.SampleCmpLevelZero(smp_smap, tc.xy + tcAB, tc.z, int2(col, row)).x; + } + else if (col == GS2) // right + { + s += (pwGH.x * pwAB.y) * s_smap.SampleCmpLevelZero(smp_smap, tc.xy + float2(tcGH.x, tcAB.y), tc.z, int2(col, row)).x; + } + else // center + { + s += (2.0 * pwAB.y) * s_smap.SampleCmpLevelZero(smp_smap, tc.xy + float2(tcM.x, tcAB.y), tc.z, int2(col, row)).x; + } + } + else if (row == GS2) // bottom row + { + if (col == -GS2) // left + { + s += (pwAB.x * pwGH.y) * s_smap.SampleCmpLevelZero(smp_smap, tc.xy + float2(tcAB.x, tcGH.y), tc.z, int2(col, row)).x; + } + else if (col == GS2) // right + { + s += (pwGH.x * pwGH.y) * s_smap.SampleCmpLevelZero(smp_smap, tc.xy + tcGH, tc.z, int2(col, row)).x; + } + else // center + { + s += (2.0 * pwGH.y) * s_smap.SampleCmpLevelZero(smp_smap, tc.xy + float2(tcM.x, tcGH.y), tc.z, int2(col, row)).x; + } + } + else // center rows + { + if (col == -GS2) // left + { + s += (pwAB.x * 2.0) * s_smap.SampleCmpLevelZero(smp_smap, tc.xy + float2(tcAB.x, tcM.y), tc.z, int2(col, row)).x; + } + else if (col == GS2) // right + { + s += (pwGH.x * 2.0) * s_smap.SampleCmpLevelZero(smp_smap, tc.xy + float2(tcGH.x, tcM.y), tc.z, int2(col, row)).x; + } + else // center + { + s += (2.0 * 2.0) * s_smap.SampleCmpLevelZero(smp_smap, tc.xy + tcM, tc.z, int2(col, row)).x; + } + } + } + } + + return s / 49.0; +} + +float shadow_hw_hq(float4 tc) +{ +#if SUN_QUALITY >= 4 // extreme quality + return shadow_extreme_quality(tc.xyz / tc.w); +#else // SUN_QUALITY<4 + #ifdef SM_4_1 + return dx10_1_hw_hq_7x7(tc.xyz / tc.w); + #else // SM_4_1 + return dx10_0_hw_hq_7x7(tc); + #endif // SM_4_1 +#endif // SUN_QUALITY==4 +} + +////////////////////////////////////////////////////////////////////////////////////////// +// D24X8+PCF +////////////////////////////////////////////////////////////////////////////////////////// + +float4 test(float4 tc, float2 offset) +{ + tc.xyz /= tc.w; + tc.xy += offset; + return s_smap.SampleCmpLevelZero(smp_smap, tc.xy, tc.z).x; +} + +float shadowtest_sun(float4 tc, float4 tcJ) // jittered sampling +{ + float4 r; + + // const float scale = (2.0f/float(SMAP_size)); + const float scale = (0.7f / float(SMAP_size)); + + float2 tc_J = frac(tc.xy / tc.w * SMAP_size / 4.0f) * 0.5f; + float4 J0 = jitter0.Sample(smp_jitter, tc_J) * scale; + // float4 J1 = tex2D (jitter1,tc_J)*scale; + + const float k = 0.5f / float(SMAP_size); + r.x = test(tc, J0.xy + float2(-k, -k)).x; + r.y = test(tc, J0.wz + float2(k, -k)).y; + r.z = test(tc, -J0.xy + float2(-k, k)).z; + r.w = test(tc, -J0.wz + float2(k, k)).x; + + return dot(r, 1.0f / 4.0f); +} + +// jittered sampling +float shadow_high(float4 tc) +{ + const float scale = (0.5f / float(SMAP_size)); + + float2 tc_J = frac(tc.xy / tc.w * SMAP_size / 4.0f) * .5f; + float4 J0 = jitter0.Sample(smp_jitter, tc_J) * scale; + + const float k = 1.0f / float(SMAP_size); + float4 r; + r.x = test(tc, J0.xy + float2(-k, -k)).x; + r.y = test(tc, J0.wz + float2(k, -k)).y; + + r.z = test(tc, J0.xy + float2(-k, k)).z; + r.w = test(tc, J0.wz + float2(k, k)).x; + + const float k1 = 1.3f / float(SMAP_size); + float4 r1; + r1.x = test(tc, -J0.xy + float2(-k1, 0)).x; + r1.y = test(tc, -J0.wz + float2(0, -k1)).y; + + r1.z = test(tc, -2 * J0.xy + float2(k1, 0)).z; + r1.w = test(tc, -2 * J0.wz + float2(0, k1)).x; + + return (r.x + r.y + r.z + r.w + r1.x + r1.y + r1.z + r1.w) * 1.0f / 8.0f; +} + +float shadow(float4 tc) +{ +#ifdef USE_ULTRA_SHADOWS + return shadow_hw_hq(tc); +#else + #if SUN_QUALITY >= 2 + return shadow_hw(tc); + #else + return shadow_hw(tc); + #endif +#endif +} + +float shadow_volumetric(float4 tc) +{ + return sample_hw_pcf(tc, float4(-1, -1, 0, 0)); +} + +// testbed + +float shadowtest(float4 tc, float4 tcJ) // jittered sampling +{ + float4 r; + + const float scale = (2.7f / float(SMAP_size)); + + tcJ.xy /= tcJ.w; + float4 J0 = jitter0.Sample(smp_jitter, tcJ.xy) * scale; + float4 J1 = jitter1.Sample(smp_jitter, tcJ.xy) * scale; + + r.x = test(tc, J0.xy).x; + r.y = test(tc, J0.wz).y; + r.z = test(tc, J1.xy).z; + r.w = test(tc, J1.wz).x; + + return dot(r, 1.h / 4.h); +} + +float shadow_rain(float4 tc, float2 tcJ) // jittered sampling +{ + float4 r; + + const float scale = (4.0f / float(SMAP_size)); + // float4 J0 = jitter0.Sample( smp_jitter, tcJ )*scale; + // float4 J1 = jitter1.Sample( smp_jitter, tcJ )*scale; + float4 J0 = jitter0.Sample(smp_linear, tcJ) * scale; + float4 J1 = jitter1.Sample(smp_linear, tcJ) * scale; + + r.x = test(tc, J0.xy).x; + r.y = test(tc, J0.wz).y; + r.z = test(tc, J1.xy).z; + r.w = test(tc, J1.wz).x; + + return dot(r, 1.h / 4.h); +} + +#ifdef USE_SUNMASK + +float3x4 m_sunmask; +float sunmask(float4 P) +{ + float2 tc = mul(m_sunmask, P).xy; + return 0.25f + 0.75f * s_lmap.SampleLevel(smp_linear, tc, 0).w; +} + +#else + +float sunmask(float4 P) +{ + return 1.f; +} + +#endif +#endif + diff --git a/gamedata/shaders/d3d11/shadow_base.ps.hlsl b/gamedata/shaders/d3d11/shadow_base.ps.hlsl new file mode 100644 index 0000000..3001a85 --- /dev/null +++ b/gamedata/shaders/d3d11/shadow_base.ps.hlsl @@ -0,0 +1,12 @@ +#include "common.hlsli" + +float4 main(p_shadow I) : SV_Target +{ +#ifdef USE_AREF + float4 C = s_base.Sample(smp_linear, I.tc0); + clip(C.w - def_aref); +#endif + + return 0; +} + diff --git a/gamedata/shaders/d3d11/shadow_base.vs.hlsl b/gamedata/shaders/d3d11/shadow_base.vs.hlsl new file mode 100644 index 0000000..d6fc8a0 --- /dev/null +++ b/gamedata/shaders/d3d11/shadow_base.vs.hlsl @@ -0,0 +1,18 @@ +#include "common.hlsli" + +struct a2v +{ + float4 P : POSITION; +}; + +#ifdef USE_AREF +void main(in v_static I, out p_shadow O) +{ + O.tc0 = unpack_tc_base(I.tc, I.T.w, I.B.w); +#else +void main(in a2v I, out p_shadow O) +{ + O.tc0 = 0.0f; +#endif + O.hpos = mul(m_WVP, I.P); +} \ No newline at end of file diff --git a/gamedata/shaders/d3d11/shadow_lod.vs.hlsl b/gamedata/shaders/d3d11/shadow_lod.vs.hlsl new file mode 100644 index 0000000..e1087bf --- /dev/null +++ b/gamedata/shaders/d3d11/shadow_lod.vs.hlsl @@ -0,0 +1,25 @@ +#include "common.hlsli" + +uniform float3x4 m_xform; +uniform float3x4 m_xform_v; +uniform float4 consts; // {1/quant,1/quant,???,???} +uniform float4 c_scale, c_bias, wind, wave; + +// Vertex +void main(in v_shadow_direct_aref I, out p_shadow O) +{ + float4 pos = float4(mul(m_xform, I.P).xyz, 1.0f); + +#ifdef USE_TREEWAVE + float base = m_xform._24; + float dp = calc_cyclic(wave.w + dot(pos.xyz, wave.xyz)); + float H = pos.y - base; + float inten = H * dp; + float frac = I.tc.z * consts.x; + pos.xz += calc_xz_wave(wind.xz * inten, frac); +#endif + + O.hpos = mul(m_VP, pos); + O.tc0 = I.tc.xy * consts.xy; +} + diff --git a/gamedata/shaders/d3d11/shadow_model.vs.hlsl b/gamedata/shaders/d3d11/shadow_model.vs.hlsl new file mode 100644 index 0000000..b5c5f8e --- /dev/null +++ b/gamedata/shaders/d3d11/shadow_model.vs.hlsl @@ -0,0 +1,54 @@ +#include "common.hlsli" +#include "skin.hlsli" + +p_shadow _main(v_model I) +{ + p_shadow O; + + O.hpos = mul(m_WVP, I.P); + O.tc0 = I.tc; + + return O; +} + +#ifdef SKIN_NONE +p_shadow main(v_model v) +{ + return _main(v); +} +#endif + +#ifdef SKIN_0 +p_shadow main(v_model_skinned_0 v) +{ + return _main(skinning_0(v)); +} +#endif + +#ifdef SKIN_1 +p_shadow main(v_model_skinned_1 v) +{ + return _main(skinning_1(v)); +} +#endif + +#ifdef SKIN_2 +p_shadow main(v_model_skinned_2 v) +{ + return _main(skinning_2(v)); +} +#endif + +#ifdef SKIN_3 +p_shadow main(v_model_skinned_3 v) +{ + return _main(skinning_3(v)); +} +#endif + +#ifdef SKIN_4 +p_shadow main(v_model_skinned_4 v) +{ + return _main(skinning_4(v)); +} +#endif diff --git a/gamedata/shaders/d3d11/shared/cloudconfig.hlsli b/gamedata/shaders/d3d11/shared/cloudconfig.hlsli new file mode 100644 index 0000000..7f2e393 --- /dev/null +++ b/gamedata/shaders/d3d11/shared/cloudconfig.hlsli @@ -0,0 +1,11 @@ +#ifndef _CLOUDCONFIG_H +#define _CLOUDCONFIG_H + +// note: timers has resolution (sec), where x=1, y=10, z=1/10, +#define CLOUD_TILE0 (0.7f) +#define CLOUD_SPEED0 (2 * 0.05) //(0.033f) +#define CLOUD_TILE1 (2.8) //(2.5f) +#define CLOUD_SPEED1 (2 * 0.025) //(0.033f) +#define CLOUD_FADE (0.5) + +#endif diff --git a/gamedata/shaders/d3d11/shared/common.hlsli b/gamedata/shaders/d3d11/shared/common.hlsli new file mode 100644 index 0000000..40332e7 --- /dev/null +++ b/gamedata/shaders/d3d11/shared/common.hlsli @@ -0,0 +1,79 @@ +////////////////////////////////////////////////// +// All comments by Nivenhbro are preceded by ! +///////////////////////////////////////////////// + +#ifndef SHARED_COMMON_H +#define SHARED_COMMON_H + +// Used by VS +cbuffer dynamic_transforms +{ + uniform float4x4 m_WVP; + uniform float3x4 m_WV; + uniform float3x4 m_W; + + uniform float4x4 m_WVP_old; + uniform float3x4 m_WV_old; + uniform float3x4 m_W_old; + + uniform float4x4 m_P_hud; + + uniform float4 L_material; + uniform float4 hemi_cube_pos_faces; + uniform float4 hemi_cube_neg_faces; + uniform float4 dt_params; +} + +cbuffer shader_params +{ + float m_AlphaRef; +} + +cbuffer static_globals +{ + uniform float3x4 m_invV; + + uniform float3x4 m_V; + uniform float4x4 m_P; + uniform float4x4 m_VP; + + uniform float3x4 m_V_old; + uniform float4x4 m_P_old; + uniform float4x4 m_VP_old; + + uniform float4 timers; + + uniform float4 fog_plane; + uniform float4 fog_params; + uniform float4 fog_color; + + uniform float4 L_ambient; + uniform float3 L_sun_color; + uniform float3 L_sun_dir_w; + uniform float4 L_sky_color; + uniform float4 L_hemi_color; + + uniform float3 eye_position; + + uniform float4 pos_decompression_params; + uniform float4 pos_decompression_params2; + uniform float4 pos_decompression_params_hud; + uniform float4 depth_unpack; + uniform float def_aref; + uniform float4 parallax; + + uniform float4 m_taa_jitter; +} + +float calc_cyclic(float x) +{ + float f = 1.4142f * sin(x * 3.14159f); + return f * f - 1.0f; +} + +float2 calc_xz_wave(float2 dir2D, float frac) +{ + return dir2D * frac; +} +#endif + diff --git a/gamedata/shaders/d3d11/shared/waterconfig.hlsli b/gamedata/shaders/d3d11/shared/waterconfig.hlsli new file mode 100644 index 0000000..574ff65 --- /dev/null +++ b/gamedata/shaders/d3d11/shared/waterconfig.hlsli @@ -0,0 +1,55 @@ +#ifndef _WATERCONFIG_H + #define _WATERCONFIG_H + +// настройки для: (1) +// waterdistortion +// waterdistortion2 + + #define W_POSITION_SHIFT_HEIGHT (1.f / 60.f) //(1.f/100.f) //amplitude /50 - small, /10 - large + #define W_POSITION_SHIFT_SPEED (25.f) //(25.0f) + #define W_DISTORT_BASE_TILE_0 (1.0f) //(1.0f) + #define W_DISTORT_BASE_TILE_1 (1.1f) //(1.1f) + #define W_DISTORT_AMP_0 (+0.15f) //(+0.15f) + #define W_DISTORT_AMP_1 (+0.55f) //(-0.30f) + #define W_DISTORT_POWER (1.0f) //(1.0f) + +#endif + +/* +//////////////////////////////////////////////////////////////////////////////// +-- waters clear +//////////////////////////////////////////////////////////////////////////////// +настройки для: + waterdistortion + waterdistortion2 +//////////////////////////////////////////////////////////////////////////////// +#define W_POSITION_SHIFT_HEIGHT (1.f/50.f) //(1.f/100.f) //amplitude /50 - small, /10 - large +#define W_POSITION_SHIFT_SPEED (15.f) //(25.0f) +#define W_DISTORT_BASE_TILE_0 (1.3f) //(1.6f) +#define W_DISTORT_BASE_TILE_1 (2.3f) //(1.1f) +#define W_DISTORT_AMP_0 (+0.35f) //(+0.15f) +#define W_DISTORT_AMP_1 (-1.75f) //(-0.30f) +#define W_DISTORT_POWER (1.0f) //(1.0f) +//////////////////////////////////////////////////////////////////////////////// +настройки для: + waterdistortion + waterdistortion +//////////////////////////////////////////////////////////////////////////////// +#define W_POSITION_SHIFT_HEIGHT (1.f/80.f) //(1.f/100.f) //amplitude /50 - small, /10 - large +#define W_POSITION_SHIFT_SPEED (20.f) //(25.0f) +#define W_DISTORT_BASE_TILE_0 (1.6f) //(1.6f) +#define W_DISTORT_BASE_TILE_1 (1.1f) //(1.1f) +#define W_DISTORT_AMP_0 (+0.15f) //(+0.15f) +#define W_DISTORT_AMP_1 (-0.30f) //(-0.30f) +#define W_DISTORT_POWER (6.0f) //(6.0f) +//////////////////////////////////////////////////////////////////////////////// +-- waters mulyaka +//////////////////////////////////////////////////////////////////////////////// +#define W_POSITION_SHIFT_HEIGHT (1.f/50.f) // amplitude /50 - small, /10 - large +#define W_POSITION_SHIFT_SPEED (25.f) +#define W_DISTORT_BASE_TILE (0.1f) //(1.0f) +#define W_DISTORT_AMP_0 (+0.58f) //(-0.08f) +#define W_DISTORT_AMP_1 (+0.38f) //(+0.18f) +#define W_DISTORT_POWER (3.0f) //(2.0f) +//////////////////////////////////////////////////////////////////////////////// +*/ diff --git a/gamedata/shaders/d3d11/shared/watermove.hlsli b/gamedata/shaders/d3d11/shared/watermove.hlsli new file mode 100644 index 0000000..dfc5045 --- /dev/null +++ b/gamedata/shaders/d3d11/shared/watermove.hlsli @@ -0,0 +1,30 @@ +#ifndef _WATERMOVE_H +#define _WATERMOVE_H + +float4 watermove(float4 P) +{ + float3 wave1 = float3(0.11f, 0.13f, 0.07f) * W_POSITION_SHIFT_SPEED; + float dh = sin(timers.x + dot((float3)P, wave1)); + P.y += dh * W_POSITION_SHIFT_HEIGHT; + return P; +} + +float2 watermove_tc(float2 base, float2 P, float amp) +{ + float2 wave1 = float2(0.2111f, 0.2333f) * amp; + float angle = timers.z + dot(P, wave1); + float du = sin(angle); + float dv = cos(angle); + return (base + amp * float2(du, dv)); +} + +float3 waterrefl(out float amount, float3 P, float3 N) +{ + float3 v2point = normalize(P - eye_position); + float3 vreflect = reflect(v2point, N); + float fresnel = (.5f + .5f * dot(vreflect, v2point)); + amount = 1 - fresnel * fresnel; // 0=full env, 1=no env + return vreflect; +} + +#endif diff --git a/gamedata/shaders/d3d11/shared/wmark.hlsli b/gamedata/shaders/d3d11/shared/wmark.hlsli new file mode 100644 index 0000000..8f44618 --- /dev/null +++ b/gamedata/shaders/d3d11/shared/wmark.hlsli @@ -0,0 +1,26 @@ +#ifndef WMARK_H +#define WMARK_H +#include "common.hlsli" + +#define NORMAL_SHIFT 0.007f +#define MIN_SHIFT 0.003f +#define MAX_SHIFT 0.011f +#define RANGE 100.f + +uniform float3 eye_direction; + +float4 wmark_shift(float3 P, float3 N) +{ + float3 sd = eye_position - P; + float d = length(sd); + + float w = min(d / RANGE, 1.f); + float s = lerp(MIN_SHIFT, MAX_SHIFT, d); + + P += N.xyz * NORMAL_SHIFT; + P -= normalize(eye_direction - sd * rcp(d)) * s; + + return float4(P, 1.f); +} +#endif + diff --git a/gamedata/shaders/d3d11/simple.ps.hlsl b/gamedata/shaders/d3d11/simple.ps.hlsl new file mode 100644 index 0000000..0d1cc45 --- /dev/null +++ b/gamedata/shaders/d3d11/simple.ps.hlsl @@ -0,0 +1,13 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base +}; + +// Pixel +float4 main(v2p I) : SV_Target +{ + // return tex2D (s_base,I.tc0); + return s_base.Sample(smp_rtlinear, I.tc0); +} diff --git a/gamedata/shaders/d3d11/simple_color.ps.hlsl b/gamedata/shaders/d3d11/simple_color.ps.hlsl new file mode 100644 index 0000000..7ba93cc --- /dev/null +++ b/gamedata/shaders/d3d11/simple_color.ps.hlsl @@ -0,0 +1,6 @@ +#include "common.hlsli" + +float4 main(float4 C : COLOR0) : SV_Target +{ + return C; +} diff --git a/gamedata/shaders/d3d11/skin.hlsli b/gamedata/shaders/d3d11/skin.hlsli new file mode 100644 index 0000000..cf2641c --- /dev/null +++ b/gamedata/shaders/d3d11/skin.hlsli @@ -0,0 +1,357 @@ +#ifndef SKIN_H +#define SKIN_H + +#include "common.hlsli" + +struct v_model_skinned_0 +{ + float4 P : POSITION; // (float,float,float,1) - quantized // short4 + float3 N : NORMAL; // normal // DWORD + float3 T : TANGENT; // tangent // DWORD + float3 B : BINORMAL; // binormal // DWORD + float2 tc : TEXCOORD0; // (u,v) // short2 +}; + +struct v_model_skinned_1 // 24 bytes +{ + float4 P : POSITION; // (float,float,float,1) - quantized // short4 + float4 N : NORMAL; // (nx,ny,nz,index) // DWORD + float3 T : TANGENT; // tangent // DWORD + float3 B : BINORMAL; // binormal // DWORD + float2 tc : TEXCOORD0; // (u,v) // short2 +}; + +struct v_model_skinned_2 // 28 bytes +{ + float4 P : POSITION; // (float,float,float,1) - quantized // short4 + float4 N : NORMAL; // (nx,ny,nz,weight) // DWORD + float3 T : TANGENT; // tangent // DWORD + float3 B : BINORMAL; // binormal // DWORD + float4 tc : TEXCOORD0; // (u,v, w=m-index0, z=m-index1) // short4 +}; + +struct v_model_skinned_3 // 28 bytes +{ + float4 P : POSITION; // (float,float,float,1) - quantized // short4 + float4 N : NORMAL; // (nx,ny,nz,weight0) // DWORD + float4 T : TANGENT; // (tx,ty,tz,weight1) // DWORD + float4 B : BINORMAL; // (bx,by,bz,m-index2) // DWORD + float4 tc : TEXCOORD0; // (u,v, w=m-index0, z=m-index1) // short4 +}; + +struct v_model_skinned_4 // 28 bytes +{ + float4 P : POSITION; // (float,float,float,1) - quantized // short4 + float4 N : NORMAL; // (nx,ny,nz,weight0) // DWORD + float4 T : TANGENT; // (tx,ty,tz,weight1) // DWORD + float4 B : BINORMAL; // (bx,by,bz,weight2) // DWORD + float2 tc : TEXCOORD0; // (u,v) // short2 + float4 ind : TEXCOORD1; // (x=m-index0, y=m-index1, z=m-index2, w=m-index3) // DWORD +}; + +float4 u_position(float4 v) +{ + return float4(v.xyz, 1.f); +} // -12..+12 + +#define MAX_BONES_COUNT 128 + +cbuffer SkinConstants +{ + float4 sbones_array[MAX_BONES_COUNT * 3]; + +#ifndef DISABLE_VELOCITY + float4 sbones_array_old[MAX_BONES_COUNT * 3]; +#endif +} + +float3 skinning_dir(float3 dir, float3 m0, float3 m1, float3 m2) +{ + float3 U = unpack_normal(dir); + + return float3( + dot(m0, U), + dot(m1, U), + dot(m2, U) + ); +} + +float4 skinning_pos(float4 pos, float4 m0, float4 m1, float4 m2) +{ + float4 P = u_position(pos); // -12..+12 + + return float4( + dot(m0, P), + dot(m1, P), + dot(m2, P), + 1.0f); +} + +v_model skinning_0(v_model_skinned_0 v) +{ + // Swizzle for D3DCOLOUR format + v.N = v.N.zyx; + v.T = v.T.zyx; + v.B = v.B.zyx; + + // skinning + v_model o; + o.P = u_position(v.P); // -12..+12 + o.P_old = o.P; // -12..+12 + + o.N = unpack_normal(v.N); + o.T = unpack_normal(v.T); + o.B = unpack_normal(v.B); + + o.tc = v.tc; // -16..+16 + return o; +} + +v_model skinning_1(v_model_skinned_1 v) +{ + // Swizzle for D3DCOLOUR format + v.N.xyz = v.N.zyx; + v.T.xyz = v.T.zyx; + v.B.xyz = v.B.zyx; + + // matrices + int mid = v.N.w * 765 + 0.3; + float4 m0 = sbones_array[mid + 0]; + float4 m1 = sbones_array[mid + 1]; + float4 m2 = sbones_array[mid + 2]; + + // skinning + v_model o; + o.P = skinning_pos(v.P, m0, m1, m2); + o.N = skinning_dir(v.N.xyz, m0.xyz, m1.xyz, m2.xyz); + o.T = skinning_dir(v.T.xyz, m0.xyz, m1.xyz, m2.xyz); + o.B = skinning_dir(v.B.xyz, m0.xyz, m1.xyz, m2.xyz); + o.tc = v.tc; // -16..+ + +#ifndef DISABLE_VELOCITY + float4 m0_old = sbones_array_old[mid + 0]; + float4 m1_old = sbones_array_old[mid + 1]; + float4 m2_old = sbones_array_old[mid + 2]; + + o.P_old = skinning_pos(v.P, m0_old, m1_old, m2_old); +#else + o.P_old = o.P; +#endif + + return o; +} + +v_model skinning_2(v_model_skinned_2 v) +{ + // Swizzle for D3DCOLOUR format + v.N.xyz = v.N.zyx; + v.T.xyz = v.T.zyx; + v.B.xyz = v.B.zyx; + + // matrices + int id_0 = v.tc.z * 3; + float4 m0_0 = sbones_array[id_0 + 0]; + float4 m1_0 = sbones_array[id_0 + 1]; + float4 m2_0 = sbones_array[id_0 + 2]; + + int id_1 = v.tc.w * 3; + float4 m0_1 = sbones_array[id_1 + 0]; + float4 m1_1 = sbones_array[id_1 + 1]; + float4 m2_1 = sbones_array[id_1 + 2]; + + float w = v.N.w; + float4 m0 = lerp(m0_0, m0_1, w); + float4 m1 = lerp(m1_0, m1_1, w); + float4 m2 = lerp(m2_0, m2_1, w); + + // skinning + v_model o; + o.P = skinning_pos(v.P, m0, m1, m2); + o.N = skinning_dir(v.N.xyz, m0.xyz, m1.xyz, m2.xyz); + o.T = skinning_dir(v.T.xyz, m0.xyz, m1.xyz, m2.xyz); + o.B = skinning_dir(v.B.xyz, m0.xyz, m1.xyz, m2.xyz); + o.tc = v.tc.xy; // -16..+16 + +#ifndef DISABLE_VELOCITY + float4 m0_0_old = sbones_array_old[id_0 + 0]; + float4 m1_0_old = sbones_array_old[id_0 + 1]; + float4 m2_0_old = sbones_array_old[id_0 + 2]; + + float4 m0_1_old = sbones_array_old[id_1 + 0]; + float4 m1_1_old = sbones_array_old[id_1 + 1]; + float4 m2_1_old = sbones_array_old[id_1 + 2]; + + float4 m0_old = lerp(m0_0_old, m0_1_old, w); + float4 m1_old = lerp(m1_0_old, m1_1_old, w); + float4 m2_old = lerp(m2_0_old, m2_1_old, w); + + o.P_old = skinning_pos(v.P, m0_old, m1_old, m2_old); +#else + o.P_old = o.P; +#endif + + return o; +} + +v_model skinning_3(v_model_skinned_3 v) +{ + // Swizzle for D3DCOLOUR format + v.N.xyz = v.N.zyx; + v.T.xyz = v.T.zyx; + v.B.xyz = v.B.zyx; + + // matrices + int id_0 = v.tc.z * 3; + float4 m0_0 = sbones_array[id_0 + 0]; + float4 m1_0 = sbones_array[id_0 + 1]; + float4 m2_0 = sbones_array[id_0 + 2]; + + int id_1 = v.tc.w * 3; + float4 m0_1 = sbones_array[id_1 + 0]; + float4 m1_1 = sbones_array[id_1 + 1]; + float4 m2_1 = sbones_array[id_1 + 2]; + + int id_2 = v.B.w * 765 + 0.3; + float4 m0_2 = sbones_array[id_2 + 0]; + float4 m1_2 = sbones_array[id_2 + 1]; + float4 m2_2 = sbones_array[id_2 + 2]; + + // lerp + float w0 = v.N.w; + float w1 = v.T.w; + float w2 = 1.0f - w0 - w1; + + float4 m0 = m0_0 * w0; + float4 m1 = m1_0 * w0; + float4 m2 = m2_0 * w0; + + m0 += m0_1 * w1; + m1 += m1_1 * w1; + m2 += m2_1 * w1; + + m0 += m0_2 * w2; + m1 += m1_2 * w2; + m2 += m2_2 * w2; + + // skinning + v_model o; + o.P = skinning_pos(v.P, m0, m1, m2); + o.N = skinning_dir(v.N.xyz, m0.xyz, m1.xyz, m2.xyz); + o.T = skinning_dir(v.T.xyz, m0.xyz, m1.xyz, m2.xyz); + o.B = skinning_dir(v.B.xyz, m0.xyz, m1.xyz, m2.xyz); + o.tc = v.tc.xy; // -16..+16 + +#ifndef DISABLE_VELOCITY + float4 m0_0_old = sbones_array_old[id_0 + 0]; + float4 m1_0_old = sbones_array_old[id_0 + 1]; + float4 m2_0_old = sbones_array_old[id_0 + 2]; + + float4 m0_1_old = sbones_array_old[id_1 + 0]; + float4 m1_1_old = sbones_array_old[id_1 + 1]; + float4 m2_1_old = sbones_array_old[id_1 + 2]; + + float4 m0_2_old = sbones_array_old[id_2 + 0]; + float4 m1_2_old = sbones_array_old[id_2 + 1]; + float4 m2_2_old = sbones_array_old[id_2 + 2]; + + float4 m0_old = m0_0_old * w0; + float4 m1_old = m1_0_old * w0; + float4 m2_old = m2_0_old * w0; + + m0_old += m0_1_old * w1; + m1_old += m1_1_old * w1; + m2_old += m2_1_old * w1; + + m0_old += m0_2_old * w2; + m1_old += m1_2_old * w2; + m2_old += m2_2_old * w2; + + o.P_old = skinning_pos(v.P, m0_old, m1_old, m2_old); +#else + o.P_old = o.P; +#endif + + return o; +} + +v_model skinning_4(v_model_skinned_4 v) +{ + // Swizzle for D3DCOLOUR format + v.N.xyz = v.N.zyx; + v.T.xyz = v.T.zyx; + v.B.xyz = v.B.zyx; + v.ind.xyz = v.ind.zyx; + + // matrices + float id[4]; + float4 m[4][3]; // [bone index][matrix row or column???] + +#ifndef DISABLE_VELOCITY + float4 m_old[4][3]; // [bone index][matrix row or column???] +#endif + + [unroll(4)] + for (int i = 0; i < 4; ++i) + { + id[i] = v.ind[i] * 765 + 0.3; + + [unroll(3)] + for (int j = 0; j < 3; ++j) + { + m[i][j] = sbones_array[id[i] + j]; +#ifndef DISABLE_VELOCITY + m_old[i][j] = sbones_array_old[id[i] + j]; +#endif + } + } + + // lerp + float w[4]; + w[0] = v.N.w; + w[1] = v.T.w; + w[2] = v.B.w; + w[3] = 1.0f - w[0] - w[1] - w[2]; + + float4 m0 = m[0][0] * w[0]; + float4 m1 = m[0][1] * w[0]; + float4 m2 = m[0][2] * w[0]; + +#ifndef DISABLE_VELOCITY + float4 m0_old = m_old[0][0] * w[0]; + float4 m1_old = m_old[0][1] * w[0]; + float4 m2_old = m_old[0][2] * w[0]; +#endif + + [unroll] + for (int k = 1; k < 4; ++k) + { + m0 += m[k][0] * w[k]; + m1 += m[k][1] * w[k]; + m2 += m[k][2] * w[k]; + +#ifndef DISABLE_VELOCITY + m0_old += m_old[k][0] * w[k]; + m1_old += m_old[k][1] * w[k]; + m2_old += m_old[k][2] * w[k]; +#endif + } + + // skinning + v_model o; + o.P = skinning_pos(v.P, m0, m1, m2); + o.N = skinning_dir(v.N.xyz, m0.xyz, m1.xyz, m2.xyz); + o.T = skinning_dir(v.T.xyz, m0.xyz, m1.xyz, m2.xyz); + o.B = skinning_dir(v.B.xyz, m0.xyz, m1.xyz, m2.xyz); + o.tc = v.tc; // -16..+16 + +#ifndef DISABLE_VELOCITY + o.P_old = skinning_pos(v.P, m0_old, m1_old, m2_old); +#else + o.P_old = o.P; +#endif + + return o; +} + +#endif + diff --git a/gamedata/shaders/d3d11/sky.ps.hlsl b/gamedata/shaders/d3d11/sky.ps.hlsl new file mode 100644 index 0000000..f9429af --- /dev/null +++ b/gamedata/shaders/d3d11/sky.ps.hlsl @@ -0,0 +1,49 @@ +#include "common.hlsli" + +struct v2p +{ + float4 factor : COLOR0; + float3 p : TEXCOORD1; + + float4 hpos_curr : TEXCOORD2; + float4 hpos_old : TEXCOORD3; + + float4 hpos : SV_POSITION; +}; + +TextureCube s_sky0 : register(t0); +TextureCube s_sky1 : register(t1); + +struct sky +{ + float4 Color : SV_Target0; + float2 Velocity : SV_Target1; +}; + +void main(in v2p I, out sky O) +{ + float3 TexCoord = I.p; + +#ifndef USE_FULL_SKY_SPHERE + RemapVector(TexCoord); +#endif + + float3 s0 = s_sky0.SampleLevel(smp_rtlinear, TexCoord, 0.0f).xyz; + float3 s1 = s_sky1.SampleLevel(smp_rtlinear, TexCoord, 0.0f).xyz; + float3 sky = lerp(s0, s1, I.factor.w); + +#ifdef USE_BGRA_SKYCOLOR + sky *= L_sky_color.zyx; +#else + sky *= L_sky_color.xyz; +#endif + +#ifdef USE_LEGACY_SKY_TONEMAP + O.Color = float4(detonemap(sky * 0.66f), 0.0f); +#else + O.Color = float4(PushGamma(sky), 0.0f); +#endif + + O.Velocity = I.hpos_curr.xy / I.hpos_curr.w - I.hpos_old.xy / I.hpos_old.w; +} + diff --git a/gamedata/shaders/d3d11/sky.vs.hlsl b/gamedata/shaders/d3d11/sky.vs.hlsl new file mode 100644 index 0000000..17ba67c --- /dev/null +++ b/gamedata/shaders/d3d11/sky.vs.hlsl @@ -0,0 +1,35 @@ +#include "common.hlsli" + +struct vi +{ + float4 p : POSITION; + float4 c : COLOR0; + + float3 tc0 : TEXCOORD0; + float3 tc1 : TEXCOORD1; +}; + +struct v2p +{ + float4 factor : COLOR0; + float3 p : TEXCOORD1; + + float4 hpos_curr : TEXCOORD2; + float4 hpos_old : TEXCOORD3; + + float4 hpos : SV_POSITION; +}; + +void main(in vi v, out v2p o) +{ + o.hpos = mul(m_WVP, v.p); + + o.factor = v.c; + o.p = v.p.xyz; + + o.hpos_curr = o.hpos; + o.hpos_old = mul(m_WVP_old, v.p); + + o.hpos.xy += m_taa_jitter.xy * o.hpos.w; +} + diff --git a/gamedata/shaders/d3d11/sload.hlsli b/gamedata/shaders/d3d11/sload.hlsli new file mode 100644 index 0000000..95f7d46 --- /dev/null +++ b/gamedata/shaders/d3d11/sload.hlsli @@ -0,0 +1,204 @@ +#ifndef SLOAD_H +#define SLOAD_H +#include "common.hlsli" + +static const float fParallaxStartFade = 8.0f; +static const float fParallaxStopFade = 12.0f; +Texture2D s_snow; + +#ifndef PARALLAX_HEIGHT + #ifdef USE_PBR + #define PARALLAX_HEIGHT 0.02 + #else + #define PARALLAX_HEIGHT 0.01 + #endif +#endif + +#ifndef DYNAMIC_SNOW_COLOR +#define DYNAMIC_SNOW_COLOR float3(0.75f, 0.75f, 0.75f) +#endif + +void UpdateTC(inout p_bumped_new I, inout float2 texCoord, Texture2D heightMap, uint idx) +{ + float3x3 TBN = float3x3(I.M1, I.M2, I.M3); + float3 viewDir = mul(transpose(TBN), -I.position.xyz); + + viewDir = normalize(viewDir); + + float2 currTexCoord = texCoord; + float height = heightMap.Sample(smp_base, currTexCoord)[idx]; + texCoord += viewDir.xy * PARALLAX_HEIGHT * (height - 0.5f); + +#ifdef ALLOW_STEEPPARALLAX + if (I.position.z < fParallaxStopFade) + { + const float minLayers = 8.0f; + const float maxLayers = 20.0f; + const uint reliefSteps = 5; + + float numLayers = lerp(maxLayers, minLayers, abs(viewDir.z)); + float layerDepth = rcp(numLayers); + + float2 texcoordDelta = viewDir.xy * layerDepth * PARALLAX_HEIGHT; + + float currDepthMapVal = 1.0f - height; + float currLayerDepth = 0.5f; + +#ifdef USE_PBR + currLayerDepth = 0.0f; +#endif + + [loop] while(currLayerDepth < currDepthMapVal) + { + currLayerDepth += layerDepth; + currTexCoord -= texcoordDelta; + currDepthMapVal = 1.0f - heightMap.SampleLevel(smp_base, currTexCoord, 0.0f)[idx]; + } + + texcoordDelta *= 0.5; + layerDepth *= 0.5; + + currTexCoord += texcoordDelta; + currLayerDepth -= layerDepth; + + [unroll(reliefSteps)] + for(uint i = 0; i < reliefSteps; ++i) + { + currDepthMapVal = 1.0f - heightMap.SampleLevel(smp_base, currTexCoord, 0.0f)[idx]; + + texcoordDelta *= 0.5f; + layerDepth *= 0.5f; + + if(currDepthMapVal > currLayerDepth) + { + currTexCoord -= texcoordDelta; + currLayerDepth += layerDepth; + } + else + { + currTexCoord += texcoordDelta; + currLayerDepth -= layerDepth; + } + } + + float fParallaxFade = smoothstep(fParallaxStartFade, fParallaxStopFade, I.position.z); + texCoord = lerp(currTexCoord, texCoord, fParallaxFade); + } +#endif +} + +void SloadNew(inout p_bumped_new I, inout IXrayMaterial M) +{ +#if defined(USE_STEEPPARALLAX) && defined(USE_HIGH_QUALITY) + #ifdef USE_PBR + UpdateTC(I, I.tcdh.xy, s_bump, 0); + #else + UpdateTC(I, I.tcdh.xy, s_bumpX, 3); + #endif +#endif + + M.Color = s_base.Sample(smp_base, I.tcdh.xy); + M.SnowMask = smoothstep(0.7f, 0.8f, I.snow_mask); + +#ifdef USE_BUMP + float4 Bump = s_bump.Sample(smp_base, I.tcdh.xy); + float4 BumpX = s_bumpX.Sample(smp_base, I.tcdh.xy); + + #ifdef USE_PBR + M.Normal.xy = Bump.wy * 2.0 - 1.0; + M.Normal.z = sqrt(1.0f - saturate(dot(M.Normal.xy, M.Normal.xy))); + + M.Metalness = BumpX.x; + M.Roughness = BumpX.y; + + M.SSS = BumpX.z; + M.AO = BumpX.w; + #else + M.Normal = Bump.wzy + BumpX.xyz - 1.0f; + + M.Metalness = 0.0f; + M.Roughness = Bump.x; + +#ifdef USE_LEGACY_LIGHT + M.Roughness *= M.Roughness; +#endif + + M.SSS = 0.0; + M.AO = 1.0; + #endif +#else + + M.Normal = float3(0.0f, 0.0f, 1.0f); + + M.Roughness = def_gloss; + M.Metalness = 0.0f; + + M.SSS = 0.0f; + M.AO = 1.0f; + + #ifdef USE_PBR + M.Roughness = 1.0f - M.Roughness; + #endif +#endif + +#ifdef USE_TDETAIL + float2 tcdbump = I.tcdh.xy * dt_params.xy; + float4 Detail = s_detail.Sample(smp_base, tcdbump); + M.Color.xyz *= Detail.xyz * 2.0f; + + #ifndef USE_PBR + M.Roughness *= Detail.w * 2.0f; + #ifdef USE_TDETAIL_BUMP + float4 DetailBump = s_detailBump.Sample(smp_base, tcdbump); + float4 DetailBumpX = s_detailBumpX.Sample(smp_base, tcdbump); + M.Normal += DetailBump.wzy + DetailBumpX.xyz - 1.0f; + #endif + #else + #ifdef USE_TDETAIL_BUMP + float4 DetailBump = s_detailBump.Sample(smp_base, tcdbump); + float4 DetailBumpX = s_detailBumpX.Sample(smp_base, tcdbump); + + float3 DetailNormal = DetailBump.wyy - 128.0f / 255.0f; + DetailNormal.z = sqrt(1.0f - dot(DetailNormal.xy, DetailNormal.xy)); + + M.Normal += DetailNormal; + + M.Metalness *= DetailBumpX.x * 2.0f; + M.Roughness *= DetailBumpX.y * 2.0f; + + M.SSS *= DetailBumpX.z; + M.AO *= DetailBumpX.w; + #else + M.Roughness *= Detail.w * 2.0f; + #endif + #endif +#endif + +#ifdef USE_SNOW_TEXTURE + float4 Snow = s_snow.Sample(smp_base, I.tcdh.xy); + Snow.y *= smoothstep(0.2, 0.3, hemi_cube_pos_faces.y); + + M.Color.xyz = lerp(M.Color.xyz, DYNAMIC_SNOW_COLOR, Snow.y); + M.Roughness = lerp(M.Roughness, Snow.x, Snow.y); + M.Metalness = lerp(M.Metalness, Snow.z, Snow.y); +#endif + +#ifndef USE_PBR + #ifndef USE_TRUE_NORMAL_MAP + M.Normal.z *= 0.5f; + #endif + // Aprox GSC material to PBS + #ifndef USE_LEGACY_LIGHT + M.Roughness = 1.0f - M.Roughness; + M.Roughness = 0.1f + 0.9f * M.Roughness * M.Roughness; + #endif +#else + #ifndef USE_DX_NORMAL_MAP + M.Normal.y *= -1.0f; + #endif + M.Roughness = max(0.02f, M.Roughness); +#endif +} + + +#endif diff --git a/gamedata/shaders/d3d11/smaa.hlsli b/gamedata/shaders/d3d11/smaa.hlsli new file mode 100644 index 0000000..0c755b6 --- /dev/null +++ b/gamedata/shaders/d3d11/smaa.hlsli @@ -0,0 +1,1131 @@ +//----------------------------------------------------------------------------- +// SMAA Presets + +/** + * Note that if you use one of these presets, the following configuration + * macros will be ignored if set in the "Configurable Defines" section. + */ + +#if defined(SMAA_PRESET_LOW) + #define SMAA_THRESHOLD 0.15 + #define SMAA_MAX_SEARCH_STEPS 4 + #define SMAA_DISABLE_DIAG_DETECTION + #define SMAA_DISABLE_CORNER_DETECTION +#elif defined(SMAA_PRESET_MEDIUM) + #define SMAA_THRESHOLD 0.1 + #define SMAA_MAX_SEARCH_STEPS 8 + #define SMAA_DISABLE_DIAG_DETECTION + #define SMAA_DISABLE_CORNER_DETECTION +#elif defined(SMAA_PRESET_HIGH) + #define SMAA_THRESHOLD 0.1 + #define SMAA_MAX_SEARCH_STEPS 16 + #define SMAA_MAX_SEARCH_STEPS_DIAG 8 + #define SMAA_CORNER_ROUNDING 25 +#elif defined(SMAA_PRESET_ULTRA) + #define SMAA_THRESHOLD 0.05 + #define SMAA_MAX_SEARCH_STEPS 32 + #define SMAA_MAX_SEARCH_STEPS_DIAG 16 + #define SMAA_CORNER_ROUNDING 25 +#endif + +//----------------------------------------------------------------------------- +// Configurable Defines + +/** + * SMAA_THRESHOLD specifies the threshold or sensitivity to edges. + * Lowering this value you will be able to detect more edges at the expense of + * performance. + * + * Range: [0, 0.5] + * 0.1 is a reasonable value, and allows to catch most visible edges. + * 0.05 is a rather overkill value, that allows to catch 'em all. + * + * If temporal supersampling is used, 0.2 could be a reasonable value, as low + * contrast edges are properly filtered by just 2x. + */ +#ifndef SMAA_THRESHOLD + #define SMAA_THRESHOLD 0.1 +#endif + +/** + * SMAA_DEPTH_THRESHOLD specifies the threshold for depth edge detection. + * + * Range: depends on the depth range of the scene. + */ +#ifndef SMAA_DEPTH_THRESHOLD + #define SMAA_DEPTH_THRESHOLD (0.1 * SMAA_THRESHOLD) +#endif + +/** + * SMAA_MAX_SEARCH_STEPS specifies the maximum steps performed in the + * horizontal/vertical pattern searches, at each side of the pixel. + * + * In number of pixels, it's actually the double. So the maximum line length + * perfectly handled by, for example 16, is 64 (by perfectly, we meant that + * longer lines won't look as good, but still antialiased). + * + * Range: [0, 112] + */ +#ifndef SMAA_MAX_SEARCH_STEPS + #define SMAA_MAX_SEARCH_STEPS 16 +#endif + +/** + * SMAA_MAX_SEARCH_STEPS_DIAG specifies the maximum steps performed in the + * diagonal pattern searches, at each side of the pixel. In this case we jump + * one pixel at time, instead of two. + * + * Range: [0, 20] + * + * On high-end machines it is cheap (between a 0.8x and 0.9x slower for 16 + * steps), but it can have a significant impact on older machines. + * + * Define SMAA_DISABLE_DIAG_DETECTION to disable diagonal processing. + */ +#ifndef SMAA_MAX_SEARCH_STEPS_DIAG + #define SMAA_MAX_SEARCH_STEPS_DIAG 8 +#endif + +/** + * SMAA_CORNER_ROUNDING specifies how much sharp corners will be rounded. + * + * Range: [0, 100] + * + * Define SMAA_DISABLE_CORNER_DETECTION to disable corner processing. + */ +#ifndef SMAA_CORNER_ROUNDING + #define SMAA_CORNER_ROUNDING 25 +#endif + +/** + * If there is an neighbor edge that has SMAA_LOCAL_CONTRAST_FACTOR times + * bigger contrast than current edge, current edge will be discarded. + * + * This allows to eliminate spurious crossing edges, and is based on the fact + * that, if there is too much contrast in a direction, that will hide + * perceptually contrast in the other neighbors. + */ +#ifndef SMAA_LOCAL_CONTRAST_ADAPTATION_FACTOR + #define SMAA_LOCAL_CONTRAST_ADAPTATION_FACTOR 2.0 +#endif + +/** + * Predicated thresholding allows to better preserve texture details and to + * improve performance, by decreasing the number of detected edges using an + * additional buffer like the light accumulation buffer, object ids or even the + * depth buffer (the depth buffer usage may be limited to indoor or short range + * scenes). + * + * It locally decreases the luma or color threshold if an edge is found in an + * additional buffer (so the global threshold can be higher). + * + * This method was developed by Playstation EDGE MLAA team, and used in + * Killzone 3, by using the light accumulation buffer. More information here: + * http://iryoku.com/aacourse/downloads/06-MLAA-on-PS3.pptx + */ +#ifndef SMAA_PREDICATION + #define SMAA_PREDICATION 0 +#endif + +/** + * Threshold to be used in the additional predication buffer. + * + * Range: depends on the input, so you'll have to find the magic number that + * works for you. + */ +#ifndef SMAA_PREDICATION_THRESHOLD + #define SMAA_PREDICATION_THRESHOLD 0.01 +#endif + +/** + * How much to scale the global threshold used for luma or color edge + * detection when using predication. + * + * Range: [1, 5] + */ +#ifndef SMAA_PREDICATION_SCALE + #define SMAA_PREDICATION_SCALE 2.0 +#endif + +/** + * How much to locally decrease the threshold. + * + * Range: [0, 1] + */ +#ifndef SMAA_PREDICATION_STRENGTH + #define SMAA_PREDICATION_STRENGTH 0.4 +#endif + +/** + * Temporal reprojection allows to remove ghosting artifacts when using + * temporal supersampling. We use the CryEngine 3 method which also introduces + * velocity weighting. This feature is of extreme importance for totally + * removing ghosting. More information here: + * http://iryoku.com/aacourse/downloads/13-Anti-Aliasing-Methods-in-CryENGINE-3.pdf + * + * Note that you'll need to setup a velocity buffer for enabling reprojection. + * For static geometry, saving the previous depth buffer is a viable + * alternative. + */ +#ifndef SMAA_REPROJECTION + #define SMAA_REPROJECTION 0 +#endif + +/** + * SMAA_REPROJECTION_WEIGHT_SCALE controls the velocity weighting. It allows to + * remove ghosting trails behind the moving object, which are not removed by + * just using reprojection. Using low values will exhibit ghosting, while using + * high values will disable temporal supersampling under motion. + * + * Behind the scenes, velocity weighting removes temporal supersampling when + * the velocity of the subsamples differs (meaning they are different objects). + * + * Range: [0, 80] + */ +#ifndef SMAA_REPROJECTION_WEIGHT_SCALE + #define SMAA_REPROJECTION_WEIGHT_SCALE 30.0 +#endif + +/** + * On some compilers, discard cannot be used in vertex shaders. Thus, they need + * to be compiled separately. + */ +#ifndef SMAA_INCLUDE_VS + #define SMAA_INCLUDE_VS 1 +#endif +#ifndef SMAA_INCLUDE_PS + #define SMAA_INCLUDE_PS 1 +#endif + +//----------------------------------------------------------------------------- +// Texture Access Defines + +#ifndef SMAA_AREATEX_SELECT + #if defined(SMAA_HLSL_3) + #define SMAA_AREATEX_SELECT(sample) sample.ra + #else + #define SMAA_AREATEX_SELECT(sample) sample.rg + #endif +#endif + +#ifndef SMAA_SEARCHTEX_SELECT + #define SMAA_SEARCHTEX_SELECT(sample) sample.r +#endif + +#ifndef SMAA_DECODE_VELOCITY + #define SMAA_DECODE_VELOCITY(sample) sample.rg +#endif + +//----------------------------------------------------------------------------- +// Non-Configurable Defines + +#define SMAA_AREATEX_MAX_DISTANCE 16 +#define SMAA_AREATEX_MAX_DISTANCE_DIAG 20 +#define SMAA_AREATEX_PIXEL_SIZE (1.0 / float2(160.0, 560.0)) +#define SMAA_AREATEX_SUBTEX_SIZE (1.0 / 7.0) +#define SMAA_SEARCHTEX_SIZE float2(66.0, 33.0) +#define SMAA_SEARCHTEX_PACKED_SIZE float2(64.0, 16.0) +#define SMAA_CORNER_ROUNDING_NORM (float(SMAA_CORNER_ROUNDING) / 100.0) + +//----------------------------------------------------------------------------- +// Porting Functions + +#if defined(SMAA_HLSL_3) + #define SMAATexture2D(tex) sampler2D tex + #define SMAATexturePass2D(tex) tex + #define SMAASampleLevelZero(tex, coord) tex2Dlod(tex, float4(coord, 0.0, 0.0)) + #define SMAASampleLevelZeroPoint(tex, coord) tex2Dlod(tex, float4(coord, 0.0, 0.0)) + #define SMAASampleLevelZeroOffset(tex, coord, offset) tex2Dlod(tex, float4(coord + offset * SMAA_RT_METRICS.xy, 0.0, 0.0)) + #define SMAASample(tex, coord) tex2D(tex, coord) + #define SMAASamplePoint(tex, coord) tex2D(tex, coord) + #define SMAASampleOffset(tex, coord, offset) tex2D(tex, coord + offset * SMAA_RT_METRICS.xy) + #define SMAA_FLATTEN [flatten] + #define SMAA_BRANCH [branch] +#endif +#if defined(SMAA_HLSL_4) || defined(SMAA_HLSL_4_1) + //LV: Don't touch this ;) + #define LinearSampler smp_rtlinear + #define PointSampler smp_nofilter + + #define SMAATexture2D(tex) Texture2D tex + #define SMAATexturePass2D(tex) tex + #define SMAASampleLevelZero(tex, coord) tex.SampleLevel(LinearSampler, coord, 0) + #define SMAASampleLevelZeroPoint(tex, coord) tex.SampleLevel(PointSampler, coord, 0) + #define SMAASampleLevelZeroOffset(tex, coord, offset) tex.SampleLevel(LinearSampler, coord, 0, offset) + #define SMAASample(tex, coord) tex.Sample(LinearSampler, coord) + #define SMAASamplePoint(tex, coord) tex.Sample(PointSampler, coord) + #define SMAASampleOffset(tex, coord, offset) tex.Sample(LinearSampler, coord, offset) + #define SMAA_FLATTEN [flatten] + #define SMAA_BRANCH [branch] + #define SMAATexture2DMS2(tex) Texture2DMS tex + #define SMAALoad(tex, pos, sample) tex.Load(pos, sample) + #if defined(SMAA_HLSL_4_1) + #define SMAAGather(tex, coord) tex.Gather(LinearSampler, coord, 0) + #endif +#endif +#if defined(SMAA_GLSL_3) || defined(SMAA_GLSL_4) + #define SMAATexture2D(tex) sampler2D tex + #define SMAATexturePass2D(tex) tex + #define SMAASampleLevelZero(tex, coord) textureLod(tex, coord, 0.0) + #define SMAASampleLevelZeroPoint(tex, coord) textureLod(tex, coord, 0.0) + #define SMAASampleLevelZeroOffset(tex, coord, offset) textureLodOffset(tex, coord, 0.0, offset) + #define SMAASample(tex, coord) texture(tex, coord) + #define SMAASamplePoint(tex, coord) texture(tex, coord) + #define SMAASampleOffset(tex, coord, offset) texture(tex, coord, offset) + #define SMAA_FLATTEN + #define SMAA_BRANCH + #define lerp(a, b, t) mix(a, b, t) + #define saturate(a) clamp(a, 0.0, 1.0) + #if defined(SMAA_GLSL_4) + #define mad(a, b, c) fma(a, b, c) + #define SMAAGather(tex, coord) textureGather(tex, coord) + #else + #define mad(a, b, c) (a * b + c) + #endif + #define float2 vec2 + #define float3 vec3 + #define float4 vec4 + #define int2 ivec2 + #define int3 ivec3 + #define int4 ivec4 + #define bool2 bvec2 + #define bool3 bvec3 + #define bool4 bvec4 +#endif + +#if !defined(SMAA_HLSL_3) && !defined(SMAA_HLSL_4) && !defined(SMAA_HLSL_4_1) && !defined(SMAA_GLSL_3) && !defined(SMAA_GLSL_4) && !defined(SMAA_CUSTOM_SL) + #error you must define the shading language: SMAA_HLSL_*, SMAA_GLSL_* or SMAA_CUSTOM_SL +#endif + +//----------------------------------------------------------------------------- +// Misc functions + +/** + * Gathers current pixel, and the top-left neighbors. + */ +float3 SMAAGatherNeighbours(float2 texcoord, + float4 offset[3], + SMAATexture2D(tex)) +{ + // RainbowZerg: SMAAGather is not supported now, need depth to be stored as x-component + // #ifdef SMAAGather + // return SMAAGather(tex, texcoord + SMAA_RT_METRICS.xy * float2(-0.5, -0.5)).grb; + // #else + float P = SMAASamplePoint(tex, texcoord).z; // RainbowZerg: changed here .r to .z 'cause in X-Ray depth stored as z-component of s_position + float Pleft = SMAASamplePoint(tex, offset[0].xy).z; // RainbowZerg: changed here .r to .z 'cause in X-Ray depth stored as z-component of s_position + float Ptop = SMAASamplePoint(tex, offset[0].zw).z; // RainbowZerg: changed here .r to .z 'cause in X-Ray depth stored as z-component of s_position + return float3(P, Pleft, Ptop); + // #endif +} + +/** + * Adjusts the threshold by means of predication. + */ +float2 SMAACalculatePredicatedThreshold(float2 texcoord, + float4 offset[3], + SMAATexture2D(predicationTex)) +{ + float3 neighbours = SMAAGatherNeighbours(texcoord, offset, SMAATexturePass2D(predicationTex)); + float2 delta = abs(neighbours.xx - neighbours.yz); + float2 edges = step(SMAA_PREDICATION_THRESHOLD, delta); + return SMAA_PREDICATION_SCALE * SMAA_THRESHOLD * (1.0 - SMAA_PREDICATION_STRENGTH * edges); +} + +/** + * Conditional move: + */ +void SMAAMovc(bool2 cond, inout float2 variable, float2 value) +{ + SMAA_FLATTEN if (cond.x) variable.x = value.x; + SMAA_FLATTEN if (cond.y) variable.y = value.y; +} + +void SMAAMovc(bool4 cond, inout float4 variable, float4 value) +{ + SMAAMovc(cond.xy, variable.xy, value.xy); + SMAAMovc(cond.zw, variable.zw, value.zw); +} + +#if SMAA_INCLUDE_VS +//----------------------------------------------------------------------------- +// Vertex Shaders + +/** + * Edge Detection Vertex Shader + */ +void SMAAEdgeDetectionVS(float2 texcoord, + out float4 offset[3]) +{ + offset[0] = mad(SMAA_RT_METRICS.xyxy, float4(-1.0, 0.0, 0.0, -1.0), texcoord.xyxy); + offset[1] = mad(SMAA_RT_METRICS.xyxy, float4(1.0, 0.0, 0.0, 1.0), texcoord.xyxy); + offset[2] = mad(SMAA_RT_METRICS.xyxy, float4(-2.0, 0.0, 0.0, -2.0), texcoord.xyxy); +} + +/** + * Blend Weight Calculation Vertex Shader + */ +void SMAABlendingWeightCalculationVS(float2 texcoord, + out float2 pixcoord, + out float4 offset[3]) +{ + pixcoord = texcoord * SMAA_RT_METRICS.zw; + + // We will use these offsets for the searches later on (see @PSEUDO_GATHER4): + offset[0] = mad(SMAA_RT_METRICS.xyxy, float4(-0.25, -0.125, 1.25, -0.125), texcoord.xyxy); + offset[1] = mad(SMAA_RT_METRICS.xyxy, float4(-0.125, -0.25, -0.125, 1.25), texcoord.xyxy); + + // And these for the searches, they indicate the ends of the loops: + offset[2] = mad(SMAA_RT_METRICS.xxyy, + float4(-2.0, 2.0, -2.0, 2.0) * float(SMAA_MAX_SEARCH_STEPS), + float4(offset[0].xz, offset[1].yw)); +} + +/** + * Neighborhood Blending Vertex Shader + */ +void SMAANeighborhoodBlendingVS(float2 texcoord, + out float4 offset) +{ + offset = mad(SMAA_RT_METRICS.xyxy, float4(1.0, 0.0, 0.0, 1.0), texcoord.xyxy); +} +#endif // SMAA_INCLUDE_VS + +#if SMAA_INCLUDE_PS +//----------------------------------------------------------------------------- +// Edge Detection Pixel Shaders (First Pass) + +/** + * Luma Edge Detection + * + * IMPORTANT NOTICE: luma edge detection requires gamma-corrected colors, and + * thus 'colorTex' should be a non-sRGB texture. + */ +float2 SMAALumaEdgeDetectionPS(float2 texcoord, + float4 offset[3], + SMAATexture2D(colorTex) + #if SMAA_PREDICATION + , + SMAATexture2D(predicationTex) + #endif +) +{ + // Calculate the threshold: + #if SMAA_PREDICATION + float2 threshold = SMAACalculatePredicatedThreshold(texcoord, offset, SMAATexturePass2D(predicationTex)); + #else + float2 threshold = float2(SMAA_THRESHOLD, SMAA_THRESHOLD); + #endif + + // Calculate lumas: + float3 weights = float3(0.2126, 0.7152, 0.0722); + float L = dot(SMAASamplePoint(colorTex, texcoord).rgb, weights); + + float Lleft = dot(SMAASamplePoint(colorTex, offset[0].xy).rgb, weights); + float Ltop = dot(SMAASamplePoint(colorTex, offset[0].zw).rgb, weights); + + // We do the usual threshold: + float4 delta; + delta.xy = abs(L - float2(Lleft, Ltop)); + float2 edges = step(threshold, delta.xy); + + // Then discard if there is no edge: + if (dot(edges, float2(1.0, 1.0)) == 0.0) + { + discard; + } + + // Calculate right and bottom deltas: + float Lright = dot(SMAASamplePoint(colorTex, offset[1].xy).rgb, weights); + float Lbottom = dot(SMAASamplePoint(colorTex, offset[1].zw).rgb, weights); + delta.zw = abs(L - float2(Lright, Lbottom)); + + // Calculate the maximum delta in the direct neighborhood: + float2 maxDelta = max(delta.xy, delta.zw); + + // Calculate left-left and top-top deltas: + float Lleftleft = dot(SMAASamplePoint(colorTex, offset[2].xy).rgb, weights); + float Ltoptop = dot(SMAASamplePoint(colorTex, offset[2].zw).rgb, weights); + delta.zw = abs(float2(Lleft, Ltop) - float2(Lleftleft, Ltoptop)); + + // Calculate the final maximum delta: + maxDelta = max(maxDelta.xy, delta.zw); + float finalDelta = max(maxDelta.x, maxDelta.y); + + // Local contrast adaptation: + edges.xy *= step(finalDelta, SMAA_LOCAL_CONTRAST_ADAPTATION_FACTOR * delta.xy); + + return edges; +} + +/** + * Color Edge Detection + * + * IMPORTANT NOTICE: color edge detection requires gamma-corrected colors, and + * thus 'colorTex' should be a non-sRGB texture. + */ +float2 SMAAColorEdgeDetectionPS(float2 texcoord, + float4 offset[3], + SMAATexture2D(colorTex) + #if SMAA_PREDICATION + , + SMAATexture2D(predicationTex) + #endif +) +{ + // Calculate the threshold: + #if SMAA_PREDICATION + float2 threshold = SMAACalculatePredicatedThreshold(texcoord, offset, predicationTex); + #else + float2 threshold = float2(SMAA_THRESHOLD, SMAA_THRESHOLD); + #endif + + // Calculate color deltas: + float4 delta; + float3 C = SMAASamplePoint(colorTex, texcoord).rgb; + + float3 Cleft = SMAASamplePoint(colorTex, offset[0].xy).rgb; + float3 t = abs(C - Cleft); + delta.x = max(max(t.r, t.g), t.b); + + float3 Ctop = SMAASamplePoint(colorTex, offset[0].zw).rgb; + t = abs(C - Ctop); + delta.y = max(max(t.r, t.g), t.b); + + // We do the usual threshold: + float2 edges = step(threshold, delta.xy); + + // Then discard if there is no edge: + if (dot(edges, float2(1.0, 1.0)) == 0.0) + { + discard; + } + + // Calculate right and bottom deltas: + float3 Cright = SMAASamplePoint(colorTex, offset[1].xy).rgb; + t = abs(C - Cright); + delta.z = max(max(t.r, t.g), t.b); + + float3 Cbottom = SMAASamplePoint(colorTex, offset[1].zw).rgb; + t = abs(C - Cbottom); + delta.w = max(max(t.r, t.g), t.b); + + // Calculate the maximum delta in the direct neighborhood: + float2 maxDelta = max(delta.xy, delta.zw); + + // Calculate left-left and top-top deltas: + float3 Cleftleft = SMAASamplePoint(colorTex, offset[2].xy).rgb; + t = abs(C - Cleftleft); + delta.z = max(max(t.r, t.g), t.b); + + float3 Ctoptop = SMAASamplePoint(colorTex, offset[2].zw).rgb; + t = abs(C - Ctoptop); + delta.w = max(max(t.r, t.g), t.b); + + // Calculate the final maximum delta: + maxDelta = max(maxDelta.xy, delta.zw); + float finalDelta = max(maxDelta.x, maxDelta.y); + + // Local contrast adaptation: + edges.xy *= step(finalDelta, SMAA_LOCAL_CONTRAST_ADAPTATION_FACTOR * delta.xy); + + return edges; +} + +/** + * Depth Edge Detection + */ +float2 SMAADepthEdgeDetectionPS(float2 texcoord, + float4 offset[3], + SMAATexture2D(depthTex)) +{ + float3 neighbours = SMAAGatherNeighbours(texcoord, offset, SMAATexturePass2D(depthTex)); + float2 delta = abs(neighbours.xx - float2(neighbours.y, neighbours.z)); + float2 edges = step(SMAA_DEPTH_THRESHOLD, delta); + + if (dot(edges, float2(1.0, 1.0)) == 0.0) + { + discard; + } + + return edges; +} + +//----------------------------------------------------------------------------- +// Diagonal Search Functions + + #if !defined(SMAA_DISABLE_DIAG_DETECTION) + +/** + * Allows to decode two binary values from a bilinear-filtered access. + */ +float2 SMAADecodeDiagBilinearAccess(float2 e) +{ + // Bilinear access for fetching 'e' have a 0.25 offset, and we are + // interested in the R and G edges: + // + // +---G---+-------+ + // | x o R x | + // +-------+-------+ + // + // Then, if one of these edge is enabled: + // Red: (0.75 * X + 0.25 * 1) => 0.25 or 1.0 + // Green: (0.75 * 1 + 0.25 * X) => 0.75 or 1.0 + // + // This function will unpack the values (mad + mul + round): + // wolframalpha.com: round(x * abs(5 * x - 5 * 0.75)) plot 0 to 1 + e.r = e.r * abs(5.0 * e.r - 5.0 * 0.75); + return round(e); +} + +float4 SMAADecodeDiagBilinearAccess(float4 e) +{ + e.rb = e.rb * abs(5.0 * e.rb - 5.0 * 0.75); + return round(e); +} + +/** + * These functions allows to perform diagonal pattern searches. + */ +float2 SMAASearchDiag1(SMAATexture2D(edgesTex), float2 texcoord, float2 dir, out float2 e) +{ + float4 coord = float4(texcoord, -1.0, 1.0); + float3 t = float3(SMAA_RT_METRICS.xy, 1.0); + while (coord.z < float(SMAA_MAX_SEARCH_STEPS_DIAG - 1) && + coord.w > 0.9) + { + coord.xyz = mad(t, float3(dir, 1.0), coord.xyz); + e = SMAASampleLevelZero(edgesTex, coord.xy).rg; + coord.w = dot(e, float2(0.5, 0.5)); + } + return coord.zw; +} + +float2 SMAASearchDiag2(SMAATexture2D(edgesTex), float2 texcoord, float2 dir, out float2 e) +{ + float4 coord = float4(texcoord, -1.0, 1.0); + coord.x += 0.25 * SMAA_RT_METRICS.x; // See @SearchDiag2Optimization + float3 t = float3(SMAA_RT_METRICS.xy, 1.0); + while (coord.z < float(SMAA_MAX_SEARCH_STEPS_DIAG - 1) && + coord.w > 0.9) + { + coord.xyz = mad(t, float3(dir, 1.0), coord.xyz); + + // @SearchDiag2Optimization + // Fetch both edges at once using bilinear filtering: + e = SMAASampleLevelZero(edgesTex, coord.xy).rg; + e = SMAADecodeDiagBilinearAccess(e); + + // Non-optimized version: + // e.g = SMAASampleLevelZero(edgesTex, coord.xy).g; + // e.r = SMAASampleLevelZeroOffset(edgesTex, coord.xy, int2(1, 0)).r; + + coord.w = dot(e, float2(0.5, 0.5)); + } + return coord.zw; +} + +/** + * Similar to SMAAArea, this calculates the area corresponding to a certain + * diagonal distance and crossing edges 'e'. + */ +float2 SMAAAreaDiag(SMAATexture2D(areaTex), float2 dist, float2 e, float offset) +{ + float2 texcoord = mad(float2(SMAA_AREATEX_MAX_DISTANCE_DIAG, SMAA_AREATEX_MAX_DISTANCE_DIAG), e, dist); + + // We do a scale and bias for mapping to texel space: + texcoord = mad(SMAA_AREATEX_PIXEL_SIZE, texcoord, 0.5 * SMAA_AREATEX_PIXEL_SIZE); + + // Diagonal areas are on the second half of the texture: + texcoord.x += 0.5; + + // Move to proper place, according to the subpixel offset: + texcoord.y += SMAA_AREATEX_SUBTEX_SIZE * offset; + + // Do it! + return SMAA_AREATEX_SELECT(SMAASampleLevelZero(areaTex, texcoord)); +} + +/** + * This searches for diagonal patterns and returns the corresponding weights. + */ +float2 SMAACalculateDiagWeights(SMAATexture2D(edgesTex), SMAATexture2D(areaTex), float2 texcoord, float2 e, float4 subsampleIndices) +{ + float2 weights = float2(0.0, 0.0); + + // Search for the line ends: + float4 d; + float2 end; + if (e.r > 0.0) + { + d.xz = SMAASearchDiag1(SMAATexturePass2D(edgesTex), texcoord, float2(-1.0, 1.0), end); + d.x += float(end.y > 0.9); + } + else + { + d.xz = float2(0.0, 0.0); + } + d.yw = SMAASearchDiag1(SMAATexturePass2D(edgesTex), texcoord, float2(1.0, -1.0), end); + + SMAA_BRANCH + if (d.x + d.y > 2.0) + { // d.x + d.y + 1 > 3 + // Fetch the crossing edges: + float4 coords = mad(float4(-d.x + 0.25, d.x, d.y, -d.y - 0.25), SMAA_RT_METRICS.xyxy, texcoord.xyxy); + float4 c; + c.xy = SMAASampleLevelZeroOffset(edgesTex, coords.xy, int2(-1, 0)).rg; + c.zw = SMAASampleLevelZeroOffset(edgesTex, coords.zw, int2(1, 0)).rg; + c.yxwz = SMAADecodeDiagBilinearAccess(c.xyzw); + + // Non-optimized version: + // float4 coords = mad(float4(-d.x, d.x, d.y, -d.y), SMAA_RT_METRICS.xyxy, texcoord.xyxy); + // float4 c; + // c.x = SMAASampleLevelZeroOffset(edgesTex, coords.xy, int2(-1, 0)).g; + // c.y = SMAASampleLevelZeroOffset(edgesTex, coords.xy, int2( 0, 0)).r; + // c.z = SMAASampleLevelZeroOffset(edgesTex, coords.zw, int2( 1, 0)).g; + // c.w = SMAASampleLevelZeroOffset(edgesTex, coords.zw, int2( 1, -1)).r; + + // Merge crossing edges at each side into a single value: + float2 cc = mad(float2(2.0, 2.0), c.xz, c.yw); + + // Remove the crossing edge if we didn't found the end of the line: + SMAAMovc(bool2(step(0.9, d.zw)), cc, float2(0.0, 0.0)); + + // Fetch the areas for this line: + weights += SMAAAreaDiag(SMAATexturePass2D(areaTex), d.xy, cc, subsampleIndices.z); + } + + // Search for the line ends: + d.xz = SMAASearchDiag2(SMAATexturePass2D(edgesTex), texcoord, float2(-1.0, -1.0), end); + if (SMAASampleLevelZeroOffset(edgesTex, texcoord, int2(1, 0)).r > 0.0) + { + d.yw = SMAASearchDiag2(SMAATexturePass2D(edgesTex), texcoord, float2(1.0, 1.0), end); + d.y += float(end.y > 0.9); + } + else + { + d.yw = float2(0.0, 0.0); + } + + SMAA_BRANCH + if (d.x + d.y > 2.0) + { // d.x + d.y + 1 > 3 + // Fetch the crossing edges: + float4 coords = mad(float4(-d.x, -d.x, d.y, d.y), SMAA_RT_METRICS.xyxy, texcoord.xyxy); + float4 c; + c.x = SMAASampleLevelZeroOffset(edgesTex, coords.xy, int2(-1, 0)).g; + c.y = SMAASampleLevelZeroOffset(edgesTex, coords.xy, int2(0, -1)).r; + c.zw = SMAASampleLevelZeroOffset(edgesTex, coords.zw, int2(1, 0)).gr; + float2 cc = mad(float2(2.0, 2.0), c.xz, c.yw); + + // Remove the crossing edge if we didn't found the end of the line: + SMAAMovc(bool2(step(0.9, d.zw)), cc, float2(0.0, 0.0)); + + // Fetch the areas for this line: + weights += SMAAAreaDiag(SMAATexturePass2D(areaTex), d.xy, cc, subsampleIndices.w).gr; + } + + return weights; +} + #endif + +//----------------------------------------------------------------------------- +// Horizontal/Vertical Search Functions + +/** + * This allows to determine how much length should we add in the last step + * of the searches. It takes the bilinearly interpolated edge (see + * @PSEUDO_GATHER4), and adds 0, 1 or 2, depending on which edges and + * crossing edges are active. + */ +float SMAASearchLength(SMAATexture2D(searchTex), float2 e, float offset) +{ + // The texture is flipped vertically, with left and right cases taking half + // of the space horizontally: + float2 scale = SMAA_SEARCHTEX_SIZE * float2(0.5, -1.0); + float2 bias = SMAA_SEARCHTEX_SIZE * float2(offset, 1.0); + + // Scale and bias to access texel centers: + scale += float2(-1.0, 1.0); + bias += float2(0.5, -0.5); + + // Convert from pixel coordinates to texcoords: + // (We use SMAA_SEARCHTEX_PACKED_SIZE because the texture is cropped) + scale *= 1.0 / SMAA_SEARCHTEX_PACKED_SIZE; + bias *= 1.0 / SMAA_SEARCHTEX_PACKED_SIZE; + + // Lookup the search texture: + return SMAA_SEARCHTEX_SELECT(SMAASampleLevelZero(searchTex, mad(scale, e, bias))); +} + +/** + * Horizontal/vertical search functions for the 2nd pass. + */ +float SMAASearchXLeft(SMAATexture2D(edgesTex), SMAATexture2D(searchTex), float2 texcoord, float end) +{ + /** + * @PSEUDO_GATHER4 + * This texcoord has been offset by (-0.25, -0.125) in the vertex shader to + * sample between edge, thus fetching four edges in a row. + * Sampling with different offsets in each direction allows to disambiguate + * which edges are active from the four fetched ones. + */ + float2 e = float2(0.0, 1.0); + while (texcoord.x > end && + e.g > 0.8281 && // Is there some edge not activated? + e.r == 0.0) + { // Or is there a crossing edge that breaks the line? + e = SMAASampleLevelZero(edgesTex, texcoord).rg; + texcoord = mad(-float2(2.0, 0.0), SMAA_RT_METRICS.xy, texcoord); + } + + float offset = mad(-(255.0 / 127.0), SMAASearchLength(SMAATexturePass2D(searchTex), e, 0.0), 3.25); + return mad(SMAA_RT_METRICS.x, offset, texcoord.x); + + // Non-optimized version: + // We correct the previous (-0.25, -0.125) offset we applied: + // texcoord.x += 0.25 * SMAA_RT_METRICS.x; + + // The searches are bias by 1, so adjust the coords accordingly: + // texcoord.x += SMAA_RT_METRICS.x; + + // Disambiguate the length added by the last step: + // texcoord.x += 2.0 * SMAA_RT_METRICS.x; // Undo last step + // texcoord.x -= SMAA_RT_METRICS.x * (255.0 / 127.0) * SMAASearchLength(SMAATexturePass2D(searchTex), e, 0.0); + // return mad(SMAA_RT_METRICS.x, offset, texcoord.x); +} + +float SMAASearchXRight(SMAATexture2D(edgesTex), SMAATexture2D(searchTex), float2 texcoord, float end) +{ + float2 e = float2(0.0, 1.0); + while (texcoord.x < end && + e.g > 0.8281 && // Is there some edge not activated? + e.r == 0.0) + { // Or is there a crossing edge that breaks the line? + e = SMAASampleLevelZero(edgesTex, texcoord).rg; + texcoord = mad(float2(2.0, 0.0), SMAA_RT_METRICS.xy, texcoord); + } + float offset = mad(-(255.0 / 127.0), SMAASearchLength(SMAATexturePass2D(searchTex), e, 0.5), 3.25); + return mad(-SMAA_RT_METRICS.x, offset, texcoord.x); +} + +float SMAASearchYUp(SMAATexture2D(edgesTex), SMAATexture2D(searchTex), float2 texcoord, float end) +{ + float2 e = float2(1.0, 0.0); + while (texcoord.y > end && + e.r > 0.8281 && // Is there some edge not activated? + e.g == 0.0) + { // Or is there a crossing edge that breaks the line? + e = SMAASampleLevelZero(edgesTex, texcoord).rg; + texcoord = mad(-float2(0.0, 2.0), SMAA_RT_METRICS.xy, texcoord); + } + float offset = mad(-(255.0 / 127.0), SMAASearchLength(SMAATexturePass2D(searchTex), e.gr, 0.0), 3.25); + return mad(SMAA_RT_METRICS.y, offset, texcoord.y); +} + +float SMAASearchYDown(SMAATexture2D(edgesTex), SMAATexture2D(searchTex), float2 texcoord, float end) +{ + float2 e = float2(1.0, 0.0); + while (texcoord.y < end && + e.r > 0.8281 && // Is there some edge not activated? + e.g == 0.0) + { // Or is there a crossing edge that breaks the line? + e = SMAASampleLevelZero(edgesTex, texcoord).rg; + texcoord = mad(float2(0.0, 2.0), SMAA_RT_METRICS.xy, texcoord); + } + float offset = mad(-(255.0 / 127.0), SMAASearchLength(SMAATexturePass2D(searchTex), e.gr, 0.5), 3.25); + return mad(-SMAA_RT_METRICS.y, offset, texcoord.y); +} + +/** + * Ok, we have the distance and both crossing edges. So, what are the areas + * at each side of current edge? + */ +float2 SMAAArea(SMAATexture2D(areaTex), float2 dist, float e1, float e2, float offset) +{ + // Rounding prevents precision errors of bilinear filtering: + float2 texcoord = mad(float2(SMAA_AREATEX_MAX_DISTANCE, SMAA_AREATEX_MAX_DISTANCE), round(4.0 * float2(e1, e2)), dist); + + // We do a scale and bias for mapping to texel space: + texcoord = mad(SMAA_AREATEX_PIXEL_SIZE, texcoord, 0.5 * SMAA_AREATEX_PIXEL_SIZE); + + // Move to proper place, according to the subpixel offset: + texcoord.y = mad(SMAA_AREATEX_SUBTEX_SIZE, offset, texcoord.y); + + // Do it! + return SMAA_AREATEX_SELECT(SMAASampleLevelZero(areaTex, texcoord)); +} + +//----------------------------------------------------------------------------- +// Corner Detection Functions + +void SMAADetectHorizontalCornerPattern(SMAATexture2D(edgesTex), inout float2 weights, float4 texcoord, float2 d) +{ + #if !defined(SMAA_DISABLE_CORNER_DETECTION) + float2 leftRight = step(d.xy, d.yx); + float2 rounding = (1.0 - SMAA_CORNER_ROUNDING_NORM) * leftRight; + + rounding /= leftRight.x + leftRight.y; // Reduce blending for pixels in the center of a line. + + float2 factor = float2(1.0, 1.0); + factor.x -= rounding.x * SMAASampleLevelZeroOffset(edgesTex, texcoord.xy, int2(0, 1)).r; + factor.x -= rounding.y * SMAASampleLevelZeroOffset(edgesTex, texcoord.zw, int2(1, 1)).r; + factor.y -= rounding.x * SMAASampleLevelZeroOffset(edgesTex, texcoord.xy, int2(0, -2)).r; + factor.y -= rounding.y * SMAASampleLevelZeroOffset(edgesTex, texcoord.zw, int2(1, -2)).r; + + weights *= saturate(factor); + #endif +} + +void SMAADetectVerticalCornerPattern(SMAATexture2D(edgesTex), inout float2 weights, float4 texcoord, float2 d) +{ + #if !defined(SMAA_DISABLE_CORNER_DETECTION) + float2 leftRight = step(d.xy, d.yx); + float2 rounding = (1.0 - SMAA_CORNER_ROUNDING_NORM) * leftRight; + + rounding /= leftRight.x + leftRight.y; + + float2 factor = float2(1.0, 1.0); + factor.x -= rounding.x * SMAASampleLevelZeroOffset(edgesTex, texcoord.xy, int2(1, 0)).g; + factor.x -= rounding.y * SMAASampleLevelZeroOffset(edgesTex, texcoord.zw, int2(1, 1)).g; + factor.y -= rounding.x * SMAASampleLevelZeroOffset(edgesTex, texcoord.xy, int2(-2, 0)).g; + factor.y -= rounding.y * SMAASampleLevelZeroOffset(edgesTex, texcoord.zw, int2(-2, 1)).g; + + weights *= saturate(factor); + #endif +} + +//----------------------------------------------------------------------------- +// Blending Weight Calculation Pixel Shader (Second Pass) + +float4 SMAABlendingWeightCalculationPS(float2 texcoord, + float2 pixcoord, + float4 offset[3], + SMAATexture2D(edgesTex), + SMAATexture2D(areaTex), + SMAATexture2D(searchTex), + float4 subsampleIndices) +{ // Just pass zero for SMAA 1x, see @SUBSAMPLE_INDICES. + float4 weights = float4(0.0, 0.0, 0.0, 0.0); + + float2 e = SMAASample(edgesTex, texcoord).rg; + + SMAA_BRANCH + if (e.g > 0.0) + { // Edge at north + #if !defined(SMAA_DISABLE_DIAG_DETECTION) + // Diagonals have both north and west edges, so searching for them in + // one of the boundaries is enough. + weights.rg = SMAACalculateDiagWeights(SMAATexturePass2D(edgesTex), SMAATexturePass2D(areaTex), texcoord, e, subsampleIndices); + + // We give priority to diagonals, so if we find a diagonal we skip + // horizontal/vertical processing. + SMAA_BRANCH + if (weights.r == -weights.g) + { // weights.r + weights.g == 0.0 + #endif + + float2 d; + + // Find the distance to the left: + float3 coords; + coords.x = SMAASearchXLeft(SMAATexturePass2D(edgesTex), SMAATexturePass2D(searchTex), offset[0].xy, offset[2].x); + coords.y = offset[1].y; // offset[1].y = texcoord.y - 0.25 * SMAA_RT_METRICS.y (@CROSSING_OFFSET) + d.x = coords.x; + + // Now fetch the left crossing edges, two at a time using bilinear + // filtering. Sampling at -0.25 (see @CROSSING_OFFSET) enables to + // discern what value each edge has: + float e1 = SMAASampleLevelZero(edgesTex, coords.xy).r; + + // Find the distance to the right: + coords.z = SMAASearchXRight(SMAATexturePass2D(edgesTex), SMAATexturePass2D(searchTex), offset[0].zw, offset[2].y); + d.y = coords.z; + + // We want the distances to be in pixel units (doing this here allow to + // better interleave arithmetic and memory accesses): + d = abs(round(mad(SMAA_RT_METRICS.zz, d, -pixcoord.xx))); + + // SMAAArea below needs a sqrt, as the areas texture is compressed + // quadratically: + float2 sqrt_d = sqrt(d); + + // Fetch the right crossing edges: + float e2 = SMAASampleLevelZeroOffset(edgesTex, coords.zy, int2(1, 0)).r; + + // Ok, we know how this pattern looks like, now it is time for getting + // the actual area: + weights.rg = SMAAArea(SMAATexturePass2D(areaTex), sqrt_d, e1, e2, subsampleIndices.y); + + // Fix corners: + coords.y = texcoord.y; + SMAADetectHorizontalCornerPattern(SMAATexturePass2D(edgesTex), weights.rg, coords.xyzy, d); + + #if !defined(SMAA_DISABLE_DIAG_DETECTION) + } + else + { + e.r = 0.0; // Skip vertical processing. + } + #endif + } + + SMAA_BRANCH + if (e.r > 0.0) + { // Edge at west + float2 d; + + // Find the distance to the top: + float3 coords; + coords.y = SMAASearchYUp(SMAATexturePass2D(edgesTex), SMAATexturePass2D(searchTex), offset[1].xy, offset[2].z); + coords.x = offset[0].x; // offset[1].x = texcoord.x - 0.25 * SMAA_RT_METRICS.x; + d.x = coords.y; + + // Fetch the top crossing edges: + float e1 = SMAASampleLevelZero(edgesTex, coords.xy).g; + + // Find the distance to the bottom: + coords.z = SMAASearchYDown(SMAATexturePass2D(edgesTex), SMAATexturePass2D(searchTex), offset[1].zw, offset[2].w); + d.y = coords.z; + + // We want the distances to be in pixel units: + d = abs(round(mad(SMAA_RT_METRICS.ww, d, -pixcoord.yy))); + + // SMAAArea below needs a sqrt, as the areas texture is compressed + // quadratically: + float2 sqrt_d = sqrt(d); + + // Fetch the bottom crossing edges: + float e2 = SMAASampleLevelZeroOffset(edgesTex, coords.xz, int2(0, 1)).g; + + // Get the area for this direction: + weights.ba = SMAAArea(SMAATexturePass2D(areaTex), sqrt_d, e1, e2, subsampleIndices.x); + + // Fix corners: + coords.x = texcoord.x; + SMAADetectVerticalCornerPattern(SMAATexturePass2D(edgesTex), weights.ba, coords.xyxz, d); + } + + return weights; +} + +//----------------------------------------------------------------------------- +// Neighborhood Blending Pixel Shader (Third Pass) + +float4 SMAANeighborhoodBlendingPS(float2 texcoord, + float4 offset, + SMAATexture2D(colorTex), + SMAATexture2D(blendTex) + #if SMAA_REPROJECTION + , + SMAATexture2D(velocityTex) + #endif +) +{ + // Fetch the blending weights for current pixel: + float4 a; + a.x = SMAASample(blendTex, offset.xy).a; // Right + a.y = SMAASample(blendTex, offset.zw).g; // Top + a.wz = SMAASample(blendTex, texcoord).xz; // Bottom / Left + + // Is there any blending weight with a value greater than 0.0? + SMAA_BRANCH + if (dot(a, float4(1.0, 1.0, 1.0, 1.0)) < 1e-5) + { + float4 color = SMAASampleLevelZero(colorTex, texcoord); + + #if SMAA_REPROJECTION + float2 velocity = SMAA_DECODE_VELOCITY(SMAASampleLevelZero(velocityTex, texcoord)); + + // Pack velocity into the alpha channel: + color.a = sqrt(5.0 * length(velocity)); + #endif + + return color; + } + else + { + bool h = max(a.x, a.z) > max(a.y, a.w); // max(horizontal) > max(vertical) + + // Calculate the blending offsets: + float4 blendingOffset = float4(0.0, a.y, 0.0, a.w); + float2 blendingWeight = a.yw; + SMAAMovc(bool4(h, h, h, h), blendingOffset, float4(a.x, 0.0, a.z, 0.0)); + SMAAMovc(bool2(h, h), blendingWeight, a.xz); + blendingWeight /= dot(blendingWeight, float2(1.0, 1.0)); + + // Calculate the texture coordinates: + float4 blendingCoord = mad(blendingOffset, float4(SMAA_RT_METRICS.xy, -SMAA_RT_METRICS.xy), texcoord.xyxy); + + // We exploit bilinear filtering to mix current pixel with the chosen + // neighbor: + float4 color = blendingWeight.x * SMAASampleLevelZero(colorTex, blendingCoord.xy); + color += blendingWeight.y * SMAASampleLevelZero(colorTex, blendingCoord.zw); + + #if SMAA_REPROJECTION + // Antialias velocity for proper reprojection in a later stage: + float2 velocity = blendingWeight.x * SMAA_DECODE_VELOCITY(SMAASampleLevelZero(velocityTex, blendingCoord.xy)); + velocity += blendingWeight.y * SMAA_DECODE_VELOCITY(SMAASampleLevelZero(velocityTex, blendingCoord.zw)); + + // Pack velocity into the alpha channel: + color.a = sqrt(5.0 * length(velocity)); + #endif + + return color; + } +} + +//----------------------------------------------------------------------------- +// Temporal Resolve Pixel Shader (Optional Pass) + +float4 SMAAResolvePS(float2 texcoord, + SMAATexture2D(currentColorTex), + SMAATexture2D(previousColorTex) + #if SMAA_REPROJECTION + , + SMAATexture2D(velocityTex) + #endif +) +{ + #if SMAA_REPROJECTION + // Velocity is assumed to be calculated for motion blur, so we need to + // inverse it for reprojection: + float2 velocity = -SMAA_DECODE_VELOCITY(SMAASamplePoint(velocityTex, texcoord).rg); + + // Fetch current pixel: + float4 current = SMAASamplePoint(currentColorTex, texcoord); + + // Reproject current coordinates and fetch previous pixel: + float4 previous = SMAASamplePoint(previousColorTex, texcoord + velocity); + + // Attenuate the previous pixel if the velocity is different: + float delta = abs(current.a * current.a - previous.a * previous.a) / 5.0; + float weight = 0.5 * saturate(1.0 - sqrt(delta) * SMAA_REPROJECTION_WEIGHT_SCALE); + + // Blend the pixels according to the calculated weight: + return lerp(current, previous, weight); + #else + // Just blend the pixels: + float4 current = SMAASamplePoint(currentColorTex, texcoord); + float4 previous = SMAASamplePoint(previousColorTex, texcoord); + return lerp(current, previous, 0.5); + #endif +} + +//----------------------------------------------------------------------------- +// Separate Multisamples Pixel Shader (Optional Pass) + + #ifdef SMAALoad +void SMAASeparatePS(float4 position, + float2 texcoord, + out float4 target0, + out float4 target1, + SMAATexture2DMS2(colorTexMS)) +{ + int2 pos = int2(position.xy); + target0 = SMAALoad(colorTexMS, pos, 0); + target1 = SMAALoad(colorTexMS, pos, 1); +} + #endif + +//----------------------------------------------------------------------------- +#endif // SMAA_INCLUDE_PS diff --git a/gamedata/shaders/d3d11/smaa_bweight_calc.ps.hlsl b/gamedata/shaders/d3d11/smaa_bweight_calc.ps.hlsl new file mode 100644 index 0000000..4a414e2 --- /dev/null +++ b/gamedata/shaders/d3d11/smaa_bweight_calc.ps.hlsl @@ -0,0 +1,42 @@ +/* +------------------------------------------------------------------ +SMAA weight calculation pass +------------------------------------------------------------------ +References: +https://github.com/iryoku/smaa +------------------------------------------------------------------ +Back to the Roots +*/ + +#include "common.hlsli" + +#if defined(SM_5) || defined(SM_4_1) + #define SMAA_HLSL_4_1 +#else + #define SMAA_HLSL_4 +#endif + +uniform float4 scaled_screen_res; +#define SMAA_RT_METRICS scaled_screen_res.zwxy + +#define SMAA_PRESET_ULTRA + +#include "smaa.hlsli" + +Texture2D s_edgetex; +Texture2D s_areatex; +Texture2D s_searchtex; + +// Struct +struct p_smaa +{ + float4 hpos : SV_POSITION; + float2 tc0 : TEXCOORD0; // Texture coordinates (for sampling maps) + float2 pixcoord : TEXCOORD1; + float4 offset[3] : TEXCOORD2; +}; + +float4 main(p_smaa I) : SV_Target +{ + return SMAABlendingWeightCalculationPS(I.tc0, I.pixcoord, I.offset, s_edgetex, s_areatex, s_searchtex, 0.0f); +}; diff --git a/gamedata/shaders/d3d11/smaa_bweight_calc.vs.hlsl b/gamedata/shaders/d3d11/smaa_bweight_calc.vs.hlsl new file mode 100644 index 0000000..5702d65 --- /dev/null +++ b/gamedata/shaders/d3d11/smaa_bweight_calc.vs.hlsl @@ -0,0 +1,44 @@ +#include "common.hlsli" + +#if defined(SM_5) || defined(SM_4_1) + #define SMAA_HLSL_4_1 +#else + #define SMAA_HLSL_4 +#endif + +#define SMAA_INCLUDE_VS 1 +uniform float4 scaled_screen_res; +#define SMAA_RT_METRICS scaled_screen_res.zwxy + +#include "smaa.hlsli" + +// Struct +struct p_smaa +{ + float4 hpos : SV_POSITION; + float2 tc0 : TEXCOORD0; // Texture coordinates (for sampling maps) + float2 pixcoord : TEXCOORD1; + float4 offset[3] : TEXCOORD2; +}; + +struct v2p_smaa +{ + float2 tc0 : TEXCOORD0; + float4 HPos : POSITIONT; // Clip-space position (for rasterization) +}; + +// Vertex +p_smaa main(v2p_smaa I) +{ + p_smaa O; + // Transform to screen space (in d3d9 it was done automatically) + O.hpos.x = (I.HPos.x * scaled_screen_res.z * 2 - 1); + O.hpos.y = -(I.HPos.y * scaled_screen_res.w * 2 - 1); + O.hpos.zw = I.HPos.zw; + + O.tc0 = I.tc0; + + SMAABlendingWeightCalculationVS(I.tc0, O.pixcoord, O.offset); + + return O; +} diff --git a/gamedata/shaders/d3d11/smaa_edge_detect.ps.hlsl b/gamedata/shaders/d3d11/smaa_edge_detect.ps.hlsl new file mode 100644 index 0000000..c267a75 --- /dev/null +++ b/gamedata/shaders/d3d11/smaa_edge_detect.ps.hlsl @@ -0,0 +1,42 @@ +/* +------------------------------------------------------------------ +SMAA edge detection pass +------------------------------------------------------------------ +References: +https://github.com/iryoku/smaa +------------------------------------------------------------------ +Back to the Roots +*/ + +#include "common.hlsli" + +#if defined(SM_5) || defined(SM_4_1) + #define SMAA_HLSL_4_1 +#else + #define SMAA_HLSL_4 +#endif + +uniform float4 scaled_screen_res; +#define SMAA_RT_METRICS scaled_screen_res.zwxy + +#define SMAA_PRESET_ULTRA +#define EDGE_DETECT_COLOR + +#include "smaa.hlsli" + +// Struct +struct p_smaa +{ + float4 hpos : SV_POSITION; + float2 tc0 : TEXCOORD0; // Texture coordinates (for sampling maps) + float4 offset[3] : TEXCOORD1; +}; + +float4 main(p_smaa I) : SV_Target +{ +#if defined(EDGE_DETECT_COLOR) + return float4(SMAAColorEdgeDetectionPS(I.tc0, I.offset, s_image), 0.0f, 0.0f); +#else + return float4(SMAALumaEdgeDetectionPS(I.tc0, I.offset, s_image), 0.0f, 0.0f); +#endif +} diff --git a/gamedata/shaders/d3d11/smaa_edge_detect.vs.hlsl b/gamedata/shaders/d3d11/smaa_edge_detect.vs.hlsl new file mode 100644 index 0000000..f2949af --- /dev/null +++ b/gamedata/shaders/d3d11/smaa_edge_detect.vs.hlsl @@ -0,0 +1,43 @@ +#include "common.hlsli" + +#if defined(SM_5) || defined(SM_4_1) + #define SMAA_HLSL_4_1 +#else + #define SMAA_HLSL_4 +#endif + +#define SMAA_INCLUDE_VS 1 +uniform float4 scaled_screen_res; +#define SMAA_RT_METRICS scaled_screen_res.zwxy + +#include "smaa.hlsli" + +// Struct +struct p_smaa +{ + float4 hpos : SV_POSITION; + float2 tc0 : TEXCOORD0; // Texture coordinates (for sampling maps) + float4 offset[3] : TEXCOORD1; +}; + +struct v2p_smaa +{ + float2 tc0 : TEXCOORD0; + float4 HPos : POSITIONT; // Clip-space position (for rasterization) +}; + +// Vertex +p_smaa main(v2p_smaa I) +{ + p_smaa O; + // Transform to screen space (in d3d9 it was done automatically) + O.hpos.x = (I.HPos.x * scaled_screen_res.z * 2 - 1); + O.hpos.y = -(I.HPos.y * scaled_screen_res.w * 2 - 1); + O.hpos.zw = I.HPos.zw; + + O.tc0 = I.tc0; + + SMAAEdgeDetectionVS(I.tc0, O.offset); + + return O; +} diff --git a/gamedata/shaders/d3d11/smaa_neighbour_blend.ps.hlsl b/gamedata/shaders/d3d11/smaa_neighbour_blend.ps.hlsl new file mode 100644 index 0000000..51f6b7b --- /dev/null +++ b/gamedata/shaders/d3d11/smaa_neighbour_blend.ps.hlsl @@ -0,0 +1,37 @@ +/* +------------------------------------------------------------------ +SMAA neighbour blend pass +------------------------------------------------------------------ +References: +https://github.com/iryoku/smaa +------------------------------------------------------------------ +Back to the Roots +*/ + +#include "common.hlsli" + +#if defined(SM_5) || defined(SM_4_1) + #define SMAA_HLSL_4_1 +#else + #define SMAA_HLSL_4 +#endif + +uniform float4 scaled_screen_res; +#define SMAA_RT_METRICS scaled_screen_res.zwxy +#define SMAA_PRESET_ULTRA + +#include "smaa.hlsli" + +Texture2D s_blendtex; + +struct p_smaa +{ + float4 hpos : SV_POSITION; + float2 tc0 : TEXCOORD0; // Texture coordinates (for sampling maps) + float4 offset : TEXCOORD2; +}; + +float4 main(p_smaa I) : SV_Target +{ + return SMAANeighborhoodBlendingPS(I.tc0, I.offset, s_image, s_blendtex); +} diff --git a/gamedata/shaders/d3d11/smaa_neighbour_blend.vs.hlsl b/gamedata/shaders/d3d11/smaa_neighbour_blend.vs.hlsl new file mode 100644 index 0000000..9fa9327 --- /dev/null +++ b/gamedata/shaders/d3d11/smaa_neighbour_blend.vs.hlsl @@ -0,0 +1,43 @@ +#include "common.hlsli" + +#if defined(SM_5) || defined(SM_4_1) + #define SMAA_HLSL_4_1 +#else + #define SMAA_HLSL_4 +#endif + +#define SMAA_INCLUDE_VS 1 +uniform float4 scaled_screen_res; +#define SMAA_RT_METRICS scaled_screen_res.zwxy + +#include "smaa.hlsli" + +// Struct +struct p_smaa +{ + float4 hpos : SV_POSITION; + float2 tc0 : TEXCOORD0; // Texture coordinates (for sampling maps) + float4 offset : TEXCOORD1; +}; + +struct v2p_smaa +{ + float2 tc0 : TEXCOORD0; + float4 HPos : POSITIONT; // Clip-space position (for rasterization) +}; + +// Vertex +p_smaa main(v2p_smaa I) +{ + p_smaa O; + // Transform to screen space (in d3d9 it was done automatically) + O.hpos.x = (I.HPos.x * scaled_screen_res.z * 2 - 1); + O.hpos.y = -(I.HPos.y * scaled_screen_res.w * 2 - 1); + O.hpos.zw = I.HPos.zw; + + O.tc0 = I.tc0; + + SMAANeighborhoodBlendingVS(I.tc0, O.offset); + + return O; +} diff --git a/gamedata/shaders/d3d11/snowing_main.ps.hlsl b/gamedata/shaders/d3d11/snowing_main.ps.hlsl new file mode 100644 index 0000000..cb743b5 --- /dev/null +++ b/gamedata/shaders/d3d11/snowing_main.ps.hlsl @@ -0,0 +1,63 @@ +#include "common.hlsli" +#include "sload.hlsli" + +void main(p_shadow _I, out IXrayGbufferPack O) +{ + IXrayGbuffer G; + p_bumped_new I; + + GbufferUnpack(_I.tc0.xy, _I.hpos.xy, G); + + clip(G.SnowMask - 0.00001f); + clip(0.9999f - G.Depth); + + I.position = float4(G.Point.xyz, 1.0f); + I.snow_mask = G.SnowMask * smoothstep(0.2f, 0.3f, G.Hemi); + + float3 P = mul(m_invV, I.position); + float3 N = normalize(mul((float3x3)m_invV, G.Normal.xyz)); + + float3 T, B; + I.tcdh.xy = P.xz * 0.2f; + + build_contangent_frame(P, N, I.tcdh.xy, T, B); + + float3x3 xform = mul((float3x3)m_V, float3x3( + T.x, B.x, N.x, + T.y, B.y, N.y, + T.z, B.z, N.z + ) + ); + I.tcdh.zw = 0.5f; + + I.M1 = xform[0]; + I.M2 = xform[1]; + I.M3 = xform[2]; + + I.hpos_curr = I.hpos_old = I.hpos = _I.hpos; + IXrayMaterial M; + + M.Sun = G.SSS; + M.Hemi = G.Hemi; + + M.Depth = G.Point.z; + M.Point = G.Point.xyz; + + SloadNew(I, M); + + M.Normal = mul(xform, M.Normal); + + M.Normal = lerp(G.Normal, M.Normal, I.snow_mask); + M.Roughness = lerp(G.Roughness, M.Roughness, I.snow_mask); + + M.Normal = normalize(M.Normal); + + O.Velocity = 0.0f; + GbufferPack(O, M); + + O.Color.w = I.snow_mask; + O.Material.w = I.snow_mask; + + O.Normal.w = 1.0f; +} + diff --git a/gamedata/shaders/d3d11/ssao.ps.hlsl b/gamedata/shaders/d3d11/ssao.ps.hlsl new file mode 100644 index 0000000..4365992 --- /dev/null +++ b/gamedata/shaders/d3d11/ssao.ps.hlsl @@ -0,0 +1,99 @@ +#ifndef SSAO_1231242112 +#define SSAO_1231242112 +#include "common.hlsli" + +#define SSAO_RADIUS 0.8 + +Texture2D jitter0; +sampler smp_jitter; + +float4 scaled_screen_res; + +float3 uv_to_eye(float2 uv, float eye_z) +{ + uv = uv * float2(2.0f, 2.0f) - float2(1.0f, 1.0f); + return float3(uv * pos_decompression_params.xy, 1.0f) * eye_z; +} + +/* + SSAO Нагло украдено у Sir Lancevrot (с его разрешения) +*/ + +float3 GetViewPos(float2 uv) +{ + float depth = s_position.SampleLevel(smp_nofilter, uv, 0).x; + return uv_to_eye(uv, depth_unpack.x * rcp(depth - depth_unpack.y)); +} + +float doPBAO(float2 uv, float3 pos, float3 n, float invRad, float bias, float selfOcc) +{ + float3 p = GbufferGetPointRealUnjitter(uv); + float3 dist = p - pos; + + float len = length(dist); + float3 v = dist * rcp(len); + + float atten = len * invRad; + return max(-selfOcc, dot(n, v) - bias) * rcp(atten * atten + 1.0f); +} + +float calc_ssao(float depth, float3 normal, float2 tc0) +{ + // define kernel + float n = 0.0f; + const float step = 0.875f; + const float fScale = 0.57735f * 0.025f; + + const float inv2 = 0.5f; + const float inv5_3 = 0.188679245283f; + const float inv8 = 0.125f; + const float inv16 = 0.0625f; + const float selfOcc = 0.0f; // range: 0.0f to 1.0f + const float2 focalLen = rcp(pos_decompression_params.xy); + + const float3 arrKernel[8] = + { + float3( 1.0, 1.0, 1.0) * fScale * (n += step), + float3(-1.0, -1.0, -1.0) * fScale * (n += step), + float3(-1.0, -1.0, 1.0) * fScale * (n += step), + float3(-1.0, 1.0, -1.0) * fScale * (n += step), + float3(-1.0, 1.0, 1.0) * fScale * (n += step), + float3( 1.0, -1.0, -1.0) * fScale * (n += step), + float3( 1.0, -1.0, 1.0) * fScale * (n += step), + float3( 1.0, 1.0, -1.0) * fScale * (n += step), + }; + + float2 tc1 = (tc0 * scaled_screen_res.xy) * 0.015625f; + float3 rotSample = jitter0.Sample(smp_jitter, tc1).xyz; + + rotSample = frac(m_taa_jitter.z + rotSample); + rotSample = normalize(rotSample - 0.5f); + + float3 pos = GbufferGetPointRealUnjitter(tc0, depth) * 0.99f; + + // calculate angle bias + float bias = 0.0; + + // calculate contrast + float contrast = inv16 * rcp(1.0f - saturate(bias)); + + // calculate radius + float radius = SSAO_RADIUS * saturate(pos.z * inv5_3) * (1.0f + pos.z * inv8); + float invRad = rcp(radius); + + float2 radius2D = radius * focalLen * rcp(pos.z); + float ao = 0.0f; + + // calculate ao + [unroll] + for (int i = 0; i < 8; ++i) { + float2 deltaUV = reflect(arrKernel[i], rotSample).xy * radius2D; + ao += doPBAO(tc0 + deltaUV, pos, normal, invRad, bias, selfOcc); + ao += doPBAO(tc0 + deltaUV * inv2, pos, normal, invRad, bias, selfOcc); + } + + ao = 1.0f - (ao * contrast + selfOcc); + return ao * ao; +} +#endif + diff --git a/gamedata/shaders/d3d11/ssao_blur.ps.hlsl b/gamedata/shaders/d3d11/ssao_blur.ps.hlsl new file mode 100644 index 0000000..a68a4d5 --- /dev/null +++ b/gamedata/shaders/d3d11/ssao_blur.ps.hlsl @@ -0,0 +1,37 @@ +uniform float4 screen_res; +uniform Texture2D s_occ; + +float ssao_blur_ps(float2 centerTC) +{ + // low weight center sample - will be used on edges + float fSumWeight = 0.025f; + float2 centerData = s_occ.Sample(smp_nofilter, centerTC); + float fOcclusion = centerData.r * fSumWeight; + float centerDepth = centerData.g; + + float2 arrOffsets[4] = + { + float2(1, -1), + float2(-1, -1), + float2(1, 1), + float2(-1, 1) + }; + + [unroll] + for (int i = 0; i < 4; i++) + { + float2 sampleTC = centerTC + pos_decompression_params2.zw * arrOffsets[i]; + float2 sampleData = s_occ.Sample(smp_nofilter, sampleTC); + float fDepth = sampleData.g; + float fDiff = 8 * abs(fDepth - centerDepth) / min(fDepth, centerDepth); + float fWeight = saturate(1 - fDiff); + + fOcclusion += sampleData.r * fWeight; + + fSumWeight += fWeight; + } + + fOcclusion /= fSumWeight; + + return fOcclusion; +} diff --git a/gamedata/shaders/d3d11/ssao_calc.ps.hlsl b/gamedata/shaders/d3d11/ssao_calc.ps.hlsl new file mode 100644 index 0000000..00331ae --- /dev/null +++ b/gamedata/shaders/d3d11/ssao_calc.ps.hlsl @@ -0,0 +1,25 @@ +#include "common.hlsli" + +uniform Texture2D s_half_depth; +#include "ssao.ps.hlsl" + +struct _input +{ + float4 tc0 : TEXCOORD0; // tc.xy, tc.w = tonemap scale + float2 tcJ : TEXCOORD1; // jitter coords + float4 pos2d : SV_POSITION; +}; + +float4 main(_input I) : SV_Target0 +{ + IXrayGbuffer O; + GbufferUnpack(I.tc0.xy, I.pos2d.xy, O); + + if(O.Depth > 0.9999f) { + return 1.0f; + } + + float occ = calc_ssao(O.Depth, O.Normal, I.tc0.xy); + return float4(occ, occ, occ, occ); +} + diff --git a/gamedata/shaders/d3d11/sslr_filter.ps.hlsl b/gamedata/shaders/d3d11/sslr_filter.ps.hlsl new file mode 100644 index 0000000..e583738 --- /dev/null +++ b/gamedata/shaders/d3d11/sslr_filter.ps.hlsl @@ -0,0 +1,118 @@ +#include "common.hlsli" +#include "reflections.hlsli" +#include "metalic_roughness_light.hlsli" + +struct PSInput +{ + float4 hpos : SV_POSITION; + float2 texcoord : TEXCOORD0; +}; + +#define mirror(x) saturate(1.0 - abs(abs(x) - 1.0)) + +#define DISK32_RADIUS8 2.443279f +#define DISK32_RADIUS16 1.48565f +#define DISK32_RADIUS32 1.0f + +#define NUM_SAMPLES 32 +#define DISK32_RADIUS DISK32_RADIUS32 + +static const float2 Disk32_Normalized[32] = { + float2(-0.50000f, 0.100000f), + float2(0.408569f, 0.024217f), + float2(0.162925f, 0.230704f), + float2(-0.108248f, 0.367911f), + float2(-0.329684f, 0.150003f), + float2(-0.223398f, -0.167128f), + float2(-0.067794f, -0.356288f), + float2(0.136270f, -0.214864f), + + float2(0.597250f, 0.006447f), + float2(0.464972f, 0.455376f), + float2(0.054674f, 0.571788f), + float2(-0.423541f, 0.423589f), + float2(-0.657243f, -0.046063f), + float2(-0.484844f, -0.466902f), + float2(0.019780f, -0.556973f), + float2(0.512536f, -0.384894f), + + float2(0.932249f, 0.011329f), + float2(0.857066f, 0.402364f), + float2(0.681793f, 0.580318f), + float2(0.323008f, 0.880092f), + float2(-0.016841f, 0.961073f), + float2(-0.422076f, 0.906560f), + float2(-0.676936f, 0.692191f), + float2(-0.925246f, 0.292709f), + + float2(-0.893555f, -0.016208f), + float2(-0.790589f, -0.380594f), + float2(-0.677237f, -0.701563f), + float2(-0.295770f, -0.880309f), + float2(-0.002152f, -0.909661f), + float2(0.336380f, -0.833836f), + float2(0.637664f, -0.692579f), + float2(0.895505f, -0.323214f), +}; + +float4 main(PSInput I) : SV_Target +{ + IXrayGbuffer O; + GbufferUnpack(I.texcoord.xy, I.hpos.xy, O); + + float4 SSLR = s_refl.SampleLevel(smp_rtlinear, I.texcoord.xy, 0); + float4 BaseColor = s_image.SampleLevel(smp_rtlinear, I.texcoord.xy, 0.0f); + + if(O.Depth >= 1.0f) + { + return 0.0f; + } + + float3 ReflectPoint = GbufferGetPointRealUnjitter(I.texcoord.xy, O.Depth); + float3 View = normalize(ReflectPoint); + + float4 FinalColor = BaseColor.xyzz; + FinalColor.w = length(O.Point - SSLR.xyz); + + float FinalWeight = 1; + float NdotV = max(0.0f, -dot(O.Normal, View)); + + [unroll(NUM_SAMPLES)] + for(uint i = 0; i < NUM_SAMPLES; ++i) + { + float2 offset = Disk32_Normalized[i] * scaled_screen_res.zw * DISK32_RADIUS; + offset = mirror(I.texcoord.xy + offset * 32.0f); + + SSLR = s_refl.SampleLevel(smp_nofilter, offset, 0); + + float4 Color = s_image.SampleLevel(smp_nofilter, offset, 0.0f); + float3 Light = O.Point - SSLR.xyz; + + float S = length(Light); + Light *= rcp(max(0.000001f, S)); + + float3 Half = normalize(Light + View); + + float NdotL = max(0.0f, -dot(O.Normal, Light)); + float NdotH = max(0.0f, -dot(O.Normal, Half)); + + float D = DistributionGGX(NdotH, O.Roughness); + float G = NdotL * GeometrySmithD(NdotL, NdotV, O.Roughness); + + float SampleWeight = D * G * SSLR.w; + SampleWeight *= 1.0f - abs(Color.w - BaseColor.w); + + Color.w = S; + FinalColor += Color * SampleWeight; + + FinalWeight += SampleWeight; + } + + FinalColor *= rcp(FinalWeight); + FinalColor.xyz = saturate(FinalColor.xyz); + + FinalColor.w += O.ViewDist; + + return FinalColor; +} + diff --git a/gamedata/shaders/d3d11/sslr_render.ps.hlsl b/gamedata/shaders/d3d11/sslr_render.ps.hlsl new file mode 100644 index 0000000..a6cf8ba --- /dev/null +++ b/gamedata/shaders/d3d11/sslr_render.ps.hlsl @@ -0,0 +1,138 @@ +#include "common.hlsli" +#include "reflections.hlsli" +#include "metalic_roughness_ambient.hlsli" + +struct PSInput +{ + float4 hpos : SV_POSITION; + float2 texcoord : TEXCOORD0; +}; + +Texture3D s_blue_noise; + +// TODO: Это можно упростить потом +float3 TangentToWorld(in float3 N, in float3 H) +{ + float3 UpVector = abs(N.y) < 0.999f ? float3(0.0, 1.0, 0.0) : float3(0.0, 0.0, -1.0); + float3 T = normalize(cross(UpVector, N)); + float3 B = cross(N, T); + + return normalize(T * H.x + B * H.y + N * H.z); +} + +// Brian Karis, Epic Games "Real Shading in Unreal Engine 4" +float4 ImportanceSampleGGX(float3 N, float2 Xi, float Roughness) +{ + float m = Roughness * Roughness; + float m2 = m * m; + + float Phi = 2 * PI * Xi.x; + + float CosTheta = sqrt((1.0 - Xi.y) * rcp(1.0 + (m2 - 1.0) * Xi.y)); + float SinTheta = sqrt(abs(1.0 - CosTheta * CosTheta)); + + float3 H; + H.x = SinTheta * cos(Phi); + H.y = SinTheta * sin(Phi); + H.z = CosTheta; + + float d = (CosTheta * m2 - CosTheta) * CosTheta + 1.0f; + float D = m2 * rcp(d * d); + float pdf = D * CosTheta; + + H = TangentToWorld(N, H); + + return float4(H, pdf); +} + +void main(PSInput I, out float4 Point : SV_Target0, out float4 Final : SV_Target1) +{ + IXrayGbuffer O; + GbufferUnpack(I.texcoord.xy, I.hpos.xy, O); + + if(O.Depth >= 1.0f) + { + Point = 0.0f; + Final = 0.0f; + + return; + } + + float3 ReflectPoint = GbufferGetPointRealUnjitter(I.texcoord.xy, O.Depth); + float3 ViewVec = normalize(ReflectPoint); + + float2 Jitter = s_blue_noise[uint3(uint2(I.hpos.xy) % 128, uint(m_taa_jitter.w) % 32)].xy; + + Jitter.x = Jitter.x * 0.5f + 0.5f; + Jitter.y *= 0.7f; + + float3 BaseReflect = normalize(reflect(ViewVec, O.Normal.xyz)); + + float4 H = ImportanceSampleGGX(mul(m_invV, O.Normal.xyz), Jitter, O.Roughness); + H.xyz = mul(m_V, H.xyz); + + float3 Reflection = reflect(ViewVec, H.xyz); + + if (dot(Reflection, O.Normal) < 0.0f) + { + Reflection = normalize(Reflection + O.Normal); + } + + float3 StartPoint = ReflectPoint * 0.996f; + Point.xyz = StartPoint + Reflection * fog_params.z; + + bool isNotHUD = O.Depth >= 0.02f; + + if(isNotHUD) + { + StartPoint += O.Normal * 0.15f; + +#ifdef USE_OFFSCREEN_REFLECTIONS + float4 VSLR = FastViewReflections(StartPoint, Reflection); + Point.xyz = lerp(Point.xyz, VSLR.xyz, VSLR.w); +#endif + } + else + { + Point.xyz = Reflection.xyz * s_env.SampleLevel(smp_linear, Point.xyz, 0.0f).w; + } + + float4 SSLR = FastViewReflectionsSSR(StartPoint, Reflection, !isNotHUD); + + float4 EndProj = mul(O.Depth < 0.02f ? m_P_hud : m_P, float4(SSLR.xyz, 1.0f)); + EndProj.xy = EndProj.xy * rcp(EndProj.w) * float2(0.5f, -0.5f) + 0.5f; + + float2 Velocity = s_velocity.Sample(smp_rtlinear, EndProj.xy).xy * float2(0.5f, -0.5f); + float2 PrevSpecularUV = saturate(EndProj.xy - Velocity.xy); + + Final = s_image.Sample(smp_rtlinear, PrevSpecularUV.xy); + +#ifdef USE_OFFSCREEN_REFLECTIONS + O.Hemi = saturate(O.Hemi * 3.0f); +#endif + + float4 Hemi = CompureSpecularIrradance(Reflection.xyz, O.Hemi, 0.0f).xyzz; + SSLR.w *= GetBorderAtten(PrevSpecularUV); + +#ifdef USE_OFFSCREEN_REFLECTIONS + float3 Color = s_env.SampleLevel(smp_linear, Point.xyz, 0.0f); + Color.xyz *= rcp(1.00001f - Color.xyz); +#else + float3 Color = Hemi.xyz; +#endif + + Final.xyz = lerp(Color.xyz, Final.xyz, SSLR.w); + Point.xyz = lerp(Point.xyz, SSLR.xyz, SSLR.w); + Final.xyz = PopGamma(Final.xyz); + + Hemi.w = max(length(Point.xyz), length(StartPoint.xyz) + length(Point.xyz - StartPoint.xyz)); + Hemi.w = saturate(Hemi.w * fog_params.w + fog_params.x); + + Final.xyz = lerp(Final.xyz, Hemi.xyz, Hemi.w); + + Point.w = rcp(max(0.000001f, H.w)); + Final.xyz *= rcp(1.0f + Final.xyz); + + Final.w = isNotHUD; +} + diff --git a/gamedata/shaders/d3d11/sslr_temporal.ps.hlsl b/gamedata/shaders/d3d11/sslr_temporal.ps.hlsl new file mode 100644 index 0000000..deb34dc --- /dev/null +++ b/gamedata/shaders/d3d11/sslr_temporal.ps.hlsl @@ -0,0 +1,158 @@ +#include "common.hlsli" +#include "reflections.hlsli" +#include "metalic_roughness_ambient.hlsli" +#include "metalic_roughness_light.hlsli" + +struct PSInput +{ + float4 hpos : SV_POSITION; + float2 texcoord : TEXCOORD0; +}; + +float IntersectAABB(float3 Dir, float3 Org, float3 Box) { + float3 RcpDir = rcp(Dir); + + float3 TNeg = (Box - Org) * RcpDir; + float3 TPos = -RcpDir * (Box + Org); + + return max(min(TNeg.x, TPos.x), max(min(TNeg.y, TPos.y), min(TNeg.z, TPos.z))); +} + +float HistoryClamp(float3 History, float3 Filtered, float3 aabb_min, float3 aabb_max) { + float3 Min = min(Filtered, min(aabb_min, aabb_max)); + float3 Max = max(Filtered, max(aabb_min, aabb_max)); + + float3 Avg2 = Max + Min; + float3 Dir = Filtered - History; + + float3 Org = History - Avg2 * 0.5f; + float3 Scale = Max - Avg2 * 0.5f; + + return saturate(IntersectAABB(Dir, Org, Scale)); +} + +void sort(inout float4 a1, inout float4 a2) { + float4 t = min(a1, a2); + a2 = max(a1, a2); + a1 = t; +} + +float4 median3(float4 a1, float4 a2, float4 a3) { + sort(a2, a3); + sort(a1, a2); + + return min(a2, a3); +} + +float4 median5(float4 a1, float4 a2, float4 a3, float4 a4, float4 a5) { + sort(a1, a2); + sort(a3, a4); + sort(a1, a3); + sort(a2, a4); + + return median3(a2, a3, a5); +} + +float4 median9(float4 a1, float4 a2, float4 a3, float4 a4, float4 a5, float4 a6, float4 a7, float4 a8, float4 a9) { + sort(a1, a2); + sort(a3, a4); + sort(a5, a6); + sort(a7, a8); + sort(a1, a3); + sort(a5, a7); + sort(a1, a5); + + sort(a3, a5); + sort(a3, a7); + sort(a2, a4); + sort(a6, a8); + sort(a4, a8); + sort(a4, a6); + sort(a2, a6); + + return median5(a2, a4, a5, a7, a9); +} + +float4 main(PSInput I) : SV_Target +{ + IXrayGbuffer O; + GbufferUnpack(I.texcoord.xy, I.hpos.xy, O); + + float4 SSLR4 = s_image.SampleLevel(smp_nofilter, I.texcoord, 0); + + if(O.Depth >= 1.0f) { + return float4(SSLR4.xyz, O.Depth); + } + + float4 SSLR0 = s_image.SampleLevel(smp_nofilter, I.texcoord, 0, int2(+1, +0)); + float4 SSLR1 = s_image.SampleLevel(smp_nofilter, I.texcoord, 0, int2(-0, +1)); + float4 SSLR2 = s_image.SampleLevel(smp_nofilter, I.texcoord, 0, int2(-1, -0)); + float4 SSLR3 = s_image.SampleLevel(smp_nofilter, I.texcoord, 0, int2(-0, -1)); + + float4 SSLR5 = s_image.SampleLevel(smp_nofilter, I.texcoord, 0, int2(+1, +1)); + float4 SSLR6 = s_image.SampleLevel(smp_nofilter, I.texcoord, 0, int2(-1, +1)); + float4 SSLR7 = s_image.SampleLevel(smp_nofilter, I.texcoord, 0, int2(-1, -1)); + float4 SSLR8 = s_image.SampleLevel(smp_nofilter, I.texcoord, 0, int2(-1, -1)); + + float4 SSLRBoxMinPos = min(SSLR0, min(SSLR2, min(SSLR6, SSLR8))); + float4 SSLRBoxMaxPos = max(SSLR0, max(SSLR2, max(SSLR6, SSLR8))); + + float4 SSLRBoxMin = min(SSLR1, min(SSLR3, min(SSLR5, SSLR7))); + float4 SSLRBoxMax = max(SSLR1, max(SSLR3, max(SSLR5, SSLR7))); + + SSLRBoxMinPos = min(SSLRBoxMin, SSLRBoxMinPos); + SSLRBoxMaxPos = max(SSLRBoxMax, SSLRBoxMaxPos); + + SSLRBoxMin = SSLRBoxMinPos; //SSLRBoxMin * 0.5f + SSLRBoxMinPos * 0.5f; + SSLRBoxMax = SSLRBoxMaxPos; //SSLRBoxMax * 0.5f + SSLRBoxMaxPos * 0.5f; + + float4 SSLRMain = SSLR4; //rcp(9) * (SSLR0 + SSLR1 + SSLR2 + SSLR3 + SSLR4 + SSLR5 + SSLR6 + SSLR7 + SSLR8); + SSLRMain = median9(SSLR0, SSLR1, SSLR2, SSLR3, SSLR4, SSLR5, SSLR6, SSLR7, SSLR8); + + float3 Point = gbuf_unpack_position(I.texcoord.xy, O.PointReal.z); + float3 View = normalize(Point); + + float Fog = saturate(SSLRMain.w * fog_params.w + fog_params.x); + float3 ReflectPoint = View.xyz * SSLRMain.w; + + float2 PrevDiffuseUV = I.texcoord.xy + s_velocity.SampleLevel(smp_rtlinear, I.texcoord.xy, 0).xy * float2(-0.5f, 0.5f); + float4 PrevSpecularUV = mul(m_VP_old, float4(mul(m_invV, float4(ReflectPoint, 1.0f)).xyz, 1.0f)); + + PrevSpecularUV.xy = PrevSpecularUV.xy / PrevSpecularUV.w * float2(0.5f, -0.5f) + 0.5f; + PrevSpecularUV.xy = O.Depth > 0.02f ? PrevSpecularUV.xy : PrevDiffuseUV.xy; + SSLRMain.w = O.Depth; + + float4 SSLR_OldDiffyse = s_refl.SampleLevel(smp_rtlinear, PrevDiffuseUV.xy, 0.0f); + SSLR_OldDiffyse = lerp(SSLRMain, SSLR_OldDiffyse, GetBorderAtten(PrevDiffuseUV)); + + float Fade = 1.0f; // - Fog * 0.1f; + + float DepthClamp = 1.0f - saturate(50.0f * abs(SSLR_OldDiffyse.w - O.Depth)); + + if(O.Depth < 0.02f) { + Fade = 0.95f - Fog * 0.1f; + + DepthClamp = 1.0f - saturate(80.0f * abs(SSLR_OldDiffyse.w - O.Depth) * rcp(O.Depth) - 0.5f); + SSLRMain.xyz = lerp(SSLRMain.xyz, SSLR4.xyz, GetBorderAtten(PrevDiffuseUV)); + SSLRMain.xyz = lerp(SSLRMain.xyz, SSLR_OldDiffyse.xyz, DepthClamp * 0.98f * Fade); + + return saturate(SSLRMain); + } + + float4 SSLR_Diffuse = lerp(SSLRMain, SSLR_OldDiffyse, 0.98f * Fade); + float4 SSLR_OldSpecular = s_refl.SampleLevel(smp_rtlinear, PrevSpecularUV.xy, 0.0f); + + SSLR_OldSpecular = lerp(SSLR_Diffuse, SSLR_OldSpecular, GetBorderAtten(PrevSpecularUV)); + + float SpecularFactor = 1.0f - HistoryClamp(SSLR_OldSpecular.xyz, SSLRMain.xyz, SSLRBoxMin.xyz, SSLRBoxMax.xyz); + SSLR_OldSpecular = lerp(SSLRMain * 0.5f + SSLR_Diffuse * 0.5f, SSLR_OldSpecular, 0.98 * SpecularFactor * Fade); + + SpecularFactor = 1.0f - saturate(length(PrevDiffuseUV.xy - PrevSpecularUV.xy) * 300.0f); + float4 SSLR_Specular = lerp(SSLR_OldSpecular, SSLR_Diffuse, 0.95f * SpecularFactor); + + SSLR_Diffuse.xyz = lerp(SSLR_Specular.xyz, SSLR_Diffuse.xyz, O.Roughness); + SSLRMain.xyz = lerp(SSLRMain.xyz, SSLR_Diffuse.xyz, DepthClamp); + + return saturate(SSLRMain); +} + diff --git a/gamedata/shaders/d3d11/stub_default.lua b/gamedata/shaders/d3d11/stub_default.lua new file mode 100644 index 0000000..d7ae33b --- /dev/null +++ b/gamedata/shaders/d3d11/stub_default.lua @@ -0,0 +1,9 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("stub_default", "stub_default") + + -- Decouple sampler and texture + -- shader:sampler ("s_base") : texture(t_base) : clamp() : f_linear () + -- TODO: DX10: move stub_default to smp_rtlinear + shader:dx10texture("s_base", t_base) + shader:dx10sampler("smp_base") +end diff --git a/gamedata/shaders/d3d11/stub_default.ps.hlsl b/gamedata/shaders/d3d11/stub_default.ps.hlsl new file mode 100644 index 0000000..793e6c8 --- /dev/null +++ b/gamedata/shaders/d3d11/stub_default.ps.hlsl @@ -0,0 +1,12 @@ +#include "common.hlsli" + +// Pixel +float4 main(p_TL I) : SV_Target +{ + return s_base.Sample(smp_base, I.Tex0) * I.Color; + + // float4 res = s_base.Sample( smp_base, I.Tex0 )*I.Color; + // clip(res-m_AlphaRef); + // clip(res-0.5); + // return res; +} diff --git a/gamedata/shaders/d3d11/stub_default.vs.hlsl b/gamedata/shaders/d3d11/stub_default.vs.hlsl new file mode 100644 index 0000000..4c161d4 --- /dev/null +++ b/gamedata/shaders/d3d11/stub_default.vs.hlsl @@ -0,0 +1,13 @@ +#include "common.hlsli" + +// Vertex +v2p_TL main(v_TL I) +{ + v2p_TL O; + + O.HPos = mul(m_WVP, I.P); + O.Tex0 = I.Tex0; + O.Color = I.Color.bgra; // swizzle vertex colour + + return O; +} diff --git a/gamedata/shaders/d3d11/stub_default_ma.ps.hlsl b/gamedata/shaders/d3d11/stub_default_ma.ps.hlsl new file mode 100644 index 0000000..1a569c7 --- /dev/null +++ b/gamedata/shaders/d3d11/stub_default_ma.ps.hlsl @@ -0,0 +1,20 @@ +#include "common.hlsli" + +// Texture2D s_base; +// sampler smp_base; + + +// Pixel +float4 main(p_TL I) : SV_Target +{ + float4 res = s_base.Sample(smp_base, I.Tex0); + // res.rgb = lerp( I.Color.rgb, res.rgb, I.Color.a); + res.rgb = lerp(res.rgb, I.Color.rgb, I.Color.a); + res.a *= I.Color.a; + + // clip(res-m_AlphaRef); + // clip(res-0.5); + + return res; + // return float4(1,1,1,1); +} diff --git a/gamedata/shaders/d3d11/stub_fullscreen_triangle.vs.hlsl b/gamedata/shaders/d3d11/stub_fullscreen_triangle.vs.hlsl new file mode 100644 index 0000000..5199b52 --- /dev/null +++ b/gamedata/shaders/d3d11/stub_fullscreen_triangle.vs.hlsl @@ -0,0 +1,21 @@ +struct VSInput +{ + float2 texcoord : TEXCOORD0; + float4 hpos : POSITIONT; +}; + +struct VSOutput +{ + float4 hpos : SV_POSITION; + float2 texcoord : TEXCOORD0; +}; + +VSOutput main(VSInput I) +{ + VSOutput O; + + O.hpos = I.hpos; + O.texcoord = I.texcoord; + + return O; +} diff --git a/gamedata/shaders/d3d11/stub_notransform.vs.hlsl b/gamedata/shaders/d3d11/stub_notransform.vs.hlsl new file mode 100644 index 0000000..44cd3f6 --- /dev/null +++ b/gamedata/shaders/d3d11/stub_notransform.vs.hlsl @@ -0,0 +1,14 @@ +#include "common_iostructs.hlsli" + +// Vertex +v2p_TL main(v_TL I) +{ + v2p_TL O; + + O.HPos = I.P; + O.Tex0 = I.Tex0; + // Some shaders that use this stub don't need Color at all + O.Color = I.Color.bgra; // swizzle vertex colour + + return O; +} diff --git a/gamedata/shaders/d3d11/stub_notransform_2uv.vs.hlsl b/gamedata/shaders/d3d11/stub_notransform_2uv.vs.hlsl new file mode 100644 index 0000000..bca7d92 --- /dev/null +++ b/gamedata/shaders/d3d11/stub_notransform_2uv.vs.hlsl @@ -0,0 +1,15 @@ +#include "common_iostructs.hlsli" + +// Vertex +v2p_TL2uv main(v_TL2uv I) +{ + v2p_TL2uv O; + + O.HPos = I.P; + O.Tex0 = I.Tex0; + O.Tex1 = I.Tex1; + // Some shaders that use this stub don't need Color at all + O.Color = I.Color.bgra; // swizzle vertex colour + + return O; +} diff --git a/gamedata/shaders/d3d11/stub_notransform_aa_aa.vs.hlsl b/gamedata/shaders/d3d11/stub_notransform_aa_aa.vs.hlsl new file mode 100644 index 0000000..a671df3 --- /dev/null +++ b/gamedata/shaders/d3d11/stub_notransform_aa_aa.vs.hlsl @@ -0,0 +1,30 @@ +#include "common_iostructs.hlsli" + +uniform float4 screen_res; // Screen resolution (x-Width,y-Height, zw - 1/resolution) + +// Vertex +v2p_aa_AA main(v_aa_AA I) +{ + v2p_aa_AA O; + + // O.HPos = I.P; + + { + I.P.xy += 0.5f; + // O.HPos.x = I.P.x/1024 * 2 - 1; + // O.HPos.y = (I.P.y/768 * 2 - 1)*-1; + O.HPos.x = I.P.x * screen_res.z * 2 - 1; + O.HPos.y = (I.P.y * screen_res.w * 2 - 1) * -1; + O.HPos.zw = I.P.zw; + } + + O.Tex0 = I.Tex0; + O.Tex1 = I.Tex1; + O.Tex2 = I.Tex2; + O.Tex3 = I.Tex3; + O.Tex4 = I.Tex4; + O.Tex5 = I.Tex5; + O.Tex6 = I.Tex6; + + return O; +} diff --git a/gamedata/shaders/d3d11/stub_notransform_build.vs.hlsl b/gamedata/shaders/d3d11/stub_notransform_build.vs.hlsl new file mode 100644 index 0000000..415fe06 --- /dev/null +++ b/gamedata/shaders/d3d11/stub_notransform_build.vs.hlsl @@ -0,0 +1,25 @@ +#include "common_iostructs.hlsli" + +float4 screen_res; // Screen resolution (x-Width,y-Height, zw - 1/resolution) + +// Vertex +v2p_build main(v_build I) +{ + v2p_build O; + + { + I.P.xy += 0.5f; // Bugs with rasterizer??? Possible float-pixel shift. + // O.HPos.x = I.P.x/1024 * 2 - 1; + // O.HPos.y = (I.P.y/768 * 2 - 1)*-1; + O.HPos.x = I.P.x * screen_res.z * 2 - 1; + O.HPos.y = (I.P.y * screen_res.w * 2 - 1) * -1; + O.HPos.zw = I.P.zw; + } + + O.Tex0 = I.Tex0; + O.Tex1 = I.Tex1; + O.Tex2 = I.Tex2; + O.Tex3 = I.Tex3; + + return O; +} diff --git a/gamedata/shaders/d3d11/stub_notransform_filter.vs.hlsl b/gamedata/shaders/d3d11/stub_notransform_filter.vs.hlsl new file mode 100644 index 0000000..b86d179 --- /dev/null +++ b/gamedata/shaders/d3d11/stub_notransform_filter.vs.hlsl @@ -0,0 +1,29 @@ +#include "common_iostructs.hlsli" + +float4 screen_res; // Screen resolution (x-Width,y-Height, zw - 1/resolution) + +// Vertex +v2p_filter main(v_filter I) +{ + v2p_filter O; + + // O.HPos = I.P; + { + I.P.xy += 0.5f; // Bugs with rasterizer??? Possible float-pixel shift. + // O.HPos.x = I.P.x/1024 * 2 - 1; + // O.HPos.y = (I.P.y/768 * 2 - 1)*-1; + O.HPos.x = I.P.x * screen_res.z * 2 - 1; + O.HPos.y = (I.P.y * screen_res.w * 2 - 1) * -1; + O.HPos.zw = I.P.zw; + } + O.Tex0 = I.Tex0; + O.Tex1 = I.Tex1; + O.Tex2 = I.Tex2; + O.Tex3 = I.Tex3; + O.Tex4 = I.Tex4; + O.Tex5 = I.Tex5; + O.Tex6 = I.Tex6; + O.Tex7 = I.Tex7; + + return O; +} diff --git a/gamedata/shaders/d3d11/stub_notransform_postpr.vs.hlsl b/gamedata/shaders/d3d11/stub_notransform_postpr.vs.hlsl new file mode 100644 index 0000000..98d4d95 --- /dev/null +++ b/gamedata/shaders/d3d11/stub_notransform_postpr.vs.hlsl @@ -0,0 +1,29 @@ +#include "common_iostructs.hlsli" + +uniform float4 screen_res; // Screen resolution (x-Width,y-Height, zw - 1/resolution) + +// Vertex +v2p_postpr main(v_postpr I) +{ + v2p_postpr O; + + // O.HPos = I.P; + + { + I.P.xy += 0.5f; + // O.HPos.x = I.P.x/1024 * 2 - 1; + // O.HPos.y = (I.P.y/768 * 2 - 1)*-1; + O.HPos.x = I.P.x * screen_res.z * 2 - 1; + O.HPos.y = (I.P.y * screen_res.w * 2 - 1) * -1; + O.HPos.zw = I.P.zw; + } + + O.Tex0 = I.Tex0; + O.Tex1 = I.Tex1; + O.Tex2 = I.Tex2; + + O.Color = I.Color.bgra; // swizzle vertex colour + O.Gray = I.Gray.bgra; // swizzle vertex colour + + return O; +} diff --git a/gamedata/shaders/d3d11/stub_notransform_t.vs.hlsl b/gamedata/shaders/d3d11/stub_notransform_t.vs.hlsl new file mode 100644 index 0000000..9567a1b --- /dev/null +++ b/gamedata/shaders/d3d11/stub_notransform_t.vs.hlsl @@ -0,0 +1,25 @@ +#include "common_iostructs.hlsli" + +uniform float4 screen_res; // Screen resolution (x-Width,y-Height, zw - 1/resolution) + +// Vertex +v2p_TL main(v_TL_positiont I) +{ + v2p_TL O; + + // O.HPos = P; + + { + I.P.xy += 0.5f; + // O.HPos.x = I.P.x/1024 * 2 - 1; + // O.HPos.y = (I.P.y/768 * 2 - 1)*-1; + O.HPos.x = I.P.x * screen_res.z * 2 - 1; + O.HPos.y = (I.P.y * screen_res.w * 2 - 1) * -1; + O.HPos.zw = I.P.zw; + } + + O.Tex0 = I.Tex0; + O.Color = I.Color.bgra; // swizzle vertex colour + + return O; +} diff --git a/gamedata/shaders/d3d11/stub_notransform_t_font.vs.hlsl b/gamedata/shaders/d3d11/stub_notransform_t_font.vs.hlsl new file mode 100644 index 0000000..0764398 --- /dev/null +++ b/gamedata/shaders/d3d11/stub_notransform_t_font.vs.hlsl @@ -0,0 +1,20 @@ +#include "common.hlsli" + +uniform float4 screen_res; +v2p_TL main(v_TL_positiont I) +{ + v2p_TL O; + + { + // I.P.xy += 0.5f; + + O.HPos.x = I.P.x * screen_res.z * 2 - 1; + O.HPos.y = (I.P.y * screen_res.w * 2 - 1) * -1; + O.HPos.zw = I.P.zw; + } + + O.Tex0 = I.Tex0; + O.Color = I.Color.bgra; // swizzle vertex colour + + return O; +} diff --git a/gamedata/shaders/d3d11/stub_notransform_t_m2.vs.hlsl b/gamedata/shaders/d3d11/stub_notransform_t_m2.vs.hlsl new file mode 100644 index 0000000..2e20859 --- /dev/null +++ b/gamedata/shaders/d3d11/stub_notransform_t_m2.vs.hlsl @@ -0,0 +1,25 @@ +#include "common_iostructs.hlsli" + +uniform float4 screen_res; // Screen resolution (x-Width,y-Height, zw - 1/resolution) + +// Vertex +v2p_TL main(v_TL_positiont I) +{ + v2p_TL O; + + // O.HPos = P; + + { + I.P.xy += 0.5f; + // O.HPos.x = I.P.x/1024 * 2 - 1; + // O.HPos.y = (I.P.y/768 * 2 - 1)*-1; + O.HPos.x = I.P.x * screen_res.z * 2 - 1; + O.HPos.y = (I.P.y * screen_res.w * 2 - 1) * -1; + O.HPos.zw = I.P.zw; + } + + O.Tex0 = I.Tex0; + O.Color = float4(I.Color.bgr * 2, 1.0f); // swizzle vertex colour + + return O; +} diff --git a/gamedata/shaders/d3d11/stub_notransform_t_m4.vs.hlsl b/gamedata/shaders/d3d11/stub_notransform_t_m4.vs.hlsl new file mode 100644 index 0000000..f6a4457 --- /dev/null +++ b/gamedata/shaders/d3d11/stub_notransform_t_m4.vs.hlsl @@ -0,0 +1,25 @@ +#include "common_iostructs.hlsli" + +uniform float4 screen_res; // Screen resolution (x-Width,y-Height, zw - 1/resolution) + +// Vertex +v2p_TL main(v_TL_positiont I) +{ + v2p_TL O; + + // O.HPos = P; + + { + I.P.xy += 0.5f; + // O.HPos.x = I.P.x/1024 * 2 - 1; + // O.HPos.y = (I.P.y/768 * 2 - 1)*-1; + O.HPos.x = I.P.x * screen_res.z * 2 - 1; + O.HPos.y = (I.P.y * screen_res.w * 2 - 1) * -1; + O.HPos.zw = I.P.zw; + } + + O.Tex0 = I.Tex0; + O.Color = float4(I.Color.bgr * 4, 1.0f); // swizzle vertex colour + + return O; +} diff --git a/gamedata/shaders/d3d11/stub_notransform_t_ma.vs.hlsl b/gamedata/shaders/d3d11/stub_notransform_t_ma.vs.hlsl new file mode 100644 index 0000000..a4608df --- /dev/null +++ b/gamedata/shaders/d3d11/stub_notransform_t_ma.vs.hlsl @@ -0,0 +1,21 @@ +#include "common_iostructs.hlsli" + +// Vertex +v2p_TL main(v_TL_positiont I) +{ + v2p_TL O; + + // O.HPos = P; + + { + I.P.xy += 0.5f; + O.HPos.x = I.P.x / 1024 * 2 - 1; + O.HPos.y = (I.P.y / 768 * 2 - 1) * -1; + O.HPos.zw = I.P.zw; + } + + O.Tex0 = I.Tex0; + O.Color = I.Color.aaaa; // swizzle vertex colour + + return O; +} diff --git a/gamedata/shaders/d3d11/stub_notransform_t_scaled.vs.hlsl b/gamedata/shaders/d3d11/stub_notransform_t_scaled.vs.hlsl new file mode 100644 index 0000000..c4107bf --- /dev/null +++ b/gamedata/shaders/d3d11/stub_notransform_t_scaled.vs.hlsl @@ -0,0 +1,21 @@ +#include "common_iostructs.hlsli" + +uniform float4 scaled_screen_res; // Screen resolution (x-Width,y-Height, zw - 1/resolution) + +// Vertex +v2p_TL main(v_TL_positiont I) +{ + v2p_TL O; + + { + I.P.xy += 0.5f; + O.HPos.x = I.P.x * scaled_screen_res.z * 2 - 1; + O.HPos.y = (I.P.y * scaled_screen_res.w * 2 - 1) * -1; + O.HPos.zw = I.P.zw; + } + + O.Tex0 = I.Tex0; + O.Color = I.Color.bgra; // swizzle vertex colour + + return O; +} diff --git a/gamedata/shaders/d3d11/stub_screen_space.vs.hlsl b/gamedata/shaders/d3d11/stub_screen_space.vs.hlsl new file mode 100644 index 0000000..b139636 --- /dev/null +++ b/gamedata/shaders/d3d11/stub_screen_space.vs.hlsl @@ -0,0 +1,17 @@ +#include "common.hlsli" + +// Vertex +uniform float4 screen_res; + +p_shadow main(v2p_screen I) +{ + p_shadow O; + // Transform to screen space (in d3d9 it was done automatically) + O.hpos.x = (I.HPos.x * screen_res.z * 2 - 1); + O.hpos.y = -(I.HPos.y * screen_res.w * 2 - 1); + O.hpos.zw = I.HPos.zw; + + O.tc0 = I.tc0; + + return O; +} diff --git a/gamedata/shaders/d3d11/stub_srgb.ps.hlsl b/gamedata/shaders/d3d11/stub_srgb.ps.hlsl new file mode 100644 index 0000000..d176b22 --- /dev/null +++ b/gamedata/shaders/d3d11/stub_srgb.ps.hlsl @@ -0,0 +1,9 @@ +#include "common.hlsli" + +// Pixel +float4 main(p_TL I) : SV_Target +{ + float4 final = s_base.Sample(smp_base, I.Tex0) * I.Color; + return PushGamma(final); +} + diff --git a/gamedata/shaders/d3d11/taa_render.ps.hlsl b/gamedata/shaders/d3d11/taa_render.ps.hlsl new file mode 100644 index 0000000..d15ef6d --- /dev/null +++ b/gamedata/shaders/d3d11/taa_render.ps.hlsl @@ -0,0 +1,216 @@ +/* + Simple TAA + + References: + - https://gdcvault.com/play/1022970/Temporal-Reprojection-Anti-Aliasing-in + - https://research.nvidia.com/labs/rtr/publication/yang2020survey/ + - https://github.com/iryoku/smaa + - https://michaldrobot.com/2014/08/13/hraa-siggraph-2014-slides-available/ + - https://gpuopen.com/learn/optimized-reversible-tonemapper-for-resolve/ + - https://research.activision.com/publications/2020-03/dynamic-temporal-antialiasing-and-upsampling-in-call-of-duty + + Author: + - LVutner + + ---IX-Ray Engine--- +*/ + +#include "common.hlsli" + +struct PSInput +{ + float4 hpos : SV_POSITION; + float4 texcoord : TEXCOORD0; +}; + +Texture2D s_image_prev; //Previous rt_generic_0 +float4 scaled_screen_res; //Render resolution + +//Settings... +#define TAA_ALT_PATH //Different min-max estimation. Old path may be slower [todo: check] +#define TAA_BLEND_WEIGHT 0.925 //Blend weight +#define TAA_HISTORY_SHARPNESS 0.75 //Sharpness factor for history filtering +#define TAA_DEVIATION 1.75 //Deviation. 1.75 pix + +//From Timothy Lottes +float3 Lottes_Tonemap(float3 c) +{ + return saturate(c * rcp(1.0f + c)); +} + +float3 Lottes_Tonemap_Inverse(float3 c) +{ + c = saturate(c); + return c * rcp(1.00001f - c); +} + +static const int2 offset_3x3[9] = +{ + int2(-1, -1), + int2(0, -1), + int2(1, -1), + int2(-1, 0), + int2(0, 0), + int2(1, 0), + int2(-1, 1), + int2(0, 1), + int2(1, 1), +}; + +//From CoD presentation +float3 SMAABicubicFilter( + float3 current_top, + float3 current_bottom, + float3 current_left, + float3 current_right, + float3 current_center, + float3 previous_center, + float2 f) +{ + float2 w = 0.8 * TAA_HISTORY_SHARPNESS * (f * f - f); //hardcoded sharpness, refer to slides + float4 color = + float4(lerp(current_left, current_right, f.x), 1.0) * w.x + + float4(lerp(current_top, current_bottom, f.y), 1.0) * w.y; + + color += float4((1.0 + color.w) * previous_center - color.w * current_center, 1.0); + return color.xyz / color.w; +} + +//Cheapest way to get 3x3 neighborhood of single channel texture +void get_3x3_depth(float2 texcoord, float2 gather_texcoord, inout float d_3x3[9]) +{ + float4 d_gather0 = s_position.Gather(smp_nofilter, gather_texcoord); + float4 d_gather1 = s_position.Gather(smp_nofilter, gather_texcoord, int2(-1, -1)); + + d_3x3[0] = d_gather1.w; + d_3x3[1] = d_gather1.z; + d_3x3[2] = s_position.SampleLevel(smp_nofilter, texcoord, 0, int2(1, -1)).x; + d_3x3[3] = d_gather1.x; + d_3x3[4] = d_gather0.w; //d_gather1.y overlap + d_3x3[5] = d_gather0.z; + d_3x3[6] = s_position.SampleLevel(smp_nofilter, texcoord, 0, int2(-1, 1)).x; + d_3x3[7] = d_gather0.x; + d_3x3[8] = d_gather0.y; +} + +//SM_5 path, we save 1 sample +#ifdef SM_5 +void get_3x3_color(float2 texcoord, float2 gather_texcoord, inout float3 c_3x3[9]) +{ + float4 c_gather0_r = s_image.GatherRed(smp_nofilter, gather_texcoord); + float4 c_gather0_g = s_image.GatherGreen(smp_nofilter, gather_texcoord); + float4 c_gather0_b = s_image.GatherBlue(smp_nofilter, gather_texcoord); + + c_3x3[0] = s_image.SampleLevel(smp_nofilter, texcoord, 0, int2(-1, -1)).xyz; + c_3x3[1] = s_image.SampleLevel(smp_nofilter, texcoord, 0, int2(0, -1)).xyz; + c_3x3[2] = s_image.SampleLevel(smp_nofilter, texcoord, 0, int2(1, -1)).xyz; + c_3x3[3] = s_image.SampleLevel(smp_nofilter, texcoord, 0, int2(-1, 0)).xyz; + c_3x3[4] = float3(c_gather0_r.w, c_gather0_g.w, c_gather0_b.w); + c_3x3[5] = float3(c_gather0_r.z, c_gather0_g.z, c_gather0_b.z); + c_3x3[6] = s_image.SampleLevel(smp_nofilter, texcoord, 0, int2(-1, 1)).xyz; + c_3x3[7] = float3(c_gather0_r.x, c_gather0_g.x, c_gather0_b.x); + c_3x3[8] = float3(c_gather0_r.y, c_gather0_g.y, c_gather0_b.y); +} +#endif + +float4 main(PSInput I) : SV_Target +{ + //https://wojtsterna.blogspot.com/2018/02/directx-11-hlsl-gatherred.html + float2 gather_texcoord = I.texcoord.xy + scaled_screen_res.zw * 0.5; + + //Fetch 3x3 depth neighborhood + float d_3x3[9]; + get_3x3_depth(I.texcoord.xy, gather_texcoord, d_3x3); + + //Fetch 3x3 color neighborhood + float3 c_3x3[9]; + #ifdef SM_5 + get_3x3_color(I.texcoord.xy, gather_texcoord, c_3x3); + #endif + + int2 depth_offset = int2(0, 0); + float depth_closest = 1.0; + + #ifdef TAA_ALT_PATH + float3 c_m = (0.0).xxx; + float3 c_m2 = (0.0).xxx; + #endif + + [unroll] + for (int i = 0; i < 9; i++) + { + #ifdef SM_5 + c_3x3[i] = Lottes_Tonemap(c_3x3[i]); + #else + int2 offset_hpos = clamp(I.hpos.xy + offset_3x3[i], 0, scaled_screen_res.xy - 1); + c_3x3[i] = Lottes_Tonemap(s_image[offset_hpos].xyz); + #endif + + //Accumulate moments + #ifdef TAA_ALT_PATH + c_m += c_3x3[i] * (1.0 / 9.0); + c_m2 += c_3x3[i] * c_3x3[i] * (1.0 / 9.0); + #endif + + float sampled_depth = d_3x3[i]; + + //Find closest depth. Sign and initial value should be changed for reverse-z + if(sampled_depth < depth_closest) + { + depth_closest = sampled_depth; + depth_offset = offset_3x3[i]; + } + } + + //Get min and max color of 3x3 neighborhood + #ifdef TAA_ALT_PATH + //1.75 is for stability + float3 c_stddev = sqrt(max(c_m2 - c_m * c_m, 0.0)); + float3 c_min = c_m - c_stddev * TAA_DEVIATION; + float3 c_max = c_m + c_stddev * TAA_DEVIATION; + #else + //Soft window + float3 c_min = min(c_3x3[0], min(c_3x3[1], min(c_3x3[2], min(c_3x3[3], min(c_3x3[4], min(c_3x3[5], min(c_3x3[6], min(c_3x3[7], c_3x3[8])))))))); + c_min += min(c_3x3[1], min(c_3x3[3], min(c_3x3[4], min(c_3x3[5], c_3x3[7])))); + c_min *= 0.5; + + float3 c_max = max(c_3x3[0], max(c_3x3[1], max(c_3x3[2], max(c_3x3[3], max(c_3x3[4], max(c_3x3[5], max(c_3x3[6], max(c_3x3[7], c_3x3[8])))))))); + c_max += max(c_3x3[1], max(c_3x3[3], max(c_3x3[4], max(c_3x3[5], c_3x3[7])))); + c_max *= 0.5; + #endif + + //Fetch motion vectors and reproject + float2 motion_vector = s_velocity[clamp(I.hpos.xy + depth_offset, 0, scaled_screen_res.xy - 1)].xy * float2(0.5, -0.5); + float2 reprojected_tc = I.texcoord.xy - motion_vector; + + //Early quit + if(any(reprojected_tc != saturate(reprojected_tc))) + return float4(Lottes_Tonemap_Inverse(c_3x3[4]), 0.0); + + //Fetch previous frame + float3 p_4 = Lottes_Tonemap(s_image_prev.SampleLevel(smp_rtlinear, reprojected_tc, 0).xyz); + + //Spatio-temporal bicubic filter + p_4 = SMAABicubicFilter(c_3x3[1], c_3x3[7], c_3x3[3], c_3x3[5], c_3x3[4], p_4, frac(reprojected_tc * scaled_screen_res.xy - 0.5)); + + //Clamp history + p_4 = clamp(p_4, c_min, c_max); + + //SMAA-ish velocity weighting. Something better should be used... + float2 p_motion_vector = s_velocity[reprojected_tc * scaled_screen_res.xy].xy * float2(0.5, -0.5); + + float2 mags = (0.0).xx; + mags.x = sqrt(5.0 * length(motion_vector)); + mags.y = sqrt(5.0 * length(p_motion_vector)); + + float delta = abs(mags.x * mags.x - mags.y * mags.y) * (1.0 / 5.0); + float weight = TAA_BLEND_WEIGHT * saturate(1.0 - sqrt(delta) * 8.0); + + //Simple lerp is ok, RGBA16F lmao + float3 reprojected_color = lerp(c_3x3[4], p_4, weight); + + reprojected_color = max(reprojected_color, 0.0); + reprojected_color = Lottes_Tonemap_Inverse(reprojected_color); + + return float4(reprojected_color, 1.0); +} \ No newline at end of file diff --git a/gamedata/shaders/d3d11/tess.ds.hlsl b/gamedata/shaders/d3d11/tess.ds.hlsl new file mode 100644 index 0000000..9530a6a --- /dev/null +++ b/gamedata/shaders/d3d11/tess.ds.hlsl @@ -0,0 +1,79 @@ +#include "common.hlsli" +#include "tess.hlsli" + +[domain("tri")] +void main(in HS_CONSTANT_DATA_OUTPUT input, + in float3 uvw : SV_DomainLocation, in const OutputPatch bp, out p_bumped_new output) +{ + float minc = min(uvw.x, min(uvw.y, uvw.z)); + + [flatten] + if (minc != 0.0f) + { + [flatten] + if (((1.0f / 3.0f) - minc) > 0.01f) + { + float fK = (1.0f / 3.0f) / ((1.0f / 3.0f) - minc); + fK = minc < 0.1 ? fK : 1.0f; + uvw = lerp((1.0f / 3.0f).xxx, uvw, fK); + } + } + + float u = uvw.x; + float v = uvw.y; + float w = uvw.z; + + output.tcdh = bp[0].tcdh * w + bp[1].tcdh * v + bp[2].tcdh * u; + output.position = bp[0].position * w + bp[1].position * v + bp[2].position * u; + output.snow_mask = bp[0].snow_mask * w + bp[1].snow_mask * v + bp[2].snow_mask * u; + + float3 M1 = bp[0].M1 * w + bp[1].M1 * v + bp[2].M1 * u; + output.M1 = M1; + float3 M2 = bp[0].M2 * w + bp[1].M2 * v + bp[2].M2 * u; + output.M2 = M2; + float3 M3 = bp[0].M3 * w + bp[1].M3 * v + bp[2].M3 * u; + output.M3 = M3; + float3 Normal = normalize(float3(M1.z, M2.z, M3.z)); + float3 triPos = output.position.xyz; + +#if TESS_PN + float3 N[3] = + { + float3(bp[0].M1.z, bp[0].M2.z, bp[0].M3.z), + float3(bp[1].M1.z, bp[1].M2.z, bp[1].M3.z), + float3(bp[2].M1.z, bp[2].M2.z, bp[2].M3.z) + }; + + float3 P[3] = + { + bp[0].position.xyz, + bp[1].position.xyz, + bp[2].position.xyz + }; + + ComputePatchVertex(P, N, uvw, input.patch, output.position.xyz, Normal); +#endif + +#if TESS_HM + ComputeDisplacedVertex(output.position.xyz, Normal, output.tcdh, output.tcdh.xy * dt_params.xy); +#endif + + [flatten] + if (minc == 0) + { + output.position.xyz = triPos; + } + + output.hpos = mul(m_P, float4(output.position.xyz, 1)); + + output.hpos_curr = bp[0].hpos_curr * w + bp[1].hpos_curr * v + bp[2].hpos_curr * u; + output.hpos_old = bp[0].hpos_old * w + bp[1].hpos_old * v + bp[2].hpos_old * u; + +#if 0 + output.hpos_curr = mul(m_P, float4(output.position.xyz, 1.0)); + output.hpos_old = mul(m_VP_old, float4(mul(m_invV, float4(output.position.xyz, 1.0)).xyz, 1.0)); +#endif + + output.hpos.xy += m_taa_jitter.xy * output.hpos.w; +} + diff --git a/gamedata/shaders/d3d11/tess.hlsli b/gamedata/shaders/d3d11/tess.hlsli new file mode 100644 index 0000000..9edd0fc --- /dev/null +++ b/gamedata/shaders/d3d11/tess.hlsli @@ -0,0 +1,113 @@ +#ifndef TESS_H_INCLUDED +#define TESS_H_INCLUDED + +// Output patch constant data. +struct PNPatch +{ + // Geometry cubic control points (excluding corners) + float3 f3B210 : POSITION3; + float3 f3B120 : POSITION4; + float3 f3B021 : POSITION5; + float3 f3B012 : POSITION6; + float3 f3B102 : POSITION7; + float3 f3B201 : POSITION8; + float3 f3B111 : CENTER; + + // Normal quadratic control points (excluding corners) + float3 f3N110 : NORMAL3; + float3 f3N011 : NORMAL4; + float3 f3N101 : NORMAL5; +}; + +struct HS_CONSTANT_DATA_OUTPUT +{ + float Edges[3] : SV_TessFactor; + float Inside : SV_InsideTessFactor; +#ifdef TESS_PN + PNPatch patch; +#endif +}; + +float triLOD; + +void ComputeTessFactor(out float Edges[3] : SV_TessFactor, out float Inside : SV_InsideTessFactor) +{ + Edges[0] = Edges[1] = Edges[2] = triLOD; + Inside = triLOD; +} + +void ComputePNPatch(float3 P[3], float3 N[3], out PNPatch patch) +{ + // Compute the cubic geometry control points + // Edge control points + patch.f3B210 = (2.0f * P[0].xyz + P[1].xyz - dot(P[1].xyz - P[0].xyz, N[0]) * N[0]) / 3.0f; + patch.f3B120 = (2.0f * P[1].xyz + P[0].xyz - dot(P[0].xyz - P[1].xyz, N[1]) * N[1]) / 3.0f; + patch.f3B021 = (2.0f * P[1].xyz + P[2].xyz - dot(P[2].xyz - P[1].xyz, N[1]) * N[1]) / 3.0f; + patch.f3B012 = (2.0f * P[2].xyz + P[1].xyz - dot(P[1].xyz - P[2].xyz, N[2]) * N[2]) / 3.0f; + patch.f3B102 = (2.0f * P[2].xyz + P[0].xyz - dot(P[0].xyz - P[2].xyz, N[2]) * N[2]) / 3.0f; + patch.f3B201 = (2.0f * P[0].xyz + P[2].xyz - dot(P[2].xyz - P[0].xyz, N[0]) * N[0]) / 3.0f; + + // Center control point + float3 f3E = (patch.f3B210 + patch.f3B120 + patch.f3B021 + patch.f3B012 + patch.f3B102 + patch.f3B201) / 6.0f; + float3 f3V = (P[0].xyz + P[1].xyz + P[2].xyz) / 3.0f; + patch.f3B111 = f3E + ((f3E - f3V) / 2.0f); + + // Compute the quadratic normal control points, and rotate into world space + float fV12 = 2.0f * dot(P[1].xyz - P[0].xyz, N[0] + N[1]) / dot(P[1].xyz - P[0].xyz, P[1].xyz - P[0].xyz); + patch.f3N110 = normalize(N[0] + N[1] - fV12 * (P[1].xyz - P[0].xyz)); + float fV23 = 2.0f * dot(P[2].xyz - P[1].xyz, N[1] + N[2]) / dot(P[2].xyz - P[1].xyz, P[2].xyz - P[1].xyz); + patch.f3N011 = normalize(N[1] + N[2] - fV23 * (P[2].xyz - P[1].xyz)); + float fV31 = 2.0f * dot(P[0].xyz - P[2].xyz, N[2] + N[0]) / dot(P[0].xyz - P[2].xyz, P[0].xyz - P[2].xyz); + patch.f3N101 = normalize(N[2] + N[0] - fV31 * (P[0].xyz - P[2].xyz)); +} + +void ComputePatchVertex(float3 P[3], float3 N[3], float3 uvw, in PNPatch patch, out float3 Pos, out float3 Norm) +{ + float u = uvw.y; + float v = uvw.x; + float w = uvw.z; + + Pos = P[0] * w * w * w + + P[1] * u * u * u + + P[2] * v * v * v + + patch.f3B210 * 3.0f * w * w * u + + patch.f3B120 * 3.0f * w * u * u + + patch.f3B201 * 3.0f * w * w * v + + patch.f3B021 * 3.0f * u * u * v + + patch.f3B102 * 3.0f * w * v * v + + patch.f3B012 * 3.0f * u * v * v + + patch.f3B111 * 6.0f * w * u * v; + + // Compute normal from quadratic control points and barycentric coords + Norm = N[0] * w * w + + N[1] * u * u + + N[2] * v * v + + patch.f3N110 * w * u + + patch.f3N011 * u * v + + patch.f3N101 * w * v; +} + +sampler smp_bump_ds; +Texture2D s_tbump; +Texture2D s_tbumpX; +Texture2D s_tdetailBumpX; + +void ComputeDisplacedVertex(inout float3 P, float3 N, float2 tc, float2 tcd) +{ +#ifdef USE_TDETAIL + float4 Nu = s_tbump.SampleLevel(smp_bump_ds, tc, 0.0f); + float4 NuE = s_tbumpX.SampleLevel(smp_bump_ds, tc, 0.0f); + + float3 Ne = Nu.wzy + NuE.xyz - 1.0f; + float height = NuE.w; + + #ifdef USE_TDETAIL_BUMP + float4 NDetailX = s_tdetailBumpX.SampleLevel(smp_bump_ds, tcd, 0.0f); + height += 0.2f * (NDetailX.w - 0.5f); + #endif + + P += N * height * 0.07f; +#endif +} + +#endif diff --git a/gamedata/shaders/d3d11/tess.hs.hlsl b/gamedata/shaders/d3d11/tess.hs.hlsl new file mode 100644 index 0000000..92ecc54 --- /dev/null +++ b/gamedata/shaders/d3d11/tess.hs.hlsl @@ -0,0 +1,60 @@ +#include "common.hlsli" +#include "tess.hlsli" + +void PatchConstantsHS(in InputPatch ip, in uint PatchID : SV_PrimitiveID, out HS_CONSTANT_DATA_OUTPUT Output) +{ + ComputeTessFactor(Output.Edges, Output.Inside); + +#ifdef TESS_PN + float3 N[3] = + { + normalize(float3(ip[0].M1.z, ip[0].M2.z, ip[0].M3.z)), + normalize(float3(ip[1].M1.z, ip[1].M2.z, ip[1].M3.z)), + normalize(float3(ip[2].M1.z, ip[2].M2.z, ip[2].M3.z)) + }; + + float3 P[3] = + { + ip[0].position.xyz, + ip[1].position.xyz, + ip[2].position.xyz + }; + + ComputePNPatch(P, N, Output.patch); + + #ifndef TESS_HM + bool doDiscard = (N[0].z > 0.1f) && (N[1].z > 0.1f) && (N[2].z > 0.1f) && + (Output.patch.f3N110.z > 0.1f) && (Output.patch.f3N011.z > 0.1f) && (Output.patch.f3N101.z > 0.1f) && + (P[0].z > 5.0f) && (P[1].z > 5.0f) && (P[2].z > 5.0f); + + if (doDiscard) + { + Output.Edges[0] = Output.Edges[1] = Output.Edges[2] = Output.Inside = -1; + } + #endif +#endif +} + +[domain("tri")] +[partitioning("pow2")] +[outputtopology("triangle_ccw")] +[outputcontrolpoints(3)] +[patchconstantfunc("PatchConstantsHS")] +p_bumped_new main(in InputPatch ip, in uint i : SV_OutputControlPointID, in uint PatchID : SV_PrimitiveID) +{ + p_bumped_new ouput; + + ouput.tcdh = ip[i].tcdh; + ouput.position = ip[i].position; + ouput.M1 = ip[i].M1; + ouput.M2 = ip[i].M2; + ouput.M3 = ip[i].M3; + + ouput.hpos_curr = ip[i].hpos_curr; + ouput.hpos_old = ip[i].hpos_old; + + ouput.hpos = ip[i].hpos; + ouput.snow_mask = ip[i].snow_mask; + + return ouput; +} diff --git a/gamedata/shaders/d3d11/test.gs.hlsl b/gamedata/shaders/d3d11/test.gs.hlsl new file mode 100644 index 0000000..68becc5 --- /dev/null +++ b/gamedata/shaders/d3d11/test.gs.hlsl @@ -0,0 +1,17 @@ +#include "common.hlsli" + +// Geometry +[maxvertexcount(3)] +void main(triangle v2p_TL In[3], inout TriangleStream triStream) +{ + v2p_TL Out; + + for (int v = 0; v < 3; v++) + { + Out.HPos = In[v].HPos; + Out.Tex0 = In[v].Tex0; + Out.Color = float4(0, 0, 1, 1); // swizzle vertex colour + triStream.Append(Out); + } + triStream.RestartStrip(); +} diff --git a/gamedata/shaders/d3d11/vignette.ps.hlsl b/gamedata/shaders/d3d11/vignette.ps.hlsl new file mode 100644 index 0000000..098060b --- /dev/null +++ b/gamedata/shaders/d3d11/vignette.ps.hlsl @@ -0,0 +1,9 @@ +#include "common.hlsli" + +float4 main(p_shadow I) : SV_Target +{ + float3 col = s_image.Load(int3(I.hpos.xy, 0), 0).xyz; + col *= 1.0f - saturate(distance(I.tc0, float2(0.5f, 0.5f))); + + return float4(col, 1.0f); +} diff --git a/gamedata/shaders/d3d11/water.ps.hlsl b/gamedata/shaders/d3d11/water.ps.hlsl new file mode 100644 index 0000000..d605619 --- /dev/null +++ b/gamedata/shaders/d3d11/water.ps.hlsl @@ -0,0 +1,162 @@ +#include "common.hlsli" +#include "reflections.hlsli" + +struct vf +{ + float2 tbase : TEXCOORD0; + float2 tnorm0 : TEXCOORD1; + float2 tnorm1 : TEXCOORD2; + float3 M1 : TEXCOORD3; + float3 M2 : TEXCOORD4; + float3 M3 : TEXCOORD5; + float3 v2point : TEXCOORD6; + float4 tctexgen : TEXCOORD7; + float3 pos : TEXCOORD8; + float4 c0 : COLOR0; + float4 hpos : SV_POSITION; +}; + +uniform float3 water_intensity; + +Texture2D s_nmap; +TextureCube s_env0; +TextureCube s_env1; + +Texture2D s_leaves; +Texture2D s_caustic; + +float3 SpecularPhong(float3 Point, float3 Normal, float3 Light) +{ + float3 LightColor = max(0.0f, L_sun_color.xyz * 4.0f - 1.0f); + return LightColor * pow(dot(normalize(Point + Light), -Normal), 256.0); +} + +// Pixel +float4 main(vf I, float4 pos2d : SV_POSITION) : SV_Target +{ + float4 base = s_base.Sample(smp_base, I.tbase); + + float3 n0 = s_nmap.Sample(smp_base, I.tnorm0).xyz; + float3 n1 = s_nmap.Sample(smp_base, I.tnorm1).xyz; + float3 Navg = n0 + n1 - 1.0f; + Navg.z = abs(Navg.z); + + float3 Nw = normalize(mul(float3x3(I.M1, I.M2, I.M3), Navg).xyz); + + float3 envd0 = env_s0.SampleLevel(smp_rtlinear, Nw, 0).xyz; + float3 envd1 = env_s1.SampleLevel(smp_rtlinear, Nw, 0).xyz; + + float3 envd = lerp(envd0, envd1, L_ambient.w) * L_hemi_color.xyz; + float3 color = I.c0.xyz + envd * envd * I.c0.w; + base.xyz *= color; + + float3 v2point = normalize(I.v2point); + float3 vreflect = reflect(v2point, Nw); + + float fresnel = saturate(dot(vreflect, v2point)); + +#ifdef USE_SSLR_ON_WATER + float3 WaterPoint = I.tctexgen.z * float3(pos2d.xy * pos_decompression_params.zw - pos_decompression_params.xy, 1.0f); + float3 Reflect = mul((float3x3)m_V, vreflect); + + float4 sslr = ScreenSpaceLocalReflections(WaterPoint, Reflect); + + #ifdef USE_OFFSCREEN_REFLECTIONS + float4 vslr = FastViewReflections(WaterPoint, Reflect); + + float Fog = saturate(length(vslr.xyz) * fog_params.w + fog_params.x); + vslr.w *= 1.f - Fog * Fog; + + vslr.xyz = s_env.SampleLevel(smp_rtlinear, vslr.xyz, 0.0f); + vslr.xyz *= rcp(1.00001f - vslr.xyz); + #endif +#else + #ifdef USE_OFFSCREEN_REFLECTIONS + float3 Reflect = mul((float3x3)m_V, vreflect); + float4 vslr = s_env.SampleLevel(smp_rtlinear, Reflect.xyz, 0.0f); + vslr.xyz *= rcp(1.00001f - vslr.xyz); + + float Fog = saturate(vslr.w * fog_params.w + fog_params.x); + vslr.w = 1.f - Fog * Fog; + #endif +#endif + + float2 rotation = 0.0f; + sincos(L_sky_color.w, rotation.x, rotation.y); + vreflect.xz = float2(vreflect.x * rotation.y - vreflect.z * rotation.x, vreflect.x * rotation.x + vreflect.z * rotation.y); + +#ifndef USE_FULL_SKY_SPHERE + RemapVector(vreflect); +#endif + + float3 env0 = s_env0.SampleLevel(smp_rtlinear, vreflect, 0).xyz; + float3 env1 = s_env1.SampleLevel(smp_rtlinear, vreflect, 0).xyz; + + float3 env = lerp(env0, env1, L_ambient.w); + +#ifdef USE_BGRA_SKYCOLOR + env *= L_sky_color.zyx; +#else + env *= L_sky_color.xyz; +#endif + +#ifdef USE_OFFSCREEN_REFLECTIONS + env.xyz = lerp(env, PopGamma(vslr.xyz), vslr.w); +#endif + +#ifdef USE_SSLR_ON_WATER + env = lerp(env, PopGamma(sslr.xyz), sslr.w); +#endif + + float power = pow(fresnel, 5.0f); + float amount = 0.25f + 0.25f * power; + + float3 final = lerp(env * amount * 0.8f, base.xyz, base.w); + float alpha = 0.25f + 0.65f * power; + + alpha = lerp(alpha, 1.0f, base.w); + + // Igor: additional depth test +#ifdef USE_SOFT_WATER + float4 Point = GbufferGetPoint(pos2d.xy); + + float3 waterPos = Point.xyz * rcp(Point.z) * I.tctexgen.z; + float waterDepth = length(waterPos - Point.xyz) * 0.75f; + + // water fog + float3 Fc = 0.1f * water_intensity.xxx * color; + final = lerp(Fc, final, alpha); + + alpha = min(alpha, saturate(waterDepth)); + alpha = max(1.0f - exp(-4.0f * waterDepth), alpha); + + float4 leaves = s_leaves.Sample(smp_base, I.tbase); + leaves.xyz *= water_intensity.xxx * color; + leaves.w *= 1.0f - base.w; + + float calc_cos = -dot(float3(I.M1.z, I.M2.z, I.M3.z), v2point); + float calc_depth = saturate(waterDepth * calc_cos); + + float fLeavesFactor = smoothstep(0.025f, 0.05f, calc_depth); + fLeavesFactor *= smoothstep(0.1f, 0.075f, calc_depth); + float4 Light = s_accumulator.Load(int3(pos2d.xy, 0), 0); + Light *= 1.0f - base.w; + + float2 CausticTexcoord = mul(m_invV, float4(Point.xyz, 1.0f)).xz * 0.45f; + float3 Caustic = s_caustic.Sample(smp_base, CausticTexcoord).yyy; + + //LV: Subtle chromatic abberation effect + //https://x.com/XorDev/status/1831738521935360079 + Caustic += ddx(Caustic) * float3(1.25, 0.0, -1.25); + Caustic += ddy(Caustic) * float3(1.25, 0.0, -1.25); + + final += SpecularPhong(v2point, Nw, L_sun_dir_w.xyz) * Light.w; + final += Caustic * Light.xyz * 0.25f; + + final = lerp(final, leaves.xyz, leaves.w * fLeavesFactor); + alpha = max(alpha, leaves.w * fLeavesFactor); +#endif + + return PushGamma(lerp(float4(final, PopGamma(alpha)), fog_color, calc_fogging(I.pos.xyz))); +} + diff --git a/gamedata/shaders/d3d11/water.vs.hlsl b/gamedata/shaders/d3d11/water.vs.hlsl new file mode 100644 index 0000000..417c683 --- /dev/null +++ b/gamedata/shaders/d3d11/water.vs.hlsl @@ -0,0 +1,94 @@ +#include "common.hlsli" +#include "shared\waterconfig.hlsli" +#include "shared\watermove.hlsli" + +struct v_vert +{ + float4 P : POSITION; // (float,float,float,1) + float4 N : NORMAL; // (nx,ny,nz,hemi occlusion) + float4 T : TANGENT; + float4 B : BINORMAL; + float4 color : COLOR0; // (r,g,b,dir-occlusion) + int2 uv : TEXCOORD0; // (u0,v0) +}; + +struct vf +{ + float2 tbase : TEXCOORD0; // base + float2 tnorm0 : TEXCOORD1; // nm0 + float2 tnorm1 : TEXCOORD2; // nm1 + float3 M1 : TEXCOORD3; + float3 M2 : TEXCOORD4; + float3 M3 : TEXCOORD5; + float3 v2point : TEXCOORD6; + float4 tctexgen : TEXCOORD7; + float3 pos : TEXCOORD8; + float4 c0 : COLOR0; + float4 hpos : SV_POSITION; +}; + +uniform float4x4 m_texgen; + +void main(in v_vert v, out vf o) +{ + v.N = unpack_D3DCOLOR(v.N); + v.T = unpack_D3DCOLOR(v.T); + v.B = unpack_D3DCOLOR(v.B); + v.color = unpack_D3DCOLOR(v.color); + + // world + float4 P = v.P; + P = watermove(P); + + o.pos = P.xyz; + o.v2point = P.xyz - eye_position; + + o.tbase = P.xz * 0.3; // unpack_tc_base(v.uv, v.T.w, v.B.w); + o.tnorm0 = watermove_tc(o.tbase * W_DISTORT_BASE_TILE_0, P.xz, W_DISTORT_AMP_0); + o.tnorm1 = watermove_tc(o.tbase * W_DISTORT_BASE_TILE_1, P.xz, W_DISTORT_AMP_1); + + // Calculate the 3x3 transform from tangent space to eye-space + // TangentToEyeSpace = object2eye * tangent2object + // = object2eye * transpose(object2tangent) (since the inverse of a rotation is its transpose) + + float3 N = normalize(unpack_bx2(v.N.xyz)); + + float3 T = float3(-1.0f, 0.0f, 0.0f); + T = normalize(T - dot(T, N) * N); + + float3 B = cross(N, T); + + float3x3 xform = mul((float3x3)m_W, float3x3( + T.x, B.x, N.x, + T.y, B.y, N.y, + T.z, B.z, N.z)); + + // The pixel shader operates on the bump-map in [0..1] range + // Remap this range in the matrix, anyway we are pixel-shader limited :) + // ...... [ 2 0 0 0] + // ...... [ 0 2 0 0] + // ...... [ 0 0 2 0] + // ...... [-1 -1 -1 1] + // issue: strange, but it's slower :( + // issue: interpolators? dp4? VS limited? black magic? + + // Feed this transform to pixel shader + o.M1 = xform[0]; + o.M2 = xform[1]; + o.M3 = xform[2]; + + float3 L_rgb = v.color.xyz; // precalculated RGB lighting + float3 L_sun = v_sun(N) * v.color.w; // sun + float3 L_final = L_rgb + L_sun + L_ambient.xyz; + + // xform, input in world coords + o.hpos = mul(m_VP, P); + + o.c0 = float4(L_final, v.N.w); + o.hpos.xy += m_taa_jitter.xy * o.hpos.w; + + // Igor: for additional depth dest + o.tctexgen = mul(m_texgen, P); + o.tctexgen.z = mul(m_V, P).z; +} + diff --git a/gamedata/shaders/d3d11/water_puddles.ps.hlsl b/gamedata/shaders/d3d11/water_puddles.ps.hlsl new file mode 100644 index 0000000..5fcfa1e --- /dev/null +++ b/gamedata/shaders/d3d11/water_puddles.ps.hlsl @@ -0,0 +1,124 @@ +#include "common.hlsli" +#include "reflections.hlsli" + +struct PSInput +{ + float4 hpos : SV_POSITION; + float3 world_position : TEXCOORD0; +}; + +uniform float3 water_intensity; + +Texture2D s_nmap; +TextureCube s_env0; +TextureCube s_env1; + +float3 SpecularPhong(float3 Point, float3 Normal, float3 Light) +{ + float3 LightColor = max(0.0f, L_sun_color.xyz * 4.0f - 1.0f); + return LightColor * pow(dot(normalize(Point + Light), -Normal), 256.0); +} + +// Pixel +float4 main(PSInput I) : SV_Target +{ + float2 tcdh = I.world_position.xz * 0.3f; + float4 base = s_base.Sample(smp_base, tcdh); + float3 normal = s_nmap.Sample(smp_base, tcdh).xyz * 2.0 - 1.0; + + //Build cotangent frame and transform our normal to world space + float3x3 TBN = {float3(0.0, 0.0, 0.0), float3(0.0, 0.0, 0.0), float3(0.0, 1.0, 0.0)}; + + build_contangent_frame(I.world_position.xyz, TBN[2], tcdh, TBN[0], TBN[1]); + + float3 Nw = normalize(mul(TBN, normal)); + + float3 envd0 = env_s0.Sample(smp_rtlinear, Nw).xyz; + float3 envd1 = env_s1.Sample(smp_rtlinear, Nw).xyz; + + float3 envd = lerp(envd0, envd1, L_ambient.w) * L_hemi_color.xyz; + base.xyz *= envd * envd; //Ambient + + float3 v2point = normalize(I.world_position - eye_position); + float3 vreflect = reflect(v2point, Nw); + + float fresnel = saturate(dot(vreflect, v2point)); + float3 WaterPos = mul(m_V, float4(I.world_position, 1.0)).xyz; + +#ifdef USE_SSLR_ON_WATER + float3 WaterPoint = WaterPos.z * float3(I.hpos.xy * pos_decompression_params.zw - pos_decompression_params.xy, 1.0f); + float3 Reflect = mul((float3x3)m_V, vreflect); + + float4 sslr = ScreenSpaceLocalReflections(WaterPoint, Reflect); + + #ifdef USE_OFFSCREEN_REFLECTIONS + float4 vslr = FastViewReflections(WaterPoint, Reflect); + + float Fog = saturate(length(vslr.xyz) * fog_params.w + fog_params.x); + vslr.w *= 1.f - Fog * Fog; + + vslr.xyz = s_env.SampleLevel(smp_rtlinear, vslr.xyz, 0.0f); + vslr.xyz *= rcp(1.00001f - vslr.xyz); + #endif +#else + #ifdef USE_OFFSCREEN_REFLECTIONS + float3 Reflect = mul((float3x3)m_V, vreflect); + float4 vslr = s_env.SampleLevel(smp_rtlinear, Reflect.xyz, 0.0f); + vslr.xyz *= rcp(1.00001f - vslr.xyz); + + float Fog = saturate(vslr.w * fog_params.w + fog_params.x); + vslr.w = 1.f - Fog * Fog; + #endif +#endif + + float2 rotation = 0.0f; + sincos(L_sky_color.w, rotation.x, rotation.y); + vreflect.xz = float2(vreflect.x * rotation.y - vreflect.z * rotation.x, vreflect.x * rotation.x + vreflect.z * rotation.y); + +#ifndef USE_FULL_SKY_SPHERE + RemapVector(vreflect); +#endif + + float3 env0 = s_env0.Sample(smp_rtlinear, vreflect).xyz; + float3 env1 = s_env1.Sample(smp_rtlinear, vreflect).xyz; + + float3 env = lerp(env0, env1, L_ambient.w); + +#ifdef USE_BGRA_SKYCOLOR + env *= L_sky_color.zyx; +#else + env *= L_sky_color.xyz; +#endif + +#ifdef USE_OFFSCREEN_REFLECTIONS + env.xyz = lerp(env, PopGamma(vslr.xyz), vslr.w); +#endif + +#ifdef USE_SSLR_ON_WATER + env = lerp(env, PopGamma(sslr.xyz), sslr.w); +#endif + + float power = pow(fresnel, 5.0f); + float amount = 0.25f + 0.25f * power; + + float3 final = lerp(env * amount * 0.8f, base.xyz, base.w); + float alpha = 0.25f + 0.65f * power; + + alpha = lerp(alpha, 1.0f, base.w); + + // Igor: additional depth test +#ifdef USE_SOFT_WATER + float4 Point = GbufferGetPoint(I.hpos.xy); + float waterDepth = length(WaterPos.xyz - Point.xyz) * 0.75f; + + alpha = min(alpha, saturate(waterDepth)); + alpha = max(1.0f - exp(-4.0f * waterDepth), alpha); + + float4 Light = s_accumulator.Sample(smp_nofilter, I.hpos.xy * pos_decompression_params2.zw); + Light *= 1.0f - base.w; + + final += SpecularPhong(v2point, Nw, L_sun_dir_w.xyz) * Light.w; +#endif + + return PushGamma(lerp(float4(final, PopGamma(alpha)), fog_color, calc_fogging(I.world_position))); +} diff --git a/gamedata/shaders/d3d11/water_puddles.vs.hlsl b/gamedata/shaders/d3d11/water_puddles.vs.hlsl new file mode 100644 index 0000000..81872ba --- /dev/null +++ b/gamedata/shaders/d3d11/water_puddles.vs.hlsl @@ -0,0 +1,34 @@ +#include "common.hlsli" + +static const float2 quad_geometry[6] = +{ + float2(-1.0, -1.0), + float2(-1.0, 1.0), + float2(1.0, -1.0), + float2(-1.0, 1.0), + float2(1.0, 1.0), + float2(1.0, -1.0) +}; + +struct VSOutput +{ + float4 hpos : SV_POSITION; + float3 world_position : TEXCOORD0; +}; + +float puddle_constants; + +VSOutput main(uint vertex_id : SV_VertexID) +{ + VSOutput O; + + float3 vertex_position; + vertex_position.xz = quad_geometry[vertex_id]; + vertex_position.y = puddle_constants; + O.world_position = mul(m_W, float4(vertex_position, 1.0)); + + O.hpos = mul(m_VP, float4(O.world_position, 1.0)); + O.hpos.xy += m_taa_jitter.xy * O.hpos.w; + + return O; +} \ No newline at end of file diff --git a/gamedata/shaders/d3d11/waterd.ps.hlsl b/gamedata/shaders/d3d11/waterd.ps.hlsl new file mode 100644 index 0000000..22a6a91 --- /dev/null +++ b/gamedata/shaders/d3d11/waterd.ps.hlsl @@ -0,0 +1,43 @@ +#include "common.hlsli" +#include "shared\waterconfig.hlsli" + +struct vf +{ + float2 tbase : TEXCOORD0; + float2 tnorm0 : TEXCOORD1; + float2 tnorm1 : TEXCOORD2; + float3 M1 : TEXCOORD3; + float3 M2 : TEXCOORD4; + float3 M3 : TEXCOORD5; + float3 v2point : TEXCOORD6; + float4 tctexgen : TEXCOORD7; + float3 pos : TEXCOORD8; + float4 c0 : COLOR0; + float4 hpos : SV_POSITION; +}; + +Texture2D s_distort; + +// Pixel +float4 main(vf I, float4 pos2d : SV_POSITION) : SV_Target +{ + float alpha = 1.0f - s_base.Sample(smp_base, I.tbase).w; + + float2 t_d0 = s_distort.Sample(smp_base, I.tnorm0).xy; + float2 t_d1 = s_distort.Sample(smp_base, I.tnorm1).xy; + float2 distort = (t_d0 + t_d1) * 0.5f; + + +#ifdef USE_SOFT_WATER + float4 Point = GbufferGetPoint(pos2d.xy); + + float3 waterPos = Point.xyz * rcp(Point.z) * I.tctexgen.z; + float waterDepth = length(waterPos - Point.xyz) * 0.75f; + + alpha *= saturate(5.0f * waterDepth); +#endif + + float fog = 1.0f - calc_fogging(I.pos); + return float4(distort, 0.08f, alpha * fog * 0.25f); +} + diff --git a/gamedata/shaders/d3d11/wmark.vs.hlsl b/gamedata/shaders/d3d11/wmark.vs.hlsl new file mode 100644 index 0000000..79ccac9 --- /dev/null +++ b/gamedata/shaders/d3d11/wmark.vs.hlsl @@ -0,0 +1,26 @@ +#include "common.hlsli" +#include "shared\wmark.hlsli" + +struct vf +{ + float2 tc0 : TEXCOORD0; + float3 c0 : COLOR0; // c0=all lighting + float fog : FOG; + float4 hpos : SV_POSITION; +}; + +vf main(v_static v) +{ + vf o; + + float3 N = unpack_normal(v.Nh.zyx); + float4 P = wmark_shift(v.P.xyz, N); + o.hpos = mul(m_VP, P); + o.tc0 = unpack_tc_base(v.tc, v.T.w, v.B.w); + o.c0 = 0; + o.fog = 1.0f - calc_fogging(v.P.xyz); + o.hpos.xy += m_taa_jitter.xy * o.hpos.w; + + return o; +} + diff --git a/gamedata/shaders/d3d11/yuv2rgb.ps.hlsl b/gamedata/shaders/d3d11/yuv2rgb.ps.hlsl new file mode 100644 index 0000000..a95fd87 --- /dev/null +++ b/gamedata/shaders/d3d11/yuv2rgb.ps.hlsl @@ -0,0 +1,19 @@ +#include "common.hlsli" + +float4 main(float2 uv : TEXCOORD0) : SV_Target +{ + float3 YUV = s_base.Sample(smp_base, uv).xyz; + + float Y = YUV.z; + float U = YUV.y; + float V = YUV.x; + + float c = 1.16406f; + float3 _Y = float3(c, c, c) * Y; + float3 _U = float3(0, -0.390625f, +2.01562f) * U; + float3 _V = float3(+1.59765f, -0.8125f, 0) * V; + float3 _S = float3(-0.86961f, +0.53076f, -1.0786f); + + return float4(_Y + _U + _V + _S, 1); +} + diff --git a/gamedata/shaders/d3d11/zfill.lua b/gamedata/shaders/d3d11/zfill.lua new file mode 100644 index 0000000..89ee7f2 --- /dev/null +++ b/gamedata/shaders/d3d11/zfill.lua @@ -0,0 +1,15 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("particle", "particle_hard") + : sorting (3, false) + : blend (true,blend.srcalpha,blend.one) + : aref (false,0) + : zb (false,false) + : fog (false) + + shader:dx10texture ("s_base" ,t_base) + shader:dx10texture ("s_position" ,"$user$position") + + shader:dx10sampler ("smp_base") + shader:dx10sampler ("smp_nofilter") +end + diff --git a/gamedata/shaders/d3d11/zfill2.lua b/gamedata/shaders/d3d11/zfill2.lua new file mode 100644 index 0000000..4989bd2 --- /dev/null +++ b/gamedata/shaders/d3d11/zfill2.lua @@ -0,0 +1,15 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("particle", "particle_hard") + : sorting (3, false) + : blend (true,blend.one,blend.one) + : aref (false,0) + : zb (false,false) + : fog (false) + + shader:dx10texture ("s_base" ,t_base) + shader:dx10texture ("s_position" ,"$user$position") + + shader:dx10sampler ("smp_base") + shader:dx10sampler ("smp_nofilter") +end + diff --git a/gamedata/shaders/editor/accum_base.ps.hlsl b/gamedata/shaders/editor/accum_base.ps.hlsl new file mode 100644 index 0000000..72fad22 --- /dev/null +++ b/gamedata/shaders/editor/accum_base.ps.hlsl @@ -0,0 +1,51 @@ +#include "common.hlsli" +#include "lmodel.hlsli" + +////////////////////////////////////////////////////////////////////////////////////////// +// This is the basic primitive used by convex, volumetric lights +// for example spot-lights, one face of the omni lights, etc. +////////////////////////////////////////////////////////////////////////////////////////// +// following options are available to configure compilation: +// USE_LMAP +// USE_LMAPXFORM +// USE_SHADOW +////////////////////////////////////////////////////////////////////////////////////////// + +uniform float4x4 m_shadow; + +uniform sampler s_position; +uniform sampler s_normal; + +uniform float4 Ldynamic_color; +uniform float4 Ldynamic_pos; +uniform float4 Ldynamic_dir; + +float4 main(float4 tc : TEXCOORD0) : COLOR +{ + float4 _P = tex2Dproj(s_position, tc); + + if(_P.z < 0.001f) + return 0.0f; + + float4 _C = tex2Dproj(s_base, tc); + float4 _N = tex2Dproj(s_normal, tc); + + _N.xyz = normalize(_N.xyz); + + // ----- light-model + float4 light = plight_local(_P.w, _P, _N, Ldynamic_pos, Ldynamic_pos.w); + + // ----- shadow + float4 P4 = float4(_P.xyz, 1.0f); + float4 PS = mul(m_shadow, P4); + +#ifdef USE_LMAP + light *= tex2Dlod(s_lmap, float4(PS.xy / PS.w, 0.0f, 0.0f)); +#endif + + float4 color = Ldynamic_color * light; + color.xyz = color.xyz * _C.xyz + color.w * _C.w; + + return color; +} + diff --git a/gamedata/shaders/editor/accum_mask.vs.hlsl b/gamedata/shaders/editor/accum_mask.vs.hlsl new file mode 100644 index 0000000..c3c6826 --- /dev/null +++ b/gamedata/shaders/editor/accum_mask.vs.hlsl @@ -0,0 +1,8 @@ +#include "common.hlsli" + +float4 main(float4 P : POSITION) : POSITION +{ + return mul(m_WVP, P); +} + + diff --git a/gamedata/shaders/editor/accum_volume.vs.hlsl b/gamedata/shaders/editor/accum_volume.vs.hlsl new file mode 100644 index 0000000..c0a2f69 --- /dev/null +++ b/gamedata/shaders/editor/accum_volume.vs.hlsl @@ -0,0 +1,18 @@ +#include "common.hlsli" + +struct v2p +{ + float4 hpos : POSITION; // Clip-space position (for rasterization) + float4 tc : TEXCOORD0; +}; + +uniform float4x4 m_texgen; + +// Vertex +v2p main(float4 P : POSITION) +{ + v2p O; + O.hpos = mul(m_WVP, P); + O.tc = mul(m_texgen, P); + return O; +} \ No newline at end of file diff --git a/gamedata/shaders/editor/common.hlsli b/gamedata/shaders/editor/common.hlsli new file mode 100644 index 0000000..da87374 --- /dev/null +++ b/gamedata/shaders/editor/common.hlsli @@ -0,0 +1,247 @@ +#ifndef COMMON_H +#define COMMON_H + +#include "shared\common.hlsli" + +uniform float4 L_material; // per object, xyz=sun,w=hemi +uniform float4 L_dynamic_props; // per object, xyz=sun,w=hemi +uniform float4 L_dynamic_color; // dynamic light color (rgb1) - spot/point +uniform float4 L_dynamic_pos; // dynamic light pos+1/range(w) - spot/point +uniform float4x4 L_dynamic_xform; + +uniform float4x4 m_plmap_xform; +uniform float4 m_plmap_clamp[2]; // 0.w = factor +uniform sampler s_material; + +#define def_aref 0.5f +#define def_gloss 0.04f + +#ifndef xmaterial +#define xmaterial 0.25f +#endif + +uniform float4 is_lighting_enable; + +float calc_fogging(float3 pos) +{ + return saturate(length(pos - eye_position) * fog_params.w + fog_params.x); +} + +float2 calc_detail(float3 w_pos) +{ + float dtl = distance(w_pos, eye_position) * dt_params.w; + dtl = min(dtl * dtl, 1.0f); + float dt_mul = 1.0f - dtl; // dt* [1 .. 0 ] + float dt_add = 0.5f * dtl; // dt+ [0 .. 0.5] + return float2(dt_mul, dt_add); +} + +float3 calc_reflection(float3 pos_w, float3 norm_w) +{ + return reflect(normalize(pos_w - eye_position), norm_w); +} + +float4 calc_spot(out float4 tc_lmap, out float2 tc_att, float4 w_pos, float3 w_norm) +{ + float4 s_pos = mul(L_dynamic_xform, w_pos); + tc_lmap = s_pos.xyww; // projected in ps/ttf + tc_att = s_pos.z; // z=distance * (1/range) + float3 L_dir_n = normalize(w_pos - L_dynamic_pos.xyz); + float L_scale = dot(w_norm, -L_dir_n); + return L_dynamic_color * L_scale * saturate(calc_fogging(w_pos)); +} + +float4 calc_point(out float2 tc_att0, out float2 tc_att1, float4 w_pos, float3 w_norm) +{ + float3 L_dir_n = normalize(w_pos - L_dynamic_pos.xyz); + float L_scale = dot(w_norm, -L_dir_n); + float3 L_tc = (w_pos - L_dynamic_pos.xyz) * L_dynamic_pos.w + .5f; // tc coords + tc_att0 = L_tc.xz; + tc_att1 = L_tc.xy; + return L_dynamic_color * L_scale * saturate(calc_fogging(w_pos)); +} + +float3 calc_sun(float3 norm_w) +{ + return L_sun_color * max(dot((norm_w), -L_sun_dir_w), 0); +} + +float3 calc_model_hemi(float3 norm_w) +{ + return (norm_w.y * 0.5 + 0.5) * L_dynamic_props.w * L_hemi_color; +} + +float3 calc_model_lq_lighting(float3 norm_w) +{ + return calc_model_hemi(norm_w) + L_ambient + L_dynamic_props.xyz * calc_sun(norm_w); +} + +float3 _calc_model_hemi(float3 norm_w) +{ + return max(0, norm_w.y) * .2 * L_hemi_color; +} + +float3 _calc_model_lq_lighting(float3 norm_w) +{ + return calc_model_hemi(norm_w) + L_ambient + .5 * calc_sun(norm_w); +} + +float4 calc_model_lmap(float3 pos_w) +{ + float3 pos_wc = clamp(pos_w, m_plmap_clamp[0], m_plmap_clamp[1]); // clamp to BBox + float4 pos_w4c = float4(pos_wc, 1); + float4 plmap = mul(m_plmap_xform, pos_w4c); // calc plmap tc + return plmap.xyww; +} + +struct v_lmap +{ + float4 P : POSITION; // (float,float,float,1) + float4 N : NORMAL; // (nx,ny,nz,hemi occlusion) + float4 T : TANGENT; + float4 B : BINORMAL; + float2 uv0 : TEXCOORD0; // (base) + float2 uv1 : TEXCOORD1; // (lmap/compressed) +}; + +struct v_vert +{ + float4 P : POSITION; // (float,float,float,1) + float4 N : NORMAL; // (nx,ny,nz,hemi occlusion) + float4 T : TANGENT; + float4 B : BINORMAL; + float4 color : COLOR0; // (r,g,b,dir-occlusion) + float2 uv : TEXCOORD0; // (u0,v0) +}; + +struct v_editor +{ + float4 P : POSITION; + float2 tc : TEXCOORD0; + float3 N : NORMAL; + float4 color : COLOR0; +}; + +struct v_model +{ + float4 P : POSITION; // (float,float,float,1) + float3 N : NORMAL; // (nx,ny,nz) + float3 T : TANGENT; // (nx,ny,nz) + float3 B : BINORMAL; // (nx,ny,nz) + float2 tc : TEXCOORD0; // (u,v) +}; + +struct v_detail +{ + float4 pos : POSITION; // (float,float,float,1) + int4 misc : TEXCOORD0; // (u(Q),v(Q),frac,matrix-id) +}; + +struct vf_spot +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; // base + float4 tc1 : TEXCOORD1; // lmap, projected + float2 tc2 : TEXCOORD2; // att + clipper + float4 color : COLOR0; +}; + +struct vf_point +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; // base + float2 tc1 : TEXCOORD1; // att1 + clipper + float2 tc2 : TEXCOORD2; // att2 + clipper + float4 color : COLOR0; +}; + +struct p_bumped_new +{ + float4 hpos : POSITION; + + float4 tcdh : TEXCOORD0; // Texture coordinates, sun_occlusion || lm-hemi + float4 position : TEXCOORD1; // position + hemi + float3 M1 : TEXCOORD2; // nmap 2 eye - 1 + float3 M2 : TEXCOORD3; // nmap 2 eye - 2 + float3 M3 : TEXCOORD4; // nmap 2 eye - 3 +}; + +uniform sampler2D s_base; +uniform samplerCUBE s_env; +uniform sampler2D s_lmap; +uniform sampler2D s_hemi; +uniform sampler2D s_att; +uniform sampler2D s_detail; + +#define def_distort float(0.05f) // we get -0.5 .. 0.5 range, this is -512 .. 512 for 1024, so scale it + +float3 v_hemi(float3 n) +{ + return L_hemi_color /* *(.5f + .5f*n.y) */; +} + +float3 v_hemi_wrap(float3 n, float w) +{ + return L_hemi_color /* *(w + (1-w)*n.y) */; +} + +float3 v_sun(float3 n) +{ + return L_sun_color * max(0, dot(n, -L_sun_dir_w)); +} + +float3 v_sun_wrap(float3 n, float w) +{ + return L_sun_color * (w + (1 - w) * dot(n, -L_sun_dir_w)); +} + +float3 p_hemi(float2 tc) +{ + // float3 t_lmh = tex2D (s_hemi, tc); + // return dot (t_lmh,1.h/3.h); + float4 t_lmh = tex2D(s_hemi, tc); + return t_lmh.a; +} + +struct f_editor_gbuffer +{ + float4 Color : COLOR0; + +#ifndef FORWARD_ONLY + float4 Albedo : COLOR1; + float4 Normal : COLOR2; + float4 PointZ : COLOR3; +#endif +}; + +void cotangent_frame(inout p_bumped_new O) +{ + // Get edge vectors of the pixel triangle + float3 dp1 = ddx(O.position.xyz); + float3 dp2 = ddy(O.position.xyz); + + float2 duv1 = ddx(O.tcdh.xy); + float2 duv2 = ddy(O.tcdh.xy); + + float3 N = normalize(O.M1); + + // Solve the linear system + float3 dp2perp = cross(dp2, N); + float3 dp1perp = cross(N, dp1); + + float3 T = normalize(dp2perp * duv1.x + dp1perp * duv2.x); + float3 B = normalize(dp2perp * duv1.y + dp1perp * duv2.y); + + float3x3 xform = float3x3( + T.x, B.x, N.x, + T.y, B.y, N.y, + T.z, B.z, N.z + ); + + O.M1 = xform[0]; + O.M2 = xform[1]; + O.M3 = xform[2]; +} + +#endif // COMMON_H + diff --git a/gamedata/shaders/editor/deffer_base.ps.hlsl b/gamedata/shaders/editor/deffer_base.ps.hlsl new file mode 100644 index 0000000..1e25613 --- /dev/null +++ b/gamedata/shaders/editor/deffer_base.ps.hlsl @@ -0,0 +1,64 @@ +#include "common.hlsli" +#include "sload.hlsli" +#include "lmodel.hlsli" +#include "hmodel.hlsli" + +void main(p_bumped_new I, out f_editor_gbuffer O) +{ + if(is_lighting_enable.x < 0.5f) { + O.Color = tex2D(s_base, I.tcdh.xy); + +#ifdef USE_AREF + clip(O.Color.w - def_aref); +#endif + +#ifndef FORWARD_ONLY + O.Normal = float4(I.M1.xyz, def_gloss); + O.Albedo = float4(O.Color.xyz, def_gloss); + O.PointZ = float4(I.position.xyz, xmaterial); +#endif + + return; + } + + cotangent_frame(I); + XrayMaterial M; + + M.Sun = I.tcdh.w; + M.Hemi = I.tcdh.z; + M.Point = I.position.xyz; + + SloadNew(I, M); + +#ifdef USE_AREF + clip(M.Color.w - def_aref); +#endif + + M.Normal = mul(float3x3(I.M1, I.M2, I.M3), M.Normal); + M.Normal = normalize(M.Normal); + + M.Sun = saturate(M.Sun * 2.0f); + M.Color.xyz = saturate(M.Color.xyz); + float MaterialID = xmaterial; + + float Gloss = 1.0f - M.Roughness; + +#ifndef FORWARD_ONLY + O.Albedo = float4(M.Color.xyz, Gloss); + O.Normal = float4(M.Normal.xyz, Gloss); + O.PointZ = float4(M.Point.xyz, MaterialID); +#endif + + float4 Light = float4(L_sun_color, 1.0f) * M.Sun * plight_infinity(MaterialID, M.Point, M.Normal, L_sun_dir_e); + float3 Diffuse, Specular; + + hmodel(Diffuse, Specular, MaterialID, M.Hemi, Gloss, M.Point, M.Normal); + + O.Color = float4(Diffuse + Light.xyz, M.Color.w); + O.Color.xyz *= M.Color.xyz; + O.Color.xyz += Light.w * Gloss + Specular; + + float fog = saturate(length(M.Point) * fog_params.w + fog_params.x); + O.Color = lerp(O.Color, fog_color, fog); +} + diff --git a/gamedata/shaders/editor/deffer_base.vs.hlsl b/gamedata/shaders/editor/deffer_base.vs.hlsl new file mode 100644 index 0000000..788d6d8 --- /dev/null +++ b/gamedata/shaders/editor/deffer_base.vs.hlsl @@ -0,0 +1,25 @@ +#ifndef SKIN_NONE +#include "deffer_model.vs.hlsl" +#else + +#include "common.hlsli" + +void main(in v_editor I, out p_bumped_new O) +{ + float3 Pe = mul(m_WV, I.P); + + O.tcdh = float4(I.tc.xy, 0.7f, 0.5f); + O.position = float4(Pe, 1.0f); + + float3 N = normalize(mul(m_W, I.N)); + O.tcdh.z = N.y * 0.3f + 0.5f; + N = normalize(mul(m_V, N)); + + O.M1 = N; + O.M2 = N; + O.M3 = N; + + O.hpos = mul(m_WVP, I.P); +} + +#endif \ No newline at end of file diff --git a/gamedata/shaders/editor/deffer_detail.vs.hlsl b/gamedata/shaders/editor/deffer_detail.vs.hlsl new file mode 100644 index 0000000..8cc9230 --- /dev/null +++ b/gamedata/shaders/editor/deffer_detail.vs.hlsl @@ -0,0 +1,63 @@ +#include "common.hlsli" + +uniform float4 consts; + +uniform float4 wave; +uniform float4 dir2D; + +uniform float2x4 array[50]; + +float3x3 setMatrix (float3 hpb) +{ + + float _ch, _cp, _cb, _sh, _sp, _sb, _cc, _cs, _sc, _ss; + + sincos(hpb.x, _sh, _ch); + sincos(hpb.y, _sp, _cp); + sincos(hpb.z, _sb, _cb); + + _cc = _ch*_cb; _cs = _ch*_sb; _sc = _sh*_cb; _ss = _sh*_sb; + + return float3x3(_cc-_sp*_ss, _sp*_sc+_cs, -_cp*_sh, + -_cp*_sb, _cp*_cb, _sp, + _sp*_cs+_sc, _ss-_sp*_cc, _cp*_ch); +}; + +void main(in v_detail I, out p_bumped_new O) +{ + int i = I.misc.w; + float2x4 mm = array[i]; + + float3x3 mmhpb = setMatrix(mm[0].xyz); + float3 posi = float3(mm[1].xyz); + + float scale = mm[0].w; + float4 m0 = float4(mmhpb[0]*scale, posi.x); + float4 m1 = float4(mmhpb[1]*scale, posi.y); + float4 m2 = float4(mmhpb[2]*scale, posi.z); + + float4 pos; + pos.x = dot(m0, I.pos); + pos.y = dot(m1, I.pos); + pos.z = dot(m2, I.pos); + pos.w = 1.0f; + + float3 Pe = mul(m_WV, pos); + float2 tc = I.misc.xy * consts.xy; + + float3 N; + N.x = pos.x - m0.w; + N.y = pos.y - m1.w + 0.75f; + N.z = pos.z - m2.w; + + O.tcdh = float4(tc.xy, 0.7, 0.5); + O.position = float4(Pe, 1.0f); + + N = normalize(mul(m_WV, N)); + + O.M1 = N; + O.M2 = N; + O.M3 = N; + + O.hpos = mul(m_WVP, pos); +} diff --git a/gamedata/shaders/editor/deffer_impl.ps.hlsl b/gamedata/shaders/editor/deffer_impl.ps.hlsl new file mode 100644 index 0000000..fed137e --- /dev/null +++ b/gamedata/shaders/editor/deffer_impl.ps.hlsl @@ -0,0 +1,142 @@ +#include "common.hlsli" +#include "sload.hlsli" +#include "lmodel.hlsli" +#include "hmodel.hlsli" + +// void main(p_bumped_new I, out f_editor_gbuffer O) +// { + // cotangent_frame(I); + // XrayMaterial M; + + // M.Sun = I.tcdh.w; + // M.Hemi = I.tcdh.z; + // M.Point = I.position.xyz; + + // SloadNew(I, M); + +// #ifdef USE_AREF + // clip(M.Color.w - def_aref); +// #endif + + // M.Normal = mul(float3x3(I.M1, I.M2, I.M3), M.Normal); + // M.Normal = normalize(M.Normal); + + // M.Sun = saturate(M.Sun * 2.0f); + // M.Color.xyz = saturate(M.Color.xyz); + // float MaterialID = 0.25f; + + // float Gloss = 1.0f - M.Roughness; + +// #ifndef FORWARD_ONLY + // O.Albedo = float4(M.Color.xyz, Gloss); + // O.Normal = float4(M.Normal.xyz, Gloss); + // O.PointZ = float4(M.Point.xyz, MaterialID); +// #endif + + // float4 Light = float4(L_sun_color, 1.0f) * M.Sun * plight_infinity(MaterialID, M.Point, M.Normal, L_sun_dir_e); + // float3 Diffuse, Specular; + + // hmodel(Diffuse, Specular, MaterialID, M.Hemi, Gloss, M.Point, M.Normal); + + // O.Color = float4(Diffuse + Light.xyz, M.Color.w); + // O.Color.xyz *= M.Color.xyz; + // O.Color.xyz += Light.w * Gloss + Specular; + + // float fog = saturate(length(M.Point) * fog_params.w + fog_params.x); + // O.Color = lerp(O.Color, fog_color, fog); +// } + +uniform sampler2D s_mask; + +uniform sampler2D s_dt_r; +uniform sampler2D s_dt_g; +uniform sampler2D s_dt_b; +uniform sampler2D s_dt_a; + +uniform sampler2D s_dn_r; +uniform sampler2D s_dn_g; +uniform sampler2D s_dn_b; +uniform sampler2D s_dn_a; + +void main(p_bumped_new I, out f_editor_gbuffer O) +{ + if(is_lighting_enable.x < 0.5f) { + O.Color = tex2D(s_base, I.tcdh.xy); + + float2 tcdbump = I.tcdh.xy * dt_params.xy; + float4 Detail = tex2D(s_detail, tcdbump); + + O.Color.xyz *= Detail.xyz * 2.0f; + +#ifndef FORWARD_ONLY + O.Normal = float4(I.M1.xyz, def_gloss); + O.Albedo = float4(O.Color.xyz, def_gloss); + O.PointZ = float4(I.position.xyz, xmaterial); +#endif + + return; + } + + cotangent_frame(I); + XrayMaterial M; + + M.Sun = I.tcdh.w; + M.Hemi = I.tcdh.z; + M.Point = I.position.xyz; + + M.Color = tex2D(s_base, I.tcdh.xy); + + float4 Mask = tex2D(s_mask, I.tcdh.xy); + Mask /= dot(Mask, 1.0f); + + float2 tcdbump = I.tcdh.xy * dt_params.xy; + + float3 Detail_R = tex2D(s_dt_r, tcdbump).xyz * Mask.x; + float3 Detail_G = tex2D(s_dt_g, tcdbump).xyz * Mask.y; + float3 Detail_B = tex2D(s_dt_b, tcdbump).xyz * Mask.z; + float3 Detail_A = tex2D(s_dt_a, tcdbump).xyz * Mask.w; + float3 Detail = Detail_R + Detail_G + Detail_B + Detail_A; + + float4 Normal_R = tex2D(s_dn_r, tcdbump) * Mask.x; + float4 Normal_G = tex2D(s_dn_g, tcdbump) * Mask.y; + float4 Normal_B = tex2D(s_dn_b, tcdbump) * Mask.z; + float4 Normal_A = tex2D(s_dn_a, tcdbump) * Mask.w; + + float3 Normal = Normal_R.wzy + Normal_G.wzy + Normal_B.wzy + Normal_A.wzy - 0.5; + Normal.z *= 0.5f; + + M.Roughness = saturate(1.0f - Normal_R.x + Normal_G.x + Normal_B.x + Normal_A.x); + M.Color.xyz *= Detail * 2.0f; + + M.Metalness = 0.0f; + M.SSS = 0.0f; + M.AO = 1.0f; + + M.Normal = mul(float3x3(I.M1, I.M2, I.M3), Normal); + M.Normal = normalize(M.Normal); + + M.Sun = saturate(M.Sun * 2.0f); + M.Color.xyz = saturate(M.Color.xyz); + + float MaterialID = 0.25f; + float Gloss = 1.0f - M.Roughness; + +#ifndef FORWARD_ONLY + O.Albedo = float4(M.Color.xyz, Gloss); + O.Normal = float4(M.Normal.xyz, Gloss); + O.PointZ = float4(M.Point.xyz, MaterialID); +#endif + + float4 Light = float4(L_sun_color, 1.0f) * M.Sun * plight_infinity(MaterialID, M.Point, M.Normal, L_sun_dir_e); + float3 Diffuse, Specular; + + hmodel(Diffuse, Specular, MaterialID, M.Hemi, Gloss, M.Point, M.Normal); + + O.Color = float4(Diffuse + Light.xyz, M.Color.w); + O.Color.xyz *= M.Color.xyz; + O.Color.xyz += Light.w * Gloss + Specular; + + float fog = saturate(length(M.Point) * fog_params.w + fog_params.x); + O.Color = lerp(O.Color, fog_color, fog); +} + diff --git a/gamedata/shaders/editor/deffer_model.vs.hlsl b/gamedata/shaders/editor/deffer_model.vs.hlsl new file mode 100644 index 0000000..706f32b --- /dev/null +++ b/gamedata/shaders/editor/deffer_model.vs.hlsl @@ -0,0 +1,50 @@ +#include "common.hlsli" +#include "skin.hlsli" + +void skinned_main(in v_model I, out p_bumped_new O) +{ + float3 Nw = normalize(mul((float3x3)m_W, (float3)I.N)); + float hemi_val = Nw.y * 0.3f + 0.5f; + float3 Pe = mul(m_WV, I.P); + + O.tcdh = float4(I.tc.xy, hemi_val, 0.5f); + O.position = float4(Pe, 1.0f); + + O.M1 = mul(m_WV, I.N.xyz * 2.0f); + O.M2 = mul(m_WV, I.T.xyz * 2.0f); + O.M3 = mul(m_WV, I.B.xyz * 2.0f); + + O.hpos = mul(m_WVP, I.P); +} + +#if defined(SKIN_0) +void main(in v_model_skinned_0 I, out p_bumped_new O) +{ + skinned_main(skinning_0(I), O); +} +#elif defined(SKIN_1) +void main(in v_model_skinned_1 I, out p_bumped_new O) +{ + skinned_main(skinning_1(I), O); +} +#elif defined(SKIN_2) +void main(in v_model_skinned_2 I, out p_bumped_new O) +{ + skinned_main(skinning_2(I), O); +} +#elif defined(SKIN_3) +void main(in v_model_skinned_3 I, out p_bumped_new O) +{ + skinned_main(skinning_3(I), O); +} +#elif defined(SKIN_4) +void main(in v_model_skinned_4 I, out p_bumped_new O) +{ + skinned_main(skinning_4(I), O); +} +#else +void main(in v_model I, out p_bumped_new O) +{ + skinned_main(I, O); +} +#endif diff --git a/gamedata/shaders/editor/dumb.ps.hlsl b/gamedata/shaders/editor/dumb.ps.hlsl new file mode 100644 index 0000000..1bf0b85 --- /dev/null +++ b/gamedata/shaders/editor/dumb.ps.hlsl @@ -0,0 +1,7 @@ +#include "common.hlsli" + +// Pixel +float4 main() : COLOR +{ + return 0; +} diff --git a/gamedata/shaders/editor/effects_water.lua b/gamedata/shaders/editor/effects_water.lua new file mode 100644 index 0000000..f6bc3bb --- /dev/null +++ b/gamedata/shaders/editor/effects_water.lua @@ -0,0 +1,32 @@ +local tex_base = "water\\water_water" +local tex_nmap = "water\\water_normal" +local tex_dist = "water\\water_dudv" +local tex_caustic = "water\\water_caustic" + +local tex_env0 = "$user$sky0" +local tex_env1 = "$user$sky1" + +local tex_env = "sky\\sky_8_cube" + +function normal(shader, t_base, t_second, t_detail) + shader:begin("water", "water") + + :sorting(2, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(true) + + shader:sampler("s_base"):texture(tex_base) + shader:sampler("s_nmap"):texture(tex_nmap) + + shader:sampler("s_env0"):texture(tex_env0) + shader:sampler("s_env1"):texture(tex_env1) + + shader:sampler("env_s0"):texture("$user$env_s0") + shader:sampler("env_s1"):texture("$user$env_s1") + + shader:sampler("s_image"):texture("$user$rt_color") + shader:sampler("s_caustic"):texture(tex_caustic) + + shader:sampler("s_env"):texture(tex_env) +end \ No newline at end of file diff --git a/gamedata/shaders/editor/font2.ps.hlsl b/gamedata/shaders/editor/font2.ps.hlsl new file mode 100644 index 0000000..7892ebe --- /dev/null +++ b/gamedata/shaders/editor/font2.ps.hlsl @@ -0,0 +1,18 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 r = tex2D(s_base, I.tc0); + // r.x = 1 - r.x; + // r.y = 1 - r.y; + // r.z = 1 - r.z; + r.w = 1 - r.w; + return r; + // return /*(float4(1,1,1,1) - */ tex2D (s_base,I.tc0); +} diff --git a/gamedata/shaders/editor/forward_base.ps.hlsl b/gamedata/shaders/editor/forward_base.ps.hlsl new file mode 100644 index 0000000..d656a3b --- /dev/null +++ b/gamedata/shaders/editor/forward_base.ps.hlsl @@ -0,0 +1,48 @@ +#include "common.hlsli" +#include "sload.hlsli" +#include "lmodel.hlsli" +#include "hmodel.hlsli" + +void main(p_bumped_new I, out float4 Color : COLOR0) +{ + XrayMaterial M; + + M.Sun = I.tcdh.w; + M.Hemi = I.tcdh.z; + M.Point = I.position.xyz; + + SloadNew(I, M); + +#ifdef USE_AREF + clip(M.Color.w - def_aref); +#endif + + M.Normal = mul(float3x3(I.M1, I.M2, I.M3), M.Normal); + M.Normal = normalize(M.Normal); + +#ifdef USE_LM_HEMI + float4 lm = tex2D(s_hemi, I.tcdh.zw); + + M.Sun = get_sun(lm); + M.Hemi = get_hemi(lm); +#endif + + M.Sun = saturate(M.Sun * 2.0f); + M.Color.xyz = saturate(M.Color.xyz); + + float MaterialID = 0.5f; + float Gloss = 1.0f - M.Roughness; + + float4 Light = float4(L_sun_color, 1.0f) * M.Sun * plight_infinity(MaterialID, M.Point, M.Normal, L_sun_dir_e); + float3 Diffuse, Specular; + + hmodel(Diffuse, Specular, MaterialID, M.Hemi, Gloss, M.Point, M.Normal); + + Color = float4(Diffuse + Light.xyz, M.Color.w); + Color.xyz *= M.Color.xyz; + Color.xyz += Light.w * Gloss + Specular; + + float fog = saturate(length(M.Point) * fog_params.w + fog_params.x); + Color.xyz = M.Normal * 0.5f + 0.5f; //lerp(Color, fog_color, fog); +} + diff --git a/gamedata/shaders/editor/hmodel.hlsli b/gamedata/shaders/editor/hmodel.hlsli new file mode 100644 index 0000000..de2bc9c --- /dev/null +++ b/gamedata/shaders/editor/hmodel.hlsli @@ -0,0 +1,48 @@ +#ifndef HMODEL_H +#define HMODEL_H + +#include "common.hlsli" + +uniform samplerCUBE env_s0; +uniform samplerCUBE env_s1; +uniform samplerCUBE sky_s0; +uniform samplerCUBE sky_s1; + +void hmodel(out float3 hdiffuse, out float3 hspecular, + float m, float h, float s, float3 Pnt, float3 normal) +{ + // hscale - something like diffuse reflection + float3 nw = mul(m_invV, normal); + float hscale = h; + +#ifdef USE_GAMMA_22 + hscale = (hscale * hscale); // make it more linear +#endif + + // reflection vector + float3 v2PntL = normalize(Pnt); + float3 v2Pnt = mul(m_invV, v2PntL); + float3 vreflect = reflect(v2Pnt, nw); + float hspec = .5h + .5h * dot(vreflect, v2Pnt); + + // material + float4 light = tex3D(s_material, float3(hscale, hspec, m)); + + // diffuse color + float3 e0d = texCUBElod(env_s0, float4(nw, 0.0f)); + float3 e1d = texCUBElod(env_s1, float4(nw, 0.0f)); + float3 env_d = L_hemi_color.xyz * lerp(e0d, e1d, L_hemi_color.w); + env_d *= env_d; // contrast + hdiffuse = env_d * light.xyz + L_ambient.rgb; + + // specular color + vreflect.y = vreflect.y * 2 - 1; + + float3 e0s = texCUBElod(env_s0, float4(vreflect, 0.0f)); + float3 e1s = texCUBElod(env_s1, float4(vreflect, 0.0f)); + float3 env_s = L_hemi_color.xyz * lerp(e0s, e1s, L_hemi_color.w); + env_s *= env_s; + hspecular = env_s * light.w * s; +} +#endif + diff --git a/gamedata/shaders/editor/hud3d.ps.hlsl b/gamedata/shaders/editor/hud3d.ps.hlsl new file mode 100644 index 0000000..df4d764 --- /dev/null +++ b/gamedata/shaders/editor/hud3d.ps.hlsl @@ -0,0 +1,13 @@ +#include "common.hlsli" + +struct ui_vert_out +{ + float2 tc0 : TEXCOORD0; + float4 P : POSITION; +}; + +float4 main(ui_vert_out I) : COLOR +{ + float4 r = tex2D(s_base, I.tc0); + return r; +} diff --git a/gamedata/shaders/editor/hud3d.vs.hlsl b/gamedata/shaders/editor/hud3d.vs.hlsl new file mode 100644 index 0000000..47bef8b --- /dev/null +++ b/gamedata/shaders/editor/hud3d.vs.hlsl @@ -0,0 +1,25 @@ +#include "common.hlsli" + +struct ui_vert_in +{ + float4 P : POSITION; + float4 color : COLOR0; + float2 uv : TEXCOORD0; +}; + +struct ui_vert_out +{ + float2 tc0 : TEXCOORD0; + float4 P : POSITION; +}; + +ui_vert_out main(ui_vert_in v) +{ + ui_vert_out O; + + O.tc0 = v.uv; + O.P = v.P; + O.P.w = 1; + O.P = mul(m_WVP, O.P); + return O; +} diff --git a/gamedata/shaders/editor/hud_crosshair.lua b/gamedata/shaders/editor/hud_crosshair.lua new file mode 100644 index 0000000..7c5097d --- /dev/null +++ b/gamedata/shaders/editor/hud_crosshair.lua @@ -0,0 +1,6 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("null", "simple_color") + :fog(false) + :zb(false, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) +end diff --git a/gamedata/shaders/editor/hud_font.lua b/gamedata/shaders/editor/hud_font.lua new file mode 100644 index 0000000..6f41a55 --- /dev/null +++ b/gamedata/shaders/editor/hud_font.lua @@ -0,0 +1,7 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("null", "hud_font") + :fog(false) + :zb(false, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + shader:sampler("s_base"):texture(t_base) +end diff --git a/gamedata/shaders/editor/hud_font.ps.hlsl b/gamedata/shaders/editor/hud_font.ps.hlsl new file mode 100644 index 0000000..7ab06f8 --- /dev/null +++ b/gamedata/shaders/editor/hud_font.ps.hlsl @@ -0,0 +1,15 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; + float4 c0 : COLOR0; +}; + +float4 main(v2p I) : COLOR +{ + float4 r = tex2D(s_base, I.tc0); + r.rgb = I.c0.rgb; + r.a *= I.c0.a; + return r; +} diff --git a/gamedata/shaders/editor/hud_font2.lua b/gamedata/shaders/editor/hud_font2.lua new file mode 100644 index 0000000..f7c9151 --- /dev/null +++ b/gamedata/shaders/editor/hud_font2.lua @@ -0,0 +1,7 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("null", "font2") + :fog(false) + :zb(false, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + shader:sampler("s_base"):texture(t_base) +end diff --git a/gamedata/shaders/editor/hud_movie.lua b/gamedata/shaders/editor/hud_movie.lua new file mode 100644 index 0000000..4a61a6c --- /dev/null +++ b/gamedata/shaders/editor/hud_movie.lua @@ -0,0 +1,7 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("null", "yuv2rgb") + :fog(false) + :zb(false, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + shader:sampler("s_base"):texture(t_base) +end diff --git a/gamedata/shaders/editor/hud_p3d.lua b/gamedata/shaders/editor/hud_p3d.lua new file mode 100644 index 0000000..7465274 --- /dev/null +++ b/gamedata/shaders/editor/hud_p3d.lua @@ -0,0 +1,7 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("hud3d", "hud3d") + :fog(false) + :zb(true, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + shader:sampler("s_base"):texture(t_base) +end diff --git a/gamedata/shaders/editor/impl_dt.ps.hlsl b/gamedata/shaders/editor/impl_dt.ps.hlsl new file mode 100644 index 0000000..db5f44a --- /dev/null +++ b/gamedata/shaders/editor/impl_dt.ps.hlsl @@ -0,0 +1,35 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float2 tc1 : TEXCOORD1; // lmap + float2 tc2 : TEXCOORD2; // detail +}; +uniform sampler2D s_mask; // + +uniform sampler2D s_dt_r; // +uniform sampler2D s_dt_g; // +uniform sampler2D s_dt_b; // +uniform sampler2D s_dt_a; // + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 t_base = tex2D(s_base, I.tc0); + + float4 mask = tex2D(s_mask, I.tc0); + float mag = dot(mask, 1); + mask = mask / mag; + + float3 d_R = tex2D(s_dt_r, I.tc2) * mask.r; + float3 d_G = tex2D(s_dt_g, I.tc2) * mask.g; + float3 d_B = tex2D(s_dt_b, I.tc2) * mask.b; + float3 d_A = tex2D(s_dt_a, I.tc2) * mask.a; + float3 dt = d_R + d_G + d_B + d_A; + t_base.xyz *= 2.0f * dt; + + // out + return float4(t_base.xyz, 1); +} + diff --git a/gamedata/shaders/editor/impl_dt.vs.hlsl b/gamedata/shaders/editor/impl_dt.vs.hlsl new file mode 100644 index 0000000..6ac20bf --- /dev/null +++ b/gamedata/shaders/editor/impl_dt.vs.hlsl @@ -0,0 +1,31 @@ +#include "common.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; + float2 tc1 : TEXCOORD1; + float2 tc2 : TEXCOORD2; + float fog : FOG; +}; + +struct vv +{ + float4 P : POSITION; + float2 tc : TEXCOORD0; + float3 N : NORMAL; +}; + +vf main(vv v) +{ + vf o; + float3 N = unpack_normal(v.N); + o.hpos = mul(m_WVP, float4(v.P.xyz, 1)); // xform, input in world coords + o.tc0 = v.tc; + o.tc1 = o.tc0; // copy tc + o.tc2 = o.tc0 * dt_params; // dt tc + o.fog = calc_fogging(v.P); // fog, input in world coords + + return o; +} + diff --git a/gamedata/shaders/editor/lmodel.hlsli b/gamedata/shaders/editor/lmodel.hlsli new file mode 100644 index 0000000..f099cc4 --- /dev/null +++ b/gamedata/shaders/editor/lmodel.hlsli @@ -0,0 +1,28 @@ +#ifndef LMODEL_H +#define LMODEL_H + +#include "common.hlsli" + +float4 plight_infinity(float m, float3 _point, float3 normal, float3 light_direction) +{ + float3 N = normal; // normal + float3 V = -normalize(_point); // vector2eye + float3 L = -light_direction; // vector2light + float3 H = normalize(L + V); // float-angle-vector + return tex3D(s_material, float3(dot(L, N), dot(H, N), m)); // sample material +} + +float4 plight_local(float m, float3 _point, float3 normal, float3 light_position, float light_range_rsq) +{ + float3 N = normal; // normal + float3 L2P = _point - light_position; // light2point + float3 V = -normalize(_point); // vector2eye + float3 L = -normalize((float3)L2P); // vector2light + float3 H = normalize(L + V); // float-angle-vector + float rsqr = dot(L2P, L2P); // distance 2 light (squared) + float att = saturate(1 - rsqr * light_range_rsq); // q-linear attenuate + float4 light = tex3D(s_material, float3(dot(L, N), dot(H, N), m)); // sample material + return att * light; +} + +#endif \ No newline at end of file diff --git a/gamedata/shaders/editor/model_def_hq.ps.hlsl b/gamedata/shaders/editor/model_def_hq.ps.hlsl new file mode 100644 index 0000000..bfc2c99 --- /dev/null +++ b/gamedata/shaders/editor/model_def_hq.ps.hlsl @@ -0,0 +1,12 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base +}; + +// Pixel +float4 main_ps_1_1(v2p I) : COLOR +{ + return tex2D(s_base, I.tc0); +} diff --git a/gamedata/shaders/editor/model_def_hq.vs.hlsl b/gamedata/shaders/editor/model_def_hq.vs.hlsl new file mode 100644 index 0000000..2afd393 --- /dev/null +++ b/gamedata/shaders/editor/model_def_hq.vs.hlsl @@ -0,0 +1,23 @@ +#include "common.hlsli" +#include "skin.hlsli" + +// #define SKIN_2 + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; // base + float fog : FOG; +}; + +vf _main(v_model v) +{ + vf o; + o.hpos = mul(m_WVP, v.pos); // xform, input in world coords + o.tc0 = v.tc.xy; // copy tc + o.fog = calc_fogging(v.pos); + return o; +} + +#define SKIN_VF vf +#include "skin_main.hlsli" diff --git a/gamedata/shaders/editor/model_env_hq.ps.hlsl b/gamedata/shaders/editor/model_env_hq.ps.hlsl new file mode 100644 index 0000000..c673ac4 --- /dev/null +++ b/gamedata/shaders/editor/model_env_hq.ps.hlsl @@ -0,0 +1,23 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float3 tc1 : TEXCOORD1; // environment +}; + +// Pixel +float4 main_ps_1_1(v2p I) : COLOR +{ + float4 t_base = tex2D(s_base, I.tc0); + float4 t_env = texCUBE(s_env, I.tc1); + + // lighting + + // final-color + float3 base = lerp(t_env, t_base, t_base.a); + float3 final = base; + + // out + return float4(final.r, final.g, final.b, t_base.a); +} diff --git a/gamedata/shaders/editor/model_env_hq.vs.hlsl b/gamedata/shaders/editor/model_env_hq.vs.hlsl new file mode 100644 index 0000000..ab504a8 --- /dev/null +++ b/gamedata/shaders/editor/model_env_hq.vs.hlsl @@ -0,0 +1,31 @@ +#include "common.hlsli" +#include "skin.hlsli" + +// #define SKIN_2 + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; // base + float3 tc1 : TEXCOORD1; // environment + float fog : FOG; +}; + +vf _main(v_model v) +{ + vf o; + + float4 pos = v.pos; + float3 pos_w = mul(m_W, pos); + float4 pos_w4 = float4(pos_w, 1); + float3 norm_w = normalize(mul(m_W, v.norm)); + + o.hpos = mul(m_WVP, pos); // xform, input in world coords + o.tc0 = v.tc.xy; // copy tc + o.tc1 = calc_reflection(pos_w, norm_w); + o.fog = calc_fogging(pos_w4); // fog, input in world coords + return o; +} + +#define SKIN_VF vf +#include "skin_main.hlsli" diff --git a/gamedata/shaders/editor/particle.ps.hlsl b/gamedata/shaders/editor/particle.ps.hlsl new file mode 100644 index 0000000..9eb22a5 --- /dev/null +++ b/gamedata/shaders/editor/particle.ps.hlsl @@ -0,0 +1,13 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float4 c : COLOR0; // diffuse +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + return I.c * tex2D(s_base, I.tc0); +} diff --git a/gamedata/shaders/editor/particle.vs.hlsl b/gamedata/shaders/editor/particle.vs.hlsl new file mode 100644 index 0000000..9c25f23 --- /dev/null +++ b/gamedata/shaders/editor/particle.vs.hlsl @@ -0,0 +1,27 @@ +#include "common.hlsli" + +struct vv +{ + float4 P : POSITION; + float2 tc : TEXCOORD0; + float4 c : COLOR0; +}; +struct vf +{ + float4 hpos : POSITION; + float2 tc : TEXCOORD0; + float4 c : COLOR0; + float fog : FOG; +}; + +vf main(vv v) +{ + vf o; + + o.hpos = mul(m_WVP, v.P); // xform, input in world coords + o.tc = v.tc; // copy tc + o.c = v.c; // copy color + o.fog = calc_fogging(v.P); // fog, input in world coords + + return o; +} diff --git a/gamedata/shaders/editor/particle_distort.ps.hlsl b/gamedata/shaders/editor/particle_distort.ps.hlsl new file mode 100644 index 0000000..dbeaa04 --- /dev/null +++ b/gamedata/shaders/editor/particle_distort.ps.hlsl @@ -0,0 +1,25 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float4 proj : TEXCOORD1; // base + float4 c : COLOR0; // diffuse +}; + +// Pixel +uniform sampler s_distort; +uniform sampler s_image; + +float4 main(v2p I) : COLOR +{ + float2 uv = I.proj.xy / I.proj.w * float2(0.5f, -0.5f) + 0.5f; + float4 distort = tex2D(s_distort, I.tc0); + + float factor = distort.a * dot(I.c.xyz, 0.33f); + float2 offset = (distort.xy - (127.0f / 255.0f)) * factor; + float3 image = tex2D(s_image, uv + offset * 0.05f).xyz; + + return float4(image.xyz, 1.0f); +} + diff --git a/gamedata/shaders/editor/particle_distort.vs.hlsl b/gamedata/shaders/editor/particle_distort.vs.hlsl new file mode 100644 index 0000000..fe059e5 --- /dev/null +++ b/gamedata/shaders/editor/particle_distort.vs.hlsl @@ -0,0 +1,30 @@ +#include "common.hlsli" + +struct vv +{ + float4 P : POSITION; + float2 tc : TEXCOORD0; + float4 c : COLOR0; +}; +struct vf +{ + float4 hpos : POSITION; + float2 tc : TEXCOORD0; + float4 proj : TEXCOORD1; + float4 c : COLOR0; + float fog : FOG; +}; + +vf main(vv v) +{ + vf o; + + o.hpos = mul(m_WVP, v.P); // xform, input in world coords + o.tc = v.tc; // copy tc + o.c = v.c; // copy color + o.fog = calc_fogging(v.P); // fog, input in world coords + o.proj = o.hpos; + + return o; +} + diff --git a/gamedata/shaders/editor/particles_xdistort.lua b/gamedata/shaders/editor/particles_xdistort.lua new file mode 100644 index 0000000..4823a04 --- /dev/null +++ b/gamedata/shaders/editor/particles_xdistort.lua @@ -0,0 +1,10 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("particle_distort", "particle_distort") + :sorting(3, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + shader:sampler("s_base") : texture(t_base) + shader:sampler("s_distort") : texture(t_base) + shader:sampler("s_image") : texture("$user$rt_color") : mirror () +end diff --git a/gamedata/shaders/editor/portal.lua b/gamedata/shaders/editor/portal.lua new file mode 100644 index 0000000..734ec69 --- /dev/null +++ b/gamedata/shaders/editor/portal.lua @@ -0,0 +1,7 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("portal", "portal") + :fog(true) + :zb(true, false) + :sorting(3, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) +end diff --git a/gamedata/shaders/editor/portal.ps.hlsl b/gamedata/shaders/editor/portal.ps.hlsl new file mode 100644 index 0000000..61cc072 --- /dev/null +++ b/gamedata/shaders/editor/portal.ps.hlsl @@ -0,0 +1,8 @@ +#include "common.hlsli" + +float4 main(float4 color : COLOR0, float fog : FOG) : COLOR +{ + float4 final = color; + final.xyz = lerp(fog_color.xyz, final.xyz, fog); + return final; +} diff --git a/gamedata/shaders/editor/portal.vs.hlsl b/gamedata/shaders/editor/portal.vs.hlsl new file mode 100644 index 0000000..00bb692 --- /dev/null +++ b/gamedata/shaders/editor/portal.vs.hlsl @@ -0,0 +1,19 @@ +#include "common.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float4 c : COLOR0; + float fog : FOG; +}; + +vf main(v_vert v) +{ + vf o; + + o.hpos = mul(m_VP, v.P); // xform, input in world coords + o.c = v.color; + o.fog = calc_fogging(v.P); // fog, input in world coords + + return o; +} diff --git a/gamedata/shaders/editor/shared/cloudconfig.hlsli b/gamedata/shaders/editor/shared/cloudconfig.hlsli new file mode 100644 index 0000000..92b2422 --- /dev/null +++ b/gamedata/shaders/editor/shared/cloudconfig.hlsli @@ -0,0 +1,11 @@ +#ifndef _CLOUDCONFIG_H +#define _CLOUDCONFIG_H + +// note: timers has resolution (sec), where x=1, y=10, z=1/10, +#define CLOUD_TILE0 (0.7f) +#define CLOUD_SPEED0 (2 * 0.05) //(0.033f) +#define CLOUD_TILE1 (2.8) //(2.5f) +#define CLOUD_SPEED1 (2 * 0.025) //(0.033f) +#define CLOUD_FADE (0.5) + +#endif diff --git a/gamedata/shaders/editor/shared/common.hlsli b/gamedata/shaders/editor/shared/common.hlsli new file mode 100644 index 0000000..b42d52d --- /dev/null +++ b/gamedata/shaders/editor/shared/common.hlsli @@ -0,0 +1,65 @@ +#ifndef SHARED_COMMON_H +#define SHARED_COMMON_H + +uniform float3x4 m_W; +uniform float3x4 m_V; +uniform float3x4 m_invV; +uniform float4x4 m_P; +uniform float3x4 m_WV; +uniform float4x4 m_VP; +uniform float4x4 m_WVP; +uniform float4 timers; +uniform float4 fog_plane; +uniform float4 fog_params; // x=near*(1/(far-near)), ?,?, w = -1/(far-near) +uniform float4 fog_color; +uniform float4 L_sky_color; +uniform float3 L_sun_color; +uniform float3 L_sun_dir_w; +uniform float3 L_sun_dir_e; +uniform float4 L_hemi_color; +uniform float4 L_ambient; // L_ambient.w = skynbox-lerp-factor +uniform float3 eye_position; +uniform float3 eye_direction; +uniform float3 eye_normal; +uniform float4 dt_params; + +float3 unpack_normal(float3 v) +{ + return 2 * v - 1; +} +float3 unpack_bx2(float3 v) +{ + return 2 * v - 1; +} +float3 unpack_bx4(float3 v) +{ + return 4 * v - 2; +} + +float2 unpack_tc_base(float2 tc, float du, float dv) +{ + return (tc.xy + float2(du, dv)) * (32.f / 32768.f); +} + +float2 unpack_tc_lmap(float2 tc) +{ + return tc * (1.f / 32768.f); +} // [-1 .. +1 ] + +float calc_cyclic(float x) +{ + float phase = 1 / (2 * 3.141592653589f); + float sqrt2 = 1.4142136f; + float sqrt2m2 = 2.8284271f; + float f = sqrt2m2 * frac(x) - sqrt2; // [-sqrt2 .. +sqrt2] + return f * f - 1.f; // [-1 .. +1] +} +float2 calc_xz_wave(float2 dir2D, float frac) +{ + // Beizer + float2 ctrl_A = float2(0.f, 0.f); + float2 ctrl_B = float2(dir2D.x, dir2D.y); + return lerp(ctrl_A, ctrl_B, frac); +} + +#endif diff --git a/gamedata/shaders/editor/shared/waterconfig.hlsli b/gamedata/shaders/editor/shared/waterconfig.hlsli new file mode 100644 index 0000000..0001f14 --- /dev/null +++ b/gamedata/shaders/editor/shared/waterconfig.hlsli @@ -0,0 +1,55 @@ +#ifndef _WATERCONFIG_H + #define _WATERCONFIG_H + +// : (1) +// waterdistortion +// waterdistortion2 + + #define W_POSITION_SHIFT_HEIGHT (1.f / 60.f) //(1.f/100.f) //amplitude /50 - small, /10 - large + #define W_POSITION_SHIFT_SPEED (25.f) //(25.0f) + #define W_DISTORT_BASE_TILE_0 (1.0f) //(1.0f) + #define W_DISTORT_BASE_TILE_1 (1.1f) //(1.1f) + #define W_DISTORT_AMP_0 (+0.15f) //(+0.15f) + #define W_DISTORT_AMP_1 (+0.55f) //(-0.30f) + #define W_DISTORT_POWER (1.0f) //(1.0f) + +#endif + +/* +//////////////////////////////////////////////////////////////////////////////// +-- waters clear +//////////////////////////////////////////////////////////////////////////////// + : + waterdistortion + waterdistortion2 +//////////////////////////////////////////////////////////////////////////////// +#define W_POSITION_SHIFT_HEIGHT (1.f/50.f) //(1.f/100.f) //amplitude /50 - small, /10 - large +#define W_POSITION_SHIFT_SPEED (15.f) //(25.0f) +#define W_DISTORT_BASE_TILE_0 (1.3f) //(1.6f) +#define W_DISTORT_BASE_TILE_1 (2.3f) //(1.1f) +#define W_DISTORT_AMP_0 (+0.35f) //(+0.15f) +#define W_DISTORT_AMP_1 (-1.75f) //(-0.30f) +#define W_DISTORT_POWER (1.0f) //(1.0f) +//////////////////////////////////////////////////////////////////////////////// + : + waterdistortion + waterdistortion +//////////////////////////////////////////////////////////////////////////////// +#define W_POSITION_SHIFT_HEIGHT (1.f/80.f) //(1.f/100.f) //amplitude /50 - small, /10 - large +#define W_POSITION_SHIFT_SPEED (20.f) //(25.0f) +#define W_DISTORT_BASE_TILE_0 (1.6f) //(1.6f) +#define W_DISTORT_BASE_TILE_1 (1.1f) //(1.1f) +#define W_DISTORT_AMP_0 (+0.15f) //(+0.15f) +#define W_DISTORT_AMP_1 (-0.30f) //(-0.30f) +#define W_DISTORT_POWER (6.0f) //(6.0f) +//////////////////////////////////////////////////////////////////////////////// +-- waters mulyaka +//////////////////////////////////////////////////////////////////////////////// +#define W_POSITION_SHIFT_HEIGHT (1.f/50.f) // amplitude /50 - small, /10 - large +#define W_POSITION_SHIFT_SPEED (25.f) +#define W_DISTORT_BASE_TILE (0.1f) //(1.0f) +#define W_DISTORT_AMP_0 (+0.58f) //(-0.08f) +#define W_DISTORT_AMP_1 (+0.38f) //(+0.18f) +#define W_DISTORT_POWER (3.0f) //(2.0f) +//////////////////////////////////////////////////////////////////////////////// +*/ diff --git a/gamedata/shaders/editor/shared/watermove.hlsli b/gamedata/shaders/editor/shared/watermove.hlsli new file mode 100644 index 0000000..5148108 --- /dev/null +++ b/gamedata/shaders/editor/shared/watermove.hlsli @@ -0,0 +1,29 @@ +#ifndef _WATERMOVE_H +#define _WATERMOVE_H + +float4 watermove(float4 P) +{ + float3 wave1 = float3(0.11f, 0.13f, 0.07f) * W_POSITION_SHIFT_SPEED; + float dh = sin(timers.x + dot((float3)P, wave1)); + P.y += dh * W_POSITION_SHIFT_HEIGHT; + return P; +} +float2 watermove_tc(float2 base, float2 P, float amp) +{ + float2 wave1 = float2(0.2111f, 0.2333f) * amp; + float angle = timers.z + dot(P, wave1); + float du = sin(angle); + float dv = cos(angle); + return (base + amp * float2(du, dv)); +} + +float3 waterrefl(out float amount, float3 P, float3 N) +{ + float3 v2point = normalize(P - eye_position); + float3 vreflect = reflect(v2point, N); + float fresnel = (.5f + .5f * dot(vreflect, v2point)); + amount = 1 - fresnel * fresnel; // 0=full env, 1=no env + return vreflect; +} + +#endif diff --git a/gamedata/shaders/editor/shared/wmark.hlsli b/gamedata/shaders/editor/shared/wmark.hlsli new file mode 100644 index 0000000..34c6b5b --- /dev/null +++ b/gamedata/shaders/editor/shared/wmark.hlsli @@ -0,0 +1,23 @@ +#ifndef WMARK_H +#define WMARK_H + +#include "common.hlsli" + +#define NORMAL_SHIFT 0.007f +#define MIN_SHIFT 0.003f +#define MAX_SHIFT 0.011f +#define RANGE 100.f + +float4 wmark_shift(float3 pos, float3 norm) +{ + float3 P = pos; + float3 N = norm; + float3 sd = eye_position - P; + float d = length(sd); + float w = min(d / RANGE, 1.f); + float s = lerp(MIN_SHIFT, MAX_SHIFT, d); + P += N.xyz * NORMAL_SHIFT; + P -= normalize(eye_direction + normalize(P - eye_position)) * s; + return float4(P, 1.f); +} +#endif diff --git a/gamedata/shaders/editor/simple_color.ps.hlsl b/gamedata/shaders/editor/simple_color.ps.hlsl new file mode 100644 index 0000000..86490e4 --- /dev/null +++ b/gamedata/shaders/editor/simple_color.ps.hlsl @@ -0,0 +1,6 @@ +#include "common.hlsli" + +float4 main(float4 C : COLOR0) : COLOR +{ + return C; +} diff --git a/gamedata/shaders/editor/simple_color.vs.hlsl b/gamedata/shaders/editor/simple_color.vs.hlsl new file mode 100644 index 0000000..f2f975e --- /dev/null +++ b/gamedata/shaders/editor/simple_color.vs.hlsl @@ -0,0 +1,19 @@ +#include "common.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float4 C : COLOR0; +}; + +uniform float4 tfactor; + +vf main(float4 P : POSITION) +{ + vf o; + + o.hpos = mul(m_WVP, P); // xform, input in world coords + o.C = tfactor; + + return o; +} diff --git a/gamedata/shaders/editor/skin.hlsli b/gamedata/shaders/editor/skin.hlsli new file mode 100644 index 0000000..144873c --- /dev/null +++ b/gamedata/shaders/editor/skin.hlsli @@ -0,0 +1,226 @@ +#ifndef SKIN_H +#define SKIN_H + +#include "common.hlsli" + +struct v_model_skinned_0 +{ + float4 P : POSITION; // (float,float,float,1) - quantized // short4 + float3 N : NORMAL; // normal // DWORD + float3 T : TANGENT; // tangent // DWORD + float3 B : BINORMAL; // binormal // DWORD + float2 tc : TEXCOORD0; // (u,v) // short2 +}; +struct v_model_skinned_1 // 24 bytes +{ + float4 P : POSITION; // (float,float,float,1) - quantized // short4 + float4 N : NORMAL; // (nx,ny,nz,index) // DWORD + float3 T : TANGENT; // tangent // DWORD + float3 B : BINORMAL; // binormal // DWORD + float2 tc : TEXCOORD0; // (u,v) // short2 +}; +struct v_model_skinned_2 // 28 bytes +{ + float4 P : POSITION; // (float,float,float,1) - quantized // short4 + float4 N : NORMAL; // (nx,ny,nz,weight) // DWORD + float3 T : TANGENT; // tangent // DWORD + float3 B : BINORMAL; // binormal // DWORD + float4 tc : TEXCOORD0; // (u,v, w=m-index0, z=m-index1) // short4 +}; + +struct v_model_skinned_3 // 28 bytes +{ + float4 P : POSITION; // (float,float,float,1) - quantized // short4 + float4 N : NORMAL; // (nx,ny,nz,weight0) // DWORD + float4 T : TANGENT; // (tx,ty,tz,weight1) // DWORD + float4 B : BINORMAL; // (bx,by,bz,m-index2) // DWORD + float4 tc : TEXCOORD0; // (u,v, w=m-index0, z=m-index1) // short4 +}; + +struct v_model_skinned_4 // 28 bytes +{ + float4 P : POSITION; // (float,float,float,1) - quantized // short4 + float4 N : NORMAL; // (nx,ny,nz,weight0) // DWORD + float4 T : TANGENT; // (tx,ty,tz,weight1) // DWORD + float4 B : BINORMAL; // (bx,by,bz,weight2) // DWORD + float2 tc : TEXCOORD0; // (u,v) // short2 + float4 ind : TEXCOORD1; // (x=m-index0, y=m-index1, z=m-index2, w=m-index3) // DWORD +}; + +////////////////////////////////////////////////////////////////////////////////////////// + +float4 u_position(float4 v) +{ + return float4(v.xyz, 1.f); +} // -12..+12 + +////////////////////////////////////////////////////////////////////////////////////////// +// uniform float4 sbones_array [256-22]; +// Igor: Max number of bones per mesh - 64. 3 registers per bone. +uniform float4 sbones_array[230]; +float3 skinning_dir(float3 dir, float3 m0, float3 m1, float3 m2) +{ + float3 U = unpack_normal(dir); + return float3( + dot(m0, U), + dot(m1, U), + dot(m2, U)); +} +float4 skinning_pos(float4 pos, float4 m0, float4 m1, float4 m2) +{ + float4 P = u_position(pos); // -12..+12 + return float4( + dot(m0, P), + dot(m1, P), + dot(m2, P), + 1); +} + +v_model skinning_0(v_model_skinned_0 v) +{ + // skinning + v_model o; + o.P = u_position(v.P); + o.N = unpack_normal(v.N); + o.T = unpack_normal(v.T); + o.B = unpack_normal(v.B); + o.tc = v.tc; // -16..+16 + return o; +} +v_model skinning_1(v_model_skinned_1 v) +{ + // matrices + int mid = v.N.w * (int)255; + float4 m0 = sbones_array[mid + 0]; + float4 m1 = sbones_array[mid + 1]; + float4 m2 = sbones_array[mid + 2]; + + // skinning + v_model o; + o.P = skinning_pos(v.P, m0, m1, m2); + o.N = skinning_dir(v.N, m0, m1, m2); + o.T = skinning_dir(v.T, m0, m1, m2); + o.B = skinning_dir(v.B, m0, m1, m2); + o.tc = v.tc; // -16..+16 + return o; +} +v_model skinning_2(v_model_skinned_2 v) +{ + // matrices + int id_0 = v.tc.z; + float4 m0_0 = sbones_array[id_0 + 0]; + float4 m1_0 = sbones_array[id_0 + 1]; + float4 m2_0 = sbones_array[id_0 + 2]; + int id_1 = v.tc.w; + float4 m0_1 = sbones_array[id_1 + 0]; + float4 m1_1 = sbones_array[id_1 + 1]; + float4 m2_1 = sbones_array[id_1 + 2]; + + // lerp + float w = v.N.w; + float4 m0 = lerp(m0_0, m0_1, w); + float4 m1 = lerp(m1_0, m1_1, w); + float4 m2 = lerp(m2_0, m2_1, w); + + // skinning + v_model o; + o.P = skinning_pos(v.P, m0, m1, m2); + o.N = skinning_dir(v.N, m0, m1, m2); + o.T = skinning_dir(v.T, m0, m1, m2); + o.B = skinning_dir(v.B, m0, m1, m2); + o.tc = v.tc; // -16..+16 + return o; +} +v_model skinning_3(v_model_skinned_3 v) +{ + // matrices + int id_0 = v.tc.z; + float4 m0_0 = sbones_array[id_0 + 0]; + float4 m1_0 = sbones_array[id_0 + 1]; + float4 m2_0 = sbones_array[id_0 + 2]; + int id_1 = v.tc.w; + float4 m0_1 = sbones_array[id_1 + 0]; + float4 m1_1 = sbones_array[id_1 + 1]; + float4 m2_1 = sbones_array[id_1 + 2]; + int id_2 = v.B.w * 255 + 0.3; + float4 m0_2 = sbones_array[id_2 + 0]; + float4 m1_2 = sbones_array[id_2 + 1]; + float4 m2_2 = sbones_array[id_2 + 2]; + + // lerp + float w0 = v.N.w; + float w1 = v.T.w; + float w2 = 1 - w0 - w1; + float4 m0 = m0_0 * w0; + float4 m1 = m1_0 * w0; + float4 m2 = m2_0 * w0; + + m0 += m0_1 * w1; + m1 += m1_1 * w1; + m2 += m2_1 * w1; + + m0 += m0_2 * w2; + m1 += m1_2 * w2; + m2 += m2_2 * w2; + + // skinning + v_model o; + o.P = skinning_pos(v.P, m0, m1, m2); + o.N = skinning_dir(v.N, m0, m1, m2); + o.T = skinning_dir(v.T, m0, m1, m2); + o.B = skinning_dir(v.B, m0, m1, m2); + o.tc = v.tc; // -16..+16 +#ifdef SKIN_COLOR + o.rgb_tint = float3(2, 0, 0); + if (id_0 == id_1) + { + o.rgb_tint = float3(1, 2, 0); + } +#endif + return o; +} +v_model skinning_4(v_model_skinned_4 v) +{ + // matrices + float id[4]; + float4 m[4][3]; // [bone index][matrix row or column???] + for (int i = 0; i < 4; ++i) + { + id[i] = v.ind[i] * 255 + 0.3; + for (int j = 0; j < 3; ++j) + { + m[i][j] = sbones_array[id[i] + j]; + } + } + + // lerp + float w[4]; + w[0] = v.N.w; + w[1] = v.T.w; + w[2] = v.B.w; + w[3] = 1 - w[0] - w[1] - w[2]; + + float4 m0 = m[0][0] * w[0]; + float4 m1 = m[0][1] * w[0]; + float4 m2 = m[0][2] * w[0]; + + for (int i = 1; i < 4; ++i) + { + m0 += m[i][0] * w[i]; + m1 += m[i][1] * w[i]; + m2 += m[i][2] * w[i]; + } + + // skinning + v_model o; + o.P = skinning_pos(v.P, m0, m1, m2); + o.N = skinning_dir(v.N, m0, m1, m2); + o.T = skinning_dir(v.T, m0, m1, m2); + o.B = skinning_dir(v.B, m0, m1, m2); + o.tc = v.tc; // -16..+16 + + return o; +} + +#endif + diff --git a/gamedata/shaders/editor/skin_main.hlsli b/gamedata/shaders/editor/skin_main.hlsli new file mode 100644 index 0000000..4a10ddd --- /dev/null +++ b/gamedata/shaders/editor/skin_main.hlsli @@ -0,0 +1,100 @@ +#ifndef SKIN_MAIN_INCLUDED +#define SKIN_MAIN_INCLUDED + +////////////////////////////////////////////////////// +#ifdef SKIN_LQ + ////////////////////////////////////////////////////// + + #ifdef SKIN_NONE +SKIN_VF main(v_model v) +{ + return _main(v); +} + #endif + + #ifdef SKIN_0 +SKIN_VF main(v_model_skinned_0 v) +{ + return _main(skinning_0(v)); +} + #endif + + #ifdef SKIN_1 +SKIN_VF main(v_model_skinned_1 v) +{ + return _main(skinning_1(v)); +} + #endif + + #ifdef SKIN_2 +SKIN_VF main(v_model_skinned_2 v) +{ + return _main(skinning_2lq(v)); +} + #endif + + #ifdef SKIN_3 +SKIN_VF main(v_model_skinned_3 v) +{ + return _main(skinning_3lq(v)); +} + #endif + + #ifdef SKIN_4 +SKIN_VF main(v_model_skinned_4 v) +{ + return _main(skinning_4lq(v)); +} + #endif + +////////////////////////////////////////////////////// +#else // SKIN_LQ + ////////////////////////////////////////////////////// + + #ifdef SKIN_NONE +SKIN_VF main(v_model v) +{ + return _main(v); +} + #endif + + #ifdef SKIN_0 +SKIN_VF main(v_model_skinned_0 v) +{ + return _main(skinning_0(v)); +} + #endif + + #ifdef SKIN_1 +SKIN_VF main(v_model_skinned_1 v) +{ + return _main(skinning_1(v)); +} + #endif + + #ifdef SKIN_2 +SKIN_VF main(v_model_skinned_2 v) +{ + return _main(skinning_2(v)); +} + #endif + + #ifdef SKIN_3 +SKIN_VF main(v_model_skinned_3 v) +{ + return _main(skinning_3(v)); +} + #endif + + #ifdef SKIN_4 +SKIN_VF main(v_model_skinned_4 v) +{ + return _main(skinning_4(v)); +} + #endif + +////////////////////////////////////////////////////// +#endif // SKIN_LQ +////////////////////////////////////////////////////// + +#endif // SKIN_MAIN_INCLUDED diff --git a/gamedata/shaders/editor/sky.ps.hlsl b/gamedata/shaders/editor/sky.ps.hlsl new file mode 100644 index 0000000..c4c52f2 --- /dev/null +++ b/gamedata/shaders/editor/sky.ps.hlsl @@ -0,0 +1,22 @@ +#include "common.hlsli" + +struct v2p +{ + float4 factor : COLOR0; + float3 tc0 : TEXCOORD0; + float3 tc1 : TEXCOORD1; +}; + +uniform samplerCUBE s_sky0 : register(s0); +uniform samplerCUBE s_sky1 : register(s1); +uniform float3 color; + +// Pixel +float4 main(v2p I) : COLOR +{ + float3 s0 = texCUBE(s_sky0, I.tc0); + float3 s1 = texCUBE(s_sky1, I.tc1); + float3 sky = I.factor * lerp(s0, s1, I.factor.w); + + return float4(sky, 1); +} diff --git a/gamedata/shaders/editor/sky.vs.hlsl b/gamedata/shaders/editor/sky.vs.hlsl new file mode 100644 index 0000000..13b7c5a --- /dev/null +++ b/gamedata/shaders/editor/sky.vs.hlsl @@ -0,0 +1,31 @@ +#include "common.hlsli" + +struct vi +{ + float4 p : POSITION; + float4 c : COLOR0; + float3 tc0 : TEXCOORD0; + float3 tc1 : TEXCOORD1; +}; + +struct vf +{ + float4 hpos : POSITION; + float4 c : COLOR0; + float3 tc0 : TEXCOORD0; + float3 tc1 : TEXCOORD1; +}; + +vf main(vi v) +{ + vf o; + + float4 tpos = mul(1000, v.p); + o.hpos = mul(m_WVP, tpos); // xform, input in world coords, 1000 - magic number + o.hpos.z = o.hpos.w; + o.c = v.c; // copy color + o.tc0 = v.tc0; // copy tc + o.tc1 = v.tc1; // copy tc + + return o; +} diff --git a/gamedata/shaders/editor/sky2.ps b/gamedata/shaders/editor/sky2.ps new file mode 100644 index 0000000..5877888 --- /dev/null +++ b/gamedata/shaders/editor/sky2.ps @@ -0,0 +1,23 @@ +#include "common.h" + +struct v2p +{ + float4 factor: COLOR0; + float3 tc0: TEXCOORD0; + float3 tc1: TEXCOORD1; +}; + +uniform samplerCUBE s_sky0 : register(s0); +uniform samplerCUBE s_sky1 : register(s1); +uniform float3 color; + +////////////////////////////////////////////////////////////////////////////////////////// +// Pixel +float4 main ( v2p I ) : COLOR +{ + float3 s0 = texCUBE(s_sky0,I.tc0); + float3 s1 = texCUBE(s_sky1,I.tc1); + float3 sky = I.factor*lerp(s0,s1,I.factor.w); + + return float4 (sky,1); +} diff --git a/gamedata/shaders/editor/sky2.vs b/gamedata/shaders/editor/sky2.vs new file mode 100644 index 0000000..7157752 --- /dev/null +++ b/gamedata/shaders/editor/sky2.vs @@ -0,0 +1,31 @@ +#include "common.h" + +struct vi +{ + float4 p : POSITION; + float4 c : COLOR0; + float3 tc0 : TEXCOORD0; + float3 tc1 : TEXCOORD1; +}; + +struct vf +{ + float4 hpos : POSITION; + float4 c : COLOR0; + float3 tc0 : TEXCOORD0; + float3 tc1 : TEXCOORD1; +}; + +vf main (vi v) +{ + vf o; + + float4 tpos = mul (1000, v.p); + o.hpos = mul (m_WVP, tpos); // xform, input in world coords, 1000 - magic number + o.hpos.z = o.hpos.w; + o.c = v.c; // copy color + o.tc0 = v.tc0; // copy tc + o.tc1 = v.tc1; // copy tc + + return o; +} diff --git a/gamedata/shaders/editor/sload.hlsli b/gamedata/shaders/editor/sload.hlsli new file mode 100644 index 0000000..3d5eb7c --- /dev/null +++ b/gamedata/shaders/editor/sload.hlsli @@ -0,0 +1,82 @@ +#ifndef SLOAD_H +#define SLOAD_H +#include "common.hlsli" + +static const float fParallaxStartFade = 8.0f; +static const float fParallaxStopFade = 12.0f; + +uniform sampler s_detailBumpX; +uniform sampler s_detailBump; + +uniform sampler s_bumpX; +uniform sampler s_bump; + +struct XrayMaterial +{ + float Metalness; + float Roughness; + + float3 Normal; + float3 Point; + + float4 Color; + float Hemi; + float Sun; + + float SSS; + float AO; +}; + +void SloadNew(inout p_bumped_new I, inout XrayMaterial M) +{ + M.Color = tex2D(s_base, I.tcdh.xy); + +#ifdef USE_BUMP + float4 Bump = tex2D(s_bump, I.tcdh.xy); + float4 BumpX = tex2D(s_bumpX, I.tcdh.xy); + + // #ifndef USE_PBR + M.Normal = Bump.wzy + BumpX.xyz - 1.0f; + M.Normal.z *= 0.5f; + + M.Roughness = Bump.x * Bump.x; + M.Metalness = 0.0f; + + M.SSS = 0.0; + M.AO = 1.0; +// #endif +#else + M.Normal = float3(0.0f, 0.0f, 1.0f); + + M.Roughness = 0.04f; + M.Metalness = 0.0f; + + M.SSS = 0.0f; + M.AO = 1.0f; +#endif + +#ifdef USE_TDETAIL + float2 tcdbump = I.tcdh.xy * dt_params.xy; + float4 Detail = tex2D(s_detail, tcdbump); + #ifndef USE_PBR + M.Color.xyz *= Detail.xyz * 2.0f; + + #ifdef USE_TDETAIL_BUMP + float4 DetailBump = tex2D(s_detailBump, tcdbump); + float4 DetailBumpX = tex2D(s_detailBumpX, tcdbump); + M.Normal += DetailBump.wzy + DetailBumpX.xyz - 1.0f; + M.Roughness *= DetailBump.x * 2.0f; + #else + M.Roughness *= Detail.w * 2.0f; + #endif + #endif +#endif + +#ifndef USE_PBR + M.Metalness = M.Roughness * 0.1f; + M.Roughness = saturate(1.0f - M.Roughness); +#endif +} + +#endif + diff --git a/gamedata/shaders/editor/water.ps.hlsl b/gamedata/shaders/editor/water.ps.hlsl new file mode 100644 index 0000000..e472f13 --- /dev/null +++ b/gamedata/shaders/editor/water.ps.hlsl @@ -0,0 +1,136 @@ +#include "common.hlsli" + +struct vf +{ + float2 tbase : TEXCOORD0; + float2 tnorm0 : TEXCOORD1; + float2 tnorm1 : TEXCOORD2; + float3 M1 : TEXCOORD3; + float3 M2 : TEXCOORD4; + float3 M3 : TEXCOORD5; + float3 v2point : TEXCOORD6; + float4 tctexgen : TEXCOORD7; + float3 pos : TEXCOORD8; + float4 c0 : COLOR0; +}; + +uniform float3 water_intensity; + +uniform sampler s_image; +uniform sampler s_nmap; +uniform sampler s_env0; +uniform sampler s_env1; +uniform sampler env_s0; +uniform sampler env_s1; +uniform sampler s_leaves; +uniform sampler s_caustic; +uniform float4 screen_res; + +float3 SpecularPhong(float3 Point, float3 Normal, float3 Light) +{ + float3 LightColor = max(0.0f, L_sun_color.xyz * 4.0f - 1.0f); + return LightColor * pow(dot(normalize(Point + Light), -Normal), 256.0); +} + +float GetBorderAtten(float2 tc, float2 att) +{ + att.x *= screen_res.y * screen_res.z; + float2 factors = saturate(min(1.0f - tc, tc) / att); + return factors.x * factors.y; +} + +float4 ScreenSpaceLocalReflections(float3 vreflect) //Initial beam length +{ + float3 refl_vec = mul((float3x3)m_V, vreflect); + float4 new_pos_proj = mul(m_P,float4(refl_vec,1));//переводим её в скрин спейс + new_pos_proj.xy /= new_pos_proj.w; //нормализуем + new_pos_proj.xy = new_pos_proj.xy * float2(0.5h, -0.5h) + 0.5h; + + float2 reflPos = saturate(new_pos_proj); // We get the pixel position in Screen Space of the reflected geometry + + float canrefl = smoothstep(0.0f, 0.05f, refl_vec.z); + float borderAtten = GetBorderAtten(reflPos, 0.125f); // Grease the edges of the reflections for a smoother transition + + float3 color = tex2D(s_image, reflPos); + return float4(color, borderAtten * canrefl); +} + +// Pixel +float4 main(vf I) : COLOR +{ + float4 base = tex2D(s_base, I.tbase); + + float3 n0 = tex2D(s_nmap, I.tnorm0); + float3 n1 = tex2D(s_nmap, I.tnorm1); + float3 Navg = n0 + n1 - 1.0f; + + float3 Nw = normalize(mul(float3x3(I.M1, I.M2, I.M3), Navg).xyz); + + float3 v2point = normalize(I.v2point); + float3 vreflect = reflect(v2point, Nw); + + float fresnel = saturate(dot(vreflect, v2point)); + + float power = pow(fresnel, 5.0f); + float amount = 0.25f + 0.25f * power; + + float3 reflection = vreflect; + + float2 rotation = 0.0f; + sincos(L_sky_color.w, rotation.x, rotation.y); + vreflect.xz = float2(vreflect.x * rotation.y - vreflect.z * rotation.x, vreflect.x * rotation.x + vreflect.z * rotation.y); + + // true remapping. Slow. + float3 vreflectabs = abs(vreflect); + float vreflectmax = max(vreflectabs.x, max(vreflectabs.y, vreflectabs.z)); + + vreflect /= vreflectmax; + vreflect.y = vreflect.y * 2.0f - 1.0f; + + if(is_lighting_enable.x < 0.5f) { + float3 env = texCUBE(s_env, vreflect) * amount * 0.8f; + + env = lerp(env.xyz, base.xyz, base.w); + return float4(env, 0.8f + 0.2f * base.w); + } + + float3 envd0 = texCUBE(env_s0, Nw); + float3 envd1 = texCUBE(env_s1, Nw); + + float3 envd = lerp(envd0, envd1, L_ambient.w) * L_hemi_color.xyz; + float3 color = I.c0.xyz + envd * envd * I.c0.w; + base.xyz *= color; + + float3 env0 = texCUBE(s_env0, vreflect); + float3 env1 = texCUBE(s_env1, vreflect); + + float3 env = lerp(env0, env1, L_ambient.w) * L_sky_color.xyz; + + float4 sslr = ScreenSpaceLocalReflections(reflection); + env = lerp(env, sslr.xyz, sslr.w); + + float3 final = lerp(env * amount * 0.8f, base.xyz, base.w); + + float alpha = 0.25f + 0.65f * power; + alpha = lerp(alpha, 1.0f, base.w); + float waterDepth = 0.75f; + + // water fog + float3 Fc = 0.1f * water_intensity.xxx * color; + final = lerp(Fc, final, alpha); + + alpha = min(alpha, saturate(waterDepth)); + alpha = max(1.0f - exp(-4.0f * waterDepth), alpha); + + float4 Light = float4(L_sun_color.xyz * 0.66f, 1.0f); + Light *= 1.0f - base.w; + + float2 CausticTexcoord = I.pos.xz * 0.45f + v2point.xz / (0.0001f + abs(v2point.y)) * 0.3f; + float3 Caustic = tex2D(s_caustic, CausticTexcoord).yyy; + + final += SpecularPhong(v2point, Nw, L_sun_dir_w.xyz) * Light.w; + final += Caustic * Light.xyz * 0.25f; + + return lerp(float4(final, alpha), fog_color, calc_fogging(I.pos)); +} + diff --git a/gamedata/shaders/editor/water.vs.hlsl b/gamedata/shaders/editor/water.vs.hlsl new file mode 100644 index 0000000..8af7811 --- /dev/null +++ b/gamedata/shaders/editor/water.vs.hlsl @@ -0,0 +1,83 @@ +#include "common.hlsli" +#include "shared\waterconfig.hlsli" +#include "shared\watermove.hlsli" + +struct vv +{ + float4 P : POSITION; + float2 tc : TEXCOORD0; + float3 N : NORMAL; + float4 C : COLOR0; +}; + +struct vf +{ + float2 tbase : TEXCOORD0; // base + float2 tnorm0 : TEXCOORD1; // nm0 + float2 tnorm1 : TEXCOORD2; // nm1 + float3 M1 : TEXCOORD3; + float3 M2 : TEXCOORD4; + float3 M3 : TEXCOORD5; + float3 v2point : TEXCOORD6; + float4 tctexgen : TEXCOORD7; + float3 pos : TEXCOORD8; + float4 c0 : COLOR0; + float4 hpos : POSITION; +}; + +uniform float4x4 m_texgen; +void main(in vv v, out vf o) +{ + // v.N = unpack_normal(v.N.xyz); + + // world + float4 P = float4(mul(m_W, v.P), 1.0f); + P = watermove(P); + + o.pos = P.xyz; + o.v2point = P - eye_position; + + o.tbase = P.xz * 0.3; // unpack_tc_base(v.uv, v.T.w, v.B.w); + o.tnorm0 = watermove_tc(o.tbase * W_DISTORT_BASE_TILE_0, P.xz, W_DISTORT_AMP_0); + o.tnorm1 = watermove_tc(o.tbase * W_DISTORT_BASE_TILE_1, P.xz, W_DISTORT_AMP_1); + + // Calculate the 3x3 transform from tangent space to eye-space + // TangentToEyeSpace = object2eye * tangent2object + // = object2eye * transpose(object2tangent) (since the inverse of a rotation is its transpose) + + float3 N = normalize(v.N); + + float3 T = float3(-1.0f, 0.0f, 0.0f); + T = normalize(T - dot(T, N) * N); + + float3 B = cross(N, T); + + float3x3 xform = mul((float3x3)m_W, float3x3( + T.x, B.x, N.x, + T.y, B.y, N.y, + T.z, B.z, N.z)); + + // The pixel shader operates on the bump-map in [0..1] range + // Remap this range in the matrix, anyway we are pixel-shader limited :) + // ...... [ 2 0 0 0] + // ...... [ 0 2 0 0] + // ...... [ 0 0 2 0] + // ...... [-1 -1 -1 1] + // issue: strange, but it's slower :( + // issue: interpolators? dp4? VS limited? black magic? + + // Feed this transform to pixel shader + o.M1 = xform[0]; + o.M2 = xform[1]; + o.M3 = xform[2]; + + // xform, input in world coords + o.hpos = mul(m_VP, P); + + o.c0 = v.C; + + // Igor: for additional depth dest + o.tctexgen = mul(m_texgen, P); + o.tctexgen.z = mul(m_V, P).z; +} + diff --git a/gamedata/shaders/editor/yuv2rgb.ps.hlsl b/gamedata/shaders/editor/yuv2rgb.ps.hlsl new file mode 100644 index 0000000..0016caa --- /dev/null +++ b/gamedata/shaders/editor/yuv2rgb.ps.hlsl @@ -0,0 +1,25 @@ +#include "common.hlsli" + +float4 main(float2 uv : TEXCOORD0) : COLOR +{ + float3 YUV = tex2D(s_base, uv); + + float Y = YUV.x; + float U = YUV.y; + float V = YUV.z; + + /* + float _T = 1.16406f*Y; + float R1 = _T + 1.59765f*V - 0.86961f; + float G1 = _T - 0.390625f*U - 0.8125f*V + 0.53076f; + float B1 = _T + 2.01562f*U - 1.0786f; + */ + + float c = 1.16406f; + float3 _Y = float3(c, c, c) * Y; + float3 _U = float3(0, -0.390625f, +2.01562f) * U; + float3 _V = float3(+1.59765f, -0.8125f, 0) * V; + float3 _S = float3(-0.86961f, +0.53076f, -1.0786f); + + return float4(_Y + _U + _V + _S, 1); +} diff --git a/gamedata/shaders/r1/.lua b/gamedata/shaders/r1/.lua new file mode 100644 index 0000000..751b1ce --- /dev/null +++ b/gamedata/shaders/r1/.lua @@ -0,0 +1,39 @@ +function printf(fmt, ...) + log(string.format(fmt, unpack(arg))) +end + +t_point_att = "internal\\internal_light_attpoint" +t_rt = "$user$rendertarget" +t_distort = "$user$distort" +t_noise = "fx\\fx_noise2" + +function r1_lspot(shader, t_base, vs, aref) + shader:begin(vs, "add_spot") + :fog(false) + :zb(true, false) + :blend(true, blend.one, blend.one) + :aref(true, aref or 0) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_lmap"):texture("internal\\internal_light_att") + :clamp() + :f_linear() + :project(true) + shader:sampler("s_att"):texture("internal\\internal_light_attclip") + :clamp() + :f_linear() +end + +function r1_lpoint(shader, t_base, vs, aref) + shader:begin(vs, "add_point") + :fog(false) + :zb(true, false) + :blend(true, blend.one, blend.one) + :aref(true, aref or 0) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_lmap"):texture(t_point_att) + :clamp() + :f_linear() + shader:sampler("s_att"):texture(t_point_att) + :clamp() + :f_linear() +end diff --git a/gamedata/shaders/r1/add_point.ps.hlsl b/gamedata/shaders/r1/add_point.ps.hlsl new file mode 100644 index 0000000..47326a3 --- /dev/null +++ b/gamedata/shaders/r1/add_point.ps.hlsl @@ -0,0 +1,18 @@ +#include "common.hlsli" + +// Pixel +float4 main(vf_point I) : COLOR +{ + float4 t_base = tex2D(s_base, I.tc0); + float4 t_att1 = tex2D(s_lmap, I.tc1); // point-att + float4 t_att2 = tex2D(s_att, I.tc2); // point-att + float4 t_att = t_att1 * t_att2; + + float4 final_color = t_base * t_att * I.color; + final_color.rgb *= t_base.a; + float3 final_rgb = (final_color + final_color) * 2.0f; + float final_a = final_color.w; + + // out + return final_color * 2.0f; // float4 (final_rgb,final_a); +} diff --git a/gamedata/shaders/r1/add_ppa.ps.hlsl b/gamedata/shaders/r1/add_ppa.ps.hlsl new file mode 100644 index 0000000..726e4f9 --- /dev/null +++ b/gamedata/shaders/r1/add_ppa.ps.hlsl @@ -0,0 +1,20 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float2 tc1 : TEXCOORD1; // base +}; + +uniform sampler2D s_base0; +uniform sampler2D s_base1; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 t_0 = tex2D(s_base0, I.tc0); + float4 t_1 = tex2D(s_base1, I.tc1); + + // out + return t_0 * t_1 * L_dynamic_color; +} diff --git a/gamedata/shaders/r1/add_spot.ps.hlsl b/gamedata/shaders/r1/add_spot.ps.hlsl new file mode 100644 index 0000000..317ce1c --- /dev/null +++ b/gamedata/shaders/r1/add_spot.ps.hlsl @@ -0,0 +1,17 @@ +#include "common.hlsli" + +// Pixel +float4 main(vf_spot I) : COLOR +{ + float4 t_base = tex2D(s_base, I.tc0); + float4 t_lmap = tex2Dproj(s_lmap, I.tc1); // spot-projector + float4 t_att = tex2D(s_att, I.tc2); // spot-att + + float4 final_color = t_base * t_lmap * t_att * I.color; + final_color.rgb *= t_base.a; + float3 final_rgb = (final_color + final_color) * 2.0f; + float final_a = final_color.w; + + // out + return final_color * 2; // float4 (final_rgb,final_a); +} diff --git a/gamedata/shaders/r1/avg2.ps.hlsl b/gamedata/shaders/r1/avg2.ps.hlsl new file mode 100644 index 0000000..a1c67f8 --- /dev/null +++ b/gamedata/shaders/r1/avg2.ps.hlsl @@ -0,0 +1,20 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float2 tc1 : TEXCOORD1; // base +}; + +uniform sampler2D s_base0; +uniform sampler2D s_base1; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 t_0 = tex2D(s_base0, I.tc0); + float4 t_1 = tex2D(s_base1, I.tc1); + + // out + return (t_0 + t_1) * .5; +} diff --git a/gamedata/shaders/r1/avg4.ps.hlsl b/gamedata/shaders/r1/avg4.ps.hlsl new file mode 100644 index 0000000..507ca01 --- /dev/null +++ b/gamedata/shaders/r1/avg4.ps.hlsl @@ -0,0 +1,26 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float2 tc1 : TEXCOORD1; // base + float2 tc2 : TEXCOORD2; // base + float2 tc3 : TEXCOORD3; // base +}; + +uniform sampler2D s_base0; +uniform sampler2D s_base1; +uniform sampler2D s_base2; +uniform sampler2D s_base3; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 t_0 = tex2D(s_base0, I.tc0); + float4 t_1 = tex2D(s_base1, I.tc1); + float4 t_2 = tex2D(s_base2, I.tc2); + float4 t_3 = tex2D(s_base3, I.tc3); + + // out + return ((t_0 + t_1) * .5 + (t_2 + t_3) * .5) * .5; +} diff --git a/gamedata/shaders/r1/base_laser.ps.hlsl b/gamedata/shaders/r1/base_laser.ps.hlsl new file mode 100644 index 0000000..5bbecdb --- /dev/null +++ b/gamedata/shaders/r1/base_laser.ps.hlsl @@ -0,0 +1,20 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0: TEXCOORD0; // base + float2 tc1: TEXCOORD1; // lmap + float4 c0: COLOR0; // sun +}; + +////////////////////////////////////////////////////////////////////////////////////////// +// Pixel +float4 main ( v2p I ) : COLOR +{ + float4 t_base = tex2D (s_base,I.tc0); + + // out + return float4 (t_base.r,t_base.g,t_base.b,t_base.a * I.c0.a); + + +} diff --git a/gamedata/shaders/r1/base_lplanes.ps.hlsl b/gamedata/shaders/r1/base_lplanes.ps.hlsl new file mode 100644 index 0000000..26d3f22 --- /dev/null +++ b/gamedata/shaders/r1/base_lplanes.ps.hlsl @@ -0,0 +1,17 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float2 tc1 : TEXCOORD1; // lmap + float4 c0 : COLOR0; // sun +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 t_base = tex2D(s_base, I.tc0); + + // out + return float4(t_base.r, t_base.g, t_base.b, t_base.a * I.c0.a); +} diff --git a/gamedata/shaders/r1/base_lplanes.vs.hlsl b/gamedata/shaders/r1/base_lplanes.vs.hlsl new file mode 100644 index 0000000..59e1225 --- /dev/null +++ b/gamedata/shaders/r1/base_lplanes.vs.hlsl @@ -0,0 +1,25 @@ +#include "common.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; // base + float4 c0 : COLOR0; // color +}; + +vf main(v_vert v) +{ + vf o; + + o.hpos = mul(m_WVP, v.P); // xform, input in world coords + o.tc0 = unpack_tc_base(v.uv, v.T.w, v.B.w); // copy tc + // o.tc0 = unpack_tc_base (v.tc); // copy tc + + // calculate fade + float3 dir_v = normalize(mul(m_WV, v.P)); + float3 norm_v = normalize(mul(m_WV, unpack_normal(v.N))); + float fade = abs(dot(dir_v, norm_v)); + o.c0 = fade; + + return o; +} diff --git a/gamedata/shaders/r1/base_lplanes_fft.ps.hlsl b/gamedata/shaders/r1/base_lplanes_fft.ps.hlsl new file mode 100644 index 0000000..461f592 --- /dev/null +++ b/gamedata/shaders/r1/base_lplanes_fft.ps.hlsl @@ -0,0 +1,31 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0: TEXCOORD0; // base + float2 tc1: TEXCOORD1; // lmap + float4 c0: COLOR0; // sun +}; + +inline bool isCollimatorActive() +{ + return (m_hud_params.w == 1.0f); +} + +////////////////////////////////////////////////////////////////////////////////////////// +// Pixel +float4 main(v2p I) : COLOR +{ + float4 t_base = tex2D(s_base,I.tc0); + + // out + + if(isCollimatorActive()) + { + return float4(t_base.r,t_base.g,t_base.b,t_base.a * I.c0.a); + } + else + { + return float4(t_base.r,t_base.g,t_base.b,t_base.a * 0.0f); + } +} diff --git a/gamedata/shaders/r1/blur2.lua b/gamedata/shaders/r1/blur2.lua new file mode 100644 index 0000000..8aa1756 --- /dev/null +++ b/gamedata/shaders/r1/blur2.lua @@ -0,0 +1,7 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("null", "avg2") + :fog(false) + :zb(false, false) + shader:sampler("s_base0"):texture(t_base):clamp():f_linear() + shader:sampler("s_base1"):texture(t_base):clamp():f_linear() +end diff --git a/gamedata/shaders/r1/blur4.lua b/gamedata/shaders/r1/blur4.lua new file mode 100644 index 0000000..7b6d201 --- /dev/null +++ b/gamedata/shaders/r1/blur4.lua @@ -0,0 +1,9 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("null", "avg4") + :fog(false) + :zb(false, false) + shader:sampler("s_base0"):texture(t_base):clamp():f_linear() + shader:sampler("s_base1"):texture(t_base):clamp():f_linear() + shader:sampler("s_base2"):texture(t_base):clamp():f_linear() + shader:sampler("s_base3"):texture(t_base):clamp():f_linear() +end diff --git a/gamedata/shaders/r1/clouds.lua b/gamedata/shaders/r1/clouds.lua new file mode 100644 index 0000000..88b3006 --- /dev/null +++ b/gamedata/shaders/r1/clouds.lua @@ -0,0 +1,10 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("clouds", "clouds") + :fog(false) + :zb(true, false) + :sorting(3, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + shader:sampler("s_clouds0"):texture("null"):wrap():f_anisotropic() + shader:sampler("s_clouds1"):texture("null"):wrap():f_anisotropic() + shader:sampler("s_tonemap"):texture("$user$tonemap") +end diff --git a/gamedata/shaders/r1/clouds.ps.hlsl b/gamedata/shaders/r1/clouds.ps.hlsl new file mode 100644 index 0000000..7de5c17 --- /dev/null +++ b/gamedata/shaders/r1/clouds.ps.hlsl @@ -0,0 +1,21 @@ +#include "common.hlsli" + +struct v2p +{ + float4 color : COLOR0; // rgb. intensity + float2 tc0 : TEXCOORD0; + float2 tc1 : TEXCOORD1; +}; + +uniform sampler2D s_clouds0 : register(s0); +uniform sampler2D s_clouds1 : register(s1); + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 s0 = tex2D(s_clouds0, I.tc0); + float4 s1 = tex2D(s_clouds1, I.tc1); + float4 mix = I.color * (s0 + s1); + + return float4(mix.rgb, mix.a); +} diff --git a/gamedata/shaders/r1/clouds.vs.hlsl b/gamedata/shaders/r1/clouds.vs.hlsl new file mode 100644 index 0000000..8b1a396 --- /dev/null +++ b/gamedata/shaders/r1/clouds.vs.hlsl @@ -0,0 +1,37 @@ +#include "common.hlsli" +#include "shared\cloudconfig.hlsli" + +struct vi +{ + float4 p : POSITION; + float4 dir : COLOR0; // dir0,dir1(w<->z) + float4 color : COLOR1; // rgb. intensity +}; + +struct vf +{ + float4 hpos : POSITION; + float4 color : COLOR0; // rgb. intensity + float2 tc0 : TEXCOORD0; + float2 tc1 : TEXCOORD1; +}; + +vf main(vi v) +{ + vf o; + + o.hpos = mul(m_WVP, v.p); // xform, input in world coords + o.color = v.color; // copy color + + o.color.w *= pow(v.p.y, 25); + + // if (length(float3(v.p.x,0,v.p.z))>CLOUD_FADE) o.color.w = 0 ; + + // generate tcs + float2 d0 = v.dir.xy * 2 - 1; + float2 d1 = v.dir.wz * 2 - 1; + o.tc0 = v.p.xz * CLOUD_TILE0 + d0 * timers.z * CLOUD_SPEED0; + o.tc1 = v.p.xz * CLOUD_TILE1 + d1 * timers.z * CLOUD_SPEED1; + + return o; +} diff --git a/gamedata/shaders/r1/common.hlsli b/gamedata/shaders/r1/common.hlsli new file mode 100644 index 0000000..2d26ae7 --- /dev/null +++ b/gamedata/shaders/r1/common.hlsli @@ -0,0 +1,160 @@ +#ifndef COMMON_H +#define COMMON_H + +#include "shared\common.hlsli" + +uniform float4 L_dynamic_props; // per object, xyz=sun,w=hemi +uniform float4 L_dynamic_color; // dynamic light color (rgb1) - spot/point +uniform float4 L_dynamic_pos; // dynamic light pos+1/range(w) - spot/point +uniform float4x4 L_dynamic_xform; + +uniform float4x4 m_plmap_xform; +uniform float4 m_plmap_clamp[2]; // 0.w = factor + +float calc_fogging(float4 w_pos) +{ + return saturate(dot(w_pos, fog_plane)); +} +float2 calc_detail(float3 w_pos) +{ + float dtl = distance(w_pos, eye_position) * dt_params.w; + dtl = min(dtl * dtl, 1.0f); + float dt_mul = 1.0f - dtl; // dt* [1 .. 0 ] + float dt_add = 0.5f * dtl; // dt+ [0 .. 0.5] + return float2(dt_mul, dt_add); +} +float3 calc_reflection(float3 pos_w, float3 norm_w) +{ + return reflect(normalize(pos_w - eye_position), norm_w); +} +float4 calc_spot(out float4 tc_lmap, out float2 tc_att, float4 w_pos, float3 w_norm) +{ + float4 s_pos = mul(L_dynamic_xform, w_pos); + tc_lmap = s_pos.xyww; // projected in ps/ttf + tc_att = s_pos.z; // z=distance * (1/range) + float3 L_dir_n = normalize(w_pos - L_dynamic_pos.xyz); + float L_scale = dot(w_norm, -L_dir_n); + return L_dynamic_color * L_scale * saturate(calc_fogging(w_pos)); +} +float4 calc_point(out float2 tc_att0, out float2 tc_att1, float4 w_pos, float3 w_norm) +{ + float3 L_dir_n = normalize(w_pos - L_dynamic_pos.xyz); + float L_scale = dot(w_norm, -L_dir_n); + float3 L_tc = (w_pos - L_dynamic_pos.xyz) * L_dynamic_pos.w + .5f; // tc coords + tc_att0 = L_tc.xz; + tc_att1 = L_tc.xy; + return L_dynamic_color * L_scale * saturate(calc_fogging(w_pos)); +} +float3 calc_sun(float3 norm_w) +{ + return L_sun_color * max(dot((norm_w), -L_sun_dir_w), 0); +} +float3 calc_model_hemi(float3 norm_w) +{ + return (norm_w.y * 0.5 + 0.5) * L_dynamic_props.w * L_hemi_color; +} +float3 calc_model_lq_lighting(float3 norm_w) +{ + return calc_model_hemi(norm_w) + L_ambient + L_dynamic_props.xyz * calc_sun(norm_w); +} +float3 _calc_model_hemi(float3 norm_w) +{ + return max(0, norm_w.y) * .2 * L_hemi_color; +} +float3 _calc_model_lq_lighting(float3 norm_w) +{ + return calc_model_hemi(norm_w) + L_ambient + .5 * calc_sun(norm_w); +} +float4 calc_model_lmap(float3 pos_w) +{ + float3 pos_wc = clamp(pos_w, m_plmap_clamp[0], m_plmap_clamp[1]); // clamp to BBox + float4 pos_w4c = float4(pos_wc, 1); + float4 plmap = mul(m_plmap_xform, pos_w4c); // calc plmap tc + return plmap.xyww; +} + +struct v_lmap +{ + float4 P : POSITION; // (float,float,float,1) + float4 N : NORMAL; // (nx,ny,nz,hemi occlusion) + float4 T : TANGENT; + float4 B : BINORMAL; + float2 uv0 : TEXCOORD0; // (base) + float2 uv1 : TEXCOORD1; // (lmap/compressed) +}; +struct v_vert +{ + float4 P : POSITION; // (float,float,float,1) + float4 N : NORMAL; // (nx,ny,nz,hemi occlusion) + float4 T : TANGENT; + float4 B : BINORMAL; + float4 color : COLOR0; // (r,g,b,dir-occlusion) + float2 uv : TEXCOORD0; // (u0,v0) +}; +struct v_model +{ + float4 pos : POSITION; // (float,float,float,1) + float3 norm : NORMAL; // (nx,ny,nz) + float3 T : TANGENT; // (nx,ny,nz) + float3 B : BINORMAL; // (nx,ny,nz) + float2 tc : TEXCOORD0; // (u,v) +#ifdef SKIN_COLOR + float3 rgb_tint; +#endif +}; +struct v_detail +{ + float4 pos : POSITION; // (float,float,float,1) + int4 misc : TEXCOORD0; // (u(Q),v(Q),frac,matrix-id) +}; +struct vf_spot +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; // base + float4 tc1 : TEXCOORD1; // lmap, projected + float2 tc2 : TEXCOORD2; // att + clipper + float4 color : COLOR0; +}; +struct vf_point +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; // base + float2 tc1 : TEXCOORD1; // att1 + clipper + float2 tc2 : TEXCOORD2; // att2 + clipper + float4 color : COLOR0; +}; + +uniform sampler2D s_base; +uniform samplerCUBE s_env; +uniform sampler2D s_lmap; +uniform sampler2D s_hemi; +uniform sampler2D s_att; +uniform sampler2D s_detail; + +#define def_distort float(0.05f) // we get -0.5 .. 0.5 range, this is -512 .. 512 for 1024, so scale it + +float3 v_hemi(float3 n) +{ + return L_hemi_color /* *(.5f + .5f*n.y) */; +} +float3 v_hemi_wrap(float3 n, float w) +{ + return L_hemi_color /* *(w + (1-w)*n.y) */; +} +float3 v_sun(float3 n) +{ + return L_sun_color * max(0, dot(n, -L_sun_dir_w)); +} +float3 v_sun_wrap(float3 n, float w) +{ + return L_sun_color * (w + (1 - w) * dot(n, -L_sun_dir_w)); +} +float3 p_hemi(float2 tc) +{ + // float3 t_lmh = tex2D (s_hemi, tc); + // return dot (t_lmh,1.h/3.h); + float4 t_lmh = tex2D(s_hemi, tc); + return t_lmh.a; +} + +#endif // COMMON_H diff --git a/gamedata/shaders/r1/detail.ps.hlsl b/gamedata/shaders/r1/detail.ps.hlsl new file mode 100644 index 0000000..8d18c6c --- /dev/null +++ b/gamedata/shaders/r1/detail.ps.hlsl @@ -0,0 +1,19 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float3 c0 : COLOR0; + float fog : FOG; +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 t_base = tex2D(s_base, I.tc0); + float3 final = t_base * I.c0 * 2.0f; + final = lerp(fog_color.xyz, final, I.fog); + + // out + return float4(final, t_base.a); +} diff --git a/gamedata/shaders/r1/detail_still.vs.hlsl b/gamedata/shaders/r1/detail_still.vs.hlsl new file mode 100644 index 0000000..3559b89 --- /dev/null +++ b/gamedata/shaders/r1/detail_still.vs.hlsl @@ -0,0 +1,68 @@ +#include "common.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float4 C : COLOR0; + float2 tc : TEXCOORD0; + float fog : FOG; +}; + +uniform float4 consts; // {1/quant,1/quant,diffusescale,ambient} + +uniform float2x4 array[50] : register(c10); + +float3x3 setMatrix (float3 hpb) +{ + + float _ch, _cp, _cb, _sh, _sp, _sb, _cc, _cs, _sc, _ss; + + sincos(hpb.x, _sh, _ch); + sincos(hpb.y, _sp, _cp); + sincos(hpb.z, _sb, _cb); + + _cc = _ch*_cb; _cs = _ch*_sb; _sc = _sh*_cb; _ss = _sh*_sb; + + return float3x3(_cc-_sp*_ss, _sp*_sc+_cs, -_cp*_sh, + -_cp*_sb, _cp*_cb, _sp, + _sp*_cs+_sc, _ss-_sp*_cc, _cp*_ch); +}; + +vf main(v_detail v) +{ + vf o; + + // index + int i = v.misc.w; + float2x4 mm = array[i]; + + float3x3 mmhpb = setMatrix(mm[0].xyz); + float3 posi = float3(mm[1].xyz); + + float scale = mm[0].w; + + float hemi = abs(mm[1].w); + float sun = sign(mm[1].w)*0.25f+0.25f; + + float4 m0 = float4(mmhpb[0]*scale, posi.x); + float4 m1 = float4(mmhpb[1]*scale, posi.y); + float4 m2 = float4(mmhpb[2]*scale, posi.z); + float4 c0 = float4(L_ambient.rgb+L_hemi_color.rgb*hemi+L_sun_color.rgb*sun, 1.0f); + + // Transform to world coords + float4 pos; + pos.x = dot(m0, v.pos); + pos.y = dot(m1, v.pos); + pos.z = dot(m2, v.pos); + pos.w = 1; + + // Calc fog + o.fog = calc_fogging(pos); + + // Final out + o.hpos = mul(m_WVP, pos); + o.C = c0; + o.tc.xy = (v.misc * consts).xy; + + return o; +} diff --git a/gamedata/shaders/r1/detail_wave.vs.hlsl b/gamedata/shaders/r1/detail_wave.vs.hlsl new file mode 100644 index 0000000..4ac25ee --- /dev/null +++ b/gamedata/shaders/r1/detail_wave.vs.hlsl @@ -0,0 +1,82 @@ +#include "common.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float4 C : COLOR0; + float2 tc : TEXCOORD0; + float fog : FOG; +}; + +uniform float4 consts; // {1/quant,1/quant,diffusescale,ambient} +uniform float4 wave; // cx,cy,cz,tm +uniform float4 dir2D; + +uniform float2x4 array[50] : register(c10); + +float3x3 setMatrix (float3 hpb) +{ + + float _ch, _cp, _cb, _sh, _sp, _sb, _cc, _cs, _sc, _ss; + + sincos(hpb.x, _sh, _ch); + sincos(hpb.y, _sp, _cp); + sincos(hpb.z, _sb, _cb); + + _cc = _ch*_cb; _cs = _ch*_sb; _sc = _sh*_cb; _ss = _sh*_sb; + + return float3x3(_cc-_sp*_ss, _sp*_sc+_cs, -_cp*_sh, + -_cp*_sb, _cp*_cb, _sp, + _sp*_cs+_sc, _ss-_sp*_cc, _cp*_ch); +}; + +vf main(v_detail v) +{ + vf o; + + // index + int i = v.misc.w; + float2x4 mm = array[i]; + + float3x3 mmhpb = setMatrix(mm[0].xyz); + float3 posi = float3(mm[1].xyz); + + float scale = mm[0].w; + + float hemi = abs(mm[1].w); + float sun = sign(mm[1].w)*0.25f+0.25f; + + float4 m0 = float4(mmhpb[0]*scale, posi.x); + float4 m1 = float4(mmhpb[1]*scale, posi.y); + float4 m2 = float4(mmhpb[2]*scale, posi.z); + float4 c0 = float4(L_ambient.rgb+L_hemi_color.rgb*hemi+L_sun_color.rgb*sun, 1.0f); + + // Transform to world coords + float4 pos; + pos.x = dot(m0, v.pos); + pos.y = dot(m1, v.pos); + pos.z = dot(m2, v.pos); + pos.w = 1; + + // + float base = m1.w; + float dp = calc_cyclic(dot(pos, wave)); + float H = v.pos.y * length(m1.xyz); + float fractional = v.misc.z * consts.x; // fractional + float inten = H * dp; + float2 result = calc_xz_wave(dir2D.xz * inten, fractional); + pos = float4(pos.x + result.x, pos.y, pos.z + result.y, 1); + o.hpos = mul(m_WVP, pos); + + // Calc fog + o.fog = calc_fogging(pos); + + // Fake lighting + float dpc = max(0.f, dp); + o.C = c0 * (consts.w + consts.z * dpc * fractional); + + // final xform, color, tc + o.tc.xy = (v.misc * consts).xy; + + return o; +} diff --git a/gamedata/shaders/r1/details_lod.lua b/gamedata/shaders/r1/details_lod.lua new file mode 100644 index 0000000..5344f3c --- /dev/null +++ b/gamedata/shaders/r1/details_lod.lua @@ -0,0 +1,23 @@ +function l_special(shader, t_base, t_second, t_detail) + shader:begin("lod", "lod") + :blend(false, blend.one, blend.zero) + :aref(true, 200) + :zb(true, true) + :fog(true) + shader:sampler("s_base0"):texture(t_base) + shader:sampler("s_base1"):texture(t_base) + shader:sampler("s_hemi0"):texture(t_base .. "_nm") + shader:sampler("s_hemi1"):texture(t_base .. "_nm") +end + +function normal(shader, t_base, t_second, t_detail) + shader:begin("lod", "lod") + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 8) + :zb(true, false) + :fog(true) + shader:sampler("s_base0"):texture(t_base) + shader:sampler("s_base1"):texture(t_base) + shader:sampler("s_hemi0"):texture(t_base .. "_nm") + shader:sampler("s_hemi1"):texture(t_base .. "_nm") +end diff --git a/gamedata/shaders/r1/editor.vs.hlsl b/gamedata/shaders/r1/editor.vs.hlsl new file mode 100644 index 0000000..d8639fe --- /dev/null +++ b/gamedata/shaders/r1/editor.vs.hlsl @@ -0,0 +1,19 @@ +#include "common.hlsli" + +struct vf +{ + float4 P : POSITION; + float4 C : COLOR0; +}; + +uniform float4 tfactor; + +vf main(vf i) +{ + vf o; + + o.P = mul(m_WVP, i.P); // xform, input in world coords + o.C = tfactor * i.C; + + return o; +} diff --git a/gamedata/shaders/r1/effects_lightplanes.lua b/gamedata/shaders/r1/effects_lightplanes.lua new file mode 100644 index 0000000..b885de8 --- /dev/null +++ b/gamedata/shaders/r1/effects_lightplanes.lua @@ -0,0 +1,9 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("base_lplanes", "base_lplanes") + :fog(false) + :zb(true, false) + :blend(true, blend.srcalpha, blend.one) + :aref(true, 0) + :sorting(2, false) + shader:sampler("s_base"):texture(t_base) +end diff --git a/gamedata/shaders/r1/effects_wallmarkblend.lua b/gamedata/shaders/r1/effects_wallmarkblend.lua new file mode 100644 index 0000000..6739e4c --- /dev/null +++ b/gamedata/shaders/r1/effects_wallmarkblend.lua @@ -0,0 +1,19 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("wmark", "wmark") + :sorting(2, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :zb(true, false) + :fog(true) + shader:sampler("s_base"):texture(t_base) +end + +function l_spot(shader, t_base, t_second, t_detail) + r1_lspot(shader, t_base, "wmark_spot") + shader:sorting(2, false) +end + +function l_point(shader, t_base, t_second, t_detail) + r1_lpoint(shader, t_base, "wmark_point") + shader:sorting(2, false) +end diff --git a/gamedata/shaders/r1/effects_wallmarkmult.lua b/gamedata/shaders/r1/effects_wallmarkmult.lua new file mode 100644 index 0000000..d2eb950 --- /dev/null +++ b/gamedata/shaders/r1/effects_wallmarkmult.lua @@ -0,0 +1,18 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("wmark", "wmarkmult") + :sorting(2, false) + :blend(true, blend.destcolor, blend.srccolor) + :aref(false, 0) + :zb(true, true) + :fog(true) + :wmark(true) + shader:sampler("s_base"):texture(t_base) +end + +function l_spot(shader, t_base, t_second, t_detail) + r1_lspot(shader, t_base, "wmark_spot") +end + +function l_point(shader, t_base, t_second, t_detail) + r1_lpoint(shader, t_base, "wmark_point") +end diff --git a/gamedata/shaders/r1/effects_wallmarkset.lua b/gamedata/shaders/r1/effects_wallmarkset.lua new file mode 100644 index 0000000..7c352bd --- /dev/null +++ b/gamedata/shaders/r1/effects_wallmarkset.lua @@ -0,0 +1,16 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("wmark", "wmark") + :sorting(1, false) + :aref(false, 0) + :zb(true, true) + :fog(true) + shader:sampler("s_base"):texture(t_base) +end + +function l_spot(shader, t_base, t_second, t_detail) + r1_lspot(shader, t_base, "wmark_spot") +end + +function l_point(shader, t_base, t_second, t_detail) + r1_lpoint(shader, t_base, "wmark_point") +end diff --git a/gamedata/shaders/r1/effects_water.lua b/gamedata/shaders/r1/effects_water.lua new file mode 100644 index 0000000..8ba0e8a --- /dev/null +++ b/gamedata/shaders/r1/effects_water.lua @@ -0,0 +1,27 @@ +local tex_base = "water\\water_water" +local tex_nmap = "water\\water_normal" +local tex_dist = "water\\water_dudv" + +function normal(shader, t_base, t_second, t_detail) + shader:begin("water", "water") + :sorting(2, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :distort(true) + :fog(false) + shader:sampler("s_base"):texture(tex_base) + shader:sampler("s_nmap"):texture(tex_nmap) + shader:sampler("s_env0"):texture("$user$sky0"):clamp() + shader:sampler("s_env1"):texture("$user$sky1"):clamp() +end + +--function l_special(shader, t_base, t_second, t_detail) +-- shader:begin ("waterd","waterd") +-- : sorting (2, true) +-- : blend (true,blend.srcalpha,blend.invsrcalpha) +-- : zb (true,false) +-- : fog (false) +-- : distort (true) +-- shader:sampler ("s_base") :texture (tex_base) +-- shader:sampler ("s_distort") :texture (tex_dist) +--end diff --git a/gamedata/shaders/r1/effects_waterryaska.lua b/gamedata/shaders/r1/effects_waterryaska.lua new file mode 100644 index 0000000..46baa69 --- /dev/null +++ b/gamedata/shaders/r1/effects_waterryaska.lua @@ -0,0 +1,28 @@ +local tex_base = "water\\water_ryaska1" +local tex_env = "sky\\sky_5_cube" +local tex_dist = "water\\water_dudv" +local tex_dist2 = "water\\water_dudv" + +function normal(shader, t_base, t_second, t_detail) + shader:begin("water", "water") + :sorting(2, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :zb(true, false) + :distort(true) + :fog(true) + shader:sampler("s_base"):texture(tex_base) + shader:sampler("s_env"):texture(tex_env):clamp() +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("waterd", "waterd") + :sorting(2, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(tex_base) + shader:sampler("s_distort0"):texture(tex_dist) + shader:sampler("s_distort1"):texture(tex_dist2) +end diff --git a/gamedata/shaders/r1/effects_waterstuden.lua b/gamedata/shaders/r1/effects_waterstuden.lua new file mode 100644 index 0000000..fe1c71a --- /dev/null +++ b/gamedata/shaders/r1/effects_waterstuden.lua @@ -0,0 +1,28 @@ +local tex_base = "water\\water_studen" +local tex_env = "sky\\sky_5_cube" +local tex_dist = "water\\water_dudv" +local tex_dist2 = "water\\water_dudv" + +function normal(shader, t_base, t_second, t_detail) + shader:begin("water", "water") + :sorting(2, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :zb(true, false) + :distort(true) + :fog(true) + shader:sampler("s_base"):texture(tex_base) + shader:sampler("s_env"):texture(tex_env):clamp() +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("waterd", "waterd") + :sorting(2, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(tex_base) + shader:sampler("s_distort0"):texture(tex_dist) + shader:sampler("s_distort1"):texture(tex_dist2) +end diff --git a/gamedata/shaders/r1/font2.ps.hlsl b/gamedata/shaders/r1/font2.ps.hlsl new file mode 100644 index 0000000..7892ebe --- /dev/null +++ b/gamedata/shaders/r1/font2.ps.hlsl @@ -0,0 +1,18 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 r = tex2D(s_base, I.tc0); + // r.x = 1 - r.x; + // r.y = 1 - r.y; + // r.z = 1 - r.z; + r.w = 1 - r.w; + return r; + // return /*(float4(1,1,1,1) - */ tex2D (s_base,I.tc0); +} diff --git a/gamedata/shaders/r1/fxaa.hlsli b/gamedata/shaders/r1/fxaa.hlsli new file mode 100644 index 0000000..73c17a1 --- /dev/null +++ b/gamedata/shaders/r1/fxaa.hlsli @@ -0,0 +1,1309 @@ +#define FXAA_PC 1 +#define FXAA_HLSL_3 1 +#define FXAA_QUALITY__PRESET 39 +#define FXAA_GREEN_AS_LUMA 1 + +/*--------------------------------------------------------------------------*/ +#ifndef FXAA_PC_CONSOLE + // + // The console algorithm for PC is included + // for developers targeting really low spec machines. + // Likely better to just run FXAA_PC, and use a really low preset. + // + #define FXAA_PC_CONSOLE 0 +#endif +/*--------------------------------------------------------------------------*/ +#ifndef FXAA_GLSL_120 + #define FXAA_GLSL_120 0 +#endif +/*--------------------------------------------------------------------------*/ +#ifndef FXAA_GLSL_130 + #define FXAA_GLSL_130 0 +#endif +/*--------------------------------------------------------------------------*/ +#ifndef FXAA_HLSL_3 + #define FXAA_HLSL_3 0 +#endif +/*--------------------------------------------------------------------------*/ +#ifndef FXAA_HLSL_4 + #define FXAA_HLSL_4 0 +#endif +/*--------------------------------------------------------------------------*/ +#ifndef FXAA_HLSL_5 + #define FXAA_HLSL_5 0 +#endif +/*==========================================================================*/ +#ifndef FXAA_GREEN_AS_LUMA + // + // For those using non-linear color, + // and either not able to get luma in alpha, or not wanting to, + // this enables FXAA to run using green as a proxy for luma. + // So with this enabled, no need to pack luma in alpha. + // + // This will turn off AA on anything which lacks some amount of green. + // Pure red and blue or combination of only R and B, will get no AA. + // + // Might want to lower the settings for both, + // fxaaConsoleEdgeThresholdMin + // fxaaQualityEdgeThresholdMin + // In order to insure AA does not get turned off on colors + // which contain a minor amount of green. + // + // 1 = On. + // 0 = Off. + // + #define FXAA_GREEN_AS_LUMA 0 +#endif +/*--------------------------------------------------------------------------*/ +#ifndef FXAA_EARLY_EXIT + // + // Controls algorithm's early exit path. + // On PS3 turning this ON adds 2 cycles to the shader. + // On 360 turning this OFF adds 10ths of a millisecond to the shader. + // Turning this off on console will result in a more blurry image. + // So this defaults to on. + // + // 1 = On. + // 0 = Off. + // + #define FXAA_EARLY_EXIT 1 +#endif +/*--------------------------------------------------------------------------*/ +#ifndef FXAA_DISCARD + // + // Only valid for PC OpenGL currently. + // Probably will not work when FXAA_GREEN_AS_LUMA = 1. + // + // 1 = Use discard on pixels which don't need AA. + // For APIs which enable concurrent TEX+ROP from same surface. + // 0 = Return unchanged color on pixels which don't need AA. + // + #define FXAA_DISCARD 1 +#endif +/*--------------------------------------------------------------------------*/ +#ifndef FXAA_FAST_PIXEL_OFFSET + // + // Used for GLSL 120 only. + // + // 1 = GL API supports fast pixel offsets + // 0 = do not use fast pixel offsets + // + #ifdef GL_EXT_gpu_shader4 + #define FXAA_FAST_PIXEL_OFFSET 1 + #endif + #ifdef GL_NV_gpu_shader5 + #define FXAA_FAST_PIXEL_OFFSET 1 + #endif + #ifdef GL_ARB_gpu_shader5 + #define FXAA_FAST_PIXEL_OFFSET 1 + #endif + #ifndef FXAA_FAST_PIXEL_OFFSET + #define FXAA_FAST_PIXEL_OFFSET 0 + #endif +#endif +/*--------------------------------------------------------------------------*/ +#ifndef FXAA_GATHER4_ALPHA + // + // 1 = API supports gather4 on alpha channel. + // 0 = API does not support gather4 on alpha channel. + // + #if (FXAA_HLSL_5 == 1) + #define FXAA_GATHER4_ALPHA 1 + #endif + #ifdef GL_ARB_gpu_shader5 + #define FXAA_GATHER4_ALPHA 1 + #endif + #ifdef GL_NV_gpu_shader5 + #define FXAA_GATHER4_ALPHA 1 + #endif + #ifndef FXAA_GATHER4_ALPHA + #define FXAA_GATHER4_ALPHA 0 + #endif +#endif + +/*============================================================================ + FXAA QUALITY - TUNING KNOBS +------------------------------------------------------------------------------ +NOTE the other tuning knobs are now in the shader function inputs! +============================================================================*/ +#ifndef FXAA_QUALITY__PRESET + // + // Choose the quality preset. + // This needs to be compiled into the shader as it effects code. + // Best option to include multiple presets is to + // in each shader define the preset, then include this file. + // + // OPTIONS + // ----------------------------------------------------------------------- + // 10 to 15 - default medium dither (10=fastest, 15=highest quality) + // 20 to 29 - less dither, more expensive (20=fastest, 29=highest quality) + // 39 - no dither, very expensive + // + // NOTES + // ----------------------------------------------------------------------- + // 12 = slightly faster then FXAA 3.9 and higher edge quality (default) + // 13 = about same speed as FXAA 3.9 and better than 12 + // 23 = closest to FXAA 3.9 visually and performance wise + // _ = the lowest digit is directly related to performance + // _ = the highest digit is directly related to style + // + #define FXAA_QUALITY__PRESET 12 +#endif + +/*============================================================================ + + FXAA QUALITY - PRESETS + +============================================================================*/ + +/*============================================================================ + FXAA QUALITY - MEDIUM DITHER PRESETS +============================================================================*/ +#if (FXAA_QUALITY__PRESET == 10) + #define FXAA_QUALITY__PS 3 + #define FXAA_QUALITY__P0 1.5 + #define FXAA_QUALITY__P1 3.0 + #define FXAA_QUALITY__P2 12.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 11) + #define FXAA_QUALITY__PS 4 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 3.0 + #define FXAA_QUALITY__P3 12.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 12) + #define FXAA_QUALITY__PS 5 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 4.0 + #define FXAA_QUALITY__P4 12.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 13) + #define FXAA_QUALITY__PS 6 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 4.0 + #define FXAA_QUALITY__P5 12.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 14) + #define FXAA_QUALITY__PS 7 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 2.0 + #define FXAA_QUALITY__P5 4.0 + #define FXAA_QUALITY__P6 12.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 15) + #define FXAA_QUALITY__PS 8 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 2.0 + #define FXAA_QUALITY__P5 2.0 + #define FXAA_QUALITY__P6 4.0 + #define FXAA_QUALITY__P7 12.0 +#endif + +/*============================================================================ + FXAA QUALITY - LOW DITHER PRESETS +============================================================================*/ +#if (FXAA_QUALITY__PRESET == 20) + #define FXAA_QUALITY__PS 3 + #define FXAA_QUALITY__P0 1.5 + #define FXAA_QUALITY__P1 2.0 + #define FXAA_QUALITY__P2 8.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 21) + #define FXAA_QUALITY__PS 4 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 8.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 22) + #define FXAA_QUALITY__PS 5 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 8.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 23) + #define FXAA_QUALITY__PS 6 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 2.0 + #define FXAA_QUALITY__P5 8.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 24) + #define FXAA_QUALITY__PS 7 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 2.0 + #define FXAA_QUALITY__P5 3.0 + #define FXAA_QUALITY__P6 8.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 25) + #define FXAA_QUALITY__PS 8 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 2.0 + #define FXAA_QUALITY__P5 2.0 + #define FXAA_QUALITY__P6 4.0 + #define FXAA_QUALITY__P7 8.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 26) + #define FXAA_QUALITY__PS 9 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 2.0 + #define FXAA_QUALITY__P5 2.0 + #define FXAA_QUALITY__P6 2.0 + #define FXAA_QUALITY__P7 4.0 + #define FXAA_QUALITY__P8 8.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 27) + #define FXAA_QUALITY__PS 10 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 2.0 + #define FXAA_QUALITY__P5 2.0 + #define FXAA_QUALITY__P6 2.0 + #define FXAA_QUALITY__P7 2.0 + #define FXAA_QUALITY__P8 4.0 + #define FXAA_QUALITY__P9 8.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 28) + #define FXAA_QUALITY__PS 11 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 2.0 + #define FXAA_QUALITY__P5 2.0 + #define FXAA_QUALITY__P6 2.0 + #define FXAA_QUALITY__P7 2.0 + #define FXAA_QUALITY__P8 2.0 + #define FXAA_QUALITY__P9 4.0 + #define FXAA_QUALITY__P10 8.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 29) + #define FXAA_QUALITY__PS 12 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 2.0 + #define FXAA_QUALITY__P5 2.0 + #define FXAA_QUALITY__P6 2.0 + #define FXAA_QUALITY__P7 2.0 + #define FXAA_QUALITY__P8 2.0 + #define FXAA_QUALITY__P9 2.0 + #define FXAA_QUALITY__P10 4.0 + #define FXAA_QUALITY__P11 8.0 +#endif + +/*============================================================================ + FXAA QUALITY - EXTREME QUALITY +============================================================================*/ +#if (FXAA_QUALITY__PRESET == 39) + #define FXAA_QUALITY__PS 12 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.0 + #define FXAA_QUALITY__P2 1.0 + #define FXAA_QUALITY__P3 1.0 + #define FXAA_QUALITY__P4 1.0 + #define FXAA_QUALITY__P5 1.5 + #define FXAA_QUALITY__P6 2.0 + #define FXAA_QUALITY__P7 2.0 + #define FXAA_QUALITY__P8 2.0 + #define FXAA_QUALITY__P9 2.0 + #define FXAA_QUALITY__P10 4.0 + #define FXAA_QUALITY__P11 8.0 +#endif + +/*============================================================================ + + API PORTING + +============================================================================*/ +#if (FXAA_GLSL_120 == 1) || (FXAA_GLSL_130 == 1) + #define FxaaBool bool + #define FxaaDiscard discard + #define FxaaFloat float + #define FxaaFloat2 vec2 + #define FxaaFloat3 vec3 + #define FxaaFloat4 vec4 + #define FxaaInt2 ivec2 + #define FxaaSat(x) clamp(x, 0.0, 1.0) + #define FxaaTex sampler2D +#else + #define FxaaBool bool + #define FxaaDiscard clip(-1) + #define FxaaFloat float + #define FxaaFloat2 float2 + #define FxaaFloat3 float3 + #define FxaaFloat4 float4 + #define FxaaSat(x) saturate(x) +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_GLSL_120 == 1) + // Requires, + // #version 120 + // And at least, + // #extension GL_EXT_gpu_shader4 : enable + // (or set FXAA_FAST_PIXEL_OFFSET 1 to work like DX9) + #define FxaaTexTop(t, p) texture2DLod(t, p, 0.0) + #if (FXAA_FAST_PIXEL_OFFSET == 1) + #define FxaaTexOff(t, p, o, r) texture2DLodOffset(t, p, 0.0, o) + #else + #define FxaaTexOff(t, p, o, r) texture2DLod(t, p + (o * r), 0.0) + #endif + #if (FXAA_GATHER4_ALPHA == 1) + // use #extension GL_ARB_gpu_shader5 : enable + #define FxaaTexAlpha4(t, p) textureGather(t, p, 3) + #define FxaaTexOffAlpha4(t, p, o) textureGatherOffset(t, p, o, 3) + #define FxaaTexGreen4(t, p) textureGather(t, p, 1) + #define FxaaTexOffGreen4(t, p, o) textureGatherOffset(t, p, o, 1) + #endif +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_GLSL_130 == 1) + // Requires "#version 130" or better + #define FxaaTexTop(t, p) textureLod(t, p, 0.0) + #define FxaaTexOff(t, p, o, r) textureLodOffset(t, p, 0.0, o) + #if (FXAA_GATHER4_ALPHA == 1) + // use #extension GL_ARB_gpu_shader5 : enable + #define FxaaTexAlpha4(t, p) textureGather(t, p, 3) + #define FxaaTexOffAlpha4(t, p, o) textureGatherOffset(t, p, o, 3) + #define FxaaTexGreen4(t, p) textureGather(t, p, 1) + #define FxaaTexOffGreen4(t, p, o) textureGatherOffset(t, p, o, 1) + #endif +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_HLSL_3 == 1) || (FXAA_360 == 1) || (FXAA_PS3 == 1) + #define FxaaInt2 float2 + #define FxaaTex sampler2D + #define FxaaTexTop(t, p) tex2Dlod(t, float4(p, 0.0, 0.0)) + #define FxaaTexOff(t, p, o, r) tex2Dlod(t, float4(p + (o * r), 0, 0)) +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_HLSL_4 == 1) + #define FxaaInt2 int2 +struct FxaaTex +{ + SamplerState smpl; + Texture2D tex; +}; + #define FxaaTexTop(t, p) t.tex.SampleLevel(t.smpl, p, 0.0) + #define FxaaTexOff(t, p, o, r) t.tex.SampleLevel(t.smpl, p, 0.0, o) +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_HLSL_5 == 1) + #define FxaaInt2 int2 +struct FxaaTex +{ + SamplerState smpl; + Texture2D tex; +}; + #define FxaaTexTop(t, p) t.tex.SampleLevel(t.smpl, p, 0.0) + #define FxaaTexOff(t, p, o, r) t.tex.SampleLevel(t.smpl, p, 0.0, o) + #define FxaaTexAlpha4(t, p) t.tex.GatherAlpha(t.smpl, p) + #define FxaaTexOffAlpha4(t, p, o) t.tex.GatherAlpha(t.smpl, p, o) + #define FxaaTexGreen4(t, p) t.tex.GatherGreen(t.smpl, p) + #define FxaaTexOffGreen4(t, p, o) t.tex.GatherGreen(t.smpl, p, o) +#endif + +/*============================================================================ + GREEN AS LUMA OPTION SUPPORT FUNCTION +============================================================================*/ +#if (FXAA_GREEN_AS_LUMA == 0) +FxaaFloat FxaaLuma(FxaaFloat4 rgba) +{ + return rgba.w; +} +#else +FxaaFloat FxaaLuma(FxaaFloat4 rgba) +{ + return rgba.y; +} +#endif + +/*============================================================================ + + FXAA3 QUALITY - PC + +============================================================================*/ +#if (FXAA_PC == 1) +/*--------------------------------------------------------------------------*/ +FxaaFloat4 FxaaPixelShader( + // + // Use noperspective interpolation here (turn off perspective interpolation). + // {xy} = center of pixel + FxaaFloat2 pos, + // + // Used only for FXAA Console, and not used on the 360 version. + // Use noperspective interpolation here (turn off perspective interpolation). + // {xy__} = upper left of pixel + // {__zw} = lower right of pixel + FxaaFloat4 fxaaConsolePosPos, + // + // Input color texture. + // {rgb_} = color in linear or perceptual color space + // if (FXAA_GREEN_AS_LUMA == 0) + // {___a} = luma in perceptual color space (not linear) + FxaaTex tex, + // + // Only used on the optimized 360 version of FXAA Console. + // For everything but 360, just use the same input here as for "tex". + // For 360, same texture, just alias with a 2nd sampler. + // This sampler needs to have an exponent bias of -1. + FxaaTex fxaaConsole360TexExpBiasNegOne, + // + // Only used on the optimized 360 version of FXAA Console. + // For everything but 360, just use the same input here as for "tex". + // For 360, same texture, just alias with a 3nd sampler. + // This sampler needs to have an exponent bias of -2. + FxaaTex fxaaConsole360TexExpBiasNegTwo, + // + // Only used on FXAA Quality. + // This must be from a constant/uniform. + // {x_} = 1.0/screenWidthInPixels + // {_y} = 1.0/screenHeightInPixels + FxaaFloat2 fxaaQualityRcpFrame, + // + // Only used on FXAA Console. + // This must be from a constant/uniform. + // This effects sub-pixel AA quality and inversely sharpness. + // Where N ranges between, + // N = 0.50 (default) + // N = 0.33 (sharper) + // {x___} = -N/screenWidthInPixels + // {_y__} = -N/screenHeightInPixels + // {__z_} = N/screenWidthInPixels + // {___w} = N/screenHeightInPixels + FxaaFloat4 fxaaConsoleRcpFrameOpt, + // + // Only used on FXAA Console. + // Not used on 360, but used on PS3 and PC. + // This must be from a constant/uniform. + // {x___} = -2.0/screenWidthInPixels + // {_y__} = -2.0/screenHeightInPixels + // {__z_} = 2.0/screenWidthInPixels + // {___w} = 2.0/screenHeightInPixels + FxaaFloat4 fxaaConsoleRcpFrameOpt2, + // + // Only used on FXAA Console. + // Only used on 360 in place of fxaaConsoleRcpFrameOpt2. + // This must be from a constant/uniform. + // {x___} = 8.0/screenWidthInPixels + // {_y__} = 8.0/screenHeightInPixels + // {__z_} = -4.0/screenWidthInPixels + // {___w} = -4.0/screenHeightInPixels + FxaaFloat4 fxaaConsole360RcpFrameOpt2, + // + // Only used on FXAA Quality. + // This used to be the FXAA_QUALITY__SUBPIX define. + // It is here now to allow easier tuning. + // Choose the amount of sub-pixel aliasing removal. + // This can effect sharpness. + // 1.00 - upper limit (softer) + // 0.75 - default amount of filtering + // 0.50 - lower limit (sharper, less sub-pixel aliasing removal) + // 0.25 - almost off + // 0.00 - completely off + FxaaFloat fxaaQualitySubpix, + // + // Only used on FXAA Quality. + // This used to be the FXAA_QUALITY__EDGE_THRESHOLD define. + // It is here now to allow easier tuning. + // The minimum amount of local contrast required to apply algorithm. + // 0.333 - too little (faster) + // 0.250 - low quality + // 0.166 - default + // 0.125 - high quality + // 0.063 - overkill (slower) + FxaaFloat fxaaQualityEdgeThreshold, + // + // Only used on FXAA Quality. + // This used to be the FXAA_QUALITY__EDGE_THRESHOLD_MIN define. + // It is here now to allow easier tuning. + // Trims the algorithm from processing darks. + // 0.0833 - upper limit (default, the start of visible unfiltered edges) + // 0.0625 - high quality (faster) + // 0.0312 - visible limit (slower) + // Special notes when using FXAA_GREEN_AS_LUMA, + // Likely want to set this to zero. + // As colors that are mostly not-green + // will appear very dark in the green channel! + // Tune by looking at mostly non-green content, + // then start at zero and increase until aliasing is a problem. + FxaaFloat fxaaQualityEdgeThresholdMin, + // + // Only used on FXAA Console. + // This used to be the FXAA_CONSOLE__EDGE_SHARPNESS define. + // It is here now to allow easier tuning. + // This does not effect PS3, as this needs to be compiled in. + // Use FXAA_CONSOLE__PS3_EDGE_SHARPNESS for PS3. + // Due to the PS3 being ALU bound, + // there are only three safe values here: 2 and 4 and 8. + // These options use the shaders ability to a free *|/ by 2|4|8. + // For all other platforms can be a non-power of two. + // 8.0 is sharper (default!!!) + // 4.0 is softer + // 2.0 is really soft (good only for vector graphics inputs) + FxaaFloat fxaaConsoleEdgeSharpness, + // + // Only used on FXAA Console. + // This used to be the FXAA_CONSOLE__EDGE_THRESHOLD define. + // It is here now to allow easier tuning. + // This does not effect PS3, as this needs to be compiled in. + // Use FXAA_CONSOLE__PS3_EDGE_THRESHOLD for PS3. + // Due to the PS3 being ALU bound, + // there are only two safe values here: 1/4 and 1/8. + // These options use the shaders ability to a free *|/ by 2|4|8. + // The console setting has a different mapping than the quality setting. + // Other platforms can use other values. + // 0.125 leaves less aliasing, but is softer (default!!!) + // 0.25 leaves more aliasing, and is sharper + FxaaFloat fxaaConsoleEdgeThreshold, + // + // Only used on FXAA Console. + // This used to be the FXAA_CONSOLE__EDGE_THRESHOLD_MIN define. + // It is here now to allow easier tuning. + // Trims the algorithm from processing darks. + // The console setting has a different mapping than the quality setting. + // This only applies when FXAA_EARLY_EXIT is 1. + // This does not apply to PS3, + // PS3 was simplified to avoid more shader instructions. + // 0.06 - faster but more aliasing in darks + // 0.05 - default + // 0.04 - slower and less aliasing in darks + // Special notes when using FXAA_GREEN_AS_LUMA, + // Likely want to set this to zero. + // As colors that are mostly not-green + // will appear very dark in the green channel! + // Tune by looking at mostly non-green content, + // then start at zero and increase until aliasing is a problem. + FxaaFloat fxaaConsoleEdgeThresholdMin, + // + // Extra constants for 360 FXAA Console only. + // Use zeros or anything else for other platforms. + // These must be in physical constant registers and NOT immedates. + // Immedates will result in compiler un-optimizing. + // {xyzw} = float4(1.0, -1.0, 0.25, -0.25) + FxaaFloat4 fxaaConsole360ConstDir) +{ + /*--------------------------------------------------------------------------*/ + FxaaFloat2 posM; + posM.x = pos.x; + posM.y = pos.y; + #if (FXAA_GATHER4_ALPHA == 1) + #if (FXAA_DISCARD == 0) + FxaaFloat4 rgbyM = FxaaTexTop(tex, posM); + #if (FXAA_GREEN_AS_LUMA == 0) + #define lumaM rgbyM.w + #else + #define lumaM rgbyM.y + #endif + #endif + #if (FXAA_GREEN_AS_LUMA == 0) + FxaaFloat4 luma4A = FxaaTexAlpha4(tex, posM); + FxaaFloat4 luma4B = FxaaTexOffAlpha4(tex, posM, FxaaInt2(-1, -1)); + #else + FxaaFloat4 luma4A = FxaaTexGreen4(tex, posM); + FxaaFloat4 luma4B = FxaaTexOffGreen4(tex, posM, FxaaInt2(-1, -1)); + #endif + #if (FXAA_DISCARD == 1) + #define lumaM luma4A.w + #endif + #define lumaE luma4A.z + #define lumaS luma4A.x + #define lumaSE luma4A.y + #define lumaNW luma4B.w + #define lumaN luma4B.z + #define lumaW luma4B.x + #else + FxaaFloat4 rgbyM = FxaaTexTop(tex, posM); + #if (FXAA_GREEN_AS_LUMA == 0) + #define lumaM rgbyM.w + #else + #define lumaM rgbyM.y + #endif + FxaaFloat lumaS = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(0, 1), fxaaQualityRcpFrame.xy)); + FxaaFloat lumaE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(1, 0), fxaaQualityRcpFrame.xy)); + FxaaFloat lumaN = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(0, -1), fxaaQualityRcpFrame.xy)); + FxaaFloat lumaW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1, 0), fxaaQualityRcpFrame.xy)); + #endif + /*--------------------------------------------------------------------------*/ + FxaaFloat maxSM = max(lumaS, lumaM); + FxaaFloat minSM = min(lumaS, lumaM); + FxaaFloat maxESM = max(lumaE, maxSM); + FxaaFloat minESM = min(lumaE, minSM); + FxaaFloat maxWN = max(lumaN, lumaW); + FxaaFloat minWN = min(lumaN, lumaW); + FxaaFloat rangeMax = max(maxWN, maxESM); + FxaaFloat rangeMin = min(minWN, minESM); + FxaaFloat rangeMaxScaled = rangeMax * fxaaQualityEdgeThreshold; + FxaaFloat range = rangeMax - rangeMin; + FxaaFloat rangeMaxClamped = max(fxaaQualityEdgeThresholdMin, rangeMaxScaled); + FxaaBool earlyExit = range < rangeMaxClamped; + /*--------------------------------------------------------------------------*/ + if (earlyExit) + #if (FXAA_DISCARD == 1) + FxaaDiscard; + #else + return rgbyM; + #endif + /*--------------------------------------------------------------------------*/ + #if (FXAA_GATHER4_ALPHA == 0) + FxaaFloat lumaNW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1, -1), fxaaQualityRcpFrame.xy)); + FxaaFloat lumaSE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(1, 1), fxaaQualityRcpFrame.xy)); + FxaaFloat lumaNE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(1, -1), fxaaQualityRcpFrame.xy)); + FxaaFloat lumaSW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1, 1), fxaaQualityRcpFrame.xy)); + #else + FxaaFloat lumaNE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(1, -1), fxaaQualityRcpFrame.xy)); + FxaaFloat lumaSW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1, 1), fxaaQualityRcpFrame.xy)); + #endif + /*--------------------------------------------------------------------------*/ + FxaaFloat lumaNS = lumaN + lumaS; + FxaaFloat lumaWE = lumaW + lumaE; + FxaaFloat subpixRcpRange = 1.0 / range; + FxaaFloat subpixNSWE = lumaNS + lumaWE; + FxaaFloat edgeHorz1 = (-2.0 * lumaM) + lumaNS; + FxaaFloat edgeVert1 = (-2.0 * lumaM) + lumaWE; + /*--------------------------------------------------------------------------*/ + FxaaFloat lumaNESE = lumaNE + lumaSE; + FxaaFloat lumaNWNE = lumaNW + lumaNE; + FxaaFloat edgeHorz2 = (-2.0 * lumaE) + lumaNESE; + FxaaFloat edgeVert2 = (-2.0 * lumaN) + lumaNWNE; + /*--------------------------------------------------------------------------*/ + FxaaFloat lumaNWSW = lumaNW + lumaSW; + FxaaFloat lumaSWSE = lumaSW + lumaSE; + FxaaFloat edgeHorz4 = (abs(edgeHorz1) * 2.0) + abs(edgeHorz2); + FxaaFloat edgeVert4 = (abs(edgeVert1) * 2.0) + abs(edgeVert2); + FxaaFloat edgeHorz3 = (-2.0 * lumaW) + lumaNWSW; + FxaaFloat edgeVert3 = (-2.0 * lumaS) + lumaSWSE; + FxaaFloat edgeHorz = abs(edgeHorz3) + edgeHorz4; + FxaaFloat edgeVert = abs(edgeVert3) + edgeVert4; + /*--------------------------------------------------------------------------*/ + FxaaFloat subpixNWSWNESE = lumaNWSW + lumaNESE; + FxaaFloat lengthSign = fxaaQualityRcpFrame.x; + FxaaBool horzSpan = edgeHorz >= edgeVert; + FxaaFloat subpixA = subpixNSWE * 2.0 + subpixNWSWNESE; + /*--------------------------------------------------------------------------*/ + if (!horzSpan) + { + lumaN = lumaW; + } + if (!horzSpan) + { + lumaS = lumaE; + } + if (horzSpan) + { + lengthSign = fxaaQualityRcpFrame.y; + } + FxaaFloat subpixB = (subpixA * (1.0 / 12.0)) - lumaM; + /*--------------------------------------------------------------------------*/ + FxaaFloat gradientN = lumaN - lumaM; + FxaaFloat gradientS = lumaS - lumaM; + FxaaFloat lumaNN = lumaN + lumaM; + FxaaFloat lumaSS = lumaS + lumaM; + FxaaBool pairN = abs(gradientN) >= abs(gradientS); + FxaaFloat gradient = max(abs(gradientN), abs(gradientS)); + if (pairN) + { + lengthSign = -lengthSign; + } + FxaaFloat subpixC = FxaaSat(abs(subpixB) * subpixRcpRange); + /*--------------------------------------------------------------------------*/ + FxaaFloat2 posB; + posB.x = posM.x; + posB.y = posM.y; + FxaaFloat2 offNP; + offNP.x = (!horzSpan) ? 0.0 : fxaaQualityRcpFrame.x; + offNP.y = (horzSpan) ? 0.0 : fxaaQualityRcpFrame.y; + if (!horzSpan) + { + posB.x += lengthSign * 0.5; + } + if (horzSpan) + { + posB.y += lengthSign * 0.5; + } + /*--------------------------------------------------------------------------*/ + FxaaFloat2 posN; + posN.x = posB.x - offNP.x * FXAA_QUALITY__P0; + posN.y = posB.y - offNP.y * FXAA_QUALITY__P0; + FxaaFloat2 posP; + posP.x = posB.x + offNP.x * FXAA_QUALITY__P0; + posP.y = posB.y + offNP.y * FXAA_QUALITY__P0; + FxaaFloat subpixD = ((-2.0) * subpixC) + 3.0; + FxaaFloat lumaEndN = FxaaLuma(FxaaTexTop(tex, posN)); + FxaaFloat subpixE = subpixC * subpixC; + FxaaFloat lumaEndP = FxaaLuma(FxaaTexTop(tex, posP)); + /*--------------------------------------------------------------------------*/ + if (!pairN) + { + lumaNN = lumaSS; + } + FxaaFloat gradientScaled = gradient * 1.0 / 4.0; + FxaaFloat lumaMM = lumaM - lumaNN * 0.5; + FxaaFloat subpixF = subpixD * subpixE; + FxaaBool lumaMLTZero = lumaMM < 0.0; + /*--------------------------------------------------------------------------*/ + lumaEndN -= lumaNN * 0.5; + lumaEndP -= lumaNN * 0.5; + FxaaBool doneN = abs(lumaEndN) >= gradientScaled; + FxaaBool doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P1; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P1; + } + FxaaBool doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P1; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P1; + } + /*--------------------------------------------------------------------------*/ + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P2; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P2; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P2; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P2; + } + /*--------------------------------------------------------------------------*/ + #if (FXAA_QUALITY__PS > 3) + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P3; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P3; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P3; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P3; + } + /*--------------------------------------------------------------------------*/ + #if (FXAA_QUALITY__PS > 4) + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P4; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P4; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P4; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P4; + } + /*--------------------------------------------------------------------------*/ + #if (FXAA_QUALITY__PS > 5) + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P5; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P5; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P5; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P5; + } + /*--------------------------------------------------------------------------*/ + #if (FXAA_QUALITY__PS > 6) + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P6; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P6; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P6; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P6; + } + /*--------------------------------------------------------------------------*/ + #if (FXAA_QUALITY__PS > 7) + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P7; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P7; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P7; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P7; + } + /*--------------------------------------------------------------------------*/ + #if (FXAA_QUALITY__PS > 8) + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P8; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P8; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P8; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P8; + } + /*--------------------------------------------------------------------------*/ + #if (FXAA_QUALITY__PS > 9) + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P9; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P9; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P9; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P9; + } + /*--------------------------------------------------------------------------*/ + #if (FXAA_QUALITY__PS > 10) + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P10; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P10; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P10; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P10; + } + /*--------------------------------------------------------------------------*/ + #if (FXAA_QUALITY__PS > 11) + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P11; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P11; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P11; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P11; + } + /*--------------------------------------------------------------------------*/ + #if (FXAA_QUALITY__PS > 12) + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P12; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P12; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P12; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P12; + } + /*--------------------------------------------------------------------------*/ + } + #endif + /*--------------------------------------------------------------------------*/ + } + #endif + /*--------------------------------------------------------------------------*/ + } + #endif + /*--------------------------------------------------------------------------*/ + } + #endif + /*--------------------------------------------------------------------------*/ + } + #endif + /*--------------------------------------------------------------------------*/ + } + #endif + /*--------------------------------------------------------------------------*/ + } + #endif + /*--------------------------------------------------------------------------*/ + } + #endif + /*--------------------------------------------------------------------------*/ + } + #endif + /*--------------------------------------------------------------------------*/ + } + #endif + /*--------------------------------------------------------------------------*/ + } + /*--------------------------------------------------------------------------*/ + FxaaFloat dstN = posM.x - posN.x; + FxaaFloat dstP = posP.x - posM.x; + if (!horzSpan) + { + dstN = posM.y - posN.y; + } + if (!horzSpan) + { + dstP = posP.y - posM.y; + } + /*--------------------------------------------------------------------------*/ + FxaaBool goodSpanN = (lumaEndN < 0.0) != lumaMLTZero; + FxaaFloat spanLength = (dstP + dstN); + FxaaBool goodSpanP = (lumaEndP < 0.0) != lumaMLTZero; + FxaaFloat spanLengthRcp = 1.0 / spanLength; + /*--------------------------------------------------------------------------*/ + FxaaBool directionN = dstN < dstP; + FxaaFloat dst = min(dstN, dstP); + FxaaBool goodSpan = directionN ? goodSpanN : goodSpanP; + FxaaFloat subpixG = subpixF * subpixF; + FxaaFloat pixelOffset = (dst * (-spanLengthRcp)) + 0.5; + FxaaFloat subpixH = subpixG * fxaaQualitySubpix; + /*--------------------------------------------------------------------------*/ + FxaaFloat pixelOffsetGood = goodSpan ? pixelOffset : 0.0; + FxaaFloat pixelOffsetSubpix = max(pixelOffsetGood, subpixH); + if (!horzSpan) + { + posM.x += pixelOffsetSubpix * lengthSign; + } + if (horzSpan) + { + posM.y += pixelOffsetSubpix * lengthSign; + } + #if (FXAA_DISCARD == 1) + return FxaaTexTop(tex, posM); + #else + return FxaaFloat4(FxaaTexTop(tex, posM).xyz, lumaM); + #endif +} +/*==========================================================================*/ +#endif diff --git a/gamedata/shaders/r1/fxaa_luma.ps.hlsl b/gamedata/shaders/r1/fxaa_luma.ps.hlsl new file mode 100644 index 0000000..7aeecac --- /dev/null +++ b/gamedata/shaders/r1/fxaa_luma.ps.hlsl @@ -0,0 +1,17 @@ +#include "common.hlsli" + +#define LUMINANCE_VECTOR float3(0.3f, 0.38f, 0.22f) + +uniform sampler2D s_image; + +struct v2p +{ + float2 tc0 : TEXCOORD0; + float4 HPos : POSITION; +}; + +float4 main(v2p I) : COLOR +{ + float3 image = tex2D(s_image, I.tc0); + return float4(image, dot(image, LUMINANCE_VECTOR)); +} diff --git a/gamedata/shaders/r1/fxaa_main.ps.hlsl b/gamedata/shaders/r1/fxaa_main.ps.hlsl new file mode 100644 index 0000000..d6fcc5f --- /dev/null +++ b/gamedata/shaders/r1/fxaa_main.ps.hlsl @@ -0,0 +1,34 @@ +#include "common.hlsli" +#include "fxaa.hlsli" + +uniform float4 screen_res; +uniform sampler2D s_image; + +struct v2p +{ + float2 tc0 : TEXCOORD0; + float4 HPos : POSITION; +}; + +float4 main(v2p I) : COLOR +{ + float2 rcpFrame = screen_res.zw; + + return FxaaPixelShader(I.tc0, + FxaaFloat4(0.0f, 0.0f, 0.0f, 0.0f), // FxaaFloat4 fxaaConsolePosPos, + s_image, // FxaaTex tex, + s_image, // FxaaTex fxaaConsole360TexExpBiasNegOne, + s_image, // FxaaTex fxaaConsole360TexExpBiasNegTwo, + rcpFrame, // FxaaFloat2 fxaaQualityRcpFrame, + FxaaFloat4(0.0f, 0.0f, 0.0f, 0.0f), // FxaaFloat4 fxaaConsoleRcpFrameOpt, + FxaaFloat4(0.0f, 0.0f, 0.0f, 0.0f), // FxaaFloat4 fxaaConsoleRcpFrameOpt2, + FxaaFloat4(0.0f, 0.0f, 0.0f, 0.0f), // FxaaFloat4 fxaaConsole360RcpFrameOpt2, + 0.35f, // FxaaFloat fxaaQualitySubpix, + 0.125f, // FxaaFloat fxaaQualityEdgeThreshold, + 0.0f, // 0.0625f, // FxaaFloat fxaaQualityEdgeThresholdMin, + 0.0f, // FxaaFloat fxaaConsoleEdgeSharpness, + 0.0f, // FxaaFloat fxaaConsoleEdgeThreshold, + 0.0f, // FxaaFloat fxaaConsoleEdgeThresholdMin, + FxaaFloat4(0.0f, 0.0f, 0.0f, 0.0f) // FxaaFloat fxaaConsole360ConstDir, + ); +} diff --git a/gamedata/shaders/r1/fxaa_main.vs.hlsl b/gamedata/shaders/r1/fxaa_main.vs.hlsl new file mode 100644 index 0000000..713c1ac --- /dev/null +++ b/gamedata/shaders/r1/fxaa_main.vs.hlsl @@ -0,0 +1,25 @@ +#include "common.hlsli" + +uniform float4 screen_res; // Screen resolution (x-Width,y-Height, zw - 1/resolution) + +struct v +{ + float3 P : POSITION; + float2 tc0 : TEXCOORD0; +}; + +struct v2p +{ + float2 tc0 : TEXCOORD0; + float4 HPos : POSITION; +}; + +// Vertex +v2p main(v I) +{ + v2p O; + O.HPos = float4(I.P.x * screen_res.z * 2 - 1, (I.P.y * screen_res.w * 2 - 1) * -1, 0, 1); + O.tc0 = I.tc0; + + return O; +} diff --git a/gamedata/shaders/r1/hud3d.ps.hlsl b/gamedata/shaders/r1/hud3d.ps.hlsl new file mode 100644 index 0000000..df4d764 --- /dev/null +++ b/gamedata/shaders/r1/hud3d.ps.hlsl @@ -0,0 +1,13 @@ +#include "common.hlsli" + +struct ui_vert_out +{ + float2 tc0 : TEXCOORD0; + float4 P : POSITION; +}; + +float4 main(ui_vert_out I) : COLOR +{ + float4 r = tex2D(s_base, I.tc0); + return r; +} diff --git a/gamedata/shaders/r1/hud3d.vs.hlsl b/gamedata/shaders/r1/hud3d.vs.hlsl new file mode 100644 index 0000000..47bef8b --- /dev/null +++ b/gamedata/shaders/r1/hud3d.vs.hlsl @@ -0,0 +1,25 @@ +#include "common.hlsli" + +struct ui_vert_in +{ + float4 P : POSITION; + float4 color : COLOR0; + float2 uv : TEXCOORD0; +}; + +struct ui_vert_out +{ + float2 tc0 : TEXCOORD0; + float4 P : POSITION; +}; + +ui_vert_out main(ui_vert_in v) +{ + ui_vert_out O; + + O.tc0 = v.uv; + O.P = v.P; + O.P.w = 1; + O.P = mul(m_WVP, O.P); + return O; +} diff --git a/gamedata/shaders/r1/hud_crosshair.lua b/gamedata/shaders/r1/hud_crosshair.lua new file mode 100644 index 0000000..7c5097d --- /dev/null +++ b/gamedata/shaders/r1/hud_crosshair.lua @@ -0,0 +1,6 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("null", "simple_color") + :fog(false) + :zb(false, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) +end diff --git a/gamedata/shaders/r1/hud_font.lua b/gamedata/shaders/r1/hud_font.lua new file mode 100644 index 0000000..6f41a55 --- /dev/null +++ b/gamedata/shaders/r1/hud_font.lua @@ -0,0 +1,7 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("null", "hud_font") + :fog(false) + :zb(false, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + shader:sampler("s_base"):texture(t_base) +end diff --git a/gamedata/shaders/r1/hud_font.ps.hlsl b/gamedata/shaders/r1/hud_font.ps.hlsl new file mode 100644 index 0000000..7ab06f8 --- /dev/null +++ b/gamedata/shaders/r1/hud_font.ps.hlsl @@ -0,0 +1,15 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; + float4 c0 : COLOR0; +}; + +float4 main(v2p I) : COLOR +{ + float4 r = tex2D(s_base, I.tc0); + r.rgb = I.c0.rgb; + r.a *= I.c0.a; + return r; +} diff --git a/gamedata/shaders/r1/hud_font2.lua b/gamedata/shaders/r1/hud_font2.lua new file mode 100644 index 0000000..f7c9151 --- /dev/null +++ b/gamedata/shaders/r1/hud_font2.lua @@ -0,0 +1,7 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("null", "font2") + :fog(false) + :zb(false, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + shader:sampler("s_base"):texture(t_base) +end diff --git a/gamedata/shaders/r1/hud_movie.lua b/gamedata/shaders/r1/hud_movie.lua new file mode 100644 index 0000000..4a61a6c --- /dev/null +++ b/gamedata/shaders/r1/hud_movie.lua @@ -0,0 +1,7 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("null", "yuv2rgb") + :fog(false) + :zb(false, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + shader:sampler("s_base"):texture(t_base) +end diff --git a/gamedata/shaders/r1/hud_p3d.lua b/gamedata/shaders/r1/hud_p3d.lua new file mode 100644 index 0000000..7465274 --- /dev/null +++ b/gamedata/shaders/r1/hud_p3d.lua @@ -0,0 +1,7 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("hud3d", "hud3d") + :fog(false) + :zb(true, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + shader:sampler("s_base"):texture(t_base) +end diff --git a/gamedata/shaders/r1/impl.ps.hlsl b/gamedata/shaders/r1/impl.ps.hlsl new file mode 100644 index 0000000..3097727 --- /dev/null +++ b/gamedata/shaders/r1/impl.ps.hlsl @@ -0,0 +1,29 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float2 tc1 : TEXCOORD1; // lmap + float3 c0 : COLOR0; // hemi + float3 c1 : COLOR1; // sun + float fog : FOG; +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 t_base = tex2D(s_base, I.tc0); + float4 t_lmap = tex2D(s_lmap, I.tc1); + + // lighting + float3 l_base = t_lmap.rgb; // base light-map + float3 l_hemi = I.c0 * t_base.a; // hemi is implicitly inside texture + float3 l_sun = I.c1 * t_lmap.a; // sun color + float3 light = L_ambient + l_base + l_sun + l_hemi; + + // final-color + float3 final = light * t_base * 2.0f; + final = lerp(fog_color.xyz, final, I.fog); + // out + return float4(final.rgb, 1.0f); +} diff --git a/gamedata/shaders/r1/impl.vs.hlsl b/gamedata/shaders/r1/impl.vs.hlsl new file mode 100644 index 0000000..e21ca01 --- /dev/null +++ b/gamedata/shaders/r1/impl.vs.hlsl @@ -0,0 +1,26 @@ +#include "common.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; + float2 tc1 : TEXCOORD1; + float3 c0 : COLOR0; // c0=hemi, c0.a = dt* + float3 c1 : COLOR1; // c1=sun, c1.a = dt+ + float fog : FOG; +}; + +vf main(v_lmap v) +{ + vf o; + + float3 N = unpack_normal(v.N); + o.hpos = mul(m_VP, v.P); // xform, input in world coords + o.tc0 = unpack_tc_base(v.uv0, v.T.w, v.B.w); // copy tc + o.tc1 = o.tc0; // copy tc + o.c0 = v_hemi(N); // hemi + o.c1 = v_sun(N); // sun + o.fog = calc_fogging(v.P); // fog, input in world coords + + return o; +} diff --git a/gamedata/shaders/r1/impl_dt.ps.hlsl b/gamedata/shaders/r1/impl_dt.ps.hlsl new file mode 100644 index 0000000..c33da3c --- /dev/null +++ b/gamedata/shaders/r1/impl_dt.ps.hlsl @@ -0,0 +1,34 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float2 tc1 : TEXCOORD1; // lmap + float2 tc2 : TEXCOORD2; // detail + float4 c0 : COLOR0; // hemi, c0.a * + float4 c1 : COLOR1; // sun, c1.a + + float fog : FOG; +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 t_base = tex2D(s_base, I.tc0); + float4 t_lmap = tex2D(s_lmap, I.tc1); + + // lighting + float3 l_base = t_lmap.rgb; // base light-map + float3 l_hemi = I.c0 * t_base.a; // hemi is implicitly inside texture + float3 l_sun = I.c1 * t_lmap.a; // sun color + float3 light = L_ambient + l_base + l_sun + l_hemi; + + // calc D-texture + float3 detail = tex2D(s_detail, I.tc2); + + // final-color + float3 final = (light * t_base.rgb * 2.0f) * detail * 2.0f; + final = lerp(fog_color.xyz, final, I.fog); + // out + return float4(final.rgb, 1.0f); + // return float4 (light*detail*2,1); +} diff --git a/gamedata/shaders/r1/impl_dt.vs.hlsl b/gamedata/shaders/r1/impl_dt.vs.hlsl new file mode 100644 index 0000000..392897d --- /dev/null +++ b/gamedata/shaders/r1/impl_dt.vs.hlsl @@ -0,0 +1,29 @@ +#include "common.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; + float2 tc1 : TEXCOORD1; + float2 tc2 : TEXCOORD2; + float4 c0 : COLOR0; // c0=hemi+v-lights, c0.a = dt* + float4 c1 : COLOR1; // c1=sun, c1.a = dt+ + float fog : FOG; +}; + +vf main(v_lmap v) +{ + vf o; + + float2 dt = calc_detail(v.P); + float3 N = unpack_normal(v.N); + o.hpos = mul(m_VP, v.P); // xform, input in world coords + o.tc0 = unpack_tc_base(v.uv0, v.T.w, v.B.w); // copy tc + o.tc1 = o.tc0; // copy tc + o.tc2 = o.tc0 * dt_params; // dt tc + o.c0 = float4(v_hemi(N), dt.x); // c0=v-lights, c0.a = dt* + o.c1 = float4(v_sun(N), dt.y); // c1=sun, c1.a = dt+ + o.fog = calc_fogging(v.P); // fog, input in world coords + + return o; +} diff --git a/gamedata/shaders/r1/impl_dt_hq.ps.hlsl b/gamedata/shaders/r1/impl_dt_hq.ps.hlsl new file mode 100644 index 0000000..ba4c8da --- /dev/null +++ b/gamedata/shaders/r1/impl_dt_hq.ps.hlsl @@ -0,0 +1,48 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float2 tc1 : TEXCOORD1; // lmap + float2 tc2 : TEXCOORD2; // detail + float4 c0 : COLOR0; // hemi, c0.a * + float4 c1 : COLOR1; // sun, c1.a + + float fog : FOG; +}; + +uniform sampler2D s_dt_r; +uniform sampler2D s_dt_g; +uniform sampler2D s_dt_b; +uniform sampler2D s_dt_a; + +uniform sampler2D s_mask; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 t_base = tex2D(s_base, I.tc0); + float4 t_mask = tex2D(s_mask, I.tc0); + + t_mask = t_mask / dot(t_mask, 1.0); + + float4 t_lmap = tex2D(s_lmap, I.tc1); + + // lighting + float3 l_base = t_lmap.rgb; // base light-map + float3 l_hemi = I.c0 * t_base.a; // hemi is implicitly inside texture + float3 l_sun = I.c1 * t_lmap.a; // sun color + float3 light = L_ambient + l_base + l_sun + l_hemi; + + // calc D-texture + float3 t_dt_r = tex2D(s_dt_r, I.tc2) * t_mask.r; + float3 t_dt_g = tex2D(s_dt_g, I.tc2) * t_mask.g; + float3 t_dt_b = tex2D(s_dt_b, I.tc2) * t_mask.b; + float3 t_dt_a = tex2D(s_dt_a, I.tc2) * t_mask.a; + float3 detail = t_dt_a + t_dt_b + t_dt_g + t_dt_r; + + // final-color + float3 final = (light * t_base.rgb * 2.0f) * detail * 2.0f; + final = lerp(fog_color.xyz, final, I.fog); + // out + return float4(final.rgb, 1.0f); +} diff --git a/gamedata/shaders/r1/impl_l.ps.hlsl b/gamedata/shaders/r1/impl_l.ps.hlsl new file mode 100644 index 0000000..be5d438 --- /dev/null +++ b/gamedata/shaders/r1/impl_l.ps.hlsl @@ -0,0 +1,22 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // lmap + float2 tc1 : TEXCOORD1; // lmap + float3 c0 : COLOR0; // hemi +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 t_base = tex2D(s_base, I.tc0); + float4 t_lmap = tex2D(s_lmap, I.tc1); + + // lighting + float3 l_base = t_lmap.rgb; // base light-map + float3 l_hemi = I.c0 * t_base.a; // hemi is implicitly inside texture + float l_sun = t_lmap.a; // sun color + float3 light = L_ambient + l_base + l_hemi; + return float4(light, l_sun); +} diff --git a/gamedata/shaders/r1/impl_l.vs.hlsl b/gamedata/shaders/r1/impl_l.vs.hlsl new file mode 100644 index 0000000..82be7c4 --- /dev/null +++ b/gamedata/shaders/r1/impl_l.vs.hlsl @@ -0,0 +1,21 @@ +#include "common.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; + float2 tc1 : TEXCOORD1; + float3 c0 : COLOR0; +}; + +vf main(v_lmap v) +{ + vf o; + + o.hpos = mul(m_VP, v.P); // xform, input in world coords + o.tc0 = unpack_tc_base(v.uv0, v.T.w, v.B.w); // copy tc + o.tc1 = o.tc0; // copy tc + o.c0 = v_hemi(unpack_normal(v.N)); // just ambient + + return o; +} diff --git a/gamedata/shaders/r1/impl_point.vs.hlsl b/gamedata/shaders/r1/impl_point.vs.hlsl new file mode 100644 index 0000000..d2cec75 --- /dev/null +++ b/gamedata/shaders/r1/impl_point.vs.hlsl @@ -0,0 +1,13 @@ +#include "common.hlsli" + +vf_point main(v_lmap v) +{ + vf_point o; + + o.hpos = mul(m_VP, v.P); // xform, input in world coords + o.tc0 = unpack_tc_base(v.uv0, v.T.w, v.B.w); // copy tc + // o.tc0 = unpack_tc_base(v.tc0); // copy tc + o.color = calc_point(o.tc1, o.tc2, v.P, unpack_normal(v.N)); // just hemisphere + + return o; +} diff --git a/gamedata/shaders/r1/impl_spot.vs.hlsl b/gamedata/shaders/r1/impl_spot.vs.hlsl new file mode 100644 index 0000000..2845b98 --- /dev/null +++ b/gamedata/shaders/r1/impl_spot.vs.hlsl @@ -0,0 +1,13 @@ +#include "common.hlsli" + +vf_spot main(v_lmap v) +{ + vf_spot o; + + o.hpos = mul(m_VP, v.P); // xform, input in world coords + o.tc0 = unpack_tc_base(v.uv0, v.T.w, v.B.w); // copy tc + // o.tc0 = unpack_tc_base(v.tc0); // copy tc + o.color = calc_spot(o.tc1, o.tc2, v.P, unpack_normal(v.N)); // just hemisphere + + return o; +} diff --git a/gamedata/shaders/r1/lmap.ps.hlsl b/gamedata/shaders/r1/lmap.ps.hlsl new file mode 100644 index 0000000..cd83a8a --- /dev/null +++ b/gamedata/shaders/r1/lmap.ps.hlsl @@ -0,0 +1,31 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float2 tc1 : TEXCOORD1; // lmap + float2 tc2 : TEXCOORD2; // lmap-hemi + float3 c0 : COLOR0; // hemi + float3 c1 : COLOR1; // sun + float fog : FOG; +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 t_base = tex2D(s_base, I.tc0); + float4 t_lmap = tex2D(s_lmap, I.tc1); + + // lighting + float3 l_base = t_lmap.rgb; // base light-map + float3 l_hemi = I.c0 * p_hemi(I.tc2); // hemi + float3 l_sun = I.c1 * t_lmap.a; // sun color + float3 light = L_ambient + l_base + l_sun + l_hemi; + + // final-color + float3 final = light * t_base * 2.0f; + final = lerp(fog_color.xyz, final, I.fog); + + // out + return float4(final, t_base.a); +} diff --git a/gamedata/shaders/r1/lmap.vs.hlsl b/gamedata/shaders/r1/lmap.vs.hlsl new file mode 100644 index 0000000..7045276 --- /dev/null +++ b/gamedata/shaders/r1/lmap.vs.hlsl @@ -0,0 +1,29 @@ +#include "common.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; + float2 tc1 : TEXCOORD1; + float2 tch : TEXCOORD2; + float3 c0 : COLOR0; // c0=hemi+v-lights, c0.a = dt* + float3 c1 : COLOR1; // c1=sun, c1.a = dt+ + float fog : FOG; +}; + +vf main(v_lmap v) +{ + vf o; + + float3 N = unpack_normal(v.N); + o.hpos = mul(m_VP, v.P); // xform, input in world coords + o.tc0 = unpack_tc_base(v.uv0, v.T.w, v.B.w); // copy tc + // o.tc0 = unpack_tc_base (v.tc0); // copy tc + o.tc1 = unpack_tc_lmap(v.uv1); // copy tc + o.tch = o.tc1; + o.c0 = v_hemi(N); // just hemisphere + o.c1 = v_sun(N); // sun + o.fog = calc_fogging(v.P); // fog, input in world coords + + return o; +} diff --git a/gamedata/shaders/r1/lmap_dt.ps.hlsl b/gamedata/shaders/r1/lmap_dt.ps.hlsl new file mode 100644 index 0000000..e8c4ecd --- /dev/null +++ b/gamedata/shaders/r1/lmap_dt.ps.hlsl @@ -0,0 +1,36 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float2 tc1 : TEXCOORD1; // lmap + float2 tc2 : TEXCOORD2; // hemi + float2 tc3 : TEXCOORD3; // detail + float4 c0 : COLOR0; // c0.a * + float4 c1 : COLOR1; // c1.a + + float fog : FOG; +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 t_base = tex2D(s_base, I.tc0); + float4 t_lmap = tex2D(s_lmap, I.tc1); + + // lighting + float3 l_base = t_lmap.rgb; // base light-map + float3 l_hemi = I.c0 * p_hemi(I.tc2); // hemi + float3 l_sun = I.c1 * t_lmap.a; // sun color + float3 light = L_ambient + l_base + l_sun + l_hemi; + + // calc D-texture + float4 t_dt = tex2D(s_detail, I.tc3); + float3 detail = t_dt * I.c0.a + I.c1.a; + + // final-color + float3 final = (light * t_base * 2.0f) * detail * 2.0f; + final = lerp(fog_color.xyz, final, I.fog); + + // out + return float4(final, t_base.a); +} diff --git a/gamedata/shaders/r1/lmap_dt.vs.hlsl b/gamedata/shaders/r1/lmap_dt.vs.hlsl new file mode 100644 index 0000000..83374ce --- /dev/null +++ b/gamedata/shaders/r1/lmap_dt.vs.hlsl @@ -0,0 +1,33 @@ +#include "common.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; + float2 tc1 : TEXCOORD1; + float2 tch : TEXCOORD2; + float2 tc2 : TEXCOORD3; + float4 c0 : COLOR0; // c0=hemi+v-lights, c0.a = dt* + float4 c1 : COLOR1; // c1=sun, c1.a = dt+ + float fog : FOG; +}; + +vf main(v_lmap v) +{ + vf o; + + float2 dt = calc_detail(v.P); + float3 N = unpack_normal(v.N); + + o.hpos = mul(m_VP, v.P); // xform, input in world coords + o.tc0 = unpack_tc_base(v.uv0, v.T.w, v.B.w); // copy tc + // o.tc0 = unpack_tc_base (v.tc0); // copy tc + o.tc1 = unpack_tc_lmap(v.uv1); // copy tc + o.tch = o.tc1; + o.tc2 = o.tc0 * dt_params; // dt tc + o.c0 = float4(v_hemi(N), dt.x); // c0=hemi+v-lights, c0.a = dt* + o.c1 = float4(v_sun(N), dt.y); // c1=sun, c1.a = dt+ + o.fog = calc_fogging(v.P); // fog, input in world coords + + return o; +} diff --git a/gamedata/shaders/r1/lmap_l.ps.hlsl b/gamedata/shaders/r1/lmap_l.ps.hlsl new file mode 100644 index 0000000..39d4025 --- /dev/null +++ b/gamedata/shaders/r1/lmap_l.ps.hlsl @@ -0,0 +1,24 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // lmap + float2 tc1 : TEXCOORD1; // hemi + float3 c0 : COLOR0; + float fog : FOG; +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 t_lmap = tex2D(s_lmap, I.tc0); + + // lighting + float3 l_base = t_lmap.rgb; // base light-map + float3 l_hemi = I.c0 * p_hemi(I.tc1); // hemi + float l_sun = t_lmap.a; // sun color + float3 light = L_ambient + l_base + l_hemi; + light = lerp(fog_color.xyz, light, I.fog); + + return float4(light, l_sun); +} diff --git a/gamedata/shaders/r1/lmap_l.vs.hlsl b/gamedata/shaders/r1/lmap_l.vs.hlsl new file mode 100644 index 0000000..44a0c1d --- /dev/null +++ b/gamedata/shaders/r1/lmap_l.vs.hlsl @@ -0,0 +1,23 @@ +#include "common.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; + float2 tc1 : TEXCOORD1; + float3 c0 : COLOR0; + float fog : FOG; +}; + +vf main(v_lmap v) +{ + vf o; + + o.hpos = mul(m_VP, v.P); // xform, input in world coords + o.tc0 = unpack_tc_lmap(v.uv1); // copy tc + o.tc1 = o.tc0; + o.c0 = v_hemi(unpack_normal(v.N)); // just hemisphere + ambient + o.fog = calc_fogging(v.P); // fog, input in world coords + + return o; +} diff --git a/gamedata/shaders/r1/lmap_point.vs.hlsl b/gamedata/shaders/r1/lmap_point.vs.hlsl new file mode 100644 index 0000000..c59198b --- /dev/null +++ b/gamedata/shaders/r1/lmap_point.vs.hlsl @@ -0,0 +1,13 @@ +#include "common.hlsli" + +vf_point main(v_lmap v) +{ + vf_point o; + + o.hpos = mul(m_VP, v.P); // xform, input in world coords + o.tc0 = unpack_tc_base(v.uv0, v.T.w, v.B.w); // copy tc + // o.tc0 = unpack_tc_base(v.tc0); // copy tc + o.color = calc_point(o.tc1, o.tc2, v.P, unpack_normal(v.N)); // just hemisphere + + return o; +} diff --git a/gamedata/shaders/r1/lmap_spot.vs.hlsl b/gamedata/shaders/r1/lmap_spot.vs.hlsl new file mode 100644 index 0000000..9d25d16 --- /dev/null +++ b/gamedata/shaders/r1/lmap_spot.vs.hlsl @@ -0,0 +1,13 @@ +#include "common.hlsli" + +vf_spot main(v_lmap v) +{ + vf_spot o; + + o.hpos = mul(m_VP, v.P); // xform, input in world coords + o.tc0 = unpack_tc_base(v.uv0, v.T.w, v.B.w); // copy tc + // o.tc0 = unpack_tc_base(v.tc0); // copy tc + o.color = calc_spot(o.tc1, o.tc2, v.P, unpack_normal(v.N)); // just hemisphere + + return o; +} diff --git a/gamedata/shaders/r1/lmape.ps.hlsl b/gamedata/shaders/r1/lmape.ps.hlsl new file mode 100644 index 0000000..ee8314f --- /dev/null +++ b/gamedata/shaders/r1/lmape.ps.hlsl @@ -0,0 +1,33 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float2 tc1 : TEXCOORD1; // lmap + float2 tc2 : TEXCOORD2; // hemi + float3 tc3 : TEXCOORD3; // env + float3 c0 : COLOR0; + float3 c1 : COLOR1; +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 t_base = tex2D(s_base, I.tc0); + float4 t_lmap = tex2D(s_lmap, I.tc1); + float4 t_env = texCUBE(s_env, I.tc3); + + // lighting + float3 l_base = t_lmap.rgb; // base light-map + float3 l_hemi = I.c0 * p_hemi(I.tc2); // hemi + float3 l_sun = I.c1 * t_lmap.a; // sun color + float3 light = L_ambient + l_base + l_sun + l_hemi; + + // final-color + float3 base = lerp(t_env, t_base, t_base.a); + float3 final = light * base * 2.0f; + final = lerp(fog_color.xyz, final, I.fog); + + // out + return float4(final, t_base.a); +} diff --git a/gamedata/shaders/r1/lmape.vs.hlsl b/gamedata/shaders/r1/lmape.vs.hlsl new file mode 100644 index 0000000..af148df --- /dev/null +++ b/gamedata/shaders/r1/lmape.vs.hlsl @@ -0,0 +1,33 @@ +#include "common.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; + float2 tc1 : TEXCOORD1; + float2 tch : TEXCOORD2; + float3 tc2 : TEXCOORD3; + float3 c0 : COLOR0; // c0=hemi+v-lights, c0.a = dt* + float3 c1 : COLOR1; // c1=sun, c1.a = dt+ + float fog : FOG; +}; + +vf main(v_lmap v) +{ + vf o; + + float3 pos_w = v.P; + float3 norm_w = normalize(unpack_normal(v.N)); + + o.hpos = mul(m_VP, v.P); // xform, input in world coords + o.tc0 = unpack_tc_base(v.uv0, v.T.w, v.B.w); // copy tc + // o.tc0 = unpack_tc_base (v.tc0); // copy tc + o.tc1 = unpack_tc_lmap(v.uv1); // copy tc + o.tch = o.tc1; + o.tc2 = calc_reflection(pos_w, norm_w); + o.c0 = v_hemi(norm_w); // just hemisphere + o.c1 = v_sun(norm_w); // sun + o.fog = calc_fogging(v.P); // fog, input in world coords + + return o; +} diff --git a/gamedata/shaders/r1/lod.ps.hlsl b/gamedata/shaders/r1/lod.ps.hlsl new file mode 100644 index 0000000..8ddefd2 --- /dev/null +++ b/gamedata/shaders/r1/lod.ps.hlsl @@ -0,0 +1,34 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base0 + float2 tc1 : TEXCOORD1; // base1 + float2 tc2 : TEXCOORD2; // hemi0 + float2 tc3 : TEXCOORD3; // hemi1 + float4 c : COLOR0; // color + float4 f : COLOR1; // color + float fog : FOG; +}; + +// Pixel +uniform sampler2D s_base0; +uniform sampler2D s_base1; +uniform sampler2D s_hemi0; +uniform sampler2D s_hemi1; + +float4 main(v2p I) : COLOR +{ + float4 base0 = tex2D(s_base0, I.tc0); + float4 base1 = tex2D(s_base1, I.tc1); + float4 hemi0 = tex2D(s_hemi0, I.tc2); + float4 hemi1 = tex2D(s_hemi1, I.tc3); + + float4 base = lerp(base0, base1, I.f.w) * I.c; + float hemi = lerp(hemi0, hemi1, I.f.w).w; + + float3 color = base * 2.0f * (0.5f + 0.5f * hemi); + color = lerp(fog_color.xyz, color, I.fog); + + return float4(color, base.a); +} diff --git a/gamedata/shaders/r1/lod.vs.hlsl b/gamedata/shaders/r1/lod.vs.hlsl new file mode 100644 index 0000000..c706e00 --- /dev/null +++ b/gamedata/shaders/r1/lod.vs.hlsl @@ -0,0 +1,64 @@ +#include "common.hlsli" + +struct vv +{ + float3 pos0 : POSITION0; + float3 pos1 : POSITION1; + float3 n0 : NORMAL0; + float3 n1 : NORMAL1; + float2 tc0 : TEXCOORD0; + float2 tc1 : TEXCOORD1; + float4 rgbh0 : TEXCOORD2; // rgb.h + float4 rgbh1 : TEXCOORD3; // rgb.h + float4 sun_af : COLOR0; // x=sun_0, y=sun_1, z=alpha, w=factor +}; + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; // base0 + float2 tc1 : TEXCOORD1; // base1 + float2 tc2 : TEXCOORD2; // hemi0 + float2 tc3 : TEXCOORD3; // hemi1 + float4 c : COLOR0; // color.alpha + float4 f : COLOR1; // factor + float fog : FOG; +}; + +#define L_SCALE (1.55) +#define L_SUN_HACK (.7) + +vf main(vv v) +{ + vf o; + + // lerp pos + float factor = v.sun_af.w; + float4 pos = float4(lerp(v.pos0, v.pos1, factor), 1); + o.hpos = mul(m_VP, pos); // xform, input in world coords + + // replicate TCs + o.tc0 = v.tc0; + o.tc1 = v.tc1; + o.tc2 = v.tc0; + o.tc3 = v.tc1; + + // calc normal & lighting + float3 normal = normalize(lerp(v.n0, v.n1, factor)); + normal.y += 1; + normal = normalize(normal); + float4 rgbh = lerp(v.rgbh0, v.rgbh1, factor) * L_SCALE; + float sun = lerp(v.sun_af.x, v.sun_af.y, factor) * L_SCALE; + float sun_c = 1 + L_SUN_HACK * dot(normal, L_sun_dir_w); // [1+-delta], normal already inverted + + float3 L_rgb = rgbh.rgb; // precalculated RGB lighting + float3 L_hemi = L_hemi_color * rgbh.w; // hemisphere + float3 L_sun = L_sun_color * sun * sun_c; // sun + float3 L_final = L_rgb + L_hemi + L_sun + L_ambient; + + o.c = float4(L_final, v.sun_af.z); + o.f = factor; + o.fog = calc_fogging(pos); // fog, input in world coords + + return o; +} diff --git a/gamedata/shaders/r1/model_clockarrow_h.ps.hlsl b/gamedata/shaders/r1/model_clockarrow_h.ps.hlsl new file mode 100644 index 0000000..7230b9d --- /dev/null +++ b/gamedata/shaders/r1/model_clockarrow_h.ps.hlsl @@ -0,0 +1,39 @@ +#include "common.hlsli" + +struct v2p +{ + float4 tc0: TEXCOORD0; // base + float4 tc1: TEXCOORD1; // environment + float4 c0: COLOR0; // sun.(fog*fog) +}; + +////////////////////////////////////////////////////////////////////////////////////////// + +float4 main ( v2p I ) : COLOR +{ + float2 coords = I.tc0; + float2 coords_new; + + + + // Rotate texture + float sin_a = m_timearrow.x; + float cos_a = m_timearrow.y; + coords.x = coords.x-0.5; + coords.y = coords.y-0.5; + + coords_new.x = coords.x * cos_a + coords.y * sin_a; + coords_new.y = -coords.x * sin_a + coords.y * cos_a; + + coords_new.x = coords_new.x+0.5; + coords_new.y = coords_new.y+0.5; + + + float4 t_base = tex2D (s_base,coords_new); + + //получаем пиксель шума и масштабируем его в соответствии с текущим уровнем проблем + float4 t_noise = tex2D(s_lmap, I.tc0) * m_affects.x * 2; + t_base.rgb += t_noise.rgb; + + return t_base; +} \ No newline at end of file diff --git a/gamedata/shaders/r1/model_clockarrow_m.ps.hlsl b/gamedata/shaders/r1/model_clockarrow_m.ps.hlsl new file mode 100644 index 0000000..a8795f5 --- /dev/null +++ b/gamedata/shaders/r1/model_clockarrow_m.ps.hlsl @@ -0,0 +1,39 @@ +#include "common.hlsli" + +struct v2p +{ + float4 tc0: TEXCOORD0; // base + float4 tc1: TEXCOORD1; // environment + float4 c0: COLOR0; // sun.(fog*fog) +}; + +////////////////////////////////////////////////////////////////////////////////////////// + +float4 main ( v2p I ) : COLOR +{ + float2 coords = I.tc0; + float2 coords_new; + + + + // Rotate texture + float sin_a = m_timearrow.z; + float cos_a = m_timearrow.a; + coords.x = coords.x-0.5; + coords.y = coords.y-0.5; + + coords_new.x = coords.x * cos_a + coords.y * sin_a; + coords_new.y = -coords.x * sin_a + coords.y * cos_a; + + coords_new.x = coords_new.x+0.5; + coords_new.y = coords_new.y+0.5; + + + float4 t_base = tex2D (s_base,coords_new); + + //получаем пиксель шума и масштабируем его в соответствии с текущим уровнем проблем + float4 t_noise = tex2D(s_lmap, I.tc0) * m_affects.x * 2; + t_base.rgb += t_noise.rgb; + + return t_base; +} \ No newline at end of file diff --git a/gamedata/shaders/r1/model_clockarrow_s.ps.hlsl b/gamedata/shaders/r1/model_clockarrow_s.ps.hlsl new file mode 100644 index 0000000..0548348 --- /dev/null +++ b/gamedata/shaders/r1/model_clockarrow_s.ps.hlsl @@ -0,0 +1,39 @@ +#include "common.hlsli" + +struct v2p +{ + float4 tc0: TEXCOORD0; // base + float4 tc1: TEXCOORD1; // environment + float4 c0: COLOR0; // sun.(fog*fog) +}; + +////////////////////////////////////////////////////////////////////////////////////////// + +float4 main ( v2p I ) : COLOR +{ + float2 coords = I.tc0; + float2 coords_new; + + + + // Rotate texture + float sin_a = m_timearrow2.x; + float cos_a = m_timearrow2.y; + coords.x = coords.x-0.5; + coords.y = coords.y-0.5; + + coords_new.x = coords.x * cos_a + coords.y * sin_a; + coords_new.y = -coords.x * sin_a + coords.y * cos_a; + + coords_new.x = coords_new.x+0.5; + coords_new.y = coords_new.y+0.5; + + + float4 t_base = tex2D (s_base,coords_new); + + //получаем пиксель шума и масштабируем его в соответствии с текущим уровнем проблем + float4 t_noise = tex2D(s_lmap, I.tc0) * m_affects.x * 2; + t_base.rgb += t_noise.rgb; + + return t_base; +} \ No newline at end of file diff --git a/gamedata/shaders/r1/model_compassarrow.ps.hlsl b/gamedata/shaders/r1/model_compassarrow.ps.hlsl new file mode 100644 index 0000000..1967873 --- /dev/null +++ b/gamedata/shaders/r1/model_compassarrow.ps.hlsl @@ -0,0 +1,39 @@ +#include "common.hlsli" + +struct v2p +{ + float4 tc0: TEXCOORD0; // base + float4 tc1: TEXCOORD1; // environment + float4 c0: COLOR0; // sun.(fog*fog) +}; + +////////////////////////////////////////////////////////////////////////////////////////// + +float4 main ( v2p I ) : COLOR +{ + float2 coords = I.tc0; + float2 coords_new; + + + + // Rotate texture + float sin_a = m_timearrow2.z; + float cos_a = m_timearrow2.a; + coords.x = coords.x-0.5; + coords.y = coords.y-0.5; + + coords_new.x = coords.x * cos_a + coords.y * sin_a; + coords_new.y = -coords.x * sin_a + coords.y * cos_a; + + coords_new.x = coords_new.x+0.5; + coords_new.y = coords_new.y+0.5; + + + float4 t_base = tex2D (s_base,coords_new); + + //получаем пиксель шума и масштабируем его в соответствии с текущим уровнем проблем + float4 t_noise = tex2D(s_lmap, I.tc0) * m_affects.x * 2; + t_base.rgb += t_noise.rgb; + + return t_base; +} \ No newline at end of file diff --git a/gamedata/shaders/r1/model_compscreen.ps.hlsl b/gamedata/shaders/r1/model_compscreen.ps.hlsl new file mode 100644 index 0000000..8e785a0 --- /dev/null +++ b/gamedata/shaders/r1/model_compscreen.ps.hlsl @@ -0,0 +1,20 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0: TEXCOORD0; // base +}; + +////////////////////////////////////////////////////////////////////////////////////////// +// Pixel +float4 main ( v2p I ) : COLOR +{ + // + float4 t_base = tex2D (s_base, I.tc0); + + // + float4 t_noise = tex2D(s_lmap, I.tc0) * m_affects.x * 2; + t_base.rgb += t_noise.rgb+0.1; + + return t_base; +} diff --git a/gamedata/shaders/r1/model_def_hq.ps.hlsl b/gamedata/shaders/r1/model_def_hq.ps.hlsl new file mode 100644 index 0000000..9f2aca2 --- /dev/null +++ b/gamedata/shaders/r1/model_def_hq.ps.hlsl @@ -0,0 +1,29 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float4 tc1 : TEXCOORD1; // lmap + float3 c0 : COLOR0; // sun + float4 c1 : COLOR1; // lq-color + factor + float fog : FOG; +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 t_base = tex2D(s_base, I.tc0); + float4 t_lmap = tex2Dproj(s_lmap, I.tc1); + + // lighting + float3 l_base = t_lmap.rgb; // base light-map (lmap color, ambient, hemi, etc - inside) + float3 l_sun = I.c0 * t_lmap.a; // sun color + float3 light = lerp(l_base + l_sun, I.c1, I.c1.w); + + // final-color + float3 final = light * t_base * 2.0f; + final = lerp(fog_color.xyz, final, I.fog); + + // out + return float4(final.r, final.g, final.b, t_base.a); +} diff --git a/gamedata/shaders/r1/model_def_hq.vs.hlsl b/gamedata/shaders/r1/model_def_hq.vs.hlsl new file mode 100644 index 0000000..11051b2 --- /dev/null +++ b/gamedata/shaders/r1/model_def_hq.vs.hlsl @@ -0,0 +1,41 @@ +#include "common.hlsli" +#include "skin.hlsli" + +// #define SKIN_2 + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; // base + float4 tc1 : TEXCOORD1; // projected lmap + float3 c0 : COLOR0; // sun-color + float4 c1 : COLOR1; // lq-color + factor + float fog : FOG; +}; + +vf _main(v_model v) +{ + vf o; + + float4 pos = v.pos; + float3 pos_w = mul(m_W, pos); + float4 pos_w4 = float4(pos_w, 1); + float3 norm_w = normalize(mul(m_W, v.norm)); + + o.hpos = mul(m_WVP, pos); // xform, input in world coords + o.tc0 = v.tc.xy; // copy tc + o.tc1 = calc_model_lmap(pos_w); // + o.c0 = calc_sun(norm_w); // sun + o.c1 = float4(calc_model_lq_lighting(norm_w), m_plmap_clamp[0].w); + o.fog = calc_fogging(pos_w4); // fog, input in world coords + +#ifdef SKIN_COLOR + o.c1.rgb *= v.rgb_tint; + o.c1.w = 1; +#endif + + return o; +} + +#define SKIN_VF vf +#include "skin_main.hlsli" diff --git a/gamedata/shaders/r1/model_def_lplanes.vs.hlsl b/gamedata/shaders/r1/model_def_lplanes.vs.hlsl new file mode 100644 index 0000000..74fd144 --- /dev/null +++ b/gamedata/shaders/r1/model_def_lplanes.vs.hlsl @@ -0,0 +1,28 @@ +#include "common.hlsli" +#include "skin.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; // base + float4 c0 : COLOR0; // color +}; + +vf _main(v_model v) +{ + vf o; + + o.hpos = mul(m_WVP, v.pos); // xform, input in world coords + o.tc0 = v.tc.xy; // copy tc + + // calculate fade + float3 dir_v = normalize(mul(m_WV, v.pos)); + float3 norm_v = normalize(mul(m_WV, v.norm)); + float fade = abs(dot(dir_v, norm_v)); + o.c0 = fade; + + return o; +} + +#define SKIN_VF vf +#include "skin_main.hlsli" diff --git a/gamedata/shaders/r1/model_def_lq.ps.hlsl b/gamedata/shaders/r1/model_def_lq.ps.hlsl new file mode 100644 index 0000000..af33d28 --- /dev/null +++ b/gamedata/shaders/r1/model_def_lq.ps.hlsl @@ -0,0 +1,22 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float2 tc1 : TEXCOORD1; // lmap + float3 c0 : COLOR0; // sun + float fog : FOG; +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 t_base = tex2D(s_base, I.tc0); + + float3 light = I.c0; + float3 final = light * t_base * 2.0f; + final = lerp(fog_color.xyz, final, I.fog); + + // out + return float4(final.r, final.g, final.b, t_base.a); +} diff --git a/gamedata/shaders/r1/model_def_lq.vs.hlsl b/gamedata/shaders/r1/model_def_lq.vs.hlsl new file mode 100644 index 0000000..f9d0a8c --- /dev/null +++ b/gamedata/shaders/r1/model_def_lq.vs.hlsl @@ -0,0 +1,34 @@ +#include "common.hlsli" +#include "skin.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; // base + float3 c0 : COLOR0; // color + float fog : FOG; +}; + +vf _main(v_model v) +{ + vf o; + + float4 pos = v.pos; + float3 pos_w = mul(m_W, pos); + float3 norm_w = normalize(mul(m_W, v.norm)); + + o.hpos = mul(m_WVP, pos); // xform, input in world coords + o.tc0 = v.tc.xy; // copy tc + o.c0 = calc_model_lq_lighting(norm_w); + o.fog = calc_fogging(float4(pos_w, 1)); // fog, input in world coords + +#ifdef SKIN_COLOR + o.c0.rgb *= v.rgb_tint; +#endif + + return o; +} + +#define SKIN_LQ +#define SKIN_VF vf +#include "skin_main.hlsli" diff --git a/gamedata/shaders/r1/model_def_lqs.vs.hlsl b/gamedata/shaders/r1/model_def_lqs.vs.hlsl new file mode 100644 index 0000000..03cda72 --- /dev/null +++ b/gamedata/shaders/r1/model_def_lqs.vs.hlsl @@ -0,0 +1,33 @@ +#include "common.hlsli" +#include "skin.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; // base + float3 c0 : COLOR0; // color + float fog : FOG; +}; + +vf _main(v_model v) +{ + vf o; + + float4 pos = v.pos; + float3 pos_w = mul(m_W, pos); + float3 norm_w = normalize(mul(m_W, v.norm)); + + o.hpos = mul(m_WVP, pos); // xform, input in world coords + o.tc0 = v.tc.xy; // copy tc + o.c0 = calc_model_lq_lighting(norm_w); + o.fog = calc_fogging(float4(pos_w, 1)); // fog, input in world coords + +#ifdef SKIN_COLOR + o.c0.rgb *= v.rgb_tint; +#endif + + return o; +} + +#define SKIN_VF vf +#include "skin_main.hlsli" diff --git a/gamedata/shaders/r1/model_def_point.vs.hlsl b/gamedata/shaders/r1/model_def_point.vs.hlsl new file mode 100644 index 0000000..6064450 --- /dev/null +++ b/gamedata/shaders/r1/model_def_point.vs.hlsl @@ -0,0 +1,21 @@ +#include "common.hlsli" +#include "skin.hlsli" + +vf_point _main(v_model v) +{ + vf_point o; + + float4 pos = v.pos; + float3 pos_w = mul(m_W, pos); + float4 pos_w4 = float4(pos_w, 1); + float3 norm_w = normalize(mul(m_W, v.norm)); + + o.hpos = mul(m_WVP, pos); // xform, input in world coords + o.tc0 = v.tc.xy; // copy tc + o.color = calc_point(o.tc1, o.tc2, pos_w4, norm_w); // just hemisphere + + return o; +} + +#define SKIN_VF vf_point +#include "skin_main.hlsli" diff --git a/gamedata/shaders/r1/model_def_shadow.vs.hlsl b/gamedata/shaders/r1/model_def_shadow.vs.hlsl new file mode 100644 index 0000000..b5cab1b --- /dev/null +++ b/gamedata/shaders/r1/model_def_shadow.vs.hlsl @@ -0,0 +1,21 @@ +#include "common.hlsli" +#include "skin.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float4 c0 : COLOR0; // color +}; + +vf _main(v_model v) +{ + vf o; + + o.hpos = mul(m_WVP, v.pos); // xform, input in world coords + o.c0 = 0; + return o; +} + +#define SKIN_LQ +#define SKIN_VF vf +#include "skin_main.hlsli" diff --git a/gamedata/shaders/r1/model_def_spot.vs.hlsl b/gamedata/shaders/r1/model_def_spot.vs.hlsl new file mode 100644 index 0000000..93581ce --- /dev/null +++ b/gamedata/shaders/r1/model_def_spot.vs.hlsl @@ -0,0 +1,21 @@ +#include "common.hlsli" +#include "skin.hlsli" + +vf_spot _main(v_model v) +{ + vf_spot o; + + float4 pos = v.pos; + float3 pos_w = mul(m_W, pos); + float4 pos_w4 = float4(pos_w, 1); + float3 norm_w = normalize(mul(m_W, v.norm)); + + o.hpos = mul(m_WVP, pos); // xform, input in world coords + o.tc0 = v.tc.xy; // copy tc + o.color = calc_spot(o.tc1, o.tc2, pos_w4, norm_w); // just hemisphere + + return o; +} + +#define SKIN_VF vf_spot +#include "skin_main.hlsli" diff --git a/gamedata/shaders/r1/model_digiclock_hh.ps.hlsl b/gamedata/shaders/r1/model_digiclock_hh.ps.hlsl new file mode 100644 index 0000000..953e81d --- /dev/null +++ b/gamedata/shaders/r1/model_digiclock_hh.ps.hlsl @@ -0,0 +1,25 @@ +#include "common.hlsli" + +struct v2p +{ + float4 tc0: TEXCOORD0; // base + float4 tc1: TEXCOORD1; // environment + float4 c0: COLOR0; // sun.(fog*fog) +}; + +////////////////////////////////////////////////////////////////////////////////////////// + +float4 main ( v2p I ) : COLOR +{ + float digit = m_digiclock.x; + + float2 coords = I.tc0; + coords.x = digit + (coords.x * 0.1); + float4 t_base = tex2D (s_base,coords); + + //получаем пиксель шума и масштабируем его в соответствии с текущим уровнем проблем + float4 t_noise = tex2D(s_lmap, I.tc0) * m_affects.x * 2; + t_base.rgb += t_noise.rgb+0.1; + + return t_base; +} \ No newline at end of file diff --git a/gamedata/shaders/r1/model_digiclock_hl.ps.hlsl b/gamedata/shaders/r1/model_digiclock_hl.ps.hlsl new file mode 100644 index 0000000..44243fb --- /dev/null +++ b/gamedata/shaders/r1/model_digiclock_hl.ps.hlsl @@ -0,0 +1,25 @@ +#include "common.hlsli" + +struct v2p +{ + float4 tc0: TEXCOORD0; // base + float4 tc1: TEXCOORD1; // environment + float4 c0: COLOR0; // sun.(fog*fog) +}; + +////////////////////////////////////////////////////////////////////////////////////////// + +float4 main ( v2p I ) : COLOR +{ + float digit = m_digiclock.y; + + float2 coords = I.tc0; + coords.x = digit + (coords.x * 0.1); + float4 t_base = tex2D (s_base,coords); + + //получаем пиксель шума и масштабируем его в соответствии с текущим уровнем проблем + float4 t_noise = tex2D(s_lmap, I.tc0) * m_affects.x * 2; + t_base.rgb += t_noise.rgb+0.1; + + return t_base; +} \ No newline at end of file diff --git a/gamedata/shaders/r1/model_digiclock_mh.ps.hlsl b/gamedata/shaders/r1/model_digiclock_mh.ps.hlsl new file mode 100644 index 0000000..3650a1c --- /dev/null +++ b/gamedata/shaders/r1/model_digiclock_mh.ps.hlsl @@ -0,0 +1,25 @@ +#include "common.hlsli" + +struct v2p +{ + float4 tc0: TEXCOORD0; // base + float4 tc1: TEXCOORD1; // environment + float4 c0: COLOR0; // sun.(fog*fog) +}; + +////////////////////////////////////////////////////////////////////////////////////////// + +float4 main ( v2p I ) : COLOR +{ + float digit = m_digiclock.z; + + float2 coords = I.tc0; + coords.x = digit + (coords.x * 0.1); + float4 t_base = tex2D (s_base,coords); + + //получаем пиксель шума и масштабируем его в соответствии с текущим уровнем проблем + float4 t_noise = tex2D(s_lmap, I.tc0) * m_affects.x * 2; + t_base.rgb += t_noise.rgb+0.1; + + return t_base; +} \ No newline at end of file diff --git a/gamedata/shaders/r1/model_digiclock_ml.ps.hlsl b/gamedata/shaders/r1/model_digiclock_ml.ps.hlsl new file mode 100644 index 0000000..fe623a9 --- /dev/null +++ b/gamedata/shaders/r1/model_digiclock_ml.ps.hlsl @@ -0,0 +1,25 @@ +#include "common.hlsli" + +struct v2p +{ + float4 tc0: TEXCOORD0; // base + float4 tc1: TEXCOORD1; // environment + float4 c0: COLOR0; // sun.(fog*fog) +}; + +////////////////////////////////////////////////////////////////////////////////////////// + +float4 main ( v2p I ) : COLOR +{ + float digit = m_digiclock.a; + + float2 coords = I.tc0; + coords.x = digit + (coords.x * 0.1); + float4 t_base = tex2D (s_base,coords); + + //получаем пиксель шума и масштабируем его в соответствии с текущим уровнем проблем + float4 t_noise = tex2D(s_lmap, I.tc0) * m_affects.x * 2; + t_base.rgb += t_noise.rgb+0.1; + + return t_base; +} \ No newline at end of file diff --git a/gamedata/shaders/r1/model_distort.vs.hlsl b/gamedata/shaders/r1/model_distort.vs.hlsl new file mode 100644 index 0000000..21bd894 --- /dev/null +++ b/gamedata/shaders/r1/model_distort.vs.hlsl @@ -0,0 +1,28 @@ +#include "common.hlsli" +#include "skin.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; // base + float4 c0 : COLOR0; // color +}; + +vf _main(v_model v) +{ + vf o; + + o.hpos = mul(m_WVP, v.pos); // xform, input in world coords + o.tc0 = v.tc.xy; // copy tc + + // calculate fade + float3 dir_v = normalize(mul(m_WV, v.pos)); + float3 norm_v = normalize(mul(m_WV, v.norm)); + float fade = 1 - abs(dot(dir_v, norm_v)); + o.c0 = fade; + + return o; +} + +#define SKIN_VF vf +#include "skin_main.hlsli" diff --git a/gamedata/shaders/r1/model_distort2t.vs.hlsl b/gamedata/shaders/r1/model_distort2t.vs.hlsl new file mode 100644 index 0000000..aa6074c --- /dev/null +++ b/gamedata/shaders/r1/model_distort2t.vs.hlsl @@ -0,0 +1,30 @@ +#include "common.hlsli" +#include "skin.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; // base + float2 tc1 : TEXCOORD1; // another + float4 c0 : COLOR0; // color +}; + +vf _main(v_model v) +{ + vf o; + + o.hpos = mul(m_WVP, v.pos); // xform, input in world coords + o.tc0 = v.tc.xy; // copy tc + + // calculate fade + float3 dir_v = normalize(mul(m_WV, v.pos)); + float3 norm_v = normalize(mul(m_WV, v.norm)); + float fade = abs(dot(dir_v, norm_v)); + o.c0 = fade; + o.tc1 = fade; + + return o; +} + +#define SKIN_VF vf +#include "skin_main.hlsli" diff --git a/gamedata/shaders/r1/model_distort4ghost.vs.hlsl b/gamedata/shaders/r1/model_distort4ghost.vs.hlsl new file mode 100644 index 0000000..a604428 --- /dev/null +++ b/gamedata/shaders/r1/model_distort4ghost.vs.hlsl @@ -0,0 +1,28 @@ +#include "common.hlsli" +#include "skin.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; // base + float4 c0 : COLOR0; // color +}; + +vf _main(v_model v) +{ + vf o; + + o.hpos = mul(m_WVP, v.pos); // xform, input in world coords + o.tc0 = v.tc.xy; // copy tc + + // calculate fade + float3 dir_v = normalize(mul(m_WV, v.pos)); + float3 norm_v = normalize(mul(m_WV, v.norm)); + float fade = 0.9 * abs(dot(dir_v, norm_v)); + o.c0 = fade; + + return o; +} + +#define SKIN_VF vf +#include "skin_main.hlsli" diff --git a/gamedata/shaders/r1/model_distort4glass.vs.hlsl b/gamedata/shaders/r1/model_distort4glass.vs.hlsl new file mode 100644 index 0000000..a604428 --- /dev/null +++ b/gamedata/shaders/r1/model_distort4glass.vs.hlsl @@ -0,0 +1,28 @@ +#include "common.hlsli" +#include "skin.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; // base + float4 c0 : COLOR0; // color +}; + +vf _main(v_model v) +{ + vf o; + + o.hpos = mul(m_WVP, v.pos); // xform, input in world coords + o.tc0 = v.tc.xy; // copy tc + + // calculate fade + float3 dir_v = normalize(mul(m_WV, v.pos)); + float3 norm_v = normalize(mul(m_WV, v.norm)); + float fade = 0.9 * abs(dot(dir_v, norm_v)); + o.c0 = fade; + + return o; +} + +#define SKIN_VF vf +#include "skin_main.hlsli" diff --git a/gamedata/shaders/r1/model_distort_inv.vs.hlsl b/gamedata/shaders/r1/model_distort_inv.vs.hlsl new file mode 100644 index 0000000..74fd144 --- /dev/null +++ b/gamedata/shaders/r1/model_distort_inv.vs.hlsl @@ -0,0 +1,28 @@ +#include "common.hlsli" +#include "skin.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; // base + float4 c0 : COLOR0; // color +}; + +vf _main(v_model v) +{ + vf o; + + o.hpos = mul(m_WVP, v.pos); // xform, input in world coords + o.tc0 = v.tc.xy; // copy tc + + // calculate fade + float3 dir_v = normalize(mul(m_WV, v.pos)); + float3 norm_v = normalize(mul(m_WV, v.norm)); + float fade = abs(dot(dir_v, norm_v)); + o.c0 = fade; + + return o; +} + +#define SKIN_VF vf +#include "skin_main.hlsli" diff --git a/gamedata/shaders/r1/model_env.ps.hlsl b/gamedata/shaders/r1/model_env.ps.hlsl new file mode 100644 index 0000000..3640811 --- /dev/null +++ b/gamedata/shaders/r1/model_env.ps.hlsl @@ -0,0 +1,21 @@ +#include "common.hlsli" + +struct v2p +{ + float4 diffuse : COLOR0; + float4 tc0 : TEXCOORD0; // projector + float4 tc1 : TEXCOORD1; // env + float4 tc2 : TEXCOORD2; // base +}; + +uniform sampler2D s_projector; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 light = I.diffuse + tex2D(s_projector, I.tc0); + float4 t_env = texCUBE(s_env, I.tc1); + float4 t_base = tex2D(s_base, I.tc2); + float4 base = lerp(t_env, t_base, t_base.a); + return light * base * 2; +} diff --git a/gamedata/shaders/r1/model_env_hq.ps.hlsl b/gamedata/shaders/r1/model_env_hq.ps.hlsl new file mode 100644 index 0000000..c3ce299 --- /dev/null +++ b/gamedata/shaders/r1/model_env_hq.ps.hlsl @@ -0,0 +1,32 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float3 tc1 : TEXCOORD1; // environment + float4 tc2 : TEXCOORD2; // lmap + float3 c0 : COLOR0; // sun + float4 c1 : COLOR1; // lq-color + factor + float fog : FOG; +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 t_base = tex2D(s_base, I.tc0); + float4 t_env = texCUBE(s_env, I.tc1); + float4 t_lmap = tex2Dproj(s_lmap, I.tc2); + + // lighting + float3 l_base = t_lmap.rgb; // base light-map (lmap color, ambient, hemi, etc - inside) + float3 l_sun = I.c0 * t_lmap.a; // sun color + float3 light = lerp(l_base + l_sun, I.c1, I.c1.w); + + // final-color + float3 base = lerp(t_env, t_base, t_base.a); + float3 final = light * base * 2.0f; + final = lerp(fog_color.xyz, final, I.fog); + + // out + return float4(final.r, final.g, final.b, t_base.a); +} diff --git a/gamedata/shaders/r1/model_env_hq.vs.hlsl b/gamedata/shaders/r1/model_env_hq.vs.hlsl new file mode 100644 index 0000000..7d9de6d --- /dev/null +++ b/gamedata/shaders/r1/model_env_hq.vs.hlsl @@ -0,0 +1,41 @@ +#include "common.hlsli" +#include "skin.hlsli" + +// #define SKIN_2 + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; // base + float3 tc1 : TEXCOORD1; // environment + float4 tc2 : TEXCOORD2; // projected lmap + float3 c0 : COLOR0; // sun-color + float4 c1 : COLOR1; // lq-color + factor + float fog : FOG; +}; + +vf _main(v_model v) +{ + vf o; + + float4 pos = v.pos; + float3 pos_w = mul(m_W, pos); + float4 pos_w4 = float4(pos_w, 1); + float3 norm_w = normalize(mul(m_W, v.norm)); + + o.hpos = mul(m_WVP, pos); // xform, input in world coords + o.tc0 = v.tc.xy; // copy tc + o.tc1 = calc_reflection(pos_w, norm_w); + o.tc2 = calc_model_lmap(pos_w); // + o.c0 = calc_sun(norm_w); // sun + o.c1 = float4(calc_model_lq_lighting(norm_w), m_plmap_clamp[0].w); + o.fog = calc_fogging(pos_w4); // fog, input in world coords +#ifdef SKIN_COLOR + o.c1.rgb *= v.rgb_tint; + o.c1.w = 1; +#endif + return o; +} + +#define SKIN_VF vf +#include "skin_main.hlsli" diff --git a/gamedata/shaders/r1/model_env_lq.ps.hlsl b/gamedata/shaders/r1/model_env_lq.ps.hlsl new file mode 100644 index 0000000..a9b9d72 --- /dev/null +++ b/gamedata/shaders/r1/model_env_lq.ps.hlsl @@ -0,0 +1,24 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float3 tc1 : TEXCOORD1; // environment + float3 c0 : COLOR0; // sun + float fog : FOG; +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 t_base = tex2D(s_base, I.tc0); + float4 t_env = texCUBE(s_env, I.tc1); + + float3 base = lerp(t_env, t_base, t_base.a); + float3 light = I.c0; + float3 final = light * base * 2.0f; + final = lerp(fog_color.xyz, final, I.fog); + + // out + return float4(final.r, final.g, final.b, t_base.a); +} diff --git a/gamedata/shaders/r1/model_env_lq.vs.hlsl b/gamedata/shaders/r1/model_env_lq.vs.hlsl new file mode 100644 index 0000000..0afacf7 --- /dev/null +++ b/gamedata/shaders/r1/model_env_lq.vs.hlsl @@ -0,0 +1,35 @@ +#include "common.hlsli" +#include "skin.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; // base + float3 tc1 : TEXCOORD1; // environment + float3 c0 : COLOR0; // color + float fog : FOG; +}; + +vf _main(v_model v) +{ + vf o; + + float4 pos = v.pos; + float3 pos_w = mul(m_W, pos); + float3 norm_w = normalize(mul(m_W, v.norm)); + + o.hpos = mul(m_WVP, pos); // xform, input in world coords + o.tc0 = v.tc.xy; // copy tc + o.tc1 = calc_reflection(pos_w, norm_w); + o.c0 = calc_model_lq_lighting(norm_w); + o.fog = calc_fogging(float4(pos_w, 1)); // fog, input in world coords + +#ifdef SKIN_COLOR + o.c0.rgb *= v.rgb_tint; +#endif + return o; +} + +#define SKIN_LQ +#define SKIN_VF vf +#include "skin_main.hlsli" diff --git a/gamedata/shaders/r1/model_env_sl.ps.hlsl b/gamedata/shaders/r1/model_env_sl.ps.hlsl new file mode 100644 index 0000000..4891b6b --- /dev/null +++ b/gamedata/shaders/r1/model_env_sl.ps.hlsl @@ -0,0 +1,23 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float3 tc1 : TEXCOORD1; // environment + float2 tc2 : TEXCOORD2; // lmap + float3 c0 : COLOR0; // sun + float4 c1 : COLOR1; // lq-color + factor +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 t_base = tex2D(s_base, I.tc0); + float4 t_env = texCUBE(s_env, I.tc1); + + // final-color + float3 final = lerp(t_env, t_base, t_base.a); + + // out + return float4(final.r, final.g, final.b, t_base.a); +} diff --git a/gamedata/shaders/r1/model_exohealth.ps.hlsl b/gamedata/shaders/r1/model_exohealth.ps.hlsl new file mode 100644 index 0000000..156af68 --- /dev/null +++ b/gamedata/shaders/r1/model_exohealth.ps.hlsl @@ -0,0 +1,25 @@ +#include "common.hlsli" + +struct v2p +{ + float4 tc0: TEXCOORD0; // base + float4 tc1: TEXCOORD1; // environment + float4 c0: COLOR0; // sun.(fog*fog) +}; + +////////////////////////////////////////////////////////////////////////////////////////// + +float4 main ( v2p I ) : COLOR +{ + float4 t_base = tex2D (s_base,I.tc0); + t_base.g += clamp(0.5-abs(m_actor_params.y-0.5), 0, 0.5)*t_base.a; + t_base.r += (1-m_actor_params.y)*t_base.a; + + // + float4 t_noise = tex2D(s_lmap, I.tc0) * m_affects.x * 2; + t_base.rgb += t_noise.rgb; + + return float4 (t_base.r, t_base.g, t_base.b, 1); +} + + diff --git a/gamedata/shaders/r1/model_exoscreen.ps.hlsl b/gamedata/shaders/r1/model_exoscreen.ps.hlsl new file mode 100644 index 0000000..5adfac9 --- /dev/null +++ b/gamedata/shaders/r1/model_exoscreen.ps.hlsl @@ -0,0 +1,22 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0: TEXCOORD0; // base + float2 tc1: TEXCOORD1; // lmap + float4 c0: COLOR0; // sun +}; + +////////////////////////////////////////////////////////////////////////////////////////// +// Pixel +float4 main ( v2p I ) : COLOR +{ + float4 t_base = tex2D (s_base,I.tc0); + + // + float4 t_noise = tex2D(s_lmap, I.tc0) * m_affects.x * 2; + t_base.rgb += t_noise.rgb; + + // out + return float4 (t_base.r,t_base.g,t_base.b,t_base.a * I.c0.a); +} diff --git a/gamedata/shaders/r1/model_green_conditionbar.ps.hlsl b/gamedata/shaders/r1/model_green_conditionbar.ps.hlsl new file mode 100644 index 0000000..be7eb92 --- /dev/null +++ b/gamedata/shaders/r1/model_green_conditionbar.ps.hlsl @@ -0,0 +1,22 @@ +#include "common.hlsli" + +struct v2p +{ + float4 tc0: TEXCOORD0; // base + float4 tc1: TEXCOORD1; // environment + float4 c0: COLOR0; // sun.(fog*fog) +}; + +////////////////////////////////////////////////////////////////////////////////////////// + +float4 main ( v2p I ) : COLOR +{ + float4 t_base = tex2D (s_base,I.tc0); + t_base.a = (I.tc0.x < m_actor_params.z) ? 1 : 0; + t_base.r += (0.5 < m_actor_params.z) ? 0 : 0.5; + t_base.g -= (0.25 < m_actor_params.z) ? 0 : 0.5; + + return float4 (t_base.r, t_base.g, t_base.b, t_base.a); +} + + diff --git a/gamedata/shaders/r1/model_green_energybar.ps.hlsl b/gamedata/shaders/r1/model_green_energybar.ps.hlsl new file mode 100644 index 0000000..96e437b --- /dev/null +++ b/gamedata/shaders/r1/model_green_energybar.ps.hlsl @@ -0,0 +1,26 @@ +#include "common.hlsli" + +struct v2p +{ + float4 tc0: TEXCOORD0; // base + float4 tc1: TEXCOORD1; // environment + float4 c0: COLOR0; // sun.(fog*fog) +}; + +////////////////////////////////////////////////////////////////////////////////////////// + +float4 main ( v2p I ) : COLOR +{ + float4 t_base = tex2D (s_base,I.tc0); + t_base.a = (I.tc0.x < m_actor_params.a) ? 1 : 0; + t_base.r += (0.1 < m_actor_params.a) ? 0 : 0.5; + t_base.g -= (0.1 < m_actor_params.a) ? 0 : 0.5; + + // + float4 t_noise = tex2D(s_lmap, I.tc0) * m_affects.x * 2; + t_base.rgb += t_noise.rgb; + + return float4 (t_base.r, t_base.g, t_base.b, t_base.a); +} + + diff --git a/gamedata/shaders/r1/model_pda_screen.ps.hlsl b/gamedata/shaders/r1/model_pda_screen.ps.hlsl new file mode 100644 index 0000000..34da217 --- /dev/null +++ b/gamedata/shaders/r1/model_pda_screen.ps.hlsl @@ -0,0 +1,30 @@ +#include "common.hlsli" + +struct v2p +{ + float4 tc0: TEXCOORD0; // base + float4 tc1: TEXCOORD1; // environment + float4 c0: COLOR0; // sun.(fog*fog) +}; + +////////////////////////////////////////////////////////////////////////////////////////// + +// Pixel +uniform sampler2D s_vp2; +uniform sampler2D s_load; +uniform sampler2D s_noise; + +//float4 problems_main( v2p I ) +float4 main ( v2p I ) : COLOR +{ + //выбираем основное изображение, которое выведется на экран + float4 t_vp2 = ( m_affects.a * m_affects.x > 0 ) ? tex2D(s_load, I.tc0) : ((m_affects.x < 0.27) ? tex2D(s_vp2, I.tc0) : tex2D(s_base, I.tc0)); + + //получаем пиксель шума и масштабируем его в соответствии с текущим уровнем проблем + float4 t_noise = tex2D(s_noise, I.tc0) * m_affects.x * (1-m_affects.a) * 2; + //t_vp2.rgb += t_noise.rgb; + + t_vp2.rgb = (m_affects.x > 0.41) ? 0 : t_vp2.rgb + t_noise.rgb; + + return float4 (t_vp2.r, t_vp2.g, t_vp2.b, 1); +} \ No newline at end of file diff --git a/gamedata/shaders/r1/model_scope_gauss.ps.hlsl b/gamedata/shaders/r1/model_scope_gauss.ps.hlsl new file mode 100644 index 0000000..2350bf7 --- /dev/null +++ b/gamedata/shaders/r1/model_scope_gauss.ps.hlsl @@ -0,0 +1,36 @@ +#include "common.hlsli" + +struct v2p +{ + float4 tc0: TEXCOORD0; // base + float4 tc1: TEXCOORD1; // environment + float4 c0: COLOR0; // sun.(fog*fog) +}; + +////////////////////////////////////////////////////////////////////////////////////////// + +// Pixel +uniform sampler2D s_vp2; +uniform sampler2D s_noise; + +float4 main ( v2p I ) : COLOR +{ + float4 t_base = tex2D (s_base,I.tc0); + + + I.tc0.x = (I.tc0.x-0.5f)*m_hud_params.x+0.5f+m_zoom_deviation.x; // Растягиваем картинку в линзе так, чтобы на любом разрешении экрана были правильные пропорции + I.tc0.y = I.tc0.y+m_zoom_deviation.y; + float4 t_vp2 = tex2D (s_vp2, I.tc0); // Изображение со второго вьюпорта + + t_vp2.b = t_vp2.b + (t_vp2.r + t_vp2.g + t_vp2.b+1)*m_zoom_deviation.z; + + //получаем пиксель шума и масштабируем его в соответствии с текущим уровнем проблем + float4 t_noise = tex2D(s_noise, I.tc0) * m_affects.x * 2; + t_vp2.rgb += t_noise.rgb; + + // Миксуем с сеткой + float4 res = lerp (t_vp2, t_base, t_base.a); + + // out + return float4 (res.r, res.g, res.b, min(m_hud_params.y, m_hud_params.a)); +} diff --git a/gamedata/shaders/r1/model_scope_lense.ps.hlsl b/gamedata/shaders/r1/model_scope_lense.ps.hlsl new file mode 100644 index 0000000..9fbbff7 --- /dev/null +++ b/gamedata/shaders/r1/model_scope_lense.ps.hlsl @@ -0,0 +1,36 @@ +#include "common.hlsli" + +struct v2p +{ + float4 tc0: TEXCOORD0; // base + float4 tc1: TEXCOORD1; // environment + float4 c0: COLOR0; // sun.(fog*fog) +}; + +////////////////////////////////////////////////////////////////////////////////////////// + +// Pixel +uniform sampler2D s_vp2; + +float4 main ( v2p I ) : COLOR +{ + + float4 t_base = tex2D (s_base,I.tc0); + + + I.tc0.x = (I.tc0.x-0.5f)*m_hud_params.x+0.5f+m_zoom_deviation.x; // Растягиваем картинку в линзе так, чтобы на любом разрешении экрана были правильные пропорции + I.tc0.y = I.tc0.y+m_zoom_deviation.y; + float4 t_vp2 = tex2D (s_vp2, I.tc0); // Изображение со второго вьюпорта + + + float4 final = float4 (0, 0, 0, 0); + + { //** Стандартный режим **// + // Миксуем всё и собираем финальную картинку + float4 base = lerp (t_vp2, t_base, t_base.a); // Сетку с вьюпортом + final = base; + } + + // out + return float4 (final.r, final.g, final.b, min(m_hud_params.y, m_hud_params.a)); +} diff --git a/gamedata/shaders/r1/model_scope_lense_lerp.ps.hlsl b/gamedata/shaders/r1/model_scope_lense_lerp.ps.hlsl new file mode 100644 index 0000000..1e5119f --- /dev/null +++ b/gamedata/shaders/r1/model_scope_lense_lerp.ps.hlsl @@ -0,0 +1,36 @@ +#include "common.hlsli" + +struct v2p +{ + float4 tc0: TEXCOORD0; // base + float4 tc1: TEXCOORD1; // environment + float4 c0: COLOR0; // sun.(fog*fog) +}; + +////////////////////////////////////////////////////////////////////////////////////////// + +// Pixel +uniform sampler2D s_vp2; +uniform sampler2D s_base2; + +float4 main (v2p I) : COLOR +{ + // Производим выборку правой и левой половин текстуры с сеткой + float2 coords = I.tc0; + coords.x *= 0.5; + float4 base2 = tex2D(s_base2, coords); + coords.x += 0.5; + float4 t_base = tex2D(s_base, coords); + // Миксуем половинки в соответствии с текущим уровнем подсветки + t_base = lerp(base2, t_base, m_zoom_deviation.z); + + // Коррекция пропорций в зависимости от разрешения + I.tc0.x = (I.tc0.x - 0.5f) * m_hud_params.x + 0.5f + m_zoom_deviation.x; + I.tc0.y = I.tc0.y + m_zoom_deviation.y; + float4 t_vp2 = tex2D(s_vp2, I.tc0); + + + float4 final = lerp(t_vp2, t_base, t_base.a); + // out + return float4(final.r, final.g, final.b, min(m_hud_params.y, m_hud_params.a)); +} diff --git a/gamedata/shaders/r1/model_scope_lense_night.ps.hlsl b/gamedata/shaders/r1/model_scope_lense_night.ps.hlsl new file mode 100644 index 0000000..9953e0f --- /dev/null +++ b/gamedata/shaders/r1/model_scope_lense_night.ps.hlsl @@ -0,0 +1,36 @@ +#include "common.hlsli" +uniform float4 screen_res; +#include "pnv.hlsli" + +struct v2p +{ + float4 tc0: TEXCOORD0; // base + float4 tc1: TEXCOORD1; // environment + float4 c0: COLOR0; // sun.(fog*fog) +}; + +////////////////////////////////////////////////////////////////////////////////////////// + +// Pixel +uniform sampler2D s_vp2; + +float4 main ( v2p I ) : COLOR +{ + + float4 t_base = tex2D (s_base,I.tc0); + + I.tc0.x = (I.tc0.x-0.5f)*m_hud_params.x+0.5f+m_zoom_deviation.x; // Растягиваем картинку в линзе так, чтобы на любом разрешении экрана были правильные пропорции + I.tc0.y = I.tc0.y+m_zoom_deviation.y; + float4 t_vp2 = tex2D (s_vp2, I.tc0); // Изображение со второго вьюпорта + + float4 final = float4 (0, 0, 0, 0); + + //** Ночной режим **// //Зеленый ПНВ + t_vp2.rgb = calc_night_vision_effect(I.tc0, t_vp2, float3(1.0, 2.0, 1.0)); + + // Миксуем с сеткой + float4 res = lerp (t_vp2, t_base, t_base.a); + + // out + return float4 (res.r, res.g, res.b, min(m_hud_params.y, m_hud_params.a)); +} diff --git a/gamedata/shaders/r1/model_shadow.ps.hlsl b/gamedata/shaders/r1/model_shadow.ps.hlsl new file mode 100644 index 0000000..b035e0e --- /dev/null +++ b/gamedata/shaders/r1/model_shadow.ps.hlsl @@ -0,0 +1,13 @@ +#include "common.hlsli" + +struct v2p +{ + float4 c0 : COLOR0; // color +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + // out + return I.c0; +} diff --git a/gamedata/shaders/r1/model_tricolor_conditionbar.ps.hlsl b/gamedata/shaders/r1/model_tricolor_conditionbar.ps.hlsl new file mode 100644 index 0000000..b0f8580 --- /dev/null +++ b/gamedata/shaders/r1/model_tricolor_conditionbar.ps.hlsl @@ -0,0 +1,23 @@ +#include "common.hlsli" + +struct v2p +{ + float4 tc0: TEXCOORD0; // base + float4 tc1: TEXCOORD1; // environment + float4 c0: COLOR0; // sun.(fog*fog) +}; + +////////////////////////////////////////////////////////////////////////////////////////// + +float4 main ( v2p I ) : COLOR +{ + float4 t_base; + t_base.r = ((m_actor_params.z<0.5) && (I.tc0.x < m_actor_params.z)) ? 1 : 0; + t_base.g = ((m_actor_params.z>0.25) && (I.tc0.x < m_actor_params.z)) ? 1 : 0; + t_base.b = 0; + t_base.a = (I.tc0.x < m_actor_params.z) ? 1 : 0; + + return float4 (t_base.r, t_base.g, t_base.b, t_base.a); +} + + diff --git a/gamedata/shaders/r1/models_clockarrow_h.lua b/gamedata/shaders/r1/models_clockarrow_h.lua new file mode 100644 index 0000000..475baec --- /dev/null +++ b/gamedata/shaders/r1/models_clockarrow_h.lua @@ -0,0 +1,12 @@ +function normal (shader, t_base, t_second, t_detail) + + shader:begin ("model_env_lq","model_clockarrow_h") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_lmap"):texture ("$blackalpha") +end diff --git a/gamedata/shaders/r1/models_clockarrow_h_screen.lua b/gamedata/shaders/r1/models_clockarrow_h_screen.lua new file mode 100644 index 0000000..1b02aaf --- /dev/null +++ b/gamedata/shaders/r1/models_clockarrow_h_screen.lua @@ -0,0 +1,16 @@ +function normal (shader, t_base, t_second, t_detail) + shader :begin ("model_def_lqs","model_clockarrow_h") + :fog (true) + :blend (true,blend.srcalpha,blend.invsrcalpha) + + shader:sampler ("s_base"):texture (t_base) + shader:sampler ("s_lmap"):texture ("ui\\ui_mono_noise") +end + +function l_spot (shader, t_base, t_second, t_detail) + r1_lspot (shader, t_base, "model_def_spot") +end + +function l_point (shader, t_base, t_second, t_detail) + r1_lpoint (shader, t_base, "model_def_point") +end diff --git a/gamedata/shaders/r1/models_clockarrow_m.lua b/gamedata/shaders/r1/models_clockarrow_m.lua new file mode 100644 index 0000000..6403087 --- /dev/null +++ b/gamedata/shaders/r1/models_clockarrow_m.lua @@ -0,0 +1,12 @@ +function normal (shader, t_base, t_second, t_detail) + + shader:begin ("model_env_lq","model_clockarrow_m") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_lmap"):texture ("$blackalpha") +end diff --git a/gamedata/shaders/r1/models_clockarrow_m_screen.lua b/gamedata/shaders/r1/models_clockarrow_m_screen.lua new file mode 100644 index 0000000..f8d7abf --- /dev/null +++ b/gamedata/shaders/r1/models_clockarrow_m_screen.lua @@ -0,0 +1,16 @@ +function normal (shader, t_base, t_second, t_detail) + shader :begin ("model_def_lqs","model_clockarrow_m") + :fog (true) + :blend (true,blend.srcalpha,blend.invsrcalpha) + + shader:sampler ("s_base"):texture (t_base) + shader:sampler ("s_lmap"):texture ("ui\\ui_mono_noise") +end + +function l_spot (shader, t_base, t_second, t_detail) + r1_lspot (shader, t_base, "model_def_spot") +end + +function l_point (shader, t_base, t_second, t_detail) + r1_lpoint (shader, t_base, "model_def_point") +end diff --git a/gamedata/shaders/r1/models_clockarrow_s.lua b/gamedata/shaders/r1/models_clockarrow_s.lua new file mode 100644 index 0000000..7faa7f3 --- /dev/null +++ b/gamedata/shaders/r1/models_clockarrow_s.lua @@ -0,0 +1,12 @@ +function normal (shader, t_base, t_second, t_detail) + + shader:begin ("model_env_lq","model_clockarrow_s") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_lmap"):texture ("$blackalpha") +end diff --git a/gamedata/shaders/r1/models_clockarrow_s_screen.lua b/gamedata/shaders/r1/models_clockarrow_s_screen.lua new file mode 100644 index 0000000..51e3f26 --- /dev/null +++ b/gamedata/shaders/r1/models_clockarrow_s_screen.lua @@ -0,0 +1,16 @@ +function normal (shader, t_base, t_second, t_detail) + shader :begin ("model_def_lqs","model_clockarrow_s") + :fog (true) + :blend (true,blend.srcalpha,blend.invsrcalpha) + + shader:sampler ("s_base"):texture (t_base) + shader:sampler ("s_lmap"):texture ("ui\\ui_mono_noise") +end + +function l_spot (shader, t_base, t_second, t_detail) + r1_lspot (shader, t_base, "model_def_spot") +end + +function l_point (shader, t_base, t_second, t_detail) + r1_lpoint (shader, t_base, "model_def_point") +end diff --git a/gamedata/shaders/r1/models_collimator.lua b/gamedata/shaders/r1/models_collimator.lua new file mode 100644 index 0000000..7c24361 --- /dev/null +++ b/gamedata/shaders/r1/models_collimator.lua @@ -0,0 +1,10 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_def_lplanes", "base_lplanes_fft") + : fog (false) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (false) + shader:sampler ("s_base") :texture (t_base) +end \ No newline at end of file diff --git a/gamedata/shaders/r1/models_collimsight.lua b/gamedata/shaders/r1/models_collimsight.lua new file mode 100644 index 0000000..e9a8b70 --- /dev/null +++ b/gamedata/shaders/r1/models_collimsight.lua @@ -0,0 +1,9 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_def_lplanes","base_lplanes") + : fog (false) + : zb (true,false) + : blend (true,blend.srcalpha,blend.one) + : aref (true,0) + : sorting (2, true) + shader:sampler ("s_base") :texture (t_base) +end diff --git a/gamedata/shaders/r1/models_compass_arrow.lua b/gamedata/shaders/r1/models_compass_arrow.lua new file mode 100644 index 0000000..9040465 --- /dev/null +++ b/gamedata/shaders/r1/models_compass_arrow.lua @@ -0,0 +1,12 @@ +function normal (shader, t_base, t_second, t_detail) + + shader:begin ("model_env_lq","model_compassarrow") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_lmap"):texture ("$blackalpha") +end diff --git a/gamedata/shaders/r1/models_compass_arrow_screen.lua b/gamedata/shaders/r1/models_compass_arrow_screen.lua new file mode 100644 index 0000000..3087b78 --- /dev/null +++ b/gamedata/shaders/r1/models_compass_arrow_screen.lua @@ -0,0 +1,16 @@ +function normal (shader, t_base, t_second, t_detail) + shader :begin ("model_def_lqs","model_compassarrow") + :fog (true) + :blend (true,blend.srcalpha,blend.invsrcalpha) + + shader:sampler ("s_base"):texture (t_base) + shader:sampler ("s_lmap"):texture ("ui\\ui_mono_noise") +end + +function l_spot (shader, t_base, t_second, t_detail) + r1_lspot (shader, t_base, "model_def_spot") +end + +function l_point (shader, t_base, t_second, t_detail) + r1_lpoint (shader, t_base, "model_def_point") +end diff --git a/gamedata/shaders/r1/models_compscreen.lua b/gamedata/shaders/r1/models_compscreen.lua new file mode 100644 index 0000000..fc80a15 --- /dev/null +++ b/gamedata/shaders/r1/models_compscreen.lua @@ -0,0 +1,15 @@ +function normal (shader, t_base, t_second, t_detail) + shader :begin ("model_def_lqs","model_compscreen") + :fog (true) + + shader:sampler ("s_base"):texture (t_base) + shader:sampler ("s_lmap"):texture ("ui\\ui_mono_noise") +end + +function l_spot (shader, t_base, t_second, t_detail) + r1_lspot (shader, t_base, "model_def_spot") +end + +function l_point (shader, t_base, t_second, t_detail) + r1_lpoint (shader, t_base, "model_def_point") +end diff --git a/gamedata/shaders/r1/models_condition.lua b/gamedata/shaders/r1/models_condition.lua new file mode 100644 index 0000000..689945e --- /dev/null +++ b/gamedata/shaders/r1/models_condition.lua @@ -0,0 +1,12 @@ +function normal (shader, t_base, t_second, t_detail) + + shader:begin ("model_env_lq","model_green_conditionbar") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_lmap"):texture ("ui\\ui_mono_noise") +end diff --git a/gamedata/shaders/r1/models_digiclock_hh_screen.lua b/gamedata/shaders/r1/models_digiclock_hh_screen.lua new file mode 100644 index 0000000..40df709 --- /dev/null +++ b/gamedata/shaders/r1/models_digiclock_hh_screen.lua @@ -0,0 +1,15 @@ +function normal (shader, t_base, t_second, t_detail) + shader :begin ("model_def_lqs","model_digiclock_hh") + :fog (true) + + shader:sampler ("s_base"):texture (t_base) + shader:sampler ("s_lmap"):texture ("ui\\ui_mono_noise") +end + +function l_spot (shader, t_base, t_second, t_detail) + r1_lspot (shader, t_base, "model_def_spot") +end + +function l_point (shader, t_base, t_second, t_detail) + r1_lpoint (shader, t_base, "model_def_point") +end \ No newline at end of file diff --git a/gamedata/shaders/r1/models_digiclock_hl_screen.lua b/gamedata/shaders/r1/models_digiclock_hl_screen.lua new file mode 100644 index 0000000..7508844 --- /dev/null +++ b/gamedata/shaders/r1/models_digiclock_hl_screen.lua @@ -0,0 +1,15 @@ +function normal (shader, t_base, t_second, t_detail) + shader :begin ("model_def_lqs","model_digiclock_hl") + :fog (true) + + shader:sampler ("s_base"):texture (t_base) + shader:sampler ("s_lmap"):texture ("ui\\ui_mono_noise") +end + +function l_spot (shader, t_base, t_second, t_detail) + r1_lspot (shader, t_base, "model_def_spot") +end + +function l_point (shader, t_base, t_second, t_detail) + r1_lpoint (shader, t_base, "model_def_point") +end \ No newline at end of file diff --git a/gamedata/shaders/r1/models_digiclock_mh_screen.lua b/gamedata/shaders/r1/models_digiclock_mh_screen.lua new file mode 100644 index 0000000..f088f62 --- /dev/null +++ b/gamedata/shaders/r1/models_digiclock_mh_screen.lua @@ -0,0 +1,15 @@ +function normal (shader, t_base, t_second, t_detail) + shader :begin ("model_def_lqs","model_digiclock_mh") + :fog (true) + + shader:sampler ("s_base"):texture (t_base) + shader:sampler ("s_lmap"):texture ("ui\\ui_mono_noise") +end + +function l_spot (shader, t_base, t_second, t_detail) + r1_lspot (shader, t_base, "model_def_spot") +end + +function l_point (shader, t_base, t_second, t_detail) + r1_lpoint (shader, t_base, "model_def_point") +end \ No newline at end of file diff --git a/gamedata/shaders/r1/models_digiclock_ml_screen.lua b/gamedata/shaders/r1/models_digiclock_ml_screen.lua new file mode 100644 index 0000000..9092346 --- /dev/null +++ b/gamedata/shaders/r1/models_digiclock_ml_screen.lua @@ -0,0 +1,15 @@ +function normal (shader, t_base, t_second, t_detail) + shader :begin ("model_def_lqs","model_digiclock_ml") + :fog (true) + + shader:sampler ("s_base"):texture (t_base) + shader:sampler ("s_lmap"):texture ("ui\\ui_mono_noise") +end + +function l_spot (shader, t_base, t_second, t_detail) + r1_lspot (shader, t_base, "model_def_spot") +end + +function l_point (shader, t_base, t_second, t_detail) + r1_lpoint (shader, t_base, "model_def_point") +end \ No newline at end of file diff --git a/gamedata/shaders/r1/models_energy_gauss.lua b/gamedata/shaders/r1/models_energy_gauss.lua new file mode 100644 index 0000000..b94e442 --- /dev/null +++ b/gamedata/shaders/r1/models_energy_gauss.lua @@ -0,0 +1,12 @@ +function normal (shader, t_base, t_second, t_detail) + + shader:begin ("model_env_lq","model_green_energybar") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_lmap"):texture ("ui\\ui_mono_noise") +end diff --git a/gamedata/shaders/r1/models_exohealth.lua b/gamedata/shaders/r1/models_exohealth.lua new file mode 100644 index 0000000..9ae5f37 --- /dev/null +++ b/gamedata/shaders/r1/models_exohealth.lua @@ -0,0 +1,12 @@ +function normal (shader, t_base, t_second, t_detail) + + shader:begin ("model_env_lq","model_exohealth") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_lmap"):texture ("ui\\ui_mono_noise") +end diff --git a/gamedata/shaders/r1/models_exoscreen01.lua b/gamedata/shaders/r1/models_exoscreen01.lua new file mode 100644 index 0000000..ce9c109 --- /dev/null +++ b/gamedata/shaders/r1/models_exoscreen01.lua @@ -0,0 +1,10 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_def_lplanes","model_exoscreen") + : fog (false) + : zb (true,false) + : blend (true,blend.srcalpha,blend.one) + : aref (true,0) + : sorting (2, true) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_lmap"):texture ("ui\\ui_mono_noise") +end diff --git a/gamedata/shaders/r1/models_laserray.lua b/gamedata/shaders/r1/models_laserray.lua new file mode 100644 index 0000000..06fa0bd --- /dev/null +++ b/gamedata/shaders/r1/models_laserray.lua @@ -0,0 +1,9 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_def_lplanes","base_laser") + : fog (false) + : zb (true,false) + : blend (true,blend.srcalpha,blend.one) + : aref (true,0) + : sorting (2, true) + shader:sampler ("s_base") :texture (t_base) +end diff --git a/gamedata/shaders/r1/models_lense_scope.lua b/gamedata/shaders/r1/models_lense_scope.lua new file mode 100644 index 0000000..e8b21e7 --- /dev/null +++ b/gamedata/shaders/r1/models_lense_scope.lua @@ -0,0 +1,12 @@ +function normal (shader, t_base, t_second, t_detail) + + shader:begin ("model_env_lq","model_scope_lense") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_vp2") :texture ("$user$viewport2") +end diff --git a/gamedata/shaders/r1/models_lenses.lua b/gamedata/shaders/r1/models_lenses.lua new file mode 100644 index 0000000..cad1612 --- /dev/null +++ b/gamedata/shaders/r1/models_lenses.lua @@ -0,0 +1,9 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_def_lplanes","base_lplanes") + : fog (false) + : zb (true,false) + : blend (true,blend.srcalpha,blend.one) + : aref (true,0) + : sorting (2, false) + shader:sampler ("s_base") :texture (t_base) +end diff --git a/gamedata/shaders/r1/models_lfo_light_dot_weapons.lua b/gamedata/shaders/r1/models_lfo_light_dot_weapons.lua new file mode 100644 index 0000000..6dada58 --- /dev/null +++ b/gamedata/shaders/r1/models_lfo_light_dot_weapons.lua @@ -0,0 +1,9 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("parallax_mark", "parallax_mark") + : fog (false) + : zb (true,false) + : blend (true,blend.srcalpha,blend.one) + : aref (true,0) + : sorting (2, true) + shader:sampler ("s_base") :texture (t_base) : clamp() +end diff --git a/gamedata/shaders/r1/models_lightplanes.lua b/gamedata/shaders/r1/models_lightplanes.lua new file mode 100644 index 0000000..e9a8b70 --- /dev/null +++ b/gamedata/shaders/r1/models_lightplanes.lua @@ -0,0 +1,9 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_def_lplanes","base_lplanes") + : fog (false) + : zb (true,false) + : blend (true,blend.srcalpha,blend.one) + : aref (true,0) + : sorting (2, true) + shader:sampler ("s_base") :texture (t_base) +end diff --git a/gamedata/shaders/r1/models_magazine.lua b/gamedata/shaders/r1/models_magazine.lua new file mode 100644 index 0000000..4b4f477 --- /dev/null +++ b/gamedata/shaders/r1/models_magazine.lua @@ -0,0 +1,12 @@ + +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_env_hq","model_env_hq") + : fog (true) + : zb (true,true) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_env") :texture ("sky\\sky_cube_weapons") : clamp() + +end \ No newline at end of file diff --git a/gamedata/shaders/r1/models_pautina.lua b/gamedata/shaders/r1/models_pautina.lua new file mode 100644 index 0000000..6d4efe9 --- /dev/null +++ b/gamedata/shaders/r1/models_pautina.lua @@ -0,0 +1,31 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_distort4ghost", "particle") -- particle_alphaonly + :sorting(3, true) + :blend(true, blend.srccolor, blend.invsrcalpha) + :aref(true, 0) + :zb(true, false) + :fog(false) + :distort(false) + shader:sampler("s_base"):texture(t_base) +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort4ghost", "particle_distort") + :sorting(3, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_distort"):texture("pfx\\pfx_dist_glass") --:texture (t_base) -- ("pfx\\pfx_dist_glass2" +end + +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_def_lplanes", "base_lplanes") + :fog(false) + :zb(true, false) + :blend(true, blend.srccolor, blend.one) + :aref(true, 0) + :sorting(2, true) + shader:sampler("s_base"):texture(t_base) +end diff --git a/gamedata/shaders/r1/models_pda.lua b/gamedata/shaders/r1/models_pda.lua new file mode 100644 index 0000000..93e89cc --- /dev/null +++ b/gamedata/shaders/r1/models_pda.lua @@ -0,0 +1,14 @@ +function normal (shader, t_base, t_second, t_detail) + + shader:begin ("model_env_lq","model_pda_screen") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_vp2") :texture ("$user$ui") + shader:sampler ("s_load") :texture ("ui\\ui_pda_loadscreen") + shader:sampler ("s_noise") :texture ("ui\\ui_mono_noise") +end diff --git a/gamedata/shaders/r1/models_reflex_reticle.lua b/gamedata/shaders/r1/models_reflex_reticle.lua new file mode 100644 index 0000000..6dada58 --- /dev/null +++ b/gamedata/shaders/r1/models_reflex_reticle.lua @@ -0,0 +1,9 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("parallax_mark", "parallax_mark") + : fog (false) + : zb (true,false) + : blend (true,blend.srcalpha,blend.one) + : aref (true,0) + : sorting (2, true) + shader:sampler ("s_base") :texture (t_base) : clamp() +end diff --git a/gamedata/shaders/r1/models_selflight.lua b/gamedata/shaders/r1/models_selflight.lua new file mode 100644 index 0000000..8de8227 --- /dev/null +++ b/gamedata/shaders/r1/models_selflight.lua @@ -0,0 +1,13 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_def_lqs", "simple") + :fog(true) + shader:sampler("s_base"):texture(t_base) +end + +function l_spot(shader, t_base, t_second, t_detail) + r1_lspot(shader, t_base, "model_def_spot") +end + +function l_point(shader, t_base, t_second, t_detail) + r1_lpoint(shader, t_base, "model_def_point") +end diff --git a/gamedata/shaders/r1/models_selflight_det.lua b/gamedata/shaders/r1/models_selflight_det.lua new file mode 100644 index 0000000..8de8227 --- /dev/null +++ b/gamedata/shaders/r1/models_selflight_det.lua @@ -0,0 +1,13 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_def_lqs", "simple") + :fog(true) + shader:sampler("s_base"):texture(t_base) +end + +function l_spot(shader, t_base, t_second, t_detail) + r1_lspot(shader, t_base, "model_def_spot") +end + +function l_point(shader, t_base, t_second, t_detail) + r1_lpoint(shader, t_base, "model_def_point") +end diff --git a/gamedata/shaders/r1/models_selflightl.lua b/gamedata/shaders/r1/models_selflightl.lua new file mode 100644 index 0000000..8de8227 --- /dev/null +++ b/gamedata/shaders/r1/models_selflightl.lua @@ -0,0 +1,13 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_def_lqs", "simple") + :fog(true) + shader:sampler("s_base"):texture(t_base) +end + +function l_spot(shader, t_base, t_second, t_detail) + r1_lspot(shader, t_base, "model_def_spot") +end + +function l_point(shader, t_base, t_second, t_detail) + r1_lpoint(shader, t_base, "model_def_point") +end diff --git a/gamedata/shaders/r1/models_xanomaly.lua b/gamedata/shaders/r1/models_xanomaly.lua new file mode 100644 index 0000000..9d5b538 --- /dev/null +++ b/gamedata/shaders/r1/models_xanomaly.lua @@ -0,0 +1,89 @@ +--[[ +function l_spot (shader, t_base, t_second, t_detail) + r1_lspot (shader, t_base, "model_def_spot") +end + +function l_point (shader, t_base, t_second, t_detail) + r1_lpoint (shader, t_base, "model_def_point") +end + + +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_distort4glass","particle") + : sorting (2,true) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : zb (true,true) + : fog (false) + : distort (false) + shader:sampler ("s_base") :texture (t_base) +end + +function l_special (shader, t_base, t_second, t_detail) + shader:begin ("model_distort4glass","particle_distort") + : sorting (2, true) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : zb (true,true) + : fog (false) + : distort (true) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_distort") :texture ("pfx\\pfx_dist_glass3") +end + +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_env_hq","model_env_sl") + : fog (false) + : zb (true,true) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (3, false) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_env") :texture ("sky\\sky_5_cube") + : clamp() +end +]] + +function l_spot(shader, t_base, t_second, t_detail) + r1_lspot(shader, t_base, "model_def_spot") +end + +function l_point(shader, t_base, t_second, t_detail) + r1_lpoint(shader, t_base, "model_def_point") +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort4glass", "particle_distort") + :sorting(3, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_distort"):texture("pfx\\pfx_dist_glass3") +end + +function normal_hq(shader, t_base, t_second, t_detail) + shader:begin("model_env_hq", "model_env_hq") + :fog(true) + :zb(true, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :sorting(3, true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_env"):texture("sky\\sky_5_cube"):clamp() + shader:sampler("s_lmap"):texture("$user$projector") + :clamp() + :f_linear() + :project(true) +end + +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_env_lq", "model_env_lq") + :fog(true) + :zb(true, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :sorting(3, true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_env"):texture("sky\\sky_5_cube"):clamp() +end diff --git a/gamedata/shaders/r1/models_xdistort.lua b/gamedata/shaders/r1/models_xdistort.lua new file mode 100644 index 0000000..870cb70 --- /dev/null +++ b/gamedata/shaders/r1/models_xdistort.lua @@ -0,0 +1,10 @@ +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort", "particle_distort") + :sorting(3, false) + :blend(true, blend.srccolor, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_distort"):texture(t_base) -- "pfx\\pfx_distortion" +end diff --git a/gamedata/shaders/r1/models_xdistortcolor.lua b/gamedata/shaders/r1/models_xdistortcolor.lua new file mode 100644 index 0000000..ecf867a --- /dev/null +++ b/gamedata/shaders/r1/models_xdistortcolor.lua @@ -0,0 +1,21 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_distort", "particle") -- particle_alphaonly + :sorting(3, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort", "particle_distort") + :sorting(3, false) + :blend(true, blend.srccolor, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_distort"):texture(t_base) -- "pfx\\pfx_distortion" +end diff --git a/gamedata/shaders/r1/models_xdistortcolorl.lua b/gamedata/shaders/r1/models_xdistortcolorl.lua new file mode 100644 index 0000000..a707b46 --- /dev/null +++ b/gamedata/shaders/r1/models_xdistortcolorl.lua @@ -0,0 +1,21 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_distort", "particle") -- particle_alphaonly + :sorting(2, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort", "particle_distort") + :sorting(3, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_distort"):texture(t_base) -- "pfx\\pfx_distortion" +end diff --git a/gamedata/shaders/r1/models_xdistortcolorlinv.lua b/gamedata/shaders/r1/models_xdistortcolorlinv.lua new file mode 100644 index 0000000..3c55b1b --- /dev/null +++ b/gamedata/shaders/r1/models_xdistortcolorlinv.lua @@ -0,0 +1,21 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_distort_inv", "particle") + :sorting(2, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort", "particle_distort") + :sorting(3, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_distort"):texture(t_base) -- "pfx\\pfx_distortion" +end diff --git a/gamedata/shaders/r1/models_xdistortinv.lua b/gamedata/shaders/r1/models_xdistortinv.lua new file mode 100644 index 0000000..d060712 --- /dev/null +++ b/gamedata/shaders/r1/models_xdistortinv.lua @@ -0,0 +1,21 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_distort_inv", "particle_alphaonly") -- particle_alphaonly + :sorting(3, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort_inv", "particle_distort") + :sorting(3, false) + :blend(true, blend.srccolor, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_distort"):texture(t_base) -- "pfx\\pfx_distortion" +end diff --git a/gamedata/shaders/r1/models_xglass.lua b/gamedata/shaders/r1/models_xglass.lua new file mode 100644 index 0000000..8ddbc35 --- /dev/null +++ b/gamedata/shaders/r1/models_xglass.lua @@ -0,0 +1,44 @@ +function l_spot(shader, t_base, t_second, t_detail) + r1_lspot(shader, t_base, "model_def_spot") +end + +function l_point(shader, t_base, t_second, t_detail) + r1_lpoint(shader, t_base, "model_def_point") +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort4glass", "particle_distort") + :sorting(3, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_distort"):texture("pfx\\pfx_dist_glass2") +end + +function normal_hq(shader, t_base, t_second, t_detail) + shader:begin("model_env_hq", "model_env_hq") + :fog(true) + :zb(true, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :sorting(3, true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_env"):texture("sky\\sky_5_cube"):clamp() + shader:sampler("s_lmap"):texture("$user$projector") + :clamp() + :f_linear() + :project(true) +end + +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_env_lq", "model_env_lq") + :fog(true) + :zb(true, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :sorting(3, true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_env"):texture("sky\\sky_5_cube"):clamp() +end diff --git a/gamedata/shaders/r1/models_xglass2.lua b/gamedata/shaders/r1/models_xglass2.lua new file mode 100644 index 0000000..b9b7af2 --- /dev/null +++ b/gamedata/shaders/r1/models_xglass2.lua @@ -0,0 +1,44 @@ +function l_spot(shader, t_base, t_second, t_detail) + r1_lspot(shader, t_base, "model_def_spot") +end + +function l_point(shader, t_base, t_second, t_detail) + r1_lpoint(shader, t_base, "model_def_point") +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort4glass", "particle_distort") + :sorting(3, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_distort"):texture("pfx\\pfx_dist_glass3") +end + +function normal_hq(shader, t_base, t_second, t_detail) + shader:begin("model_env_hq", "model_env_hq") + :fog(true) + :zb(true, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :sorting(3, true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_env"):texture("sky\\sky_5_cube"):clamp() + shader:sampler("s_lmap"):texture("$user$projector") + :clamp() + :f_linear() + :project(true) +end + +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_env_lq", "model_env_lq") + :fog(true) + :zb(true, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :sorting(3, true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_env"):texture("sky\\sky_5_cube"):clamp() +end diff --git a/gamedata/shaders/r1/models_xlens.lua b/gamedata/shaders/r1/models_xlens.lua new file mode 100644 index 0000000..25811b1 --- /dev/null +++ b/gamedata/shaders/r1/models_xlens.lua @@ -0,0 +1,44 @@ +function l_spot(shader, t_base, t_second, t_detail) + r1_lspot(shader, t_base, "model_def_spot") +end + +function l_point(shader, t_base, t_second, t_detail) + r1_lpoint(shader, t_base, "model_def_point") +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort4glass", "particle_distort") + :sorting(3, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture("pfx\\pfx_dist_lens_base") --(t_base) + shader:sampler("s_distort"):texture("pfx\\pfx_dist_lens") +end + +function normal_hq(shader, t_base, t_second, t_detail) + shader:begin("model_env_hq", "model_env_hq") + :fog(true) + :zb(true, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :sorting(3, true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_env"):texture("sky\\sky_5_cube"):clamp() + shader:sampler("s_lmap"):texture("$user$projector") + :clamp() + :f_linear() + :project(true) +end + +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_env_lq", "model_env_lq") + :fog(true) + :zb(true, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :sorting(3, true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_env"):texture("sky\\sky_5_cube"):clamp() +end diff --git a/gamedata/shaders/r1/models_xmonolith.lua b/gamedata/shaders/r1/models_xmonolith.lua new file mode 100644 index 0000000..ff3fdc2 --- /dev/null +++ b/gamedata/shaders/r1/models_xmonolith.lua @@ -0,0 +1,44 @@ +function l_spot(shader, t_base, t_second, t_detail) + r1_lspot(shader, t_base, "model_def_spot") +end + +function l_point(shader, t_base, t_second, t_detail) + r1_lpoint(shader, t_base, "model_def_point") +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort4glass", "particle_distort") + :sorting(3, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_distort"):texture("pfx\\pfx_dist_glass4") +end + +function normal_hq(shader, t_base, t_second, t_detail) + shader:begin("model_env_hq", "model_env_hq") + :fog(true) + :zb(true, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :sorting(3, true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_env"):texture("sky\\sky_5_cube"):clamp() + shader:sampler("s_lmap"):texture("$user$projector") + :clamp() + :f_linear() + :project(true) +end + +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_env_lq", "model_env_lq") + :fog(true) + :zb(true, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :sorting(3, true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_env"):texture("sky\\sky_5_cube"):clamp() +end diff --git a/gamedata/shaders/r1/models_xwindows.lua b/gamedata/shaders/r1/models_xwindows.lua new file mode 100644 index 0000000..b708141 --- /dev/null +++ b/gamedata/shaders/r1/models_xwindows.lua @@ -0,0 +1,44 @@ +function l_spot(shader, t_base, t_second, t_detail) + r1_lspot(shader, t_base, "model_def_spot") +end + +function l_point(shader, t_base, t_second, t_detail) + r1_lpoint(shader, t_base, "model_def_point") +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort4glass", "particle_distort") + :sorting(3, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true):distort(false) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_distort"):texture("pfx\\pfx_dist_glass") +end + +function normal_hq(shader, t_base, t_second, t_detail) + shader:begin("model_env_hq", "model_env_hq") + :fog(true) + :zb(true, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :sorting(3, true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_env"):texture("sky\\sky_5_cube"):clamp() + shader:sampler("s_lmap"):texture("$user$projector") + :clamp() + :f_linear() + :project(true) +end + +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_env_lq", "model_env_lq") + :fog(true) + :zb(true, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :sorting(3, true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_env"):texture("sky\\sky_5_cube"):clamp() +end diff --git a/gamedata/shaders/r1/models_zoom.lua b/gamedata/shaders/r1/models_zoom.lua new file mode 100644 index 0000000..edecaa3 --- /dev/null +++ b/gamedata/shaders/r1/models_zoom.lua @@ -0,0 +1,12 @@ +function normal (shader, t_base, t_second, t_detail) + + shader:begin ("model_env_lq","model_scope_lense") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_vp2") :texture ("$user$scope") +end diff --git a/gamedata/shaders/r1/models_zoom_gauss.lua b/gamedata/shaders/r1/models_zoom_gauss.lua new file mode 100644 index 0000000..1825085 --- /dev/null +++ b/gamedata/shaders/r1/models_zoom_gauss.lua @@ -0,0 +1,13 @@ +function normal (shader, t_base, t_second, t_detail) + + shader:begin ("model_env_lq","model_scope_gauss") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_vp2") :texture ("$user$scopeui") + shader:sampler ("s_noise") :texture ("ui\\ui_mono_noise") +end diff --git a/gamedata/shaders/r1/models_zoom_lerp.lua b/gamedata/shaders/r1/models_zoom_lerp.lua new file mode 100644 index 0000000..0389448 --- /dev/null +++ b/gamedata/shaders/r1/models_zoom_lerp.lua @@ -0,0 +1,13 @@ +function normal (shader, t_base, t_second, t_detail) + + shader:begin ("model_env_lq","model_scope_lense_lerp") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_base2") :texture (t_base) + shader:sampler ("s_vp2") :texture ("$user$scope") +end diff --git a/gamedata/shaders/r1/models_zoomnight.lua b/gamedata/shaders/r1/models_zoomnight.lua new file mode 100644 index 0000000..625e27f --- /dev/null +++ b/gamedata/shaders/r1/models_zoomnight.lua @@ -0,0 +1,13 @@ +function normal (shader, t_base, t_second, t_detail) + + shader:begin ("model_env_lq","model_scope_lense_night") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_vp2") :texture ("$user$scope") + shader:sampler ("s_noise") :texture ("ui\\ui_mono_noise") +end diff --git a/gamedata/shaders/r1/parallax_mark.ps.hlsl b/gamedata/shaders/r1/parallax_mark.ps.hlsl new file mode 100644 index 0000000..7053eeb --- /dev/null +++ b/gamedata/shaders/r1/parallax_mark.ps.hlsl @@ -0,0 +1,100 @@ +/* + ===================================================================== + Addon : Parallax Reflex Sights + Link : https://www.moddb.com/mods/stalker-anomaly/addons/parallax-reflex-sights + Authors : LVutner, party_50 + Date : 06.02.2024 + Last Edit : 06.02.2024 + Info : Ported back to shitX9 by LVutner + ===================================================================== +*/ + +#include "common.hlsli" + +// Important: +// In perfect world OFFSET constants should be 0, but most of reflex sight lenses +// are not actually parallel to screen, so we compensate it. For PROJECT_DISTANCE=100 +// offset values should be at least 0.005 even for perfect models and position configs due +// to normal vectors resolution. +// +// If you want the most realistic look, set PROJECT_DISTANCE to some high value (like 100.0), +// increase SIZE_FACTOR to something like 20.0, set OFFSET_X and OFFSET_Y to 0.005. +// Then you will have to adjust models so that mark texture point is exactly in center +// and edit aim position in configs. + +#define OFFSET_X 0.004 // (default 0.004) Normal vector x coordinate max absolute value which is considered 0 +#define OFFSET_Y 0.05 // (default 0.05) Normal vector y coordinate max absolute value which is considered 0 +#define PROJECT_DISTANCE 20.0 // (default 20.0) Distance to projected mark +#define SIZE_FACTOR 4.0 // (default 4.0) Mark size factor + +// Vertex to Pixel struct +struct vf +{ + float2 tc0 : TEXCOORD0; + float3 v_pos : TEXCOORD1; + float3 v_nrm : TEXCOORD2; +}; + +// This gives us cotangent basis that can be used instead of TBN. +// It is useful when tangents of your mesh are broken, or not available. +// Source: http://www.thetenthplanet.de/archives/1180 +float3x3 cotangent_frame(float3 N, float3 P, float2 uv) +{ + // Get edge vectors of the pixel triangle + float3 dp1 = ddx(P); + float3 dp2 = ddy(P); + float2 duv1 = ddx(uv); + float2 duv2 = ddy(uv); + + // Solve the linear system + float3 dp2perp = cross(dp2, N); + float3 dp1perp = cross(N, dp1); + float3 T = dp2perp * duv1.x + dp1perp * duv2.x; + float3 B = dp2perp * duv1.y + dp1perp * duv2.y; + + // Construct a scale-invariant frame + float invmax = rsqrt(max(dot(T, T), dot(B, B))); + return float3x3(T * invmax, B * invmax, N); +} + +// If N.xy vector is close to zero, make it zero +float3 offset_normal(float3 N) +{ + if (N.x > 0) + N.x = max(N.x, OFFSET_X) - OFFSET_X; + else + N.x = min(N.x, -OFFSET_X) + OFFSET_X; + + if (N.y > 0) + N.y = max(N.y, OFFSET_Y) - OFFSET_Y; + else + N.y = min(N.y, -OFFSET_Y) + OFFSET_Y; + + return N; +} + +float4 main(vf I) : COLOR +{ + // Derive view direction from view space position + float3 V = -I.v_pos; + + // Build cotangent frame + // Important: In theory, you don't need to do this. It should be possible to pass TBN straight from VS + float3x3 TBN = cotangent_frame(offset_normal(I.v_nrm), I.v_pos, I.tc0.xy); + + // Transform view direction to tangent space, and normalize (Just in case) + float3 V_tangent = normalize(float3(dot(V, TBN[0]), dot(V, TBN[1]), dot(V, TBN[2]))); + + // Calculate texture coordinates used to fetch the mark texture + // Important: PROJECT_DISTANCE can be positive or negative, 0 = no projection at all + float2 parallax_tc = I.tc0 - V_tangent.xy * PROJECT_DISTANCE; + + // Upscaling the texture + parallax_tc.x = (parallax_tc.x + (SIZE_FACTOR - 1) / 2) / SIZE_FACTOR; + parallax_tc.y = (parallax_tc.y + (SIZE_FACTOR - 1) / 2) / SIZE_FACTOR; + + // Fetch the mark texture + // Important: We do not want texture to repeat itself, so we use sampler with CLAMP address + // Important2: We do not want to sample mip levels of the mark texture, let's keep this thing sharp as fuck + return tex2Dlod(s_base, float4(parallax_tc, 0.0, 0.0)); +} diff --git a/gamedata/shaders/r1/parallax_mark.vs.hlsl b/gamedata/shaders/r1/parallax_mark.vs.hlsl new file mode 100644 index 0000000..f4ff80d --- /dev/null +++ b/gamedata/shaders/r1/parallax_mark.vs.hlsl @@ -0,0 +1,49 @@ +#include "common.hlsli" +#include "skin.hlsli" + +// Vertex to Pixel struct +struct vf +{ + float2 tc0 : TEXCOORD0; + float3 v_pos : TEXCOORD1; + float3 v_nrm : TEXCOORD2; + float4 hpos : POSITION; +}; + +vf _main (v_model v) +{ + vf o; + + o.hpos = mul(m_WVP, v.pos); // Homogenous position + o.tc0 = v.tc.xy; //Texture coordinates + + o.v_pos = mul(m_WV, v.pos).xyz; // Position in view space + o.v_nrm = mul(m_WV, v.norm).xyz; // Normal in view space + + return o; +} + +//Skinning +#ifdef SKIN_NONE +vf main(v_model v) { return _main(v); } +#endif + +#ifdef SKIN_0 +vf main(v_model_skinned_0 v) { return _main(skinning_0(v)); } +#endif + +#ifdef SKIN_1 +vf main(v_model_skinned_1 v) { return _main(skinning_1(v)); } +#endif + +#ifdef SKIN_2 +vf main(v_model_skinned_2 v) { return _main(skinning_2(v)); } +#endif + +#ifdef SKIN_3 +vf main(v_model_skinned_3 v) { return _main(skinning_3(v)); } +#endif + +#ifdef SKIN_4 +vf main(v_model_skinned_4 v) { return _main(skinning_4(v)); } +#endif diff --git a/gamedata/shaders/r1/particle.ps.hlsl b/gamedata/shaders/r1/particle.ps.hlsl new file mode 100644 index 0000000..f90bbb1 --- /dev/null +++ b/gamedata/shaders/r1/particle.ps.hlsl @@ -0,0 +1,16 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float4 c : COLOR0; // diffuse +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 result = I.c * tex2D(s_base, I.tc0); + clip(result.a - (0.01f / 255.0f)); + + return result; +} diff --git a/gamedata/shaders/r1/particle.vs.hlsl b/gamedata/shaders/r1/particle.vs.hlsl new file mode 100644 index 0000000..c639049 --- /dev/null +++ b/gamedata/shaders/r1/particle.vs.hlsl @@ -0,0 +1,28 @@ +#include "common.hlsli" + +struct vv +{ + float4 P : POSITION; + float2 tc : TEXCOORD0; + float4 c : COLOR0; +}; + +struct vf +{ + float4 hpos : POSITION; + float2 tc : TEXCOORD0; + float4 c : COLOR0; + float fog : FOG; +}; + +vf main(vv v) +{ + vf o; + + o.hpos = mul(m_WVP, v.P); // xform, input in world coords + o.tc = v.tc; // copy tc + o.c = v.c; // copy color + o.fog = calc_fogging(v.P); // fog, input in world coords + o.c.w *= o.fog; + return o; +} diff --git a/gamedata/shaders/r1/particle2t.ps.hlsl b/gamedata/shaders/r1/particle2t.ps.hlsl new file mode 100644 index 0000000..1e9325e --- /dev/null +++ b/gamedata/shaders/r1/particle2t.ps.hlsl @@ -0,0 +1,19 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float2 tc1 : TEXCOORD1; // another + float4 c : COLOR0; // diffuse +}; + +// Pixel +uniform sampler2D s_another; + +float4 main(v2p I) : COLOR +{ + float3 base = I.c * tex2D(s_base, I.tc0); + float4 grad = tex2D(s_another, I.tc1); + float3 mult = base * grad * 2.0f; + return float4(lerp(base, mult, grad.w), 1.0f); +} diff --git a/gamedata/shaders/r1/particle_add.vs.hlsl b/gamedata/shaders/r1/particle_add.vs.hlsl new file mode 100644 index 0000000..c109047 --- /dev/null +++ b/gamedata/shaders/r1/particle_add.vs.hlsl @@ -0,0 +1,28 @@ +#include "common.hlsli" + +struct vv +{ + float4 P : POSITION; + float2 tc : TEXCOORD0; + float4 c : COLOR0; +}; + +struct vf +{ + float4 hpos : POSITION; + float2 tc : TEXCOORD0; + float4 c : COLOR0; + float fog : FOG; +}; + +vf main(vv v) +{ + vf o; + + o.hpos = mul(m_WVP, v.P); // xform, input in world coords + o.tc = v.tc; // copy tc + o.c = v.c; // copy color + o.fog = calc_fogging(v.P); // fog, input in world coords + o.c *= o.fog; + return o; +} diff --git a/gamedata/shaders/r1/particle_alphaonly.ps.hlsl b/gamedata/shaders/r1/particle_alphaonly.ps.hlsl new file mode 100644 index 0000000..15d369f --- /dev/null +++ b/gamedata/shaders/r1/particle_alphaonly.ps.hlsl @@ -0,0 +1,13 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float4 c : COLOR0; // diffuse +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + return I.c.a * tex2D(s_base, I.tc0).a; +} diff --git a/gamedata/shaders/r1/particle_distort.ps.hlsl b/gamedata/shaders/r1/particle_distort.ps.hlsl new file mode 100644 index 0000000..82cfc7d --- /dev/null +++ b/gamedata/shaders/r1/particle_distort.ps.hlsl @@ -0,0 +1,17 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float4 c : COLOR0; // diffuse +}; + +// Pixel +uniform sampler s_distort; + +float4 main(v2p I) : COLOR +{ + float4 distort = tex2D(s_distort, I.tc0); + float factor = distort.a * dot(I.c.rgb, 0.33f); + return float4(distort.rgb, factor); +} diff --git a/gamedata/shaders/r1/particles_add.lua b/gamedata/shaders/r1/particles_add.lua new file mode 100644 index 0000000..0844a20 --- /dev/null +++ b/gamedata/shaders/r1/particles_add.lua @@ -0,0 +1,9 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("particle_add", "particle") + :sorting(3, false) + :blend(true, blend.one, blend.one) + :aref(false, 0) + :zb(true, false) + :fog(false) + shader:sampler("s_base"):texture(t_base) +end diff --git a/gamedata/shaders/r1/particles_xadd.lua b/gamedata/shaders/r1/particles_xadd.lua new file mode 100644 index 0000000..bab7110 --- /dev/null +++ b/gamedata/shaders/r1/particles_xadd.lua @@ -0,0 +1,21 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("particle_add", "particle") + :sorting(3, false) + :blend(true, blend.one, blend.one) + :aref(false, 0) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("particle", "particle_distort") + :sorting(3, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_distort"):texture(t_second) -- "pfx\\pfx_distortion" +end diff --git a/gamedata/shaders/r1/particles_xdistort.lua b/gamedata/shaders/r1/particles_xdistort.lua new file mode 100644 index 0000000..3e58ce1 --- /dev/null +++ b/gamedata/shaders/r1/particles_xdistort.lua @@ -0,0 +1,10 @@ +function l_special(shader, t_base, t_second, t_detail) + shader:begin("particle", "particle_distort") + :sorting(3, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_distort"):texture(t_base) -- "pfx\\pfx_distortion" +end diff --git a/gamedata/shaders/r1/pnv.hlsli b/gamedata/shaders/r1/pnv.hlsli new file mode 100644 index 0000000..a86c1b9 --- /dev/null +++ b/gamedata/shaders/r1/pnv.hlsli @@ -0,0 +1,53 @@ +////////////////////////////////////////////////////////////////////////////////////////// +//NV Shader by LVutner (basing on yaz NV) +//Last edit: 5:12 (22.05.19) +//Edit for 'GUNSLINGER Mod' by Romann[MNP_TEAM] (04.01.2020) +////////////////////////////////////////////////////////////////////////////////////////// + +//defines +#define NV_BRIGHTNESS 10.0 + +//effects +#define NV_FLICKERING +#define NV_NOISE +//#define NV_VIGNETTE +#define NV_SCANLINES + +//effect settings +#define FLICKERING_INTENSITY 0.003 // +#define FLICKERING_FREQ 60.0 // +#define NOISE_INTENSITY 0.13 // +#define SCANLINES_INTENSITY 0.015 // +#define VIGNETTE_RADIUS 1.0 // + +float4 calc_night_vision_effect(float2 tc0, float4 color, float3 NV_COLOR) +{ + float lum = dot(color.rgb, float3( 0.3f, 0.38f, 0.22f)*NV_BRIGHTNESS ); //instead of float3 use LUMINANCE_floatTOR in stalker + color.rgb = m_zoom_deviation.z*NV_COLOR*lum; + + //cheap noise function + float noise = frac(sin(dot(tc0, float2(12.0, 78.0) + (timers.x*1.17f) )) * 43758.0); + + ////////////////////////////////////////////////////////////////////////////////////////// + // scanlines + #ifdef NV_SCANLINES + color += SCANLINES_INTENSITY*sin(tc0.y*screen_res.y*2.0); + #endif + ////////////////////////////////////////////////////////////////////////////////////////// + // noise + #ifdef NV_NOISE + color += noise * NOISE_INTENSITY; + #endif + ////////////////////////////////////////////////////////////////////////////////////////// + // screen flickering + #ifdef NV_FLICKERING + color += FLICKERING_INTENSITY * sin(timers.x*FLICKERING_FREQ); + #endif + ////////////////////////////////////////////////////////////////////////////////////////// + // vignette + #ifdef NV_VIGNETTE + color *= VIGNETTE_RADIUS-(distance(tc0.xy,float2( 0.5f, 0.5f))); + #endif + + return color; +} diff --git a/gamedata/shaders/r1/portal.lua b/gamedata/shaders/r1/portal.lua new file mode 100644 index 0000000..56e08e5 --- /dev/null +++ b/gamedata/shaders/r1/portal.lua @@ -0,0 +1,7 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("portal", "portal") + :fog(true) + :zb(true, false) + :sorting(3, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) +end diff --git a/gamedata/shaders/r1/portal.ps.hlsl b/gamedata/shaders/r1/portal.ps.hlsl new file mode 100644 index 0000000..155bcae --- /dev/null +++ b/gamedata/shaders/r1/portal.ps.hlsl @@ -0,0 +1,8 @@ +#include "common.hlsli" + +float4 main(float4 color : COLOR0, float fog : FOG) : COLOR +{ + float4 final = color; + final.xyz = lerp(fog_color.xyz, final.xyz, fog); + return final; +} diff --git a/gamedata/shaders/r1/portal.vs.hlsl b/gamedata/shaders/r1/portal.vs.hlsl new file mode 100644 index 0000000..ef9c510 --- /dev/null +++ b/gamedata/shaders/r1/portal.vs.hlsl @@ -0,0 +1,19 @@ +#include "common.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float4 c : COLOR0; + float fog : FOG; +}; + +vf main(v_vert v) +{ + vf o; + + o.hpos = mul(m_VP, v.P); // xform, input in world coords + o.c = v.color; + o.fog = calc_fogging(v.P); // fog, input in world coords + + return o; +} diff --git a/gamedata/shaders/r1/postprocess.lua b/gamedata/shaders/r1/postprocess.lua new file mode 100644 index 0000000..6e5c3e3 --- /dev/null +++ b/gamedata/shaders/r1/postprocess.lua @@ -0,0 +1,9 @@ +-- normal pp +function normal(shader, t_base, t_second, t_detail) + shader:begin("null", "postprocess") + :fog(false) + :zb(false, false) + shader:sampler("s_base0"):texture(t_rt):clamp():f_linear() + shader:sampler("s_base1"):texture(t_rt):clamp():f_linear() + shader:sampler("s_noise"):texture(t_noise):f_linear() +end diff --git a/gamedata/shaders/r1/postprocess.ps.hlsl b/gamedata/shaders/r1/postprocess.ps.hlsl new file mode 100644 index 0000000..b33af79 --- /dev/null +++ b/gamedata/shaders/r1/postprocess.ps.hlsl @@ -0,0 +1,35 @@ +#include "common.hlsli" + +struct v2p +{ + float4 color : COLOR0; // multiplier, color.w = noise_amount + float4 gray : COLOR1; // (.3,.3,.3.,amount) + float2 tc0 : TEXCOORD0; // base1 (duality) + float2 tc1 : TEXCOORD1; // base2 (duality) + float2 tc2 : TEXCOORD2; // base (noise) +}; + +uniform sampler2D s_base0; +uniform sampler2D s_base1; +uniform sampler2D s_noise; +uniform float4 c_brightness; + +// Pixel +float4 main(v2p I) : COLOR +{ + float3 t_0 = tex2D(s_base0, I.tc0); + float3 t_1 = tex2D(s_base1, I.tc1); + float3 image = (t_0 + t_1) * 0.5f; // add_d2 + float gray = dot(image, I.gray); // dp3 + image = lerp(gray, image, I.gray.w); // mul/mad + + float4 t_noise = tex2D(s_noise, I.tc2); + float3 noised = image * t_noise * 2.0f; // mul_2x + image = lerp(noised, image, I.color.w); // lrp ? + image = (image * I.color + c_brightness) * 2.0f; // mad + // image = (image + c_brightness) * I.color; // mad ? + + // out + // return float4 (image.r,0,0,1); // +mov + return float4(image, 1.0f); // +mov +} diff --git a/gamedata/shaders/r1/postprocess_cm.lua b/gamedata/shaders/r1/postprocess_cm.lua new file mode 100644 index 0000000..750d92c --- /dev/null +++ b/gamedata/shaders/r1/postprocess_cm.lua @@ -0,0 +1,25 @@ +-- normal color mapped pp +function normal(shader, t_base, t_second, t_detail) + shader:begin("null", "postprocess") + :fog(false) + :zb(false, false) + -- shader:sampler ("s_base0") :texture(t_rt) : clamp() : f_linear () + -- shader:sampler ("s_base1") :texture(t_rt) : clamp() : f_linear () + shader:sampler("s_base0"):texture("$user$rendertarget_color_map"):clamp():f_linear() + shader:sampler("s_base1"):texture("$user$rendertarget_color_map"):clamp():f_linear() + shader:sampler("s_noise"):texture(t_noise):f_linear() +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("null", "postprocess_cm_pre") + :fog(false) + :zb(false, false) + shader:sampler("s_distort"):texture(t_distort):clamp():f_linear() + shader:sampler("s_base0"):texture(t_rt):clamp():f_linear() + shader:sampler("s_base1"):texture(t_rt):clamp():f_linear() + shader:sampler("s_noise"):texture(t_noise):f_linear() + -- shader:sampler ("s_grad0") :texture("grad\\grad_red_yellow") : clamp() : f_linear () + -- shader:sampler ("s_grad1") :texture("grad\\grad_test1") : clamp() : f_linear () + shader:sampler("s_grad0"):texture("$user$cmap0"):clamp():f_linear() + shader:sampler("s_grad1"):texture("$user$cmap1"):clamp():f_linear() +end diff --git a/gamedata/shaders/r1/postprocess_cm_pre.ps.hlsl b/gamedata/shaders/r1/postprocess_cm_pre.ps.hlsl new file mode 100644 index 0000000..1e9f5fa --- /dev/null +++ b/gamedata/shaders/r1/postprocess_cm_pre.ps.hlsl @@ -0,0 +1,31 @@ +#include "common.hlsli" + +struct v2p +{ + float4 color : COLOR0; // multiplier, color.w = noise_amount + float4 gray : COLOR1; // (.3,.3,.3.,amount) + float2 tc0 : TEXCOORD0; // base1 (duality) + float2 tc1 : TEXCOORD1; // base2 (duality) + float2 tc2 : TEXCOORD2; // base (noise) +}; + +uniform sampler2D s_base0; +uniform sampler2D s_base1; +uniform sampler2D s_distort; +uniform sampler2D s_grad0; +uniform sampler2D s_grad1; +uniform float4 c_colormap; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 pre_pass = tex2D(s_base0, I.tc0); + float grad_i = dot(pre_pass.rgb, (0.3333f).xxx); + + float3 image0 = tex2D(s_grad0, float2(grad_i, 0.5f)); + float3 image1 = tex2D(s_grad1, float2(grad_i, 0.5f)); + float3 image = lerp(image0, image1, c_colormap.y); + image = lerp(pre_pass.rgb, image, c_colormap.x); + + return float4(image, 1.0f); // +mov +} diff --git a/gamedata/shaders/r1/postprocess_d.lua b/gamedata/shaders/r1/postprocess_d.lua new file mode 100644 index 0000000..204b75f --- /dev/null +++ b/gamedata/shaders/r1/postprocess_d.lua @@ -0,0 +1,10 @@ +-- distort +function normal(shader, t_base, t_second, t_detail) + shader:begin("null", "postprocess_d") + :fog(false) + :zb(false, false) + shader:sampler("s_distort"):texture(t_distort):clamp():f_linear() + shader:sampler("s_base0"):texture(t_rt):clamp():f_linear() + shader:sampler("s_base1"):texture(t_rt):clamp():f_linear() + shader:sampler("s_noise"):texture(t_noise):f_linear() +end diff --git a/gamedata/shaders/r1/postprocess_d.ps.hlsl b/gamedata/shaders/r1/postprocess_d.ps.hlsl new file mode 100644 index 0000000..51f8dc5 --- /dev/null +++ b/gamedata/shaders/r1/postprocess_d.ps.hlsl @@ -0,0 +1,39 @@ +#include "common.hlsli" + +struct v2p +{ + float4 color : COLOR0; // multiplier, color.w = noise_amount + float4 gray : COLOR1; // (.3,.3,.3.,amount) + float2 tc0 : TEXCOORD0; // base1 (duality) + float2 tc1 : TEXCOORD1; // base2 (duality) + float2 tc2 : TEXCOORD2; // base (noise) +}; + +uniform sampler2D s_base0; +uniform sampler2D s_base1; +uniform sampler2D s_noise; +uniform sampler2D s_distort; +uniform sampler2D s_intensity; +uniform sampler2D s_grad0; +uniform float4 c_brightness; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 distort = tex2D(s_distort, I.tc0); + float2 offset = (distort.xy - (127.0f / 255.0f)) * def_distort; + float3 t_0 = tex2D(s_base0, I.tc0 + offset); + float3 t_1 = tex2D(s_base1, I.tc1 + offset); + float3 image = (t_0 + t_1) * 0.5f; // add_d2 + + float gray = dot(image, I.gray); // dp3 + image = lerp(gray, image, I.gray.w); // mul/mad + + float4 t_noise = tex2D(s_noise, I.tc2); + float3 noised = image * t_noise * 2.0f; // mul_2x + image = lerp(noised, image, I.color.w); // lrp ? + image = (image * I.color + c_brightness) * 2.0f; // mad + // image = (image + c_brightness) * I.color; // mad ? + + return float4(image, 1.0f); // +mov +} diff --git a/gamedata/shaders/r1/postprocess_dcm.lua b/gamedata/shaders/r1/postprocess_dcm.lua new file mode 100644 index 0000000..dfc2841 --- /dev/null +++ b/gamedata/shaders/r1/postprocess_dcm.lua @@ -0,0 +1,26 @@ +-- distort colormapped +function normal(shader, t_base, t_second, t_detail) + shader:begin("null", "postprocess_d") + :fog(false) + :zb(false, false) + shader:sampler("s_distort"):texture(t_distort):clamp():f_linear() + -- shader:sampler ("s_base0") :texture(t_rt) : clamp() : f_linear () + -- shader:sampler ("s_base1") :texture(t_rt) : clamp() : f_linear () + shader:sampler("s_base0"):texture("$user$rendertarget_color_map"):clamp():f_linear() + shader:sampler("s_base1"):texture("$user$rendertarget_color_map"):clamp():f_linear() + shader:sampler("s_noise"):texture(t_noise):f_linear() +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("null", "postprocess_cm_pre") + :fog(false) + :zb(false, false) + shader:sampler("s_distort"):texture(t_distort):clamp():f_linear() + shader:sampler("s_base0"):texture(t_rt):clamp():f_linear() + shader:sampler("s_base1"):texture(t_rt):clamp():f_linear() + shader:sampler("s_noise"):texture(t_noise):f_linear() + -- shader:sampler ("s_grad0") :texture("grad\\grad_red_yellow") : clamp() : f_linear () + -- shader:sampler ("s_grad1") :texture("grad\\grad_test1") : clamp() : f_linear () + shader:sampler("s_grad0"):texture("$user$cmap0"):clamp():f_linear() + shader:sampler("s_grad1"):texture("$user$cmap1"):clamp():f_linear() +end diff --git a/gamedata/shaders/r1/selflight.lua b/gamedata/shaders/r1/selflight.lua new file mode 100644 index 0000000..623b44c --- /dev/null +++ b/gamedata/shaders/r1/selflight.lua @@ -0,0 +1,19 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("simple", "simple") + :fog(true) + shader:sampler("s_base"):texture(t_base) +end + +function l_spot(shader, t_base, t_second, t_detail) + r1_lspot(shader, t_base, "simple_spot") +end + +function l_point(shader, t_base, t_second, t_detail) + r1_lpoint(shader, t_base, "simple_point") +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("simple", "simple") + :fog(false) + shader:sampler("s_base"):texture(t_base) +end diff --git a/gamedata/shaders/r1/shared/cloudconfig.hlsli b/gamedata/shaders/r1/shared/cloudconfig.hlsli new file mode 100644 index 0000000..7f2e393 --- /dev/null +++ b/gamedata/shaders/r1/shared/cloudconfig.hlsli @@ -0,0 +1,11 @@ +#ifndef _CLOUDCONFIG_H +#define _CLOUDCONFIG_H + +// note: timers has resolution (sec), where x=1, y=10, z=1/10, +#define CLOUD_TILE0 (0.7f) +#define CLOUD_SPEED0 (2 * 0.05) //(0.033f) +#define CLOUD_TILE1 (2.8) //(2.5f) +#define CLOUD_SPEED1 (2 * 0.025) //(0.033f) +#define CLOUD_FADE (0.5) + +#endif diff --git a/gamedata/shaders/r1/shared/common.hlsli b/gamedata/shaders/r1/shared/common.hlsli new file mode 100644 index 0000000..f8ee027 --- /dev/null +++ b/gamedata/shaders/r1/shared/common.hlsli @@ -0,0 +1,69 @@ +#ifndef SHARED_COMMON_H +#define SHARED_COMMON_H + +uniform float3x4 m_W; +uniform float3x4 m_V; +uniform float4x4 m_P; +uniform float3x4 m_WV; +uniform float4x4 m_VP; +uniform float4x4 m_WVP; +uniform float4 timers; +uniform float4 fog_plane; +uniform float4 fog_params; // x=near*(1/(far-near)), ?,?, w = -1/(far-near) +uniform float4 fog_color; +uniform float3 L_sun_color; +uniform float3 L_sun_dir_w; +uniform float3 L_sun_dir_e; +uniform float4 L_hemi_color; +uniform float4 L_ambient; // L_ambient.w = skynbox-lerp-factor +uniform float3 eye_position; +uniform float3 eye_direction; +uniform float3 eye_normal; +uniform float4 dt_params; + +//GUNSLINGER**************************// +uniform float4 m_hud_params; +//uniform float4 screen_res; +uniform float4 m_zoom_deviation; +uniform float4 m_actor_params; +uniform float4 m_affects; +uniform float4 m_timearrow; +uniform float4 m_timearrow2; +uniform float4 m_digiclock; +//************************************// + +float3 unpack_normal(float3 v) +{ + return 2.0f * v - 1.0f; +} +float3 unpack_bx2(float3 v) +{ + return 2.0f * v - 1.0f; +} +float3 unpack_bx4(float3 v) +{ + return 4.0f * v - 2.0f; +} + +float2 unpack_tc_base(float2 tc, float du, float dv) +{ + return (tc.xy + float2(du, dv)) * (32.f / 32768.f); +} + +float2 unpack_tc_lmap(float2 tc) +{ + return tc * (1.f / 32768.f); +} // [-1 .. +1 ] + +float calc_cyclic(float x) +{ + float f = 1.4142f * sin(x * 3.14159f); + return f * f - 1.0f; +} + +float2 calc_xz_wave(float2 dir2D, float frac) +{ + return dir2D * frac; +} + +#endif diff --git a/gamedata/shaders/r1/shared/waterconfig.hlsli b/gamedata/shaders/r1/shared/waterconfig.hlsli new file mode 100644 index 0000000..574ff65 --- /dev/null +++ b/gamedata/shaders/r1/shared/waterconfig.hlsli @@ -0,0 +1,55 @@ +#ifndef _WATERCONFIG_H + #define _WATERCONFIG_H + +// настройки для: (1) +// waterdistortion +// waterdistortion2 + + #define W_POSITION_SHIFT_HEIGHT (1.f / 60.f) //(1.f/100.f) //amplitude /50 - small, /10 - large + #define W_POSITION_SHIFT_SPEED (25.f) //(25.0f) + #define W_DISTORT_BASE_TILE_0 (1.0f) //(1.0f) + #define W_DISTORT_BASE_TILE_1 (1.1f) //(1.1f) + #define W_DISTORT_AMP_0 (+0.15f) //(+0.15f) + #define W_DISTORT_AMP_1 (+0.55f) //(-0.30f) + #define W_DISTORT_POWER (1.0f) //(1.0f) + +#endif + +/* +//////////////////////////////////////////////////////////////////////////////// +-- waters clear +//////////////////////////////////////////////////////////////////////////////// +настройки для: + waterdistortion + waterdistortion2 +//////////////////////////////////////////////////////////////////////////////// +#define W_POSITION_SHIFT_HEIGHT (1.f/50.f) //(1.f/100.f) //amplitude /50 - small, /10 - large +#define W_POSITION_SHIFT_SPEED (15.f) //(25.0f) +#define W_DISTORT_BASE_TILE_0 (1.3f) //(1.6f) +#define W_DISTORT_BASE_TILE_1 (2.3f) //(1.1f) +#define W_DISTORT_AMP_0 (+0.35f) //(+0.15f) +#define W_DISTORT_AMP_1 (-1.75f) //(-0.30f) +#define W_DISTORT_POWER (1.0f) //(1.0f) +//////////////////////////////////////////////////////////////////////////////// +настройки для: + waterdistortion + waterdistortion +//////////////////////////////////////////////////////////////////////////////// +#define W_POSITION_SHIFT_HEIGHT (1.f/80.f) //(1.f/100.f) //amplitude /50 - small, /10 - large +#define W_POSITION_SHIFT_SPEED (20.f) //(25.0f) +#define W_DISTORT_BASE_TILE_0 (1.6f) //(1.6f) +#define W_DISTORT_BASE_TILE_1 (1.1f) //(1.1f) +#define W_DISTORT_AMP_0 (+0.15f) //(+0.15f) +#define W_DISTORT_AMP_1 (-0.30f) //(-0.30f) +#define W_DISTORT_POWER (6.0f) //(6.0f) +//////////////////////////////////////////////////////////////////////////////// +-- waters mulyaka +//////////////////////////////////////////////////////////////////////////////// +#define W_POSITION_SHIFT_HEIGHT (1.f/50.f) // amplitude /50 - small, /10 - large +#define W_POSITION_SHIFT_SPEED (25.f) +#define W_DISTORT_BASE_TILE (0.1f) //(1.0f) +#define W_DISTORT_AMP_0 (+0.58f) //(-0.08f) +#define W_DISTORT_AMP_1 (+0.38f) //(+0.18f) +#define W_DISTORT_POWER (3.0f) //(2.0f) +//////////////////////////////////////////////////////////////////////////////// +*/ diff --git a/gamedata/shaders/r1/shared/watermove.hlsli b/gamedata/shaders/r1/shared/watermove.hlsli new file mode 100644 index 0000000..dfc5045 --- /dev/null +++ b/gamedata/shaders/r1/shared/watermove.hlsli @@ -0,0 +1,30 @@ +#ifndef _WATERMOVE_H +#define _WATERMOVE_H + +float4 watermove(float4 P) +{ + float3 wave1 = float3(0.11f, 0.13f, 0.07f) * W_POSITION_SHIFT_SPEED; + float dh = sin(timers.x + dot((float3)P, wave1)); + P.y += dh * W_POSITION_SHIFT_HEIGHT; + return P; +} + +float2 watermove_tc(float2 base, float2 P, float amp) +{ + float2 wave1 = float2(0.2111f, 0.2333f) * amp; + float angle = timers.z + dot(P, wave1); + float du = sin(angle); + float dv = cos(angle); + return (base + amp * float2(du, dv)); +} + +float3 waterrefl(out float amount, float3 P, float3 N) +{ + float3 v2point = normalize(P - eye_position); + float3 vreflect = reflect(v2point, N); + float fresnel = (.5f + .5f * dot(vreflect, v2point)); + amount = 1 - fresnel * fresnel; // 0=full env, 1=no env + return vreflect; +} + +#endif diff --git a/gamedata/shaders/r1/shared/wmark.hlsli b/gamedata/shaders/r1/shared/wmark.hlsli new file mode 100644 index 0000000..0ba79ba --- /dev/null +++ b/gamedata/shaders/r1/shared/wmark.hlsli @@ -0,0 +1,23 @@ +#ifndef WMARK_H +#define WMARK_H + +#include "common.hlsli" + +#define NORMAL_SHIFT 0.007f +#define MIN_SHIFT 0.003f +#define MAX_SHIFT 0.011f +#define RANGE 100.f + +float4 wmark_shift(float3 pos, float3 norm) +{ + float3 P = pos; + float3 N = norm; + float3 sd = eye_position - P; + float d = length(sd); + float w = min(d / RANGE, 1.f); + float s = lerp(MIN_SHIFT, MAX_SHIFT, d); + P += N.xyz * NORMAL_SHIFT; + P -= normalize(eye_direction + normalize(P - eye_position)) * s; + return float4(P, 1.f); +} +#endif diff --git a/gamedata/shaders/r1/simple.ps.hlsl b/gamedata/shaders/r1/simple.ps.hlsl new file mode 100644 index 0000000..9da9a94 --- /dev/null +++ b/gamedata/shaders/r1/simple.ps.hlsl @@ -0,0 +1,12 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + return /*(float4(1,1,1,1) - */ tex2D(s_base, I.tc0); +} diff --git a/gamedata/shaders/r1/simple.vs.hlsl b/gamedata/shaders/r1/simple.vs.hlsl new file mode 100644 index 0000000..a755094 --- /dev/null +++ b/gamedata/shaders/r1/simple.vs.hlsl @@ -0,0 +1,19 @@ +#include "common.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; + float fog : FOG; +}; + +vf main(v_vert v) +{ + vf o; + + o.hpos = mul(m_VP, v.P); // xform, input in world coords + o.tc0 = unpack_tc_base(v.uv, v.T.w, v.B.w); // copy tc + o.fog = calc_fogging(v.P); // fog, input in world coords + + return o; +} diff --git a/gamedata/shaders/r1/simple_color.ps.hlsl b/gamedata/shaders/r1/simple_color.ps.hlsl new file mode 100644 index 0000000..86490e4 --- /dev/null +++ b/gamedata/shaders/r1/simple_color.ps.hlsl @@ -0,0 +1,6 @@ +#include "common.hlsli" + +float4 main(float4 C : COLOR0) : COLOR +{ + return C; +} diff --git a/gamedata/shaders/r1/simple_color.vs.hlsl b/gamedata/shaders/r1/simple_color.vs.hlsl new file mode 100644 index 0000000..f2f975e --- /dev/null +++ b/gamedata/shaders/r1/simple_color.vs.hlsl @@ -0,0 +1,19 @@ +#include "common.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float4 C : COLOR0; +}; + +uniform float4 tfactor; + +vf main(float4 P : POSITION) +{ + vf o; + + o.hpos = mul(m_WVP, P); // xform, input in world coords + o.C = tfactor; + + return o; +} diff --git a/gamedata/shaders/r1/simple_point.vs.hlsl b/gamedata/shaders/r1/simple_point.vs.hlsl new file mode 100644 index 0000000..e9c1a32 --- /dev/null +++ b/gamedata/shaders/r1/simple_point.vs.hlsl @@ -0,0 +1,13 @@ +#include "common.hlsli" + +vf_point main(v_lmap v) +{ + vf_point o; + + o.hpos = mul(m_VP, v.P); // xform, input in world coords + o.tc0 = unpack_tc_base(v.uv0, v.T.w, v.B.w); // copy tc + // o.tc0 = unpack_tc_base(v.tc0); // copy tc + o.color = calc_point(o.tc1, o.tc2, v.P, unpack_normal(v.N)); // just hemisphere + + return o; +} diff --git a/gamedata/shaders/r1/simple_spot.vs.hlsl b/gamedata/shaders/r1/simple_spot.vs.hlsl new file mode 100644 index 0000000..2845b98 --- /dev/null +++ b/gamedata/shaders/r1/simple_spot.vs.hlsl @@ -0,0 +1,13 @@ +#include "common.hlsli" + +vf_spot main(v_lmap v) +{ + vf_spot o; + + o.hpos = mul(m_VP, v.P); // xform, input in world coords + o.tc0 = unpack_tc_base(v.uv0, v.T.w, v.B.w); // copy tc + // o.tc0 = unpack_tc_base(v.tc0); // copy tc + o.color = calc_spot(o.tc1, o.tc2, v.P, unpack_normal(v.N)); // just hemisphere + + return o; +} diff --git a/gamedata/shaders/r1/skin.hlsli b/gamedata/shaders/r1/skin.hlsli new file mode 100644 index 0000000..1ad67d9 --- /dev/null +++ b/gamedata/shaders/r1/skin.hlsli @@ -0,0 +1,277 @@ +#ifndef SKIN_H +#define SKIN_H + +#include "common.hlsli" + +struct v_model_skinned_0 +{ + float4 P : POSITION; // (float,float,float,1) - quantized // short4 + float3 N : NORMAL; // normal // DWORD + float3 T : TANGENT; // tangent // DWORD + float3 B : BINORMAL; // binormal // DWORD + float2 tc : TEXCOORD0; // (u,v) // short2 +}; +struct v_model_skinned_1 // 24 bytes +{ + float4 P : POSITION; // (float,float,float,1) - quantized // short4 + int4 N : NORMAL; // (nx,ny,nz,index) // DWORD + float3 T : TANGENT; // tangent // DWORD + float3 B : BINORMAL; // binormal // DWORD + float2 tc : TEXCOORD0; // (u,v) // short2 +}; +struct v_model_skinned_2 // 28 bytes +{ + float4 P : POSITION; // (float,float,float,1) - quantized // short4 + float4 N : NORMAL; // (nx,ny,nz,weight) // DWORD + float3 T : TANGENT; // tangent // DWORD + float3 B : BINORMAL; // binormal // DWORD + float4 tc : TEXCOORD0; // (u,v, w=m-index0, z=m-index1) // short4 +}; + +struct v_model_skinned_3 // 28 bytes +{ + float4 P : POSITION; // (float,float,float,1) - quantized // short4 + float4 N : NORMAL; // (nx,ny,nz,weight0) // DWORD + float4 T : TANGENT; // (tx,ty,tz,weight1) // DWORD + float4 B : BINORMAL; // (bx,by,bz,m-index2) // DWORD + float4 tc : TEXCOORD0; // (u,v, w=m-index0, z=m-index1) // short4 +}; + +struct v_model_skinned_4 // 28 bytes +{ + float4 P : POSITION; // (float,float,float,1) - quantized // short4 + float4 N : NORMAL; // (nx,ny,nz,weight0) // DWORD + float4 T : TANGENT; // (tx,ty,tz,weight1) // DWORD + float4 B : BINORMAL; // (bx,by,bz,weight2) // DWORD + float2 tc : TEXCOORD0; // (u,v) // short2 + float4 ind : TEXCOORD1; // (x=m-index0, y=m-index1, z=m-index2, w=m-index3) // DWORD +}; + +////////////////////////////////////////////////////////////////////////////////////////// + +float4 u_position(float4 v) +{ + return float4(v.xyz, 1.f); +} // -12..+12 + +////////////////////////////////////////////////////////////////////////////////////////// +// uniform float4 sbones_array [256-22] : register(vs,c22); +// Igor: some shaders in r1 need more free constant registers +uniform float4 sbones_array[65 * 3] : register(vs, c22); +float3 skinning_dir(float3 dir, float3 m0, float3 m1, float3 m2) +{ + float3 U = unpack_normal(dir); + return float3( + dot(m0, U), + dot(m1, U), + dot(m2, U)); +} +float4 skinning_pos(float4 pos, float4 m0, float4 m1, float4 m2) +{ + float4 P = u_position(pos); + return float4( + dot(m0, P), + dot(m1, P), + dot(m2, P), + 1); +} + +v_model skinning_0(v_model_skinned_0 v) +{ + // skinning + v_model o; + o.pos = u_position(v.P); + o.norm = unpack_normal(v.N); + o.T = unpack_normal(v.T); + o.B = unpack_normal(v.B); + o.tc = v.tc; // -16..+16 +#ifdef SKIN_COLOR + o.rgb_tint = float3(0, 0, 2); +#endif + return o; +} +v_model skinning_1(v_model_skinned_1 v) +{ + // matrices + int mid = v.N.w * (int)255; + float4 m0 = sbones_array[mid + 0]; + float4 m1 = sbones_array[mid + 1]; + float4 m2 = sbones_array[mid + 2]; + + // skinning + v_model o; + o.pos = skinning_pos(v.P, m0, m1, m2); + o.norm = skinning_dir(v.N, m0, m1, m2); + o.T = skinning_dir(v.T, m0, m1, m2); + o.B = skinning_dir(v.B, m0, m1, m2); + o.tc = v.tc; // -16..+16 +#ifdef SKIN_COLOR + o.rgb_tint = float3(0, 2, 0); +#endif + return o; +} +v_model skinning_2(v_model_skinned_2 v) +{ + // matrices + int id_0 = v.tc.z; + float4 m0_0 = sbones_array[id_0 + 0]; + float4 m1_0 = sbones_array[id_0 + 1]; + float4 m2_0 = sbones_array[id_0 + 2]; + int id_1 = v.tc.w; + float4 m0_1 = sbones_array[id_1 + 0]; + float4 m1_1 = sbones_array[id_1 + 1]; + float4 m2_1 = sbones_array[id_1 + 2]; + + // lerp + float w = v.N.w; + float4 m0 = lerp(m0_0, m0_1, w); + float4 m1 = lerp(m1_0, m1_1, w); + float4 m2 = lerp(m2_0, m2_1, w); + + // skinning + v_model o; + o.pos = skinning_pos(v.P, m0, m1, m2); + o.norm = skinning_dir(v.N, m0, m1, m2); + o.T = skinning_dir(v.T, m0, m1, m2); + o.B = skinning_dir(v.B, m0, m1, m2); + o.tc = v.tc; +#ifdef SKIN_COLOR + o.rgb_tint = float3(2, 0, 0); + if (id_0 == id_1) + { + o.rgb_tint = float3(1, 2, 0); + } +#endif + return o; +} + +v_model skinning_2lq(v_model_skinned_2 v) +{ + // matrices + int id_0 = v.tc.z; + float4 m0 = sbones_array[id_0 + 0]; + float4 m1 = sbones_array[id_0 + 1]; + float4 m2 = sbones_array[id_0 + 2]; + + // skinning + v_model o; + o.pos = skinning_pos(v.P, m0, m1, m2); + o.norm = skinning_dir(v.N, m0, m1, m2); + o.T = skinning_dir(v.T, m0, m1, m2); + o.B = skinning_dir(v.B, m0, m1, m2); + o.tc = v.tc; // -16..+16 +#ifdef SKIN_COLOR + o.rgb_tint = float3(0, 2, 0); +#endif + return o; +} + +v_model skinning_3(v_model_skinned_3 v) +{ + // matrices + int id_0 = v.tc.z; + float4 m0_0 = sbones_array[id_0 + 0]; + float4 m1_0 = sbones_array[id_0 + 1]; + float4 m2_0 = sbones_array[id_0 + 2]; + int id_1 = v.tc.w; + float4 m0_1 = sbones_array[id_1 + 0]; + float4 m1_1 = sbones_array[id_1 + 1]; + float4 m2_1 = sbones_array[id_1 + 2]; + int id_2 = v.B.w * 255 + 0.3; + float4 m0_2 = sbones_array[id_2 + 0]; + float4 m1_2 = sbones_array[id_2 + 1]; + float4 m2_2 = sbones_array[id_2 + 2]; + + // lerp + float w0 = v.N.w; + float w1 = v.T.w; + float w2 = 1 - w0 - w1; + float4 m0 = m0_0 * w0; + float4 m1 = m1_0 * w0; + float4 m2 = m2_0 * w0; + + m0 += m0_1 * w1; + m1 += m1_1 * w1; + m2 += m2_1 * w1; + + m0 += m0_2 * w2; + m1 += m1_2 * w2; + m2 += m2_2 * w2; + + // skinning + v_model o; + o.pos = skinning_pos(v.P, m0, m1, m2); + o.norm = skinning_dir(v.N, m0, m1, m2); + o.T = skinning_dir(v.T, m0, m1, m2); + o.B = skinning_dir(v.B, m0, m1, m2); + o.tc = v.tc; // -16..+16 +#ifdef SKIN_COLOR + o.rgb_tint = float3(2, 0, 0); + if (id_0 == id_1) + { + o.rgb_tint = float3(1, 2, 0); + } +#endif + return o; +} + +v_model skinning_3lq(v_model_skinned_3 v) +{ + return skinning_3(v); +} + +v_model skinning_4(v_model_skinned_4 v) +{ + // matrices + float id[4]; + float4 m[4][3]; // [bone index][matrix row or column???] + for (int i = 0; i < 4; ++i) + { + id[i] = v.ind[i] * 255 + 0.3; + for (int j = 0; j < 3; ++j) + { + m[i][j] = sbones_array[id[i] + j]; + } + } + + // lerp + float w[4]; + w[0] = v.N.w; + w[1] = v.T.w; + w[2] = v.B.w; + w[3] = 1 - w[0] - w[1] - w[2]; + + float4 m0 = m[0][0] * w[0]; + float4 m1 = m[0][1] * w[0]; + float4 m2 = m[0][2] * w[0]; + + for (int i = 1; i < 4; ++i) + { + m0 += m[i][0] * w[i]; + m1 += m[i][1] * w[i]; + m2 += m[i][2] * w[i]; + } + + // skinning + v_model o; + o.pos = skinning_pos(v.P, m0, m1, m2); + o.norm = skinning_dir(v.N, m0, m1, m2); + o.T = skinning_dir(v.T, m0, m1, m2); + o.B = skinning_dir(v.B, m0, m1, m2); + o.tc = v.tc; // -16..+16 +#ifdef SKIN_COLOR + o.rgb_tint = float3(2, 0, 0); + if (id_0 == id_1) + { + o.rgb_tint = float3(1, 2, 0); + } +#endif + return o; +} + +v_model skinning_4lq(v_model_skinned_4 v) +{ + return skinning_4(v); +} + +#endif diff --git a/gamedata/shaders/r1/skin_main.hlsli b/gamedata/shaders/r1/skin_main.hlsli new file mode 100644 index 0000000..4a10ddd --- /dev/null +++ b/gamedata/shaders/r1/skin_main.hlsli @@ -0,0 +1,100 @@ +#ifndef SKIN_MAIN_INCLUDED +#define SKIN_MAIN_INCLUDED + +////////////////////////////////////////////////////// +#ifdef SKIN_LQ + ////////////////////////////////////////////////////// + + #ifdef SKIN_NONE +SKIN_VF main(v_model v) +{ + return _main(v); +} + #endif + + #ifdef SKIN_0 +SKIN_VF main(v_model_skinned_0 v) +{ + return _main(skinning_0(v)); +} + #endif + + #ifdef SKIN_1 +SKIN_VF main(v_model_skinned_1 v) +{ + return _main(skinning_1(v)); +} + #endif + + #ifdef SKIN_2 +SKIN_VF main(v_model_skinned_2 v) +{ + return _main(skinning_2lq(v)); +} + #endif + + #ifdef SKIN_3 +SKIN_VF main(v_model_skinned_3 v) +{ + return _main(skinning_3lq(v)); +} + #endif + + #ifdef SKIN_4 +SKIN_VF main(v_model_skinned_4 v) +{ + return _main(skinning_4lq(v)); +} + #endif + +////////////////////////////////////////////////////// +#else // SKIN_LQ + ////////////////////////////////////////////////////// + + #ifdef SKIN_NONE +SKIN_VF main(v_model v) +{ + return _main(v); +} + #endif + + #ifdef SKIN_0 +SKIN_VF main(v_model_skinned_0 v) +{ + return _main(skinning_0(v)); +} + #endif + + #ifdef SKIN_1 +SKIN_VF main(v_model_skinned_1 v) +{ + return _main(skinning_1(v)); +} + #endif + + #ifdef SKIN_2 +SKIN_VF main(v_model_skinned_2 v) +{ + return _main(skinning_2(v)); +} + #endif + + #ifdef SKIN_3 +SKIN_VF main(v_model_skinned_3 v) +{ + return _main(skinning_3(v)); +} + #endif + + #ifdef SKIN_4 +SKIN_VF main(v_model_skinned_4 v) +{ + return _main(skinning_4(v)); +} + #endif + +////////////////////////////////////////////////////// +#endif // SKIN_LQ +////////////////////////////////////////////////////// + +#endif // SKIN_MAIN_INCLUDED diff --git a/gamedata/shaders/r1/sky.ps.hlsl b/gamedata/shaders/r1/sky.ps.hlsl new file mode 100644 index 0000000..cd83723 --- /dev/null +++ b/gamedata/shaders/r1/sky.ps.hlsl @@ -0,0 +1,22 @@ +#include "common.hlsli" + +struct v2p +{ + float4 factor : COLOR0; + float3 tc0 : TEXCOORD0; + float3 tc1 : TEXCOORD1; +}; + +uniform samplerCUBE s_sky0 : register(s0); +uniform samplerCUBE s_sky1 : register(s1); +uniform float3 color; + +// Pixel +float4 main(v2p I) : COLOR +{ + float3 s0 = texCUBE(s_sky0, I.tc0); + float3 s1 = texCUBE(s_sky1, I.tc1); + float3 sky = I.factor * lerp(s0, s1, I.factor.w); + + return float4(sky, 1.0f); +} diff --git a/gamedata/shaders/r1/sky.vs.hlsl b/gamedata/shaders/r1/sky.vs.hlsl new file mode 100644 index 0000000..13b7c5a --- /dev/null +++ b/gamedata/shaders/r1/sky.vs.hlsl @@ -0,0 +1,31 @@ +#include "common.hlsli" + +struct vi +{ + float4 p : POSITION; + float4 c : COLOR0; + float3 tc0 : TEXCOORD0; + float3 tc1 : TEXCOORD1; +}; + +struct vf +{ + float4 hpos : POSITION; + float4 c : COLOR0; + float3 tc0 : TEXCOORD0; + float3 tc1 : TEXCOORD1; +}; + +vf main(vi v) +{ + vf o; + + float4 tpos = mul(1000, v.p); + o.hpos = mul(m_WVP, tpos); // xform, input in world coords, 1000 - magic number + o.hpos.z = o.hpos.w; + o.c = v.c; // copy color + o.tc0 = v.tc0; // copy tc + o.tc1 = v.tc1; // copy tc + + return o; +} diff --git a/gamedata/shaders/r1/tree_s.vs.hlsl b/gamedata/shaders/r1/tree_s.vs.hlsl new file mode 100644 index 0000000..0914767 --- /dev/null +++ b/gamedata/shaders/r1/tree_s.vs.hlsl @@ -0,0 +1,63 @@ +#include "common.hlsli" + +struct av +{ + float4 pos : POSITION; // (float,float,float,1) + float4 nc : NORMAL; // (float,float,float,clr) + float4 misc : TEXCOORD0; // (u(Q),v(Q),frac,???) +}; + +struct vf +{ + float4 HPOS : POSITION; + float3 COL0 : COLOR0; + float2 TEX0 : TEXCOORD0; + float fog : FOG; +}; + +uniform float3x4 m_xform; +uniform float4 consts; // {1/quant,1/quant,???,???} +uniform float4 wave; // cx,cy,cz,tm +uniform float4 wind; // direction2D +uniform float4 c_bias; // + color +uniform float4 c_scale; // * color +uniform float2 c_sun; // x=*, y=+ + +vf main(av v) +{ + vf o; + + // Transform to world coords + float3 pos = mul(m_xform, v.pos); + + // + float base = m_xform._24; // take base height from matrix + float dp = calc_cyclic(wave.w + dot(pos, (float3)wave)); + float H = pos.y - base; // height of vertex (scaled, rotated, etc.) + float frac = v.misc.z * consts.x; // fractional (or rigidity) + float inten = H * dp; // intensity + float2 result = calc_xz_wave(wind.xz * inten, frac); + float4 f_pos = float4(pos, 1); // float4 (pos.x+result.x, pos.y, pos.z+result.y, 1); + + // Calc fog + o.fog = calc_fogging(f_pos); + + // Final xform + o.HPOS = mul(m_VP, f_pos); + + // Lighting + float3 N = mul(m_xform, unpack_normal(v.nc)); // normalize (mul (m_xform, unpack_normal(v.nc))); + float L_base = v.nc.w; // base hemisphere + float4 L_unpack = c_scale * L_base + c_bias; // unpacked and decompressed + float3 L_rgb = L_unpack.xyz; // precalculated RGB lighting + float3 L_hemi = v_hemi_wrap(N, .75f) * L_unpack.w; // hemisphere + float3 L_sun = v_sun(N) * (L_base * c_sun.x + c_sun.y); // sun + // float3 L_sun = L_sun_color*(.25f+.75f*dot(N,-L_sun_dir_w))*(L_base*c_sun.x+c_sun.y); + float3 L_final = L_rgb + L_hemi + L_sun; + o.COL0 = L_final; + + // final xform, color, tc + o.TEX0.xy = (v.misc * consts).xy; + + return o; +} diff --git a/gamedata/shaders/r1/tree_s_dt.vs.hlsl b/gamedata/shaders/r1/tree_s_dt.vs.hlsl new file mode 100644 index 0000000..b96152c --- /dev/null +++ b/gamedata/shaders/r1/tree_s_dt.vs.hlsl @@ -0,0 +1,67 @@ +#include "common.hlsli" + +struct av +{ + float4 pos : POSITION; // (float,float,float,1) + float4 nc : NORMAL; // (float,float,float,clr) + float4 misc : TEXCOORD0; // (u(Q),v(Q),frac,???) +}; + +struct vf +{ + float4 HPOS : POSITION; + float4 COL0 : COLOR0; + float4 c1 : COLOR1; + float2 TEX0 : TEXCOORD0; + float2 tc1 : TEXCOORD1; // detail + float fog : FOG; +}; + +uniform float3x4 m_xform; +uniform float4 consts; // {1/quant,1/quant,???,???} +uniform float4 wave; // cx,cy,cz,tm +uniform float4 wind; // direction2D +uniform float4 c_bias; // + color +uniform float4 c_scale; // * color +uniform float2 c_sun; // x=*, y=+ + +vf main(av v) +{ + vf o; + + // Transform to world coords + float3 pos = mul(m_xform, v.pos); + + // + float base = m_xform._24; // take base height from matrix + float dp = calc_cyclic(wave.w + dot(pos, (float3)wave)); + float H = pos.y - base; // height of vertex (scaled, rotated, etc.) + float frac = v.misc.z * consts.x; // fractional (or rigidity) + float inten = H * dp; // intensity + float2 result = calc_xz_wave(wind.xz * inten, frac); + float4 f_pos = float4(pos, 1); // float4 (pos.x+result.x, pos.y, pos.z+result.y, 1); + + // Calc fog + o.fog = calc_fogging(f_pos); + + // Final xform + o.HPOS = mul(m_VP, f_pos); + + // Lighting + float3 N = mul(m_xform, unpack_normal(v.nc)); // normalize (mul (m_xform, unpack_normal(v.nc))); + float L_base = v.nc.w; // base hemisphere + float4 L_unpack = c_scale * L_base + c_bias; // unpacked and decompressed + float3 L_rgb = L_unpack.xyz; // precalculated RGB lighting + float3 L_hemi = v_hemi_wrap(N, .75f) * L_unpack.w; // hemisphere + float3 L_sun = v_sun(N) * (L_base * c_sun.x + c_sun.y); // sun + float3 L_final = L_rgb + L_hemi + L_sun; + + // final xform, color, tc + o.TEX0.xy = (v.misc * consts).xy; + o.tc1 = o.TEX0 * dt_params; // dt tc + float2 dt = calc_detail(f_pos); // + o.COL0 = float4(L_final, dt.x); // + o.c1 = dt.y; // + + return o; +} diff --git a/gamedata/shaders/r1/tree_s_point.vs.hlsl b/gamedata/shaders/r1/tree_s_point.vs.hlsl new file mode 100644 index 0000000..248d174 --- /dev/null +++ b/gamedata/shaders/r1/tree_s_point.vs.hlsl @@ -0,0 +1,41 @@ +#include "common.hlsli" + +struct av +{ + float4 pos : POSITION; // (float,float,float,1) + float4 nc : NORMAL; // (float,float,float,clr) + float4 misc : TEXCOORD0; // (u(Q),v(Q),frac,???) +}; + +uniform float3x4 m_xform; +uniform float4 consts; // {1/quant,1/quant,???,???} +uniform float4 wave; // cx,cy,cz,tm +uniform float4 wind; // direction2D +uniform float4 c_bias; // + color +uniform float4 c_scale; // * color +uniform float2 c_sun; // x=*, y=+ + +vf_point main(av v) +{ + vf_point o; + + // Transform to world coords + float3 pos = mul(m_xform, v.pos); + + // + float base = m_xform._24; // take base height from matrix + float dp = calc_cyclic(wave.w + dot(pos, (float3)wave)); + float H = pos.y - base; // height of vertex (scaled, rotated, etc.) + float frac = v.misc.z * consts.x; // fractional (or rigidity) + float inten = H * dp; // intensity + float2 result = calc_xz_wave(wind.xz * inten, frac); + float4 f_pos = float4(pos, 1); // float4 (pos.x+result.x, pos.y, pos.z+result.y, 1); + float3 f_N = normalize(mul(m_xform, unpack_normal(v.nc))); + + // Final xform + o.hpos = mul(m_VP, f_pos); + o.tc0 = (v.misc * consts).xy; + o.color = calc_point(o.tc1, o.tc2, f_pos, f_N); + + return o; +} diff --git a/gamedata/shaders/r1/tree_s_spot.vs.hlsl b/gamedata/shaders/r1/tree_s_spot.vs.hlsl new file mode 100644 index 0000000..14221e6 --- /dev/null +++ b/gamedata/shaders/r1/tree_s_spot.vs.hlsl @@ -0,0 +1,41 @@ +#include "common.hlsli" + +struct av +{ + float4 pos : POSITION; // (float,float,float,1) + float4 nc : NORMAL; // (float,float,float,clr) + float4 misc : TEXCOORD0; // (u(Q),v(Q),frac,???) +}; + +uniform float3x4 m_xform; +uniform float4 consts; // {1/quant,1/quant,???,???} +uniform float4 wave; // cx,cy,cz,tm +uniform float4 wind; // direction2D +uniform float4 c_bias; // + color +uniform float4 c_scale; // * color +uniform float2 c_sun; // x=*, y=+ + +vf_spot main(av v) +{ + vf_spot o; + + // Transform to world coords + float3 pos = mul(m_xform, v.pos); + + // + float base = m_xform._24; // take base height from matrix + float dp = calc_cyclic(wave.w + dot(pos, (float3)wave)); + float H = pos.y - base; // height of vertex (scaled, rotated, etc.) + float frac = v.misc.z * consts.x; // fractional (or rigidity) + float inten = H * dp; // intensity + float2 result = calc_xz_wave(wind.xz * inten, frac); + float4 f_pos = float4(pos, 1); // float4 (pos.x+result.x, pos.y, pos.z+result.y, 1); + float3 f_N = normalize(mul(m_xform, unpack_normal(v.nc))); + + // Final xform + o.hpos = mul(m_VP, f_pos); + o.tc0 = (v.misc * consts).xy; + o.color = calc_spot(o.tc1, o.tc2, f_pos, f_N); + + return o; +} diff --git a/gamedata/shaders/r1/tree_test.vs.hlsl b/gamedata/shaders/r1/tree_test.vs.hlsl new file mode 100644 index 0000000..16836f3 --- /dev/null +++ b/gamedata/shaders/r1/tree_test.vs.hlsl @@ -0,0 +1,62 @@ +#include "common.hlsli" + +struct av +{ + float4 pos : POSITION; // (float,float,float,1) + float4 nc : NORMAL; // (float,float,float,clr) + float4 misc : TEXCOORD0; // (u(Q),v(Q),frac,???) +}; + +struct vf +{ + float4 HPOS : POSITION; + float3 COL0 : COLOR0; + float2 TEX0 : TEXCOORD0; + float fog : FOG; +}; + +uniform float3x4 m_xform; +uniform float4 consts; // {1/quant,1/quant,???,???} +uniform float4 wave; // cx,cy,cz,tm +uniform float4 wind; // direction2D +uniform float4 c_bias; // + color +uniform float4 c_scale; // * color +uniform float2 c_sun; // x=*, y=+ + +vf main(av v) +{ + vf o; + + // Transform to world coords + float3 pos = mul(m_xform, v.pos); + + // + float base = m_xform._24; // take base height from matrix + float dp = calc_cyclic(wave.w + dot(pos, (float3)wave)); + float H = pos.y - base; // height of vertex (scaled, rotated, etc.) + float frac = v.misc.z * consts.x; // fractional (or rigidity) + float inten = H * dp; // intensity + float2 result = calc_xz_wave(wind.xz * inten, frac); + float4 f_pos = float4(pos, 1); // float4(pos.x+result.x, pos.y, pos.z+result.y, 1); + + // Calc fog + o.fog = calc_fogging(f_pos); + + // Final xform + o.HPOS = mul(m_VP, f_pos); + + // Lighting + float3 N = mul(m_xform, unpack_normal(v.nc)); // normalize (mul (m_xform, unpack_normal(v.nc))); + float L_base = v.nc.w; // base hemisphere + float4 L_unpack = c_scale * L_base + c_bias; // unpacked and decompressed + float3 L_rgb = L_unpack.xyz; + float3 L_hemi = v_hemi_wrap(N, .75f) * L_unpack.w; // hemisphere + float3 L_sun = v_sun_wrap(N, .25f) * (L_base * c_sun.x + c_sun.y); // sun + float3 L_final = L_rgb + L_hemi + L_sun + L_ambient; + o.COL0 = L_final; //,1); + + // final xform, color, tc + o.TEX0.xy = (v.misc * consts).xy; + + return o; +} diff --git a/gamedata/shaders/r1/tree_w.vs.hlsl b/gamedata/shaders/r1/tree_w.vs.hlsl new file mode 100644 index 0000000..5dcbfe9 --- /dev/null +++ b/gamedata/shaders/r1/tree_w.vs.hlsl @@ -0,0 +1,62 @@ +#include "common.hlsli" + +struct av +{ + float4 pos : POSITION; // (float,float,float,1) + float4 nc : NORMAL; // (float,float,float,clr) + float4 misc : TEXCOORD0; // (u(Q),v(Q),frac,???) +}; + +struct vf +{ + float4 HPOS : POSITION; + float3 COL0 : COLOR0; + float2 TEX0 : TEXCOORD0; + float fog : FOG; +}; + +uniform float3x4 m_xform; +uniform float4 consts; // {1/quant,1/quant,???,???} +uniform float4 wave; // cx,cy,cz,tm +uniform float4 wind; // direction2D +uniform float4 c_bias; // + color +uniform float4 c_scale; // * color +uniform float2 c_sun; // x=*, y=+ + +vf main(av v) +{ + vf o; + + // Transform to world coords + float3 pos = mul(m_xform, v.pos); + + // + float base = m_xform._24; // take base height from matrix + float dp = calc_cyclic(wave.w + dot(pos, (float3)wave)); + float H = pos.y - base; // height of vertex (scaled, rotated, etc.) + float frac = v.misc.z * consts.x; // fractional (or rigidity) + float inten = H * dp; // intensity + float2 result = calc_xz_wave(wind.xz * inten, frac); + float4 f_pos = float4(pos.x + result.x, pos.y, pos.z + result.y, 1); + + // Calc fog + o.fog = calc_fogging(f_pos); + + // Final xform + o.HPOS = mul(m_VP, f_pos); + + // Lighting + float3 N = mul(m_xform, unpack_normal(v.nc)); // normalize (mul (m_xform, unpack_normal(v.nc))); + float L_base = v.nc.w; // base hemisphere + float4 L_unpack = c_scale * L_base + c_bias; // unpacked and decompressed + float3 L_rgb = L_unpack.xyz; // precalculated RGB lighting + float3 L_hemi = v_hemi_wrap(N, .75f) * L_unpack.w; // hemisphere + float3 L_sun = v_sun(N) * (L_base * c_sun.x + c_sun.y); // sun + float3 L_final = L_rgb + L_hemi + L_sun; + o.COL0 = L_final; + + // final xform, color, tc + o.TEX0.xy = (v.misc * consts).xy; + + return o; +} diff --git a/gamedata/shaders/r1/tree_w_dt.vs.hlsl b/gamedata/shaders/r1/tree_w_dt.vs.hlsl new file mode 100644 index 0000000..d28c384 --- /dev/null +++ b/gamedata/shaders/r1/tree_w_dt.vs.hlsl @@ -0,0 +1,67 @@ +#include "common.hlsli" + +struct av +{ + float4 pos : POSITION; // (float,float,float,1) + float4 nc : NORMAL; // (float,float,float,clr) + float4 misc : TEXCOORD0; // (u(Q),v(Q),frac,???) +}; + +struct vf +{ + float4 HPOS : POSITION; + float2 tc0 : TEXCOORD0; + float2 tc1 : TEXCOORD1; // detail + float4 c0 : COLOR0; // c0=all lighting, c0.a needed for details + float4 c1 : COLOR1; // ps_1_1 read ports + float fog : FOG; +}; + +uniform float3x4 m_xform; +uniform float4 consts; // {1/quant,1/quant,???,???} +uniform float4 wave; // cx,cy,cz,tm +uniform float4 wind; // direction2D +uniform float4 c_bias; // + color +uniform float4 c_scale; // * color +uniform float2 c_sun; // x=*, y=+ + +vf main(av v) +{ + vf o; + + // Transform to world coords + float3 pos = mul(m_xform, v.pos); + + // + float base = m_xform._24; // take base height from matrix + float dp = calc_cyclic(wave.w + dot(pos, (float3)wave)); + float H = pos.y - base; // height of vertex (scaled, rotated, etc.) + float frac = v.misc.z * consts.x; // fractional (or rigidity) + float inten = H * dp; // intensity + float2 result = calc_xz_wave(wind.xz * inten, frac); + float4 f_pos = float4(pos.x + result.x, pos.y, pos.z + result.y, 1); + + // Calc fog + o.fog = calc_fogging(f_pos); + + // Final xform + o.HPOS = mul(m_VP, f_pos); + + // Lighting + float3 N = mul(m_xform, unpack_normal(v.nc)); // normalize (mul (m_xform, unpack_normal(v.nc))); + float L_base = v.nc.w; // base hemisphere + float4 L_unpack = c_scale * L_base + c_bias; // unpacked and decompressed + float3 L_rgb = L_unpack.xyz; // precalculated RGB lighting + float3 L_hemi = v_hemi_wrap(N, .75f) * L_unpack.w; // hemisphere + float3 L_sun = v_sun(N) * (L_base * c_sun.x + c_sun.y); // sun + float3 L_final = L_rgb + L_hemi + L_sun; + + // final xform, color, tc + o.tc0.xy = (v.misc * consts).xy; + o.tc1 = o.tc0 * dt_params; // dt tc + float2 dt = calc_detail(f_pos); // + o.c0 = float4(L_final, dt.x); // + o.c1 = dt.y; // + + return o; +} diff --git a/gamedata/shaders/r1/tree_w_point.vs.hlsl b/gamedata/shaders/r1/tree_w_point.vs.hlsl new file mode 100644 index 0000000..a83ebfe --- /dev/null +++ b/gamedata/shaders/r1/tree_w_point.vs.hlsl @@ -0,0 +1,41 @@ +#include "common.hlsli" + +struct av +{ + float4 pos : POSITION; // (float,float,float,1) + float4 nc : NORMAL; // (float,float,float,clr) + float4 misc : TEXCOORD0; // (u(Q),v(Q),frac,???) +}; + +uniform float3x4 m_xform; +uniform float4 consts; // {1/quant,1/quant,???,???} +uniform float4 wave; // cx,cy,cz,tm +uniform float4 wind; // direction2D +uniform float4 c_bias; // + color +uniform float4 c_scale; // * color +uniform float2 c_sun; // x=*, y=+ + +vf_point main(av v) +{ + vf_point o; + + // Transform to world coords + float3 pos = mul(m_xform, v.pos); + + // + float base = m_xform._24; // take base height from matrix + float dp = calc_cyclic(wave.w + dot(pos, (float3)wave)); + float H = pos.y - base; // height of vertex (scaled, rotated, etc.) + float frac = v.misc.z * consts.x; // fractional (or rigidity) + float inten = H * dp; // intensity + float2 result = calc_xz_wave(wind.xz * inten, frac); + float4 f_pos = float4(pos.x + result.x, pos.y, pos.z + result.y, 1); + float3 f_N = normalize(mul(m_xform, unpack_normal(v.nc))); + + // Final xform + o.hpos = mul(m_VP, f_pos); + o.tc0 = (v.misc * consts).xy; + o.color = calc_point(o.tc1, o.tc2, f_pos, f_N); + + return o; +} diff --git a/gamedata/shaders/r1/tree_w_spot.vs.hlsl b/gamedata/shaders/r1/tree_w_spot.vs.hlsl new file mode 100644 index 0000000..81de4b6 --- /dev/null +++ b/gamedata/shaders/r1/tree_w_spot.vs.hlsl @@ -0,0 +1,41 @@ +#include "common.hlsli" + +struct av +{ + float4 pos : POSITION; // (float,float,float,1) + float4 nc : NORMAL; // (float,float,float,clr) + float4 misc : TEXCOORD0; // (u(Q),v(Q),frac,???) +}; + +uniform float3x4 m_xform; +uniform float4 consts; // {1/quant,1/quant,???,???} +uniform float4 wave; // cx,cy,cz,tm +uniform float4 wind; // direction2D +uniform float4 c_bias; // + color +uniform float4 c_scale; // * color +uniform float2 c_sun; // x=*, y=+ + +vf_spot main(av v) +{ + vf_spot o; + + // Transform to world coords + float3 pos = mul(m_xform, v.pos); + + // + float base = m_xform._24; // take base height from matrix + float dp = calc_cyclic(wave.w + dot(pos, (float3)wave)); + float H = pos.y - base; // height of vertex (scaled, rotated, etc.) + float frac = v.misc.z * consts.x; // fractional (or rigidity) + float inten = H * dp; // intensity + float2 result = calc_xz_wave(wind.xz * inten, frac); + float4 f_pos = float4(pos.x + result.x, pos.y, pos.z + result.y, 1); + float3 f_N = normalize(mul(m_xform, unpack_normal(v.nc))); + + // Final xform + o.hpos = mul(m_VP, f_pos); + o.tc0 = (v.misc * consts).xy; + o.color = calc_spot(o.tc1, o.tc2, f_pos, f_N); + + return o; +} diff --git a/gamedata/shaders/r1/tree_wave.vs.hlsl b/gamedata/shaders/r1/tree_wave.vs.hlsl new file mode 100644 index 0000000..3d7ebfa --- /dev/null +++ b/gamedata/shaders/r1/tree_wave.vs.hlsl @@ -0,0 +1,62 @@ +#include "common.hlsli" + +struct av +{ + float4 pos : POSITION; // (float,float,float,1) + float4 nc : NORMAL; // (float,float,float,clr) + float4 misc : TEXCOORD0; // (u(Q),v(Q),frac,???) +}; + +struct vf +{ + float4 HPOS : POSITION; + float4 COL0 : COLOR0; + float2 TEX0 : TEXCOORD0; + float fog : FOG; +}; + +uniform float3x4 m_xform; +uniform float4 consts; // {1/quant,1/quant,???,???} +uniform float4 wave; // cx,cy,cz,tm +uniform float4 wind; // direction2D +uniform float4 c_bias; // + color +uniform float4 c_scale; // * color +uniform float2 c_sun; // x=*, y=+ + +vf main(av v) +{ + vf o; + + // Transform to world coords + float3 pos = mul(m_xform, v.pos); + + // + float base = m_xform._24; // take base height from matrix + float dp = calc_cyclic(wave.w + dot(pos, (float3)wave)); + float H = pos.y - base; // height of vertex (scaled, rotated, etc.) + float frac = v.misc.z * consts.x; // fractional (or rigidity) + float inten = H * dp; // intensity + float2 result = calc_xz_wave(wind.xz * inten, frac); + float4 f_pos = float4(pos.x + result.x, pos.y, pos.z + result.y, 1); + + // Calc fog + o.fog = calc_fogging(f_pos); + + // Final xform + o.HPOS = mul(m_VP, f_pos); + + // Lighting + float3 N = normalize(mul(m_xform, unpack_normal(v.nc))); + float L_base = v.nc.w; // base hemisphere + float4 L_unpack = c_scale * L_base + c_bias; // unpacked and decompressed + float3 L_rgb = L_unpack.xyz; // precalculated RGB lighting + float3 L_hemi = v_hemi_wrap(N, .75f) * L_unpack.w; // hemisphere + float3 L_sun = v_sun(N) * (L_base * c_sun.x + c_sun.y); // sun + float3 L_final = L_rgb + L_hemi + L_sun + L_ambient; + o.COL0 = float4(L_final, 1); + + // final xform, color, tc + o.TEX0.xy = (v.misc * consts).xy; + + return o; +} diff --git a/gamedata/shaders/r1/tree_wave_dt.vs.hlsl b/gamedata/shaders/r1/tree_wave_dt.vs.hlsl new file mode 100644 index 0000000..d27baf7 --- /dev/null +++ b/gamedata/shaders/r1/tree_wave_dt.vs.hlsl @@ -0,0 +1,67 @@ +#include "common.hlsli" + +struct av +{ + float4 pos : POSITION; // (float,float,float,1) + float4 nc : NORMAL; // (float,float,float,clr) + float4 misc : TEXCOORD0; // (u(Q),v(Q),frac,???) +}; + +struct vf +{ + float4 HPOS : POSITION; + float2 tc0 : TEXCOORD0; + float2 tc1 : TEXCOORD1; // detail + float4 c0 : COLOR0; // c0=all lighting + float4 c1 : COLOR1; // ps_1_1 read ports + float fog : FOG; +}; + +uniform float3x4 m_xform; +uniform float4 consts; // {1/quant,1/quant,???,???} +uniform float4 wave; // cx,cy,cz,tm +uniform float4 wind; // direction2D +uniform float4 c_bias; // + color +uniform float4 c_scale; // * color +uniform float2 c_sun; // x=*, y=+ + +vf main(av v) +{ + vf o; + + // Transform to world coords + float3 pos = mul(m_xform, v.pos); + + // + float base = m_xform._24; // take base height from matrix + float dp = calc_cyclic(wave.w + dot(pos, (float3)wave)); + float H = pos.y - base; // height of vertex (scaled, rotated, etc.) + float frac = v.misc.z * consts.x; // fractional (or rigidity) + float inten = H * dp; // intensity + float2 result = calc_xz_wave(wind.xz * inten, frac); + float4 f_pos = float4(pos.x + result.x, pos.y, pos.z + result.y, 1); + + // Calc fog + o.fog = calc_fogging(f_pos); + + // Final xform + o.HPOS = mul(m_VP, f_pos); + + // Lighting + float3 N = normalize(mul(m_xform, unpack_normal(v.nc))); + float L_base = v.nc.w; // base hemisphere + float4 L_unpack = c_scale * L_base + c_bias; // unpacked and decompressed + float3 L_rgb = L_unpack.xyz; // precalculated RGB lighting + float3 L_hemi = v_hemi_wrap(N, .75f) * L_unpack.w; // hemisphere + float3 L_sun = v_sun(N) * (L_base * c_sun.x + c_sun.y); // sun + float3 L_final = L_rgb + L_hemi + L_sun + L_ambient; + + // final xform, color, tc + o.tc0.xy = (v.misc * consts).xy; + o.tc1 = o.tc0 * dt_params; // dt tc + float2 dt = calc_detail(f_pos); // + o.c0 = float4(L_final, dt.x); // + o.c1 = dt.y; // + + return o; +} diff --git a/gamedata/shaders/r1/tree_wave_point.vs.hlsl b/gamedata/shaders/r1/tree_wave_point.vs.hlsl new file mode 100644 index 0000000..a83ebfe --- /dev/null +++ b/gamedata/shaders/r1/tree_wave_point.vs.hlsl @@ -0,0 +1,41 @@ +#include "common.hlsli" + +struct av +{ + float4 pos : POSITION; // (float,float,float,1) + float4 nc : NORMAL; // (float,float,float,clr) + float4 misc : TEXCOORD0; // (u(Q),v(Q),frac,???) +}; + +uniform float3x4 m_xform; +uniform float4 consts; // {1/quant,1/quant,???,???} +uniform float4 wave; // cx,cy,cz,tm +uniform float4 wind; // direction2D +uniform float4 c_bias; // + color +uniform float4 c_scale; // * color +uniform float2 c_sun; // x=*, y=+ + +vf_point main(av v) +{ + vf_point o; + + // Transform to world coords + float3 pos = mul(m_xform, v.pos); + + // + float base = m_xform._24; // take base height from matrix + float dp = calc_cyclic(wave.w + dot(pos, (float3)wave)); + float H = pos.y - base; // height of vertex (scaled, rotated, etc.) + float frac = v.misc.z * consts.x; // fractional (or rigidity) + float inten = H * dp; // intensity + float2 result = calc_xz_wave(wind.xz * inten, frac); + float4 f_pos = float4(pos.x + result.x, pos.y, pos.z + result.y, 1); + float3 f_N = normalize(mul(m_xform, unpack_normal(v.nc))); + + // Final xform + o.hpos = mul(m_VP, f_pos); + o.tc0 = (v.misc * consts).xy; + o.color = calc_point(o.tc1, o.tc2, f_pos, f_N); + + return o; +} diff --git a/gamedata/shaders/r1/tree_wave_spot.vs.hlsl b/gamedata/shaders/r1/tree_wave_spot.vs.hlsl new file mode 100644 index 0000000..81de4b6 --- /dev/null +++ b/gamedata/shaders/r1/tree_wave_spot.vs.hlsl @@ -0,0 +1,41 @@ +#include "common.hlsli" + +struct av +{ + float4 pos : POSITION; // (float,float,float,1) + float4 nc : NORMAL; // (float,float,float,clr) + float4 misc : TEXCOORD0; // (u(Q),v(Q),frac,???) +}; + +uniform float3x4 m_xform; +uniform float4 consts; // {1/quant,1/quant,???,???} +uniform float4 wave; // cx,cy,cz,tm +uniform float4 wind; // direction2D +uniform float4 c_bias; // + color +uniform float4 c_scale; // * color +uniform float2 c_sun; // x=*, y=+ + +vf_spot main(av v) +{ + vf_spot o; + + // Transform to world coords + float3 pos = mul(m_xform, v.pos); + + // + float base = m_xform._24; // take base height from matrix + float dp = calc_cyclic(wave.w + dot(pos, (float3)wave)); + float H = pos.y - base; // height of vertex (scaled, rotated, etc.) + float frac = v.misc.z * consts.x; // fractional (or rigidity) + float inten = H * dp; // intensity + float2 result = calc_xz_wave(wind.xz * inten, frac); + float4 f_pos = float4(pos.x + result.x, pos.y, pos.z + result.y, 1); + float3 f_N = normalize(mul(m_xform, unpack_normal(v.nc))); + + // Final xform + o.hpos = mul(m_VP, f_pos); + o.tc0 = (v.misc * consts).xy; + o.color = calc_spot(o.tc1, o.tc2, f_pos, f_N); + + return o; +} diff --git a/gamedata/shaders/r1/vert.ps.hlsl b/gamedata/shaders/r1/vert.ps.hlsl new file mode 100644 index 0000000..10bbe06 --- /dev/null +++ b/gamedata/shaders/r1/vert.ps.hlsl @@ -0,0 +1,19 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float3 c0 : COLOR0; + float fog : FOG; +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 t_base = tex2D(s_base, I.tc0); + float3 final = t_base * I.c0 * 2.0f; + final = lerp(fog_color.xyz, final, I.fog); + + // out + return float4(final, t_base.a); +} diff --git a/gamedata/shaders/r1/vert.vs.hlsl b/gamedata/shaders/r1/vert.vs.hlsl new file mode 100644 index 0000000..279af93 --- /dev/null +++ b/gamedata/shaders/r1/vert.vs.hlsl @@ -0,0 +1,29 @@ +#include "common.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; + float3 c0 : COLOR0; // c0=all lighting + float fog : FOG; +}; + +vf main(v_vert v) +{ + vf o; + + float3 N = unpack_normal(v.N); + o.hpos = mul(m_VP, v.P); // xform, input in world coords + o.tc0 = unpack_tc_base(v.uv, v.T.w, v.B.w); // copy tc + // o.tc0 = unpack_tc_base (v.tc); // copy tc + + float3 L_rgb = v.color.xyz; // precalculated RGB lighting + float3 L_hemi = v_hemi(N) * v.N.w; // hemisphere + float3 L_sun = v_sun(N) * v.color.w; // sun + float3 L_final = L_rgb + L_hemi + L_sun + L_ambient; + + o.c0 = L_final; + o.fog = calc_fogging(v.P); // fog, input in world coords + + return o; +} diff --git a/gamedata/shaders/r1/vert_dt.ps.hlsl b/gamedata/shaders/r1/vert_dt.ps.hlsl new file mode 100644 index 0000000..4424ea7 --- /dev/null +++ b/gamedata/shaders/r1/vert_dt.ps.hlsl @@ -0,0 +1,24 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float2 tc1 : TEXCOORD1; // base + float4 c0 : COLOR0; + float4 c1 : COLOR1; + float fog : FOG; +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 t_base = tex2D(s_base, I.tc0); + float4 t_dt = tex2D(s_detail, I.tc1); + + float3 detail = t_dt * I.c0.a + I.c1.a; + float3 final = (t_base * I.c0 * 2.0f) * detail * 2.0f; + final = lerp(fog_color.xyz, final, I.fog); + + // out + return float4(final.r, final.g, final.b, t_base.a); +} diff --git a/gamedata/shaders/r1/vert_dt.vs.hlsl b/gamedata/shaders/r1/vert_dt.vs.hlsl new file mode 100644 index 0000000..7be5614 --- /dev/null +++ b/gamedata/shaders/r1/vert_dt.vs.hlsl @@ -0,0 +1,35 @@ +#include "common.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; + float2 tc1 : TEXCOORD1; // detail + float4 c0 : COLOR0; // c0=all lighting + float4 c1 : COLOR1; // ps_1_1 read ports + float fog : FOG; +}; + +vf main(v_vert v) +{ + vf o; + + float3 N = unpack_normal(v.N); + o.hpos = mul(m_VP, v.P); // xform, input in world coords + o.tc0 = unpack_tc_base(v.uv, v.T.w, v.B.w); // copy tc + // o.tc0 = unpack_tc_base (v.tc); // copy tc + o.tc1 = o.tc0 * dt_params; // dt tc + + float3 L_rgb = v.color.xyz; // precalculated RGB lighting + float3 L_hemi = v_hemi(N) * v.N.w; // hemisphere + float3 L_sun = v_sun(N) * v.color.w; // sun + float3 L_final = L_rgb + L_hemi + L_sun + L_ambient; + + float2 dt = calc_detail(v.P); + + o.c0 = float4(L_final.x, L_final.y, L_final.z, dt.x); + o.c1 = dt.y; // + o.fog = calc_fogging(v.P); // fog, input in world coords + + return o; +} diff --git a/gamedata/shaders/r1/vert_l.ps.hlsl b/gamedata/shaders/r1/vert_l.ps.hlsl new file mode 100644 index 0000000..8772bc1 --- /dev/null +++ b/gamedata/shaders/r1/vert_l.ps.hlsl @@ -0,0 +1,12 @@ +#include "common.hlsli" + +struct v2p +{ + float4 c0 : COLOR0; +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + return I.c0; +} diff --git a/gamedata/shaders/r1/vert_l.vs.hlsl b/gamedata/shaders/r1/vert_l.vs.hlsl new file mode 100644 index 0000000..34e4bb3 --- /dev/null +++ b/gamedata/shaders/r1/vert_l.vs.hlsl @@ -0,0 +1,22 @@ +#include "common.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float4 c0 : COLOR0; // c0=all lighting +}; + +vf main(v_vert v) +{ + vf o; + + float3 N = unpack_normal(v.N); + float3 L_rgb = v.color.xyz; // precalculated RGB lighting + float3 L_hemi = v_hemi(N) * v.N.w; // hemisphere + float L_sun = v.color.w; // sun occl only + float3 L_final = L_rgb + L_hemi + L_ambient; + + o.hpos = mul(m_VP, v.P); // xform, input in world coords + o.c0 = float4(L_final.x, L_final.y, L_final.z, L_sun); + return o; +} diff --git a/gamedata/shaders/r1/vert_point.vs.hlsl b/gamedata/shaders/r1/vert_point.vs.hlsl new file mode 100644 index 0000000..9b6237b --- /dev/null +++ b/gamedata/shaders/r1/vert_point.vs.hlsl @@ -0,0 +1,13 @@ +#include "common.hlsli" + +vf_point main(v_vert v) +{ + vf_point o; + + o.hpos = mul(m_VP, v.P); // xform, input in world coords + o.tc0 = unpack_tc_base(v.uv, v.T.w, v.B.w); // copy tc + // o.tc0 = unpack_tc_base (v.tc); // copy tc + o.color = calc_point(o.tc1, o.tc2, v.P, unpack_normal(v.N)); // just hemisphere + + return o; +} diff --git a/gamedata/shaders/r1/vert_spot.vs.hlsl b/gamedata/shaders/r1/vert_spot.vs.hlsl new file mode 100644 index 0000000..24ba8bd --- /dev/null +++ b/gamedata/shaders/r1/vert_spot.vs.hlsl @@ -0,0 +1,13 @@ +#include "common.hlsli" + +vf_spot main(v_vert v) +{ + vf_spot o; + + o.hpos = mul(m_VP, v.P); // xform, input in world coords + o.tc0 = unpack_tc_base(v.uv, v.T.w, v.B.w); // copy tc + // o.tc0 = unpack_tc_base (v.tc); // copy tc + o.color = calc_spot(o.tc1, o.tc2, v.P, unpack_normal(v.N)); // just hemisphere + + return o; +} diff --git a/gamedata/shaders/r1/water.ps.hlsl b/gamedata/shaders/r1/water.ps.hlsl new file mode 100644 index 0000000..bc7a57b --- /dev/null +++ b/gamedata/shaders/r1/water.ps.hlsl @@ -0,0 +1,56 @@ +#include "common.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tbase : TEXCOORD0; // base + float2 tnorm0 : TEXCOORD1; // nm0 + float2 tnorm1 : TEXCOORD2; // nm1 + float3 M1 : TEXCOORD3; + float3 M2 : TEXCOORD4; + float3 M3 : TEXCOORD5; + float3 v2point : TEXCOORD6; + float4 c0 : COLOR0; + float fog : FOG; +}; + +uniform sampler2D s_nmap; +uniform samplerCUBE s_env0; +uniform samplerCUBE s_env1; + +float4 main(vf I) : COLOR +{ + float4 base = tex2D(s_base, I.tbase); + float3 n0 = tex2D(s_nmap, I.tnorm0); + float3 n1 = tex2D(s_nmap, I.tnorm1); + float3 Navg = n0 + n1 - 1.0f; + + float3 Nw = mul(float3x3(I.M1, I.M2, I.M3), Navg); + Nw = normalize(Nw); + + float3 v2point = normalize(I.v2point); + float3 vreflect = reflect(v2point, Nw); + float fresnel = saturate(dot(vreflect, v2point)); + float3 vreflectabs = abs(vreflect); + float vreflectmax = max(vreflectabs.x, max(vreflectabs.y, vreflectabs.z)); + vreflect /= vreflectmax; + vreflect.y = vreflect.y * 2.0f - 1.0f; + + float3 env0 = texCUBE(s_env0, vreflect); + float3 env1 = texCUBE(s_env1, vreflect); + float3 env = lerp(env0, env1, L_ambient.w); + + float power = pow(fresnel, 9); + float amount = 0.55f + 0.25f * power; // 1=full env, 0=no env // 1=full env, 0=no env + float alpha = 0.75f + 0.25f * power; // 1=full env, 0=no env + float3 c_reflection = env * amount; + float3 final = lerp(c_reflection, base.rgb, base.a); + final *= I.c0 * 2; + + // Fogging + float fog = 1.0f - I.c0.w; + final = lerp(final, fog_color.xyz, fog); + alpha *= 1.0f - fog * fog; + + return float4(final, alpha); +} diff --git a/gamedata/shaders/r1/water.vs.hlsl b/gamedata/shaders/r1/water.vs.hlsl new file mode 100644 index 0000000..7eaa16a --- /dev/null +++ b/gamedata/shaders/r1/water.vs.hlsl @@ -0,0 +1,76 @@ +#include "common.hlsli" +#include "shared\waterconfig.hlsli" +#include "shared\watermove.hlsli" + +struct v_vertx +{ + float4 P : POSITION; // (float,float,float,1) + float4 N : NORMAL; // (nx,ny,nz,hemi occlusion) + float4 T : TANGENT; + float4 B : BINORMAL; + float4 color : COLOR0; // (r,g,b,dir-occlusion) + float2 uv : TEXCOORD0; // (u0,v0) +}; + +struct vf +{ + float4 hpos : POSITION; + float2 tbase : TEXCOORD0; // base + float2 tnorm0 : TEXCOORD1; // nm0 + float2 tnorm1 : TEXCOORD2; // nm1 + float3 M1 : TEXCOORD3; + float3 M2 : TEXCOORD4; + float3 M3 : TEXCOORD5; + float3 v2point : TEXCOORD6; + float4 c0 : COLOR0; + float fog : FOG; +}; + +vf main(v_vertx v) +{ + vf o; + + float4 P = v.P; // world + float3 NN = unpack_normal(v.N); + P = watermove(P); + + o.v2point = P - eye_position; + o.tbase = unpack_tc_base(v.uv, v.T.w, v.B.w); // copy tc + o.tnorm0 = watermove_tc(o.tbase * W_DISTORT_BASE_TILE_0, P.xz, W_DISTORT_AMP_0); + o.tnorm1 = watermove_tc(o.tbase * W_DISTORT_BASE_TILE_1, P.xz, W_DISTORT_AMP_1); + + // Calculate the 3x3 transform from tangent space to eye-space + // TangentToEyeSpace = object2eye * tangent2object + // = object2eye * transpose(object2tangent) (since the inverse of a rotation is its transpose) + float3 N = unpack_bx2(v.N); // just scale (assume normal in the -.5f, .5f) + float3 T = unpack_bx2(v.T); // + float3 B = unpack_bx2(v.B); // + float3x3 xform = mul((float3x3)m_W, + float3x3(T.x, B.x, N.x, + T.y, B.y, N.y, + T.z, B.z, N.z)); + // The pixel shader operates on the bump-map in [0..1] range + // Remap this range in the matrix, anyway we are pixel-shader limited :) + // ...... [ 2 0 0 0] + // ...... [ 0 2 0 0] + // ...... [ 0 0 2 0] + // ...... [-1 -1 -1 1] + // issue: strange, but it's slower :( + // issue: interpolators? dp4? VS limited? black magic? + + // Feed this transform to pixel shader + o.M1 = xform[0]; + o.M2 = xform[1]; + o.M3 = xform[2]; + + float3 L_rgb = v.color.xyz; // precalculated RGB lighting + float3 L_hemi = v_hemi(N) * v.N.w; // hemisphere + float3 L_sun = v_sun(N) * v.color.w; // sun + float3 L_final = L_rgb + L_hemi + L_sun + L_ambient; + + o.hpos = mul(m_VP, P); // xform, input in world coords + o.fog = calc_fogging(v.P); + o.c0 = float4(L_final, o.fog); + + return o; +} diff --git a/gamedata/shaders/r1/waterd.ps.hlsl b/gamedata/shaders/r1/waterd.ps.hlsl new file mode 100644 index 0000000..bf65920 --- /dev/null +++ b/gamedata/shaders/r1/waterd.ps.hlsl @@ -0,0 +1,30 @@ +#include "common.hlsli" +#include "shared\waterconfig.hlsli" + +struct v2p +{ + float2 tbase : TEXCOORD0; // base + float2 tdist0 : TEXCOORD1; // d0 + float2 tdist1 : TEXCOORD2; // d1 +}; + +uniform sampler2D s_distort0; +uniform sampler2D s_distort1; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 t_base = tex2D(s_base, I.tbase); + + float2 t_d0 = tex2D(s_distort0, I.tdist0); + float2 t_d1 = tex2D(s_distort1, I.tdist1); + float2 distort = (t_d0 + t_d1) * 0.5f; // average + float2 zero = float2(0.5f, 0.5f); + float2 faded = lerp(distort, zero, t_base.a); + + float2 faded_bx2 = (faded * 2.0f - 1.0f) * W_DISTORT_POWER; + float faded_dot = dot(float3(faded_bx2, 0.0f), 0.75f); // 0.75 + float alpha = 0.5f; // abs (faded_dot); + // out + return float4(faded, 0.0f, alpha); +} diff --git a/gamedata/shaders/r1/waterd.vs.hlsl b/gamedata/shaders/r1/waterd.vs.hlsl new file mode 100644 index 0000000..4321306 --- /dev/null +++ b/gamedata/shaders/r1/waterd.vs.hlsl @@ -0,0 +1,27 @@ +#include "common.hlsli" +#include "shared\waterconfig.hlsli" +#include "shared\watermove.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tbase : TEXCOORD0; + float2 tdist0 : TEXCOORD1; + float2 tdist1 : TEXCOORD2; +}; + +vf main(v_vert v) +{ + vf o; + + float4 P = v.P; + float3 N = unpack_normal(v.N); + P = watermove(P); + + o.tbase = unpack_tc_base(v.uv, v.T.w, v.B.w); // copy tc + o.tdist0 = watermove_tc(o.tbase * W_DISTORT_BASE_TILE_0, P.xz, W_DISTORT_AMP_0); + o.tdist1 = watermove_tc(o.tbase * W_DISTORT_BASE_TILE_1, P.xz, W_DISTORT_AMP_1); + o.hpos = mul(m_VP, P); // xform, input in world coords + + return o; +} diff --git a/gamedata/shaders/r1/wmark.ps.hlsl b/gamedata/shaders/r1/wmark.ps.hlsl new file mode 100644 index 0000000..d1544e0 --- /dev/null +++ b/gamedata/shaders/r1/wmark.ps.hlsl @@ -0,0 +1,20 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float4 c0 : COLOR0; + float fog : FOG; +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 t_base = tex2D(s_base, I.tc0); + float4 final = t_base * I.c0 * 2; + final.w = t_base.w * I.c0.w; + final.w *= I.fog; + + // out + return final; +} diff --git a/gamedata/shaders/r1/wmark.vs.hlsl b/gamedata/shaders/r1/wmark.vs.hlsl new file mode 100644 index 0000000..3c489b8 --- /dev/null +++ b/gamedata/shaders/r1/wmark.vs.hlsl @@ -0,0 +1,65 @@ +#include "common.hlsli" +#include "shared\wmark.hlsli" + +// for multiplicative decal + +// For alpha-blend decal +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; + float4 c0 : COLOR0; // c0=all lighting + float fog : FOG; +}; + +vf main(v_vert v) +{ + vf o; + + float3 N = unpack_normal(v.N); + float4 P = wmark_shift(v.P, N); + o.hpos = mul(m_VP, P); // xform, input in world coords + o.tc0 = unpack_tc_base(v.uv, v.T.w, v.B.w); // copy tc + + float3 L_rgb = v.color.xyz; // precalculated RGB lighting + float3 L_hemi = v_hemi(N) * v.N.w; // hemisphere + float3 L_sun = v_sun(N) * v.color.w; // sun + float3 L_final = L_rgb + L_hemi + L_sun + L_ambient; + + o.c0.rgb = L_final; + o.c0.a = calc_fogging(P); // fog, input in world coords + o.fog = 1; // fog, input in world coords + + return o; +} + +/* +// For alpha-blend decal +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; + float3 c0 : COLOR0; // c0=all lighting + float fog : FOG; +}; + +vf main (v_vert v) +{ + vf o; + + float3 N = unpack_normal (v.N); + float4 P = wmark_shift (v.P,N); + o.hpos = mul (m_VP, P); // xform, input in world coords + o.tc0 = unpack_tc_base (v.uv,v.T.w,v.B.w); // copy tc + + float3 L_rgb = v.color.xyz; // precalculated RGB lighting + float3 L_hemi = v_hemi(N)*v.N.w; // hemisphere + float3 L_sun = v_sun(N)*v.color.w; // sun + float3 L_final = L_rgb + L_hemi + L_sun + L_ambient; + + o.c0 = L_final; + o.fog = calc_fogging (P); // fog, input in world coords + + return o; +} +*/ diff --git a/gamedata/shaders/r1/wmark_point.vs.hlsl b/gamedata/shaders/r1/wmark_point.vs.hlsl new file mode 100644 index 0000000..e5ff46f --- /dev/null +++ b/gamedata/shaders/r1/wmark_point.vs.hlsl @@ -0,0 +1,15 @@ +#include "common.hlsli" +#include "shared\wmark.hlsli" + +vf_point main(v_vert v) +{ + vf_point o; + + float3 N = unpack_normal(v.N); + float4 P = wmark_shift(v.P, N); + o.hpos = mul(m_VP, P); // xform, input in world coords + o.tc0 = unpack_tc_base(v.uv, v.T.w, v.B.w); // copy tc + o.color = calc_point(o.tc1, o.tc2, P, N); // just hemisphere + + return o; +} diff --git a/gamedata/shaders/r1/wmark_spot.vs.hlsl b/gamedata/shaders/r1/wmark_spot.vs.hlsl new file mode 100644 index 0000000..5a8e3f5 --- /dev/null +++ b/gamedata/shaders/r1/wmark_spot.vs.hlsl @@ -0,0 +1,15 @@ +#include "common.hlsli" +#include "shared\wmark.hlsli" + +vf_spot main(v_vert v) +{ + vf_spot o; + + float3 N = unpack_normal(v.N); + float4 P = wmark_shift(v.P, N); + o.hpos = mul(m_VP, P); // xform, input in world coords + o.tc0 = unpack_tc_base(v.uv, v.T.w, v.B.w); // copy tc + o.color = calc_spot(o.tc1, o.tc2, P, N); // just hemisphere + + return o; +} diff --git a/gamedata/shaders/r1/wmarkmult.ps.hlsl b/gamedata/shaders/r1/wmarkmult.ps.hlsl new file mode 100644 index 0000000..2a4ce55 --- /dev/null +++ b/gamedata/shaders/r1/wmarkmult.ps.hlsl @@ -0,0 +1,15 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float4 c0 : COLOR0; // c0=all lighting +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 res = tex2D(s_base, I.tc0); + res = lerp(0.5f, res, I.c0.a); + return res; +} diff --git a/gamedata/shaders/r1/yuv2rgb.ps.hlsl b/gamedata/shaders/r1/yuv2rgb.ps.hlsl new file mode 100644 index 0000000..96350c1 --- /dev/null +++ b/gamedata/shaders/r1/yuv2rgb.ps.hlsl @@ -0,0 +1,25 @@ +#include "common.hlsli" + +float4 main(float2 uv : TEXCOORD0) : COLOR +{ + float3 YUV = tex2D(s_base, uv); + + float Y = YUV.x; + float U = YUV.y; + float V = YUV.z; + + /* + float _T = 1.16406f*Y; + float R1 = _T + 1.59765f*V - 0.86961f; + float G1 = _T - 0.390625f*U - 0.8125f*V + 0.53076f; + float B1 = _T + 2.01562f*U - 1.0786f; + */ + + float c = 1.16406f; + float3 _Y = float3(c, c, c) * Y; + float3 _U = float3(0.0f, -0.390625f, +2.01562f) * U; + float3 _V = float3(+1.59765f, -0.8125f, 0.0f) * V; + float3 _S = float3(-0.86961f, +0.53076f, -1.0786f); + + return float4(_Y + _U + _V + _S, 1.0f); +} diff --git a/gamedata/shaders/r2/.lua b/gamedata/shaders/r2/.lua new file mode 100644 index 0000000..af790cb --- /dev/null +++ b/gamedata/shaders/r2/.lua @@ -0,0 +1,38 @@ +function printf(fmt, ...) + log(string.format(fmt, unpack(arg))) +end + +--[[ +t_point_att = "internal\\internal_light_attpoint" + +function r1_lspot (shader, t_base, vs, aref) + shader:begin (vs,"add_spot") + : fog (false) + : zb (true,false) + : blend (true,blend.one,blend.one) + : aref (true,aref or 0) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_lmap") :texture ("internal\\internal_light_att") + : clamp () + : f_linear () + : project (true) + shader:sampler ("s_att") :texture ("internal\\internal_light_attclip") + : clamp () + : f_linear () +end + +function r1_lpoint (shader, t_base, vs, aref) + shader:begin (vs,"add_point") + : fog (false) + : zb (true,false) + : blend (true,blend.one,blend.one) + : aref (true,aref or 0) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_lmap") :texture (t_point_att) + : clamp () + : f_linear () + shader:sampler ("s_att") :texture (t_point_att) + : clamp () + : f_linear () +end +]] -- diff --git a/gamedata/shaders/r2/accum_base.ps.hlsl b/gamedata/shaders/r2/accum_base.ps.hlsl new file mode 100644 index 0000000..e3941a4 --- /dev/null +++ b/gamedata/shaders/r2/accum_base.ps.hlsl @@ -0,0 +1,51 @@ +#include "common.hlsli" +#include "lmodel.hlsli" +#include "shadow.hlsli" + +////////////////////////////////////////////////////////////////////////////////////////// +// This is the basic primitive used by convex, volumetric lights +// for example spot-lights, one face of the omni lights, etc. +////////////////////////////////////////////////////////////////////////////////////////// +// following options are available to configure compilation: +// USE_LMAP +// USE_LMAPXFORM +// USE_SHADOW +////////////////////////////////////////////////////////////////////////////////////////// + +uniform float4 m_lmap[2]; + +float4 main(float4 tc : TEXCOORD0, float4 tcJ : TEXCOORD1) : COLOR +{ + float4 _P = tex2Dproj(s_position, tc); + float4 _N = tex2Dproj(s_normal, tc); + + _P.xyz += normalize(_N.xyz) * 0.025f; + + float m = xmaterial; +#ifndef USE_R2_STATIC_SUN + m = _P.w; +#endif + // ----- light-model + float rsqr; + float4 light = plight_local(m, _P, _N, Ldynamic_pos, Ldynamic_pos.w, rsqr); + + // ----- shadow + float4 P4 = float4(_P.x, _P.y, _P.z, 1.0f); + float4 PS = mul(m_shadow, P4); + float s = 1.0f; +#ifdef USE_SHADOW + s = shadow(PS); +#endif + + // ----- lightmap + float4 lightmap = 1.0f; +#ifdef USE_LMAP + #ifdef USE_LMAPXFORM + PS.x = dot(P4, m_lmap[0]); + PS.y = dot(P4, m_lmap[1]); + #endif + lightmap = tex2Dlod(s_lmap, float4(PS.xy / PS.w, 0.0f, 0.0f)); // +#endif + + return blendp(Ldynamic_color * light * s * lightmap, tc); +} diff --git a/gamedata/shaders/r2/accum_emissive.ps.hlsl b/gamedata/shaders/r2/accum_emissive.ps.hlsl new file mode 100644 index 0000000..6a5a8a6 --- /dev/null +++ b/gamedata/shaders/r2/accum_emissive.ps.hlsl @@ -0,0 +1,6 @@ +#include "common.hlsli" + +float4 main(p_flat I) : COLOR +{ + return float4(1.0f, 1.0f, 1.0f, 1.0f) * 16.0f; +} diff --git a/gamedata/shaders/r2/accum_emissivel.ps.hlsl b/gamedata/shaders/r2/accum_emissivel.ps.hlsl new file mode 100644 index 0000000..ba85a5e --- /dev/null +++ b/gamedata/shaders/r2/accum_emissivel.ps.hlsl @@ -0,0 +1,6 @@ +#include "common.hlsli" + +float4 main(p_flat I) : COLOR +{ + return float4(1.0f, 1.0f, 1.0f, 0.0f) * 1.0f; +} diff --git a/gamedata/shaders/r2/accum_indirect.ps.hlsl b/gamedata/shaders/r2/accum_indirect.ps.hlsl new file mode 100644 index 0000000..035626e --- /dev/null +++ b/gamedata/shaders/r2/accum_indirect.ps.hlsl @@ -0,0 +1,22 @@ +#include "common.hlsli" +#include "lmodel.hlsli" + +// Pixel +// Note: this is a float-sphere +uniform float3 direction; + +float4 main(float4 tc : TEXCOORD0) : COLOR +{ + float4 _P = tex2Dproj(s_position, tc); + float4 _N = tex2Dproj(s_normal, tc); + + float3 L2P = _P.xyz - Ldynamic_pos.xyz; // light2point + float3 L2P_N = normalize(L2P); // light2point + float rsqr = dot(L2P, L2P); // distance 2 light (squared) + float att = saturate(1.0f - rsqr * Ldynamic_pos.w); // q-linear attenuate + float light = saturate(dot(-L2P_N, _N.xyz)); + float hemi = saturate(dot(L2P_N, direction)); + + // Final color + return blendp(float4(Ldynamic_color.xyz * att * light * hemi, 0.0f), tc); +} diff --git a/gamedata/shaders/r2/accum_mask.vs.hlsl b/gamedata/shaders/r2/accum_mask.vs.hlsl new file mode 100644 index 0000000..ba0d638 --- /dev/null +++ b/gamedata/shaders/r2/accum_mask.vs.hlsl @@ -0,0 +1,7 @@ +#include "common.hlsli" + +float4 main(float4 P : POSITION) : POSITION +{ + return mul(m_WVP, P); +} +FXVS; diff --git a/gamedata/shaders/r2/accum_sun.ps.hlsl b/gamedata/shaders/r2/accum_sun.ps.hlsl new file mode 100644 index 0000000..8ef4efa --- /dev/null +++ b/gamedata/shaders/r2/accum_sun.ps.hlsl @@ -0,0 +1,44 @@ +#include "common.hlsli" +#include "lmodel.hlsli" +#include "shadow.hlsli" + +float4 main(float4 tc : TEXCOORD0, float4 tcJ : TEXCOORD1) : COLOR +{ + float4 _P = tex2Dproj(s_position, tc); + float4 _N = tex2Dproj(s_normal, tc); + _P.xyz += normalize(_N.xyz) * 0.015f; + + // ----- light-model + float m = xmaterial; +#ifndef USE_R2_STATIC_SUN + m = _P.w; +#endif + float4 light = plight_infinity(m, _P, _N, Ldynamic_dir); + + // ----- shadow + float4 P4 = float4(_P.x, _P.y, _P.z, 1.0f); + float4 PS = mul(m_shadow, P4); + float s = 1.0f; +#if SUN_QUALITY == 2 + #ifndef USE_FAR_ATTENTION + s *= shadow_high(PS); + #else + s *= shadowtest_sun(PS, float4(0, 0, 0, 0)); + #endif +#else + s *= shadow(PS); +#endif + +#ifdef USE_FAR_ATTENTION + // Far edge fading code + float3 tc_f = abs(PS.xyz / PS.w - float3(0.5f, 0.5f, 0.5f)); + + float3 border = 0.4f; + float3 fac = 1.0f - saturate((tc_f - border) / (0.5f - border)); + + s = lerp(s, 1.0f, 1.0f - fac.x * fac.y * fac.z); +#endif + + s *= sunmask(P4); + return blend(Ldynamic_color * light * s, tc); +} diff --git a/gamedata/shaders/r2/accum_sun_mask.ps.hlsl b/gamedata/shaders/r2/accum_sun_mask.ps.hlsl new file mode 100644 index 0000000..4defa0f --- /dev/null +++ b/gamedata/shaders/r2/accum_sun_mask.ps.hlsl @@ -0,0 +1,11 @@ +#include "common.hlsli" + +#define EPS (0.9f / 255.f) + +float4 main(p_screen I) : COLOR +{ + // Sample the fat framebuffer: + float4 NH = tex2D(s_normal, I.tc0); + float L = dot(Ldynamic_dir, (float3)NH) + EPS; // Use hemisphere as approximation of max light + return float4(L, L, L, L); +} diff --git a/gamedata/shaders/r2/accum_volume.vs.hlsl b/gamedata/shaders/r2/accum_volume.vs.hlsl new file mode 100644 index 0000000..20c5d3d --- /dev/null +++ b/gamedata/shaders/r2/accum_volume.vs.hlsl @@ -0,0 +1,20 @@ +#include "common.hlsli" + +struct v2p +{ + float4 hpos : POSITION; // Clip-space position (for rasterization) + float4 tc : TEXCOORD0; +}; + +// uniform float4x4 m_texgen; +uniform float4x4 m_texgen_J; + +// Vertex +v2p main(float4 P : POSITION) +{ + v2p O; + O.hpos = mul(m_WVP, P); + O.tc = mul(m_texgen, P); + return O; +} +FXVS; diff --git a/gamedata/shaders/r2/accum_volumetric.lua b/gamedata/shaders/r2/accum_volumetric.lua new file mode 100644 index 0000000..73801c5 --- /dev/null +++ b/gamedata/shaders/r2/accum_volumetric.lua @@ -0,0 +1,12 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("accum_volumetric", "accum_volumetric") + :fog(false) + :zb(true, false) + :blend(true, blend.one, blend.one) + -- : aref (true,0) + :sorting(2, false) + shader:sampler("s_lmap"):texture(t_base):clamp() + shader:sampler("s_smap"):texture("null") + -- shader:sampler ("s_noise") :texture("fx\\fx_noise2") : f_linear () + shader:sampler("s_noise"):texture("fx\\fx_noise"):f_linear() +end diff --git a/gamedata/shaders/r2/accum_volumetric.ps.hlsl b/gamedata/shaders/r2/accum_volumetric.ps.hlsl new file mode 100644 index 0000000..caf68cd --- /dev/null +++ b/gamedata/shaders/r2/accum_volumetric.ps.hlsl @@ -0,0 +1,76 @@ +#include "common.hlsli" +#include "shadow.hlsli" + +struct v2p +{ + float3 lightToPos : TEXCOORD0; // light center to plane vector + float3 vPos : TEXCOORD1; // position in camera space + float fDensity : TEXCOORD2; // plane density alon Z axis + // float2 tNoise : TEXCOORD3; // projective noise +}; + +uniform float4 m_lmap[2]; +uniform sampler2D s_noise; + +#define USE_LMAP +#define USE_LMAPXFORM +#define USE_SHADOW + +// Pixel +float4 main(v2p I) : COLOR +{ + // ----- shadow + float4 P4 = float4(I.vPos, 1.0f); + float4 PS = mul(m_shadow, P4); + float s = 1.0f; +#ifdef USE_SHADOW + s = shadow(PS); +#endif + + // ----- lightmap + float4 lightmap = 1.0f; +#ifdef USE_LMAP + #ifdef USE_LMAPXFORM + PS.x = dot(P4, m_lmap[0]); + PS.y = dot(P4, m_lmap[1]); + #endif + lightmap = tex2Dproj(s_lmap, PS); // +#endif + + // ----- attenuate + float rsqr = dot(I.lightToPos, I.lightToPos); // distance 2 light (squared) + float att = saturate(1 - rsqr * Ldynamic_pos.w); // q-linear attenuate + // float att = saturate( 1 - (rsqr * Ldynamic_pos.w)*(rsqr * Ldynamic_pos.w) ); // q-linear attenuate + // float att = 10*(1/(1+0.1*rsqr)); + // float att = 1.0h/rsqr; + // float att = 1.0h/rsqr-Ldynamic_pos.w; + // float att = 5*(sqrt(1.0h/rsqr)-sqrt(Ldynamic_pos.w)); + + // ----- noise + PS.xy /= PS.w; + float time = timers.z * 0.1f; + PS.xy /= 3; + PS.x += time; + float4 t_noise = tex2D(s_noise, PS); + PS.x -= time; + PS.y -= time * 0.70091f; + t_noise *= tex2D(s_noise, PS); + // t_noise *= 4; + t_noise = t_noise * 0.5f + 0.5f; + + // out + // float maxIntens = 1.0h/100.0h; + // float maxIntens = 1.0h/40.0h; + // float maxIntens = 1.0h/10.0h; + float maxIntens = I.fDensity; + float3 result = maxIntens * s * att; + result *= lightmap; + result *= Ldynamic_color * t_noise; + + // result = maxIntens; + // result *= lightmap; + + // result = 0.1h; + // result = 0.0h; + return float4(result, 0.0f); +} diff --git a/gamedata/shaders/r2/accum_volumetric.vs.hlsl b/gamedata/shaders/r2/accum_volumetric.vs.hlsl new file mode 100644 index 0000000..ef27a7d --- /dev/null +++ b/gamedata/shaders/r2/accum_volumetric.vs.hlsl @@ -0,0 +1,32 @@ +#include "common.hlsli" + +float3 vMinBounds; +float3 vMaxBounds; + +struct vf +{ + float4 hpos : POSITION; + float3 lightToPos : TEXCOORD0; // light center to plane vector + float3 vPos : TEXCOORD1; // position in camera space + float fDensity : TEXCOORD2; // plane density alon Z axis + // float2 tNoise : TEXCOORD3; // projective noise +}; + +vf main(v_static v) +{ + vf o; + float4 vPos; + vPos.xyz = lerp(vMinBounds, vMaxBounds, v.P); // Position in camera space + vPos.w = 1; + o.hpos = mul(m_P, vPos); // xform, input in camera coordinates + + o.lightToPos = vPos.xyz - Ldynamic_pos.xyz; + o.vPos = vPos; + + // o.fDensity = (vMaxBounds.z-vMinBounds.z)/2000.0h; + // o.fDensity = (vMaxBounds.z-vMinBounds.z)/2000.0h*2; + o.fDensity = 1.0h / 40.0h; + // o.fDensity = 1.0h/20.0h; + + return o; +} diff --git a/gamedata/shaders/r2/accum_volumetric_sun_cascade.lua b/gamedata/shaders/r2/accum_volumetric_sun_cascade.lua new file mode 100644 index 0000000..4938496 --- /dev/null +++ b/gamedata/shaders/r2/accum_volumetric_sun_cascade.lua @@ -0,0 +1,10 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("accum_volume", "accum_volumetric_sun_cascade") + :fog(false) + :zb(false, false) + :blend(true, blend.one, blend.one) + :sorting(2, false) + shader:sampler("s_smap"):texture("null") + shader:sampler("s_position"):texture("$user$position"):f_none() + shader:sampler("jitter0"):texture("$user$jitter_0"):f_none() +end diff --git a/gamedata/shaders/r2/accum_volumetric_sun_cascade.ps.hlsl b/gamedata/shaders/r2/accum_volumetric_sun_cascade.ps.hlsl new file mode 100644 index 0000000..6df3ec2 --- /dev/null +++ b/gamedata/shaders/r2/accum_volumetric_sun_cascade.ps.hlsl @@ -0,0 +1,108 @@ +// Allow dynamic branching usage for HW PCF support +#ifdef USE_HWSMAP_PCF + #define SUNSHAFTS_DYNAMIC +#endif // USE_HWSMAP_PCF + +#include "common.hlsli" +#include "shadow.hlsli" + +#define RAY_PATH 2.0h +#define JITTER_TEXTURE_SIZE 64.0f + +#define JITTER_SUN_SHAFTS + +#ifdef SUN_SHAFTS_QUALITY + #if SUN_SHAFTS_QUALITY == 1 + #define FILTER_LOW + #define RAY_SAMPLES 20 + #elif SUN_SHAFTS_QUALITY == 2 + #define FILTER_LOW + #define RAY_SAMPLES 30 + #elif SUN_SHAFTS_QUALITY == 3 + #define FILTER_LOW + #define RAY_SAMPLES 40 + #endif +#endif + +float4 volume_range; // x - near plane, y - far plane +float4 sun_shafts_intensity; + +uniform float4 screen_res; +// #ifdef USE_BRANCHING +// "If" in loop + +float4 main(float2 tc : TEXCOORD0) : COLOR +{ +#ifndef SUN_SHAFTS_QUALITY + return float4(0.0f, 0.0f, 0.0f, 0.0f); +#else // SUN_SHAFTS_QUALITY + + float3 P = tex2D(s_position, tc).xyz; +#ifndef JITTER_SUN_SHAFTS + // Fixed ray length, fixed step dencity + // float3 direction = (RAY_PATH/RAY_SAMPLES)*normalize(P); + // Variable ray length, variable step dencity + float3 direction = P / RAY_SAMPLES; +#else // JITTER_SUN_SHAFTS + // Variable ray length, variable step dencity, use jittering + float4 J0 = tex2D(jitter0, float4(screen_res.x / JITTER_TEXTURE_SIZE * tc, 0.0f, 0.0f)); // tcJ); + float coeff = (RAY_SAMPLES - 1.0f * J0.x) / (RAY_SAMPLES * RAY_SAMPLES); + float3 direction = P * coeff; +#endif // JITTER_SUN_SHAFTS + + float depth = P.z; + float deltaDepth = direction.z; + + float4 current = mul(m_shadow, float4(P, 1.0f)); + float4 delta = mul(m_shadow, float4(direction, 0.0f)); + + float res = 0.0f; + float max_density = sun_shafts_intensity; + float density = max_density / RAY_SAMPLES; + + if (depth < 0.0001) + { + res = max_density; + } + + #ifndef SUNSHAFTS_DYNAMIC + for (int i = 0; i < RAY_SAMPLES; ++i) + { + if (depth > 0.3) + #ifndef FILTER_LOW + res += density * shadow_volumetric(current); + #else // FILTER_LOW + res += density * sample_hw_pcf(current, float4(0, 0, 0, 0)); + #endif // FILTER_LOW + depth -= deltaDepth; + current -= delta; + } + #else + int n = (int)((P.z - 0.3) / deltaDepth); + for (int i = 0; i < n; ++i) + { + #ifndef FILTER_LOW + res += density * shadow_volumetric(current); + #else // FILTER_LOW + res += density * sample_hw_pcf(current, float4(0, 0, 0, 0)); + #endif // FILTER_LOW + depth -= deltaDepth; + current -= delta; + } + #endif + + // float fSturation = -dot(Ldynamic_dir, float3(0,0,1)); + float fSturation = -Ldynamic_dir.z; + + // Normalize dot product to + fSturation = 0.5 * fSturation + 0.5; + // Map saturation to 0.2..1 + fSturation = 0.80 * fSturation + 0.20; + + float fog = saturate(length(P.xyz) * fog_params.w + fog_params.x); + res = lerp(res, max_density, fog); + res *= fSturation; + + return res * Ldynamic_color * 1.0; +#endif // SUN_SHAFTS_QUALITY +} diff --git a/gamedata/shaders/r2/avg4.ps.hlsl b/gamedata/shaders/r2/avg4.ps.hlsl new file mode 100644 index 0000000..0256661 --- /dev/null +++ b/gamedata/shaders/r2/avg4.ps.hlsl @@ -0,0 +1,26 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float2 tc1 : TEXCOORD1; // base + float2 tc2 : TEXCOORD2; // base + float2 tc3 : TEXCOORD3; // base +}; + +uniform sampler2D s_base0; +uniform sampler2D s_base1; +uniform sampler2D s_base2; +uniform sampler2D s_base3; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 t_0 = tex2D(s_base0, I.tc0); + float4 t_1 = tex2D(s_base1, I.tc1); + float4 t_2 = tex2D(s_base2, I.tc2); + float4 t_3 = tex2D(s_base3, I.tc3); + + // out + return ((t_0 + t_1) * 0.5f + (t_2 + t_3) * 0.5f) * 0.5f; +} diff --git a/gamedata/shaders/r2/base_lplanes.ps.hlsl b/gamedata/shaders/r2/base_lplanes.ps.hlsl new file mode 100644 index 0000000..26d3f22 --- /dev/null +++ b/gamedata/shaders/r2/base_lplanes.ps.hlsl @@ -0,0 +1,17 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float2 tc1 : TEXCOORD1; // lmap + float4 c0 : COLOR0; // sun +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 t_base = tex2D(s_base, I.tc0); + + // out + return float4(t_base.r, t_base.g, t_base.b, t_base.a * I.c0.a); +} diff --git a/gamedata/shaders/r2/base_lplanes.vs.hlsl b/gamedata/shaders/r2/base_lplanes.vs.hlsl new file mode 100644 index 0000000..d285989 --- /dev/null +++ b/gamedata/shaders/r2/base_lplanes.vs.hlsl @@ -0,0 +1,24 @@ +#include "common.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; // base + float4 c0 : COLOR0; // color +}; + +vf main(v_static v) +{ + vf o; + + o.hpos = mul(m_WVP, v.P); // xform, input in world coords + o.tc0 = unpack_tc_base(v.tc, v.T.w, v.B.w); // copy tc + + // calculate fade + float3 dir_v = normalize(mul(m_WV, v.P)); + float3 norm_v = normalize(mul(m_WV, unpack_normal(v.Nh))); + float fade = abs(dot(dir_v, norm_v)); + o.c0 = fade; + + return o; +} diff --git a/gamedata/shaders/r2/base_lplanes_fft.ps.hlsl b/gamedata/shaders/r2/base_lplanes_fft.ps.hlsl new file mode 100644 index 0000000..2352dac --- /dev/null +++ b/gamedata/shaders/r2/base_lplanes_fft.ps.hlsl @@ -0,0 +1,33 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0: TEXCOORD0; // base + float2 tc1: TEXCOORD1; // lmap + float4 c0: COLOR0; // sun +}; + +uniform float4 m_hud_params; // + +inline bool isCollimatorActive() +{ + return (m_hud_params.w == 1.f); +} + +////////////////////////////////////////////////////////////////////////////////////////// +// Pixel +float4 main ( v2p I ) : COLOR +{ + float4 t_base = tex2D (s_base,I.tc0); + + // out + + if(isCollimatorActive()) + { + return float4 (t_base.r,t_base.g,t_base.b,t_base.a * I.c0.a); + } + else + { + return float4 (t_base.r,t_base.g,t_base.b,t_base.a * 0.0f); + } +} diff --git a/gamedata/shaders/r2/bloom_build.ps.hlsl b/gamedata/shaders/r2/bloom_build.ps.hlsl new file mode 100644 index 0000000..7c0e20e --- /dev/null +++ b/gamedata/shaders/r2/bloom_build.ps.hlsl @@ -0,0 +1,26 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // Texture coordinates (for sampling maps) + float2 tc1 : TEXCOORD1; // Texture coordinates (for sampling maps) + float2 tc2 : TEXCOORD2; // Texture coordinates (for sampling maps) + float2 tc3 : TEXCOORD3; // Texture coordinates (for sampling maps) +}; + +uniform float4 b_params; + +// Pixel +float4 main(v2p I) : COLOR +{ + // hi-rgb.base-lum + float3 s0 = tex2D(s_image, I.tc0); + float3 s1 = tex2D(s_image, I.tc1); + float3 s2 = tex2D(s_image, I.tc2); + float3 s3 = tex2D(s_image, I.tc3); + + float3 avg = (s0 + s1 + s2 + s3) / (2.0f * def_hdr); + float hi = dot(avg, 1.0f) - b_params.x; // assume def_hdr equal to 3.0 + + return float4(avg, hi); +} diff --git a/gamedata/shaders/r2/bloom_filter.ps.hlsl b/gamedata/shaders/r2/bloom_filter.ps.hlsl new file mode 100644 index 0000000..4d8a3b9 --- /dev/null +++ b/gamedata/shaders/r2/bloom_filter.ps.hlsl @@ -0,0 +1,51 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // Central + float4 tc1 : TEXCOORD1; // -1,+1 + float4 tc2 : TEXCOORD2; // -2,+2 + float4 tc3 : TEXCOORD3; // -3,+3 + float4 tc4 : TEXCOORD4; // -4,+4 + float4 tc5 : TEXCOORD5; // -5,+5 + float4 tc6 : TEXCOORD6; // -6,+6 + float4 tc7 : TEXCOORD7; // -7,+7 +}; + +uniform float4 weight[2]; + +// Pixel +// Separable gauss filter: 2*7 + 1 + 7*2 = 29 samples +// Samples: 0-central, -1, -2,..., -7, 1, 2,... 7 +// Approximated i-count: 15t + 15a + 7a(d) + 1(out) = 38, HLSL compiled to 38 :) +float4 main(v2p I) : COLOR +{ + // central + float4 accum = weight[1].w * tex2D(s_bloom, I.tc0); + + // left (7) + // right (7) - no swizles on 'texld', so this is dep-read infact + accum += weight[0].x * tex2D(s_bloom, I.tc1.xy); + accum += weight[0].x * tex2D(s_bloom, I.tc1.wz); + + accum += weight[0].y * tex2D(s_bloom, I.tc2.xy); + accum += weight[0].y * tex2D(s_bloom, I.tc2.wz); + + accum += weight[0].z * tex2D(s_bloom, I.tc3.xy); + accum += weight[0].z * tex2D(s_bloom, I.tc3.wz); + + accum += weight[0].w * tex2D(s_bloom, I.tc4.xy); + accum += weight[0].w * tex2D(s_bloom, I.tc4.wz); + + accum += weight[1].x * tex2D(s_bloom, I.tc5.xy); + accum += weight[1].x * tex2D(s_bloom, I.tc5.wz); + + accum += weight[1].y * tex2D(s_bloom, I.tc6.xy); + accum += weight[1].y * tex2D(s_bloom, I.tc6.wz); + + accum += weight[1].z * tex2D(s_bloom, I.tc7.xy); + accum += weight[1].z * tex2D(s_bloom, I.tc7.wz); + + // OK + return accum; +} diff --git a/gamedata/shaders/r2/bloom_filter_f.ps.hlsl b/gamedata/shaders/r2/bloom_filter_f.ps.hlsl new file mode 100644 index 0000000..d47c57f --- /dev/null +++ b/gamedata/shaders/r2/bloom_filter_f.ps.hlsl @@ -0,0 +1,21 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float2 tc1 : TEXCOORD1; // base + float2 tc2 : TEXCOORD2; // base + float2 tc3 : TEXCOORD3; // base +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 t_0 = tex2D(s_bloom, I.tc0); + float4 t_1 = tex2D(s_bloom, I.tc1); + float4 t_2 = tex2D(s_bloom, I.tc2); + float4 t_3 = tex2D(s_bloom, I.tc3); + + // out + return (t_0 + t_1 + t_2 + t_3) / 2; +} diff --git a/gamedata/shaders/r2/bloom_luminance_1.ps.hlsl b/gamedata/shaders/r2/bloom_luminance_1.ps.hlsl new file mode 100644 index 0000000..81b2b50 --- /dev/null +++ b/gamedata/shaders/r2/bloom_luminance_1.ps.hlsl @@ -0,0 +1,39 @@ +#include "common.hlsli" + +struct v2p +{ + float4 tc0 : TEXCOORD0; // Central + float4 tc1 : TEXCOORD1; // -1,+1 + float4 tc2 : TEXCOORD2; // -2,+2 + float4 tc3 : TEXCOORD3; // -3,+3 + float4 tc4 : TEXCOORD4; // -4,+4 + float4 tc5 : TEXCOORD5; // -5,+5 + float4 tc6 : TEXCOORD6; // -6,+6 + float4 tc7 : TEXCOORD7; // -7,+7 +}; + +#define LUMINANCE_BASE 0.0001f + +float luminance(float2 tc) +{ + float3 source = tex2D(s_image, tc); + return dot(source, LUMINANCE_VECTOR * def_hdr); +} + +// perform 2x2=4s convolution, working on 4x4=16p area +// that means 256x256 source will be scaled to (256/4)x(256/4) = 64x64p +// a): 256x256 => 64x64p with log +// b): 64x64p => 8x8p +// c): 8x8p => 1x1p with exp +float4 main(v2p I) : COLOR +{ + // first 8 bilinear samples (8x4 = 32 pixels) + float4 final; + final.x = luminance(I.tc0); + final.y = luminance(I.tc1); + final.z = luminance(I.tc2); + final.w = luminance(I.tc3); + + // OK + return final; +} diff --git a/gamedata/shaders/r2/bloom_luminance_2.ps.hlsl b/gamedata/shaders/r2/bloom_luminance_2.ps.hlsl new file mode 100644 index 0000000..6a4ea4c --- /dev/null +++ b/gamedata/shaders/r2/bloom_luminance_2.ps.hlsl @@ -0,0 +1,73 @@ +#include "common.hlsli" + +struct v2p +{ + float4 tc0 : TEXCOORD0; // Central + float4 tc1 : TEXCOORD1; // -1,+1 + float4 tc2 : TEXCOORD2; // -2,+2 + float4 tc3 : TEXCOORD3; // -3,+3 + float4 tc4 : TEXCOORD4; // -4,+4 + float4 tc5 : TEXCOORD5; // -5,+5 + float4 tc6 : TEXCOORD6; // -6,+6 + float4 tc7 : TEXCOORD7; // -7,+7 +}; + +// perform 4x4 bilinear, 8x8p, the step (B) +// b): 64x64p => 8x8p +#ifdef FP16_FILTER +// native bilinear +float sample(float2 tc) +{ + return dot(tex2D(s_image, tc), 1.0f / 4.0f); // sum components +} +#else +// emulate bilinear +float sample(float2 tc) +{ + float pfloat = 0.5f / 64.0f; + float4 res; + res.x = dot(tex2D(s_image, tc + float2(-pfloat, -pfloat)), 1.0f / 4.0f); // sum components + res.y = dot(tex2D(s_image, tc + float2(+pfloat, -pfloat)), 1.0f / 4.0f); // sum components + res.z = dot(tex2D(s_image, tc + float2(-pfloat, +pfloat)), 1.0f / 4.0f); // sum components + res.w = dot(tex2D(s_image, tc + float2(+pfloat, +pfloat)), 1.0f / 4.0f); // sum components + return dot(res, 1.0f / 4.0f); // sum components +} +#endif + +float4 main(v2p I) : COLOR +{ + // sample + float4 accum0; + accum0.x = sample(I.tc0); + accum0.y = sample(I.tc1); + accum0.z = sample(I.tc2); + accum0.w = sample(I.tc3); + + float4 accum1; + accum1.x = sample(I.tc4); + accum1.y = sample(I.tc5); + accum1.z = sample(I.tc6); + accum1.w = sample(I.tc7); + + float4 accum2; + accum2.x = sample(I.tc0.wz); + accum2.y = sample(I.tc1.wz); + accum2.z = sample(I.tc2.wz); + accum2.w = sample(I.tc3.wz); + + float4 accum3; + accum3.x = sample(I.tc4.wz); + accum3.y = sample(I.tc5.wz); + accum3.z = sample(I.tc6.wz); + accum3.w = sample(I.tc7.wz); + + // perform accumulation + float4 final; + final.x = dot(accum0, 1 / 4.h); + final.y = dot(accum1, 1 / 4.h); + final.z = dot(accum2, 1 / 4.h); + final.w = dot(accum3, 1 / 4.h); + + // OK + return final; +} diff --git a/gamedata/shaders/r2/bloom_luminance_3.ps.hlsl b/gamedata/shaders/r2/bloom_luminance_3.ps.hlsl new file mode 100644 index 0000000..25f8c17 --- /dev/null +++ b/gamedata/shaders/r2/bloom_luminance_3.ps.hlsl @@ -0,0 +1,84 @@ +#include "common.hlsli" + +struct v2p +{ + float4 tc0 : TEXCOORD0; // Central + float4 tc1 : TEXCOORD1; // -1,+1 + float4 tc2 : TEXCOORD2; // -2,+2 + float4 tc3 : TEXCOORD3; // -3,+3 + float4 tc4 : TEXCOORD4; // -4,+4 + float4 tc5 : TEXCOORD5; // -5,+5 + float4 tc6 : TEXCOORD6; // -6,+6 + float4 tc7 : TEXCOORD7; // -7,+7 +}; + +uniform float4 MiddleGray; + +// perform 4x4 bilinear, 8x8p, the step (C) +// c): 8x8p => 1x1p with exp +#ifdef FP16_FILTER +// native bilinear +float sample(float2 tc) +{ + return dot(tex2D(s_image, tc), 1.0f / 4.0f); // sum components +} +#else +// emulate bilinear +float sample(float2 tc) +{ + float pfloat = 0.5f / 8.0f; + float4 res; + res.x = dot(tex2D(s_image, tc + float2(-pfloat, -pfloat)), 1.0f / 4.0f); // sum components + res.y = dot(tex2D(s_image, tc + float2(+pfloat, -pfloat)), 1.0f / 4.0f); // sum components + res.z = dot(tex2D(s_image, tc + float2(-pfloat, +pfloat)), 1.0f / 4.0f); // sum components + res.w = dot(tex2D(s_image, tc + float2(+pfloat, +pfloat)), 1.0f / 4.0f); // sum components + return dot(res, 1.0f / 4.0f); // sum components +} +#endif + +float4 main(v2p I) : COLOR +{ + // sample + float4 accum0; + accum0.x = sample(I.tc0); + accum0.y = sample(I.tc1); + accum0.z = sample(I.tc2); + accum0.w = sample(I.tc3); + + float4 accum1; + accum1.x = sample(I.tc4); + accum1.y = sample(I.tc5); + accum1.z = sample(I.tc6); + accum1.w = sample(I.tc7); + + float4 accum2; + accum2.x = sample(I.tc0.wz); + accum2.y = sample(I.tc1.wz); + accum2.z = sample(I.tc2.wz); + accum2.w = sample(I.tc3.wz); + + float4 accum3; + accum3.x = sample(I.tc4.wz); + accum3.y = sample(I.tc5.wz); + accum3.z = sample(I.tc6.wz); + accum3.w = sample(I.tc7.wz); + + // perform accumulation + float4 final; + final.x = dot(accum0, 1 / 4.h); + final.y = dot(accum1, 1 / 4.h); + final.z = dot(accum2, 1 / 4.h); + final.w = dot(accum3, 1 / 4.h); + float result = dot(final, 1 / 4.h); + + // OK + float scale = MiddleGray.x / (result * MiddleGray.y + MiddleGray.z); // final + float scale_prev = tex2D(s_tonemap, I.tc0).x; + float rvalue = lerp(scale_prev, scale, MiddleGray.w); + + // clamp (rvalue, 1.f/8.f, 2.0f); + + clamp(rvalue, 1.f / 128.f, 20.0f); + + return rvalue; +} diff --git a/gamedata/shaders/r2/chromatic_aberration.ps.hlsl b/gamedata/shaders/r2/chromatic_aberration.ps.hlsl new file mode 100644 index 0000000..dadd818 --- /dev/null +++ b/gamedata/shaders/r2/chromatic_aberration.ps.hlsl @@ -0,0 +1,15 @@ +#include "common.hlsli" + +uniform float4 screen_res; + +float4 main(p_shadow I) : COLOR +{ + float3 col; + float factor = saturate(distance(I.tc0, float2(0.5f, 0.5f))); + + col.r = tex2D(s_image, I.tc0 + float2(screen_res.z * factor, 0.0f)).r; + col.g = tex2D(s_image, I.tc0 + float2(-0.866f, -0.5f) * screen_res.zw * factor).g; + col.b = tex2D(s_image, I.tc0 + float2(0.866f, -0.5f) * screen_res.zw * factor).b; + + return float4(col, 1.0f); +} diff --git a/gamedata/shaders/r2/clouds.lua b/gamedata/shaders/r2/clouds.lua new file mode 100644 index 0000000..b51e665 --- /dev/null +++ b/gamedata/shaders/r2/clouds.lua @@ -0,0 +1,9 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("clouds", "clouds") + :fog(false) + :zb(false, false) + :sorting(3, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + shader:sampler("s_clouds0"):texture("null"):wrap():f_anisotropic() + shader:sampler("s_clouds1"):texture("null"):wrap():f_anisotropic() +end diff --git a/gamedata/shaders/r2/clouds.ps.hlsl b/gamedata/shaders/r2/clouds.ps.hlsl new file mode 100644 index 0000000..168b61f --- /dev/null +++ b/gamedata/shaders/r2/clouds.ps.hlsl @@ -0,0 +1,20 @@ +#include "common.hlsli" + +struct v2p +{ + float4 color : COLOR0; + float2 tc0 : TEXCOORD0; + float2 tc1 : TEXCOORD1; +}; + +uniform sampler2D s_clouds0 : register(s0); +uniform sampler2D s_clouds1 : register(s1); + +float4 main(v2p I) : COLOR +{ + float4 s0 = tex2D(s_clouds0, I.tc0); + float4 s1 = tex2D(s_clouds1, I.tc1); + float4 mix = I.color * (s0 + s1); + + return mix; +} diff --git a/gamedata/shaders/r2/clouds.vs.hlsl b/gamedata/shaders/r2/clouds.vs.hlsl new file mode 100644 index 0000000..3a869bd --- /dev/null +++ b/gamedata/shaders/r2/clouds.vs.hlsl @@ -0,0 +1,31 @@ +#include "common.hlsli" +#include "shared\cloudconfig.hlsli" + +struct vi +{ + float4 p : POSITION; + float4 dir : COLOR0; // dir0,dir1(w<->z) + float4 color : COLOR1; // rgb. intensity +}; + +struct vf +{ + float4 hpos : POSITION; + float4 color : COLOR0; + float2 tc0 : TEXCOORD0; + float2 tc1 : TEXCOORD1; +}; + +void main(in vi v, out vf o) +{ + o.hpos = mul(m_WVP, v.p); + + float2 d0 = v.dir.xy * 2.0f - 1.0f; + float2 d1 = v.dir.wz * 2.0f - 1.0f; + + o.tc0 = v.p.xz * CLOUD_TILE0 + d0 * timers.z * CLOUD_SPEED0; + o.tc1 = v.p.xz * CLOUD_TILE1 + d1 * timers.z * CLOUD_SPEED1; + + o.color = v.color; + o.color.w *= pow(v.p.y, 25); +} diff --git a/gamedata/shaders/r2/combine_1.ps.hlsl b/gamedata/shaders/r2/combine_1.ps.hlsl new file mode 100644 index 0000000..32d8e7f --- /dev/null +++ b/gamedata/shaders/r2/combine_1.ps.hlsl @@ -0,0 +1,63 @@ +#include "common.hlsli" + +uniform sampler2D s_half_depth; +uniform float3x4 m_v2w; + +#include "lmodel.hlsli" +#include "hmodel.hlsli" + +#include "ssao_blur.ps.hlsl" +#include "ssao.ps.hlsl" + +struct _input +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; + float2 tcJ : TEXCOORD1; +}; + +float4 main(_input I) : COLOR0 +{ + // Sample the buffers: + float4 P = tex2D(s_position, I.tc0); // position.(mtl or sun) + float4 N = tex2D(s_normal, I.tc0); // normal.hemi + float4 D = tex2D(s_diffuse, I.tc0); // rgb.gloss + float4 L = tex2D(s_accumulator, I.tc0); // diffuse.specular + +#ifdef USE_GAMMA_22 + D.rgb = (D.rgb * D.rgb); +#endif + + // static sun + float mtl = P.w; +#ifdef USE_R2_STATIC_SUN + float sun_occ = P.w * 2.0f; + mtl = xmaterial; + L += Ldynamic_color * sun_occ * plight_infinity(mtl, P.xyz, N.xyz, Ldynamic_dir); +#endif + + // Calculate SSAO +// #ifdef USE_SSAO_BLUR +// float occ = ssao_blur_ps(I.tc0); + float occ = calc_ssao(P, N, I.tc0, I.tcJ); + + float3 hdiffuse, hspecular; + hmodel(hdiffuse, hspecular, mtl, N.w, D.w, P.xyz, N.xyz); + + hdiffuse *= occ; + hspecular *= occ; + + float4 light = float4(L.xyz + hdiffuse, L.w); + float4 C = D * light; + float3 spec = C.www + hspecular; + spec *= 0.4f; + + float3 color = C.xyz + spec; + + // here should be distance fog + float distance = length(P.xyz); + float fog = saturate(distance * fog_params.w + fog_params.x); + color = lerp(color, fog_color, fog); + + return float4(color, fog * fog); +} diff --git a/gamedata/shaders/r2/combine_1.vs.hlsl b/gamedata/shaders/r2/combine_1.vs.hlsl new file mode 100644 index 0000000..2fbffc2 --- /dev/null +++ b/gamedata/shaders/r2/combine_1.vs.hlsl @@ -0,0 +1,22 @@ +#include "common.hlsli" + +struct _in +{ + float4 p : POSITION; + float2 tcJ : TEXCOORD0; +}; + +struct _out +{ + float4 hpos : POSITION; + float4 tc0 : TEXCOORD0; + float2 tcJ : TEXCOORD1; +}; + +void main(in _in I, out _out O) +{ + O.hpos = float4(I.p.x, -I.p.y, 0.0f, 1.0f); + O.tc0 = float4(I.p.zw, 1.0f, 1.0f); + + O.tcJ = I.tcJ; +} diff --git a/gamedata/shaders/r2/combine_2.ps.hlsl b/gamedata/shaders/r2/combine_2.ps.hlsl new file mode 100644 index 0000000..11e1388 --- /dev/null +++ b/gamedata/shaders/r2/combine_2.ps.hlsl @@ -0,0 +1,48 @@ +#include "common.hlsli" +#include "mblur.hlsli" +#include "dof.hlsli" + +struct v2p +{ + float4 tc0 : TEXCOORD0; // Center + float4 tc1 : TEXCOORD1; // LT + float4 tc2 : TEXCOORD2; // RB + float4 tc3 : TEXCOORD3; // RT + float4 tc4 : TEXCOORD4; // LB + float4 tc5 : TEXCOORD5; // Left / Right + float4 tc6 : TEXCOORD6; // Top / Bottom +}; + +uniform sampler2D s_distort; + +#define EPSDEPTH 0.001 + +float4 main(v2p I) : COLOR +{ +#ifdef USE_DISTORT + float depth = tex2D(s_position, I.tc0).z; + float4 distort = tex2D(s_distort, I.tc0); + float2 offset = (distort.xy - (127.0f / 255.0f)) * def_distort; + float2 center = I.tc0 + offset; + float depth_x = tex2D(s_position, center).z; + if ((depth_x + EPSDEPTH) < depth) + { + center = I.tc0; + } +#else + float2 center = I.tc0; +#endif + + float3 img = dof(center); + float4 bloom = tex2D(s_bloom, center); + + img = mblur(center, tex2D(s_position, I.tc0), img.rgb); + img = tonemap(img, tex2Dlod(s_tonemap, float4(0.5f, 0.5f, 0.5f, 0.5f)).x); + +#ifdef USE_DISTORT + float3 blurred = bloom * def_hdr; + img = lerp(img, blurred, distort.z); +#endif + + return combine_bloom(img, bloom); +} diff --git a/gamedata/shaders/r2/combine_volumetric.lua b/gamedata/shaders/r2/combine_volumetric.lua new file mode 100644 index 0000000..0214f45 --- /dev/null +++ b/gamedata/shaders/r2/combine_volumetric.lua @@ -0,0 +1,8 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("combine_1", "combine_volumetric") + :fog(false) + :zb(false, false) + :blend(true, blend.one, blend.one) + :sorting(2, false) + shader:sampler("s_vollight"):texture("$user$generic2") +end diff --git a/gamedata/shaders/r2/combine_volumetric.ps.hlsl b/gamedata/shaders/r2/combine_volumetric.ps.hlsl new file mode 100644 index 0000000..3150187 --- /dev/null +++ b/gamedata/shaders/r2/combine_volumetric.ps.hlsl @@ -0,0 +1,8 @@ +#include "common.hlsli" + +uniform sampler2D s_vollight; + +float4 main(float2 tc : TEXCOORD0) : COLOR +{ + return tex2D(s_vollight, tc); +} diff --git a/gamedata/shaders/r2/common.hlsli b/gamedata/shaders/r2/common.hlsli new file mode 100644 index 0000000..3a785a2 --- /dev/null +++ b/gamedata/shaders/r2/common.hlsli @@ -0,0 +1,350 @@ +#ifndef COMMON_H +#define COMMON_H + +// #define USE_SUPER_SPECULAR + +#include "shared\common.hlsli" +////////////////////////////////////////////////////////////////////////////////////////// +// *** options + +// #define DBG_TEST_NMAP +// #define DBG_TEST_NMAP_SPEC +// #define DBG_TEST_SPEC +// #define DBG_TEST_LIGHT +// #define DBG_TEST_LIGHT_SPEC + +// #define USE_GAMMA_22 +// #define USE_FETCH4 +// #define USE_HWSMAP //- HW-options defined + +// #define USE_HWSMAP_PCF //- nVidia GF3+, R600+ + +// #define USE_BRANCHING //- HW-options defined +// #define USE_VTF //- HW-options defined, VertexTextureFetch +// #define FP16_FILTER //- HW-options defined +// #define FP16_BLEND //- HW-options defined +// +// #define USE_PARALLAX //- shader defined +// #define USE_TDETAIL //- shader defined +// #define USE_LM_HEMI //- shader defined +// #define USE_DISTORT //- shader defined +// #define DBG_TMAPPING +////////////////////////////////////////////////////////////////////////////////////////// +#ifndef SMAP_size + #define SMAP_size 1024 +#endif + +#ifdef USE_R2_STATIC_SUN + #define xmaterial float(1.0f / 4.0f) +#else + #define xmaterial float(L_material.w) +#endif +////////////////////////////////////////////////////////////////////////////////////////// +uniform float4 def_aref; +uniform float4 parallax; +uniform float4 hemi_cube_pos_faces; +uniform float4 hemi_cube_neg_faces; +uniform float4 L_material; +uniform float4 Ldynamic_color; +uniform float4 Ldynamic_pos; +uniform float4 Ldynamic_dir; + +uniform float4 J_direct[6]; +uniform float4 J_spot[6]; + +float calc_fogging(float3 w_pos) +{ + return 1.0f - saturate(length(w_pos.xyz - eye_position.xyz) * fog_params.w + fog_params.x); +} + +float2 calc_detail(float3 w_pos) +{ + float dtl = distance(w_pos, eye_position) * dt_params.w; + dtl = min(dtl * dtl, 1.0f); + float dt_mul = 1.0f - dtl; // dt* [1 .. 0 ] + float dt_add = 0.5f * dtl; // dt+ [0 .. 0.5] + return float2(dt_mul, dt_add); +} +float3 calc_reflection(float3 pos_w, float3 norm_w) +{ + return reflect(normalize(pos_w - eye_position), norm_w); +} + +float3 calc_sun_r1(float3 norm_w) +{ + return L_sun_color * saturate(dot((norm_w), -L_sun_dir_w)); +} +float3 calc_model_hemi_r1(float3 norm_w) +{ + return max(0, norm_w.y) * L_hemi_color; +} +float3 calc_model_lq_lighting(float3 norm_w) +{ + return L_material.x * calc_model_hemi_r1(norm_w) + L_ambient + L_material.y * calc_sun_r1(norm_w); +} + +////////////////////////////////////////////////////////////////////////////////////////// +struct v_static +{ + float4 P : POSITION; // (float,float,float,1) + float4 Nh : NORMAL; // (nx,ny,nz,hemi occlusion) + float4 T : TANGENT; // tangent + float4 B : BINORMAL; // binormal + float2 tc : TEXCOORD0; // (u,v) + float2 lmh : TEXCOORD1; // (lmu,lmv) + float4 color : COLOR0; // (r,g,b,dir-occlusion) +}; + +struct v_tree +{ + float4 P : POSITION; // (float,float,float,1) + float4 Nh : NORMAL; // (nx,ny,nz) + float3 T : TANGENT; // tangent + float3 B : BINORMAL; // binormal + float4 tc : TEXCOORD0; // (u,v,frac,???) +}; + +struct v_model +{ + float4 P : POSITION; // (float,float,float,1) + float3 N : NORMAL; // (nx,ny,nz) + float3 T : TANGENT; // (nx,ny,nz) + float3 B : BINORMAL; // (nx,ny,nz) + float2 tc : TEXCOORD0; // (u,v) +}; + +struct v_detail +{ + float4 pos : POSITION; // (float,float,float,1) + int4 misc : TEXCOORD0; // (u(Q),v(Q),frac,matrix-id) +}; + +struct v_shadow_direct_aref +{ + float4 P : POSITION; // Clip-space position (for rasterization) + float4 tc : TEXCOORD1; // Diffuse map for aref +}; + +struct p_bumped_new +{ + float4 hpos : POSITION; + + float4 tcdh : TEXCOORD0; // Texture coordinates, sun_occlusion || lm-hemi + float4 position : TEXCOORD1; // position + hemi + float3 M1 : TEXCOORD2; // nmap 2 eye - 1 + float3 M2 : TEXCOORD3; // nmap 2 eye - 2 + float3 M3 : TEXCOORD4; // nmap 2 eye - 3 +}; + +////////////////////////////////////////////////////////////////////////////////////////// +struct p_bumped +{ + float4 hpos : POSITION; +#if defined(USE_R2_STATIC_SUN) && !defined(USE_LM_HEMI) + float4 tcdh : TEXCOORD0; // Texture coordinates, w=sun_occlusion +#else + float2 tcdh : TEXCOORD0; // Texture coordinates +#endif + float4 position : TEXCOORD1; // position + hemi + float3 M1 : TEXCOORD2; // nmap 2 eye - 1 + float3 M2 : TEXCOORD3; // nmap 2 eye - 2 + float3 M3 : TEXCOORD4; // nmap 2 eye - 3 +#ifdef USE_TDETAIL + float2 tcdbump : TEXCOORD5; // d-bump + #ifdef USE_LM_HEMI + float2 lmh : TEXCOORD6; // lm-hemi + #endif +#else + #ifdef USE_LM_HEMI + float2 lmh : TEXCOORD5; // lm-hemi + #endif +#endif +}; +////////////////////////////////////////////////////////////////////////////////////////// +struct p_flat +{ + float4 hpos : POSITION; +#if defined(USE_R2_STATIC_SUN) && !defined(USE_LM_HEMI) + float4 tcdh : TEXCOORD0; // Texture coordinates, w=sun_occlusion +#else + float2 tcdh : TEXCOORD0; // Texture coordinates +#endif + float4 position : TEXCOORD1; // position + hemi + float3 N : TEXCOORD2; // Eye-space normal (for lighting) +#ifdef USE_TDETAIL + float2 tcdbump : TEXCOORD3; // d-bump + #ifdef USE_LM_HEMI + float2 lmh : TEXCOORD4; // lm-hemi + #endif +#else + #ifdef USE_LM_HEMI + float2 lmh : TEXCOORD3; // lm-hemi + #endif +#endif +}; + +////////////////////////////////////////////////////////////////////////////////////////// +// struct f_deffer { +// float4 position : COLOR0; // px,py,pz, m-id +// float4 Ne : COLOR1; // nx,ny,nz, hemi +// float4 C : COLOR2; // r, g, b, gloss +// }; + +struct f_deffer +{ + float4 P : COLOR0; + float4 N : COLOR1; + float4 C : COLOR2; +}; + +struct f_forward +{ + float4 Color : COLOR0; +}; + +struct p_shadow +{ + float2 tc0 : TEXCOORD0; + float4 hpos : POSITION; +}; +////////////////////////////////////////////////////////////////////////////////////////// +struct p_screen +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; +}; +////////////////////////////////////////////////////////////////////////////////////////// +// Geometry phase / deferring // +uniform sampler2D s_base; // +uniform sampler2D s_bump; // +uniform sampler2D s_bumpX; // +uniform sampler2D s_detail; // +uniform sampler2D s_detailBump; // +uniform sampler2D s_detailBumpX; // Error for bump detail +uniform sampler2D s_bumpD; // +uniform sampler2D s_hemi; // + +uniform sampler2D s_mask; // + +uniform sampler2D s_dt_r; // +uniform sampler2D s_dt_g; // +uniform sampler2D s_dt_b; // +uniform sampler2D s_dt_a; // + +uniform sampler2D s_dn_r; // +uniform sampler2D s_dn_g; // +uniform sampler2D s_dn_b; // +uniform sampler2D s_dn_a; // + +////////////////////////////////////////////////////////////////////////////////////////// +// Lighting/shadowing phase // +uniform sampler2D s_depth; // +uniform sampler2D s_position; // +uniform sampler2D s_normal; // +uniform sampler s_lmap; // 2D/cube projector lightmap +uniform sampler3D s_material; // +uniform sampler1D s_attenuate; // +////////////////////////////////////////////////////////////////////////////////////////// +// Combine phase // +uniform sampler2D s_diffuse; // rgb.a = diffuse.gloss +uniform sampler2D s_accumulator; // rgb.a = diffuse.specular +uniform sampler2D s_generic; // +uniform sampler2D s_bloom; // +uniform sampler s_image; // used in various post-processing +uniform sampler2D s_tonemap; // actually MidleGray / exp(Lw + eps) + +#define def_gloss float(4.0f / 255.0f) +#define def_dbumph float(0.333f) +#define def_virtualh float(0.05f) +#define def_distort float(0.05f) +#define def_hdr float(9.0f) +#define def_hdr_clip float(0.75f) +#define LUMINANCE_VECTOR float3(0.3f, 0.38f, 0.22f) + +float3 tonemap(float3 rgb, float scale) +{ + rgb = rgb * scale; + + const float fWhiteIntensity = 1.7f; + const float fWhiteIntensitySQR = fWhiteIntensity * fWhiteIntensity; + + return rgb * (1.0f + rgb / fWhiteIntensitySQR) / (rgb + 1.0f); +} + +float4 combine_bloom(float3 low, float4 high) +{ + return float4(low + high * high.a, 1.0f); +} + +float3 v_hemi(float3 n) +{ + return L_hemi_color * (.5f + .5f * n.y); +} +float3 v_hemi_wrap(float3 n, float w) +{ + return L_hemi_color * (w + (1 - w) * n.y); +} +float3 v_sun(float3 n) +{ + return L_sun_color * dot(n, -L_sun_dir_w); +} +float3 v_sun_wrap(float3 n, float w) +{ + return L_sun_color * (w + (1 - w) * dot(n, -L_sun_dir_w)); +} +float3 p_hemi(float2 tc) +{ + // float3 t_lmh = tex2D (s_hemi, tc); + // return dot (t_lmh,1.h/4.h); + float4 t_lmh = tex2D(s_hemi, tc); + return t_lmh.a; +} + +float get_hemi(float4 lmh) +{ + return lmh.a; +} + +float get_sun(float4 lmh) +{ + return lmh.g; +} + +// contrast function +float Contrast(float Input, float ContrastPower) +{ + // piecewise contrast function + bool IsAbovefloat = Input > 0.5f; + float ToRaise = saturate(2.0f * (IsAbovefloat ? 1.0f - Input : Input)); + float Output = 0.5f * pow(ToRaise, ContrastPower); + Output = IsAbovefloat ? 1.0f - Output : Output; + return Output; +} + +f_deffer pack_gbuffer(float4 Normal, float4 Point, float4 Color) +{ + f_deffer Output; + Output.N = Normal; + Output.P = Point; + Output.C = Color; + return Output; +} + +#define FXPS \ + technique _render \ + { \ + pass _code \ + { \ + PixelShader = compile ps_3_0 main(); \ + } \ + } +#define FXVS \ + technique _render \ + { \ + pass _code \ + { \ + VertexShader = compile vs_3_0 main(); \ + } \ + } + +#endif diff --git a/gamedata/shaders/r2/copy.ps.hlsl b/gamedata/shaders/r2/copy.ps.hlsl new file mode 100644 index 0000000..29e7b0b --- /dev/null +++ b/gamedata/shaders/r2/copy.ps.hlsl @@ -0,0 +1,7 @@ +#include "common.hlsli" + +// Pixel +float4 main(float2 tc : TEXCOORD0) : COLOR +{ + return tex2D(s_base, tc); +} diff --git a/gamedata/shaders/r2/copy_p.ps.hlsl b/gamedata/shaders/r2/copy_p.ps.hlsl new file mode 100644 index 0000000..e37cc38 --- /dev/null +++ b/gamedata/shaders/r2/copy_p.ps.hlsl @@ -0,0 +1,7 @@ +#include "common.hlsli" + +// Pixel +float4 main(float4 tc : TEXCOORD0) : COLOR +{ + return tex2Dproj(s_base, tc); +} diff --git a/gamedata/shaders/r2/deffer_base.ps.hlsl b/gamedata/shaders/r2/deffer_base.ps.hlsl new file mode 100644 index 0000000..988d366 --- /dev/null +++ b/gamedata/shaders/r2/deffer_base.ps.hlsl @@ -0,0 +1,33 @@ +#include "common.hlsli" +#include "sload.hlsli" + +void main(p_bumped_new I, out f_deffer O) +{ + XrayMaterial M; + + M.Sun = I.tcdh.w; + M.Hemi = I.tcdh.z; + M.Point = I.position.xyz; + + SloadNew(I, M); + +#ifdef USE_AREF + clip(M.Color.w - def_aref); +#endif + + M.Normal = mul(float3x3(I.M1, I.M2, I.M3), M.Normal); + M.Normal = normalize(M.Normal); + +#ifdef USE_LM_HEMI + float4 lm = tex2D(s_hemi, I.tcdh.zw); + + M.Sun = get_sun(lm); + M.Hemi = get_hemi(lm); +#endif + +#ifndef USE_R2_STATIC_SUN + M.Sun = xmaterial; +#endif + + O = pack_gbuffer(float4(M.Normal, M.Hemi), float4(M.Point, M.Sun), float4(M.Color.xyz, 1.0f - M.Roughness)); +} diff --git a/gamedata/shaders/r2/deffer_base.vs.hlsl b/gamedata/shaders/r2/deffer_base.vs.hlsl new file mode 100644 index 0000000..ee3e6c9 --- /dev/null +++ b/gamedata/shaders/r2/deffer_base.vs.hlsl @@ -0,0 +1,31 @@ +#include "common.hlsli" + +void main(in v_static I, out p_bumped_new O) +{ + float2 tc = unpack_tc_base(I.tc, I.T.w, I.B.w); + float3 Pe = mul(m_WV, I.P); + + O.tcdh = float4(tc.xy, I.Nh.w, I.Nh.w); + O.position = float4(Pe, 1.0f); + + float3 N = unpack_bx4(I.Nh); + float3 T = unpack_bx4(I.T); + float3 B = unpack_bx4(I.B); + + float3x3 xform = mul((float3x3)m_WV, float3x3( + T.x, B.x, N.x, + T.y, B.y, N.y, + T.z, B.z, N.z)); + + O.M1 = xform[0]; + O.M2 = xform[1]; + O.M3 = xform[2]; + +#ifdef USE_LM_HEMI + O.tcdh.zw = unpack_tc_lmap(I.lmh); +#else + O.tcdh.w = I.color.w; +#endif + + O.hpos = mul(m_WVP, I.P); +} diff --git a/gamedata/shaders/r2/deffer_detail.vs.hlsl b/gamedata/shaders/r2/deffer_detail.vs.hlsl new file mode 100644 index 0000000..ab61873 --- /dev/null +++ b/gamedata/shaders/r2/deffer_detail.vs.hlsl @@ -0,0 +1,81 @@ +#include "common.hlsli" + +uniform float4 consts; + +uniform float4 wave; +uniform float4 dir2D; + +uniform float2x4 array[50]; + +float3x3 setMatrix (float3 hpb) +{ + + float _ch, _cp, _cb, _sh, _sp, _sb, _cc, _cs, _sc, _ss; + + sincos(hpb.x, _sh, _ch); + sincos(hpb.y, _sp, _cp); + sincos(hpb.z, _sb, _cb); + + _cc = _ch*_cb; _cs = _ch*_sb; _sc = _sh*_cb; _ss = _sh*_sb; + + return float3x3(_cc-_sp*_ss, _sp*_sc+_cs, -_cp*_sh, + -_cp*_sb, _cp*_cb, _sp, + _sp*_cs+_sc, _ss-_sp*_cc, _cp*_ch); +}; + +void main(in v_detail I, out p_bumped_new O) +{ + int i = I.misc.w; + float2x4 mm = array[i]; + + float3x3 mmhpb = setMatrix(mm[0].xyz); + float3 posi = float3(mm[1].xyz); + + float scale = mm[0].w; + + float hemi = abs(mm[1].w); + float sun = sign(mm[1].w)*0.25f+0.25f; + + float4 m0 = float4(mmhpb[0]*scale, posi.x); + float4 m1 = float4(mmhpb[1]*scale, posi.y); + float4 m2 = float4(mmhpb[2]*scale, posi.z); + + float4 pos; + pos.x = dot(m0, I.pos); + pos.y = dot(m1, I.pos); + pos.z = dot(m2, I.pos); + pos.w = 1.0f; + +#ifdef USE_TREEWAVE + float base = m1.w; + float H = I.pos.y * length(m1.xyz); + float fractional = I.misc.z * consts.x; + + float dp = calc_cyclic(dot(pos, wave)); + float inten = H * dp; + + pos.xz += calc_xz_wave(dir2D.xz * inten, fractional); +#endif + + float3 Pe = mul(m_WV, pos); + float2 tc = I.misc.xy * consts.xy; + + float3 N; + N.x = pos.x - m0.w; + N.y = pos.y - m1.w + 0.75f; + N.z = pos.z - m2.w; + + O.tcdh = float4(tc.xy, hemi, sun); + O.position = float4(Pe, 1.0f); + + float3x3 xform = mul((float3x3)m_WV, float3x3( + 0.0f, 0.0f, N.x, + 0.0f, 0.0f, N.y, + 0.0f, 0.0f, N.z)); + + O.M1 = xform[0]; + O.M2 = xform[1]; + O.M3 = xform[2]; + + O.hpos = mul(m_WVP, pos); +} diff --git a/gamedata/shaders/r2/deffer_impl.ps.hlsl b/gamedata/shaders/r2/deffer_impl.ps.hlsl new file mode 100644 index 0000000..971d652 --- /dev/null +++ b/gamedata/shaders/r2/deffer_impl.ps.hlsl @@ -0,0 +1,52 @@ +#include "common.hlsli" +#include "sload.hlsli" + +void main(p_bumped_new I, out f_deffer O) +{ + XrayMaterial M; + + M.Sun = I.tcdh.w; + M.Hemi = I.tcdh.z; + M.Point = I.position.xyz; + + M.Color = tex2D(s_base, I.tcdh.xy); + + float4 Lmap = tex2D(s_lmap, I.tcdh.xy); + float4 Mask = tex2D(s_mask, I.tcdh.xy); + Mask /= dot(Mask, 1.0f); + + float2 tcdbump = I.tcdh.xy * dt_params.xy; + + float3 Detail_R = tex2D(s_dt_r, tcdbump).xyz * Mask.x; + float3 Detail_G = tex2D(s_dt_g, tcdbump).xyz * Mask.y; + float3 Detail_B = tex2D(s_dt_b, tcdbump).xyz * Mask.z; + float3 Detail_A = tex2D(s_dt_a, tcdbump).xyz * Mask.w; + float3 Detail = Detail_R + Detail_G + Detail_B + Detail_A; + + float4 Normal_R = tex2D(s_dn_r, tcdbump) * Mask.x; + float4 Normal_G = tex2D(s_dn_g, tcdbump) * Mask.y; + float4 Normal_B = tex2D(s_dn_b, tcdbump) * Mask.z; + float4 Normal_A = tex2D(s_dn_a, tcdbump) * Mask.w; + + float3 Normal = Normal_R.wzy + Normal_G.wzy + Normal_B.wzy + Normal_A.wzy - 0.5; + Normal.z *= 0.5f; + + M.Roughness = saturate(1.0f - Normal_R.x + Normal_G.x + Normal_B.x + Normal_A.x); + M.Color.xyz *= Detail * 2.0f; + + M.Metalness = 0.0f; + M.SSS = 0.0f; + M.AO = 1.0f; + + M.Normal = mul(float3x3(I.M1, I.M2, I.M3), Normal); + M.Normal = normalize(M.Normal); + + M.Sun = Lmap.w; + M.Hemi = M.Color.w; + +#ifndef USE_R2_STATIC_SUN + M.Sun = xmaterial; +#endif + + O = pack_gbuffer(float4(M.Normal, M.Hemi), float4(M.Point, M.Sun), float4(M.Color.xyz, 1.0f - M.Roughness)); +} diff --git a/gamedata/shaders/r2/deffer_lod.vs.hlsl b/gamedata/shaders/r2/deffer_lod.vs.hlsl new file mode 100644 index 0000000..d27e7be --- /dev/null +++ b/gamedata/shaders/r2/deffer_lod.vs.hlsl @@ -0,0 +1,53 @@ +#include "common.hlsli" + +uniform float3x4 m_xform; +uniform float3x4 m_xform_v; + +uniform float4 consts; +uniform float4 wind; +uniform float4 wave; + +uniform float4 c_scale; +uniform float4 c_bias; + +uniform float2 c_sun; + +void main(in v_tree I, out p_bumped_new O) +{ + float4 pos = float4(mul(m_xform, I.P).xyz, 1.0); + + float2 tc = I.tc.xy * consts.xy; + float sun = I.Nh.w * c_sun.x + c_sun.y; + float hemi = I.Nh.w * c_scale.w + c_bias.w; + +#ifdef USE_TREEWAVE + float base = m_xform._24; + float H = pos.y - base; + + float dp = calc_cyclic(wave.w + dot(pos, wave.xyz)); + float frac = I.tc.z * consts.x; + float inten = H * dp; + + pos.xz += calc_xz_wave(wind.xz * inten, frac); +#endif + + float3 Pe = mul(m_V, pos); + + O.tcdh = float4(tc.xy, hemi, sun); + O.position = float4(Pe, 1.0f); + + float3 N = unpack_bx4(I.Nh); + float3 T = unpack_bx4(I.T); + float3 B = unpack_bx4(I.B); + + float3x3 xform = mul((float3x3)m_xform_v, float3x3( + T.x, B.x, N.x, + T.y, B.y, N.y, + T.z, B.z, N.z)); + + O.M1 = xform[0]; + O.M2 = xform[1]; + O.M3 = xform[2]; + + O.hpos = mul(m_VP, pos); +} diff --git a/gamedata/shaders/r2/deffer_model.vs.hlsl b/gamedata/shaders/r2/deffer_model.vs.hlsl new file mode 100644 index 0000000..13572c0 --- /dev/null +++ b/gamedata/shaders/r2/deffer_model.vs.hlsl @@ -0,0 +1,62 @@ +#include "common.hlsli" +#include "skin.hlsli" + +void skinned_main(in v_model I, out p_bumped_new O) +{ + float3 Nw = mul((float3x3)m_W, (float3)I.N); + float3 hc_pos = (float3)hemi_cube_pos_faces; + float3 hc_neg = (float3)hemi_cube_neg_faces; + float3 hc_mixed = (Nw < 0.0f) ? -hc_neg : hc_pos; + float hemi_val = saturate(dot(hc_mixed, Nw)); + float3 Pe = mul(m_WV, I.P); + + O.tcdh = float4(I.tc.xy, hemi_val, L_material.y); + O.position = float4(Pe, 1.0f); + + float3 N = I.N * 2.0f; + float3 T = I.T * 2.0f; + float3 B = I.B * 2.0f; + + float3x3 xform = mul((float3x3)m_WV, float3x3( + T.x, B.x, N.x, + T.y, B.y, N.y, + T.z, B.z, N.z)); + + O.M1 = xform[0]; + O.M2 = xform[1]; + O.M3 = xform[2]; + + O.hpos = mul(m_WVP, I.P); +} + +#if defined(SKIN_0) +void main(in v_model_skinned_0 I, out p_bumped_new O) +{ + skinned_main(skinning_0(I), O); +} +#elif defined(SKIN_1) +void main(in v_model_skinned_1 I, out p_bumped_new O) +{ + skinned_main(skinning_1(I), O); +} +#elif defined(SKIN_2) +void main(in v_model_skinned_2 I, out p_bumped_new O) +{ + skinned_main(skinning_2(I), O); +} +#elif defined(SKIN_3) +void main(in v_model_skinned_3 I, out p_bumped_new O) +{ + skinned_main(skinning_3(I), O); +} +#elif defined(SKIN_4) +void main(in v_model_skinned_4 I, out p_bumped_new O) +{ + skinned_main(skinning_4(I), O); +} +#else +void main(in v_model I, out p_bumped_new O) +{ + skinned_main(I, O); +} +#endif diff --git a/gamedata/shaders/r2/deffer_particle.ps.hlsl b/gamedata/shaders/r2/deffer_particle.ps.hlsl new file mode 100644 index 0000000..f6534e9 --- /dev/null +++ b/gamedata/shaders/r2/deffer_particle.ps.hlsl @@ -0,0 +1,27 @@ +#include "common.hlsli" +#include "sload.hlsli" + +struct p_particle +{ + float4 color : COLOR0; + p_flat base; +}; + +f_deffer main(p_particle II) +{ + f_deffer O; + p_flat I; + + I = II.base; + + // 1. Base texture + kill pixels with low alpha + float4 D = tex2D(s_base, I.tcdh); + D *= II.color; + clip(D.w - def_aref); + + // 2. Standart output + float4 Ne = float4(normalize((float3)I.N.xyz), I.position.w); + O = pack_gbuffer(Ne, float4(I.position.xyz, xmaterial), float4(D.xyz, def_gloss)); + + return O; +} diff --git a/gamedata/shaders/r2/deffer_particle.vs.hlsl b/gamedata/shaders/r2/deffer_particle.vs.hlsl new file mode 100644 index 0000000..933fb60 --- /dev/null +++ b/gamedata/shaders/r2/deffer_particle.vs.hlsl @@ -0,0 +1,37 @@ +#include "common.hlsli" + +struct vv +{ + float4 P : POSITION; + float2 tc : TEXCOORD0; + float4 c : COLOR0; +}; + +struct v2p_particle +{ + float4 color : COLOR0; + p_flat base; +}; + +v2p_particle main(vv I) +{ + float4 w_pos = I.P; + + // Eye-space pos/normal + p_flat O; + O.hpos = mul(m_WVP, w_pos); + O.N = normalize(eye_position - w_pos); + float3 Pe = mul(m_WV, I.P); + O.tcdh = float4(I.tc.xyyy); + O.position = float4(Pe, .2h); + +#ifdef USE_TDETAIL + O.tcdbump = O.tcdh * dt_params; // dt tc +#endif + + v2p_particle pp; + pp.color = I.c; + pp.base = O; + + return pp; +} diff --git a/gamedata/shaders/r2/depth.ps.hlsl b/gamedata/shaders/r2/depth.ps.hlsl new file mode 100644 index 0000000..8a85d65 --- /dev/null +++ b/gamedata/shaders/r2/depth.ps.hlsl @@ -0,0 +1,7 @@ +#include "common.hlsli" + +// Pixel +float4 main(float4 depth : TEXCOORD1) : COLOR +{ + return depth.z / depth.w; +} diff --git a/gamedata/shaders/r2/depth_downs.ps.hlsl b/gamedata/shaders/r2/depth_downs.ps.hlsl new file mode 100644 index 0000000..d09fa89 --- /dev/null +++ b/gamedata/shaders/r2/depth_downs.ps.hlsl @@ -0,0 +1,34 @@ +#include "common.hlsli" + +uniform float4 screen_res; + +float4 main(float2 tc : TEXCOORD0) : COLOR +{ +#if SSAO_OPT_DATA == 2 + // FIXME: Should add a float-texel offset to I.tc0 here + // This would fix horizontal line issue + float4 P0 = tex2D(s_position, tc + 0.5f * screen_res.zw); // position.(mtl or sun) + float4 P1 = tex2D(s_position, tc - 0.5f * screen_res.zw); // position.(mtl or sun) + float4 P2 = tex2D(s_position, tc + 0.5f * float2(screen_res.z, -screen_res.w)); // position.(mtl or sun) + float4 P3 = tex2D(s_position, tc + 0.5f * float2(-screen_res.z, screen_res.w)); // position.(mtl or sun) + + float4 P = P0; + + if (P1.z < P.z) + { + P = P1; + } + if (P2.z < P.z) + { + P = P2; + } + if (P3.z < P.z) + { + P = P3; + } + + return float4(P.zzzz); +#else + return tex2D(s_position, tc - 0.5f * screen_res.zw).zzzz; +#endif +} diff --git a/gamedata/shaders/r2/details_lod.lua b/gamedata/shaders/r2/details_lod.lua new file mode 100644 index 0000000..e2b02bd --- /dev/null +++ b/gamedata/shaders/r2/details_lod.lua @@ -0,0 +1,8 @@ +function l_special(shader, t_base, t_second, t_detail) + shader:begin("lod", "lod") + :blend(false, blend.one, blend.zero) + :zb(true, true) + :fog(false) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_hemi"):texture(t_base .. "_nm") +end diff --git a/gamedata/shaders/r2/distort.lua b/gamedata/shaders/r2/distort.lua new file mode 100644 index 0000000..d71fe5a --- /dev/null +++ b/gamedata/shaders/r2/distort.lua @@ -0,0 +1,7 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("null", "distort") + :fog(false) + :zb(false, false) + shader:sampler("s_base"):texture("$user$generic0"):clamp():f_linear() + shader:sampler("s_distort"):texture("$user$generic1"):clamp():f_linear() +end diff --git a/gamedata/shaders/r2/distort.ps.hlsl b/gamedata/shaders/r2/distort.ps.hlsl new file mode 100644 index 0000000..1114b50 --- /dev/null +++ b/gamedata/shaders/r2/distort.ps.hlsl @@ -0,0 +1,20 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc : TEXCOORD0; // base & distort +}; + +// uniform sampler2D s_base; +uniform sampler2D s_distort; + +// Pixel +float4 main(v2p I) : COLOR +{ + float2 distort = tex2D(s_distort, I.tc); + float2 offset = (distort.xy - 0.5f) * def_distort; + float3 image = tex2D(s_base, I.tc + offset); + + // out + return float4(image, 1.0f); // +mov +} diff --git a/gamedata/shaders/r2/dof.hlsli b/gamedata/shaders/r2/dof.hlsli new file mode 100644 index 0000000..6064c30 --- /dev/null +++ b/gamedata/shaders/r2/dof.hlsli @@ -0,0 +1,202 @@ +#ifndef DOF_H_INCLUDED +#define DOF_H_INCLUDED + +// #define USE_DOF + +#ifndef USE_DOF + +float3 dof(float2 center) +{ + float3 img = tex2D(s_image, center); + return img; +} + +#else // USE_DOF + +// x - near y - focus z - far w - sky distance +float4 dof_params; +float3 dof_kernel; // x,y - resolution pre-scaled z - just kernel size + +float DOFFactor(float depth) +{ + float dist_to_focus = depth - dof_params.y; + float blur_far = saturate(dist_to_focus / (dof_params.z - dof_params.y)); + float blur_near = saturate(dist_to_focus / (dof_params.x - dof_params.y)); + float blur = blur_near + blur_far; + blur *= blur; + return blur; +} + + // #define MAXCOF 5.h + #define MAXCOF 7.h + #define EPSDEPTH 0.0001h +float3 dof(float2 center) +{ + // Scale tap offsets based on render target size + float depth = tex2D(s_position, center).z; + if (depth <= EPSDEPTH) + { + depth = dof_params.w; + } + float blur = DOFFactor(depth); + + // float blur = 1; + // const amount of blur: define controlled + // float2 scale = float2 (.5f / 1024.h, .5f / 768.h) * MAXCOF * blur; + // const amount of blur: engine controlled + float2 scale = float2(0.5f / 1024.0f, 0.5f / 768.0f) * (dof_kernel.z * blur); + // amount of blur varies according to resolution + // but kernel size in pixels is fixed. + // float2 scale = dof_kernel.xy * blur; + + // poisson + float2 o[12]; + o[0] = float2(-0.326212f, -0.405810f) * scale; + o[1] = float2(-0.840144f, -0.073580f) * scale; + o[2] = float2(-0.695914f, 0.457137f) * scale; + o[3] = float2(-0.203345f, 0.620716f) * scale; + o[4] = float2(0.962340f, -0.194983f) * scale; + o[5] = float2(0.473434f, -0.480026f) * scale; + o[6] = float2(0.519456f, 0.767022f) * scale; + o[7] = float2(0.185461f, -0.893124f) * scale; + o[8] = float2(0.507431f, 0.064425f) * scale; + o[9] = float2(0.896420f, 0.412458f) * scale; + o[10] = float2(-0.321940f, -0.932615f) * scale; + o[11] = float2(-0.791559f, -0.597710f) * scale; + + // sample + float3 sum = tex2D(s_image, center); + float contrib = 1.0f; + + for (int i = 0; i < 12; i++) + { + float2 tap = center + o[i]; + float4 tap_color = tex2D(s_image, tap); + float tap_depth = tex2D(s_position, tap).z; + if (tap_depth <= EPSDEPTH) + { + tap_depth = dof_params.w; + } + float tap_contrib = DOFFactor(tap_depth); + sum += tap_color * tap_contrib; + contrib += tap_contrib; + } + + return float3(sum / contrib); +} + +/* +// edge along sky line. More light-weight +float3 dof(float2 center) +{ + // Scale tap offsets based on render target size + float depth = tex2D(s_position,center).z; +// if (depth <= EPSDEPTH) depth = dof_params.w; + if (depth <= EPSDEPTH) depth = (dof_params.z-dof_params.y)*0.3; + float dist_to_focus = depth-dof_params.y; + float blur_far = saturate( dist_to_focus + / (dof_params.z-dof_params.y) ); + float blur_near = saturate( dist_to_focus + / (dof_params.x-dof_params.y) ); + float blur = (blur_near+blur_far); + blur*=blur; + + //float blur = 1; + // const amount of blur: define controlled + //float2 scale = float2 (.5f / 1024.h, .5f / 768.h) * MAXCOF * blur; + // const amount of blur: engine controlled + float2 scale = float2 (.5f / 1024.h, .5f / 768.h) * (dof_kernel.z * blur); + // amount of blur varies according to resolution + // but kernel size in pixels is fixed. + // float2 scale = dof_kernel.xy * blur; + + // poisson + float2 o [12]; + o[0] = float2(-0.326212f , -0.405810f)*scale; + o[1] = float2(-0.840144f , -0.073580f)*scale; + o[2] = float2(-0.695914f , 0.457137f)*scale; + o[3] = float2(-0.203345f , 0.620716f)*scale; + o[4] = float2( 0.962340f , -0.194983f)*scale; + o[5] = float2( 0.473434f , -0.480026f)*scale; + o[6] = float2( 0.519456f , 0.767022f)*scale; + o[7] = float2( 0.185461f , -0.893124f)*scale; + o[8] = float2( 0.507431f , 0.064425f)*scale; + o[9] = float2( 0.896420f , 0.412458f)*scale; + o[10] = float2(-0.321940f , -0.932615f)*scale; + o[11] = float2(-0.791559f , -0.597710f)*scale; + + // sample + float3 sum = tex2D(s_image,center); + float contrib = 1.h; + for (int i=0; i<12; i++) + { + float2 tap = center + o[i]; + float4 tap_color = tex2D (s_image,tap); + float tap_depth = tex2D (s_position,tap).z; +// if (tap_depth <= EPSDEPTH) tap_depth = dof_params.w; + if (tap_depth <= EPSDEPTH) tap_depth = (dof_params.z-dof_params.y)*0.3; +// float tap_contrib = 1.h; //(tap_depth>depth)?1.h:0.h; + float tap_contrib = 1-saturate(abs(tap_depth-depth)/dist_to_focus); + sum += tap_color * tap_contrib; + contrib += tap_contrib; + } + return float3 (sum/contrib); +} +*/ + +/* +#define NEAR 0.2h +//#define MINDIST 0.4h +#define MINDIST 1.4h +//#define MAXDIST 100.h +//#define MAXDIST 300.h +#define MAXDIST 2.0h +#define MAXCOF 5.h +#define MAXCOF_NEAR 100.h +#define EPSDEPTH 0.0001h +float3 dof(float2 center) +{ + // Scale tap offsets based on render target size + float depth = tex2D(s_position,center).z; + if (depth<=EPSDEPTH) depth = MAXDIST; + float blur = saturate( (depth-MINDIST)/(MAXDIST-MINDIST) ); + blur*=blur; + //float blur_near = pow(saturate( 1-(depth-NEAR)/MINDIST ), 2) * MAXCOF_NEAR; + //float blur = (blur_near+blur_far); + + //float blur = 1; + float2 scale = float2 (.5f / 1024.h, .5f / 768.h) * MAXCOF * blur; + + // poisson + float2 o [12]; + o[0] = float2(-0.326212f , -0.405810f)*scale; + o[1] = float2(-0.840144f , -0.073580f)*scale; + o[2] = float2(-0.695914f , 0.457137f)*scale; + o[3] = float2(-0.203345f , 0.620716f)*scale; + o[4] = float2( 0.962340f , -0.194983f)*scale; + o[5] = float2( 0.473434f , -0.480026f)*scale; + o[6] = float2( 0.519456f , 0.767022f)*scale; + o[7] = float2( 0.185461f , -0.893124f)*scale; + o[8] = float2( 0.507431f , 0.064425f)*scale; + o[9] = float2( 0.896420f , 0.412458f)*scale; + o[10] = float2(-0.321940f , -0.932615f)*scale; + o[11] = float2(-0.791559f , -0.597710f)*scale; + + // sample + float3 sum = tex2D(s_image,center); + float contrib = 1.h; + for (int i=0; i<12; i++) + { + float2 tap = center + o[i]; + float4 tap_color = tex2D (s_image,tap); + float tap_depth = tex2D (s_position,tap).z; + float tap_contrib = 1.h; //(tap_depth>depth)?1.h:0.h; + sum += tap_color * tap_contrib; + contrib += tap_contrib; + } + return float3 (sum/contrib); +} +/**/ +#endif // USE_DOF + +#endif // DOF_H_INCLUDED diff --git a/gamedata/shaders/r2/dumb.ps.hlsl b/gamedata/shaders/r2/dumb.ps.hlsl new file mode 100644 index 0000000..c7688bc --- /dev/null +++ b/gamedata/shaders/r2/dumb.ps.hlsl @@ -0,0 +1,7 @@ +#include "common.hlsli" + +// Pixel +float4 main() : COLOR +{ + return 0; +} diff --git a/gamedata/shaders/r2/dumb.vs.hlsl b/gamedata/shaders/r2/dumb.vs.hlsl new file mode 100644 index 0000000..3e8c8dd --- /dev/null +++ b/gamedata/shaders/r2/dumb.vs.hlsl @@ -0,0 +1,15 @@ +#include "common.hlsli" + +struct v2p +{ + float4 hpos : POSITION; // Clip-space position (for rasterization) +}; + +// Vertex +v2p main(float4 P : POSITION) +{ + v2p O; + O.hpos = mul(m_WVP, P); + return O; +} +FXVS; diff --git a/gamedata/shaders/r2/editor.vs.hlsl b/gamedata/shaders/r2/editor.vs.hlsl new file mode 100644 index 0000000..d8639fe --- /dev/null +++ b/gamedata/shaders/r2/editor.vs.hlsl @@ -0,0 +1,19 @@ +#include "common.hlsli" + +struct vf +{ + float4 P : POSITION; + float4 C : COLOR0; +}; + +uniform float4 tfactor; + +vf main(vf i) +{ + vf o; + + o.P = mul(m_WVP, i.P); // xform, input in world coords + o.C = tfactor * i.C; + + return o; +} diff --git a/gamedata/shaders/r2/effects_lightplanes.lua b/gamedata/shaders/r2/effects_lightplanes.lua new file mode 100644 index 0000000..38a0a19 --- /dev/null +++ b/gamedata/shaders/r2/effects_lightplanes.lua @@ -0,0 +1,22 @@ +--[[ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("dumb","dumb") + : fog (false) + : zb (false,false) + : blend (true,blend.zero,blend.one) + : aref (false,0) + : sorting (2, false) + shader:sampler ("s_base") :texture (t_base) +end +]] + +function normal(shader, t_base, t_second, t_detail) + shader:begin("base_lplanes", "base_lplanes") + :fog(false) + -- : fog (true) + :zb(true, false) + :blend(true, blend.srcalpha, blend.one) + :aref(true, 0) + :sorting(2, false) + shader:sampler("s_base"):texture(t_base) +end diff --git a/gamedata/shaders/r2/effects_sun.lua b/gamedata/shaders/r2/effects_sun.lua new file mode 100644 index 0000000..a70bb33 --- /dev/null +++ b/gamedata/shaders/r2/effects_sun.lua @@ -0,0 +1,6 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("effects_sun", "stub_default") + :blend(true, blend.srcalpha, blend.one) + :zb(true, false) + :sampler("s_base"):texture(t_base) +end diff --git a/gamedata/shaders/r2/effects_sun.vs.hlsl b/gamedata/shaders/r2/effects_sun.vs.hlsl new file mode 100644 index 0000000..bd76674 --- /dev/null +++ b/gamedata/shaders/r2/effects_sun.vs.hlsl @@ -0,0 +1,28 @@ +#include "common.hlsli" + +struct v_TL +{ + float4 P : POSITION; + float2 Tex0 : TEXCOORD0; + float4 Color : COLOR; +}; + +struct v2p_TL +{ + float2 Tex0 : TEXCOORD0; + float4 Color : COLOR; + float4 HPos : POSITION; // Clip-space position (for rasterization) +}; + +// Vertex +v2p_TL main(v_TL I) +{ + v2p_TL O; + + O.HPos = mul(m_VP, I.P); + O.HPos.z = O.HPos.w; + O.Tex0 = I.Tex0; + O.Color = I.Color; + + return O; +} diff --git a/gamedata/shaders/r2/effects_wallmarkblend.lua b/gamedata/shaders/r2/effects_wallmarkblend.lua new file mode 100644 index 0000000..efd73a2 --- /dev/null +++ b/gamedata/shaders/r2/effects_wallmarkblend.lua @@ -0,0 +1,10 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("wmark", "simple") + :sorting(1, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :zb(true, false) + :fog(false) + :wmark(true) + shader:sampler("s_base"):texture(t_base) +end diff --git a/gamedata/shaders/r2/effects_wallmarkmult.lua b/gamedata/shaders/r2/effects_wallmarkmult.lua new file mode 100644 index 0000000..354186e --- /dev/null +++ b/gamedata/shaders/r2/effects_wallmarkmult.lua @@ -0,0 +1,10 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("wmark", "simple") + :sorting(1, false) + :blend(true, blend.destcolor, blend.srccolor) + :aref(true, 0) + :zb(true, false) + :fog(false) + :wmark(true) + shader:sampler("s_base"):texture(t_base) +end diff --git a/gamedata/shaders/r2/effects_wallmarkset.lua b/gamedata/shaders/r2/effects_wallmarkset.lua new file mode 100644 index 0000000..70bf594 --- /dev/null +++ b/gamedata/shaders/r2/effects_wallmarkset.lua @@ -0,0 +1,9 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("wmark", "simple") + :sorting(1, false) + :aref(false, 0) + :zb(true, true) + :fog(false) + :wmark(true) + shader:sampler("s_base"):texture(t_base) +end diff --git a/gamedata/shaders/r2/effects_water.lua b/gamedata/shaders/r2/effects_water.lua new file mode 100644 index 0000000..db2349a --- /dev/null +++ b/gamedata/shaders/r2/effects_water.lua @@ -0,0 +1,47 @@ +local tex_base = "water\\water_water" +local tex_nmap = "water\\water_normal" +local tex_dist = "water\\water_dudv" +local tex_env0 = "$user$sky0" -- "sky\\sky_8_cube" +local tex_env1 = "$user$sky1" -- "sky\\sky_8_cube" +local tex_leaves = "water\\water_foam" + +function normal(shader, t_base, t_second, t_detail) + shader:begin("water_soft", "water_soft") + :sorting(2, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :distort(true) + :fog(true) + shader:sampler("s_base"):texture(tex_base) + shader:sampler("s_nmap"):texture(tex_nmap) + shader:sampler("s_env0"):texture(tex_env0):clamp() + shader:sampler("s_env1"):texture(tex_env1):clamp() + shader:sampler("s_position"):texture("$user$position"):f_none() + + shader:sampler("s_leaves"):texture(tex_leaves):wrap():f_anisotropic() +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("waterd_soft", "waterd_soft") + :sorting(2, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(tex_base) + shader:sampler("s_distort"):texture(tex_dist) + shader:sampler("s_position"):texture("$user$position"):f_none() +end + +--[[ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("waterd","waterd") + : sorting (2, true) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : zb (true,false) + : fog (false) + : distort (true) + shader:sampler ("s_base") :texture (tex_base) + shader:sampler ("s_distort") :texture (tex_dist) +end +]] diff --git a/gamedata/shaders/r2/effects_waterryaska.lua b/gamedata/shaders/r2/effects_waterryaska.lua new file mode 100644 index 0000000..a2367a3 --- /dev/null +++ b/gamedata/shaders/r2/effects_waterryaska.lua @@ -0,0 +1,47 @@ +local tex_base = "water\\water_ryaska1" +local tex_nmap = "water\\water_normal" +local tex_dist = "water\\water_dudv" +local tex_env0 = "$user$sky0" -- "sky\\sky_8_cube" +local tex_env1 = "$user$sky1" -- "sky\\sky_8_cube" +local tex_leaves = "ui\\ui_empty" + +function normal(shader, t_base, t_second, t_detail) + shader:begin("water_soft", "water_soft") + :sorting(2, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :distort(true) + :fog(true) + shader:sampler("s_base"):texture(tex_base) + shader:sampler("s_nmap"):texture(tex_nmap) + shader:sampler("s_env0"):texture(tex_env0):clamp() + shader:sampler("s_env1"):texture(tex_env1):clamp() + shader:sampler("s_position"):texture("$user$position"):f_none() + + shader:sampler("s_leaves"):texture(tex_leaves):wrap():f_anisotropic() +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("waterd_soft", "waterd_soft") + :sorting(2, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(tex_base) + shader:sampler("s_distort"):texture(tex_dist) + shader:sampler("s_position"):texture("$user$position"):f_none() +end + +--[[ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("waterd","waterd") + : sorting (2, true) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : zb (true,false) + : fog (false) + : distort (true) + shader:sampler ("s_base") :texture (tex_base) + shader:sampler ("s_distort") :texture (tex_dist) +end +]] diff --git a/gamedata/shaders/r2/effects_waterstuden.lua b/gamedata/shaders/r2/effects_waterstuden.lua new file mode 100644 index 0000000..b3e32b0 --- /dev/null +++ b/gamedata/shaders/r2/effects_waterstuden.lua @@ -0,0 +1,47 @@ +local tex_base = "water\\water_studen" +local tex_nmap = "water\\water_normal" +local tex_dist = "water\\water_dudv" +local tex_env0 = "$user$sky0" -- "sky\\sky_8_cube" +local tex_env1 = "$user$sky1" -- "sky\\sky_8_cube" +local tex_leaves = "ui\\ui_empty" + +function normal(shader, t_base, t_second, t_detail) + shader:begin("water_soft", "water_soft") + :sorting(2, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :distort(true) + :fog(true) + shader:sampler("s_base"):texture(tex_base) + shader:sampler("s_nmap"):texture(tex_nmap) + shader:sampler("s_env0"):texture(tex_env0):clamp() + shader:sampler("s_env1"):texture(tex_env1):clamp() + shader:sampler("s_position"):texture("$user$position"):f_none() + + shader:sampler("s_leaves"):texture(tex_leaves):wrap():f_anisotropic() +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("waterd_soft", "waterd_soft") + :sorting(2, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(tex_base) + shader:sampler("s_distort"):texture(tex_dist) + shader:sampler("s_position"):texture("$user$position"):f_none() +end + +--[[ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("waterd","waterd") + : sorting (2, true) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : zb (true,false) + : fog (false) + : distort (true) + shader:sampler ("s_base") :texture (tex_base) + shader:sampler ("s_distort") :texture (tex_dist) +end +]] diff --git a/gamedata/shaders/r2/fencode.hlsli b/gamedata/shaders/r2/fencode.hlsli new file mode 100644 index 0000000..4bbc8a5 --- /dev/null +++ b/gamedata/shaders/r2/fencode.hlsli @@ -0,0 +1,32 @@ +#ifndef FENCODE_H +#define FENCODE_H + +#include "common.hlsli" + +uniform float3 v_encodeZ01; +uniform float3 v_decodeZ01; + +float3 encode_tcRG(float z) +{ + return z * v_encodeZ01.xyz; +} +float2 encode_tcB(float z) +{ + return z * v_encodeZ01.z; +} + +// 0..1 encoding with 21 bit precision +static const float3 pe_scale = {1.f, 128.f, 16384.f}; +static const float3 pe_unscale21 = {2.f / 1.f, 2.f / 128.f, 2.f / 16384.f}; +static const float3 pe_unscale24 = {1.f / 1.f, 1.f / 256.f, 1.f / 65536.f}; + +float decode_float21(float3 rgb) +{ + return dot(rgb, pe_unscale21); +} +float decode_float24(float3 rgb) +{ + return dot(rgb, pe_unscale24); +} + +#endif diff --git a/gamedata/shaders/r2/font2.ps.hlsl b/gamedata/shaders/r2/font2.ps.hlsl new file mode 100644 index 0000000..7892ebe --- /dev/null +++ b/gamedata/shaders/r2/font2.ps.hlsl @@ -0,0 +1,18 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 r = tex2D(s_base, I.tc0); + // r.x = 1 - r.x; + // r.y = 1 - r.y; + // r.z = 1 - r.z; + r.w = 1 - r.w; + return r; + // return /*(float4(1,1,1,1) - */ tex2D (s_base,I.tc0); +} diff --git a/gamedata/shaders/r2/forward_base.ps.hlsl b/gamedata/shaders/r2/forward_base.ps.hlsl new file mode 100644 index 0000000..2e6f0b2 --- /dev/null +++ b/gamedata/shaders/r2/forward_base.ps.hlsl @@ -0,0 +1,47 @@ +#include "common.hlsli" +#include "sload.hlsli" +#include "lmodel.hlsli" +#include "hmodel.hlsli" + +void main(p_bumped_new I, out float4 Color : COLOR0) +{ + XrayMaterial M; + + M.Sun = I.tcdh.w; + M.Hemi = I.tcdh.z; + M.Point = I.position.xyz; + + SloadNew(I, M); + +#ifdef USE_AREF + clip(M.Color.w - def_aref); +#endif + + M.Normal = mul(float3x3(I.M1, I.M2, I.M3), M.Normal); + M.Normal = normalize(M.Normal); + +#ifdef USE_LM_HEMI + float4 lm = tex2D(s_hemi, I.tcdh.zw); + + M.Sun = get_sun(lm); + M.Hemi = get_hemi(lm); +#endif + + M.Sun = saturate(M.Sun * 2.0f); + M.Color.xyz = saturate(M.Color.xyz); + + float MaterialID = xmaterial; + float Gloss = 1.0f - M.Roughness; + + float4 Light = float4(L_sun_color, 1.0f) * M.Sun * plight_infinity(MaterialID, M.Point, M.Normal, L_sun_dir_e); + float3 Diffuse, Specular; + + hmodel(Diffuse, Specular, MaterialID, M.Hemi, Gloss, M.Point, M.Normal); + + Color = float4(Diffuse + Light.xyz, M.Color.w); + Color.xyz *= M.Color.xyz; + Color.xyz += Light.w * Gloss + Specular; + + float fog = saturate(length(M.Point) * fog_params.w + fog_params.x); + Color = lerp(Color, fog_color, fog); +} diff --git a/gamedata/shaders/r2/fxaa.hlsli b/gamedata/shaders/r2/fxaa.hlsli new file mode 100644 index 0000000..f3ddc2c --- /dev/null +++ b/gamedata/shaders/r2/fxaa.hlsli @@ -0,0 +1,1308 @@ +#define FXAA_PC 1 +#define FXAA_HLSL_3 1 +#define FXAA_QUALITY__PRESET 39 + +/*--------------------------------------------------------------------------*/ +#ifndef FXAA_PC_CONSOLE + // + // The console algorithm for PC is included + // for developers targeting really low spec machines. + // Likely better to just run FXAA_PC, and use a really low preset. + // + #define FXAA_PC_CONSOLE 0 +#endif +/*--------------------------------------------------------------------------*/ +#ifndef FXAA_GLSL_120 + #define FXAA_GLSL_120 0 +#endif +/*--------------------------------------------------------------------------*/ +#ifndef FXAA_GLSL_130 + #define FXAA_GLSL_130 0 +#endif +/*--------------------------------------------------------------------------*/ +#ifndef FXAA_HLSL_3 + #define FXAA_HLSL_3 0 +#endif +/*--------------------------------------------------------------------------*/ +#ifndef FXAA_HLSL_4 + #define FXAA_HLSL_4 0 +#endif +/*--------------------------------------------------------------------------*/ +#ifndef FXAA_HLSL_5 + #define FXAA_HLSL_5 0 +#endif +/*==========================================================================*/ +#ifndef FXAA_GREEN_AS_LUMA + // + // For those using non-linear color, + // and either not able to get luma in alpha, or not wanting to, + // this enables FXAA to run using green as a proxy for luma. + // So with this enabled, no need to pack luma in alpha. + // + // This will turn off AA on anything which lacks some amount of green. + // Pure red and blue or combination of only R and B, will get no AA. + // + // Might want to lower the settings for both, + // fxaaConsoleEdgeThresholdMin + // fxaaQualityEdgeThresholdMin + // In order to insure AA does not get turned off on colors + // which contain a minor amount of green. + // + // 1 = On. + // 0 = Off. + // + #define FXAA_GREEN_AS_LUMA 0 +#endif +/*--------------------------------------------------------------------------*/ +#ifndef FXAA_EARLY_EXIT + // + // Controls algorithm's early exit path. + // On PS3 turning this ON adds 2 cycles to the shader. + // On 360 turning this OFF adds 10ths of a millisecond to the shader. + // Turning this off on console will result in a more blurry image. + // So this defaults to on. + // + // 1 = On. + // 0 = Off. + // + #define FXAA_EARLY_EXIT 1 +#endif +/*--------------------------------------------------------------------------*/ +#ifndef FXAA_DISCARD + // + // Only valid for PC OpenGL currently. + // Probably will not work when FXAA_GREEN_AS_LUMA = 1. + // + // 1 = Use discard on pixels which don't need AA. + // For APIs which enable concurrent TEX+ROP from same surface. + // 0 = Return unchanged color on pixels which don't need AA. + // + #define FXAA_DISCARD 1 +#endif +/*--------------------------------------------------------------------------*/ +#ifndef FXAA_FAST_PIXEL_OFFSET + // + // Used for GLSL 120 only. + // + // 1 = GL API supports fast pixel offsets + // 0 = do not use fast pixel offsets + // + #ifdef GL_EXT_gpu_shader4 + #define FXAA_FAST_PIXEL_OFFSET 1 + #endif + #ifdef GL_NV_gpu_shader5 + #define FXAA_FAST_PIXEL_OFFSET 1 + #endif + #ifdef GL_ARB_gpu_shader5 + #define FXAA_FAST_PIXEL_OFFSET 1 + #endif + #ifndef FXAA_FAST_PIXEL_OFFSET + #define FXAA_FAST_PIXEL_OFFSET 0 + #endif +#endif +/*--------------------------------------------------------------------------*/ +#ifndef FXAA_GATHER4_ALPHA + // + // 1 = API supports gather4 on alpha channel. + // 0 = API does not support gather4 on alpha channel. + // + #if (FXAA_HLSL_5 == 1) + #define FXAA_GATHER4_ALPHA 1 + #endif + #ifdef GL_ARB_gpu_shader5 + #define FXAA_GATHER4_ALPHA 1 + #endif + #ifdef GL_NV_gpu_shader5 + #define FXAA_GATHER4_ALPHA 1 + #endif + #ifndef FXAA_GATHER4_ALPHA + #define FXAA_GATHER4_ALPHA 0 + #endif +#endif + +/*============================================================================ + FXAA QUALITY - TUNING KNOBS +------------------------------------------------------------------------------ +NOTE the other tuning knobs are now in the shader function inputs! +============================================================================*/ +#ifndef FXAA_QUALITY__PRESET + // + // Choose the quality preset. + // This needs to be compiled into the shader as it effects code. + // Best option to include multiple presets is to + // in each shader define the preset, then include this file. + // + // OPTIONS + // ----------------------------------------------------------------------- + // 10 to 15 - default medium dither (10=fastest, 15=highest quality) + // 20 to 29 - less dither, more expensive (20=fastest, 29=highest quality) + // 39 - no dither, very expensive + // + // NOTES + // ----------------------------------------------------------------------- + // 12 = slightly faster then FXAA 3.9 and higher edge quality (default) + // 13 = about same speed as FXAA 3.9 and better than 12 + // 23 = closest to FXAA 3.9 visually and performance wise + // _ = the lowest digit is directly related to performance + // _ = the highest digit is directly related to style + // + #define FXAA_QUALITY__PRESET 12 +#endif + +/*============================================================================ + + FXAA QUALITY - PRESETS + +============================================================================*/ + +/*============================================================================ + FXAA QUALITY - MEDIUM DITHER PRESETS +============================================================================*/ +#if (FXAA_QUALITY__PRESET == 10) + #define FXAA_QUALITY__PS 3 + #define FXAA_QUALITY__P0 1.5 + #define FXAA_QUALITY__P1 3.0 + #define FXAA_QUALITY__P2 12.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 11) + #define FXAA_QUALITY__PS 4 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 3.0 + #define FXAA_QUALITY__P3 12.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 12) + #define FXAA_QUALITY__PS 5 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 4.0 + #define FXAA_QUALITY__P4 12.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 13) + #define FXAA_QUALITY__PS 6 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 4.0 + #define FXAA_QUALITY__P5 12.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 14) + #define FXAA_QUALITY__PS 7 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 2.0 + #define FXAA_QUALITY__P5 4.0 + #define FXAA_QUALITY__P6 12.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 15) + #define FXAA_QUALITY__PS 8 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 2.0 + #define FXAA_QUALITY__P5 2.0 + #define FXAA_QUALITY__P6 4.0 + #define FXAA_QUALITY__P7 12.0 +#endif + +/*============================================================================ + FXAA QUALITY - LOW DITHER PRESETS +============================================================================*/ +#if (FXAA_QUALITY__PRESET == 20) + #define FXAA_QUALITY__PS 3 + #define FXAA_QUALITY__P0 1.5 + #define FXAA_QUALITY__P1 2.0 + #define FXAA_QUALITY__P2 8.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 21) + #define FXAA_QUALITY__PS 4 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 8.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 22) + #define FXAA_QUALITY__PS 5 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 8.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 23) + #define FXAA_QUALITY__PS 6 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 2.0 + #define FXAA_QUALITY__P5 8.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 24) + #define FXAA_QUALITY__PS 7 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 2.0 + #define FXAA_QUALITY__P5 3.0 + #define FXAA_QUALITY__P6 8.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 25) + #define FXAA_QUALITY__PS 8 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 2.0 + #define FXAA_QUALITY__P5 2.0 + #define FXAA_QUALITY__P6 4.0 + #define FXAA_QUALITY__P7 8.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 26) + #define FXAA_QUALITY__PS 9 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 2.0 + #define FXAA_QUALITY__P5 2.0 + #define FXAA_QUALITY__P6 2.0 + #define FXAA_QUALITY__P7 4.0 + #define FXAA_QUALITY__P8 8.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 27) + #define FXAA_QUALITY__PS 10 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 2.0 + #define FXAA_QUALITY__P5 2.0 + #define FXAA_QUALITY__P6 2.0 + #define FXAA_QUALITY__P7 2.0 + #define FXAA_QUALITY__P8 4.0 + #define FXAA_QUALITY__P9 8.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 28) + #define FXAA_QUALITY__PS 11 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 2.0 + #define FXAA_QUALITY__P5 2.0 + #define FXAA_QUALITY__P6 2.0 + #define FXAA_QUALITY__P7 2.0 + #define FXAA_QUALITY__P8 2.0 + #define FXAA_QUALITY__P9 4.0 + #define FXAA_QUALITY__P10 8.0 +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_QUALITY__PRESET == 29) + #define FXAA_QUALITY__PS 12 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.5 + #define FXAA_QUALITY__P2 2.0 + #define FXAA_QUALITY__P3 2.0 + #define FXAA_QUALITY__P4 2.0 + #define FXAA_QUALITY__P5 2.0 + #define FXAA_QUALITY__P6 2.0 + #define FXAA_QUALITY__P7 2.0 + #define FXAA_QUALITY__P8 2.0 + #define FXAA_QUALITY__P9 2.0 + #define FXAA_QUALITY__P10 4.0 + #define FXAA_QUALITY__P11 8.0 +#endif + +/*============================================================================ + FXAA QUALITY - EXTREME QUALITY +============================================================================*/ +#if (FXAA_QUALITY__PRESET == 39) + #define FXAA_QUALITY__PS 12 + #define FXAA_QUALITY__P0 1.0 + #define FXAA_QUALITY__P1 1.0 + #define FXAA_QUALITY__P2 1.0 + #define FXAA_QUALITY__P3 1.0 + #define FXAA_QUALITY__P4 1.0 + #define FXAA_QUALITY__P5 1.5 + #define FXAA_QUALITY__P6 2.0 + #define FXAA_QUALITY__P7 2.0 + #define FXAA_QUALITY__P8 2.0 + #define FXAA_QUALITY__P9 2.0 + #define FXAA_QUALITY__P10 4.0 + #define FXAA_QUALITY__P11 8.0 +#endif + +/*============================================================================ + + API PORTING + +============================================================================*/ +#if (FXAA_GLSL_120 == 1) || (FXAA_GLSL_130 == 1) + #define FxaaBool bool + #define FxaaDiscard discard + #define FxaaFloat float + #define FxaaFloat2 vec2 + #define FxaaFloat3 vec3 + #define FxaaFloat4 vec4 + #define FxaaInt2 ivec2 + #define FxaaSat(x) clamp(x, 0.0, 1.0) + #define FxaaTex sampler2D +#else + #define FxaaBool bool + #define FxaaDiscard clip(-1) + #define FxaaFloat float + #define FxaaFloat2 float2 + #define FxaaFloat3 float3 + #define FxaaFloat4 float4 + #define FxaaSat(x) saturate(x) +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_GLSL_120 == 1) + // Requires, + // #version 120 + // And at least, + // #extension GL_EXT_gpu_shader4 : enable + // (or set FXAA_FAST_PIXEL_OFFSET 1 to work like DX9) + #define FxaaTexTop(t, p) texture2DLod(t, p, 0.0) + #if (FXAA_FAST_PIXEL_OFFSET == 1) + #define FxaaTexOff(t, p, o, r) texture2DLodOffset(t, p, 0.0, o) + #else + #define FxaaTexOff(t, p, o, r) texture2DLod(t, p + (o * r), 0.0) + #endif + #if (FXAA_GATHER4_ALPHA == 1) + // use #extension GL_ARB_gpu_shader5 : enable + #define FxaaTexAlpha4(t, p) textureGather(t, p, 3) + #define FxaaTexOffAlpha4(t, p, o) textureGatherOffset(t, p, o, 3) + #define FxaaTexGreen4(t, p) textureGather(t, p, 1) + #define FxaaTexOffGreen4(t, p, o) textureGatherOffset(t, p, o, 1) + #endif +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_GLSL_130 == 1) + // Requires "#version 130" or better + #define FxaaTexTop(t, p) textureLod(t, p, 0.0) + #define FxaaTexOff(t, p, o, r) textureLodOffset(t, p, 0.0, o) + #if (FXAA_GATHER4_ALPHA == 1) + // use #extension GL_ARB_gpu_shader5 : enable + #define FxaaTexAlpha4(t, p) textureGather(t, p, 3) + #define FxaaTexOffAlpha4(t, p, o) textureGatherOffset(t, p, o, 3) + #define FxaaTexGreen4(t, p) textureGather(t, p, 1) + #define FxaaTexOffGreen4(t, p, o) textureGatherOffset(t, p, o, 1) + #endif +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_HLSL_3 == 1) || (FXAA_360 == 1) || (FXAA_PS3 == 1) + #define FxaaInt2 float2 + #define FxaaTex sampler2D + #define FxaaTexTop(t, p) tex2Dlod(t, float4(p, 0.0, 0.0)) + #define FxaaTexOff(t, p, o, r) tex2Dlod(t, float4(p + (o * r), 0, 0)) +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_HLSL_4 == 1) + #define FxaaInt2 int2 +struct FxaaTex +{ + SamplerState smpl; + Texture2D tex; +}; + #define FxaaTexTop(t, p) t.tex.SampleLevel(t.smpl, p, 0.0) + #define FxaaTexOff(t, p, o, r) t.tex.SampleLevel(t.smpl, p, 0.0, o) +#endif +/*--------------------------------------------------------------------------*/ +#if (FXAA_HLSL_5 == 1) + #define FxaaInt2 int2 +struct FxaaTex +{ + SamplerState smpl; + Texture2D tex; +}; + #define FxaaTexTop(t, p) t.tex.SampleLevel(t.smpl, p, 0.0) + #define FxaaTexOff(t, p, o, r) t.tex.SampleLevel(t.smpl, p, 0.0, o) + #define FxaaTexAlpha4(t, p) t.tex.GatherAlpha(t.smpl, p) + #define FxaaTexOffAlpha4(t, p, o) t.tex.GatherAlpha(t.smpl, p, o) + #define FxaaTexGreen4(t, p) t.tex.GatherGreen(t.smpl, p) + #define FxaaTexOffGreen4(t, p, o) t.tex.GatherGreen(t.smpl, p, o) +#endif + +/*============================================================================ + GREEN AS LUMA OPTION SUPPORT FUNCTION +============================================================================*/ +#if (FXAA_GREEN_AS_LUMA == 0) +FxaaFloat FxaaLuma(FxaaFloat4 rgba) +{ + return rgba.w; +} +#else +FxaaFloat FxaaLuma(FxaaFloat4 rgba) +{ + return rgba.y; +} +#endif + +/*============================================================================ + + FXAA3 QUALITY - PC + +============================================================================*/ +#if (FXAA_PC == 1) +/*--------------------------------------------------------------------------*/ +FxaaFloat4 FxaaPixelShader( + // + // Use noperspective interpolation here (turn off perspective interpolation). + // {xy} = center of pixel + FxaaFloat2 pos, + // + // Used only for FXAA Console, and not used on the 360 version. + // Use noperspective interpolation here (turn off perspective interpolation). + // {xy__} = upper left of pixel + // {__zw} = lower right of pixel + FxaaFloat4 fxaaConsolePosPos, + // + // Input color texture. + // {rgb_} = color in linear or perceptual color space + // if (FXAA_GREEN_AS_LUMA == 0) + // {___a} = luma in perceptual color space (not linear) + FxaaTex tex, + // + // Only used on the optimized 360 version of FXAA Console. + // For everything but 360, just use the same input here as for "tex". + // For 360, same texture, just alias with a 2nd sampler. + // This sampler needs to have an exponent bias of -1. + FxaaTex fxaaConsole360TexExpBiasNegOne, + // + // Only used on the optimized 360 version of FXAA Console. + // For everything but 360, just use the same input here as for "tex". + // For 360, same texture, just alias with a 3nd sampler. + // This sampler needs to have an exponent bias of -2. + FxaaTex fxaaConsole360TexExpBiasNegTwo, + // + // Only used on FXAA Quality. + // This must be from a constant/uniform. + // {x_} = 1.0/screenWidthInPixels + // {_y} = 1.0/screenHeightInPixels + FxaaFloat2 fxaaQualityRcpFrame, + // + // Only used on FXAA Console. + // This must be from a constant/uniform. + // This effects sub-pixel AA quality and inversely sharpness. + // Where N ranges between, + // N = 0.50 (default) + // N = 0.33 (sharper) + // {x___} = -N/screenWidthInPixels + // {_y__} = -N/screenHeightInPixels + // {__z_} = N/screenWidthInPixels + // {___w} = N/screenHeightInPixels + FxaaFloat4 fxaaConsoleRcpFrameOpt, + // + // Only used on FXAA Console. + // Not used on 360, but used on PS3 and PC. + // This must be from a constant/uniform. + // {x___} = -2.0/screenWidthInPixels + // {_y__} = -2.0/screenHeightInPixels + // {__z_} = 2.0/screenWidthInPixels + // {___w} = 2.0/screenHeightInPixels + FxaaFloat4 fxaaConsoleRcpFrameOpt2, + // + // Only used on FXAA Console. + // Only used on 360 in place of fxaaConsoleRcpFrameOpt2. + // This must be from a constant/uniform. + // {x___} = 8.0/screenWidthInPixels + // {_y__} = 8.0/screenHeightInPixels + // {__z_} = -4.0/screenWidthInPixels + // {___w} = -4.0/screenHeightInPixels + FxaaFloat4 fxaaConsole360RcpFrameOpt2, + // + // Only used on FXAA Quality. + // This used to be the FXAA_QUALITY__SUBPIX define. + // It is here now to allow easier tuning. + // Choose the amount of sub-pixel aliasing removal. + // This can effect sharpness. + // 1.00 - upper limit (softer) + // 0.75 - default amount of filtering + // 0.50 - lower limit (sharper, less sub-pixel aliasing removal) + // 0.25 - almost off + // 0.00 - completely off + FxaaFloat fxaaQualitySubpix, + // + // Only used on FXAA Quality. + // This used to be the FXAA_QUALITY__EDGE_THRESHOLD define. + // It is here now to allow easier tuning. + // The minimum amount of local contrast required to apply algorithm. + // 0.333 - too little (faster) + // 0.250 - low quality + // 0.166 - default + // 0.125 - high quality + // 0.063 - overkill (slower) + FxaaFloat fxaaQualityEdgeThreshold, + // + // Only used on FXAA Quality. + // This used to be the FXAA_QUALITY__EDGE_THRESHOLD_MIN define. + // It is here now to allow easier tuning. + // Trims the algorithm from processing darks. + // 0.0833 - upper limit (default, the start of visible unfiltered edges) + // 0.0625 - high quality (faster) + // 0.0312 - visible limit (slower) + // Special notes when using FXAA_GREEN_AS_LUMA, + // Likely want to set this to zero. + // As colors that are mostly not-green + // will appear very dark in the green channel! + // Tune by looking at mostly non-green content, + // then start at zero and increase until aliasing is a problem. + FxaaFloat fxaaQualityEdgeThresholdMin, + // + // Only used on FXAA Console. + // This used to be the FXAA_CONSOLE__EDGE_SHARPNESS define. + // It is here now to allow easier tuning. + // This does not effect PS3, as this needs to be compiled in. + // Use FXAA_CONSOLE__PS3_EDGE_SHARPNESS for PS3. + // Due to the PS3 being ALU bound, + // there are only three safe values here: 2 and 4 and 8. + // These options use the shaders ability to a free *|/ by 2|4|8. + // For all other platforms can be a non-power of two. + // 8.0 is sharper (default!!!) + // 4.0 is softer + // 2.0 is really soft (good only for vector graphics inputs) + FxaaFloat fxaaConsoleEdgeSharpness, + // + // Only used on FXAA Console. + // This used to be the FXAA_CONSOLE__EDGE_THRESHOLD define. + // It is here now to allow easier tuning. + // This does not effect PS3, as this needs to be compiled in. + // Use FXAA_CONSOLE__PS3_EDGE_THRESHOLD for PS3. + // Due to the PS3 being ALU bound, + // there are only two safe values here: 1/4 and 1/8. + // These options use the shaders ability to a free *|/ by 2|4|8. + // The console setting has a different mapping than the quality setting. + // Other platforms can use other values. + // 0.125 leaves less aliasing, but is softer (default!!!) + // 0.25 leaves more aliasing, and is sharper + FxaaFloat fxaaConsoleEdgeThreshold, + // + // Only used on FXAA Console. + // This used to be the FXAA_CONSOLE__EDGE_THRESHOLD_MIN define. + // It is here now to allow easier tuning. + // Trims the algorithm from processing darks. + // The console setting has a different mapping than the quality setting. + // This only applies when FXAA_EARLY_EXIT is 1. + // This does not apply to PS3, + // PS3 was simplified to avoid more shader instructions. + // 0.06 - faster but more aliasing in darks + // 0.05 - default + // 0.04 - slower and less aliasing in darks + // Special notes when using FXAA_GREEN_AS_LUMA, + // Likely want to set this to zero. + // As colors that are mostly not-green + // will appear very dark in the green channel! + // Tune by looking at mostly non-green content, + // then start at zero and increase until aliasing is a problem. + FxaaFloat fxaaConsoleEdgeThresholdMin, + // + // Extra constants for 360 FXAA Console only. + // Use zeros or anything else for other platforms. + // These must be in physical constant registers and NOT immedates. + // Immedates will result in compiler un-optimizing. + // {xyzw} = float4(1.0, -1.0, 0.25, -0.25) + FxaaFloat4 fxaaConsole360ConstDir) +{ + /*--------------------------------------------------------------------------*/ + FxaaFloat2 posM; + posM.x = pos.x; + posM.y = pos.y; + #if (FXAA_GATHER4_ALPHA == 1) + #if (FXAA_DISCARD == 0) + FxaaFloat4 rgbyM = FxaaTexTop(tex, posM); + #if (FXAA_GREEN_AS_LUMA == 0) + #define lumaM rgbyM.w + #else + #define lumaM rgbyM.y + #endif + #endif + #if (FXAA_GREEN_AS_LUMA == 0) + FxaaFloat4 luma4A = FxaaTexAlpha4(tex, posM); + FxaaFloat4 luma4B = FxaaTexOffAlpha4(tex, posM, FxaaInt2(-1, -1)); + #else + FxaaFloat4 luma4A = FxaaTexGreen4(tex, posM); + FxaaFloat4 luma4B = FxaaTexOffGreen4(tex, posM, FxaaInt2(-1, -1)); + #endif + #if (FXAA_DISCARD == 1) + #define lumaM luma4A.w + #endif + #define lumaE luma4A.z + #define lumaS luma4A.x + #define lumaSE luma4A.y + #define lumaNW luma4B.w + #define lumaN luma4B.z + #define lumaW luma4B.x + #else + FxaaFloat4 rgbyM = FxaaTexTop(tex, posM); + #if (FXAA_GREEN_AS_LUMA == 0) + #define lumaM rgbyM.w + #else + #define lumaM rgbyM.y + #endif + FxaaFloat lumaS = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(0, 1), fxaaQualityRcpFrame.xy)); + FxaaFloat lumaE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(1, 0), fxaaQualityRcpFrame.xy)); + FxaaFloat lumaN = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(0, -1), fxaaQualityRcpFrame.xy)); + FxaaFloat lumaW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1, 0), fxaaQualityRcpFrame.xy)); + #endif + /*--------------------------------------------------------------------------*/ + FxaaFloat maxSM = max(lumaS, lumaM); + FxaaFloat minSM = min(lumaS, lumaM); + FxaaFloat maxESM = max(lumaE, maxSM); + FxaaFloat minESM = min(lumaE, minSM); + FxaaFloat maxWN = max(lumaN, lumaW); + FxaaFloat minWN = min(lumaN, lumaW); + FxaaFloat rangeMax = max(maxWN, maxESM); + FxaaFloat rangeMin = min(minWN, minESM); + FxaaFloat rangeMaxScaled = rangeMax * fxaaQualityEdgeThreshold; + FxaaFloat range = rangeMax - rangeMin; + FxaaFloat rangeMaxClamped = max(fxaaQualityEdgeThresholdMin, rangeMaxScaled); + FxaaBool earlyExit = range < rangeMaxClamped; + /*--------------------------------------------------------------------------*/ + if (earlyExit) + #if (FXAA_DISCARD == 1) + FxaaDiscard; + #else + return rgbyM; + #endif + /*--------------------------------------------------------------------------*/ + #if (FXAA_GATHER4_ALPHA == 0) + FxaaFloat lumaNW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1, -1), fxaaQualityRcpFrame.xy)); + FxaaFloat lumaSE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(1, 1), fxaaQualityRcpFrame.xy)); + FxaaFloat lumaNE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(1, -1), fxaaQualityRcpFrame.xy)); + FxaaFloat lumaSW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1, 1), fxaaQualityRcpFrame.xy)); + #else + FxaaFloat lumaNE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(1, -1), fxaaQualityRcpFrame.xy)); + FxaaFloat lumaSW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1, 1), fxaaQualityRcpFrame.xy)); + #endif + /*--------------------------------------------------------------------------*/ + FxaaFloat lumaNS = lumaN + lumaS; + FxaaFloat lumaWE = lumaW + lumaE; + FxaaFloat subpixRcpRange = 1.0 / range; + FxaaFloat subpixNSWE = lumaNS + lumaWE; + FxaaFloat edgeHorz1 = (-2.0 * lumaM) + lumaNS; + FxaaFloat edgeVert1 = (-2.0 * lumaM) + lumaWE; + /*--------------------------------------------------------------------------*/ + FxaaFloat lumaNESE = lumaNE + lumaSE; + FxaaFloat lumaNWNE = lumaNW + lumaNE; + FxaaFloat edgeHorz2 = (-2.0 * lumaE) + lumaNESE; + FxaaFloat edgeVert2 = (-2.0 * lumaN) + lumaNWNE; + /*--------------------------------------------------------------------------*/ + FxaaFloat lumaNWSW = lumaNW + lumaSW; + FxaaFloat lumaSWSE = lumaSW + lumaSE; + FxaaFloat edgeHorz4 = (abs(edgeHorz1) * 2.0) + abs(edgeHorz2); + FxaaFloat edgeVert4 = (abs(edgeVert1) * 2.0) + abs(edgeVert2); + FxaaFloat edgeHorz3 = (-2.0 * lumaW) + lumaNWSW; + FxaaFloat edgeVert3 = (-2.0 * lumaS) + lumaSWSE; + FxaaFloat edgeHorz = abs(edgeHorz3) + edgeHorz4; + FxaaFloat edgeVert = abs(edgeVert3) + edgeVert4; + /*--------------------------------------------------------------------------*/ + FxaaFloat subpixNWSWNESE = lumaNWSW + lumaNESE; + FxaaFloat lengthSign = fxaaQualityRcpFrame.x; + FxaaBool horzSpan = edgeHorz >= edgeVert; + FxaaFloat subpixA = subpixNSWE * 2.0 + subpixNWSWNESE; + /*--------------------------------------------------------------------------*/ + if (!horzSpan) + { + lumaN = lumaW; + } + if (!horzSpan) + { + lumaS = lumaE; + } + if (horzSpan) + { + lengthSign = fxaaQualityRcpFrame.y; + } + FxaaFloat subpixB = (subpixA * (1.0 / 12.0)) - lumaM; + /*--------------------------------------------------------------------------*/ + FxaaFloat gradientN = lumaN - lumaM; + FxaaFloat gradientS = lumaS - lumaM; + FxaaFloat lumaNN = lumaN + lumaM; + FxaaFloat lumaSS = lumaS + lumaM; + FxaaBool pairN = abs(gradientN) >= abs(gradientS); + FxaaFloat gradient = max(abs(gradientN), abs(gradientS)); + if (pairN) + { + lengthSign = -lengthSign; + } + FxaaFloat subpixC = FxaaSat(abs(subpixB) * subpixRcpRange); + /*--------------------------------------------------------------------------*/ + FxaaFloat2 posB; + posB.x = posM.x; + posB.y = posM.y; + FxaaFloat2 offNP; + offNP.x = (!horzSpan) ? 0.0 : fxaaQualityRcpFrame.x; + offNP.y = (horzSpan) ? 0.0 : fxaaQualityRcpFrame.y; + if (!horzSpan) + { + posB.x += lengthSign * 0.5; + } + if (horzSpan) + { + posB.y += lengthSign * 0.5; + } + /*--------------------------------------------------------------------------*/ + FxaaFloat2 posN; + posN.x = posB.x - offNP.x * FXAA_QUALITY__P0; + posN.y = posB.y - offNP.y * FXAA_QUALITY__P0; + FxaaFloat2 posP; + posP.x = posB.x + offNP.x * FXAA_QUALITY__P0; + posP.y = posB.y + offNP.y * FXAA_QUALITY__P0; + FxaaFloat subpixD = ((-2.0) * subpixC) + 3.0; + FxaaFloat lumaEndN = FxaaLuma(FxaaTexTop(tex, posN)); + FxaaFloat subpixE = subpixC * subpixC; + FxaaFloat lumaEndP = FxaaLuma(FxaaTexTop(tex, posP)); + /*--------------------------------------------------------------------------*/ + if (!pairN) + { + lumaNN = lumaSS; + } + FxaaFloat gradientScaled = gradient * 1.0 / 4.0; + FxaaFloat lumaMM = lumaM - lumaNN * 0.5; + FxaaFloat subpixF = subpixD * subpixE; + FxaaBool lumaMLTZero = lumaMM < 0.0; + /*--------------------------------------------------------------------------*/ + lumaEndN -= lumaNN * 0.5; + lumaEndP -= lumaNN * 0.5; + FxaaBool doneN = abs(lumaEndN) >= gradientScaled; + FxaaBool doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P1; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P1; + } + FxaaBool doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P1; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P1; + } + /*--------------------------------------------------------------------------*/ + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P2; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P2; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P2; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P2; + } + /*--------------------------------------------------------------------------*/ + #if (FXAA_QUALITY__PS > 3) + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P3; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P3; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P3; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P3; + } + /*--------------------------------------------------------------------------*/ + #if (FXAA_QUALITY__PS > 4) + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P4; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P4; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P4; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P4; + } + /*--------------------------------------------------------------------------*/ + #if (FXAA_QUALITY__PS > 5) + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P5; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P5; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P5; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P5; + } + /*--------------------------------------------------------------------------*/ + #if (FXAA_QUALITY__PS > 6) + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P6; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P6; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P6; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P6; + } + /*--------------------------------------------------------------------------*/ + #if (FXAA_QUALITY__PS > 7) + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P7; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P7; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P7; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P7; + } + /*--------------------------------------------------------------------------*/ + #if (FXAA_QUALITY__PS > 8) + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P8; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P8; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P8; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P8; + } + /*--------------------------------------------------------------------------*/ + #if (FXAA_QUALITY__PS > 9) + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P9; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P9; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P9; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P9; + } + /*--------------------------------------------------------------------------*/ + #if (FXAA_QUALITY__PS > 10) + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P10; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P10; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P10; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P10; + } + /*--------------------------------------------------------------------------*/ + #if (FXAA_QUALITY__PS > 11) + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P11; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P11; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P11; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P11; + } + /*--------------------------------------------------------------------------*/ + #if (FXAA_QUALITY__PS > 12) + if (doneNP) + { + if (!doneN) + { + lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); + } + if (!doneP) + { + lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); + } + if (!doneN) + { + lumaEndN = lumaEndN - lumaNN * 0.5; + } + if (!doneP) + { + lumaEndP = lumaEndP - lumaNN * 0.5; + } + doneN = abs(lumaEndN) >= gradientScaled; + doneP = abs(lumaEndP) >= gradientScaled; + if (!doneN) + { + posN.x -= offNP.x * FXAA_QUALITY__P12; + } + if (!doneN) + { + posN.y -= offNP.y * FXAA_QUALITY__P12; + } + doneNP = (!doneN) || (!doneP); + if (!doneP) + { + posP.x += offNP.x * FXAA_QUALITY__P12; + } + if (!doneP) + { + posP.y += offNP.y * FXAA_QUALITY__P12; + } + /*--------------------------------------------------------------------------*/ + } + #endif + /*--------------------------------------------------------------------------*/ + } + #endif + /*--------------------------------------------------------------------------*/ + } + #endif + /*--------------------------------------------------------------------------*/ + } + #endif + /*--------------------------------------------------------------------------*/ + } + #endif + /*--------------------------------------------------------------------------*/ + } + #endif + /*--------------------------------------------------------------------------*/ + } + #endif + /*--------------------------------------------------------------------------*/ + } + #endif + /*--------------------------------------------------------------------------*/ + } + #endif + /*--------------------------------------------------------------------------*/ + } + #endif + /*--------------------------------------------------------------------------*/ + } + /*--------------------------------------------------------------------------*/ + FxaaFloat dstN = posM.x - posN.x; + FxaaFloat dstP = posP.x - posM.x; + if (!horzSpan) + { + dstN = posM.y - posN.y; + } + if (!horzSpan) + { + dstP = posP.y - posM.y; + } + /*--------------------------------------------------------------------------*/ + FxaaBool goodSpanN = (lumaEndN < 0.0) != lumaMLTZero; + FxaaFloat spanLength = (dstP + dstN); + FxaaBool goodSpanP = (lumaEndP < 0.0) != lumaMLTZero; + FxaaFloat spanLengthRcp = 1.0 / spanLength; + /*--------------------------------------------------------------------------*/ + FxaaBool directionN = dstN < dstP; + FxaaFloat dst = min(dstN, dstP); + FxaaBool goodSpan = directionN ? goodSpanN : goodSpanP; + FxaaFloat subpixG = subpixF * subpixF; + FxaaFloat pixelOffset = (dst * (-spanLengthRcp)) + 0.5; + FxaaFloat subpixH = subpixG * fxaaQualitySubpix; + /*--------------------------------------------------------------------------*/ + FxaaFloat pixelOffsetGood = goodSpan ? pixelOffset : 0.0; + FxaaFloat pixelOffsetSubpix = max(pixelOffsetGood, subpixH); + if (!horzSpan) + { + posM.x += pixelOffsetSubpix * lengthSign; + } + if (horzSpan) + { + posM.y += pixelOffsetSubpix * lengthSign; + } + #if (FXAA_DISCARD == 1) + return FxaaTexTop(tex, posM); + #else + return FxaaFloat4(FxaaTexTop(tex, posM).xyz, lumaM); + #endif +} +/*==========================================================================*/ +#endif diff --git a/gamedata/shaders/r2/fxaa_luma.ps.hlsl b/gamedata/shaders/r2/fxaa_luma.ps.hlsl new file mode 100644 index 0000000..92815b9 --- /dev/null +++ b/gamedata/shaders/r2/fxaa_luma.ps.hlsl @@ -0,0 +1,13 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; + float4 HPos : POSITION; +}; + +float4 main(v2p I) : COLOR +{ + float3 image = tex2D(s_image, I.tc0); + return float4(image, dot(image, LUMINANCE_VECTOR)); +} diff --git a/gamedata/shaders/r2/fxaa_main.ps.hlsl b/gamedata/shaders/r2/fxaa_main.ps.hlsl new file mode 100644 index 0000000..77de0dc --- /dev/null +++ b/gamedata/shaders/r2/fxaa_main.ps.hlsl @@ -0,0 +1,33 @@ +#include "common.hlsli" +#include "fxaa.hlsli" + +uniform float4 screen_res; + +struct v2p +{ + float2 tc0 : TEXCOORD0; + float4 HPos : POSITION; +}; + +float4 main(v2p I) : COLOR +{ + float2 rcpFrame = screen_res.zw; + + return FxaaPixelShader(I.tc0, + FxaaFloat4(0.0f, 0.0f, 0.0f, 0.0f), // FxaaFloat4 fxaaConsolePosPos, + s_image, // FxaaTex tex, + s_image, // FxaaTex fxaaConsole360TexExpBiasNegOne, + s_image, // FxaaTex fxaaConsole360TexExpBiasNegTwo, + rcpFrame, // FxaaFloat2 fxaaQualityRcpFrame, + FxaaFloat4(0.0f, 0.0f, 0.0f, 0.0f), // FxaaFloat4 fxaaConsoleRcpFrameOpt, + FxaaFloat4(0.0f, 0.0f, 0.0f, 0.0f), // FxaaFloat4 fxaaConsoleRcpFrameOpt2, + FxaaFloat4(0.0f, 0.0f, 0.0f, 0.0f), // FxaaFloat4 fxaaConsole360RcpFrameOpt2, + 0.35f, // FxaaFloat fxaaQualitySubpix, + 0.125f, // FxaaFloat fxaaQualityEdgeThreshold, + 0.0f, // 0.0625f, // FxaaFloat fxaaQualityEdgeThresholdMin, + 0.0f, // FxaaFloat fxaaConsoleEdgeSharpness, + 0.0f, // FxaaFloat fxaaConsoleEdgeThreshold, + 0.0f, // FxaaFloat fxaaConsoleEdgeThresholdMin, + FxaaFloat4(0.0f, 0.0f, 0.0f, 0.0f) // FxaaFloat fxaaConsole360ConstDir, + ); +} diff --git a/gamedata/shaders/r2/fxaa_main.vs.hlsl b/gamedata/shaders/r2/fxaa_main.vs.hlsl new file mode 100644 index 0000000..713c1ac --- /dev/null +++ b/gamedata/shaders/r2/fxaa_main.vs.hlsl @@ -0,0 +1,25 @@ +#include "common.hlsli" + +uniform float4 screen_res; // Screen resolution (x-Width,y-Height, zw - 1/resolution) + +struct v +{ + float3 P : POSITION; + float2 tc0 : TEXCOORD0; +}; + +struct v2p +{ + float2 tc0 : TEXCOORD0; + float4 HPos : POSITION; +}; + +// Vertex +v2p main(v I) +{ + v2p O; + O.HPos = float4(I.P.x * screen_res.z * 2 - 1, (I.P.y * screen_res.w * 2 - 1) * -1, 0, 1); + O.tc0 = I.tc0; + + return O; +} diff --git a/gamedata/shaders/r2/hmodel.hlsli b/gamedata/shaders/r2/hmodel.hlsli new file mode 100644 index 0000000..3bb6950 --- /dev/null +++ b/gamedata/shaders/r2/hmodel.hlsli @@ -0,0 +1,47 @@ +#ifndef HMODEL_H +#define HMODEL_H + +#include "common.hlsli" + +uniform samplerCUBE env_s0; +uniform samplerCUBE env_s1; +uniform samplerCUBE sky_s0; +uniform samplerCUBE sky_s1; + +void hmodel(out float3 hdiffuse, out float3 hspecular, + float m, float h, float s, float3 Pnt, float3 normal) +{ + // hscale - something like diffuse reflection + float3 nw = mul(m_invV, normal); + float hscale = h; + +#ifdef USE_GAMMA_22 + hscale = (hscale * hscale); // make it more linear +#endif + + // reflection vector + float3 v2PntL = normalize(Pnt); + float3 v2Pnt = mul(m_invV, v2PntL); + float3 vreflect = reflect(v2Pnt, nw); + float hspec = .5h + .5h * dot(vreflect, v2Pnt); + + // material + float4 light = tex3D(s_material, float3(hscale, hspec, m)).xxxy; + + // diffuse color + float3 e0d = texCUBElod(env_s0, float4(nw, 0.0f)); + float3 e1d = texCUBElod(env_s1, float4(nw, 0.0f)); + float3 env_d = L_hemi_color.xyz * lerp(e0d, e1d, L_hemi_color.w); + env_d *= env_d; // contrast + hdiffuse = env_d * light.xyz + L_ambient.rgb; + + // specular color + vreflect.y = vreflect.y * 2 - 1; + + float3 e0s = texCUBElod(env_s0, float4(vreflect, 0.0f)); + float3 e1s = texCUBElod(env_s1, float4(vreflect, 0.0f)); + float3 env_s = L_hemi_color.xyz * lerp(e0s, e1s, L_hemi_color.w); + env_s *= env_s; + hspecular = env_s * light.w * s; +} +#endif diff --git a/gamedata/shaders/r2/hmodel_f.hlsli b/gamedata/shaders/r2/hmodel_f.hlsli new file mode 100644 index 0000000..14688c9 --- /dev/null +++ b/gamedata/shaders/r2/hmodel_f.hlsli @@ -0,0 +1,65 @@ +#ifndef HMODEL_H +#define HMODEL_H + +#include "common.hlsli" + +uniform samplerCUBE env_s0; +uniform samplerCUBE env_s1; +uniform float4 env_color; // color.w = lerp factor +uniform float3x4 m_v2w; + +void hmodel(out float3 hdiffuse, out float3 hspecular, float m, float h, float s, float3 _point, float3 normal) +{ + // hscale - something like diffuse reflection + float3 nw = mul(m_v2w, normal); + float hscale = h; //. * (.5h + .5h*nw.y); +#ifdef USE_GAMMA_22 + hscale = (hscale * hscale); // make it more linear +#endif + + // reflection vector + float3 v2point = mul(m_v2w, normalize(_point)); + float3 vreflect = reflect(v2point, nw); + float hspec = .5h + .5h * dot(vreflect, v2point); + + // material + float4 light = tex3D(s_material, float3(hscale, hspec, m)); // sample material + + // diffuse color + float3 e0d = texCUBE(env_s0, nw); + float3 e1d = texCUBE(env_s1, nw); + float3 env_d = env_color.xyz * lerp(e0d, e1d, env_color.w); + hdiffuse = env_d * light.xyz + L_ambient.rgb; + + // specular color + float3 e0s = texCUBE(env_s0, vreflect); + float3 e1s = texCUBE(env_s1, vreflect); + float3 env_s = env_color.xyz * lerp(e0s, e1s, env_color.w); + hspecular = env_s * light.w * s; +} + +void hmodel_table(out float3 hdiffuse, out float3 hspecular, float m, float h, float s, float3 _point, float3 normal) +{ + // hscale - something like diffuse reflection + float hscale = h; + + // reflection vector + float3 v2point = normalize(_point); + float3 vreflect = reflect(v2point, normal); + float hspec = .5h + .5h * dot(vreflect, v2point); + + // material + float4 light = tex3D(s_material, float3(hscale, hspec, m)); // sample material + + // diffuse color + float3 env_d = texCUBE(env_s0, normal); + + // specular color + float3 env_s = texCUBE(env_s0, vreflect); + + // + hdiffuse = env_d * light.xyz + L_ambient.rgb; + hspecular = env_s * light.w * s; +} + +#endif diff --git a/gamedata/shaders/r2/hud3d.ps.hlsl b/gamedata/shaders/r2/hud3d.ps.hlsl new file mode 100644 index 0000000..df4d764 --- /dev/null +++ b/gamedata/shaders/r2/hud3d.ps.hlsl @@ -0,0 +1,13 @@ +#include "common.hlsli" + +struct ui_vert_out +{ + float2 tc0 : TEXCOORD0; + float4 P : POSITION; +}; + +float4 main(ui_vert_out I) : COLOR +{ + float4 r = tex2D(s_base, I.tc0); + return r; +} diff --git a/gamedata/shaders/r2/hud3d.vs.hlsl b/gamedata/shaders/r2/hud3d.vs.hlsl new file mode 100644 index 0000000..47bef8b --- /dev/null +++ b/gamedata/shaders/r2/hud3d.vs.hlsl @@ -0,0 +1,25 @@ +#include "common.hlsli" + +struct ui_vert_in +{ + float4 P : POSITION; + float4 color : COLOR0; + float2 uv : TEXCOORD0; +}; + +struct ui_vert_out +{ + float2 tc0 : TEXCOORD0; + float4 P : POSITION; +}; + +ui_vert_out main(ui_vert_in v) +{ + ui_vert_out O; + + O.tc0 = v.uv; + O.P = v.P; + O.P.w = 1; + O.P = mul(m_WVP, O.P); + return O; +} diff --git a/gamedata/shaders/r2/hud_crosshair.lua b/gamedata/shaders/r2/hud_crosshair.lua new file mode 100644 index 0000000..7c5097d --- /dev/null +++ b/gamedata/shaders/r2/hud_crosshair.lua @@ -0,0 +1,6 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("null", "simple_color") + :fog(false) + :zb(false, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) +end diff --git a/gamedata/shaders/r2/hud_font.lua b/gamedata/shaders/r2/hud_font.lua new file mode 100644 index 0000000..6f41a55 --- /dev/null +++ b/gamedata/shaders/r2/hud_font.lua @@ -0,0 +1,7 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("null", "hud_font") + :fog(false) + :zb(false, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + shader:sampler("s_base"):texture(t_base) +end diff --git a/gamedata/shaders/r2/hud_font.ps.hlsl b/gamedata/shaders/r2/hud_font.ps.hlsl new file mode 100644 index 0000000..7ab06f8 --- /dev/null +++ b/gamedata/shaders/r2/hud_font.ps.hlsl @@ -0,0 +1,15 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; + float4 c0 : COLOR0; +}; + +float4 main(v2p I) : COLOR +{ + float4 r = tex2D(s_base, I.tc0); + r.rgb = I.c0.rgb; + r.a *= I.c0.a; + return r; +} diff --git a/gamedata/shaders/r2/hud_font2.lua b/gamedata/shaders/r2/hud_font2.lua new file mode 100644 index 0000000..f7c9151 --- /dev/null +++ b/gamedata/shaders/r2/hud_font2.lua @@ -0,0 +1,7 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("null", "font2") + :fog(false) + :zb(false, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + shader:sampler("s_base"):texture(t_base) +end diff --git a/gamedata/shaders/r2/hud_movie.lua b/gamedata/shaders/r2/hud_movie.lua new file mode 100644 index 0000000..4a61a6c --- /dev/null +++ b/gamedata/shaders/r2/hud_movie.lua @@ -0,0 +1,7 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("null", "yuv2rgb") + :fog(false) + :zb(false, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + shader:sampler("s_base"):texture(t_base) +end diff --git a/gamedata/shaders/r2/hud_p3d.lua b/gamedata/shaders/r2/hud_p3d.lua new file mode 100644 index 0000000..956028e --- /dev/null +++ b/gamedata/shaders/r2/hud_p3d.lua @@ -0,0 +1,7 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("hud3d", "hud3d") + :fog(false) + :zb(true, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + shader:sampler("s_base"):texture(t_base) +end diff --git a/gamedata/shaders/r2/lmodel.hlsli b/gamedata/shaders/r2/lmodel.hlsli new file mode 100644 index 0000000..3f58672 --- /dev/null +++ b/gamedata/shaders/r2/lmodel.hlsli @@ -0,0 +1,58 @@ +#ifndef LMODEL_H +#define LMODEL_H + +#include "common.hlsli" + +// Lighting formulas // +float4 plight_infinity(float m, float3 _point, float3 normal, float3 light_direction) +{ + float3 N = normal; // normal + float3 V = -normalize(_point); // vector2eye + float3 L = -light_direction; // vector2light + float3 H = normalize(L + V); // float-angle-vector + return tex3D(s_material, float3(dot(L, N), dot(H, N), m)); // sample material +} +float4 plight_infinity2(float m, float3 _point, float3 normal, float3 light_direction) +{ + float3 N = normal; // normal + float3 V = -normalize(_point); // vector2eye + float3 L = -light_direction; // vector2light + float3 H = normalize(L + V); // float-angle-vector + float3 R = reflect(-V, N); + float s = saturate(dot(L, R)); + s = saturate(dot(H, N)); + float f = saturate(dot(-V, R)); + s *= f; + float4 r = tex3D(s_material, float3(dot(L, N), s, m)); // sample material + r.w = pow(saturate(s), 4); + return r; +} +float4 plight_local(float m, float3 _point, float3 normal, float3 light_position, float light_range_rsq, out float rsqr) +{ + float3 N = normal; // normal + float3 L2P = _point - light_position; // light2point + float3 V = -normalize(_point); // vector2eye + float3 L = -normalize((float3)L2P); // vector2light + float3 H = normalize(L + V); // float-angle-vector + rsqr = dot(L2P, L2P); // distance 2 light (squared) + float att = saturate(1 - rsqr * light_range_rsq); // q-linear attenuate + float4 light = tex3D(s_material, float3(dot(L, N), dot(H, N), m)); // sample material + return att * light; +} + +float4 blendp(float4 value, float4 tcp) +{ +#ifndef FP16_BLEND + value += (float4)tex2Dproj(s_accumulator, tcp); // emulate blend +#endif + return value; +} +float4 blend(float4 value, float2 tc) +{ +#ifndef FP16_BLEND + value += (float4)tex2D(s_accumulator, tc); // emulate blend +#endif + return value; +} + +#endif diff --git a/gamedata/shaders/r2/lod.ps.hlsl b/gamedata/shaders/r2/lod.ps.hlsl new file mode 100644 index 0000000..1eee75e --- /dev/null +++ b/gamedata/shaders/r2/lod.ps.hlsl @@ -0,0 +1,32 @@ +#include "common.hlsli" +#include "sload.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float3 position : TEXCOORD0; + float2 tc0 : TEXCOORD1; + float2 tc1 : TEXCOORD2; + float4 af : COLOR1; +}; + +void main(in vf I, out f_deffer O) +{ + // 1. Base texture + kill pixels with low alpha + float4 D0 = tex2D(s_base, I.tc0); + float4 D1 = tex2D(s_base, I.tc1); + float4 H0 = tex2D(s_hemi, I.tc0); + float4 H1 = tex2D(s_hemi, I.tc1); + + float4 D = lerp(D0, D1, I.af.w); + float4 H = lerp(H0, H1, I.af.w); + + H.xyz = H.rgb * 2.0f - 1.0f; + D.w *= I.af.z; + H.w *= I.af.x; + + clip(D.w - (96.h / 255.h)); + float3 N = normalize(H.xyz); + + O = pack_gbuffer(float4(N, H.w), float4(I.position, 0.0f), float4(D.xyz, def_gloss)); +} diff --git a/gamedata/shaders/r2/lod.vs.hlsl b/gamedata/shaders/r2/lod.vs.hlsl new file mode 100644 index 0000000..ad3f863 --- /dev/null +++ b/gamedata/shaders/r2/lod.vs.hlsl @@ -0,0 +1,47 @@ +#include "common.hlsli" + +struct vv +{ + float3 pos0 : POSITION0; + float3 pos1 : POSITION1; + float3 n0 : NORMAL0; + float3 n1 : NORMAL1; + float2 tc0 : TEXCOORD0; + float2 tc1 : TEXCOORD1; + float4 rgbh0 : TEXCOORD2; // rgb.h + float4 rgbh1 : TEXCOORD3; // rgb.h + float4 sun_af : COLOR0; // x=sun_0, y=sun_1, z=alpha, w=factor +}; + +struct vf +{ + float4 hpos : POSITION; + float3 Pe : TEXCOORD0; + float2 tc0 : TEXCOORD1; // base0 + float2 tc1 : TEXCOORD2; // base1 + float4 af : COLOR1; // alpha&factor +}; + +#define L_SCALE (2.0h * 1.55h) +vf main(vv I) +{ + vf o; + + // lerp pos + float factor = I.sun_af.w; + float4 pos = float4(lerp(I.pos0, I.pos1, factor), 1); + + float h = lerp(I.rgbh0.w, I.rgbh1.w, factor) * L_SCALE; + + o.hpos = mul(m_VP, pos); // xform, input in world coords + o.Pe = mul(m_V, pos); + + // replicate TCs + o.tc0 = I.tc0; + o.tc1 = I.tc1; + + // calc normal & lighting + o.af = float4(h, h, I.sun_af.z, factor); + return o; +} +FXVS; diff --git a/gamedata/shaders/r2/mblur.hlsli b/gamedata/shaders/r2/mblur.hlsli new file mode 100644 index 0000000..1d99d7e --- /dev/null +++ b/gamedata/shaders/r2/mblur.hlsli @@ -0,0 +1,46 @@ +#ifndef MBLUR_H +#define MBLUR_H + +#ifndef USE_MBLUR +float3 mblur(float2 UV, float3 pos, float3 c_original) +{ + return c_original; +} +#else + #include "common.hlsli" + +uniform float4x4 m_current; +uniform float4x4 m_previous; +uniform float2 m_blur; // scale_x / 12, scale_y / 12 + + #define MBLUR_SAMPLES float(12.0f) + #define MBLUR_CLAMP float(0.001f) + +float3 mblur(float2 UV, float3 pos, float3 c_original) +{ + float4 pos4 = float4(pos, 1.0f); + + float4 p_current = mul(m_current, pos4); + float4 p_previous = mul(m_previous, pos4); + float2 p_velocity = m_blur * ((p_current.xy / p_current.w) - (p_previous.xy / p_previous.w)); + p_velocity = clamp(p_velocity, -MBLUR_CLAMP, +MBLUR_CLAMP); + + // For each sample, sum up each sample's color in "Blurred" and then divide + // to average the color after all the samples are added. + float3 blurred = c_original; + blurred += tex2D(s_image, p_velocity * 1.h + UV).rgb; + blurred += tex2D(s_image, p_velocity * 2.h + UV).rgb; + blurred += tex2D(s_image, p_velocity * 3.h + UV).rgb; + blurred += tex2D(s_image, p_velocity * 4.h + UV).rgb; + blurred += tex2D(s_image, p_velocity * 5.h + UV).rgb; + blurred += tex2D(s_image, p_velocity * 6.h + UV).rgb; + blurred += tex2D(s_image, p_velocity * 7.h + UV).rgb; + blurred += tex2D(s_image, p_velocity * 8.h + UV).rgb; + blurred += tex2D(s_image, p_velocity * 9.h + UV).rgb; + blurred += tex2D(s_image, p_velocity * 10.h + UV).rgb; + blurred += tex2D(s_image, p_velocity * 11.h + UV).rgb; + return blurred / MBLUR_SAMPLES; +} +#endif + +#endif diff --git a/gamedata/shaders/r2/model_clockarrow_h.ps.hlsl b/gamedata/shaders/r2/model_clockarrow_h.ps.hlsl new file mode 100644 index 0000000..017b8ff --- /dev/null +++ b/gamedata/shaders/r2/model_clockarrow_h.ps.hlsl @@ -0,0 +1,44 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0: TEXCOORD0; // base + float3 tc1: TEXCOORD1; + float4 c0: COLOR0; // sun.(fog*fog) +}; + +float get_noise(float2 co) +{ + return (frac(sin(dot(co.xy ,float2(12.9898,78.233))) * 43758.5453))*0.5; +}; + +uniform float4 m_timearrow; +uniform float4 m_affects; + +float4 main ( v2p I ) : COLOR +{ + float2 coords = I.tc0; + float2 coords_new; + + // Rotate texture + float sin_a = m_timearrow.x; + float cos_a = m_timearrow.y; + coords.x = coords.x-0.5; + coords.y = coords.y-0.5; + + coords_new.x = coords.x * cos_a + coords.y * sin_a; + coords_new.y = -coords.x * sin_a + coords.y * cos_a; + + coords_new.x = coords_new.x+0.5; + coords_new.y = coords_new.y+0.5; + + + float4 t_base = tex2D (s_base,coords_new); + float4 t_noise = tex2D (s_lmap,coords_new); + float noise = get_noise(I.tc0*timers.z) * m_affects.x * m_affects.x * 30; + + t_base.rgb += t_noise.rgb*noise+0.1; + + return t_base; +} + diff --git a/gamedata/shaders/r2/model_clockarrow_m.ps.hlsl b/gamedata/shaders/r2/model_clockarrow_m.ps.hlsl new file mode 100644 index 0000000..7fdeb2d --- /dev/null +++ b/gamedata/shaders/r2/model_clockarrow_m.ps.hlsl @@ -0,0 +1,44 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0: TEXCOORD0; // base + float3 tc1: TEXCOORD1; + float4 c0: COLOR0; // sun.(fog*fog) +}; + +float get_noise(float2 co) +{ + return (frac(sin(dot(co.xy ,float2(12.9898,78.233))) * 43758.5453))*0.5; +}; + +uniform float4 m_timearrow; +uniform float4 m_affects; + +float4 main ( v2p I ) : COLOR +{ + float2 coords = I.tc0; + float2 coords_new; + + // Rotate texture + float sin_a = m_timearrow.z; + float cos_a = m_timearrow.a; + coords.x = coords.x-0.5; + coords.y = coords.y-0.5; + + coords_new.x = coords.x * cos_a + coords.y * sin_a; + coords_new.y = -coords.x * sin_a + coords.y * cos_a; + + coords_new.x = coords_new.x+0.5; + coords_new.y = coords_new.y+0.5; + + + float4 t_base = tex2D (s_base,coords_new); + float4 t_noise = tex2D (s_lmap,coords_new); + float noise = get_noise(I.tc0*timers.z) * m_affects.x * m_affects.x * 30; + + t_base.rgb += t_noise.rgb*noise+0.1; + + return t_base; +} + diff --git a/gamedata/shaders/r2/model_clockarrow_s.ps.hlsl b/gamedata/shaders/r2/model_clockarrow_s.ps.hlsl new file mode 100644 index 0000000..4fd62dc --- /dev/null +++ b/gamedata/shaders/r2/model_clockarrow_s.ps.hlsl @@ -0,0 +1,44 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0: TEXCOORD0; // base + float3 tc1: TEXCOORD1; + float4 c0: COLOR0; // sun.(fog*fog) +}; + +float get_noise(float2 co) +{ + return (frac(sin(dot(co.xy ,float2(12.9898,78.233))) * 43758.5453))*0.5; +}; + +uniform float4 m_timearrow2; +uniform float4 m_affects; + +float4 main ( v2p I ) : COLOR +{ + float2 coords = I.tc0; + float2 coords_new; + + // Rotate texture + float sin_a = m_timearrow2.x; + float cos_a = m_timearrow2.y; + coords.x = coords.x-0.5; + coords.y = coords.y-0.5; + + coords_new.x = coords.x * cos_a + coords.y * sin_a; + coords_new.y = -coords.x * sin_a + coords.y * cos_a; + + coords_new.x = coords_new.x+0.5; + coords_new.y = coords_new.y+0.5; + + + float4 t_base = tex2D (s_base,coords_new); + float4 t_noise = tex2D (s_lmap,coords_new); + float noise = get_noise(I.tc0*timers.z) * m_affects.x * m_affects.x * 30; + + t_base.rgb += t_noise.rgb*noise+0.1; + + return t_base; +} + diff --git a/gamedata/shaders/r2/model_compassarrow.ps.hlsl b/gamedata/shaders/r2/model_compassarrow.ps.hlsl new file mode 100644 index 0000000..2db2576 --- /dev/null +++ b/gamedata/shaders/r2/model_compassarrow.ps.hlsl @@ -0,0 +1,44 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0: TEXCOORD0; // base + float3 tc1: TEXCOORD1; + float4 c0: COLOR0; // sun.(fog*fog) +}; + +float get_noise(float2 co) +{ + return (frac(sin(dot(co.xy ,float2(12.9898,78.233))) * 43758.5453))*0.5; +}; + +uniform float4 m_timearrow2; +uniform float4 m_affects; + +float4 main ( v2p I ) : COLOR +{ + float2 coords = I.tc0; + float2 coords_new; + + // Rotate texture + float sin_a = m_timearrow2.z; + float cos_a = m_timearrow2.a; + coords.x = coords.x-0.5; + coords.y = coords.y-0.5; + + coords_new.x = coords.x * cos_a + coords.y * sin_a; + coords_new.y = -coords.x * sin_a + coords.y * cos_a; + + coords_new.x = coords_new.x+0.5; + coords_new.y = coords_new.y+0.5; + + + float4 t_base = tex2D (s_base,coords_new); + float4 t_noise = tex2D (s_lmap,coords_new); + float noise = get_noise(I.tc0*timers.z) * m_affects.x * m_affects.x * 30; + + t_base.rgb += t_noise.rgb*noise+0.1; + + return t_base; +} + diff --git a/gamedata/shaders/r2/model_compscreen.ps.hlsl b/gamedata/shaders/r2/model_compscreen.ps.hlsl new file mode 100644 index 0000000..b45f1a8 --- /dev/null +++ b/gamedata/shaders/r2/model_compscreen.ps.hlsl @@ -0,0 +1,52 @@ +#include "common.hlsli" +#include "sload.hlsli" + +uniform float4 m_affects; + +float get_noise(float2 co) +{ + return (frac(sin(dot(co.xy ,float2(12.9898,78.233))) * 43758.5453))*0.5; +}; + +f_deffer main ( p_flat I ) +{ + f_deffer O; + + // diffuse + float3 D = tex2D(s_base, I.tcdh); // IN: rgb.a + +#ifdef USE_TDETAIL + D.rgb = 2*D.rgb*tex2D (s_detail, I.tcdbump).rgb; +#endif + + // hemi,sun,material + float ms = xmaterial ; +#ifdef USE_LM_HEMI + float4 lm = tex2D (s_hemi, I.lmh); +// float h = dot (lm.rgb,1.h/3.h); + float h = get_hemi(lm); +# ifdef USE_R2_STATIC_SUN +// ms = lm.w ; + ms = get_sun(lm); +# endif +#else + float h = I.position.w ; +# ifdef USE_R2_STATIC_SUN + ms = I.tcdh.w ; +# endif +#endif + + // ��� ��� ������� + float noise = get_noise(I.tcdh*timers.z) * m_affects.x * m_affects.x * 30; + + D.r += noise+0.1; + D.g += noise+0.1; + D.b += noise+0.1; + + // 2. Standart output + O.N = float4(normalize((float3)I.N.xyz), h); + O.P = float4(I.position.xyz + O.N.xyz*def_virtualh/2.0f, ms); + O.C = float4(D.rgb, def_gloss); // OUT: rgb.gloss + + return O; +} diff --git a/gamedata/shaders/r2/model_def_lplanes.vs.hlsl b/gamedata/shaders/r2/model_def_lplanes.vs.hlsl new file mode 100644 index 0000000..dd070cb --- /dev/null +++ b/gamedata/shaders/r2/model_def_lplanes.vs.hlsl @@ -0,0 +1,67 @@ +#include "common.hlsli" +#include "skin.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; // base + float4 c0 : COLOR0; // color +}; + +vf _main(v_model v) +{ + vf o; + + o.hpos = mul(m_WVP, v.P); // xform, input in world coords + o.tc0 = v.tc.xy; // copy tc + + // calculate fade + float3 dir_v = normalize(mul(m_WV, v.P)); + float3 norm_v = normalize(mul(m_WV, v.N)); + float fade = abs(dot(dir_v, norm_v)); + o.c0 = fade; + + return o; +} + +#ifdef SKIN_NONE +vf main(v_model v) +{ + return _main(v); +} +#endif + +#ifdef SKIN_0 +vf main(v_model_skinned_0 v) +{ + return _main(skinning_0(v)); +} +#endif + +#ifdef SKIN_1 +vf main(v_model_skinned_1 v) +{ + return _main(skinning_1(v)); +} +#endif + +#ifdef SKIN_2 +vf main(v_model_skinned_2 v) +{ + return _main(skinning_2(v)); +} +#endif + +#ifdef SKIN_3 +vf main(v_model_skinned_3 v) +{ + return _main(skinning_3(v)); +} +#endif + +#ifdef SKIN_4 +vf main(v_model_skinned_4 v) +{ + return _main(skinning_4(v)); +} +#endif diff --git a/gamedata/shaders/r2/model_def_lq.ps.hlsl b/gamedata/shaders/r2/model_def_lq.ps.hlsl new file mode 100644 index 0000000..5c39e22 --- /dev/null +++ b/gamedata/shaders/r2/model_def_lq.ps.hlsl @@ -0,0 +1,20 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float2 tc1 : TEXCOORD1; // lmap + float3 c0 : COLOR0; // sun +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 t_base = tex2D(s_base, I.tc0); + + float3 light = I.c0; + float3 final = light * t_base * 2.0f; + + // out + return float4(final.r, final.g, final.b, t_base.a); +} diff --git a/gamedata/shaders/r2/model_def_lq.vs.hlsl b/gamedata/shaders/r2/model_def_lq.vs.hlsl new file mode 100644 index 0000000..93b67c3 --- /dev/null +++ b/gamedata/shaders/r2/model_def_lq.vs.hlsl @@ -0,0 +1,68 @@ +#include "common.hlsli" +#include "skin.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; // base + float3 c0 : COLOR0; // color + float fog : FOG; +}; + +vf _main(v_model v) +{ + vf o; + + float4 pos = v.P; + float3 pos_w = mul(m_W, pos); + float3 norm_w = normalize(mul(m_W, v.N)); + + o.hpos = mul(m_WVP, pos); // xform, input in world coords + o.tc0 = v.tc.xy; // copy tc + o.c0 = calc_model_lq_lighting(norm_w); + o.fog = saturate(calc_fogging(float4(pos_w, 1))); // fog, input in world coords + + return o; +} + +#ifdef SKIN_NONE +vf main(v_model v) +{ + return _main(v); +} +#endif + +#ifdef SKIN_0 +vf main(v_model_skinned_0 v) +{ + return _main(skinning_0(v)); +} +#endif + +#ifdef SKIN_1 +vf main(v_model_skinned_1 v) +{ + return _main(skinning_1(v)); +} +#endif + +#ifdef SKIN_2 +vf main(v_model_skinned_2 v) +{ + return _main(skinning_2(v)); +} +#endif + +#ifdef SKIN_3 +vf main(v_model_skinned_3 v) +{ + return _main(skinning_3(v)); +} +#endif + +#ifdef SKIN_4 +vf main(v_model_skinned_4 v) +{ + return _main(skinning_4(v)); +} +#endif diff --git a/gamedata/shaders/r2/model_digiclock_hh.ps.hlsl b/gamedata/shaders/r2/model_digiclock_hh.ps.hlsl new file mode 100644 index 0000000..ddd5549 --- /dev/null +++ b/gamedata/shaders/r2/model_digiclock_hh.ps.hlsl @@ -0,0 +1,49 @@ +#include "common.hlsli" +#include "sload.hlsli" + +uniform float4 m_digiclock; +uniform float4 m_affects; + +float get_noise(float2 co) +{ + return (frac(sin(dot(co.xy ,float2(12.9898,78.233))) * 43758.5453))*0.5; +}; + +f_deffer main ( p_flat I ) +{ + f_deffer O; + float digit = m_digiclock.x; + I.tcdh.x = digit + (I.tcdh.x * 0.1); + + // diffuse + float3 D = tex2D(s_base, I.tcdh); // IN: rgb.a + + // hemi,sun,material + float ms = xmaterial ; +#ifdef USE_LM_HEMI + float4 lm = tex2D (s_hemi, I.lmh); +// float h = dot (lm.rgb,1.h/3.h); + float h = get_hemi(lm); +# ifdef USE_R2_STATIC_SUN +// ms = lm.w ; + ms = get_sun(lm); +# endif +#else + float h = I.position.w ; +# ifdef USE_R2_STATIC_SUN + ms = I.tcdh.w ; +# endif +#endif + + float noise = get_noise(I.tcdh*timers.z) * m_affects.x * m_affects.x * 30; + float4 t_noise = tex2D (s_lmap,I.tcdh); + D.rgb += t_noise.rgb*noise+0.1; + + // 2. Standart output + O.N = float4 (normalize((float3)I.N.xyz), h ); + O.P = float4 (I.position.xyz + O.N.xyz*def_virtualh/2.0f, ms ); + O.C = float4 (D.rgb, def_gloss ); // OUT: rgb.gloss + + return O; +} + diff --git a/gamedata/shaders/r2/model_digiclock_hl.ps.hlsl b/gamedata/shaders/r2/model_digiclock_hl.ps.hlsl new file mode 100644 index 0000000..7290b94 --- /dev/null +++ b/gamedata/shaders/r2/model_digiclock_hl.ps.hlsl @@ -0,0 +1,49 @@ +#include "common.hlsli" +#include "sload.hlsli" + +uniform float4 m_digiclock; +uniform float4 m_affects; + +float get_noise(float2 co) +{ + return (frac(sin(dot(co.xy ,float2(12.9898,78.233))) * 43758.5453))*0.5; +}; + +f_deffer main ( p_flat I ) +{ + f_deffer O; + float digit = m_digiclock.y; + I.tcdh.x = digit + (I.tcdh.x * 0.1); + + // diffuse + float3 D = tex2D(s_base, I.tcdh); // IN: rgb.a + + // hemi,sun,material + float ms = xmaterial ; +#ifdef USE_LM_HEMI + float4 lm = tex2D (s_hemi, I.lmh); +// float h = dot (lm.rgb,1.h/3.h); + float h = get_hemi(lm); +# ifdef USE_R2_STATIC_SUN +// ms = lm.w ; + ms = get_sun(lm); +# endif +#else + float h = I.position.w ; +# ifdef USE_R2_STATIC_SUN + ms = I.tcdh.w ; +# endif +#endif + + float noise = get_noise(I.tcdh*timers.z) * m_affects.x * m_affects.x * 30; + float4 t_noise = tex2D (s_lmap,I.tcdh); + D.rgb += t_noise.rgb*noise+0.1; + + // 2. Standart output + O.N = float4(normalize((float3)I.N.xyz), h ); + O.P = float4(I.position.xyz + O.N.xyz*def_virtualh/2.h, ms ); + O.C = float4(D.rgb, def_gloss ); // OUT: rgb.gloss + + return O; +} + diff --git a/gamedata/shaders/r2/model_digiclock_mh.ps.hlsl b/gamedata/shaders/r2/model_digiclock_mh.ps.hlsl new file mode 100644 index 0000000..44917ff --- /dev/null +++ b/gamedata/shaders/r2/model_digiclock_mh.ps.hlsl @@ -0,0 +1,49 @@ +#include "common.hlsli" +#include "sload.hlsli" + +uniform float4 m_digiclock; +uniform float4 m_affects; + +float get_noise(float2 co) +{ + return (frac(sin(dot(co.xy ,float2(12.9898,78.233))) * 43758.5453))*0.5; +}; + +f_deffer main ( p_flat I ) +{ + f_deffer O; + float digit = m_digiclock.z; + I.tcdh.x = digit + (I.tcdh.x * 0.1); + + // diffuse + float3 D = tex2D(s_base, I.tcdh); // IN: rgb.a + + // hemi,sun,material + float ms = xmaterial ; +#ifdef USE_LM_HEMI + float4 lm = tex2D (s_hemi, I.lmh); +// float h = dot (lm.rgb,1.h/3.h); + float h = get_hemi(lm); +# ifdef USE_R2_STATIC_SUN +// ms = lm.w ; + ms = get_sun(lm); +# endif +#else + float h = I.position.w ; +# ifdef USE_R2_STATIC_SUN + ms = I.tcdh.w ; +# endif +#endif + + float noise = get_noise(I.tcdh*timers.z) * m_affects.x * m_affects.x * 30; + float4 t_noise = tex2D (s_lmap,I.tcdh); + D.rgb += t_noise.rgb*noise+0.1; + + // 2. Standart output + O.N = float4 (normalize((float3)I.N.xyz), h); + O.P = float4 (I.position.xyz + O.N.xyz*def_virtualh/2.0f, ms); + O.C = float4 (D.rgb, def_gloss); // OUT: rgb.gloss + + return O; +} + diff --git a/gamedata/shaders/r2/model_digiclock_ml.ps.hlsl b/gamedata/shaders/r2/model_digiclock_ml.ps.hlsl new file mode 100644 index 0000000..e6e9e7b --- /dev/null +++ b/gamedata/shaders/r2/model_digiclock_ml.ps.hlsl @@ -0,0 +1,49 @@ +#include "common.hlsli" +#include "sload.hlsli" + +uniform float4 m_digiclock; +uniform float4 m_affects; + +float get_noise(float2 co) +{ + return (frac(sin(dot(co.xy ,float2(12.9898,78.233))) * 43758.5453))*0.5; +}; + +f_deffer main ( p_flat I ) +{ + f_deffer O; + float digit = m_digiclock.a; + I.tcdh.x = digit + (I.tcdh.x * 0.1); + + // diffuse + float3 D = tex2D(s_base, I.tcdh); // IN: rgb.a + + // hemi,sun,material + float ms = xmaterial ; +#ifdef USE_LM_HEMI + float4 lm = tex2D (s_hemi, I.lmh); +// float h = dot (lm.rgb,1.h/3.h); + float h = get_hemi(lm); +# ifdef USE_R2_STATIC_SUN +// ms = lm.w ; + ms = get_sun(lm); +# endif +#else + float h = I.position.w ; +# ifdef USE_R2_STATIC_SUN + ms = I.tcdh.w ; +# endif +#endif + + float noise = get_noise(I.tcdh*timers.z) * m_affects.x * m_affects.x * 30; + float4 t_noise = tex2D (s_lmap,I.tcdh); + D.rgb += t_noise.rgb*noise+0.1; + + // 2. Standart output + O.N = float4 (normalize((float3)I.N.xyz), h ); + O.P = float4 (I.position.xyz + O.N.xyz*def_virtualh/2.0f, ms ); + O.C = float4 (D.rgb, def_gloss ); // OUT: rgb.gloss + + return O; +} + diff --git a/gamedata/shaders/r2/model_distort.vs.hlsl b/gamedata/shaders/r2/model_distort.vs.hlsl new file mode 100644 index 0000000..9abf2c8 --- /dev/null +++ b/gamedata/shaders/r2/model_distort.vs.hlsl @@ -0,0 +1,67 @@ +#include "common.hlsli" +#include "skin.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; // base + float4 c0 : COLOR0; // color +}; + +vf _main(v_model v) +{ + vf o; + + o.hpos = mul(m_WVP, v.P); // xform, input in world coords + o.tc0 = v.tc.xy; // copy tc + + // calculate fade + float3 dir_v = normalize(mul(m_WV, v.P)); + float3 norm_v = normalize(mul(m_WV, v.N)); + float fade = 1 - abs(dot(dir_v, norm_v)); + o.c0 = fade; + + return o; +} + +#ifdef SKIN_NONE +vf main(v_model v) +{ + return _main(v); +} +#endif + +#ifdef SKIN_0 +vf main(v_model_skinned_0 v) +{ + return _main(skinning_0(v)); +} +#endif + +#ifdef SKIN_1 +vf main(v_model_skinned_1 v) +{ + return _main(skinning_1(v)); +} +#endif + +#ifdef SKIN_2 +vf main(v_model_skinned_2 v) +{ + return _main(skinning_2(v)); +} +#endif + +#ifdef SKIN_3 +vf main(v_model_skinned_3 v) +{ + return _main(skinning_3(v)); +} +#endif + +#ifdef SKIN_4 +vf main(v_model_skinned_4 v) +{ + return _main(skinning_4(v)); +} +#endif diff --git a/gamedata/shaders/r2/model_distort2t.vs.hlsl b/gamedata/shaders/r2/model_distort2t.vs.hlsl new file mode 100644 index 0000000..d00b4b7 --- /dev/null +++ b/gamedata/shaders/r2/model_distort2t.vs.hlsl @@ -0,0 +1,69 @@ +#include "common.hlsli" +#include "skin.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; // base + float2 tc1 : TEXCOORD1; // another + float4 c0 : COLOR0; // color +}; + +vf _main(v_model v) +{ + vf o; + + o.hpos = mul(m_WVP, v.P); // xform, input in world coords + o.tc0 = v.tc.xy; // copy tc + + // calculate fade + float3 dir_v = normalize(mul(m_WV, v.P)); + float3 norm_v = normalize(mul(m_WV, v.N)); + float fade = abs(dot(dir_v, norm_v)); + o.c0 = fade; + o.tc1 = fade; + + return o; +} + +#ifdef SKIN_NONE +vf main(v_model v) +{ + return _main(v); +} +#endif + +#ifdef SKIN_0 +vf main(v_model_skinned_0 v) +{ + return _main(skinning_0(v)); +} +#endif + +#ifdef SKIN_1 +vf main(v_model_skinned_1 v) +{ + return _main(skinning_1(v)); +} +#endif + +#ifdef SKIN_2 +vf main(v_model_skinned_2 v) +{ + return _main(skinning_2(v)); +} +#endif + +#ifdef SKIN_3 +vf main(v_model_skinned_3 v) +{ + return _main(skinning_3(v)); +} +#endif + +#ifdef SKIN_4 +vf main(v_model_skinned_4 v) +{ + return _main(skinning_4(v)); +} +#endif diff --git a/gamedata/shaders/r2/model_distort4ghost.vs.hlsl b/gamedata/shaders/r2/model_distort4ghost.vs.hlsl new file mode 100644 index 0000000..1eb2f37 --- /dev/null +++ b/gamedata/shaders/r2/model_distort4ghost.vs.hlsl @@ -0,0 +1,70 @@ +#include "common.hlsli" +#include "skin.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; // base + float4 c0 : COLOR0; // color + float fog : FOG; +}; + +vf _main(v_model v) +{ + vf o; + + o.hpos = mul(m_WVP, v.P); // xform, input in world coords + o.tc0 = v.tc.xy; // copy tc + o.fog = saturate(calc_fogging(float4(mul(m_W, v.P), 1))); // fog, input in world coords + + // calculate fade + float3 dir_v = normalize(mul(m_WV, v.P)); + float3 norm_v = normalize(mul(m_WV, v.N)); + // float fade = 0.6*(abs (dot(dir_v,norm_v))); + float fade = 1.3 * (1 - abs(dot(dir_v, norm_v))); + o.c0 = fade; + + return o; +} + +#ifdef SKIN_NONE +vf main(v_model v) +{ + return _main(v); +} +#endif + +#ifdef SKIN_0 +vf main(v_model_skinned_0 v) +{ + return _main(skinning_0(v)); +} +#endif + +#ifdef SKIN_1 +vf main(v_model_skinned_1 v) +{ + return _main(skinning_1(v)); +} +#endif + +#ifdef SKIN_2 +vf main(v_model_skinned_2 v) +{ + return _main(skinning_2(v)); +} +#endif + +#ifdef SKIN_3 +vf main(v_model_skinned_3 v) +{ + return _main(skinning_3(v)); +} +#endif + +#ifdef SKIN_4 +vf main(v_model_skinned_4 v) +{ + return _main(skinning_4(v)); +} +#endif diff --git a/gamedata/shaders/r2/model_distort4glass.vs.hlsl b/gamedata/shaders/r2/model_distort4glass.vs.hlsl new file mode 100644 index 0000000..f24536e --- /dev/null +++ b/gamedata/shaders/r2/model_distort4glass.vs.hlsl @@ -0,0 +1,69 @@ +#include "common.hlsli" +#include "skin.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; // base + float4 c0 : COLOR0; // color + float fog : FOG; +}; + +vf _main(v_model v) +{ + vf o; + + o.hpos = mul(m_WVP, v.P); // xform, input in world coords + o.tc0 = v.tc.xy; // copy tc + o.fog = saturate(calc_fogging(float4(mul(m_W, v.P), 1))); // fog, input in world coords + + // calculate fade + float3 dir_v = normalize(mul(m_WV, v.P)); + float3 norm_v = normalize(mul(m_WV, v.N)); + float fade = 0.9 * abs(dot(dir_v, norm_v)); + o.c0 = fade; + + return o; +} + +#ifdef SKIN_NONE +vf main(v_model v) +{ + return _main(v); +} +#endif + +#ifdef SKIN_0 +vf main(v_model_skinned_0 v) +{ + return _main(skinning_0(v)); +} +#endif + +#ifdef SKIN_1 +vf main(v_model_skinned_1 v) +{ + return _main(skinning_1(v)); +} +#endif + +#ifdef SKIN_2 +vf main(v_model_skinned_2 v) +{ + return _main(skinning_2(v)); +} +#endif + +#ifdef SKIN_3 +vf main(v_model_skinned_3 v) +{ + return _main(skinning_3(v)); +} +#endif + +#ifdef SKIN_4 +vf main(v_model_skinned_4 v) +{ + return _main(skinning_4(v)); +} +#endif diff --git a/gamedata/shaders/r2/model_distort_inv.vs.hlsl b/gamedata/shaders/r2/model_distort_inv.vs.hlsl new file mode 100644 index 0000000..dd070cb --- /dev/null +++ b/gamedata/shaders/r2/model_distort_inv.vs.hlsl @@ -0,0 +1,67 @@ +#include "common.hlsli" +#include "skin.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; // base + float4 c0 : COLOR0; // color +}; + +vf _main(v_model v) +{ + vf o; + + o.hpos = mul(m_WVP, v.P); // xform, input in world coords + o.tc0 = v.tc.xy; // copy tc + + // calculate fade + float3 dir_v = normalize(mul(m_WV, v.P)); + float3 norm_v = normalize(mul(m_WV, v.N)); + float fade = abs(dot(dir_v, norm_v)); + o.c0 = fade; + + return o; +} + +#ifdef SKIN_NONE +vf main(v_model v) +{ + return _main(v); +} +#endif + +#ifdef SKIN_0 +vf main(v_model_skinned_0 v) +{ + return _main(skinning_0(v)); +} +#endif + +#ifdef SKIN_1 +vf main(v_model_skinned_1 v) +{ + return _main(skinning_1(v)); +} +#endif + +#ifdef SKIN_2 +vf main(v_model_skinned_2 v) +{ + return _main(skinning_2(v)); +} +#endif + +#ifdef SKIN_3 +vf main(v_model_skinned_3 v) +{ + return _main(skinning_3(v)); +} +#endif + +#ifdef SKIN_4 +vf main(v_model_skinned_4 v) +{ + return _main(skinning_4(v)); +} +#endif diff --git a/gamedata/shaders/r2/model_env_lq.ps.hlsl b/gamedata/shaders/r2/model_env_lq.ps.hlsl new file mode 100644 index 0000000..e54d68e --- /dev/null +++ b/gamedata/shaders/r2/model_env_lq.ps.hlsl @@ -0,0 +1,24 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float3 tc1 : TEXCOORD1; // environment + float4 c0 : COLOR0; // sun.(fog*fog) +}; + +// Pixel +uniform samplerCUBE s_env; + +float4 main(v2p I) : COLOR +{ + float4 t_base = tex2D(s_base, I.tc0); + float4 t_env = texCUBE(s_env, I.tc1); + + float3 base = lerp(t_env, t_base, t_base.a); + float3 light = I.c0; + float3 final = light * base * 2.0f; + + // out + return float4(final.r, final.g, final.b, t_base.a * I.c0.a); +} diff --git a/gamedata/shaders/r2/model_env_lq.vs.hlsl b/gamedata/shaders/r2/model_env_lq.vs.hlsl new file mode 100644 index 0000000..c218d89 --- /dev/null +++ b/gamedata/shaders/r2/model_env_lq.vs.hlsl @@ -0,0 +1,70 @@ +#include "common.hlsli" +#include "skin.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; // base + float3 tc1 : TEXCOORD1; // environment + float4 c0 : COLOR0; // sun.(fog*fog) + float fog : FOG; +}; + +vf _main(v_model v) +{ + vf o; + + float4 pos = v.P; + float3 pos_w = mul(m_W, pos); + float3 norm_w = normalize(mul(m_W, v.N)); + + o.hpos = mul(m_WVP, pos); // xform, input in world coords + o.tc0 = v.tc.xy; // copy tc + o.tc1 = calc_reflection(pos_w, norm_w); + o.fog = saturate(calc_fogging(float4(pos_w, 1))); // fog, input in world coords + o.c0 = float4(calc_model_lq_lighting(norm_w), o.fog * o.fog); + + return o; +} + +#ifdef SKIN_NONE +vf main(v_model v) +{ + return _main(v); +} +#endif + +#ifdef SKIN_0 +vf main(v_model_skinned_0 v) +{ + return _main(skinning_0(v)); +} +#endif + +#ifdef SKIN_1 +vf main(v_model_skinned_1 v) +{ + return _main(skinning_1(v)); +} +#endif + +#ifdef SKIN_2 +vf main(v_model_skinned_2 v) +{ + return _main(skinning_2(v)); +} +#endif + +#ifdef SKIN_3 +vf main(v_model_skinned_3 v) +{ + return _main(skinning_3(v)); +} +#endif + +#ifdef SKIN_4 +vf main(v_model_skinned_4 v) +{ + return _main(skinning_4(v)); +} +#endif diff --git a/gamedata/shaders/r2/model_exohealth.ps.hlsl b/gamedata/shaders/r2/model_exohealth.ps.hlsl new file mode 100644 index 0000000..85df54d --- /dev/null +++ b/gamedata/shaders/r2/model_exohealth.ps.hlsl @@ -0,0 +1,46 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0: TEXCOORD0; // base + float3 tc1: TEXCOORD1; // environment + float4 c0: COLOR0; // sun.(fog*fog) +}; + +// Pixel +uniform float4 m_actor_params; +uniform float4 m_affects; + +float get_noise(float2 co) +{ + return (frac(sin(dot(co.xy ,float2(12.9898,78.233))) * 43758.5453))*0.5; +}; + + +float4 main( v2p I ): COLOR +{ + // + float problems = cos( ( frac( timers.z * 4 ) - 0.5 ) * 3.1416 )*2 - 0.8; + float AMPL = 0.3; + I.tc0.y -= ( m_affects.x > 0.15 && I.tc0.x > problems-AMPL && I.tc0.x < problems+AMPL) ? cos(4.71*(I.tc0.x-problems)/AMPL) * sin( frac(timers.z)*6.2831*90 ) * (m_affects.x/10) * (AMPL-abs(I.tc0.x-problems))/AMPL : 0; + + float4 t_base = tex2D (s_base, I.tc0); + + float tmp = 1-m_actor_params.y; + tmp = clamp(tmp, 0, 0.5); + t_base.r +=tmp*t_base.a; + + tmp = 0.5-abs(m_actor_params.y-0.5); + tmp = clamp(tmp, 0, 0.5); + t_base.g +=tmp*t_base.a; + + + // + float noise = get_noise(I.tc0*timers.z) * m_affects.x * 2; + t_base.r += noise; + t_base.g += noise; + t_base.b += noise; + + return float4 (t_base.r, t_base.g, t_base.b, 1); +} + diff --git a/gamedata/shaders/r2/model_exoscreen.ps.hlsl b/gamedata/shaders/r2/model_exoscreen.ps.hlsl new file mode 100644 index 0000000..db74530 --- /dev/null +++ b/gamedata/shaders/r2/model_exoscreen.ps.hlsl @@ -0,0 +1,31 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0: TEXCOORD0; // base + float2 tc1: TEXCOORD1; // environment + float4 c0: COLOR0; // sun.(fog*fog) +}; + +// Pixel +uniform float4 m_affects; + +float get_noise(float2 co) +{ + return (frac(sin(dot(co.xy ,float2(12.9898,78.233))) * 43758.5453))*0.5; +}; + + +float4 main ( v2p I ) : COLOR +{ + float4 t_base = tex2D (s_base, I.tc0); + + // + float noise = get_noise(I.tc0*timers.z) * m_affects.x * 2; + t_base.r += noise; + t_base.g += noise; + t_base.b += noise; + + return float4 (t_base.r, t_base.g, t_base.b, t_base.a*I.c0.a); +} + diff --git a/gamedata/shaders/r2/model_green_conditionbar.ps.hlsl b/gamedata/shaders/r2/model_green_conditionbar.ps.hlsl new file mode 100644 index 0000000..ddaff7d --- /dev/null +++ b/gamedata/shaders/r2/model_green_conditionbar.ps.hlsl @@ -0,0 +1,35 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0: TEXCOORD0; // base + float3 tc1: TEXCOORD1; // environment + float4 c0: COLOR0; // sun.(fog*fog) +}; + +// Pixel +uniform float4 m_actor_params; +uniform float4 m_affects; + +float get_noise(float2 co) +{ + return (frac(sin(dot(co.xy ,float2(12.9898,78.233))) * 43758.5453))*0.5; +}; + +float4 main ( v2p I ) : COLOR +{ + float4 t_base = tex2D (s_base, I.tc0); + + t_base.a = (I.tc0.x < m_actor_params.z) ? 1 : 0; + t_base.r += (0.5 < m_actor_params.z) ? 0 : 0.5; + t_base.g -= (0.25 < m_actor_params.z) ? 0 : 0.5; + + // + float noise = get_noise(I.tc0*timers.z) * m_affects.x * m_affects.x * 30; + t_base.r += noise; + t_base.g += noise; + t_base.b += noise; + + return float4 (t_base.r, t_base.g, t_base.b, t_base.a); +} + diff --git a/gamedata/shaders/r2/model_green_energybar.ps.hlsl b/gamedata/shaders/r2/model_green_energybar.ps.hlsl new file mode 100644 index 0000000..809c082 --- /dev/null +++ b/gamedata/shaders/r2/model_green_energybar.ps.hlsl @@ -0,0 +1,36 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0: TEXCOORD0; // base + float3 tc1: TEXCOORD1; // environment + float4 c0: COLOR0; // sun.(fog*fog) +}; + +// Pixel +uniform float4 m_actor_params; +uniform float4 m_affects; + +float get_noise(float2 co) +{ + return (frac(sin(dot(co.xy ,float2(12.9898,78.233))) * 43758.5453))*0.5; +}; + + +float4 main ( v2p I ) : COLOR +{ + float4 t_base = tex2D (s_base, I.tc0); + + t_base.a = (I.tc0.x < m_actor_params.a) ? 1 : 0; + t_base.r += (0.1 < m_actor_params.a) ? 0 : 0.5; + t_base.g -= (0.1 < m_actor_params.a) ? 0 : 0.5; + + // + float noise = get_noise(I.tc0*timers.z) * m_affects.x * m_affects.x * 30; + t_base.r += noise; + t_base.g += noise; + t_base.b += noise; + + return float4 (t_base.r, t_base.g, t_base.b, t_base.a); +} + diff --git a/gamedata/shaders/r2/model_pda_screen.ps.hlsl b/gamedata/shaders/r2/model_pda_screen.ps.hlsl new file mode 100644 index 0000000..c655b27 --- /dev/null +++ b/gamedata/shaders/r2/model_pda_screen.ps.hlsl @@ -0,0 +1,58 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0: TEXCOORD0; // base + float3 tc1: TEXCOORD1; + float4 c0: COLOR0; // sun.(fog*fog) +}; + +uniform sampler2D s_vp2; +uniform sampler2D s_load; +uniform float4 m_affects; + +float get_noise(float2 co) +{ + return (frac(sin(dot(co.xy ,float2(12.9898,78.233))) * 43758.5453))*0.5; +}; + +float4 problems_main( v2p I ) +{ + + // + float problems = frac(timers.z * 5*(1 + 2 * m_affects.x) ); + I.tc0.x+= ( m_affects.x > 0.09 && I.tc0.y > problems-0.01 && I.tc0.y < problems) ? sin((I.tc0.y-problems)*5*m_affects.y) : 0; + + // + problems = cos( ( frac( timers.z *2 ) - 0.5 ) * 3.1416 )*2 - 0.8; + float AMPL = 0.13; + I.tc0.x -= ( m_affects.x > 0.15 && I.tc0.y > problems-AMPL && I.tc0.y < problems+AMPL) ? cos(4.71*(I.tc0.y-problems)/AMPL) * sin( frac(timers.z)*6.2831*90 ) * 0.02 * (AMPL-abs(I.tc0.y-problems))/AMPL : 0; + + // - + I.tc0.x += ( m_affects.x > 0.38 ) ? (m_affects.y - 0.5) * 0.04 : 0; + + float4 t_vp2 = ( m_affects.x < 0.27 ) ? tex2D( s_vp2, I.tc0) : tex2D( s_base, I.tc0) ; // + + // + float noise = get_noise(I.tc0*timers.z) * m_affects.x * m_affects.x * 20; + t_vp2.r += noise; + t_vp2.g += noise; + t_vp2.b += noise; + + // + t_vp2.rgb = (m_affects.x > 0.41) ? 0 : t_vp2.rgb; + + return float4 (t_vp2.r, t_vp2.g, t_vp2.b, 1); +} + +float4 loading_main( v2p I ) +{ + float4 t_load = tex2D( s_load, I.tc0); + return float4 (t_load.r, t_load.g, t_load.b, 1); +} + +float4 main ( v2p I ) : COLOR +{ + return (m_affects.a > 0 && m_affects.x >= 0.08 ) ? loading_main(I) : problems_main(I); +} + diff --git a/gamedata/shaders/r2/model_scope_gauss.ps.hlsl b/gamedata/shaders/r2/model_scope_gauss.ps.hlsl new file mode 100644 index 0000000..810aa6e --- /dev/null +++ b/gamedata/shaders/r2/model_scope_gauss.ps.hlsl @@ -0,0 +1,78 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0: TEXCOORD0; // base + float3 tc1: TEXCOORD1; // environment + float4 c0: COLOR0; // sun.(fog*fog) +}; + +////////////////////////////////////////////////////////////////////////////////////////// + +// Pixel +uniform float4 screen_res; +uniform float4 m_hud_params; +uniform float4 m_zoom_deviation; +uniform float4 m_affects; + +float resize(float input, float factor, float offset) +{ + return (input-0.5f+offset) / factor+0.5f-offset; +} + +float get_noise(float2 co) +{ + return (frac(sin(dot(co.xy ,float2(12.9898,78.233))) * 43758.5453))*0.5; +}; + +uniform sampler2D s_vp2; + +float random(float2 co) +{ + return 0.5+(frac(sin(dot(co.xy ,float2(12.9898,78.233))) * 43758.5453))*0.5; +}; + +float4 main ( v2p I ) : COLOR +{ + + float4 t_base = tex2D (s_base, I.tc0); // + + // + I.tc0.x = I.tc0.x+m_zoom_deviation.x; + I.tc0.y = I.tc0.y+m_zoom_deviation.y; + + // , + I.tc0.x = resize(I.tc0.x, screen_res.x/screen_res.y, 0); + float4 t_vp2 = tex2D (s_vp2, I.tc0); // + float3 final = float3(0, 0, 0); + + // + float2 offset = distance(I.tc0, float2( .5f, .5f ))*float2(m_hud_params.z, m_hud_params.z); + t_vp2.r = tex2D ( s_vp2, I.tc0+offset).r; + t_vp2.b = tex2D ( s_vp2, I.tc0-offset).b; + + // + + // + float noise = random(I.tc0*timers.z) * m_zoom_deviation.w; + + float gray = ((t_vp2.r + t_vp2.g + t_vp2.b))*m_zoom_deviation.z*7; + t_vp2.r = t_vp2.r*(1-m_zoom_deviation.z) + gray; + t_vp2.g = t_vp2.g*(1-m_zoom_deviation.z) + gray; + t_vp2.b = t_vp2.b*(1-m_zoom_deviation.z) + gray; + + t_vp2.b+= (0.4 + noise)*m_zoom_deviation.z; + + // + float noise_blow = get_noise(I.tc0*timers.z) * m_affects.x * m_affects.x * 30; + t_vp2.r += noise_blow; + t_vp2.g += noise_blow; + t_vp2.b += noise_blow; + + // + final = lerp (t_vp2, t_base, t_base.a); + + + // out + return float4 (final.r, final.g, final.b, min(m_hud_params.y, m_hud_params.a)); +} diff --git a/gamedata/shaders/r2/model_scope_lense.ps.hlsl b/gamedata/shaders/r2/model_scope_lense.ps.hlsl new file mode 100644 index 0000000..9a8fcff --- /dev/null +++ b/gamedata/shaders/r2/model_scope_lense.ps.hlsl @@ -0,0 +1,69 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0: TEXCOORD0; // base + float3 tc1: TEXCOORD1; // environment + float4 c0: COLOR0; // sun.(fog*fog) +}; + +////////////////////////////////////////////////////////////////////////////////////////// + +float resize(float input, float factor, float offset) +{ + return (input-0.5f+offset) / factor+0.5f-offset; +} + +// Pixel +uniform float4 screen_res; +uniform float4 m_hud_params; +uniform float4 m_zoom_deviation; + +uniform sampler2D s_vp2; +//uniform sampler2D s_skymap; + +//uniform samplerCUBE s_env0; +//uniform samplerCUBE s_env1; + +float random(float2 co) +{ + return 0.5+(frac(sin(dot(co.xy ,float2(12.9898,78.233))) * 43758.5453))*0.5; +}; + +float4 main ( v2p I ) : COLOR +{ + + float4 t_base = tex2D (s_base, I.tc0); // + // float4 t_skymap = tex2D (s_skymap, I.tc0); // + + // + I.tc0.x = I.tc0.x+m_zoom_deviation.x; + I.tc0.y = I.tc0.y+m_zoom_deviation.y; + + // , + I.tc0.x = resize(I.tc0.x, screen_res.x/screen_res.y, 0); + float4 t_vp2 = tex2D (s_vp2, I.tc0); // + + float2 offset = distance(I.tc0, float2( .5f, .5f ))*float2(m_hud_params.z, m_hud_params.z); + + t_vp2.r = tex2D ( s_vp2, I.tc0+offset).r; + t_vp2.b = tex2D ( s_vp2, I.tc0-offset).b; + + float3 final = float3(0, 0, 0); + + { // + + // + //float3 env0 = texCUBE (s_env0, I.tc1); + //float3 env1 = texCUBE (s_env1, I.tc1); + //float3 env = lerp (env0, env1, L_ambient.w); // + + // + float3 base = lerp (t_vp2, t_base, t_base.a); // + final = base; + // final = lerp (base, env, t_skymap.a); // base c + } + + // out + return float4 (final.r, final.g, final.b, min(m_hud_params.y, m_hud_params.a)); +} diff --git a/gamedata/shaders/r2/model_scope_lense.vs.hlsl b/gamedata/shaders/r2/model_scope_lense.vs.hlsl new file mode 100644 index 0000000..344b403 --- /dev/null +++ b/gamedata/shaders/r2/model_scope_lense.vs.hlsl @@ -0,0 +1,55 @@ +#include "common.hlsli" +#include "skin.hlsli" + +float4 proj_to_screen(float4 proj) +{ + float4 screen = proj; + screen.x = (proj.x + proj.w); + screen.y = (proj.w - proj.y); + screen.xy *= 0.5; + return screen; +} + + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; // base + float4 tc1 : TEXCOORD1; // screen coords +}; + +vf _main (v_model v) +{ + vf o; + o.hpos = mul(m_WVP, v.P); // xform, input in world coords + o.tc0 = v.tc.xy; // copy tc + o.tc1 = proj_to_screen(o.hpos); + o.tc1.xy /= o.tc1.w; + + return o; +} + +///////////////////////////////////////////////////////////////////////// +#ifdef SKIN_NONE +vf main(v_model v) { return _main(v); } +#endif + +#ifdef SKIN_0 +vf main(v_model_skinned_0 v) { return _main(skinning_0(v)); } +#endif + +#ifdef SKIN_1 +vf main(v_model_skinned_1 v) { return _main(skinning_1(v)); } +#endif + +#ifdef SKIN_2 +vf main(v_model_skinned_2 v) { return _main(skinning_2(v)); } +#endif + +#ifdef SKIN_3 +vf main(v_model_skinned_3 v) { return _main(skinning_3(v)); } +#endif + +#ifdef SKIN_4 +vf main(v_model_skinned_4 v) { return _main(skinning_4(v)); } +#endif diff --git a/gamedata/shaders/r2/model_scope_lense_lerp.ps.hlsl b/gamedata/shaders/r2/model_scope_lense_lerp.ps.hlsl new file mode 100644 index 0000000..adac13f --- /dev/null +++ b/gamedata/shaders/r2/model_scope_lense_lerp.ps.hlsl @@ -0,0 +1,54 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0: TEXCOORD0; // base + float3 tc1: TEXCOORD1; // environment + float4 c0: COLOR0; // sun.(fog*fog) +}; + +////////////////////////////////////////////////////////////////////////////////////////// + +float resize(float input, float factor, float offset) +{ + return (input-0.5f+offset) / factor+0.5f-offset; +} + +// Pixel +uniform float4 screen_res; +uniform float4 m_hud_params; +uniform float4 m_zoom_deviation; + +uniform sampler2D s_vp2; + +float4 main ( v2p I ) : COLOR +{ + // + float2 coords = I.tc0; + coords.x *= 0.5; + float4 base2 = tex2D(s_base, coords); + coords.x += 0.5; + float4 t_base = tex2D(s_base, coords); + // + t_base = lerp(base2, t_base, m_zoom_deviation.z); + + // + I.tc0.x = I.tc0.x+m_zoom_deviation.x; + I.tc0.y = I.tc0.y+m_zoom_deviation.y; + + // , + I.tc0.x = resize(I.tc0.x, screen_res.x/screen_res.y, 0); + float4 t_vp2 = tex2D(s_vp2, I.tc0); + + float2 offset = distance(I.tc0, float2( .5f, .5f )) * float2(m_hud_params.z, m_hud_params.z); + + // + t_vp2.r = tex2D( s_vp2, I.tc0+offset).r; + t_vp2.b = tex2D( s_vp2, I.tc0-offset).b; + + // + float3 final = lerp(t_vp2, t_base, t_base.a); + + // out + return float4(final.r, final.g, final.b, min(m_hud_params.y, m_hud_params.a)); +} diff --git a/gamedata/shaders/r2/model_scope_lense_night.ps.hlsl b/gamedata/shaders/r2/model_scope_lense_night.ps.hlsl new file mode 100644 index 0000000..9e14d63 --- /dev/null +++ b/gamedata/shaders/r2/model_scope_lense_night.ps.hlsl @@ -0,0 +1,45 @@ +#include "common.hlsli" +#include "pnv.hlsli" + + +struct v2p +{ + float2 tc0: TEXCOORD0; // base + float3 tc1: TEXCOORD1; // environment + float4 c0: COLOR0; // sun.(fog*fog) +}; + +////////////////////////////////////////////////////////////////////////////////////////// + +float resize(float input, float factor, float offset) +{ + return (input-0.5f+offset) / factor+0.5f-offset; +} + +// Pixel +uniform float4 m_hud_params; +uniform sampler2D s_vp2; + +float4 main ( v2p I ) : COLOR +{ + + float4 t_base = tex2D (s_base, I.tc0); // + + // + I.tc0.x = I.tc0.x+m_zoom_deviation.x; + I.tc0.y = I.tc0.y+m_zoom_deviation.y; + + // , + I.tc0.x = resize(I.tc0.x, screen_res.x/screen_res.y, 0); + + float4 t_vp2 = tex2D (s_vp2, I.tc0); // + float3 final = float3(0, 0, 0); + + //** **// // + t_vp2.rgb = calc_night_vision_effect(I.tc0, t_vp2, float3(1.0, 2.0, 1.0)); + // + final = lerp (t_vp2, t_base, t_base.a); + + // out + return float4 (final.r, final.g, final.b, min(m_hud_params.y, m_hud_params.a)); +} diff --git a/gamedata/shaders/r2/model_tricolor_conditionbar.ps.hlsl b/gamedata/shaders/r2/model_tricolor_conditionbar.ps.hlsl new file mode 100644 index 0000000..e3f6e9c --- /dev/null +++ b/gamedata/shaders/r2/model_tricolor_conditionbar.ps.hlsl @@ -0,0 +1,24 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0: TEXCOORD0; // base + float3 tc1: TEXCOORD1; // environment + float4 c0: COLOR0; // sun.(fog*fog) +}; + +// Pixel +uniform float4 m_actor_params; + + +float4 main ( v2p I ) : COLOR +{ + float4 t_base; + t_base.r = ((m_actor_params.z<0.5) && (I.tc0.x < m_actor_params.z)) ? 1 : 0; + t_base.g = ((m_actor_params.z>0.25) && (I.tc0.x < m_actor_params.z)) ? 1 : 0; + t_base.b = 0; + t_base.a = (I.tc0.x < m_actor_params.z) ? 1 : 0; + + return float4 (t_base.r, t_base.g, t_base.b, t_base.a); +} + diff --git a/gamedata/shaders/r2/models_clockarrow_h.lua b/gamedata/shaders/r2/models_clockarrow_h.lua new file mode 100644 index 0000000..ba86942 --- /dev/null +++ b/gamedata/shaders/r2/models_clockarrow_h.lua @@ -0,0 +1,12 @@ +function normal (shader, t_base, t_second, t_detail) + + shader:begin ("model_env_lq","model_clockarrow_h") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:sampler ("s_base"):texture(t_base) + shader:sampler ("s_lmap"):texture("$blackalpha") +end diff --git a/gamedata/shaders/r2/models_clockarrow_h_screen.lua b/gamedata/shaders/r2/models_clockarrow_h_screen.lua new file mode 100644 index 0000000..8a7e6a0 --- /dev/null +++ b/gamedata/shaders/r2/models_clockarrow_h_screen.lua @@ -0,0 +1,12 @@ +function normal (shader, t_base, t_second, t_detail) + + shader:begin ("model_env_lq","model_clockarrow_h") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:sampler ("s_base"):texture(t_base) + shader:sampler ("s_lmap"):texture("$alphadxt1") +end diff --git a/gamedata/shaders/r2/models_clockarrow_m.lua b/gamedata/shaders/r2/models_clockarrow_m.lua new file mode 100644 index 0000000..ced7490 --- /dev/null +++ b/gamedata/shaders/r2/models_clockarrow_m.lua @@ -0,0 +1,12 @@ +function normal (shader, t_base, t_second, t_detail) + + shader:begin ("model_env_lq","model_clockarrow_m") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:sampler ("s_base"):texture(t_base) + shader:sampler ("s_lmap"):texture("$blackalpha") +end diff --git a/gamedata/shaders/r2/models_clockarrow_m_screen.lua b/gamedata/shaders/r2/models_clockarrow_m_screen.lua new file mode 100644 index 0000000..950a065 --- /dev/null +++ b/gamedata/shaders/r2/models_clockarrow_m_screen.lua @@ -0,0 +1,12 @@ +function normal (shader, t_base, t_second, t_detail) + + shader:begin ("model_env_lq","model_clockarrow_m") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:sampler ("s_base"):texture(t_base) + shader:sampler ("s_lmap"):texture("$alphadxt1") +end diff --git a/gamedata/shaders/r2/models_clockarrow_s.lua b/gamedata/shaders/r2/models_clockarrow_s.lua new file mode 100644 index 0000000..93b9ba7 --- /dev/null +++ b/gamedata/shaders/r2/models_clockarrow_s.lua @@ -0,0 +1,12 @@ +function normal (shader, t_base, t_second, t_detail) + + shader:begin ("model_env_lq","model_clockarrow_s") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:sampler ("s_base"):texture(t_base) + shader:sampler ("s_lmap"):texture("$blackalpha") +end diff --git a/gamedata/shaders/r2/models_clockarrow_s_screen.lua b/gamedata/shaders/r2/models_clockarrow_s_screen.lua new file mode 100644 index 0000000..de9a2f2 --- /dev/null +++ b/gamedata/shaders/r2/models_clockarrow_s_screen.lua @@ -0,0 +1,12 @@ +function normal (shader, t_base, t_second, t_detail) + + shader:begin ("model_env_lq","model_clockarrow_s") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:sampler ("s_base"):texture(t_base) + shader:sampler ("s_lmap"):texture("$alphadxt1") +end diff --git a/gamedata/shaders/r2/models_collimator.lua b/gamedata/shaders/r2/models_collimator.lua new file mode 100644 index 0000000..88d1083 --- /dev/null +++ b/gamedata/shaders/r2/models_collimator.lua @@ -0,0 +1,10 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_def_lplanes", "base_lplanes_fft") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:sampler ("s_base") :texture (t_base) +end diff --git a/gamedata/shaders/r2/models_collimsight.lua b/gamedata/shaders/r2/models_collimsight.lua new file mode 100644 index 0000000..e9a8b70 --- /dev/null +++ b/gamedata/shaders/r2/models_collimsight.lua @@ -0,0 +1,9 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_def_lplanes","base_lplanes") + : fog (false) + : zb (true,false) + : blend (true,blend.srcalpha,blend.one) + : aref (true,0) + : sorting (2, true) + shader:sampler ("s_base") :texture (t_base) +end diff --git a/gamedata/shaders/r2/models_compass_arrow.lua b/gamedata/shaders/r2/models_compass_arrow.lua new file mode 100644 index 0000000..455b51e --- /dev/null +++ b/gamedata/shaders/r2/models_compass_arrow.lua @@ -0,0 +1,12 @@ +function normal (shader, t_base, t_second, t_detail) + + shader:begin ("model_env_lq","model_compassarrow") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:sampler ("s_base"):texture(t_base) + shader:sampler ("s_lmap"):texture("$blackalpha") +end diff --git a/gamedata/shaders/r2/models_compass_arrow_screen.lua b/gamedata/shaders/r2/models_compass_arrow_screen.lua new file mode 100644 index 0000000..6d0b72c --- /dev/null +++ b/gamedata/shaders/r2/models_compass_arrow_screen.lua @@ -0,0 +1,12 @@ +function normal (shader, t_base, t_second, t_detail) + + shader:begin ("model_env_lq","model_compassarrow") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:sampler ("s_base"):texture(t_base) + shader:sampler ("s_lmap"):texture("$alphadxt1") +end diff --git a/gamedata/shaders/r2/models_compscreen.lua b/gamedata/shaders/r2/models_compscreen.lua new file mode 100644 index 0000000..f2b8018 --- /dev/null +++ b/gamedata/shaders/r2/models_compscreen.lua @@ -0,0 +1,13 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("deffer_model","model_compscreen") + : fog (false) + : emissive (true) + shader:sampler ("s_base") :texture (t_base) +end + +function l_special (shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "accum_emissivel") + : zb (true,false) + : fog (false) + : emissive (true) +end diff --git a/gamedata/shaders/r2/models_condition.lua b/gamedata/shaders/r2/models_condition.lua new file mode 100644 index 0000000..3e6c5c9 --- /dev/null +++ b/gamedata/shaders/r2/models_condition.lua @@ -0,0 +1,13 @@ +local tex_env0 = "$user$sky0" +local tex_env1 = "$user$sky1" + +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_env_lq","model_green_conditionbar") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:sampler ("s_base") :texture (t_base) +end diff --git a/gamedata/shaders/r2/models_digiclock_hh_screen.lua b/gamedata/shaders/r2/models_digiclock_hh_screen.lua new file mode 100644 index 0000000..c3af912 --- /dev/null +++ b/gamedata/shaders/r2/models_digiclock_hh_screen.lua @@ -0,0 +1,14 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("deffer_model","model_digiclock_hh") + : fog (false) + : emissive (true) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_lmap"):texture("$alphadxt1") +end + +function l_special (shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "accum_emissivel") + : zb (true,false) + : fog (false) + : emissive (true) +end diff --git a/gamedata/shaders/r2/models_digiclock_hl_screen.lua b/gamedata/shaders/r2/models_digiclock_hl_screen.lua new file mode 100644 index 0000000..d19b948 --- /dev/null +++ b/gamedata/shaders/r2/models_digiclock_hl_screen.lua @@ -0,0 +1,14 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("deffer_model","model_digiclock_hl") + : fog (false) + : emissive (true) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_lmap"):texture("$alphadxt1") +end + +function l_special (shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "accum_emissivel") + : zb (true,false) + : fog (false) + : emissive (true) +end diff --git a/gamedata/shaders/r2/models_digiclock_mh_screen.lua b/gamedata/shaders/r2/models_digiclock_mh_screen.lua new file mode 100644 index 0000000..badf9df --- /dev/null +++ b/gamedata/shaders/r2/models_digiclock_mh_screen.lua @@ -0,0 +1,14 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("deffer_model","model_digiclock_mh") + : fog (false) + : emissive (true) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_lmap"):texture("$alphadxt1") +end + +function l_special (shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "accum_emissivel") + : zb (true,false) + : fog (false) + : emissive (true) +end diff --git a/gamedata/shaders/r2/models_digiclock_ml_screen.lua b/gamedata/shaders/r2/models_digiclock_ml_screen.lua new file mode 100644 index 0000000..f25e71b --- /dev/null +++ b/gamedata/shaders/r2/models_digiclock_ml_screen.lua @@ -0,0 +1,14 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("deffer_model","model_digiclock_ml") + : fog (false) + : emissive (true) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_lmap"):texture("$alphadxt1") +end + +function l_special (shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "accum_emissive") + : zb (true,false) + : fog (false) + : emissive (true) +end diff --git a/gamedata/shaders/r2/models_energy_gauss.lua b/gamedata/shaders/r2/models_energy_gauss.lua new file mode 100644 index 0000000..64a5e49 --- /dev/null +++ b/gamedata/shaders/r2/models_energy_gauss.lua @@ -0,0 +1,13 @@ +local tex_env0 = "$user$sky0" +local tex_env1 = "$user$sky1" + +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_env_lq","model_green_energybar") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:sampler ("s_base") :texture (t_base) +end diff --git a/gamedata/shaders/r2/models_exohealth.lua b/gamedata/shaders/r2/models_exohealth.lua new file mode 100644 index 0000000..c576140 --- /dev/null +++ b/gamedata/shaders/r2/models_exohealth.lua @@ -0,0 +1,13 @@ +local tex_env0 = "$user$sky0" +local tex_env1 = "$user$sky1" + +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_env_lq","model_exohealth") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:sampler ("s_base") :texture (t_base) +end diff --git a/gamedata/shaders/r2/models_exoscreen01.lua b/gamedata/shaders/r2/models_exoscreen01.lua new file mode 100644 index 0000000..3a7ec7f --- /dev/null +++ b/gamedata/shaders/r2/models_exoscreen01.lua @@ -0,0 +1,9 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_def_lplanes","model_exoscreen") + : fog (false) + : zb (true,false) + : blend (true,blend.srcalpha,blend.one) + : aref (true,0) + : sorting (2, true) + shader:sampler ("s_base") :texture (t_base) +end \ No newline at end of file diff --git a/gamedata/shaders/r2/models_laserray.lua b/gamedata/shaders/r2/models_laserray.lua new file mode 100644 index 0000000..e9a8b70 --- /dev/null +++ b/gamedata/shaders/r2/models_laserray.lua @@ -0,0 +1,9 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_def_lplanes","base_lplanes") + : fog (false) + : zb (true,false) + : blend (true,blend.srcalpha,blend.one) + : aref (true,0) + : sorting (2, true) + shader:sampler ("s_base") :texture (t_base) +end diff --git a/gamedata/shaders/r2/models_lense_scope.lua b/gamedata/shaders/r2/models_lense_scope.lua new file mode 100644 index 0000000..40641b5 --- /dev/null +++ b/gamedata/shaders/r2/models_lense_scope.lua @@ -0,0 +1,11 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_scope_lense","model_scope_lense") + : fog (false) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (false,0) + : sorting (2,true) + : distort (false) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_vp2") :texture ("$user$viewport2") +end diff --git a/gamedata/shaders/r2/models_lfo_light_dot_weapons.lua b/gamedata/shaders/r2/models_lfo_light_dot_weapons.lua new file mode 100644 index 0000000..6dada58 --- /dev/null +++ b/gamedata/shaders/r2/models_lfo_light_dot_weapons.lua @@ -0,0 +1,9 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("parallax_mark", "parallax_mark") + : fog (false) + : zb (true,false) + : blend (true,blend.srcalpha,blend.one) + : aref (true,0) + : sorting (2, true) + shader:sampler ("s_base") :texture (t_base) : clamp() +end diff --git a/gamedata/shaders/r2/models_lightplanes.lua b/gamedata/shaders/r2/models_lightplanes.lua new file mode 100644 index 0000000..523d706 --- /dev/null +++ b/gamedata/shaders/r2/models_lightplanes.lua @@ -0,0 +1,9 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_def_lplanes", "base_lplanes") + :fog(false) + :zb(true, false) + :blend(true, blend.srcalpha, blend.one) + :aref(true, 0) + :sorting(2, true) + shader:sampler("s_base"):texture(t_base) +end diff --git a/gamedata/shaders/r2/models_metallreflect.lua b/gamedata/shaders/r2/models_metallreflect.lua new file mode 100644 index 0000000..f3b7e73 --- /dev/null +++ b/gamedata/shaders/r2/models_metallreflect.lua @@ -0,0 +1,44 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_distort4ghost", "particle") -- particle_alphaonly + :sorting(3, true) + :blend(true, blend.srccolor, blend.invsrcalpha) + :aref(true, 0) + :zb(true, false) + :fog(false) + :distort(false) + shader:sampler("s_base"):texture(t_base) +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort4ghost", "particle_distort") + :sorting(3, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_distort"):texture("pfx\\pfx_dist_glass") --:texture (t_base) -- ("pfx\\pfx_dist_glass2") +end + +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_def_lplanes", "base_lplanes") + :fog(false) + :zb(true, false) + :blend(true, blend.srccolor, blend.one) + :aref(true, 0) + :sorting(2, true) + shader:sampler("s_base"):texture(t_base) +end + +--[[ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_env_lq","model_env_lq") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (3,true) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_env") :texture ("sky\\sky_5_cube") : clamp() +end +]] diff --git a/gamedata/shaders/r2/models_pautina.lua b/gamedata/shaders/r2/models_pautina.lua new file mode 100644 index 0000000..4299271 --- /dev/null +++ b/gamedata/shaders/r2/models_pautina.lua @@ -0,0 +1,31 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_distort4ghost", "particle") -- particle_alphaonly + :sorting(3, true) + :blend(true, blend.srccolor, blend.invsrcalpha) + :aref(true, 0) + :zb(true, false) + :fog(false) + :distort(false) + shader:sampler("s_base"):texture(t_base) +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort4ghost", "particle_distort") + :sorting(3, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_distort"):texture("pfx\\pfx_dist_glass") --:texture (t_base) -- ("pfx\\pfx_dist_glass2") +end + +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_def_lplanes", "base_lplanes") + :fog(false) + :zb(true, false) + :blend(true, blend.srccolor, blend.one) + :aref(true, 0) + :sorting(2, true) + shader:sampler("s_base"):texture(t_base) +end diff --git a/gamedata/shaders/r2/models_pda.lua b/gamedata/shaders/r2/models_pda.lua new file mode 100644 index 0000000..073dafe --- /dev/null +++ b/gamedata/shaders/r2/models_pda.lua @@ -0,0 +1,14 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "deffer_base") + :fog(false) + :emissive(true) + shader:sampler("s_base"):texture("$user$ui_pda") +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "accum_emissivel") + :zb(true, false) + :fog(false) + :emissive(true) + shader:sampler("s_base"):texture("$user$ui_pda") +end diff --git a/gamedata/shaders/r2/models_reflex_reticle.lua b/gamedata/shaders/r2/models_reflex_reticle.lua new file mode 100644 index 0000000..6dada58 --- /dev/null +++ b/gamedata/shaders/r2/models_reflex_reticle.lua @@ -0,0 +1,9 @@ +function normal (shader, t_base, t_second, t_detail) + shader:begin ("parallax_mark", "parallax_mark") + : fog (false) + : zb (true,false) + : blend (true,blend.srcalpha,blend.one) + : aref (true,0) + : sorting (2, true) + shader:sampler ("s_base") :texture (t_base) : clamp() +end diff --git a/gamedata/shaders/r2/models_selflight.lua b/gamedata/shaders/r2/models_selflight.lua new file mode 100644 index 0000000..bc68fa4 --- /dev/null +++ b/gamedata/shaders/r2/models_selflight.lua @@ -0,0 +1,13 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "deffer_base") + :fog(false) + :emissive(true) + shader:sampler("s_base"):texture(t_base) +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "accum_emissive") + :zb(true, false) + :fog(false) + :emissive(true) +end diff --git a/gamedata/shaders/r2/models_selflight_det.lua b/gamedata/shaders/r2/models_selflight_det.lua new file mode 100644 index 0000000..a436141 --- /dev/null +++ b/gamedata/shaders/r2/models_selflight_det.lua @@ -0,0 +1,13 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "deffer_base") + :fog(false) + :emissive(true) + shader:sampler("s_base"):texture(t_base) +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "accum_emissivel") + :zb(true, false) + :fog(false) + :emissive(true) +end diff --git a/gamedata/shaders/r2/models_selflightl.lua b/gamedata/shaders/r2/models_selflightl.lua new file mode 100644 index 0000000..a436141 --- /dev/null +++ b/gamedata/shaders/r2/models_selflightl.lua @@ -0,0 +1,13 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "deffer_base") + :fog(false) + :emissive(true) + shader:sampler("s_base"):texture(t_base) +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("deffer_model", "accum_emissivel") + :zb(true, false) + :fog(false) + :emissive(true) +end diff --git a/gamedata/shaders/r2/models_xanomaly.lua b/gamedata/shaders/r2/models_xanomaly.lua new file mode 100644 index 0000000..c8fe710 --- /dev/null +++ b/gamedata/shaders/r2/models_xanomaly.lua @@ -0,0 +1,21 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_distort4glass", "particle") + :sorting(2, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :zb(true, true) + :fog(false) + :distort(false) + shader:sampler("s_base"):texture(t_base) +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort4glass", "particle_distort") + :sorting(2, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, true) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_distort"):texture("pfx\\pfx_dist_glass3") +end diff --git a/gamedata/shaders/r2/models_xdistort.lua b/gamedata/shaders/r2/models_xdistort.lua new file mode 100644 index 0000000..fdff2c5 --- /dev/null +++ b/gamedata/shaders/r2/models_xdistort.lua @@ -0,0 +1,21 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_distort", "particle_alphaonly") -- particle_alphaonly + :sorting(3, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort", "particle_distort") + :sorting(3, false) + :blend(true, blend.srccolor, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_distort"):texture(t_base) -- "pfx\\pfx_distortion" +end diff --git a/gamedata/shaders/r2/models_xdistortcolor.lua b/gamedata/shaders/r2/models_xdistortcolor.lua new file mode 100644 index 0000000..ecf867a --- /dev/null +++ b/gamedata/shaders/r2/models_xdistortcolor.lua @@ -0,0 +1,21 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_distort", "particle") -- particle_alphaonly + :sorting(3, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort", "particle_distort") + :sorting(3, false) + :blend(true, blend.srccolor, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_distort"):texture(t_base) -- "pfx\\pfx_distortion" +end diff --git a/gamedata/shaders/r2/models_xdistortcolorl.lua b/gamedata/shaders/r2/models_xdistortcolorl.lua new file mode 100644 index 0000000..a707b46 --- /dev/null +++ b/gamedata/shaders/r2/models_xdistortcolorl.lua @@ -0,0 +1,21 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_distort", "particle") -- particle_alphaonly + :sorting(2, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort", "particle_distort") + :sorting(3, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_distort"):texture(t_base) -- "pfx\\pfx_distortion" +end diff --git a/gamedata/shaders/r2/models_xdistortcolorlinv.lua b/gamedata/shaders/r2/models_xdistortcolorlinv.lua new file mode 100644 index 0000000..3c55b1b --- /dev/null +++ b/gamedata/shaders/r2/models_xdistortcolorlinv.lua @@ -0,0 +1,21 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_distort_inv", "particle") + :sorting(2, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort", "particle_distort") + :sorting(3, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_distort"):texture(t_base) -- "pfx\\pfx_distortion" +end diff --git a/gamedata/shaders/r2/models_xdistortinv.lua b/gamedata/shaders/r2/models_xdistortinv.lua new file mode 100644 index 0000000..d060712 --- /dev/null +++ b/gamedata/shaders/r2/models_xdistortinv.lua @@ -0,0 +1,21 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_distort_inv", "particle_alphaonly") -- particle_alphaonly + :sorting(3, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort_inv", "particle_distort") + :sorting(3, false) + :blend(true, blend.srccolor, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_distort"):texture(t_base) -- "pfx\\pfx_distortion" +end diff --git a/gamedata/shaders/r2/models_xglass.lua b/gamedata/shaders/r2/models_xglass.lua new file mode 100644 index 0000000..e938f72 --- /dev/null +++ b/gamedata/shaders/r2/models_xglass.lua @@ -0,0 +1,22 @@ +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort4glass", "particle_distort") + :sorting(3, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_distort"):texture("pfx\\pfx_dist_glass2") +end + +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_env_lq", "model_env_lq") + :fog(true) + :zb(true, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :sorting(3, true) + :distort(true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_env"):texture("sky\\sky_5_cube"):clamp() +end diff --git a/gamedata/shaders/r2/models_xglass2.lua b/gamedata/shaders/r2/models_xglass2.lua new file mode 100644 index 0000000..aa92a27 --- /dev/null +++ b/gamedata/shaders/r2/models_xglass2.lua @@ -0,0 +1,39 @@ +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort4glass", "particle_distort") + :sorting(3, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_distort"):texture("pfx\\pfx_dist_glass3") +end + +--[[ +function normal_hq(shader, t_base, t_second, t_detail) + shader:begin ("model_env_hq","model_env_hq") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (3,true) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_env") :texture ("sky\\sky_5_cube") : clamp() + shader:sampler ("s_lmap") :texture ("$user$projector") + : clamp () + : f_linear () + : project (true) +end +]] + +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_env_lq", "model_env_lq") + :fog(true) + :zb(true, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :sorting(3, true) + :distort(true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_env"):texture("sky\\sky_5_cube"):clamp() +end diff --git a/gamedata/shaders/r2/models_xlens.lua b/gamedata/shaders/r2/models_xlens.lua new file mode 100644 index 0000000..5e5022a --- /dev/null +++ b/gamedata/shaders/r2/models_xlens.lua @@ -0,0 +1,39 @@ +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort4glass", "particle_distort") + :sorting(3, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture("pfx\\pfx_dist_lens_base") --(t_base) + shader:sampler("s_distort"):texture("pfx\\pfx_dist_lens") +end + +--[[ +function normal_hq(shader, t_base, t_second, t_detail) + shader:begin ("model_env_hq","model_env_hq") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (3,true) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_env") :texture ("sky\\sky_5_cube") : clamp() + shader:sampler ("s_lmap") :texture ("$user$projector") + : clamp () + : f_linear () + : project (true) +end +]] + +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_env_lq", "model_env_lq") + :fog(true) + :zb(true, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :sorting(3, true) + :distort(true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_env"):texture("sky\\sky_5_cube"):clamp() +end diff --git a/gamedata/shaders/r2/models_xmonolith.lua b/gamedata/shaders/r2/models_xmonolith.lua new file mode 100644 index 0000000..7a048d5 --- /dev/null +++ b/gamedata/shaders/r2/models_xmonolith.lua @@ -0,0 +1,38 @@ +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort4glass", "particle_distort") + :sorting(3, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_distort"):texture("pfx\\pfx_dist_glass4") +end + +--[[ +function normal_hq(shader, t_base, t_second, t_detail) + shader:begin ("model_env_hq","model_env_hq") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (3,true) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_env") :texture ("sky\\sky_5_cube") : clamp() + shader:sampler ("s_lmap") :texture ("$user$projector") + : clamp () + : f_linear () + : project (true) +end +]] + +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_env_lq", "model_env_lq") + :fog(true) + :zb(true, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :sorting(3, true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_env"):texture("sky\\sky_5_cube"):clamp() +end diff --git a/gamedata/shaders/r2/models_xwindows.lua b/gamedata/shaders/r2/models_xwindows.lua new file mode 100644 index 0000000..a048dc1 --- /dev/null +++ b/gamedata/shaders/r2/models_xwindows.lua @@ -0,0 +1,38 @@ +function l_special(shader, t_base, t_second, t_detail) + shader:begin("model_distort4glass", "particle_distort") + :sorting(3, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_distort"):texture("pfx\\pfx_dist_glass") +end + +--[[ +function normal_hq(shader, t_base, t_second, t_detail) + shader:begin ("model_env_hq","model_env_hq") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (3,true) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_env") :texture ("sky\\sky_5_cube") : clamp() + shader:sampler ("s_lmap") :texture ("$user$projector") + : clamp () + : f_linear () + : project (true) +end +]] + +function normal(shader, t_base, t_second, t_detail) + shader:begin("model_env_lq", "model_env_lq") + :fog(true) + :zb(true, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :aref(true, 0) + :sorting(3, true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_env"):texture("sky\\sky_5_cube"):clamp() +end diff --git a/gamedata/shaders/r2/models_zoom.lua b/gamedata/shaders/r2/models_zoom.lua new file mode 100644 index 0000000..3b8b24e --- /dev/null +++ b/gamedata/shaders/r2/models_zoom.lua @@ -0,0 +1,16 @@ +local tex_env0 = "$user$sky0" +local tex_env1 = "$user$sky1" + +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_env_lq","model_scope_lense") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_vp2") :texture ("$user$scope") +-- shader:sampler ("s_env0") :texture (tex_env0) : clamp() +-- shader:sampler ("s_env1") :texture (tex_env1) : clamp() +end diff --git a/gamedata/shaders/r2/models_zoom_gauss.lua b/gamedata/shaders/r2/models_zoom_gauss.lua new file mode 100644 index 0000000..9c22661 --- /dev/null +++ b/gamedata/shaders/r2/models_zoom_gauss.lua @@ -0,0 +1,16 @@ +local tex_env0 = "$user$sky0" +local tex_env1 = "$user$sky1" + +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_env_lq","model_scope_gauss") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_vp2") :texture ("$user$scopeui") +-- shader:sampler ("s_env0") :texture (tex_env0) : clamp() +-- shader:sampler ("s_env1") :texture (tex_env1) : clamp() +end diff --git a/gamedata/shaders/r2/models_zoom_lerp.lua b/gamedata/shaders/r2/models_zoom_lerp.lua new file mode 100644 index 0000000..cd24d91 --- /dev/null +++ b/gamedata/shaders/r2/models_zoom_lerp.lua @@ -0,0 +1,16 @@ +local tex_env0 = "$user$sky0" +local tex_env1 = "$user$sky1" + +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_env_lq","model_scope_lense_lerp") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_vp2") :texture ("$user$scope") +-- shader:sampler ("s_env0") :texture (tex_env0) : clamp() +-- shader:sampler ("s_env1") :texture (tex_env1) : clamp() +end diff --git a/gamedata/shaders/r2/models_zoomnight.lua b/gamedata/shaders/r2/models_zoomnight.lua new file mode 100644 index 0000000..d9660f1 --- /dev/null +++ b/gamedata/shaders/r2/models_zoomnight.lua @@ -0,0 +1,16 @@ +local tex_env0 = "$user$sky0" +local tex_env1 = "$user$sky1" + +function normal (shader, t_base, t_second, t_detail) + shader:begin ("model_env_lq","model_scope_lense_night") + : fog (true) + : zb (true,false) + : blend (true,blend.srcalpha,blend.invsrcalpha) + : aref (true,0) + : sorting (2,true) + : distort (true) + shader:sampler ("s_base") :texture (t_base) + shader:sampler ("s_vp2") :texture ("$user$scope") +-- shader:sampler ("s_env0") :texture (tex_env0) : clamp() +-- shader:sampler ("s_env1") :texture (tex_env1) : clamp() +end diff --git a/gamedata/shaders/r2/parallax_mark.ps.hlsl b/gamedata/shaders/r2/parallax_mark.ps.hlsl new file mode 100644 index 0000000..7053eeb --- /dev/null +++ b/gamedata/shaders/r2/parallax_mark.ps.hlsl @@ -0,0 +1,100 @@ +/* + ===================================================================== + Addon : Parallax Reflex Sights + Link : https://www.moddb.com/mods/stalker-anomaly/addons/parallax-reflex-sights + Authors : LVutner, party_50 + Date : 06.02.2024 + Last Edit : 06.02.2024 + Info : Ported back to shitX9 by LVutner + ===================================================================== +*/ + +#include "common.hlsli" + +// Important: +// In perfect world OFFSET constants should be 0, but most of reflex sight lenses +// are not actually parallel to screen, so we compensate it. For PROJECT_DISTANCE=100 +// offset values should be at least 0.005 even for perfect models and position configs due +// to normal vectors resolution. +// +// If you want the most realistic look, set PROJECT_DISTANCE to some high value (like 100.0), +// increase SIZE_FACTOR to something like 20.0, set OFFSET_X and OFFSET_Y to 0.005. +// Then you will have to adjust models so that mark texture point is exactly in center +// and edit aim position in configs. + +#define OFFSET_X 0.004 // (default 0.004) Normal vector x coordinate max absolute value which is considered 0 +#define OFFSET_Y 0.05 // (default 0.05) Normal vector y coordinate max absolute value which is considered 0 +#define PROJECT_DISTANCE 20.0 // (default 20.0) Distance to projected mark +#define SIZE_FACTOR 4.0 // (default 4.0) Mark size factor + +// Vertex to Pixel struct +struct vf +{ + float2 tc0 : TEXCOORD0; + float3 v_pos : TEXCOORD1; + float3 v_nrm : TEXCOORD2; +}; + +// This gives us cotangent basis that can be used instead of TBN. +// It is useful when tangents of your mesh are broken, or not available. +// Source: http://www.thetenthplanet.de/archives/1180 +float3x3 cotangent_frame(float3 N, float3 P, float2 uv) +{ + // Get edge vectors of the pixel triangle + float3 dp1 = ddx(P); + float3 dp2 = ddy(P); + float2 duv1 = ddx(uv); + float2 duv2 = ddy(uv); + + // Solve the linear system + float3 dp2perp = cross(dp2, N); + float3 dp1perp = cross(N, dp1); + float3 T = dp2perp * duv1.x + dp1perp * duv2.x; + float3 B = dp2perp * duv1.y + dp1perp * duv2.y; + + // Construct a scale-invariant frame + float invmax = rsqrt(max(dot(T, T), dot(B, B))); + return float3x3(T * invmax, B * invmax, N); +} + +// If N.xy vector is close to zero, make it zero +float3 offset_normal(float3 N) +{ + if (N.x > 0) + N.x = max(N.x, OFFSET_X) - OFFSET_X; + else + N.x = min(N.x, -OFFSET_X) + OFFSET_X; + + if (N.y > 0) + N.y = max(N.y, OFFSET_Y) - OFFSET_Y; + else + N.y = min(N.y, -OFFSET_Y) + OFFSET_Y; + + return N; +} + +float4 main(vf I) : COLOR +{ + // Derive view direction from view space position + float3 V = -I.v_pos; + + // Build cotangent frame + // Important: In theory, you don't need to do this. It should be possible to pass TBN straight from VS + float3x3 TBN = cotangent_frame(offset_normal(I.v_nrm), I.v_pos, I.tc0.xy); + + // Transform view direction to tangent space, and normalize (Just in case) + float3 V_tangent = normalize(float3(dot(V, TBN[0]), dot(V, TBN[1]), dot(V, TBN[2]))); + + // Calculate texture coordinates used to fetch the mark texture + // Important: PROJECT_DISTANCE can be positive or negative, 0 = no projection at all + float2 parallax_tc = I.tc0 - V_tangent.xy * PROJECT_DISTANCE; + + // Upscaling the texture + parallax_tc.x = (parallax_tc.x + (SIZE_FACTOR - 1) / 2) / SIZE_FACTOR; + parallax_tc.y = (parallax_tc.y + (SIZE_FACTOR - 1) / 2) / SIZE_FACTOR; + + // Fetch the mark texture + // Important: We do not want texture to repeat itself, so we use sampler with CLAMP address + // Important2: We do not want to sample mip levels of the mark texture, let's keep this thing sharp as fuck + return tex2Dlod(s_base, float4(parallax_tc, 0.0, 0.0)); +} diff --git a/gamedata/shaders/r2/parallax_mark.vs.hlsl b/gamedata/shaders/r2/parallax_mark.vs.hlsl new file mode 100644 index 0000000..005890b --- /dev/null +++ b/gamedata/shaders/r2/parallax_mark.vs.hlsl @@ -0,0 +1,49 @@ +#include "common.hlsli" +#include "skin.hlsli" + +// Vertex to Pixel struct +struct vf +{ + float2 tc0 : TEXCOORD0; + float3 v_pos : TEXCOORD1; + float3 v_nrm : TEXCOORD2; + float4 hpos : POSITION; +}; + +vf _main (v_model v) +{ + vf o; + + o.hpos = mul(m_WVP, v.P); // Homogenous position + o.tc0 = v.tc.xy; //Texture coordinates + + o.v_pos = mul(m_WV, v.P).xyz; // Position in view space + o.v_nrm = mul(m_WV, v.N).xyz; // Normal in view space + + return o; +} + +//Skinning +#ifdef SKIN_NONE +vf main(v_model v) { return _main(v); } +#endif + +#ifdef SKIN_0 +vf main(v_model_skinned_0 v) { return _main(skinning_0(v)); } +#endif + +#ifdef SKIN_1 +vf main(v_model_skinned_1 v) { return _main(skinning_1(v)); } +#endif + +#ifdef SKIN_2 +vf main(v_model_skinned_2 v) { return _main(skinning_2(v)); } +#endif + +#ifdef SKIN_3 +vf main(v_model_skinned_3 v) { return _main(skinning_3(v)); } +#endif + +#ifdef SKIN_4 +vf main(v_model_skinned_4 v) { return _main(skinning_4(v)); } +#endif diff --git a/gamedata/shaders/r2/particle-clip.vs.hlsl b/gamedata/shaders/r2/particle-clip.vs.hlsl new file mode 100644 index 0000000..d065f67 --- /dev/null +++ b/gamedata/shaders/r2/particle-clip.vs.hlsl @@ -0,0 +1,28 @@ +#include "common.hlsli" + +struct vv +{ + float4 P : POSITION; + float2 tc : TEXCOORD0; + float4 c : COLOR0; +}; + +struct vf +{ + float4 hpos : POSITION; + float2 tc : TEXCOORD0; + float4 c : COLOR0; +}; + +vf main(vv v) +{ + vf o; + + o.hpos = mul(m_WVP, v.P); // xform, input in world coords + o.hpos.z = abs(o.hpos.z); + o.hpos.w = abs(o.hpos.w); + o.tc = v.tc; // copy tc + o.c = v.c; // copy color + + return o; +} diff --git a/gamedata/shaders/r2/particle.ps.hlsl b/gamedata/shaders/r2/particle.ps.hlsl new file mode 100644 index 0000000..644df29 --- /dev/null +++ b/gamedata/shaders/r2/particle.ps.hlsl @@ -0,0 +1,42 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float4 c : COLOR0; // diffuse + +#ifdef USE_SOFT_PARTICLES + // Igor: for additional depth dest + float4 tctexgen : TEXCOORD1; +#endif // USE_SOFT_PARTICLES + float fog : FOG; +}; + +// Must be less than view near +#define DEPTH_EPSILON 0.1f + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 result = I.c * tex2D(s_base, I.tc0); + + // Igor: additional depth test +#ifdef USE_SOFT_PARTICLES + float4 _P = tex2Dproj(s_position, I.tctexgen); + float spaceDepth = _P.z - I.tctexgen.z - DEPTH_EPSILON; + if (spaceDepth < -2.0f * DEPTH_EPSILON) + { + spaceDepth = 100000.0f; // Skybox doesn't draw into position buffer + } + // result.a *= saturate(spaceDepth*0.3h); + result.a *= Contrast(saturate(spaceDepth * 1.3f), 2.0f); + result.rgb *= Contrast(saturate(spaceDepth * 1.3f), 2.0f); +// result = Contrast( saturate(spaceDepth*1.3h), 2); +// result = saturate (spaceDepth*5.0); +// result.a = 1; +#endif // USE_SOFT_PARTICLES + clip(result.a - (0.01f / 255.0f)); + result.w *= I.fog; + + return result; +} diff --git a/gamedata/shaders/r2/particle.vs.hlsl b/gamedata/shaders/r2/particle.vs.hlsl new file mode 100644 index 0000000..2660fff --- /dev/null +++ b/gamedata/shaders/r2/particle.vs.hlsl @@ -0,0 +1,39 @@ +#include "common.hlsli" + +struct vv +{ + float4 P : POSITION; + float2 tc : TEXCOORD0; + float4 c : COLOR0; +}; +struct vf +{ + float4 hpos : POSITION; + float2 tc : TEXCOORD0; + float4 c : COLOR0; + +// Igor: for additional depth dest +#ifdef USE_SOFT_PARTICLES + float4 tctexgen : TEXCOORD1; +#endif // USE_SOFT_PARTICLES + float fog : FOG; +}; + +vf main(vv v) +{ + vf o; + + o.hpos = mul(m_WVP, v.P); // xform, input in world coords + // o.hpos = mul (m_VP, v.P); // xform, input in world coords + o.tc = v.tc; // copy tc + o.c = v.c; // copy color + +// Igor: for additional depth dest +#ifdef USE_SOFT_PARTICLES + o.tctexgen = mul(mVPTexgen, v.P); + o.tctexgen.z = o.hpos.z; +#endif // USE_SOFT_PARTICLES + + o.fog = saturate(calc_fogging(v.P)); // fog, input in world coords + return o; +} diff --git a/gamedata/shaders/r2/particle2t.ps.hlsl b/gamedata/shaders/r2/particle2t.ps.hlsl new file mode 100644 index 0000000..1e9325e --- /dev/null +++ b/gamedata/shaders/r2/particle2t.ps.hlsl @@ -0,0 +1,19 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float2 tc1 : TEXCOORD1; // another + float4 c : COLOR0; // diffuse +}; + +// Pixel +uniform sampler2D s_another; + +float4 main(v2p I) : COLOR +{ + float3 base = I.c * tex2D(s_base, I.tc0); + float4 grad = tex2D(s_another, I.tc1); + float3 mult = base * grad * 2.0f; + return float4(lerp(base, mult, grad.w), 1.0f); +} diff --git a/gamedata/shaders/r2/particle_add.ps.hlsl b/gamedata/shaders/r2/particle_add.ps.hlsl new file mode 100644 index 0000000..8b5e966 --- /dev/null +++ b/gamedata/shaders/r2/particle_add.ps.hlsl @@ -0,0 +1,40 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float4 c : COLOR0; // diffuse + +#ifdef USE_SOFT_PARTICLES + // Igor: for additional depth dest + float4 tctexgen : TEXCOORD1; +#endif // USE_SOFT_PARTICLES + float fog : FOG; +}; + +// Must be less than view near +#define DEPTH_EPSILON 0.1h + +float4 main(v2p I) : COLOR +{ + float4 result = I.c * tex2D(s_base, I.tc0); + + // Igor: additional depth test +#ifdef USE_SOFT_PARTICLES + float4 _P = tex2Dproj(s_position, I.tctexgen); + float spaceDepth = _P.z - I.tctexgen.z - DEPTH_EPSILON; + if (spaceDepth < -2 * DEPTH_EPSILON) + { + spaceDepth = 100000.0h; // Skybox doesn't draw into position buffer + } + + result.a *= Contrast(saturate(spaceDepth * 1.3h), 2); + result.rgb *= Contrast(saturate(spaceDepth * 1.3h), 2); +#endif // USE_SOFT_PARTICLES + + clip(result.a - (0.01f / 255.0f)); + result.w *= I.fog; + result.xyz *= I.fog; + + return result; +} diff --git a/gamedata/shaders/r2/particle_alphaonly.ps.hlsl b/gamedata/shaders/r2/particle_alphaonly.ps.hlsl new file mode 100644 index 0000000..15d369f --- /dev/null +++ b/gamedata/shaders/r2/particle_alphaonly.ps.hlsl @@ -0,0 +1,13 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float4 c : COLOR0; // diffuse +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + return I.c.a * tex2D(s_base, I.tc0).a; +} diff --git a/gamedata/shaders/r2/particle_distort.ps.hlsl b/gamedata/shaders/r2/particle_distort.ps.hlsl new file mode 100644 index 0000000..e8486a0 --- /dev/null +++ b/gamedata/shaders/r2/particle_distort.ps.hlsl @@ -0,0 +1,34 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float4 c : COLOR0; // diffuse + +#ifdef USE_SOFT_PARTICLES + // Igor: for additional depth dest + float4 tctexgen : TEXCOORD1; +#endif // USE_SOFT_PARTICLES +}; + +// Pixel +uniform sampler s_distort; + +float4 main(v2p I) : COLOR +{ + float4 distort = tex2D(s_distort, I.tc0); + float factor = distort.a * dot(I.c.rgb, 0.33f); + /* + #ifdef USE_SOFT_PARTICLES + float2 zero = float2( 0.5, 0.5); + float alphaDistort; + float4 _P = tex2Dproj( s_position, I.tctexgen); + float spaceDepth = _P.z - I.tctexgen.z; + if (spaceDepth < -0.1h ) spaceDepth = 100000.0h; // Skybox doesn't draw into position buffer + alphaDistort = saturate(1.3*spaceDepth); + // alphaDistort = 0; + distort.xy = lerp ( zero, distort.xy, alphaDistort); + #endif // USE_SOFT_PARTICLES + */ + return float4(distort.rgb, factor); +} diff --git a/gamedata/shaders/r2/particle_s-aadd.ps.hlsl b/gamedata/shaders/r2/particle_s-aadd.ps.hlsl new file mode 100644 index 0000000..65cfc5d --- /dev/null +++ b/gamedata/shaders/r2/particle_s-aadd.ps.hlsl @@ -0,0 +1,18 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float4 c : COLOR0; // diffuse +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + // color = 0 -> color=1 + // color = 1 -> color=c + float4 c = I.c * tex2D(s_base, I.tc0); + c.xyz *= c.w; + float3 r = float3(1.0f, 1.0f, 1.0f) - c.xyz + c.xyz * c.xyz; // lerp(1,c.xyz,c.xyz), can't be less than .5h + return float4(r, 1.0f); +} diff --git a/gamedata/shaders/r2/particle_s-add.ps.hlsl b/gamedata/shaders/r2/particle_s-add.ps.hlsl new file mode 100644 index 0000000..78fe654 --- /dev/null +++ b/gamedata/shaders/r2/particle_s-add.ps.hlsl @@ -0,0 +1,17 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float4 c : COLOR0; // diffuse +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + // color = 0 -> color=1 + // color = 1 -> color=c + float4 c = I.c * tex2D(s_base, I.tc0); + float3 r = float3(1.0f, 1.0f, 1.0f) - c.xyz - c.xyz * c.xyz; // lerp(1,c.xyz,c.xyz), can't be less than .5h + return float4(r, 1.0f); +} diff --git a/gamedata/shaders/r2/particle_s-blend.ps.hlsl b/gamedata/shaders/r2/particle_s-blend.ps.hlsl new file mode 100644 index 0000000..6c3adaf --- /dev/null +++ b/gamedata/shaders/r2/particle_s-blend.ps.hlsl @@ -0,0 +1,17 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float4 c : COLOR0; // diffuse +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + // alpha = 0 -> color=1 + // alpha = 1 -> color=c + float4 c = I.c * tex2D(s_base, I.tc0); + float3 r = lerp(float3(1.0f, 1.0f, 1.0f), c.xyz, c.w); + return float4(r, 1.0f); +} diff --git a/gamedata/shaders/r2/particle_s-mul.ps.hlsl b/gamedata/shaders/r2/particle_s-mul.ps.hlsl new file mode 100644 index 0000000..0508e03 --- /dev/null +++ b/gamedata/shaders/r2/particle_s-mul.ps.hlsl @@ -0,0 +1,16 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float4 c : COLOR0; // diffuse +}; + +// Pixel +float4 main(v2p I) : COLOR +{ + // color = 0 -> color=0 + // color = 1 -> color=c + float4 c = I.c * tex2D(s_base, I.tc0); + return float4(c.xyz, 1.0f); +} diff --git a/gamedata/shaders/r2/particles_add.lua b/gamedata/shaders/r2/particles_add.lua new file mode 100644 index 0000000..57bf51e --- /dev/null +++ b/gamedata/shaders/r2/particles_add.lua @@ -0,0 +1,10 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("particle", "particle_add") + :sorting(3, false) + :blend(true, blend.one, blend.one) + :aref(false, 0) + :zb(true, false) + :fog(false) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_position"):texture("$user$position"):f_none() +end diff --git a/gamedata/shaders/r2/particles_xadd.lua b/gamedata/shaders/r2/particles_xadd.lua new file mode 100644 index 0000000..2da7f28 --- /dev/null +++ b/gamedata/shaders/r2/particles_xadd.lua @@ -0,0 +1,23 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("particle", "particle_add") + :sorting(3, false) + :blend(true, blend.one, blend.one) + :aref(false, 0) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_position"):texture("$user$position"):f_none() +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("particle", "particle_distort") + :sorting(3, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_distort"):texture(t_second) -- "pfx\\pfx_distortion" + shader:sampler("s_position"):texture("$user$position"):f_none() +end diff --git a/gamedata/shaders/r2/particles_xdistort.lua b/gamedata/shaders/r2/particles_xdistort.lua new file mode 100644 index 0000000..0aea34a --- /dev/null +++ b/gamedata/shaders/r2/particles_xdistort.lua @@ -0,0 +1,11 @@ +function l_special(shader, t_base, t_second, t_detail) + shader:begin("particle", "particle_distort") + :sorting(3, false) + :blend(true, blend.srcalpha, blend.invsrcalpha) + :zb(true, false) + :fog(false) + :distort(true) + shader:sampler("s_base"):texture(t_base) + shader:sampler("s_distort"):texture(t_base) -- "pfx\\pfx_distortion" + shader:sampler("s_position"):texture("$user$position"):f_none() +end diff --git a/gamedata/shaders/r2/pnv.hlsli b/gamedata/shaders/r2/pnv.hlsli new file mode 100644 index 0000000..80f9bd4 --- /dev/null +++ b/gamedata/shaders/r2/pnv.hlsli @@ -0,0 +1,57 @@ +////////////////////////////////////////////////////////////////////////////////////////// +//NV Shader by LVutner (basing on yaz NV) +//Last edit: 5:12 (22.05.19) +//Edit for 'GUNSLINGER Mod' by Romann[MNP_TEAM] (04.01.2020) +////////////////////////////////////////////////////////////////////////////////////////// + +//defines +#define NV_BRIGHTNESS 5.0 + +//effects +#define NV_FLICKERING +#define NV_NOISE +//#define NV_VIGNETTE +#define NV_SCANLINES + +//effect settings +#define FLICKERING_INTENSITY 0.003 // Интенсивность мерцания +#define FLICKERING_FREQ 60.0 // Частота мерцания +#define NOISE_INTENSITY 0.13 // Интенсивность шума +#define SCANLINES_INTENSITY 0.015 // Растровая Интенсивность +#define VIGNETTE_RADIUS 1.0 // + +// Pixel +uniform float4 screen_res; +uniform float4 m_zoom_deviation; + +float4 calc_night_vision_effect(float2 tc0, float4 color, float3 NV_COLOR) +{ + float lum = dot(color.rgb, float3( 0.3f, 0.38f, 0.22f)*NV_BRIGHTNESS ); //instead of float3 use LUMINANCE_floatTOR in stalker + color.rgb = m_zoom_deviation.z*NV_COLOR*lum; + + //cheap noise function + float noise = frac(sin(dot(tc0, float2(12.0, 78.0) + (timers.x*1.17f) )) * 43758.0); + + ////////////////////////////////////////////////////////////////////////////////////////// + // scanlines + #ifdef NV_SCANLINES + color += SCANLINES_INTENSITY*sin(tc0.y*screen_res.y*2.0); + #endif + ////////////////////////////////////////////////////////////////////////////////////////// + // noise + #ifdef NV_NOISE + color += noise * NOISE_INTENSITY; + #endif + ////////////////////////////////////////////////////////////////////////////////////////// + // screen flickering + #ifdef NV_FLICKERING + color += FLICKERING_INTENSITY * sin(timers.x*FLICKERING_FREQ); + #endif + ////////////////////////////////////////////////////////////////////////////////////////// + // vignette + #ifdef NV_VIGNETTE + color *= VIGNETTE_RADIUS-(distance(tc0.xy,float2( 0.5f, 0.5f))); + #endif + + return color; +} diff --git a/gamedata/shaders/r2/portal.lua b/gamedata/shaders/r2/portal.lua new file mode 100644 index 0000000..56e08e5 --- /dev/null +++ b/gamedata/shaders/r2/portal.lua @@ -0,0 +1,7 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("portal", "portal") + :fog(true) + :zb(true, false) + :sorting(3, true) + :blend(true, blend.srcalpha, blend.invsrcalpha) +end diff --git a/gamedata/shaders/r2/portal.ps.hlsl b/gamedata/shaders/r2/portal.ps.hlsl new file mode 100644 index 0000000..86490e4 --- /dev/null +++ b/gamedata/shaders/r2/portal.ps.hlsl @@ -0,0 +1,6 @@ +#include "common.hlsli" + +float4 main(float4 C : COLOR0) : COLOR +{ + return C; +} diff --git a/gamedata/shaders/r2/portal.vs.hlsl b/gamedata/shaders/r2/portal.vs.hlsl new file mode 100644 index 0000000..37a8bd7 --- /dev/null +++ b/gamedata/shaders/r2/portal.vs.hlsl @@ -0,0 +1,27 @@ +#include "common.hlsli" + +struct v_vert +{ + float4 pos : POSITION; // (float,float,float,1) + float4 color : COLOR0; // (r,g,b,dir-occlusion) +}; + +struct vf +{ + float4 hpos : POSITION; + float4 c : COLOR0; + float fog : FOG; +}; + +void main(in v_vert v, out vf o) +{ + o.hpos = mul(m_VP, v.pos); // xform, input in world coords + o.c = v.color; + o.fog = saturate(1.0f - calc_fogging(v.pos)); // fog, input in world coords + + o.c.a *= 1.0f - o.fog * o.fog; + + o.fog = 1.0f - o.fog; + o.c.rgb = lerp(fog_color, o.c, o.fog); +} + diff --git a/gamedata/shaders/r2/postprocess.lua b/gamedata/shaders/r2/postprocess.lua new file mode 100644 index 0000000..011f420 --- /dev/null +++ b/gamedata/shaders/r2/postprocess.lua @@ -0,0 +1,23 @@ +-- normal pp +t_rt = "$user$albedo" +t_noise = "fx\\fx_noise2" + +function normal (shader, t_base, t_second, t_detail) + shader:begin ("null","postprocess") + : fog (false) + : zb (false,false) + shader:sampler ("s_base0") :texture("$user$albedo") : clamp() : f_linear () + shader:sampler ("s_base1") :texture("$user$albedo") : clamp() : f_linear () + shader:sampler ("s_noise") :texture("fx\\fx_noise2") : f_linear () +end + +function l_special (shader, t_base, t_second, t_detail) + shader:begin ("null","postprocess_CM") + : fog (false) + : zb (false,false) + shader:sampler ("s_base0") : texture("$user$albedo") : clamp() : f_linear () + shader:sampler ("s_base1") : texture("$user$albedo") : clamp() : f_linear () + shader:sampler ("s_noise") : texture("fx\\fx_noise2") : f_linear () + shader:sampler ("s_grad0") : texture("$user$cmap0") : clamp() : f_linear () + shader:sampler ("s_grad1") : texture("$user$cmap1") : clamp() : f_linear () +end \ No newline at end of file diff --git a/gamedata/shaders/r2/postprocess.ps.hlsl b/gamedata/shaders/r2/postprocess.ps.hlsl new file mode 100644 index 0000000..1979c1f --- /dev/null +++ b/gamedata/shaders/r2/postprocess.ps.hlsl @@ -0,0 +1,34 @@ +#include "common.hlsli" + +struct v2p +{ + float4 color : COLOR0; // multiplier, color.w = noise_amount + float4 gray : COLOR1; // (.3,.3,.3.,amount) + float2 tc0 : TEXCOORD0; // base1 (duality) + float2 tc1 : TEXCOORD1; // base2 (duality) + float2 tc2 : TEXCOORD2; // base (noise) +}; + +uniform sampler2D s_base0; +uniform sampler2D s_base1; +uniform sampler2D s_noise; +uniform float4 c_brightness; + +// Pixel +float4 main(v2p I) : COLOR +{ + float3 t_0 = tex2D(s_base0, I.tc0); + float3 t_1 = tex2D(s_base1, I.tc1); + float3 image = (t_0 + t_1) * 0.5f; // add_d2 + float gray = dot(image, I.gray); // dp3 + image = lerp(gray, image, I.gray.w); // mul/mad + + float4 t_noise = tex2D(s_noise, I.tc2); + float3 noised = image * t_noise * 2.0f; // mul_2x + image = lerp(noised, image, I.color.w); // lrp ? + image = (image * I.color + c_brightness) * 2.0f; // mad + // image = (image + c_brightness) * I.color; // mad ? + + // out + return float4(image, 1.0f); // +mov +} diff --git a/gamedata/shaders/r2/postprocess_cm.ps.hlsl b/gamedata/shaders/r2/postprocess_cm.ps.hlsl new file mode 100644 index 0000000..688f847 --- /dev/null +++ b/gamedata/shaders/r2/postprocess_cm.ps.hlsl @@ -0,0 +1,44 @@ +#include "common.hlsli" + +struct v2p +{ + float4 color : COLOR0; // multiplier, color.w = noise_amount + float4 gray : COLOR1; // (.3,.3,.3.,amount) + float2 tc0 : TEXCOORD0; // base1 (duality) + float2 tc1 : TEXCOORD1; // base2 (duality) + float2 tc2 : TEXCOORD2; // base (noise) +}; + +uniform sampler2D s_base0; +uniform sampler2D s_base1; +uniform sampler2D s_noise; +uniform float4 c_brightness; +uniform sampler2D s_grad0; +uniform sampler2D s_grad1; +uniform float4 c_colormap; + +// Pixel +float4 main(v2p I) : COLOR +{ + float3 t_0 = tex2D(s_base0, I.tc0); + float3 t_1 = tex2D(s_base1, I.tc1); + float3 image_o = (t_0 + t_1) * 0.5f; // add_d2 + + float grad_i = dot(image_o, (0.3333f).xxx); + + float3 image0 = tex2D(s_grad0, float2(grad_i, 0.5f)); + float3 image1 = tex2D(s_grad1, float2(grad_i, 0.5f)); + float3 image = lerp(image0, image1, c_colormap.y); + image = lerp(image_o, image, c_colormap.x); + + float gray = dot(image, I.gray); // dp3 + image = lerp(gray, image, I.gray.w); // mul/mad + + float4 t_noise = tex2D(s_noise, I.tc2); + float3 noised = image * t_noise * 2.0f; // mul_2x + image = lerp(noised, image, I.color.w); // lrp ? + image = (image * I.color + c_brightness) * 2.0f; // mad + + // out + return float4(image, 1.0f); // +mov +} diff --git a/gamedata/shaders/r2/saturation.ps.hlsl b/gamedata/shaders/r2/saturation.ps.hlsl new file mode 100644 index 0000000..f150969 --- /dev/null +++ b/gamedata/shaders/r2/saturation.ps.hlsl @@ -0,0 +1,15 @@ +#include "common.hlsli" + +float3 pharse_saturation(float3 Color) +{ + float Luma = dot(Color.xyz, 0.33f) + 0.001f; + return lerp(Luma.xxx, Color.xyz, 1.2f); +} + +float4 main(p_shadow I) : COLOR +{ + float3 col = tex2D(s_image, I.tc0).xyz; + col = 1.2f * pharse_saturation(col); + + return float4(col, 1.0f); +} diff --git a/gamedata/shaders/r2/selflight.lua b/gamedata/shaders/r2/selflight.lua new file mode 100644 index 0000000..46784f9 --- /dev/null +++ b/gamedata/shaders/r2/selflight.lua @@ -0,0 +1,9 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("dumb", "dumb") + :fog(false) + :zb(false, false) + :blend(true, blend.zero, blend.one) + :aref(false, 0) + :sorting(2, false) + shader:sampler("s_base"):texture(t_base) +end diff --git a/gamedata/shaders/r2/selflight2.lua b/gamedata/shaders/r2/selflight2.lua new file mode 100644 index 0000000..56bf243 --- /dev/null +++ b/gamedata/shaders/r2/selflight2.lua @@ -0,0 +1,13 @@ +function normal(shader, t_base, t_second, t_detail) + shader:begin("deffer_base", "deffer_base") + :fog(false) + :emissive(true) + shader:sampler("s_base"):texture(t_base) +end + +function l_special(shader, t_base, t_second, t_detail) + shader:begin("deffer_base", "accum_emissivel") + :zb(true, false) + :fog(false) + :emissive(true) +end diff --git a/gamedata/shaders/r2/shadow.hlsli b/gamedata/shaders/r2/shadow.hlsli new file mode 100644 index 0000000..9ff7d75 --- /dev/null +++ b/gamedata/shaders/r2/shadow.hlsli @@ -0,0 +1,252 @@ +#ifndef SHADOW_H +#define SHADOW_H + +#include "common.hlsli" + +uniform sampler s_smap : register(ps, s0); // 2D/cube shadowmap + +#define KERNEL .6f +////////////////////////////////////////////////////////////////////////////////////////// +// software +////////////////////////////////////////////////////////////////////////////////////////// +float sample_sw(float2 tc, float2 shift, float depth_cmp) +{ + static const float ts = KERNEL / float(SMAP_size); + tc += shift * ts; + + float texsize = SMAP_size; + float offset = 0.5f / texsize; + float2 Tex00 = tc + float2(-offset, -offset); + float2 Tex01 = tc + float2(-offset, offset); + float2 Tex10 = tc + float2(offset, -offset); + float2 Tex11 = tc + float2(offset, offset); + float4 depth = float4( + depth_cmp - tex2D(s_smap, Tex00).x, + depth_cmp - tex2D(s_smap, Tex01).x, + depth_cmp - tex2D(s_smap, Tex10).x, + depth_cmp - tex2D(s_smap, Tex11).x); + float4 compare = step(depth, 0.0f); + float2 fr = frac(Tex00 * texsize); + float2 ifr = float2(1.0f, 1.0f) - fr; + float4 fr4 = float4(ifr.x * ifr.y, ifr.x * fr.y, fr.x * ifr.y, fr.x * fr.y); + return dot(compare, fr4); +} +float shadow_sw(float4 tc) +{ + float2 tc_dw = tc.xy / tc.w; + float4 s; + s.x = sample_sw(tc_dw, float2(-1, -1), tc.z); + s.y = sample_sw(tc_dw, float2(+1, -1), tc.z); + s.z = sample_sw(tc_dw, float2(-1, +1), tc.z); + s.w = sample_sw(tc_dw, float2(+1, +1), tc.z); + return dot(s, 1.h / 4.h); +} + +////////////////////////////////////////////////////////////////////////////////////////// +// hardware + PCF +////////////////////////////////////////////////////////////////////////////////////////// +float sample_hw_pcf(float4 tc, float4 shift) +{ + static const float ts = KERNEL / float(SMAP_size); +#ifndef SUNSHAFTS_DYNAMIC + return tex2Dproj(s_smap, tc + tc.w * shift * ts).x; +#else // SUNSHAFTS_DYNAMIC + float4 tc2 = tc / tc.w + shift * ts; + tc2.w = 0; + return tex2Dlod(s_smap, tc2); +#endif // SUNSHAFTS_DYNAMIC +} +float shadow_hw(float4 tc) +{ + float s0 = sample_hw_pcf(tc, float4(-1.0f, -1.0f, 0.0f, 0.0f)); + float s1 = sample_hw_pcf(tc, float4(+1.0f, -1.0f, 0.0f, 0.0f)); + float s2 = sample_hw_pcf(tc, float4(-1.0f, +1.0f, 0.0f, 0.0f)); + float s3 = sample_hw_pcf(tc, float4(+1.0f, +1.0f, 0.0f, 0.0f)); + + return (s0 + s1 + s2 + s3) / (4.h); +} + +////////////////////////////////////////////////////////////////////////////////////////// +// hardware (ATI) + DF24/Fetch4 +////////////////////////////////////////////////////////////////////////////////////////// + +/* +float sample_hw_f4 (float4 tc,float4 shift){ + static const float ts = KERNEL / float(SMAP_size); + float4 D4 = tex2Dproj (s_smap,tc + tc.w*shift*ts); + float4 dcmp = tc.z/tc.w ; + float4 cmp = dcmp tex + #define SMAALoad(tex, pos, sample) tex.Load(pos, sample) + #if defined(SMAA_HLSL_4_1) + #define SMAAGather(tex, coord) tex.Gather(LinearSampler, coord, 0) + #endif +#endif +#if defined(SMAA_GLSL_3) || defined(SMAA_GLSL_4) + #define SMAATexture2D(tex) sampler2D tex + #define SMAATexturePass2D(tex) tex + #define SMAASampleLevelZero(tex, coord) textureLod(tex, coord, 0.0) + #define SMAASampleLevelZeroPoint(tex, coord) textureLod(tex, coord, 0.0) + #define SMAASampleLevelZeroOffset(tex, coord, offset) textureLodOffset(tex, coord, 0.0, offset) + #define SMAASample(tex, coord) texture(tex, coord) + #define SMAASamplePoint(tex, coord) texture(tex, coord) + #define SMAASampleOffset(tex, coord, offset) texture(tex, coord, offset) + #define SMAA_FLATTEN + #define SMAA_BRANCH + #define lerp(a, b, t) mix(a, b, t) + #define saturate(a) clamp(a, 0.0, 1.0) + #if defined(SMAA_GLSL_4) + #define mad(a, b, c) fma(a, b, c) + #define SMAAGather(tex, coord) textureGather(tex, coord) + #else + #define mad(a, b, c) (a * b + c) + #endif + #define float2 vec2 + #define float3 vec3 + #define float4 vec4 + #define int2 ivec2 + #define int3 ivec3 + #define int4 ivec4 + #define bool2 bvec2 + #define bool3 bvec3 + #define bool4 bvec4 +#endif + +#if !defined(SMAA_HLSL_3) && !defined(SMAA_HLSL_4) && !defined(SMAA_HLSL_4_1) && !defined(SMAA_GLSL_3) && !defined(SMAA_GLSL_4) && !defined(SMAA_CUSTOM_SL) + #error you must define the shading language: SMAA_HLSL_*, SMAA_GLSL_* or SMAA_CUSTOM_SL +#endif + +//----------------------------------------------------------------------------- +// Misc functions + +/** + * Gathers current pixel, and the top-left neighbors. + */ +float3 SMAAGatherNeighbours(float2 texcoord, + float4 offset[3], + SMAATexture2D(tex)) +{ + // RainbowZerg: SMAAGather is not supported now, need depth to be stored as x-component + // #ifdef SMAAGather + // return SMAAGather(tex, texcoord + SMAA_RT_METRICS.xy * float2(-0.5, -0.5)).grb; + // #else + float P = SMAASamplePoint(tex, texcoord).z; // RainbowZerg: changed here .r to .z 'cause in X-Ray depth stored as z-component of s_position + float Pleft = SMAASamplePoint(tex, offset[0].xy).z; // RainbowZerg: changed here .r to .z 'cause in X-Ray depth stored as z-component of s_position + float Ptop = SMAASamplePoint(tex, offset[0].zw).z; // RainbowZerg: changed here .r to .z 'cause in X-Ray depth stored as z-component of s_position + return float3(P, Pleft, Ptop); + // #endif +} + +/** + * Adjusts the threshold by means of predication. + */ +float2 SMAACalculatePredicatedThreshold(float2 texcoord, + float4 offset[3], + SMAATexture2D(predicationTex)) +{ + float3 neighbours = SMAAGatherNeighbours(texcoord, offset, SMAATexturePass2D(predicationTex)); + float2 delta = abs(neighbours.xx - neighbours.yz); + float2 edges = step(SMAA_PREDICATION_THRESHOLD, delta); + return SMAA_PREDICATION_SCALE * SMAA_THRESHOLD * (1.0 - SMAA_PREDICATION_STRENGTH * edges); +} + +/** + * Conditional move: + */ +void SMAAMovc(bool2 cond, inout float2 variable, float2 value) +{ + SMAA_FLATTEN if (cond.x) variable.x = value.x; + SMAA_FLATTEN if (cond.y) variable.y = value.y; +} + +void SMAAMovc(bool4 cond, inout float4 variable, float4 value) +{ + SMAAMovc(cond.xy, variable.xy, value.xy); + SMAAMovc(cond.zw, variable.zw, value.zw); +} + +#if SMAA_INCLUDE_VS +//----------------------------------------------------------------------------- +// Vertex Shaders + +/** + * Edge Detection Vertex Shader + */ +void SMAAEdgeDetectionVS(float2 texcoord, + out float4 offset[3]) +{ + offset[0] = mad(SMAA_RT_METRICS.xyxy, float4(-1.0, 0.0, 0.0, -1.0), texcoord.xyxy); + offset[1] = mad(SMAA_RT_METRICS.xyxy, float4(1.0, 0.0, 0.0, 1.0), texcoord.xyxy); + offset[2] = mad(SMAA_RT_METRICS.xyxy, float4(-2.0, 0.0, 0.0, -2.0), texcoord.xyxy); +} + +/** + * Blend Weight Calculation Vertex Shader + */ +void SMAABlendingWeightCalculationVS(float2 texcoord, + out float2 pixcoord, + out float4 offset[3]) +{ + pixcoord = texcoord * SMAA_RT_METRICS.zw; + + // We will use these offsets for the searches later on (see @PSEUDO_GATHER4): + offset[0] = mad(SMAA_RT_METRICS.xyxy, float4(-0.25, -0.125, 1.25, -0.125), texcoord.xyxy); + offset[1] = mad(SMAA_RT_METRICS.xyxy, float4(-0.125, -0.25, -0.125, 1.25), texcoord.xyxy); + + // And these for the searches, they indicate the ends of the loops: + offset[2] = mad(SMAA_RT_METRICS.xxyy, + float4(-2.0, 2.0, -2.0, 2.0) * float(SMAA_MAX_SEARCH_STEPS), + float4(offset[0].xz, offset[1].yw)); +} + +/** + * Neighborhood Blending Vertex Shader + */ +void SMAANeighborhoodBlendingVS(float2 texcoord, + out float4 offset) +{ + offset = mad(SMAA_RT_METRICS.xyxy, float4(1.0, 0.0, 0.0, 1.0), texcoord.xyxy); +} +#endif // SMAA_INCLUDE_VS + +#if SMAA_INCLUDE_PS +//----------------------------------------------------------------------------- +// Edge Detection Pixel Shaders (First Pass) + +/** + * Luma Edge Detection + * + * IMPORTANT NOTICE: luma edge detection requires gamma-corrected colors, and + * thus 'colorTex' should be a non-sRGB texture. + */ +float2 SMAALumaEdgeDetectionPS(float2 texcoord, + float4 offset[3], + SMAATexture2D(colorTex) + #if SMAA_PREDICATION + , + SMAATexture2D(predicationTex) + #endif +) +{ + // Calculate the threshold: + #if SMAA_PREDICATION + float2 threshold = SMAACalculatePredicatedThreshold(texcoord, offset, SMAATexturePass2D(predicationTex)); + #else + float2 threshold = float2(SMAA_THRESHOLD, SMAA_THRESHOLD); + #endif + + // Calculate lumas: + float3 weights = float3(0.2126, 0.7152, 0.0722); + float L = dot(SMAASamplePoint(colorTex, texcoord).rgb, weights); + + float Lleft = dot(SMAASamplePoint(colorTex, offset[0].xy).rgb, weights); + float Ltop = dot(SMAASamplePoint(colorTex, offset[0].zw).rgb, weights); + + // We do the usual threshold: + float4 delta; + delta.xy = abs(L - float2(Lleft, Ltop)); + float2 edges = step(threshold, delta.xy); + + // Then discard if there is no edge: + if (dot(edges, float2(1.0, 1.0)) == 0.0) + { + discard; + } + + // Calculate right and bottom deltas: + float Lright = dot(SMAASamplePoint(colorTex, offset[1].xy).rgb, weights); + float Lbottom = dot(SMAASamplePoint(colorTex, offset[1].zw).rgb, weights); + delta.zw = abs(L - float2(Lright, Lbottom)); + + // Calculate the maximum delta in the direct neighborhood: + float2 maxDelta = max(delta.xy, delta.zw); + + // Calculate left-left and top-top deltas: + float Lleftleft = dot(SMAASamplePoint(colorTex, offset[2].xy).rgb, weights); + float Ltoptop = dot(SMAASamplePoint(colorTex, offset[2].zw).rgb, weights); + delta.zw = abs(float2(Lleft, Ltop) - float2(Lleftleft, Ltoptop)); + + // Calculate the final maximum delta: + maxDelta = max(maxDelta.xy, delta.zw); + float finalDelta = max(maxDelta.x, maxDelta.y); + + // Local contrast adaptation: + edges.xy *= step(finalDelta, SMAA_LOCAL_CONTRAST_ADAPTATION_FACTOR * delta.xy); + + return edges; +} + +/** + * Color Edge Detection + * + * IMPORTANT NOTICE: color edge detection requires gamma-corrected colors, and + * thus 'colorTex' should be a non-sRGB texture. + */ +float2 SMAAColorEdgeDetectionPS(float2 texcoord, + float4 offset[3], + SMAATexture2D(colorTex) + #if SMAA_PREDICATION + , + SMAATexture2D(predicationTex) + #endif +) +{ + // Calculate the threshold: + #if SMAA_PREDICATION + float2 threshold = SMAACalculatePredicatedThreshold(texcoord, offset, predicationTex); + #else + float2 threshold = float2(SMAA_THRESHOLD, SMAA_THRESHOLD); + #endif + + // Calculate color deltas: + float4 delta; + float3 C = SMAASamplePoint(colorTex, texcoord).rgb; + + float3 Cleft = SMAASamplePoint(colorTex, offset[0].xy).rgb; + float3 t = abs(C - Cleft); + delta.x = max(max(t.r, t.g), t.b); + + float3 Ctop = SMAASamplePoint(colorTex, offset[0].zw).rgb; + t = abs(C - Ctop); + delta.y = max(max(t.r, t.g), t.b); + + // We do the usual threshold: + float2 edges = step(threshold, delta.xy); + + // Then discard if there is no edge: + if (dot(edges, float2(1.0, 1.0)) == 0.0) + { + discard; + } + + // Calculate right and bottom deltas: + float3 Cright = SMAASamplePoint(colorTex, offset[1].xy).rgb; + t = abs(C - Cright); + delta.z = max(max(t.r, t.g), t.b); + + float3 Cbottom = SMAASamplePoint(colorTex, offset[1].zw).rgb; + t = abs(C - Cbottom); + delta.w = max(max(t.r, t.g), t.b); + + // Calculate the maximum delta in the direct neighborhood: + float2 maxDelta = max(delta.xy, delta.zw); + + // Calculate left-left and top-top deltas: + float3 Cleftleft = SMAASamplePoint(colorTex, offset[2].xy).rgb; + t = abs(C - Cleftleft); + delta.z = max(max(t.r, t.g), t.b); + + float3 Ctoptop = SMAASamplePoint(colorTex, offset[2].zw).rgb; + t = abs(C - Ctoptop); + delta.w = max(max(t.r, t.g), t.b); + + // Calculate the final maximum delta: + maxDelta = max(maxDelta.xy, delta.zw); + float finalDelta = max(maxDelta.x, maxDelta.y); + + // Local contrast adaptation: + edges.xy *= step(finalDelta, SMAA_LOCAL_CONTRAST_ADAPTATION_FACTOR * delta.xy); + + return edges; +} + +/** + * Depth Edge Detection + */ +float2 SMAADepthEdgeDetectionPS(float2 texcoord, + float4 offset[3], + SMAATexture2D(depthTex)) +{ + float3 neighbours = SMAAGatherNeighbours(texcoord, offset, SMAATexturePass2D(depthTex)); + float2 delta = abs(neighbours.xx - float2(neighbours.y, neighbours.z)); + float2 edges = step(SMAA_DEPTH_THRESHOLD, delta); + + if (dot(edges, float2(1.0, 1.0)) == 0.0) + { + discard; + } + + return edges; +} + +//----------------------------------------------------------------------------- +// Diagonal Search Functions + + #if !defined(SMAA_DISABLE_DIAG_DETECTION) + +/** + * Allows to decode two binary values from a bilinear-filtered access. + */ +float2 SMAADecodeDiagBilinearAccess(float2 e) +{ + // Bilinear access for fetching 'e' have a 0.25 offset, and we are + // interested in the R and G edges: + // + // +---G---+-------+ + // | x o R x | + // +-------+-------+ + // + // Then, if one of these edge is enabled: + // Red: (0.75 * X + 0.25 * 1) => 0.25 or 1.0 + // Green: (0.75 * 1 + 0.25 * X) => 0.75 or 1.0 + // + // This function will unpack the values (mad + mul + round): + // wolframalpha.com: round(x * abs(5 * x - 5 * 0.75)) plot 0 to 1 + e.r = e.r * abs(5.0 * e.r - 5.0 * 0.75); + return round(e); +} + +float4 SMAADecodeDiagBilinearAccess(float4 e) +{ + e.rb = e.rb * abs(5.0 * e.rb - 5.0 * 0.75); + return round(e); +} + +/** + * These functions allows to perform diagonal pattern searches. + */ +float2 SMAASearchDiag1(SMAATexture2D(edgesTex), float2 texcoord, float2 dir, out float2 e) +{ + float4 coord = float4(texcoord, -1.0, 1.0); + float3 t = float3(SMAA_RT_METRICS.xy, 1.0); + while (coord.z < float(SMAA_MAX_SEARCH_STEPS_DIAG - 1) && + coord.w > 0.9) + { + coord.xyz = mad(t, float3(dir, 1.0), coord.xyz); + e = SMAASampleLevelZero(edgesTex, coord.xy).rg; + coord.w = dot(e, float2(0.5, 0.5)); + } + return coord.zw; +} + +float2 SMAASearchDiag2(SMAATexture2D(edgesTex), float2 texcoord, float2 dir, out float2 e) +{ + float4 coord = float4(texcoord, -1.0, 1.0); + coord.x += 0.25 * SMAA_RT_METRICS.x; // See @SearchDiag2Optimization + float3 t = float3(SMAA_RT_METRICS.xy, 1.0); + while (coord.z < float(SMAA_MAX_SEARCH_STEPS_DIAG - 1) && + coord.w > 0.9) + { + coord.xyz = mad(t, float3(dir, 1.0), coord.xyz); + + // @SearchDiag2Optimization + // Fetch both edges at once using bilinear filtering: + e = SMAASampleLevelZero(edgesTex, coord.xy).rg; + e = SMAADecodeDiagBilinearAccess(e); + + // Non-optimized version: + // e.g = SMAASampleLevelZero(edgesTex, coord.xy).g; + // e.r = SMAASampleLevelZeroOffset(edgesTex, coord.xy, int2(1, 0)).r; + + coord.w = dot(e, float2(0.5, 0.5)); + } + return coord.zw; +} + +/** + * Similar to SMAAArea, this calculates the area corresponding to a certain + * diagonal distance and crossing edges 'e'. + */ +float2 SMAAAreaDiag(SMAATexture2D(areaTex), float2 dist, float2 e, float offset) +{ + float2 texcoord = mad(float2(SMAA_AREATEX_MAX_DISTANCE_DIAG, SMAA_AREATEX_MAX_DISTANCE_DIAG), e, dist); + + // We do a scale and bias for mapping to texel space: + texcoord = mad(SMAA_AREATEX_PIXEL_SIZE, texcoord, 0.5 * SMAA_AREATEX_PIXEL_SIZE); + + // Diagonal areas are on the second half of the texture: + texcoord.x += 0.5; + + // Move to proper place, according to the subpixel offset: + texcoord.y += SMAA_AREATEX_SUBTEX_SIZE * offset; + + // Do it! + return SMAA_AREATEX_SELECT(SMAASampleLevelZero(areaTex, texcoord)); +} + +/** + * This searches for diagonal patterns and returns the corresponding weights. + */ +float2 SMAACalculateDiagWeights(SMAATexture2D(edgesTex), SMAATexture2D(areaTex), float2 texcoord, float2 e, float4 subsampleIndices) +{ + float2 weights = float2(0.0, 0.0); + + // Search for the line ends: + float4 d; + float2 end; + if (e.r > 0.0) + { + d.xz = SMAASearchDiag1(SMAATexturePass2D(edgesTex), texcoord, float2(-1.0, 1.0), end); + d.x += float(end.y > 0.9); + } + else + { + d.xz = float2(0.0, 0.0); + } + d.yw = SMAASearchDiag1(SMAATexturePass2D(edgesTex), texcoord, float2(1.0, -1.0), end); + + SMAA_BRANCH + if (d.x + d.y > 2.0) + { // d.x + d.y + 1 > 3 + // Fetch the crossing edges: + float4 coords = mad(float4(-d.x + 0.25, d.x, d.y, -d.y - 0.25), SMAA_RT_METRICS.xyxy, texcoord.xyxy); + float4 c; + c.xy = SMAASampleLevelZeroOffset(edgesTex, coords.xy, int2(-1, 0)).rg; + c.zw = SMAASampleLevelZeroOffset(edgesTex, coords.zw, int2(1, 0)).rg; + c.yxwz = SMAADecodeDiagBilinearAccess(c.xyzw); + + // Non-optimized version: + // float4 coords = mad(float4(-d.x, d.x, d.y, -d.y), SMAA_RT_METRICS.xyxy, texcoord.xyxy); + // float4 c; + // c.x = SMAASampleLevelZeroOffset(edgesTex, coords.xy, int2(-1, 0)).g; + // c.y = SMAASampleLevelZeroOffset(edgesTex, coords.xy, int2( 0, 0)).r; + // c.z = SMAASampleLevelZeroOffset(edgesTex, coords.zw, int2( 1, 0)).g; + // c.w = SMAASampleLevelZeroOffset(edgesTex, coords.zw, int2( 1, -1)).r; + + // Merge crossing edges at each side into a single value: + float2 cc = mad(float2(2.0, 2.0), c.xz, c.yw); + + // Remove the crossing edge if we didn't found the end of the line: + SMAAMovc(bool2(step(0.9, d.zw)), cc, float2(0.0, 0.0)); + + // Fetch the areas for this line: + weights += SMAAAreaDiag(SMAATexturePass2D(areaTex), d.xy, cc, subsampleIndices.z); + } + + // Search for the line ends: + d.xz = SMAASearchDiag2(SMAATexturePass2D(edgesTex), texcoord, float2(-1.0, -1.0), end); + if (SMAASampleLevelZeroOffset(edgesTex, texcoord, int2(1, 0)).r > 0.0) + { + d.yw = SMAASearchDiag2(SMAATexturePass2D(edgesTex), texcoord, float2(1.0, 1.0), end); + d.y += float(end.y > 0.9); + } + else + { + d.yw = float2(0.0, 0.0); + } + + SMAA_BRANCH + if (d.x + d.y > 2.0) + { // d.x + d.y + 1 > 3 + // Fetch the crossing edges: + float4 coords = mad(float4(-d.x, -d.x, d.y, d.y), SMAA_RT_METRICS.xyxy, texcoord.xyxy); + float4 c; + c.x = SMAASampleLevelZeroOffset(edgesTex, coords.xy, int2(-1, 0)).g; + c.y = SMAASampleLevelZeroOffset(edgesTex, coords.xy, int2(0, -1)).r; + c.zw = SMAASampleLevelZeroOffset(edgesTex, coords.zw, int2(1, 0)).gr; + float2 cc = mad(float2(2.0, 2.0), c.xz, c.yw); + + // Remove the crossing edge if we didn't found the end of the line: + SMAAMovc(bool2(step(0.9, d.zw)), cc, float2(0.0, 0.0)); + + // Fetch the areas for this line: + weights += SMAAAreaDiag(SMAATexturePass2D(areaTex), d.xy, cc, subsampleIndices.w).gr; + } + + return weights; +} + #endif + +//----------------------------------------------------------------------------- +// Horizontal/Vertical Search Functions + +/** + * This allows to determine how much length should we add in the last step + * of the searches. It takes the bilinearly interpolated edge (see + * @PSEUDO_GATHER4), and adds 0, 1 or 2, depending on which edges and + * crossing edges are active. + */ +float SMAASearchLength(SMAATexture2D(searchTex), float2 e, float offset) +{ + // The texture is flipped vertically, with left and right cases taking half + // of the space horizontally: + float2 scale = SMAA_SEARCHTEX_SIZE * float2(0.5, -1.0); + float2 bias = SMAA_SEARCHTEX_SIZE * float2(offset, 1.0); + + // Scale and bias to access texel centers: + scale += float2(-1.0, 1.0); + bias += float2(0.5, -0.5); + + // Convert from pixel coordinates to texcoords: + // (We use SMAA_SEARCHTEX_PACKED_SIZE because the texture is cropped) + scale *= 1.0 / SMAA_SEARCHTEX_PACKED_SIZE; + bias *= 1.0 / SMAA_SEARCHTEX_PACKED_SIZE; + + // Lookup the search texture: + return SMAA_SEARCHTEX_SELECT(SMAASampleLevelZero(searchTex, mad(scale, e, bias))); +} + +/** + * Horizontal/vertical search functions for the 2nd pass. + */ +float SMAASearchXLeft(SMAATexture2D(edgesTex), SMAATexture2D(searchTex), float2 texcoord, float end) +{ + /** + * @PSEUDO_GATHER4 + * This texcoord has been offset by (-0.25, -0.125) in the vertex shader to + * sample between edge, thus fetching four edges in a row. + * Sampling with different offsets in each direction allows to disambiguate + * which edges are active from the four fetched ones. + */ + float2 e = float2(0.0, 1.0); + while (texcoord.x > end && + e.g > 0.8281 && // Is there some edge not activated? + e.r == 0.0) + { // Or is there a crossing edge that breaks the line? + e = SMAASampleLevelZero(edgesTex, texcoord).rg; + texcoord = mad(-float2(2.0, 0.0), SMAA_RT_METRICS.xy, texcoord); + } + + float offset = mad(-(255.0 / 127.0), SMAASearchLength(SMAATexturePass2D(searchTex), e, 0.0), 3.25); + return mad(SMAA_RT_METRICS.x, offset, texcoord.x); + + // Non-optimized version: + // We correct the previous (-0.25, -0.125) offset we applied: + // texcoord.x += 0.25 * SMAA_RT_METRICS.x; + + // The searches are bias by 1, so adjust the coords accordingly: + // texcoord.x += SMAA_RT_METRICS.x; + + // Disambiguate the length added by the last step: + // texcoord.x += 2.0 * SMAA_RT_METRICS.x; // Undo last step + // texcoord.x -= SMAA_RT_METRICS.x * (255.0 / 127.0) * SMAASearchLength(SMAATexturePass2D(searchTex), e, 0.0); + // return mad(SMAA_RT_METRICS.x, offset, texcoord.x); +} + +float SMAASearchXRight(SMAATexture2D(edgesTex), SMAATexture2D(searchTex), float2 texcoord, float end) +{ + float2 e = float2(0.0, 1.0); + while (texcoord.x < end && + e.g > 0.8281 && // Is there some edge not activated? + e.r == 0.0) + { // Or is there a crossing edge that breaks the line? + e = SMAASampleLevelZero(edgesTex, texcoord).rg; + texcoord = mad(float2(2.0, 0.0), SMAA_RT_METRICS.xy, texcoord); + } + float offset = mad(-(255.0 / 127.0), SMAASearchLength(SMAATexturePass2D(searchTex), e, 0.5), 3.25); + return mad(-SMAA_RT_METRICS.x, offset, texcoord.x); +} + +float SMAASearchYUp(SMAATexture2D(edgesTex), SMAATexture2D(searchTex), float2 texcoord, float end) +{ + float2 e = float2(1.0, 0.0); + while (texcoord.y > end && + e.r > 0.8281 && // Is there some edge not activated? + e.g == 0.0) + { // Or is there a crossing edge that breaks the line? + e = SMAASampleLevelZero(edgesTex, texcoord).rg; + texcoord = mad(-float2(0.0, 2.0), SMAA_RT_METRICS.xy, texcoord); + } + float offset = mad(-(255.0 / 127.0), SMAASearchLength(SMAATexturePass2D(searchTex), e.gr, 0.0), 3.25); + return mad(SMAA_RT_METRICS.y, offset, texcoord.y); +} + +float SMAASearchYDown(SMAATexture2D(edgesTex), SMAATexture2D(searchTex), float2 texcoord, float end) +{ + float2 e = float2(1.0, 0.0); + while (texcoord.y < end && + e.r > 0.8281 && // Is there some edge not activated? + e.g == 0.0) + { // Or is there a crossing edge that breaks the line? + e = SMAASampleLevelZero(edgesTex, texcoord).rg; + texcoord = mad(float2(0.0, 2.0), SMAA_RT_METRICS.xy, texcoord); + } + float offset = mad(-(255.0 / 127.0), SMAASearchLength(SMAATexturePass2D(searchTex), e.gr, 0.5), 3.25); + return mad(-SMAA_RT_METRICS.y, offset, texcoord.y); +} + +/** + * Ok, we have the distance and both crossing edges. So, what are the areas + * at each side of current edge? + */ +float2 SMAAArea(SMAATexture2D(areaTex), float2 dist, float e1, float e2, float offset) +{ + // Rounding prevents precision errors of bilinear filtering: + float2 texcoord = mad(float2(SMAA_AREATEX_MAX_DISTANCE, SMAA_AREATEX_MAX_DISTANCE), round(4.0 * float2(e1, e2)), dist); + + // We do a scale and bias for mapping to texel space: + texcoord = mad(SMAA_AREATEX_PIXEL_SIZE, texcoord, 0.5 * SMAA_AREATEX_PIXEL_SIZE); + + // Move to proper place, according to the subpixel offset: + texcoord.y = mad(SMAA_AREATEX_SUBTEX_SIZE, offset, texcoord.y); + + // Do it! + return SMAA_AREATEX_SELECT(SMAASampleLevelZero(areaTex, texcoord)); +} + +//----------------------------------------------------------------------------- +// Corner Detection Functions + +void SMAADetectHorizontalCornerPattern(SMAATexture2D(edgesTex), inout float2 weights, float4 texcoord, float2 d) +{ + #if !defined(SMAA_DISABLE_CORNER_DETECTION) + float2 leftRight = step(d.xy, d.yx); + float2 rounding = (1.0 - SMAA_CORNER_ROUNDING_NORM) * leftRight; + + rounding /= leftRight.x + leftRight.y; // Reduce blending for pixels in the center of a line. + + float2 factor = float2(1.0, 1.0); + factor.x -= rounding.x * SMAASampleLevelZeroOffset(edgesTex, texcoord.xy, int2(0, 1)).r; + factor.x -= rounding.y * SMAASampleLevelZeroOffset(edgesTex, texcoord.zw, int2(1, 1)).r; + factor.y -= rounding.x * SMAASampleLevelZeroOffset(edgesTex, texcoord.xy, int2(0, -2)).r; + factor.y -= rounding.y * SMAASampleLevelZeroOffset(edgesTex, texcoord.zw, int2(1, -2)).r; + + weights *= saturate(factor); + #endif +} + +void SMAADetectVerticalCornerPattern(SMAATexture2D(edgesTex), inout float2 weights, float4 texcoord, float2 d) +{ + #if !defined(SMAA_DISABLE_CORNER_DETECTION) + float2 leftRight = step(d.xy, d.yx); + float2 rounding = (1.0 - SMAA_CORNER_ROUNDING_NORM) * leftRight; + + rounding /= leftRight.x + leftRight.y; + + float2 factor = float2(1.0, 1.0); + factor.x -= rounding.x * SMAASampleLevelZeroOffset(edgesTex, texcoord.xy, int2(1, 0)).g; + factor.x -= rounding.y * SMAASampleLevelZeroOffset(edgesTex, texcoord.zw, int2(1, 1)).g; + factor.y -= rounding.x * SMAASampleLevelZeroOffset(edgesTex, texcoord.xy, int2(-2, 0)).g; + factor.y -= rounding.y * SMAASampleLevelZeroOffset(edgesTex, texcoord.zw, int2(-2, 1)).g; + + weights *= saturate(factor); + #endif +} + +//----------------------------------------------------------------------------- +// Blending Weight Calculation Pixel Shader (Second Pass) + +float4 SMAABlendingWeightCalculationPS(float2 texcoord, + float2 pixcoord, + float4 offset[3], + SMAATexture2D(edgesTex), + SMAATexture2D(areaTex), + SMAATexture2D(searchTex), + float4 subsampleIndices) +{ // Just pass zero for SMAA 1x, see @SUBSAMPLE_INDICES. + float4 weights = float4(0.0, 0.0, 0.0, 0.0); + + float2 e = SMAASample(edgesTex, texcoord).rg; + + SMAA_BRANCH + if (e.g > 0.0) + { // Edge at north + #if !defined(SMAA_DISABLE_DIAG_DETECTION) + // Diagonals have both north and west edges, so searching for them in + // one of the boundaries is enough. + weights.rg = SMAACalculateDiagWeights(SMAATexturePass2D(edgesTex), SMAATexturePass2D(areaTex), texcoord, e, subsampleIndices); + + // We give priority to diagonals, so if we find a diagonal we skip + // horizontal/vertical processing. + SMAA_BRANCH + if (weights.r == -weights.g) + { // weights.r + weights.g == 0.0 + #endif + + float2 d; + + // Find the distance to the left: + float3 coords; + coords.x = SMAASearchXLeft(SMAATexturePass2D(edgesTex), SMAATexturePass2D(searchTex), offset[0].xy, offset[2].x); + coords.y = offset[1].y; // offset[1].y = texcoord.y - 0.25 * SMAA_RT_METRICS.y (@CROSSING_OFFSET) + d.x = coords.x; + + // Now fetch the left crossing edges, two at a time using bilinear + // filtering. Sampling at -0.25 (see @CROSSING_OFFSET) enables to + // discern what value each edge has: + float e1 = SMAASampleLevelZero(edgesTex, coords.xy).r; + + // Find the distance to the right: + coords.z = SMAASearchXRight(SMAATexturePass2D(edgesTex), SMAATexturePass2D(searchTex), offset[0].zw, offset[2].y); + d.y = coords.z; + + // We want the distances to be in pixel units (doing this here allow to + // better interleave arithmetic and memory accesses): + d = abs(round(mad(SMAA_RT_METRICS.zz, d, -pixcoord.xx))); + + // SMAAArea below needs a sqrt, as the areas texture is compressed + // quadratically: + float2 sqrt_d = sqrt(d); + + // Fetch the right crossing edges: + float e2 = SMAASampleLevelZeroOffset(edgesTex, coords.zy, int2(1, 0)).r; + + // Ok, we know how this pattern looks like, now it is time for getting + // the actual area: + weights.rg = SMAAArea(SMAATexturePass2D(areaTex), sqrt_d, e1, e2, subsampleIndices.y); + + // Fix corners: + coords.y = texcoord.y; + SMAADetectHorizontalCornerPattern(SMAATexturePass2D(edgesTex), weights.rg, coords.xyzy, d); + + #if !defined(SMAA_DISABLE_DIAG_DETECTION) + } + else + { + e.r = 0.0; // Skip vertical processing. + } + #endif + } + + SMAA_BRANCH + if (e.r > 0.0) + { // Edge at west + float2 d; + + // Find the distance to the top: + float3 coords; + coords.y = SMAASearchYUp(SMAATexturePass2D(edgesTex), SMAATexturePass2D(searchTex), offset[1].xy, offset[2].z); + coords.x = offset[0].x; // offset[1].x = texcoord.x - 0.25 * SMAA_RT_METRICS.x; + d.x = coords.y; + + // Fetch the top crossing edges: + float e1 = SMAASampleLevelZero(edgesTex, coords.xy).g; + + // Find the distance to the bottom: + coords.z = SMAASearchYDown(SMAATexturePass2D(edgesTex), SMAATexturePass2D(searchTex), offset[1].zw, offset[2].w); + d.y = coords.z; + + // We want the distances to be in pixel units: + d = abs(round(mad(SMAA_RT_METRICS.ww, d, -pixcoord.yy))); + + // SMAAArea below needs a sqrt, as the areas texture is compressed + // quadratically: + float2 sqrt_d = sqrt(d); + + // Fetch the bottom crossing edges: + float e2 = SMAASampleLevelZeroOffset(edgesTex, coords.xz, int2(0, 1)).g; + + // Get the area for this direction: + weights.ba = SMAAArea(SMAATexturePass2D(areaTex), sqrt_d, e1, e2, subsampleIndices.x); + + // Fix corners: + coords.x = texcoord.x; + SMAADetectVerticalCornerPattern(SMAATexturePass2D(edgesTex), weights.ba, coords.xyxz, d); + } + + return weights; +} + +//----------------------------------------------------------------------------- +// Neighborhood Blending Pixel Shader (Third Pass) + +float4 SMAANeighborhoodBlendingPS(float2 texcoord, + float4 offset, + SMAATexture2D(colorTex), + SMAATexture2D(blendTex) + #if SMAA_REPROJECTION + , + SMAATexture2D(velocityTex) + #endif +) +{ + // Fetch the blending weights for current pixel: + float4 a; + a.x = SMAASample(blendTex, offset.xy).a; // Right + a.y = SMAASample(blendTex, offset.zw).g; // Top + a.wz = SMAASample(blendTex, texcoord).xz; // Bottom / Left + + // Is there any blending weight with a value greater than 0.0? + SMAA_BRANCH + if (dot(a, float4(1.0, 1.0, 1.0, 1.0)) < 1e-5) + { + float4 color = SMAASampleLevelZero(colorTex, texcoord); + + #if SMAA_REPROJECTION + float2 velocity = SMAA_DECODE_VELOCITY(SMAASampleLevelZero(velocityTex, texcoord)); + + // Pack velocity into the alpha channel: + color.a = sqrt(5.0 * length(velocity)); + #endif + + return color; + } + else + { + bool h = max(a.x, a.z) > max(a.y, a.w); // max(horizontal) > max(vertical) + + // Calculate the blending offsets: + float4 blendingOffset = float4(0.0, a.y, 0.0, a.w); + float2 blendingWeight = a.yw; + SMAAMovc(bool4(h, h, h, h), blendingOffset, float4(a.x, 0.0, a.z, 0.0)); + SMAAMovc(bool2(h, h), blendingWeight, a.xz); + blendingWeight /= dot(blendingWeight, float2(1.0, 1.0)); + + // Calculate the texture coordinates: + float4 blendingCoord = mad(blendingOffset, float4(SMAA_RT_METRICS.xy, -SMAA_RT_METRICS.xy), texcoord.xyxy); + + // We exploit bilinear filtering to mix current pixel with the chosen + // neighbor: + float4 color = blendingWeight.x * SMAASampleLevelZero(colorTex, blendingCoord.xy); + color += blendingWeight.y * SMAASampleLevelZero(colorTex, blendingCoord.zw); + + #if SMAA_REPROJECTION + // Antialias velocity for proper reprojection in a later stage: + float2 velocity = blendingWeight.x * SMAA_DECODE_VELOCITY(SMAASampleLevelZero(velocityTex, blendingCoord.xy)); + velocity += blendingWeight.y * SMAA_DECODE_VELOCITY(SMAASampleLevelZero(velocityTex, blendingCoord.zw)); + + // Pack velocity into the alpha channel: + color.a = sqrt(5.0 * length(velocity)); + #endif + + return color; + } +} + +//----------------------------------------------------------------------------- +// Temporal Resolve Pixel Shader (Optional Pass) + +float4 SMAAResolvePS(float2 texcoord, + SMAATexture2D(currentColorTex), + SMAATexture2D(previousColorTex) + #if SMAA_REPROJECTION + , + SMAATexture2D(velocityTex) + #endif +) +{ + #if SMAA_REPROJECTION + // Velocity is assumed to be calculated for motion blur, so we need to + // inverse it for reprojection: + float2 velocity = -SMAA_DECODE_VELOCITY(SMAASamplePoint(velocityTex, texcoord).rg); + + // Fetch current pixel: + float4 current = SMAASamplePoint(currentColorTex, texcoord); + + // Reproject current coordinates and fetch previous pixel: + float4 previous = SMAASamplePoint(previousColorTex, texcoord + velocity); + + // Attenuate the previous pixel if the velocity is different: + float delta = abs(current.a * current.a - previous.a * previous.a) / 5.0; + float weight = 0.5 * saturate(1.0 - sqrt(delta) * SMAA_REPROJECTION_WEIGHT_SCALE); + + // Blend the pixels according to the calculated weight: + return lerp(current, previous, weight); + #else + // Just blend the pixels: + float4 current = SMAASamplePoint(currentColorTex, texcoord); + float4 previous = SMAASamplePoint(previousColorTex, texcoord); + return lerp(current, previous, 0.5); + #endif +} + +//----------------------------------------------------------------------------- +// Separate Multisamples Pixel Shader (Optional Pass) + + #ifdef SMAALoad +void SMAASeparatePS(float4 position, + float2 texcoord, + out float4 target0, + out float4 target1, + SMAATexture2DMS2(colorTexMS)) +{ + int2 pos = int2(position.xy); + target0 = SMAALoad(colorTexMS, pos, 0); + target1 = SMAALoad(colorTexMS, pos, 1); +} + #endif + +//----------------------------------------------------------------------------- +#endif // SMAA_INCLUDE_PS diff --git a/gamedata/shaders/r2/smaa_bweight_calc.ps.hlsl b/gamedata/shaders/r2/smaa_bweight_calc.ps.hlsl new file mode 100644 index 0000000..dee2ff8 --- /dev/null +++ b/gamedata/shaders/r2/smaa_bweight_calc.ps.hlsl @@ -0,0 +1,28 @@ +#include "common.hlsli" + +#define SMAA_HLSL_3 +uniform float4 screen_res; +#define SMAA_RT_METRICS screen_res.zwxy + +#define SMAA_PRESET_ULTRA + +#include "smaa.hlsli" + +SMAATexture2D(s_edgetex); +SMAATexture2D(s_areatex); +SMAATexture2D(s_searchtex); + +// Struct +struct p_smaa +{ + float2 tc0 : TEXCOORD0; // Texture coordinates (for sampling maps) +}; + +float4 main(p_smaa I) : COLOR +{ + float2 pixcoord; + float4 offset[3]; + SMAABlendingWeightCalculationVS(I.tc0, pixcoord, offset); + + return SMAABlendingWeightCalculationPS(I.tc0, pixcoord, offset, s_edgetex, s_areatex, s_searchtex, 0.0f); +}; diff --git a/gamedata/shaders/r2/smaa_edge_detect.ps.hlsl b/gamedata/shaders/r2/smaa_edge_detect.ps.hlsl new file mode 100644 index 0000000..6fa78de --- /dev/null +++ b/gamedata/shaders/r2/smaa_edge_detect.ps.hlsl @@ -0,0 +1,29 @@ +#include "common.hlsli" + +#define SMAA_HLSL_3 + +uniform float4 screen_res; +#define SMAA_RT_METRICS screen_res.zwxy + +#define SMAA_PRESET_ULTRA +#define EDGE_DETECT_COLOR + +#include "smaa.hlsli" + +// Struct +struct p_smaa +{ + float2 tc0 : TEXCOORD0; // Texture coordinates (for sampling maps) +}; + +float4 main(p_smaa I) : COLOR +{ + float4 offset[3]; + SMAAEdgeDetectionVS(I.tc0, offset); + +#if defined(EDGE_DETECT_COLOR) + return float4(SMAAColorEdgeDetectionPS(I.tc0, offset, s_image), 0.0f, 0.0f); +#else + return float4(SMAALumaEdgeDetectionPS(I.tc0, offset, s_image), 0.0f, 0.0f); +#endif +} diff --git a/gamedata/shaders/r2/smaa_neighbour_blend.ps.hlsl b/gamedata/shaders/r2/smaa_neighbour_blend.ps.hlsl new file mode 100644 index 0000000..d59f45a --- /dev/null +++ b/gamedata/shaders/r2/smaa_neighbour_blend.ps.hlsl @@ -0,0 +1,22 @@ +#include "common.hlsli" + +#define SMAA_HLSL_3 +uniform float4 screen_res; +#define SMAA_RT_METRICS screen_res.zwxy +#define SMAA_PRESET_ULTRA + +#include "smaa.hlsli" + +SMAATexture2D(s_blendtex); + +struct p_smaa +{ + float2 tc0 : TEXCOORD0; // Texture coordinates (for sampling maps) +}; + +float4 main(p_smaa I) : COLOR +{ + float4 offset; + SMAANeighborhoodBlendingVS(I.tc0, offset); + return SMAANeighborhoodBlendingPS(I.tc0, offset, s_image, s_blendtex); +} diff --git a/gamedata/shaders/r2/ssao.ps.hlsl b/gamedata/shaders/r2/ssao.ps.hlsl new file mode 100644 index 0000000..086904e --- /dev/null +++ b/gamedata/shaders/r2/ssao.ps.hlsl @@ -0,0 +1,107 @@ +#ifndef SSAO_1231242112 +#define SSAO_1231242112 +#include "common.hlsli" + +#ifndef SSAO_QUALITY + +float calc_ssao(float3 P, float3 N, float2 tc, float2 tcJ) +{ + return 1.0; +} + +#else // SSAO_QUALITY + +uniform sampler2D jitter0; +// uniform float4 screen_res; +uniform float4 pos_decompression_params; + +#define SSAO_RADIUS 0.8 +#define rcp(x) (1.0f / (x)) + +float3 uv_to_eye(float2 uv, float eye_z) +{ + uv = uv * float2(2.0f, 2.0f) - float2(1.0f, 1.0f); + return float3(uv * pos_decompression_params.xy, 1.0f) * eye_z; +} + +/* + SSAO Нагло украдено у Sir Lancevrot (с его разрешения) +*/ + +float3 GetViewPos(float2 uv) +{ + float3 tap_pos = tex2Dlod(s_position, float4(uv, 0.0f, 0.0f)); + return uv_to_eye(uv, tap_pos.z); +} + +float doPBAO(float2 uv, float3 pos, float3 n, float invRad, float bias, float selfOcc) +{ + float3 p = GetViewPos(uv); + float3 dist = p - pos; + + float len = length(dist); + float3 v = dist * rcp(len); + + float atten = len * invRad; + return max(-selfOcc, dot(n, v) - bias) * rcp(atten * atten + 1.0f); +} + +float calc_ssao(float3 pos, float3 normal, float2 tc0, float2 tcJ) +{ + // define kernel + float n = 0.0f; + const float step = 0.875f; + const float fScale = 0.57735f * 0.025f; + + const float inv2 = 0.5f; + const float inv5_3 = 0.188679245283f; + const float inv8 = 0.125f; + const float inv16 = 0.0625f; + const float selfOcc = 0.0f; // range: 0.0f to 1.0f + const float2 focalLen = rcp(pos_decompression_params.xy); + + const float3 arrKernel[8] = + { + float3( 1.0, 1.0, 1.0) * fScale * (n += step), + float3(-1.0, -1.0, -1.0) * fScale * (n += step), + float3(-1.0, -1.0, 1.0) * fScale * (n += step), + float3(-1.0, 1.0, -1.0) * fScale * (n += step), + float3(-1.0, 1.0, 1.0) * fScale * (n += step), + float3( 1.0, -1.0, -1.0) * fScale * (n += step), + float3( 1.0, -1.0, 1.0) * fScale * (n += step), + float3( 1.0, 1.0, -1.0) * fScale * (n += step), + }; + + float2 tc1 = tc0 * screen_res.xy * 0.015625f; + float3 rotSample = tex2D(jitter0, tc1).xyz; + rotSample = normalize(rotSample - 0.5f); + + pos = uv_to_eye(tc0, pos.z * 0.99f); + + // calculate angle bias + float bias = 0.0; + + // calculate contrast + float contrast = inv16 * rcp(1.0f - saturate(bias)); + + // calculate radius + float radius = SSAO_RADIUS * saturate(pos.z * inv5_3) * (1.0f + pos.z * inv8); + float invRad = rcp(radius); + + float2 radius2D = radius * focalLen * rcp(pos.z); + float ao = 0.0f; + + // calculate ao + [unroll] + for (int i = 0; i < 8; ++i) { + float2 deltaUV = reflect(arrKernel[i], rotSample) * radius2D; + ao += doPBAO(tc0 + deltaUV, pos, normal, invRad, bias, selfOcc); + ao += doPBAO(tc0 + deltaUV * inv2, pos, normal, invRad, bias, selfOcc); + } + + ao = 1.0f - (ao * contrast + selfOcc); + return ao * ao * ao; +} +#endif +#endif + diff --git a/gamedata/shaders/r2/ssao_blur.ps.hlsl b/gamedata/shaders/r2/ssao_blur.ps.hlsl new file mode 100644 index 0000000..bce9ad1 --- /dev/null +++ b/gamedata/shaders/r2/ssao_blur.ps.hlsl @@ -0,0 +1,38 @@ +uniform float4 screen_res; +uniform sampler2D s_occ; + +float ssao_blur_ps(float2 centerTC) +{ + // low weight center sample - will be used on edges + float fSumWeight = 0.025f; + float2 centerData = tex2D(s_occ, centerTC); + + float fOcclusion = centerData.r * fSumWeight; + float centerDepth = centerData.g; + + float2 arrOffsets[4] = + { + float2(1, -1), + float2(-1, -1), + float2(1, 1), + float2(-1, 1) + }; + + for (int i = 0; i < 4; i++) + { + float2 sampleTC = centerTC + screen_res.zw * arrOffsets[i]; + float2 sampleData = tex2D(s_occ, sampleTC); + + float fDepth = sampleData.g; + float fDiff = 8 * abs(fDepth - centerDepth) / min(fDepth, centerDepth); + float fWeight = saturate(1 - fDiff); + + fOcclusion += sampleData.r * fWeight; + + fSumWeight += fWeight; + } + + fOcclusion /= fSumWeight; + + return fOcclusion; +} diff --git a/gamedata/shaders/r2/ssao_calc.ps.hlsl b/gamedata/shaders/r2/ssao_calc.ps.hlsl new file mode 100644 index 0000000..f6d15f7 --- /dev/null +++ b/gamedata/shaders/r2/ssao_calc.ps.hlsl @@ -0,0 +1,24 @@ +#include "common.hlsli" + +uniform float3x4 m_v2w; +uniform sampler2D s_half_depth; + +#include "ssao_blur.ps.hlsl" +#include "ssao.ps.hlsl" + +struct _input +{ + float4 hpos : POSITION; + float4 tc0 : TEXCOORD0; + float2 tcJ : TEXCOORD1; +}; + +float4 main(_input I) : COLOR0 +{ + float4 P = tex2D(s_position, I.tc0); // position.(mtl or sun) + float4 N = tex2D(s_normal, I.tc0); // normal.hemi + + float o = calc_ssao(P, N, I.tc0, I.tcJ); + + return float4(o, P.z, 0.0f, 0.0f); +} diff --git a/gamedata/shaders/r2/stub_default.ps.hlsl b/gamedata/shaders/r2/stub_default.ps.hlsl new file mode 100644 index 0000000..5ddebd8 --- /dev/null +++ b/gamedata/shaders/r2/stub_default.ps.hlsl @@ -0,0 +1,13 @@ +#include "common.hlsli" + +struct p_TL +{ + float2 Tex0 : TEXCOORD0; + float4 Color : COLOR; +}; + +// Pixel +float4 main(p_TL I) : COLOR +{ + return tex2D(s_base, I.Tex0) * I.Color; +} diff --git a/gamedata/shaders/r2/stub_notransform_t_font.vs.hlsl b/gamedata/shaders/r2/stub_notransform_t_font.vs.hlsl new file mode 100644 index 0000000..3b62812 --- /dev/null +++ b/gamedata/shaders/r2/stub_notransform_t_font.vs.hlsl @@ -0,0 +1,27 @@ +#include "common.hlsli" + +uniform float4 screen_res; + +struct v2p_TL +{ + float2 Tex0 : TEXCOORD0; + float4 Color : COLOR; + float4 HPos : POSITION; // Clip-space position (for rasterization) +}; + +v2p_TL main(v_vert I) +{ + v2p_TL O; + + { + // I.P.xy += 0.5f; + O.HPos.x = I.P.x * screen_res.z * 2 - 1; + O.HPos.y = (I.P.y * screen_res.w * 2 - 1) * -1; + O.HPos.zw = I.P.zw; + } + + O.Tex0 = 0; // I.uv + screen_res.zw * 0.5f; + O.Color = I.color.rgba; // swizzle vertex colour + + return O; +} diff --git a/gamedata/shaders/r2/vert.ps.hlsl b/gamedata/shaders/r2/vert.ps.hlsl new file mode 100644 index 0000000..c5dd3e5 --- /dev/null +++ b/gamedata/shaders/r2/vert.ps.hlsl @@ -0,0 +1,18 @@ +#include "common.hlsli" + +struct v2p +{ + float2 tc0 : TEXCOORD0; // base + float4 c0 : COLOR0; // rgb.fog +}; + +// Pixel +// Need PS 2.0 for the fog to be applied +float4 main(v2p I) : COLOR +{ + float4 t_base = tex2D(s_base, I.tc0); + float3 final = t_base * I.c0 * 2.0f; + + // out + return float4(final, t_base.a * I.c0.a * I.c0.a); +} diff --git a/gamedata/shaders/r2/vert.vs.hlsl b/gamedata/shaders/r2/vert.vs.hlsl new file mode 100644 index 0000000..d31f9d9 --- /dev/null +++ b/gamedata/shaders/r2/vert.vs.hlsl @@ -0,0 +1,52 @@ +#include "common.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; + float4 c0 : COLOR0; // c0=all lighting + float fog : FOG; +}; + +/* +struct v_vert +{ + float4 P : POSITION; // (float,float,float,1) + float4 N : NORMAL; // (nx,ny,nz,hemi occlusion) + float4 T : TANGENT; + float4 B : BINORMAL; + float4 color : COLOR0; // (r,g,b,dir-occlusion) + float2 uv : TEXCOORD0; // (u0,v0) +}; +struct v_static { + float4 P : POSITION; // (float,float,float,1) + float4 Nh : NORMAL; // (nx,ny,nz,hemi occlusion) + float4 T : TANGENT; // tangent + float4 B : BINORMAL; // binormal + float2 tc : TEXCOORD0; // (u,v) + float2 lmh : TEXCOORD1; // (lmu,lmv) +#if defined(USE_R2_STATIC_SUN) && !defined(USE_LM_HEMI) + float4 color : COLOR0; // (r,g,b,dir-occlusion) +#endif +}; +*/ + +vf main(v_static v) +{ + vf o; + + float3 N = unpack_normal(v.Nh); + o.hpos = mul(m_VP, v.P); // xform, input in world coords + o.tc0 = unpack_tc_base(v.tc, v.T.w, v.B.w); // copy tc + // o.tc0 = unpack_tc_base (v.tc); // copy tc + + float3 L_rgb = v.color.xyz; // precalculated RGB lighting + float3 L_hemi = v_hemi(N) * v.Nh.w; // hemisphere + float3 L_sun = v_sun(N) * v.color.w; // sun + float3 L_final = L_rgb + L_hemi + L_sun + L_ambient; + + o.fog = saturate(calc_fogging(v.P)); // fog, input in world coords + o.c0 = float4(L_final, o.fog); + + return o; +} diff --git a/gamedata/shaders/r2/vignette.ps.hlsl b/gamedata/shaders/r2/vignette.ps.hlsl new file mode 100644 index 0000000..6306423 --- /dev/null +++ b/gamedata/shaders/r2/vignette.ps.hlsl @@ -0,0 +1,9 @@ +#include "common.hlsli" + +float4 main(p_shadow I) : COLOR +{ + float3 col = tex2D(s_image, I.tc0).xyz; + col *= 1.0f - saturate(distance(I.tc0, float2(0.5f, 0.5f))); + + return float4(col, 1.0f); +} diff --git a/gamedata/shaders/r2/water.ps.hlsl b/gamedata/shaders/r2/water.ps.hlsl new file mode 100644 index 0000000..cc90568 --- /dev/null +++ b/gamedata/shaders/r2/water.ps.hlsl @@ -0,0 +1,95 @@ +#include "common.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tbase : TEXCOORD0; // base + float2 tnorm0 : TEXCOORD1; // nm0 + float2 tnorm1 : TEXCOORD2; // nm1 + float3 M1 : TEXCOORD3; + float3 M2 : TEXCOORD4; + float3 M3 : TEXCOORD5; + float3 v2point : TEXCOORD6; + float4 tctexgen : TEXCOORD7; + float4 c0 : COLOR0; +}; + +uniform sampler2D s_nmap; +uniform samplerCUBE s_env0; +uniform samplerCUBE s_env1; +uniform sampler2D s_leaves; +uniform float4 pos_decompression_params; + +#if defined(USE_SOFT_WATER) && defined(NEED_SOFT_WATER) +float3 water_intensity; +#endif // defined(USE_SOFT_WATER) && defined(NEED_SOFT_WATER) + +float4 main(vf I) : COLOR +{ + float4 base = tex2D(s_base, I.tbase); + float3 n0 = tex2D(s_nmap, I.tnorm0); + float3 n1 = tex2D(s_nmap, I.tnorm1); + float3 Navg = n0 + n1 - 1.0f; + + float3 Nw = mul(float3x3(I.M1, I.M2, I.M3), Navg); + Nw = normalize(Nw); + float3 v2point = normalize(I.v2point); + float3 vreflect = reflect(v2point, Nw); + + float fresnel = saturate(dot(vreflect, v2point)); + + // true remapping. Slow. + float3 vreflectabs = abs(vreflect); + float vreflectmax = max(vreflectabs.x, max(vreflectabs.y, vreflectabs.z)); + vreflect /= vreflectmax; + vreflect.y = vreflect.y * 2 - 1; + + float3 env0 = texCUBE(s_env0, vreflect); + float3 env1 = texCUBE(s_env1, vreflect); + float3 env = lerp(env0, env1, L_ambient.w); + env *= env * L_sky_color.xyz; + + float power = pow(fresnel, 9.0f); + float amount = 0.25f + 0.55f * power; + + float3 c_reflection = env * amount; + float3 final = lerp(c_reflection, base.rgb, base.a); + +#ifdef NEED_SOFT_WATER + + float alpha = 0.75f + 0.25f * power; + // Igor: additional depth test + #ifdef USE_SOFT_WATER + float4 _P = tex2Dproj(s_position, I.tctexgen); + + float2 PosTc = I.tctexgen.xy / I.tctexgen.w; + float3 waterPos = float3((PosTc * 2 - 1) * pos_decompression_params.xy, 1) * I.tctexgen.z; + float waterDepth = length(waterPos - _P) * 0.75f; + + // water fog + float3 Fc = float3(0.1f, 0.1f, 0.1f) * water_intensity.r; + final = lerp(Fc, final, alpha); + + alpha = min(alpha, saturate(waterDepth)); + alpha = max(1.0f - exp(-4.0f * waterDepth), alpha); + + // Leaves + float4 leaves = tex2D(s_leaves, I.tbase); + leaves.rgb *= water_intensity.r; + float calc_cos = -dot(float3(I.M1.z, I.M2.z, I.M3.z), normalize(v2point)); + float calc_depth = saturate(waterDepth * calc_cos); + float fLeavesFactor = smoothstep(0.025f, 0.05f, calc_depth); + fLeavesFactor *= smoothstep(0.1f, 0.075f, calc_depth); + final = lerp(final, leaves, leaves.a * fLeavesFactor); + alpha = lerp(alpha, leaves.a, leaves.a * fLeavesFactor); + + #endif // USE_SOFT_WATER + final *= I.c0; + + return lerp(float4(final, alpha), fog_color, 1.0f - calc_fogging(I.v2point + eye_position)); + +#else // NEED_SOFT_WATER + return lerp(float4(final, 1.0f), fog_color, 1.0f - calc_fogging(I.v2point + eye_position)); +#endif // NEED_SOFT_WATER +} + diff --git a/gamedata/shaders/r2/water.vs.hlsl b/gamedata/shaders/r2/water.vs.hlsl new file mode 100644 index 0000000..a54ffc7 --- /dev/null +++ b/gamedata/shaders/r2/water.vs.hlsl @@ -0,0 +1,88 @@ +#include "common.hlsli" +#include "shared\waterconfig.hlsli" +#include "shared\watermove.hlsli" + +struct v_vert +{ + float4 P : POSITION; // (float,float,float,1) + float4 N : NORMAL; // (nx,ny,nz,hemi occlusion) + float4 T : TANGENT; + float4 B : BINORMAL; + float4 color : COLOR0; // (r,g,b,dir-occlusion) + float2 uv : TEXCOORD0; // (u0,v0) +}; + +struct vf +{ + float4 hpos : POSITION; + float2 tbase : TEXCOORD0; // base + float2 tnorm0 : TEXCOORD1; // nm0 + float2 tnorm1 : TEXCOORD2; // nm1 + float3 M1 : TEXCOORD3; + float3 M2 : TEXCOORD4; + float3 M3 : TEXCOORD5; + float3 v2point : TEXCOORD6; +#ifdef USE_SOFT_WATER + #ifdef NEED_SOFT_WATER + float4 tctexgen : TEXCOORD7; + #endif // USE_SOFT_WATER +#endif // NEED_SOFT_WATER + float4 c0 : COLOR0; +}; + +vf main(v_vert v) +{ + vf o; + + float4 P = v.P; // world + float3 NN = unpack_normal(v.N); + P = watermove(P); + + o.v2point = P - eye_position; + o.tbase = unpack_tc_base(v.uv, v.T.w, v.B.w); // copy tc + o.tnorm0 = watermove_tc(o.tbase * W_DISTORT_BASE_TILE_0, P.xz, W_DISTORT_AMP_0); + o.tnorm1 = watermove_tc(o.tbase * W_DISTORT_BASE_TILE_1, P.xz, W_DISTORT_AMP_1); + + // Calculate the 3x3 transform from tangent space to eye-space + // TangentToEyeSpace = object2eye * tangent2object + // = object2eye * transpose(object2tangent) (since the inverse of a rotation is its transpose) + float3 N = unpack_bx2(v.N); // just scale (assume normal in the -.5f, .5f) + float3 T = unpack_bx2(v.T); // + float3 B = unpack_bx2(v.B); // + float3x3 xform = mul((float3x3)m_W, float3x3( + T.x, B.x, N.x, + T.y, B.y, N.y, + T.z, B.z, N.z)); + // The pixel shader operates on the bump-map in [0..1] range + // Remap this range in the matrix, anyway we are pixel-shader limited :) + // ...... [ 2 0 0 0] + // ...... [ 0 2 0 0] + // ...... [ 0 0 2 0] + // ...... [-1 -1 -1 1] + // issue: strange, but it's slower :( + // issue: interpolators? dp4? VS limited? black magic? + + // Feed this transform to pixel shader + o.M1 = xform[0]; + o.M2 = xform[1]; + o.M3 = xform[2]; + + float3 L_rgb = v.color.xyz; // precalculated RGB lighting + float3 L_hemi = v_hemi(N) * v.N.w; // hemisphere + float3 L_sun = v_sun(N) * v.color.w; // sun + float3 L_final = L_rgb + L_hemi + L_sun + L_ambient; + // L_final = v.N.w + L_ambient; + + o.hpos = mul(m_VP, P); // xform, input in world coords + o.c0 = float4(L_final, 1); + +// Igor: for additional depth dest +#ifdef USE_SOFT_WATER + #ifdef NEED_SOFT_WATER + o.tctexgen = mul(m_texgen, P); + float3 Pe = mul(m_V, P); + o.tctexgen.z = Pe.z; + #endif // USE_SOFT_WATER +#endif // NEED_SOFT_WATER + return o; +} diff --git a/gamedata/shaders/r2/water_soft.ps.hlsl b/gamedata/shaders/r2/water_soft.ps.hlsl new file mode 100644 index 0000000..bf05b2d --- /dev/null +++ b/gamedata/shaders/r2/water_soft.ps.hlsl @@ -0,0 +1,2 @@ +#define NEED_SOFT_WATER +#include "water.ps.hlsl" diff --git a/gamedata/shaders/r2/water_soft.vs.hlsl b/gamedata/shaders/r2/water_soft.vs.hlsl new file mode 100644 index 0000000..fcaa7b4 --- /dev/null +++ b/gamedata/shaders/r2/water_soft.vs.hlsl @@ -0,0 +1,2 @@ +#define NEED_SOFT_WATER +#include "water.vs.hlsl" diff --git a/gamedata/shaders/r2/waterd.ps.hlsl b/gamedata/shaders/r2/waterd.ps.hlsl new file mode 100644 index 0000000..8fe3234 --- /dev/null +++ b/gamedata/shaders/r2/waterd.ps.hlsl @@ -0,0 +1,50 @@ +#include "common.hlsli" +#include "shared\waterconfig.hlsli" + +struct v2p +{ + float2 tbase : TEXCOORD0; // base + float2 tdist0 : TEXCOORD1; // d0 + float2 tdist1 : TEXCOORD2; // d1 + float4 tctexgen : TEXCOORD3; +}; + +uniform sampler2D s_distort; +#define POWER .5h + +// Pixel +float4 main(v2p I) : COLOR +{ + float4 t_base = tex2D(s_base, I.tbase); + + float2 t_d0 = tex2D(s_distort, I.tdist0); + float2 t_d1 = tex2D(s_distort, I.tdist1); + float2 distort = (t_d0 + t_d1) * 0.5f; // average + float2 zero = float2(0.5f, 0.5f); + float2 faded = lerp(distort, zero, t_base.a); + + // Igor: additional depth test +#ifdef USE_SOFT_WATER + #ifdef NEED_SOFT_WATER + float alphaDistort; + float4 _P = tex2Dproj(s_position, I.tctexgen); + float waterDepth = _P.z - I.tctexgen.z; + alphaDistort = saturate(5 * waterDepth); + faded = lerp(zero, faded, alphaDistort); + #endif // NEED_SOFT_WATER +#endif // USE_SOFT_WATER & NEED_SOFT_WATER + + float2 faded_bx2 = (faded * 2.0f - 1.0f) * W_DISTORT_POWER; + float faded_dot = dot(float3(faded_bx2, 0.0f), 0.75f); // 0.75 + float alpha = 0.5f; // abs (faded_dot); + + faded = faded * POWER - .5 * POWER + 0.5; + + // out + // Igor: need for alpha water +#ifdef NEED_SOFT_WATER + return float4(faded, 0.0f, alpha); +#else // NEED_SOFT_WATER + return float4(faded, 0.08f, alpha); +#endif // NEED_SOFT_WATER +} diff --git a/gamedata/shaders/r2/waterd.vs.hlsl b/gamedata/shaders/r2/waterd.vs.hlsl new file mode 100644 index 0000000..a5882c9 --- /dev/null +++ b/gamedata/shaders/r2/waterd.vs.hlsl @@ -0,0 +1,51 @@ +#include "common.hlsli" +#include "shared\waterconfig.hlsli" +#include "shared\watermove.hlsli" + +struct v_vert +{ + float4 P : POSITION; // (float,float,float,1) + float4 N : NORMAL; // (nx,ny,nz,hemi occlusion) + float4 T : TANGENT; + float4 B : BINORMAL; + float4 color : COLOR0; // (r,g,b,dir-occlusion) + float2 uv : TEXCOORD0; // (u0,v0) +}; + +struct vf +{ + float4 hpos : POSITION; + float2 tbase : TEXCOORD0; + float2 tdist0 : TEXCOORD1; + float2 tdist1 : TEXCOORD2; +#ifdef USE_SOFT_WATER + #ifdef NEED_SOFT_WATER + float4 tctexgen : TEXCOORD3; + #endif // USE_SOFT_WATER +#endif // NEED_SOFT_WATER +}; + +vf main(v_vert v) +{ + vf o; + + float4 P = v.P; + float3 N = unpack_normal(v.N); + P = watermove(P); + + o.tbase = unpack_tc_base(v.uv, v.T.w, v.B.w); // copy tc + o.tdist0 = watermove_tc(o.tbase * W_DISTORT_BASE_TILE_0, P.xz, W_DISTORT_AMP_0); + o.tdist1 = watermove_tc(o.tbase * W_DISTORT_BASE_TILE_1, P.xz, W_DISTORT_AMP_1); + o.hpos = mul(m_VP, P); // xform, input in world coords + +// Igor: for additional depth dest +#ifdef USE_SOFT_WATER + #ifdef NEED_SOFT_WATER + o.tctexgen = mul(m_texgen, P); + float3 Pe = mul(m_V, P); + o.tctexgen.z = Pe.z; + #endif // USE_SOFT_WATER +#endif // NEED_SOFT_WATER + + return o; +} diff --git a/gamedata/shaders/r2/waterd_soft.ps.hlsl b/gamedata/shaders/r2/waterd_soft.ps.hlsl new file mode 100644 index 0000000..940d4f6 --- /dev/null +++ b/gamedata/shaders/r2/waterd_soft.ps.hlsl @@ -0,0 +1,2 @@ +#define NEED_SOFT_WATER +#include "waterd.ps.hlsl" diff --git a/gamedata/shaders/r2/waterd_soft.vs.hlsl b/gamedata/shaders/r2/waterd_soft.vs.hlsl new file mode 100644 index 0000000..5dfae57 --- /dev/null +++ b/gamedata/shaders/r2/waterd_soft.vs.hlsl @@ -0,0 +1,2 @@ +#define NEED_SOFT_WATER +#include "waterd.vs.hlsl" diff --git a/gamedata/shaders/r2/wmark.vs.hlsl b/gamedata/shaders/r2/wmark.vs.hlsl new file mode 100644 index 0000000..94baf6b --- /dev/null +++ b/gamedata/shaders/r2/wmark.vs.hlsl @@ -0,0 +1,30 @@ +#include "common.hlsli" +#include "shared\wmark.hlsli" + +struct vf +{ + float4 hpos : POSITION; + float2 tc0 : TEXCOORD0; + float3 c0 : COLOR0; // c0=all lighting + float fog : FOG; +}; + +vf main(v_static v) +{ + vf o; + + float3 N = unpack_normal(v.Nh); + float4 P = wmark_shift(v.P, N); + o.hpos = mul(m_VP, P); // xform, input in world coords + o.tc0 = unpack_tc_base(v.tc, v.T.w, v.B.w); // copy tc + + // float3 L_rgb = v.color.xyz; // precalculated RGB lighting + // float3 L_hemi = v_hemi(N)*v.norm.w; // hemisphere + // float3 L_sun = v_sun(N)*v.color.w; // sun + // float3 L_final = L_rgb + L_hemi + L_sun + L_ambient ; + + o.c0 = 0; // L_final; + o.fog = saturate(calc_fogging(v.P)); // fog, input in world coords + + return o; +} diff --git a/gamedata/shaders/r2/yuv2rgb.ps.hlsl b/gamedata/shaders/r2/yuv2rgb.ps.hlsl new file mode 100644 index 0000000..6b31cb4 --- /dev/null +++ b/gamedata/shaders/r2/yuv2rgb.ps.hlsl @@ -0,0 +1,25 @@ +#include "common.hlsli" + +float4 main(float2 uv : TEXCOORD0) : COLOR +{ + float3 YUV = tex2D(s_base, uv); + + float Y = YUV.x; + float U = YUV.y; + float V = YUV.z; + + /* + float _T = 1.16406f*Y; + float R1 = _T + 1.59765f*V - 0.86961f; + float G1 = _T - 0.390625f*U - 0.8125f*V + 0.53076f; + float B1 = _T + 2.01562f*U - 1.0786f; + */ + + float c = 1.16406f; + float3 _Y = float3(c, c, c) * Y; + float3 _U = float3(0.0f, -0.390625f, +2.01562f) * U; + float3 _V = float3(+1.59765f, -0.8125f, 0.0f) * V; + float3 _S = float3(-0.86961f, +0.53076f, -1.0786f); + + return float4(_Y + _U + _V + _S, 1); +} diff --git a/gamedata/shaders/shared/cloudconfig.hlsli b/gamedata/shaders/shared/cloudconfig.hlsli new file mode 100644 index 0000000..7f2e393 --- /dev/null +++ b/gamedata/shaders/shared/cloudconfig.hlsli @@ -0,0 +1,11 @@ +#ifndef _CLOUDCONFIG_H +#define _CLOUDCONFIG_H + +// note: timers has resolution (sec), where x=1, y=10, z=1/10, +#define CLOUD_TILE0 (0.7f) +#define CLOUD_SPEED0 (2 * 0.05) //(0.033f) +#define CLOUD_TILE1 (2.8) //(2.5f) +#define CLOUD_SPEED1 (2 * 0.025) //(0.033f) +#define CLOUD_FADE (0.5) + +#endif diff --git a/gamedata/shaders/shared/common.hlsli b/gamedata/shaders/shared/common.hlsli new file mode 100644 index 0000000..e74c947 --- /dev/null +++ b/gamedata/shaders/shared/common.hlsli @@ -0,0 +1,58 @@ +#ifndef SHARED_COMMON_H +#define SHARED_COMMON_H + +uniform float3x4 m_W; +uniform float3x4 m_V; +uniform float4x4 m_P; +uniform float3x4 m_WV; +uniform float4x4 m_VP; +uniform float4x4 m_WVP; +uniform float4 timers; +uniform float4 fog_plane; +uniform float4 fog_params; // x=near*(1/(far-near)), ?,?, w = -1/(far-near) +uniform float4 fog_color; +uniform float3 L_sun_color; +uniform float3 L_sun_dir_w; +uniform float3 L_sun_dir_e; +uniform float4 L_hemi_color; +uniform float4 L_ambient; // L_ambient.w = skynbox-lerp-factor +uniform float3 eye_position; +uniform float3 eye_direction; +uniform float3 eye_normal; +uniform float4 dt_params; + +float3 unpack_normal(float3 v) +{ + return 2.0f * v - 1.0f; +} +float3 unpack_bx2(float3 v) +{ + return 2.0f * v - 1.0f; +} +float3 unpack_bx4(float3 v) +{ + return 4.0f * v - 2.0f; +} + +float2 unpack_tc_base(float2 tc, float du, float dv) +{ + return (tc.xy + float2(du, dv)) * (32.f / 32768.f); +} + +float2 unpack_tc_lmap(float2 tc) +{ + return tc * (1.f / 32768.f); +} // [-1 .. +1 ] + +float calc_cyclic(float x) +{ + float f = 1.4142f * sin(x * 3.14159f); + return f * f - 1.0f; +} + +float2 calc_xz_wave(float2 dir2D, float frac) +{ + return dir2D * frac; +} + +#endif diff --git a/gamedata/shaders/shared/waterconfig.hlsli b/gamedata/shaders/shared/waterconfig.hlsli new file mode 100644 index 0000000..574ff65 --- /dev/null +++ b/gamedata/shaders/shared/waterconfig.hlsli @@ -0,0 +1,55 @@ +#ifndef _WATERCONFIG_H + #define _WATERCONFIG_H + +// настройки для: (1) +// waterdistortion +// waterdistortion2 + + #define W_POSITION_SHIFT_HEIGHT (1.f / 60.f) //(1.f/100.f) //amplitude /50 - small, /10 - large + #define W_POSITION_SHIFT_SPEED (25.f) //(25.0f) + #define W_DISTORT_BASE_TILE_0 (1.0f) //(1.0f) + #define W_DISTORT_BASE_TILE_1 (1.1f) //(1.1f) + #define W_DISTORT_AMP_0 (+0.15f) //(+0.15f) + #define W_DISTORT_AMP_1 (+0.55f) //(-0.30f) + #define W_DISTORT_POWER (1.0f) //(1.0f) + +#endif + +/* +//////////////////////////////////////////////////////////////////////////////// +-- waters clear +//////////////////////////////////////////////////////////////////////////////// +настройки для: + waterdistortion + waterdistortion2 +//////////////////////////////////////////////////////////////////////////////// +#define W_POSITION_SHIFT_HEIGHT (1.f/50.f) //(1.f/100.f) //amplitude /50 - small, /10 - large +#define W_POSITION_SHIFT_SPEED (15.f) //(25.0f) +#define W_DISTORT_BASE_TILE_0 (1.3f) //(1.6f) +#define W_DISTORT_BASE_TILE_1 (2.3f) //(1.1f) +#define W_DISTORT_AMP_0 (+0.35f) //(+0.15f) +#define W_DISTORT_AMP_1 (-1.75f) //(-0.30f) +#define W_DISTORT_POWER (1.0f) //(1.0f) +//////////////////////////////////////////////////////////////////////////////// +настройки для: + waterdistortion + waterdistortion +//////////////////////////////////////////////////////////////////////////////// +#define W_POSITION_SHIFT_HEIGHT (1.f/80.f) //(1.f/100.f) //amplitude /50 - small, /10 - large +#define W_POSITION_SHIFT_SPEED (20.f) //(25.0f) +#define W_DISTORT_BASE_TILE_0 (1.6f) //(1.6f) +#define W_DISTORT_BASE_TILE_1 (1.1f) //(1.1f) +#define W_DISTORT_AMP_0 (+0.15f) //(+0.15f) +#define W_DISTORT_AMP_1 (-0.30f) //(-0.30f) +#define W_DISTORT_POWER (6.0f) //(6.0f) +//////////////////////////////////////////////////////////////////////////////// +-- waters mulyaka +//////////////////////////////////////////////////////////////////////////////// +#define W_POSITION_SHIFT_HEIGHT (1.f/50.f) // amplitude /50 - small, /10 - large +#define W_POSITION_SHIFT_SPEED (25.f) +#define W_DISTORT_BASE_TILE (0.1f) //(1.0f) +#define W_DISTORT_AMP_0 (+0.58f) //(-0.08f) +#define W_DISTORT_AMP_1 (+0.38f) //(+0.18f) +#define W_DISTORT_POWER (3.0f) //(2.0f) +//////////////////////////////////////////////////////////////////////////////// +*/ diff --git a/gamedata/shaders/shared/watermove.hlsli b/gamedata/shaders/shared/watermove.hlsli new file mode 100644 index 0000000..dfc5045 --- /dev/null +++ b/gamedata/shaders/shared/watermove.hlsli @@ -0,0 +1,30 @@ +#ifndef _WATERMOVE_H +#define _WATERMOVE_H + +float4 watermove(float4 P) +{ + float3 wave1 = float3(0.11f, 0.13f, 0.07f) * W_POSITION_SHIFT_SPEED; + float dh = sin(timers.x + dot((float3)P, wave1)); + P.y += dh * W_POSITION_SHIFT_HEIGHT; + return P; +} + +float2 watermove_tc(float2 base, float2 P, float amp) +{ + float2 wave1 = float2(0.2111f, 0.2333f) * amp; + float angle = timers.z + dot(P, wave1); + float du = sin(angle); + float dv = cos(angle); + return (base + amp * float2(du, dv)); +} + +float3 waterrefl(out float amount, float3 P, float3 N) +{ + float3 v2point = normalize(P - eye_position); + float3 vreflect = reflect(v2point, N); + float fresnel = (.5f + .5f * dot(vreflect, v2point)); + amount = 1 - fresnel * fresnel; // 0=full env, 1=no env + return vreflect; +} + +#endif diff --git a/gamedata/shaders/shared/wmark.hlsli b/gamedata/shaders/shared/wmark.hlsli new file mode 100644 index 0000000..1075380 --- /dev/null +++ b/gamedata/shaders/shared/wmark.hlsli @@ -0,0 +1,24 @@ +#ifndef WMARK_H +#define WMARK_H + +#include "common.hlsli" + +#define NORMAL_SHIFT 0.007f +#define MIN_SHIFT 0.003f +#define MAX_SHIFT 0.011f +#define RANGE 100.f + +float4 wmark_shift(float3 pos, float3 norm) +{ + float3 P = pos; + float3 N = norm; + float3 sd = eye_position - P; + float d = length(sd); + float w = min(d / RANGE, 1.f); + float s = lerp(MIN_SHIFT, MAX_SHIFT, d); + P += N.xyz * NORMAL_SHIFT; + P -= normalize(eye_direction + normalize(P - eye_position)) * s; + return float4(P, 1.f); +} + +#endif diff --git a/gamedata/shaders/start_rename.ps1 b/gamedata/shaders/start_rename.ps1 new file mode 100644 index 0000000..72bfb33 --- /dev/null +++ b/gamedata/shaders/start_rename.ps1 @@ -0,0 +1,30 @@ +# Define the directories +$directories = @("r1", "r2", "r3", "editor", "shared") + +# Define the extension mappings +$extensionMappings = @{ + ".h" = ".hlsli" + ".s" = ".lua" + ".s_" = ".lua_" + ".ps" = ".ps.hlsl" + ".vs" = ".vs.hlsl" + ".ds" = ".ds.hlsl" + ".hs" = ".hs.hlsl" + ".gs" = ".gs.hlsl" + ".cs" = ".cs.hlsl" +} + +# Loop through each directory +foreach ($dir in $directories) { + # Loop through each extension mapping + foreach ($ext in $extensionMappings.Keys) { + # Get all files with the current extension recursively in the current directory + $files = Get-ChildItem -Path $dir -Filter "*$ext" -Recurse + + # Loop through each file and rename it + foreach ($file in $files) { + $newName = [System.IO.Path]::ChangeExtension($file.FullName, $extensionMappings[$ext]) + Rename-Item -Path $file.FullName -NewName $newName + } + } +} diff --git a/gamedata/sounds/device/torch_click.ogg b/gamedata/sounds/device/torch_click.ogg new file mode 100644 index 0000000..9d7db8f --- /dev/null +++ b/gamedata/sounds/device/torch_click.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f727558026d47c927b64111bf22c9c5fe82508a4dd5db8de50f715f6573acff5 +size 10705 diff --git a/gamedata/sounds/device/torch_click_off.ogg b/gamedata/sounds/device/torch_click_off.ogg new file mode 100644 index 0000000..bd4c2ff --- /dev/null +++ b/gamedata/sounds/device/torch_click_off.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ffabbb54e5facc5a60a898867e305c413542338b190e775441d0f984626737d1 +size 11383 diff --git a/gamedata/textures/ed/bar/add.dds b/gamedata/textures/ed/bar/add.dds new file mode 100644 index 0000000..90461fa --- /dev/null +++ b/gamedata/textures/ed/bar/add.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72cf3bfde84f42d45cdbd7cd4ae2132b628f7764250204d0f309c7fd08a5f9bd +size 384 diff --git a/gamedata/textures/ed/bar/aimap.dds b/gamedata/textures/ed/bar/aimap.dds new file mode 100644 index 0000000..d055fa0 --- /dev/null +++ b/gamedata/textures/ed/bar/aimap.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c6ef15632081a97d7824d87d6e1a449c08c25fd2afbbb8f17df6a2095be3f64 +size 1152 diff --git a/gamedata/textures/ed/bar/angle.dds b/gamedata/textures/ed/bar/angle.dds new file mode 100644 index 0000000..82ecc06 --- /dev/null +++ b/gamedata/textures/ed/bar/angle.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ef676dc4adc85746491316c5cbf9e2ef96d4944a6f74aa66fb5373acbbee9430 +size 384 diff --git a/gamedata/textures/ed/bar/arcball.dds b/gamedata/textures/ed/bar/arcball.dds new file mode 100644 index 0000000..d17c4d4 --- /dev/null +++ b/gamedata/textures/ed/bar/arcball.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b4f505303d42a5ae294e99e49b13e3deb1d0c698c69a8866e3ce4cb52e185198 +size 16512 diff --git a/gamedata/textures/ed/bar/asnap.dds b/gamedata/textures/ed/bar/asnap.dds new file mode 100644 index 0000000..765c54a --- /dev/null +++ b/gamedata/textures/ed/bar/asnap.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6c4c695db16ebdaa7337b6e8be1002814fe584a38fd11d7fcdc5a407924c9b49 +size 11088 diff --git a/gamedata/textures/ed/bar/axismove.dds b/gamedata/textures/ed/bar/axismove.dds new file mode 100644 index 0000000..5be3ab9 --- /dev/null +++ b/gamedata/textures/ed/bar/axismove.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44c70487c28f780f756366034c899c86c3d61cb577ca33603c7c324afaa4c577 +size 65664 diff --git a/gamedata/textures/ed/bar/axisx.dds b/gamedata/textures/ed/bar/axisx.dds new file mode 100644 index 0000000..520acfd --- /dev/null +++ b/gamedata/textures/ed/bar/axisx.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:452cf50c726f14a1be15f015996f7e741b762bb8190406cd14096fc8dd557bfb +size 16512 diff --git a/gamedata/textures/ed/bar/axisy.dds b/gamedata/textures/ed/bar/axisy.dds new file mode 100644 index 0000000..e3560b8 --- /dev/null +++ b/gamedata/textures/ed/bar/axisy.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:353835d62d8c3cfd1d3526927d763d2e2135f352c670ce289bd92e59c9c52bfd +size 16512 diff --git a/gamedata/textures/ed/bar/axisz.dds b/gamedata/textures/ed/bar/axisz.dds new file mode 100644 index 0000000..5fb5d02 --- /dev/null +++ b/gamedata/textures/ed/bar/axisz.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be34f8097ab5e26f175d6eee6441f032c88271a4f9bbfda9e88d7b66fd7628b2 +size 16512 diff --git a/gamedata/textures/ed/bar/axiszx.dds b/gamedata/textures/ed/bar/axiszx.dds new file mode 100644 index 0000000..ac02d55 --- /dev/null +++ b/gamedata/textures/ed/bar/axiszx.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5bf0dc4dfd84b3bbd14770492c3c4fcafd2cf7d20456223e47882c296abe10eb +size 16512 diff --git a/gamedata/textures/ed/bar/build_all.dds b/gamedata/textures/ed/bar/build_all.dds new file mode 100644 index 0000000..db4929a --- /dev/null +++ b/gamedata/textures/ed/bar/build_all.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b16fe59ed4626dc98e882894344aeeed33abc95b668c35a7b3f0a26444fc78bc +size 22000 diff --git a/gamedata/textures/ed/bar/cform.dds b/gamedata/textures/ed/bar/cform.dds new file mode 100644 index 0000000..da2809b --- /dev/null +++ b/gamedata/textures/ed/bar/cform.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a400d453fa8e2b59e6abffb57f1a73eceb8bf8ae507e8ab10b2fcb2aecd99d23 +size 1728 diff --git a/gamedata/textures/ed/bar/cslocal.dds b/gamedata/textures/ed/bar/cslocal.dds new file mode 100644 index 0000000..b11d008 --- /dev/null +++ b/gamedata/textures/ed/bar/cslocal.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d647d7797205da7f9be0794e9663d7d6437c6c25d743c8f38770a42364c2d3c5 +size 11088 diff --git a/gamedata/textures/ed/bar/delete.dds b/gamedata/textures/ed/bar/delete.dds new file mode 100644 index 0000000..5658e2c --- /dev/null +++ b/gamedata/textures/ed/bar/delete.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6698d3c226097c1e05fd31ba5e3e357aa9933c285f1a6aee1f8fe498402379da +size 22000 diff --git a/gamedata/textures/ed/bar/eye.dds b/gamedata/textures/ed/bar/eye.dds new file mode 100644 index 0000000..b12e1b6 --- /dev/null +++ b/gamedata/textures/ed/bar/eye.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d4af5f9cd392c128d0e602b01598999541adb66593d3dec31197244c7a1bb83 +size 5616 diff --git a/gamedata/textures/ed/bar/favorite_off.dds b/gamedata/textures/ed/bar/favorite_off.dds new file mode 100644 index 0000000..d852c8a --- /dev/null +++ b/gamedata/textures/ed/bar/favorite_off.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc14c274deb4da7a6586b841cad81a5d6cfea4954a88cac54d3fd6aa0ca49d0c +size 496 diff --git a/gamedata/textures/ed/bar/favorite_on.dds b/gamedata/textures/ed/bar/favorite_on.dds new file mode 100644 index 0000000..34744d7 --- /dev/null +++ b/gamedata/textures/ed/bar/favorite_on.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0e8c36f8a573fa2d55132158e1ef83656a2784a1d0986b172fc1a26fef47c61 +size 496 diff --git a/gamedata/textures/ed/bar/freefly.dds b/gamedata/textures/ed/bar/freefly.dds new file mode 100644 index 0000000..cbefaf7 --- /dev/null +++ b/gamedata/textures/ed/bar/freefly.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:95938b8416255d3deba9fae6fe6613c24e2f871f3d16ce260474cd81861958c3 +size 16512 diff --git a/gamedata/textures/ed/bar/ggraph.dds b/gamedata/textures/ed/bar/ggraph.dds new file mode 100644 index 0000000..0b10e3a --- /dev/null +++ b/gamedata/textures/ed/bar/ggraph.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a00ecf234795a43b6eb1b39308ea16f43a7d93ba6fa1dd303e40c19bf93cbc49 +size 1152 diff --git a/gamedata/textures/ed/bar/grid.dds b/gamedata/textures/ed/bar/grid.dds new file mode 100644 index 0000000..5eef57a --- /dev/null +++ b/gamedata/textures/ed/bar/grid.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6e4f28c5c329abf03de979fa6696aa499b7a44818ba22c942358e6b9a441ded0 +size 384 diff --git a/gamedata/textures/ed/bar/gsnap.dds b/gamedata/textures/ed/bar/gsnap.dds new file mode 100644 index 0000000..2900408 --- /dev/null +++ b/gamedata/textures/ed/bar/gsnap.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:45224580379e2e8be17f9b6c77b8501d0a2b5c301f8d9d096b714ac279804310 +size 10576 diff --git a/gamedata/textures/ed/bar/menu.dds b/gamedata/textures/ed/bar/menu.dds new file mode 100644 index 0000000..6bb779a --- /dev/null +++ b/gamedata/textures/ed/bar/menu.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7c38a2b3d717b0605217df9888df38e3debd0788f15ef0ed8044a8bd9dd26da2 +size 384 diff --git a/gamedata/textures/ed/bar/move.dds b/gamedata/textures/ed/bar/move.dds new file mode 100644 index 0000000..c39bc61 --- /dev/null +++ b/gamedata/textures/ed/bar/move.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ef09346d1764a0408aab705a1324c8b07edb6182c13954907263701708a74f63 +size 384 diff --git a/gamedata/textures/ed/bar/movetosnap.dds b/gamedata/textures/ed/bar/movetosnap.dds new file mode 100644 index 0000000..c5ac272 --- /dev/null +++ b/gamedata/textures/ed/bar/movetosnap.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:52b28aed71c6189ed8dd7db02ccd0d93c99469c5abd7ea6d65b390ef4ce11fe7 +size 11088 diff --git a/gamedata/textures/ed/bar/msnap.dds b/gamedata/textures/ed/bar/msnap.dds new file mode 100644 index 0000000..d76b500 --- /dev/null +++ b/gamedata/textures/ed/bar/msnap.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f23eee7ae46de90124f14e34bc63c45ec38dad445038d2bc9861e0f84e54f162 +size 11088 diff --git a/gamedata/textures/ed/bar/new.dds b/gamedata/textures/ed/bar/new.dds new file mode 100644 index 0000000..2d8e961 --- /dev/null +++ b/gamedata/textures/ed/bar/new.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9a0239d6072561f1e78bca5c1e9270e450156803bded53f6b54a3fa2c3e96557 +size 768 diff --git a/gamedata/textures/ed/bar/nsnap.dds b/gamedata/textures/ed/bar/nsnap.dds new file mode 100644 index 0000000..54b6d14 --- /dev/null +++ b/gamedata/textures/ed/bar/nsnap.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e6f84872037b9e89c40c726d55c495426513b8c6aac2d9588e543f47e3648f46 +size 11088 diff --git a/gamedata/textures/ed/bar/nuscale.dds b/gamedata/textures/ed/bar/nuscale.dds new file mode 100644 index 0000000..ef9afdc --- /dev/null +++ b/gamedata/textures/ed/bar/nuscale.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e6115c907175096c5251d50032d2636dab874d6852aa8c0e9a5589ddb719b36f +size 8320 diff --git a/gamedata/textures/ed/bar/open.dds b/gamedata/textures/ed/bar/open.dds new file mode 100644 index 0000000..80c3ae5 --- /dev/null +++ b/gamedata/textures/ed/bar/open.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d4a393f19b12b8d16d67c181ce9a7a37a9acce6b407b3f0ad3e006b0b71c6f65 +size 768 diff --git a/gamedata/textures/ed/bar/open_gamedata.dds b/gamedata/textures/ed/bar/open_gamedata.dds new file mode 100644 index 0000000..d1c5c21 --- /dev/null +++ b/gamedata/textures/ed/bar/open_gamedata.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:007bdc420b6f70d2d34251fd2df61171b65e2fa3f74239415cb6e1ebebf9d552 +size 2248 diff --git a/gamedata/textures/ed/bar/osnap.dds b/gamedata/textures/ed/bar/osnap.dds new file mode 100644 index 0000000..0e1b689 --- /dev/null +++ b/gamedata/textures/ed/bar/osnap.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:677992bbde05a492b8a0fc8ac0daf191088cc6e8cce20fc44c602158b53bbbae +size 11088 diff --git a/gamedata/textures/ed/bar/planemove.dds b/gamedata/textures/ed/bar/planemove.dds new file mode 100644 index 0000000..2536d25 --- /dev/null +++ b/gamedata/textures/ed/bar/planemove.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d2f94c4ebabf95a0f580d869127203a421ba250e91bcd1bfa468fb6188a72f97 +size 16512 diff --git a/gamedata/textures/ed/bar/play_clean_game.dds b/gamedata/textures/ed/bar/play_clean_game.dds new file mode 100644 index 0000000..5554ad3 --- /dev/null +++ b/gamedata/textures/ed/bar/play_clean_game.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7b8749cbfdcecef088d61f57170bbbea0ec957adebba619b4eb10ebb0c535fb +size 2248 diff --git a/gamedata/textures/ed/bar/play_in_editor.dds b/gamedata/textures/ed/bar/play_in_editor.dds new file mode 100644 index 0000000..de3a7bb --- /dev/null +++ b/gamedata/textures/ed/bar/play_in_editor.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:db183f40fcade68fdf9ed1dbde8efa70fd985e44797982dcfa768647fa17fb57 +size 2248 diff --git a/gamedata/textures/ed/bar/play_pc.dds b/gamedata/textures/ed/bar/play_pc.dds new file mode 100644 index 0000000..3585cd7 --- /dev/null +++ b/gamedata/textures/ed/bar/play_pc.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c68cd163a4437ee7bc4172e16421d92268409612420bd12dce4bf2fbc756034 +size 2248 diff --git a/gamedata/textures/ed/bar/redo.dds b/gamedata/textures/ed/bar/redo.dds new file mode 100644 index 0000000..7e1316e --- /dev/null +++ b/gamedata/textures/ed/bar/redo.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83b78b00a76ac595fb6ddc00a2ef27b21f07dbf98ac27dab98a6674815bb3449 +size 8320 diff --git a/gamedata/textures/ed/bar/reload_configs.dds b/gamedata/textures/ed/bar/reload_configs.dds new file mode 100644 index 0000000..757a3f1 --- /dev/null +++ b/gamedata/textures/ed/bar/reload_configs.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d8abc4dc63a3533d9daf3dd615a6e97df3af636a40f03aff05cc2af547a773c2 +size 2248 diff --git a/gamedata/textures/ed/bar/rotate.dds b/gamedata/textures/ed/bar/rotate.dds new file mode 100644 index 0000000..fbe458b --- /dev/null +++ b/gamedata/textures/ed/bar/rotate.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b40d8951501a56a90a44e4c6fbea591f4007b3f666964ff16d77382595422bc4 +size 384 diff --git a/gamedata/textures/ed/bar/save.dds b/gamedata/textures/ed/bar/save.dds new file mode 100644 index 0000000..1f0245d --- /dev/null +++ b/gamedata/textures/ed/bar/save.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:54e389d73a419ae2cd12570177f27f22222ec30975022cdba7dde337fb586452 +size 768 diff --git a/gamedata/textures/ed/bar/save_xr.dds b/gamedata/textures/ed/bar/save_xr.dds new file mode 100644 index 0000000..46e04ce --- /dev/null +++ b/gamedata/textures/ed/bar/save_xr.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10fd7574a27e806cde23047cd10c16a0e243f8b734b7687179245e6b8a405c8e +size 1728 diff --git a/gamedata/textures/ed/bar/scale.dds b/gamedata/textures/ed/bar/scale.dds new file mode 100644 index 0000000..c250b2a --- /dev/null +++ b/gamedata/textures/ed/bar/scale.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9e2edc2afd6bed451693a28214e230f34ce413ed2d20e533d134a9b1e796318 +size 384 diff --git a/gamedata/textures/ed/bar/scale_grid.dds b/gamedata/textures/ed/bar/scale_grid.dds new file mode 100644 index 0000000..1bb4608 --- /dev/null +++ b/gamedata/textures/ed/bar/scale_grid.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2a38e0b731a318a363be76fae53d65ec34ffb9cd740f7ed16eebcfb5a0ec93f5 +size 384 diff --git a/gamedata/textures/ed/bar/select.dds b/gamedata/textures/ed/bar/select.dds new file mode 100644 index 0000000..53f1f20 --- /dev/null +++ b/gamedata/textures/ed/bar/select.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:88a89872a3ab547819236069fedc3e3261632b4842238439028e78f14fdee4c7 +size 384 diff --git a/gamedata/textures/ed/bar/source/aimap.png b/gamedata/textures/ed/bar/source/aimap.png new file mode 100644 index 0000000..9a15281 Binary files /dev/null and b/gamedata/textures/ed/bar/source/aimap.png differ diff --git a/gamedata/textures/ed/bar/source/angle.png b/gamedata/textures/ed/bar/source/angle.png new file mode 100644 index 0000000..62a5fbe Binary files /dev/null and b/gamedata/textures/ed/bar/source/angle.png differ diff --git a/gamedata/textures/ed/bar/source/angle.svg b/gamedata/textures/ed/bar/source/angle.svg new file mode 100644 index 0000000..1eb6438 --- /dev/null +++ b/gamedata/textures/ed/bar/source/angle.svg @@ -0,0 +1,4 @@ + + + + diff --git a/gamedata/textures/ed/bar/source/btn_folderopen.bmp b/gamedata/textures/ed/bar/source/btn_folderopen.bmp new file mode 100644 index 0000000..360f506 Binary files /dev/null and b/gamedata/textures/ed/bar/source/btn_folderopen.bmp differ diff --git a/gamedata/textures/ed/bar/source/buildall.png b/gamedata/textures/ed/bar/source/buildall.png new file mode 100644 index 0000000..06fc356 Binary files /dev/null and b/gamedata/textures/ed/bar/source/buildall.png differ diff --git a/gamedata/textures/ed/bar/source/camera.svg b/gamedata/textures/ed/bar/source/camera.svg new file mode 100644 index 0000000..db77cab --- /dev/null +++ b/gamedata/textures/ed/bar/source/camera.svg @@ -0,0 +1,4 @@ + + + + diff --git a/gamedata/textures/ed/bar/source/cform.png b/gamedata/textures/ed/bar/source/cform.png new file mode 100644 index 0000000..d405e1f Binary files /dev/null and b/gamedata/textures/ed/bar/source/cform.png differ diff --git a/gamedata/textures/ed/bar/source/game_graph.png b/gamedata/textures/ed/bar/source/game_graph.png new file mode 100644 index 0000000..e3e6868 Binary files /dev/null and b/gamedata/textures/ed/bar/source/game_graph.png differ diff --git a/gamedata/textures/ed/bar/source/globe.svg b/gamedata/textures/ed/bar/source/globe.svg new file mode 100644 index 0000000..09d4e51 --- /dev/null +++ b/gamedata/textures/ed/bar/source/globe.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/gamedata/textures/ed/bar/source/grid.png b/gamedata/textures/ed/bar/source/grid.png new file mode 100644 index 0000000..25dac1b Binary files /dev/null and b/gamedata/textures/ed/bar/source/grid.png differ diff --git a/gamedata/textures/ed/bar/source/grid.svg b/gamedata/textures/ed/bar/source/grid.svg new file mode 100644 index 0000000..a305ef5 --- /dev/null +++ b/gamedata/textures/ed/bar/source/grid.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/gamedata/textures/ed/bar/source/menu.png b/gamedata/textures/ed/bar/source/menu.png new file mode 100644 index 0000000..b6d88a6 Binary files /dev/null and b/gamedata/textures/ed/bar/source/menu.png differ diff --git a/gamedata/textures/ed/bar/source/menu.svg b/gamedata/textures/ed/bar/source/menu.svg new file mode 100644 index 0000000..ec1ed8c --- /dev/null +++ b/gamedata/textures/ed/bar/source/menu.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/gamedata/textures/ed/bar/source/move.png b/gamedata/textures/ed/bar/source/move.png new file mode 100644 index 0000000..d316a4b Binary files /dev/null and b/gamedata/textures/ed/bar/source/move.png differ diff --git a/gamedata/textures/ed/bar/source/new.bmp b/gamedata/textures/ed/bar/source/new.bmp new file mode 100644 index 0000000..b83ec94 Binary files /dev/null and b/gamedata/textures/ed/bar/source/new.bmp differ diff --git a/gamedata/textures/ed/bar/source/open.bmp b/gamedata/textures/ed/bar/source/open.bmp new file mode 100644 index 0000000..0f2b2cb Binary files /dev/null and b/gamedata/textures/ed/bar/source/open.bmp differ diff --git a/gamedata/textures/ed/bar/source/pilot.svg b/gamedata/textures/ed/bar/source/pilot.svg new file mode 100644 index 0000000..fc04532 --- /dev/null +++ b/gamedata/textures/ed/bar/source/pilot.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/gamedata/textures/ed/bar/source/playcleangame.png b/gamedata/textures/ed/bar/source/playcleangame.png new file mode 100644 index 0000000..fae25b0 Binary files /dev/null and b/gamedata/textures/ed/bar/source/playcleangame.png differ diff --git a/gamedata/textures/ed/bar/source/playineditorplay.png b/gamedata/textures/ed/bar/source/playineditorplay.png new file mode 100644 index 0000000..ddd0562 Binary files /dev/null and b/gamedata/textures/ed/bar/source/playineditorplay.png differ diff --git a/gamedata/textures/ed/bar/source/playpc.png b/gamedata/textures/ed/bar/source/playpc.png new file mode 100644 index 0000000..e1ba41c Binary files /dev/null and b/gamedata/textures/ed/bar/source/playpc.png differ diff --git a/gamedata/textures/ed/bar/source/prop_favoriteoff.png b/gamedata/textures/ed/bar/source/prop_favoriteoff.png new file mode 100644 index 0000000..0ca7a38 Binary files /dev/null and b/gamedata/textures/ed/bar/source/prop_favoriteoff.png differ diff --git a/gamedata/textures/ed/bar/source/prop_favoriteon.png b/gamedata/textures/ed/bar/source/prop_favoriteon.png new file mode 100644 index 0000000..278db38 Binary files /dev/null and b/gamedata/textures/ed/bar/source/prop_favoriteon.png differ diff --git a/gamedata/textures/ed/bar/source/quad.svg b/gamedata/textures/ed/bar/source/quad.svg new file mode 100644 index 0000000..5a7074b --- /dev/null +++ b/gamedata/textures/ed/bar/source/quad.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/gamedata/textures/ed/bar/source/rcrefresh.bmp b/gamedata/textures/ed/bar/source/rcrefresh.bmp new file mode 100644 index 0000000..13a69e1 Binary files /dev/null and b/gamedata/textures/ed/bar/source/rcrefresh.bmp differ diff --git a/gamedata/textures/ed/bar/source/rotate.png b/gamedata/textures/ed/bar/source/rotate.png new file mode 100644 index 0000000..d922116 Binary files /dev/null and b/gamedata/textures/ed/bar/source/rotate.png differ diff --git a/gamedata/textures/ed/bar/source/rotate.svg b/gamedata/textures/ed/bar/source/rotate.svg new file mode 100644 index 0000000..57f5e24 --- /dev/null +++ b/gamedata/textures/ed/bar/source/rotate.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/gamedata/textures/ed/bar/source/save.bmp b/gamedata/textures/ed/bar/source/save.bmp new file mode 100644 index 0000000..a3d9059 Binary files /dev/null and b/gamedata/textures/ed/bar/source/save.bmp differ diff --git a/gamedata/textures/ed/bar/source/scale-grid-snap.svg b/gamedata/textures/ed/bar/source/scale-grid-snap.svg new file mode 100644 index 0000000..bf7990d --- /dev/null +++ b/gamedata/textures/ed/bar/source/scale-grid-snap.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/gamedata/textures/ed/bar/source/scale.png b/gamedata/textures/ed/bar/source/scale.png new file mode 100644 index 0000000..c2b3528 Binary files /dev/null and b/gamedata/textures/ed/bar/source/scale.png differ diff --git a/gamedata/textures/ed/bar/source/scale.svg b/gamedata/textures/ed/bar/source/scale.svg new file mode 100644 index 0000000..316080a --- /dev/null +++ b/gamedata/textures/ed/bar/source/scale.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/gamedata/textures/ed/bar/source/scale_grid.png b/gamedata/textures/ed/bar/source/scale_grid.png new file mode 100644 index 0000000..d19ec67 Binary files /dev/null and b/gamedata/textures/ed/bar/source/scale_grid.png differ diff --git a/gamedata/textures/ed/bar/source/select.png b/gamedata/textures/ed/bar/source/select.png new file mode 100644 index 0000000..c9f25c3 Binary files /dev/null and b/gamedata/textures/ed/bar/source/select.png differ diff --git a/gamedata/textures/ed/bar/source/select.svg b/gamedata/textures/ed/bar/source/select.svg new file mode 100644 index 0000000..b8d3460 --- /dev/null +++ b/gamedata/textures/ed/bar/source/select.svg @@ -0,0 +1,3 @@ + + + diff --git a/gamedata/textures/ed/bar/source/space_restrictor.png b/gamedata/textures/ed/bar/source/space_restrictor.png new file mode 100644 index 0000000..f67892a Binary files /dev/null and b/gamedata/textures/ed/bar/source/space_restrictor.png differ diff --git a/gamedata/textures/ed/bar/source/speed.svg b/gamedata/textures/ed/bar/source/speed.svg new file mode 100644 index 0000000..99ffd0a --- /dev/null +++ b/gamedata/textures/ed/bar/source/speed.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/gamedata/textures/ed/bar/source/square.svg b/gamedata/textures/ed/bar/source/square.svg new file mode 100644 index 0000000..762d712 --- /dev/null +++ b/gamedata/textures/ed/bar/source/square.svg @@ -0,0 +1,3 @@ + + + diff --git a/gamedata/textures/ed/bar/source/surface-snap.svg b/gamedata/textures/ed/bar/source/surface-snap.svg new file mode 100644 index 0000000..2c11111 --- /dev/null +++ b/gamedata/textures/ed/bar/source/surface-snap.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/gamedata/textures/ed/bar/source/terminated.png b/gamedata/textures/ed/bar/source/terminated.png new file mode 100644 index 0000000..e9077db Binary files /dev/null and b/gamedata/textures/ed/bar/source/terminated.png differ diff --git a/gamedata/textures/ed/bar/source/toolbarleftgroup.png b/gamedata/textures/ed/bar/source/toolbarleftgroup.png new file mode 100644 index 0000000..fe97716 Binary files /dev/null and b/gamedata/textures/ed/bar/source/toolbarleftgroup.png differ diff --git a/gamedata/textures/ed/bar/source/toolbarmiddlegroup.png b/gamedata/textures/ed/bar/source/toolbarmiddlegroup.png new file mode 100644 index 0000000..e029755 Binary files /dev/null and b/gamedata/textures/ed/bar/source/toolbarmiddlegroup.png differ diff --git a/gamedata/textures/ed/bar/source/toolbarrightgroup.png b/gamedata/textures/ed/bar/source/toolbarrightgroup.png new file mode 100644 index 0000000..ca7a2c7 Binary files /dev/null and b/gamedata/textures/ed/bar/source/toolbarrightgroup.png differ diff --git a/gamedata/textures/ed/bar/source/translate.svg b/gamedata/textures/ed/bar/source/translate.svg new file mode 100644 index 0000000..b3b0f44 --- /dev/null +++ b/gamedata/textures/ed/bar/source/translate.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/gamedata/textures/ed/bar/source/translaterotate2d.svg b/gamedata/textures/ed/bar/source/translaterotate2d.svg new file mode 100644 index 0000000..43b8f2b --- /dev/null +++ b/gamedata/textures/ed/bar/source/translaterotate2d.svg @@ -0,0 +1,4 @@ + + + + diff --git a/gamedata/textures/ed/bar/source/translaterotate3d.svg b/gamedata/textures/ed/bar/source/translaterotate3d.svg new file mode 100644 index 0000000..b61fb20 --- /dev/null +++ b/gamedata/textures/ed/bar/source/translaterotate3d.svg @@ -0,0 +1,3 @@ + + + diff --git a/gamedata/textures/ed/bar/srestrictor.dds b/gamedata/textures/ed/bar/srestrictor.dds new file mode 100644 index 0000000..bb47e79 --- /dev/null +++ b/gamedata/textures/ed/bar/srestrictor.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3754944bedeae67a6352169070c257d5665f2665d3172bd1d1f67f3587a50658 +size 1152 diff --git a/gamedata/textures/ed/bar/terminated.dds b/gamedata/textures/ed/bar/terminated.dds new file mode 100644 index 0000000..71a5b9f --- /dev/null +++ b/gamedata/textures/ed/bar/terminated.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f6c7fa0ff341ea0f797cc3b896d0c0713ea7cf5d47fc4d92a82a39cc72d385f0 +size 2248 diff --git a/gamedata/textures/ed/bar/undo.dds b/gamedata/textures/ed/bar/undo.dds new file mode 100644 index 0000000..1b8e62f --- /dev/null +++ b/gamedata/textures/ed/bar/undo.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4fba4553e7f1f1857e13c808483fdd6015662b33548e82390c12b10ad7d1ef0e +size 8320 diff --git a/gamedata/textures/ed/bar/validate.dds b/gamedata/textures/ed/bar/validate.dds new file mode 100644 index 0000000..5e72ed2 --- /dev/null +++ b/gamedata/textures/ed/bar/validate.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bb7207f017dfc3a3308f50f18ab51207ff24d4515c6a297365ce1cf94edff3b6 +size 49856 diff --git a/gamedata/textures/ed/bar/viewb.dds b/gamedata/textures/ed/bar/viewb.dds new file mode 100644 index 0000000..5db545b --- /dev/null +++ b/gamedata/textures/ed/bar/viewb.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f0b82c1bfc76c5564e87724c2ffac31b9eaaaf95cb64619a24eac1ec17137c6b +size 16512 diff --git a/gamedata/textures/ed/bar/viewfront.dds b/gamedata/textures/ed/bar/viewfront.dds new file mode 100644 index 0000000..c24d393 --- /dev/null +++ b/gamedata/textures/ed/bar/viewfront.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:df97fcca49fdd358615d094391250b217164dc43d2bc0dc09987a98949dece9c +size 16512 diff --git a/gamedata/textures/ed/bar/viewleft.dds b/gamedata/textures/ed/bar/viewleft.dds new file mode 100644 index 0000000..79dc7cf --- /dev/null +++ b/gamedata/textures/ed/bar/viewleft.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a6f06b81df9d86f45bf702d2af7521f3bf8e501b7bcac0c5dcead49e543c127a +size 16512 diff --git a/gamedata/textures/ed/bar/viewreset.dds b/gamedata/textures/ed/bar/viewreset.dds new file mode 100644 index 0000000..e4d07b0 --- /dev/null +++ b/gamedata/textures/ed/bar/viewreset.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2b5dbbca853a029293ab8f962be634c8658ed08b64aeee19f3cd33c41e2bd8ef +size 16512 diff --git a/gamedata/textures/ed/bar/viewright.dds b/gamedata/textures/ed/bar/viewright.dds new file mode 100644 index 0000000..a3e5abf --- /dev/null +++ b/gamedata/textures/ed/bar/viewright.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2251e74617ef6fe7669d013e9858115f7a5caed44aee53a2db17fe49be328bce +size 16512 diff --git a/gamedata/textures/ed/bar/viewtop.dds b/gamedata/textures/ed/bar/viewtop.dds new file mode 100644 index 0000000..3d71380 --- /dev/null +++ b/gamedata/textures/ed/bar/viewtop.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:40adbd42ebc1e8268f53bb463b2497b8f03586b4cc215d55f868245d897ee8f2 +size 16512 diff --git a/gamedata/textures/ed/bar/vsnap.dds b/gamedata/textures/ed/bar/vsnap.dds new file mode 100644 index 0000000..79fcaa0 --- /dev/null +++ b/gamedata/textures/ed/bar/vsnap.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8561acd3b2d242678cc1ccc7bfc86e55d609d06d4fe7469378081ea27fd26341 +size 11088 diff --git a/gamedata/textures/ed/bar/weatherprop.dds b/gamedata/textures/ed/bar/weatherprop.dds new file mode 100644 index 0000000..336cc47 --- /dev/null +++ b/gamedata/textures/ed/bar/weatherprop.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c8350b1c1f68fb3760104edfcc50aa6b0f5e6dadaef04d1a4fa12e0ea95cddfd +size 87520 diff --git a/gamedata/textures/ed/bar/weatherprop.thm b/gamedata/textures/ed/bar/weatherprop.thm new file mode 100644 index 0000000..e3ac1eb Binary files /dev/null and b/gamedata/textures/ed/bar/weatherprop.thm differ diff --git a/gamedata/textures/ed/bar/win_header_close.dds b/gamedata/textures/ed/bar/win_header_close.dds new file mode 100644 index 0000000..c2772b5 --- /dev/null +++ b/gamedata/textures/ed/bar/win_header_close.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78f77271e5b760b88e8fd663a054a3bdc668f795fc4e85109fcc1567362e8fe9 +size 5616 diff --git a/gamedata/textures/ed/bar/win_header_logo.dds b/gamedata/textures/ed/bar/win_header_logo.dds new file mode 100644 index 0000000..fd613ff --- /dev/null +++ b/gamedata/textures/ed/bar/win_header_logo.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:41627cb31b7da8147a79d937ea4252e87b245468e1b9a8272f0955477593180a +size 5616 diff --git a/gamedata/textures/ed/bar/win_header_max.dds b/gamedata/textures/ed/bar/win_header_max.dds new file mode 100644 index 0000000..5dbd894 --- /dev/null +++ b/gamedata/textures/ed/bar/win_header_max.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a764f6aaa65676b639b180f51b2a139d99c010ea867dfcf7899cf10d642c4e11 +size 5616 diff --git a/gamedata/textures/ed/bar/win_header_min.dds b/gamedata/textures/ed/bar/win_header_min.dds new file mode 100644 index 0000000..1bb1763 --- /dev/null +++ b/gamedata/textures/ed/bar/win_header_min.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b5cf9e4ac04f25f8599cec381e53c3014e5750bc81b27992dcb938ed6dad765 +size 5616 diff --git a/gamedata/textures/ed/bar/win_header_restore.dds b/gamedata/textures/ed/bar/win_header_restore.dds new file mode 100644 index 0000000..5d1081a --- /dev/null +++ b/gamedata/textures/ed/bar/win_header_restore.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e67fa841ae5908ddcc93d1d5422c1bfa41abfc71a57b58dbc1987f42434ff1f5 +size 5616 diff --git a/gamedata/textures/ed/bar/win_preferences.dds b/gamedata/textures/ed/bar/win_preferences.dds new file mode 100644 index 0000000..8efc26e --- /dev/null +++ b/gamedata/textures/ed/bar/win_preferences.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b2b50fda9ef740a5c744cacd3a85c93fa0a000ea6235612ab89defb25b15751f +size 768 diff --git a/gamedata/textures/ed/bar/x.dds b/gamedata/textures/ed/bar/x.dds new file mode 100644 index 0000000..e96d77d --- /dev/null +++ b/gamedata/textures/ed/bar/x.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2ab3f7a77e7d1a9bb74af76e7cdaed4dc5f73ced671263c7c08dfa3ca2842acc +size 87508 diff --git a/gamedata/textures/ed/bar/y.dds b/gamedata/textures/ed/bar/y.dds new file mode 100644 index 0000000..1fe59d2 --- /dev/null +++ b/gamedata/textures/ed/bar/y.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78c62128acd2a38b7c541a18a2560fd54c6728a85bd75e8a23b516c24fd0d327 +size 87508 diff --git a/gamedata/textures/ed/bar/z.dds b/gamedata/textures/ed/bar/z.dds new file mode 100644 index 0000000..e0e38a5 --- /dev/null +++ b/gamedata/textures/ed/bar/z.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5da9d3b606e5d4ec0afa5b8aa9ff7c5d02a6150d6bd27b94a506d90bc06ae4bd +size 87508 diff --git a/gamedata/textures/ed/bar/zoom.dds b/gamedata/textures/ed/bar/zoom.dds new file mode 100644 index 0000000..ba70785 --- /dev/null +++ b/gamedata/textures/ed/bar/zoom.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5a89818b64d7a662021551ac3be233a280e42b6e1feed129116c17bc6cfe257b +size 11088 diff --git a/gamedata/textures/ed/bar/zoomsel.dds b/gamedata/textures/ed/bar/zoomsel.dds new file mode 100644 index 0000000..2e046f6 --- /dev/null +++ b/gamedata/textures/ed/bar/zoomsel.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8025906c48c69582b43adc1f142b595cdea3badd20d65e1f8c09a5d2c03d42b4 +size 11088 diff --git a/gamedata/textures/ed/bar/zx.dds b/gamedata/textures/ed/bar/zx.dds new file mode 100644 index 0000000..b265dd8 --- /dev/null +++ b/gamedata/textures/ed/bar/zx.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:75eb4c91020a2ea1f42531ad8745306e0198116605edb4e76305ad8b915efe98 +size 87508 diff --git a/gamedata/textures/ed/content_browser/backup.dds b/gamedata/textures/ed/content_browser/backup.dds new file mode 100644 index 0000000..bc42538 --- /dev/null +++ b/gamedata/textures/ed/content_browser/backup.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f1791e0120c91f0cf323a69881481c9fade3c4cc1e73202ce43bc6ee7bf1f5d5 +size 16512 diff --git a/gamedata/textures/ed/content_browser/cmd.dds b/gamedata/textures/ed/content_browser/cmd.dds new file mode 100644 index 0000000..d102d18 --- /dev/null +++ b/gamedata/textures/ed/content_browser/cmd.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c5275af8262ed9c0f8a71d1bffad012213ac7867b0ade079d0486a8c3b4094e +size 16512 diff --git a/gamedata/textures/ed/content_browser/dialogs.dds b/gamedata/textures/ed/content_browser/dialogs.dds new file mode 100644 index 0000000..e16f30d --- /dev/null +++ b/gamedata/textures/ed/content_browser/dialogs.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:20a090e13663fefa9940d96d84fac18417e101354b19a489824f488e7c7f7275 +size 1152 diff --git a/gamedata/textures/ed/content_browser/dll.dds b/gamedata/textures/ed/content_browser/dll.dds new file mode 100644 index 0000000..3ff584d --- /dev/null +++ b/gamedata/textures/ed/content_browser/dll.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:69e9beb6ae672174f6a9a42de52e9e26c91f000877fc7dc00baa0a2d38396f4b +size 16512 diff --git a/gamedata/textures/ed/content_browser/env_mod.dds b/gamedata/textures/ed/content_browser/env_mod.dds new file mode 100644 index 0000000..2a86c48 --- /dev/null +++ b/gamedata/textures/ed/content_browser/env_mod.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3ed4794da123e6ff7c1a67df0a2fa94430a881b1d031c1e7d29fd387a6def0a +size 16512 diff --git a/gamedata/textures/ed/content_browser/exe.dds b/gamedata/textures/ed/content_browser/exe.dds new file mode 100644 index 0000000..5403793 --- /dev/null +++ b/gamedata/textures/ed/content_browser/exe.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d06e3c30d21efb0dd7bc14c7fb7e7e232418adef35c972ec790f1b2c9820f04 +size 16512 diff --git a/gamedata/textures/ed/content_browser/file.dds b/gamedata/textures/ed/content_browser/file.dds new file mode 100644 index 0000000..3fc8043 --- /dev/null +++ b/gamedata/textures/ed/content_browser/file.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4c2a10b5dd712f7c8149fff90059d758d8cb6094267aa9a30e19c105d7101c4 +size 16512 diff --git a/gamedata/textures/ed/content_browser/folder.dds b/gamedata/textures/ed/content_browser/folder.dds new file mode 100644 index 0000000..f7b606b --- /dev/null +++ b/gamedata/textures/ed/content_browser/folder.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:932d23a86e83c0be1eb72bd201b94a8d0371d97f0d4f7d54a1b56fc1f2b8a60e +size 16512 diff --git a/gamedata/textures/ed/content_browser/image.dds b/gamedata/textures/ed/content_browser/image.dds new file mode 100644 index 0000000..53571ff --- /dev/null +++ b/gamedata/textures/ed/content_browser/image.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d081d0add8352c71e1c7e9acc00e252a127cf5d1a661445a8fda82a594c1fde +size 16512 diff --git a/gamedata/textures/ed/content_browser/level.dds b/gamedata/textures/ed/content_browser/level.dds new file mode 100644 index 0000000..94f7f1d --- /dev/null +++ b/gamedata/textures/ed/content_browser/level.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:104525aa2828d7ddffc15df05f312b02f0fdb91afc3549b044f2bcb3c9e10db0 +size 16512 diff --git a/gamedata/textures/ed/content_browser/log.dds b/gamedata/textures/ed/content_browser/log.dds new file mode 100644 index 0000000..2b98a15 --- /dev/null +++ b/gamedata/textures/ed/content_browser/log.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:746420e4446b04fdafc57c79ffd81e8f93923449399c1d787dba0d5539d721ff +size 16512 diff --git a/gamedata/textures/ed/content_browser/multi.dds b/gamedata/textures/ed/content_browser/multi.dds new file mode 100644 index 0000000..9f08599 --- /dev/null +++ b/gamedata/textures/ed/content_browser/multi.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5260c7333735b17886e38957ed362a5f65cd76cb1eac10db35da419a5f881704 +size 5616 diff --git a/gamedata/textures/ed/content_browser/object.dds b/gamedata/textures/ed/content_browser/object.dds new file mode 100644 index 0000000..5309e98 --- /dev/null +++ b/gamedata/textures/ed/content_browser/object.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:855a14d6cd79b99a472ab2f940aabf2bf878a61469da3e0f53bcd0e4eae2f4bd +size 16512 diff --git a/gamedata/textures/ed/content_browser/ogg.dds b/gamedata/textures/ed/content_browser/ogg.dds new file mode 100644 index 0000000..d22922c --- /dev/null +++ b/gamedata/textures/ed/content_browser/ogg.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:21543dfdd2e039316fe18dcd8b7641a39d95d50c50a9e6fb45786f24a6526bb6 +size 16512 diff --git a/gamedata/textures/ed/content_browser/search.dds b/gamedata/textures/ed/content_browser/search.dds new file mode 100644 index 0000000..e2b1795 --- /dev/null +++ b/gamedata/textures/ed/content_browser/search.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e00b43863d4a38cdcb2f20f0cfe0d65a4da5c80218985d480b270e06d67d19c5 +size 1520 diff --git a/gamedata/textures/ed/content_browser/seq.dds b/gamedata/textures/ed/content_browser/seq.dds new file mode 100644 index 0000000..bcf30bd --- /dev/null +++ b/gamedata/textures/ed/content_browser/seq.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a69116670c45b2e97725842fcb9d160fce2d24b3fcc535d629c855c68ce3ba97 +size 16512 diff --git a/gamedata/textures/ed/content_browser/tga.dds b/gamedata/textures/ed/content_browser/tga.dds new file mode 100644 index 0000000..eb3e5d7 --- /dev/null +++ b/gamedata/textures/ed/content_browser/tga.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e42c652fb41ae8f2686ee4f4b97d7d2c2e7332688ac3392235a131e3c299980 +size 16512 diff --git a/gamedata/textures/ed/content_browser/thm.dds b/gamedata/textures/ed/content_browser/thm.dds new file mode 100644 index 0000000..50b6d33 --- /dev/null +++ b/gamedata/textures/ed/content_browser/thm.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fd905152c31ce8ffced7764ffa906afad8fc471d1f077593f71d9e1115ee276c +size 16512 diff --git a/gamedata/textures/ed/content_browser/wav.dds b/gamedata/textures/ed/content_browser/wav.dds new file mode 100644 index 0000000..7516b6b --- /dev/null +++ b/gamedata/textures/ed/content_browser/wav.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6adf590e55de2b0e7855dc2b7c568f757c64d6435f7e57b6234b38cf0c1543d0 +size 16512 diff --git a/gamedata/textures/ed/ed_actor.dds b/gamedata/textures/ed/ed_actor.dds new file mode 100644 index 0000000..40d3431 --- /dev/null +++ b/gamedata/textures/ed/ed_actor.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:42ab40e1c990bc7f77e247326ba41b2f17adf1754fe66ff112813959532eaea3 +size 5616 diff --git a/gamedata/textures/ed/ed_actor.thm b/gamedata/textures/ed/ed_actor.thm new file mode 100644 index 0000000..b49cb06 Binary files /dev/null and b/gamedata/textures/ed/ed_actor.thm differ diff --git a/gamedata/textures/ed/ed_ai_arrows_01.dds b/gamedata/textures/ed/ed_ai_arrows_01.dds new file mode 100644 index 0000000..362c67a --- /dev/null +++ b/gamedata/textures/ed/ed_ai_arrows_01.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e57d62031262c4d53b10c06be6d52fdc29770ea7a1ede782efc4aaa92b10697 +size 43832 diff --git a/gamedata/textures/ed/ed_ai_arrows_01.thm b/gamedata/textures/ed/ed_ai_arrows_01.thm new file mode 100644 index 0000000..efac930 Binary files /dev/null and b/gamedata/textures/ed/ed_ai_arrows_01.thm differ diff --git a/gamedata/textures/ed/ed_ai_arrows_02.dds b/gamedata/textures/ed/ed_ai_arrows_02.dds new file mode 100644 index 0000000..362c67a --- /dev/null +++ b/gamedata/textures/ed/ed_ai_arrows_02.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e57d62031262c4d53b10c06be6d52fdc29770ea7a1ede782efc4aaa92b10697 +size 43832 diff --git a/gamedata/textures/ed/ed_ai_arrows_02.thm b/gamedata/textures/ed/ed_ai_arrows_02.thm new file mode 100644 index 0000000..efac930 Binary files /dev/null and b/gamedata/textures/ed/ed_ai_arrows_02.thm differ diff --git a/gamedata/textures/ed/ed_ai_arrows_03.dds b/gamedata/textures/ed/ed_ai_arrows_03.dds new file mode 100644 index 0000000..462dbc3 --- /dev/null +++ b/gamedata/textures/ed/ed_ai_arrows_03.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f2fd9a6541a10649c161a695cf98dcea189b979dea6c9b2986dcb60f5c39d5a +size 43832 diff --git a/gamedata/textures/ed/ed_ai_arrows_03.thm b/gamedata/textures/ed/ed_ai_arrows_03.thm new file mode 100644 index 0000000..efac930 Binary files /dev/null and b/gamedata/textures/ed/ed_ai_arrows_03.thm differ diff --git a/gamedata/textures/ed/ed_axis.dds b/gamedata/textures/ed/ed_axis.dds new file mode 100644 index 0000000..2a2c806 --- /dev/null +++ b/gamedata/textures/ed/ed_axis.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e46935959592a1323ba58bdc66e73804c183bd1260e3af0d08853bd76c0d03ea +size 5616 diff --git a/gamedata/textures/ed/ed_axis.thm b/gamedata/textures/ed/ed_axis.thm new file mode 100644 index 0000000..961920b Binary files /dev/null and b/gamedata/textures/ed/ed_axis.thm differ diff --git a/gamedata/textures/ed/ed_dummy_bump#.dds b/gamedata/textures/ed/ed_dummy_bump#.dds new file mode 100644 index 0000000..5d59021 --- /dev/null +++ b/gamedata/textures/ed/ed_dummy_bump#.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f81d3b68aea73e4fc3e859897ad9d1456abb0c6b0e08c838f6a7f68785e10fbe +size 5616 diff --git a/gamedata/textures/ed/ed_dummy_bump.dds b/gamedata/textures/ed/ed_dummy_bump.dds new file mode 100644 index 0000000..67bdc65 --- /dev/null +++ b/gamedata/textures/ed/ed_dummy_bump.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ff3c0ad81fd88d38655c484fdc080796ff2d24e77c200ae14a5ef4cc47a5dee +size 5616 diff --git a/gamedata/textures/ed/ed_dummy_bump.thm b/gamedata/textures/ed/ed_dummy_bump.thm new file mode 100644 index 0000000..71fd7f3 Binary files /dev/null and b/gamedata/textures/ed/ed_dummy_bump.thm differ diff --git a/gamedata/textures/ed/ed_mp.dds b/gamedata/textures/ed/ed_mp.dds new file mode 100644 index 0000000..ebc55b6 --- /dev/null +++ b/gamedata/textures/ed/ed_mp.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b09d4c7e1d7a57203357b5389a05bf7c4913a710bb844fae68690d2010e73ae0 +size 174904 diff --git a/gamedata/textures/ed/ed_mp.thm b/gamedata/textures/ed/ed_mp.thm new file mode 100644 index 0000000..ce06ede Binary files /dev/null and b/gamedata/textures/ed/ed_mp.thm differ diff --git a/gamedata/textures/ed/ed_nodata.dds b/gamedata/textures/ed/ed_nodata.dds new file mode 100644 index 0000000..2ae0b12 --- /dev/null +++ b/gamedata/textures/ed/ed_nodata.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de4b126ff054920a5713f705cad54a9aaa8d530ac4495e381e06249c6eb0f25c +size 13856 diff --git a/gamedata/textures/ed/ed_not_existing_texture.dds b/gamedata/textures/ed/ed_not_existing_texture.dds new file mode 100644 index 0000000..fe3bedf --- /dev/null +++ b/gamedata/textures/ed/ed_not_existing_texture.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da0ebb7f3a71c2857ff373ac9cb14ae8d2820686afbbe5895f40c6b7f3b17df0 +size 2872 diff --git a/gamedata/textures/ed/ed_not_existing_texture.thm b/gamedata/textures/ed/ed_not_existing_texture.thm new file mode 100644 index 0000000..961920b Binary files /dev/null and b/gamedata/textures/ed/ed_not_existing_texture.thm differ diff --git a/gamedata/textures/ed/plugins/lua.dds b/gamedata/textures/ed/plugins/lua.dds new file mode 100644 index 0000000..a69e00e --- /dev/null +++ b/gamedata/textures/ed/plugins/lua.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b0001af8bdf371787365e62b36fb607cdaa1c279d8b58c1859ccce3b7fe4de1a +size 384 diff --git a/gamedata/textures/ed/plugins/python.dds b/gamedata/textures/ed/plugins/python.dds new file mode 100644 index 0000000..0881911 --- /dev/null +++ b/gamedata/textures/ed/plugins/python.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:37872ca252365652c6636c206489ba8bfd26038dc808d68ff2bc35a6aba5b2d3 +size 384 diff --git a/gamedata/textures/fx/fx_noise2.dds b/gamedata/textures/fx/fx_noise2.dds new file mode 100644 index 0000000..6347007 --- /dev/null +++ b/gamedata/textures/fx/fx_noise2.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3accf17d3707866900591970ff70c2944a06b7deb4e803b9ef844aafe7dd65fe +size 262272 diff --git a/gamedata/textures/fx/fx_noise2.thm b/gamedata/textures/fx/fx_noise2.thm new file mode 100644 index 0000000..eda544c Binary files /dev/null and b/gamedata/textures/fx/fx_noise2.thm differ diff --git a/gamedata/textures/grad/grad_acid_mine.dds b/gamedata/textures/grad/grad_acid_mine.dds new file mode 100644 index 0000000..954cf59 --- /dev/null +++ b/gamedata/textures/grad/grad_acid_mine.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:787dc151c5d22c1ee460381a3bb7d100a1a6446b9a46fcf42ebad2c1a872a619 +size 4224 diff --git a/gamedata/textures/grad/grad_acid_mine.thm b/gamedata/textures/grad/grad_acid_mine.thm new file mode 100644 index 0000000..885f50a Binary files /dev/null and b/gamedata/textures/grad/grad_acid_mine.thm differ diff --git a/gamedata/textures/grad/grad_acidic.dds b/gamedata/textures/grad/grad_acidic.dds new file mode 100644 index 0000000..fd9f7e3 --- /dev/null +++ b/gamedata/textures/grad/grad_acidic.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1d0af93e3115436279f9d45264e3dffcd521207ce1ac20771c6b30026665bea +size 4224 diff --git a/gamedata/textures/grad/grad_acidic.thm b/gamedata/textures/grad/grad_acidic.thm new file mode 100644 index 0000000..885f50a Binary files /dev/null and b/gamedata/textures/grad/grad_acidic.thm differ diff --git a/gamedata/textures/grad/grad_acidic_mine.dds b/gamedata/textures/grad/grad_acidic_mine.dds new file mode 100644 index 0000000..f1bc44b --- /dev/null +++ b/gamedata/textures/grad/grad_acidic_mine.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36a507962a80259afb90801eb1bae4e6d42c1be97eb67019635943c0e413b1e0 +size 4224 diff --git a/gamedata/textures/grad/grad_acidic_mine.thm b/gamedata/textures/grad/grad_acidic_mine.thm new file mode 100644 index 0000000..885f50a Binary files /dev/null and b/gamedata/textures/grad/grad_acidic_mine.thm differ diff --git a/gamedata/textures/grad/grad_electra_mine.dds b/gamedata/textures/grad/grad_electra_mine.dds new file mode 100644 index 0000000..86cd8b9 --- /dev/null +++ b/gamedata/textures/grad/grad_electra_mine.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:efd5e8f450397db072db3203c9c324ed4f6b2b6234078f2844d5cb1313f1d0e3 +size 4224 diff --git a/gamedata/textures/grad/grad_electra_mine.thm b/gamedata/textures/grad/grad_electra_mine.thm new file mode 100644 index 0000000..885f50a Binary files /dev/null and b/gamedata/textures/grad/grad_electra_mine.thm differ diff --git a/gamedata/textures/grad/grad_electric_mine.dds b/gamedata/textures/grad/grad_electric_mine.dds new file mode 100644 index 0000000..4ba3117 --- /dev/null +++ b/gamedata/textures/grad/grad_electric_mine.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:96eb4a18ed5fd6eb43aef803bac285f85b59a3b7494aa49069f14d4dc4fbb8ba +size 4224 diff --git a/gamedata/textures/grad/grad_electric_mine.thm b/gamedata/textures/grad/grad_electric_mine.thm new file mode 100644 index 0000000..885f50a Binary files /dev/null and b/gamedata/textures/grad/grad_electric_mine.thm differ diff --git a/gamedata/textures/grad/grad_nightvision_1.dds b/gamedata/textures/grad/grad_nightvision_1.dds new file mode 100644 index 0000000..732524b --- /dev/null +++ b/gamedata/textures/grad/grad_nightvision_1.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:71b80e91bbf5632bb63429a4d842545420755be86cb71011a19edc97ee603072 +size 4224 diff --git a/gamedata/textures/grad/grad_nightvision_1.thm b/gamedata/textures/grad/grad_nightvision_1.thm new file mode 100644 index 0000000..885f50a Binary files /dev/null and b/gamedata/textures/grad/grad_nightvision_1.thm differ diff --git a/gamedata/textures/grad/grad_nightvision_2.dds b/gamedata/textures/grad/grad_nightvision_2.dds new file mode 100644 index 0000000..80fcda4 --- /dev/null +++ b/gamedata/textures/grad/grad_nightvision_2.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:45097d3732072d9e9b38d691dbd85230789be9752d64b138f6c68caaff81e4d7 +size 4224 diff --git a/gamedata/textures/grad/grad_nightvision_2.thm b/gamedata/textures/grad/grad_nightvision_2.thm new file mode 100644 index 0000000..885f50a Binary files /dev/null and b/gamedata/textures/grad/grad_nightvision_2.thm differ diff --git a/gamedata/textures/grad/grad_nightvision_3.dds b/gamedata/textures/grad/grad_nightvision_3.dds new file mode 100644 index 0000000..6aa442e --- /dev/null +++ b/gamedata/textures/grad/grad_nightvision_3.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b5a0fc2962da76ba26eb9e47b27b3a0743c6e995543939be9c5ebcd8e14b63bb +size 4224 diff --git a/gamedata/textures/grad/grad_nightvision_3.thm b/gamedata/textures/grad/grad_nightvision_3.thm new file mode 100644 index 0000000..885f50a Binary files /dev/null and b/gamedata/textures/grad/grad_nightvision_3.thm differ diff --git a/gamedata/textures/grad/grad_psi.dds b/gamedata/textures/grad/grad_psi.dds new file mode 100644 index 0000000..47d2b85 --- /dev/null +++ b/gamedata/textures/grad/grad_psi.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff4dad53a7a59a015ba623076d740201e31e049d533e6929a5435c63fda75ec4 +size 4224 diff --git a/gamedata/textures/grad/grad_psi.thm b/gamedata/textures/grad/grad_psi.thm new file mode 100644 index 0000000..885f50a Binary files /dev/null and b/gamedata/textures/grad/grad_psi.thm differ diff --git a/gamedata/textures/grad/grad_psy.dds b/gamedata/textures/grad/grad_psy.dds new file mode 100644 index 0000000..854e6a1 --- /dev/null +++ b/gamedata/textures/grad/grad_psy.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4de9c7e5334c6f3c6d639c266fc2d7ca8f3476e9b61ee695bc7828fb16500847 +size 4224 diff --git a/gamedata/textures/grad/grad_psy.thm b/gamedata/textures/grad/grad_psy.thm new file mode 100644 index 0000000..885f50a Binary files /dev/null and b/gamedata/textures/grad/grad_psy.thm differ diff --git a/gamedata/textures/grad/grad_radiation.dds b/gamedata/textures/grad/grad_radiation.dds new file mode 100644 index 0000000..a318924 --- /dev/null +++ b/gamedata/textures/grad/grad_radiation.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9680aa99a7f38bd74f3cf21b0c7c1daf801199f52134373e2f045bfa8bd12459 +size 4224 diff --git a/gamedata/textures/grad/grad_radiation.thm b/gamedata/textures/grad/grad_radiation.thm new file mode 100644 index 0000000..885f50a Binary files /dev/null and b/gamedata/textures/grad/grad_radiation.thm differ diff --git a/gamedata/textures/grad/grad_rainbow.dds b/gamedata/textures/grad/grad_rainbow.dds new file mode 100644 index 0000000..27d2768 --- /dev/null +++ b/gamedata/textures/grad/grad_rainbow.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:536300cdb2621feb5617a31393aee2bf778806350839c33a71d4daa4cb850171 +size 4224 diff --git a/gamedata/textures/grad/grad_rainbow.thm b/gamedata/textures/grad/grad_rainbow.thm new file mode 100644 index 0000000..885f50a Binary files /dev/null and b/gamedata/textures/grad/grad_rainbow.thm differ diff --git a/gamedata/textures/grad/grad_steam_mine.dds b/gamedata/textures/grad/grad_steam_mine.dds new file mode 100644 index 0000000..09c14ba --- /dev/null +++ b/gamedata/textures/grad/grad_steam_mine.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0853550a8fb2778109c41f0cf81eda097e129f6e1933fdc6874e10c797e66506 +size 4224 diff --git a/gamedata/textures/grad/grad_steam_mine.thm b/gamedata/textures/grad/grad_steam_mine.thm new file mode 100644 index 0000000..885f50a Binary files /dev/null and b/gamedata/textures/grad/grad_steam_mine.thm differ diff --git a/gamedata/textures/grad/grad_thermal.dds b/gamedata/textures/grad/grad_thermal.dds new file mode 100644 index 0000000..d94e528 --- /dev/null +++ b/gamedata/textures/grad/grad_thermal.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f9efab195c43e715b014ed307e7eaa7aa0709cfa2ccdec2d043e4e5d029be31 +size 4224 diff --git a/gamedata/textures/grad/grad_thermal.thm b/gamedata/textures/grad/grad_thermal.thm new file mode 100644 index 0000000..885f50a Binary files /dev/null and b/gamedata/textures/grad/grad_thermal.thm differ diff --git a/gamedata/textures/grad/grad_thermal_mine.dds b/gamedata/textures/grad/grad_thermal_mine.dds new file mode 100644 index 0000000..721bdbf --- /dev/null +++ b/gamedata/textures/grad/grad_thermal_mine.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:03c7b36ffadbd8c21d4a17cf3b35cf9e1cd1606eda67acebcd70c8eb0cc62485 +size 4224 diff --git a/gamedata/textures/grad/grad_thermal_mine.thm b/gamedata/textures/grad/grad_thermal_mine.thm new file mode 100644 index 0000000..885f50a Binary files /dev/null and b/gamedata/textures/grad/grad_thermal_mine.thm differ diff --git a/gamedata/textures/internal/internal_firetransferfunction.dds b/gamedata/textures/internal/internal_firetransferfunction.dds new file mode 100644 index 0000000..f6ee19c --- /dev/null +++ b/gamedata/textures/internal/internal_firetransferfunction.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dcd57bc74f09c4a1a0f9c192b2bb1673ac89b588daf5e812308a2e1ed5193d04 +size 8320 diff --git a/gamedata/textures/intro/intro_no_start_picture.dds b/gamedata/textures/intro/intro_no_start_picture.dds new file mode 100644 index 0000000..3b927a4 --- /dev/null +++ b/gamedata/textures/intro/intro_no_start_picture.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc18c08b8123c6ed02588e3b83622df362ef5693e144f70140e889d9d9ed1744 +size 524416 diff --git a/gamedata/textures/lights/lights_blamplight.dds b/gamedata/textures/lights/lights_blamplight.dds new file mode 100644 index 0000000..0430dbc --- /dev/null +++ b/gamedata/textures/lights/lights_blamplight.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3dcce2644c52dc02155678e0fd970de6a0058e977291e5722354efde122c7b16 +size 192 diff --git a/gamedata/textures/lights/lights_blamplight.thm b/gamedata/textures/lights/lights_blamplight.thm new file mode 100644 index 0000000..b6a41a2 Binary files /dev/null and b/gamedata/textures/lights/lights_blamplight.thm differ diff --git a/gamedata/textures/lights/lights_fanblade3.dds b/gamedata/textures/lights/lights_fanblade3.dds new file mode 100644 index 0000000..70988f3 --- /dev/null +++ b/gamedata/textures/lights/lights_fanblade3.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4439b64114b2f51c33e0b377e759abb46093d907f2df674fc0d7248a45e38353 +size 192 diff --git a/gamedata/textures/lights/lights_fanblade3.thm b/gamedata/textures/lights/lights_fanblade3.thm new file mode 100644 index 0000000..b6a41a2 Binary files /dev/null and b/gamedata/textures/lights/lights_fanblade3.thm differ diff --git a/gamedata/textures/mtl/mtl_pod_green_bump.dds b/gamedata/textures/mtl/mtl_pod_green_bump.dds new file mode 100644 index 0000000..1895ca3 --- /dev/null +++ b/gamedata/textures/mtl/mtl_pod_green_bump.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6c53c0d5f2ae0c761f9a0e43e26d3882205a09e4f7fc7ab83b9b0a80d7258f34 +size 1398256 diff --git a/gamedata/textures/shaders/blue_noise_3x3.dds b/gamedata/textures/shaders/blue_noise_3x3.dds new file mode 100644 index 0000000..3f7146d --- /dev/null +++ b/gamedata/textures/shaders/blue_noise_3x3.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80ba4e109c87ff1901a06b62be4fa0265076e08de70d6b11de4cddc8dcc204c6 +size 2097280 diff --git a/gamedata/textures/shaders/r2_material.dds b/gamedata/textures/shaders/r2_material.dds new file mode 100644 index 0000000..c9c2656 --- /dev/null +++ b/gamedata/textures/shaders/r2_material.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4950196d0304a48117cf64e080e28a10cb21799547011e37d02c7341e760fb9e +size 262272 diff --git a/gamedata/textures/shaders/shaders_sunmask.dds b/gamedata/textures/shaders/shaders_sunmask.dds new file mode 100644 index 0000000..ae035f3 --- /dev/null +++ b/gamedata/textures/shaders/shaders_sunmask.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:95b57901f87c55483d3f4ea8bbd353ea8cbe758c03cd4aa05fef1bfe07f4158e +size 1398256 diff --git a/gamedata/textures/shaders/smaa/smaa_area_tex_dx10.dds b/gamedata/textures/shaders/smaa/smaa_area_tex_dx10.dds new file mode 100644 index 0000000..539ce3b --- /dev/null +++ b/gamedata/textures/shaders/smaa/smaa_area_tex_dx10.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d0a59111b18e67a66341bf94eeeb96caab0dc120e356bbfd934397a5b1830a73 +size 268928 diff --git a/gamedata/textures/shaders/smaa/smaa_area_tex_dx9.dds b/gamedata/textures/shaders/smaa/smaa_area_tex_dx9.dds new file mode 100644 index 0000000..c2719f3 --- /dev/null +++ b/gamedata/textures/shaders/smaa/smaa_area_tex_dx9.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0dd0dca9fd83a921097de29b6ffbf527425c8f36950c4325c1bbb6f293c9075e +size 358528 diff --git a/gamedata/textures/shaders/smaa/smaa_search_tex.dds b/gamedata/textures/shaders/smaa/smaa_search_tex.dds new file mode 100644 index 0000000..29c9ed0 --- /dev/null +++ b/gamedata/textures/shaders/smaa/smaa_search_tex.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:891e444b6dde7dd98f6902c805cd04e3469892aa1667c92f764d94789477ef3a +size 1152 diff --git a/gamedata/textures/shaders/snowmask/snow.dds b/gamedata/textures/shaders/snowmask/snow.dds new file mode 100644 index 0000000..a152ce7 --- /dev/null +++ b/gamedata/textures/shaders/snowmask/snow.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:644d02c3128380d008492b62fed1a88d0340d390e8cf09768192b72bb145781c +size 5592560 diff --git a/gamedata/textures/shaders/snowmask/snow.thm b/gamedata/textures/shaders/snowmask/snow.thm new file mode 100644 index 0000000..3596740 Binary files /dev/null and b/gamedata/textures/shaders/snowmask/snow.thm differ diff --git a/gamedata/textures/shaders/snowmask/snow_bump#.dds b/gamedata/textures/shaders/snowmask/snow_bump#.dds new file mode 100644 index 0000000..ad4b6fb --- /dev/null +++ b/gamedata/textures/shaders/snowmask/snow_bump#.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b78e47599d5bc4eb0aa1a124a9712f6441a783b33eaf19ba7fa4d3db575673ec +size 5592560 diff --git a/gamedata/textures/shaders/snowmask/snow_bump.dds b/gamedata/textures/shaders/snowmask/snow_bump.dds new file mode 100644 index 0000000..442582b --- /dev/null +++ b/gamedata/textures/shaders/snowmask/snow_bump.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e2d343f262ca22ef18d0ea009ae3875de5f92c3f784b1ec3ba388de04d78101 +size 5592560 diff --git a/gamedata/textures/shaders/snowmask/snow_bump.thm b/gamedata/textures/shaders/snowmask/snow_bump.thm new file mode 100644 index 0000000..7663b4e Binary files /dev/null and b/gamedata/textures/shaders/snowmask/snow_bump.thm differ diff --git a/gamedata/textures/ui/ui_flags.dds b/gamedata/textures/ui/ui_flags.dds new file mode 100644 index 0000000..0225fc3 --- /dev/null +++ b/gamedata/textures/ui/ui_flags.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2552600ce858b0d596cffeb61d03a0f4028b3a7236ac4bce42387615b00c6c68 +size 524416 diff --git a/gamedata/textures/ui/ui_grid_alt.dds b/gamedata/textures/ui/ui_grid_alt.dds new file mode 100644 index 0000000..dca8508 --- /dev/null +++ b/gamedata/textures/ui/ui_grid_alt.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5247991c6bf965499a09493db57066577626cf9023b714abd9fc2ae23388430 +size 16512 diff --git a/gamedata/textures/ui/ui_ix-ray_team_logo.dds b/gamedata/textures/ui/ui_ix-ray_team_logo.dds new file mode 100644 index 0000000..ab8ff57 --- /dev/null +++ b/gamedata/textures/ui/ui_ix-ray_team_logo.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:833ddfedc69c3c6e3f74ea8f8aeadb38385d10b30a99380b2f75f9e6c87457ac +size 4224 diff --git a/gamedata/textures/ui/ui_ix-ray_team_logo.thm b/gamedata/textures/ui/ui_ix-ray_team_logo.thm new file mode 100644 index 0000000..fe38cf0 Binary files /dev/null and b/gamedata/textures/ui/ui_ix-ray_team_logo.thm differ diff --git a/gamedata/textures/ui/ui_ixray_ex.dds b/gamedata/textures/ui/ui_ixray_ex.dds new file mode 100644 index 0000000..b1b8075 --- /dev/null +++ b/gamedata/textures/ui/ui_ixray_ex.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:715700218168858f192d062b020b31ade258314dd5dbdc6e440b4599b81455f8 +size 1048704 diff --git a/gamedata/textures/ui/ui_ixray_ex.thm b/gamedata/textures/ui/ui_ixray_ex.thm new file mode 100644 index 0000000..c75749e Binary files /dev/null and b/gamedata/textures/ui/ui_ixray_ex.thm differ diff --git a/gamedata/textures/ui/ui_ixray_mutant_portrets.dds b/gamedata/textures/ui/ui_ixray_mutant_portrets.dds new file mode 100644 index 0000000..803ae3f --- /dev/null +++ b/gamedata/textures/ui/ui_ixray_mutant_portrets.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5373f138a5adcac2ce1e1ab1a244fcc23cde55c6fc8db106f7dd676e1ebffb7c +size 524416 diff --git a/gamedata/textures/ui/ui_ixray_mutant_portrets.thm b/gamedata/textures/ui/ui_ixray_mutant_portrets.thm new file mode 100644 index 0000000..c75749e Binary files /dev/null and b/gamedata/textures/ui/ui_ixray_mutant_portrets.thm differ diff --git a/gamedata/textures/ui/ui_microphone.dds b/gamedata/textures/ui/ui_microphone.dds new file mode 100644 index 0000000..fd90933 --- /dev/null +++ b/gamedata/textures/ui/ui_microphone.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:29433d255d7887cf6170b29a0c86614097d7e044fe1608c4d3b0ff328e47cfe1 +size 5616 diff --git a/gamedata/textures/ui/ui_microphone.thm b/gamedata/textures/ui/ui_microphone.thm new file mode 100644 index 0000000..fe27fe4 Binary files /dev/null and b/gamedata/textures/ui/ui_microphone.thm differ diff --git a/gamedata/textures/ui/ui_voice.dds b/gamedata/textures/ui/ui_voice.dds new file mode 100644 index 0000000..5b1ad7e --- /dev/null +++ b/gamedata/textures/ui/ui_voice.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2c8f27f6c818953554b4be1627353244128ea0ad9323772a8dab6af9e1c7f18f +size 65664 diff --git a/gamedata/textures/ui/ui_voice.thm b/gamedata/textures/ui/ui_voice.thm new file mode 100644 index 0000000..e6e114e Binary files /dev/null and b/gamedata/textures/ui/ui_voice.thm differ diff --git a/gamedata/textures/water/water_caustic.01.dds b/gamedata/textures/water/water_caustic.01.dds new file mode 100644 index 0000000..c25c468 --- /dev/null +++ b/gamedata/textures/water/water_caustic.01.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:88d8b53b44267fb995c43b56d263987df7234e1ef8d64cf2a1afca17e742404d +size 174904 diff --git a/gamedata/textures/water/water_caustic.02.dds b/gamedata/textures/water/water_caustic.02.dds new file mode 100644 index 0000000..ee9b5d4 --- /dev/null +++ b/gamedata/textures/water/water_caustic.02.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f89466422f74e33901a42f49878c03f2a49abfb775a5446926abb0089d11663 +size 174904 diff --git a/gamedata/textures/water/water_caustic.03.dds b/gamedata/textures/water/water_caustic.03.dds new file mode 100644 index 0000000..9dd175c --- /dev/null +++ b/gamedata/textures/water/water_caustic.03.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:151f6be1b21dd2f7233084f4b7247028ae5fcb99e07e9ca1823a061094589540 +size 174904 diff --git a/gamedata/textures/water/water_caustic.04.dds b/gamedata/textures/water/water_caustic.04.dds new file mode 100644 index 0000000..024b827 --- /dev/null +++ b/gamedata/textures/water/water_caustic.04.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aa31d9b0eca6ea19a898725412ea84b2393e43a952023ba133baf92b5c5b21e6 +size 174904 diff --git a/gamedata/textures/water/water_caustic.05.dds b/gamedata/textures/water/water_caustic.05.dds new file mode 100644 index 0000000..bb038f2 --- /dev/null +++ b/gamedata/textures/water/water_caustic.05.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1f0058de3c532e0abfa50777101dcc0f671d88250bd0b125196505ef617302b4 +size 174904 diff --git a/gamedata/textures/water/water_caustic.06.dds b/gamedata/textures/water/water_caustic.06.dds new file mode 100644 index 0000000..0c7d932 --- /dev/null +++ b/gamedata/textures/water/water_caustic.06.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5befbf81ab86bac808be1315c19739d1b2b6ae659e30b61b601c0015f76eda8b +size 174904 diff --git a/gamedata/textures/water/water_caustic.07.dds b/gamedata/textures/water/water_caustic.07.dds new file mode 100644 index 0000000..2bcaac0 --- /dev/null +++ b/gamedata/textures/water/water_caustic.07.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc3916ba0fd00356f77ddfd0f587c9439f9654239dadef06bdaafed5a7bbec09 +size 174904 diff --git a/gamedata/textures/water/water_caustic.08.dds b/gamedata/textures/water/water_caustic.08.dds new file mode 100644 index 0000000..382e150 --- /dev/null +++ b/gamedata/textures/water/water_caustic.08.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:231a237dfa7e4ea90c009e770db5754168f6fe5c70c25fd5d265713b9607f68f +size 174904 diff --git a/gamedata/textures/water/water_caustic.09.dds b/gamedata/textures/water/water_caustic.09.dds new file mode 100644 index 0000000..57790ce --- /dev/null +++ b/gamedata/textures/water/water_caustic.09.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:18330356c0d172018eec7acd0695ea55db96273c3ddf56700e7536fb58fe06a4 +size 174904 diff --git a/gamedata/textures/water/water_caustic.10.dds b/gamedata/textures/water/water_caustic.10.dds new file mode 100644 index 0000000..0bbddff --- /dev/null +++ b/gamedata/textures/water/water_caustic.10.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c1e86b58a9b60651dd9062fc420d9058d7399e8b5f42b8afd095dd8a84067461 +size 174904 diff --git a/gamedata/textures/water/water_caustic.11.dds b/gamedata/textures/water/water_caustic.11.dds new file mode 100644 index 0000000..5b1ec2f --- /dev/null +++ b/gamedata/textures/water/water_caustic.11.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7dcc4bd7e4df4be1952e853061325982cd8cebba8439439ef4d72efc9767c41c +size 174904 diff --git a/gamedata/textures/water/water_caustic.12.dds b/gamedata/textures/water/water_caustic.12.dds new file mode 100644 index 0000000..ff49c8b --- /dev/null +++ b/gamedata/textures/water/water_caustic.12.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d5dd12b4e55652266edd53f577fcad08cbb778d4273c49534f774068e47aa366 +size 174904 diff --git a/gamedata/textures/water/water_caustic.13.dds b/gamedata/textures/water/water_caustic.13.dds new file mode 100644 index 0000000..703517d --- /dev/null +++ b/gamedata/textures/water/water_caustic.13.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5d90a882763de7aa54e2b21d7666266205aa5e6f60673d2dd6cb15b1f075440f +size 174904 diff --git a/gamedata/textures/water/water_caustic.14.dds b/gamedata/textures/water/water_caustic.14.dds new file mode 100644 index 0000000..945dc06 --- /dev/null +++ b/gamedata/textures/water/water_caustic.14.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3356eb53c1d19a7a39ae8a345dd7d1b6a8f2731cf97427d82ee330784b3d0521 +size 174904 diff --git a/gamedata/textures/water/water_caustic.15.dds b/gamedata/textures/water/water_caustic.15.dds new file mode 100644 index 0000000..bf3eeb7 --- /dev/null +++ b/gamedata/textures/water/water_caustic.15.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1eea4eda3a9696b32ff28f344d8767d071753767a9d4649f9cca2d2d71d897d1 +size 174904 diff --git a/gamedata/textures/water/water_caustic.16.dds b/gamedata/textures/water/water_caustic.16.dds new file mode 100644 index 0000000..6cf38a5 --- /dev/null +++ b/gamedata/textures/water/water_caustic.16.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:672338de728bd87e490982090061db4ca8c1303f2413f15a6a9fa64af1316dd4 +size 174904 diff --git a/gamedata/textures/water/water_caustic.17.dds b/gamedata/textures/water/water_caustic.17.dds new file mode 100644 index 0000000..334d716 --- /dev/null +++ b/gamedata/textures/water/water_caustic.17.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a17755f3743f3957dbb6a846baf7e352aae1d656c40170bf24da0cdcbcae031f +size 174904 diff --git a/gamedata/textures/water/water_caustic.18.dds b/gamedata/textures/water/water_caustic.18.dds new file mode 100644 index 0000000..8c46b0f --- /dev/null +++ b/gamedata/textures/water/water_caustic.18.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51074d78de0e83cb620eb8414dccf83d723062adf18918b91cc1db82a9e637cc +size 174904 diff --git a/gamedata/textures/water/water_caustic.19.dds b/gamedata/textures/water/water_caustic.19.dds new file mode 100644 index 0000000..4163f37 --- /dev/null +++ b/gamedata/textures/water/water_caustic.19.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2abaf680af3be1b66a89181651a8364bcbe6effa713c069669c548ceec11c79c +size 174904 diff --git a/gamedata/textures/water/water_caustic.20.dds b/gamedata/textures/water/water_caustic.20.dds new file mode 100644 index 0000000..35cb8e9 --- /dev/null +++ b/gamedata/textures/water/water_caustic.20.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce03adc91eabc4961cf66d3e07ef1fc98933257062e398c211a9dba2a2816f82 +size 174904 diff --git a/gamedata/textures/water/water_caustic.21.dds b/gamedata/textures/water/water_caustic.21.dds new file mode 100644 index 0000000..7f71dfb --- /dev/null +++ b/gamedata/textures/water/water_caustic.21.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:92292f5a2974e19407ca36d5b380287cb824d1db95049968e8102aac293e929a +size 174904 diff --git a/gamedata/textures/water/water_caustic.22.dds b/gamedata/textures/water/water_caustic.22.dds new file mode 100644 index 0000000..b18ab02 --- /dev/null +++ b/gamedata/textures/water/water_caustic.22.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d64858b87ad4decdab663ce7a88e2be6a1405c1f8b49560c1a35d70c9c530e6a +size 174904 diff --git a/gamedata/textures/water/water_caustic.23.dds b/gamedata/textures/water/water_caustic.23.dds new file mode 100644 index 0000000..e94c5a3 --- /dev/null +++ b/gamedata/textures/water/water_caustic.23.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:622c86568ff770bf72b398b386413676546bf394b6b6b98d225eab4e2795e556 +size 174904 diff --git a/gamedata/textures/water/water_caustic.24.dds b/gamedata/textures/water/water_caustic.24.dds new file mode 100644 index 0000000..ab2e9ed --- /dev/null +++ b/gamedata/textures/water/water_caustic.24.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a86d259e6ce7a2f0711b50e5e6285b8677c710cf1126f2cd27037bb2d183f27 +size 174904 diff --git a/gamedata/textures/water/water_caustic.25.dds b/gamedata/textures/water/water_caustic.25.dds new file mode 100644 index 0000000..e236c97 --- /dev/null +++ b/gamedata/textures/water/water_caustic.25.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aee4119bdd0a98106bbb9b3754885a25d9439d040461649d18d58c190c3f1608 +size 174904 diff --git a/gamedata/textures/water/water_caustic.26.dds b/gamedata/textures/water/water_caustic.26.dds new file mode 100644 index 0000000..bfa68e9 --- /dev/null +++ b/gamedata/textures/water/water_caustic.26.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:01f76bc24c01cebd2434a62cf5d865880766599c27267622c1b317874d137a96 +size 174904 diff --git a/gamedata/textures/water/water_caustic.27.dds b/gamedata/textures/water/water_caustic.27.dds new file mode 100644 index 0000000..4a7c47f --- /dev/null +++ b/gamedata/textures/water/water_caustic.27.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d8d841519cd878eafdab2f310fc24b5cf921017782e5b9e8e1b15856d9399fb8 +size 174904 diff --git a/gamedata/textures/water/water_caustic.28.dds b/gamedata/textures/water/water_caustic.28.dds new file mode 100644 index 0000000..d53cb08 --- /dev/null +++ b/gamedata/textures/water/water_caustic.28.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:25724244458012f102a040a3e7041d8d6d28b1e00f78b72bcb6f78b396a4c1cb +size 174904 diff --git a/gamedata/textures/water/water_caustic.29.dds b/gamedata/textures/water/water_caustic.29.dds new file mode 100644 index 0000000..86bcb12 --- /dev/null +++ b/gamedata/textures/water/water_caustic.29.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b2f01d011ef7e3ff13dd7d271a7c732595627d3426b974fe032aede95d6311e5 +size 174904 diff --git a/gamedata/textures/water/water_caustic.30.dds b/gamedata/textures/water/water_caustic.30.dds new file mode 100644 index 0000000..a34d17d --- /dev/null +++ b/gamedata/textures/water/water_caustic.30.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:94d556ed00789eb3cc0d6fc31da1370d5988614bc8cc9b8a20ec0c38cc22ad00 +size 174904 diff --git a/gamedata/textures/water/water_caustic.31.dds b/gamedata/textures/water/water_caustic.31.dds new file mode 100644 index 0000000..a78f74a --- /dev/null +++ b/gamedata/textures/water/water_caustic.31.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:91d66afbcc90901de3340c0cfd3f516c471db14775a74cbc3274d4575aff294f +size 174904 diff --git a/gamedata/textures/water/water_caustic.32.dds b/gamedata/textures/water/water_caustic.32.dds new file mode 100644 index 0000000..35c6fd6 --- /dev/null +++ b/gamedata/textures/water/water_caustic.32.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e632e4a251b4991809448253d1a731eefa99eb3c3cdaded7eb2ed47361bcf505 +size 174904 diff --git a/gamedata/textures/water/water_caustic.dds b/gamedata/textures/water/water_caustic.dds new file mode 100644 index 0000000..c25c468 --- /dev/null +++ b/gamedata/textures/water/water_caustic.dds @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:88d8b53b44267fb995c43b56d263987df7234e1ef8d64cf2a1afca17e742404d +size 174904 diff --git a/gamedata/textures/water/water_caustic.seq b/gamedata/textures/water/water_caustic.seq new file mode 100644 index 0000000..dbf57c4 --- /dev/null +++ b/gamedata/textures/water/water_caustic.seq @@ -0,0 +1,33 @@ +60 +water\water_caustic.01 +water\water_caustic.02 +water\water_caustic.03 +water\water_caustic.04 +water\water_caustic.05 +water\water_caustic.06 +water\water_caustic.07 +water\water_caustic.08 +water\water_caustic.09 +water\water_caustic.10 +water\water_caustic.11 +water\water_caustic.12 +water\water_caustic.13 +water\water_caustic.14 +water\water_caustic.15 +water\water_caustic.16 +water\water_caustic.17 +water\water_caustic.18 +water\water_caustic.19 +water\water_caustic.20 +water\water_caustic.21 +water\water_caustic.22 +water\water_caustic.23 +water\water_caustic.24 +water\water_caustic.25 +water\water_caustic.26 +water\water_caustic.27 +water\water_caustic.28 +water\water_caustic.29 +water\water_caustic.30 +water\water_caustic.31 +water\water_caustic.32 \ No newline at end of file diff --git a/gamedata/textures/water/water_caustic.thm b/gamedata/textures/water/water_caustic.thm new file mode 100644 index 0000000..b670a66 Binary files /dev/null and b/gamedata/textures/water/water_caustic.thm differ diff --git a/ixr_addons/e4s/addon.init b/ixr_addons/e4s/addon.init new file mode 100644 index 0000000..e69de29