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

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


Темы - Ivkolya

Страницы: [1]
1
Есть ли какой-нибудь способ отсоединить (не удаляя, просто убрать связь) кость от основного скелета?

Думаю, если есть такой способ, то можно отсоединить кости предметов от кистей рук, и тогда теоретически можно сделать свободное перемещение предметов, независимо от рук, только представьте, какие возможности тогда появятся - хоть на щит или ружье опирайся, хоть строевые приемы делай, хоть перекидывай оружие из руки в руку, с предметами так что угодно можно сделать (а если отсоединить кости вообще все, то и расчленение можно добавить, и все, что хочешь). Я думаю, если такой способ отсоединять кости есть, то тогда нужно будет всего-то отсоединить кости предметов в нулевом кадре каждой анимации и заменить скелет в брфках со скелетами на новый, с независимыми предметами.
На форуме Autodesk я нашел только как удалять IK solver'ы, но я не понял, каким образом связаны кости скелета в игре, поэтому не могу найти ответ на вопрос, как убрать связь между костями.
Другой вариант - просто удалить кости предметов, потом отдельно создать кости с тем же названием, и потратить какое-то время на перемещение этих костей в каждом кадре каждой анимации (возможно, добавить такой новый скелет как отдельную расу)
Если хоть один из этих вариантов сработает, то результат стоит того, чтобы заморочиться и сделать предметы независимыми))

2


Альфа-версия мода был выпущена 25.10.2019, в 165-ю годовщину Балаклавского сражения тут:
https://www.moddb.com/mods/crimean-war-1854-55

Восточная война 1853-1856 гг. не очень затронута в играх и модах, насколько я знаю, хотя эта война очень интересна и по ее мотивам можно сделать отличную игру, как стратегию, так и шутер. И тактика ведения боев того периода очень хорошо подходит для геймплея самых популярных режимов игры Mount and Blade: Napoleonic Wars, там были и полевые сражения, и морские, и осадные естественно. Эта война дала многое, от свитеров-регланов и шапок-балаклав, до появления первых снайперов и отказа от линейной тактики и сомкнутого строя и перехода к расыпным строям. Эта война фактически стала первой войной, запечатленной в фотографии, и наряду с сотнями книг, документов, рисунков и чертежей, эти фотографии дают нам представление о том, как выглядели места и солдаты того времени.

Я делаю мод пока в одиночку (еще пара человек с форумов FSE и TW предложили помощь с картами и скриптами, но пока результатов их работы нет и несколько человек помогают советами, за что им очень благодарен), поэтому работа идет довольно медленно, но упорно:) На данный момент готово где-то 80% формы Российской Императорской Армии.

Мод будет затрагивать только события на Крымском полуострове, от высадки союзников в Евпатории до падения Севастополя и отхода русских войск на Северную сторону. Возможно, будут мультиплеерные карты других событий, как-то Синопского сражения или бомбардирования Одессы, но до карт я еще не добрался))

Есть несколько концепций данного мода:
1) Идея-максимум: сделать одиночную игру (основная проблема, которую я вижу в этом сейчас - это впихнуть в сингл пушки и артиллерию под управлением ботов, хотя можно в крайнем случае ограничиться добавлением пушек как статичных объектов и объяснить это тем, что войска уже сошлись в ближнем бою и артиллерия только-только прекратила огонь, но так не хотелось бы делать) и к этой одиночной игре добавить свой мультиплеер (как в НВ, но со своими реализованными идеями). Идеально было бы либо вернуть одиночную игру в НВ, либо в Варбанд перенести все, касающееся мультиплеера, из НВ.
2) Если с одиночкой не получится ничего - тогда просто сделать на основе НВ свой мультиплеер, с блекджеком и шлюхами реализацией своих идей, со своей структурой юнитов и фракций, их вооружением и так далее.
3) Самый минимум, который буду наверное делать все равно, параллельно (чтобы играть с живыми игроками, в мультиплеерные моды почти никто не играет), обычный ре-скин НВ (но там нескорлько трудностей есть с тем, каких юнитов кем заменять, особенно это касается партизан и ополчения и например отсутствие кавалерии с пиками у Британии)

