Jump to content

[Gameplay] Red birds spawning in winter in normal/RoG mode [+solution]


TonyV
  • Fixed

Please choose a category

[Gameplay]

Platform

  • Steam

Do you use mods?
         yes

Version Number

2016-02-26_14-15-59 Rev. 168028

Issue title

[Gameplay] Red birds spawning in winter in normal/RoG mode

Steps to reproduce

Play the game in winter in normal/RoG mode.  Camp out in a savanna, on light greet grassy ground, or in a forest..

Describe your issue

Red birds (prefab: "robin") spawn in normal/RoG (non-Shipwrecked) mode, and they drop seeds.  Blue birds (prefab: "robin_winter") should spawn instead.


Steps to Reproduce
Play the game in winter in normal/RoG mode. Camp out in a savanna, on light greet grassy ground, or in a forest. Note that red birds are spawning instead of blue birds, and they are dropping seeds.



User Feedback


A developer has marked this issue as fixed. This means that the issue has been addressed in the current development build and will likely be in the next update.

Two changes need to be made to fix this issue.  The first is to spawn blue birds instead of red birds in the winter, and the second is to prevent blue birds from dropping seeds.

In birdspawner.lua, there is no check to see if it is winter to replace the "robin" prefab with the "robin_winter" prefab.  This can be corrected by inserting the following lines into the BirdSpawner:PickBird(spawn_point) function at line 192, just above the check to see if the parrot should be replaced by a pirate parrot.

dont_starve\data\DLC0002\scripts\components\birdspawner.lua

Insert:

if bird == "robin" and GetWorld().components.seasonmanager:IsWinter() then
    bird = "robin_winter"
end

In addition, the birds.lua file needs to be edited so that blue birds don't drop seeds.  This can be done on line 259 in the following file.

dont_starve\data\DLC0002\scripts\prefabs\birds.lua

Original:

if name ~= "seagull_water" and name ~= "seagull" then

Change to:

if name ~= "seagull_water" and name ~= "seagull" and not GetWorld().components.seasonmanager:IsWinter() then

I've also attached a complete copy of my birdspawner.lua and birds.lua files that correct the issue.

birdspawner.lua

birds.lua

Edited by TonyV
Made correction to second line of code

Share this comment


Link to comment
Share on other sites

Note that I corrected the second line of code above.  I was originally checking for name ~= "seagull_water" and name ~= "seagull" and name ~= "robin_winter", but this would still allow crows (black birds) to drop seeds in winter.  I've replaced that with a call to explicitly check if it's winter, and if so, no birds will drop seeds.  I've re-uploaded the birds.lua file also.

Share this comment


Link to comment
Share on other sites


×
  • Create New...