Сообщество Империал: Добавление скриптовых функций к различным кнопкам в Medieval 2 - Сообщество Империал

Avtocrator

Добавление скриптовых функций к различным кнопкам в Medieval 2

Как же это делается
Тема создана: 19 апреля 2013, 19:18 · Автор: Avtocrator
  • 2 Страниц
  • 1
  • 2
 Македонский
  • Imperial
Imperial
Форумчанин

Дата: 15 августа 2019, 01:07

А можно через скрипт менять название имён???
     Master_TW_DAR
    • Imperial
    Imperial
    Форумчанин

    Дата: 28 января 2024, 14:31

    Дополнение для данной темы ...

    ---

    Сичевые Свитки - Статья - Добавление горячих клавиш для выполнения скриптов (descr_shortcuts.txt)


    В этом туторе объясняется, как добавить новые сочетания клавиш. Эти сочетания используются для скриптов, сами по себе они ничего не делают.

    Нам нужны файлы:

    - text\descr_shortcuts.txt
    - text\shortcut.txt

    Чтобы назначить новые клавишы откроем descr_shortcuts.txt.

    Найдем "save_stratmap" и добавим новую метку для быстрого доступа, а также сочетание клавиш.

    Например, "newShortcut":

    strat
        newShortcut                  F5
        save_stratmap                S CTRL
        load_stratmap                L CTRL
        speedup_ai                   SPACE
        stop_character               BACKSPACE
        capital_zoom                 HOME    H
        burdel                       F4
        display_standards            J
        toggle_character_labels      N CTRL
        toggle_settlement_labels     T CTRL
        diplomacy_overview_button    D
        finances_button              F
        construction_button          B
        recruitment_button           R
        faction_button               O
        automerge_units              M
        mission_button               C
        zoom_in                      NUM_ADD
        zoom_out                     NUM_SUBTRACT
        reset_rally_point            DEL
        disband                      D    CTRL
        show_multi_turn_paths        EQUALS
        select_next_selected         CLOSE_BRACKET
        select_prev_selected         OPEN_BRACKET
    end
    


    Не забудьте сделать то же самое для множества камер FPS.

    Теперь нам нужно назначить отображение для нашего ключа, так чтобы движок знал, в какой части игры наша клавиша будет использоваться.
    Идем в секцию KEY MAPPINGS и в подразделе strat , добавим наше сочетание:

    strat
      newShortcut                      strat_ui
      save_stratmap                    strat_ui
      load_stratmap                    strat_ui
      speedup_ai                       strat_ui
      stop_character                  strat_ui
      capital_zoom                    strat_ui
      display_standards               strat_ui
      toggle_character_labels         strat_ui
      toggle_settlement_labels        strat_ui
      quit                            strat_ui
      diplomacy_overview_button       strat_ui
      finances_button                strat_ui
      zoom_in                        strat_ui
      zoom_out                       strat_ui
      reset_rally_point              strat_ui
      mission_button                 strat_ui
      disband                        card_manager
      show_multi_turn_paths          strat_ui
      inc_scale                      radar
      dec_scale                      radar
      construction_button
      recruitment_button
      faction_button
      automerge_units                campaign_hud
      step_l                         camera
      step_r                         camera
      step_fwd                        camera
      step_bck                       camera
      rot_l                          camera
      rot_r                          camera
      select_next_selected           hud_select_next_item_cycle
      select_prev_selected           hud_select_prev_item_cycle
    end
    


    Затем удалите preferences\keys.dat, в противном случае m2tw не будет разбирать наши descr_shortcuts.txt!

    Если вы хотите добавить описание для новых сочетаний, вы можете сделать это в shortcut.strings.bin. Это описание будет отображаться в меню F1, а также в главном меню опций.

    Теперь campaign_script. Сейчас мы можем определить когда сработает наше сочетание клавиш

    monitor_event ShortcutTriggered
      ShortcutTriggered strat_ui newShortcut
    end_monitor
    


    "newShortcut" был назначен на F5, так что теперь всякий раз, когда нажата F5 и игра на страткарте, событие срабатывает.

    Практическое применение

    Это, конечно, будет бесполезно, если мы не сможем делать интересные вещи!
    Например, мы можем позволить нашим генералам "покупать" определенные анчи.

    monitor_event ShortcutTriggered ShortcutTriggered strat_ui newShortcutand I_AgentSelected named character
      historic_event buying_ancillary true
    end_monitor
    
    monitor_conditions I_EventCounter buying_ancillary_accepted = 1 and console_command give_ancillary this <someanc>
      set_event_counter buying_ancillary_accepted = 0
    end_monitor
    


    Или, мы можем создать "уменьшение населения" для города. Ведь мы можем уничтожить половину населения города во время захвата города, но не можем делать это когда уже правим городом.

    monitor_event ShortcutTriggered ShortcutTriggered strat_ui newShortcut
      and I_ScrollOpen own_settlement_info_scroll
    
      historic_event kill_citizens true
    
    end_monitor
    
    monitor_conditions I_EventCounter kill_citizens_accepted = 1
    
      if I_SettlementSelected <settlementname>
        console_command add_population <settlementname> -500
      end_if
    
      if I_SettlementSelected <othersettlementname>
        console_command add_population <othersettlementname> -500
      end_if
    
      set_event_counter kill_citizens_accepted = 0
    
    end_monitor
    

    ---

    Оригинальное Авторство:

    Перевод зарубежного руководства сичевой гильдией лингвистов:

    Для просмотра ссылки Зарегистрируйтесь

    История Происхождения:

    Локальная копия оригинальной статьи, взятой мной из модоковальни M2TW на форуме СиЧь.
       Денис_Полянин
      • Imperial
      Imperial
      Форумчанин

      Дата: 10 февраля 2024, 07:28

      всем привет! кто то в курсе? можно ли через скрипт сделать, чтобы юниты под управлением игрока при нажатии горячей (определенной) клавиши пробегали например 10 метров вперед, разворачивались и возвращались на место?
         bitterhowl
        • Imperial
        Imperial
        El Compilator

        Дата: 10 февраля 2024, 12:20

        В курсе, нельзя.
          • 2 Страниц
          • 1
          • 2
           Похожие Темы
          MMedieval Kingdoms: Total War - 1212 AD
          Attila Version
          Автор m moroz522
          Обновление Сегодня, 13:45
          ЦТурнир "Игры королевств" по Medieval II: Total War - Kingdoms
          Турнир по Medieval II, проходящий в дополнениях Kingdoms. Всех дополнениях Kingdoms сразу.
          Автор T Thanatis
          Обновление Сегодня, 11:50
          С[Канал] T.W.+.Medieval II, T.W.+.Rome.Remastered
          YouTube-каналы T.W.+.Medieval II, T.W.+.Rome.Remastered
          Автор П Перч
          Обновление Сегодня, 01:08
          Воспользуйтесь одной из соц-сетей для входа
          РегистрацияВход на форум 
          «Империал» · Условия · Ответственность · Визитка · 23 апр 2024, 20:38 · Зеркала: Org, Site, Online · Счётчики