|
Register | Forum Rules | FAQ | Members List | Calendar | Today's Posts | Search |
|
Thread Tools |
12-09-2008, 06:29 PM | #1 | ||
umka01
Join Date: Aug 2008
Posts: 221
|
Как менять точность выстрелов?
Вот столкнулся с проблемой. Где и какие параметры нужно изменить, что бы изменить точность попадания выстрелов во вражеский корабль. Пытался менять параметры в папке Weapon, но ничего не изменилось.
Как пример, в моде Фриспейс импульсное оружие имеет эффект промаха по крупным кораблям. Я хочу добиться такого эффекта в моде Вавилон 5, как это было в фильме, а не 100% точность как мов моде. Кто в курсе этих дел, отпишитесь, только подробно, пожалуйста. |
||
12-09-2008, 07:15 PM | #2 | ||
Ten
Faction: Стражи Садов Кадеша Join Date: Feb 2004
Location: Great Nebula
Posts: 2,550
|
Re: Как менять точность выстрелов?
За точность попаданий отвечает функция setAccuracy, которая вызывается в .wepn-файле следующим образом:
Lua:
setAccuracy(<vObjectType>, <bEnable>, {<vFamilyName1> = <fValue1>}, {<vFamilyName2> = <fValue2>}, ... , {<vFamilyNameN> = <fValueN>}); <vObjectType> - переменная-объект (точнее, таблица), представляющее новое оружие. Указывается переменная NewWeaponType, т.к именно её мы инициализировали несколькими строками выше. <bEnable> - включение/выключение данной настройки точности. 1 означает, что корабль будет обладать ею с самого начала, 0 – что эта особенность будет добавлена позднее по ходу игры. <vFamilyName1>, <vFamilyName2>, ... <vFamilyNameN> - название семейства кораблей. <fValue1>, <fValue2>, ... <fValueN> - множитель точности против данного семейства кораблей. Число с плавающей точкой, от 0 (минимальная, точнее, орудие даже не будет стрелять по указанному семейству) до 1 (не промахивается). // UPD: Просьба привести название корабля, точность орудий которого ты хочешь изменить. Или название оружия. Last edited by Ten : 12-09-2008 at 07:28 PM. |
||
12-10-2008, 12:59 PM | #3 | ||
umka01
Join Date: Aug 2008
Posts: 221
|
Re: Как менять точность выстрелов?
Спасибо за оперативный ответ, но если чесно, то ничего из этого не понял, так как слабоват в этом. Только не делю как начал разбираться
Хочу изменить параметры точности в Моде Вавилон 5, всех кораблей, крупных. Что бы точность снизить на 50%. Те параметры что ты привел ниже..... я их не видел в веп файле. например..... Омега. Захожу в луашный файл, открывая его через блокнот, но таких параметров там нет. Путь к луашке??? Data\Weapon\***.lua ??????????? там где менять надо???? Обьясни как можно подробнее. Может разрабы мода даже не внесли таких параметров, предполагая единую точность для всех кораблей, без возможности изменения?? |
||
12-10-2008, 02:15 PM | #4 | |||
Prisoner
Faction: Хиигаряне Join Date: Jul 2008
Location: город герой Киев
Posts: 559
|
Re: Как менять точность выстрелов?
Quote:
утебя раскомпилированый скрипт? или нет? Last edited by Prisoner : 12-10-2008 at 09:15 PM. |
|||
12-10-2008, 06:21 PM | #5 | ||
Ten
Faction: Стражи Садов Кадеша Join Date: Feb 2004
Location: Great Nebula
Posts: 2,550
|
Re: Как менять точность выстрелов?
Не, раскоппилированый скрипт у тебя А там они вполне текстовые и компилируются на лету.
Итак, Омега. Такой корабль нашёлся в папке <ХВ2>\Data\Ship\EAR_Omega (вообще, их там несколько, но принцип один и тот же). Открываем .ship-файл в поисках вызова функции StartShipWeaponConfig, т.к. именно она навешивает на корабль соответствующие орудия. Получаем целую россыпь: Lua-код под катом Я не зря выделил второй параметр – собственно, это и есть подпапки в папке <ХВ2>\Data\Weapon. В подпапках живёт единственный .wepn-файл с конфигурацией заданого оружия. Отсеиваем дубли из кода выше и получаем 9 разных с точки зрения игры типов орудий:
Хмык... Ладно, качаем. Выясняется, что все файлы <ХВ2>\Data\Weapon\EAR_OmegaPulseSide*\EAR_OmegaPulseSide*.wepn имеют одинаковые вызовы setAccuracy, а именно: Lua-код под катом Конечно, можно всё это записать одной строкой, но так гораздо нагляднее. Например, сразу видим, что против семейства SmallCapitalShip точность боковых орудий составляет 88% (0.88), а против BigCapitalShip – 96% соответственно. Если это много – корректируем Настройки точности против других семейств также не кусаются при изменении. Я практически ничего не знаю о сериале и понятия не имею, кто и как должен стрелять, но думаю, что с этим у вас трудностей точно не возникнет В других .wepn-файлах иные настройки точности, но правятся они аналогичным образом. Чтобы узнать, к какому семейству принадлежит тот или иной корабль, нужно открыть его файл и глянуть на строчку NewShipType.AttackFamily. Для Омеги, например, она выглядит следующим образом: Lua:
NewShipType.AttackFamily = "BigCapitalShip" umka01, как видишь, ничего тут сложного нет Успехов! |
||
12-11-2008, 06:11 PM | #6 | ||
umka01
Join Date: Aug 2008
Posts: 221
|
Re: Как менять точность выстрелов?
Спасибо, братан, что помогаешь, но у меня есть еще пару вопросов, которые я не могу понять
1. Что такое Декомпилировать?? 2. Как и чем это делают (прога специальная или как)?? Вот то, что я вижу, когда открываю wepn файл через блокнот: Lua:
-- Omega Front Pulse Cannons (Yellow) -- -- Edited by Zeelich (15/03/2007) -- Edited by CnlPepper (14/10/2007) StartWeaponConfig(NewWeaponType, "AnimatedTurret", -- Type "Bullet", -- FireType "PulseCannon_Yellow_Large", -- FireName "Normal", -- Activation 2500, -- FireSpeed 7000, -- FireRange 0, -- FireRadius 0, -- FireLifetime 0, -- FireMisc1 0, -- FireAxis 1, -- MaxEffectsSpawned 1, -- UseVelocityPred 0, -- CheckLineOfFire 0.25, -- FireTime 1.0, -- BurstFireTime 1.5, -- BurstWaitTime 1, -- ShootAtSecondaries 1, -- ShootAtSurroundings 60, -- MaxAzimuthSpeed 50, -- MaxDeclinationSpeed 0.1, -- SpeedMultiplierWhenPointing "Normal", -- WeaponShieldPenetration 1, -- TrackOutOfArc 0, -- UseCodeRed 0) -- BlowThroughHealth AddWeaponResult(NewWeaponType, "Hit", "DamageHealth", "Target", 282, 282, "") setPenetration(NewWeaponType, 5, 1, { MediumArmour = 1.1, }, { PlanetKillerArmour = 0, }, { SubSystemArmour = 1, }, { ResArmour = 0.6, }) setAccuracy(NewWeaponType, 1, { Fighter = 0.021875, -- Prob(hit/s) = 0.035 }, { Corvette = 0.0375, -- Prob(hit/s) = 0.06 }, { munition = 0.125, -- Prob(hit/s) = 0.2 }) setAngles(NewWeaponType, 0, -- cosMaxAnglesFromNorm -60, -- MinAzimuth 60, -- MaxAzimuth -5, -- MinDeclination 65) -- MaxDeclination Я так понял, что можно вручную прописать остальные классы кораблей?? Главное правильно прописать??? Да, вот еще, под каждым классом кораблей в твоем примере есть такой параметр как Демейдж 1, за что он отвечает и что будет если поставить значение большее или меньшее. В моем примере такого нет, хотя это файл оригинал, я его прям с игры дернул. Last edited by Ten : 12-12-2008 at 04:40 PM. |
||
12-12-2008, 06:32 PM | #7 | ||
umka01
Join Date: Aug 2008
Posts: 221
|
Re: Как менять точность выстрелов?
О-о, все получилось, спасибки дружище. Я просто взял и копирнул твой пример в свой файл и изменил процентовку и все заработало
Вот еще вопросик. Я уже видел тему на форуме соответствующую, но там как-то непонятно написано. Я хочу и з одного мода перетащить кораблик в другой мод, вместе с оружием, или просто оружие перетащить. Как это сделать, только обьясняй как ребенку, просто я в этом очень слаб. Спасибо тебе человеческое заранее. |
||
12-12-2008, 07:05 PM | #8 | ||
Ten
Faction: Стражи Садов Кадеша Join Date: Feb 2004
Location: Great Nebula
Posts: 2,550
|
Re: Как менять точность выстрелов?
Корабли лежат в папке Ship, оружия – в папке Weapon, подсистемы – в Subsystem. Узнать какие оружия использует корабль можно по вызовам StartShipWeaponConfig в .ship-файле (название оружия – второй параметр), выше я про это писал под катом. В случае подсистем это вызовы StartShipHardPointConfig (названия подсистем – последние 8 параметров). Эти оружия и подсистемы находишь в одном моде и тащишь в другой с сохранением структуры каталогов. Потом нужно подправить скрипты постройки и исследований той расы, которой ты хочешь приписать новый корабль. Блин, ещё там эффекты могут быть...
Слух, Умка, напиши какой корабль и куда перетащить. Это не так сложно, просто куча рутины и очень долго объяснять, если во всех подробностях. Мне Arkatneil уже задавал подобный вопрос, но за нехваткой времени я успешно про него забыл... где-то даже валялись результаты экспериментов, гляну. |
||
12-15-2008, 04:16 PM | #9 | ||
umka01
Join Date: Aug 2008
Posts: 221
|
Re: Как менять точность выстрелов?
Хочу просто уметь из одного мода претягивать кораблики в другой мод. Ну... например из Звездных воен, какой нить имперский крупный кораблик пертянуть в Вавилон 5. Кстати исследования не обязательно для него делать. В В5 есть режим Capture\Testing. там на старте тебе дается небольшой флот кораблей, его можно менять в папке скриптс, стартфлитс. мне бы хватило, что бы можно было имперский крупный кораблик вписать в старт, ну а если и строить можно будут..... класс
И самое главное, как оружие из мода впихнуть в другой мод??? Респект тебе, дружище. Вообще-то я с Pandorazero по телефону консультируюсь, но он силен только в моделировании, а втаких вещах как мне надо не сильно |
||
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
|
|