Extracting .bimage / .iggy files
-
- Posts: 44
- Joined: Tue Sep 14, 2021 12:25 am
Extracting .bimage / .iggy files
Hi, I was translating Deathloop. Turkish Language has some different characters than the normal Latin Alphabet (ışöçüğ) and Deathloop Fonts don't support this. I want to change the font but couldn't manage to extract .bimage files. Can anyone help, please? I left an example.
Last edited by CidQu on Fri Oct 15, 2021 7:36 pm, edited 1 time in total.
-
- Posts: 1
- Joined: Sun Oct 03, 2021 11:37 pm
Re: Extracting .bimage files
Adding on my findings from trying to convert these files to DDS based on info from previous games
It seems like none of the previously given info/scripts from other games using this format work for Deathloop (tried Evil Within 2, Wolfenstein, DOOM)
I can provide more sample files if anyone needs
It seems like none of the previously given info/scripts from other games using this format work for Deathloop (tried Evil Within 2, Wolfenstein, DOOM)
I can provide more sample files if anyone needs
-
- Posts: 44
- Joined: Tue Sep 14, 2021 12:25 am
Re: Extracting .bimage files
clownbong wrote:Adding on my findings from trying to convert these files to DDS based on info from previous games
It seems like none of the previously given info/scripts from other games using this format work for Deathloop (tried Evil Within 2, Wolfenstein, DOOM)
I can provide more sample files if anyone needs
Seems Dishonored 2 is not working too.
We can extract .dds but it is not working. It is corrupted.
We tried with the Dishonored Bimage translator.
-
- Posts: 165
- Joined: Wed Jun 01, 2016 5:53 pm
Re: Extracting .bimage files
Code: Select all
//--------------------------------------
//--- 010 Editor v6.0.3 Binary Template
//
// File:
// Author:
// Revision:
// Purpose:
//--------------------------------------
local int i;
uint64 id;
uint compchar;
uint unk0;
uint unk1;
uint width;
uint heigth;
uint width_check;
uint heigth_check;
uint flag;
uint mipmapcount;
uint mipmapcount_check;
uint unk2;
uint unk3;
uint unk4;
byte Null[3];
for(i=0;i<mipmapcount;i++) {
struct {
uint64 mipnum;
uint width;
uint heigth;
uint mipmaplayersize;
ubyte Mipmap[mipmaplayersize];
} mipmap;
};
For fonts the compression is ATI1.
-
- Posts: 44
- Joined: Tue Sep 14, 2021 12:25 am
Re: Extracting .bimage files
h3x3r wrote:Code: Select all
//--------------------------------------
//--- 010 Editor v6.0.3 Binary Template
//
// File:
// Author:
// Revision:
// Purpose:
//--------------------------------------
local int i;
uint64 id;
uint compchar;
uint unk0;
uint unk1;
uint width;
uint heigth;
uint width_check;
uint heigth_check;
uint flag;
uint mipmapcount;
uint mipmapcount_check;
uint unk2;
uint unk3;
uint unk4;
byte Null[3];
for(i=0;i<mipmapcount;i++) {
struct {
uint64 mipnum;
uint width;
uint heigth;
uint mipmaplayersize;
ubyte Mipmap[mipmaplayersize];
} mipmap;
};
For fonts the compression is ATI1.
Is there any way to extract it? I tried the 010 Script seems nothing happens.
-
- Posts: 165
- Joined: Wed Jun 01, 2016 5:53 pm
Re: Extracting .bimage files
Are you sure you executed template on it?
It's not a script. Also don't forget set Little Endian reading in editor. You can switch between them with Ctrl + E.
BTW the selected area of data is main layer. Just click on Mipmap colum and press Ctrl + double tap C key and paste it into the new file and save as *.dat.
Now run Raw Texture Cooker viewtopic.php?t=7099 and drop that *.dat file onto it and set width/height + compression which is ATI1.
Tool will generate DDS header so you can open it GIMP. Photoshop don't have support for ATI1/ATI2.
It's not a script. Also don't forget set Little Endian reading in editor. You can switch between them with Ctrl + E.
BTW the selected area of data is main layer. Just click on Mipmap colum and press Ctrl + double tap C key and paste it into the new file and save as *.dat.
Now run Raw Texture Cooker viewtopic.php?t=7099 and drop that *.dat file onto it and set width/height + compression which is ATI1.
Tool will generate DDS header so you can open it GIMP. Photoshop don't have support for ATI1/ATI2.
-
- Posts: 719
- Joined: Sat Sep 28, 2019 7:00 pm
Re: Extracting .bimage files
h3x3r wrote:Photoshop don't have support for ATI1/ATI2.
It has with Intel Texture Works plugin or NVIDIA Texture Tools plugin.
-
- Posts: 44
- Joined: Tue Sep 14, 2021 12:25 am
Re: Extracting .bimage files
h3x3r wrote:Are you sure you executed template on it?
It's not a script. Also don't forget set Little Endian reading in editor. You can switch between them with Ctrl + E.
BTW the selected area of data is main layer. Just click on Mipmap colum and press Ctrl + double tap C key and paste it into the new file and save as *.dat.
Now run Raw Texture Cooker viewtopic.php?t=7099 and drop that *.dat file onto it and set width/height + compression which is ATI1.
Tool will generate DDS header so you can open it GIMP. Photoshop don't have support for ATI1/ATI2.
Okay thanks, we managed to do that. Now how can we repack again?
I think we need to convert .dds to .dat, then put that data in .bimage again, right? How can we do that?
And we are planning to make something different.
Official Deathloop fonts is this. https://fonts.adobe.com/fonts/futura-pt
What about we download this as .ttf then convert it to .dds then add the game? Would it work?
Edit: And this files is a bit off. Is this the right thing to change? Because this .dds is not in full quality. I can't even understand some letters.
.DDS
In Game.
-
- Posts: 165
- Joined: Wed Jun 01, 2016 5:53 pm
Re: Extracting .bimage files
I am able create whole new font from ttf with mapping which require some tweaking, but theirs fonts have some kind of glow on it. Anyway texture fonts are distance field "btw they end with _DF".
How to import? Almost the same way as export. Open *.bimage run template on it and select Mipmap colum. Now open edited *.dds and remove first 128 bytes. Rest data size must by equal to the mipmaplayersize. Now copy all data from *.dds and put it to the *.bimage file over the selected bytes.
And lastly you don't have solved *.iggy format. Game uses mostly them. I find out that russian fonts have some extra charatcers, but not at all.
How to import? Almost the same way as export. Open *.bimage run template on it and select Mipmap colum. Now open edited *.dds and remove first 128 bytes. Rest data size must by equal to the mipmaplayersize. Now copy all data from *.dds and put it to the *.bimage file over the selected bytes.
And lastly you don't have solved *.iggy format. Game uses mostly them. I find out that russian fonts have some extra charatcers, but not at all.
-
- Posts: 44
- Joined: Tue Sep 14, 2021 12:25 am
Re: Extracting .bimage files
h3x3r wrote:I am able create whole new font from ttf with mapping which require some tweaking, but theirs fonts have some kind of glow on it. Anyway texture fonts are distance field "btw they end with _DF".
How to import? Almost the same way as export. Open *.bimage run template on it and select Mipmap colum. Now open edited *.dds and remove first 128 bytes. Rest data size must by equal to the mipmaplayersize. Now copy all data from *.dds and put it to the *.bimage file over the selected bytes.
And lastly you don't have solved *.iggy format. Game uses mostly them. I find out that russian fonts have some extra charatcers, but not at all.
We tried to solve .iggy but it seems the game does not use the same .iggy as before. Again I tried to use Dishonored 2 Tools but nothing works. Do we still need to change .iggy for implementing Turkish characters?
BTW, I tried with the way you said...
I exported .DDS from GIMP using ATI1, Then deleted the first bits. Then added to the .bimage.
-
- Posts: 44
- Joined: Tue Sep 14, 2021 12:25 am
Re: Extracting .bimage files
We found something! .bimage files not working on the texts! .bimage files are only works with glowing weird text named "Handelson Two". The other files are not working with .bimage file, they are working through with .iggy
-
- Posts: 20
- Joined: Sat Dec 22, 2018 2:56 pm
Re: Extracting .bimage files
I tried to adjust the iggy to Turkish characters. Can you try it?
My cpu does not support the game.
My cpu does not support the game.
-
- Posts: 44
- Joined: Tue Sep 14, 2021 12:25 am
Re: Extracting .bimage files
by-freon wrote:I tried to adjust the iggy to Turkish characters. Can you try it?
My cpu does not support the game.
It gaves this error, "arkIggyFilesManager_Loader, Access Violation"
I think you forget to remove .swf header, because I can't open the original files but I can open yours.
-
- Posts: 20
- Joined: Sat Dec 22, 2018 2:56 pm
Re: Extracting .bimage files
Yes. I had to edit the swf header, but the new one doesn't work properly. I'll take another look at it
-
- Posts: 44
- Joined: Tue Sep 14, 2021 12:25 am
Re: Extracting .bimage files
by-freon wrote:Yes. I had to edit the swf header, but the new one doesn't work properly. I'll take another look at it
I tried to change headers, but seems Deathloop uses a different kind of iggy.
Dishonored 2 .iggy file has 96 headerlenght,
The .iggy file you gave has 96 headerlenght,
The Anime game .iggy file i found on the web has 96 headerlenght,
But original Deathloop .iggy file has 80.
-
- Posts: 165
- Joined: Wed Jun 01, 2016 5:53 pm
Re: Extracting .bimage / .iggy files
Funny things... IGGY Fonts from Dishonored 2 works with this game. But if you open them in jpexs and save them without changing anything the game refuse them.
-
- Posts: 44
- Joined: Tue Sep 14, 2021 12:25 am
Re: Extracting .bimage / .iggy files
h3x3r wrote:Funny things... IGGY Fonts from Dishonored 2 works with this game. But if you open them in jpexs and save them without changing anything the game refuse them.
I think there is a method, the person who did the Turkish Translation for Dishonored 2 was able to edit the .iggy file. It works like a charm! I'm sending the image.
EDITED(read the below text.)
Last edited by CidQu on Thu Oct 21, 2021 11:16 pm, edited 1 time in total.
-
- Posts: 44
- Joined: Tue Sep 14, 2021 12:25 am
Re: Extracting .bimage / .iggy files
h3x3r and by-freon I have an important update.
We were able to update .iggy files from Dishonored 2 by changing font values, But we couldn't implement that on Deathloop's font file. I will leave Dishonored 2 English and Turkish .iggy files here. You can check the value different between them. Maybe you can find something else.
https://drive.google.com/file/d/1Hg87c6vst8_WizXDHlAtpOjDhnrBk_-J/view
We were able to update .iggy files from Dishonored 2 by changing font values, But we couldn't implement that on Deathloop's font file. I will leave Dishonored 2 English and Turkish .iggy files here. You can check the value different between them. Maybe you can find something else.
https://drive.google.com/file/d/1Hg87c6vst8_WizXDHlAtpOjDhnrBk_-J/view
-
- Posts: 29
- Joined: Wed Jun 06, 2018 4:39 pm
Re: Extracting .bimage / .iggy files
As I see it, the best solution at the moment is here:
https://forum.xentax.com/viewtopic.php?f=10&t=15474&hilit=iggy&start=15#p124494
I have successfully modified the fonts with this solution.
However, for the time being I could only do this manually with a HEX editor, by rewriting the coordinates of the points. Also, I did not change the coordinate numbers of each character.
Someone should write a normal tool for it.
https://forum.xentax.com/viewtopic.php?f=10&t=15474&hilit=iggy&start=15#p124494
I have successfully modified the fonts with this solution.
However, for the time being I could only do this manually with a HEX editor, by rewriting the coordinates of the points. Also, I did not change the coordinate numbers of each character.
Someone should write a normal tool for it.
-
- Posts: 44
- Joined: Tue Sep 14, 2021 12:25 am
Re: Extracting .bimage / .iggy files
cockafej wrote:As I see it, the best solution at the moment is here:
https://forum.xentax.com/viewtopic.php?f=10&t=15474&hilit=iggy&start=15#p124494
I have successfully modified the fonts with this solution.
However, for the time being I could only do this manually with a HEX editor, by rewriting the coordinates of the points. Also, I did not change the coordinate numbers of each character.
Someone should write a normal tool for it.
I didn't quite understand the method. Where can I find these coordinates in a hex editor? and do we need to rewrite or can't we just delete it? There is a French character -ï- there are two dots in this character, I want to delete both dots, this will make -ı- character in Turkish. If you can help me where can I find the character coordinates. I don't think this guy will write an Iggy Tool, Last answer he wrote is years ago.