Tutorial Custom Dynamic Themes

Was this tutorial helpful ?

  • Yes

    Votes: 17 100.0%
  • No, it needs more clarification

    Votes: 0 0.0%
  • nou

    Votes: 0 0.0%

  • Total voters
    17

Z2K1

회원 | Member
Original poster
회원 | Member
Apr 29, 2018
1
166
Requirements :
1) The animated background in a format that can be split into a sequence of frames (MP4, GIF........)
2) Software / site that can split the animation file into frames (photoshop, ezgif.com or anything that can get it done)
3) Backporter's TGA-PNG-JPG-TO DDS , you should read the setup instructions first then download the tool from the releases page

You must click 'Like' before you can see the hidden data contained here
4) Backporter's Random Content ID Generator
You must click 'Like' before you can see the hidden data contained here
5) Modded Warfare's PS4 Theme Creator (it can create static custom themes so it will be used for everything except the animated background itself)
You must click 'Like' before you can see the hidden data contained here
6) Folder of a sample dynamic theme
You must click 'Like' before you can see the hidden data contained here
7) Something to make a param.sfo file and something to generate the PKG with (FPKG Tools, LibOrbisPKG.....)


I recommend you put everything in a folder so you don't get confused, at the end of the tutorial I will be providing PKGs of the sample dynamic theme I've linked since we'll be using it as an example, and another dynamic theme that Backporter made just for good measure. You should know that because animated backgrounds differ in length and frame variety you might have to tune the following steps to give you a good result, this should involve some trial and error.


I started by using a freeware called Free Video to JPG Converter made by dvdvidesoft since it has a very important feature that allows you to specify the number of frames you want the animation to be split into (we will be using 31 frames in total), this is crucial because every frame has to be added to the index.xml file located in \sample theme\scene\background.raf as it controls what the PS4 is told to do with the frames otherwise the theme will either not work or do something funny. You could technically use as many frames as you want as long as the size of the background.raf folder is under 16 mb and that you code the extra frames in the index.xml file (that's a requirement otherwise the theme won't work and it'll just show the default XMB animation).

To keep it as user friendly as possible we'll just use 31 frames so we don't have to modify the code too much, after i got my 31 frames i had to rename them from 00.jpg to 30.jpg

RA9UQoQ.png


and then drop them in Backporter's tool, it supports drag and drop so just Ctrl+A and drag them into it (make sure the type is set to dxt1a and press start),

ebICQKH.png


right now you should have 31 .dds files going from 00.dds to 30.dds if you've done everything correctly, put these in \sample theme\scene\background.raf and replace the ones from the sample theme, the folder should look the same as the original but with the new frames

rtTsHXc.png


Unfortunately, 9/10 times you will have to edit the index.xml file to modify how fast the animations will be played and this is where the trial and error kicks in, what you're looking for is a bunch of lines that look like this:
<case wait="2">
They will be starting near the end of the file after the actors sequence, you want to modify the number in all of them (in our case 2) to a value that makes the animation play at a reasonable pace (not too fast and not too slow that it becomes noticeable), for this theme i chose 2, it depends on how different the frames are from each other, in Backporter's theme he used 0.04 as the animations weren't so different from each other, just experiment with it until you get something you're satisfied with.

5AX8NHd.png


That pretty much concludes what you need to do for the animated background part, when you get an animation that plays well everything else is identical to how you would make a static theme so you can follow Modded Warfare's tutorial for that:

You must click 'Like' before you can see the hidden data contained here

TLDR Steps :
- Split the animation into 31 frames or more if you like overcomplicating things
- Use Backporter's tool to convert into .dds files and copy into the background.raf folder
- Trial and error with how fast the animation plays by modifying <case wait="?"> with a convenient number
- Finish customizing the theme with the static elements (music, icons....) with MW's tool
- Generate a random content id and pack the pkg
- Have fun

Here are 2 example themes:

You must click 'Like' before you can see the hidden data contained here
Shoutout to Backporter, Bambi, yyoossk, BMT, Crazy Potato and PoeticRuins
 

Attachments

  • upload_2020-8-7_3-49-53.png
    upload_2020-8-7_3-49-53.png
    76.2 KB · Views: 21
  • upload_2020-8-7_3-50-17.png
    upload_2020-8-7_3-50-17.png
    137.5 KB · Views: 19
  • upload_2020-8-7_3-52-24.png
    upload_2020-8-7_3-52-24.png
    163.8 KB · Views: 17
  • upload_2020-8-7_3-54-46.png
    upload_2020-8-7_3-54-46.png
    133.2 KB · Views: 20
Last edited:
Requirements :
1) The animated background in a format that can be split into a sequence of frames (MP4, GIF........)
2) Software / site that can split the animation file into frames (photoshop, ezgif.com or anything that can get it done)
3) Backporter's TGA-PNG-JPG-TO DDS , you should read the setup instructions first then download the tool from the releases page

***Hidden content cannot be quoted.***
4) Backporter's Random Content ID Generator
***Hidden content cannot be quoted.***
5) Modded Warfare's PS4 Theme Creator (it can create static custom themes so it will be used for everything except the animated background itself)
***Hidden content cannot be quoted.***
6) Folder of a sample dynamic theme
***Hidden content cannot be quoted.***
7) Something to make a param.sfo file and something to generate the PKG with (FPKG Tools, LibOrbisPKG.....)


I recommend you put everything in a folder so you don't get confused, at the end of the tutorial I will be providing PKGs of the sample dynamic theme I've linked since we'll be using it as an example, and another dynamic theme that Backporter made just for good measure. You should know that because animated backgrounds differ in length and frame variety you might have to tune the following steps to give you a good result, this should involve some trial and error.


I started by using a freeware called Free Video to JPG Converter made by dvdvidesoft since it has a very important feature that allows you to specify the number of frames you want the animation to be split into (we will be using 31 frames in total), this is crucial because every frame has to be added to the index.xml file located in \sample theme\scene\background.raf as it controls what the PS4 is told to do with the frames otherwise the theme will either not work or do something funny. You could technically use as many frames as you want as long as the size of the background.raf folder is under 16 mb and that you code the extra frames in the index.xml file (that's a requirement otherwise the theme won't work and it'll just show the default XMB animation).

To keep it as user friendly as possible we'll just use 31 frames so we don't have to modify the code too much, after i got my 31 frames i had to rename them from 00.jpg to 30.jpg

RA9UQoQ.png


and then drop them in Backporter's tool, it supports drag and drop so just Ctrl+A and drag them into it (make sure the type is set to dxt1a and press start),

ebICQKH.png


right now you should have 31 .dds files going from 00.dds to 30.dds if you've done everything correctly, put these in \sample theme\scene\background.raf and replace the ones from the sample theme, the folder should look the same as the original but with the new frames

rtTsHXc.png


Unfortunately, 9/10 times you will have to edit the index.xml file to modify how fast the animations will be played and this is where the trial and error kicks in, what you're looking for is a bunch of lines that look like this:
<case wait="2">
They will be starting near the end of the file after the actors sequence, you want to modify the number in all of them (in our case 2) to a value that makes the animation play at a reasonable pace (not too fast and not too slow that it becomes noticeable), for this theme i chose 2, it depends on how different the frames are from each other, in Backporter's theme he used 0.04 as the animations weren't so different from each other, just experiment with it until you get something you're satisfied with.

5AX8NHd.png


That pretty much concludes what you need to do for the animated background part, when you get an animation that plays well everything else is identical to how you would make a static theme so you can follow Modded Warfare's tutorial for that:

***Hidden content cannot be quoted.***
TLDR Steps :
- Split the animation into 31 frames or more if you like overcomplicating things
- Use Backporter's tool to convert into .dds files and copy into the background.raf folder
- Trial and error with how fast the animation plays by modifying <case wait="?"> with a convenient number
- Finish customizing the theme with the static elements (music, icons....) with MW's tool
- Generate a random content id and pack the pkg
- Have fun

Here are 2 example themes:

***Hidden content cannot be quoted.******Hidden content cannot be quoted.***
Shoutout to Backporter, yyoossk, BMT, Crazy Potato and PoeticRuins
wow.. i really want to create my own themes now, thanks
 
Hey, Thank you for finding a useful way to create dynamic themes. However, I have a question: What do you mean by the Data Folder in go to C:\Program Files (x86)\NVIDIA Corporation\DDS Utilities and grab nvdxt.exe and put it in the Data folder ??

Also one of the links is down (number 6 the last one) ..
+
I'm kinda confused about all these scripts and files.
 
  • Like
Reactions: Nyastya
Hey, Thank you for finding a useful way to create dynamic themes. However, I have a question: What do you mean by the Data Folder in go to C:\Program Files (x86)\NVIDIA Corporation\DDS Utilities and grab nvdxt.exe and put it in the Data folder ??

Also one of the links is down (number 6 the last one) ..
+
I'm kinda confused about all these scripts and files.
Copy nvdxt.exe to the "Data" folder thats in where you installed PNG-JPG-TO DDS.