Community Imperial: Скрипты мода DenMod - Сообщество Империал




DinarMayor

Скрипты мода DenMod

Описания всех скриптов и их обсуждение.
Theme created: 03 October 2022, 21:27 · Author: DinarMayor
Views:
 47 360

  • 27 Pages
  • « First
  • 3
  • 4
  • 5
  • 6
  • 7
  • Last »
 1 
 DinarMayor
  • Imp
Imperial
 

Date: 26 November 2022, 16:36




Скрипты мода DenMod



Imp



В этой теме будут выкладываться и обсуждаться новые скрипты мода. Также буду рад предложениям и идеям для скриптов - возможно что-то хотели бы увидеть в моде, а может исправить/изменить уже имеющейся скрипт. В шапке темы будут описания только тех скриптов, которые внедрены в текущую(доступную) версию мода, а все новые будут в этой теме.



Описание скриптов (Reveal)



Номер карты для тех, кто хочет отблагодарить разработчика:
СберБанк: 2202 2063 6114 3568



     Xamax
    • Imp
    Imperial
     

    Date: 09 April 2023, 00:25

    приемышей вообще запретить надо. что это еще за дичь в средние века?)
       DinarMayor
      • Imp
      Imperial
       

      Date: 09 April 2023, 00:29

      Xamax

      приемышей вообще запретить надо. что это еще за дичь в средние века?)

      Да, ИИ никак пока, без реверса точно никак) Но игроку то я добавил отключение усыновления - на старте спрашивать будет, отключить или нет. Ну, ты в курсы - для тебя же сделал этот скрипт)))
         DinarMayor
        • Imp
        Imperial
         

        Date: 11 April 2023, 17:12

        Простой скрипт, заменяющий портреты всем генералам конкретной фракции. По сути новая культура.
        function easternEuropeanPortraits()
            for f=0, 30 do
                local fac = stratmap.game.getFaction(f);
                if fac:getFactionName()=="poland" or fac:getFactionName()=="hungary" or fac:getFactionName()=="lithuania" or fac:getFactionName()=="georgia" then
                    for c = 0, fac.numOfCharacters-1 do
                        local oChar = fac:getCharacter(c);
                        if oChar:getTypeID()==7 then        --named character
                            print("subFaction old: \nportrait: "..oChar.namedCharacter.portrait.."\nportrait2: "..oChar.namedCharacter.portrait2)
                            oChar.namedCharacter.portrait=oChar.namedCharacter.portrait:gsub("southern_european"
        , "eastern_european");
                            oChar.namedCharacter.portrait2=oChar.namedCharacter.portrait:gsub("southern_european"
        , "eastern_european");
                            print("subFaction new: \nportrait: "..oChar.namedCharacter.portrait.."\nportrait2: "..oChar.namedCharacter.portrait2.."\n\n")
                        end
                    end
                end
            end
        end

        Imp
           АрАл
          • Imp
          Imperial
           

          Date: 30 April 2023, 07:14

          DinarMayor, привет!
          Такой вопрос: а скрипты на языке Lua можно "присобачить" к модам на Первый Рим (в смысле - RTW-BI)?
             DinarMayor
            • Imp
            Imperial
             

            Date: 30 April 2023, 13:26

            АрАл 30 April 2023, 07:14

            DinarMayor, привет!
            Такой вопрос: а скрипты на языке Lua можно "присобачить" к модам на Первый Рим (в смысле - RTW-BI)?

            Привет! :046:
            Нет, к сожалению - сам бы рад был, если да. :)
               DinarMayor
              • Imp
              Imperial
               

              Date: 30 April 2023, 14:30

              DinarMayor

              механику перераспределения населения из рима1 в медь2 при захвате поселения

              Да уже все - добавил) Только тут будет не рандомное распределение, а равномерное по всем поселениям. Т.е. например у игрока 5 городов, захватили город, выбрали перераспределения и, скажем, 1000 человек распределились по 200 человек по этим пяти городам.



              Скрипт перераспределение населения

              Пример: захватили город - 4277 человек распределились равномерно по другим 4 поселениям игрока по 1069 человек. 1069*4=4276. Один не доехал)
              Spoiler (expand)

              лог (Reveal)

              Фрагмент скрипта (Reveal)

              Если что убрать недолго - пока оставлю так.

              !!!ps Потом перенесу в скрипты.
                 Yaroslav_Skyba
                • Imp
                Imperial
                 

                Date: 19 May 2023, 01:01

                Добрый день. Можно ли попросить отдельно скрипт Автообъединение армий ИИ? Хочу прикрутить к своему моду. Спасибо!
                   DinarMayor
                  • Imp
                  Imperial
                   

                  Date: 19 May 2023, 03:17

                  Yaroslav_Skyba 19 May 2023, 01:01

                  Добрый день. Можно ли попросить отдельно скрипт Автообъединение армий ИИ? Хочу прикрутить к своему моду. Спасибо!

                  :046:
                  Мод работает при помощи программы M2TWEOP. Скрипты работают при помощи него и написаны на языке Lua. Подробнее вот тут:

                  DinarMayor 31 January 2023, 06:33

                  Или вот отсюда можно To view the link Register Переходим по ссылке и кликаем по надписи Discord.
                  Spoiler (expand)


                  Если будете устанавливать прогу, то устанавливайте версию 2.2.0 или 2.2.1. Скачать можно To view the link Register.
                  Spoiler (expand)


                  Вот сам To view the link Register. Он универсальный - я его уже адаптировал было для одного мода. Просто нужно будет распаковать архив и закинуть файл в папку ВАШ_МОД\youneuoy_Data\plugins\lua и прописать в файле luaPluginScript.lua строку
                  require('mergeArmies')

                  Или скопировать все содержимое скаченного файла и вставить в конце luaPluginScript.lua.
                     Yaroslav_Skyba
                    • Imp
                    Imperial
                     

                    Date: 19 May 2023, 13:53

                    Спасибо, все работает.

                    [-Добавлено к сообщению-]

                    A можно еще попросить скрипт возрождения уничтоженной фракции? #*

                    И еще одно, не знаете ли вдруг, возможно ли при помощи EOP редактировать количество ходов осады, тоесть время после которого город будет сдан? Также можно ли убрать или уменшить истощение защитников во время осады? Хочу сделать необходимость штурма городов более предпочтительной нежели осаду на истощение(как по мне это эксплоит)
                       DinarMayor
                      • Imp
                      Imperial
                       

                      Date: 19 May 2023, 17:54

                      Yaroslav_Skyba

                      A можно еще попросить скрипт возрождения уничтоженной фракции?

                      Этот скрипт находится в скриптах меди в файле den_script.txt в папке DenMod_v.1.3\data\world\maps\campaign\imperial_campaign
                      To view the link Register примерно он выглядит. +частично он написан на Луа - файл emergent_factions.lua в папке DenMod_v.1.3\youneuoy_Data\plugins\lua\DenMod. Вам придется адаптировать это все самому. :046:
                      В этом году я буду его переписывать полностью на Луа, но пока нет времени на это)

                      Yaroslav_Skyba

                      И еще одно, не знаете ли вдруг, возможно ли при помощи EOP редактировать количество ходов осады, тоесть время после которого город будет сдан?

                      Насколько я знаю, нет, вроде. Уточняю у автора проги. Это обсуждалось, но вроде не сделали.

                      Yaroslav_Skyba

                      Также можно ли убрать или уменшить истощение защитников во время осады?

                      Это можно. В моем моде есть скрипт пополнения, replenishment_army, и скрипт ломающий постройки в осажденном городе - siege_destruction. Можно на их примере сделать скрипт, что будет восстанавливать потерянные при осады войска, т.е. визуально потерь не будет.
                      Вот быстренько накидал:
                      function siege_replenishment_army_test()
                          for f = 0, stratmap.game.getFactionsCount()-1 do
                              local fac = stratmap.game.getFaction(f);
                              for s=0, fac.settlementsNum-1 do
                                  local ourSett = fac:getSettlement(s);
                                  if ourSett.army~=nil and ourSett.siegesNum~=0 then
                                  for u=0, ourSett.army.numOfUnits-1 do
                                      local unit = ourSett.army:getUnit(u);
                      
                                      unit.soldierCountStratMap=unit.soldierCountStratMapMax;
                                  end
                              end
                          end
                      end

                      Скрипт будет пополнять численность солдат в отрядах в осажденном городе до максимума. Но нужно сделать по другому: нужно "запомнить"(записать в таблицу, например) численность солдат в отрядах на момент осады, а после сравнивать город и город из таблицы, юнит и юнит из таблицы и т.п., и приравнивать unit.soldierCountStratMap к этому числу. Понятно, что еще нужно вызывать функцию siege_replenishment_army_test() где-то нужно. Например, вот так
                      function onChangeTurnNum(turnNum)
                          siege_replenishment_army_test()
                      end

                      onChangeTurnNum(turnNum) - это встроенная функция, срабатывает на начало нового хода. Список и описание таких функций To view the link Register.
                        • 27 Pages
                        • « First
                        • 3
                        • 4
                        • 5
                        • 6
                        • 7
                        • Last »
                         
                        Translate a Page
                        Conditions · Responsibility · Confid. · About · 03 Jul 2026, 01:25 · Mirrors: ImtwOrg, ImtwSite, ImtwRuImtwRu, ImtwOrg, ImtwSite