Общие вопросы по модам

Самостоятельная настройка параметров игры и создание модификаций.
freifrei
Heavy Fighter
Сообщения: 75

Общие вопросы по модам

Сообщение freifrei » 14 апр 2016, 15:01

В в r_(имярасы).a добавил

phrase ResetBonuses()
call UFResetSelectedBonuses()
call UFSetBonusSelected(rbFleetConsumption, rbvBest)
call UFSetBonusSelected(rbFoodConsumption, rbvWeaker)
call UFSetBonusSelected(rbMorale, rbvBetter)
call UFSetBonusSelected(rbEspionage, rbvBetter)
call UFSetBonusSelected(rbTrade, rbvBetter)
switch (call UFGetAISkill())
when skChallenge:
local i

call UFGrantTechnology(this.raceID, "SCBLDPLATFORM")
call UFGrantTechnology(this.raceID, "SCBLDDOME")
//содержание флота 50%
for (i = resBur, i<=resPlut, i++)
call UFAlterRaceSpecificShipConsumptionModifier(i, 1, 2, this.raceID)
end for
call UFAlterRaceSpecificConsumptionPerPerson(resFood, 1, 2, this.raceID)
call UFSetRaceSpecificWorkEfficiencyCoeff(3, 2, this.raceID)
call UFGrantTechnology(this.raceID, "HIDDEN_SCIENCE_BOOSTER_IMPOSSIBLE")
end switch
end phrase


Судя по графикам, UFGrantTechnology работает (бонус прописан у лаб отдельно), а вот UFSetRaceSpecificWorkEfficiencyCoeff(3, 2, this.raceID) не работает вообще. При этом прописывал тоже самое для игрока в player.a в "phrase AddPlayerInitialFleets()", и отображаемое производство всего увеличивалось в те самые 1,5 раза
Аватара пользователя
Ufnv
Senior Developer
Сообщения: 1167

Общие вопросы по модам

Сообщение Ufnv » 14 апр 2016, 15:31

По графикам не надо судить, т.к. ИИ может подстраиваться под требуемую работоспособность. Проверять на игроке - если у него работает, то и у ии тоже
freifrei
Heavy Fighter
Сообщения: 75

Общие вопросы по модам

Сообщение freifrei » 14 апр 2016, 15:42

Я смотрел стартовое производство первых 40 лет, там же буст на добычу минералов в том числе - половину шахты или полфабрики ИИ не снесет же?.
Изображение
бонусы только у ИИ шаратар

а вот тут те же бонусы у игрока шаратар
Изображение
Аватара пользователя
Darkreigh
Frigate
Сообщения: 786

Общие вопросы по модам

Сообщение Darkreigh » 15 апр 2016, 14:19

► Показать
Пропуская описание разных опытов, пришел к следующему, что если GroundCombat.ini изменить какой либо символ, сохранить, потом вернуть тот же символ на его место и снова сохранить, то игра, пока не вставишь старую копию GroundCombat.ini, не запустится (окно появляется и, вроде, пытается что-то прогрузить, но выбразывает). Что происходит? В чем хитрость?
freifrei
Heavy Fighter
Сообщения: 75

Общие вопросы по модам

Сообщение freifrei » 15 апр 2016, 14:33

Редактировал notepad++? мб редактор вставлял лишние спецсимволы?
Аватара пользователя
Veshnyak
Destroyer
Сообщения: 883

Общие вопросы по модам

Сообщение Veshnyak » 15 апр 2016, 14:54

Проблемы с кодировкой. На вид ты вставляешь такой же символ, а код у него другой, не такой как был. Или после первого сохранения редактор сохраняет в кодировке, которую игра не видит. Используй редактор как freifrei советует.
Аватара пользователя
Darkreigh
Frigate
Сообщения: 786

Общие вопросы по модам

Сообщение Darkreigh » 15 апр 2016, 15:00

угу, тестанул, помогает. А есть теория, как определенный юнит привязать к определенной расе?
freifrei
Heavy Fighter
Сообщения: 75

Общие вопросы по модам

Сообщение freifrei » 15 апр 2016, 15:27

TECH ""/ RequiredTech "" не работают? Если нет, то пока никак...
freifrei
Heavy Fighter
Сообщения: 75

Общие вопросы по модам

Сообщение freifrei » 15 апр 2016, 15:51

Кстати, кто-нибудь уже пробовал делать героев?
Аватара пользователя
Darkreigh
Frigate
Сообщения: 786

Общие вопросы по модам

Сообщение Darkreigh » 15 апр 2016, 15:59

Мне сама идея не нравится (о героях). Можно подробнее про этот ТЕСН? Где про него глянуть?
upd
нашел
freifrei
Heavy Fighter
Сообщения: 75

Общие вопросы по модам

Сообщение freifrei » 15 апр 2016, 16:23

Сам не пробовал, но как я это понимаю:

В игре наземные юниты считаются за здания.
Идем в BldInfo\
У зданий есть параметр RequiredTech "имя технологии" которые их открывают.
Добавляем у нужной расы стартовую технологию, можно скрытую

