CleverRaven / CleverRaven/Cataclysm-DDA

Some kinds of floor seem to knock out map memory of their furniture

Open
#52,115 3 comments 2 reactions 0 assignees View on GitHub
(S2 - Confirmed) <Bug> Fields / Furniture / Terrain / Traps Map / Mapgen
Dominant language
C++
Stars
13.2k
Forks
4.6k
Avg merge
2d 1h
Merged PRs (30d)
205

Description

### Describe the bug

When testing base camp constructions I've seen that buildings made out of some materials don't display the furniture on them when out of direct line of sight, while others do. I don't know if it's a tile set issue or an issue with the underlying data associated with the floors.
The three floor types I've seen behaving differently are "t_floor_primitive", "t_floor_resin", and "t_scrap_floor".

### Steps To Reproduce

1. Construct a base camp (expansion) building segment (probably works with "normal" construction, but camp construction is what I've tried) out of e.g. "t_floor".
2. Construct base camp (expansion) furniture on top of the floor using camp construction recipes.
3. Construct a base camp (expansion) building segment out of mi-go resin, wattle-and-daub, rammed earth, or metal.
4. Construct base camp (expansion) furniture on top of the later floor section using camp construction recipes.
5. Walk around so you've seen all the furniture and then walk somewhere where the furniture is hidden from you direct view (e.g. on the other side of a wall).
6. Note that the furniture on the "normal" floor is remembered, but that on the "odd" floor isn't.

### Expected behavior

Map memory shouldn't care about what kind the floor is.

### Screenshots

A building made out of mi-go resin. Note that the furniture that isn't directly visible is hidden (it looks ugly in this tile set, but that's not related to this issue. Also note that the fact that remembered vegetation and boulders appear in the building is a different issue: they currently can't be removed by construction recipes).
![Screenshot (67)](https://user-images.githubusercontent.com/22739822/136044672-071de043-7899-419a-a778-dff4f7b81e2a.png)

The same building made out of rock (in a different expansion tile). The furniture used is different, but the issue seems to be unrelated to the furniture type (e.g. tables of chairs disappear on one floor, but are remembered on another). Also note that the furniture and building having a different orientation is intended.
![Screenshot (65)](https://user-images.githubusercontent.com/22739822/136044972-252496ad-9d25-484b-ba5a-371545044d59.png)

### Versions and configuration

- OS: Windows
- OS Version: 10.0 2009
- Game Version: 674036b [64-bit]
- Graphics Version: Tiles
- Game Language: System language []
- Mods loaded: [
Dark Days Ahead [dda],
Disable NPC Needs [no_npc_food],
Bionic Professions [package_bionic_professions]
]

As this has persisted for at least some time, the version probably isn't critical. The tile set used is whatever CDDA defaults to when using tiles.

### Additional context

As mentioned, I don't know if it's a tile set issue or if it's an issue with the data associated with the type of floor.

Edit: Added metal to the list of floors with issues.

Contributor guide

Open the contributing guide

Research direction

No source file, test, or entry point is named. Start by reproducing the map-memory behavior with t_floor_primitive, t_floor_resin, and t_scrap_floor, then compare the floor data and memory handling for the listed materials. Done means furniture remains remembered consistently regardless of floor type.

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
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.