机制 有效房屋判定

putianyi888

Lv4
创意家
LV
0
 
IP属地
英国
2018/12/23
69
64
  • · 发布于未知
本帖机制部分作废。关于准确的机制,请参考https://www.bbstr.net/threads/463/

原文

范围及大小

一个有效房屋必须是由实体块、平台、门(或机关门/高门)围成的连续封闭区域,并且这些实体块/平台/门共同组成这个区域的边界。边界不能全部由实体块组成。区域的内部和边界占用的总格数最小60格,最大750格。以简单的矩形区域为例,最小的一些例子有5x12(内部3x10),6x10(内部4x8),7x9(内部5x7),8x8(内部6x6)。

这里有两个重要的概念。第一个概念是“连续”的封闭区域。对角的两格也算连续。下图所示的房屋是一整个连续封闭区域。第二个概念是边界。把连续的封闭区域增大一圈,增大的这一圈就是这个区域的边界。下图所示的房屋中,除了上下左右的平台和方块,中间的三格方块也算作边界,因为把内部区域增大一圈,不光会覆盖外边界,也会覆盖中间三格。
274

必备家具

一个有效房屋必须包含至少一个有效光源、至少一个用于休息的家具、至少一个用于娱乐的家具。

有效光源包括所有火把、所有灯(大小1x3)、所有灯笼(大小1x2)、所有蜡烛、所有烛台(大小2x2)、所有吊灯(大小3x3)、中式灯笼、圣诞灯、壁炉。需要注意的是灯柱、迪斯科灯、篝火不是有效光源。

用于休息的家具包括所有椅子、王座、所有长椅、所有床、所有马桶(???)、所有沙发。

用于娱乐的家具包括所有桌子、所有梳妆台、所有工作台、所有浴缸、所有书架、所有钢琴、炼药桌、召唤桌、战争桌。

背景墙

一个有效房屋必须要有可以阻止刷怪的人工背景墙,不能阻止刷怪的自然背景墙的位置视为没有墙。需要注意的是船帆属于自然背景墙,而金字塔的沙岩砖墙、遗迹小屋的主题墙属于人工背景墙。

人工背景墙不必铺满,但是要保证不会出现横向或纵向的连续四格空洞。类似于四子棋,只要有四格空洞横向或纵向连续排列,房屋无效。

腐化度

一个房屋的腐化度可能会影响该房屋的有效性,其具体影响机制见后续小节,这小节中仅讲腐化度计算。

只有房屋附近的一个矩形区域才参与腐化度计算。这个矩形区域内每格腐/血方块提供1点腐化度,每格神圣方块提供-1点腐化度,每格向日葵提供-5点腐化度。注意是每格不是每个,如果一个向日葵整体都在该矩形区域内,因为向日葵总共有8格,这个向日葵将提供-40点腐化度!

矩形区域的右边界距离房屋的右边界(如果房屋形状不规则,取最右边的一格边界,下同)42格,左边界距离房屋左边界42格,上边界距离房屋上边界40格,下边界距离房屋下边界43格。矩形宽度为房屋宽度+84格,矩形高度为房屋高度+83格,房屋宽度和高度包括边界。希望这个信息能帮助大家理解有歧义的矩形边界位置描述(距离是否包括端点)问题。

NPC站立点

一个有效房屋的边界中一定有一个实体块可以供NPC站立,为夜晚或下雨时NPC休息的位置。这个实体块的正上方一格是房屋内部(即要在地板上),并且距离房屋左右边界至少两格(这意味着一个有效房屋的宽度至少是5格)。其次它附近的物块摆放必须满足一定条件。

275
如上图,以唯一一个地板实体块为例,红色区域的下三格不允许有实体块或平台,绿色区域的下三格不允许有实体块,绿色区域下方必须有实体块或平台支撑。其他部分无所谓。除此以外,这个实体块的得分还必须大于0。得分的算法:
  1. 得分初始值为50。
  2. 在绿色和蓝色区域中的每有一格(注意是格不是个)门,得分-20;每有一格实体块或平台,得分-5;每有一格除宝箱以外的非实体块,得分+5。
  3. 如果得分<=0,这个实体块无效,算法结束。如果得分<50并且房屋的腐化度>=50,实体块无效,算法结束。如果得分>=50并且房屋的腐化度>=得分,实体块无效,算法结束。
  4. 在绿色和蓝色区域中每有一格宝箱,得分-30,这一步中得分最低只能减到1。
  5. 在红色区域中每有一格东西(啥都行,只要不是只有背景墙),得分-15。 如果得分>0,这个实体块有效。
276277278
我们以上左图旭式监狱为例。初始值50;蓝色区域中共有8格平台,绿色区域中共有3格工作台和椅子,50-40+15=25;红色区域有一格工作台,25-15=10。所以这个实体块有效。
如果火把放在红色区域,那么得分会额外减15,变成-5,这个实体块无效(上中图)。
如果在绿色区域再加两个火把,得分会加10,变成5,实体块又会有效。已经测试过只加一个火把,得分为0时实体块无效(上右图)。

一个房屋中可能有多个地板实体块,如果所有的地板实体块都无效,那么房屋无效,否则这个房屋的位置定为所有地板实体块中分数最高的那块,NPC入住的徽标就会显示在那一块上方。另外需要注意的一点是,红色、绿色、蓝色区域不仅可能包括房屋边界,也可以包括房屋以外的格子。

下左图的房屋是有效的,只有绿色区域中的8格平台,得分为50-40=10。
但是往房屋外边增加两个平台后,如果这两个平台在蓝色区域内,得分会变为50-50=0,方块无效。(下中图)
在外面的蓝色区域再插了一个火把后,得分为50-50+5=5,方块有效。(下右图)
279280281

再看到我们一开始的这张图,蓝色区域和绿色区域有8格实体块、两格平台、两格火把和两格椅子,红色区域有1格实体块,得分为50-40-10+10+10-15=5,有效。如果火把少一个,得分变为0;椅子放在下面,得分变为-5;工作台放在上面,得分变为-5(有一格工作台会进入红色区域),均无效。所以多的一个火把不是拿来装饰的,椅子和工作台摆放也是有讲究的。
282
 
最后编辑:

qwe50917

Lv2
LV
0
 
IP属地
未知
2019/04/09
2
0
  • · 发布于未知
无限房屋呢◑▂◐
 

泰拉依心

Lv3
LV
0
 
IP属地
未知
2019/04/13
5
0
  • · 发布于未知
小伙伴真会玩
 

shota

Lv5
LV
0
 
IP属地
湖北省
2015/08/26
66
20
勋章
1
  • · 发布于未知
监狱亮了哈哈
 

* 这是一则由 Google AdSense 自动推荐的广告,与本站无关,不对其真实性与可靠性负责

顶部