На информационном ресурсе применяются рекомендательные технологии (информационные технологии предоставления информации на основе сбора, систематизации и анализа сведений, относящихся к предпочтениям пользователей сети "Интернет", находящихся на территории Российской Федерации)

Черный Сталкер

28 подписчиков

Новое оружие

Новое оружие мы будем делать на базе оригинальных конфигурационных файлов. Создадим АК101 на базе конфигов АК74.

Свойства оружия

 

Скопируем файл из папки:

 

gamedata\config\ak74.ltx

 

Назовем его ak101.ltx.

 

 

Отредактируем свойства по своему усмотрению (но лучше - в соответствии с достоверной информацией о характеристиках оружия, т.к. АК101 - всё-таки оружие реально существующее). В данном случае конфиг был составлен таким образом:

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

[wpn_ak101]:identity_immunities

GroupControlSection = spawn_group

discovery_dependency =

$spawn = "weapons\ak-101" ; name and section in level editor

$npc = on

$prefetch = 8

scheduled = off ;[] option for ALife Simulator

cform = skeleton

class = WP_AK74 ; class of the weapon that corresponding to CPP class

min_radius = 30 ; [] for AI

max_radius = 100 ; [] for AI

description = enc_weapons1_wpn-ak101

 

ef_main_weapon_type = 2

ef_weapon_type = 6

 

;-----------------------------------------------------------------------------------

holder_range_modifier = 1.0 ; во сколько раз увеличивается eye_range

holder_fov_modifier = 0.7 ; во сколько раз увеличивается eye_fov

;-----------------------------------------------------------------------------------

 

cost = 2;4000

weapon_class = assault_rifle

 

ammo_limit = 210

ammo_elapsed = 30

 

ammo_mag_size = 30

fire_modes = 1, -1

 

ammo_class = ammo_5.56x45_ss190, ammo_5.56x45_ap

grenade_class = ammo_vog-25, ammo_vog-25p

launch_speed = 0

 

hand_dependence = 1

single_handed = 0

 

slot = 2

animation_slot = 2

inv_name = wpn-ak101

inv_name_short = wpn-ak101

inv_weight = 3.3

 

inv_grid_width = 5

inv_grid_height = 2

inv_grid_x = 11

inv_grid_y = 29

 

kill_msg_x = 0

kill_msg_y = 28

kill_msg_width = 84

kill_msg_height = 28

 

 

;-----------------------------------------------------------------------------------

;params of weapon recoil

 

fire_dispersion_base = 0.15;0.2

control_inertion_factor = 1.1f;1.25f

 

;отдача

cam_relax_speed =6;5;3.5; 0.15

cam_dispersion = 0.1;0.15

cam_dispersion_inc = 0.2;0.3

cam_dispertion_frac = 0.8;0.9

cam_max_angle = 10.0

cam_max_angle_horz = 20.0

cam_step_angle_horz = 1.1;1

 

fire_dispersion_condition_factor = 5.7;5

misfire_probability = 0.0055;0.003

misfire_condition_k = 0.06;0.05

condition_shot_dec = 0.00035;0.0001

;-----------------------------------------------------------------------------------

 

fire_point = 0,0.216,0.638

fire_point2 = 0,0.216,0.730

 

flame_particles = weapons\generic_weapon05

smoke_particles = weapons\generic_shoot_00

grenade_flame_particles = weapons\generic_weapon01

 

shell_point = 0,0.216,0.174

shell_particles = weapons\generic_shells

 

PDM_disp_base = 1.0

PDM_disp_vel_factor = 1.3

PDM_disp_accel_factor = 1.3

PDM_crouch = 1.0

PDM_crouch_no_acc = 1.0

 

; ttc

hit_power = 0.36, 0.4, 0.43, 0.46

hit_impulse = 140

hit_type = fire_wound

fire_distance = 1700

bullet_speed = 1000

rpm = 750

 

use_aim_bullet = true

time_to_aim = 1.0

 

;params when silencer is attached

;similar to corresponding params without prefix silencer_

 

silencer_hit_power = 0.38

silencer_hit_impulse = 120

silencer_fire_distance = 250

silencer_bullet_speed = 600

 

hud = wpn_ak101_hud

 

position = -0.026,-0.172,0

orientation = 0,0,0

 

;--STRAP PARAMETERS-----------------------------------------------------------------

strap_position = -0.16,-0.40,0.15

strap_orientation = -10,-5,10

strap_bone0 = bip01_spine2

strap_bone1 = bip01_spine1

 

visual = weapons\ak-101\wpn_ak101

 

light_color = 0.6,0.5,0.3

light_range = 5

light_var_color = 0.05

light_var_range = 0.5

light_time = 0.2

 

ph_mass = 5

 

;addons

scope_status = 2

silencer_status = 2

grenade_launcher_status = 0;2

 

zoom_enabled = true

scope_zoom_factor = 50

 

scope_name = wpn_addon_scope

