Tags: Projects

Duke Nukem Forever


Duke Is Totally Takei The Duke Nukem Forever demo is out. I can't even convey how surreal it is to me to be typing those words. But anyway, I've been poking around the demo for the last couple of days, and a new version of Noesis is up now that supports extracting 5 different variants of its included .dat packages.

The picture is of the world's first (well, probably) right and proper DNF content mod, with Duke sporting his brand new Takei Pride tanktop. Noesis spits out all of the info you need to re-inject textures while it's extracting them, and I've already got a fully functional repacker that I intend to release sometime relatively soon. I've also finished hammering out the model format now, and Noesis v3.27 and later can view/export them.

Duke modelDuke model
Duke modelDuke model

The process of exporting the models is pretty simple, but requires a few steps. Here's a step by step of what you need to do.

1) Using Noesis, extract the contents SkinMshes/defs.dat, SkinMeshes/meshes.dat, and SkinMeshes/skels.def. By default, Noesis will want to extract these to separate folders. You don't want this, and instead you want to extract them all to a single folder. (e.g. "c:\steam\steamapps\common\duke nukem forever demo\SkinMeshes\allfiles")

2) Browse to the .msh of your choice in Noesis and open it.

3) If .skl or .def files cannot be found automatically you will be prompted for them. Additionally, Noesis will attempt to find MegaPackage.dat and TextureDirectory.dat relative to the path of the .msh file. If it cannot, you will be prompted for those files as well.

4) Export and enjoy. Note that materials are still a work in progress, and it can't automatically find the right materials in most cases. But certain models are working. (like Duke and one of the Holsom twins)

I've got model re-import/modification working, but the material situation limits it pretty severely. In the coming days/weeks, I'll be continuing to reverse that data and trying to figure out a reasonable process for replacing/overriding assets that doesn't involve rebuilding all of the game's packages.

Also, if you haven't heard yet, you can play the vehicle sequence in first-person. It's much nicer this way.

Update: I've successfully exported a model to COLLADA, modified it (re-weighted, added and modified geometry, modified the texture), re-exported it to .msh using my in-progress Noesis exporter, and got it to load in the demo. Have a look:



Wait for the scene with the twins.
Share:


Comments

129 comments in total.
Post a comment

IP: 87.194.118.1

(GIT)r-man

June 27, 2011 at 1:36 pm (CST)
Any luck exporting the anim files into a usable format?


IP: 68.0.165.94

Rich Whitehouse

June 26, 2011 at 9:26 pm (CST)
So, there's really no good place to intercept file read requests (and to be able to have a good idea about which package you're reading, and what the name of the file being read from the package is) for all of the different package types, and they tend to come from numerous different modules. But there is a central place to pretty easily intercept file open (for the main packages/maps/etc.) requests. So I think it's going to go something like:

1) Mod author uses my "mod packager" tool to package a custom mod file, which contains whatever asset overrides/additions they want to have in effect.
2) User uses my "mod launcher" tool with the mod package, which does some stuff, and launches the game with those overrides/additions in place.

And that's it as far as other people are concerned. But the "stuff" done in step 2 is going to get kind of complicated. What I'll be doing is:

1) Analyze the mod package, and rebuild sound, texture, etc. directories in a special throwaway/cache-only folder. This will also require files like MegaPackage.dat and meshes.dat to be rebuilt entirely with each mod load, if the mod touches anything in those files.
2) For textures, a new data file will be created for all mod-related content (ModContent.dat in the textures/compiled directory, probably), and the custom directory constructed at load time will point to that for all texture additions/overrides. The custom data file will get stomped each time a new mod is loaded.
3) Load the game executable, while stomping over its dnCommon.dll dependency to point at my own dnCommon wrapper DLL. (or something like this, cross-DLL dependencies will make it a bit messier than that)
4) Tell the dnCommon wrapper which files the active mod overrides, and have its file open redirect to those reconstructed files/directories where applicable. (texture directories, meshes, the megapackage, etc.)

