Jump to content
Abjab

Totally New W3D Importer and Tools for 3Dsmax

Recommended Posts

Hello there, I am currently working on a totally new set of W3D tools that will support all 3dsmax versions (yes Gmax included).

So far I got some of the tools working in latest 3dsmax 2019 release and tested in Gmax as well:

 

- W3D Flags Helper:

   This tool lets you select all nodes in scenes based on their flags as they were originally exported. That way, you can set all the flags in the renx tool so the model can be re-exported correctly.

- Textures Browser

   Let you browse, any textures in selected folder including the ones in .big, .mix, .dat and .pkg files, you can also extract them from these files.

- Big & Mix Tool

   View, extract, modify, add files from/to any C&C game's mix, big, dat, pkg files or create new package file supported by the games.

- Hierarchy Builder (work in progress)

  Lets you fully build Hierarchical Models, by selecting any w3d file, you get a list of all the possible models that can be added to it's hierarchy and so on, basically you start with the parent and add any child that are available for it, then do the same for each child, LOD, skins etc... so you can experiment building different models. It's kinda reversing the process, instead of importing the w3d files required by a certain w3d file, with this tool, you get a list of all the files that depends on this particular w3d file, so you can pick one you want to add and then get a list of any files depending on this one as well... (Kinda hard to picture it, but will try to provide some screenshots or videos soon when I get a stable version of it. Worked fine till I messed it all up... )

- W3D Importer V2.0 (work in progress)

   My latest W3D Importer, like all of the tools now imports straight from pkg, mix, big... no need to extract anything. Supports C&C Renegade, C&C Generals / Generals Zero:Hour, Earth and Beyond, Battle for Middle Earth / Battle for Middle Earth II, and probably RA3 that I haven't tested since I can't find it in my old games cds which I probably lent to a friend and never got it back...

  For hierarchical models, LOD, Skins emiters etc.. it will list any dependencies before importing a w3d file, and import every w3d files required by the model, you also have an option to search for these files before importing to make sure you have them all (if its from the original games then you have them, but for fan made stuff, at least you get a list of all the w3d models you need in order to fully import the complete hierarchy.) Some model names not always reflect their file names, so having this tool to scan your folders to find them is very useful.

 

EDITED (2019-03-05): Deleted the part where I was asking for maxscript help files, as its now irrelevant since I found a better way of making sure the scripts supports any 3ds max versions, and gets the maximum performance from each known versions to date.

 

Abjab

 

 

Edited by Abjab

Share this post


Link to post
Share on other sites

Nice to see you abjab, that's super cool news..! I have 3ds max 8 installed but don't see anything of consequence in my 3dsmax8\help\ folder. Anything it might be named? I tried maxscript, help, etc but no dice so far.

Share this post


Link to post
Share on other sites

Hello Abjab, nice to see you back in the W3D scene. For a long time we used the RenX and Max8 W3D importers around here, although Max8 has started to become obsolete as well (for some of us more so than others due to technical issues with Max8). As of recently we have W3D tools for Max2017, which is a pretty big leap as Max8 was released in ~2006, while RenX has been obsolete since 1977.

If you have not already done so, you should reach out to @jonwil to get up-to-date information of what W3D can do these days. For starters, full source code exists for the game engine, and all tools - minus W3D importer - have been rewritten from scratch or reverse engineered completely, for example we no longer use Level Edit for game logic, but use a completely new tool for this instead (which sadly does NOT support classic Renegade). I think you'd want to make sure you're aware of all those developments over the years, although the W3D format itself is still (mostly?) the same.

I am curious though, what brings you back to W3D and motivates you to work on this? For some people here this comes down to being too stubborn to let the engine go. :v

Share this post


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

Nice to see you abjab, that's super cool news..! I have 3ds max 8 installed but don't see anything of consequence in my 3dsmax8\help\ folder. Anything it might be named? I tried maxscript, help, etc but no dice so far.

HI! Thanks for looking, what about a search for *.chm in your 3dsmax folder?

