• Страница 1 из 1
  • 1
Архив - только для чтения
Форум » Архив » Устаревшие темы » [ЗП] Создание реактивных выстрелов (Автор: WincentDark69)
[ЗП] Создание реактивных выстрелов
Российская Федерация  Stalker_Monstr
Четверг, 14.11.2013, 16:59 | Сообщение # 1
Статус:
Отмычка:
Сообщений: 194
Награды: 8
Регистрация: 30.01.2013

Идея конечно попахивает бредом. Хотя в моде над которым сейчас тружусь я её реализовал.
Суть такого нововведения в том что бы подстволшьник мог стрелять реактивными гранатами-выстрелами (аля ОГ-7В)

Приступим!!!
1) Открываем weapons.ltx и копируем секцию описания выстрела M-203:
Цитата
[ammo_m209]:ammo_base
GroupControlSection = spawn_group
discovery_dependency =
$spawn = "weapons\ammo\ammo_m209" ; option for Level Editor
class = S_M209
cform = skeleton
visual = dynamics\weapons\wpn_ammo\ammo_m209.ogf
description = ammo-m209_descr
slot = -1
$prefetch = 64

cost = 3500

box_size = 1

inv_name = ammo-m209
inv_name_short = ammo-m209_s
inv_weight = 0.1

inv_grid_width = 1
inv_grid_height = 1
inv_grid_x = 5
inv_grid_y = 13

kill_msg_x = 61
kill_msg_y = 232
kill_msg_width = 19
kill_msg_height = 22

k_dist = 1
k_disp = 1
k_hit = 1
k_impulse = 1
k_pierce = 0.25
k_ap = 0.25
impair = 1
buck_shot = 0
tracer = off
wm_size = 0.05

fake_grenade_name = wpn_fake_missile2

;могут ли боеприпасы быть неограниченными : 1 - могут, 0 - не могут
can_be_unlimited = true ;false

И перепишем её:
Цитата
[ammo_m209rocket]:ammo_base
GroupControlSection = spawn_group
discovery_dependency =
$spawn = "weapons\ammo\ammo_m209rocket" ; option for Level Editor
class = S_M209
cform = skeleton
visual = dynamics\weapons\wpn_ammo\ammo_m209.ogf
description = ammo-m209rocket_descr
slot = -1
$prefetch = 64

cost = 7500

box_size = 1

inv_name = ammo-m209rocket
inv_name_short = ammo-m209rocket_s
inv_weight = 0.15

inv_grid_width = 1
inv_grid_height = 1
inv_grid_x = 5
inv_grid_y = 13

kill_msg_x = 61
kill_msg_y = 232
kill_msg_width = 19
kill_msg_height = 22

k_dist = 1
k_disp = 1
k_hit = 1
k_impulse = 1
k_pierce = 0.25
k_ap = 0.25
impair = 1
buck_shot = 0
tracer = off
wm_size = 0.05

fake_grenade_name = wpn_fake_missile13

;могут ли боеприпасы быть неограниченными : 1 - могут, 0 - не могут
can_be_unlimited = true ;false

Как видите здесь мы поменяли только системное имя, ссылки на описание, вес, стоимость и ссылку на fake_missile. А вот это и есть основа всего =)
Путем долгих разборов выяснилось что подствольник как таковой не стреляет, а лишь запускает функцию fake_missile c определенными парраметрами.
Следовательно, в этом же файле чуть ниже мы видим описания конкретных fake'ов. так вот после всех родных fake'ов мы вставим вот такой вот:
Цитата
[wpn_fake_missile13]:identity_immunities,default_weapon_params
$prefetch = 32
visual = dynamics\weapons\wpn_ammo\ammo_m209.ogf
cform = skeleton
class = G_FAKE

inv_weight = 0

cost = 150

blast = 2.00 ;Взрывная волна(значение влияет на эффект размазанности если ГГ попал в радиус)
blast_r = 15 ;Радиус взрывной волны
blast_impulse = 350 ;Сила с которой волна раскидывает физические объекты
;delete
blast_impulse_factor = 1 ;Судя по всему наличие самой волны (типа 1=true 0=false)

frags = 30 ;Осколки(тут прописано количество онных)
frags_r = 20 ;На какое растояние полетят осколки(желательно делать больше blast_r)
frag_hit = 0.50 ;Повреждение наносимое одним осколком
frag_hit_impulse = 50 ;Сила с которой осколок толкнет физический объект

hit_type_blast = explosion ;Тип урона взрывной волны
hit_type_frag = fire_wound ;Тип урона осколков

up_throw_factor = 0.7 ;Х.з.

