Terraria Wiki
注册
Advertisement
Valid House Door

一间基本的房屋。
9(外部宽度)× 7(外部高度)

关于建设 NPC 城镇(或基地),另见指南:基地
关于如何为房屋建设制作间的例子,另见多重制作区
关于设置玩家的生成点,另见

房屋(或)是生成城镇 NPC 所必需的由玩家建造的建筑物,每个 NPC 都需要一间房屋。建筑物需要满足一些要求才能作为房屋使用(见下方章节)。可以用房屋菜单中最上方标有一个问号(“?”)的按钮检查建筑物是否满足要求。在夜晚,NPC 一般会回到他们的房屋并待在其中直到黎明。在日食下雨期间他们也会回到房屋中。

向导在新世界一开启时就会出现,但如果他被杀死就需要有房屋才能重生。老人旅商骷髅商人不要求房屋。

类似地,向导渔夫哥布林工匠馆老机械师发型师巫师、和高尔夫球手 各自的最初出现和是否有可用房屋无关。一旦首次发现他们后,每个人都需要有一个合适的房屋才会重生。

某些自然生成的建筑物只要玩家在其中放置光源就可以作为房屋并会在不经意间吸引 NPC。例如漂浮岛上的建筑物,和 生命树的宝藏室。具体列表见下方章节。可以用房屋菜单将住在其中的 NPC 搬到玩家的建筑物去。

玩家选定能作为生成点的要求与作为 NPC 房屋的要求类似,但要宽松一些。玩家无需床以外的其他家具。完整细节参见页面。

房屋菜单[ | ]

Housing Menu Interface

房屋菜单

用于管理 NPC 放置的菜单,通过点击盔甲栏上方的小房子图标进入。

房屋菜单中,可以检查所建造的房屋是否适合使用,并能手工为特定 NPC 指定房屋。要进入此菜单,点击物品栏上方的房屋图标。

要检查房屋是否适合使用,点击“?”房屋查询标记,然后点击房屋内部的任何地方;玩家会收到一条讯息,表明此房屋是否适合。如果不适合,游戏会提示此房屋缺了什么。该警告会优先考虑墙壁(前景和背景都考虑),然后是家具(门、光源、桌子、和椅子)。一条笼统的“This is not valid housing.”提示可能是由于房屋的框架没有封闭,或者 NPC 没有可用的站立点(见下方章节)。

一旦房屋确定为合适,就可以通过在其中放置相应的 NPC 旗号 来为其分配 NPC。注意只会出现已存在于世界中的那些 NPC 旗号。例如,首次进入新世界时,只会显示向导的 NPC 旗号。其他 NPC 的 NPC 旗号只会在他们在世界中生成后才会显示。在Desktop version Desktop version, Console version Console version, Mobile version Mobile version, Nintendo Switch version Nintendo Switch version, and tModLoader version tModLoader version中,NPC 旗号有两种不同的外观,实心的红色和带金色边框的红色。自行入住的 NPC 是常规的红色旗号。如果是分配了房屋的,其旗号会带有金色边框。这指示着当前居住在这个家里的 NPC 死亡后,其继任的 NPC 将必定入住到此房屋中。

Old-gen console version Old-gen console version中,房屋菜单可以通过按Inventory键并来到房屋菜单部分来打开。要检查房屋是否有效,按下Quick Buff键,然后所在的房屋的状态会输出到聊天中。 按Inventory键来显示/隐藏房屋旗号。

当第一次满足某个 NPC 的生成条件时,会从可用的合适空房屋中随机为其分配一间。

房屋有效性评估[ | ]

房屋有效性的评估分成 3 个阶段:框架检测,家具检测,属性检测。

框架[ | ]

在这一阶段,游戏会尝试判定出房屋的内部区域和边框,并且对其结构完成若干评估。[1]

