Главная > Модостроение > Создание нового оружия

Создание нового оружия


8-08-2011, 07:30. Разместил: Relax
Добавим в игру АК101.


Внешний вид

Позаботимся о том, чтобы наше оружие отличалось внешне от того же АК74.
Текстуры
Нарисуем для оружия новую текстуру. Подробно останавливаться на этом процессе не буду, ознакомьтесь с примером, приведенным здесь. Итак, основываясь на текстуре АК74, мы сделали вот такую текстуру:
Создание нового оружия
Файлы текстур мы назвали:
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.


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

.S. от Кепа: Вобще, если вы создаёте новое оружие на основе старой модели, то удобней будет прописывать его через файл gamedata\config\misc\unique_items.ltx (в Тени чернобыля). В Чистом небе уникальные стволы лежат в файлах оружия. Смысл в том, что вам не нужно бутет переписывать все значения оружия в новый файл, а просто надо добавить ссылки на новые текстуры и описания, и перечислить свойства, которые Вы хотите заменить. Кроме того, создавая отдельный файл модели для нового оружия Вы тупо загружаете одну и туже информацию в память по второму кругу (это нехорошо, да). Всё остальное надо делать также как написано далее.

Если создаете оружие с новой моделью то обязательно не оставляйте её без изменений.Почему-то в игре не может быть двух оружий с одинаковыми моделями.И еще-если вы создаете прототипное оружие(меняете часть конфигов) то обязательно ложите конфиг в соответствующий файл(в ЧН и ЗП это файл с оружием-прототипом,а в ТЧ unique_items) иначе при загрузке игра будет вылетать,примерно так: argument:can not find section 'название вашего оружия'
Иконки
Добавим в игру иконки, которыми оружие будет отображаться в инвентаре. Способ подробно описан здесь


Вот, что получилось в конечном итоге:
Создание нового оружия
Конфиги
овое оружие мы будем делать на базе оригинальных конфигурационных файлов. Создадим АК101 на базе конфигов АК74.
Свойства оружия
Скопируем файл из папки:
gamedata\config\weapons\ak74.ltx
Назовем его ak101.ltx.

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

Регистрация
так, с характеристиками разобрались. Теперь зарегистрируем оружие в файле 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 (которое внизу) прописать название своего оружия. Это предотвратит вылет при убийстве ГГ а также вылет при выкидывании оружия из инвентаря.
Добавление в игру
Осталось добавить оружие в игру.
А вот как оно будет выглядеть в игре:
Создание нового оружия
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 :

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
Relax

{SL}
Вернуться назад