Идей для одиночки достаточно много, большинство из них стандартные для модов (например, лорды=командиры полков, замки=бастионы, батареи или траншеи и так далее), но есть и такие, которые достаточно сложно, но интересно реализовать (причем желательно не через WSE а через модульку), например строительство новых укреплений, которые можно захватить или разрушить.
События в одиночке - начинаются с Альминского сражения (вместо нападающего в начале игры бандита и стартового квеста, идею честно позаимствовал из Руси), заведомо проигрышного для русских, в котором игрока ранят и после которого игрок при игре за русских начинает игру в госпитале в Бахчисарае (или непосредственно в Севастополе, или в Симферополе, надо решить), а игрок-союзник - в госпитале в Балаклаве, за время их лечения уже построена первая параллель союзников и укрепления Южной стороны Севастополя. Потом игрок создает свой отряд охотников и выполняет различные квесты вроде: выбить неприятеля из построенных ночью ложементов (появляющихся случайно, по образцу бандитских логов), помочь отбить штурм, устроить ночную вылазку, взорвать пороховой погреб на вражеской батарее и заклепать орудия и тому подобные. Ну и конечно передать письма и приказы, куда же без них:) Если не получится реализовать все - тогда придется просто переделывать квесты из Варбанда под период Крымской войны

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

С ре-скином НВ все просто, надо только подобрать, кого кем заменить и сделать нужную форму и оружие.

Несколько скриншотов (часть старые). Новые скриншоты буду выкладывать сюда же:

Если кто-нибудь, кому интересна тема Крымской войны и обороны Севастополя, захочет присоединиться к работе - буду рад:)


3
Ссылка на оригинальный туториал

Какие преимущества добавления новой секции? Вы можете добавить целую кучу юнитов, без того чтобы искать место для них в существующих секциях. Это просто и эффективно, особенно для модификаций, которые могли бы использовать пространство.

Это результат, которого мы будем добиваться в этом уроке:

Файлы, которые мы будем изменять (выделены зеленым цветом):

- module_strings
- module_presentations
- module_constants
- module_scripts

Название раздела

Мы назовем наш новый раздел, например, "Bydanders". Вы можете изменить имя вашего раздела на какое вам заблагорассудится. Для этого вам придется везде заменить "bydanders" на Ваше название.

Начало работы

Давайте начнем с module_strings, так как мы должны начать с создания нового string, который будет использоваться в презентации.
Это будет название раздела.
Найдите ("cavalry", "Cavalry"),Поместите под этим:
  ("bydanders", "Bydanders"),
Теперь мы направимся в module_presentations, чтобы создать новый раздел.
 
Найдите         (create_mesh_overlay, reg0, "mesh_white_plane").
        (Overlay_set_color, REG0, 0x000000),
        (Overlay_set_alpha, REG0, 0xD0),
        (Position_set_x, Pos1, 370),
        (Position_set_y, Pos1, 660),
        (Overlay_set_position, REG0, Pos1),
        (Position_set_x, Pos1, 5500),
        (Position_set_y, Pos1, 1600),
        (Overlay_set_size, REG0, Pos1),

Поместите под этим (при этом оставьте одну строку между этими блоками текста):
        (create_mesh_overlay, reg0, "mesh_white_plane"),
        (overlay_set_color, reg0, 0x000000),
        (overlay_set_alpha, reg0, 0xD0),
        (position_set_x, pos1, 370),
        (position_set_y, pos1, 610),
        (overlay_set_position, reg0, pos1),
        (position_set_x, pos1, 5500),
        (position_set_y, pos1, 1600),
        (overlay_set_size, reg0, pos1),

