Modding discussion for Driver 2: The Wheelman is Back.
By Krishty
#51842
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.
By Krishty
#51843
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.
User avatar
By Fireboyd78
#51886
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!
User avatar
By someone972
#51905
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.
You do not have the required permissions to view the files attached to this post.
User avatar
By kierowca12
#53421
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.
Last edited by kierowca12 on Mon Mar 10, 2014 4:32 am, edited 1 time in total.
User avatar
By VAIMAHDO
#53422
Wow! you have some streets there kierowac12. Also, I just looked at the multiplayer texture rip, incredible things you found Krshty!
User avatar
By pete
#53423
I got a virus message when trying to look at that pic. Be careful, guys!
User avatar
By Fireboyd78
#53424
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
User avatar
By pete
#53425
I think your computer may be compromised...ImageShack is pretty damn safe :P
I mean the tinypic one. My Antivirus warned me about Phishing
User avatar
By Fireboyd78
#53427
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.
User avatar
By someone972
#53432
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.
User avatar
By VAIMAHDO
#53435
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. :)
By Krishty
#53465
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.
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.
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 :-(
User avatar
By kierowca12
#53535
Lump 21000000 contains 12B structures. This structure contains probably position of chairs.(on photo as blue points)

http://i58.tinypic.com/24dponc.png
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.
By Wheels
#53699
Nice. I'm pretty sure that Driver 1 has the same thing.
Wonder if Stuntman's .LEV files follow a similar format.
Yes it does. Slightly.
By Wheels
#53707
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. :)
User avatar
By PostalDude
#53710
Nice. I'm pretty sure that Driver 1 has the same thing.
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
User avatar
By VAIMAHDO
#53711
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.
User avatar
By kierowca12
#54219
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.
User avatar
By VAIMAHDO
#54228
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?
Last edited by VAIMAHDO on Mon Apr 21, 2014 5:53 am, edited 1 time in total.
User avatar
By kierowca12
#54811
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.
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 14

Finally, a sign of life! :-D I was already afraid […]

https://www.youtube.com/watch?v=RTnbM8_7FjE Pa[…]

you're welcome, my congratulations on the mod is a[…]

Yeah I mean, it could go into any direction. Refl[…]