Создание ивентов - Страница 2 - Учебники по моддингу - Strategium.ru Перейти к содержимому

Создание ивентов

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

kepke386

Часть I. Создание ивента (события).

Предисловие

 

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

 

Необходимый софт

 

Для комфортного и правильного написания кода ивента, я рекомендую скачать бесплатную программу Notepad++. Она поддерживает смену кодировок, подсвечивает некоторые элементы структуры кода, в общем, необходимая программа для мододела.

 

Notepad++

Спойлер

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

 

Если вы планируете добавлять свои картинки событий, их необходимо перевести в формат .dds (Direct Draw Image). Лучше всего с этим справляется бесплатная программа Paint.net.

 

Paint.net

Спойлер

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

 

На этом список необходимых программ закончен.

 

 

Начало

 

Для начала создаем мод (я думаю, все знают как это делается), затем заходим в папку мода (C:\users\user\Documents\Paradox Interactive\mod\%имя мода%) и создаем папку events в корне каталога. Затем создаем пустой текстовый файл с названием, в котором первое слово это тег страны события маленькими буквами, затем нижнее подчеркивание, затем название вашей страны. Пример: ger_Germany, sov_SovietUnion

 

Заходим в созданный нами файл. Добавляем в самом начале переменную, отвечающую за обнаружение игрой этого фала в дальнейшем:

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

Я использую исходники моего мода (Extended Asia mod), поэтому у меня в переменной прописано raj. Вы же прописываете тег вашей страны малыми буквами. Пример - ger, sov, rus, usa.

 

Затем копируем и вставляем туда структуру ивента:

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

В данном коде country event обозначает начало и конец ивента, id - номер ивента, title - название, desc - описание, picture - картинка ивента, option - вариант ответа на ивент.

 

Прописываем номер, название, описание ивента:

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

Первый ивент всегда имеет номер 1, а название и описание - это приставка к номеру (t или d). Не прописывайте название ивента словами - оно указывается в файлах локализации!

 

Теперь добавляем картинку события. Открываем папку с игрой (место, куда вы ее установили), заходим в папку gfx\event_pictures и выбираем нужную вам картинку с помощью Paint.net. Затем копируем ее название, открываем файла ивента и записываем в строку picture такой код:

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

где picture = GFX_ это обязательная часть кода, а следующее за ней предложение - название вашей картинки.

 

Если же вам не нравится данные парадоксами картики ивентов, вы вполне можете добавить свою. Для этого создаем в корне мода папку gfx, в ней папку event_pictures, затем копируем в нее любую понравившуюся из файлов игры картинку ивента и меняем в ней изображение на свое. Также необходимо ее переименовать - например, report_event_test_event1. Теперь заходим в файл ивента и пишем там следующее:

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

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

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

Все предельно просто. Осталось только добавит условие срабатывания события. Делается это через команду trigger:

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

Триггер вставляется перед опцией. Вот так выглядит весь код:

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

Вот так. В следующем гайде поговорим о файлах локализации.

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

Закреплённые сообщения
Old_Kerogaz
В 21.07.2017 в 02:51, Мавлин сказал:

Помогите, пожалуйста. Не могу найти ошибку в коде.

Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое. Код (.)

add_namespace = bra

country_event = {
    id = bra.1
    title = bra.1.t
    desc = bra.1.d
    picture = GFX_report_event_generic_ruins
    trigger = {
    tag = BRA
    date < 1936.1.3
    rulling_party = neutrality
    }
    is_triggered_only = yes
    option = {
        name = bra.1.a 
        retire_country_leader = yes
        GER = {puppet = BRA}
        ai_chance = { factor = 50 }
    }
    option = {
        name = bra.1.b
            start_civil_war = {
                ideology = fascism
                size = 0.5
            }
            start_civil_war = {
                ideology = neutrality
                size = 0.1
            }
            start_civil_war = {
                ideology = communism
                size = 0.4
            }
        ai_chance = { factor = 50 }
    }
    
}

Заранее спасибо.

Пришлось почитать дополнительный материал, но вещь полезная, если надо кому будет. Для начала добавляем

fire_only_once = yes

  is_triggered_only = yes

перед описанием триггера

MTTH лучше убрать, это своеобразный "рандом срабатывания". Дальше нужно перейти в ...\history\countries\BRA - Brazil и в конец файла закинуть спецификатор ивента:

country_event = {
id = brazil.1 #Созданный ранее ивент
days = 2 #Дата срабатывания от начала игры
}

Таким образом, можно вывести универсальную инструкцию создания ивента с точной датой срабатывания:

1. Создание типового ивента по инструкции в начале поста

2. Поместить is_triggered_only = yes перед телом триггера

3. Перейти в Ваш мод\history\countries\Ваша страна.txt

4. В этом файле в конец добавить код принудительного запуска:

country_event = {
id = yourevent.1 #Созданный ранее ивент
days = 2 #Дата срабатывания от начала игры
}

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

Kaminoonchо

Можно ли создать ивент на смену названия страны?

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

В 19.08.2017 в 04:09, Kaminoonchо сказал:

Можно ли создать ивент на смену названия страны?

можно

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

Kaminoonchо
15 часов назад, solfin сказал:

можно

Есть пример этого ивента?

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

Помогите пожалуйста сделать Ивент на революцию в стране я несколько раз пробовал и не получается

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

В 20.08.2017 в 13:11, solfin сказал:

можно

Если не сложно, мог бы предоставить пример данного ивента?
Я сделал ивент по смене идеологии, и соответственно меняется название страны. Но это не то, что я хотел. Мне надо сменить название страны по ивенту без потери идеологии правящего лидера и т.д

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

apushkin556

Как сделать эвент на начало войны? Не подскажите?

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

Vovanchik

Как сделать ивент, в котором страны объединяются в одну единую.

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

timati 47
код
add_namespace = kazakhstan

country_event = { 
 id = kazakhstan.1
 title = kazakhstan.1.t
 desc = kazakhstan.1.d
 picture = GFX_news_event_005.dds
 
 is_triggered_only = yes
 
 
 option = {
  name = kazakhstan.1.a
  add_political_power = 50
  ai_chance = { factor = 10}
  
 
    }
   
 option = {
  name = kazakhstan.1.b
  add_political_power = -50
  ai_chance = { factor = 25}
 }
    
    }
 
Помогите пожалуйста не могу найти ошибку в ивенте. Ивент  не отображается в конкретное время  в чес может быть моя ошибка 
Изменено пользователем timati 47
Ссылка на комментарий

Maksim199

Помогите пожалуйста, решил изменить фото на новостном инвенте, который сообщает об олимпийских играх в Германии 1936 года. В файле NewsEvents, который находится в папке event. Нашёл сам инвент news.66, и изменил скриншот. Но при проверке, отображается не это фото а фото инвента о конфликте Японии и Китая.

Вот код где картинка 

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

Но всё равно не работает. В чем проблем? 

765a9bca3917d97c07193c7604ad062f.jpg

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

34 минуты назад, Maksim199 сказал:

В файле NewsEvents, который находится в папке event. Нашёл сам инвент news.66, и изменил скриншот. Но при проверке, отображается не это фото а фото инвента о конфликте Японии и Китая.

Это фото китайцев с пулемётом на самом деле стандартная заглушка, которая отображается когда игра не может найти указанную картинку ивента. А найти она его не может видимо потому, что GFX_news_1936 не прописано в /interface/eventpictures.gfx вместе с остальными изображениями.

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

Maksim199
8 минут назад, GBV сказал:

Это фото китайцев с пулемётом на самом деле стандартная заглушка, которая отображается когда игра не может найти указанную картинку ивента. А найти она его не может видимо потому, что GFX_news_1936 не прописано в /interface/eventpictures.gfx вместе с остальными изображениями.

Спасибо за помощь

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

Мавлин

Как сделать так, чтобы ивент срабатывал сразу после начала игры, как  в Battle royal или КР?

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

Kirill555dg

Ребят, помогите пожалуйста создать ивент на смену названия государства при условии контроля им определенных территорий. Заранее спасибо

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

Вольт

У меня не срабатывает ивент

