Урок №3. Создание события ( Ивентов ) - Учебник по моддингу - Strategium.ru Перейти к содержимому

Урок №3. Создание события ( Ивентов )

Рекомендованные сообщения

Chaos Destroyer

Приветствую!

C Вами - Chaos Destroyer, и сегодня мы научимся создавать ивенты!

Итак, что же такое случайное событие?

Случайное событие(оно же на диалекте мододелов - ивент, от англоязычного event), событие, которое происходит(или не происходит,

в случае если не везёт) при соблюдении строго заданных случайных условий.

Допустим, мы хотим создать ивент по революции вследствие заговора.

Разберём структуру такого ивента :

#Обозначенный решёткой знак - символ комментария. Слова, идущие после него, не влияют на саму программу, и служат обычно для пояснений

country_event = { #Тип события - может происходить со страной(country_event), или с провинцией(province event)

id = 76666 #Уникальный номер ивента, не должен совпадать номером какого либо другого ивента. Также, набрав в консоли номер ивента, можно принудить его немедленно произойти.

major = yes #Эта строчка значит, что сообщение о ивенте получат все страны в отдельном окне. По умолчанию условие отключено.

trigger = { #Условия, при которых ивент может произойти

num_of_cities = 68 #Нужно владеть 68 провинциями

NOT = { ADM = 8 } #Административный навык правителя меньше 8.

war_exshaution = 14 #Военная усталость больше или равна 14.

or = { NOT = { ADM = 4 }#Военный, административный, или Дипломатический навык меньше 4,

NOT = { MIL = 4 }

NOT = { DIP = 4 } }

}#Каждый открывающий тег должен закрываться, иначе неизбежны баги.

mean_time_to_happen = { #Время, за которое случится событие. Не нужно, если ивент запускается исключительно другим ивентом или решением (в этом случае в начале необходимо написать is_triggered_only = yes

mounth = 400 #400 месяцев без учёта модификаторов

modifier = { factor = 4 #произойдёт в 4 раза позднее,

stability = 3 # если стабильность 3

}

}

title = "EVTNAME76666" #Имя заголовка ивента(для того, чтобы писать в локализации

desc = "EVTDESC76666" #Имя рассказа, содержание главного окна ивента.

immediate = { # То, что произойдёт СРАЗУ при активации ивента, ВНЕ зависимости от выбора

any_owned = { limit = { NOT = { core = this } } }

nationalist_rebels = 1 #Во всех некоренных провинциях вылезут националисты

}

stability = -1 }

option = { # Первый вариант выбора

name = "EVTOPTA76666" #Название варианта выбора

random_owned = { pretender_rebels = 4 } # В случайной провинции вылезет отряд претендентов в 4 раза больше обычного

capital = { pretender_rebels = 1 } # В столице вылезут претенденты

stability = -4 #Стабильность упадёт на 4 пункта.

}

option = { # Второй вариант выбора

name = "EVTOPTB76666"

random_owned = { pretender_rebels = 4 } # В случайной провинции вылезет отряд претендентов в 4 раза больше обычного

capital = { pretender_rebels = 8 } # В столице вылезут претенденты в 8 раз больше размером отряда.

stability = -1 #Стабильность упадёт на 1 пункт.

treasury = -140 #Отберут 140 золотых

}

}

Теперь, наш ивент будет работать, но с глюками(при срабатывании в игре

она вылетит или зависнет.)

Потому что мы не прописали в локализацию

Идём в файл локализации (любой), открываем его Exel"ом, и пишем (; означает начало следующего столбца) :

EVTNAME76666 ; Революция ; X #В локализации вначале идёт название ивента - то, что написано после title в ивенте.

EVTDESC76666 ; Вследствие этой ужасной войны и взлетевших из - за неё налогов, националисты решились на выступление. Они распространяют слухи о Вашей жадности и злокозненности. Что будем делать? ; X #Desc - это описание. Отображается в игре как текст ивента.

EVTOPTA76666 ; Утопим мятеж в крови ; X

EVTOPTB76666 ; Деньги не настолько важны, как жизни моих подданых ; Ч

Поздравляем, Вы научились создавать ивенты!

С уважением Chaos Destroyer

Изменено пользователем Chaos Destroyer
Ссылка на комментарий

