Jump to content

Admin / Trusted Player Tool - Game Save Visualiser


MirageUK

Recommended Posts

@SpenceFoxtrot 

Tribe last active date is based on the last active date of latest player. 

  • If player data is available in the save data this is the last active time of the latest player in that tribe.
  • If no player data is available the time is derived from the LastModified date of the <tribeId>.arktribe file.

Structure "Tribe in Range" is based on the value available for "LastAllyInRange" - so if any tribe member, or member of any allied tribe is in range of the structure this is the date used.

Presumably "Tempest" are allied with others who have been online and near their build since they themselves were last active.

 

 

 

Link to comment
Share on other sites

25 minutes ago, MirageUK said:

@SpenceFoxtrot 

Tribe last active date is based on the last active date of latest player. 

  • If player data is available in the save data this is the last active time of the latest player in that tribe.
  • If no player data is available the time is derived from the LastModified date of the <tribeId>.arktribe file.

Structure "Tribe in Range" is based on the value available for "LastAllyInRange" - so if any tribe member, or member of any allied tribe is in range of the structure this is the date used.

Presumably "Tempest" are allied with others who have been online and near their build since they themselves were last active.

 

Thank for fast replay. I'm not sure to understand :
- This tribe have active players, but they were not connected/presents on the map (or dead body), because "view tribe" was empty of lines.
- We have the tribelogrelay plugin, that cause "player transfer from" or "transfer to" and "player connected" or "player disconnected" in the log tribe (so if a player was active the 26 august for this example - and it was the case -, there is logs created in the .arktribe, cf screen 1). This plugin force tribe creation if you don't have. So if the .arktribe have modification, it's means the date was good ?

Or maybe the last mofifed date is secondary of lastally ? (means last ally is use first)

Edit "vient de se déconnecter" means "has disconnected"
Note : the tribe was active today, and the 26 august

{00EAAB25-4091-4D07-8A0A-8E909A73C560}.png

Edited by SpenceFoxtrot
Link to comment
Share on other sites

4 hours ago, MirageUK said:

If no players currently exist on the map then the Tribe last active should be using the last write timestamp from the .arktribe file.

contentTribe.TribeFileDate = File.GetLastWriteTimeUtc(x).ToLocalTime();

 

So, how explain ?
Screen 1 : Tribe section > Proof of date show : 12/07/2023 (12 july)
Screen 2 : Structures section > Proof build date is 30 August
Screen 3 : Players sections > Proof no players list currently on map, or dead bodies
Screen 4 : Asm show tribe (20 July is a restored file from save)
Screen 6 : tribe file last modified date
Screen 7 : Tribe log with deconection (today, the 30th show).

{9C8464F5-3BE6-4DCE-9DB9-1936F4CF0501}.png

{294A5F8F-07AA-46FD-940A-AA2B6D87F9B5}.png

{29E34BE2-1E26-43EE-AF8E-6B6B642FC73F}.png

{4D13A17D-F327-407E-9EE1-E9719AEEC3C0}.png

{686CADC3-2B8F-4B64-B669-EAE5470A4D73}.png

{0AB00676-3B61-4CD3-86F6-9B2AFC8D12DB}.png

Edited by SpenceFoxtrot
Link to comment
Share on other sites

Thanks !
I just understood... (sorry, my english is not high level)

I chose "show" now.

If he found a player, it's the priority for the date display so, after the tribe file, and last, the ally (if proximity), true ?

Thank for your work !


Edit : it's not better to choice the last date of the 3 possibilities :
- Player
- tribe file
- structures timestamp
(Instead "tribe file or players" only)

Because all servers don't have the tribelogrelay plugin (that refresh tribe file), so if there is no tribe logs and no player present... the same situation can arrive new.

 

{3E6A3972-17B4-484C-9F9A-B5DD49CFAE5D}.png

Edited by SpenceFoxtrot
Link to comment
Share on other sites

1 hour ago, darkradeon said:

hmm it doesn't work with official saves.. did you implemented also the -usestore feature?

Nope. I don't play the game anymore.

Just switched that command line on as a test and you are correct - no longer works with that version.  Something to do with hibernation entry changes but not sure exactly what yet.

There is code in the library I use that already has a "bodge" for v9 which added additional data from v8 but the check it does is no longer valid on this save format.  If I bypass this check and a further 112 bytes I'm then able to read in the file as expected.

I'll investigate further tomorrow evening after work.

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

2 minutes ago, MirageUK said:

Nope. I don't play the game anymore.

Just switched that command line on as a test and you are correct - no longer works with that version.  Something to do with hibernation entry changes but not sure exactly what yet.

There is code in the library I use that already has a "bodge" for v9 which added additional data from v8 but the check it does is no longer valid on this save format.  If I bypass this check and a further 112 bytes I'm then able to read in the file as expected.

I'll investigate further tomorrow evening after work.

thank you. your tool is really valuable, especially with some "old" official saves that seems to be full of garbage data and having a decent way to find it may help us cleaning the save state. Some old server saves are slower and take more memory than other "new" server saves like fjordur, despite fjordur saves being generally bigger than the island.

yes there is the print save to json option but it would takes hours or days for such saves.. if that doesn't crashes before for not having enough RAM xD

Link to comment
Share on other sites