Код: Выделить всё

Tech_t.all
[TECHNOLOGY] "HIDDEN_VODOLAZ"
  Hidden
  Info "HIDDEN_VODOLAZ_NAME"
  Parents
    "BLOCKER"  7

Ставим у нового наземного юнита в bldinfo\

Код: Выделить всё

RequiredTech  "HIDDEN_VODOLAZ"


Добавляем технологию в бонусы
call UFAddBonusOption(rbTechAvailable, call UFGetTechnologyName("HIDDEN_VODOLAZ"), "HIDDEN_VODOLAZ", 2, call UFGetTechnologyDescription("HIDDEN_VODOLAZ"))
и добавляем бонус нужной расе в r_(например)ery.a

либо напрямую прописываем в расовых характеристиках в

Код: Выделить всё

phrase ResetBonuses()
UFGrantTechnology(this.raceID, "HIDDEN_VODOLAZ")



Не уверен подцепится ли это когда расой играет человек, если нет - тогда в player.a нужно будет отдельно прописать что-то типа

Код: Выделить всё

if (player.raceID=1(или raceEry, не знаю как будет работать))
 UFGrantTechnology(player.raceID, "HIDDEN_VODOLAZ")
Аватара пользователя
Darkreigh
Frigate
Сообщения: 786

Общие вопросы по модам

Сообщение Darkreigh » 15 апр 2016, 16:45

попробую, спасибо.
upd
походу еще в доктринах надо печатать
2
,или там только корабли.
freifrei
Heavy Fighter
Сообщения: 75

Общие вопросы по модам

Сообщение freifrei » 15 апр 2016, 17:31

Darkreigh писал(а):Источник цитаты попробую, спасибо.
upd
походу еще в доктринах надо печатать
2
,или там только корабли.

А, есть ещё файл res_bld.a, вытаскивающий здания из bldinfo

Код: Выделить всё

// ground units
  call UFRegisterBuildingFromFile(bldMarines,  "BldInfo/Marines.ini", /*idx:84*/L"Police")
  call UFRegisterBuildingFromFile(bldHeavyMarines,  "BldInfo/HeavyMarines_06.ini", /*idx:85*/L"Marines")
  call UFRegisterBuildingFromFile(bldTanks,  "BldInfo/Tanks.ini", /*idx:86*/L"Tanks")
  call UFRegisterBuildingFromFile(bldBombers,  "BldInfo/Bombers.ini", /*idx:87*/L"Ground Attack Aircrafts")
  call UFRegisterBuildingFromFile(bldFighters,  "BldInfo/Fighters.ini", /*idx:88*/L"Fighters")
  call UFRegisterBuildingFromFile(bldBoats,  "BldInfo/Boats.ini", /*idx:89*/L"Military Boats")
 
  call UFRegisterBuildingFromFile(bldBoats,  "BldInfo/Vodolazi.ini", /*idx:какой-то там*/L"Vodolazy")


и в const.a

Код: Выделить всё

def const  bldVodolazi = какой-то номер)

А новый род войск взамен какого-то другого? Или у каждой расы свой бонусный род войск?

Про доктрины - да, только корабли. Туда лезть если добавляешь новое оружие через технологию и под это оружие стоит затачивать флоты

нашел там интересное,

Код: Выделить всё

Doctrine "Tractor beams"
  Precondition "SCTRACTORBEAM"
  Precondition "SCPARTICLESFOG"


Интересно, это на будущее или остатки удаленного в прошлом?
Аватара пользователя
Darkreigh
Frigate
Сообщения: 786

Общие вопросы по модам

Сообщение Darkreigh » 15 апр 2016, 18:03

freifrei писал(а):Источник цитаты А новый род войск взамен какого-то другого? Или у каждой расы свой бонусный род войск?
Для начала хотя бы разные картинки для пехоты и танчиков сделать.
Аватара пользователя
Darth_Brovius
Fighter
Сообщения: 13

Общие вопросы по модам

Сообщение Darth_Brovius » 17 апр 2016, 15:14

Доброго всем времени суток!
А нет ли у кого руководства, как добавить свою расу?
Аватара пользователя
Ufnv
Senior Developer
Сообщения: 1167

Общие вопросы по модам

Сообщение Ufnv » 17 апр 2016, 20:19

Darkreigh писал(а):Источник цитаты Для начала хотя бы разные картинки для пехоты и танчиков сделать.

Это просто. См. BldInfo/GroundCombat.ini и BldInfo/Marines.ini - там пример как сделать свою картинку для магеланцев.
Аватара пользователя
Ufnv
Senior Developer
Сообщения: 1167

Общие вопросы по модам

Сообщение Ufnv » 17 апр 2016, 20:24

freifrei писал(а):Источник цитаты Кстати, кто-нибудь уже пробовал делать героев?


