Hearts of iron 4 console commands and secret events


Have you ever had the feelings, that things aren’t going your way?

Regarding the Hearts of iron 4 gameplay, of course. Just imagine the following scenario:

A couple of days ago, I was playing as Portugal and everything was going perfectly. I have pupated Japan and China, defeated Britain and was fighting a successful war against the United States of America. I had the historical AI off, because non-historical games are more fun. I was attempting to complete the Macau achievement, which is one of the hardest in the game after the latest DLC release – La Resistance.

In Spain nothing much was happening, except for the Falangists being victorious in the Civil war and later reforming the Spanish Empire. Because of the fact, that I fought various of my wars alongside the Axis countries, Germany attempted to invite me in their faction, but I always ignored the invitations. Suddenly, in the middle of a fierce offensive, attempted by the brave Portuguese infantry in Texas, the Spanish Empire declared war on me. Out of nowhere and without any specific reason! It was just their stupid focus, that gave them a war goal against me and the AI immediately used it. One second later, I found myself fighting the USA and the entire Axis powers. It is safe to say that I lost the game, because my small army in mainland Portugal could not defend against nearly 100 fully equipped Axis divisions.

When you experience moments like this, it pops in your mind the idea of how to “travel” back in time and prevent the events, leading to your ultimate doom, from happening. Well, unfortunately, travelling back in time is to this day unachievable, but a little cheating will do the trick. And if it happens, that your game is not on ironman mode, then you would certainly be satisfied, when with just a couple with keyboard clicks, you could turn the table and ultimately fix this unfortunate turn of events.

Let’s move to the first goal of this article. Below these lines is a list of all the possible commands, that you can use in every Hearts of iron 4 game, that is on non-ironman mode.

HOI 4 Console Commands

