CleverRaven / CleverRaven/Cataclysm-DDA

NPC Pathfinding

Open
#48,751 2 comments 0 reactions 0 assignees View on GitHub
<Bug> NPC / Factions
Dominant language
C++
Stars
13.1k
Forks
4.6k
Avg merge
1d 23h
Merged PRs (30d)
186

Description

# Describe the bug

NPCs can't pathfind around friendly cows apparently

# Steps To Reproduce

1. Create an enclosed space with two door (groups) (in my case, this was the back of a Low End Cube Van)
2. Push or otherwise coerce a friendly cow into one of the doors
3. Mark the enclosed space as a "Loot: Unsorted" zone
4. Move the NPC in front of the cow
5. Put some loot inside the enclosed space
6. Tell an NPC to "sort out nearby loot" in the actions menu
7. The NPC throws no error messages (says nothing) but just does nothing until the cow gets moved, ignoring the other door to the enclosed space. Once the cow moves, the NPC proceeds with the task as normal

# Expected behavior

The NPC either pushes the cow out of the way, or treats the cow as a solid object after a while of failing to walk through it and pathfinds a different way. At least, the NPC gives some sort of feedback that it is failing to walk through a cow over and over

# Screenshots

# Versions and configuration

- OS: Linux
- OS Version: Distributor ID: Ubuntu; Description: Ubuntu 18.04.5 LTS; Release: 18.04; Codename: bionic;
- Game Version: 0.E-2 [64-bit]
- Graphics Version: Tiles
- Game Language: System language []
- Mods loaded: [
Dark Days Ahead [dda],
Disable NPC Needs [no_npc_food],
Graphical Overmap [Graphical_Overmap],
Alternative Map Key [alt_map_key]
]

# Additional context

Contributor guide

Open the contributing guide

Research direction

No source files or tests are named. Start by reproducing the issue in Cataclysm-DDA 0.E-2 using the enclosed space, friendly cow, Loot: Unsorted zone, and “sort out nearby loot” action; trace the NPC pathfinding behavior when the cow blocks one door. Done means the NPC uses the alternate route, moves the cow, or clearly reports that it cannot proceed.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
game-dev
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.