[V] IdolNinja
Volition Staff
Welcome!
Welcome to Saints Row IV modding for Steam Workshop! This thread will get you started with the basics on creating weapons, clothing, scripts, and other gameplay changes. The modding community here at saintsrowmods is an incredibly friendly bunch, and are always happy to help with any questions you might have.
Gather your tools
Volition's Saints Row IV tools:
https://github.com/volition-inc/Zinyaks-Cache-Of-Wonders
Minimaul's Saints Row tools:
https://www.saintsrowmods.com/forum...saints-row-iv-and-gat-out-of-hell-tools.3188/
Saints Row IV Steam Workshop Uploader:
https://www.saintsrowmods.com/forum/threads/saints-row-iv-steam-workshop-uploader-beta-12.14114/
NOTE: Some tutorials like the weapon and clothing ones will also have you download additional specific tools which are all linked in their respective threads.
Understanding file formats
.vpp_pc files
Also referred to as "packfiles", all moddable files in the game are packed into these archives with a .vpp_pc extension. Your first step is going to be to extract all of these so you can work with them (more on this later.) All of the game's vpp_pc files can be found here:
..\steam\steamapps\common\saints row iv\packfiles\pc\cache\
Moddable file types inside a vpp_pc include:
.xtbl files
Also referred to as "table files," an .xtbl file is one of the many file types inside a vpp_pc archive. They are plain ascii text and can be edited with Notepad. If you have any experience with xml, then it should look very familiar to you with the same style format.
.str2_pc archives
Also referred to "streaming files," these are also archives that contain files inside them (think of it like an archive within an archive.) A str2_pc file can contain many things like lua scripts, models, and textures. They need to load a very specific way in memory which is handled by an accompanying asm_pc file.
.asm_pc files
These control how streaming files (str2_pc files) are loaded in memory
.lua files
A lua script is a simple ascii text file that controls things like menus and missions. These are usually located inside str2_pc files. The str2_pc files inside interface.vpp_pc and the ones inside sr3_city_0.vpp_pc are the most common ones that modders work with (menus and missions respectively.)
The gvbm_pc and gpeg_pc file format
Each of these are containers for texture files. They are located within str2_pc files and each has an accompanying file that contains information about the texture (cvbm_pc and cpeg_pc.)
How the game loads files
The game loads files into memory in the following order, overwriting any versions from previous steps:
1. Each file located inside the vpp_pc archives from the /cache folder EXCEPT patch_compressed.vpp_pc and patch_uncompressed.vpp_pc
2. Any files from inside patch_compressed.vpp_pc and patch_uncompressed.vpp_pc (these patch files were updated with each official game patch instead of overwriting the originals.)
3. Any mods you have subscribed to on Steam Workshop
4. Any loose files in the game root where the game exe resides:
..\steam\steamapps\common\saints row iv\
A bit of a history lesson:
Before Steam Workshop support, modders could only change an extracted game file and put this modified file in the game root to load. This caused all sorts of compatibility headaches with other mods since many of them used the same streaming containers and asms, as well as the same table files. There were also memory issues where only a limited number of additional entries could be added to a table file. The new modding patch for Steam Workshop allows a modder to create new files specific to their mod, as well as the removal of table entry limitations.
Extracting Saints Row IV game files
You'll need to extract all the contents of the packfiles and streaming files so you can start working with them:
https://www.saintsrowmods.com/forum/threads/unpacking-every-saints-row-iv-packfile.3193/
If you're looking for a specific file or package, this search tool might come in handy:
https://www.saintsrowmods.com/search/
Supported Workshop files
A current list of the types of modded files that can be used with Steam Workshop.
https://www.saintsrowmods.com/forum/threads/fancy-new-mod-format.9704/
NOTE: You can still modify unsupported files, but those would need to be loaded from the game root and not as a Workshop item.
Creating a Saints Row IV mod for Steam Workshop
How to create a new customization item:
https://www.saintsrowmods.com/forum/threads/sriv-sdk-release-b-adding-new-customization-items.14660/
How to create a new weapon:
https://www.saintsrowmods.com/forum/threads/sriv-sdk-release-a-weapon-modding-tutorial.7136/
How to create a new table file mod:
https://www.saintsrowmods.com/forum/threads/working-with-table-files-for-steam-workshop.14701/
How to create string files for in-game text:
https://www.saintsrowmods.com/forum/threads/creating-localization-files-for-steam-workshop.14705/
How to create new textures:
https://www.saintsrowmods.com/forum/threads/flow754s-peg-assembler.10465/
How to create a gameplay script:
https://www.saintsrowmods.com/forum/threads/how-to-run-a-custom-sriv-gameplay-script.14313/
Uploading to Steam workshop
How to upload your new Saints Row IV mod to Steam Workshop:
https://www.saintsrowmods.com/forum/threads/saints-row-iv-steam-workshop-uploader-beta-12.14114/
Learn more
Now that you have a basic understanding of how everything works, there are all sorts of additional tools and tutorials you can check out for things like Zone File editing, billboard texture toolkits and more!
Saints Row IV Guides and Tutorials:
https://www.saintsrowmods.com/forum/forums/guides-and-tutorials.63/page-2
Saints Row IV Tools:
https://www.saintsrowmods.com/forum/forums/tool-releases.59/
Ongoing Volition support
The modding SDK and Steam Workshop support are a combined effort between the modding community here at Saints Row Mods and Volition, and we're not done yet. One of the bigger features that's coming is the ability to create custom modded in-game menus that can run scripts. We would also love to hear from you with suggestions and requests for extra features and improvements. Now get out there and create some cool mods!
Welcome to Saints Row IV modding for Steam Workshop! This thread will get you started with the basics on creating weapons, clothing, scripts, and other gameplay changes. The modding community here at saintsrowmods is an incredibly friendly bunch, and are always happy to help with any questions you might have.
Gather your tools
Volition's Saints Row IV tools:
https://github.com/volition-inc/Zinyaks-Cache-Of-Wonders
Minimaul's Saints Row tools:
https://www.saintsrowmods.com/forum...saints-row-iv-and-gat-out-of-hell-tools.3188/
Saints Row IV Steam Workshop Uploader:
https://www.saintsrowmods.com/forum/threads/saints-row-iv-steam-workshop-uploader-beta-12.14114/
NOTE: Some tutorials like the weapon and clothing ones will also have you download additional specific tools which are all linked in their respective threads.
Understanding file formats
.vpp_pc files
Also referred to as "packfiles", all moddable files in the game are packed into these archives with a .vpp_pc extension. Your first step is going to be to extract all of these so you can work with them (more on this later.) All of the game's vpp_pc files can be found here:
..\steam\steamapps\common\saints row iv\packfiles\pc\cache\
Moddable file types inside a vpp_pc include:
.xtbl files
Also referred to as "table files," an .xtbl file is one of the many file types inside a vpp_pc archive. They are plain ascii text and can be edited with Notepad. If you have any experience with xml, then it should look very familiar to you with the same style format.
.str2_pc archives
Also referred to "streaming files," these are also archives that contain files inside them (think of it like an archive within an archive.) A str2_pc file can contain many things like lua scripts, models, and textures. They need to load a very specific way in memory which is handled by an accompanying asm_pc file.
.asm_pc files
These control how streaming files (str2_pc files) are loaded in memory
.lua files
A lua script is a simple ascii text file that controls things like menus and missions. These are usually located inside str2_pc files. The str2_pc files inside interface.vpp_pc and the ones inside sr3_city_0.vpp_pc are the most common ones that modders work with (menus and missions respectively.)
The gvbm_pc and gpeg_pc file format
Each of these are containers for texture files. They are located within str2_pc files and each has an accompanying file that contains information about the texture (cvbm_pc and cpeg_pc.)
How the game loads files
The game loads files into memory in the following order, overwriting any versions from previous steps:
1. Each file located inside the vpp_pc archives from the /cache folder EXCEPT patch_compressed.vpp_pc and patch_uncompressed.vpp_pc
2. Any files from inside patch_compressed.vpp_pc and patch_uncompressed.vpp_pc (these patch files were updated with each official game patch instead of overwriting the originals.)
3. Any mods you have subscribed to on Steam Workshop
4. Any loose files in the game root where the game exe resides:
..\steam\steamapps\common\saints row iv\
A bit of a history lesson:
Before Steam Workshop support, modders could only change an extracted game file and put this modified file in the game root to load. This caused all sorts of compatibility headaches with other mods since many of them used the same streaming containers and asms, as well as the same table files. There were also memory issues where only a limited number of additional entries could be added to a table file. The new modding patch for Steam Workshop allows a modder to create new files specific to their mod, as well as the removal of table entry limitations.
Extracting Saints Row IV game files
You'll need to extract all the contents of the packfiles and streaming files so you can start working with them:
https://www.saintsrowmods.com/forum/threads/unpacking-every-saints-row-iv-packfile.3193/
If you're looking for a specific file or package, this search tool might come in handy:
https://www.saintsrowmods.com/search/
Supported Workshop files
A current list of the types of modded files that can be used with Steam Workshop.
https://www.saintsrowmods.com/forum/threads/fancy-new-mod-format.9704/
NOTE: You can still modify unsupported files, but those would need to be loaded from the game root and not as a Workshop item.
Creating a Saints Row IV mod for Steam Workshop
How to create a new customization item:
https://www.saintsrowmods.com/forum/threads/sriv-sdk-release-b-adding-new-customization-items.14660/
How to create a new weapon:
https://www.saintsrowmods.com/forum/threads/sriv-sdk-release-a-weapon-modding-tutorial.7136/
How to create a new table file mod:
https://www.saintsrowmods.com/forum/threads/working-with-table-files-for-steam-workshop.14701/
How to create string files for in-game text:
https://www.saintsrowmods.com/forum/threads/creating-localization-files-for-steam-workshop.14705/
How to create new textures:
https://www.saintsrowmods.com/forum/threads/flow754s-peg-assembler.10465/
How to create a gameplay script:
https://www.saintsrowmods.com/forum/threads/how-to-run-a-custom-sriv-gameplay-script.14313/
Uploading to Steam workshop
How to upload your new Saints Row IV mod to Steam Workshop:
https://www.saintsrowmods.com/forum/threads/saints-row-iv-steam-workshop-uploader-beta-12.14114/
Learn more
Now that you have a basic understanding of how everything works, there are all sorts of additional tools and tutorials you can check out for things like Zone File editing, billboard texture toolkits and more!
Saints Row IV Guides and Tutorials:
https://www.saintsrowmods.com/forum/forums/guides-and-tutorials.63/page-2
Saints Row IV Tools:
https://www.saintsrowmods.com/forum/forums/tool-releases.59/
Ongoing Volition support
The modding SDK and Steam Workshop support are a combined effort between the modding community here at Saints Row Mods and Volition, and we're not done yet. One of the bigger features that's coming is the ability to create custom modded in-game menus that can run scripts. We would also love to hear from you with suggestions and requests for extra features and improvements. Now get out there and create some cool mods!
Last edited: