[Gameplay] - Ghost Characters Still Affected by Spider Den's Sticky Webbing


Zillvr

Recommended Posts

Bug Submission:

Category: Gameplay
Issue Title: Ghost Characters Still Affected by Spider Den's Sticky Webbing
Issue Description: In any server when you are a ghost, walking through sticky webbing(the turf that slow you down around any spider den tier that cannot be dug up) still affects your movement speed.

I've tested all four available characters, and all show the same result.

I wasn't sure if this is actually a bug or was intentional. But it seemed illogical for ghosts to not be affected by anything in the physical realm (e.g. enemies/burning/freezing/losing hunger/losing sanity/darkness) but be slowed down by the sticky webbing.

I also noticed that when crossing a sticky webbing turf to another sticky webbing turf, speed decreases when you are in the turf and when exiting the turf, your speed increases. But when you exit towards an adjacent sticky webbing turf your speed slows down again.

If reporting this was a mistake, I'm sorry.

Steps to Reproduce:

1. Join/create any server.
2. Play as any character.
3. Kill off own character.
4. Find spider dens.
5. Walk through the sticky webbing turf.

Link to comment
Share on other sites

This is because triggerscreep in locomotor is not working properly.

 

Comparing the RoG locomotor component and the DST locomotor component, it looks like the error stems from this line in the UpdateGroundSpeedMultiplier function:

	local oncreep = ground.GroundCreep:OnCreep(self.inst.Transform:GetWorldPosition())

According to the RoG one, it should be:

	local oncreep = ground ~= nil and ground.GroundCreep:OnCreep(self.inst.Transform:GetWorldPosition()) and self.triggerscreep
Link to comment
Share on other sites

@rezecib thank you for your fast reply, I get the gist of those line of codes. But unfortunately I don't know the programming language well enough to fully grasp the differences code-wise. Thank you nonetheless for figuring out what may be causing this issue.

Link to comment
Share on other sites

@Zillvr basically when things aren't supposed to be slowed down by webbing (Webber, ghosts), the game sets thing.components.locomotor.triggercreep to false. So in the RoG line it's checking that (if triggerscreep is false, then oncreep is always false), and in DST it's just completely ignoring triggerscreep (so oncreep will be true whenever anything is on webbing, meaning it will apply the slowed movement speed instead of the normal one).

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

Please be aware that the content of this thread may be outdated and no longer applicable.