Though it might not have been included with the installation, there might be some "advanced" function during the setup to select more features that are not installed by default, but I have no clue, I went from Gmax/3DSmax5 to 3dsmax 2017 so I don't know anything about versions in between. I just installed 3dsmax 2019 which like 2017 all users stuff like scripts, UI, etc. are in user's appdata\local\autodesk\3dsmax\ENU\... instead of 3dsmax root folder in program files, there's actually lots of 3dsmax paths all over the machine now. Nothing like older version that would just install by default to C:\

I have looked everywhere online for hours now, (even translated some Korean pages...) and I am stunted to see that I can't even find old cached pages of earlier maxscript docs...

Well thanks again for looking.  Its not like I totally depend on it, but I'd like to write a final fully working script that would work no matter what version the user have.

Share this post


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

Hello Abjab, nice to see you back in the W3D scene. For a long time we used the RenX and Max8 W3D importers around here, although Max8 has started to become obsolete as well (for some of us more so than others due to technical issues with Max8). As of recently we have W3D tools for Max2017, which is a pretty big leap as Max8 was released in ~2006, while RenX has been obsolete since 1977.

If you have not already done so, you should reach out to @jonwil to get up-to-date information of what W3D can do these days. For starters, full source code exists for the game engine, and all tools - minus W3D importer - have been rewritten from scratch or reverse engineered completely, for example we no longer use Level Edit for game logic, but use a completely new tool for this instead (which sadly does NOT support classic Renegade). I think you'd want to make sure you're aware of all those developments over the years, although the W3D format itself is still (mostly?) the same.

I am curious though, what brings you back to W3D and motivates you to work on this? For some people here this comes down to being too stubborn to let the engine go. :v

Hi thanks, and yeah I spoke to Jonathan. I still have lots of catching up to do, but right now my main goal is to finish/fix that latest w3d tools script I never released. Over the time I kept adding more and more stuff to it, especially  when I realized, after installing Battlefield for Middle Earth II, that it used the later w3d engine (sage) and that my importer worked well with those (after just commenting some line where it was checking the w3d model version and preventing it to import). Then, has it was getting pretty voluminous as I was implementing all the newer chunks for all the latest games using the w3d  engine, I started to rewrite the whole thing in a much better C like fashion overwriting the only working script I had at this point (yeah that was pretty dumb). And then had my son, family life and work took away most of time I had for gaming/programming. Plus the wife hated everything that had a screen, just spending 5 minutes in front of my computer would start endless arguments that lasted for days every-time. So I ended up leaving the script in a real big mess.

And as for what brought me back to this, well first of all, its winter and freezing cold here in Quebec. I am a concrete pump operator and construction is pretty quiet right now. My son is now 13, lives with his mother and I only have him on weekends, consequence, I have something I didn't had for a long time: spare time for myself. A few days ago after spending a few hours watching some videos on youtube , I see this video appears  in the suggestions: Who killed Command and Conquer (Like if the answer to that was a total mystery for anyone...), and going through the comments I spot one from Jonwil! That triggered the whole thing :) , I decided to take a look at what happened to this community and if anything was still going on. I googled "C&C W3D" and first result got me here, downloaded the launcher browsed through the forum topics a bit, and I have to say, I am pretty amazed by all the great work that has been done over the years and by projects still being worked on.

2 years ago, around the same period of the year as right now, I received a request to release  another importer for 3dsmaxI made for Omikron The Nomad Soul (Another absolute great classic game from 1999 staring David Bowie by Quantic Dream). I based that importer on my w3d-importer script and from what I learned back in the days after spending hours studying maxscript in Gmax and that one single w3d header file that Greg Heljstrom had shared to all of us with the Renegade modding tools. I knew nothing about 3d before Renegade came out, and now just opening any 3d file in an Hex-editor I can quickly spot the major components like what vertices, triangles chunks look like and etc... That is how I actually manage to reverse engineered the 3DO format (Omikron game) then I successfully decrypted the compression algorithm used in their textures file format (3DT). I just made all this stuff for my own usage just for fun, and it has now just become an habit to peek into 3d files just to see how they look like.

