Базовая информация о игровых параметрах Ex Machina.

Форум Административный раздел Системный раздел для главной FAQ
Сообщений: 5 • Страница 1 из 1 1
Аватара

Модификация параметров игры

Для начала вам нужен Распаковщик игровых архивов, более подробная инструкция по нему здесь
Далее у вас 2 пути - редактирование текстур (для этого вам понадобится Adobe Photoshop и DDS конвертор.
Еще есть устаревшаяинструкция по текстурированию(в инструкциях для SDK)) или редактирование самих параметров игры очень даже пригодится). Итак:


Создание нового автомобиля (Автор: JSinx)
Не помню выкладывал или нет, но вот документик с настройкой физики для манинок с описанием почти всех параметров. Жаль что с таким опозданием
(Машина состоит из 3 частей, которые влияют на ее поведение: - кабина - шасси - колеса)

Файл vehicles.xml - Параметры прототипа машины:
Спойлер
===============================================================================================
Код: Ctrl+A, Ctrl+C
                  DiffRatio - передаточное число (по моему чем больше, тем быстрее машина разгоняеться, но медленее едет.... или наоборот).
            MaxEngineRpm - максимальные обороты двигателя.
            LowGearShiftLimit - на этих оборотах переключается на низшую передачу
            HighGearShiftLimit - на этих оборотах переключается на высшую передачу
            SteeringSpeed - коэффициент скорости поворота колес. (рад/сек) - на но практиче часто получается делаешь это число большим, и колеса вертятся быстро, а сама машина поворачивает медленно, т.к. у нее большая инерция.
            AdditionalWheelsHover - дополнительная высота подвески (кузов поднимаеться над колесами на это расстояние)
            DriftCoeff – коеффициент заноса. От нуля до бесконечности, чем меньше, тем меньше занос.
            MassSize - размер масс: по осям X,Y,Z. т.е. машина может иметь размеры одни, а физика будет считаться от этого размера. Так что ты немного ошибся в своих предположенияя =)
            MassTranslation - смещение центра масс от центра машинки Если сделать низким (отрицательный Y), то машина будет более устойчивая.

===============================================================================================

Файл VehicleParts.xml:

- Класс = "Cabin" (кабина)
Спойлер
===============================================================================================
Код: Ctrl+A, Ctrl+C
                  Durability - крепкость кабины
            DurCoeffsForDamageTypes - коэффициенты отвечающие за резисты guns energy explosion
            Mass - масса
            Power - не используется
            maxTorque - мощность автомобиля. С помощью настройки DiffRatio в прототипе самой машины можно увести в разгон или в скорость. Но там все это еще как то настраиваеться оборотами
            Price - цена
            RepairCoef - коэфициент полного ремонта части от стоимости
            FuelConsumption - потребление топлива автомобилем. как-то хитро считается от мощностию
            MaxSpeed - максимальная скорость

===============================================================================================

- Class = "Wheel" (колеса)
Спойлер
===============================================================================================
Код: Ctrl+A, Ctrl+C
      Mass - масса: чем больше масса колеса по отношению к все машине, тем более управляема в воздухе (когда машина летит, ее наклон можно корректировать "ездой" вперед или назад).

             SuspensionCFM - жесткость амортизатора
             SuspensionERP - не используется
             SuspensionRange - не используется
            mU - не используется
             Class = "Chassis" (шасси)
             MaxFuel - топливо               
             MaxHealth - здоровье

===============================================================================================

Общие параметры (например масса, цена) суммируются. Желательно не используемые параметры не трогать.

