Page 4 of 14

Re: LEV files revisited

Posted: Tue Dec 03, 2013 10:30 pm
by Klancnik777
Great work! (Y)

Re: LEV files revisited

Posted: Wed Dec 04, 2013 6:22 pm
by RacingFreak
OH MY GOD YES! :specialdriver:

Can't wait to see Driver 2 levels loaded, and even better - the car models (Y)

Re: LEV files revisited

Posted: Wed Dec 04, 2013 11:31 pm
by Olanov
This is kick ass!

Re: LEV files revisited

Posted: Thu Dec 05, 2013 3:30 am
by Krishty
That's about half the stuff in multi-player Chicago. Cannot decode the rest yet.
Image

Re: LEV files revisited

Posted: Thu Dec 05, 2013 5:23 am
by RacingFreak
:o :o YES!!

Please go on!! BTW don't forget aboult the multiple traffic pallettes too!

Re: LEV files revisited

Posted: Sun Dec 08, 2013 10:45 am
by Krishty
Found a hint on addressing. The first word of a texture atlas is either 1, 2, or 4.

"1" means that the texture can be found in the 2nd major lump of the file.

Re: LEV files revisited

Posted: Sun Dec 08, 2013 12:39 pm
by Krishty
I think I've got the base addresses covered. The texture atlases have the 1, 2, or 4 ID in their first 16 bits:

1
1
2
1
4
1
2
1
4
4

then the texture areas follow:

3 textures: 20,20--40,40; 20,40--…
14 textures: …


Now when the 2nd lump in the file is parsed, the routine for finding the global textures (those persistent in any part of the map) is:

if(compressed)
extract();
atlas = find_next_atlas();
do {
byte = read(1);
} while(0 == byte);

The zero skipping looks like overhead, but simple alignment won't do because there are some cases in Rio and Vegas where compressed textures end on a boundary.

Now find_next_atlas() is the interesting part of the function, because it tells how to interpret the texels.

Basically, the algorithm begins at the first atlas with ID "1" and returns it once found. The next "1" entry is returned for the next texture. Once the end is reached, the algorithm repeats, but searching for "4". So the list above would be:

1 1st
1 2nd
2
1 3rd
4 6th
1 4th
2
1 5th
4 7th
4 8th

which would feed palettes for 8 textures. Expect some textures to not use all of the palettes.

I've extracted the global textures of all LEVELs, NLEVELs, MLEVELs, and MNLEVELs. It's 348 files in 2,45 MiB. The board's "upload attachment" does not work (size limit too low, file extensions .7z, .002, .txt not allowed), so if you want to have it, suggest me a registration-free file hoster.

Re: LEV files revisited

Posted: Mon Dec 09, 2013 2:47 am
by RacingFreak
I will personally suggest you: http://www.solidfiles.com/ works always the best for me and it's so simple - just drag and drop (Y)

Re: LEV files revisited

Posted: Mon Dec 09, 2013 5:15 pm
by Fireboyd78
Why not get Dropbox? Yes, you need an account, but everything is manageable from your computer. I use it all the time and never once have to go to the actual website, just manage everything from my computer!

Re: LEV files revisited

Posted: Tue Dec 10, 2013 9:04 am
by someone972
Welcome back! I've attached what little code I have of the PSX stuff. Hopefully there's at least something in there that could be useful to you, but it's pretty rough and not very complete.

Re: LEV files revisited

Posted: Tue Dec 10, 2013 6:47 pm
by Krishty
Thanks! I'll look into it.

In the meantime, here's the textures:
http://www.solidfiles.com/d/5916eb57c4/

Re: LEV files revisited

Posted: Mon Mar 10, 2014 12:06 am
by kierowca12
I have implemented some structures from Driver2 *.lev. And I see that you encoded textures but you didnt write how you do this. Please send me source code or anything what could help me to implement *.lev viewer(each information can be useful about texture, models etc.).

What kind of structure is on this photo: http://img96.imageshack.us/img96/1300/tilevertices.png (this photo is from Krishty) ? This is normal model?

I load map: http://i58.tinypic.com/2hcorw7.png , and I have mesh loader with some bugs.

Re: LEV files revisited

Posted: Mon Mar 10, 2014 4:16 am
by VAIMAHDO
Wow! you have some streets there kierowac12. Also, I just looked at the multiplayer texture rip, incredible things you found Krshty!

Re: LEV files revisited

Posted: Mon Mar 10, 2014 6:17 am
by pete
I got a virus message when trying to look at that pic. Be careful, guys!

Re: LEV files revisited

Posted: Mon Mar 10, 2014 6:36 am
by Fireboyd78
pete wrote:I got a virus message when trying to look at that pic. Be careful, guys!
I think your computer may be compromised...ImageShack is pretty damn safe :P

Re: LEV files revisited

Posted: Mon Mar 10, 2014 6:46 am
by pete
CarLuver69 wrote:I think your computer may be compromised...ImageShack is pretty damn safe :P
I mean the tinypic one. My Antivirus warned me about Phishing

Re: LEV files revisited

Posted: Mon Mar 10, 2014 1:44 pm
by Fireboyd78
pete wrote:
CarLuver69 wrote:I think your computer may be compromised...ImageShack is pretty damn safe :P
I mean the tinypic one. My Antivirus warned me about Phishing
Same thing can be said for TinyPic. Probably a false positive.

Re: LEV files revisited

Posted: Tue Mar 11, 2014 4:16 am
by someone972
I've had certain ads trigger virus or phishing warnings for me before I installed adblock, so it could be that. The actual site should be pretty clean though.

