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

[Учебник по моддингу] Создание института

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

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

 

Вам понадобятся(не то чтобы прямо понадобятся, но для удобства не помешают):
1)Синтаксис для notepad++ и сам notepad++
CustomPDX

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

3)Тема на парадоксплазе со всеми триггерами и эффектами. Очень, ОЧЕНЬ полезно: https://forum.paradoxplaza.com/forum/index.php?threads/list-of-effects-modifiers-scopes-triggers-and-localization-strings-oh-my.722090/

Прежде всего, вам стоит знать некоторые особенности. Например, институты в интерфейсе будут отображаться в том порядке, в каком они расположены в файлах. И если ваш институт должен будет появляться раньше остальных, а расположен он не в 00_core, а другом файле, то он не заспавнится. По крайней мере, среди тех, что я тестил. Некоторые вещи остались для меня загадкой, например, один раз у меня что-то сломалось и в интерфейсе отображалось только три иконки, остальные съехали неизвестно куда. Было похоже на то, что где-то осталась незакрытая скобка, но они везде были закрыты. Пришлось перепечатывать.

Разберем костяк:
Проходим в папку common\institutions и открываем 00_core

 

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

 


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

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

 

 

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

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

 

 

Далее запишем модификаторы для провиций:

В папке /common/event_modifier создаем файл с модификаторами, его структура довольно проста:

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

В стартовой провинции, при выпадении стартового эвента института появится бонус защиты форта.

 

Далее, вам нужно будет заполнить файлы текста в локализации. Скорее всего, если вы открыли данное руководство и дошли до этого момента, вы это уже умеете. Файл будет иметь примерно такую структуру:

Осталось самое страшное. Графика. Вам потребуется создать иконки для института. Тут уж я вам не помощник, в фотошопе вы с этим как-нибудь сами справитесь. Расскажу лишь о том, как прибить интересующую нас иконку к институту.

Создайте папку gfx\interface\institutions
Туда поместите две иконки – одну одиночную в рамочке, а вторую иконку сдвоенную на фоне интерфейса, примеры иконок я прикрепил


hhh_dt_f.dds
institution_tab_hhh_dt_f.dds

 

Далее вам нужно прописать их. Заходим в папку \interface и создаём файл «countrytechnologyview_additions.gfx»

 

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

 


Ну вот, в принципе, и всё необходимое, дальше все зависит только от вашей фантазии и лени(столько истории и модификаторов прописывать)

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

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

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

LeontevKlaus666

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

spacer.png

Изменено пользователем LeontevKlaus666
Криво картинку вставил.
Ссылка на комментарий

@LeontevKlaus666 , в 00_Core.txt порядок следования институтов такой, каким должен быть ? Иконки для нового института сделаны ?

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

LeontevKlaus666
9 часов назад, Dolmatt сказал:

@LeontevKlaus666 , в 00_Core.txt порядок следования институтов такой, каким должен быть ? Иконки для нового института сделаны ?

Да, иконки сделаны, проставлены countrytechnologyview.gfx, в 00_Core.txt сделал, как должно быть, вот код:

Спойлер

#######################################
# Feudalism.  

# Most in the old world start with it.
#######################################

feudalism = {
    penalty = 0.8
    bonus = {
        free_leader_pool = 1
    }

    trade_company_efficiency = 0.0


    history = {
        is_year = 1000
        OR = {
            AND = { #If this is changed costs for Nation Designer may also need to be changed.
                OR = {
                    continent = new_world
                    continent = north_america
                    continent = south_america
                    continent = oceania
                }
                owner = {
                    is_playing_custom_nation = yes
                    OR = {
                        technology_group = western
                        technology_group = eastern
                        technology_group = ottoman
                        technology_group = muslim
                        technology_group = indian
                        technology_group = chinese
                        #technology_group = high_american #Is listed below as High Americans get it regardless of if Nation Designer is used.
                    }
                }
            }
            AND = {
                owner = { is_playing_custom_nation = no }
                OR = {
                    culture = persian
                    culture = azerbaijani
                    culture = kurdish
                    culture = armenian
                    culture = mazandarani
                    culture = turkish
                    culture = omani_culture
                    culture = yemeni_culture
                    culture = swahili
                    area = ningguta_area
                    area = jilin_area
                    culture_group = byzantine
                    culture_group = dravidian
                    culture_group = east_asian
                    culture_group = east_slavic
                    culture_group = eastern_aryan
                    culture_group = japanese_g
                    culture_group = korean_g
                    culture_group = scandinavian
                    culture_group = west_slavic
                    culture_group = western_aryan
                    province_id = 383
                    province_id = 412
                    province_id = 2327
                    province_id = 2329
                    province_id = 2331
                    province_id = 2999
                }
            }
            AND = {
                region = horn_of_africa_region
                owner = { NOT = { has_reform = tribal_federation } }
            }
            AND = {
                culture = al_misr_arabic
                NOT = { area = libyan_desert_area }
                NOT = { area = cyrenaica_area }
            }
            AND = {
                culture_group = hindusthani
                NOT = { owner = { has_reform = tribal_kingdom } } #Ladakh
            }
            owner = { technology_group = high_american }
            owner = {
                NOT = {
                    government = tribal
                    government = native
                    primary_culture = bedouin_arabic
                    primary_culture = uyghur
                    technology_group = andean
                    technology_group = mesoamerican
                    technology_group = north_american
                    technology_group = south_american
                    technology_group = sub_saharan
                }
            }
            AND = {
                is_year = 1600
                owner = {
                    NOT = { has_reform = siberian_tribe }
                    NOT = { has_reform = steppe_horde }
                }
            }
            is_year = 1700
        }
    }
    
    # no need for events, as its there from the start.
    #can_start = {    is_year = 1000    }
    #start_chance = 100
    #on_start = institution_events.1

    can_embrace = {
        always = yes
    }

    embracement_speed = {
        modifier = {
            factor = 0.6
            scale = yes
            custom_trigger_tooltip = {
                tooltip = FRIENDLY_NEIGHBOR_OR_COAST_PROVINCE_HAS_EMBRACED
                any_friendly_coast_border_province = {
                    feudalism = 100
                }
            }
        }
        modifier = {
            factor = 0.1
            scale = yes
            potential = {
                NOT = {
                    any_friendly_coast_border_province = {
                        feudalism = 100
                    }
                }
            }
            custom_trigger_tooltip = {
                tooltip = NEIGHBOR_NOT_OWNED_IS_FEUDAL
                any_neighbor_province = {
                    NOT = { owned_by = ROOT }
                    feudalism = 100
                }
            }
        }
        modifier = {
            factor = 0.15
            scale = yes
            force_potential = yes    # Hide the this modifier when potential is false
            potential = {
                owner = { has_estate = estate_nobles }
            }
            custom_trigger_tooltip = {
                tooltip = FEUDALISM_AND_NOBLES
                any_neighbor_province = {
                    feudalism = 100
                }
                owner = {
                    has_estate = estate_nobles
                    estate_loyalty = {
                        estate = estate_nobles
                        loyalty = 40
                    }
                }
                has_estate = estate_nobles
            }
        }
        modifier = {
            factor = 5
            scale = yes
            potential = {
                owner = {
                    is_colonial_nation = yes
                }
            }
            custom_trigger_tooltip = {
                tooltip = PORT_OR_CAPITAL_IN_COLONY_FEUDAL
                OR = {
                    has_port = yes
                    is_capital = yes
                }
                owner = {
                    is_colonial_nation = yes
                    overlord = { has_institution = feudalism }
                }
            }
        }
        modifier = {
            factor = 0.1
            scale = yes
            potential = {
                owner = { is_colonial_nation = no }
            }
            custom_trigger_tooltip = {
                tooltip = CAPITAL_IN_OLD_WORLD_FEUDAL
            
                is_capital = yes
                NOT = { continent = north_america }
                NOT = { continent = south_america }
                NOT = { continent = new_world }
                owner = {
                    NOT = { government = tribal }
                    NOT = { government = native }
                }
            }
        }
        modifier = {
            factor = 2
            scale = yes
            potential = {
                owner = {
                    has_institution = feudalism
                }
            }
            
            custom_trigger_tooltip = {
                tooltip = tooltip_feudalism_embraced
                is_owned_by_trade_company = no
                owner = {
                    has_institution = feudalism
                }
            }
        }
    }
    
    ai_will_do = { #Cost of embracing institution must be lower than this factor * last month's regular income, and higher if loans are needed. (Or it has a more than long term goal...)
        factor = 24
        
        modifier = {
            factor = 0.25
            is_at_war = yes
        }
        modifier = {
            factor = 2
            neighbors_tech_discount = 0.1
        }
        modifier = {
            factor = 2
            neighbors_tech_discount = 0.2
        }
        modifier = {
            factor = 2
            neighbors_tech_discount = 0.3
        }
        modifier = {
            factor = 2
            neighbors_tech_discount = 0.4
        }
    }
}

