Jump to content
  • 0

Walls deleted after 24 days even though option was set to 60?


Shadow{}Wolf

Question

I had a server with a hosting company, and I just found that a bunch of buildings were deleted at the 42 day mark despite the fact that at one point I had the Cleanup event deleted from the database, and at another point I had set it to delete objects 60 days old.

 

Is there another place now where this is called besides the SQL database events, or did my hosting company maybe have the events executing from somewhere else?

 

I'm on a dedicated box now and want to make sure this doesn't keep happening.

Link to comment
Share on other sites

5 answers to this question

Recommended Posts

  • 0

I still think i'm seeing an issue with this. I'm going to have to do some testing on my test server. I have Decay in my hiveext.ini set to 60 and uncommented out, and i have the database event set to 60 as well, so i'd think that no objects would get deleted prior than 6 days, but today i went by a base that I'd found a few days ago, and most of it was gone. There's no way it's been more than 60 days as my server isn't even 60 days old, and the vehicles and such were still there so I know that noone destroyed it.

 

Edit: Looking at my database, the oldest wall on the server is now 24 days. I'm going to keep an eye on it and see if goes away tomorrow, it's part of the base that I think disappeared this morning, so that might be the magic number at the moment, i'm just not sure why.

Link to comment
Share on other sites

  • 0

I think i found it. It was actually deleting things after 24 days, and it was because of the Recommended Events that come in the Epoch Server packaged, which I added in my SQL database.

 

I had edited removeObjectOld, setting it to only delete objects with a timestamp 60 days old or greater.

 

What I missed was removeObjectEmpty. It was set to delete any object greater than 24 days old with an Inventory of Null or []. It just dawned on me that all of the built walls and such have an Inventory of [], so they were getting removed as empty objects. I set this to 60 as well now.

 

So now that those 2 events are set to 60 and CleanupPlacedAfterDays is set to 60 in my hive.ini, things should stick around for 60 days. Hopefully I won't have any more issues.

Link to comment
Share on other sites

  • 0

From what I understand by looking at the maintenance functions, the "setDamageOnAge" SQL statement actually doesn't really clean up or "delete" anything the way it is currently written.  What it does is set the damage to 10%, which allows the maintenance option to show up, and also by default should update the "LastUpdated" field because, well, it's doing an update.  It also doesn't make the damage cumulative, meaning it always sets it to 10%, and just keeps overwriting the same value.  This change to "LastUpdated" should keep items from being deleted by the other procedures, which have "LastUpdated" as one of the criteria for deletion.  (with the exception, I believe, of the "CleanupPlacedAfterDays" internal function....) 

 

I have a longer explanation (again, my interpretation) on how these all work together here:

 

On the servers I manage, I have actually turned off the "CleanupPlacedAfterDays" (by setting it to -1), and re-written "setDamageOnAge" so that the damage is actually cumulative.  So, in my scenario, every 3 days it adds 10% damage, resulting in 100% damage (Damage of 1) after 30 days.  Once the damage reaches 1, it will then get cleaned up by the "removeDamagedVehicles" procedure.  (also I should note that I have indestructible bases turned on, as these are PVE servers and allowing damage really only benefits griefers...) To me, this represents true "decay"... I will note that this would have the effect of making built objects weaker over time, again more "realistic".  On a PVP server without indestructible bases, this might be too much.

 

Another important thing to note is that there's a very small subset of objects that are currently included in maintenance (which seems to be changing with the 1.0.5 update).  For example, items like sandbags, lightpoles, etc. are currently not included in maintenance, and so whether you perform maintenance or not, these items will still disappear based on your other procedure time settings.  I talk about this, as well as where to find the objects included in my other post as well.

 

Hope this helps,

GT 

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
  • Advertisement
  • Discord

×
×
  • Create New...