Re: LEV files revisited

Posted: Tue Mar 11, 2014 6:48 am
by VAIMAHDO
someone972 wrote:I've had certain ads trigger virus or phishing warnings for me before I installed adblock, so it could be that. The actual site should be pretty clean though.
Agreed. I should get an advertisement blocker because I absolutely hate advertisements. You guys can always use MetaFire too I always use that for even picture posts so it's always a clean link that I produce. :)

Re: LEV files revisited

Posted: Thu Mar 13, 2014 9:02 pm
by Krishty
kierowca12 wrote:I have implemented some structures from Driver2 *.lev. And I see that you encoded textures but you didnt write how you do this. Please send me source code or anything what could help me to implement *.lev viewer(each information can be useful about texture, models etc.).
someone972 described it here (including source code): http://drivermadness.net/forum/viewtopi ... =60#p51016
My own source code is on a system I don't have access to right now; I'll post it in the upcoming days.
kierowca12 wrote:What kind of structure is on this photo: http://img96.imageshack.us/img96/1300/tilevertices.png (this photo is from Krishty) ? This is normal model?
It's a vertex list from the first tile of MPLAYER\CHICAGO.LEV. I did not find any vertex indices yet, though.
kierowca12 wrote:I load map: http://i58.tinypic.com/2hcorw7.png , and I have mesh loader with some bugs.
I found these points, too. They seem, however, not useful to me at all – actual level data is arranged in tiles :-(

Re: LEV files revisited

Posted: Sun Mar 16, 2014 6:11 am
by kierowca12
Lump 21000000 contains 12B structures. This structure contains probably position of chairs.(on photo as blue points)

http://i58.tinypic.com/24dponc.png
Krishty wrote:They seem, however, not useful to me at all – actual level data is arranged in tiles :-(
Mayby you are right, but in the other hand we dont know meaning many of lamp.

Re: LEV files revisited

Posted: Tue Mar 18, 2014 6:36 am
by Wheels
Nice. I'm pretty sure that Driver 1 has the same thing.
PostalDude wrote:Wonder if Stuntman's .LEV files follow a similar format.
Yes it does. Slightly.

Re: LEV files revisited

Posted: Tue Mar 18, 2014 8:29 am
by Wheels
You don't think it's possible for you to replace the Cities from Driver 1 into Driver 2 and Driver 2's cities and put them into Driver 1 PC, is it? If so, give it a try and put some screenshots or videos up. :)

Re: LEV files revisited

Posted: Tue Mar 18, 2014 9:01 am
by PostalDude
Wheels wrote:Nice. I'm pretty sure that Driver 1 has the same thing.
PostalDude wrote:Wonder if Stuntman's .LEV files follow a similar format.
Yes it does. Slightly.
wat
You don't think it's possible for you to replace the Cities from Driver 1 into Driver 2 and Driver 2's cities and put them into Driver 1 PC, is it? If so, give it a try and put some screenshots or videos up.
nope

Re: LEV files revisited

Posted: Tue Mar 18, 2014 9:05 am
by VAIMAHDO
Wheels wrote:You don't think it's possible for you to replace the Cities from Driver 1 into Driver 2 and Driver 2's cities and put them into Driver 1 PC, is it? If so, give it a try and put some screenshots or videos up. :)
We have to keep in mind that Driver 2 has been broken down and formatted for the Playstation 1. Ripping models already seems hard, but we would need to re format the D2 city to be drawn up in a non flat projection, and have textures come with it. Also, map moding for Driver 1 I don't think exists yet.

Re: LEV files revisited

Posted: Sun Apr 20, 2014 6:45 pm
by kierowca12
I analyzed chicago multiplayer map and found interesting structures. Lump number 7 point to this structure. Structures are padding to 2048 bytes and probably contain map data. For example offset 0xce000(offset from chicago multiplayer map) contain this piece of map:

Image

Size structure is 8b. Variable X and Y is unsigned short int.

Re: LEV files revisited

Posted: Mon Apr 21, 2014 3:25 am
by VAIMAHDO
Awesome (Y)

Re: LEV files revisited

Posted: Mon Apr 21, 2014 5:11 am
by pete
I wish I knew what this means. Looks cool I guess

Re: LEV files revisited

Posted: Mon Apr 21, 2014 5:44 am
by VAIMAHDO
pete wrote:I wish I knew what this means. Looks cool I guess
If you follow the dots patterns, you will see roads from an above view.

Krishty wrote:
Sorry for the silence. Yep; the polygon IDs are quite complicated, and I currently just don't have time to find the required patterns :( For example, I need to see if the ID's are somehow similar to those in the Driver Texture Editor …

I'll probably have more time next week. I'm not logged in, but I'm checking the forum on a daily basis.

In the meantime, here's some hundreds meshes I extracted. You may find buildings, trains, poles, etc. They're from Chicago, Havana, Vegas and some may be of Rio. Have fun.
some meshes.zip
By the way... How can I convert these to a .OBJ format or a program to view these in?

Re: LEV files revisited

Posted: Sun Jun 22, 2014 3:00 pm
by kierowca12
As I said earlier, offset 0xce000(offset from chicago multiplayer map) contains piece of map(green rectangle on picture). I have tried load this piece to my loader but my model parser have some bugs. I loaded only few object. :( I still don't know how to connect all this pieces of map.

2b: meaning I don't know.
And then this structure:
Structure has size 8b and these property:
- z : short int
- x : unsigned short int
- short int (6bit: rotation, 10bit number object)
- y : unsigned short int

Screens with modified maps:
Image
Image

ps. Recently I haven't much time to spend on this project.