星露谷有很多种环境生物,对环境生物的定义为无法进行交互且无碰撞体积的贴图型生物,例如常见的松鼠,野兔,海鸥等。虽然这一篇讲的是没用的知识,但也会贯彻我硬核的科普风格。
环境生物通常由GameLocations.cs中的tryToAddCritters()方法生成(不适用于姜岛地区),在室外区域(不包括沙滩)每经过10分钟游戏时间或玩家进出地图时都会进行一次刷新判定。每个地图最多生成10只环境生物(夏季为20只),生成顺序依次为:鸟→蝴蝶→野兔→松鼠→啄木鸟→猫头鹰→负鼠。
此处讲述的是不包括麻雀,海鸥,鹦鹉,乌鸦等有准确名称的普通鸟类,在游戏中即使你见到他们一般也只会以他们身上的颜色特征去称呼。
这是在大多数符合条件的地图上生成鸟类的主要方式。
限制条件:只会在 15:00 之前生成。不会在沙漠、火车站、农场内生成。当地季节不能为夏季(姜岛和沙漠默认为夏季)。
循环生成概率:由 地图总面积 / 15000 计算得出,概率范围限制在 15% ~ 50% 之间。这意味着每次刷新判定,游戏平均会尝试生成 0.176 ~ 1 个鸟群。
生成条件:单次尝试中,会在地图上随机选取最多5次 5 × 5 的范围,若其中有一次该范围内均无阻挡物体,则会成功生成 1 ~ 3只 鸟类。
完美前:
春季 & 冬季:灰色鸟 (95%);红冠棕色鸟 (5%)
秋季:蓝色鸟 (100%)
完美后:
春季 & 冬季:紫色鸟 (50%);灰色鸟 (47.5%);红冠棕色鸟 (2.5%)
秋季:红色鸟 (50%);蓝色鸟 (50%)

只能放置在室外的鸟屋有自己独立的一套生成机制,它是在不能生成鸟类的地图中看到鸟类的唯一方式。此机制与自然生成完全独立。
限制条件:玩家在天黑之前的非雨天进入鸟屋所在的地图actionOnPlayerEntry()方法才会进行一次判定。
天黑时间的准确定义:秋季17:00,冬季15:00,其他季节18:00(姜岛和沙漠默认为夏季)
生成概率:每次进入地图,每个地块上的鸟屋都有 6% 的概率生成一只鸟。
注:鸟屋是游戏时间和所处地块的伪随机,这意味着10分钟内可以多次挪动鸟屋并进出地图来控制是否生成什么种类。(使用mod冻结时间后用来截图效果不错)
鸟屋的生成逻辑与自然生成完全相同,但在以上所有鸟类种类判定之后,会进行一次覆盖判定。出现鸽子的概率为 (被变成鸽子的孩子数量) × 8%,如果此判定成功,无论原本打算生成哪种鸟类都会被强制替换为鸽子。即以上所有鸟类的生成概率 × (1 - 0.08 × 被变成鸽子的孩子数量)。
当鸟类未被惊扰时,它们会在地面上进行一系列随机、自然的行为。鸟类默认处于站立不动的状态,在此状态下,它会短暂地观察四周,然后随机决定执行以下某一种动作:
啄食:这是鸟类最常见的行为。它会低下头,对地面进行1~4次不等的连续啄击。完成一组啄食后,它会恢复站立姿势,并重新决定接下来是继续啄食还是进行其他动作。
行走:鸟类会以每帧 1 像素的速度朝当前方向蹦跳行走一小段距离(持续0.5 ~ 1.5秒或碰到障碍物停下),然后停下来回到默认状态。
跳跃:鸟类会原地蹦跳一下。偶尔也会在跳跃的同时转身,改变自己的朝向。
睡眠:鸟类会闭上眼睛保持一个短暂的睡眠姿态。每帧都有0.3%概率会醒来恢复到默认状态。
惊动:当任何玩家或NPC进入鸟的警戒范围(以鸟为中心周围9×9范围),鸟会立刻转身面朝远离玩家的水平方向以每帧 6 像素的速度飞走。

鸟屋生成的鸟也遵循以上行为,但它们不会远离鸟屋。其行走模式被限制在鸟屋上方以生成点为中心的16像素范围的区域内来回踱步,一旦走到边界就会自动转身。
应该是全网最详细严谨的星露谷鸟类知识科普了,以上内容均取自游戏解包以及对游戏源码的解读。之后也是不定期、不定内容更新,大概会按照开头的顺序一个个介绍环境生物,插点外传把大脚怪、外星人、姜岛袋貂什么的环境生物补上。