Меню
Поиск модификаций
Авторизоваться
Категории раздела
Чернобыль [2]
Статьи про Чернобыль.
Обзоры книг серии S.T.A.L.K.E.R. [1]
Интересные обзоры книг всегда помогут помочь вам с дальнейшим выбором.
Работы фанатов [1]
В данном разделе вы можете разместить свою статью или какое-либо другое (литературное) произведение.
Настройка выделенных серверов [0]
КаСтатьи по настройке выделенных серверов.
Интервью [0]
Захватывающие интервью, которые помогут вам разобраться в чем-либо или просто подарят вам несколько приятных минут чтения.
Уроки модостроения [20]
Прохождение S.T.A.L.K.E.R. [2]
Эти статьи помогут вам пройти S.T.A.L.K.E.R. полностью!
Мини-профиль

Гость)

Сообщения:


Привет, сталкер! Заплутал?
Проходи, садись.Cогреем.
Ну что стоишь то как вкопанный?!
Давай уже проходи, чувствуй
себя как дома!
Пройти регистрацию
Войти к нам
Погода в Чернобыле
Опрос
Ответите ли вы на этот вопрос? :D
Всего ответов: 41
Группировки
Сталкерские сайты
Stalker-Book.com
S.T.A.L.K.E.R. LAST EMISSION
Друзья
StalkerIdeas.com
Stalkeram.ru
Snipers-Elite
Фан Сайт Игры S.T.A.L.K.E.R.
Наш баннер
Код баннера можно найти на нашем основном форуме "Я-Сталкер"
Главная » Статьи » Уроки модостроения

Новое оружие
В этой статье мы научимся создавать новые образцы вооружения. Для начала, мы будем использовать модели из оригинальной игры. Если вы хотите создать оружие, имеющее уникальный внешний вид, ознакомьтесь с уроком по созданию моделей.

Добавим в игру АК101.

Внешний вид

Позаботимся о том, чтобы наше оружие отличалось внешне от того же АК74.
Текстуры

Нарисуем для оружия новую текстуру. Подробно останавливаться на этом процессе не буду, ознакомьтесь с примером, приведенным здесь. Итак, основываясь на текстуре АК74, мы сделали вот такую текстуру:



Файлы текстур мы назвали:
wpn_ak10.dds
wpn_ak10_bump#.dds
wpn_ak10_bump.dds
Модели

Новых моделей мы пока делать не станем, просто воспользуемся дублированными моделями от АК74. Скопируем папку:

gamedata\meshes\weapons\ak47\

И назовем её ak-101. Содержимое, соответственно, переименуем в:
wpn_ak101.ogf
wpn_ak101_hud.ogf.

Теперь пропишем в эти модели созданные нами текстуры. Способ описан здесь.
Иконки

Добавим в игру иконки, которыми оружие будет отображаться в инвентаре. Способ подробно описан здесь.

Вот, что получилось в конечном итоге:


Конфиги

Новое оружие мы будем делать на базе оригинальных конфигурационных файлов. Создадим АК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 (как это сделать?), расширьте ассортимент торговцев (как это сделать? Смотреть в уроке "Редактирование торговцев").

Скачать статью в .txt формате: http://ya-stalker.ucoz.ru/modm/novoe_oruzhie.txt
Категория: Уроки модостроения | Добавил: Winston (23.03.2011)
Просмотров: 1442 | Теги: Создать оружие в сталкере, Модостроение Сталкер, Как создать свой мод?, сталкер модострой | Рейтинг: 5.0/1
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]

Яндекс.Метрика Рейтинг@Mail.ruRambler's Top100Счетчик и проверка тИЦ и PR

Авторское право на игру и использованные в ней материалы принадлежат GSC Game World.
Запрещено копирование любых материалов с данного сайта..
Copyright Ya-STALKER.ucoz.ru PORTAL © 2010-2011. Design by zdq team. Видоизменено by Winston. 
Используются технологии uCoz