Important information: this site is currently scheduled to go offline indefinitely by end of the year.
Researching of a .dat archive with a .mnf file.
-
- advanced
- Posts: 56
- Joined: Sun Jul 14, 2013 10:28 pm
- Has thanked: 7 times
- Been thanked: 15 times
Re: Researching of a .dat archive with a .mnf file.
Wow, I didn't know, that my topic has grown up Anyway, I've found out all of this back in June. I have even linked data from zosft (Zenimax Online Studios File Table btw) file from game000.dat with some other files from game000.dat (~1500 files), but I still don't know, how to find other filenames. Also I don't know, how to find filenames of files from eso0xxx.dat, even with zosft file. I was too busy to research more at the last weeks, but I will try more in the future. Also look at zosft file - it contains a lot of zlibed blocks.
-
- advanced
- Posts: 56
- Joined: Sun Jul 14, 2013 10:28 pm
- Has thanked: 7 times
- Been thanked: 15 times
Re: Researching of a .dat archive with a .mnf file.
just an idea: maybe they use "human readable" filenames just for files used by lua scripts/interface/xml and "internal names/indexes" for other files?
Re: Researching of a .dat archive with a .mnf file.
I don't think so. There is zosft file in eso0002.dat and it contains a lot of names of models and textures instead of scripts/xml.Lord Vaako wrote:just an idea: maybe they use "human readable" filenames just for files used by lua scripts/interface/xml and "internal names/indexes" for other files?
Re: Researching of a .dat archive with a .mnf file.
Ahh this thread seems dead
I've been looking for weeks for someone smart enough to help me create a server emulation allowing the ability
to run ESO beta locally on a private server. I thought I was the only one pokin around in the dat files. IM NOT ALONE!
Has anyone found anything related to server checks or anything? I would really like to get this up and running.
The issue I'm having is actually running the game ON the server. Your research as helped me so much! I wanna thank you for all your hard work guys
I've been looking for weeks for someone smart enough to help me create a server emulation allowing the ability
to run ESO beta locally on a private server. I thought I was the only one pokin around in the dat files. IM NOT ALONE!
Has anyone found anything related to server checks or anything? I would really like to get this up and running.
The issue I'm having is actually running the game ON the server. Your research as helped me so much! I wanna thank you for all your hard work guys
Re: Researching of a .dat archive with a .mnf file.
Well, I have unpacked encrypted launcher. Do you need it?kryptanon wrote:Ahh this thread seems dead
I've been looking for weeks for someone smart enough to help me create a server emulation allowing the ability
to run ESO beta locally on a private server. I thought I was the only one pokin around in the dat files. IM NOT ALONE!
Has anyone found anything related to server checks or anything? I would really like to get this up and running.
The issue I'm having is actually running the game ON the server. Your research as helped me so much! I wanna thank you for all your hard work guys
Re: Researching of a .dat archive with a .mnf file.
Sure! I have eso.exe disassembled but not the launcher. Do you have any reverse-engineering experience or any coding experience? We could use some help if your interested!
-
- veteran
- Posts: 114
- Joined: Fri Aug 19, 2005 4:31 pm
- Has thanked: 14 times
- Been thanked: 33 times
Re: Researching of a .dat archive with a .mnf file.
I've been looking into this as well and have come to the same results: can't find the filenames. I have been manually extracting the files though, and even though I have enough coding experience to write an unpacker myself, I don't have the time lately. I noticed Ekey and perhaps others wrote one, so if anyone would be kind enough to post their unpacker here (source would be great too!) I would be really grateful. It would make doing research on this quite a lot easier ^^
- shakotay2
- MEGAVETERAN
- Posts: 4291
- Joined: Fri Apr 20, 2012 9:24 am
- Location: Nexus, searching for Jim Kirk
- Has thanked: 1151 times
- Been thanked: 2244 times
Re: Researching of a .dat archive with a .mnf file.
Maybe I'm "off track" but this is what I found inside game0000.dat from offset 0x000E with aluigis comtype 1:Lord Vaako wrote:I did some research myself and so far I've found offsets, sizes of packed and sizes of unpacked data blocks inside game0000.dat but still can't find filenames & directory structure I suppose it should be something like EsoUI/Art/Achievements/achievements_points_legendary.dds
Code: Select all
; app UI files
EsoUI\App\LoadingScreen\LoadingScreen.lua
EsoUI\App\LoadingScreen\LoadingScreen.xml
Code: Select all
local EvtMgr = GetEventManager()
local SYSTEM_GRANULARITY = 100
local NUM_SYSTEMS = GetNumLoadingSubsystems()
local BAR_MAX = SYSTEM_GRANULARITY * NUM_SYSTEMS
local DEFAULT_TEXTURE = "EsoUI/Art/Screens/area_load.dds"
local g_loadStatus
local g_numSystemsRemaining = -1
local g_isReloadingUI
local TEXTURE_WIDTH = 1680
local TEXTURE_HEIGHT = 1050
local TEXTURE_ASPECT_RATIO = TEXTURE_WIDTH / TEXTURE_HEIGHT
local function SizeLoadingTexture()
[...]
function InitLoadScreen(self)
LoadingScreenBar:SetMinMax(0, BAR_MAX)
local r, g, b, a = GetInterfaceColor(INTERFACE_COLOR_TYPE_LOADING_SCREEN, LOADING_SCREEN_COLOR_BAR_START)
local r1, g1, b1, a1 = GetInterfaceColor(INTERFACE_COLOR_TYPE_LOADING_SCREEN, LOADING_SCREEN_COLOR_BAR_END)
LoadingScreenBar:SetGradientColors(r, g, b, a, r1, g1, b1, a1)
EvtMgr:RegisterForEvent("LoadingScreen_AreaLoadStarted", EVENT_AREA_LOAD_STARTED, OnAreaLoadStarted)
EvtMgr:RegisterForEvent("LoadingScreen_SizeLoadingTexture", EVENT_SCREEN_RESIZED, SizeLoadingTexture)
EvtMgr:RegisterForEvent("LoadingScreen_OnReloadGui", EVENT_RELOAD_GUI, OnReloadGui)
EvtMgr:RegisterForEvent("LoadingScreen_OnPrepareForJump", EVENT_PREPARE_FOR_JUMP, OnPrepareForJump)
EvtMgr:RegisterForEvent("LoadingScreen_OnJumpFailed", EVENT_JUMP_FAILED, OnJumpFailed)
local function OnSubsystemLoadComplete(eventCode, system)
UpdateLoadingBar(system, 1.0)
g_numSystemsRemaining = g_numSystemsRemaining - 1
if g_numSystemsRemaining == 0 then
OnLoadingCompleted()
end
end
EvtMgr:RegisterForEvent("LoadingScreen_OnSubsystemLoadComplete", EVENT_SUBSYSTEM_LOAD_COMPLETE, OnSubsystemLoadComplete)
SizeLoadingTexture()
end
Tuts: a) Bigchillghost, viewtopic.php?f=29&t=17889
b) Extracting simple models: http://forum.xentax.com/viewtopic.php?f=29&t=10894
"Quoting the whole thing. Would u ever stop this nonsense?"
b) Extracting simple models: http://forum.xentax.com/viewtopic.php?f=29&t=10894
"Quoting the whole thing. Would u ever stop this nonsense?"
Re: Researching of a .dat archive with a .mnf file.
shakotay2 wrote:Maybe I'm "off track" but this is what I found inside game0000.dat from offset 0x000E with aluigis comtype 1:Lord Vaako wrote:I did some research myself and so far I've found offsets, sizes of packed and sizes of unpacked data blocks inside game0000.dat but still can't find filenames & directory structure I suppose it should be something like EsoUI/Art/Achievements/achievements_points_legendary.ddsSucceeded by this data (lua-code?):Code: Select all
; app UI files EsoUI\App\LoadingScreen\LoadingScreen.lua EsoUI\App\LoadingScreen\LoadingScreen.xml
Code: Select all
local EvtMgr = GetEventManager() local SYSTEM_GRANULARITY = 100 local NUM_SYSTEMS = GetNumLoadingSubsystems() local BAR_MAX = SYSTEM_GRANULARITY * NUM_SYSTEMS local DEFAULT_TEXTURE = "EsoUI/Art/Screens/area_load.dds" local g_loadStatus local g_numSystemsRemaining = -1 local g_isReloadingUI local TEXTURE_WIDTH = 1680 local TEXTURE_HEIGHT = 1050 local TEXTURE_ASPECT_RATIO = TEXTURE_WIDTH / TEXTURE_HEIGHT local function SizeLoadingTexture() [...] function InitLoadScreen(self) LoadingScreenBar:SetMinMax(0, BAR_MAX) local r, g, b, a = GetInterfaceColor(INTERFACE_COLOR_TYPE_LOADING_SCREEN, LOADING_SCREEN_COLOR_BAR_START) local r1, g1, b1, a1 = GetInterfaceColor(INTERFACE_COLOR_TYPE_LOADING_SCREEN, LOADING_SCREEN_COLOR_BAR_END) LoadingScreenBar:SetGradientColors(r, g, b, a, r1, g1, b1, a1) EvtMgr:RegisterForEvent("LoadingScreen_AreaLoadStarted", EVENT_AREA_LOAD_STARTED, OnAreaLoadStarted) EvtMgr:RegisterForEvent("LoadingScreen_SizeLoadingTexture", EVENT_SCREEN_RESIZED, SizeLoadingTexture) EvtMgr:RegisterForEvent("LoadingScreen_OnReloadGui", EVENT_RELOAD_GUI, OnReloadGui) EvtMgr:RegisterForEvent("LoadingScreen_OnPrepareForJump", EVENT_PREPARE_FOR_JUMP, OnPrepareForJump) EvtMgr:RegisterForEvent("LoadingScreen_OnJumpFailed", EVENT_JUMP_FAILED, OnJumpFailed) local function OnSubsystemLoadComplete(eventCode, system) UpdateLoadingBar(system, 1.0) g_numSystemsRemaining = g_numSystemsRemaining - 1 if g_numSystemsRemaining == 0 then OnLoadingCompleted() end end EvtMgr:RegisterForEvent("LoadingScreen_OnSubsystemLoadComplete", EVENT_SUBSYSTEM_LOAD_COMPLETE, OnSubsystemLoadComplete) SizeLoadingTexture() end
What did you use to unpack this?
Re: Researching of a .dat archive with a .mnf file.
http://yadi.sk/d/4n_Ubuw085cTf I have some coding experience (actually I have written almost working unpacker back in june), but don't have any reverse-engineering experiencekryptanon wrote:Sure! I have eso.exe disassembled but not the launcher. Do you have any reverse-engineering experience or any coding experience? We could use some help if your interested!
It's just zlibed block from game0000.datkryptanon wrote:What did you use to unpack this?
- shakotay2
- MEGAVETERAN
- Posts: 4291
- Joined: Fri Apr 20, 2012 9:24 am
- Location: Nexus, searching for Jim Kirk
- Has thanked: 1151 times
- Been thanked: 2244 times
Re: Researching of a .dat archive with a .mnf file.
quickbms
next file is
this is the bms:
set i long 1
comtype i
set NAME string "test.txt"
#clog NAME 0 ZSIZE SIZE
#set ZSIZE long 58
#set SIZE long 100
#clog NAME 0+14 ZSIZE SIZE
# lua file
#set ZSIZE long 1682
#set SIZE long 6984
#clog NAME 58+14 ZSIZE SIZE
# xml file
set ZSIZE long 1682
set SIZE long 6984
clog NAME 1740+14 ZSIZE SIZE
(I had the first 14 bytes cut from the original game0000.dat so you'll have to add them for clogs offset.)
edit: okay, too late...
next file is
Code: Select all
<GuiXml>
<Controls>
<TopLevelControl name="LoadingScreen" mouseEnabled="true" keyboardEnabled="true">
<AnchorFill />
set i long 1
comtype i
set NAME string "test.txt"
#clog NAME 0 ZSIZE SIZE
#set ZSIZE long 58
#set SIZE long 100
#clog NAME 0+14 ZSIZE SIZE
# lua file
#set ZSIZE long 1682
#set SIZE long 6984
#clog NAME 58+14 ZSIZE SIZE
# xml file
set ZSIZE long 1682
set SIZE long 6984
clog NAME 1740+14 ZSIZE SIZE
(I had the first 14 bytes cut from the original game0000.dat so you'll have to add them for clogs offset.)
edit: okay, too late...
Tuts: a) Bigchillghost, viewtopic.php?f=29&t=17889
b) Extracting simple models: http://forum.xentax.com/viewtopic.php?f=29&t=10894
"Quoting the whole thing. Would u ever stop this nonsense?"
b) Extracting simple models: http://forum.xentax.com/viewtopic.php?f=29&t=10894
"Quoting the whole thing. Would u ever stop this nonsense?"
Re: Researching of a .dat archive with a .mnf file.
Code: Select all
; app UI files
EsoUI\App\LoadingScreen\LoadingScreen.lua
EsoUI\App\LoadingScreen\LoadingScreen.xml
Code: Select all
local EvtMgr = GetEventManager()
local SYSTEM_GRANULARITY = 100
local NUM_SYSTEMS = GetNumLoadingSubsystems()
local BAR_MAX = SYSTEM_GRANULARITY * NUM_SYSTEMS
local DEFAULT_TEXTURE = "EsoUI/Art/Screens/area_load.dds"
local g_loadStatus
local g_numSystemsRemaining = -1
local g_isReloadingUI
local TEXTURE_WIDTH = 1680
local TEXTURE_HEIGHT = 1050
local TEXTURE_ASPECT_RATIO = TEXTURE_WIDTH / TEXTURE_HEIGHT
local function SizeLoadingTexture()
[...]
function InitLoadScreen(self)
LoadingScreenBar:SetMinMax(0, BAR_MAX)
local r, g, b, a = GetInterfaceColor(INTERFACE_COLOR_TYPE_LOADING_SCREEN, LOADING_SCREEN_COLOR_BAR_START)
local r1, g1, b1, a1 = GetInterfaceColor(INTERFACE_COLOR_TYPE_LOADING_SCREEN, LOADING_SCREEN_COLOR_BAR_END)
LoadingScreenBar:SetGradientColors(r, g, b, a, r1, g1, b1, a1)
EvtMgr:RegisterForEvent("LoadingScreen_AreaLoadStarted", EVENT_AREA_LOAD_STARTED, OnAreaLoadStarted)
EvtMgr:RegisterForEvent("LoadingScreen_SizeLoadingTexture", EVENT_SCREEN_RESIZED, SizeLoadingTexture)
EvtMgr:RegisterForEvent("LoadingScreen_OnReloadGui", EVENT_RELOAD_GUI, OnReloadGui)
EvtMgr:RegisterForEvent("LoadingScreen_OnPrepareForJump", EVENT_PREPARE_FOR_JUMP, OnPrepareForJump)
EvtMgr:RegisterForEvent("LoadingScreen_OnJumpFailed", EVENT_JUMP_FAILED, OnJumpFailed)
local function OnSubsystemLoadComplete(eventCode, system)
UpdateLoadingBar(system, 1.0)
g_numSystemsRemaining = g_numSystemsRemaining - 1
if g_numSystemsRemaining == 0 then
OnLoadingCompleted()
end
end
EvtMgr:RegisterForEvent("LoadingScreen_OnSubsystemLoadComplete", EVENT_SUBSYSTEM_LOAD_COMPLETE, OnSubsystemLoadComplete)
SizeLoadingTexture()
end
Re: Researching of a .dat archive with a .mnf file.
http://yadi.sk/d/k1X6Iieg85hVl - unpacked game0000.dat (mostly with names)
Re: Researching of a .dat archive with a .mnf file.
You guys are awesome! You're really opening some doors on my research on building this thing!
I really thank you guys!
This may be a silly question. I'm no pro by any means but if I were to edit some of those .xml in game0000.dat how would I recompile that back into a .dat file? Is there any software that would do this for me?
I really thank you guys!
This may be a silly question. I'm no pro by any means but if I were to edit some of those .xml in game0000.dat how would I recompile that back into a .dat file? Is there any software that would do this for me?