房屋的范围包括一块连通的内部区域和围绕着内部区域的边框,其中:

  • 一个图格可以在 8 个方向上“连通”,即内部区域的图格在水平方向、竖直方向、或斜角方向上彼此相连。
  • “边框”是指围绕着内部区域的图格。边框必须完全封闭,即内部区域和边框外的区域完全不连通。边框必须是实心图格(即实心块或平台,见表)或者机关门、或高门组成(仅有关门状态下所占据的那些图格才有效)。

房屋范围内的所有图格(即包括内部区域和边框的整体),需要满足以下条件:

  • 所有图格离世界真正边缘必须有至少 10 个图格远。[2]
  • 范围内不允许存在水平或竖直方向上连续 5 个及以上图格的“洞”。“洞”指的是未被有效的实心块占据同时又没有有效的背景墙的图格。
  • 房屋的大小也有约束:边框和内部区域总共的图格数量至少要有 60 个,同时要少于 750 个。


最小的房屋尺寸[ | ]

Npccell

微型的 3×10 房屋。

Simpliest Housing

一个简单的有效的房屋。

由于房屋总格数必须至少有 60 格,但要少于 750 格。因此,房屋外框尺寸必须满足以下最低要求之一:

不包括天花板、地板和墙 包括天花板、地板和墙
3 格宽 × 10 格高 [3] 5 格宽 × 12 格高
4 格宽 × 8 格高 6 格宽 × 10 格高
5 格宽 × 7 格高 7 格宽 × 9 格高
6 格宽 × 6 格高 8 格宽 × 8 格高
7 格宽 × 5 格高 9 格宽 × 7 格高
8 格宽 × 4 格高 10 格宽 × 6 格高
10 格宽 × 3 格高 12 格宽 × 5 格高
13 格宽 × 2 格高 [4] 15 格宽 × 4 格高

家具[ | ]

在这一阶段,游戏会检测房屋内是否有必要的家具。

房屋范围内必须至少有一个有效的光源、一个有效的平坦表面物品、一个有效的舒适性物品、和一个有效的入口。[5]符合条件的最小最简单的物品分别是火把工作台、和椅子。具体列表见下方。 [6]

  • 并不是所有提供光亮的物品都满足房屋的光源要求;具体来说,任何“前景物块”、平台、或墙都是不合格的。
  • 入口并不需要是 NPC 可使用的(例如,NPC 并不能使用机关门),也并不需要通向“室外”(例如,放置在房屋内的一个平台也是可用的)。
  • 下列每个物品的任何类型都满足要求。例如,任何颜色的火把都可以,任何主题的椅子也一样。
光源

光源

任何图格 ID 为 4、33、34、35、42、49、92、93、95、98、100、149、173、174、270、271、316、317、318、372、405、572、或 592 的物品:

平坦表面物品

平坦表面物品

任何图格 ID 为 14、18、87、88、90、101、354、355、464、469、或 487 的物品:

舒适性物品

舒适性物品

任何图格 ID 为 15、79、89、102、487、或 497 的物品:

入口物品

入口物品

任何图格 ID 为 10、11、19、386、387、388、389、427、435、436、437、438、或 439 的物品:

属性[ | ]

经过以上的步骤,房屋似乎已经合格了,但仍可能有三种原因导致它变得无效:它已被占用;它太靠近或在邪恶生物群落中;它其中没有可供 NPC 站立的位置。

  • 首先,检查房屋是否已被其他 NPC 入住占据。如果已有入住,则房屋无效,并显示“This housing is already occupied.
  • 否则,就会通过判定两种房屋属性的方式来确认一个房屋是否有效:邪恶分值,和家图格分值。[7]

邪恶分值[ | ]

然后,开始评估邪恶分值:

  • 以房屋范围为基准,向四个方向延伸一定距离后所形成的矩形区域为评估区域。具体延伸范围随游戏版本而有所不同,在 .4.2. 中是:
    • 水平方向:以房屋范围内最靠左/右的图格为起点,向左/右延伸 45 个图格[8]
    • 竖直方向:以房屋范围内最靠上/下的图格为起点,向上延伸 43 个图格/向下延伸 46 个图格[8]
  • 如果以上区域四边中的任意边距离世界(真正)边缘小于 5 个图格,则收缩到以距离世界边缘 5 个图格处。 [9]
  • 统计区域中的所有有效的、未被图格(包括被致动后变为背景物块的)的总分值,具体见下表:
