控制台指令

本页面讲述的内容长期有效
Musk讨论 | 贡献2024年12月3日 (二) 16:16的版本 (暂存)

本页列出了可以输入控制台窗口的代码,控制台窗口是一个特殊的调试窗口,可以在非铁人游戏模式下使用键盘上的^键, ° 键或左上角的~键来访问(按键根据键盘布局变化而变化)。按键或键可以在控制台窗口查阅执行过的命令。许多代码可以通过重复打出同一条命令来切换启动和关闭状态,但有的代码则需要重新加载游戏存档或退出游戏重新启动来切换它们的状态。请注意,有些代码在没有启用DLC时是没有作用的。mod可能会在游戏中引入新的命令、决议和国家tag。

铁人模式下不能使用控制台代码。

指令列表

使用 Shift+2, §, ~, \, `, ", ^ or ALT+2+1, or Shift+3 启用控制台(具体按键取决于键盘布局)

Internal IDs

参见:Countries

Console commands use internal IDs, which may be obtained in a variety of different ways.

An easy way to tell internal IDs is debug mode. debug as a console command will turn on debug mode which can provide information about certain database entries, such as focuses, national spirits (and other ideas such as laws or designers), or technologies when hovering over them, as well as obtaining information when hovering over a province of IDs of the state and the province, as well as the 3-letter country tag of the country it belongs to. Note that while modding, the console command does not do everything that the launch option does and cannot serve as a substitute.

If that is impossible, using localisation is an alternative. To do that, navigate to the folder where the game is contained, then to the /Hearts of Iron IV/localisation/english/ folder. Each file in there contains localisation keys with values that actually appear in-game assigned to them. Using a non-default text editor can also allow using the 'Search in files' function (Such as in Notepad++, Sublime Text, or Visual Studio Code) in order to search through every single localisation file at the same time to find a specified value.

Disambiguation

In this article, there are 3 types of brackets used within commands:

  • Regular brackets as in instantconstruction(ic) are used to show aliases, alternate names for the console commands. In this case, using ic or instantconstruction has the same effect in-game.
  • Square brackets as in fow [Province ID] signify an optional argument. In this case, both fow and fow 1234 will work, but may have different effects.
  • Square brackets in combination with angle brackets as in event [<event ID>] signify a mandatory argument. In this case, event generic.1 will work, but event will not.

Useful commands

Command Effect Example/Comment
help [command name] 打印出所有控制台命令或特定命令的描述
tag [<Country tag>] 切换玩家正在控制的国家
event [<event id>] [Target country tag] 执行事件 事件列表 展示了大部分游戏事件的ID. 如果事件有 trigger = { ... } 的提示, 则说明了这个事件触发所需要的条件有哪些已满足,有哪些没满足
add_ideas [<idea name>] 添加国家精神
remove_ideas [<idea name>] 移除国家精神
gain_xp [<amount>] 给选中的特工/陆军将领/海军将领添加经验 gain_xp 100000可直接达到等级上限9级
gain_xp [<trait>] 添加指定性质给所选特工/陆军将领/海军将领 例子: gain_xp seawolf 为所选将领添加海狼性质

注意 为了让此代码作用于新招募的通用海军将领:
1. 用文本编辑器打开 'Documents\Paradox Interactive\Hearts of Iron IV\settings.txt' 并将 "save_as_binary=yes" 改为 "save_as_binary=no".
2. 启动游戏, 载入游戏存档并将其保存为一个新的存档,然后退出游戏
3. 打开'Documents\Paradox Interactive\Hearts of iron IV\Save Games' 文件夹, 打开新创建的游戏存档文件,查询 (CTRL+F) 你创建的通用海军将领的名字
4. 找到 max_traits=0.000 在后面添加下述代码模块

			in_progress={
				seawolf=0.000
				superior_tactician=0.000
				spotter=0.000
				fly_swatter=0.000
				ironside=0.000
				air_controller=0.000
			}

5. 确保以ANSI编码格式保存文件
6. 启动游戏,载入存档,即可使用gain_xp指令
(在settings.txt中可以选用是否启用二值化)

cp [<amount>] 添加指挥点数 cp 100 (上限为100)
st [<amount>] 添加稳定度 st 100 (上限为100)
add_war_support(ws) [<amount>] 添加战争支持度 ws 100 (上限为 100)
allowtraits 允许为所有陆军将领和海军将领自由添加一般性质
add_equipment(ae) [<equipment amount>] [<equipment name>] 添加指定数量装备 装备使用基本格式为“ae 1000 infantry_equipment_1”。你只能添加已研究过的装备。不支持海军装备。(除了运输船:‘ae 1000 convoy_1’)要添加船只,可以考虑使用即时建造指令 instantconstruction(ic)(但ic也会影响AI)

要添加修改过的设备,你必须用它的名字。例如:你为'Matilda LP'-tank装配了更好的装甲模块和主炮模块,并把它命名为'Matilda LP Mk.IV'。现在你想要获得1000数量的该装备就要使用代码“add_equipment 1000 Matilda LP Mk. IV”。

add_latest_equipment(ale) [<equipment amount>] 添加指定数量最新装备 要添加特定类型的最新设备,必须注明其名称。例如:你创造了一款拥有更好装甲和主炮的'Matilda

LP'-tank的变种装备并将其命名为'Matilda LP Mk.IV'

那么你就要使用'add_latest_equipment 1000 Matilda LP Mk.IV'或者'ale 1000 Matilda LP Mk.IV'指令来获得指定数量的'Matilda LP Mk.IV'装备

addfunds [number] 给所有军工机构添加指定资金 默认为700

addfunds 1000给所有军工机构添加1000资金

addTaskCapacity [number] 给所有军工机构添加指定任务容量 默认为1

要为特定的军工机构添加任务容量,你需要从 \Hearts of Iron IV\common\military_industrial_organization\organizations\<your country's tag>.txt 中找到你所需要的军工机构的id

然后使用指令 addTaskCapacity [<MIO id>] [number]

addSize [number] 为所有军工机构添加指定特质点数 默认为1

要为特定的军工机构添加性质点数,你需要从in\Hearts of Iron IV\common\military_industrial_organization\organizations\<your country's tag>.txt 中找到你所需要的军工机构的id

然后使用指令 addSize [<MIO id>] [number]

add_cic_bank [number] 为国际市场添加指定数量的经济产能盈余 默认为1
whitepeace(wp) [<country tags>] 与制定国家白和
teleport(tp) 部队快速移动 可以传送单位到指定地方(选择想要传送的单位,右键点击目标省份)
allowdiplo(adiplo,nocb) 允许无视规则使用所有外交行动(可以无理由宣战) 这是不需要战争目标就可以宣战的最有效的方法。如果你想要立刻完成正当化战争目标可以使用instant_wargoal
debug_crash(crash) 使游戏崩溃
debug_nuking 允许无视条件对每个省份进行核打击
instantconstruction (ic) 及时建造 对AI有效,舰船也会立刻建造完毕,选择建筑点击目标省份即可建造完成,铁路和正在建造中的建筑需要隔一天完成
research [<slot id> or "all"] 立刻完成指定科研槽正在研究的科技或所有科技 research all 将立刻研究完成所有科技(对学说同样有效)
research_on_icon_click (roic) 点击科研树图标即可完成对应科技 允许在没有完成前置科技的情况下研究科技,也可以研究两个互斥的科技
annex [<Target Country Tag> or "all"] 吞并指定国家或全世界 annex USA or annex d01 or annex all
puppet [<Puppeteer Country Tag>] [<Puppet Target Country Tag>] 傀儡指定国家 puppet GER CZE 德意志帝国(GER)将傀儡捷克斯洛伐克(CZE)
manpower [amount] 添加指定数量人力 默认1000w
add_opinion [<Country tag>] 为指定国家添加评价(好感) add_opinion ENG为联合王国增加和获得100点意见

成功使用指令,会在控制台窗口显示"<country> have 100 more opinion about you" 在外交界面会显示 "cheat_opinion_modified_good"(良好评价作弊修正)

observe(spectator) Switches to play no country at all, and no longer shows messages or pauses the game. However, it also interferes with AI performance and is not a good indication of what the AI will do if observe mode is not used.
tdebug Toggles Debug info Helpful for finding nation tags and ID's
occupationpaint(op) Toggles occupation painting. If used with country tag occupies all of their owned, not controlled, land, op JAP
setowner [<country tag>] Sets state owner Select the state you would like to set owner as. Select a state by clicking it. You need to click the state as the state id no longer works.
setcontroller [<country tag>] [province id] Sets province controller
xp [<XP amount>] Gives Army, navy and air experience to player Can be used once per day
pp(fuhrer_mana,political_power) [PP amount] Gives(or removes) political power to player Defaults to 1000 if the amount is unset.
fuel [<amount>] Adds Fuel fuel 100000 (capped at your deposits capacity, adding much more will result in decreasing fuel)
civilwar [<ideology>] [<target country tag>] Spawns a civil war civilwar fascism ENG :

Other Valid ideologies "communism" "democratic" "neutrality"

add_party_popularity <ideology group> <value> Adds party popularity ideology group has shortcuts d f n c for vanilla HOI groups.
set_ruling_party <ideology group> Sets ruling party ideology group has shortcuts d f n c for vanilla HOI groups.
Focus.AutoComplete (fa) Allows national focuses to be instantly finished Affects AI
Focus.NoChecks Ignores focus requirements Affects AI
Focus.IgnorePrerequisites Ignores focus prerequisites Allows you to start a focus in the middle of the tree. Affects AI
Decision.FastRemove Shortens decisions to 1 day
Decision.NoChecks Ignores decision requirements Also disables cost, affects AI
instant_prepare Instantly prepares naval invasions Only works in debug mode.
instanttraining (it) Instantly trains divisions and ships Affects AI
nuke [number] Adds nukes Add 100 or 1000
ai_accept AI will accept all diplomatic offers
add_core <state_id> Adds cores
Agency.Instant Makes everything regarding agencies instant. Equivalent to a combination of Operation.Instant, IntelNetwork.Instant, Agency.InstantSlotUnlock, and Agency.Autocomplete
Agency.InstantSlotUnlock Removes wait time between agent recruits
Agency.Autocomplete Instantly completes agency upgrades
prevent_operative_detection Your operatives/spies won't be detected anymore
force_operative_detection Your operatives/spies will be detected
Operation.instant Instantly finishes all operations Might affect ai
agency.keepexcessoperatives
deleteallunits(delall) [country] Delete all armies and fleets of the specified countries. deleteallunits SPR
deleteallunitsbut(delallbut) [country] Delete all countries' armies and fleets, with the exception of one country. delallbut SPR
add_autonomy [<Target Country Tag>] [num] Changes a country's autonomy level add_autonomy PHI -200
resistance Increases resistance in the selected province by set amount ex: (selects one of the provinces in Berlin) resistance 100
compliance Increases compliance in the selected province in game by set amount ex: (selects one of the provinces in Danzig) compliance 100
add_intel [<Country tag 1>] [Country Tag 2] [civilian,army,navy,airforce]=[number]

add_intel [<Target Country tag>] [civilian,army,navy,airforce]=[number]

Sets the inputted intel the first tag has against the second tag. The set intel amount is a static value (will be permanent for the rest of the game). ex (sets intel player has against France to max): add_intel FRA

ex (sets army intel Germany has against USA to 20%): add_intel GER USA army=20

ex (sets airforce and civilian intel Player has against Japan to 90% and 76% respectively): add_intel JAP airforce=90 civilian=76

add_mines Maximises player owned naval mines in the selected regions
acclimization [<climate type>] [<number>] Sets the selected division's acclimization to the specified climate type and its percentage (reduces penalties from cold/hot weather or temperature debuffs) ex: acclimization cold_climate 75

ex: acclimization hot_climate 20 Note that it resets the opposite climate type to 0%

debug_smooth Toggle framesmoothing Can increase game speed significantly, depending on system typically between 10 and 35 percent

Modding-useful commands

Several other commands previously mentioned, such as event, are useful in modding too.

Command Effect Example/Comment
guibounds(gui) Toggles the GUI bounds debug, allowing to test for different window sizes easier. Also grants the name of the sprite and the interface element the player is hovering on, allowing to find the location of the image by searching every /Hearts of Iron IV/interface/*.gfx file at the same time.
set_var [<variable>] [<value>] Changes the value of a variable to the specified value.
get_var [<variable>] Shows the value of a variable in the console
list_vars Lists the variables set in the selected scope and their values.
set_country_flag [<Country Flag>] Adds a country flag to currently played nation. Does not work if you put another nations tag in the command such as "set_country_flag flag AUS", even if it says in console that it does.
set_global_flag [<Global Flag>] Adds a global flag.
list_flags Lists currently active flags in the console windows. Context senstive if nothing (global_flag), country (country_flag) or state (state_flag) is selected when entering this command.
trigger [<scripted_trigger_name>] Checks if a scripted trigger is true or not.
effect (eval_effect) (e) [<scripted_effect_name>] Executes a scripted effect, within the currently selected scope. Example: e POL_remove_danzig_effect on a state will execute that effect on the state.
ai [country tag...] Toggles the AI on or off Without parameters toggles the AI for all countries. With parameters, toggles exceptions for those countries from the general rule. Can be used to confirm if a crash is AI-related.
aiview Enable AI debug info
human_ai Makes the AI control the country currently led by the player while the player also remains in control. AI will also create logs within /Hearts of Iron IV/logs/scripted_ai.log in the user directory.
set_cosmetic_tag [<country tag>] [<cosmetic tag>] changes the name and flag of the country set_cosmetic_tag USA SOV
reload [<type>] Reloads files of a given type. Also accepts individual files within the /Hearts of Iron IV/interface/ folder. Equivalent to the effect done automatically when saving over a file with debug mode turned on via launch options.
  • reload loc (reloads localisation files)
  • reload focus (reloads focuses)
  • reload landcombat.gui (reloads land combat interface)
reloadoob [<Target Country Tag>] Reloads orders of battle.
reloadinterface Reloads the entire interface
reloadtechnologies Reloads the technology database
updateequipments Updates the equipment database
updatesubunits Updates the subunit database
update_loc [localization tag] Updates the localization tag file
error Opens the error log file. If there are special characters in the folder path, this won't work. Equivalent to pressing on the error dog if enabling debug mode in launch options.
imgui Controls ImGui UIs. Use imgui show to list the available subcommands. These UIs cover a wide variety of useful modding tools, such as script profiling, AI debugging, and listing characters.
goto_province [province id] Moves the camera position to the specified province.
goto_state [state id] Moves the camera position to the specified state.

Other in-game commands

Command Effect Example/Comment
ShowTechBonus Unknown what it does, however with the name we can make a guess it has to do something with tech bonuses. Filed as developer only.
normals Unknown what it does. Filed as developer only.
rendertype Reports what render backend is used
tweakergui Spawns a tweaker GUI
time What time is it?
reloadfx [Arguments: map/mapname/postfx or *.fx filename] Reloads the shader
particle_editor Spawns a particle editor
analyzetheatres(anth) Analyze theatres for errors.
massconquer(massc) Mass conquer tool. Requires direct province names. Filed under developer only.
aircombat(airc) [<scenario name>] [<result name>] [<province id>] [<state id with airbase>] [<state id with airbase>] [<equipment type>] [<equipment type>] [<equipment creator country>] [<equipment creator country>] Spawns an air combat in desired location.
fronts Toggle visibility of the foreign fronts
ai_front_dump (aifrontdump) Dump AI front data to log file, needs to have a unit selected
traderoutes Toggle visibility of trade routes
debug_tactics Toggle visibility of debug tooltip for tactics
reloadsupply(relsup) Reinitializes the supply systems.
deltat [<speed factor>] control animation speeds
building_health(bhealth) [<building type>] [<state or prov id>] [<building level>] [<health to add>] Changes specified building health
nomapicons Toggles map icons.
nopausetext Toggles the pausebanner for nicer screenshots.
nextsong Changes the currently playing soundtrack.
combatsound How often does the combat view give a random sound? 0-50
morehumans(humans) [num] Adds more humans
window(wnd) [Arguments: open/close] [window gui name] Opens or closes the specified window
poll Polls valid Events
pause_in_hours Pauses the game after X hours have passed after command is called
winwars Gives max war score in all wars for the country Command no longer exists as of patch 1.9.1
testevent [<Event ID>] [<Character ID>] Tests an event without triggering it
resign Resign from the game
add_interest [<Country tag>] Add specified country tag to your interest
remove_interest [<Country tag>] Removes specified country tag from your interest
add_diplo Adds diplomatic entroute
PrintSynchStuff Prints random count and seed
SetRandomCount Sets the random count to 0 or arg
ai_invasion Toggles AI AI naval invasions
ai_pp_log Prints AI use of PP to log
ai_idea_desire_log Prints AI desire for ideas to log. For current country only
ai_force_template Force the AI to only spend army XP on template design
ai_force_equipment Force the AI to only spend army XP on equipment design
ai_front_id Get the address of selected group's front debug ID
fow(debug_fow) [Province ID] Turns off fog of war, only within a province if specified.
collision(debug_collision) Toggles debug display of normals/bounding boxes/collision
savegame Creates a savefile.
savecheck Makes a save file (Test_01), loads the save file, makes a new savegame (Test_02). Those save files should look the same.
IP Shows your IP
requestgamestate Requests the gamestate from host
nudge Go to the nudge tool
mapmode [Mapmode type (int)] Change mapmode.
fullscreen Toggles fullscreen
prices Price Info
remove_core [<State ID>] [<Country Tag>] Remove core. Note:Does not Work
debug_zoom Zooms in the game
debug_types Will print the data type for all dynamic reference objects. Can only be used if using RTTI.
debug_show_event_ID Shows event ID
debug_commands Printing commandcount to message.log
debug_events Start Counting events
debug_dumpevents Dump Event data to game log
debug_diploactions Start Counting diplomatic actions
debug_dumpdiploactions Dump diplomatic action data to game log
debug_assert Toggles asserts on/off
debug_nomouse Toggles mouse scrollwheel on/off
debug_terrain Toggles Terrain on/off
debug_cities Toggles Cities painting mode on/off
debug_water Toggles Water on/off
debug_fronts Toggles interpolated fronts debug
debug_off_front_snap(dbg_fsnap) Toggles offensive fronts snapping debug
debug_borders Toggles Borders on/off
debug_trees Toggles Trees on/off
debug_rivers Toggles Rivers on/off
debug_postfx Toggles PostFX on/off
debug_sky Toggles Sky on/off
debug_bloom Toggles Bloom on/off
debug_tooltip Toggles Tooltips on/off
flagsoutput [<path>] Creates texture atlas files from memory.
cityreload Reloads the cities
version Show current game version
debug_nogui Toggles GUI on/off
debug_volume [<Volume Delta>] Modifies music volume
debug_lockcamera Toggles Camera locked on/off
debug_lines Toggles Debuglines
debug_entities Toggles Debug entities
debug_info Toggles Debug info
debug_particle Toggles Particles Debug info
debug_ai_budget [CountryTag] Show ai budget data
debug_textures Writes Texture info to application debug log
debug_texture draws textures like bloom
debug_wireframe Toggles forced wireframe on/off
debug_achievements_clear Clear all achievements and user stats only for developer
moveunit [<Unit ID>] [<Province ID>] Moves a unit to a province
spawnactor [<Actorname>] [<Province ID>] [<Animation> OPTIONAL] Spawns an actor with an optional animation
cameraclamp Toggles the camera clamping
provtooltipdebug(tdebug) Toggles the debug info in province tooltip
reloadweather [<randomseed>] Reload and regenerate weather
weather Toggle weather simulation
debug_air_vs_land(dbg_cas) Toggle debug mode for air vs land combat.
mapnames Toggle map names
gbreload Reloads gradient borders only for developers
gbpaint [layer] [channel] Toggles gradient border painting
profilelog Prints out the profiling informations into time.log
run Runs the specified file with list of commands
oos Out of Synch
trigger_docs(effect_docs, scripting_docs, docs) Print docs for triggers, effects, and variables Documentation for triggers/effects printed to game.log file
threat [Threat amount] Adds or show threat level of the current tag, which is the world tension generated by the tag. Positive values will add to the world tension generated by the active tag, while negative values will subtract from the world tension generated by the active tag, with corresponding entries in the world tension history log. By tag-switching, it is possible to raise or lower the world tension generated by any particular country. If one does "threat 999999999" it will reset the world tension to 0.
3dstats Toggles 3D Stats
hdr Toggles hdr
hdr_debug Toggles hdr debugging
srgb Toggles sRGB
bloom Toggles bloom
PostEffectVolumes.Default [posteffect_values name] Toggles default posteffect values
night Toggles night *as of 1.01 this does not seem to work (filed under developer-only command) This command can be emulated via the day/night loop option at the bottom right toolbar (shortcut key 'N')
filewatcher Toggles filewatcher
createlean Create LEAN textures
helplog Print out all console commands to game.log file.
helphelp Double Rainbow help.
hsv Converts RGB to HSV
tag_color Test setting a country's color
browser [url] Show browser window
browser_base_url [url] Set browser base url
airealism Enable realistic AI An easter egg making the AI smacktalk in chats. Useless since unactivable in multiplayer and chat unactivable in singleplayer.[1]
instant_wargoal Will allow instant justificatiion of war goals on countries
allowideas Allows the player to pick any idea even if normally unavailable This overrides the available and visible triggers of ideas, but not the allowed trigger
release [<country tag>] Releases a country or releasable nation release slv releases Slovenia
InternationalMarket.AddSubsidyForTags [<economic capacity>] [<equipment>] [<country tag>] Adds a subsidy for the player to buy off from a specified country. ex (Adds a subsidy for the player to be able to help buy German sold light tanks for up to 5k EC): InternationalMarket.AddSubsidyForTags 5000 light_tank_chassis GER
random_seed Randomises the current seed the game is using The AI uses this seed to decide all their focuses and decisions.

You can use this to generate a more favourable outcome to any ai action you dislike (e.g. you want to ally with country)

See also

References

  1. A comment of podcat about the command been found https://www.reddit.com/r/hoi4/comments/6cb8vh/the_secrets_of_hoi4/dhtdr4x/

hoi4de:Konsolenbefehle hoi4es:Comandos de la consola hoi4fr:Commandes de console hoi4pl:Polecenia konsoli hoi4pt:Comandos do console hoi4ru:Консольные команды