Объекты (Entities). Оружие. Снайперская винтовка.

Редакция вторая (доработанная).

Hunter

Необходимые инструменты.
FT Tools
WinZip

Желательно, чтобы перед работой с FT Tools вы распаковали при помощи WinZip следующие файлы:
entities.bos
locale.bos
sound.bos
spr-sprites_0.bos
spr-extra_0.bos
tables.bos

Снайперская винтовка.
Запускаем FT Tools, входим в Entity Editor. Далее: File/New/Weapon/Ok.

Перед нами появляется форма со множеством вкладок (раскрываются при нажатии по ним). Про них я буду рассказывать по мере создания оружия.

1. - Weapon -
1.1. Weapon

Weapon Item Type - тип оружия. От него, в частности, зависит, какой спрайт будет отображаться в игре. Для снайперки тип будет Rifle, т.к. делаем именно винтовку. Кто будет делать снайперский пистолет, должен будет поставить Pistol.

Magazine Capacity - емкость обоймы. В нашем случае - 8.

Projectile Sprite Name - спрайт, отвечающий за отображение особых типов патронов, как, например, Gauss или Laser и т.п. Для холодного (кроме метательного) и обычного огнестрельного оружия эта строка остается пустой. В нашем же случае, т.к. Steyr AMR 5075 использует APFSDS-боеприпас, я поставлю сюда спрайт, отвечающий за гаусс-патроны - sprites/impactfx/Projectile Guass.spr (Внимание! По какой-то причине спрайты, отвечающие за projectile и impact гаусс-патронов, названы с ошибкой - Guass!)

Type of ammo - тип или калибр боеприпасов. Эти типы жестко связаны с типами патронов, доступных как в игре, так и в редакторе при создании новых боеприпасов. Типа Steyr APFSDS, естественно, нет. Поэтому ставим любой. Например, 50 cal - .50 BMG (12.7x99 мм).

Weapon Perk - особенности оружия. Из особенностей есть только Night Scope, но работает ли он - неизвестно. Так что оставляем None.

Minimum и Maximum Damage - границы наносимых повреждений. Согласно моему MOD'у повреждения AMR находятся в границах от 250 до 300.

Damage Radius - радиус наносимых повреждений. Используется для гранат и ракет. Поэтому в нашем случае остается 0.

Default Base Damage Type - тип наносимых повреждений; для оружия, использующего патроны, значение берется у боеприпаса.

Default Special Damage Type - дополнительные эффекты при попадании; для оружия, использующего патроны, значение берется у боеприпаса.

Default Ammo Variant - модификация боеприпаса; для оружия, использующего патроны, значение берется у боеприпаса.

Sound Type - звук оружия. Если есть в наличии звук создаваемого оружия (либо похожего, такого же типа) - можно поставить любой звук. Сейчас звука у меня нет, поэтому ставим Sniper.

Destroy User - использование оружия убивает стрелка.

1.2. Name

Display Name - маркер, по которому игра ищет описание оружия. Написанное здесь имя прописывается в файле items.txt (об этом позже). Называем нашу винтовку SteyrAMR.

Custom Name - присваиваемое игроком имя. Для чего нужно, не понятно.

Tag Name - по этому имени предмет можно использовать как объект для скриптов карты (как, например, прототип импульсной винтовки).

Broken - сломано оружие или в рабочем состоянии. Оставляем пустой. Сломанное оружие починить нельзя.

Player Index - принадлежность к какому-либо игроку. 0 - предметы, 1 - игрок-человек (тот, который перед монитором), 2...n - остальные игроки-компьютеры. Необходимость для предметов неочевидна, а персонажам выставляется при создании карты. Оставляем 0.

1.3. Image

Sprite - спрайт оружия.

Animation Rotation - положение спрайта, занимаемое по-умолчанию. У персонажей и источников света таких положений 8, у техники - 16, у предметов, дверей и т.п. - 4. Оставляем 0.

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

Skin, Hair, Team - к оружию не имеют никакого отношения. Оставляем установки по-умолчанию.

1.4. Collectable

Count - количество единиц в "единице спрайта" - т.е., сколько штук содержится в "спрайте". Для оружия - 1.

Weight - вес оружия. Указывается в фунтах (lbs). Steyr AMR 5075 весит 43.8 lbs, что и вносим в эту графу.

Value Base - стоимость. Определяете сами, согласно сбалансированности мода. Я определяю стоимость этой винтовки в 35 000.

Rank Req - точно не знаю. Вполне возможно - необходимое звание в БС. Я всегда оставляю этот параметр в значении 0.

Lootable - можно ли данное оружие снять с трупа.

Remove on Exit - точно, опять-таки, не знаю. Вполне возможно - изымается ли оружие при выходе из карты, где было обнаружено.

2. - Requirements -
2.1. Attributes

Temporary Effect - не знаю. Возможно, указывает на то, что все эффекты, даваемые предметом (не обязательно оружием), имеют временный эффект применительно к персонажу. Хотя какое отношение это имеет к требованиям, не знаю. Оставляем без изменений.

