Голосование

Как вы оцениваете Смуту?












Оформление



Пользователей
  • Всего: 28869
  • Последний: Adr3naline
Сейчас на форуме
Пользователи: 2
Гостей: 529
Всего: 531

Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Сообщения - Зюзя

Страницы: [1]
1
Мозговой штурм / Re: Родовые владения
« : 10 Января, 2017, 17:51 »
Да, идея очень интересная и вполне реализуемая. К слову, этот замок могут по возвращении отдать другому, что совсем не понравится "законному владельцу". И для игрока-правителя дополнительная трудность - как бы не забрать чужое.
В общем, замечательная мысль)

2
Пытался сделать отряды для лордов на нативе как показал tehnik.

Здорово было бы, если бы вы вставили цитату кода - его трудно найти (а значит, никто не захочет помочь).
Код, о котором вы говорите, обладает вставками из Дипломатии и не совместим с Нэтивом без адаптации.

3
Но мне модулька пишет ошибку "Tupe Error:'tuple' objekt is not callable

Данная ошибка выдается, если у переменной не проставлен префикс. Не совсем понятно, о каком коде вы спрашиваете (надо было дать его цитатой), но если это тот, который на самой первой странице, то попробуйте заменить vaegir_knight на trp_vaegir_knight.

4
Это можно использовать во благо - переводить в эту группу херигитских конных лучников, а можно и во вред - переводить ИЗ этой группы в любую другую других лучников.

Хорошо, убедили, использование багов)) Надо бы переименовать тему на что-то вроде "Как обмануть и без того не очень умный ИИ".

Цитата
А вот когда защитники понесут 100 или около того потерь, то ВСЕ они автоматически получат приказ "В атаку!"

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

5
Цитата
В режиме тактики (backspace) нашёл возможность управления только 3 -мя типами войск - пехота, кавалерия, стрелки.

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

Есть еще одна группа, которая не присваивается (она видна только в файлах игры) - это группа, включающая в себя все группы, именно ей направляются команды типа"все - в атаку".

Цитата
Далее, почему нельзя вооружать своих воинов (не неписей а обычных в отряде), просто мне, к примеру, не нужно чтобы хускарл брал секиру, пусть у него вырастут характеристики, но щит и меч останется прежним.

Есть моды, где можно создавать собственную линейку воинов и вооружать по своему усмотрению. Фракционных же нельзя перевооружать ради баланса - велик соблазн лишить вражеских бойцов, скажем так, всего.

Цитата
"раненым уйти в тыл"

С учетом того, как проходят бои в обычном МиБ - это бессмысленная команда. Дело в том, что почти всегда боец гибнет от пары-тройки попаданий (в игре очень высокий урон при относительно низком здоровье), следовательно, он просто не успеет выйти из боя, как его убьют. Это не говоря о давке и тому подобным факторам, которые замедлят отступление, опять-таки, обрекая раненого на неминуемую смерть.

Цитата
Карта в МИБ ограничена движком, на сколько я знаю.

К счастью, нет, сцены боев есть в модульке. В последней же есть и скрипт, который определяет сцену боя. Размер поля боя в Нативе много ниже чем максимально допустимый в редакторе - так что все возможно. К примеру, в Бриттенвальде сцены боев, насколько помню, раза в два больше, чем в Нативе.
Однако нужно понимать, что увеличение сцены боя неминуемо отразится на производительности.

Цитата
не успеваешь правильно развернуть войска в месте появления как прибегает кавалерия

Проблема не столько в расстоянии, сколько в скорости. Кавалерия в МиБ всегда мчится галопом, словно это не живые лошади, а привидения с мотором.

6
В связи с этим возникает вопрос: если своих кергитов перевести из конников в лучники, то и вражеские перейдут в эту категорию, или нет?

Мои недавние исследования доказали, что да, у врагов они тоже поменяют категорию. Понятия не имею почему так сделано, но когда скрипт должен был удалить бойцов восьмой группы, он удалял солдат и у меня, и у союзников и у врагов. К слову, если вы присвоите тем же крестьянам какую-нибудь группу, а потом всех их потеряете, ваши изменения все равно сохранятся (т.е. союзные и вражеские крестьяне будут по прежнему появляться в этой группе).

Я бы сказал, что это использование багов, но это не так, учитывая тот факт, что группами, по сути, пользуется только игрок.

7
Цитата
А самое обидное одевая кожаные перчатки увеличивающие скил на +1, ГГ и непись не может взять лук с большим требованием на 1, чем его реальный скил.

Здесь ничто не поможет, похоже, это движок игры.

Цитата
Где же эта собака(проверка) зарыта?


Насколько помню, проверка на сцене и в инвентаре тоже происходит в движке. Модульная система здесь не поможет.

Цитата
Сама идея ограничения была увидена в моде Русь 13 век, там ели на ГГ был требовательный лук, и и одев рукавицы решил воспользоваться, то лук просто скидывается на землю.

