效果(Effects),也叫指令(Commands),用于在特定范围内动态地影响游戏。
效果在整局游戏中作用于不同的范围,最常见的是国策, 事件以及决议.
See Variables for information on the variable effects.
注意某些效果可能会需要变量的值,例如:
add_manpower = var:my_var
.
This is noted by <variable> in an effect's parameters.
New La Resistance Effects
Name | Parameters | Examples | Description | Notes | Version Added |
---|---|---|---|---|---|
create_intelligence_agency | Allows to create automatically an intelligence agency | create_intelligence_agency = yes
|
Creates an Intelligence Agency. | 1.9 | |
upgrade_intelligence_agency | Allows to unlock automatically an intelligence agency uprgrade | upgrade_intelligence_agency = upgrade_form_department upgrade_intelligence_agency = <upgrade>
|
Unlocks an Intelligence Agency Upgrade. | Upgrades can be found in common/intelligence_agency_upgrades | 1.9 |
kill_ideology_leader | Allows to kill a country leader from a precise ideology | kill_ideology_leader = communism kill_ideology_leader = <ideology>
|
Kills the leader of that ideology in that scope. | 1.9 | |
transfer_units_fraction | Allows to transfer a precise part of the army and the equipement of a country to any country. | transfer_units_fraction= { |
Transfers a certain equipement, Navy, Air Force, and Land Force ratio to a country. | Unit Leaders can be kept by using triggers with keep_unit_leaders_trigger = {
|
1.9 |
New Man the Guns Effects
Name | Parameters | Examples | Description | Notes | Version Added |
---|---|---|---|---|---|
remove_decision | Allows to remove specified decision without running remove_effect. | remove_decision = GER_MEPO
|
Removes a decision. | 1.6 | |
swap_ruler_traits | Similar to swap_ideas. Removes one trait and adds another. | swap_ruler_traits = { remove = <trait> add = <trait> }
|
Swaps traits. | 1.6 | |
remove_exile_tag |
Remove the exile tag on a army leader, making them no longer be considered exile leaders. | remove_exile_tag = { USA = "Arturo Rawson" }
|
Removes a leaders exile tag. | 1.6 | |
add_legitimacy | Adds legitimacy to a government in exile. | add_legitimacy = 10
|
Adds legitimacy. | 1.6 | |
set_legitimacy |
Sets the legitimacy of governments in exile. | set_legitimacy= { POL = 1.0 }
|
Sets legitimacy. | 1.6 | |
become_exiled_in | Makes a country a government in exile in a set country, with a set starting legitimacy. | become_exiled_in = { target = <Host tag> legitimacy = <0-1> starting legitimacy }
|
Creates a government in exile. | Must be fired from ROOT, the country that should be exiled, or a TAG specification must be used. | 1.6 |
end_exile | Ends a government in exile. | end_exile
|
Ends a government in exile. | 1.6 | |
add_province_modifier | Adds a province modifier. | add_province_modifier = { 5246 = mud }
|
Adds a province modifier. | New modifiers can be created in the "weather.txt" file. | 1.6 |
remove_province_modifier | Removes a province modifier. | remove_province_modifier = { 5246 = mud }
|
Removes a province modifier. | New modifiers can be created in the "weather.txt" file. | 1.6 |
set_faction_name | Sets a faction name as the loc name. | set_faction_name = SOME_LOC_KEY
|
Changes faction names. | 1.6 | |
add_nuclear_bombs | Adds nuclear bomb to TAG's stockpile. | add_nuclear_bombs = 100
|
Adds specified number of nukes to the country's stockpile | Needs the Nuke tech to use. | 1.6 |
launch_nuke | Nukes a province. |
|
Nukes a province.
When using state it nukes a random province in said state, with a preference to enemy occupied provinces. |
Requires Nuke tech and nukes. Removes a nuke from stockpile when used. | 1.6 |
inherit_technology | Transfers all of a nations techs to a specified tag. | inherit_technology = CAN
|
Transfers tech. | Useful in civil wars and when countries split. The scoped country inherits the techs from the targeted TAG so be careful with the scope. | 1.6 |
set_fuel_ratio | Set country's current fuel ratio relative to its capacity. | set_fuel_ratio
|
Sets country's current fuel ratio. | 1.6 | |
add_mines | Add mines to a strategic region for the current country. | add_mines = { region = 42 amount = 100 }
|
Add mines to a strategic region. |
1.6 | |
give_resource_rights | Gives resource rights | give_resource_rights = { receiver = ENG state = 291 }
|
Gives all the resources of a state to the target country | see 04_mtg_on_actions | 1.6 |
remove_resource_rights | Removes resource rights | ENG = { remove_resource_rights = 477 }
|
Removes given resource rights | 1.6 |
Any Scope
Can be used in country, state or unit leader scopes.
General
File:Ambox outdated info.png | 这部分内容可能已不适合当前版本,最后更新于1.5。 |
Name | Parameters | Examples | Description | Notes | Version Added |
---|---|---|---|---|---|
set_global_flag | <flag> An unique string to identify the global flag with. |
set_global_flag = my_flag
|
Defines a global flag. | 1.0 | |
clr_global_flag | <flag> The unique string of a global flag to clear. |
clr_global_flag = my_flag
|
Clears a defined global flag. | 1.0 | |
modify_global_flag | flag = <flag> The global flag to modify.
|
modify_global_flag = { flag = my_flag value = 1 } |
Modifies a global flag. | Use variables instead. | 1.0 |
custom_effect_tooltip | <string> A localized string to display in the tooltip. |
custom_effect_tooltip = my_tooltip_tt
|
Displays a localized key in the effect tooltip. | 1.0 | |
log | <string> An string to in the game.log |
log = "myVariable: [?myVariable]"
|
Displays a string in the game.log when executed. | Accepts all localization commands (i.e. [Root.GetName], etc) | 1.5 |
save_event_target_as | <string> An unique string to identify the event target with. |
capital_scope = { save_event_target_as = my_state } |
Saves the current scope as a key. Is cleared once execution ends (i.e. end of event). | Use event_target:<key> to access the scope. Do not use in Scripted GUIs. |
1.0 |
save_global_event_target_as | <string> An unique string to identify the global event target with. |
random_other_country = { save_global_event_target_as = my_country } |
Saves the current scope as a key. Persists after execution until cleared via effect. | Use event_target:<key> to access the scope. Do not use in Scripted GUIs. |
1.0 |
clear_global_event_target | <string> The unique string of the global event target to clear. |
clear_global_event_target = my_country
|
Clears a specific global event target. | 1.0 | |
clear_global_event_targets | yes Boolean. |
clear_global_event_targets = yes
|
Clears all global event targets. | 1.0 | |
break | None
|
break
|
Stops execution of effects in current scope. | 1.0 | |
sound_effect | <string> A sound reference from an .asset file. |
sound_effect = "boom"
|
Plays the specified sound once. | 1.0 | |
randomize_weather | <int> A seed integer. |
randomize_weather = 12345
|
Randomizes the weather with the specified seed. | 1.0 | |
set_province_name | id = <id> The id of the province to be changed.
|
set_province_name = { id = 325 name = "Funland" } |
Changes the specified province's name to the specified name. | 1.3 | |
reset_province_name | <id> The id of the province to reset. |
reset_province_name = 325 |
Resets the specified province's name. | 1.3 | |
goto_province | <id> The id of the province go to. |
goto_province = 325 |
Moves the camera position over the specified province. | 1.0 | |
goto_state | <scope> / <variable> The id of the state go to. |
goto_state = 1 goto_state = var:some_state |
Moves the camera position over the specified state. | 1.0 | |
change_tag_from | <scope> / <variable> The country to change from. |
GER = { change_tag_from = ROOT } GER = { change_tag_from = var:from.country } |
Changes the player to the current scope from the target scope. | The country the player becomes needs to be the scope in which the command is used. | 1.0 |
add_region_efficiency | 1.5 |
边境冲突
Name | Parameters | Examples | Description | Notes | Version Added |
---|---|---|---|---|---|
start_border_war(发起边境冲突) | change_state_after_war = <bool> 在边境冲突结束后,该省份是否易手 . Attacker scope |
start_border_war = { change_state_after_war = no attacker = { state = 527 num_provinces = 4 on_win = japan_border_conflict.2 on_lose = japan_border_conflict.3 on_cancel = japan_border_conflict.4 } defender = { state = 408 num_provinces = 4 on_win = japan_border_conflict.3 on_lose = japan_border_conflict.2 on_cancel = japan_border_conflict.4 } } |
Starts a border war for the specified attacker and defender. The participating countries are the owners of the specified states. | 1.5 | |
set_border_war_data | attacker = <id> / <variable> The attacker state.
|
set_border_war_data = { attacker = 527 defender = 408 defender_modifier = 0.15 combat_width = 100 } |
Sets the bonuses or penalties for the attacker and defender in an on-going border war. Used after start_border_war. | 1.5 | |
cancel_border_war | attacker = <id> / <variable> The attacker state.
|
cancel_border_war = { dont_fire_events = yes defender = 408 attacker = 527 } |
Cancels an on-going border war without a winner. | 1.5 | |
finalize_border_war | attacker = <id> / <variable> The attacker state.
|
finalize_border_war = { attacker_win = yes attacker = 527 defender = 408 } |
Ends an on-going border war. | 1.5 |
Country Scope
The effects here must be used within a country scope.
General
Name | Parameters | Examples | Description | Notes | Version Added |
---|---|---|---|---|---|
set_country_flag | <flag> An unique string to identify the country flag with. |
set_country_flag = my_flag
|
Defines a country flag. | 1.0 | |
clr_country_flag | <flag> The unique string of a country flag to clear. |
clr_country_flag = my_flag
|
Clears a defined country flag. | 1.0 | |
modify_country_flag | flag = <flag> The country flag to modify.
|
modify_country_flag = { flag = my_flag value = 1 } |
Modifies a country flag. | Use variables instead. | 1.3 |
country_event | id = <event> The event to fire.
|
country_event = { id = my_event.1 days = 10 random = 50 } |
Fires the specified event for the current country. | Where triggers do not need to be repeatedly checked random can be a performance light alternative to mean_time_to_happen for scheduling events.
|
1.0 |
news_event | id = <event> The event to fire.
|
news_event = { id = my_event.1 days = 10 random = 50 } |
Fires the specified news event for the current country. | The news event uses a different interface to the country event.
Where triggers do not need to be repeatedly checked |
1.0 |
set_cosmetic_tag | <string> The cosmetic tag to switch to. |
set_cosmetic_tag = SAF_SOV_communism |
Makes the current scope use the specified cosmetic tag, changing name and flag. | 1.3 | |
drop_cosmetic_tag | <bool> Boolean. |
drop_cosmetic_tag = yes |
Makes the current scope drop the current cosmetic tag they are using. | 1.3 | |
set_rule | <rule> Boolean. |
set_rule = { can_create_factions = yes } |
Toggles the special game rules for the current scope. | Possible rules:
|
1.0 |
State
Name | Parameters | Examples | Description | Notes | Version Added |
---|---|---|---|---|---|
add_state_core | <scope> / <variable> The state to add core to. |
add_state_core = 345 |
Adds a core for the current scope to the specified state. | 1.0 | |
remove_state_core | <scope> / <variable> The state to remove core from. |
remove_state_core = 345 |
Removes the core of the current scope from the specified state. | 1.0 | |
set_capital | <scope> / <variable> The state to make capital. |
set_capital = 345 |
Makes the specified state the current scope's capital state. | 1.0 | |
add_state_claim | <scope> / <variable> The state to add a claim to. |
add_state_claim = 345 |
Adds a claim for the current scope on the specified state. | 1.0 | |
remove_state_claim | <scope> / <variable> The state to remove the claim from. |
remove_state_claim = 345 |
Removes a claim of the current scope from the specified state. | 1.0 | |
set_state_owner | <scope> / <variable> The state to change ownership of. |
set_state_owner = 345 |
Makes the current scope the owner of the specified state. | 1.0 | |
set_state_controller | <scope> / <variable> The state to change controller of. |
set_state_controller = 345 |
Makes the current scope the controller of the specified state. | 1.0 | |
transfer_state | <scope> / <variable> The state to change owner and controller of. |
transfer_state = 345 |
Makes the current scope the owner and controller of the specified state. | 1.0 | |
set_province_controller | <id> The province to change controller of. |
set_province_controller = 2999 |
Changes the controller of the specified province to the current scope. | 1.0 |
Powers
Name | Parameters | Examples | Description | Notes | Version Added |
---|---|---|---|---|---|
add_political_power | <int> / <variable> The amount to add. |
add_political_power = 100 add_political_power = var:my_var |
Adds the specified amount of political power to the current scope. | 1.0 | |
set_political_power | <int> / <variable> The amount to add. |
set_political_power = 100 |
Sets the specified amount of political power for the current scope. | 1.0 | |
add_stability | <int> / <variable> The amount to add. |
add_stability = 0.1 |
Adds to the current stability value for the current scope. | Stability values are between 0 and 1. | 1.5 |
set_stability | <int> / <variable> The amount to add. |
set_stability = 0.5 |
Sets the current stability value for the current scope. | Stability values are between 0 and 1. | 1.5 |
add_war_support | <int> / <variable> The amount to add. |
add_war_support = 0.1 |
Adds to the current war support value for the current scope. | War Support values are between 0 and 1. | 1.5 |
set_war_support | <int> / <variable> The amount to set. |
set_war_support = 0.5 |
Sets the current war support value for the current scope. | War Support values are between 0 and 1. | 1.5 |
add_command_power | <int> / <variable> The amount to add. |
add_command_power = 100 |
Adds the specified amount of command power to the current scope. | 1.5 |
Politics
Name | Parameters | Examples | Description | Notes | Version Added |
---|---|---|---|---|---|
kill_ideology_leader | <ideology> Ideology. |
kill_ideology_leader = communism |
Kills the country leader of the designated ideology for the current scope. | 1.9 | |
retire_ideology_leader | <ideology> Ideology. |
retire_ideology_leader = fascism |
Retires and removes the country leader of the ideology party for the current scope. | 1.9 | |
kill_country_leader | <bool> Boolean. |
kill_country_leader = yes |
Kills the country leader for the current scope. | 1.0 | |
retire_country_leader | <bool> Boolean. |
retire_country_leader = yes |
Retires and removes the country leader as head of their party for the current scope. | 1.0 | |
set_country_leader_ideology | <government> The government to set. |
set_country_leader_ideology = socialism |
Changes the country leader's government type for the current scope. | 1.0 | |
add_country_leader_trait | <trait> The trait to add. |
add_country_leader_trait = nationalist_symbol |
Adds the specified trait to the current scope's country leader. | Traits are found in /Hearts of Iron IV/common/country_leader/*.txt. | 1.0 |
remove_country_leader_trait | <trait> The trait to remove. |
remove_country_leader_trait = nationalist_symbol |
Removes the specified trait from the current scope's country leader. | Traits are found in /Hearts of Iron IV/common/country_leader/*.txt. | 1.0 |
hold_election | <scope> The country to hold an election for. |
hold_election = ROOT |
Executes the events in the on_new_term_election on action for the current scope. | 1.0 | |
add_popularity | ideology = <ideology> The party to change.
|
add_popularity = { ideology = fascism popularity = -0.5 } |
Adjusts the popularity for the specified party in the current scope. | Values used are 0 to 1. | 1.0 |
set_politics | ruling_party = <ideology> The party to set.
|
set_politics = { ruling_party = neutrality } |
Sets the political party setup for the current scope. |
Previously included the "parties" parameter, which has been deprecated by the "set_popularities" command. The "parties" parameter no longer works as of version 1.7 |
1.0 (Updated 1.7) |
set_popularities | <ideology> = <int>/<variable> The popularity to set. |
set_popularities = { democratic = 50 neutrality = 15 fascism = 30 communism = 5 } |
Sets the political party popularities for the current scope. |
The popularities must add up to 100, otherwise the command will have no effect. |
1.7 |
set_political_party | ideology = <ideology> The party to change.
|
set_political_party = { ideology = fascism popularity = 50 } |
Sets the popularity for the specified political party in the current scope. | 1.0 | |
set_party_name | ideology = <ideology> The party to change.
|
set_party_name = { ideology = neutrality long_name = GER_neutrality_party_kaiserreich_long name = GER_neutrality_party_kaiserreich } |
Changes the name of the specified political party for the current scope. | 1.0 | |
create_country_leader | name = <string> The name of the leader.
|
create_country_leader = { name = "Mohammed Zahir Shah" desc = "POLITICS_MOHAMMED_ZAHIR_SHAH_DESC" picture = "Portrait_Afghanistan_Mohammed_Zahir_Shah.dds" expire = "1965.1.1" ideology = despotism traits = { } } |
The portrait string can include the full path (i.e. gfx/leaders/my_folder/custom_pic.dds) or just the name of the image (i.e. custom_pic.dds).
With just the name, the image must be in a folder that matches the tag of the current scope, for example /Hearts of Iron IV/gfx/leaders/GER/custom_pic.dds. |
1.0 |
Diplomacy
Name | Parameters | Examples | Description | Notes | Version Added |
---|---|---|---|---|---|
set_major | <bool> Boolean. |
set_major = yes |
Makes the current scope a major country. | 1.0 | |
create_faction | <string> The name of the faction. |
create_faction = MY_FACTION_NAME |
Creates a faction with the specified name for the current scope. The current scope and any subjects automatically join the faction. | 1.0 | |
add_to_faction | <TAG> The TAG of the nation to add to the faction of the current scope. |
FACTION_LEADER_TAG = { add_to_faction = TAG_TO_ADD } |
Adds the TAG_TO_ADD to the faction of the FACTION_LEADER_TAG. | 1.0 | |
leave_faction | <bool> Boolean. |
leave_faction = yes |
Removes the current scope from the faction they are part of. | 1.5 | |
remove_from_faction | <string> The name of the faction. |
remove_from_faction = MY_FACTION_NAME |
Removes the current scope from the specified faction. | 1.0 | |
dismantle_faction | <bool> Boolean. |
dismantle_faction = yes |
Dismantles the faction of the current scope. | 1.0 | |
puppet | <scope> The target country. |
puppet = GER |
Makes the specified country the puppet of the current scope. | 1.0 | |
end_puppet | <scope> The target country. |
end_puppet = GER |
Removes the puppet status between the target and the current scope. | 1.0 | |
release | <scope> The target country. |
release = GER |
Releases the specified subject or core-only country as a free nation. | 1.0 | |
release_puppet | <scope> The target country. |
release_puppet = GER |
Releases the specified subject or core-only country as a puppet for the current scope. | 1.0 | |
give_guarantee | <scope> The target country. |
give_guarantee = GER |
Makes the current scope guarantee the specified country. | 1.0 | |
give_military_access | <scope> The target country. |
give_military_access = GER |
Makes the specified country grant the current scope military access to their country. | 1.0 | |
recall_attache | <scope> The target country with an attache. |
recall_attache = GER |
Recalls the current scope's attache from the specified country. | 1.5 | |
diplomatic_relation | country = <scope> The target country to alter the relationship with ROOT.
|
diplomatic_relation = { country = SOV relation = guarantee active = no } |
Used to define a diplomatic relation between the current scope and target scope country. | Possible relations:
|
1.0 |
add_opinion_modifier | target = <scope> The target country.
|
add_opinion_modifier = { target = GER modifier = faction_traitor } |
Adds the specified opinion modifier for the current scope towards the specified scope. | Opinion modifiers are found in /Hearts of Iron IV/common/opinion_modifiers/*.txt. | 1.0 |
remove_opinion_modifier | target = <scope> The target country.
|
remove_opinion_modifier = { target = GER modifier = faction_traitor } |
Removes the specified opinion modifier for the current scope towards the specified scope. | Opinion modifiers are found in /Hearts of Iron IV/common/opinion_modifiers/*.txt. | 1.0 |
reverse_add_opinion_modifier | target = <scope> The target country.
|
reverse_add_opinion_modifier = { target = GER modifier = faction_traitor } |
Adds the specified opinion modifier for the specified scope towards the current scope. | Opinion modifiers are found in /Hearts of Iron IV/common/opinion_modifiers/*.txt. | 1.0 |
add_relation_modifier | target = <scope> The target country.
|
add_relation_modifier = { target = SWE modifier = HUN_dynastic_ties_license } |
Adds the specified relation modifier for the current scope towards the specified scope. | Relation modifiers are found in /Hearts of Iron IV/common/modifiers/*.txt. | 1.4 |
remove_relation_modifier | target = <scope> The target country.
|
remove_relation_modifier = { target = SWE modifier = HUN_dynastic_ties_license } |
Removes the specified relation modifier for the current scope towards the specified scope. | Relation modifiers are found in /Hearts of Iron IV/common/modifiers/*.txt. | 1.4 |
Subjects
Name | Parameters | Examples | Description | Notes | Version Added |
---|---|---|---|---|---|
add_autonomy_ratio | value = <float> The freedom score to add.
|
add_autonomy_ratio = { value = 0.1 localization = AST_adopt_westminster } |
Adds a freedom score ratio modifier to the current scope. | Used in the subject. | 1.3 |
add_autonomy_score | value = <float> The freedom score to add.
|
add_autonomy_ratio = { value = 10 localization = EXAMPLE } |
Adds an exact freedom score modifier to the current scope. | Used in the subject. | 1.3 |
set_autonomy | target = <scope> / <variable> The subject country.
|
set_autonomy = { target = AST autonomy_state = autonomy_free } |
Sets the autonomy level for the specified country. | The autonomy states are found in /Hearts of Iron IV/common/autonomous_states/*.txt. | 1.3 |
release_autonomy | target = <scope> / <variable> The subject country.
|
release_autonomy = { target = VIN autonomy_state = autonomy_puppet freedom_level = 0.5 } |
Releases the country and sets the autonomy level for the specified country. | The autonomy states are found in /Hearts of Iron IV/common/autonomous_states/*.txt. | 1.3 |
War
Name | Parameters | Examples | Description | Notes | Version Added |
---|---|---|---|---|---|
add_threat | <int> The amount to change by. |
add_threat = 10 |
Adjusts the level of World Tension. | 1.0 | |
add_named_threat | threat = <int> The amount to change by.
|
add_named_threat = { threat = 5 name = GER_rhineland } |
Adjusts the level of World Tension and adds an entry in the World Tension tooltip. | 1.0 | |
annex_country | target = <scope> Which country to annex.
|
annex_country = { target = GER transfer_troops = yes } |
Annex the specified country for the current scope. | 1.0 | |
add_to_war | targeted_alliance = <scope> The country to assist.
|
add_to_war = { targeted_alliance = PREV enemy = HUN hostility_reason = asked_to_join } |
Adds the current scope into the war of their ally against the specified enemy. | 1.0 | |
declare_war_on | target = <scope> / <variable> The country to attack.
|
declare_war_on = { target = GER type = annex_everything } |
Makes the current scope declare war on the specified country with the specified wargoal. | Wargoals are found in /Hearts of Iron IV/common/wargoals/*.txt. | 1.0 |
white_peace | <scope> / <variable> The scope to white peace.
|
white_peace = GER white_peace = { tag = GER message = EXAMPLE } |
Makes the current scope white peace the specified scope. | 1.0 | |
set_truce | target = <scope> The scope to truce with.
|
set_truce = { target = GER days = 90 } |
Makes the current scope truce with the specified scope. | 1.0 | |
create_wargoal | target = <scope> / <variable> The country to target.
|
create_wargoal = { type = puppet_wargoal_focus target = ROOT } |
Grants the current scope a wargoal against the specified country. | 1.0 | |
start_civil_war | ideology = <ideology> The ideology of the breakaway country.
|
start_civil_war = { ruling_party = communism ideology = ROOT size = 0.8 only_own_territory = no capital = 282 states = { 282 533 536 555 529 530 528 } keep_unit_leaders = { 750 751 752 } } |
Starts a civil war for the current scope with the specified parameters. | 1.0 |
Resources
Name | Parameters | Examples | Description | Notes | Version Added |
---|---|---|---|---|---|
add_resource | type = <resource> The resource to add.
|
add_resource = { type = oil amount = 50 state = 88 } |
Adds the specified resource in the specified amount to the specified state. | 1.0 | |
destroy_resource | type = <resource> The resource to add.
|
destroy_resource = { type = oil amount = 50 state = 88 } |
Destroys specified resource in the specified amount to the specified state. | 1.9 | |
create_import | resource = <resource> The resource to import.
|
create_import = { resource = steel amount = 100 exporter = GER } |
Creates an import for the current scope with the specified resource and from the specified exporter. | 1.0 |
Buildings
Name | Parameters | Examples | Description | Notes | Version Added |
---|---|---|---|---|---|
add_offsite_building | type = <building> The building to add.
|
add_offsite_building = { type = arms_factory level = 1 } |
Adds an off-map building for the current scope that produces its effects without being present in a state. | 1.5 | |
modify_building_resources | building = <building> The building to modify.
|
modify_building_resources = { building = synthetic_refinery resource = oil amount = 1 } |
Modifies the resource output of the specified building for the current scope. | 1.5 |
National Focus
Name | Parameters | Examples | Description | Notes | Version Added |
---|---|---|---|---|---|
load_focus_tree | <string> The focus tree to load. Alternatively, as an effect block: tree = <string> keep_completed = yes/no
|
load_focus_tree = china_communist_focus load_focus_tree = { tree = british_focus keep_completed = yes } |
Loads a new focus tree for the current scope, retaining any shared focuses. | 1.5 | |
unlock_national_focus | <focus> The focus to unlock. |
unlock_national_focus = my_focus |
Bypasses the specified focus for the current scope (marks as complete without firing complete_effect of the focus).
|
1.0 | |
complete_national_focus | <focus> The focus to complete. |
complete_national_focus = my_focus |
Completes the specified focus for the current scope. | 1.0 |
Decisions
Name | Parameters | Examples | Description | Notes | Version Added |
---|---|---|---|---|---|
activate_decision | <decision> The decision to activate. |
activate_decision = my_decision |
Activates the specified decision for the current scope, ignoring triggers for the decision. | Decisions are found in /Hearts of Iron IV/common/decisions/*.txt | 1.0 |
activate_targeted_decision | target = <scope> The country to target.
|
activate_targeted_decision = { target = GER decision = my_decision } |
Activates the specified targeted decision for the specified target for the current scope. | Decisions are found in /Hearts of Iron IV/common/decisions/*.txt | 1.5 |
remove_targeted_decision | <decision> The decision to remove. |
remove_targeted_decision = { target = FROM decision = my_decision } |
Removes the specified targeted decision for the current scope. | Decisions are found in /Hearts of Iron IV/common/decisions/*.txt | 1.5 |
unlock_decision_tooltip | <decision> The decision to display. |
unlock_decision_tooltip = my_decision |
Displays a special tooltip for the specified decision in the effect tooltip. | Decisions are found in /Hearts of Iron IV/common/decisions/*.txt | 1.5 |
unlock_decision_category_tooltip | <category> The decision category to display. |
unlock_decision_category_tooltip = my_category |
Displays a special tooltip for the specified decision category in the effect tooltip. | Decision categories are found in /Hearts of Iron IV/common/decisions/catergories/*.txt | 1.5 |
Missions
Name | Parameters | Examples | Description | Notes | Version Added |
---|---|---|---|---|---|
activate_mission | <mission> The mission to activate. |
activate_mission = my_mission |
Activates the specified mission for the current scope, ignoring any triggers for the decision. | Missions are found in /Hearts of Iron IV/common/decisions/*.txt | 1.5 |
activate_mission_tooltip | <mission> The mission to display. |
activate_mission_tooltip = my_mission |
Displays a special tooltip for the specified mission in the effect tooltip. | Missions are found in /Hearts of Iron IV/common/decisions/*.txt | 1.5 |
remove_mission | <mission> The mission to remove. |
remove_mission = my_mission |
Removes the specified mission for the current scope. | Missions are found in /Hearts of Iron IV/common/decisions/*.txt | 1.5 |
Technology
Name | Parameters | Examples | Description | Notes | Version Added |
---|---|---|---|---|---|
add_research_slot | <int> The number of slots to add or remove. |
add_research_slot = 1 |
Adjusts the number of research slots the current scope has. Can remove slots. | 1.0 | |
set_research_slots | <int> The number of slots to set. |
set_research_slots = 4 |
Sets the number of research slots the current scope has. | 1.0 | |
add_tech_bonus | bonus = <float> The bonus to technology given.
|
add_tech_bonus = { bonus = 0.5 uses = 1 category = radar_tech } |
Grants a research bonus to the current scope with the specified parameters. | Research bonus categories are found in Hearts of Iron IV/common/technology_tags/*.txt
|
1.0 |
set_technology | <technology> = <int> The technology to add. popup = no To not show the popup after adding technology |
set_technology = { suicide_craft = 1 } |
Grants the specified technology to the current scope. | A value of 1 sets the technology. A value of 0 removes the technology, but if it is a researchable technology, the duration to research isn't reset, meaning it can be researched in 1 day. | 1.0 |
add_to_tech_sharing_group | <string> The group to add the current scope to. |
add_to_tech_sharing_group = us_research |
Adds the current scope to the specified technology sharing group. | 1.3 | |
remove_from_tech_sharing_group | <string> The group to remove the current scope from. |
remove_from_tech_sharing_group = us_research |
Removes the current scope from the specified technology sharing group. | 1.3 | |
modify_tech_sharing_bonus | id = <string> The group to modify.
|
modify_tech_sharing_bonus = { id = us_research bonus = 0.5 } |
Modifies the specified technology sharing group. | 1.3 |
Ideas
Name | Parameters | Examples | Description | Notes | Version Added |
---|---|---|---|---|---|
add_ideas | <idea> The idea to add. |
add_ideas = my_idea add_ideas = { my_idea_1 my_idea_2 } |
Adds the specified ideas to the current scope. | Can be used as a scope to add multiple at once. | 1.0 |
add_timed_idea | idea = <idea> The idea to add.
|
add_timed_idea = { idea = my_idea days = 180 } |
Adds the specified ideas to the current scope for the specified number of days. | 1.0 | |
modify_timed_idea | idea = <idea> The idea to modify.
|
modify_timed_idea = { idea = my_idea days = 60 } |
Extends the duration of the timed idea by the specified amount. | 1.0 | |
swap_ideas | add_idea = <idea> The idea to add.
|
swap_ideas = { remove_idea = my_idea_1 add_idea = my_idea_2 } |
Switches two ideas with a tooltip displaying any modifier differences between them. | 1.3 | |
remove_ideas | <idea> The idea to remove. |
remove_ideas = my_idea remove_ideas = { my_idea_1 my_idea_2 } |
Removes the specified idea from the current scope. | Can be used as a scope to remove multiple at once. | 1.0 |
remove_ideas_with_trait | <trait> The trait to target. |
remove_ideas_with_trait = motorized_equipment_manufacturer |
Removes all ideas for the current scope that use the specified trait. | 1.0 | |
show_ideas_tooltip | <idea> The idea to display. |
show_ideas_tooltip = my_idea |
Displays the specified idea in the tooltip for the current effect scope. Does not add the idea. | 1.0 |
Unit
Name | Parameters | Examples | Description | Notes | Version Added |
---|---|---|---|---|---|
load_oob | <oob> The OOB to load. |
load_oob = "GER_default" |
Loads the specified OOB for the current scope, applying the effects within. | 1.0 | |
division_template | name The name of the division. regiments = { <unit> = { x = 0 y = 0 } } support = { <unit> = { x = 0 y = 0 } } The composition of the division. |
division_template = { name = "Test" regiments = { infantry = { x = 0 y = 0 } infantry = { x = 0 y = 1 } infantry = { x = 0 y = 2 } infantry = { x = 0 y = 3 } } support = { military_police = { x = 0 y = 0 } } } |
Creates and adds the specified division template to the current scope. | The x and y attributes represent the rows and columns in the division designer. | 1.0 |
set_division_template_lock | division_template = <string> The name of the division template.
|
set_division_template_lock = { division_template = "Infantry Division" is_locked = yes } |
Toggles the locked status on a division template for the current scope, which prevents editing or deletion. | 1.5 | |
delete_unit_template_and_units | division_template = <string> The name of the division template. |
delete_unit_template_and_units = { division_template = "Infantry Division" disband = yes #will refund equipment and manpower } |
Deletes the specified division template and all units using it for the current scope. | 1.5 | |
delete_unit | state = <number id> The id number of the state. |
ENG = { delete_unit = { state = 787 disband = yes #will refund equipment and manpower }} |
Deletes all units within the specified state using the country scope. | 1.5 |
Equipment
Name | Parameters | Examples | Description | Notes | Version Added |
---|---|---|---|---|---|
set_equipment_fraction | <float> / <variable> The fraction of equipment to remove. |
set_equipment_fraction = 0.5 |
Reduces the overall equipment stockpile by the specified fraction. | This should not be used in civil wars to simulate stockpile splitting. start_civil_war now automatically divides stockpiles according to the respective size.
|
1.0 |
add_equipment_to_stockpile | type = <equipment> The equipment to add. Can be archetype.
|
add_equipment_to_stockpile = { type = infantry_equipment amount = 100 producer = GER } |
Adds the specified equipment to the current scope. | Note that removal will only remove equipment with the same producer defined in the effect. | 1.0 |
send_equipment | type = <equipment> The equipment to add. Can be archetype.
|
send_equipment = { equipment = infantry_equipment amount = 100 target = GER } |
Sends the specified amount of equipment to the specified target, removing said equipment from the current scope. | 1.0 | |
create_production_license | target = <scope> Which country receives the license.
|
create_production_license = { target = HUN equipment = { type = fighter_equipment_1 } cost_factor = 0 } |
Grants the specified country a licensed to produce the specified equipment from the current scope. | 1.4 | |
create_equipment_variant | name = <string> The name of the variant
|
create_equipment_variant = { name = "Montecuccoli Class" type = light_cruiser_1 upgrades = { ship_reliability_upgrade = 3 ship_engine_upgrade = 3 ship_gun_upgrade = 3 ship_anti_air_upgrade = 3 } } |
Creates the specified equipment variant for the current scope. | 1.0 | |
add_equipment_production | amount = <int> The amount to produce. Optional.
|
add_equipment_production = { equipment = { type = light_cruiser_2 } requested_factories = 1 progress = 0.95 amount = 1 } |
Starts a production line for the specified equipment for the current scope. | 1.0 |
Army
Name | Parameters | Examples | Description | Notes | Version Added |
---|---|---|---|---|---|
add_manpower | <int> / <variable> The amount to add. |
add_manpower = 100000 add_manpower = var:my_var |
Adds the specified amount of manpower to the current scope. | 1.0 | |
army_experience | <float> / <variable> The amount to add. |
army_experience = 10 |
Adds the specified amount of army experience to the current scope. | 1.0 | |
create_corps_commander | name = <string> The name of the leader.
|
create_corps_commander = { name = "Jean de Lattre de Tassigny" picture = "Portrait_France_Jean_de_Lattre_de_Tassigny.dds" traits = { trickster brilliant_strategist } skill = 4 attack_skill = 4 defense_skill = 2 planning_skill = 4 logistics_skill = 3 } |
Creates a commander for the current scope with the specified attributes. | Traits are found in /Hearts of Iron IV/common/unit_leader/*.txt. | 1.0 |
create_field_marshal | name = <string> The name of the leader.
|
create_field_marshal = { name = "Maurice Gamelin" picture = "Portrait_France_Maurice_Gamelin.dds" traits = { defensive_doctrine } skill = 2 attack_skill = 1 defense_skill = 3 planning_skill = 2 logistics_skill = 1 } |
Creates a field marshal for the current scope with the specified attributes. | Traits are found in /Hearts of Iron IV/common/unit_leader/*.txt. | 1.0 |
Name | Parameters | Examples | Description | Notes | Version Added |
---|---|---|---|---|---|
navy_experience | <float> / <variable> The amount to add. |
navy_experience = 10 |
Adds the specified amount of navy experience to the current scope. | 1.0 | |
destroy_ships | type = <ship> The type of ship to destroy.
|
destroy_ships = { type = destroyer count = all } |
Destroys the specified type and amount of ships controlled by the current scope. | 1.5 | |
transfer_navy | target = <scope> The target country. |
transfer_navy = { target = GER } |
Transfers the current scope navy to the specified country. | 1.5 | |
transfer_ship | type = <ship> The type of ship to transfer.<br target = <scope>
|
transfer_ship = { prefer_name = "HMS Achilles" type = light_cruiser target = NZL } |
Transfers the specified type of ship from the current scope to the specified country. | 1.4 | |
create_navy_leader | name = <string> The name of the leader.
|
create_navy_leader = { name = "François Darlan" picture = "Portrait_France_Francois_Darlan.dds" traits = { superior_tactician } skill = 3 } |
Creates a naval leader for the current scope with the specified attributes. | Traits are found in /Hearts of Iron IV/common/unit_leader/*.txt. | 1.0 |
Air
Name | Parameters | Examples | Description | Notes | Version Added |
---|---|---|---|---|---|
air_experience | <float> / <variable> The amount to add. |
air_experience = 10 |
Adds the specified amount of air experience to the current scope. | 1.0 | |
add_ace | name = <string> The name of the ace.
|
add_ace = { name = "Amelia" surname = "Earhart" callsign = "Revenant" type = fighter_genius is_female = yes } |
Adds an ace for the current scope. | Ace types found in /Hearts of Iron IV/common/aces/*.txt. | 1.0 |
AI
Name | Parameters | Examples | Description | Notes | Version Added |
---|---|---|---|---|---|
add_ai_strategy | type = <type> The type of strategy.
|
add_ai_strategy = { type = alliance id = GER value = 200 } |
Sets an AI strategy for the current scope. | See AI Modding for more details. | 1.0 |
State Scope
The effects here must be used within a state scope.
General
Name | Parameters | Examples | Description | Notes | Version Added |
---|---|---|---|---|---|
state_event | id = <event> The event to fire.
|
state_event = { id = my_event.1 days = 10 random = 50 trigger_for = controller } |
Fires the specified event for the current state. | Where triggers do not need to be repeatedly checked random can be a performance light alternative to mean_time_to_happen for scheduling events.
Using days = <event> / <variable> or hours may still be bugged and will not fire the event. |
1.0 |
set_state_flag | <flag> An unique string to identify the state flag with. |
set_state_flag = my_flag
|
Defines a state flag. | 1.0 | |
clr_state_flag | <flag> The unique string of a state flag to clear. |
clr_state_flag = my_flag
|
Clears a defined state flag. | 1.0 | |
modify_state_flag | flag = <flag> The state flag to modify.
|
modify_state_flag = { flag = my_flag value = 1 } |
Modifies a state flag. | Use variables instead. | 1.3 |
set_state_name | <string> Defines the new name. |
set_state_name = "Funland" |
Changes the current state's name to the specified name. | 1.3 | |
reset_state_name | <bool> Boolean. |
reset_state_name = yes |
Resets any changes to the current state's name. | 1.3 | |
add_claim_by | <scope> / <variable> The country to add the claim for. |
add_claim_by = SOV |
Adds a claim for the specified country on the current scope. | 1.0 | |
remove_claim_by | <scope> / <variable> The country to remove the claim for. |
remove_claim_by = SOV |
Removes a claim by the specified country on the current scope. | 1.0 | |
add_core_of | <scope> / <variable> The country to add the core for. |
add_core_of = SOV |
Adds a core for the specified country on the current scope. | 1.0 | |
remove_core_of | <scope> / <variable> The country to remove the core for. |
remove_core_of = SOV |
Removes a core for the specified country on the current scope. | 1.0 | |
set_demilitarized_zone | <bool> Boolean. |
set_demilitarized_zone = yes |
Makes the current scope a demilitarized zone. | 1.0 | |
set_state_category | <category> The category to change to. |
set_state_category = rural |
Changes the current state category to the specified category. | Categories are found in /Hearts of Iron IV/common/state_category/*.txt | 1.3 |
add_state_modifier | Modifier scope
|
add_state_modifier = { modifier = { local_resources = 2.0 } } |
Adds a modifier to the current state. | 1.3 | |
add_manpower | <int> / <variable> The amount to add. |
add_manpower = 10000 |
Adds the specified amount of manpower to the current state. | 1.0 | |
add_resource | type = <resource> The resource to add.
|
add_resource = { type = oil amount = 100 } |
Adds the specified resource in the specified amount to the current state. | 1.0 | |
set_border_war | <bool> Boolean. |
set_border_war = yes |
Enables Border War status for the current state. | 1.0 | |
create_unit | division = <division string> The division string.
|
create_unit = { division = "name = \"Infantry Division\" division_template = \"Infantry Division\" start_experience_factor = 0.5 start_equipment_factor = 0.5" owner = GER } |
Adds the specified division to the current state. | The division string must be formatted as it is seen in the examples. | 1.3 |
add_dynamic_modifier | modifier = <modifier_string> The name of the Modifier. |
add_dynamic_modifier = { modifier = sabotaged_ressources } | Adds a dynamic modifier to the current scope | Examples can be found in /Hearts of Iron IV/common/dynamic_modifiers/*.txt | 1.9 |
Buildings
Name | Parameters | Examples | Description | Notes | Version Added |
---|---|---|---|---|---|
add_building_construction | type = <string> The building to add.
|
add_building_construction = { type = arms_factory level = 5 instant_build = yes } add_building_construction = { type = bunker level = 10 instant_build = yes province = { all_provinces = yes limit_to_border = yes } } add_building_construction = { type = bunker level = 1 instant_build = yes province = 2999 } |
Starts construction in the current state for the specified building. | You can limit the construction to victory points using : limit_to_victory_point > 5 |
1.0 |
set_building_level | type = <string> The building to add.
|
set_building_level = { type = infrastructure level = 10 instant_build = yes } set_building_level = { type = bunker level = 3 province = { all_provinces = yes limit_to_border = yes level < 3 } } |
Sets the specified building to the current state (or provinces within the state). | The province scope is used for provincal level buildings. You can limit the construction to victory points using : limit_to_victory_point > 5 |
1.4 |
damage_building | type = <building> The building to damage.
|
damage_building = { type = infrastructure damage = 1 } |
Damages the specified building in the current state. | The health of buildings is determined by the value attribute in a building's definition. This is multiplied by their level to get their total health. | 1.3 |
remove_building | type = <building> The building to remove.
|
remove_building = { type = arms_factory level = 5 } |
Removes the specified building in the current state. For shared buildings level determines the amount, whereas for the others it is the actual level. | 1.0 | |
add_extra_state_shared_building_slots | <int> / <variable> The amount of slots to add or remove. |
add_extra_state_shared_building_slots = 2 |
Adjusts the number of shared building slots for the current state. | 1.0 |
Unit Leader Scope
The effects here must be used within a unit leader scope.
General
Name | Parameters | Examples | Description | Notes | Version Added |
---|---|---|---|---|---|
unit_leader_event | id = <event> The event to fire.
|
unit_leader_event = { id = my_event.1 days = 10 random = 50 } |
Fires the specified event for the owner of the current unit leader. | Uses a special interface displaying the current unit leader portrait.
Where triggers do not need to be repeatedly checked |
1.5 |
set_unit_leader_flag | <flag> An unique string to identify the unit leader flag with. |
set_unit_leader_flag = my_flag
|
Defines a unit leader flag. | 1.5 | |
clr_unit_leader_flag | <flag> The unique string of a unit leader flag to clear. |
clr_unit_leader_flag = my_flag
|
Clears a defined unit leader flag. | 1.5 | |
modify_unit_leader_flag | flag = <flag> The unit leader flag to modify.
|
modify_unit_leader_flag = { flag = my_flag value = 1 } |
Modifies a unit leader flag. | 1.5 | |
promote_leader | <bool> Boolean |
promote_leader = yes |
Promotes the current unit leader to Field Marshal (if Commander. | 1.5 | |
demote_leader | <bool> Boolean |
demote_leader = yes |
Demotes the current unit leader to Commander (if Field Marshal). | 1.5 | |
retire | <bool> Boolean> |
retire = yes |
Retires the current unit leader (removing them). | 1.5 | |
remove_unit_leader | <id> The id of the unit leader. |
remove_unit_leader = 70 |
Removes the specified unit leader by their id. | 1.0 | |
set_nationality | <scope> / <variable> The target country. |
set_nationality = GER |
Switches the current unit leader to the specified country, giving them the leader. | 1.5 | |
add_unit_leader_trait | <trait> The trait to add. |
add_unit_leader_trait = old_guard |
Adds the specified trait to the current unit leader. | Traits are found in /Hearts of Iron IV/common/unit_leader/*.txt. | 1.0 |
remove_unit_leader_trait | <trait> The trait to remove. |
remove_unit_leader_trait = old_guard |
Removes the specified trait from the current unit leader. | Traits are found in /Hearts of Iron IV/common/unit_leader/*.txt. | 1.0 |
add_timed_unit_leader_trait | <trait> The trait to add.
|
add_timed_unit_leader_trait = { trait = wounded days = 90 } |
Adds the specified trait to the current unit leader for the specified duration. | Traits are found in /Hearts of Iron IV/common/unit_leader/*.txt. | 1.5 |
replace_unit_leader_trait | Traits are found in /Hearts of Iron IV/common/unit_leader/*.txt. | 1.5 |
Combat
Name | Parameters | Examples | Description | Notes | Version Added |
---|---|---|---|---|---|
supply_units | <int> / <variable> The amount of hours of supply. |
supply_units = 24 |
Adds the specified amount of hours of supply to troops led by the current unit leader. | 1.5 | |
add_max_trait | <int> The amount to add. |
add_max_trait = 1 |
Adds the specified amount of assignable trait slots to the current unit leader. | 1.5 | |
add_skill_level | <int> The skill to add. |
add_skill_level = 1 |
Adds skill to the current unit leader. | 1.5 | |
add_logistics | <int> The skill to add. |
add_logistics = 1 |
Adds logistics skill to the current unit leader. | 1.5 | |
add_planning | <int> The skill to add. |
add_planning = 1 |
Adds planning skill to the current unit leader. | 1.5 | |
add_defense | <int> The skill to add. |
add_defense = 1 |
Adds defense skill to the current unit leader. | 1.5 | |
add_attack | <int> The skill to add. |
add_attack = 1 |
Adds attack skill to the current unit leader. | 1.5 | |
add_temporary_buff_to_units | combat_offense = <float> The bonus to grant. Optional.
|
add_temporary_buff_to_units = { combat_offense = 0.25 combat_breakthrough = 0.25 org_damage_multiplier = -1.0 str_damage_multiplier = 0.25 war_support_reduction_on_damage = 0.2 cannot_retreat_while_attacking = 1.0 days = 7 tooltip = ABILITY_FORCE_ATTACK_TOOLTIP } |
Adds the specified combat buff to the current unit leader. | 1.5 | |
boost_planning | <float> The amount to add. |
boost_planning = 1 |
Improves the planning of units controlled by the current unit leader. | 1.5 |
Flow Control
These scopes are used within effect scopes to control the execution of effects.
If, Else If and Else
These scopes allow effects to be conditionalized, so they only occur when the requisite triggers are met.
For example, if you only have an effect to occur for Germany, you'd do the following:
if = { limit = { original_tag = GER } add_stability = 0.1 }
If you then wanted England to have a similar effect, and everyone else to have something else, you do the following:
if = { limit = { original_tag = GER } add_stability = 0.1 } else_if = { limit = { original_tag = ENG } add_stability = 0.25 } else = { add_stability = 0.05 }
As you can see, this allows for flexibility in how effects occur and cuts down on duplication.
Hidden Effect
This scope hides the presence of the effects within it in the player's tooltip. This is used to execute effects without the player seeing them. For example, you may want to manipulate some variables in an event. Showing them to the player may confuse them, so it is best to hide the effects within an hidden effect scope, like so:
hidden_effect = { set_variable = { my_var = 100 } }
Random List
This scope allows the creation of a random selection of effects. For example, if you wanted an effect to randomly given the player one out of four bonuses, you'd do the following:
random_list = { 25 = { add_stability = 0.5 } 25 = { add_manpower = 10000 } 25 = { add_war_support = 0.5 } 25 = { army_experience = 100 } }
Note that if you want to create a repeatable decision including a random list, by default the same decision will pick the same random result every time it is triggered in a game. You can reverse this behaviour by including the following line in the decision block:
fixed_random_seed = no
It is also possible to use modifiers to affect the weight of each possible random effect.
random_list = { 25 = { add_stability = 0.5 modifier = { factor = 1.3 has_country_flag = inward_perfect_flag } } 25 = { add_manpower = 10000 } 25 = { add_war_support = 0.5 } 25 = { army_experience = 100 } }
The above code would multiply the 25 by the factor thereby making it more or less likely to occur if the trigger condition is fulfilled.
Effect Tooltip
This scope will display the tooltip information of the effects within, without actually executing the effects. This is useful when you want to show what the effect may look like to the player. Here is an example:
effect_tooltip = { every_owned_state = { add_manpower = 10000 } }
文件 | 效果 • 条件 • 定义 • 修正 • 修正列表 • 作用域 • 本地化 • on action • 数据结构 (标记, 临时标记, 国家别名, 变量, 数组) |
脚本 | 成就修改 • AI修改 • AI focuses • 自治领修改 • 权力平衡修改 • 剧本/标签 (游戏规则)• 建筑修改 • 人物修改 • 修饰性TAG修改 • 国家创建 • 军队修改 • 决议制作 • 装备修改 • 事件修改 • Idea修改 • 意识形态修改 • 军工商修改 • 国策制作 • 资源修改 • Scripted GUI • 科技制作 • 单位修改 |
地图 | 地图 • 省份 • 补给区域 • 战略区域 |
图形图像 | 界面 • 图形资产 • 实体模型 • 后期特效 • 离子效果 • 字体 |
装饰性 | 肖像 • 命名列表 • 音乐 • 音效 |
其他 | 控制台指令 • 故障排除 • 模组结构 • 成就代码分析 • Mod相关 • Nudger修改 |