Lev Since Perk - не знаю. Оставляем без изменений.

2.2. Stats
Тут все понятно. Вводятся требования к SPECIAL, необходимые для использования оружия. Для AMR я выставляю Strength, Perception и Agility значение 8.

2.3. Traits - 2.9. Chems
Абсолютно непонятно. Сейчас даже не буду расписывать, т.к. ничего из этого не работает. Например, в Skills можно выставить любое значение навыка, но персонаж с навыком, ниже указанного, все равно может этим оружием пользоваться.

3. - Effect -
Воздействие предмета на персонажа. Все аналогично пункту 2. Положительное число прибавляется к параметрам персонажа, отрицательное - вычитается из них.

4. - Modifiers -
Какие-то модификаторы. Что и как модифицируют - не знаю. Состав аналогичен пунктам 2 и 3. Оставляем без изменений.

1.5. - Weapon Modes -
Любое оружие может иметь 6 режимов работы.

5.1. Mode [0]

Enable This Mode - селектор, включающий/выключающий режим оружия. Включаем его.

Display Name - тэг названия режима, написанного на кнопке. Можно писать все, что угодно, только потом будет необходимо добавить тэг и его расшифровку в файл weapons.txt (об этом позже). Для одиночных - single.

Weapon Skill - навык, используемый для стрельбы. Для винтовок - Small Guns.

Animation Name - тэг названия анимации, по которому игра ищет анимацию в спрайте персонажа. Для данного режима - Single.

Range Class - расстояние поражения оружия. Оно включает минимально допустимое расстояние, а также расстояние, на каком при 100-процентном навыке появляется 95-процентная точность попадания. Для снайперской винтовки поставим Only Long.

Maximum Range - максимальная дальность поражения. Для этой снайперки я ставлю 120. В редакторе и движке используется метрическая система, однако в игре один тайл "пола" не равен одному метру. Так, расстояние в 120 метров равно 80 тайлам.

Spread (Arc) - как ведет себя пуля при выстреле, т.е. - как летит. У одиночного режима нарезного оружия (и данной гладкоствольной винтовки) пуля летит прямо. Поэтому ставим Straight.

Accuracy Bonus - бонус к точности. Точного механизма его работы я не знаю. Кажется, он прибавляется к шансу поражения. Т.е. если бонус равен 50, а шанс поразить цель - 10 процентам, то общая точность будет равна 60 процентам. Но вполне возможно, что обонус играет роль только при рассчете повреждений. Как бы то ни было, для AMR я ставлю бонус, равный 60. Если же поставить отрицательное число, то бонус, соответственно, будет вычитаться.

Damage Multiplier - множитель, на который умножается наносимое оружием повреждение. Так, у AMR границы наносимых повреждений установлены в 250 - 300. Если множитель поставить равным 10, то реально наносимые повреждения будут в границах 2500 - 3000! Этот множитель нужен для того, чтобы понижать/повышать повреждения у различных режимов стрельбы (как вы заметили, в игре поврежедния очереди ниже, чем одиночного). В данном случае множитель будет равен 1.

Ammo Usage - количество патронов, используемых за один выстрел. В пункте 1.1. указаны повреждения от одной пули, таким образом, при очереди для определения нанесенных повреждений происходит умножение не только на Damage Multiplier, но и на количество патронов в очереди. Для одиночного значение будет, естественно, 1.

Can Call Shot - селектор возможности прицельного выстрела. Отмечаем его.

Critical Chance - шанс нанесения критического ранения. По-моему, наносимых 250 - 300 Dmg вполне достаточно и без плюсов к шансу критического ранения.

Knock Over Multiplier - шанс сбить противника с ног. Оставляем 1.

Action Cost (Type) - "стоимость" режима в Action Points. К сожалению, напрямую задать стоимость почему-то нельзя. Ставим Ranged Single Expensive.

Impact FX - эффект, "проигрываемый" при попадании пули в цель. Присутствие данного параметра (как и Projectile Sprite Name) не обязательно. Они могут присутствовать как вместе, так и по отдельности. Для AMR (из-за ее боеприпаса) я поставлю sprites/impactfx/Impact Guass.spr.

Has Projectile - есть ли у оружия "особый" боеприпас. Если у вас стоит что-либо в Projectile Sprite Name, вы должны включить этот селектор. У AMR есть спрайт, поэтому включаем.

Destroy on Use - уничтожается ли оружие при использовании. Используется для мин и гранат. Оставляем селектор выключенным.

Light FX - эффекты дульных вспышек, взрывов и т.п. Для AMR ставим Single Bullet Large.

Impact Sound FX - звук при попадании. Для нарезного огнестрельного оружия - Bullet.

Остальные режимы полностью аналогичны данному.

На этом работа со Steyr AMR 5075 в FT Tools закончена. Остальная доводка характеристик до "оригинала" (калибр, звуки) производится в BoSEE, но об этом смотрите в статье, посвященной этому мини-редактору.

Сенкс Der Fluger'у за разъяснение некоторых параметров.

©30.09.2006, Hunter
Специально для FALLOUT.RU