Curious Expedition Wiki

Hub Events are are important events that are used to select between various following events based on different requirements or conditions. They are essential if you want to hook up your own events into the general flow of events that happen throughout the game.

Event ID Config file name Description


HubEvents harbor.png
The Harbor is an essential aspect of the metagame, and will be encountered before every expedition. It is a good place to hook up events if you want to make units recruitable, add quests or modify what can be purchased before an expedition.
evt-harbor-recruit-select harborRecruit.hjson Selects which character will offer to join during the Harbor recruitment. 
evt-harbor-quest-offer harbor.hjson Selects which quest is offered in the Harbor. Use this to infuse your own quests.
evt-harbor-quest-completedCheck harbor.hjson Checks if a quest is completed in the Harbor. Use this to add a completion event to your quest.


HubEvents global.png
These events are triggered in various occasions and will be used globally during an expedition.
evt-leave leave.hjson Triggered when leaving most locations during expedition gameplay. Is currently checking for various aspects like status effects (pyromaniac, cannibal, etc) or other actions performed by the player to trigger consequences like wildfires or spawning of wildlife zones. 
evt-world-initQuests events.hjson Triggered at the beginning of each expedition. If you have quests which need to alter the map (e.g. add a specific enemy type or set flags to existing locations) do it here.
evt-world-init events.hjson Similar to evt-world-initQuests, this is the very first event triggered when an expedition begins. Use it to clear statuses or modify the state of the game as you need.
evt-unlock-specialWorld-withText events.hjson Throughout the game, players will be offered information about special worlds to visit that would otherwise not be available. The texts are written flexible so the information can be offered by a ghost in a cenote, a missionary or a villager when resting over night. Enter your own event here if you want to hook up your special world into this aspect of unlocking travel locations.


HubEvents village.png
Villages are one of the most central and important locations during an expedition. You can use villages to add units or pack animals to recruit, items for trading or night events. In general villages are very flexible and a great way to get your content to show up a lot naturally.
evt-village-enter-selectEvent villageEnter.hjson When Players enter a village for the first time this event is triggered. It selects an enter event from a list of possible events. Hook up your event that should happen when entering a village here.
evt-village-recruit-select-humanoid villageRecruit.hjson Add your character to this list to make it recruitable in a village.
evt-village-recruit-select-animal villageRecruit.hjson Add your animal to this list to make it recruitable in a village.
evt-village-nightSelect villageNight.hjson Triggered when resting in a village. Use this event to hook up your events if they should happen when resting in a village over night.
evt-village-actions-night village.hjson The list of available actions when resting over night in a village (after the night event has been executed). This typically shows the "Sleep" action, but also can show the option to steal an idol or create a painting or anthropological studies.
evt-village-actions village.hjson The list of available actions when entering a village. Typically, this list offers the actions "recruit" or "trade". However, the beastmaster option is offered here as well if the required enter event was triggered.


HubEvents sanity.png
Sanity events are events that will be triggered depending on the amount of Sanity of the Players trek. There are two ways how sanity events are triggered: When resting over night in a nature location or when sanity is at 0 while moving.
evt-sanity-selectZero sanitySelect.hjson Selects a sanity event when players run out of sanity during traveling. 
evt-sanity-selectLow sanitySelect.hjson Selects a sanity event when players run out of sanity during traveling or when resting at a nature rest location. 
evt-sanity-selectMedium sanitySelect.hjson Selects a sanity event when players rest at a nature rest location with medium sanity.
evt-sanity-selectHigh sanitySelect.hjson Selects a sanity event when players rest at a nature rest location with high sanity.


HubEvents combat.png
Sometimes you'll want a specific event to be triggered in the contect of a combat.
evt-combat-loot events.hjson Triggered at the end of each combat. Use this to hook up event that should be triggered or checked for after any kind of combat.
evt-combat-run events.hjson Triggered when running away from combat.


HubEvents cave.png
Caves offer a generic encounter situation and are in general used to reward the player in some way for exploring them. Caves can be found rather often, so if you use them to add your events to the game you can be sure they will be triggered regularly.
evt-cave-setCaveType cave.hjson Sets the type of the cave when entering the first time. This way caves can be entered multiple times until the "explored" flag is set.
evt-cave-selectCaveEvent cave.hjson Selects which cave event is triggered, based on setCaveType event.


HubEvents portal.png
Portals allow to travel to a mini expedition within an expedition. These warped worlds can be drastically different, allow to visit areas that would be only available much later in the game or can be interesting in many other ways. Warped worlds have two special aspects: they have their own standing value and the whole map is uncovered from the start.
evt-portal-walkThrough portal.hjson Selects to which warped world a portal will lead.