Modding:Furniture

From Stardew Valley Wiki
Jump to navigation Jump to search

Items

This page explains how the game stores and parses furniture-type item data. For items in general, see Modding:Items.

Overview

Furniture are decorative items which can be placed in the world. In some cases, players can sit on them or place items on them.

They have item type (F) (or ItemRegistry.type_furniture in C# code), their data in Data/Furniture, their sprites in TileSheets/furniture by default, their vanilla translations in Strings/Furniture, and their code in StardewValley.Objects.Furniture.

Data format

The furniture data in Data/Furniture consists of an string → string lookup, where...

  • The key is the unqualified item ID.
  • The value is a slash-delimited strings with the fields listed below.
index field effect
0 name The internal item name.
1 type The furniture type. Possible values:
  • chair
  • armchair
  • bed
  • bed child
  • bed double
  • bench
  • bookcase
  • couch
  • decor
  • dresser
  • fireplace
  • fishtank
  • lamp
  • long table
  • other
  • painting
  • randomized_plant
  • rug
  • sconce
  • table
  • torch
  • window
2 tilesheet size The furniture sprite size on the tilesheet, measured in tiles. This can be <width> <height> (e.g. 1 2), or -1 to use the default size for the type.
3 bounding box size The size of the hitbox when the furniture is placed in-game, measured in tiles. The bounding box will be anchored to the bottom-left corner and extend upwards and rightwards. This can be <width> <height> (e.g. 1 2), or -1 to use the default size for the type.
4 rotations The number of rotations possible (1, 2, or 4).
5 price The price when purchased from a shop.
6 placement restriction Where the furniture can be placed.

Possible values:

value effect
-1 default (uses furniture type)
0 indoors-only
1 outdoors-only
2 indoors or outdoors
7 display name The translated furniture name, which allows tokenizable strings.
8 sprite index The sprite index within the spritesheet texture to draw.
9 texture (Optional) The asset name of the texture to draw. Defaults to TileSheets/furniture.
10 off limits for random sale (Optional) Whether to prevent this furniture from appearing in randomly generated shop stocks and the furniture catalogue. Default false.
11 context tags (Optional) A space-delimited list of context tags which apply to this furniture. Default none.

See also