Jump to content

[Game Update] - 190428


Jason
 Share

Recommended Posts

1 hour ago, Jason said:

This is a short list of bug patches mainly for putting out the fix for the RemoveHerd() function crash that is affecting a number of folks. 

 

View full update

 

Thanks @Jason

No more freakingly weird waves :D !!

(Edit) I love you Klei... The waves mechanic is completely fixed :) I'm so happy

meme-faces_00040376.jpg 

Edited by FreyaMaluk
Link to comment
Share on other sites

8 hours ago, FreyaMaluk said:

Question... what is the issue with "RemoveHerd()"? Is this related with the overpopulation of water beefalos?

As far as I remember, Water Beefalo didn't overpopulate.

In fact it was the opposite, since the herd component has a default maxsize of 12, but the periodicspawner of oxherd only allows 6 ox in a 20 units range.

This reminds me, I think beefalo still overpopulate, because when a babybeefalo runs SetFullyGrown, it gets removed, not killed. And a herd member gets removed because it listens to the "death" event (attached on AddMember of herd component), and not the "onremove" event. I will see if there are any stale references there.

Rockys, lightning goats, and water beefalo don't have a younger prefab version of themselves, so the "possible bug" above doesn't apply to them.

EDIT:

Well, there are.

But actually, this bug was fixed in DST.

local function AddMemberListeners(self, member)
    self.inst:ListenForEvent("onremove", self._onmemberkilled, member)
    self.inst:ListenForEvent("death", self._onmemberkilled, member)
end

local function RemoveMemberListeners(self, member)
    self.inst:RemoveEventCallback("onremove", self._onmemberkilled, member)
    self.inst:RemoveEventCallback("death", self._onmemberkilled, member)
end

local Herd = Class(function(self, inst)
    self._onmemberkilled = function(member) self:RemoveMember(member) end
end)

function Herd:AddMember(inst)
    if not self.members[inst] then
        AddMemberListeners(self, inst)
    end
end

function Herd:RemoveMember(inst)
    if self.members[inst] then
        RemoveMemberListeners(self, inst)
    end
end

It would be something nice to port.

Edited by DarkXero
Link to comment
Share on other sites

12 hours ago, Jason said:

It was a bug that showed up with the fix for a herd bug with rockies. I don't think it would cause water beefalos to overpopulate. Is that a thing?

I didn't happen to me... but I read a thread about it on the forums... Personally... I've never experienced it... 

Edited by FreyaMaluk
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
  • Create New...