Give Me Your Bugs! - Dec17


Recommended Posts

Bug: Game crashes occasionally if you jump into another boat while at sea with the mods "Map Revealer" and "99 Stack Items" enabled.

Hopefully there's a better way of fixing the issue than "Turn off the mods" because that's exceptionally inconvenient.

Link to comment
Share on other sites

Please understand that crashes that happen only when certain mods are essentially guaranteed to be caused by bugs in those mods, not in the game. I'd recommend offering bug reports to the mods' authors to see if they can fix the problem on their end.

 

If you're desperate to get this particular issue fixed, though, go ahead and record the error message that displays next time it crashes and I'll take a look. I'll also need links to the Steam Workshop pages for the mods you're using.

Link to comment
Share on other sites

You didn't know you were waiting for it, but the bug-fixing mod is here!
 
It's manual-install, though, so you'll have to download the attached .zip file and extract it to your mods/ directory. The only reason I'm not putting this on the Steam Workshop is because it's bug fixes, and will hopefully be rendered useless before Shipwrecked gets out of Early Access.
 
I will continue to update this mod to accommodate every single bug fix I work on. For the unaware, I have been updating the original post to include a running list of fixed bugs. All of the fixes you'll see there will be present in this mod.

 

The mod itself is designed to be unintrusive: it will not replace any of the files from the game, but rather patch them to fix the bugs. This has the benefit of being 100% compatible with pretty much every mod out there, but has the slight drawback in that the code in there doesn't exactly match the proper fixes to the bugs in question. That being said, all of the concepts are still in play, and the fixes if nothing else will give the devs some practical firm footing when correcting the problems in the production build.

 

All bug fixes can be enabled or disabled in the configuration menu, and are enabled by default. The full list is as follows:

 

  • Endothermic Eggs - Tallbird eggs overheat near Endothermic campfires
  • Fearless Fighters - Some entities (like Koalefants) don't run away when they're supposed to
  • Firing Back - Attacking with Willow's Lighter or a Torch can set the user on fire
  • Hail from Hell - Freshly-fallen hail can be ludicrously destructive
  • Inventory Death Loot - Critters in inventory killed by feeding harmful foods will not properly give you their loot
  • Invisible Drying Fish - Fish items on Drying Racks become invisible after loading a game
  • Pesky Perishing Parrots - Stunned birds placed in inventory disappear when you click on them
  • Too Few Digits - The day counter on the save game detail screen only shows two digits

 

Give it a whirl if any of the above cause you grief and dismay. Also be on the lookout for any unintended side-effects. I'd hate for the bug fix mod to be introducing any bugs. (-:

post-331005-0-26740700-1452313391_thumb.

post-331005-0-03402500-1452313394_thumb.

givemeyourbugs_20160108.zip

Link to comment
Share on other sites

I am not able to reproduce this on my end. Do you have more information on how to reliably cause it to happen, or perhaps a save file where it happens every time you load?

 

Sorry, I have no idea how to reliably cause it. I'm on a Mac, and it's just always happened. Every single time I jump on any boat. Every single game I've started.

Link to comment
Share on other sites

I got 2 little bugs for you. 1st when u get too crazy and the shadow creatures appear too kill you, if you stand on the beach they sometimes spawn on the water and can't go on land. Another one is i made 4 dragonfruit pies with 4 fresh dragonfruits and sticks which 3 of the 4 turning into rot in a few second after they where done?

Link to comment
Share on other sites

[...] when u get too crazy and the shadow creatures appear too kill you, if you stand on the beach they sometimes spawn on the water and can't go on land.

A simple oversight uncovered a much deeper problem, and it's all thanks to you! This particular error stems from the fact that Shadow Creature teleportation only rejects non-Shipwrecked water tiles, but even checking for those doesn't fix the bug. How's that for mysterious?

 

Teleportation occurs in the stategraph's "hit" state for all Shadow Creatures. This is defined in scripts/stategraphs/SGshadowcreature.lua, around line 57ish, with a block of code for determining the teleportation destination:

 

local max_tries = 4for k = 1,max_tries do    local pos = Vector3(inst.Transform:GetWorldPosition())    local offset = 10    pos.x = pos.x + (math.random(2*offset)-offset)              pos.z = pos.z + (math.random(2*offset)-offset)    if GetWorld().Map:GetTileAtPoint(pos:Get()) ~= GROUND.IMPASSABLE then        inst.Transform:SetPosition(pos:Get() )        break    endend

 

GROUND.IMPASSABLE is the tile type for non-Shipwrecked water tiles, which before Shipwrecked was the only type of tile a Crawling Horror or Terrorbeak couldn't teleport to. Nowadays, there are more types of water tile, so we have to accommodate those too. Fortunately, since Map is defined in the application rather than in Lua scripts, even the vanilla version of the game has access to its new IsLand() method, which returns false for GROUND.IMPASSABLE as well as any type of water tile.

 

At this point, I tried a number of fixes, even modifying the cleaner version of this code used by Swimming Horror, and found that monsters that teleport near the boundary between tiles can still wind up being forced out into the ocean when they're not supposed to be. Instead, the fix I came up with forcibly places the destination in the dead center of the tile, preventing any literal edge cases from occurring:

