Hafen-Res : .res file parser from Appdata with a change log

Forum for alternative clients, mods & discussions on the same.

Hafen-Res : .res file parser from Appdata with a change log

Postby Girth » Mon May 11, 2026 6:45 pm

hafen res files. where is the repo, loftar?

I'm making a custom client and got tired of guessing at whatever ideas loftar has about how a log should be placed on the ground.
In the pursuit of trying to find resources for this I found out that everyone has been begging for some sort of resource repo. the evident resting issue, according to loftar, is that the modders are not tracking versions.
I think that the problem is deeper. Without "seeing" the object in game, you cannot write code for it because you know nothing about it and can only make guesses. All res repos created by users for reference are subject to drift, and most are not shared. I believe that it is loftar's role to at least offer us the current version so that developers do not have to wait for user reports such as "I crash when a troll appears"

Regardless, I've vibe-coded this little tool in Rust that accepts 3 types of files, and can accept individual files or entire directories, while preserving structure:
Raw .res files (downloaded mirrors, shared repos)
.cached files (the official client's FileCache extension)
HashDirCache-wrapped .0/.1/.2 files (the format used at %APPDATA%\Haven and Hearth\data\ on Windows and ~/.haven/data/ on Linux)

After the initial scan is complete, future scans are near instant and will produce a changelog in .hafen-extract. keep in mind that you still need to see or interact with the thing in order to obtain its data

https://github.com/ancientchina/hafen-res

I'm not a software developer and I offer my apologies from any resultant misunderstandings, but I hope that this tool helps anyone at all in the future.


With enough playtime, you could possibly capture every conceivable asset file that the Haven server can give you.

the tool also captures player made paintings that you have seen before, naturally.
crafting recipes are dished out in packets instead of res files so I'll have to work out how to cache these client-side.
another stupid day of my worthless hermit life
User avatar
Girth
 
Posts: 53
Joined: Sun Jan 19, 2025 6:30 pm

Return to The Wizards' Tower

Who is online

Users browsing this forum: Claude [Bot] and 52 guests