Think I have a solution, not elegant but I noticed that a certain byte appars before the hibernation class count so rather than try and work out what the data is between the "hibernation offset" and the hibernation entries I just skip it all until I reach the byte I'm expecting.. then start reading in hibernation data.

Seems to work for standard V9, V11 and V11 with -UseStore enabled.

Almost end of my lunch break so will have to put it to the test and put a build and release together after work this evening.

  • Like 2
Link to comment
Share on other sites

4.6.0.3 now available for download:

https://drive.google.com/file/d/1RpMh-56LKhQpFGnT7Q33f5bANUoli3Zo/view?usp=drive_link

Features

  • Support for V11 format from official servers.. and any unofficial using "-newsaveformat -usestore" command line options. @darkradeon @gingai
  • Changed header in Structures tab to more accurately read "Ally in Range".
  • Changed Tribe data so it uses the latest date of either last player active or .arktribe file timestamp.

 

 

  • Like 2
  • Thanks 1
Link to comment
Share on other sites

1 hour ago, MirageUK said:

4.6.0.3 now available for download:

https://drive.google.com/file/d/1RpMh-56LKhQpFGnT7Q33f5bANUoli3Zo/view?usp=drive_link

Features

  • Support for V11 format from official servers.. and any unofficial using "-newsaveformat -usestore" command line options. @darkradeon @gingai
  • Changed header in Structures tab to more accurately read "Ally in Range".
  • Changed Tribe data so it uses the latest date of either last player active or .arktribe file timestamp.

 

 

thank you very much I confirms it works on official backup now, with your tool we could find all the cheaters/exploiters  in just a few mouse clicks, makes you wonder why it was so hard for wildcard enforcement team to do the same

Link to comment
Share on other sites

4 hours ago, MirageUK said:

4.6.0.3 now available for download:

https://drive.google.com/file/d/1RpMh-56LKhQpFGnT7Q33f5bANUoli3Zo/view?usp=drive_link

Features

  • Support for V11 format from official servers.. and any unofficial using "-newsaveformat -usestore" command line options. @darkradeon @gingai
  • Changed header in Structures tab to more accurately read "Ally in Range".
  • Changed Tribe data so it uses the latest date of either last player active or .arktribe file timestamp.

 

 

hmm I still get the same error "content failed to load. Please check setting sor refresh download to try again"

save is NA-PVE-Official-TheIsland892

  • Sad 1
Link to comment
Share on other sites

.. good morning.

Give me some time to investigate.  I only tried my own local single player saves, some of the players old saves from this forum and 1 official backup save.  All seemed to work for me.

Downloading TheIsland_892 to investigate shortly.

 

.. edit..

The IMMEIDATE problem is that I'm attempting to load all bytes into memory before parsing and this appears to have a 2GB limit.

Amending the code to use a FileStream to see if any other issues with the actual file format.

 

.. edit 2..

Just hope you guys have a LOT of memory.  This Official Island save @ 2.8GB hasn't finished loading on my machine yet and it's using almost 14GB ram!

Edited by MirageUK
  • Thanks 2
Link to comment
Share on other sites

12 hours ago, darkradeon said:

hmm I still get the same error "content failed to load. Please check setting sor refresh download to try again"

save is NA-PVE-Official-TheIsland892

I have been getting this for some times now and the last 3 update did not help either. been like this for about 2 months now. I hope there will be a fix for this

Link to comment
Share on other sites

@Alpha Prime using official backups or your own server?  Is the file size for .ark larger than 2GB?  Do you have a copy I can download to investigate?

Still loading "NA-PVE-Official-TheIsland892" on my machine and no issues so far - other than the length of time and amount of RAM it is using. 22GB and counting.

Link to comment
Share on other sites

  

13 minutes ago, MirageUK said:

@Alpha Prime using official backups or your own server?  Is the file size for .ark larger than 2GB?  Do you have a copy I can download to investigate?

Still loading "NA-PVE-Official-TheIsland892" on my machine and no issues so far - other than the length of time and amount of RAM it is using. 22GB and counting.

 

The Island take ~32GB of RAM i gues

Edited by GeneticOne
Link to comment
Share on other sites

5 minutes ago, MirageUK said:

Peaked at approx. 24GB... seems to be hovering around 22GB atm but still loading after all this time.

at least my server loaded it with 32GB RAM :D have to clean this up - but what could have caused the RAM to be so high? Structures, Dinos and Items?

Edited by GeneticOne
Link to comment
Share on other sites

57 minutes ago, MirageUK said:

@Alpha Prime using official backups or your own server?  Is the file size for .ark larger than 2GB?  Do you have a copy I can download to investigate?

Still loading "NA-PVE-Official-TheIsland892" on my machine and no issues so far - other than the length of time and amount of RAM it is using. 22GB and counting.

It's the reason why your software is so usefull... cleaning more than 3 months old will resize the save lenght I guess

Link to comment
Share on other sites

I can increase the 2GB file size limitation but the format still needs further investigation. 

My test files with -newsaveformat and -usestore I didn't actually do anything other than spawn and tame a dino and put it in cryo. 

Looking at this official Island file where the property "pointer" says to start there actually appears to be player tribe log looking data.  I'll try and reproduce in my smaller game file to hopefully come up with a fix.

  • Thanks 1
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...