Stalker Clear Sky Информация [105] | Сталкер Видео [302] | Сталкер Зов Припяти информация [133] | Первый литконкурс от stalker-gsc.ru [69] |
Фан рассказы [2616] | Стихи, песни, поэмы [727] | Интервью [140] | Чернобыль [304] |
Сталкер - основное [119] | Сталкинг [39] | Превью, обзоры игр Stalker [34] | Рецензии на игру Сталкер [30] |
Разное [333] | Интересные игры [30] | Каталог [407] | Второй литконкурс от stalker-gsc.ru [112] |
Обзор модификаций [44] |
Stalker 2 » Статьи » Разное |
15:49:56 Создание нового оружия | |
Добавим в игру АК101. Содержание [убрать] 1 Внешний вид 1.1 Текстуры 1.2 Модели 1.3 Иконки 2 Конфиги 2.1 Свойства оружия 2.2 Регистрация 3 Добавление в игру 4 Авторы [править]Внешний вид Позаботимся о том, чтобы наше оружие отличалось внешне от того же АК74. [править]Текстуры Нарисуем для оружия новую текстуру. Подробно останавливаться на этом процессе не буду, ознакомьтесь с примером, приведенным здесь. Итак, основываясь на текстуре АК74, мы сделали вот такую текстуру: 500px-AK101 texture.jpg Файлы текстур мы назвали: wpn_ak10.dds wpn_ak10_bump#.dds wpn_ak10_bump.dds [править]Модели Новых моделей мы пока делать не станем, просто воспользуемся дублированными моделями от АК74. Скопируем папку: gamedata\meshes\weapons\ak74\ И назовем её ak-101. Содержимое, соответственно, переименуем в: wpn_ak101.ogf wpn_ak101_hud.ogf. Теперь пропишем в эти модели созданные нами текстуры. Способ описан здесь. P.S. от Кепа: Вобще, если вы создаёте новое оружие на основе старой модели, то удобней будет прописывать его через файл gamedata\config\misc\unique_items.ltx (в Тени чернобыля). В Чистом небе уникальные стволы лежат в файлах оружия. Смысл в том, что вам не нужно бутет переписывать все значения оружия в новый файл, а просто надо добавить ссылки на новые текстуры и описания, и перечислить свойства, которые Вы хотите заменить. Кроме того, создавая отдельный файл модели для нового оружия Вы тупо загружаете одну и туже информацию в память по второму кругу (это нехорошо, да). Всё остальное надо делать также как написано далее. Если создаете оружие с новой моделью то обязательно не оставляйте её без изменений.Почему-то в игре не может быть двух оружий с одинаковыми моделями.И еще-если вы создаете прототипное оружие(меняете часть конфигов) то обязательно кладите конфиг в соответствующий файл(в ЧН и ЗП это файл с оружием-прототипом,а в ТЧ unique_items) иначе при загрузке игра будет вылетать,примерно так: argument:can not find section 'название вашего оружия' [править]Иконки Добавим в игру иконки, которыми оружие будет отображаться в инвентаре. Способ подробно описан здесь. Вот, что получилось в конечном итоге: 500px-AK101 icon.jpg [править]Конфиги Новое оружие мы будем делать на базе оригинальных конфигурационных файлов. Создадим АК101 на базе конфигов АК74. [править]Свойства оружия Скопируем файл из папки: gamedata\config\weapons\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 (как это сделать?), расширьте ассортимент торговцев (как это сделать?). А вот как оно будет выглядеть в игре: Russian Guns 3.jpeg P.S. При создании нового оружия можно допустить некоторые ошибки в конфиге, что приведёт к вылету игры. При таком случае сразу после вылета игры заходим в любой текстовый редактор и нажимаем клавиши Ctrl+V (вставить) и внизу можно увидеть из-за какой ошибки вылетела игра, а там уже дело техники исправить ошибку... Expression : fatal error Function : CModelPool::Instance_Load File : E:\stalker\patch_1_0004\xr_3da\xrRender\ModelPool.cpp Line : 111 Description : <no expression> Arguments : Can't find model file 'weapons\gaussmod\wpn_gauss_hud.ogf'. В данном примере видно, что либо вы не создали папку с необходимой моделью оружия, либо неправильно прописан путь к нужному файлу... (Чтобы в игре название и описание оружия были не от АК-74 а от нашей АК-101 делаем как написано в этой статье, всё начиная с "И description = enc_equipment_food_bread1 на description = enc_equipment_food_bread1_test" вам понадобится.) Информацию о оружии можно найти здесь. АК-101 - Автомат Калашникова АК-101 является экспортной модификацией штатного автомата Российской армии АК-74М. Главным (и фактически единственным) отличием АК-101 от АК-74М является калибр - автомат "сотой" серии использует патроны калибра 5.56мм (5.56х45 НАТО) и соответствующие магазины, в остальном автоматы идентичны. [править]Авторы Статья создана: BAC9-FLCL Статья подправлена: Хемуль04 По материалам мода Russian Guns за авторством: Tony lez0 Когда будете прописыватьв конфиге значения "inv_grid_y" и "inv_grid_x" имейте в виду, что отсчет по сетке идет с верхнего левого угла и указывать нужно верхний левый угол картинки, которая должна отображатся в инвентаре. То есть координаты самого первого угла будут 0;0. Самая первая винтовка в файле ...\S.T.A.L.K.E.R\gamedata\textures\ui\ui_icon_equipment.dds это - СВД. И если вы посмотрите ее конфигурационный файл то увидете, что там указаны значения inv_grid_x = 0 inv_grid_y = 0. Отсчет по оси X идет по горизонтали с лева на право, а по оси Y - сверху вниз по возрастающей. Но считать с начала сетки - очень не удобно, поэтому вычисляйте координаты вашего обьекта по известным координатам уже существующего и реально правильно отображаемого файла в игре. Например мы имеем inv_grid_x= 5 inv_grid_y= 9 для fn2000(координаты верхнего левого угла) и мы хотим узнать координаты гранатф ф1, которая находится рядом. Для этого удобно использовать фотошоп с сеткой 50 на 50 пикселей. (как ее сделать описано по ссылке в статье к которой написана эта поправка.) И так мы видим что граната находится сразу справа порсле винтовки. То есть на 4-й клетке после квадрата угла винтовки без его учета. Она находится спраа, а значит нужно по оси X к 5 прибавить 4, и получится 9. По оси Y координтаы не изменились так как они находятся на одной линии с винтовкой. Таким образом получает коордитаны гранаты 9 по Х и 9 по Y. Если мы посмотрим конфиг гранаты то увидим там "inv_grid_x= 9" "inv_grid_y= 9". То что и соответствует тому, что мы высчитали. Удачи. Автор: BAC9-FLCL, Хемуль04, Tony, lez0 | |
Источник
|
Дата: 09.03.2014 | Категория: Разное |
Просмотров: 3197 Добавил: Mecheniy12 | Рейтинг: 3.0/2 |
Комментарии к материалу Создание нового оружияВсего комментариев: 1 | |
Рекомендуем:
МЕНЮ
Топ статей
[1002143] Сталкер Зов Припяти...
[955816] Прохождение Сталкер...
[564798] Прохождение Сталкер...
[444477] Сталкер Зов Припяти...
[148569] Lost Alpha - Секрет...
[146717] КАК ПОДСТРОИТЬ ИГРУ...
[124472] S.T.A.L.K.E.R.: Апо...
[115877] Прохождение Stalker...
[114371] Концовка Сталкер Чи...
[98373] Черный Сталкер 2 Зо...
[98031] Прохождение S.T.A.L...
[76220] Мутанты Зоны часть ...
[74871] 100 цитат из книг с...
[73253] Все группировки: Н...
[73199] Мутанты Зоны часть ...
[72901] Экзоскелет
[70490] Сталкер Тайные троп...
[70206] Аномалии - Сталкер ...
[69369] Сердце Оазиса
[63343] Прохождение Сталкер...
[955816] Прохождение Сталкер...
[564798] Прохождение Сталкер...
[444477] Сталкер Зов Припяти...
[148569] Lost Alpha - Секрет...
[146717] КАК ПОДСТРОИТЬ ИГРУ...
[124472] S.T.A.L.K.E.R.: Апо...
[115877] Прохождение Stalker...
[114371] Концовка Сталкер Чи...
[98373] Черный Сталкер 2 Зо...
[98031] Прохождение S.T.A.L...
[76220] Мутанты Зоны часть ...
[74871] 100 цитат из книг с...
[73253] Все группировки: Н...
[73199] Мутанты Зоны часть ...
[72901] Экзоскелет
[70490] Сталкер Тайные троп...
[70206] Аномалии - Сталкер ...
[69369] Сердце Оазиса
[63343] Прохождение Сталкер...
Последние статьи
- Тот самый S.T.A.L.K.E.R.: р...
- Сталкер Зов Припяти - рецен...
- Моды к Stalker Clear Sky
- Sigerous 2.0/Обзор от ATM-C...
- Встреча с Олегом Яворским
- Отчет о плейтесте "Зов...
- Прохождение Сталкер: Зов Пр...
- Сталкер Зов Припяти прохожд...
- Сталкер Зов Припяти - прохо...
- Обзор OGSM 1.7 Final
- Обзор модификации R.M.A. + ...
- Первое в мире превью Stalke...
- Press Tour 26.10.2006 (част...
- Press Tour 25.10.2006 (част...
- Акция "Сталкер-Солидар...
- Сталкер Зов Припяти - рецен...
- Моды к Stalker Clear Sky
- Sigerous 2.0/Обзор от ATM-C...
- Встреча с Олегом Яворским
- Отчет о плейтесте "Зов...
- Прохождение Сталкер: Зов Пр...
- Сталкер Зов Припяти прохожд...
- Сталкер Зов Припяти - прохо...
- Обзор OGSM 1.7 Final
- Обзор модификации R.M.A. + ...
- Первое в мире превью Stalke...
- Press Tour 26.10.2006 (част...
- Press Tour 25.10.2006 (част...
- Акция "Сталкер-Солидар...
Люди говорят
STALKER96kor ответил в Wos Team расширяется (21:29:48)
Жаль мод так и не вышел...были времена
newtime ответил в GSC Game World перенесла выход S.T.A.L.K.E.R. 2: Heart of Chernobyl на конец года (19:02:08)
привет)
Vampire388235 ответил в GSC Game World перенесла выход S.T.A.L.K.E.R. 2: Heart of Chernobyl на конец года (20:59:14)
Шло 24 декабря 2023 года, а сталкер 2 все еще только в надеждах
DiegoLidabo ответил в DB Packer 1.0 (09:11:16)
Нет страницы для скачивания
avast ответил в GSC Game World перенесла выход S.T.A.L.K.E.R. 2: Heart of Chernobyl на конец года (14:48:05)
Что-то мне кажется она вообще не выйдет... Григорович опять чего-нибудь замутит мутное...
Жаль мод так и не вышел...были времена
newtime ответил в GSC Game World перенесла выход S.T.A.L.K.E.R. 2: Heart of Chernobyl на конец года (19:02:08)
привет)
Vampire388235 ответил в GSC Game World перенесла выход S.T.A.L.K.E.R. 2: Heart of Chernobyl на конец года (20:59:14)
Шло 24 декабря 2023 года, а сталкер 2 все еще только в надеждах
DiegoLidabo ответил в DB Packer 1.0 (09:11:16)
Нет страницы для скачивания
avast ответил в GSC Game World перенесла выход S.T.A.L.K.E.R. 2: Heart of Chernobyl на конец года (14:48:05)
Что-то мне кажется она вообще не выйдет... Григорович опять чего-нибудь замутит мутное...
Последнее на форуме
Статистика
Онлайн всего: 18
Гостей: 18
Сталкеров: 0