The Forum is up for sale: XeNTaX Forum looking for new owner
Unreal 1998 beta (PC) .u [oldunreal.com beat me to it]
-
Darkfox
- VVIP member

- Posts: 688
- Joined: Fri Jul 04, 2003 6:11 pm
- Has thanked: 33 times
- Been thanked: 16 times
Unreal 1998 beta (PC) .u [oldunreal.com beat me to it]
This is from an earlier Unreal I .u datafile that seems to use a much older form of encryption. My major interest is more so the script data since some things got left out. This is just the Engine.u but it should give a decent idea. No modern extractors are compatible. A look through gives me an idea that there are not major differences in the formats.
Edit: Is there a possibility to convert to the standard U1 format? Or dump texture, sound, and script data as Unreal 3D models, unreal scripts, and the like?
Edit: Is there a possibility to convert to the standard U1 format? Or dump texture, sound, and script data as Unreal 3D models, unreal scripts, and the like?
You do not have the required permissions to view the files attached to this post.
Last edited by Darkfox on Sat May 30, 2009 6:51 pm, edited 1 time in total.
-
Darkfox
- VVIP member

- Posts: 688
- Joined: Fri Jul 04, 2003 6:11 pm
- Has thanked: 33 times
- Been thanked: 16 times
Re: Unreal 1998 beta (PC) .u
I've found out how to rip the scripts with a hex editor (no text compression) but texture extraction doesn't work... and the UnrealEd that comes with the beta just crashes when it opens. Added to this no newer UnrealED works with the older files.
It is as I thought, there are no tools available it seems to read this far back. O_o
It is as I thought, there are no tools available it seems to read this far back. O_o
-
Darkstar
- advanced
- Posts: 67
- Joined: Thu Jun 14, 2007 1:14 pm
- Location: Southern Germany
- Has thanked: 7 times
- Been thanked: 1 time
- Contact:
Re: Unreal 1998 beta (PC) .u
Have you tried the UTPAS delphi package library?
http://www.acordero.org/prog_proj_UTPDL_Download.html
This is an open source .pas library to open/parse/identify various (older) UT engine files
--Darkstar
http://www.acordero.org/prog_proj_UTPDL_Download.html
This is an open source .pas library to open/parse/identify various (older) UT engine files
--Darkstar
Check out the REWiki!
-
Darkstar
- advanced
- Posts: 67
- Joined: Thu Jun 14, 2007 1:14 pm
- Location: Southern Germany
- Has thanked: 7 times
- Been thanked: 1 time
- Contact:
Re: Unreal 1998 beta (PC) .u
The .pas file should work with Unreal (not UT) as well. It seems that only the native functions for U1 have not been generated.
My Pascal skills are also not very fresh anymore, but I guess you could use the source as a reference for the file format and whip up your own exporter or something.
I might take a look at this as soon as I'm back at home at my own computer where I have FreePascal installed.
-Darkstar
My Pascal skills are also not very fresh anymore, but I guess you could use the source as a reference for the file format and whip up your own exporter or something.
I might take a look at this as soon as I'm back at home at my own computer where I have FreePascal installed.
-Darkstar
Check out the REWiki!
-
Darkfox
- VVIP member

- Posts: 688
- Joined: Fri Jul 04, 2003 6:11 pm
- Has thanked: 33 times
- Been thanked: 16 times
Re: Unreal 1998 beta (PC) .u
The problem is that there is a development gap between Unreal and the Unreal beta formats. They are too different by a certain amount of bytes that makes them unreadable to each other.
Either:
A) A means to convert between the versions of the u/utx/umx files
or
B) A means to read and export data from the older u/utx/umx files. They are all the same format, just hold different data.
I've been working on "A" with little to no success. Like filling in areas with the data from a U1 .u with it's equal in U1B only resulting in a crash.
Either:
A) A means to convert between the versions of the u/utx/umx files
or
B) A means to read and export data from the older u/utx/umx files. They are all the same format, just hold different data.
I've been working on "A" with little to no success. Like filling in areas with the data from a U1 .u with it's equal in U1B only resulting in a crash.
-
Darkfox
- VVIP member

- Posts: 688
- Joined: Fri Jul 04, 2003 6:11 pm
- Has thanked: 33 times
- Been thanked: 16 times
Re: Unreal 1998 beta (PC) .u
The format has various differences from it's final counterpart that makes them incompatible with one another. I know I've established that... but what seems to be the same is the overall structure. If I'm not mistaken. Perhaps the final U1 format had more put into it or some needless things were removed? Not sure but I certainly still can't open it after several conversion attempts.
Re: Unreal 1998 beta (PC) .u
Best bet would be to look at how the beta executable loads this data.Darkfox wrote:Sorry to bump again but has there been any progress on the U1 beta format?
https://blog.gib.me/
Don't ask me about localization tools; if you don't have the resources to develop them yourself you don't need them.
Don't ask me about localization tools; if you don't have the resources to develop them yourself you don't need them.
-
Darkfox
- VVIP member

- Posts: 688
- Joined: Fri Jul 04, 2003 6:11 pm
- Has thanked: 33 times
- Been thanked: 16 times
Re: Unreal 1998 beta (PC) .u
Ok, I'm able to extract textures and scripts and sounds. Perhaps even music.
The last step is... extracting LODMeshes...
Apparently 1998 .u files do not compress data so perhaps one could make a file ripper?
The last step is... extracting LODMeshes...
Apparently 1998 .u files do not compress data so perhaps one could make a file ripper?
-
Darkfox
- VVIP member

