Hands-On Usage
news_event is most commonly used to broadcast major historical events to all global players after significant triggers occur, such as when a country declares war, completes a specific national focus, or achieves a technology breakthrough. This allows everyone to perceive world changes through the news interface. In mods, it is often used in conjunction with country_event—first use country_event to handle the internal logic of the nation in question, then use news_event to publish an announcement to the world.
# Triggered after a certain country completes the "Conquest" focus
complete_national_focus = focus_conquest
hidden_effect = {
news_event = {
id = my_mod_news.1
hours = 6
random_hours = 12
}
}
Synergy
[country_event](/wiki/effect/country_event): The nation in question first handles options and internal state changes through country_event, then calls news_event in the immediate block or option blocks to broadcast externally. The two have clear divisions of labor.
[add_named_threat](/wiki/effect/add_named_threat): Aggressive events that trigger news items are typically accompanied by a rise in global threat values; the two almost always appear as a pair to reflect the diplomatic impact of the event.
[has_completed_focus](/wiki/trigger/has_completed_focus): Commonly serves as a trigger condition for events or decisions to determine whether a country has completed a specific national focus, thus deciding whether to trigger the corresponding news event.
[create_wargoal](/wiki/effect/create_wargoal): Aggressive actions such as declaring war or claiming territory typically trigger a news event simultaneously, allowing other nations and players to learn of the escalation.
Common Pitfalls
- Scope Confusion:
news_event can only be called within the COUNTRY scope. Using it in STATE or UNIT_LEADER scope will silently fail. Beginners often mistakenly write this command inside nested blocks of every_owned_state and see no news popup appear.
- Delay Field Stacking Overlooked:
hours, days, months combined with random_hours, random_days accumulate with each other. If you specify multiple delay fields simultaneously but assume only the last one takes effect, the news will trigger at an unexpected time. This is easy to misdiagnose as the event not triggering during debugging.