Перейти к содержимому


Фотография

INI - описание файлов и для чего они нужны

FAQ-Работа с INI INI Generals За что отвечает файл INI

  • Авторизуйтесь для ответа в теме
Сообщений в теме: 3

#1 927AVIApolk

927AVIApolk

    Отдел по информационной войне

  • Министерство обороны
  • Cообщений: 2 441
  • ГородЗасекречен

Отправлено 19 Июль 2020 - 18:02

Для начала кратко разберу что такое INI
Если вы хотите создавать моды то должны знать что INI это папка в которой лежат все основные файлы такого же формата (.ini) с параметрами Generals и как там бить я все подробно объясню.

И так начнем по порядку cl.gif :
Папка Default в ней хранятся параметры искусственного интеллекта (ИИ или же как его называют - Бота) в ней может находится много файлов самый важный это AIData.ini там хранятся параметры покупки повышений бота, его построек.

После этого идет папка MappedImages в ней хранятся еще две папки в них есть различные ini файлы и именно в них надо прописывать новые картинки в ваш мод.

Самая важная это папка Object в ней возмещаются файлы с объектами ну это потом.

Обсудим оставшийся ini файлы в папке INI -
Animation2D.ini - Тут кодировка параметров анимации игры - текстур и их воздействие в игре.
Armor.ini - Параметры брони
AudioSettings.ini - Установка значений музыки в игре.
Campaign.ini - Здесь прописываются все карты миссии, обучения, соревнование и т.п.
ChallengeMode.ini - Очень тонкий кодинг, прописывает генералов для соревнования а также их картинки при загрузке игр в сражении и сетевых играх (кроме ванильных фракций).Но также надо помнить там есть очень гадкий лимит от (GeneralPersona0 до GeneralPersona11) прописать 12 и более уже нельзя, так что надо уметь с этим жить.
CommandButton.ini - Основной параметр окон в игре (кнопок, повышений и т .д.) работает как "связной" ini между кнопками и их параметрами
CommandSet.ini - Основной параметр окон в игре (кнопок, повышений и т .д.) но именно он отвечает за расстановку от 1 до 18(блоков с учетом что видно только 14 но остальные может с легкостью использовать БОТ)
Crate.ini - Прописывается денежные и гуманитарные контейнера.
Credits.ini - Авторы, ознакомление.
DamageFX.ini - Эффекты попадания по объектам (именно здесь можно прописать кровь пехотинцам)
Eva.ini - Голоса по типу : "...обнаружена вражеская партикулярная пушка..."
FXList.ini - Генератор эффектов.
GameData.ini - Параметры игрового мира (высота наблюдения и т.д)
InGameUI.ini - Круги (от скад шторма и т.д.) не советую его вообще трогать он очень ранимый.
Locomotor.ini - Двигатели юнитов, ракет и т.п.
MiscAudio.ini - Игровые звуки по типу пикания, крушения и т.д.
Mouse.ini - Курсоры, также не советую трогать но сами курсоры можно изменить заменив их на другие лежат в : (Data-Cursors-)
multiplayer.ini - Вид цвета игрока, количество маяков, открытий-закрытий рандом, стартовые сумы...
Music.ini - Музыка всех фракций, их порядок.
ObjectCreationList.ini - Связной кодинг с повышениями и оружия с таймером.
ParticleSystem.ini - Здесь содержатся эффекты, вспышки и т.д.
PlayerTemplate.ini - Фракции, команды.
Rank.ini - Ранги.
Roads.ini - Дороги.
Science.ini - Повышения и их количество.
SoundEffects.ini - Звуковые эффекты (взрыв и т.д.)
SpecialPower.ini - "счетчики время" именно они определяют время перезарядки СВ и повышений.
Speech.ini - Голоса для Миссий и Соревнований.
Terrain.ini - Текстуры земной поверхности.
Upgrade.ini - Апгрейды, лимит 128!
Weapon.ini - Вооруженные характеристики и их мощь.
WindowTransitions.ini - Меню, лобби, соревнование и т. д.
Это краткий список всех основных видов ini которые нужны в мододельстве.


Теперь про вылеты-
Вылетает когда : нажали на иконку и появилось миниатюрное окно загрузки (не на весь экран) и тут же поверх него появляется ошибка (техникал дифузес....)
Из за: объектов или же превышенного лимита в апгрейдах или соревновании.
Решение: Юзайте WorldBuilder.exe (находится в папке ZeroHour) при загрузке он будет выдавать сообщения с ошибками и где именно надо их исправлять.

 

информация про ParticleSystem.ini