Мне так обидно. Я же это и предлагал!

Попробуйте написать триггер в mission_templates, который будет осуществлять свою проверку и удалять оружие, если оно не подходит.

8
Я тут подумал, что наше обсуждение не по теме "Работа с предметами, вопросы и ответы". Отвечу в личных сообщениях.

9
Вопросы и ответы по модостроению / Re:
« : 14 Ноября, 2016, 14:40 »

Вот пример ситуации (вообще, насколько понимаю, в игре используется термин mission) в module_mission_templates. Если кратко описать, что такое ситуация/миссия - это события, которые происходят на сцене.

Размещать код нужно среди таких же триггеров (в коде под спойлером указано одно из многих таких мест).
Можете попробовать найти текст из спойлера в модульке, чтобы изучить его и аналогичные. Рекомендую, прежде чем заниматься реализацией данного проекта ознакомиться со следующим материалом:
http://rusmnb.ru/index.php?topic=166.0 (азы работы с модульной системой, после прочтения некоторые необходимые действия станут понятнее, правда, руководство написано для Mount and Blade, не Варбанда).

P.S. Искал материалы по module_mission_templates и, к своему ужасу, ничего не нашел. Похоже, я все сам изучал, методом научного тыка...

10
Цитата
Да только игре пофиг, ГГ и непесь как мог взять и стрелять из требовательного лука, так и дальше может.

Насколько я помню, нельзя брать вещь, если не хватает навыка. Точно не знаю, могу с уверенностью сказать, что с атрибутами так. Другое дело, что если уже надето, сам предмет не снимается, даже если не хватает навыка (что поделать, в игре нет понижения навыков, вот разработчики этим и не стали морочить себе голову).

Так или иначе, это можно исправить скриптом, который будет проверять уровень навыка и, если он недостаточен, снимать предмет. Правда, насколько помню, нет команды проверить у предмета требуемый скилл, поэтому действие придется прописывать для каждого предмета.

К слову, можно задействовать два пути: пойти через troops или через module_mission_templates. Если первый вариант, то нужно у каждого troop проверять навык, и для каждого слота оружия и каждого типа оружия с ограничением писать перемещение в инвентарь (а точнее, сначала удалять, а потом такое же оружие с таким же модификатором добавлять). Не говоря уже о том, когда активировать скрипт, чтобы игрок не мог его обойти. Так что такой способ невероятно сложен, зато честно предупреждает игрока, что в грядущем сражении у него не будет того или иного оружия.

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

Возможно, я как-нибудь напишу скрипт для такой задачи, но не знаю, когда.

11
Не совсем, придется пару команд отрегулировать в соответствии с вашей модульной системой.

Во-первых, это  (is_between, reg0, "itm_gun_begin", "itm_gun_end"),  где вместо "itm_gun_begin" нужно поставить название первого в списке огнестрела (и не забыть в начале названия поставить префикс itm_), а вместо "itm_gun_end" название следующего итема после последнего огнестрела (команда is_between считает диапазон без учета крайнего объекта в списке). И да, чтобы все сработало, огнестрел должен идти единым списком.

Во-вторых, "anim_fall_body_back " возможно, не самый удачный выбор, я взял наугад одну из анимаций смерти. Так что нужно проверить, и, если надо, найти правильную.

В-третьих, это код триггера, который нужно добавлять в module_mission_templates в каждую ситуацию. Однозначно, этот код должен быть в lead_charge и bandits_at_night (засада бандитов), village_attack_bandits (защита деревни), village_raid (насколько помню, сражение с лордом у деревни) осадах (название содержит siege), а также (если эффект нужен в мультиплеере) там, где есть в названии multiplayer. Работа сложная, поэтому могу посоветовать один способ (но он более профессиональный), который требует определенных знаний в модульной системе:


Хотел бы рассказать подробнее, но это займет очень большой объем текста. Надеюсь, хватит и такого краткого обзора.

12
Цитата
Как сделать работающее сбивание с ног - именно для выстрела? Возможно ли это?

К сожалению, похоже, что флаг "can_knock_down" используется только для оружия ближнего боя. Кроме того, насколько я помню, он дает лишь шанс на то, что противник будет сбит. Могу посоветовать поставить "костыль". Для этого нужно в module_mission_templates сделать триггер ti_on_agent_hit, который при попадании в агента из огнестрела будет проигрывать анимацию падения.

Ладно, вот примерный набросок (там можно много чего добавить), надеюсь, разберетесь:


P.S. Возможно, есть более простые способы, но мне триггер ti_on_agent_hit нравится.

