Server launcher showing age 0, player buildings are updated on every restart! HELP

Game mode: Online private
Type of issue: Bug
Server type: PvE
Region: EU
Mods?: No
Edition: Steam


Bug Description:

1. The wipe on our server was 01.01.22, but the age of the server still shows 0, but it should be 70!

2. With such settings as in the screenshot, if the player was absent from the server, his building will break after 360 hours - but the buildings of the players are updated themselves during restarts, without the presence of the player, which is why the buildings of the players who do not play do not decay on their own.

These problems appeared after the server wipe, before everything worked.

Steps to Reproduce:

Please provide a step-by-step process of how the bug can be reproduced. Please be as detailed as possible; the more details, the easier it will be for us to find and fix the bug:

  1. -open launcher and see that the server Age shows 0
    • close and reopen laucher and see it still shows 0 even after server resets
  2. i think the problem is related to the first point, the age of the server does not grow, while updating absolutely all buildings on the server without the participation of their owners, dilapidation does not work

I’ve seen this issue as well and have succesfully made a fix for it, i’ll be leaving it here in full detail hoping that it works for just about everyone.

  1. Access your admin panel / management tool
    1.1 If your server is not off turn it of before proceeding
    1.2 If your server is off then proceed to step 2

  2. Go to where the game.db file is stored for you, this entirely depends on how and with whom you’re hosting your server so in general it should be something along the lines of Conan Exiles\ConanSandbox\Saved
    2.1 If you’re runnning multiple servers ensure that you’re in the data folder of the intended server that you are attempting to fix
    2.2 Make a backup of the game.db file

  3. Use a sqlite navigator tool, this would be a general use tool viable for most people https://sqlitebrowser.org/
    3.1 A decent guide on the tool is available here : Data Management with SQL for Social Scientists *alpha*: Using DB Browser for SQLite

  4. Open the game.db file and navigate to the dw_settings table
    4.1 Using the info in the guide provided above the step you should take from it are : Opening a database
    4.2 The above step also details how to access tables so it should lead you do the right screen and there you will see the table

  5. Check if this table has an entry where the name column is serverruntime
    5.1 If there is an entry ensure that the data in the value column is of the format 3677564.48736522
    5.1.1 If the entry is not similar to said format adjust it, using even the value above as it will correct itself
    5.2 If there is no entry then you need to create it which can be done in the Browse data tab
    5.2.1 Under the row of tabs you have a set of buttons one of them will state ‘Insert a new record in the current table’ when hovered
    5.2.2 After clicking the button a new row will appear at the bottom of the list with null in both columns
    5.2.3 In the left column you need to add in serverruntime and in the right column you can use 3677564.48736522, as stated previously this will get corrected right when the server is started back up

Now that will cover the cases where the entry is missing or poorly formatted and resulting in a default to 0 result. In case you have the entry in a valid format and still see your server reporting an age on 0 then this might relate to the nature of the values as they may be somehow invalid, the two numbers separated by a . appear to be in fact unix epoch timestamps and if they’re out of the epoch time bounds they will fail to translate and that could, though not so sure about this, result in a faulty computation, so in order to check that you could use Epoch Batch Conversion Tool to determine what the two numbers would translate to.

5 Likes

any movemenbt on this for the lest technical? our server shows 0 days and decay is restarting on reboot / daily

Bonjour
Nous avons exactement le mĂȘme problĂšme sur notre serveur, wipe le 08-08-2022 et depuis bloquĂ© Ă  0 jours
Le dĂ©labrement ne s’effectue pas et l’outil “dĂ©placer” rĂ©cemment implantĂ© dans le jeu ne peut pas ĂȘtre utilisĂ©, puisque tout retourne Ă  sa place initiale Ă  chaque redĂ©marrage serveur, a rsque de disparaĂźtre s’il n’y a plus de bĂątiments
Est ce que Funcom pourrait se pencher sur ce bug?
J’ai vu plusieurs serveurs dans la liste de connexion qui restent sur 0 jours
Nous sommes nombreux Ă  ĂȘtre impactĂ©s, plutĂŽt que de poser chacun un petit pansement de notre cĂŽtĂ©, un vrai correctif se montrerait utile ici
Brighid

Bonjour
Toujours rien de Funcom?

Hello, did everything as instructed. The server day changed from 0 to 1963726
 days. when in the table I inserted the date 1664582523 which is 2022-10-01 00:02:03 and through the symbol “.” inserted 1666051323 which is 2022-10-18 00:02:03. That is, I got 1664582523.1666051323. But after restarting the server, the value in the database changed to 1664582523.58309. Where 58309 is equal to 1970-01-01 16:11:49. Why did this happen?


Anyone found the solution yet? My server shows 0 too

Thank you. i fixed it using your method

This fixed my issue as well. One thing I ran into (as I wasn’t able to figure out the date format and ultimately just used the example given, resulting in a server age of 42 upon fix) was that all the buildings immediately went into a state of decay and placed thralls/pets vanished. To get around this, I disabled building and thrall decay, applied the db fix, then reactivated it again after. All seems to working as intended now.

1 Like

Honestly i just wanted to know what the exact format is.

It seems an Epoch value but when i tried to convert one for me i had the age for 1930 days like Sanders.

Its just an Epoch divided by a big number?

By the looks of it, it’s nothing to worry about, it’s just an epoch value with fractional seconds at the end since it’s probably generated in C++

And for those wanting an “easier” way to insert that value, here:

  • Step 1: Open Notepad
