Общие вопросы по модам
Общие вопросы по модам
Мелочь, а неприятно: новый форт съезжает на категории оружия, хотя эти категории должны бы съехать вниз:
И второй вопрос - от чего зависит порядок появления картинки форта? У меня он в equip.all идет после кластера для всех классов, а отображается первым.
И второй вопрос - от чего зависит порядок появления картинки форта? У меня он в equip.all идет после кластера для всех классов, а отображается первым.
Общие вопросы по модам
Вопрос про добавление новых зданий. Он уже поднимался на страницах 4-6 этой темы, но я так и не увидел описания работающего механизма.
Я уже накатал простыню про свою неудачную попытку добавить в качестве эксперимента улучшенную копию здания, но, чтобы не заставлять раньше времени никого в этом копаться, сначала спрошу про общий порядок действий. Насколько я понял, нужно: 1. прописать в res_bld.a; 2. прописать в const.a; 3. прописать в plantype.ini, и, конечно, создать картинку, файл ini с параметрами, технологию/сделать доступным по умолчанию. С описанием не разобрался вовсе. Если нужно больше конкретики, чтобы указать на то, что я делаю неправильно, дайте отмашку, распишу.
Я уже накатал простыню про свою неудачную попытку добавить в качестве эксперимента улучшенную копию здания, но, чтобы не заставлять раньше времени никого в этом копаться, сначала спрошу про общий порядок действий. Насколько я понял, нужно: 1. прописать в res_bld.a; 2. прописать в const.a; 3. прописать в plantype.ini, и, конечно, создать картинку, файл ini с параметрами, технологию/сделать доступным по умолчанию. С описанием не разобрался вовсе. Если нужно больше конкретики, чтобы указать на то, что я делаю неправильно, дайте отмашку, распишу.
Общие вопросы по модам
Ufnv писал(а):Украсть, скорее, можно, а вот обменять/продать - не уверен, надо хорошо так смотреть... Мне казалось, что на обмен/продажу есть условие доступности материнских технологий, которое тут не выполняется. Я могу потом посмотреть, сейчас - никак, нет кода под рукой.
Пролистал всю тему, но так и не увидел ответа на вопрос. Всё-таки ИИ может украсть добавленную таким образом технологию или нет?
Общие вопросы по модам
NX-01 писал(а):Источник цитаты Вопрос про добавление новых зданий
Вот так получилось
► Показать
Порядок такой
1. создать в BldInfo\ *.ini с описанием здания
2. создать новую запись в BldInfo\Summary.ini для новой секции типа зданий на планете или внести название нового здания в существующую
3. создать и прописать картинку в *.ini
4. внести даные в PLANTYPE.INI, если нужно строить здание на определенных типах планет. Если нет, то достаточно прописать "AllowedByDefault" в BldInfo\ ini-файл, тогда здание можно строить на любых планетах.
В ModKit\
5. res_bld.a
call UFRegisterBuildingFromFile(bldSenat, "BldInfo/Senat.ini", /*idx:90*/L"Сенат")
6. const.a
def const bldSenat = 40
7. info.a - вплывающая подсказка (у меня не заработала)
8. в LANG\Rus\buildings.lng - добавить описание. Название секции должно совпадать с полем "Info" BldInfo\ ini-файла
9. Скомпилировать, после положить полученный rtq.txt в LANG\Rus и переименовать в rtq.lng, иначе будут сбои в локализации
10. собрать всё, в каталоге мода должна получится примерно такая структура
\BldInfo\Summary.ini
\BldInfo\Senat.ini
\Images\senat.png
\LANG\Rus\buildings.lng
\LANG\Rus\rtq.lng
\rtq.cht
\rtq.gen
\rtq.pht
\rtq.rht
\PLANTYPE.INI
11.подключить мод
Патчи к игре.
>>Ufnv
Может сделаете DLC Master of Orion 2? Я когда ждал Ориона начал модить игру и в итоге получился мод второго Ориона. Призадумался и решил подождать пока не выйдет от варгаминга орион. Затем долго модил Орион от варгаминга, и по прошествии времени думаю что Polaris Sector более подходящая основа для Ориона 2, надо расы и богованов в Антаран переделать, добавив Орион 2 технологий.
Может сделаете DLC Master of Orion 2? Я когда ждал Ориона начал модить игру и в итоге получился мод второго Ориона. Призадумался и решил подождать пока не выйдет от варгаминга орион. Затем долго модил Орион от варгаминга, и по прошествии времени думаю что Polaris Sector более подходящая основа для Ориона 2, надо расы и богованов в Антаран переделать, добавив Орион 2 технологий.
Общие вопросы по модам
roman_ke писал(а):Источник цитаты Я когда ждал Ориона начал модить игру и в итоге получился мод второго Ориона
Какую игру? Эту? Если да, то где можно увидеть, что получилось?
roman_ke писал(а):Источник цитаты надо расы и богованов в Антаран переделать, добавив Орион 2 технологий.
Для этого DLC не надо. Нужны картинки рас, кораблей, технологий. Тексты описаний. И собрать всё вместе. Мод Star Wars служит отличным примером, что это возможно.
Общие вопросы по модам
Владимир, несколько вопросов
1. rtq.err после компиляции выдает предупреждение "race.a: Warning! At 1242 67 : Attribute not predefined CheckStopWarPlayerAbuse".
Это без изменения файлов. Явно баг какой-то.
2. В rtq_es.bat появились ключи
-at
-gat
Для чего они? С ними компиляция выдает виндовую ошибку "Прекращена работа программы....". Если их удалить - все работает.
1. rtq.err после компиляции выдает предупреждение "race.a: Warning! At 1242 67 : Attribute not predefined CheckStopWarPlayerAbuse".
Это без изменения файлов. Явно баг какой-то.
2. В rtq_es.bat появились ключи
-at
-gat
Для чего они? С ними компиляция выдает виндовую ошибку "Прекращена работа программы....". Если их удалить - все работает.
Общие вопросы по модам
Veshnyak писал(а):Источник цитаты Владимир, несколько вопросов
1. rtq.err после компиляции выдает предупреждение "race.a: Warning! At 1242 67 : Attribute not predefined CheckStopWarPlayerAbuse".
Это - нормально. В языке любому объекту можно добавить атрибут/метод динамически, что и происходит. Поэтому - warning, а не error.
Это без изменения файлов. Явно баг какой-то.
2. В rtq_es.bat появились ключи
-at
-gat
Для чего они? С ними компиляция выдает виндовую ошибку "Прекращена работа программы....". Если их удалить - все работает.
А. Это - для генерации списка непереведенных фраз и подсос частично переведенных. Можно спокойно удалять из батника.
Общие вопросы по модам
Возвращаясь к:
Дополнительно: В настоящий момент 'сценарии' невозможно запустить, если игроку разрешена только одна конкретная раса.
- будет ли это (возможность локализации сценария) сделано (и когда?)?Ufnv писал(а):Источник цитаты Я могу сделать для сценариев "кодированный текст", типа $ui.lng$123 - чтобы брал 123-й id из ui.lng
Дополнительно: В настоящий момент 'сценарии' невозможно запустить, если игроку разрешена только одна конкретная раса.
Общие вопросы по модам
(пусть будет тут для информации)
Оказывается ключики -gat и -at довольно полезны при работе над локализациями текстов.
-gat = generete_additional_translation полностью рабочая опция, с которой в файл .gat записываются все строки/фразы не имеющие перевода.
-at = additional_translation - опция добавление из файла .at в код (и в файл докализации .lng) строк имеющих перевод. Важно(!), чтобы в папке МодКита был хотя бы пустой файл .at, в противном случае компилятор зависает!
Т.о. при "черновом" запуске компилятора в rtq.gat появятся все проиндекстированные строки без перевода. К каждой строке будет добавлена заготовка: Lang "".
Беря по-строчно (или блоками) из rtq.gat, копипастим в rtq.at и в Lang "" добавляем нужный перевод.
При последующем запуске компилятора - переведенные строки окажутся в нужном месте!
P.S. Имеются и др. ключики:
-nss = no_strings_sort
-is = insert_strings
-a, -na = assist, no_assist
-af, -naf = assistfile, no_assistfile
-ef, -nef = errorfile, no_errorfile
//спасибо, добавил в "описание файлов игры" =V.
Оказывается ключики -gat и -at довольно полезны при работе над локализациями текстов.
-gat = generete_additional_translation полностью рабочая опция, с которой в файл .gat записываются все строки/фразы не имеющие перевода.
-at = additional_translation - опция добавление из файла .at в код (и в файл докализации .lng) строк имеющих перевод. Важно(!), чтобы в папке МодКита был хотя бы пустой файл .at, в противном случае компилятор зависает!
Т.о. при "черновом" запуске компилятора в rtq.gat появятся все проиндекстированные строки без перевода. К каждой строке будет добавлена заготовка: Lang "".
Беря по-строчно (или блоками) из rtq.gat, копипастим в rtq.at и в Lang "" добавляем нужный перевод.
При последующем запуске компилятора - переведенные строки окажутся в нужном месте!
P.S. Имеются и др. ключики:
-nss = no_strings_sort
-is = insert_strings
-a, -na = assist, no_assist
-af, -naf = assistfile, no_assistfile
-ef, -nef = errorfile, no_errorfile
//спасибо, добавил в "описание файлов игры" =V.
Патчи к игре.
а можно в каком нибудь патче добаить прионам-орионам модуль гиперперехода в кораблики? а то собрать ты его собрал - а использовать в атаке никак. налетит толпяк в миллиард истребителей и привет.
- p0rc0_r0ss0
- Destroyer
- Сообщения: 1169
Патчи к игре.
Comissar писал(а):Источник цитаты а можно в каком нибудь патче добаить прионам-орионам модуль гиперперехода в кораблики? а то собрать ты его собрал - а использовать в атаке никак. налетит толпяк в миллиард истребителей и привет.
Вообще, возможность редактировать чужие конфигурации была бы мега фича.
Патчи к игре.
просто сверхразвитые цивилизации... а самого необходимого модуля и нет. не хорошо ![Very Happy :D](./images/smilies/icon_e_biggrin.gif)
![Very Happy :D](./images/smilies/icon_e_biggrin.gif)
Патчи к игре.
Comissar писал(а):Источник цитаты можно в каком нибудь патче добаить прионам-орионам модуль гиперперехода в кораблики?
Ни что не мешает взять самому и, запустив конструктор кораблей (-design), отредактировать в файле default.ds или default_lum.ds проекты прионо-орионовских кораблей.
Примечание:
► Показать
Патчи к игре.
Artos писал(а):Источник цитатыComissar писал(а):Источник цитаты можно в каком нибудь патче добаить прионам-орионам модуль гиперперехода в кораблики?
Ни что не мешает взять самому и, запустив конструктор кораблей (-design), отредактировать в файле default.ds или default_lum.ds проекты прионо-орионовских кораблей.
Примечание:► Показать
у меня именно стим)
Патчи к игре.
Comissar писал(а):Источник цитаты у меня именно стим
Ну в таком случае возможны варианты:
1. Скачать с сайта Ящериц Polaris Sector - v1.06g Update и, распаковав его, временно использовать вместо стимовской недоделки... ;
2. Взять тут файлы default.ds и default_lum.ds с добавленными модулями контроля гиперпереходов для прионо-арионовских кораблей и использовать их вместо оригинальных;
3. Взять уже исправленный соответствующий default.ds или default_lum.ds из актуального Мода "Неофициальные исправления ошибок текущей версии PS". В этом варианте у прионо-арионовских кораблей, помимо добавленных модулей контроля гиперпереходов, рабочие щиты(!)
Общие вопросы по модам
не помню, может уже спрашивал где-то
в race.a в районе 6324-6345
как для одной определенной расы вместо 29 ферм поставить 28?
в race.a в районе 6324-6345
Код: Выделить всё
if (rbvNone != call UFGetBonusSelected(rbEnergyLifeform))
call UFSetECOPlanetBuildingCount(PlanetHandle, bldPlanetaryFactory, 10)
call UFSetECOPlanetBuildingCount(PlanetHandle, bldOrbitalFactory, 3)
else
call UFSetECOPlanetBuildingCount(PlanetHandle, bldPlanetaryFactory, 3)
call UFSetECOPlanetBuildingCount(PlanetHandle, bldOrbitalFactory, 1)
call UFSetECOPlanetBuildingCount(PlanetHandle, bldFarm, 29)
call UFSetPlanetResource(PlanetHandle, resFood, 150000)
end if
Общие вопросы по модам
Darkreigh, по хорошему, если "для одной определенной расы" то править не race.a, а файл конкретной расы (r_Xxx.a). В конец почти пустой функции phrase CreateHomeworld(PlanetHandle) можно вставить строки, которые просто переназначат кол-во ферм на требуемое:
Или же можно в race.a, но тогда нужно знать константу-идентификатор требуемой расы raceID (raceSha ... raceLum) и тогда вместо одной строки с фермами получится 5: - это для Логанов.
Код: Выделить всё
phrase CreateHomeworld(PlanetHandle)
::CreateHomeworld(PlanetHandle)
if (rbvNone = call UFGetBonusSelected(rbEnergyLifeform))
call UFSetECOPlanetBuildingCount(PlanetHandle, bldFarm, Num) //<
end if
end phrase
Или же можно в race.a, но тогда нужно знать константу-идентификатор требуемой расы raceID (raceSha ... raceLum) и тогда вместо одной строки с фермами получится 5:
Код: Выделить всё
call UFSetECOPlanetBuildingCount(PlanetHandle, bldOrbitalFactory, 1)
if (this.raceID == raceLog) //< идентификатор требуемой расы
call UFSetECOPlanetBuildingCount(PlanetHandle, bldFarm, Num) //< Num требуемое кол-во ферм
else
call UFSetECOPlanetBuildingCount(PlanetHandle, bldFarm, 29) // исходная строка
end if
call UFSetPlanetResource(PlanetHandle, resFood, 150000)
Общие вопросы по модам
да, через race.a работает. спасибо.
Общие вопросы по модам
(по следам топика "дом, милый дом")
![Smile :)](./images/smilies/icon_e_smile.gif)
Однако в процессе создания новых типов планет проявился нюанс:
Планет каждого нового типа требуется в игре по одной каждого. Для этого используем параметр 'Generate Manual 1 RND 1'. И тут начались непонятки, первоначально новые типы планет были вставлены в начало файла PLANTYPE.INI (т.е. перед "Гайкой"). По какой-то причине планеты генерились рядом с гайками и земными... Перенес в конец файла (после астероидов) и подправил различные иные параметры в создаваемых типах. Планеты стали генериться нормально, т.е. 'основными' в пакете планет у звезды. Перед заключительной чисткой строк и пр. по какой то причине опять планеты стали генериться в соседстве с землями/гайками(?). А после переноса блока кода с новыми типами планет в начало файла - все стало работать как задумано...
Ufnv, собственно вопрос:"Почему такое происходит? Чем грозит такая 'нестабильность' поведения кода, зависящего от места расположения строк в файле? Есть ли возможность исправить/избавиться от коллизий?"
Блок строк кода новых типов планет:
Покопавшись с различным вариантами реализации "домашних" планет для некоторых рас, всё же тоже пришёл к выводу, что разумнее добавить новые (под)типы планет. Жаль что нет возможности использовать прелести ООП (объектно ориентированного программирования) и использовать объект шаблона исходной планеты требуемого типа, но... что доступно - на том и строим.Ufnv писал(а):Источник цитаты А зачем "псевдо-типы"? Не проще нормальный тип добавить?
![Smile :)](./images/smilies/icon_e_smile.gif)
Однако в процессе создания новых типов планет проявился нюанс:
Планет каждого нового типа требуется в игре по одной каждого. Для этого используем параметр 'Generate Manual 1 RND 1'. И тут начались непонятки, первоначально новые типы планет были вставлены в начало файла PLANTYPE.INI (т.е. перед "Гайкой"). По какой-то причине планеты генерились рядом с гайками и земными... Перенес в конец файла (после астероидов) и подправил различные иные параметры в создаваемых типах. Планеты стали генериться нормально, т.е. 'основными' в пакете планет у звезды. Перед заключительной чисткой строк и пр. по какой то причине опять планеты стали генериться в соседстве с землями/гайками(?). А после переноса блока кода с новыми типами планет в начало файла - все стало работать как задумано...
Ufnv, собственно вопрос:"Почему такое происходит? Чем грозит такая 'нестабильность' поведения кода, зависящего от места расположения строк в файле? Есть ли возможность исправить/избавиться от коллизий?"
Блок строк кода новых типов планет:
► Показать
Общие вопросы по модам
Когда заселяется сектор планетами, то сначала выбираются звезды для тех, кто с типом "Manual", по порядку. Им выбираются звезды по их предпочтениям. Соответственно, если предпочтения планет совпадают, а подходящих звезд мало, то запросто могут быть две планеты в системе.
Таким образом, рекомендация при добавлении нового "хорошего" типа, уменьшать кол-во earthlike, например. Или сделать другие предпочтения. Например, сделать для Ocean_HW Prefer "F" AnySize 0 "A" AnySize 1 "G" AnySize 2 "K" AnySize 2 "B" AnySize 2 "M" AnySize 3
Таким образом, рекомендация при добавлении нового "хорошего" типа, уменьшать кол-во earthlike, например. Или сделать другие предпочтения. Например, сделать для Ocean_HW Prefer "F" AnySize 0 "A" AnySize 1 "G" AnySize 2 "K" AnySize 2 "B" AnySize 2 "M" AnySize 3
Общие вопросы по модам
Ufnv, большое спасибо за разъяснение.
Спрошу все же еще раз в этой теме про:
1. Проблема с call UFChangePlanetType(PlanetHandle, 3).
Описание проблемы в теме терраформинга.
2. Как добавить (и возможно ли вообще) свою рабочую UserFunc? Текст вопроса тут.
Спрошу все же еще раз в этой теме про:
1. Проблема с call UFChangePlanetType(PlanetHandle, 3).
Описание проблемы в теме терраформинга.
2. Как добавить (и возможно ли вообще) свою рабочую UserFunc? Текст вопроса тут.
Общие вопросы по модам
Ufnv, похоже удалось найти причину сбоя в работе функции call UFChangePlanetType(PlanetHandle, 3) - при смене типа уже обустроенной планеты эта функция (как предполагаю) пытается сохранить на планете все уже имеющиеся на планете постройки и население. Если на исходной планете кол-во шахт/ферм и т.п. значительно превышает кол-во "разведанных ресурсов" на проапрейденной (терраформированной) планете, то происходит сбой! Нередко, из-за чрезмерно избыточных шахт исчезают фабрики(заводы), а орб.верфи остаются. Дополнительно могут исчезать и несколько "лишних" шахт. И, пока "излишки" построек не будут удалены "руками" - недоступно строить фабрики и (иногда) шахты.
На сейчас, приходится использовать такой вариант-костыль:т.е. перед процессом апгрейда планеты (Upgrade == 3) помимо удаления явно лишнего (гидропонки, купола и т.п.) удаляю все предположительно излишние шахты, оставляя не более 2(!) каждого типа.
Заодно, по окончании удаляю все оставшиеся излишки: - тогда процесс апгейда планет происходит без потерь заводов ![Exclamation :!:](./images/smilies/icon_exclaim.gif)
Предложение-просьба: неплохо бы дать возможность модмейкерам считывать из параметров исходной планеты её поле "Upgrade", тогда можно было бы точнее управлять процессом апгрейда/терраформирования.
Ну а верхом пожелания была бы возможность считывать и устанавливать (Get|Set) строковые значений параметров для планеты: Nova, Destroy, Degrade и Upgrade. ![Smile :)](./images/smilies/icon_e_smile.gif)
На сейчас, приходится использовать такой вариант-костыль:
► Показать
Заодно, по окончании удаляю все оставшиеся излишки:
► Показать
![Exclamation :!:](./images/smilies/icon_exclaim.gif)
Предложение-просьба: неплохо бы дать возможность модмейкерам считывать из параметров исходной планеты её поле "Upgrade", тогда можно было бы точнее управлять процессом апгрейда/терраформирования.
![Wink ;)](./images/smilies/icon_e_wink.gif)
![Smile :)](./images/smilies/icon_e_smile.gif)
Общие вопросы по модам
Ufnv, при написании мода "Случайные события" (например авария с лабораторией) где предусмотрены частичные разрушения строений и гибель населения, использую функцию UFGetAISkill(). Столкнулся с тем, что во второй половине игры (~3050 год) эта функция стала выдавать 255 вместо положенных ей 0..3 (skEasy..skHard). А ведь на эту функцию завязана и игра (функции богованов, пиратов, и т.п.)!
Вопрос: В чем может быть причина такого сбоя функции и/или как это обойти?
Также, попытался расширить мод "Домашние миры", добавив Люменам их "родной мир" на базе "СуперЗемли" ("Heavy_HW"), однако(!) ничего не вышло.
Планета с новым типом создается и заселяется, но на экране планеты полностью отсутствует интерфейс отображения допустимых построек и уже построенных. Попробовал просто поселить Люменов на СуперЗемле ("Heavy") - результат аналогичный, т.е. отсутствие интерфейса.
В чём может быть проблема?
Вопрос: В чем может быть причина такого сбоя функции и/или как это обойти?
Также, попытался расширить мод "Домашние миры", добавив Люменам их "родной мир" на базе "СуперЗемли" ("Heavy_HW"), однако(!) ничего не вышло.
![Sad :(](./images/smilies/icon_e_sad.gif)
В чём может быть проблема?
Общие вопросы по модам
Получил ответ на 2-ой вопрос, т.е. почему отсутствовал интерфейс построек:
Чтобы полноценно пользоваться планетой владельцу должны быть доступны технологии соответствующих куплов... СтОили выдать люменам технологию куполов с радиационной защитой и они отлично поселились на "СуперЗемле".
Чтобы полноценно пользоваться планетой владельцу должны быть доступны технологии соответствующих куплов... СтОили выдать люменам технологию куполов с радиационной защитой и они отлично поселились на "СуперЗемле".