图格 分值影响
腐化草腐化草 每图格 +1 分
黑檀石块黑檀石块
紫冰雪块紫冰雪块
黑檀沙块黑檀沙块
黑檀沙岩块黑檀沙岩块
硬化黑檀沙块硬化黑檀沙块
腐化多刺灌木腐化多刺灌木
Corruption Plants腐化植物
魔菇魔菇
猩红草猩红草
猩红石块猩红石块
红冰雪块红冰雪块
猩红沙块猩红沙块
猩红沙岩块猩红沙岩块
硬化猩红沙块硬化猩红沙块
猩红多刺灌木猩红多刺灌木
神圣草神圣草 每图格 -1 分
珍珠石块珍珠石块
粉冰雪块粉冰雪块
珍珠沙块珍珠沙块
珍珠沙岩块珍珠沙岩块
硬化珍珠沙块硬化珍珠沙块
Short Hallowed Plants 矮小神圣植物
Tall Hallowed Plants 高大神圣植物
(每株植物仅算作一个图格,只是外观上高两个图格。)
向日葵向日葵 每棵 -40 分[10]
  • 最终计算:邪恶分值 = 腐化块分值 + 猩红块分值 - 神圣物块分值 - 向日葵分值

如果邪恶分值 ≥ 50,则房屋无效,并显示“This housing is corrupted.”,邪恶分值 ≥ 300 时则改为显示“This is not valid housing.”当一间已被占用的房间被腐化/猩红化时,生活在其中的 NPC 会搬出去并在此区域走动,直到有新的房屋可用。

如果邪恶分值 < 50,用(50 - 邪恶分值)计算出中间得分。此得分会在家图格判定中使用。


家图格判定[ | ]

然后,开始判定房屋范围内是否有合格的家图格。家图格为一个符合下列条件的图格;右图中紫色图格作为待判定的家图格:

Home Tile

判定范围示例

  • 必须是实心图格
  • 不能是平台泡泡
  • 未被致动
  • 左边和右边直接相邻的图格(蓝色图格)必须是实心图格,且未被致动
  • 其正上方高 3 格,宽 3 格的范围内(绿色方框中的图格)不能有影响通行的物体(即不允许有未致动的实心块,但可以有平台)
  • 其正上方 3 格(绿色方框中的黄色图格)必须没有有效前景图格,也不能是实心图格。并且这 3 格必须全部都在房屋范围内。