Найдите         (create_button_overlay, "$g_presentation_obj_select_cavalry", "str_cavalry", 0),
        (try_begin),
          (eq, "$g_multiplayer_select_presentation_unit_type", troop_select_type_cavalry),
          (overlay_set_color,"$g_presentation_obj_select_cavalry",0xECEB82),
        (else_try),
          (overlay_set_color,"$g_presentation_obj_select_cavalry",0xFFFFFF),
        (try_end),
        (position_set_x, pos1, 255),
        (position_set_y, pos1, 660),
        (overlay_set_position, "$g_presentation_obj_select_cavalry", pos1),
        #(position_set_x, pos1, 1500),
        #(position_set_y, pos1, 1500),
        #(overlay_set_size, "$g_presentation_obj_select_cavalry", pos1),
        (troop_set_slot,"trp_x_pos","$g_presentation_obj_select_cavalry",250),
        (troop_set_slot,"trp_y_pos","$g_presentation_obj_select_cavalry",660),
        (troop_set_slot,"trp_x_size","$g_presentation_obj_select_cavalry",1000),
        (troop_set_slot,"trp_y_size","$g_presentation_obj_select_cavalry",1000),

Под этим, (пропустив одну строку) разместите следующее:
        (create_button_overlay, "$g_presentation_obj_select_bydanders", "str_bydanders", 0),
        (try_begin),
          (eq, "$g_multiplayer_select_presentation_unit_type", troop_select_type_bydanders),
          (overlay_set_color,"$g_presentation_obj_select_bydanders",0xECEB82),
        (else_try),
          (overlay_set_color,"$g_presentation_obj_select_bydanders",0xFFFFFF),
        (try_end),
        (position_set_x, pos1, 370),
        (position_set_y, pos1, 610),
        (overlay_set_position, "$g_presentation_obj_select_bydanders", pos1),
        #(position_set_x, pos1, 1500),
        #(position_set_y, pos1, 1500),
        #(overlay_set_size, "$g_presentation_obj_select_bydanders", pos1),
        (troop_set_slot,"trp_x_pos","$g_presentation_obj_select_bydanders",300),
        (troop_set_slot,"trp_y_pos","$g_presentation_obj_select_bydanders",660),
        (troop_set_slot,"trp_x_size","$g_presentation_obj_select_bydanders",1000),
        (troop_set_slot,"trp_y_size","$g_presentation_obj_select_bydanders",1000),

Найдите:       (else_try),
          (eq,":object","$g_presentation_obj_select_cavalry"),
          (assign, "$g_multiplayer_select_presentation_unit_type",troop_select_type_cavalry),
          (presentation_set_duration, 0),
          (start_presentation,"prsnt_multiplayer_item_select"),

Под этим поместите
        (else_try),
  (eq,":object","$g_presentation_obj_select_bydanders"),
          (assign, "$g_multiplayer_select_presentation_unit_type",troop_select_type_bydanders),
          (presentation_set_duration, 0),
          (start_presentation,"prsnt_multiplayer_item_select"),
(убедитесь, что между новым разделом и началом раздела артиллерии есть (else_try))

Следующий файл: module_constants

Найдите troop_select_type_artillery
Под этим поместите:troop_select_type_bydanders = 4
Теперь мы идем в последний файл, module_scripts для того, чтобы назначить юнитов для нового раздела.
Найдите:
(assign,":unit_type",troop_select_type_artillery),
Между этим и (try_end) поместите следующее:
(else_try),
  (is_between, ":troop_no", "trp_british_infantry2","trp_british_highlander"), # Brits

      (assign,":unit_type",troop_select_type_bydanders),

(Вы можете разместить тут тех юнитов, которые захотите. На данный момент в нашем новом разделе размещены british_infantry2 и british_highlander) [не знаю, почему у меня только один юнит получился в разделе, может где-то когда-то поменял порядок войск англичанам, не помню, но скрипты рабочие]

Запустите build_module.bat и проверьте, если ли ошибки, если нет ни одной - отличная работа!


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

Если есть какие-либо вопросы, не стесняйтесь задавать их!

Удачи,
Gokiller

Страницы: [1]