ParticleSystem TsingMaTrailSmoke --- имя партикла! =))
Priority = WEAPON_EXPLOSION --- приоритет отображания партикла при загрузки железа. Самый высший CRITICAL, самый низший НЕ ПОМНЮ. Если ставишь CRITICAL, то партикл будет отображатся, если даже комп 1фпс показывает.
IsOneShot = No --- без понятия, в теории значение определяет один или множество раз проецируется партикл. Но так как я делал партиклы по шаблону наиболее похожего, это значение никогда не трогал.
Shader = ALPHA --- не, это не шейдеры =)) ALPHA - текстура с использованием альфа канала, ALPHA_TEST - более гадкий альфа канал с пятью уровнями прозрачности, ADDITIVE - текстура без альфа канала, но в ней более тёмные участки будут отображатся более прозрачными
Type = PARTICLE --- PARTICLE - обычный партикл, STREAK - партикл проецируется друг за другом в связке (полоски вместо дыма ракетчиков), DRAWABLE - это обычная серия спрайтов, которая в Генералах не используется, но значение, почему то, присутствует. Попытатся его воскресить, по крайней мере у меня, не получилось.
ParticleName = EXSmokNew1.tga --- текстура
AngleZ = 0.00 0.25 - начальный угол поворота партикла по оси Z
AngularRateZ = -0.01 0.01 - скорость поворота текстурки вокруг оси Z
AngularDamping = 0.99 0.99 - незнаю пока что
VelocityDamping = 0.99 0.98 - процент окончания анимации партикла.Вид анимации задаётся в VelocityType
Gravity = 0.01 --- сила притяжения
Lifetime = 60.00 60.00 --- время жизни каждой текстурки партикла из расчёта 30 кадров в секунду
SystemLifetime = 0 --- время жизни самого партикла, если "0" - то партикл умрёт лишь тогда, когда исчезнет замута, его запустившая, например, ракета детанирует, либо будет сбита.
Size = 5.00 5.00 --- размер текстурки партикла
StartSizeRate = 0.00 0.00 --- изменение размера при создании партикла, при минусе - уменьшение, при плюсе - увеличение
SizeRate = 3.00 3.00 - конечный размер партикла
SizeRateDamping = 0.95 0.95 - скорость изменения размера партикла от StartSizeRate до SizeRate
Alpha1 = 0.00 0.00 0 - настройки альфа канала, третье значение обозначает кадр на котором данное изменние вступит в силу. Так же 30 кадров в секунду.
Alpha2 = 1.00 1.00 5
Alpha3 = 0.00 0.00 60
Alpha4 = 0.00 0.00 0
Alpha5 = 0.00 0.00 0
Alpha6 = 0.00 0.00 0
Alpha7 = 0.00 0.00 0
Alpha8 = 0.00 0.00 0
Color1 = R:255 G:255 B:255 0 - цвет текстур партикла, если нужен родной, то 000.Следующие отвечают за постепенное изменение цвета
Color2 = R:0 G:0 B:0 0
Color3 = R:0 G:0 B:0 0
Color4 = R:0 G:0 B:0 0
Color5 = R:0 G:0 B:0 0
Color6 = R:0 G:0 B:0 0
Color7 = R:0 G:0 B:0 0
Color8 = R:0 G:0 B:0 0
ColorScale = 0.00 0.00 - не юзал, но по переводу - "Масштаб цвета".
BurstDelay = 40.00 40.00 --- задержка перед появлением партикла (30 кадров в сек, ну ты понял =)))
BurstCount = 0.00 2.00 --- количество появляющихся текстурок в один "заход"
InitialDelay = 20.00 20.00 --- промежуток времение между "заходами", так же 30 кадров в сек
DriftVelocity = X:0.00 Y:0.00 Z:0.00 --- направление движения текстурок
VelocityType = OUTWARD --- это один из типов
VelOutward = 0.00 0.00 - разброс по горизонтали
VelOutwardOther = 0.00 0.00 - разброс по вертикали (неможет привышать границы данные VolumeType)
(POINT, SPHERICAL ,HEMISPHERICAL ,ORTHO ,NONE ,CYLINDRICAL)

POINT означает что текстурки будут появляться просто в одной точке

VelocityType = SPHERICAL
VelSpherical = 1.00 2.00 - распространение во все стороны, при минусе партиклы будут двигаться от краёв VolumeType в центр.

VelocityType = HEMISPHERICAL - пока что неюзал

VelocityType = ORTHO
VelOrthoX = -3.00 3.00 - движение всех партиклов по оси X
VelOrthoY = -3.00 3.00 - движение всех партиклов по оси Y
VelOrthoZ = 3.00 8.00 - движение всех партиклов по оси Z

VelocityType = CYLINDRICAL
VelCylindricalRadial = 0.25 0.75 - этот эффект заполнения VolumeType я так и непонял, но он вроде бы распространяет все партиклы паралельно земле заполняя VolumeType до краёв
VelCylindricalNormal = 0.10 0.30 - это как бы расброс партиклов вертикально