#######################################
# High Feudalism.  

# Like Feudalism, but only for a Europe.
#######################################

high_feudalism = {
    penalty = 0.7
    bonus = {
        free_leader_pool = 1
    }

    trade_company_efficiency = 0.0


    history = {
        is_year = 1200
        OR = {
            AND = { #If this is changed costs for Nation Designer may also need to be changed.
                OR = {
                    continent = new_world
                    continent = north_america
                    continent = south_america
                    continent = oceania
                }
                owner = {
                    is_playing_custom_nation = yes
                    OR = {
                        technology_group = western
                        technology_group = eastern
                    }
                }
            }
            AND = {
                owner = { is_playing_custom_nation = no }
                OR = {
                    culture_group = byzantine
                    culture_group = east_slavic
                    culture_group = scandinavian
                    culture_group = west_slavic
                                        culture_group = latin
                                        culture_group = iberian
                                        culture_group = germanic
                                        culture_group = french
                                        culture_group = celtic
                                        culture_group = british
                                        culture_group = carpathian
                                        culture_group = baltic
                                        culture_group = gaelic
                    culture_group = south_slavic
                }
            }
            
            owner = { technology_group = high_american }
            owner = {
                NOT = {
                    government = tribal
                    government = native
                    primary_culture = bedouin_arabic
                    primary_culture = uyghur
                    culture_group = dravidian
                    culture_group = east_asian
                    culture_group = eastern_aryan
                    culture_group = japanese_g
                    culture_group = korean_g
                    culture_group = western_aryan
                                        culture = al_misr_arabic
                    culture = persian
                    culture = azerbaijani
                    culture = kurdish
                    culture = armenian
                    culture = mazandarani
                    culture = turkish
                    culture = omani_culture
                    culture = yemeni_culture
                    culture = swahili
                    technology_group = andean
                    technology_group = mesoamerican
                    technology_group = north_american
                    technology_group = south_american
                    technology_group = sub_saharan
                    technology_group = ottoman
                    technology_group = muslim
                    technology_group = indian
                    technology_group = chinese
                    area = ningguta_area
                    area = jilin_area
                                        {region = horn_of_africa_region
                        owner = { NOT = { has_reform = tribal_federation } }}
                    province_id = 383
                    province_id = 412
                    province_id = 2327
                    province_id = 2329
                    province_id = 2331
                    province_id = 2999
            }
            AND = {
                is_year = 1600
                owner = {
                    NOT = { has_reform = siberian_tribe }
                    NOT = { has_reform = steppe_horde }
                }
            }
            is_year = 1700
        }
    }
    
    # no need for events, as its there from the start.
    #can_start = {    is_year = 1200    }
    #start_chance = 100
    #on_start = institution_events.1

    can_embrace = {
        owner = { has_institution = feudalism }
    }

    embracement_speed = {
        modifier = {
            factor = 0.6
            scale = yes
            custom_trigger_tooltip = {
                tooltip = FRIENDLY_NEIGHBOR_OR_COAST_PROVINCE_HAS_EMBRACED
                any_friendly_coast_border_province = {
                    high_feudalism = 100
                }
            }
        }
        modifier = {
            factor = 0.1
            scale = yes
            potential = {
                NOT = {
                    any_friendly_coast_border_province = {
                        high_feudalism = 100
                    }
                }
            }
            custom_trigger_tooltip = {
                tooltip = NEIGHBOR_NOT_OWNED_IS_FEUDAL
                any_neighbor_province = {
                    NOT = { owned_by = ROOT }
                    high_feudalism = 100
                }
            }
        }
        modifier = {
            factor = 0.15
            scale = yes
            force_potential = yes    # Hide the this modifier when potential is false
            potential = {
                owner = { has_estate = estate_nobles }
            }
            custom_trigger_tooltip = {
                tooltip = FEUDALISM_AND_NOBLES
                any_neighbor_province = {
                    high_feudalism = 100
                }
                owner = {
                    has_estate = estate_nobles
                    estate_loyalty = {
                        estate = estate_nobles
                        loyalty = 40
                    }
                }
                has_estate = estate_nobles
            }
        }
        modifier = {
            factor = 5
            scale = yes
            potential = {
                owner = {
                    is_colonial_nation = yes
                }
            }
            custom_trigger_tooltip = {
                tooltip = PORT_OR_CAPITAL_IN_COLONY_FEUDAL
                OR = {
                    has_port = yes
                    is_capital = yes
                }
                owner = {
                    is_colonial_nation = yes
                    overlord = { has_institution = high_feudalism }
                }
            }
        }
        modifier = {
            factor = 0.1
            scale = yes
            potential = {
                owner = { is_colonial_nation = no }
            }
            custom_trigger_tooltip = {
                tooltip = CAPITAL_IN_OLD_WORLD_FEUDAL
            
                is_capital = yes
                NOT = { continent = north_america }
                NOT = { continent = south_america }
                NOT = { continent = new_world }
                owner = {
                    NOT = { government = tribal }
                    NOT = { government = native }
                }
            }
        }
        modifier = {
            factor = 2
            scale = yes
            potential = {
                owner = {
                    has_institution = high_feudalism
                }
            }
            
            custom_trigger_tooltip = {
                tooltip = tooltip_feudalism_embraced
                is_owned_by_trade_company = no
                owner = {
                    has_institution = high_feudalism
                }
            }
        }
    }
    
    ai_will_do = { #Cost of embracing institution must be lower than this factor * last month's regular income, and higher if loans are needed. (Or it has a more than long term goal...)
        factor = 24
        
        modifier = {
            factor = 0.25
            is_at_war = yes
        }
        modifier = {
            factor = 2
            neighbors_tech_discount = 0.1
        }
        modifier = {
            factor = 2
            neighbors_tech_discount = 0.2
        }
        modifier = {
            factor = 2
            neighbors_tech_discount = 0.3
        }
        modifier = {
            factor = 2
            neighbors_tech_discount = 0.4
        }
    }
}

#######################################
# Renaissance

# Flows from italy
#######################################

renaissance = {
    penalty = 0.5

    bonus = {
        development_cost = -0.05
        build_cost = -0.05
    }

    trade_company_efficiency = 0.0


    historical_start_date = 1450.1.1
    historical_start_province = 116 # Florence

    history = {
        OR = {
            AND = {
                is_year = 1450
                region = italy_region
            }
            
            AND = {
                is_year = 1450
                continent = europe
            }
            AND = {
                is_year = 1500
                owner = {
                    NOT = { technology_group = north_american }
                    NOT = { technology_group = mesoamerican }
                    NOT = { technology_group = south_american }
                    NOT = { technology_group = andean }
                }
                superregion = south_america_superregion
            }
            AND = {
                is_year = 1500
                owner = {
                    NOT = { technology_group = north_american }
                    NOT = { technology_group = mesoamerican }
                    NOT = { technology_group = south_american }
                    NOT = { technology_group = andean }
                }
                superregion = north_america_superregion
            }
            AND = {
                is_year = 1500
                owner = {
                    NOT = { technology_group = north_american }
                    NOT = { technology_group = mesoamerican }
                    NOT = { technology_group = south_american }
                    NOT = { technology_group = andean }
                }
                superregion = central_america_superregion
            }
            AND = {
                is_year = 1600
                continent = asia
                owner = {
                    NOT = { government = tribal }
                }
            }
            is_year = 1780
        }
    }
    
    can_start = {
        is_year = 1450
        region = italy_region
        is_state = yes
        NOT = { province_id = 126 }
        is_island = no
        OR = {
            development = 20
            is_capital = yes
            normal_or_historical_nations = no
        }
    }
    start_chance = 5        #in 100 for when a province can_start
    
    
    on_start = institution_events.2
    
    
    

    
    
    can_embrace = {
        owner = { has_institution = high_feudalism }
    }


    
    embracement_speed = {
        modifier = {
            scale = yes
            factor = 0.6
            custom_trigger_tooltip = {
                tooltip = tooltip_any_friendly_coast_border_province_has_embraced_renaissance
                any_friendly_coast_border_province = {
                    renaissance = 100
                }
            }
        }
        modifier = {
            factor = 0.3
            scale = yes
            potential = {
                NOT = {
                    any_friendly_coast_border_province = {
                        renaissance = 100
                    }
                }
            }
            custom_trigger_tooltip = {
                tooltip = tooltip_any_neighbor_has_embraced_renaissance
                any_neighbor_province = {
                    NOT = { owned_by = ROOT }
                    renaissance = 100
                }
            }
        }
        modifier = {
            factor = 1
            potential = {
                region = italy_region
            }
            custom_trigger_tooltip = {
                tooltip = tooltip_italian_capital
                is_capital = yes
                region = italy_region
                culture_group = latin
            }
            
            
        }
        modifier = {
            factor = 0.05
            scale = yes
            potential = {
                continent = europe
            }
            custom_trigger_tooltip = {
                tooltip = tooltip_development_10
                continent = europe
                development = 10
            }
        }
        modifier = {
            factor = 0.05
            scale = yes
            potential = {
                continent = europe
            }
            custom_trigger_tooltip = {
                tooltip = tooltip_development_20
                development = 20
                continent = europe
            }
        }
        modifier = {
            factor = 0.1
            scale = yes
            potential = {
                continent = europe
            }
            custom_trigger_tooltip = {
                tooltip = tooltip_development_5_post_1500
                continent = europe
                is_year = 1500
                development = 5
            }
        }
        modifier = {
            factor = 0.5
            scale = yes
            potential = {
                OR = {
                    area = flanders_area
                    area = tuscany_area
                    area = venetia_area
                }
            }
            custom_trigger_tooltip = {
                tooltip = tooltip_flanders_tuscany_venetia
                OR = {
                    area = flanders_area
                    area = tuscany_area
                    area = venetia_area
                }
            }
        }
        modifier = {
            factor = 5
            scale = yes
            potential = {
                owner = {
                    is_colonial_nation = yes
                }
            }
            custom_trigger_tooltip = {
                tooltip = tooltip_colonial_overlord_renaissance
                OR = {
                    has_port = yes
                    is_capital = yes
                }
                owner = {
                    is_colonial_nation = yes
                    overlord = { has_institution = renaissance }
                }
            }
        }
        modifier = {
            factor = 2
            scale = yes
            potential = {
                owner = {
                    has_institution = renaissance
                }
            }
            
            custom_trigger_tooltip = {
                tooltip = tooltip_renaissance_embraced
                is_owned_by_trade_company = no
                owner = {
                    has_institution = renaissance
                }
            }
        }
    }
    
    ai_will_do = { #Cost of embracing institution must be lower than this factor * last month's regular income, and higher if loans are needed. (Or it has a more than long term goal...)
        factor = 24
        
        modifier = {
            factor = 0.25
            is_at_war = yes
        }
        modifier = {
            factor = 2
            neighbors_tech_discount = 0.1
        }
        modifier = {
            factor = 2
            neighbors_tech_discount = 0.2
        }
        modifier = {
            factor = 2
            neighbors_tech_discount = 0.3
        }
        modifier = {
            factor = 2
            neighbors_tech_discount = 0.4
        }
    }
}

 

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

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

penalty = 0.8

 

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

penalty = 0.7

Можно попробовать следующее. Во первых все значения penalty сбросить до 0.5. Затем в файле countrytechnologyview.gfx удалить спрайт тайпы с именами name = "GFX_icon_institution_feudalism" и name = "GFX_institution_tab_feudalism" и то же самое сделать для high_feudalism. Картинки для этих двух институтов в игре должны замениться на неопределённые (с вопросительным знаком). Чисто ради эксперимента.

 

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

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

вот код

Кстати, код нормальный. Я его скопировал и у меня всё заработало. Вероятно, проблема не в 00_Core.txt, а где-то ещё.

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

LeontevKlaus666
В 05.06.2020 в 16:51, Dolmatt сказал:

Кстати, код нормальный. Я его скопировал и у меня всё заработало. Вероятно, проблема не в 00_Core.txt, а где-то ещё.

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

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

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

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

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

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

  Only 75 emoji are allowed.

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

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

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

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

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


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

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