scope_x = 42

scope_y = 3

silencer_name = wpn_addon_silencer

silencer_x = 218

silencer_y = 13

grenade_launcher_name = wpn_addon_grenade_launcher

grenade_launcher_x = 116

grenade_launcher_y = 23

 

;sounds (name of the sound, volume (0.0 - 1.0), delay (sec))

snd_draw = weapons\ak74_draw

snd_holster = weapons\generic_holster

snd_shoot = weapons\ak74_shot_0

snd_shoot1 = weapons\ak74_shot_1

snd_shoot2 = weapons\ak74_shot_2

snd_shoot3 = weapons\ak74_shot_3

snd_empty = weapons\gen_empty, 0.5

snd_reload = weapons\ak74_reload, 0.7, 0.35

snd_shoot_grenade = weapons\gen_grenshoot

snd_reload_grenade = weapons\gen_grenload, 1.0, 0.8

snd_switch = weapons\groza_switch, 1.0, 0.5

 

 

;params when silencer is attached

;similar to corresponding params without prefix silencer_

 

;silencer_flame_particles = weapons\generic_weapon01

silencer_smoke_particles = weapons\generic_shoot_00

 

snd_silncer_shot = weapons\w_ak74_shot1

 

silencer_light_color = 0.6,0.5,0.3

silencer_light_range = 0.01

silencer_light_var_color = 0.05

silencer_light_var_range = 0.5

silencer_light_time = 0.2

 

 

;-----------------------------------------------------------------------------

;-- HUD DESCRIPTION

;-----------------------------------------------------------------------------

 

[wpn_ak101_hud]

allow_inertion = true

 

;similar to corresponding params in weapon section but for 1st person view

 

shell_point = -0.065000,0.000000,-0.045000

shell_dir = 0.0, 1.0, 0.0

 

fire_point = 0.09,0.020,-0.06

fire_point2 = 0.30, 0.00, 0.05

fire_bone = wpn_body

 

orientation = 0, 0, 0

position = 0, 0, 0.05

visual = weapons\ak-101\wpn_ak101_hud

 

grenade_bone = wpn_grenade

 

; animation names

 

anim_idle = idle

anim_idle_aim = idle_aim

anim_reload = reload

anim_draw = draw_wo_gl

anim_holster = holster_wo_gl

anim_shoot = shoot

 

; animation names

; attached grenade launcher [GRENADE fire mode]

anim_idle_g = idle_grenade

anim_idle_g_aim = idle_g_aim

anim_reload_g = reload_grenade

anim_shoot_g = shoot_grenade

anim_switch_grenade_on = switch_grenade

anim_switch_grenade_off = switch_grenade_off

anim_draw_g = draw_grenade_mode

anim_holster_g = holster_grenade_mode

 

; attached grenade launcher [NORMAL fire mode]

anim_idle_gl = idle_w_gl

anim_idle_gl_aim = idle_w_gl_aim

anim_reload_gl = reload_w_gl

anim_draw_gl = draw_w_gl

anim_holster_gl = holster_w_gl

anim_shoot_gl = shoot_w_gl

anim_idle_sprint = idle_sprint

 

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;HUD offset in zoom mode (to all)

;(use CONSOLE: hud_adjust_mode 0,1,2, then keys WSADQE and P to show current value in console)

 

zoom_offset = -0.112400,0.016800,-0.115000

zoom_rotate_x = 0.000200

zoom_rotate_y = 0.017500

 

zoom_hide_crosshair = true

 

 

; same as above, but for attached grenade launcher for

; in NORMAL shoot mode

 

grenade_normal_zoom_offset = -0.112500,0.014000,0.000000

grenade_normal_zoom_rotate_x = -0.000900

grenade_normal_zoom_rotate_y = 0.017200

 

; same as above, but for attached grenade launcher for

; in GRENADE mode

 

grenade_zoom_offset = -0.039600,-0.433100,0.000000

grenade_zoom_rotate_x = -0.538700

grenade_zoom_rotate_y = -0.033800

Регистрация

 

Итак, с характеристиками разобрались. Теперь зарегистрируем оружие в файле weapons.ltx. Для этого пропишем в него строку следующего вида:

#include "w_ak101.ltx"

 

Также, необходимо прописать модели, используемые для отображения оружия, в prefetch.ltx:

[...]

weapons\abakan\wpn_abakan

weapons\abakan\wpn_abakan_hud

weapons\ak-101\wpn_ak101

weapons\ak-101\wpn_ak101_hud

weapons\ak74\wpn_ak74

weapons\ak74\wpn_ak74_hud

[...]

 

Так же не забудте в файле mp_ranks.ltx прописать после available_items (которое внизу) прописать название своего оружия. Это предотвратит вылет при убийстве ГГ.

Добавление в игру

 

Осталось добавить оружие в игру.

 

Выдайте его некоторым NPC , расширьте ассортимент торговцев.

Картина дня

наверх