Jump to content

Request: Admintool for list of tamed and alive dinos in the server


RLH89

Recommended Posts

On 30-6-2016 at 10:37 PM, RLH89 said:

Hi people,

I have a question, ive been in servers where the admin was able to retrieve a list of all tamed dinos alive in the server. I cant find it, is such known? I find this useful with the glitch of disappearing Dinos that still occurs sometimes.

Thanks

You probably need to code it yourself or get it out of  MySQL (DB). :)

Don't own a server so don't know whats stored in the database...

Link to comment
Share on other sites

I actually just started working on reverse engineering the file formats (.ark, .arkprofile, .arkcharactersetting, .arktribe, etc...) and writing some python readers/writers for these file types. So something like this will be possible for me to make in the next week or two. I'll update back when I've got something. If you've got those server files, it would be super helpful for me to get a copy of them, just so I've got some more test files to work with.

 

15 hours ago, Jerku said:

You probably need to code it yourself or get it out of  MySQL (DB). :)

Don't own a server so don't know whats stored in the database...

If only the stuff came in a neatly packaged DB.

Link to comment
Share on other sites

They've all been since updated (I once followed them through the rabbit hole and found their Git repo, etc., but I feel like you can do it this time :P ) but you should be able to find the updates just fine. These posts will get you started:

https://steamcommunity.com/app/346110/discussions/0/594821545173979380/

https://github.com/AuthiQ/ArkData

The second link is an open source library which should allow you to make any changes you'd like to make. Presently, I don't believe they are showing any dino counts. It shouldn't be terribly hard to do, though.

Shame, before I took a break I had somewhere around 5 apps that all had pros and cons for this very purpose. I'm not sure where the others have went.

 

EDIT:

Still not finding the one that showed dino counts. Sorry, thought my post would be a bit more constructive.

Link to comment
Share on other sites

  • 3 weeks later...

I want to release something like this soonish.

Working example: https://ark.seen-von-ragan.de/

It's also possible to just generate a list of tamed dinos, instead of all dinos. The list gets autogenerated everytime the server saves.

Lat values are currently off because the center changed the formula(which seems to be base on map size) for calculating Lat with the last update.

Link to comment
Share on other sites

That's great man! thanks in advance

4 hours ago, Qowyn said:

I want to release something like this soonish.

Working example: https://ark.seen-von-ragan.de/

It's also possible to just generate a list of tamed dinos, instead of all dinos. The list gets autogenerated everytime the server saves.

Lat values are currently off because the center changed the formula(which seems to be base on map size) for calculating Lat with the last update.

 

Link to comment
Share on other sites

It's not really polished and a few experimental tools are missing but here goes:

https://github.com/Qowyn/ark-tools/releases

Note: These tools are only useful for Singleplayer and Serveradmins because they need access to the savefile. And you need Java 8 to run it.

All Tools currently take two arguments, the path to the savegame and an output path.

Tools Included:

  • animals.sh / animals.cmd: extracts all animals from the Savegame
  • wild.sh / wild.cmd: extracts all wild / untamed animals from the Savegame
  • tamed.sh / tamed.cmd: extracts all tamed animals from the Savegame
  • b2j.sh / b2j.cmd: converts the savegame from compact binary form to JSON
  • j2b.sh / j2b.cmd: converts the savegame from JSON to compact binary form

Conversion is painfully slow and will be replaced with a streaming solution in the future. Resuling JSON files are huge, you will need a good editor to open them. Example: 37 MB .ark file will convert to a ~250 MB .json file

Now the Important information:

The scripts which generate lists of animals need an existing folder for output. The generated files will be in the format needed for the web app but you could just open them with a text editor and search for missing dinos.

Example command:

tamed.bat C:\path\to\SavegameLocal\TheIsland.ark C:\path\to\SavegameLocal\tamed\

C:\path\to\SavegmeLocal\tamed or whatever you use needs to exists

Sources:

Link to comment
Share on other sites

Apprently this Forum dislikes me linking stuff, first you need to download stuff from here: https://github.com/Qowyn/ark-tools/releases/download/0.0.1-alpha/ark-tools.zip

Next you need to locate your save file. For singleplayer saves the default location is "C:\Program Files (x86)\Steam\SteamApps\common\ARK\ShooterGame\Saved\" and then either "SavedArksLocal" or "TheCenterSavedArksLocal" depending on if you play TheIsland or TheCenter.

The easiest would be to unzip ark-tools.zip right there and then create a folder called "dinos". After unzipping you can Shift+Rightclick in the folder and use "Open Commandprompt here...". For the last step you would just need to type one of the following:

tamed TheIsland.ark dinos

or

tamed TheCenter.ark dinos

After that the folder "dinos" should contain lots of .json files which you can open with any texteditor.

And after explaining all that i'm considering to create a GUI version, might take some time though because i have 0 experience at creating GUIs with java.

Link to comment
Share on other sites

4 minutes ago, Buliwyf said:

What do i need to install of this Java stuff? I have already installed Java version 8 update 101, but if i use "tamed TheCenter.ark dinos" in cmd line i got error message that the cmd "java" is unkown.

Then try the following for 64-Bit Java:

"C:\Program Files\Java\jre1.8.0_101\bin\java.exe" -jar ark-tools-0.0.1-SNAPSHOT.jar tamed TheCenter.ark dinos

or for 32-Bit Java

"C:\Program Files (x86)\Java\jre1.8.0_101\bin\java.exe" -jar ark-tools-0.0.1-SNAPSHOT.jar tamed TheCenter.ark dinos

5 minutes ago, RLH89 said:

Getting closer again: now indeed I get the following: tamed TheCenter.ark dinos
'tamed' is not recognized as an internal or external command,
operable program or batch file.

Is tamed.cmd in the same folder?

 

Link to comment
Share on other sites

Many thanks!

I got it to work with the following: 

Map: Ark-Tools containing 13 files total:
1) Map: Dinos
11) 10 files named:
animals.sh / animals.bat
wild.sh / wild.bat
tamed.sh / tamed.bat
b2j.sh / b2j.bat
j2b.sh / j2b.bat

12) File: ark-tools-0.0.1-snapshot.jar
13) File: TheCenter.ark

* Shift+Right click on the folder: Ark-Tools 

* "Open Commandprompt here...". 

* type: tamed TheCenter.ark dinos

Curious for your GUI version, good luck with that!

Link to comment
Share on other sites

Hey, Qowyn,

Thanks for all the effort you put into this.
I'm having a problem with this working with my server save file. It worked fine with an SP save with two tamed dinos.

Server file size is 225 MB. There's a few mods installed, but none of them modify dinos in any way. Here they are: http://steamcommunity.com/profiles/76561198053278697/myworkshopfiles/?browsefilter=myfavorites

This is what happens:

D:\Downloads\ark-tools>java -jar ark-tools.jar tamed TheIsland.ark dinos
Exception in thread "main" java.lang.NullPointerException
        at qowyn.ark.properties.PropertyReader.readProperty(PropertyReader.java:45)
        at qowyn.ark.structs.StructPropertyList.<init>(StructPropertyList.java:27)
        at qowyn.ark.arrays.ArkArrayStruct.<init>(ArkArrayStruct.java:26)
        at qowyn.ark.arrays.ArkArrayReader.read(ArkArrayReader.java:32)
        at qowyn.ark.properties.PropertyArray.<init>(PropertyArray.java:23)
        at qowyn.ark.properties.PropertyReader.readProperty(PropertyReader.java:59)
        at qowyn.ark.GameObject.loadProperties(GameObject.java:335)
        at qowyn.ark.ArkSavegame.readBinaryObjectProperties(ArkSavegame.java:222)
        at qowyn.ark.ArkSavegame.readBinary(ArkSavegame.java:129)
        at qowyn.ark.ArkSavegame.<init>(ArkSavegame.java:60)
        at qowyn.ark.ArkSavegame.<init>(ArkSavegame.java:46)
        at qowyn.ark.tools.AnimalListCommands.tamed(AnimalListCommands.java:78)
        at qowyn.ark.tools.App.main(App.java:30)

 

Also posted this on GitHub

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...