Модификация характеристик кабин/кузовов (спасибо Bloddex за пояснения):
Спойлер
===============================================================================================
Код: Ctrl+A, Ctrl+C
                  <Prototype                 
             Class = (класс модифицируемой запчасти, пусть будет "Cabin")                 
             Name = (название кабины, например uralCab01, либо superMegaCabina01)                 
             ModelFile = (модель, используемая для отображения нашей кабины, например uralCab01)                 
             ResourceType = "URAL_CABIN" (В файле vehicles.xml у урала в одной из строк стоит этот же параметр - URAL_CABIN. Это обозначение для кабины, к какой машине она принадлежит)                 
             NodeScale = "1 1 1" (никто с этим пока не экспериментировал, соответственно, никто об этом параметре ничего не знает.)                 
             Mass = "100.0" (вес кабины)                 
             Durability = "130" (Это обозначение брони кабины)                 
             DurCoeffsForDamageTypes = "12 8 0" (Это коэффиценты попаданий из разного оружия, !почти! тоже самое что и durability)                 
             MaxPower = "600" (Максимальное значение Силы. Но силы чего? Может удара, я сам этот параметр не меняю)                 
             MaxTorque = "330" (Максимальная мощность движка кабины)                 
             MaxSpeed = "110.0" (максимальная скорость)                 
             BlowEffect = "ET_PS_VEH_PART_BLOW_BIG_CAB"                 
             Price = "85000" (Цена)                 
             RepairCoef = "0.5" (Коэффицент стоимости починки кабины)                 
             FuelConsumption = "0.5" (Коэффицент поглощения топлива)                 
             LoadPoints = "LP_SML01" (Лоадпоинты для слотов оружия. Лучше не трогать)                 
             EngineHighSound = (Звук, используемый для данной кабины)                 
             <GadgetDescription>                 
             <Slot                 
             ResourceType = "GADGET_COMMON" (слоты для гаджетов улучшающиъ авто)                 
             MaxAmount = "3" /> (кол-во слотов до 5)
             <Slot                 
             ResourceType = "GADGET_WEAPON" (слоты для гаджетов улучшающих оружие)                 
             MaxAmount = "1" /> (кол-во слотов до 5)                 
             </GadgetDescription>                 
             <GroupsHealth                 
             Main = "0"                 
             Breakable1 = "1"                 
             Breakable2 = "1.5"                 
             Breakable3 = "1"                 
             Breakable4 = "2"                 
             Breakable5 = "0.3"                 
             Breakable6 = "1.5"                 
             Breakable7 = "1"                 
             Breakable8 = "0.5"                 
             Breakable9 = "1"                 
             />                 
            </Prototype>

===============================================================================================

Модификация характеристик оружия (урок от Bloddex):
Спойлер
===============================================================================================
Код: Ctrl+A, Ctrl+C
                  <Prototype
             Class   = "BulletLauncher" – Это класс оружия, т.е. пулемет или плазмомет например;
             Name   = "rapier01" – это название оружия. Можно поставить любое, чтобы в конце были 2 цифры – 01 или 02 например;
             ModelFile  = "rapier01" – это название файла с моделью;
             ResourceType    = "BIG_GUN" – тип оружия – большое, маленькое, специальное и т.д;
             NodeScale  = "1 1 1" – ???;
             Mass   = "1.0" – соответственно масса оружия;
             BulletPrototype    = "raybullet" – тип пули (Ракета, пуля и  т.д.);
             ExplosionType    = "CANNON" – тип взрыва снаряда(ракета, пуля и т.д.);
             FiringEffect    = "none" – ???;
             Damage  = "160" – повреждение;
             FiringRate  = "40" – скорострельность;
             GroupingAngle    = "0.6" – точность(от 0,1 до 1 и не только);
             FiringRange  = "1200" – дальность выстрела;
             RecoilForce  = "50" – сила отдачи;
             DamageType    = "BLAST" – тип повреждения(взрыв, проникающее и т.д.);
             Decal    = "DC_GUN" – Тип следов дырок на авто от выстрела;
             ChargeSize     = "1" – кол-во снарядов в обойме;
             RechargingTime = "3" – время перезарядки;
             Durability  = "700" – прочность;
             BlastWavePrototype      = "smallBlastWave" – тип взрывной волны;
             Price   = "16400" – цена;
             FiringType  = "Cannon" – тип выстрела
/>