pos = Vector3(GetMap():GetTileCenterPoint(pos:Get()))if GetMap():IsLand(GetMap():GetTileAtPoint(pos:Get())) then    inst.Transform:SetPosition(pos:Get() )    breakend

Nightmare Creatures use SGshadowcreature, so the bug is fixed for them as well.

 

Devs: FindGroundOffset() and FindWaterOffset() won't prevent this particular problem, meaning Swimming Horror is subject to it as well. I think the source lies in Physics when the collision bubble for an entity overlaps a tile boundary with an impassable tile type, forcing the entity to one side or the other when it tries to move. I don't know exactly how collision with impassable tiles is processed at this point in time (I haven't done a lot of looking into Locomotor), but teleporting mobs won't function correctly until they can be pushed back entirely onto the correct kind of tile when they teleport.

Link to comment
Share on other sites

[...] i made 4 dragonfruit pies with 4 fresh dragonfruits and sticks which 3 of the 4 turning into rot in a few second after they where done?

 

Sounds like the Rot Curse. Take a look at this post and see if that solves the problem. If not, lemme know and I'll look into it.

 

Steps to reproduce:

  • create a RoG world without Give Me Your Bugs (vanilla and SW not tested)
  • build a drying rack
  • save & quit
  • enable Give Me Your Bugs (invisible drying rack fix must be enabled)
  • load saved game

 

I guess it pays to do my homework. Dryable:GetOverrideSymbol() was added in Shipwrecked, probably to support the fish meat items. Now it makes sense why it was broken--they never went and modifyed Dryer:OnLoad() to account for it.

 

A corrected bug fix (the irony is not lost on me) will be present in the next build of the mod. Thanks for catching it!

Link to comment
Share on other sites

On 1/9/2016 at 6:27 AM, anticposition said:

 

Sorry, I have no idea how to reliably cause it. I'm on a Mac, and it's just always happened. Every single time I jump on any boat. Every single game I've started.

I'm on a Mac too, and now that I'm playing as Warly (don't think it's happened with any other character, and it's only been since the Tigershark update), when I've first gotten on a raft, one of my inventory slots that has any rock/mineral in it will disappear. First time it was all the Nitre I had, the second time I had harvested 40 rocks. Those were 2 different playthroughs. By the time I reached the next island I had constructed better boats and I don't /think/ I had the problem again, but then again my memory isn't the best and sometimes it seems like something is missing in my inventory...

Link to comment
Share on other sites

On 2016/1/9 at 0:23 PM, GuyPerfect said:

You didn't know you were waiting for it, but the bug-fixing mod is here!
 
It's manual-install, though, so you'll have to download the attached .zip file and extract it to your mods/ directory. The only reason I'm not putting this on the Steam Workshop is because it's bug fixes, and will hopefully be rendered useless before Shipwrecked gets out of Early Access.
 
I will continue to update this mod to accommodate every single bug fix I work on. For the unaware, I have been updating the original post to include a running list of fixed bugs. All of the fixes you'll see there will be present in this mod.

 

The mod itself is designed to be unintrusive: it will not replace any of the files from the game, but rather patch them to fix the bugs. This has the benefit of being 100% compatible with pretty much every mod out there, but has the slight drawback in that the code in there doesn't exactly match the proper fixes to the bugs in question. That being said, all of the concepts are still in play, and the fixes if nothing else will give the devs some practical firm footing when correcting the problems in the production build.

 

All bug fixes can be enabled or disabled in the configuration menu, and are enabled by default. The full list is as follows:

 

  • Endothermic Eggs - Tallbird eggs overheat near Endothermic campfires
  • Fearless Fighters - Some entities (like Koalefants) don't run away when they're supposed to
  • Firing Back - Attacking with Willow's Lighter or a Torch can set the user on fire
  • Hail from Hell - Freshly-fallen hail can be ludicrously destructive
  • Inventory Death Loot - Critters in inventory killed by feeding harmful foods will not properly give you their loot
  • Invisible Drying Fish - Fish items on Drying Racks become invisible after loading a game
  • Pesky Perishing Parrots - Stunned birds placed in inventory disappear when you click on them
  • Too Few Digits - The day counter on the save game detail screen only shows two digits

 

Give it a whirl if any of the above cause you grief and dismay. Also be on the lookout for any unintended side-effects. I'd hate for the bug fix mod to be introducing any bugs. (-:

post-331005-0-26740700-1452313391_thumb.

post-331005-0-03402500-1452313394_thumb.

givemeyourbugs_20160108.zip

First of all, the Koalefants are supposed to run away. I doubt that. It seems quite normal if they don't run. They run away in DST because people need to cooperate to stop them. Is this really a bug or it is just a guess from you cuz you played DST before? And another things. Even with your mod, the nightlights still don't have flame. So, it seems that it is not correctly fixed. And I have to add things in the prefablist.lua myself. So please check whether you really fix the other bugs.

After all, thanks for the mod.  

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.