Minimaul's Saints Row 2, Saints Row: The Third, Saints Row IV and Gat Out Of Hell tools

It's a little late, but as I promised, here's the tools that I used to prototype my clothing import for SRGOOH.

Revision 54 (2015/02/17):
  • Add two new modes to Stream2 - "toxml" and "toasm" - these convert ASM files to/from easily editable XML files.

    To convert to an XML file:
    ThomasJepp.SaintsRow.Stream2.exe customize_item.asm_pc toxml
    This will create customize_item.xml

    To convert back to an ASM file:
    ThomasJepp.SaintsRow.Stream2.exe customize_item.xml toasm
    This will create customize_item.asm_pc
 
It's a little late, but as I promised, here's the tools that I used to prototype my clothing import for SRGOOH.

Revision 54 (2015/02/17):
  • Add two new modes to Stream2 - "toxml" and "toasm" - these convert ASM files to/from easily editable XML files.

    To convert to an XML file:
    ThomasJepp.SaintsRow.Stream2.exe customize_item.asm_pc toxml
    This will create customize_item.xml

    To convert back to an ASM file:
    ThomasJepp.SaintsRow.Stream2.exe customize_item.xml toasm
    This will create customize_item.asm_pc
Wow, so it's possible to add new entries to ASMs with this...? YAY, can't wait to try this out! :D
 
Wow, so it's possible to add new entries to ASMs with this...? YAY, can't wait to try this out! :D
Yep, these are the tools I used to make the first version of my clothing mod - when I was testing with just one clothing item. I wrote something to automate it to import everything though :p

Edit: well, they've got a few extra bug fixes, they're not identical. ;)
 
Use "ThomasJepp.SaintsRow.Stream2.exe <filename> update"

Edit: But as I said before, you should really do this step when you build the packfiles, otherwise I can't guarantee it will work correctly - it uses the order of the files in the ASM to decide how to create the str2_pc file.

I thank you sir for the info on how it uses the order of the files in the ASM
to decide how to create the str2_pc file. :cool:

I was able to build the packfiles for my SRIV gun textures mod with the
ThomasJepp.SaintsRow.BuildPackfileGUI.exe and updated
the ASM files consecutively using each new ASM from
the previously built .str2_pc as I added each .str2_pc to the mod.
000asultneerfl.png 000pistolbluv2ultcc.png


What would you recommend in the case when a .str2_pc file needs to be removed
from the mod and then the ASM files require updating ?:confused:

This mod now contains 10 .str2_pc files in which the present ASM files reflect.
How would one update the ASM files to now refer to the 9 remaining .str2_pc files ?


( I have the full legal Steam version installed in the default location
--> C:\Program Files (x86) \Steam\SteamApps\common\Saints Row IV )

Below are the files for my SRIV gun textures mod located within the
SRIV default root folder. ( shown above )

main_streaming_weapons.asm_pc -- to be updated minus the removed file
items_containers.asm_pc -- to be updated minus the removed file

AssaultRifle_A_high.str2_pc
assaultrifle_a_sk1_high.str2_pc
HeavyPistol_A_high.str2_pc
heavypistol_gold_high.str2_pc
heavypistol_onyx_high.str2_pc
pump_shotgun_camo.str2_pc
PUMP_SHOTGUN_high.str2_pc
SMG_LARGE_A_high.str2_pc
smg_large_pink.str2_pc

SMG_SMALL_A_high.str2_pc -- to be removed from mod

--------------------------------------

These are the batch files I made that are located in the folder shown below
that contains all the tools ( ThomasJepp.SaintsRow.Stream2.exe )
V:\z-SR4-ModdingV\0-Tools\ThomasJepp.SaintsRow-rev54\

Batch_Update_MainStreamingWeaponsASM.bat
ThomasJepp.SaintsRow.Stream2.exe main_streaming_weapons.asm_pc update
Pause



Batch_Update_itemsContainersASM.bat
ThomasJepp.SaintsRow.Stream2.exe items_containers.asm_pc update
Pause



Are these batch files written correctly to update the ASM files located within the
SRIV default root folder ?
Is the ThomasJepp.SaintsRow.Stream2.exe scripted to find or know the SRIV default root folder
thus updating the ASM files located therein or are the directory paths required to be written in the batch file?

Is it possible to have the ASM files along with their associated .str2_pc files contained together and located
in their own separate folder and then updating them there by specifying the containing folder's directory in the batch script ?
If so, how would that be written in the batch file ?