*На заметку: У каждого класса оружия есть свои дополнительные параметры, например у дробовиков имеется параметр NumBulletsInShot =”15”, это количество пуль в одном выстреле. Т.е. этои есть сама дробь.

===============================================================================================

Чтобы добавить в продажу кабину/кузов
Спойлер
===============================================================================================
Код: Ctrl+A, Ctrl+C
      PosX="0"                 
PosY="0"                 
Flags="16"                 
Prototype="additional_fuel_tank" />

===============================================================================================

Прописывайте это в dynamicscene, что находится в maps/r1m1 (для первой карты). Вместо additional_fuel_tank вводите название своего прототипа

Как добавить оружие в продажу(говорим спасибо kosty-x17)
Нас интересуют файлы towns и dynamicscene.
Рассмотрим на примере добавления оружия в Южный. Нужно сначала найти прототип города, т.е. TownSouth:
Спойлер
===============================================================================================
Код: Ctrl+A, Ctrl+C
                      <Prototype
                 Class  = "Town" - здесь написано, город это или деревня (Town или Village)
                 Name  = "TownSouth" - имя города(деревни)
                 ModelFile    = "minin" - модель города(деревни)
                 NodeScale    = "1 1 1" - ???

                 MusicName  = "trade_town1" - мелодия, которая играет при въезде в город(деревню)
                 GateModelFile  = "big_gate01" - ???

                 NumCollisionLayersBelowVehicle = "1" - ???

                 IsIntersecting  = "true" - ???
                 LookRadius  = "200" - радиус чего-то, наверно радиус видимости машины, которая появляется для защиты или задания
                 IntersectionRadius    = "50" - ???

                 Vehicles  = "Bug" - машинка города (деревни)

                 GunGenerator  = "gunTownSouthGenerator" - и вот оно: здесь написано имя прототипа с оружиями               
                 DesiredGunsInWorkshop    = "15" - сколько оружий высвечивается в магазине

                 GunAffixGenerator    = "townaffixGenerator" - имя прототипа с гаджетами
                 GunAffixesCount  = "1" - кол-во гаджетов в магазине

                 CabinsAndBasketsAffixGenerator    = "towntruxaffixGenerator" - ???
                 CabinsAndBasketsAffixesCount    = "3" - ???

                 WeaponPriceMultiplier = "1.2" - ???
                 WeaponPriceDispersion = "15"> - ???
                    
                 <Article
                  Prototype    = "potato"                  
                  Amount      = "0"
                  ExternalPriceCoefficient  = "1.45"
                  Import       = "TRUE"
                  Export       = "FALSE"                  
                  PriceDynamic     = "1"
                  MinCount    = "0"
                  MaxCount    = "60"
                  RegenerationPeriod   = "300"               
                 />

                 <Article
                  Prototype    = "firewood"                  
                  Amount      = "6"
                  ExternalPriceCoefficient  = "0.9"
                  PriceDynamic     = "1"
                  Import       = "FALSE"
                  Export       = "TRUE"
                  MinCount    = "0"
                  MaxCount    = "14"
                  RegenerationPeriod   = "300"
                 /> - это импорт и экспорт товара

                    

<!--        <ResourceCoeff Coeff="1.5" Dispersion="20.0" Resource="GUN" />
                      <ResourceCoeff Coeff="1.0" Dispersion="10.0" Resource="CABIN" /> - ????????
-->                
                </Prototype>

===============================================================================================

Далее в этом же файле ищем прототип с оружием нужного вам города:
Спойлер
===============================================================================================
             
Код: Ctrl+A, Ctrl+C
         <Prototype
                 Class="RepositoryObjectsGenerator"
                 Name="gunTownSouthGenerator">

                 <Object PrototypeName="hornet01" />
                 <Object PrototypeName="hornetamerican01" />
                 <Object PrototypeName="specter01" />
                 <Object PrototypeName="pkt01" />
                 <Object PrototypeName="vector01" />
                 <Object PrototypeName="minePusher"/>

                </Prototype>               