- Posts: 688
- Joined: Fri Jul 04, 2003 6:11 pm
- Has thanked: 33 times
- Been thanked: 16 times
Re: Unreal 1998 beta (PC) .u
Here's the main UnrealI.u
UnrealI.u
And here are some mesh samples to get an idea of the format. I'm trying hard to export the data and animation .3D files from Unreal Beta
Example Meshes
One of the mesh files I'm trying to get to is ChameleonM from the beta UnrealI.u.
UnrealI.u
And here are some mesh samples to get an idea of the format. I'm trying hard to export the data and animation .3D files from Unreal Beta
Example Meshes
One of the mesh files I'm trying to get to is ChameleonM from the beta UnrealI.u.
-
Darkstar
- advanced
- Posts: 67
- Joined: Thu Jun 14, 2007 1:14 pm
- Location: Southern Germany
- Has thanked: 7 times
- Been thanked: 1 time
- Contact:
Re: Unreal 1998 beta (PC) .u
Wow, this is hard. The file formats seem to lack any common identifier, so it's nearly impossible to find them inside the *.u file. The newer Unreal games work with an internal Virtual Machine (similar to Java), and the file formats are just the dumped internal state of the VM clases. But even they have identifiers (32 bit words) at the beginning of the file/objects. This here has nothing.
Well, here's what I see so far.
The _d files hold some sort of frame information. They start with a 32 byte header and then they have 16 bytes for each animation frame. For example, the krallm .uc file says "NUMFRAMES=498", and 498*16+32 is 8000, which is exactly the size of the krallm_d file.
The _a file also seems to have a fixed size, depending on the number of frames. The krallm_a file is exactly 810748 bytes, which is 4 + 498*1628. So there's 1628 bytes for each frame in there (which also seems consistent with the other models in the .rar file).
This leaves a 4 byte header which doeode the file size, so the size is probably stored somewhere else in the .u file (not in the model file itself). As for the frame format itself, it doesn't seem to have any structure by itself. Probably just raw floats or something.
[edit: no, don't look like floats, at least they don't contain any "sensible" float values]
Maybe each frame is encrypted with some data from the _d files...
...I will try to find out more later but I'm not very good with 3D data...
-Darkstar
Well, here's what I see so far.
The _d files hold some sort of frame information. They start with a 32 byte header and then they have 16 bytes for each animation frame. For example, the krallm .uc file says "NUMFRAMES=498", and 498*16+32 is 8000, which is exactly the size of the krallm_d file.
The _a file also seems to have a fixed size, depending on the number of frames. The krallm_a file is exactly 810748 bytes, which is 4 + 498*1628. So there's 1628 bytes for each frame in there (which also seems consistent with the other models in the .rar file).
This leaves a 4 byte header which doeode the file size, so the size is probably stored somewhere else in the .u file (not in the model file itself). As for the frame format itself, it doesn't seem to have any structure by itself. Probably just raw floats or something.
[edit: no, don't look like floats, at least they don't contain any "sensible" float values]
Maybe each frame is encrypted with some data from the _d files...
...I will try to find out more later but I'm not very good with 3D data...
-Darkstar
Check out the REWiki!
-
Darkfox
- VVIP member

- Posts: 688
- Joined: Fri Jul 04, 2003 6:11 pm
- Has thanked: 33 times
- Been thanked: 16 times
Re: Unreal 1998 beta (PC) .u
Those are example 3D models from Unreal 1 (final, not Beta) to compare to the Beta .u for exporting them. The beta "UnrealI.u" is seen above. Currently there is no means to export mesh data from the Unreal Beta UnrealI.u main data file because the data file format is radically different and not so compressed.
To clarify a bit on the Unreal 1 model format:
NUMFRAMES refers to total number of animation frames. KrallM contains a total of 498 frames of animation in it's _a.3D file.
_d is the mesh/model data
_a is the animation data
You may be able to find other data regarding Unreal Engine 1 Mesh. This is what I know from dealing with it.
UPDATE
While searching the net I found public source code for Unreal 1. In it there is a full description of the Unreal mesh format among other things.
You can get it here: Unreal v224 Public Source
Things of interest in the code:
In "Engine\Inc\" there is a C++ script called "UnMesh.h" which describes the Unreal Mesh format.
In "Core\Inc\" there is a C++ script called "UnArc.h" that gives a description of the ".u" archive I believe.
Unfortunately this is AFTER the Unreal beta so the archive format has changed a bit but this should still be useful. There is code for exporting data so perhaps tweaked enough an exporter for the beta .u files.
To clarify a bit on the Unreal 1 model format:
NUMFRAMES refers to total number of animation frames. KrallM contains a total of 498 frames of animation in it's _a.3D file.
_d is the mesh/model data
_a is the animation data
You may be able to find other data regarding Unreal Engine 1 Mesh. This is what I know from dealing with it.
UPDATE
While searching the net I found public source code for Unreal 1. In it there is a full description of the Unreal mesh format among other things.
You can get it here: Unreal v224 Public Source
Things of interest in the code:
In "Engine\Inc\" there is a C++ script called "UnMesh.h" which describes the Unreal Mesh format.
In "Core\Inc\" there is a C++ script called "UnArc.h" that gives a description of the ".u" archive I believe.
Unfortunately this is AFTER the Unreal beta so the archive format has changed a bit but this should still be useful. There is code for exporting data so perhaps tweaked enough an exporter for the beta .u files.