The console, where you type the commands, can be opened by pressing the ` key (usually located under ESC). If your keyboard layout doesn’t have that key, other hotkeys to open the console are SHIFT + 2 and SHIFT + 3. 

Table of console commands

Command Name Syntax (how to write the command)Description (what does this command do in HOI 4)
·        gain_xp gain_xp [amount] This command can be used to add experience to a Leader/General. The specified amount of experience is added to the Leader/General you currently have selected.
·        cp cp [amount] This command will add command power (max. 100%).
·        st st [amount] This command will add stability (max. 100%). You can remove stability by specifying a negative number.
·        ws ws [amount] This command will add war support (max. 100%). Specify a negative number to remove war support.
·        allowtraits allowtraits This command removes restrictions on general trait assignment. Executing this command will allow you to freely assign general traits to commanders, etc.
·        add_equipment add_equipment [amount] [equipment name] This command can be used to add a specified amount of any equipment other than naval equipment. You can remove equipment by specifying a negative amount. Note: you may need to have researched certain equipment before using it, use either the ‘research all’ (researches all equipment) or ‘research_on_icon_click’ command if this is the case.
·        add_latest_equipment add_latest_equipment [amount] This command adds the specified amount of equipment to each and every piece of equipment you have unlocked/fully researched (so, every equipment type in your logistics menu).
·        whitepeace whitepeace [country tag] [country tag] This command instantly makes ‘white peace’ (things return to the way exactly they were before a war started) between the specified countries (specified by their country tag).
·        teleport teleport [province id] This command can be used to either activate the teleportation tool (if no arguments provided), or instantly teleport any selected ships or armies to the province with the specified ID.
·        allowdiplo allowdiplo This command allows for the use of any diplomatic action (e.g. declaring war) without justification.
·        debug_nuking debug_nuking After executing this command, nuking in any province is permitted, regardless of conditions.
·        instantconstruction instantconstruction This command enables or disables (toggles) the instant construction cheat, making all construction happen instantly (no longer queues up).
·        event event [event id] [country tag] This command will start the specified event in the specified country.
·        research research [slot id / ‘all’] This command can be used to research all equipment, or equipment in a specific technology slot.
·        research_on_icon_click research_on_icon_click This command will instantly research any technology when its icon is clicked in the technology tree. This command is also known as the ‘instant research’ cheat.
·        annex annex [country tag / ‘all’] This command starts an annex with the specified country tag (an annex claims their territory for your country).
·        winwars winwars This command will give your country the maximum war score for all wars it is currently engaged in.
·        manpower manpower [amount] This command adds the specific amount of man power to your country.
·        add_opinion add_opinion [source country tag] [target country tag] This command adds an opinion from the specified country tag to another country.
·        tag tag [country tag] This command switches your country to the specified country. ‘tag ENG’ would make you play as Great Britain, for example.
·        observe observe This command enters you into ‘observe’ mode, in which you are set to play no country at all – meaning the entire game plays on auto-pilot. Messages do not show, and the game is not automatically paused.
·        tdebug tdebug This command enables or disables (toggles) debug mode. In debug mode, IDs for things like states, equipment, provinces, etc are shown when you hover over them which are very useful as they are used in console commands.
·        spawn spawn [unit name/id] [province id] [amount] NOTE: In order to use this command, you must add ‘-debug’ to your HOI4 launch options – it will not work otherwise. This command can be used to spawn a specified amount of a unit in a province.
·        occupationpaint occupationpaint [country tag] If no country tag is specified, this command toggles (enables and disables) occupation painting. If the country tag argument is provided, your country will occupy all land that the specified country owns (but not land that they only occupy).
·        setowner setowner [country tag] [state id] This command sets the owner of a specified state.
·        setcontroller setcontroller [country tag] [province id] This command sets the controller of a specified province.
·        xp xp [amount] This command adds the specified amount of experience (to all experiences: army XP, naval XP and air XP).
·        pp pp [amount] This command adds the specified amount of political power to your country.
·        civilwar civilwar [ideology] [country tag] This command starts a civil war within a country, with the specified ideology. Possible ideologies: ‘fascism’, ‘democratic’, ‘neutrality’ and ‘communism’.
·        add_party_popularity add_party_popularity [ideology group] [amount] This command adds the specified amount of party popularity to the specified ideology group. Ideology groups are: ‘f’ (fascism), ‘d’ (democratic), ‘n’ (neutrality) and ‘c’ (communism).
·        set_ruling_party set_ruling_party [ideology group] This command sets the specified ideology group as the ruling party. Ideology groups are: ‘f’ (fascism), ‘d’ (democratic), ‘n’ (neutrality) and ‘c’ (communism). Note that if you wish to change the ruling party of another country, you will first need to switch to them with the tag command.
·        help help [command] If executed with no arguments (just ‘help’), this command will print a list of commands. If executed with a command as an argument, it will print help for the specified command.
·        Focus.AutoComplete focus.autocomplete This command allows for instant completion of national focuses. Note that this command will affect the game’s AI.
·        Focus.NoChecks focus.nochecks This command allows for the ignoring of focus requirements.
·        Focus.IgnorePrerequisites focus.ignoreprerequisites This command allows for the ignoring of focus prerequisites.
·        Decision.NoChecks decision.nochecks This command allows for the ignoring of decision requirements.
·        instant_prepare instant_prepare NOTE: In order to use this command, you must add ‘-debug’ to your HOI4 launch options – it will not work otherwise. Executing this command will cause naval invasions to skip preparation time.
·        nu nu [amount] NOTE: This is a Pre-1.5 command. It will not work in later versions. This command adds the specified amount of naval utility to your naval utility count.
·        nuke nuke [amount] This command adds the specified amount of nukes to your current country.
·        yesman yesman This command causes country AI to automatically accept any diplomatic offers, regardless of the case.
·        rendertype rendertype This command prints the render type (backend) that is currently being used for your client.
·        tweakergui tweakergui This command opens a tweaker GUI.
·        add_ideas add_ideas [idea name] This command adds the idea with the specified ID/name to your current country.
·        reload reload [file name] This command can be used to reload a file without opening and closing your game. Useful if you modify a file to change a setting and don’t want to completely restart your game. Common files: ‘loc’ (localisation files), ‘focus’ (focuses) and ‘landcombat.gui’ (land combat interface).
·        time time This command prints the current time.
·        reloadfx reloadfx [map / .fx file] This command (without any arguments) reloads the game shaders. You can optionally specify either a mapname, postfx or filename (ending in .fx).
·        particle_editor particle_editor This command opens the particle editor GUI.
·        testtool testtool This command opens the testing tool.
·        analyzetheatres analyzetheatres Executing this command will check all threatres in the game for errors.
·        massconquer massconquer This command opens the mass conquer tool.
·        deleteallunits deleteallunits [country tag] This command will delete all units (armies and fleets) of the specified country tag.
·        aircombat aircombat [scenario] [result] [province id] [airbase state id] [airbase state id] [equipment] [equipment] [equipment creator] [equipment creator] This command initiates an air combat in the specified location from your desired country, airbase and equipment.
·        theatersrebuild theatersrebuild This command rebuilds all existing theatres.
·        fronts fronts This command enables or disables (toggles) the visibility of foreign fronts.
·        aidump aidump This command dumps AI data from your currently selected unit to a log file (for e.g. debugging purposes).
·        traderoutes traderoutes This command enables or disables (toggles) the visibility of trade routes.
·        debug_tactics debug_tactics This command enables or disables (toggles) the visibility of the tactics debug tooltip.
·        reloadsupply reloadsupply This command reloads all supply systems..
·        deltat deltat [speed multiplier] This command will change the speed of animations in the game. The number specified is a multiplier – 2 would double the speed, 0.5 would half the speed.
·        building_health building_health [building type] [state id / province id] [level] [amount] This command can be used to modify the health of an existing building.
·        nomapicons nomapicons This command enables or disables (toggles) the visibility of icons in the map.
·        nopausetext nopausetext This command enables or disables (toggles) the visibility of the pause menu (useful for screenshots).
·        nextsong nextsong This command skips to the next soundtrack in the in-game music playlist.
·        combatsound combatsound [frequency] This command can be used to modify the frequency of a random sound being emitted from the combat view. The number given should be between 1 and 50.
·        morehumans morehumans [amount] This command will the specified amount humans to your current country (or remove if a negative number is specified).
·        window window [open / close] [gui name] This command opens (‘open’) or closes (‘close’) the GUI with the specified name.
·        reloadinterface reloadinterface This command reloads the game interface.
·        reloadtechnologies reloadtechnologies This command reloads all technologies.
·        updateequipments updateequipments This command forcefully reloads equipment-related files (/Hearts of Iron IV/common/units/equipment/).
·        updatesubunits updatesubunits This command forcefully reloads unit-related files (/Hearts of Iron IV/common/units/).
·        reloadoob reloadoob [country tag] This command reloads the OOB (order of battle) of the country with the specified tag.
·        update_loc update_loc [localisation key] This command reloads the specified localisation key.
·        poll poll This command polls valid events.
·        pause_in_hours pause_in_hours [hours] This command pauses the game after the specified amount of time. Useful if you want to leave the game running, but not for too long.
·        add_autonomy add_autonomy [country tag] [amount] This command adds or subtracts from a the specified country’s autonomy level.
·        testevent testevent [event id] [character id] This command tests the specified ID without triggering it.
·        resign resign This command, as you might have guessed, causes you to resign from your current position.
·        add_interest add_interest [country tag] This command adds the country with the specified tag to your interest.
·        remove_interest remove_interest [country tag] This command removes the country with the specified tag from your interest.
·        add_diplo add_diplo This command adds diplomatic enroute for your current country.
·        PrintSynchStuff printsynchstuff This command prints the current seed of your game.
·        SetRandomCount setrandomcount [count] This command, if executed without any arguments (just ‘SetRandomCount’), will set the random count to 0. If a number is provided as an argument, the random count will be set to this.
·        ai ai This command enables or disables (toggles) AI.
·        human_ai human_ai This command enables or disables (toggles) AI for human countries.
·        ai_invasion ai_invasion This command enables or disables (toggles) the AI for naval invasion.
·        ai_accept ai_accept This command enables or disables (toggles) whether or not AI will always accept diplomacy.
·        fow fow [province id] This command will toggle (enable or disable) FOW (fog of war) either in general, or in the province of the specified ID. To clarify, if this command is executed without any arguments (‘fow’), it will turn off fog of war completely. If a province ID is specified as an argument, fow will only be toggled for that province.
·        collision collision This command enables or disables (toggles) the collision debug GUI.
·        savegame savegame This command forcefully saves the game.
·        savecheck savecheck This command can be used to check that saving is functioning correctly. It will make a save file named ‘Test_01’, load it, and then save that again as ‘Test_02’. The two files should be the same (in size, etc), if not, there is likely a problem with saving.
·        IP ip This command prints your IP to the console.
·        requestgamestate requestgamestate This command prints the gamestate.
·        nudge nudge This command opens the nuge tool.
·        mapmode mapmode [mapmode id] This command changes the map mode to the specified type. Map mode IDs: 1 (Default), 2 (Naval), 3 (Air), 4 (Supply), 5 (State), 6 (Resistance), 7 (Resource), 8 (Diplomacy), 9 (Faction).
·        fullscreen fullscreen This command enables or disables (toggles) fullscreen mode.
·        prices prices This command prints price info to game.log.
·        add_core add_core [state id] [country tag] This command adds the specified state as a ‘core’ of the specified country. A ‘core’ is a state that’s considered to be a rightful part of a country.
·        remove_core remove_core [state id] [country tag] NOTE: This command has been reported as broken – if it isn’t working for you, it’s due to a fault in the game, not your own! This command removes the specified state as a ‘core’ of the specified country. A ‘core’ is a state that’s considered to be a rightful part of a country.
·        debug_zoom debug_zoom This command will cause the game to zoom in.
·        debug_types debug_types This command is an advanced debug tool, it only works if running RTTI. This will print the data type for all dynamic reference objects to console.
·        debug_show_event_ID debug_show_event_id This command prints the current event ID.
·        debug_commands debug_commands This command prints the current ‘commandcount’ to the message.log file.
·        debug_events debug_events This command will initiate event counting, print data collected from this with the ‘debug_dumpevents’ command.
·        debug_dumpevents debug_dumpevents This command will print data collected since the ‘debug_events’ command was last executed.
·        debug_diploactions debug_diploactions This command will initiate diplomatic action logging, print data collected from this with the ‘debug_dumpdiploactions’ command.
·        debug_dumpdiploactions debug_dumpdiploactions This command will print data collected since the ‘debug_dumpdiploactions’ command was last executed.
·        debug_assert debug_assert This command enables or disables (toggles) asserts.
·        debug_smooth debug_smooth This command enables or disables (toggles) frame smoothing.
·        debug_nomouse debug_nomouse This command enables or disables (toggles) the scroll wheel’s (mouse) functionality.
·        debug_terrain debug_terrain This command enables or disables (toggles) terrain.
·        debug_cities debug_cities This command enables or disables (toggles) cities painting mode.
·        debug_water debug_water This command enables or disables (toggles) water.
·        debug_fronts debug_fronts This command enables or disables (toggles) the interpolated fronts debug screen.
·        debug_off_front_snap debug_off_front_snap This command enables or disables (toggles) the offensive fronts snapping debug screen.
·        debug_borders debug_borders This command enables or disables (toggles) borders.
·        debug_trees debug_trees This command enables or disables (toggles) trees.
·        debug_rivers debug_rivers This command enables or disables (toggles) rivers.
·        debug_postfx debug_postfx This command enables or disables (toggles) PostFX.
·        debug_sky debug_sky This command enables or disables (toggles) the sky.
·        debug_tooltip debug_tooltip This command enables or disables (toggles) tooltips.
·        flagsoutput flagsoutput [path] This command will generate and save a texture atlas file to the specified path.
·        cityreload cityreload This command reloads cities.
·        error error This command will print errors from the log file.
·        version version This command prints the current version of the game to the console.
·        debug_nogui debug_nogui This command enables or disables (toggles) the game GUI.
·        debug_volume debug_volume [volume] This command can be used to adjust the volume of the game.
·        debug_lockcamera debug_lockcamera This command enables or disables (toggles) the camera lock.
·        debug_lines debug_lines This command enables or disables (toggles) debug lines.
·        debug_entities debug_entities This command enables or disables (toggles) entities.
·        debug_info debug_info This command enables or disables (toggles) the debug info screen.
·        debug_particle debug_particle This command enables or disables (toggles) particles.
·        debug_ai_budget debug_ai_budget [country tag] This command prints AI budget information to the console.
·        debug_textures debug_textures This command can be used to print texture debug information to the game log (not console.
·        debug_texture debug_texture This command enables or disables (toggles) textures like bloom.
·        debug_wireframe debug_wireframe This command enables or disables (toggles) the game’s forced wireframe.
·        debug_achievements_clear debug_achievements_clear This command will clear all of your achievements and stats (irreversible).
·        moveunit moveunit [unit id] [province id] This command moves the specified unit to the specified province.
·        spawnactor spawnactor [name] [province id] [animation] This command spawns an actor. If an animation specified as an argument (optional), the character will spawn with that animation.
·        guibounds guibounds This command enables or disables (toggles) the bounds debug GUI.
·        cameraclamp cameraclamp This command enables or disables (toggles) the camera clamp.
·        provtooltipdebug provtooltipdebug This command enables or disables (toggles) province tooltip debug info. The debug info includes things like province ID, state ID, etc when you hover over a province on the map.
·        reloadweather reloadweather [seed] This command reloads weather.
·        weather weather This command enables or disables (toggles) weather – if this feature is off, weather will be disabled.
·        debug_air_vs_land debug_air_vs_land This command enables or disables (toggles) debug mode for air vs land combat.
·        mapnames mapnames This command enables or disables (toggles) map names.
·        profilelog profilelog This command will output profiling data/information to ‘time.log’.
·        run run [file name] This command runs a list of commands in a specified file.
·        oos oos This command makes the client go out of sync.
·        debug_crash debug_crash This command is a debug tool, when executed it will debug client crashes.
·        sleep sleep [duration] This command will pause the game for the specified amount of time (seconds).
·        goto_province goto_province [province id] This command moves the center of your camera to the specified province.
·        goto_state goto_state [state id] This command moves the center of your camera to the specified state.
·        trigger_docs trigger_docs This command
·        3dstats 3dstats This command enables or disables (toggles) 3D stats.
·        hdr hdr This command enables or disables (toggles) high-dynamic-range imaging.
·        hdr_debug hdr_debug This command enables or disables (toggles) high-dynamic-range imaging debugging.
·        srgb srgb This command enables or disables (toggles) color debugging.
·        bloom bloom This command enables or disables (toggles) bloom.
·        PostEffectVolumes.Default posteffectvolumes.default [post effect] This command can be used to toggle a specific post effect, relative to the specified name.
·        night night This command enables or disables (toggles) night.
·        filewatcher filewatcher This command enables or disables (toggles) the filewatcher.
·        createlean createlean This command generates LEAN textures.
·        helplog helplog After executing this command, a list of all commands will be outputted to the game.log file.
·        hsv hsv This command converts HSV to RGB.
·        tag_color tag_color [rgb] This command can be used to set the tag color of your current country.
·        browser browser [url] This command opens the browser window and loads the specified URL.
·        browser_base_url browser_base_url [url] This command sets the URL of the browser (loads a page).
·        aiview aiview This command enables or disables (toggles) debug info for the AI.
·        airealism airealism This command enables or disables (toggles) realistic AI for the game.
·        instant_wargoal instant_wargoal This command allows for the application of any war goal without justification.
·        set_country_flag set_country_flag [country tag] This command sets the flag of the specified country as your current nation’s flag.
·        set_cosmetic_tag set_cosmetic_tag [country tag] [country tag] This command will change the name and flag of the specified country to that of another country.

HOI 4 Secret events

Now that we are done with all the console commands in the game, I am going to discuss something, that is not that widely discussed among the Hearts of iron 4 community. I am talking about the four secret events.

There are four game events, that are so incredibly rare, that are considered secret and it is almost impossible for you, while playing a random country, to see them take place. The AI almost never creates those scenarios, since a lot of requirements are to be meet, in order for the events to fire.

Secret event 1

The first event is between France and Britain. You see, when in 1940 France is about to capitulate, there is a certain event, that fires, that gives the French AI (or player) three options. To cooperate with the Germans, to set up resistance state in Africa or to merge with Britain. If the AI chooses the third option, then Britain gets the event, that France proposes a union. If the UK accepts, then the Franco-British Union is proclaimed with the capital city being London and all core states of France becoming also UK’s core states. All of the remaining French forces, including the air force and the fleet become controlled by Britain. I, personally, have seen this Union pop up twice in my games, but it is incredibly rare. The other three events are even rarer, though.

Secret event 2

Moving on to the next event, it is also about the UK. There are certain things to be done, in order for the proper events to fire, but eventually if everything is done correctly, you might get the young Queen Elizabeth ll rule the state. Incredible as it sounds, it is possible.

Firstly, there are several ways to do this, but ultimately the best way is to change your ideology from democratic to non-aligned. While doing so, you will need to marry the future king Edward Vlll and Wallis Simpson and right before the start of the wedding preparations, you will get an event to select the type of marriage and you need to select the morganatic one. When you compromise on a morganatic marriage, you still get to marry Edward and Wallis, but without the ability for their children to inherit the throne. That is when things get interesting.

Secondly, you should be at war and I will explain why in a minute. After the coronation of Edward as the new king, being in a war is vital, because you need the Greater London Area to be strategically bombed by the enemy air force. That is very important, because during the bombing period, a bomb will strike the Buckingham Palace and ultimately – kill the royal couple. You will get an exclusive event for that. Next, King George will inherit the throne, but then because of smoking and too much stress – he will also die. After that there is no one left to become the new British monarch, except for the daughter of George VI, who is in fact – Elizabeth II. It is really cool, that you also get the three royal corgis (Dookie, Jane and Crackers) as political figures, that you can hire. Honestly though, they aren’t worth it, but it is a fun detail.

Secret event 3

Moving on to the third special event (we already talked about a lot of special events, but you get the idea 😊), it is between Germany and Argentina. For the event to fire, you need a civil war to fire in Germany, between the monarchists and the fascists. When the monarchists take Berlin, they always get the event, that Hitler is found dead. But is it? There is 1/200 chance, that the former leader of Germany will flee to Argentina and then the Argentinian Ai will get an event. If than Argentina overthrows its current government and turns fascist, a curtain Senior Hilter will be in charge.

Secret event 4

Our last event is pretty much the same, but for America. It is more likely to happen, though. What you need to do, as America at least, is to win the Second American Civil war as the Confederate States of America. Shortly after the war is finished, you will get an event to retire MacArthur and appoint a new leader. Normally, you get three options, which are to retire him, to keep him or to ask Charles Lindberg to form a new government. This time, however, If of course, the same thing happened to Germany, that I already explained in the event for Argentina, you have a fourth option to appoint a certain Adam Hilt, former Architect, to lead the government and country. He gives you 1% bonus construction speed, which is pathetic, but who cares. The important thing is that the events are extremely rare and really cool. If you want to find a footage of how to fire the events, than click here, that will lead you to my YouTube channel – “How to HOI 4”, where I regularly post interesting content, regarding our beloved Hearts of iron 4.

I hope you guys enjoyed this article and if so, be sure to check some of my other writings (guides or tutorials) and stay tuned for more amazing content coming soon!