VolumeType = SPHERE --- способ появления текстурок, их тоже много, в данном случае они появляются, как бы, в кругу (в сфере, так как у нас же 3д игра =)))
(CILINDER, LINE, NONE ,BOX) - я думаю здесь подписывать ничё ненадо
VolSphereRadius = 4.00 - радиус круга (сферы)
IsHollow = No - хз
IsGroundAligned = No --- текстурки повёрнуты к камере (No) или проецируются на поверхности ландшафта (Yes)
IsEmitAboveGroundOnly = No --- если Да, то партикл будет пропадать в воде
IsParticleUpTowardsEmitter = No --- хз
WindMotion = Unused (и чтобы использовалось надо поставить PingPong здесь)--- ниже идёт замута с ветром, не использовал никогда, но походу она и не работает в генералах(но в 5 партиклах эта вещь юзается и всё работает нормуль).
WindAngleChangeMin = 0.149924 - все эти строчки пока мне неизвестны.Советую использовать это только для огня, дыма и тому подобных вещей
WindAngleChangeMax = 0.449946
WindPingPongStartAngleMin = 0.000000
WindPingPongStartAngleMax = 0.785398
WindPingPongEndAngleMin = 5.497787
WindPingPongEndAngleMax = 6.283185
End

---------------

Про парткл

И так подробнее про KindOf
PRELOAD :Необходим для любого обэкта использующего геометрию.
SELECTABLE :Возможность выбирать обэкт (кикать на него)
CAN_ATTACK :Способность юнита к атаке.
ATTACK_NEEDS_LINE_OF_SIGHT :Дополнительний парамерт к атаке.
CAN_CAST_REFLECTIONS :По типу рефлекса точно хз но должен бить у любого юнита.
VEHICLE :Прописуется исключительто транспорту (очень важно поскольку игра определаэт именно по нем кто есть кто)
INFANTRY - Пехотинцу.
AIRCRAFT - Авиация.
SCORE :Хз много параметров, тоже должен бить в живих обэктах.
HERO :этот маленький параметр делает с вашего обэкта героя =) по типу как Бартон, Лотос и Ярмола (они стают отмечены на карте хрестом и их нельзя задавить транспортом)
CANNOT_RETALIATE, CAN_RAPPEL - Мега ХЗ до них я еще недобрался...знаю тока нужны для пехотинцев.
EMP_HARDENED - Недосягаемость для ЕМП и любих других електромагнитных вспышек.

Теперь про фишки которые надо знать:
1)Если хотите зделать обэкт неотключаемым против ЕМП и ЕМИ (а именно не авиацию а транспорт или же постройки) надо добавить им следуйщее в KindOf: EMP_HARDENED и AIRCRAFT (да так уж прописан код что без дополнительного параметра AIRCRAFT работать небудет)

2)Знак ; используется для вырезания в коде, после него можно писать любые пометки.

3)Код для невидимости вашего обэкта:

Behavior = StealthUpdate ModuleTag_07
StealthDelay = 2500 ; msec
StealthForbiddenConditions = ATTACKING USING_ABILITY :при каких условиях стает видимым, в этом случае при атаке и хз чему (взято из повстанца ГЛА)
MoveThresholdSpeed = 3 :скорость видео тени
InnateStealth = No :Начальная маскировка (Yes) если ненадо апгрейда и начинает бить невидем в самом начале.
OrderIdleEnemiesToAttackMeUponReveal = Yes :Хз непомню.
End

Behavior = StealthUpgrade ModuleTag_10 :А вот и апгрейд кторый необходим для активации с условием InnateStealth = No
TriggeredBy = Upgrade_GLACamouflage
End

 

Список от TipaIvan


Сообщение отредактировал 927AVIApolk: 19 Июль 2020 - 18:02

  • MODoGEN и Gans это нравится

#2 927AVIApolk

927AVIApolk

    Отдел по информационной войне

  • Министерство обороны
  • Cообщений: 2 441
  • ГородЗасекречен

Отправлено 19 Июль 2020 - 18:18

Для работы над эффектами, необходимо обратить внимание на файлы

 

ParticleSystem.ini - Здесь содержатся эффекты, вспышки и т.д.

FXList.ini - Генератор эффектов.

 

DamageFX.ini - Эффекты попадания по объектам (именно здесь можно прописать кровь пехотинцам)

SoundEffects.ini - Звуковые эффекты (взрыв и т.д.)


Сообщение отредактировал 927AVIApolk: 19 Июль 2020 - 18:18

  • MODoGEN, Websurfer и Gans это нравится

#3 MODoGEN

MODoGEN

    Создатель мультиплеерных патчей для War Commanders

  • Разработчики
  • Cообщений: 1 327
  • ГородЖданов, СССР

Отправлено 19 Июль 2020 - 22:32

Во! Пошло дело! Скоро Полканыч сам будет делать патчи! Будет пыхтеть, корпеть, трудиться изо всех сил. А я буду бить баклуши, отдыхать, пивас попивать и на расслабоне с народом играть 247.gif  :D


Project Raptor: War Commanders 9.1.19 + Fix 3


#4 tranzistor

tranzistor

    Продвинутый пользователь

  • Генералы
  • PipPipPip
  • Cообщений: 449

Отправлено 20 Июль 2020 - 01:47

 

 

Во! Пошло дело! Скоро Полканыч сам будет делать патчи! Будет пыхтеть, корпеть, трудиться изо всех сил.

Ну ,а что действительно дело, будут патчи выходить как из пулимёта ,а если что мы проконсультируем...


Вторичная экономика ключ к победе!

Давай мир без заборов!

Без заборов станет всем светлее...





Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных