SR3 ASM_PC files updater

This is a tool I developed recently, for my own use because I was getting tired of dealing with multiple versions of some *.asm_pc files, as I am doing a lot of texture mods and I often end up modifying the same *.asm_pc files. I thought it could be useful for others too, if only to facilitate the life of people wanting to use several of my texture mods at the same time.

The basics of it is simply to automate the updating of those *.asm_pc files right where they are installed, in the Saints Row The Third install folder. All the necessary mod files sit there anyway: the *.asm_pc files and the texture files.

The *.ASM_PC files currently supported by this tool are:
customize_item.asm_pc => Clothing Items textures
customize_player.asm_pc => Player Characters textures, without clothes.
character_containers.asm_pc => NPC (Non Player Characters) textures
dlc1_customize_item.asm_pc => Clothing Items textures from DLC 1
dlc1_character_containers.asm_pc => NPC textures from DLC 1
dlc2_customize_item.asm_pc => Clothing Items textures from DLC 2
dlc2_character_containers.asm_pc => NPC textures from DLC 2
dlc3_customize_item.asm_pc => Clothing Items textures from DLC 3
dlc3_character_containers.asm_pc => NPC textures from DLC 3
items_containers.asm_pc => items high res versions (weapons mainly)
items_preload_containers.asm_pc => items pre loaded (low res versions of weapons, mainly)

A quick note regarding the GOS (Gentlemen of Steelport compilation)

Right now, as far as I know, the current GOS does not modify any of those files, so there are no problems whatsoever with using the tools concurrently.

If in a future version of GOS, one of those files gets modified, there are two cases.

-if you opt for the loose packing (all the files in Saints Row the Third install folder), the tools will still work well with each other.

-if you opt for the creation of patch files, you will have to manage the contents of a subfolder in the ASM_Updater folder. This folder is named game_original_ASM_files, and it contains ... the original files from the game. Suppose there is a modified customize_item.asm_pc file in a patch file generated by GOS. Well, you got to extract that customize_item.asm_pc file from the GOS patch file, and overwrite the customize_item.asm_pc file in the folder game_original_ASM_files with it. But anyway, this is all theoritical for now.
*******************************

INSTALL INSTRUCTIONS

1. Extract this ENTIRE archive somewhere you can find it easily like your desktop


2. Copy the ==>FOLDER<== ASM_Updater and its contents to your Saints Row The Third install folder:
c:\steam\steamapps\common\saints row the third\

Just to repeat, there should now be a FOLDER named ASM_Updater in your Saints Row the Third install folder.

3. Whenever you make a change to one of your mod files (which impacts one of the supported *.asm_pc files) in your Saints Row The Third install folder, go in the ASM_Updater folder and run one of the two batchfiles:

- Update_ASM_Files - after ADDITION or CHANGE of a mod file.bat

or

- Update_ASM_Files - after REMOVAL of a mod file.bat


If you dont want to have the hassle of doing intellectual gymnastics to figure out which one to use each time, always use the Update_ASM_Files - after REMOVAL of a mod file.bat

The Update_ASM_Files - after REMOVAL of a mod file.bat does everything the other batchfile is doing, plus it first overwrite any of the supported *.asm_pc file with its original version.

******************************

That's all for now.

EDIT: change from V2 to V3: added support for items_preload_containers.asm_pc
 

Attachments

  • ASM_Updater_Tool_V3.7z
    268.4 KB · Views: 9,016
Last edited:
Very neat tool. Working around GoS patch files is going to be a bit of a kludge though, as you say. What if GoS was to generate some kind of log file with asm info in the root that you could parse?

EDIT:
Actually, now that I think about it... the new gui GoS is going to be able to handle all that stuff dynamically. Currently it individually updates only certain ASM files if they need to be, based on selection. The new version is going to dump all asm files and update them along with any separate user mods like yours. It will be much easier for the end user to just throw his extra loose stuff in there and have it build the right asm files for either the patch version or the loose version. :)
 
Very neat tool. Working around GoS patch files is going to be a bit of a kludge though, as you say. What if GoS was to generate some kind of log file with asm info in the root that you could parse?

Hi!

