Exploration
You can move in 8 directions — the 4 cardinal directions and all 4 diagonals:
Last updated: October 16, 2026
8-Directional Movement
You can move in 8 directions — the 4 cardinal directions and all 4 diagonals:
| Direction | Commands |
|---|---|
| North | go north, move north, head north, walk north, n |
| South | go south, move south, head south, walk south, s |
| East | go east, move east, head east, walk east, e |
| West | go west, move west, head west, walk west, w |
| Northeast | northeast, north east, ne |
| Northwest | northwest, north west, nw |
| Southeast | southeast, south east, se |
| Southwest | southwest, south west, sw |
Command prefixes "go", "move", "head", "walk", and "travel" are all equivalent.
Movement Rate
You don't always move just one square per command. Your effective movement speed depends on:
- Your movement speed stat (base is 1 square per command)
- Zone bonus: If you're significantly over-leveled for a zone, you move faster through it (up to +3 squares). Formula:
+1 square per 5 levels above the zone's level, capped at +3. Disabled in HIDEOUT_ZONE and Star Map (movement always = 1 there so you do not overshoot a hideout fixture or skip a Star Map node). - Exploration gear: Exploration skill items can add up to +3 more squares
At maximum, a single move command can advance you 7+ squares.
When Movement Stops Early
Even if you have high movement speed, you stop early when you reach:
- A zone portal (entrance to a new area)
- Loot on the ground you can pick up
- Impassable terrain (walls, water, chasms, etc.)
- The edge of the map
Named Move Distance (settable per command)
Movement speed is a maximum, not a fixed stride. A player who wants a shorter, precise step can name the distance on the direction command: "east 3", "go north 2", or "west 1" for a single careful square. This is how a player navigates a tight area (e.g. the Trophy room) without overshooting on high movement speed. It works the same with quick travel on or off (Quick Travel Setting, below).
Rules:
- The named distance only ever caps the move — you can never travel farther than your movement rate allows. "east 10" with a rate of 4 moves 4; "east 1" always moves exactly one square.
- All the early-stop conditions above still apply — "east 3" still stops at a portal, shop, NPC, or loot before the third square.
- No number means full-rate movement while quick travel is on, and one square while it is off.
- Number-first order works too: speech recognition often renders a spoken "east 3" as "3 east" or "three east", so both orders name the same move.
- A bare number is never a distance (it is an option index); both distance parsers require two words.
Discoverability. A player only benefits from this if they know it exists, and the players who need it
are exactly the ones on high movement speed who overshoot. So when the game speeds a player past a single
square on its own (a quick-travel move the player did not ask a distance for), it appends a one-line tip —
"Tip: to move a set distance and not overshoot, say a direction with a number, like east 3, or say quick
travel off to always walk one square." It is
capped at DISTANCE_HINT_MAX_SHOWS (3) lifetime shows per character (tracked by
DarknessFallsCharacter.distanceHintsShown) so a fast mover learns the feature without being nagged on
every step. Implemented in right after the "You moved N
squares" line.
Quick Travel Setting
A player who never wants to be carried past a square turns quick travel off: "quick travel off" (or
"turn off quick travel", "disable quick travel"). With it off, a direction with no number walks exactly one
square; a named distance still moves that far, capped by the movement rate. "quick travel on" restores
full-rate moves, and "quick travel" alone says which it is. Quick travel is on by default, so a player
who never names the setting moves as before. The setting is the player's, across their characters, kept
in UserCountKeys.DF_QUICK_TRAVEL_OFF, and changing it spends no combat round. The named-distance tip
above names the setting. Implemented in and
calculateMoveLimit; routed by the DARKNESS_FALLS_QUICK_TRAVEL one-shot rows.
Implementation: a Darkness-Falls-scoped pre-router in
(Tier 1d) splits the distance token off (trailing or leading), resolves the bare direction through the same
BASELINE_NAVIGATE one-shots the normal cascade uses, and carries the distance in possibleNumbers.
reads it via requestedMoveDistance and caps the move loop at
min(requestedDistance, effectiveMovementRate).
The pre-router keys on the CURRENT SKILL being Darkness Falls, NOT on the loaded account object. The
Alexa entry runs this NLU pass inside populateCommonBasicProperties — BEFORE the game delegate's
populateGameDetails loads darknessFallsAccount — so the account is null at NLU time on every Alexa
turn. Gating on the account (the pre-2026-07 form) meant Tier 1d never fired on Alexa, stranding every
movement-with-distance utterance ("west 1", "north 11", "3 go south") at FALLBACK, while it kept working
on the account-first UI/REST path (which loads the account before NLU) — so local UI playtests could not
reproduce it (feedback 10115). The skill is available this early via the gameType fallback the Alexa
entry sets; the skill == null branch preserves the account-first UI/legacy path. Regression guard:
(the
scenario runner loads the account before NLU, so it cannot reproduce the Alexa-only null-account gap).
Blocked Terrain
| Terrain | What You See |
|---|---|
| Wall / Rock Wall | "a wall" or "a rock wall" |
| Gate | "a gate" |
| Fence | "a fence" |
| Rubble / Debris | "rubble" or "debris" |
| Underbrush | "underbrush" |
| Rushing Water / Water | "rushing water" or "deep water" |
| Fire | "flames" |
| Chasm | "a bottomless chasm" |
| Locked Door | "a locked door" |
Large enemies also block movement — you cannot walk into a square occupied by a large enemy.
When movement is blocked, the game automatically shows you which directions ARE available.
Movement Restrictions
You cannot move when:
- Your inventory is open
- You are downed (cannot act at all)
- You are in the starter zone without a weapon equipped
Unarmed starter-zone first screen does not list Available exits. Direction chips on that refused card loop navigate (east stays the obvious option). possibleLocationsMoveTo returns before the exits footer and before the nearest-portal hint, so the first screen speaks the zone intro ("You're in Starting Area...") and not an exits block the player cannot use. The nearest-portal hint is suppressed as a consequence, which is the intended onboarding shape: find and equip the starting weapon first. Scenario coverage asserts the intro copy and the absence of the portal hint, not an exits line.
Ambiguous Direction Input
Compound direction phrases like 'east west', 'west east', 'north south', 'south east west', 'north east west', 'east to west', or bare 'what is here' are not valid movement commands — players say them when they're confused about which way to go. All forward and reverse direction permutations, plus the 'X to Y' form, route to scan, which shows the player their surroundings and available exits. This follows the same pattern as blocked-movement feedback: when direction input is unusable, orient the player.
Diagonal Exits in the Available-Exits Readout
What the game accepts as movement input must match what the game tells the player it accepts. The available-exits readout therefore includes diagonal directions whenever a diagonal is walkable from the current square, not just the four cardinals.
So if north is blocked by rubble but northeast is open, the player hears: "Available exits: east, northeast, south." This eliminates the "weirdly mapped out" feeling players hit on squares where the cardinal in a quadrant is blocked but the diagonal is clear (feedback 895, FARMSTEAD_RUINS L9).
Voice surface caveat: direction option buttons (arrow icon chips) for diagonals are emitted ONLY when the matching cardinal pair is blocked. When both the cardinal and the diagonal are walkable in the same quadrant, the cardinal alone gets a chip and the diagonal is still spoken in the available-exits text. This keeps the option-chip count manageable on Alexa devices while preserving the player's complete movement vocabulary.
Where Am I - Orientation Command
"Where am I" is the orientation companion to "look around" (scan). Where scan describes what is on your current square, "where am I" answers "which way do I go" for a player who feels lost. It reports, in one breath: your current location, whether enemies are nearby, and a directional suggestion toward progress and back toward where you entered - for example "To press on, head east toward the Trevmarch Sewers. To head back, go west to the portal to the world map." Standing on a portal it says "Say enter zone to press on"; with no portal home it falls back to "say teleport hideout to return to your base". In the hideout it points at the hideout features and the World Portal instead of zone portals. The walkable-exits list and the movement direction chips come from the standard after-action zone footer, so orientation never repeats them and never leaves the player option-less.
Reachable via "where am i", "i'm lost", "where do i go", "which way", "where should i go", "where to go", "lost", "disoriented", and similar disoriented phrasings. Born from player feedback that the world is easy to get lost in (fb 9054). Info-only, like scan - it never consumes a combat turn.
Source: (the handler, dispatched from the
DARKNESS_FALLS_WHERE_AM_I action) plus
and enemiesNearbyCount (the zone-inspection helpers). NLU routes the phrasings via
game_process.process_one_shot_values / process_alternate_synonyms in the DARKNESS_FALLS context;
the "where am i" synonym was repointed off DARKNESS_FALLS_SCAN. Regression: scenario_tests 2299-2302.
Line-of-Sight System
Darkness Falls uses a sight-line system to determine what you can see from your current position. Your sight distance stat determines how far your vision extends.
Vision expands in 8 directions from your position. Each ray stops when it hits blocked terrain — you can't see through walls.
When you scan or move, the game reports visible features: "You see currency glinting to the north", "You see items to the east", etc.
Distance metric: All distances in Darkness Falls use Chebyshev distance — diagonal movement costs 1 step, the same as cardinal movement. This means a 3×3 area around you is all within distance 1.
Enemy Visibility
- Enemies can only see you if they have a clear line of sight to your position
- Enemies cannot move through walls or see through them
- Walking around a corner breaks enemy line-of-sight
Exploration Skills System
Exploration skills provide non-combat advantages as you move through zones. These come from two sources that stack together:
- Class innate bonuses (scale with your level)
- Exploration gear equipped in your skill slot
Bonus Caps
| Bonus | Maximum |
|---|---|
| Trap Detection | 100% chance |
| Trap Disarm | 100% chance |
| Enemy Avoidance | 40% chance |
| Shop Discount | 30% off |
| Movement Bonus | +3 squares per move |
Class Innate Bonuses
| Class | Bonus |
|---|---|
| Rogue | +15% trap detection, +20% trap disarm (+ level scaling) |
| Fighter / Barbarian | +1 movement speed (flat) |
| Sorcerer / Necromancer | +10% enemy avoidance (+ level scaling) |
| Cleric / Paladin | +10% shop discount (+ level scaling) |
| Ranger | +10% trap detection, +5% enemy avoidance (+ level scaling) |
5 Exploration Gear Types
| Gear Type | Effect |
|---|---|
| Trap Mastery | Improves trap detection and disarm chances |
| Stealth | Improves enemy avoidance |
| Commerce | Improves shop discount |
| Athletics | Improves movement speed |
| Dungeon Master | Improves all bonuses at reduced rates |
Zone Transitions
When you walk onto a portal square, you enter a new zone. A few things happen:
- You're placed at the zone's entry point
- Fog of war resets (you start fresh in the new zone)
- Any active NPC conversation ends
- Your party leader's location updates
Zone Level Restrictions
You can't enter zones too far above your level:
| Your Level | Maximum Zone Level |
|---|---|
| 1-19 | Your level + 2 |
| 20-49 | Your level + 7 |
| 50-69 | Your level + 12 |
| 70+ | No restriction |
If a zone is above your level but within range, you'll see a warning. If it's above the max, you'll be told to grow stronger first.
Zone Level Warnings
| Level Difference | Warning Shown |
|---|---|
| Zone is 5+ levels above you | "Extremely dangerous!" warning |
| Zone is 1-4 levels above you | "Caution" warning |
| Zone is at or below your level | No warning |
Teleportation System
5 Teleport Types
| Type | Command | What Happens |
|---|---|---|
| Hideout | "teleport hideout" | Saves your current location and sends you to your hideout |
| Return | "teleport" (from hideout) | Returns you to where you left off, with a brief safety window |
| Party | "teleport party" | Jump to your party leader's location (3-minute cooldown) |
| Checkpoint | "checkpoint" / "fast travel" | Cycle between discovered checkpoints within the current zone |
| Debug | "teleport X Y" | Direct coordinate teleport (admin/testing only) |
Teleporting to Your Hideout
Say "teleport hideout" from anywhere to instantly return to your personal safe zone. Your location is saved so you can return to exactly where you left off.
Returning to the World
From your hideout, say "teleport" to jump back to where you were. When you arrive, you have one safe turn — enemies won't attack immediately, giving you time to get your bearings.
Party Teleport
Jump to your party leader's position with "teleport party". This has a 3-minute cooldown and requires the leader to have moved at least once since you joined.
Checkpoints
Zone checkpoints let you fast-travel within a large zone:
- If you're standing ON a checkpoint: teleports you to the next one in sequence
- If you're NOT on a checkpoint: teleports you to the nearest one
Hideout System
Your hideout is your personal safe zone and home base. No enemies can follow you here.
| Feature | Location | What It Does |
|---|---|---|
| Entry point | (10,10) | Where you spawn when teleporting to hideout or after death |
| World portal | (10,11) | The only exit to the main world |
| Workbench | (13,10) | Crafting operations — walk here to open the crafting menu |
| Essence Font | (14,10) | Recharges your health potion charges |
| Stash | (11,10) | Shared storage across all your characters |
| Star Map | (8,10) | Spend skill points for permanent stat upgrades |
| Trophy Room | (6,10) | Account-wide trophy bonuses |
| Character Hall | (9,10) | Character management |
| Auction House | (12,10) | Browse player auctions |
| Auction Tab | (11,11) | List your own items for auction |
| Shop | (12,11) | Buy consumables and gear |
Important: The workbench is position-based. Walk to coordinates (13,10) to open the crafting menu — there is no "open workbench" command.
Hideout-wide counters (no square to walk to). Two shops open from anywhere in the hideout rather than from a specific square: the Blood Emerald shop (premium consumables, paid with blood emeralds) and the Exotic Shop / Lucky Shop (soul-shard gambling for a random item of any slot). Both browse a fixed listing with no per-square inventory, so they are reachable like a personal facility from any hideout tile — say "open blood emerald shop" or "open lucky shop" anywhere in the hideout. The Exotic Shop is also surfaced at the hideout vendor square so a player who walks to the shop to buy discovers the soul-shard option. Gating lives in DarknessFallsInventoryValidation.HIDEOUT_ACCESSIBLE + atGamblingShopLocation / atBloodEmeraldShopLocation. See items-economy.md § Shop System.
A shop on a zone square opens from it. Outside the hideout a shop, the Exotic Shop on the Trevmarch Market among them, is a square of its own (locationsToInteractWith). On that square, open or enter opens it ("enter exotic shop"), since a square with a facility and no portal is entered by opening the facility (). Asked for from another square of the same zone, the refusal names the nearest one and the way there ("The Exotic Shop is 1 square to the east. Walk there and say open exotic shop."), and only a zone with none falls back to the hideout hint (DarknessFallsInventoryValidation.locationHint). Proof: scenario-df-trevmarch-enter-exotic-shop, scenario-df-trevmarch-exotic-shop-names-the-way; JUnit .
Currency Collection
When you step onto a square containing gold, soul shards, or crafting materials, you collect them automatically.
Potion essence works differently: instead of going to your currency, it directly recharges your health potion. If your potion is full, or if you don't have a potion equipped, the essence is lost with no feedback.
What You Can Pick Up
Gold, Lesser Soul Shards, Royal Soul Shards, Sovereign Soul Shards, Awakening Runes, Empowering Runes, Transcendent Runes, Potion Essence
Loot Ownership
Loot on the ground is either free for anyone to pick up, or reserved for a specific character. Both types are collected automatically when you step on them.
Drop Restrictions by Zone Type
You cannot drop items in all areas:
| Zone Type | Can Drop Items? |
|---|---|
| Starter Zone | No |
| World Hub | No |
| Hideout | No |
| Dungeon / Combat Zones | Yes (when not in combat) |