Important information: this site is currently scheduled to go offline indefinitely by end of the year.

Ninja Ripper

General game file tools that are useful for more than one game
Post Reply
Sammie
veteran
Posts: 106
Joined: Wed Apr 25, 2012 12:27 pm
Has thanked: 9 times
Been thanked: 34 times

Re: Ninja Ripper

Post by Sammie »

deadca7 wrote:
Sammie wrote:Download the script again.
The plugin works with almost everything I have tested today, great work man.

These are the two rips I got right now that still does not work.
http://filebeam.com/1c6541ab934bb3a37e5e5aec840c4abb

It's the doodads in Diablo 3 and LEGO The Lord Of The Rings

Edit:

Looks like Dead Island has problems too.
http://filebeam.com/5e0e842b7bdd1d30fc1b5c91c6d1afc8
Fixed your Diablo and LEGOLOTR .rips.

Add special UV-parsing for Dead Island.
Image

Also add support for manual texture-names. Replace the _0 / _1 of your texture_names with _diff, _norm, _spec if available.
If your Mesh has the name "Mesh_0123.rip", rename the textures to "Tex_0123_diff.dds" and "Tex_0123_norm.dds"

[Download new plugin v1.10]
deadca7
beginner
Posts: 31
Joined: Sat Jun 19, 2010 6:59 am
Been thanked: 14 times

Re: Ninja Ripper

Post by deadca7 »

Damn you work fast, thank you. I have tried 6 more games and the plugin works like a charm. Gonna try some more.

I took a look through the Diablo 3 models again, there are still some that are messed up.
http://filebeam.com/167e3c90d32784b314cc27dcd3091c5e
Sammie
veteran
Posts: 106
Joined: Wed Apr 25, 2012 12:27 pm
Has thanked: 9 times
Been thanked: 34 times

Re: Ninja Ripper

Post by Sammie »

deadca7 wrote:
Damn you work fast, thank you. I have tried 6 more games and the plugin works like a charm. Gonna try some more.

I took a look through the Diablo 3 models again, there are still some that are messed up.
http://filebeam.com/167e3c90d32784b314cc27dcd3091c5e
Yeah, I see.. its a tricky calculation, but I think, now I have the correct formula. [Download again].
Check more Diablo-.rips. If something looks weird, upload again pls. But if the number-range for the calculation is getting to high I must implement a better game-detection. ;)
RacingFreak
veteran
Posts: 136
Joined: Fri Feb 11, 2011 10:44 am
Location: Bulgaria
Has thanked: 50 times
Been thanked: 19 times

Re: Ninja Ripper

Post by RacingFreak »

Brilliant work! I will test it over the weekend with no doubt :wink:
deadca7
beginner
Posts: 31
Joined: Sat Jun 19, 2010 6:59 am
Been thanked: 14 times

Re: Ninja Ripper

Post by deadca7 »

I went through 350 Diablo 3 models, and these three roofs were the only ones messed up.

http://filebeam.com/e94a8169cddb6373a78b05157602f53c
Sanya
n00b
Posts: 15
Joined: Thu Mar 17, 2011 10:36 am
Been thanked: 1 time

Re: Ninja Ripper

Post by Sanya »

http://cgig.ru/forum/viewtopic.php?f=5& ... =550#p3424
http://cgig.ru/forum/viewtopic.php?f=5& ... 3467#p3467

2 posts about Diablo 3.

Main idea:

Diablo's UV are stored with extra offset, which can be simply restored to usual format with function:

Code: Select all

float Decode(byte b1, byte flag)
        {
            float rez = 0; //flag=128
            if (flag == 129) rez += 0.5f;
            rez += 0.5f / 255 * b1;
            return rez;
        }
Or some sort of. I'm not really familiar with all of these stuffs. :{
Sammie
veteran
Posts: 106
Joined: Wed Apr 25, 2012 12:27 pm
Has thanked: 9 times
Been thanked: 34 times

Re: Ninja Ripper

Post by Sammie »

Sanya wrote: Diablo's UV are stored with extra offset, which can be simply restored to usual format with function:

Code: Select all

float Decode(byte b1, byte flag)
        {
            float rez = 0; //flag=128
            if (flag == 129) rez += 0.5f;
            rez += 0.5f / 255 * b1;
            return rez;
        }