Well, I am not quite sure what I could do, ultimately, with info from a log file. In the end, I would still need the files themselves so that I could use them as base instead of the game's original files. What I could see working, is if GOS was to put a copy of the *.asm_pc files in a specific subfolder of the GOS tool.

On my side, I could now have 2 subfolders in my tool: the one containing the original game files, and a new one containing the GOS *.asm_pc files. The user would have to copy the files from your tool to my tool. When comes the time for my tool to overwrite a given asm_pc file with the 'original', I would check first in my GOS related folder to see if there is a copy of the asm_pc file. If so, I use it, else, I use the file from the original game files folder.
 
Feel free to update the latest GoS batch file and have it dump those updated asm files to use, and include it as an option with your tool. This would be an interim solution though since the gui GoS will be able to handle all that.

To clarify, currently in GoS there is a folder for a user to put his extra mods and have them get built in to the patch files (or dumped just as loose files.) The problem with this approach is that it doesn't work for user mods with str2/asm files since GoS handles them individually based on which str2 files a mod needs. The new version of GoS fixes that by dumping all str2 and asm files in a working folder (including any user added mods like yours) and updates all asm files from both GoS and user mods at once. At this point there would be no need for a player to use both GoS and your tool together so we wouldn't have to find ways to integrate them.

EDIT:
To further clarify, the gui GoS will not preclude the use of your tool, as it's a great solution for players who don't want to use GoS. It just means that neither one of us will have to worry about making our stuff compatible with each other. :)
 
Feel free to update the latest GoS batch file and have it dump those updated asm files to use, and include it as an option with your tool. This would be an interim solution though since the gui GoS will be able to handle all that.

To clarify, currently in GoS there is a folder for a user to put his extra mods and have them get built in to the patch files (or dumped just as loose files.) The problem with this approach is that it doesn't work for user mods with str2/asm files since GoS handles them individually based on which str2 files a mod needs. The new version of GoS fixes that by dumping all str2 and asm files in a working folder (including any user added mods like yours) and updates all asm files from both GoS and user mods at once. At this point there would be no need for a player to use both GoS and your tool together so we wouldn't have to find ways to integrate them.

EDIT:
To further clarify, the gui GoS will not preclude the use of your tool, as it's a great solution for players who don't want to use GoS. It just means that neither one of us will have to worry about making our stuff compatible with each other. :)


I knew that a gui was coming up, and so was not planning on making more of my tool than what it is right now: a fast and painless way to get multiple texture mods to cohabit together. I am planning on using the gui GoS when it comes out, as I am using the batchfile version even now. It is just that I use it only to change the selection of mods that are included in it. I know I had checked into that feature of being able to put our own mods at some time, but did not proceed further. Might be related to the fact that there was that Shiny Look batchfile that was already dealing with texture mods, so I used it a little for the purpose of including some of my own mods. But even then, that did not last.
I think that in both cases, there is a limitation I dont like much, and it is of being obliged to redo all my selections before I can get a new 'build' done.

What would be really great, in the gui version, is the divorcing of mods selection versus compilation. It would be really great to be able to modify our 'personal mods' content, then launch the gui, and have it reuse the same files as last time (not forcing us to redo our selections), and then 'relinking' the *.asm_pc files and so on, and finally spit out new patch files.
 
Oh, that's already in for the upcoming gui version. You can save a .cfg file that has all your selections and then load that in later. It's sole purpose was to make it easy to send a friend your build so all the mods were the same. :)
 
Oh, that's already in for the upcoming gui version. You can save a .cfg file that has all your selections and then load that in later. It's sole purpose was to make it easy to send a friend your build so all the mods were the same. :)

dang! I had overlooked that!
 
dang! I had overlooked that!

Well, the current batch file version doesn't support that yet. I only recently implemented it for the new gui version. I think I only mentioned it in passing in the GoS thread.
 
Well, the current batch file version doesn't support that yet. I only recently implemented it for the new gui version. I think I only mentioned it in passing in the GoS thread.

ah ok, I see. I did check the GoS thread a few times, but not every single post per se.

Cannot wait to see that gui version...
 
Just to let know a new version of the tool has been uploaded in the OP.

added support for items_containers.asm_pc , which is used for high res versions of items (weapons mainly).
 
Back
Top