Game mode: Online official
Type of issue: Bug
Server type: PvP
In my time playing Conan Exiles, I have witnessed some strange decay events. Events that I cannot entirely explain (or recreate). However, after mulling over things, I think I have a theory about a sort of “Decay Shear” that can happen to players who have base with a large footprint.
There was a pyramid that had been built near the Sinkhole. I regularly traveled through the area, but I was usually skirting the opposite side of the Sinkhole. As I ran by on my whatever errands, I would see at least the front part of the pyramid render for me. So one day I approached the pyramid from the other side, and noticed that the back wall had completely sheared off. I first went looking for goodies (there were none). The, I just sat and puzzled at it. The front half was fine, but the back wall was gone. Like a good exile investigator, I pulled out my repair hammer to see if someone had come along and performed a very surgical raid to just the one side of the thing. Not a scratch or scrape of damage anywhere. The side had been clean torn off.
That is probably my most notable experience with decay shear. But I know I have seen it other places too. Oddest thing… where just half of a building or base just turns up missing.
So, giving it some thought after a recent decay shear event on my home server, I think I have worked it out. My theory is that the decay shear occurs when a structure owner is absent for a time on a server, with the exception of logging in every few days with the express purpose of refreshing their base’s decay timer. In these cases, I am presuming that the owner does not actually “walk” their entire base landclaim area… but only logs in, satisfied that by refreshing the blocks immediately around him - that the rest of the connected structure on the same landclaim will also be refreshed.
But I am beginning to believe that’s not necessarily how things work. To demonstrate, I am including some rudimentary visual aids.
Imagine the base below. Player is busy at work, with family, whatever, so he’s irregularly logging in to refresh his base, but he’s not actually leaving his castle. The blue figure represents the owner’s toon. The blue bubble represents the owner’s “render range” … the distance at which his game client draws and updates blocks, reading from the server. The game doesn’t render everything all the time because… well… that would be expensive on server resources.
Because the owner has logged in, and has loaded structure blocks, those blocks all get a decay timer update - reset to the maximum duration. Those would be the darker green blocks. Give or take a few blocks since I am only speculating at how the block rendering and updating actually works.
The owner logs back out. Presumably to go vacuum, or wash dishes, or something. While many of the surrounding blocks probably reset their decay timers, there is a chance that blocks on the outskirts of the landclaim did not actually render, and thus did not communicate with the server that their decay timers also needed to be refreshed. Because they didn’t load, they are in limbo. Literally, no status or update reported back to the game server.
Then some time later, along comes Cauthey. I go be-bopping around the outside perimeter, just close enough to see the edge of the owner’s walls. I’m off to go collect brim, and I am focused on my mission. So perhaps I don’t even look in the direction of the owner’s stronghold. My render range is indicated by the red bubble.
These outer, eastern-most walls have not actually checked in with the server in a long time. Let’s say it’s a low population server, and no one else has stopped by the fort. So, when I render just a few of them, I don’t actually render enough of them to run back to the green ones where they should be associated on the same landclaim. Because I just skirted the place. With no other block associations determined, and with no regular appearance of the owner to come by and refresh their individual decay timers, some math takes place in order to reconcile things, and the blocks crumble. (We’ll say in this example, I don’t actually see them crumble, and I just move on.)
The owner eventually comes back, and logs in. This time with time to actually run about and play, and he discovers the edge of his base has mysteriously sheared away. He checks his Event Log, and the blocks lost are marked as decayed or structural integrity failure. The owner doesn’t understand why this happened because he had been refreshing the decay timer every 2-3 days.
Some takeaways here:
I have seen more of these decay shear kind of events around the same points in time when Funcom makes adjustments to the official server’s decay timer setting. I do not know if this adversely affects unloaded blocks - but it seems like perhaps it does.
It seems that an unloaded block has no properties, and no associations. It is not associated with the local landclaim if enough of them do not render to blocks that have rendered and have been refreshed.
This is my working theory, at least. I would gratefully welcome anyone else’s experiences and feedback. Especially if you’ve had mysterious decay events, and perhaps these circumstances may have fit your decay event. I would also welcome anyone from Funcom, or any modder devkit-aficionado to confirm or deny as much of my theory based on what they know of the system.
I have not reproduced this. However, I have thought through the reproduction steps necessary to demonstrate the decay sheer:
Please provide a step-by-step process of how the bug can be reproduced. The more details you provide us with the easier it will be for us to find and fix the bug:
- With Player1 on private or public server, build a large fort with a fairly significant landclaim footprint. The structure must be large or long enough so that only part of that structure renders when you first come to the edge of it.
- Set a shorter global decay timer setting. Just so that you aren’t waiting for weeks and weeks to recreate.
- Have Player1 log in regularly to update the decay timer. Make sure that Player1 logs in more frequently than the decay timer value that you set. When Player1 logs in, take care not to allow the game to render all of the blocks that are on the furthest side of your structure.
- After a period of time (greater amount of time than your decay value), log in Player2, and come close enough to the opposite edge of the structure, but do not load any more blocks than just the edge.
- If Player2 does not witness a crumbling decay event, carry out the steps above for a second cycle.
Optional: Make adjustments to the decay timer value in the middle of the experiment to see if adjusting this value to longer or shorter can have a detrimental effect on blocks that have not loaded recently.