===============================================================================================

Как добавить автомобиль в продажу (благодарим kosty-x17)
Вам нужен dynamicscene.xml Вот пример:
Спойлер
===============================================================================================
Код: Ctrl+A, Ctrl+C
                  <Item
            PosX="4"
            PosY="0"
            Flags="16"
            Prototype="UralForSale"
            Pos ="0.000 111.522 0.000">
            <Parts>
            <BASKET
            present="1"
            Flags="16"
            Prototype="uralCargo01_01"  />

            <CABIN
            present="1"
            Flags="16"
            Prototype="uralCab01_01" />

            <CHASSIS
            present="1"
            Flags="16"
            Prototype="uralChassis" />
            </Parts>

            <Repository />
            </Item>

===============================================================================================

Изменение спавна врагов.
Спойлер
Код: Ctrl+A, Ctrl+C
      gamedata/gameobjects/infection.xml

Настройка подвески
Спойлер
===============================================================================================
Высота подвески - в файле vehicles.xml выбрать редактируемую машину и прописать
Код: Ctrl+A, Ctrl+C
      AdditionalWheelsHover = "0.XX"

Жесткость подвески - все там же, параметр
Код: Ctrl+A, Ctrl+C
      PressingForce  = "х.х"

Важно! Зависимость обратно пропорциональная! Чем больше число тем мягче подвеска
===============================================================================================


SDK
Уроки по созданию и редактированию карт
Туториал по написанию квестов- не существует. kto обещал 2 года назад написать его (вернее примитивные примеры, вроде тех, что выдаются в баре), но дальше разговоров не пошло.

Если вы хотите заняться 3D моделлингом:
Скачайте Maya 7.0
Воспользуйтесь конвертором
Имеется неподтвержденная информация, что успех конвертирования модели зависит от типа рендеринга.

Мнение ScorpyX'a о конвертации моделей
Спойлер
===============================================================================================

Цитата:

успех конвертирования новой модели зависит от прямых рук.. то есть я хотел сказать
зависит от правильного моделирования
если модель будет аккуратной без ужасных извращений
то ее легко можно запихнуть в игру
особенно статические объекты вроде домика или столба
они практически в любом случае залезут в игру

пробуйте - удачи :]

ps. моделировать можно в любой программе которая может экспортировать модель в формат *.OBJ
например бесплатная программа блендер - или 3д макс - или еще что то более любимое для вас -
по вопросам моделирования обращайтесь ко мне в личные сообщения или
mail - scorpyx@mail.ru
icq - 333879808
skype - scorpyxninja
(когда будете стучаться - скажите что насчет экс махины)


===============================================================================================



Еще вопросы? :)
Автор: Buba

Аватара
kto, в некоторых местах в коде лишние пробелы.

Профиль уверенного водителя Белаза
Аватара

"Apocalypse007" писал(а):

kto, в некоторых местах в коде лишние пробелы.


Спс, поправим.

Добавлено:
Если ещё где-то остались - прошу цитировать.

__________!///_ _____
_________( @@ )_____
_______ooO-(_)-o o____
Пришёл, увидел, забанил. Ещё вопросы?


Если у Вас нет бана - это не Ваша заслуга - это наше упущение.
Уровень профиля от John
Аватара
Как добавить оружие в продажу:
Спойлер
Код: Ctrl+A, Ctrl+C
      
Class = "Town" - здесь нАписано, город это или деревня (Town или Village)
LookRadius = "200" - радиус чего-то, наверно радиус видимости машины, которая появляется для защИты или задания


Вроде ничего больше не увидел.

Профиль уверенного водителя Белаза
Аватара
Apocalypse007, спасибо, всё поправил.

__________!///_ _____
_________( @@ )_____
_______ooO-(_)-o o____
Пришёл, увидел, забанил. Ещё вопросы?


Если у Вас нет бана - это не Ваша заслуга - это наше упущение.
Уровень профиля от John
Сообщений: 5 • Страница 1 из 1 1