Is it possible to have the ASM files along with their associated .str2_pc files contained together and located
in the same folder where the ThomasJepp.SaintsRow-rev54 tools are and writing the batch file to run the
ThomasJepp.SaintsRow.Stream2.exe and update the ASM files within that same folder ?
If so, how would that be written in the batch file ?

As you stated about the ASM update method via batch running the ThomasJepp.SaintsRow.Stream2.exe
that you "can't guarantee it will work correctly", would it be possible to manually update the ASM files by
using your two new modes to Stream2 - "toxml" and "toasm" - to convert ASM files to/from easily editable XML files?

Could it be done by deleting the ASM script lines referring to the .str2_pc file ( SMG_SMALL_A_high.str2_pc )
that is no longer contained in the mod ?

When converting an ASM to an XML file:
ThomasJepp.SaintsRow.Stream2.exe items_containers.asm_pc toxml
In what folder or where will this create the items_containers.xml ?

Is it possible to have the ASM file to be converted located in it's own separate folder
by specifying the containing folder's directory in the batch script ?
If so, how would that be written in the batch file ?

Is there a possibility perhaps in a future revision that there may be a G.U.I. version of the ASM toxml/toasm application ?:D

Thank you Minimaul for all of your excellent work.;)
 
What would you recommend in the case when a .str2_pc file needs to be removed
from the mod and then the ASM files require updating ?:confused:
Rebuild the ASM from the original unmodified version.

This mod now contains 10 .str2_pc files in which the present ASM files reflect.
How would one update the ASM files to now refer to the 9 remaining .str2_pc files ?
The tools can't handle "resetting" an entry in the ASM file to the original data, so you'd need to start from an original ASM instead and modify it for the files that are still in your mod.

Are these batch files written correctly to update the ASM files located within the
SRIV default root folder ?
Is the ThomasJepp.SaintsRow.Stream2.exe scripted to find or know the SRIV default root folder
thus updating the ASM files located therein or are the directory paths required to be written in the batch file?
You need to tell it the exact path to the item to update.

As you stated about the ASM update method via batch running the ThomasJepp.SaintsRow.Stream2.exe
that you "can't guarantee it will work correctly", would it be possible to manually update the ASM files by
using your two new modes to Stream2 - "toxml" and "toasm" - to convert ASM files to/from easily editable XML files?
Yes, but I'd only use this to add new str2_pc files to the ASM, the automated tools are far better for general modding.

Could it be done by deleting the ASM script lines referring to the .str2_pc file ( SMG_SMALL_A_high.str2_pc )
that is no longer contained in the mod ?
No, this would stop that str2_pc from loading properly and is a terrible plan ;) You'd need to change the values for that str2_pc back to the originals.

When converting an ASM to an XML file:
ThomasJepp.SaintsRow.Stream2.exe items_containers.asm_pc toxml
In what folder or where will this create the items_containers.xml ?
In the same folder as the asm file.

Is there a possibility perhaps in a future revision that there may be a G.U.I. version of the ASM toxml/toasm application ?:D
I don't see how this would really be useful.



Now after reading your post in full and responding to your individual questions, I would instead suggest that what you are doing is not the right way to go about it.

What I would suggest you do, and what I actually do is to have a directory containing "source files" - the unpacked files for your mod and the original ASMs, then have a batch file that copies the ASMs into a temporary folder and uses BuildPackfile to build your str2_pc files into this temporary folder - updating the ASM *in the temporary folder*.

Then just copy the files from your temporary folder to your game folder.

That way you effectively create the exact ASM you need each time.

Also, it sounds like for this mod that if you're not adding any new files to the game - but just instead modifying existing ones - that Stream2Update would do exactly what you need?
 
Thank you Minimaul for your very helpful advice.:D
0000sr4TmodThmbsup.png
 