● Step 2: Paste the following code in it:
@echo off

set db_file="game.db"

if NOT exist %db_file% (
	echo No game.db file in this directory!
	PAUSE
	EXIT /B
)

echo Inserting timestamp to database...
sqlite3.exe %db_file% "delete from dw_settings where name like 'serverruntime'"
sqlite3.exe %db_file% "insert into dw_settings(name, value) select 'serverruntime', '86400'"
echo Complete!..
PAUSE
EXIT /B
  • Step 3: Save the file as TimeFix.bat in your server’s ConanSandbox\Saved\ folder, right next to your game databases where the sqlite3.exe file is, since we’re referencing that
  • Step 4: Navigate to the file and double-click it

There!

(P.S. On a side-note this appears to just be updating the current time every time the database auto-saves
 so I don’t know how this would in any way translate to an “age” or factor into anything else for that matter, but hey if you’re saying it works I’m fine with that :slight_smile: )
Figured out, check posts below, it’s epoch concept, but not from unixepoch time, but the number of seconds from when the server was started the first time (as long as the serverruntime row exists, else it cannot save)
The script above will set your server age to 1 day and it’ll keep on counting from there

3 Likes

That particular entry provided in the fix thread resulted in a server age of 42. It has since progressed as each day passes. However, all is NOT well in the Exiled Lands. Most buildings have to be loaded (as in someone has to visit the location) for the decay timer to start counting down. Some building pieces that should be attached to a larger claim were immediately put into a decayed state while the rest of the claim had max timers. Oh and all placed pets and thralls have moved onto bigger and better things.

I have also made a brand new server with Gportal, and straight out of the gate server age and decay resets upon restart with no changes to any settings. This suggests that the problem is within the start up files provided by FC. I am in the middle of trying a new server with another host company right now. I’ll let you know if I get the same result.

Edit: Figured it out, check post below
I don’t think it’s that particular entry :slight_smile: as that particular entry is 1970-02-12
 a slightly bit more than 42 days

Instead what it does is probably something weird like takes the oldest building piece on the server and compares it to that date or something and since it doesn’t exist by default

The server updates that every single time it saves so more than likely by the time you even saw it in the server list it already had the current date.

Either way, I’m not sure why that entry is completely missing by default if it’s in any way required
 weird.

oh it definitely resulted in a server age of 42. You can check yourself if you’d like. Cry Havoc is the server name. We are now up to 46, having applied the fix 4 days ago. Our server has been running for several months with an age of 0. I don’t think anyone has an accurate understanding of the entry. I too plugged it into the epoch link and got a 1970 result, yet here we are on day 46 :wink:

In other news, I made a new server on 4netplayers and sure enough, same issue. Decay resets upon restart. In my mind, this indicates that the problem exists in the files provided to hosts. I do hope that FC looks into this, because this current build with the fix has me nervous about future stability. My community would welcome a wipe if we could avoid issues down the road.

1 Like

Edit: Figured it out, check post below
Because it’s not related like I pointed out above :slight_smile: As soon as you start the server it’s going to overwrite it with the current date before it even gets registered on the Funcom server list

So that “42” you got was not a result from that 1970 date value
 it was from your current date at the time.

I can’t tell you exactly how it works, because that part of it is in C++ and we don’t have access to it in the devkit, but I can tell you for certainty that no matter what you type in that box the server is going to overwrite it with the current date every time it saves, which could be once or several times a minute.

The only way that would then be able to deduce a server age from that is via the method I described above
 comparing
 something
 on the server, be it a building piece or some other stored date to this value, which also explains why it would show 0 if this value is missing since there would be nothing to compare to. Either way it’s a weird method to pick when they could just query the current time
 but it probably has some purpose.

Yes, because like I said that entry in the database simply doesn’t get created, hence why you had to create it manually :slight_smile: I didn’t have that entry in my database either and I was hosting locally without a server provider, though I have decay disabled so it wasn’t relevant.

In any case, this will not cause any stability issues other than the already present ones
 and again if you’re worried about that “fix”, it’s completely irrelevant and once you have that database entry nothing you type in that will make any change
 I haven’t tested it, but I’m pretty sure you could go ahead and change that field to read “threehappydogs” and as soon as you start the server it would be overwritten with the current date in epoch format, so the value you typed in there wasn’t of any consequence.

You will get some bugs with decay though since it’s not perfect and you just enabled it on an already established server so yes, like you said above it can cause issues like some buildings decaying, others not
 thralls vanishing and so on. You can do a wipe if you wish, but it’s not necessary and certainly won’t cause any stability issues, it’ll just reset things so there’s no surprises since the building pieces placed after this time will all have their decay timer set by default.

In any case, a massive number of bugs have been fixed with chapter 2 so if I were you, I would at least wait till next week until it releases to see if this stuff has been addressed as well.

Actually, in an attempt to figure out exactly what that entry means, date-wise, I altered it and got a server age of 1500 something. It doesn’t do what you think it does. I wish it did! I obviously don’t have the knowledge on this stuff you do, as I rely on a host, and I’m definitely not trying to be argumentative. I am simply telling you what I’ve experienced directly. I would love for someone to figure this out.

Edit: Nope!! baaaaaad! Figured it out, check post below
That can also be explained if you altered it at the right point and it sent that date off to the Funcom servers, did you however leave it like that and let it update with the current time and see if your server age reverts back?

yes, it starts a baseline and that’s what you get, hence my current 46.