Does the Stream2Update program have any prerequisites? When I launch it, it briefly shows a message about an Unhandled Exception and closes itself before I can finish reading the error message.
Does the Stream2Update program have any prerequisites? When I launch it, it briefly shows a message about an Unhandled Exception and closes itself before I can finish reading the error message.
@echo off
set ToolDir=%~dp0
set SRIVDir=D:\Games\Steam\steamapps\common\Saints Row IV
echo.
"%ToolDir%ThomasJepp.SaintsRow.Stream2Update.exe" "%SRIVDir%"
echo.
pause
Thank you!I'm assuming you meant this error?:
View attachment 29489
That's because you're not supposed to run it normally since it's a command-line and not a GUI based tool.
Here's the information on it:
View attachment 29490
As you can see, the tool requires for you to input the source of the base game directory.
It also says that if left blank, it will auto-detect it but I think it is failing to do so for some reason.
Regardless, make sure you've got file extensions visible then you need to create a batch script inside the same folder you have ThomasJepp SaintsRow IV Tools. You can do that by creating a new text file and renaming the extension from ".txt" to ".bat". (Example: TJSR-Stream2Update.bat)
Now you need to edit the batch file by opening it with Notepad++
Copy paste the following code: (Make sure to replace the string set in "SRVIDir=" to the location where you've installed the game.)
Code:@echo off set ToolDir=%~dp0 set SRIVDir=D:\Games\Steam\steamapps\common\Saints Row IV echo. "%ToolDir%ThomasJepp.SaintsRow.Stream2Update.exe" "%SRIVDir%" echo. pause
Save the file and make sure you've got all the ".str2_pc" files in the base game directory before you run the batch file and it will be updated successfully.
There's a post from me back when fiddling with SR4 format and checking recently it works there -- however, can confirm now that it crashes with SR2. Haven't played with SR2 format previously so I have no idea that it isn't working there....the game crashes with the pretty print format.
klassic_radio.XTBL
is looking with pretty-print that works on my end --<!--
_eb_'s "Custom_Radio_102_4_Klassic_FM"
Name Size Duration
StatutoryApe 3.83 MB 227724
PointsOfAuthority 3.37 MB 200321
TakeALookAround 5.37 MB 319152
Unstoppable 3.29 MB 195515
416 3.22 MB 191439
FreakOnALeash 4.47 MB 265523
BreakOnThrough 2.49 MB 147919
ActAppalled 3.38 MB 200817
Bliss 3.95 MB 234907
Abstract 2.65 MB 157611
Demiurge 6.33 MB 376386
FastLane 3.51 MB 208759
Minerva 4.53 MB 269128
Justin 4.33 MB 257634
Papercut 3.10 MB 184125
Nookie 4.48 MB 266097
GimmeWhatYouGot 2.82 MB 167381
-->
<root>
<Table>
<NewEntity>
<_Editor>
<Category>Entries</Category>
</_Editor>
<Name>Klassic</Name>
<Radio_Station_Settings>
<Intro_percent>40</Intro_percent>
<Callin_percent>0</Callin_percent>
<Station_switch>KLASSIC</Station_switch>
<Outro_percent>40</Outro_percent>
<Game_display_resource>LOGO_KLASSIC</Game_display_resource>
<Interface_image>ui_radio_1024_klassic</Interface_image>
</Radio_Station_Settings>
<Sweeper_list/>
<Commercial_list>
<Info>
<Length>111936</Length>
<Cue>KLASSIC_READING_AARON</Cue>
</Info>
<Info>
<Length>126600</Length>
<Cue>KLASSIC_READING_IAGO</Cue>
</Info>
<Info>
<Length>327712</Length>
<Cue>KLASSIC_READING_PRIDE</Cue>
</Info>
<Info>
<Length>264234</Length>
<Cue>KLASSIC_READING_ROMEO_BALCONY</Cue>
</Info>
<Info>
<Length>162899</Length>
<Cue>KLASSIC_READING_ROMEO_BALL</Cue>
</Info>
</Commercial_list>
<Station_Playlist>
<Playlist_entry>Song</Playlist_entry>
<Playlist_entry>Song</Playlist_entry>
<Playlist_entry>Song</Playlist_entry>
<Playlist_entry>Commercial</Playlist_entry>
<Playlist_entry>Song</Playlist_entry>
</Station_Playlist>
<Intro_list>
<Info>
<Length>8370</Length>
<Delay>5000</Delay>
<Cue>KLASSIC_ARAGONAISE_INTRO_01</Cue>
</Info>
<Info>
<Length>9952</Length>
<Delay>5000</Delay>
<Cue>KLASSIC_ARAGONAISE_INTRO_02</Cue>
</Info>
<Info>
<Length>8384</Length>
<Delay>5000</Delay>
<Cue>KLASSIC_BARBER_INTRO_01</Cue>
</Info>
<Info>
<Length>5566</Length>
<Delay>5000</Delay>
<Cue>KLASSIC_BARBER_INTRO_02</Cue>
</Info>
<Info>
<Length>5436</Length>
<Delay>5000</Delay>
<Cue>KLASSIC_BRILLIANTE_INTRO_01</Cue>
</Info>
<Info>
<Length>6775</Length>
<Delay>5000</Delay>
<Cue>KLASSIC_BRILLIANTE_INTRO_02</Cue>
</Info>
<Info>
<Length>8277</Length>
<Delay>5000</Delay>
<Cue>KLASSIC_DONNA_INTRO_01</Cue>
</Info>
<Info>
<Length>9705</Length>
<Delay>5000</Delay>
<Cue>KLASSIC_DONNA_INTRO_02</Cue>
</Info>
<Info>
<Length>10195</Length>
<Delay>5000</Delay>
<Cue>KLASSIC_DRACULA_INTRO_01</Cue>
</Info>
<Info>
<Length>11019</Length>
<Delay>5000</Delay>
<Cue>KLASSIC_DRACULA_INTRO_02</Cue>
</Info>
<Info>
<Length>10205</Length>
<Delay>5000</Delay>
<Cue>KLASSIC_FLEDERMAUS_INTRO_01</Cue>
</Info>
<Info>
<Length>7581</Length>
<Delay>5000</Delay>
<Cue>KLASSIC_FLEDERMAUS_INTRO_02</Cue>
</Info>
<Info>
<Length>4175</Length>
<Delay>2000</Delay>
<Cue>KLASSIC_GENERIC_INTRO_01</Cue>
</Info>
<Info>
<Length>6474</Length>
<Delay>2500</Delay>
<Cue>KLASSIC_GENERIC_INTRO_02</Cue>
</Info>
<Info>
<Length>7074</Length>
<Delay>3000</Delay>
<Cue>KLASSIC_GENERIC_INTRO_03</Cue>
</Info>
<Info>
<Length>6848</Length>
<Delay>3000</Delay>
<Cue>KLASSIC_GENERIC_INTRO_04</Cue>
</Info>
<Info>
<Length>6692</Length>
<Delay>3000</Delay>
<Cue>KLASSIC_GENERIC_INTRO_05</Cue>
</Info>
<Info>
<Length>14216</Length>
<Delay>8000</Delay>
<Cue>KLASSIC_GENERIC_INTRO_06</Cue>
</Info>
<Info>
<Length>9549</Length>
<Delay>5000</Delay>
<Cue>KLASSIC_GENERIC_INTRO_07</Cue>
</Info>
<Info>
<Length>9192</Length>
<Delay>5000</Delay>
<Cue>KLASSIC_GENERIC_INTRO_08</Cue>
</Info>
<Info>
<Length>6491</Length>
<Delay>5000</Delay>
<Cue>KLASSIC_GENERIC_INTRO_09</Cue>
</Info>
<Info>
<Length>9763</Length>
<Delay>5000</Delay>
<Cue>KLASSIC_GENERIC_INTRO_10</Cue>
</Info>
<Info>
<Length>10288</Length>
<Delay>5000</Delay>
<Cue>KLASSIC_GENERIC_INTRO_11</Cue>
</Info>
<Info>
<Length>3539</Length>
<Delay>2500</Delay>
<Cue>KLASSIC_GENERIC_INTRO_12</Cue>
</Info>
<Info>
<Length>4325</Length>
<Delay>2500</Delay>
<Cue>KLASSIC_GENERIC_INTRO_13</Cue>
</Info>
<Info>
<Length>9340</Length>
<Delay>5000</Delay>
<Cue>KLASSIC_GENERIC_INTRO_14</Cue>
</Info>
<Info>
<Length>8745</Length>
<Delay>5000</Delay>
<Cue>KLASSIC_GENERIC_INTRO_15</Cue>
</Info>
<Info>
<Length>6940</Length>
<Delay>5000</Delay>
<Cue>KLASSIC_HABANERA_INTRO_01</Cue>
</Info>
<Info>
<Length>6806</Length>
<Delay>3200</Delay>
<Cue>KLASSIC_HABANERA_INTRO_02</Cue>
</Info>
<Info>
<Length>9613</Length>
<Delay>5000</Delay>
<Cue>KLASSIC_JOY_INTRO_01</Cue>
</Info>
<Info>
<Length>11710</Length>
<Delay>5000</Delay>
<Cue>KLASSIC_JOY_INTRO_02</Cue>
</Info>
<Info>
<Length>7670</Length>
<Delay>5000</Delay>
<Cue>KLASSIC_LIBERTY_INTRO_01</Cue>
</Info>
<Info>
<Length>6433</Length>
<Delay>5000</Delay>
<Cue>KLASSIC_LIBERTY_INTRO_02</Cue>
</Info>
<Info>
<Length>5775</Length>
<Delay>2500</Delay>
<Cue>KLASSIC_MARS_INTRO_01</Cue>
</Info>
<Info>
<Length>11218</Length>
<Delay>5000</Delay>
<Cue>KLASSIC_MARS_INTRO_02</Cue>
</Info>
<Info>
<Length>2325</Length>
<Delay>1500</Delay>
<Cue>KLASSIC_MOUNTAIN_INTRO_01</Cue>
</Info>
<Info>
<Length>9794</Length>
<Delay>5000</Delay>
<Cue>KLASSIC_MOUNTAIN_INTRO_02</Cue>
</Info>
<Info>
<Length>6776</Length>
<Delay>3000</Delay>
<Cue>KLASSIC_NUTCRACKER_INTRO_01</Cue>
</Info>
<Info>
<Length>5245</Length>
<Delay>3000</Delay>
<Cue>KLASSIC_NUTCRACKER_INTRO_02</Cue>
</Info>
<Info>
<Length>4701</Length>
<Delay>2500</Delay>
<Cue>KLASSIC_ORPHEUS_INTRO_01</Cue>
</Info>
<Info>
<Length>7545</Length>
<Delay>3000</Delay>
<Cue>KLASSIC_ORPHEUS_INTRO_02</Cue>
</Info>
<Info>
<Length>6247</Length>
<Delay>3000</Delay>
<Cue>KLASSIC_RADETZKY_INTRO_01</Cue>
</Info>
<Info>
<Length>6223</Length>
<Delay>3000</Delay>
<Cue>KLASSIC_RADETZKY_INTRO_02</Cue>
</Info>
<Info>
<Length>6824</Length>
<Delay>3000</Delay>
<Cue>KLASSIC_ROYAL_INTRO_02</Cue>
</Info>
<Info>
<Length>7120</Length>
<Delay>3000</Delay>
<Cue>KLASSIC_ROYAL_INTRO_01</Cue>
</Info>
<Info>
<Length>8128</Length>
<Delay>5000</Delay>
<Cue>KLASSIC_SWAN_INTRO_01</Cue>
</Info>
<Info>
<Length>8077</Length>
<Delay>5000</Delay>
<Cue>KLASSIC_SWAN_INTRO_02</Cue>
</Info>
<Info>
<Length>11495</Length>
<Delay>5000</Delay>
<Cue>KLASSIC_TOREADORS_INTRO_01</Cue>
</Info>
<Info>
<Length>9354</Length>
<Delay>5000</Delay>
<Cue>KLASSIC_TOREADORS_INTRO_02</Cue>
</Info>
<Info>
<Length>14985</Length>
<Delay>13985</Delay>
<Cue>KLASSIC_ZINYAK_READING_INTRO</Cue>
</Info>
</Intro_list>
<Outro_list>
<Info>
<Length>5969</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_ARAGONAISE_OUTRO_01</Cue>
</Info>
<Info>
<Length>11268</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_ARAGONAISE_OUTRO_02</Cue>
</Info>
<Info>
<Length>3657</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_BARBER_OUTRO_01</Cue>
</Info>
<Info>
<Length>8912</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_BARBER_OUTRO_02</Cue>
</Info>
<Info>
<Length>7536</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_BRILLIANTE_OUTRO_01</Cue>
</Info>
<Info>
<Length>5441</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_BRILLIANTE_OUTRO_02</Cue>
</Info>
<Info>
<Length>4369</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_DONNA_OUTRO_01</Cue>
</Info>
<Info>
<Length>5818</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_DONNA_OUTRO_02</Cue>
</Info>
<Info>
<Length>5732</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_DRACULA_OUTRO_01</Cue>
</Info>
<Info>
<Length>11098</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_DRACULA_OUTRO_02</Cue>
</Info>
<Info>
<Length>5014</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_FLEDERMAUS_OUTRO_01</Cue>
</Info>
<Info>
<Length>6865</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_FLEDERMAUS_OUTRO_02</Cue>
</Info>
<Info>
<Length>15052</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_HABANERA_OUTRO_01</Cue>
</Info>
<Info>
<Length>3040</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_HABANERA_OUTRO_02</Cue>
</Info>
<Info>
<Length>5622</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_JOY_OUTRO_01</Cue>
</Info>
<Info>
<Length>4507</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_JOY_OUTRO_02</Cue>
</Info>
<Info>
<Length>5420</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_LIBERTY_OUTRO_01</Cue>
</Info>
<Info>
<Length>6796</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_LIBERTY_OUTRO_02</Cue>
</Info>
<Info>
<Length>5956</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_MARS_OUTRO_01</Cue>
</Info>
<Info>
<Length>8187</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_MARS_OUTRO_02</Cue>
</Info>
<Info>
<Length>6063</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_MOUNTAIN_OUTRO_01</Cue>
</Info>
<Info>
<Length>5403</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_MOUNTAIN_OUTRO_02</Cue>
</Info>
<Info>
<Length>4851</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_NUTCRACKER_OUTRO_01</Cue>
</Info>
<Info>
<Length>8068</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_NUTCRACKER_OUTRO_02</Cue>
</Info>
<Info>
<Length>6018</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_ORPHEUS_OUTRO_01</Cue>
</Info>
<Info>
<Length>9576</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_ORPHEUS_OUTRO_02</Cue>
</Info>
<Info>
<Length>7296</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_RADETZKY_OUTRO_01</Cue>
</Info>
<Info>
<Length>7105</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_RADETZKY_OUTRO_02</Cue>
</Info>
<Info>
<Length>7432</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_ROYAL_OUTRO_01</Cue>
</Info>
<Info>
<Length>3970</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_ROYAL_OUTRO_02</Cue>
</Info>
<Info>
<Length>4586</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_SWAN_OUTRO_01</Cue>
</Info>
<Info>
<Length>5756</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_SWAN_OUTRO_02</Cue>
</Info>
<Info>
<Length>7247</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_TOREADORS_OUTRO_01</Cue>
</Info>
<Info>
<Length>5188</Length>
<Prestart>2500</Prestart>
<Cue>KLASSIC_TOREADORS_OUTRO_02</Cue>
</Info>
<Info>
<Length>15183</Length>
<Prestart>500</Prestart>
<Cue>KLASSIC_ZINYAK_BALCONY_OUTRO_01</Cue>
</Info>
<Info>
<Length>10573</Length>
<Prestart>500</Prestart>
<Cue>KLASSIC_ZINYAK_BALL_OUTRO_01</Cue>
</Info>
</Outro_list>
<!--Custom_Radio_102_4_Klassic_FM START-->
<Song_List>
<!--StatutoryApe-->
<Info>
<Buyable>False</Buyable>
<!--<Length>197347</Length> <!--Default-->
<Length>227724</Length>
<Cue>KLASSIC_ARTIST___DIE_FLEDERMAUS_OVERTURE</Cue>
<Intros>
<Cue>KLASSIC_FLEDERMAUS_INTRO_01</Cue>
<Cue>KLASSIC_FLEDERMAUS_INTRO_02</Cue>
<Cue>KLASSIC_GENERIC_INTRO_01</Cue>
</Intros>
<CallIns/>
<Outros>
<Cue>KLASSIC_FLEDERMAUS_OUTRO_01</Cue>
<Cue>KLASSIC_FLEDERMAUS_OUTRO_02</Cue>
</Outros>
<Sing_along/>
</Info>
<!--PointsOfAuthority-->
<Info>
<Buyable>False</Buyable>
<!--<Length>203324</Length> <!--Default-->
<Length>200321</Length>
<Cue>KLASSIC_ARTIST___SWAN_LAKE_SCENE_FINALE</Cue>
<Intros>
<Cue>KLASSIC_SWAN_INTRO_01</Cue>
<Cue>KLASSIC_SWAN_INTRO_02</Cue>
<Cue>KLASSIC_GENERIC_INTRO_02</Cue>
</Intros>
<CallIns/>
<Outros>
<Cue>KLASSIC_SWAN_OUTRO_01</Cue>
<Cue>KLASSIC_SWAN_OUTRO_02</Cue>
</Outros>
<Sing_along/>
</Info>
<!--TakeALookAround-->
<Info>
<Buyable>False</Buyable>
<!--<Length>158010</Length> <!--Default-->
<Length>319152</Length>
<Cue>KLASSIC_ARTIST___THE_NUTCRACKER_SUITE_OVERTURE</Cue>
<Intros>
<Cue>KLASSIC_NUTCRACKER_INTRO_01</Cue>
<Cue>KLASSIC_NUTCRACKER_INTRO_02</Cue>
<Cue>KLASSIC_GENERIC_INTRO_03</Cue>
</Intros>
<CallIns/>
<Outros>
<Cue>KLASSIC_NUTCRACKER_OUTRO_01</Cue>
<Cue>KLASSIC_NUTCRACKER_OUTRO_02</Cue>
</Outros>
<Sing_along/>
</Info>
<!--Unstoppable-->
<Info>
<Buyable>False</Buyable>
<!--<Length>129427</Length> <!--Default-->
<Length>195515</Length>
<Cue>KLASSIC_ARTIST___ARAGONAISE</Cue>
<Intros>
<Cue>KLASSIC_ARAGONAISE_INTRO_01</Cue>
<Cue>KLASSIC_ARAGONAISE_INTRO_02</Cue>
<Cue>KLASSIC_GENERIC_INTRO_04</Cue>
</Intros>
<CallIns/>
<Outros>
<Cue>KLASSIC_ARAGONAISE_OUTRO_01</Cue>
<Cue>KLASSIC_ARAGONAISE_OUTRO_02</Cue>
</Outros>
<Sing_along/>
</Info>
<!--416-->
<Info>
<Buyable>False</Buyable>
<!--<Length>132645</Length> <!--Default-->
<Length>191439</Length>
<Cue>KLASSIC_ARTIST___CARMEN_SUITE_LES_TOREADORS</Cue>
<Intros>
<Cue>KLASSIC_TOREADORS_INTRO_01</Cue>
<Cue>KLASSIC_TOREADORS_INTRO_02</Cue>
<Cue>KLASSIC_GENERIC_INTRO_05</Cue>
</Intros>
<CallIns/>
<Outros>
<Cue>KLASSIC_TOREADORS_OUTRO_01</Cue>
<Cue>KLASSIC_TOREADORS_OUTRO_02</Cue>
</Outros>
<Sing_along/>
</Info>
<!--FreakOnALeash-->
<Info>
<Buyable>False</Buyable>
<!--<Length>136909</Length> <!--Default-->
<Length>265523</Length>
<Cue>KLASSIC_ARTIST___HABANERA</Cue>
<Intros>
<Cue>KLASSIC_HABANERA_INTRO_01</Cue>
<Cue>KLASSIC_HABANERA_INTRO_02</Cue>
<Cue>KLASSIC_GENERIC_INTRO_06</Cue>
</Intros>
<CallIns/>
<Outros>
<Cue>KLASSIC_HABANERA_OUTRO_01</Cue>
<Cue>KLASSIC_HABANERA_OUTRO_02</Cue>
</Outros>
<Sing_along/>
</Info>
<!--BreakOnThrough-->
<Info>
<Buyable>False</Buyable>
<!--<Length>165293</Length> <!--Default-->
<Length>147919</Length>
<Cue>KLASSIC_ARTIST___DRACULA_PLAYS</Cue>
<Intros>
<Cue>KLASSIC_DRACULA_INTRO_02</Cue>
<Cue>KLASSIC_DRACULA_INTRO_01</Cue>
<Cue>KLASSIC_GENERIC_INTRO_07</Cue>
</Intros>
<CallIns/>
<Outros>
<Cue>KLASSIC_DRACULA_OUTRO_01</Cue>
<Cue>KLASSIC_DRACULA_OUTRO_02</Cue>
</Outros>
<Sing_along/>
</Info>
<!--ActAppalled-->
<Info>
<Buyable>False</Buyable>
<!--<Length>117912</Length> <!--Default-->
<Length>200817</Length>
<Cue>KLASSIC_ARTIST___LA_DONNA_E_MOBILE</Cue>
<Intros>
<Cue>KLASSIC_DONNA_INTRO_01</Cue>
<Cue>KLASSIC_DONNA_INTRO_02</Cue>
<Cue>KLASSIC_GENERIC_INTRO_08</Cue>
</Intros>
<CallIns/>
<Outros>
<Cue>KLASSIC_DONNA_OUTRO_01</Cue>
<Cue>KLASSIC_DONNA_OUTRO_02</Cue>
</Outros>
<Sing_along/>
</Info>
<!--Bliss-->
<Info>
<Buyable>False</Buyable>
<!--<Length>252206</Length> <!--Default-->
<Length>234907</Length>
<Cue>KLASSIC_ARTIST___LARGO_AL_FACTOTUM</Cue>
<Intros>
<Cue>KLASSIC_GENERIC_INTRO_09</Cue>
<Cue>KLASSIC_BARBER_INTRO_01</Cue>
<Cue>KLASSIC_BARBER_INTRO_02</Cue>
</Intros>
<CallIns/>
<Outros>
<Cue>KLASSIC_BARBER_OUTRO_02</Cue>
<Cue>KLASSIC_BARBER_OUTRO_01</Cue>
</Outros>
<Sing_along/>
</Info>
<!--Abstract-->
<Info>
<Buyable>False</Buyable>
<!--<Length>206192</Length> <!--Default-->
<Length>157611</Length>
<Cue>KLASSIC_ARTIST___MARS</Cue>
<Intros>
<Cue>KLASSIC_MARS_INTRO_01</Cue>
<Cue>KLASSIC_MARS_INTRO_02</Cue>
<Cue>KLASSIC_GENERIC_INTRO_10</Cue>
</Intros>
<CallIns/>
<Outros>
<Cue>KLASSIC_MARS_OUTRO_01</Cue>
<Cue>KLASSIC_MARS_OUTRO_02</Cue>
</Outros>
<Sing_along/>
</Info>
<!--Demiurge-->
<Info>
<Buyable>False</Buyable>
<!--<Length>151089</Length> <!--Default-->
<Length>376386</Length>
<Cue>KLASSIC_ARTIST___NIGHT_ON_BARE_MOUNTAIN</Cue>
<Intros>
<Cue>KLASSIC_MOUNTAIN_INTRO_01</Cue>
<Cue>KLASSIC_MOUNTAIN_INTRO_02</Cue>
<Cue>KLASSIC_GENERIC_INTRO_11</Cue>
</Intros>
<CallIns/>
<Outros>
<Cue>KLASSIC_MOUNTAIN_OUTRO_01</Cue>
<Cue>KLASSIC_MOUNTAIN_OUTRO_02</Cue>
</Outros>
<Sing_along/>
</Info>
<!--FastLane-->
<Info>
<Buyable>False</Buyable>
<!--<Length>151657</Length> <!--Default-->
<Length>208759</Length>
<Cue>KLASSIC_ARTIST___ODE_TO_JOY</Cue>
<Intros>
<Cue>KLASSIC_JOY_INTRO_02</Cue>
<Cue>KLASSIC_JOY_INTRO_01</Cue>
<Cue>KLASSIC_GENERIC_INTRO_12</Cue>
</Intros>
<CallIns/>
<Outros>
<Cue>KLASSIC_JOY_OUTRO_01</Cue>
<Cue>KLASSIC_JOY_OUTRO_02</Cue>
</Outros>
<Sing_along/>
</Info>
<!--Minerva-->
<Info>
<Buyable>False</Buyable>
<!--<Length>97710</Length> <!--Default-->
<Length>269128</Length>
<Cue>KLASSIC_ARTIST___ORPHEUS_CAN_CAN</Cue>
<Intros>
<Cue>KLASSIC_ORPHEUS_INTRO_01</Cue>
<Cue>KLASSIC_ORPHEUS_INTRO_02</Cue>
<Cue>KLASSIC_GENERIC_INTRO_13</Cue>
</Intros>
<CallIns/>
<Outros>
<Cue>KLASSIC_ORPHEUS_OUTRO_01</Cue>
<Cue>KLASSIC_ORPHEUS_OUTRO_02</Cue>
</Outros>
<Sing_along/>
</Info>
<!--Justin-->
<Info>
<Buyable>False</Buyable>
<!--<Length>207350</Length> <!--Default-->
<Length>257634</Length>
<Cue>KLASSIC_ARTIST___THE_LIBERTY_BELL</Cue>
<Intros>
<Cue>KLASSIC_LIBERTY_INTRO_01</Cue>
<Cue>KLASSIC_LIBERTY_INTRO_02</Cue>
<Cue>KLASSIC_GENERIC_INTRO_14</Cue>
</Intros>
<CallIns/>
<Outros>
<Cue>KLASSIC_LIBERTY_OUTRO_01</Cue>
<Cue>KLASSIC_LIBERTY_OUTRO_02</Cue>
</Outros>
<Sing_along/>
</Info>
<!--Papercut-->
<Info>
<Buyable>False</Buyable>
<!--<Length>174075</Length> <!--Default-->
<Length>184125</Length>
<Cue>KLASSIC_ARTIST___RADETZKY_MARCH</Cue>
<Intros>
<Cue>KLASSIC_GENERIC_INTRO_01</Cue>
<Cue>KLASSIC_GENERIC_INTRO_15</Cue>
</Intros>
<CallIns/>
<Outros/>
<Sing_along/>
</Info>
<!--Nookie-->
<Info>
<Buyable>False</Buyable>
<!--<Length>107039</Length> <!--Default-->
<Length>266097</Length>
<Cue>KLASSIC_ARTIST___MUSIC_FOR_THE_ROYAL_FIREWORKS</Cue>
<Intros>
<Cue>KLASSIC_ROYAL_INTRO_02</Cue>
<Cue>KLASSIC_ROYAL_INTRO_01</Cue>
<Cue>KLASSIC_GENERIC_INTRO_02</Cue>
</Intros>
<CallIns/>
<Outros>
<Cue>KLASSIC_ROYAL_OUTRO_01</Cue>
<Cue>KLASSIC_ROYAL_OUTRO_02</Cue>
</Outros>
<Sing_along/>
</Info>
<!--GimmeWhatYouGot-->
<Info>
<Buyable>False</Buyable>
<!--<Length>118353</Length> <!--Default-->
<Length>167381</Length>
<Cue>KLASSIC_ARTIST___VALSE_BRILLIANTE_IN_EB</Cue>
<Intros>
<Cue>KLASSIC_BRILLIANTE_INTRO_01</Cue>
<Cue>KLASSIC_BRILLIANTE_INTRO_02</Cue>
<Cue>KLASSIC_GENERIC_INTRO_03</Cue>
</Intros>
<CallIns/>
<Outros>
<Cue>KLASSIC_BRILLIANTE_OUTRO_01</Cue>
<Cue>KLASSIC_BRILLIANTE_OUTRO_02</Cue>
</Outros>
<Sing_along/>
</Info>
</Song_List>
<!--Custom_Radio_102_4_Klassic_FM END-->
<CallIn_list/>
<Singalong_list/>
</NewEntity>
</Table>
<TableTemplates>
</TableTemplates>
<TableDescription>
<Name>NewEntity</Name>
<Type>TableDescription</Type>
<Element>
<Name>Name</Name>
<Type>String</Type>
</Element>
<Element>
<Name>Radio_Station_Settings</Name>
<Type>Element</Type>
<Display_Name>Settings</Display_Name>
<Element>
<Name>Station_switch</Name>
<Type>Reference</Type>
<Display_Name>Station</Display_Name>
<Required>false</Required>
<Reference>
<File>audio_syncs.xtbl</File>
<Type>NewEntity.Switches.RADIO_STATIONS.Values.Entry.Name</Type>
<OpenSeparate>False</OpenSeparate>
</Reference>
</Element>
<Element>
<Name>Game_display_resource</Name>
<Type>String</Type>
<Display_Name>In-Game Display Resource</Display_Name>
<Description>This will correspond to an in-game localized string - Leave Blank for no display (Like Hotel Lobby)</Description>
<Required>false</Required>
<Default>Station_Name</Default>
</Element>
<Element>
<Name>Intro_percent</Name>
<Type>Int</Type>
<Display_Name>Introduction probability</Display_Name>
<Description>% chance that the intro will be played.
If Intro is played, Call-In and Outro will NOT be played.</Description>
<Default>0</Default>
<MinValue>0</MinValue>
<MaxValue>100</MaxValue>
</Element>
<Element>
<Name>Callin_percent</Name>
<Type>Int</Type>
<Display_Name>Listener call In probability</Display_Name>
<Description>% chance that the listener call-in will be played.
If ICall-In is played, Intro and Outro will NOT be played.</Description>
<Default>0</Default>
<MinValue>0</MinValue>
<MaxValue>100</MaxValue>
</Element>
<Element>
<Name>Outro_percent</Name>
<Type>Int</Type>
<Display_Name>Outro Probability</Display_Name>
<Description>% chance that the intro will be played.
If Outro is played, Intro and Call-In will NOT be played.</Description>
<Default>0</Default>
<MinValue>0</MinValue>
<MaxValue>100</MaxValue>
</Element>
<Element>
<Name>Interface_image</Name>
<Type>String</Type>
</Element>
</Element>
<Element>
<Name>Sweeper_list</Name>
<Type>Grid</Type>
<Element>
<Name>Info</Name>
<Type>Element</Type>
<Element>
<Name>Length</Name>
<Type>Int</Type>
<Description>Length of the sweeper in milliseconds.</Description>
<Default>0</Default>
</Element>
<Element>
<Name>Cue</Name>
<Type>Reference</Type>
<Description>Wwise Name for this sweeper</Description>
<Reference>
<File>audio_syncs.xtbl</File>
<Type>NewEntity.Switches.RADIO_SWEEPERS.Values.Entry.Name</Type>
<OpenSeparate>False</OpenSeparate>
</Reference>
</Element>
</Element>
<Num_Display_Rows>8</Num_Display_Rows>
</Element>
<Element>
<Name>Commercial_list</Name>
<Type>Grid</Type>
<Element>
<Name>Info</Name>
<Type>Element</Type>
<Element>
<Name>Length</Name>
<Type>Int</Type>
<Description>Length of the commercial in milliseconds.</Description>
<Default>0</Default>
</Element>
<Element>
<Name>Cue</Name>
<Type>Reference</Type>
<Description>Wwise Name for this commercial</Description>
<Reference>
<File>audio_syncs.xtbl</File>
<Type>NewEntity.Switches.RADIO_COMMERCIALS.Values.Entry.Name</Type>
<OpenSeparate>False</OpenSeparate>
</Reference>
</Element>
</Element>
<Num_Display_Rows>8</Num_Display_Rows>
</Element>
<Element>
<Name>Intro_list</Name>
<Type>Grid</Type>
<Element>
<Name>Info</Name>
<Type>Element</Type>
<Element>
<Name>Length</Name>
<Type>Int</Type>
<Description>Length of the Intro in milliseconds.</Description>
<Default>0</Default>
</Element>
<Element>
<Name>Delay</Name>
<Type>Int</Type>
<Description>Delay before we start the song we are introducing</Description>
<Default>0</Default>
<MinValue>0</MinValue>
</Element>
<Element>
<Name>Cue</Name>
<Type>Reference</Type>
<Description>Wwise Name of this Intro</Description>
<Reference>
<File>audio_syncs.xtbl</File>
<Type>NewEntity.Switches.RADIO_INTROS.Values.Entry.Name</Type>
<OpenSeparate>False</OpenSeparate>
</Reference>
</Element>
</Element>
<Num_Display_Rows>8</Num_Display_Rows>
</Element>
<Element>
<Name>CallIn_list</Name>
<Type>Grid</Type>
<Display_Name>Call In List</Display_Name>
<Element>
<Name>Info</Name>
<Type>Element</Type>
<Element>
<Name>Length</Name>
<Type>Int</Type>
<Description>Length of this Call in</Description>
<Default>0</Default>
</Element>
<Element>
<Name>Delay</Name>
<Type>Int</Type>
<Description>Delay before we start the song we are introducing</Description>
<Default>0</Default>
</Element>
<Element>
<Name>Cue</Name>
<Type>Reference</Type>
<Description>Wwise Name for this Call in</Description>
<Reference>
<File>audio_syncs.xtbl</File>
<Type>NewEntity.Switches.RADIO_CALLINS.Values.Entry.Name</Type>
<OpenSeparate>False</OpenSeparate>
</Reference>
</Element>
</Element>
<Num_Display_Rows>8</Num_Display_Rows>
</Element>
<Element>
<Name>Outro_list</Name>
<Type>Grid</Type>
<Element>
<Name>Info</Name>
<Type>Element</Type>
<Element>
<Name>Length</Name>
<Type>Int</Type>
<Description>Length of this Outro</Description>
<Default>0</Default>
</Element>
<Element>
<Name>Prestart</Name>
<Type>Int</Type>
<Description>Negative time !!! How far back from the end of the song do we start this Outro clip. Enter a positive number.</Description>
<Default>0</Default>
<MinValue>0</MinValue>
</Element>
<Element>
<Name>Cue</Name>
<Type>Reference</Type>
<Description>Wwise Name of this Outro</Description>
<Reference>
<File>audio_syncs.xtbl</File>
<Type>NewEntity.Switches.RADIO_OUTROS.Values.Entry.Name</Type>
<OpenSeparate>False</OpenSeparate>
</Reference>
</Element>
</Element>
<Num_Display_Rows>8</Num_Display_Rows>
</Element>
<Element>
<Name>Singalong_list</Name>
<Type>Grid</Type>
<Element>
<Name>Info</Name>
<Type>Element</Type>
<Element>
<Name>Length</Name>
<Type>Int</Type>
<Description>Length of this Singalong</Description>
<Default>0</Default>
</Element>
<Element>
<Name>Cue</Name>
<Type>Reference</Type>
<Description>Wwise Name of this Singalong</Description>
<Reference>
<File>audio_syncs.xtbl</File>
<Type>NewEntity.Switches.RADIO_SING_ALONGS.Values.Entry.Name</Type>
<OpenSeparate>False</OpenSeparate>
</Reference>
</Element>
</Element>
<Num_Display_Rows>8</Num_Display_Rows>
</Element>
<Element>
<Name>Song_List</Name>
<Type>Grid</Type>
<Element>
<Name>Info</Name>
<Type>Element</Type>
<Element>
<Name>Buyable</Name>
<Type>Selection</Type>
<Description>Player can purchase this song for their "My Radio" playlist.</Description>
<Default>False</Default>
<Choice>True</Choice>
<Choice>False</Choice>
</Element>
<Element>
<Name>Length</Name>
<Type>Int</Type>
<Description>Length of this Song</Description>
<Default>0</Default>
</Element>
<Element>
<Name>Cue</Name>
<Type>Reference</Type>
<Reference>
<File>audio_syncs.xtbl</File>
<Type>NewEntity.Switches.RADIO_SONGS.Values.Entry.Name</Type>
<OpenSeparate>False</OpenSeparate>
</Reference>
</Element>
<Element>
<Name>Intros</Name>
<Type>Grid</Type>
<Element>
<Name>Cue</Name>
<Type>Reference</Type>
<Description>Cue of the possible intros for this song</Description>
<Reference>
<File>radio_stations\Klassic_radio.xtbl</File>
<Type>NewEntity.Intro_list.Info.Cue</Type>
<OpenSeparate>False</OpenSeparate>
</Reference>
</Element>
<Num_Display_Rows>8</Num_Display_Rows>
</Element>
<Element>
<Name>CallIns</Name>
<Type>Grid</Type>
<Description>Call In cues for this Song</Description>
<Element>
<Name>Cue</Name>
<Type>Reference</Type>
<Reference>
<File>radio_stations\Klassic_radio.xtbl</File>
<Type>NewEntity.CallIn_list.Info.Cue</Type>
<OpenSeparate>False</OpenSeparate>
</Reference>
</Element>
<Num_Display_Rows>8</Num_Display_Rows>
</Element>
<Element>
<Name>Outros</Name>
<Type>Grid</Type>
<Element>
<Name>Cue</Name>
<Type>Reference</Type>
<Description>Outro Cues for this Song</Description>
<Reference>
<File>radio_stations\Klassic_radio.xtbl</File>
<Type>NewEntity.Outro_list.Info.Cue</Type>
<OpenSeparate>False</OpenSeparate>
</Reference>
</Element>
<Num_Display_Rows>8</Num_Display_Rows>
</Element>
<Element>
<Name>Sing_along</Name>
<Type>Grid</Type>
<Display_Name>Sing Along</Display_Name>
<Element>
<Name>Info</Name>
<Type>Element</Type>
<Element>
<Name>percent</Name>
<Type>Int</Type>
<Display_Name>%</Display_Name>
<Description>Play chance percentage</Description>
<Default>0</Default>
<MinValue>0</MinValue>
<MaxValue>100</MaxValue>
</Element>
<Element>
<Name>Persona</Name>
<Type>Reference</Type>
<Reference>
<File>audio_personas.xtbl</File>
<Type>Audio_Persona.Name</Type>
<OpenSeparate>False</OpenSeparate>
</Reference>
</Element>
<Element>
<Name>Cue</Name>
<Type>Reference</Type>
<Reference>
<File>radio_stations\Klassic_radio.xtbl</File>
<Type>NewEntity.Singalong_list.Info.Cue</Type>
<OpenSeparate>False</OpenSeparate>
</Reference>
</Element>
</Element>
<Num_Display_Rows>8</Num_Display_Rows>
</Element>
</Element>
<Num_Display_Rows>8</Num_Display_Rows>
</Element>
<Element>
<Name>Station_Playlist</Name>
<Type>Grid</Type>
<Display_Name>Playlist</Display_Name>
<Description>List sequence of station entry chunks</Description>
<Element>
<Name>Playlist_entry</Name>
<Type>Selection</Type>
<Display_Name>Play Type</Display_Name>
<Default>Song</Default>
<Choice>Song</Choice>
<Choice>Sweeper</Choice>
<Choice>Commercial</Choice>
</Element>
<Num_Display_Rows>10</Num_Display_Rows>
</Element>
<Single_Line_XML>False</Single_Line_XML>
</TableDescription>
<EntryCategories>
<Category>
<Name>Entries</Name>
</Category>
</EntryCategories>
</root>
<Particle_Systems></Particle_Systems>
then PP format it to <Particle_Systems/>
instead -- and that's why it's crashing in SR2, probably.There's a post from me back when fiddling with SR4 format and checking recently it works there -- however, can confirm now that it crashes with SR2. Haven't played with SR2 format previously so I have no idea that it isn't working there.
No idea at all why it works on SR4 but not with SR2 though. If someone can chime in and give insights about that it'd be much appreciated. I mean, not a big deal anyway without pretty-print, it's just--well as it said--looks prettier with that, hahah.
Edit: Oh, I get it. It removes every function with undefined value like<Particle_Systems></Particle_Systems>
then PP format it to<Particle_Systems/>
instead -- and that's why it's crashing in SR2, probably.
The batch file managed to find the game, but I get this error when I'm updating the asm files.I'm assuming you meant this error?:
View attachment 29489
That's because you're not supposed to run it normally since it's a command-line and not a GUI based tool.
Here's the information on it:
View attachment 29490
As you can see, the tool requires for you to input the source of the base game directory.
It also says that if left blank, it will auto-detect it but I think it is failing to do so for some reason.
Regardless, make sure you've got file extensions visible then you need to create a batch script inside the same folder you have ThomasJepp SaintsRow IV Tools. You can do that by creating a new text file and renaming the extension from ".txt" to ".bat". (Example: TJSR-Stream2Update.bat)
Now you need to edit the batch file by opening it with Notepad++
Copy paste the following code: (Make sure to replace the string set in "SRVIDir=" to the location where you've installed the game.)
Code:@echo off set ToolDir=%~dp0 set SRIVDir=D:\Games\Steam\steamapps\common\Saints Row IV echo. "%ToolDir%ThomasJepp.SaintsRow.Stream2Update.exe" "%SRIVDir%" echo. pause
Save the file and make sure you've got all the ".str2_pc" files in the base game directory before you run the batch file and it will be updated successfully.
That is an error within the tool itself and has nothing to do with the script.The batch file managed to find the game, but I get this error when I'm updating the asm files.
View attachment 33489