Or some sort of. I'm not really familiar with all of these stuffs. :{
The formula doesnt fit for all models, cuz there is not only a 129 flag.. its a range between 123 and 133 (128 +/- 5).
You have to add extra 0.5 for every number above 128 and subtract 0.5 for every number below 128.
The flag-line should be: if(flag != 128) rez -= ((128-flag)*0.5f


@deadca7
fixed, download again
Last edited by Sammie on Thu Jan 24, 2013 6:02 pm, edited 1 time in total.
Sanya
n00b
Posts: 15
Joined: Thu Mar 17, 2011 10:36 am
Been thanked: 1 time

Re: Ninja Ripper

Post by Sanya »

Доброго времени суток
Еще раз хочу поблагодарить создателя программы за столь крутой инструмент.
Возвращаясь к теме импорта из Dyablo3 (моя запись на 56стр, к сожалению не понял как туда сделать линк), упаковка оказалась довольно простой - 4 и 12 байты, как я и думал, являются флагом, в даннонм случае 128 - значения до 0,5f, 129 - больше 0,5f, тоесть с этим флагом они получают двойную байтовую точность - 512 - что очевидно им хватает.
готовая функция
Hello all.
I'd say thank the author of this program.
Back to Diablo 3. After several reseach I found that it's pretty simple: 4 and 12 bytes, as I thouht, are flag, in this case 128 - value to 0.5f, 129 - more than 0.5f. And as you see, with this flag they get (tex coords?) double byte accuracy - 512 - what they exactly need. Here's the ready func: (from post above).



I dunno, but this guy talking about it very reliable x) At least I tried to help :roll:
Sammie
veteran
Posts: 106
Joined: Wed Apr 25, 2012 12:27 pm
Has thanked: 9 times
Been thanked: 34 times

Re: Ninja Ripper

Post by Sammie »

hehe, yes - his formula is correct (for 129 only) but incomplete for all other numbers 123-133. :wink:
deadca7
beginner
Posts: 31
Joined: Sat Jun 19, 2010 6:59 am
Been thanked: 14 times

Re: Ninja Ripper

Post by deadca7 »

Looks like Battlefield 3 is messed up.

http://filebeam.com/6c8cf969b7b245d69bbeb474cf1452c0

I have noticed that every Unreal Engine model has the normals flipped. Is that something that could be fixed in the script ? Have to press F4 in Noesis to enable face cull, to see the models.

Look at this Medal of Honor Warfighter head !

Image
Sammie
veteran
Posts: 106
Joined: Wed Apr 25, 2012 12:27 pm
Has thanked: 9 times
Been thanked: 34 times

Re: Ninja Ripper

Post by Sammie »

Funny eyes :D

Added new rules for your crappy head
Image
Sanya
n00b
Posts: 15
Joined: Thu Mar 17, 2011 10:36 am
Been thanked: 1 time

Re: Ninja Ripper

Post by Sanya »

I have noticed that every Unreal Engine model has the normals flipped. Is that something that could be fixed in the script ? Have to press F4 in Noesis to enable face cull, to see the models.

eh, what's a point to rip from UE games, when we have umodel? x)
deadca7
beginner
Posts: 31
Joined: Sat Jun 19, 2010 6:59 am
Been thanked: 14 times

Re: Ninja Ripper

Post by deadca7 »

I just find it easier to capture the model there and then, instead of looking through the .upk files for the model. Guess it's called lazy ;)

Edit 1:
I thought Max Payne 3 had some messed up UV, but it was the texture. Removed link. Looks like the plugin is really solid now.

Edit 2:
Looks like I was wrong about Diablo 3, did three more rips, and there are still messed up models.
http://filebeam.com/128af0847584640a8c5dc9825c9c8a6c
Sammie
veteran
Posts: 106
Joined: Wed Apr 25, 2012 12:27 pm
Has thanked: 9 times
Been thanked: 34 times

Re: Ninja Ripper

Post by Sammie »

Not really.. code is fine.. but this diablo-models have another blocksize

search for "self.BlockSize == 92" and replace through "(self.BlockSize == 92 or self.BlockSize == 104 or self.BlockSize == 120)"
I really should rewrite this whole part in the next days :D Different mesh-types in one game is bad.
Sanya
n00b
Posts: 15
Joined: Thu Mar 17, 2011 10:36 am
Been thanked: 1 time

Re: Ninja Ripper

Post by Sanya »

deadca7 wrote:I just find it easier to capture the model there and then, instead of looking through the .upk files for the model. Guess it's called lazy ;)

Edit 1:
I thought Max Payne 3 had some messed up UV, but it was the texture. Removed link. Looks like the plugin is really solid now.

Edit 2:
Looks like I was wrong about Diablo 3, did three more rips, and there are still messed up models.
http://filebeam.com/128af0847584640a8c5dc9825c9c8a6c
little advice:use shotcuts with comands like: -meshes -nostat (models with skeleton only). Almost of player models are in _P archives, or in common data one. So it's not that hard, instead of looking at whole level/rip/export and take alook finally :D
Post Reply