Eh, all unpacked Russian string files look like this:
Part of customize_ru.txt said:
"50s Lady": "İĪĩĭ 50-ĺ"
"Auburn": "įĥĽķĥIJijħŀĮ"
"BASIC_DENIM": "ijĦŀļIJŀĮ ĺİijĴijį"
"Ben King Outfit": "ĶķĭİŁ įĭIJĨĥ"
"BLEACHED_BLONDE": "įĵĥĽĪIJŀĮ ĦİijIJĩĭIJ"
"Blonde": "ĦİijIJĩĭIJ"
"BONES": "ĶįĪİĪķ"
"BOUNTY HUNTER": "ijĺijķIJĭį Ĭĥ Ĩijİijħĥıĭ"
"BRIGHT_BLUE": "ńĵįĭĮ ĶĭIJĭĮ"
"BRIGHT_BLUE-GREEN": "ńĵįĭĮ ĶĭIJĪ-ĬĪİĪIJŀĮ"
"BRIGHT_GREEN": "ńĵįĭĮ ĬĪİĪIJŀĮ"
"BRIGHT_INDIGO": "ńĵįĭĮ ķĪıIJij-ĶĭIJĭĮ"
"BRIGHT_ORANGE": "ńĵįĭĮ ijĵĥīIJĪħŀĮ"
"BRIGHT_PINK": "ńĵįĭĮ ĵijĬijħŀĮ"
"BRIGHT_PURPLE": "ńĵįĭĮ ĹĭijİĪķijħŀĮ"
"BRIGHT_RED": "ńĵįĭĮ įĵĥĶIJŀĮ"
"BRIGHT_YELLOW": "ńĵįĭĮ īĪİķŀĮ"
"BRIGHT_YELLOW-GREEN": "ńĵįĭĮ īĪİķij-ĬĪİĪIJŀĮ"
"Brunette": "ĦĵŃIJĪķ"
"CANCEL_WARNING_BODY": "ħŠ ŘŇŊŕŊŒŠ, Ŝŗœ ŚœŗōŗŊ œŗőŊŒōŗš ŖʼnŊŐŅŒŒŠŊ ōŌőŊŒŊŒōŤ?"
"CASUAL_CARGOS": "ĦĵŃįĭ "įĥĵĨij""
"CASUAL_LEATHER_JACKET": "ijĦŀļIJĥń įijīĥIJĥń įĸĵķįĥ"
"CF_DLC_ALIENS_HAT": "ĽİĪı ĸĴĵĥħİĪIJĭń ĵĥĬĸıijı"
"cf_eyes_50sglasses": "įijĽĥļĭĮ ĨİĥĬ"
"cf_eyes_pixelshades": "ķĸĶįİŀĪ ķĪıIJŀĪ ijļįĭ"
"CF_FOOT_50sSHOES": "ķĸĹİĭ ĩİń ķĥIJĻĪħ"
"cf_foot_80sshortboots": "ķĸĹİĭ, ĵĥĶĽĭķŀĪ ĦİĪĶķįĥıĭ"
"cf_foot_amazonboots": "ĶĥĴijĨĭ ĥıĥĬijIJįĭ"
"cf_foot_strapshoes": "ķĸĹİĭ IJĥ ĵĪıĪĽįĥĺ"
"cf_hair_fauxhawk_01": "ļĪİįĥ"
"cf_hair_formalupdo_01": "ijĹĭĻĭĥİŁIJĥń ħŀĶijįĥń ĴĵĭļĪĶįĥ"
"cf_hair_frenchbraid-01": "ĹĵĥIJĻĸĬĶįĥń įijĶĥ"
"cf_hair_frenchbraid-02": "ĩħijĮIJĥń ĹĵĥIJĻĸĬĶįĥń įijĶĥ"
"cf_hair_funbob-01": "ĬĥĦĥħIJijĪ įĥĵĪ"
"cf_hair_graduatedbob-01": "ĨĵĥĩĸĭĵijħĥIJIJijĪ įĥĵĪ"
"cf_hair_kungfubraid": "įijĶĥ ħ ĶķĭİĪ įĸIJĨ-Ĺĸ"
"cf_hair_longbouffant_01": "ĩİĭIJIJŀĮ IJĥļĪĶ"
"cf_hair_longstraight_01": "ĶįĵijıIJĥń ĩİĭIJIJĥń ĴĵĭļĪĶįĥ"
"cf_hair_longstraight_04": "ĩİĭIJIJĥń ĴĵĭļĪĶįĥ Ķ ĴĵijĦijĵijı"
"cf_hair_longstraight-02": "ĴĵńıijĮ įĥĶįĥĩ"
"cf_hair_longstraight-03": "ńĴijIJĶįĥń Ķķĵĭīįĥ"
"cf_hair_longstraight-05": "ļĪİįĥ Ķ ĴĵijĦijĵijı"
I hope the new version of string tools will work well with Cyrillic because Arioh almost finished translating Expanded Arsenal Mod to Russian.
 
Last edited:
Back
Top