Закреплённые сообщения
robinovich

Спасибо за руководство.

Я начинал моддить и создавать ивенты довольно давно, но не умел их оптимизировать...

По видимому, мог напортачить (и напортачил) с major = yes, так как абсолютно не понимал, зачем это нужно.

Вопрос : а зачем в некоторых ивентах пишется - is_triggered_only = yes?

Заранее благодарен

Ссылка на комментарий

Chaos Destroyer
Спасибо за руководство.

Я начинал моддить и создавать ивенты довольно давно, но не умел их оптимизировать...

По видимому, мог напортачить (и напортачил) с major = yes, так как абсолютно не понимал, зачем это нужно.

Вопрос : а зачем в некоторых ивентах пишется - is_triggered_only = yes?

Заранее благодарен

is_triggered_only = yes - условие, которое определяет, что ивент происходит ТОЛЬКО вызываемый к жизни други ивентом или решением.

По умолчанию это отключено.

Используется постоянно.

С уважением Chaos Destroyer

Ссылка на комментарий

robinovich
is_triggered_only = yes - условие, которое определяет, что ивент происходит ТОЛЬКО вызываемый к жизни други ивентом или решением.

По умолчанию это отключено.

Используется постоянно.

С уважением Chaos Destroyer

Такой вопрос - а зачем нужен в локализации X в конце?

Ссылка на комментарий

Chaos Destroyer
Такой вопрос - а зачем нужен в локализации X в конце?

Для того, чтобы локализация работала.

С уважением Chaos Destroyer

Ссылка на комментарий

Lin Nacume

А не мог бы кто нибудь описать как делать провинцальные решения?

Ссылка на комментарий

OrelImperia

Подскажите, как в коде реализовать event по замене правителя только для конкретной страны. (Т.е при принятии event-а правитель менялся на другого)

И где для этой страны прописать нового лидера.

Ссылка на комментарий

Змей Горыныч

Ивенты есть, а решения не описаны. Столкнулся с проблемой в моде MEIOU:TD

Создавал новую страну, все было хорошо, решения работали стабильно как и их локализация, но при любых попытка создать Римскую милитаризацию получается фиаско, стоит навести на условие создания в решениях, как игра вылетает. При прямом вводе с консоли - тоже вылетает.

выиглядит примерно так:

1. Решение:

ОписаниеНажмите здесь!
 country_decisions = {

enact_Roman_military_reforms = {

potential = {

tag = LAT

NOT = { tag = BYZ }

NOT = { tag = HRE }

NOT = { has_country_modifier = Roman_military_reforms }

}

allow = {

MIL = 7

land_tech = 30

army_tradition = 1.0

}

effect = {

quality_quantity = -1

land_naval = -1

add_country_modifier = {

name = "Roman_military_reforms"

duration = -1

}

}

ai_will_do = {

factor = 1

}

}

}

[Cкрыть]

в модификаторах прописываю:

ОписаниеНажмите здесь!
 Roman_military_reforms = {

discipline = 0.10

land_attrition = -0.1

land_morale = 0.5

naval_morale = -1.0

army_tradition = 0.01

navy_tradition = -0.01

icon = 7

}

[Cкрыть]

Вот в чем ошибка, не понимаю.

Изменено пользователем Змей Горыныч
Ссылка на комментарий

Kaizerreich

А как прописать, чтобы национальными стали все нац провы Литвы и все нац провы Польши ?

Ссылка на комментарий

Змей Горыныч
А как прописать, чтобы национальными стали все нац провы Литвы и все нац провы Польши ?

Первый вариант ручками прописать все провы, второй вариант поставить условие щита на регион.