Код: Выделить всё

  local PlayerPlanet = call UFGetHomeworld(Player.raceID)
  local PlayerHomeStar = call UFGetPlanetStar(PlayerPlanet)
  local DesignHandle

  DesignHandle = call UFGetShipDesignByName("Scout", Player.raceID)
  local ShipHandle = call UFNewShip(DesignHandle, Player.raceID)
  call UFNewFleet(Player.raceID, PlayerHomeStar, ShipHandle)

  local Hero = call UFCreateNewHero("Test Hero", "Images/races/Bog128.png", "Images/races/Big/bog_1024.jpg")
  call UFAddHeroDescription(Hero, "some hero description")
  call UFAddHeroPropertyDual(Hero, heroProduce, resScience, 100, 1)
  call UFAddHeroToPlanet(PlayerPlanet, Hero)

  Hero = call UFCreateNewHero("Test Hero1", "Images/races/Mag128.png", "Images/races/Big/Magellan_1024.jpg")
  call UFAddHeroDescription(Hero, "some hero description for hero #2")
  call UFAddHeroPropertyDual(Hero, heroProduce, resAppliedScience, 50, 1)
  call UFAddHeroToShip(ShipHandle, Hero)



И см. свойства героев, которые можно добавлять им через семейство UFAddHeroProperty

в 1.03с работают только некоторые, типа heroProduce, в 1.04 будет полный набор, скорее всего.
Аватара пользователя
Darkreigh
Frigate
Сообщения: 786

Общие вопросы по модам

Сообщение Darkreigh » 17 апр 2016, 23:20

Ufnv писал(а):Источник цитаты Это просто
Большое спасибо, заработало.
linki
Fighter
Сообщения: 15

Общие вопросы по модам

Сообщение linki » 19 апр 2016, 13:28

Доброго времени суток. Такой вопрос возник.
Как можно корректно прописать расе корабль другой расы?
Например, линкор богованов людям.
Пробовал прописать в файле ShipBody.all . В результате он появился в списке созданий кораблей, но отсутствует сетка расстановки модулей.
Аватара пользователя
Darkreigh
Frigate
Сообщения: 786

Общие вопросы по модам

Сообщение Darkreigh » 19 апр 2016, 18:59

У богован нет сетки, скорее всего, так как рисовались для ботоевента.
possotop
Fighter
Сообщения: 19

Общие вопросы по модам

Сообщение possotop » 19 апр 2016, 20:18

Господа, кто-нибудь знает как убрать общий лимит строений на земных и гайя планетах?
Чтобы было как на бедных планетах: есть лимит в 50 гидропонных ферм, и строится 50, неважно, сколько ты заводов там успел построить...
possotop
Fighter
Сообщения: 19

Общие вопросы по модам

Сообщение possotop » 19 апр 2016, 20:23

linki писал(а):Источник цитаты Как можно корректно прописать расе корабль другой расы?
Например, линкор богованов людям.

В файле ShipBody.all копируете строки богованского линкора, меняете расу на Hum, добавляете ID_MOD_X (в случае с линкором богован iD уже присутствует).
► Показать

Здесь прописана сетка: cell_info_path "bg6.cli". Можете и сами сделать ее редактором.
Вот только оружия и брони богованов это вам не откроет, будет всего лишь еще один дизайн...
possotop
Fighter
Сообщения: 19

Общие вопросы по модам

Сообщение possotop » 19 апр 2016, 21:16

possotop писал(а):Источник цитаты Господа, кто-нибудь знает как убрать общий лимит строений на земных и гайя планетах?
Чтобы было как на бедных планетах: есть лимит в 50 гидропонных ферм, и строится 50, неважно, сколько ты заводов там успел построить...

Решено методом научного тыка. Понадобились файлы res_bld.a и economics.a...
Аватара пользователя
Veshnyak
Destroyer
Сообщения: 883

Общие вопросы по модам

Сообщение Veshnyak » 19 апр 2016, 23:27

possotop писал(а):Источник цитаты Понадобились файлы res_bld.a и economics.a...

Слишком подробно... Нужно было написать - "Сделал! Всё работает." :mrgreen:
А серьезно, неплохо бы выкладывать изменения в коде, позже кто-нибудь этот же вопрос задаст.
Lui
novice
Сообщения: 2

Общие вопросы по модам

Сообщение Lui » 20 апр 2016, 02:17

Здравствуйте. Я тут делаю мод, точнее он ничего нового в игру не вносит, а только дублирует модули, к примеру ангар добавляется 8 на 6 в дополнение к стандартному 6 на 8 (мое внутреннее Я в недоумении, когда видит что модули нельзя поворачивать :roll: )

Изменения в equip.all
► Показать


собственно проблема: все норм пока играешь, но если выйти из игры и снова зайти в конструктор, то на месте "Class 1 hangar R" будет обычный "Class 1 hangar".
Кажется проблема с сейвом дизайна (похоже он сохраняет TECH "SCANG1" (где написано "ангар"), а не параметр [SPECIAL] "Class 1 hangar R") или я не прав и собака зарыта где-то в другом месте?

Вернуться в «Настройка/модификации»