Вот код:

Цитата

#Ukraine Election of 1994
country_event = {
    id = ukraine.3
    title = ukraine.3.t
    desc = ukraine.3.d
    picture = GFX_report_event_vladimir_putin_young
    
    is_triggered_only = yes
    
    trigger = {
        tag = UKR
        date > 1992.1.7
    }
    
    option = {
        name = ukraine.3.o1
        
        set_politics = {
            ruling_party = conservative
            elections_allowed = yes
        }
        
        ai_chance = {
            base = 70
        }
    }
    
    option = {
        name = ukraine.3.o2
        set_politics = {
            ruling_party = nationalist
            elections_allowed = yes
        }
        add_popularity = { ideology = nationalist popularity = 0.15 }
        
        ai_chance = {
            base = 10
            modifier = {
                is_historical_focus_on = yes
                factor = 0
            }
        }
    }
    
    option = {
        name = ukraine.3.o3
        set_politics = {
            ruling_party = communist
            elections_allowed = yes
        }

        add_popularity = { ideology = communist popularity = 0.15 }
        
        ai_chance = {
            base = 10
            modifier = {
                is_historical_focus_on = yes
                factor = 0
            }
        }
    }
    
    option = {
        name = ukraine.3.o4
        set_politics = {
            ruling_party = social_liberal
            elections_allowed = yes
        }
        
        add_popularity = { ideology = social_liberal popularity = 0.15 }
        
        ai_chance = {
            base = 10
            modifier = {
                is_historical_focus_on = yes
                factor = 0
            }
        }
    }
}

После 7 января 1992 года ивент не выскакивает. 

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

5 часов назад, Вольт сказал:

После 7 января 1992 года ивент не выскакивает. 

И правильно, сам он никогда и не выскочит, потому что:

5 часов назад, Вольт сказал:

    is_triggered_only = yes

 

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

Sepera_okeq

Вопрос,как сделать ивент,чтобы видела каждая страна?

прошу покажите пример

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

Lazarka
23 минуты назад, Sepera_okeq сказал:

Вопрос,как сделать ивент,чтобы видела каждая страна?

прошу покажите пример

Имеется ввиду новостной ивент? На подобии Амелия Эрхарт облетела земной шар?

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

Sepera_okeq
В ‎13‎.‎01‎.‎2019 в 16:53, Lazarka сказал:

Имеется ввиду новостной ивент? На подобии Амелия Эрхарт облетела земной шар?

Да,хоть и разобрался,но не доконца

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

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

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

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

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

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

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

  Only 75 emoji are allowed.

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

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

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

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

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

  • GBV

    10

  • Artanis

    5

  • nikita_sernur

    3

  • Иван Винокуров

    3

  • Fishenzon

    2

  • kepke386

    2

  • пюрешка

    2

  • AlexZh

    2

  • Kaminoonchо

    2

  • Мавлин

    2

  • Old_Kerogaz

    2

  • Maksim199

    2

  • Sepera_okeq

    2

  • Denonion

    1

  • RatHive

    1

  • Капитан Морозов

    1

  • apushkin556

    1

  • TheSkorpy

    1

  • Cezka228

    1

  • solfin

    1

  • timati 47

    1

  • G4L

    1

  • Vovanchik

    1

  • Ranvey_Iron

    1

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

Популярные сообщения

kepke386

Часть I. Создание ивента (события). Предисловие   Итак, прочитав тему вопросы по моддингу, я выяснил, что множество начинающих мододелов совершенно не имеют понятия о создании ивентов (

GBV

Там много модификаторов для ИИ, не только голый рандом. Если нужно ещё и добавить зависимость от поддержки войны, то например в germany.40.b можно ещё один добавить модификатор:   08b8a1465265

GBV

Это значит, что приоритет (вероятность) выбора ИИ этого варианта сводится к нулю при выполении условия has_war_support < 0.50, т.к. на это значение происходит умножение базового значения, которое в

AlexZh

@Artanis  fire_only_once = yes или  is_triggered_only = yes

GBV

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

GBV

И правильно, сам он никогда и не выскочит, потому что:  

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

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


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

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