ОписаниеНажмите здесь!
 country_decisions = {

restore_BLAHAMYHA = {

potential = {

tag = BLA

religion = orthodox # (необходимая религия)

}

allow =

{

owns = 2151 # (условия, например столица литвы, или город или несколько городов)

war = no

}

effect = {

BLA = { # (тег твоей страні)

lithuania = { # (тег региона)

add_core = BLA } # (тег твоей страні)

}

[Cкрыть]
Ссылка на комментарий

Kaizerreich
второй вариант поставить условие щита на регион.

А как это?

Ссылка на комментарий

Kommunist

Если честно,то плохой "урок"

Практически ничего не объясняется,нет списка тригеров и опций.

Например у меня вопрос-обязательна ли функция:

any_owned = { limit = { NOT = { core = this } } }

nationalist_rebels = 1 #Во всех некоренных провинциях вылезут националисты

и что это вообще такое.....

Ссылка на комментарий

знаю, что офтоп, но не нашёл темы. нужно сделать нацрешение, которое будет изменять отношения между государствами.

country_decisions = {

ukrainian_russian = {

allow =

{

owns = 283 # Zaporozia

is_core = 283 # Zaporozia

}

effect = {

relation = { who = RUS = 10 }

}

}

вот пока что простенький код. все работает, но - когда принимаю решение, отношения никак не меняются, и в описании при наведении на решение показывает, что отношения поменяются не на 10, а на 0. что не так? с локализацией проблем нет, всё прописал

или же можно как-то сделать ивент, чтобы менял отношения с Россией и выскакивал каждый месяц?

Ссылка на комментарий

сделал ивент. вызвал с помощью консоли, и вновь изменение отношений всего лишь на 0

country_event = {

id = 76666

major = no

trigger = {

owns = 283 # Zaporozia

is_core = 283 # Zaporozia

}

mean_time_to_happen = {

mounth = 1

modifier = { factor = 0.1 }

}

title = "EVTNAME76666" #Имя заголовка ивента(для того, чтобы писать в локализации

desc = "EVTDESC76666" #Имя рассказа, содержание главного окна ивента.

immediate = {

relation = { who = RUS = 10 }

}

option = {

name = "EVTOPTB76666"

relation = { who = RUS = 100 }

}

}

Изменено пользователем Zemo
Ссылка на комментарий

Aspen
immediate = {

relation = { who = RUS value = 10 }

}

option = {

name = "EVTOPTB76666"

relation = { who = RUS value = 100 }

}

Добавить выделенное красным.

Ссылка на комментарий

Выручайте!

Напишите пожалуйста инвент на:

1. прибавку денег

2. чтоб добовлял торговца, шпиона и остальных по 5 шт

Спасибо))))

Ссылка на комментарий

Выручайте!

Напишите пожалуйста инвент на:

1. прибавку денег

2. чтоб добовлял торговца, шпиона и остальных по 5 шт

Спасибо))))

Не проще ли воспользоваться читами?
Ссылка на комментарий

Никотин

Не понравилось оформление шапки темы. Мало чего понятного.

Я сейчас занимаюсь созданием мода "Болканская федеративная республика". Нужно создать одинаковое нац.решение у 5 стран на создание самой республики. Я вот не понял как. Примерно так же как и написано в теме? Или нац.решения принимаются отдельно?

Мне нужно решение, где для его принятия нужно быть определённой национальности и владеть несколькими провинциями.

Ссылка на комментарий

Присоединиться к обсуждению

Вы можете оставить комментарий уже сейчас, а зарегистрироваться позже! Если у вас уже есть аккаунт, войдите, чтобы оставить сообщение через него.

Гость
Ответить в тему...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  Only 75 emoji are allowed.

×   Ваша ссылка автоматически преображена.   Отображать как простую ссылку

×   Предыдущее содержимое было восстановлено..   Очистить текст в редакторе

×   You cannot paste images directly. Upload or insert images from URL.

  • Ответы 27
  • Создано
  • Последний ответ
  • Просмотры 25822

Лучшие авторы в этой теме

  • Chaos Destroyer

    3

  • Змей Горыныч

    3

  • Zemo

    3

  • Kaizerreich

    2

  • robinovich

    2

  • Никотин

    2

  • CEPuK

    1

  • Fan777

    1

  • OrelImperia

    1

  • mihail92

    1

  • Aspen

    1

  • Kommunist

    1

  • Lin Nacume

    1

  • Суворов

    1

  • Dobrak

    1

  • Ысфдвук

    1

  • Sokol888

    1

  • Bertineen

    1

  • Vladimir666

    1

Лучшие авторы в этой теме

  • Сейчас на странице   0 пользователей

    • Нет пользователей, просматривающих эту страницу


Copyright © 2008-2024 Strategium.ru Powered by Invision Community

×
×
  • Создать...