13
Скрипт группы "нонкомбатантов". Проще говоря, решение проблемы того, как защитить часть отряда от столкновения с противником - скрипт убирает со сцены всех агентов, которые помещены в 8 группу (последняя в списке), если в отряде игрока более 30 человек. То есть нужно, чтобы кто-то не появился на поле боя - назначаешь ему восьмую группу и он не участвует в сражении. Правда, в статистике боя все "нонкомбатанты" будут отмечены как убитые (но останутся в отряде игрока).
В принципе, можно удалить проверку команд, но я, на всякий случай, решил оставить. Мало ли, вдруг будут дезертиры из одной команды в другую))
P.S. На всякий случай - группа это то, что называется пехотой, конницей, лучниками и так далее.

14
Цитата
Сломал себе мозг по поводу точки входа ГГ в таверне.

Собственно говоря, вы правильно все делали, но, к сожалению (в данной ситуации), в модульной системе есть скрипт, который прописывает для точки входа флаг. Вам нужно зайти в module_game_menus и найти "town_tavern". Немного ниже будут следующие строки:


Привел большой кусок кода только потому, что это все взаимосвязанные элементы, а точнее - скрипт спауна игрока. Для вашей задачи требуется только одна строка:
(mission_tpl_entry_set_override_flags, "mt_town_default", 0, af_override_horse),
Самый простой способ - удалить ее, тогда все, что вы изменили в module_mission_templates должно сработать. Правда, если в module_mission_templates  после не убрать или изменить pilgrim_disguise, то, если вы удалите какой-то предмет одежды, его должна заменить часть одежды пилигрима.

И напоследок совет: если есть какие-то проблемы с появлением агентов, а в module_mission_templates все правильно - ищите скрипт, который вызывает их появление. То есть, если сцена и агент появляются после нажатия кнопки меню - ищите эту кнопку. Если после диалога - ищите диалог. И так далее. Скорее всего, ответ будет там.

15
В module_scene_props есть триггер ti_on_scene_prop_hit.
Для удобства приведу цитату из header_triggers:

ti_on_scene_prop_hit     = -42.0 #can only be used in module_scene_props triggers
# Trigger Param 1: prop instance number (номер пропса)
# Trigger Param 2: hit damage (повреждение, если разрушаемое)
# Position Register 1: Hit Position (позиция удара)
# Position Register 2: x holds attacker agent id (координата х pos2 содержит ид атаковавшего)

Следовательно, чтобы узнать, кто нанес удар, нужно использовать операцию

(position_get_x,<destination_fixed_point>,<position_no>),

По сути, должно сработать. Однако нужно проверять, так как я давно работал с module_scene_props.
Совет: для примера можно найти разрушаемые объекты и посмотреть, как там реализован этот триггер.

16
1. Необходимо прописать всем Лордам, Леди, NPC семейные связи.Какого вида должны быть записи, и куда их нужно прописать? 2. Необходимо прописать всем Лордам, Леди, NPC Характеры.Какого вида должны быть записи, и куда их нужно прописать?

Посмотрел сообщение Janycz, понял, что там написано многое из того, что я хотел сообщить. Тогда отвечаю на вопросы:
1. семейные связи и характеры устанавливаются в самом начале игры единожды, в уже названом скрипте "initialize_aristocracy". Этот скрипт запускается в рамках другого скрипта, "game_start". Если изменить нужные значения после того, как скрипт "initialize_aristocracy" сработал, то его можно не удалять (удаление вызовет немалый геморрой). Следовательно, в скрипте "game_start", ниже строки (call_script, "script_initialize_aristocracy"), (желательно как можно ближе) нужно вписывать следующие команды для каждого персонажа (ох и много их будет всего):
(troop_set_slot, ":npc", slot_troop_father, отец),
(troop_set_slot, ":npc", slot_troop_mother, мать),
(troop_set_slot, ":npc", slot_troop_spouse, супруг/супруга),
(troop_set_slot, ":npc", slot_troop_betrothed, жених/невеста),
(troop_set_slot, ":npc", slot_troop_age, возраст),

2. Репутация. Репутация прописывается в том же "initialize_aristocracy" (и схема обхода та же). Для этого есть команда:

(troop_set_slot, ":cur_lady", slot_lord_reputation_type, репутация),

На всякий случай:

И еще кое-что: если мужа, отца-матери-жениха и т.д нет, назначать -1, иначе свободное место "займет" игрок.

17
Советую попробовать itp_unique
По крайней мере, у меня работает))

Страницы: [1]
СиЧЪ Total War СиЧЪ Total War
Сайт "Всадники Кальрадии" не является СМИ. Администрация не несет ответственность за высказывания и публикацию каких-либо материалов, сделанные любыми пользователями форума, в том числе посредством личных и публичных сообщений. Материалы, размещенные на ресурсе третьими лицами, могут содержать информацию, не предназначенную для лиц, не достигнувших совершеннолетия. При обнаружении на ресурсе материалов, нарушающих законодательство Российской Федерации, необходимо обращаться к администрации.
Сайт работает на быстром VPS/VDS хостинге от FASTVPS


Powered by SMF 2.0 | SMF © Simple Machines LLC