如果有符合以上条件的图格,用(在邪恶分值判定中得到的)中间得分,结合正上方 5×4 范围内(红色、白色、黄色图格)的物体情况进行分值评估:

  • 此范围内所有有效的前景图格,且不是下方列表中的无效图格的,进行以下操作:
    • 此范围内,在正中间一列的(即图格正上方 1×4 的范围;黄色图格)不参与第一次评估,只参与下方第二次评估。
    • 剩下 16 格范围内(红色、白色图格),满足以上条件的图格,参与第一次评估:
      • 每一格关闭的门或高门减 20 分。
      • 每一格开启的门的门轴部分(即关闭状态下门所占据的范围)减 20 分。开启的高门不影响分数。
      • 每一格未致动实心图格减 5 分。
      • 其它物体,每一格加 5 分。
  • 无效的图格列表
    高茎草种子高茎草种子
    洋红花种子洋红花种子
    粉花种子粉花种子
    蘑菇蘑菇
    蓝花种子蓝花种子
    黄花种子黄花种子
    蓝紫花种子蓝紫花种子
    白花种子白花种子
    红花种子红花种子
    火把火把
    蓝火把蓝火把
    红火把红火把
    绿火把绿火把
    紫火把紫火把
    白火把白火把
    黄火把黄火把
    恶魔火把恶魔火把
    诅咒火把诅咒火把
    冰雪火把冰雪火把
    橙火把橙火把
    灵液火把灵液火把
    超亮火把超亮火把
    骨头火把骨头火把
    彩虹火把彩虹火把
    粉火把粉火把
    沙漠火把沙漠火把
    珊瑚火把珊瑚火把
    腐化火把腐化火把
    猩红火把猩红火把
    神圣火把神圣火把
    丛林火把丛林火把
    Tall Grass Plants 高大草类植物
    太阳花太阳花(生长中)
    月光草月光草(生长中)
    闪耀根闪耀根(生长中)
    死亡草死亡草(生长中)
    幌菊幌菊(生长中)
    火焰花火焰花(生长中)
    寒颤棘寒颤棘(生长中)
    太阳花太阳花(成熟)
    月光草月光草(成熟)
    闪耀根闪耀根(成熟)
    死亡草死亡草(成熟)
    幌菊幌菊(成熟)
    火焰花火焰花(成熟)
    寒颤棘寒颤棘(成熟)
    太阳花太阳花(开花)
    月光草月光草(开花)
    闪耀根闪耀根(开花)
    死亡草死亡草(开花)
    幌菊幌菊(开花)
    火焰花火焰花(开花)
    寒颤棘寒颤棘(开花)
  • 如果分值 ≤ 0,那么此图格不合格。

    如果分值 > 0,那么继续进行第二次评估:

    • 如果此房屋入住会导致两名 NPC 共享房屋(即城镇 NPC 和城镇宠物共用房屋),且当前格与先前入住的那个 NPC 的家图格水平距离小于 3,那么分值会被直接设置为 1。
    • 如果正上方 5×4 范围内(红色、白色、黄色图格)有宝箱,宝箱每占用一个图格减 30 分。如果计算后分值小于 1 ,则设置为 1。
    • 如果正上方 1×4 范围内(黄色图格)有合格的图格,每有一格就减 15 分。
    • 如果最后计算出的分值 ≤ 0,此格不合格。

    房屋内必须至少有一格合格的家图格作为 NPC 的站立点。NPC 旗号会挂在 NPC 站立点上方。如果有多个有效的家图格,则会选择分数最高的图格中,最靠左上的那格。[11]

    松露人[ | ]

    松露人 NPC对他的房屋有额外条件:他的房屋周围范围内必须有至少 100 格的发光蘑菇生物群落物块。这一范围和用于计算邪恶分值的评估区域的大小相同。

    成就[ | ]

    Achievement No Hobo
    No Hobo • Build a house suitable enough for your first town NPC, such as the guide, to move into.
    Successfully get an NPC to move into your first House.
    Achievement Real Estate Agent
    Real Estate Agent • Have all possible town NPCs living in your world.
    All town NPCs are housed in your world.
    Achievement Home Sweet Home
    Home Sweet Home • “The Guide has moved into your house”
    Have the Guide move into a house.
    Achievement All in the Family
    All in the Family • “Every NPC has moved into your house”
    All town NPCs are housed in your world.

    备注[ | ]

    • 房屋可以连在一起并共用公共墙壁、地板、天花板、和门。在玩家看来,这就像一座有多个房间的房屋或者公寓,而在 NPC 看来这就是一堆互相独立的房屋。
    • 几乎所有 NPC 房屋都符合玩家放置床并将其用作生成点所需的条件,只要床正上方的图格未被阻挡即可(完整细节,参见页面)。床也算作舒适性物品。
    • 如果已分配给 NPC 的房屋被摧毁或有任何要求变为无效状态,NPC 会在此区域走动直到重新有可用的有效房屋。如果 NPC 被杀死,他会在有效的房屋恢复了之后立刻重生。
    • 当房屋处于可见屏幕内时,NPC 不会在房屋内重生,取而代之的是在屏幕外面的区域走动。在单人模式中,退出并重新进入游戏会使 NPC 回到自己的房屋。在夜晚,如果玩家移动到几个屏幕之外,或使用魔镜传送机、或冰雪镜,NPC 们会自动进入他们的房屋中。
    • 世界的侧边、顶边、和底边不算作墙。
    • 如果石墙已被转化为珍珠石墙,房屋也会变为无效。
    • Old-gen console version Old-gen console version, Nintendo 3DSNintendo 3DS version version, and tModLoader version tModLoader version中,如果在世界初始生成点建造房屋,最好不要在人物出现的地方放置任何前景物体或物块;当玩家传送回来或者重生时,玩家出现位置上的所有物块或家具都会被破坏,这可能会让房屋变得无效。
    House (no empty wall)

    两个没有空墙区域的房屋示例。NPC 不能自己入住到这些房屋中,必须由玩家分配。

    • 增加世界中空房屋内空墙区域(即只有背景墙,没有其它前景物块/背景物体的图格)的大小会使 NPC 入住更快。此外,使用沙岩砖墙会将 NPC 入住需花费的时间乘以 4 倍。[12]
      • 这意味着没有空墙区域的房屋只能被玩家分配 NPC。(译注:入住(move in),指新的或失去房屋的 NPC 搬进一个房屋这一事件;分配(assign),指使用房屋菜单让世界中已经存在的 NPC 住到一个房屋中的行为)
    • 液体不会影响房屋有效性的评估。
      充满液体的有效NPC房屋

      液体不会影响房屋有效性的评估。

    小贴士[ | ]

    Infinite NPC House

    一个无限房屋。从版本 1.3.1 开始这个不再可行,不过在3DSNintendo 3DS version上却依然可用。

    • 如果位于活跃的腐化或猩红生物群落中,房屋永远不会有效。这会让购买有生物群落需求的物品(对于油漆工特别明显)需要折腾一番才能满足。对于此种情况,建议使用国王雕像女王雕像将 NPC 传送以购买物品。
      • 如果没有国王雕像或女王雕像,可以在邪恶分值判定区域外且仍然处于邪恶生物群落中(邪恶生物群落的背景可见)的位置建造房屋,它将仍然是上述生物群落中的有效房屋。
    • 致动器可以和棕、灰、丛林蜥蜴压力板共同使用来让玩家可以进入同时阻止敌怪进入和 NPC 外出。也可以用机关门,敌怪和 NPC 都打不开它。但是,如果制动后的墙维持打开状态,这可能让房屋变得无效,直到再次将其变得实心为止。
      • 1.3.1 更新以后,用玩家感应器来代替压力板会很有用且很方便。这不仅可以节约一些可用地板空间,还能避免因为意外失误而让入口意外开启。警告:玩家感应器自身不是有效的房屋框架物块;如果将其用作地板、天花板、或侧墙(包括拐角)的一部分,则房屋会变得无效。
    • 如果确实绝对有必要,(比如,在3DSNintendo 3DS version中,没有房屋菜单),玩家可以通过摧毁所有其余房屋的方式强制让某个 NPC 进入特定的房屋。
    • 困难模式的天然墙,比如珍珠石黑檀石墙,不算作有效的墙。
    • “无限房屋”漏洞在Old-gen console version Old-gen console version上会一直可用,因为这些主机不会收到泰拉瑞亚的后继更新。 [13]
    • 在房屋符合大小要求的同时,它可以是任何形状的,而并不仅限于矩形或正方形。(例如,圆顶房屋依然有效。)
    • 房屋是玩家挥洒创意的好地方。为NPC 提供经过装修及主题化的家是很有意思的,虽然空荡荡的房间也足以让他们满意。1.4 中实现的NPC 快乐系统建立在这种乐趣来源之上,通过让 NPC 对其房屋的位置和与其他 NPC 房屋的距离有所偏好来实现。也就是说,NPC 的快乐并不受房屋的外观或装修所影响,从而让玩家在这方面能不受约束自由发挥。
    • 明智的做法是在当前 NPC 数量之外建造一些“备用”房屋:
      • 任何新 NPC 一旦生成或被找到立刻就能搬进来(可能是意料之外的)。
      • 特别是在进入困难模式是,一些房屋可能会因腐化或猩红而变得无效,有备用的有助于避免 NPC 变得物无家可归。
      • 在每个基地中都有额外的房屋对于管理四处移动的 NPC 的快乐会有所帮助,并有助于确保晶塔维持可用。
    • 在地下建造房屋时,粘性炸弹虫炸是不错的选择,因为它们较为精准,且能够破坏背景墙以更方便地放置墙。

    参考[ | ]

    1. Information taken from the Desktop version Desktop 1.4.2.3 source code, Terraria.WorldGen 中的 StartRoomCheck() 方法。 There may be inaccuracies, as the current Desktop version Desktop version is 1.4.4.9.
    2. 游戏中世界可见边缘外部还有约 40 个图格的不可见区域,然后才是真正边缘,所以这一条在正常游戏过程中应当不会触发。
    3. 仅当使用工作台而非桌子时才可能。
    4. 仅当使用平台作为天花板时才可能。在Desktop, Console, Mobile, Switch, and tModLoader上已不再可能。
    5. Information taken from the Desktop version Desktop 1.4.2.3 source code, Terraria.WorldGen 中的 RoomNeeds() 方法。 There may be inaccuracies, as the current Desktop version Desktop version is 1.4.4.9.
    6. Information taken from the Desktop version Desktop 1.4.2.3 source code, Terraria.ID.Sets.RoomNeeds类。 There may be inaccuracies, as the current Desktop version Desktop version is 1.4.4.9.
    7. Information taken from the Desktop version Desktop 1.4.2.3 source code, Terraria.WorldGen 中的 ScoreRoom() 方法。 There may be inaccuracies, as the current Desktop version Desktop version is 1.4.4.9.
    8. 8.0 8.1 此处的实际代码存在 Bug,多了一个 /16 ,导致实际范围远小于应有范围。按 1.4.2.3 的代码中的数值,延伸距离原本应当是水平方向各 144 图格,垂直方向向上 101 图格、向下 104 图格。这个 Bug 使得实际上房屋几乎不会因为腐化问题而无效。
    9. 注意,此条在正常游戏中可能触发,因为评估区域的延伸距离长于世界可见边缘和真正边缘的距离。
    10. 每个图格 -5 分,每棵向日葵占 8 个图格
    11. 游戏会从上到下,从左到右依次检查房屋内图格:如果比之前分数更高,则记录为候选;如果和之前分数相同或更低,则跳过。因此,当多个图格并列最高时,最靠上、靠左的图格会被选为家图格。
    12. Information taken from the Desktop version Desktop 1.4.2.3 source code, Terraria.WorldGen.cs 中的 TrySpawningTownNPC 方法。 There may be inaccuracies, as the current Desktop version Desktop version is 1.4.4.9.
    13. 前代主机不会再有后继更新

    历史[ | ]

    • 电脑版 1.3.5.3: 修正了在某些语言中试图在不合适的房间上使用房间查询时出现的错误。
    • 电脑版 1.3.5: 对于手工分配房间的 NPC,如果之前那个被杀,其继任会尝试搬进同一间房间内。
    • 电脑版 1.2.4.1: 开着的再次会导致房间变为不合适,但仅限于向同一个房间开两扇门的情况。(依赖于房间的大小)
    • 电脑版 1.2: 修正了一个会导致合适的房屋变为不合适的 Bug。
    • 电脑版 1.1: 现在有一个房屋菜单(内建界面)用来检查房屋是否有效可用于入住,并可将 NPC 分配到特定的房屋中。
    本Wiki翻译以官方Wiki中文语言包为准

    zh:房屋tr:House/trbg:House/bgnl:House/nlit:House/itcs:House/cs

    Advertisement