;trail = weapons\rpg_trail_01, weapons\rpg_trail_02

explode_particles = explosions\explosion_01 ;Визуал взрыва

light_color = 1.9,1.4,0.5 ;Цвет вспышки при взрыве
light_range = 14.0 ;Яркость вспышки
light_time = 0.85 ;Время свечения(60.0 = 10сек)

ph_mass = 5 ;Физическая масса
;engine_f = 530
;engine_u = 90

jump_height = 1 ;Подпрыгивание гранаты перед взрывом

;трассы от осколков
fragment_speed = 100 ;Скорость полёта осколков

wm_size = 0.05 ;Размер отверстия от осколка(на стенах и т.д.)
;wallmarks
wallmark_section = explosion_marks
explode_duration = 5 ;подолжительность взрыва (с)

;звуки
snd_explode = weapons\f1_explode ;Звук взрыва
snd_fly_sound = weapons\rocket_fly ;Звук полета(работы двигателя)

;свойства которые читаются, но не используются
inv_name = ammo-vog-25p
inv_name_short = ammo-vog-25p
inv_weight = .2

inv_grid_width = 1
inv_grid_height = 1
inv_grid_x = 19
inv_grid_y = 9

kill_msg_x = 38
kill_msg_y = 233
kill_msg_width = 21
kill_msg_height = 22

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Свойства CustomRocket
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
engine_present = true ;присутствует ли в ракете двигатель
engine_work_time = 3000 ;время работы двигателя (в милисекундах)
engine_impulse = 300 ;разгонная сила двигателя
engine_impulse_up = 133,906 ;подъёмная сила двигателя( установлена сила при которой снаряд немного опускается)
engine_particles = weapons\rpg_trail_00 ;визуал работы двигателя
lights_enabled = true ;свет вокруг ракеты, во время полета
trail_light_color = 0.6,0.5,0.3 ;цвет освещения во время полёта
trail_light_range = 8.0 ;яркость освещения во время полета
force_explode_time = 10000 ;время в милисекундах через которое снаряд взорвется не достигнув цели(типа если пальнуть вверх)

Сохраняем weapons.ltx
2) Добавление к оружию. Откроем для примера w_fn2000.ltx найдем строку:
Цитата
grenade_class = ammo_m209

И поменяем на:
Цитата
grenade_class = ammo_m209, ammo_m209rocket

Сохраняем w_fn2000.ltx
3) Идем в gamedata\configs\text\rus и открываем st_items_weapons.xml
В нем по аналогии создаем секции содержащие:
Цитата
ammo-m209rocket_descr ;Описание
ammo-m209rocket ;Имя в инвентаре
ammo-m209rocket_s ;Имя в слоте

Вот и всё. Теперь если дать ГГ ФН-2000 и эти гранаты он сможет с лёгкостью разделаться с любым врагом =)

Автор: WincentDark69
  Злобная реклама
Четверг, 14.11.2013, 16:59
Статус:
Сообщений: 666
Регистрация: 30.01.2013
Российская Федерация  RETRIX
Четверг, 14.11.2013, 18:45 | Сообщение # 2
AP-Production
Статус:
Ветеран:
Сообщений: 9439
Награды: 12
Регистрация: 24.08.2011

Stalker_Monstr, таким способом можно лишь повеселиться и провести вечер. По сути реактивные гранаты в ПГ - лишнее и в игре не нужно.
Российская Федерация  Stalker_Monstr
Четверг, 14.11.2013, 18:48 | Сообщение # 3
Статус:
Отмычка:
Сообщений: 194
Награды: 8
Регистрация: 30.01.2013

RETRIX, Если отличная фантазия, то, каждому предмету, можно найти свое место. Например: Можно использовать для квестов.
Российская Федерация  RETRIX
Четверг, 14.11.2013, 18:49 | Сообщение # 4
AP-Production
Статус:
Ветеран:
Сообщений: 9439
Награды: 12
Регистрация: 24.08.2011

Stalker_Monstr, ну, в принципе конечно можно. Как например "Миниган" или транспорт в некоторых модах используют для какого-нибудь квеста, один раз за игру.
Российская Федерация  Stalker_Monstr
Четверг, 14.11.2013, 18:51 | Сообщение # 5
Статус:
Отмычка:
Сообщений: 194
Награды: 8
Регистрация: 30.01.2013

RETRIX, Солидарен, один раз можно использовать.
Форум » Архив » Устаревшие темы » [ЗП] Создание реактивных выстрелов (Автор: WincentDark69)
  • Страница 1 из 1
  • 1
Поиск: