Jump to content

ARK Tools v0.6.4 - tools for reading and manipulating ark savegame files


Recommended Posts

  • 1 month later...
  • Replies 369
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

Lost a dino and you can't find it? Want to see if it is still alive at all? Or maybe you are a server admin and want your players to be able to look for this info themselves, maybe even give them a li

Aaaand thanks to 259.0 we have a new release, 0.5.3 Changelog: Experimental support for new savegame format version 7

0.6.0 Release! Changelog: Added (still incomplete) Database driver system Replaced javax.json with Jackson, massive performance improvements for mapToJson command (other commands ben

Posted Images

  

On 3/2/2020 at 10:08 AM, McBane said:

Alternatively, you can try to compile it yourself

Hmm...OK. I nearly have no knowledge about Java. Everything I've done so far with this was trial and error + knowledge of script languages in general.
If you still have issues, you can try to build it yourself:

 

By the way, when exporting tamed dinos with --include-untameable --statistics --write-all-fields, I don't see flags for dinos, that have mating active and I miss a flag for walking active. I see, however, "isWakingTame" and "matingProgress" but those are something else I think?

Any change, we can get those values? :)

Cheers

Link to post
Share on other sites
  • 4 weeks later...
  • 2 weeks later...
On 9/28/2018 at 5:38 PM, nakormah said:

Error generated:

ark-tools j2m Ragnarok.json Ragnarok.ark
java.lang.NullPointerException
        at qowyn.ark.properties.PropertyBase.<init>(PropertyBase.java:36)
        at qowyn.ark.properties.PropertyUnknown.<init>(PropertyUnknown.java:23)
        at qowyn.ark.properties.PropertyRegistry.readJson(PropertyRegistry.java:68)
        at java.util.stream.ReferencePipeline$3$1.accept(Unknown Source)
        at java.util.Iterator.forEachRemaining(Unknown Source)
        at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Unknown Source)
        at java.util.stream.AbstractPipeline.copyInto(Unknown Source)
        at java.util.stream.AbstractPipeline.wrapAndCopyInto(Unknown Source)
        at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(Unknown Source)
        at java.util.stream.AbstractPipeline.evaluate(Unknown Source)
        at java.util.stream.ReferencePipeline.collect(Unknown Source)
        at qowyn.ark.structs.StructPropertyList.<init>(StructPropertyList.java:44)
        at qowyn.ark.structs.StructRegistry.readJson(StructRegistry.java:59)
        at qowyn.ark.arrays.ArkArrayStruct.<init>(ArkArrayStruct.java:65)
        at qowyn.ark.arrays.ArkArrayRegistry.readJson(ArkArrayRegistry.java:52)
        at qowyn.ark.properties.PropertyArray.<init>(PropertyArray.java:59)
        at qowyn.ark.properties.PropertyRegistry.readJson(PropertyRegistry.java:68)
        at qowyn.ark.GameObject.readJson(GameObject.java:207)
        at qowyn.ark.GameObject.<init>(GameObject.java:73)
        at qowyn.ark.ArkSavegame.readJsonObjects(ArkSavegame.java:747)
        at qowyn.ark.ArkSavegame.readJson(ArkSavegame.java:679)
        at qowyn.ark.tools.ConvertingCommands.fromJson(ConvertingCommands.java:121)
        at qowyn.ark.tools.ConvertingCommands.jsonToMap(ConvertingCommands.java:28)
        at qowyn.ark.tools.App.main(App.java:125)

Today (nearly 2 years after your post) I got the exact same error message when trying to convert my ragnarok.json back to .ark

Does anyone have a fix yet? Or is ark-tools simply broken?

 

Link to post
Share on other sites
10 hours ago, Amris said:

Today (nearly 2 years after your post) I got the exact same error message when trying to convert my ragnarok.json back to .ark

Does anyone have a fix yet? Or is ark-tools simply broken?

 

I gave it another try and used jdk 14.0.1 java for ark-tools instead of jre 1.8.0_251 java but the error message stayed exactly the same. So the jdk is not a solution.

It's too bad really. It was a great work by Qowyn. And the converting .ark to .json - part of ark-tools works fine.

EDIT: I also now tried converting the ragnarok savegame without any mods because I wanted to find out whether the mods are the problem. Alas no, same result: ark- tools nicely converted the ragnarok.ark (without mods) to ragnarok.json. But when trying to convert the (unedited) file back to .json I got the exact same error messages as with mods. The same message as in my last post.

Anyone know another converter .json to .ark?

Edited by Amris
Tested more and included results here.
Link to post
Share on other sites
  • 4 weeks later...
  • 1 month later...

Thank you for the tool!

I tried to recover a single item from an old savegame (Cryopod with my LvL 278 Reaper King) but without luck ... either the ark save file structure is a complete mess or the converted JSON is ...

I tried to simply replace one Item in my current inventory with the Item from the old save file (by using the same ID but with the copy-pasted item data aka cryopod with Reaper King) but I only end up with the Item Slot (where I expect the Cryopod instead of the overwritten item) being empty and unusable (as if the Item Slot is "locked" but it does look like any other Item Slot ...).

 

Cool tool but I bet the .ark files are a complete mess and you can't do anything about it ...

 

EDIT: SUCCESS !!!

Both the Item and the Inventory in which the Item is stored reference each other, guide:

Spoiler

 

 

Edited by invincibleqc
Link to post
Share on other sites
  • 2 weeks later...
  • 1 month later...
  • 5 months later...

I'm sorry to reply to this old thread but i need a quik hand from someone more skilled than me with coding ( =0 )
I had an issue in ASM with rollback fo my maps cluster and now 2 of them show "day 0". No way to restore old situation. I've downloaded ark-tools, converted .ark into .json and opened in Npp (4 minutes on 32gig :D ). now, i see in the very first line a variable named "gametime", i think is that value that i had to change, but is a bit uncomparable with normal days. I've opened a working .ark to learn how must be a working file and show a value of 2013066.4 compared to a generic day 560. These are...what? minutes ingame? a unlinked variable? Someone maybe has info that i'm searching...that would be much apprecciated

 

Link to post
Share on other sites
  • Volunteer Moderator
6 minutes ago, Dr4g0n36 said:

I'm sorry to reply to this old thread but i need a quik hand from someone more skilled than me with coding ( =0 )
I had an issue in ASM with rollback fo my maps cluster and now 2 of them show "day 0". No way to restore old situation. I've downloaded ark-tools, converted .ark into .json and opened in Npp (4 minutes on 32gig :D ). now, i see in the very first line a variable named "gametime", i think is that value that i had to change, but is a bit uncomparable with normal days. I've opened a working .ark to learn how must be a working file and show a value of 2013066.4 compared to a generic day 560. These are...what? minutes ingame? a unlinked variable? Someone maybe has info that i'm searching...that would be much apprecciated

 

Don't change that! This is the internal timestamp, and will mess a lot of stuff that relies on it if you do. If the issue is just that your in-game day was reset to zero, you can simply use the following admin command to set it to whatever you want:

admincheat setday 123

 

Link to post
Share on other sites
1 minute ago, invincibleqc said:

Don't change that! This is the internal timestamp, and will mess a lot of stuff that relies on it if you do. If the issue is just that your in-game day was reset to zero, you can simply use the following admin command to set it to whatever you want:


admincheat setday 123

 

Oh, didn't know that command, thanks! i'll try soon

Link to post
Share on other sites
1 hour ago, invincibleqc said:

Don't change that! This is the internal timestamp, and will mess a lot of stuff that relies on it if you do. If the issue is just that your in-game day was reset to zero, you can simply use the following admin command to set it to whatever you want:



admincheat setday 123

 

Command return data, on RCON without admincheat, but that's result, just after pressing enter:
 

VERSION: 326.8 
KERNELBASE.dll!UnknownFunction (0x00007ffec73a4b59) + 0 bytes [UnknownFile:0]
ShooterGameServer.exe!FOutputDeviceWindowsError::Serialize() (0x00007ff76cf36d43) + 0 bytes [e:\build\live326\engine\source\runtime\core\private\windows\windowsplatformoutputdevices.cpp:95]
ShooterGameServer.exe!FError::LowLevelFatal() (0x00007ff76cf0d0e6) + 0 bytes [e:\build\live326\engine\source\runtime\core\private\misc\outputdevice.cpp:354]
ShooterGameServer.exe!UObject::FindFunctionChecked() (0x00007ff76cf81273) + 93 bytes [e:\build\live326\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:805]
ShooterGameServer.exe!APlayerController::ClientMessage() (0x00007ff76d8fc11b) + 18 bytes [e:\build\live326\projects\shootergame\intermediate\build\win64\shootergameserver\inc\engine\engine.generated.1.cpp:2694]
ShooterGameServer.exe!UShooterCheatManager::SetDay() (0x00007ff76be4f3c4) + 112 bytes [e:\build\live326\projects\shootergame\source\shootergame\private\shootercheatmanager.cpp:5539]
ShooterGameServer.exe!UShooterCheatManager::execSetDay() (0x00007ff76c8e071e) + 110 bytes [e:\build\live326\projects\shootergame\source\shootergame\classes\shootercheatmanager.h:68]
ShooterGameServer.exe!UFunction::Invoke() (0x00007ff76cf62cfe) + 19 bytes [e:\build\live326\engine\source\runtime\coreuobject\private\uobject\class.cpp:3822]
ShooterGameServer.exe!UObject::ProcessEvent() (0x00007ff76cf8d70c) + 0 bytes [e:\build\live326\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:931]
ShooterGameServer.exe!UObject::CallFunctionByNameWithArguments() (0x00007ff76cf7da55) + 0 bytes [e:\build\live326\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:762]
ShooterGameServer.exe!UObject::ProcessConsoleExec() (0x00007ff76b534efe) + 0 bytes [e:\build\live326\engine\source\runtime\coreuobject\public\uobject\uobject.h:820]
ShooterGameServer.exe!RCONClientConnection::ProcessRCONPacket() (0x00007ff76bd3e36d) + 0 bytes [e:\build\live326\projects\shootergame\source\shootergame\private\rconserver.cpp:127]
ShooterGameServer.exe!RCONClientConnection::Tick() (0x00007ff76bd3f5b9) + 0 bytes [e:\build\live326\projects\shootergame\source\shootergame\private\rconserver.cpp:104]
ShooterGameServer.exe!URCONServer::Tick() (0x00007ff76bd3f789) + 0 bytes [e:\build\live326\projects\shootergame\source\shootergame\private\rconserver.cpp:324]
ShooterGameServer.exe!AShooterGameMode::Tick() (0x00007ff76bf79653) + 0 bytes [e:\build\live326\projects\shootergame\source\shootergame\private\shootergamemode.cpp:4887]
ShooterGameServer.exe!AActor::TickActor() (0x00007ff76d3bcd6e) + 0 bytes [e:\build\live326\engine\source\runtime\engine\private\actor.cpp:783]
ShooterGameServer.exe!FActorTickFunction::ExecuteTick() (0x00007ff76d3a4a7d) + 30 bytes [e:\build\live326\engine\source\runtime\engine\private\actor.cpp:148]
ShooterGameServer.exe!TGraphTask<FTickTaskSequencer::FTickFunctionTask>::ExecuteTask() (0x00007ff76d63b926) + 31 bytes [e:\build\live326\engine\source\runtime\core\public\async\taskgraphinterfaces.h:871]
ShooterGameServer.exe!FNamedTaskThread::ProcessTasksNamedThread() (0x00007ff76ceac7fd) + 0 bytes [e:\build\live326\engine\source\runtime\core\private\async\taskgraph.cpp:939]
ShooterGameServer.exe!FNamedTaskThread::ProcessTasksUntilQuit() (0x00007ff76ceac90e) + 0 bytes [e:\build\live326\engine\source\runtime\core\private\async\taskgraph.cpp:680]
ShooterGameServer.exe!FTaskGraphImplementation::WaitUntilTasksComplete() (0x00007ff76ceb8669) + 0 bytes [e:\build\live326\engine\source\runtime\core\private\async\taskgraph.cpp:1777]
ShooterGameServer.exe!FTickTaskSequencer::ReleaseTickGroup() (0x00007ff76d64fb55) + 0 bytes [e:\build\live326\engine\source\runtime\engine\private\ticktaskmanager.cpp:205]
ShooterGameServer.exe!FTickTaskManager::RunTickGroup() (0x00007ff76d6539c2) + 0 bytes [e:\build\live326\engine\source\runtime\engine\private\ticktaskmanager.cpp:867]
ShooterGameServer.exe!UWorld::Tick() (0x00007ff76d4fd715) + 20 bytes [e:\build\live326\engine\source\runtime\engine\private\leveltick.cpp:1209]
ShooterGameServer.exe!UGameEngine::Tick() (0x00007ff76d49a11f) + 0 bytes [e:\build\live326\engine\source\runtime\engine\private\gameengine.cpp:1173]
ShooterGameServer.exe!FEngineLoop::Tick() (0x00007ff76b532b2c) + 0 bytes [e:\build\live326\engine\source\runtime\launch\private\launchengineloop.cpp:2432]
ShooterGameServer.exe!GuardedMain() (0x00007ff76b52f65d) + 0 bytes [e:\build\live326\engine\source\runtime\launch\private\launch.cpp:140]
ShooterGameServer.exe!GuardedMainWrapper() (0x00007ff76b52f6ba) + 5 bytes [e:\build\live326\engine\source\runtime\launch\private\windows\launchwindows.cpp:125]
ShooterGameServer.exe!WinMain() (0x00007ff76b53319c) + 17 bytes [e:\build\live326\engine\source\runtime\launch\private\windows\launchwindows.cpp:213]
ShooterGameServer.exe!__tmainCRTStartup() (0x00007ff76e34ad0d) + 21 bytes [f:\dd\vctools\crt\crtw32\dllstuff\crtexe.c:618]
KERNEL32.DLL!UnknownFunction (0x00007ffec7ba7034) + 0 bytes [UnknownFile:0]
ntdll.dll!UnknownFunction (0x00007ffec9b82651) + 0 bytes [UnknownFile:0]
ntdll.dll!UnknownFunction (0x00007ffec9b82651) + 0 bytes [UnknownFile:0]