The good thing is that even though this can require building a new meshes.dat on mod load, it doesn't involve rebuilding too many particularly large files, like the actual texture data, and of course, it doesn't involved modifying any core files.

Overall, this is a big pain in the ass to implement, though, so it'll probably be another few days at minimum. I may need to take a break to work on a quick contract project for a friend, too, not sure about that yet. (implementing proper stereoscopic rendering for a virtual mechanical-monkey-arm platform) This is the first time since Friday that I've actually sat down and looked at DNF again, actually, I have to admit. I've been busy with other things, like alcohol-fueled gaming binges.


IP: 184.98.4.60

AesPir

June 26, 2011 at 12:19 am (CST)
Fair enough. Didn't know what they said to you so was just going off what it looked like. =)


IP: 68.0.165.94

Rich Whitehouse

June 25, 2011 at 7:23 pm (CST)
No, I have no idea what their plans are for releases, and wouldn't infer anything there just from the fact that they haven't completely ignored me or told me to fuck off. ;)


IP: 184.98.4.60

AesPir

June 25, 2011 at 6:26 pm (CST)
Hmm. Does that mean they aren't going to be releasing something themselves sometime soon then? That's okay. I'm glad to hear it sounds like they are willing to work with you.


IP: 72.153.123.239

Snake Plissken

June 25, 2011 at 12:26 am (CST)
and one more question lol. my bad its just.. you seem so informed on the manner...(theres littil knowlege base on the topic, you and your website here seem to be the most of it)

how do you extract from the SoundDir.dat and the sound.dat ? i cant seem to figure it out... you couldnt help me out by any chance could ya...


IP: 72.153.123.239

Snake Plissken

June 25, 2011 at 10:35 am (CST)
by any means... ANY.... how can i view these models in game animations. where is the data stored that defines there animiations that you see when in game... and by any means.. how can i view it outside of, playing the game...


IP: 72.153.123.239

Snake Plissken

June 25, 2011 at 10:12 am (CST)
man.. still trying to figure out how to get this first person driveing to work on DNF. for the ps3 version. there is no consol so it would have to be done a littil diffrent, backing the game up i can have acsess to the games file structure, but looking at these files, i belive to achive what i want to see i need to gain acsess to thee dngame.u and engine.u, lol. odd... my clerince code so the blog knows im not a spammer was "humping jesus"

well i dont have terminal so i cant impose change, these files would have to be edited with in the vichialPOV duration of the scripts. well it seems after a .u file has be compiled, its kinda triky to at this point edit the file or impose change. i was told that i could open it up with unrealED the .u file. but every where i go they tell me that the UDK IS unrealED. and i cant find a option to present view or edit a .u file in any manner with the Unreal Development Kit.
perhaps you can help me out? or correct me if im wrong?


IP: 68.0.165.94

Rich Whitehouse

June 24, 2011 at 8:03 pm (CST)
I got a reply on my last e-mail yesterday, actually. They're still being pretty good about communicating with me and will hopefully be cooperating with me on getting a better mod-loading solution up and running as well. Things are just rather slow-going on the back and forth, which is understandable. For now, I have more drinking and Contra waiting for me.


IP: 184.98.4.60

AesPir

June 24, 2011 at 7:05 pm (CST)
Hoping no news from Gearbox is good news, lol.


Comment Pages:
Previous ... 1 2 3 4 5 6 [7] 8 9 10 11 12 13 ... Next


Post a comment

Name:


Enter the following (refresh if you can't read it):
Read image


Comment:





2612114 page hits since February 11, 2009.

Site design and contents (c) 2009 Rich Whitehouse. Except those contents which happen to be images or screenshots containing shit that is (c) someone/something else entirely. That shit isn't really mine. Fair use though! FAIR USE!
All works on this web site are the result of my own personal efforts, and are not in any way supported by any given company. You alone are responsible for any damages which you may incur as a result of this web site or files related to this web site.