Голосование

Как бы вы оценили изменения дипломатии и ИИ в обновлении 1.4 для Bannerlord?












Оформление



Пользователей
  • Всего: 30490
  • Последний: pumi
Сейчас на форуме
Пользователи: 0
Гостей: 213
Всего: 213

0 Пользователей и 1 Гость просматривают эту тему.

Тема: [OSP][КОД] Система страхования в Warband  (Прочитано 84 раз)

  • Сообщений: 87
  • За создание технических проектов различного характера
    • Просмотр профиля
+5
22 Июня, 2026, 21:54 | Отредактировано: 23 Июня, 2026, 11:35 (Vanok)
Проработав 5 лет в страховой индустрии, я решил создать нечто вроде страховой системы в Warband. Вы можете застраховать своё снаряжение через страхового брокера в крупных городах. Страховка обойдётся вам в 5% от общей стоимости вашего снаряжения. Вы можете получить выплату в случае потери снаряжения после боя. Если вы попытаетесь обмануть систему (извлечь предмет из инвентаря и продать его в других городах), ваш обман будет преследоваться по закону.… :thumbup:
Как это работает:

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

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

3. Анти-абуз (защита от мошенничества): Если вы застраховали вещи, а затем сняли их, положили в сундук или продали, система распознает это как страховое мошенничество! Ваша страховка будет аннулирована, а вас занесут в черный список брокера на 20 игровых дней.

Установка

Установка предельно простая, понадобится изменить всего два файла вашей модульной системы: `module_game_menus.py` и `module_simple_triggers.py`.

Шаг 1: module_game_menus.py

Найдите меню
"total_defeat"
. В блоке операций этого меню, прямо перед
(play_track, "track_captured", 1),
добавьте следующую строку:

Код: (python) [Выделить]

 (store_current_hours, "$g_insurance_last_defeat_time"),


Шаг 2: module_game_menus.py

Найдите меню
"town"
. В список опций города (например, перед опцией
"town_enterprise"
или любой другой) добавьте визит к брокеру:

Код: (python) [Выделить]

 ("town_insurance",

 [

 (party_slot_eq,"$current_town",slot_party_type, spt_town),

 (this_or_next|eq,"$entry_to_town_forbidden",0),

 (eq, "$sneaked_into_town",1),

 ],

 "Visit the Insurance Broker.",

 [

 (jump_to_menu, "mnu_insurance_broker"),

 ]),


Шаг 3: module_game_menus.py

Прокрутите файл в самый конец. Прямо перед самой последней закрывающей скобкой
]
вставьте код самого меню брокера:


Шаг 4: module_simple_triggers.py

Откройте файл
module_simple_triggers.py
и прокрутите в самый низ. Перед последней закрывающей скобкой
]
вставьте триггер, который отслеживает инвентарь на наличие "страхового мошенничества" и начисляет выплату при потере:


Все готово! Скомпилируйте модуль и наслаждайтесь системой.

Если у вас есть идеи по улучшению — пишите!

  • Ник в Discord: Lontano#4554
  • Ник в M&B: Lontano
  • Фракция: Империя
 

Сайт "Всадники Кальрадии" не является СМИ. Администрация не несет ответственность за высказывания и публикацию каких-либо материалов, сделанные любыми пользователями форума, в том числе посредством личных и публичных сообщений. Материалы, размещенные на ресурсе третьими лицами, могут содержать информацию, не предназначенную для лиц, не достигнувших совершеннолетия. При обнаружении на ресурсе материалов, нарушающих законодательство Российской Федерации, необходимо обращаться к администрации.
Powered by SMF 2.0 | SMF © Simple Machines LLC | Сайт работает на быстром VPS/VDS хостинге от FASTVPS