Getting Started with Steam Workshop

[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!
 
Last edited:
My SaintsRowIVPackager for uploading to workshop still wont startup because of the 'Couldn't initialize the Steamworks API'. I got steam running etc. and tried administrators rights but nothing is working help
 
Same thing for me
i tried copying the files in multiple folders see if it would help and has well launch in administrator and even start it FROM steam itself yet no matter what i do it says steam is not running yet i am playing sr4 so yaaa
 
My SaintsRowIVPackager for uploading to workshop still wont startup because of the 'Couldn't initialize the Steamworks API'. I got steam running etc. and tried administrators rights but nothing is working help

We're still working on getting the tool uploaded officially to Steam without these restrictions. In the meantime, you can PM Minimaul and get a key to register that should let you use the upload tool.
https://www.saintsrowmods.com/forum/conversations/add?to=Minimaul
 
How can I tell if a mod I subscribed to is working? I have just gotten a small amount of mods and they don't seem to be working
I am on a Steam Machine for my Saints Row games so if that is a problem please tell me
 
How can I tell if a mod I subscribed to is working? I have just gotten a small amount of mods and they don't seem to be working
I am on a Steam Machine for my Saints Row games so if that is a problem please tell me
Just try some mods released by IdolNinja, Minimaul, flow754 or rastaman289. All of these should work properly.
 
How can I tell if a mod I subscribed to is working? I have just gotten a small amount of mods and they don't seem to be working
I am on a Steam Machine for my Saints Row games so if that is a problem please tell me

Steam Workshop is currently only for Windows. Steam machines are Linux.
 
Back
Top