It reboot on day 0 and after a minute change back on day 560 (command was "admincheat setday 9450)

Edited by Dr4g0n36
Link to post
Share on other sites
  • Volunteer Moderator
15 hours ago, Dr4g0n36 said:

Command return data, on RCON without admincheat, but that's result, just after pressing enter:
 


VERSION: 326.8 
KERNELBASE.dll!UnknownFunction (0x00007ffec73a4b59) + 0 bytes [UnknownFile:0]
ShooterGameServer.exe!FOutputDeviceWindowsError::Serialize() (0x00007ff76cf36d43) + 0 bytes [e:\build\live326\engine\source\runtime\core\private\windows\windowsplatformoutputdevices.cpp:95]
ShooterGameServer.exe!FError::LowLevelFatal() (0x00007ff76cf0d0e6) + 0 bytes [e:\build\live326\engine\source\runtime\core\private\misc\outputdevice.cpp:354]
ShooterGameServer.exe!UObject::FindFunctionChecked() (0x00007ff76cf81273) + 93 bytes [e:\build\live326\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:805]
ShooterGameServer.exe!APlayerController::ClientMessage() (0x00007ff76d8fc11b) + 18 bytes [e:\build\live326\projects\shootergame\intermediate\build\win64\shootergameserver\inc\engine\engine.generated.1.cpp:2694]
ShooterGameServer.exe!UShooterCheatManager::SetDay() (0x00007ff76be4f3c4) + 112 bytes [e:\build\live326\projects\shootergame\source\shootergame\private\shootercheatmanager.cpp:5539]
ShooterGameServer.exe!UShooterCheatManager::execSetDay() (0x00007ff76c8e071e) + 110 bytes [e:\build\live326\projects\shootergame\source\shootergame\classes\shootercheatmanager.h:68]
ShooterGameServer.exe!UFunction::Invoke() (0x00007ff76cf62cfe) + 19 bytes [e:\build\live326\engine\source\runtime\coreuobject\private\uobject\class.cpp:3822]
ShooterGameServer.exe!UObject::ProcessEvent() (0x00007ff76cf8d70c) + 0 bytes [e:\build\live326\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:931]
ShooterGameServer.exe!UObject::CallFunctionByNameWithArguments() (0x00007ff76cf7da55) + 0 bytes [e:\build\live326\engine\source\runtime\coreuobject\private\uobject\scriptcore.cpp:762]
ShooterGameServer.exe!UObject::ProcessConsoleExec() (0x00007ff76b534efe) + 0 bytes [e:\build\live326\engine\source\runtime\coreuobject\public\uobject\uobject.h:820]
ShooterGameServer.exe!RCONClientConnection::ProcessRCONPacket() (0x00007ff76bd3e36d) + 0 bytes [e:\build\live326\projects\shootergame\source\shootergame\private\rconserver.cpp:127]
ShooterGameServer.exe!RCONClientConnection::Tick() (0x00007ff76bd3f5b9) + 0 bytes [e:\build\live326\projects\shootergame\source\shootergame\private\rconserver.cpp:104]
ShooterGameServer.exe!URCONServer::Tick() (0x00007ff76bd3f789) + 0 bytes [e:\build\live326\projects\shootergame\source\shootergame\private\rconserver.cpp:324]
ShooterGameServer.exe!AShooterGameMode::Tick() (0x00007ff76bf79653) + 0 bytes [e:\build\live326\projects\shootergame\source\shootergame\private\shootergamemode.cpp:4887]
ShooterGameServer.exe!AActor::TickActor() (0x00007ff76d3bcd6e) + 0 bytes [e:\build\live326\engine\source\runtime\engine\private\actor.cpp:783]
ShooterGameServer.exe!FActorTickFunction::ExecuteTick() (0x00007ff76d3a4a7d) + 30 bytes [e:\build\live326\engine\source\runtime\engine\private\actor.cpp:148]
ShooterGameServer.exe!TGraphTask<FTickTaskSequencer::FTickFunctionTask>::ExecuteTask() (0x00007ff76d63b926) + 31 bytes [e:\build\live326\engine\source\runtime\core\public\async\taskgraphinterfaces.h:871]
ShooterGameServer.exe!FNamedTaskThread::ProcessTasksNamedThread() (0x00007ff76ceac7fd) + 0 bytes [e:\build\live326\engine\source\runtime\core\private\async\taskgraph.cpp:939]
ShooterGameServer.exe!FNamedTaskThread::ProcessTasksUntilQuit() (0x00007ff76ceac90e) + 0 bytes [e:\build\live326\engine\source\runtime\core\private\async\taskgraph.cpp:680]
ShooterGameServer.exe!FTaskGraphImplementation::WaitUntilTasksComplete() (0x00007ff76ceb8669) + 0 bytes [e:\build\live326\engine\source\runtime\core\private\async\taskgraph.cpp:1777]
ShooterGameServer.exe!FTickTaskSequencer::ReleaseTickGroup() (0x00007ff76d64fb55) + 0 bytes [e:\build\live326\engine\source\runtime\engine\private\ticktaskmanager.cpp:205]
ShooterGameServer.exe!FTickTaskManager::RunTickGroup() (0x00007ff76d6539c2) + 0 bytes [e:\build\live326\engine\source\runtime\engine\private\ticktaskmanager.cpp:867]
ShooterGameServer.exe!UWorld::Tick() (0x00007ff76d4fd715) + 20 bytes [e:\build\live326\engine\source\runtime\engine\private\leveltick.cpp:1209]
ShooterGameServer.exe!UGameEngine::Tick() (0x00007ff76d49a11f) + 0 bytes [e:\build\live326\engine\source\runtime\engine\private\gameengine.cpp:1173]
ShooterGameServer.exe!FEngineLoop::Tick() (0x00007ff76b532b2c) + 0 bytes [e:\build\live326\engine\source\runtime\launch\private\launchengineloop.cpp:2432]
ShooterGameServer.exe!GuardedMain() (0x00007ff76b52f65d) + 0 bytes [e:\build\live326\engine\source\runtime\launch\private\launch.cpp:140]
ShooterGameServer.exe!GuardedMainWrapper() (0x00007ff76b52f6ba) + 5 bytes [e:\build\live326\engine\source\runtime\launch\private\windows\launchwindows.cpp:125]
ShooterGameServer.exe!WinMain() (0x00007ff76b53319c) + 17 bytes [e:\build\live326\engine\source\runtime\launch\private\windows\launchwindows.cpp:213]
ShooterGameServer.exe!__tmainCRTStartup() (0x00007ff76e34ad0d) + 21 bytes [f:\dd\vctools\crt\crtw32\dllstuff\crtexe.c:618]
KERNEL32.DLL!UnknownFunction (0x00007ffec7ba7034) + 0 bytes [UnknownFile:0]
ntdll.dll!UnknownFunction (0x00007ffec9b82651) + 0 bytes [UnknownFile:0]
ntdll.dll!UnknownFunction (0x00007ffec9b82651) + 0 bytes [UnknownFile:0]

It reboot on day 0 and after a minute change back on day 560 (command was "admincheat setday 9450)

Tried the in-game console while being authenticated as admin instead? There may be an issue using it via RCON. At least, granted I haven't using that command recently, it worked perfectly for me in the past.

Link to post
Share on other sites
  • 2 weeks later...
  • 4 weeks later...
Posted (edited)
Hi, I have a problem, I hope they help me in advance, thank you very much
I was playing quiet on my dedicated servers with my brother and was curious about the primitive dlc
I installed it and I did not like it when I returned to the game I wanted to remove my mantis or the giganotos from the pillar and I have them blocked how can I do help me please
pos data I can't open the arktool
Edited by kronen19
misspelled
Link to post
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...