I know this forum is for PCSX2, but I haven't found another one for this emulator. You see, I'd like to make a new pack of remastered textures for the game Ultimate Ghosts & Goblins. I've remastered some textures, as you can see in the image, but I'm having problems with some of them. I can't get them to appear in the game; the original texture always shows up, and sometimes it's random and appears in some matchs. I have repeated the armor texture 20 times, and even then I can't get it to appear in the game. Has anyone else had this problem with another game and knows how to fix it?
- Joined
- Sep 5, 2022
- Messages
- 394
- Reaction score
- 502
- Trophies
- 1
- Age
- 38
- Location
- Johannesburg
- XP
- 1,239
- Country

Does it only happen with this game?
I've seen this with a some PS1 games rarely with PS2 (mostly menus). My Dino Crisis 2 pack has a few backgrounds that flat out refuse to load. I've done a few PSP games and they were fine, maybe this one is problematic?
I've seen this with a some PS1 games rarely with PS2 (mostly menus). My Dino Crisis 2 pack has a few backgrounds that flat out refuse to load. I've done a few PSP games and they were fine, maybe this one is problematic?
I don't really know, I only have this game downloaded. But there's already a texture pack for this game, so I don't understand why mine doesn't work. I don't know if I have to change some settings or something. What has happened to me is that sometimes when I change the render to OpenGL, the remastered texture appears, but when I turn the emulator off and on again, it no longer appears. It's all very random.Does it only happen with this game?
I've seen this with a some PS1 games rarely with PS2 (mostly menus). My Dino Crisis 2 pack has a few backgrounds that flat out refuse to load. I've done a few PSP games and they were fine, maybe this one is problematic?
- Joined
- Sep 5, 2022
- Messages
- 394
- Reaction score
- 502
- Trophies
- 1
- Age
- 38
- Location
- Johannesburg
- XP
- 1,239
- Country

Oh that's annoying. If they don't load that's one thing but if it's happening randomly...not sure what the problem could be. I'm not very familiar with PSP and which setting might affect it.
If your texture doesn't load and your dumps have duplicate textures, it means the texture has dynamic hashes or addresses. In my experience, most PSP games will always have this issue when dumping textures, so to deal with this, you will have to create "texture.ini" file. You can create it in Tools -> Developer Tools -> Texture Replacement -> Create/Open texture.ini file for current game. Here's an example image of how texture.ini should look like

A quick note and guide for you if you're new in ppsspp texture modding:

Here, you had 2 duplicate textures with name "040dc800677d1b1ee52e246a" and "040fe800677d1b1ee52e246a",
Let's split them into 3 parts, it should look like "040dc800-677d1b1e-e52e246a" and "040fe800-677d1b1e-e52e246a".
Why 3 parts? Because when PPSSPP dumps texture, the dumped texture names are always in this format [address hash]+[CLUT hash]+[data hash] and any of these hash can be changed dynamically depend on session, which mean they will never use the same hash. So by using texture.ini, you can tell PPSSPP which parts of the hash are dynamic so it can load your texture even when one of hash changes. All hash parts have total 8 letters each.
Let's go back to your image, for "040dc800-677d1b1e-e52e246a" and "040fe800-677d1b1e-e52e246a", you can see that the only difference between them is the address hash while CLUT and data hashes are the same. So now you can go your texture.ini and write in one of the address and replace the address hash with 8 zero numbers, this will tell PPSSPP that the address hash is dynamic. Also, you can assign custom texture name for your address and organize them with sub folder too if you want. The final result should look like this:

Don't forget to rename your new texture name to the one you wrote in texture.ini
If you find my explanation hard to follow, you can also read ppsspp official texture replacement guide on texture.ini here, the link should also in your texture.ini when you create it.
https://github.com/hrydgard/ppsspp/wiki/Texture-replacement-ini-syntax
Note that currently PPSSPP only supports replacing texture with dynamic address hash or data hash, if your texture has dynamic CLUT hash, it cannot be replaced.

A quick note and guide for you if you're new in ppsspp texture modding:
- Leave everything under [options] default unless you know what you are doing
- The section you want to edit is under [hashes]

Here, you had 2 duplicate textures with name "040dc800677d1b1ee52e246a" and "040fe800677d1b1ee52e246a",
Let's split them into 3 parts, it should look like "040dc800-677d1b1e-e52e246a" and "040fe800-677d1b1e-e52e246a".
Why 3 parts? Because when PPSSPP dumps texture, the dumped texture names are always in this format [address hash]+[CLUT hash]+[data hash] and any of these hash can be changed dynamically depend on session, which mean they will never use the same hash. So by using texture.ini, you can tell PPSSPP which parts of the hash are dynamic so it can load your texture even when one of hash changes. All hash parts have total 8 letters each.
Let's go back to your image, for "040dc800-677d1b1e-e52e246a" and "040fe800-677d1b1e-e52e246a", you can see that the only difference between them is the address hash while CLUT and data hashes are the same. So now you can go your texture.ini and write in one of the address and replace the address hash with 8 zero numbers, this will tell PPSSPP that the address hash is dynamic. Also, you can assign custom texture name for your address and organize them with sub folder too if you want. The final result should look like this:

Don't forget to rename your new texture name to the one you wrote in texture.ini
If you find my explanation hard to follow, you can also read ppsspp official texture replacement guide on texture.ini here, the link should also in your texture.ini when you create it.
https://github.com/hrydgard/ppsspp/wiki/Texture-replacement-ini-syntax
Note that currently PPSSPP only supports replacing texture with dynamic address hash or data hash, if your texture has dynamic CLUT hash, it cannot be replaced.
Thanks you so much I'll take a look at this little guide you've made for me. And yes, I'm new to modding textures in PPSSPP. I normally do PCSX2 textures packs and I thought that the method was the same more or less. I've never touched the texture.ini file because I didn't understand what it was for and I never changed anything.If your texture doesn't load and your dumps have duplicate textures, it means the texture has dynamic hashes or addresses. In my experience, most PSP games will always have this issue when dumping textures, so to deal with this, you will have to create "texture.ini" file. You can create it in Tools -> Developer Tools -> Texture Replacement -> Create/Open texture.ini file for current game. Here's an example image of how texture.ini should look like
View attachment 551654
A quick note and guide for you if you're new in ppsspp texture modding:
Let take an example from your image:
- Leave everything under [options] default unless you know what you are doing
- The section you want to edit is under [hashes]
View attachment 551655
Here, you had 2 duplicate textures with name "040dc800677d1b1ee52e246a" and "040fe800677d1b1ee52e246a",
Let's split them into 3 parts, it should look like "040dc800-677d1b1e-e52e246a" and "040fe800-677d1b1e-e52e246a".
Why 3 parts? Because when PPSSPP dumps texture, the dumped texture names are always in this format [address hash]+[CLUT hash]+[data hash] and any of these hash can be changed dynamically depend on session, which mean they will never use the same hash. So by using texture.ini, you can tell PPSSPP which parts of the hash are dynamic so it can load your texture even when one of hash changes. All hash parts have total 8 letters each.
Let's go back to your image, for "040dc800-677d1b1e-e52e246a" and "040fe800-677d1b1e-e52e246a", you can see that the only difference between them is the address hash while CLUT and data hashes are the same. So now you can go your texture.ini and write in one of the address and replace the address hash with 8 zero numbers, this will tell PPSSPP that the address hash is dynamic. Also, you can assign custom texture name for your address and organize them with sub folder too if you want. The final result should look like this:
View attachment 551656
Don't forget to rename your new texture name to the one you wrote in texture.ini
If you find my explanation hard to follow, you can also read ppsspp official texture replacement guide on texture.ini here, the link should also in your texture.ini when you create it.
https://github.com/hrydgard/ppsspp/wiki/Texture-replacement-ini-syntax
Note that currently PPSSPP only supports replacing texture with dynamic address hash or data hash, if your texture has dynamic CLUT hash, it cannot be replaced.
Post automatically merged:
My Texture.ini file looks like this. Do I remove what is under hashes?If your texture doesn't load and your dumps have duplicate textures, it means the texture has dynamic hashes or addresses. In my experience, most PSP games will always have this issue when dumping textures, so to deal with this, you will have to create "texture.ini" file. You can create it in Tools -> Developer Tools -> Texture Replacement -> Create/Open texture.ini file for current game. Here's an example image of how texture.ini should look like
View attachment 551654
A quick note and guide for you if you're new in ppsspp texture modding:
Let take an example from your image:
- Leave everything under [options] default unless you know what you are doing
- The section you want to edit is under [hashes]
View attachment 551655
Here, you had 2 duplicate textures with name "040dc800677d1b1ee52e246a" and "040fe800677d1b1ee52e246a",
Let's split them into 3 parts, it should look like "040dc800-677d1b1e-e52e246a" and "040fe800-677d1b1e-e52e246a".
Why 3 parts? Because when PPSSPP dumps texture, the dumped texture names are always in this format [address hash]+[CLUT hash]+[data hash] and any of these hash can be changed dynamically depend on session, which mean they will never use the same hash. So by using texture.ini, you can tell PPSSPP which parts of the hash are dynamic so it can load your texture even when one of hash changes. All hash parts have total 8 letters each.
Let's go back to your image, for "040dc800-677d1b1e-e52e246a" and "040fe800-677d1b1e-e52e246a", you can see that the only difference between them is the address hash while CLUT and data hashes are the same. So now you can go your texture.ini and write in one of the address and replace the address hash with 8 zero numbers, this will tell PPSSPP that the address hash is dynamic. Also, you can assign custom texture name for your address and organize them with sub folder too if you want. The final result should look like this:
View attachment 551656
Don't forget to rename your new texture name to the one you wrote in texture.ini
If you find my explanation hard to follow, you can also read ppsspp official texture replacement guide on texture.ini here, the link should also in your texture.ini when you create it.
https://github.com/hrydgard/ppsspp/wiki/Texture-replacement-ini-syntax
Note that currently PPSSPP only supports replacing texture with dynamic address hash or data hash, if your texture has dynamic CLUT hash, it cannot be replaced.
Post automatically merged:
I don't understand the Github guide; everything looks different from what you did.If your texture doesn't load and your dumps have duplicate textures, it means the texture has dynamic hashes or addresses. In my experience, most PSP games will always have this issue when dumping textures, so to deal with this, you will have to create "texture.ini" file. You can create it in Tools -> Developer Tools -> Texture Replacement -> Create/Open texture.ini file for current game. Here's an example image of how texture.ini should look like
View attachment 551654
A quick note and guide for you if you're new in ppsspp texture modding:
Let take an example from your image:
- Leave everything under [options] default unless you know what you are doing
- The section you want to edit is under [hashes]
View attachment 551655
Here, you had 2 duplicate textures with name "040dc800677d1b1ee52e246a" and "040fe800677d1b1ee52e246a",
Let's split them into 3 parts, it should look like "040dc800-677d1b1e-e52e246a" and "040fe800-677d1b1e-e52e246a".
Why 3 parts? Because when PPSSPP dumps texture, the dumped texture names are always in this format [address hash]+[CLUT hash]+[data hash] and any of these hash can be changed dynamically depend on session, which mean they will never use the same hash. So by using texture.ini, you can tell PPSSPP which parts of the hash are dynamic so it can load your texture even when one of hash changes. All hash parts have total 8 letters each.
Let's go back to your image, for "040dc800-677d1b1e-e52e246a" and "040fe800-677d1b1e-e52e246a", you can see that the only difference between them is the address hash while CLUT and data hashes are the same. So now you can go your texture.ini and write in one of the address and replace the address hash with 8 zero numbers, this will tell PPSSPP that the address hash is dynamic. Also, you can assign custom texture name for your address and organize them with sub folder too if you want. The final result should look like this:
View attachment 551656
Don't forget to rename your new texture name to the one you wrote in texture.ini
If you find my explanation hard to follow, you can also read ppsspp official texture replacement guide on texture.ini here, the link should also in your texture.ini when you create it.
https://github.com/hrydgard/ppsspp/wiki/Texture-replacement-ini-syntax
Note that currently PPSSPP only supports replacing texture with dynamic address hash or data hash, if your texture has dynamic CLUT hash, it cannot be replaced.
Attachments
Last edited by MaximoCapcom,
Just add in new line under [hashes], for other sections, just leave them be as they are for advanced usage with some specific games.
I finally did it, Thank you. In the end I didnt have to divide it into three parts.Just add in new line under [hashes], for other sections, just leave them be as they are for advanced usage with some specific games.
Attachments
Great! The 3 parts in my explanation was only for you to understand how PPSSPP texture replacement works, it's actually not necessary to split the name with "-".I finally did it, Thank you. In the end I didnt have to divide it into three parts.
Heres a small sample. btw where I can post this texture pack? there is no PPSSPP forumGreat! The 3 parts in my explanation was only for you to understand how PPSSPP texture replacement works, it's actually not necessary to split the name with "-".
Attachments
- Joined
- Jun 8, 2023
- Messages
- 258
- Reaction score
- 307
- Trophies
- 0
- Location
- Narnia
- Website
- twitter.com
- XP
- 1,566
- Country

You have the PPSSPP Forum, which has a section for texture packs. You can also post it here in the GBAtemp group for all consoles.Heres a small sample. btw where I can post this texture pack? there is no PPSSPP forum
Similar threads
- Replies
- 2
- Views
- 4K
- Replies
- 21
- Views
- 2K
- Replies
- 3
- Views
- 1K
- Replies
- 20
- Views
- 2K