And now over 15 years later after I wrote my first w3d importer, I am quite surprised to see that it is still one of, if not the only way to import w3d files today. Of course thanks to Jonwil who put a lot of efforts maintaining and fixing  it, so it still can work. But that script I actually shared to Thomas Anderson before I left the Renegade modding community for good was just  a basic version of the real big gun I had that I couldn't release back then because it was making some people very mad at me and would have got me real big sh**t.. Yeah you all know of which Egocentric Assholes I am talking about. Not mentioning all the hate I was getting from the growing w3d modellers community, some very talented creators, who were just pissed by the idea of having a tool out there that could be used by anyone to "steal" their work. I could fully understand their point even though I am more of a sharer than a keeper and would actually be flattered to know that others would use my creations to learn. Hence the many tutorials I wrote for a ton of stuff over the years. Like this one I found in here for example:

 

So instead of creating any drama and risking weakening this evolving creator community I simply left and never looked back, till now...

 

But all of this is far behind now. And it is now the time to finally get this thing out once and for all, so here I am, back at it.

 

Abjab

 

Share this post


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

I used your plugin so many times... keep up a good work!

Thanks, glad to hear it, but at the same time I feel so sorry and ashamed of myself for letting you guys work with such an obsolete tool for so long while I had a much better one for myself that I wasn't even using. And worst I ended up messing it all up. So for that reason I think you guys all deserve to get what you should have had since a long time ago.

 

Share this post


Link to post
Share on other sites

One thing with the importer is that it does not handle animations very well. Do you think this could be improved? I'd love to be able to modify the source infantry animations.

 

Great to see you around. Without that importer a lot of our content would have been too hard to recreate.

 

I had MAX 2010 but sadly I've uninstalled it

Share this post


Link to post
Share on other sites
On 3/2/2019 at 11:56 AM, Abjab said:

(...)

Sorry to hear about your troubles. I guess that is one of the reasons I am still single, I do not think I can handle being told what to do outside of working hours. :v

Typically I also no not appreciate people ripping stuff and calling it their own, but the main usage of W3D importer is not to rip, it is for when your projects lost source files, so you'd have a way of retrieving 3D assets. This is very common for some of the older projects, as files do get lost over time when being handed over from one project manager to another project manager. Or sometimes an artist leaves and forgets to hand over some random files, etc.

If file security is a concern (and to me personally, it is because a lot of hours and money goes into art assets these days), the answer lies in data file encryption, so that W3D importing can still be done by people with a claim to those assets.

As for W3D importer, it is not pretty but it gets most of the job done. It typically breaks up all triangles so you have to weld everything again, this causes errors that you need to correct via applying a smoothing group. Animations also get imported per-frame, making adjusting them extremely painful. But it is good to have as an absolute backup option if you need to alter an old asset with a lost source file. :)

Share this post


Link to post
Share on other sites
9 minutes ago, Raap said:

As for W3D importer, it is not pretty but it gets most of the job done. It typically breaks up all triangles so you have to weld everything again, this causes errors that you need to correct via applying a smoothing group. Animations also get imported per-frame, making adjusting them extremely painful. But it is good to have as an absolute backup option if you need to alter an old asset with a lost source file. :)

 

Huh ? why would it break those triangles apart ?, lol I think I should have a look at this script you guys have, because originally it didn't do that, anything relating to the base geometry of the model was 100% working, also animations didn't get imported per-frame... not at all, that I know for sure, I spent so much time figuring out animations back then. I was pretty excited when I had got it to work perfectly, in fact I would import some animated models, and after just setting the flags back manually as they were exported, I could reexport the files and both w3d (original from the game and the one re-exported) would be exactly the same.

Or are you using coolfile's w3dimporter ? I heard something about his didn't support animations.

OH ! Perhaps you are talking about later Models from Generals/ZH or BFME I/II ?, Yeah those models used compressed animation if I remember correctly, and the original w3d-importer didn't support those till I re-wrote it a few years after. But as for that triangles breaking up, I've never seen anything like that happen even on those later models.

 

 

Share this post


Link to post
Share on other sites

Ohh, yeah those are both issues we have had for years. I don't have a copy of the importer we use on hand but maybe someone else can show some examples.

Share this post


Link to post
Share on other sites

But not for Renegade models, right ?

I know the version I released was limited compared to my personal version, but I don't remember making the public one that bad  before releasing it.

Anyway, its just a question of days now, I have fixed and finished writing lots of missing parts of my new scripts now and, I am attacking the importer section of it.

 

Share this post


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

×