Index ⇒ Games Support ⇒ Batch (?) Script to rename files  Topic is solved

Trouble playing a game? Game not running well? Ask help here.

Moderator: LW Moderator

Batch (?) Script to rename files

Postby Terje_P » Tue Mar 28, 2023 11:46 am

I need help creating a batch script to rename files. While this would be somewhat unnecessary as the files are now renamed. I think it's good way to figure out if I made by typos in the notes compared to the filenames. Maybe people want a clean start without all of the manual labor.. .

Need to rename files in accordance to the notes in the pastebin.

What I want to achieve:

0000001f.wav to gum_begin_1.wav
00000020.wav to gum_begin_2.wav

Etc for all the files
https://pastebin.com/t5kjPHUQ
Terje_P
Super Member
 
Posts: 1467
Joined: Sat Dec 29, 2012 4:38 pm
Thanks: 127
Thanked: 955 times in 739 posts

Re: Batch (?) Script to rename files

Postby Terje_P » Tue Mar 28, 2023 11:59 am

I think it should be
Code: Select all
ren oldfilename.vaw newfilename.vaw


I would need a way to filter my notes so that I don't have to do too much manual labour to create the script? Would that be possible?
Terje_P
Super Member
 
Posts: 1467
Joined: Sat Dec 29, 2012 4:38 pm
Thanks: 127
Thanked: 955 times in 739 posts

Re: Batch (?) Script to rename files  Topic is solved

Postby HcH » Tue Mar 28, 2023 12:27 pm

From your pastebin raw file, using a Linux shell, CAT to feed the lines to AWK, that splits and inserts strings on a specified delimiter ("):

Image

rename.bat
Code: Select all
ren gum_begin_1 0000001f.wav
ren gum_begin_2 00000020.wav
ren gum_begin_3 00000021.wav
ren gum_begin_4 00000022.wav
ren gum_begin_5 00000023.wav
ren gum_begin_6 00000024.wav
ren gum_begin_7 00000025.wav
ren gum_begin_8 00000026.wav
ren gum_begin_9 00000027.wav
ren gum_begin_10 00000028.wav
ren gum_begin_11 00000029.wav
ren gum_begin_12 0000002a.wav
ren gum_begin_13 0000002b.wav
ren gum_begin_15 0000002c.wav
ren gum_begin_16 0000002d.wav
ren gum_begin_17 0000002e.wav
ren gum_begin_18  FILE IS MISSING Solution Merge streets_invasion_4.wav and gum_begin_17.wav for proper voice (TESTED)
ren gum_begin_19 0000002f.wav
ren gum_begin_20 00000030.wav
ren gum_transform_1 0000003b.wav
ren gum_transform_2 0000003c.wav
ren gum_transform_3 0000003d.wav
ren gum_transform_4 0000003e.wav
ren gum_transform_5 0000003f.wav
ren gum_transform_6 00000040.wav
ren gum_transform_7 00000041.wav
ren gum_transform_8 00000042.wav
ren gum_transform_9 00000043.wav
ren gum_transform_10 00000044.wav
ren gum_transform_11 00000045.wav
ren gum_transform_12 00000046.wav
ren gum_transform_13 00000047.wav
ren gum_transform_14 00000048.wav
ren gum_transform_14_copy 00000049.wav
ren gum_transform_15 0000004a.wav
ren gum_transform_16 0000004b.wav
ren gum_transform_17 0000004c.wav
ren gum_transform_18 0000004d.wav
ren gum_transform_19 0000004e.wav
ren gum_transform_20 0000004f.wav
ren gum_transform_21 00000050.wav
ren gum_transform_22 00000051.wav
ren gum_transform_23 00000052.wav
ren gum_transform_24 00000053.wav
ren gum_transform_25 00000054.wav
ren gum_transform_26 00000055.wav
ren gum_transform_27 00000056.wav
ren gum_transform_28 00000057.wav
ren gum_transform_29 00000058.wav
ren gum_transform_30 00000059.wav
ren gum_transform_31 0000005a.wav
ren gum_transform_32 0000005b.wav
ren gum_end_1 00000031.wav
ren gum_end_2 00000032.wav
ren gum_end_3 00000033.wav
ren gum_end_4 00000034.wav
ren gum_end_5 00000035.wav
ren gum_end_6 00000036.wav
ren gum_end_7 00000037.wav
ren gum_end_8 00000038.wav
ren gum_end_9 00000039.wav
ren gum_end_10 0000003a.wav
ren boss_begin_1 00000017.wav
ren boss_begin_2 00000018.wav
ren boss_begin_3 00000019.wav
ren boss_begin_4 0000001a.wav
ren boss_trap_1 0000001e.wav
ren boss_end_1 0000001b.wav
ren boss_end_2 0000001c.wav
ren boss_end_3 0000001d
ren metro_begin_1 0000005c.wav
ren metro_mutation_1 0000005d.wav
ren metro_mutation_2 0000005e.wav
ren metro_mutation_3 0000005f.wav
ren metro_mutation_4 00000060.wav
ren metro_mutation_5 00000061.wav
ren metro_mutation_6 00000062.wav
ren metro_mutation_7 00000063.wav
ren metro_mutation_8 00000064.wav
ren metro_mutation_9 00000065.wav
ren metro_mutation_10 00000066.wav
ren metro_mutation_11 00000067.wav
ren metro_mutation_12 00000068.wav
ren metro_mutation_13 00000069.wav
ren metro_mutation_14 0000006a.wav
ren metro_mutation_15 0000006b.wav
ren metro_soldier_1 0000006c.wav
ren metro_soldier_2 0000006d.wav
ren metro_soldier_3 0000006e.wav
ren metro_soldier_4 0000006f.wav
ren metro_soldier_5 00000070.wav
ren metro_soldier_6 00000071.wav
ren metro_soldier_7 00000072.wav
ren metro_soldier_8 00000073.wav
ren metro_soldier_9 00000074.wav
ren streets_begin_1 00000097.wav
ren streets_begin_2 00000098.wav
ren streets_begin_3 00000099.wav
ren streets_begin_4 0000009a.wav
ren streets_invasion_1 0000009e.wav
ren streets_invasion_2 0000009f.wav
ren streets_invasion_3 000000a0.wav
ren streets_invasion_4 000000a1.wav
ren streets_invasion_5 000000a2.wav
ren streets_end_1 0000009b.wav
ren streets_end_2 0000009c.wav
ren streets_end_3 0000009d.wav
ren undersiege_dot_1 000000a3.wav
ren undersiege_dot_2 000000a4.wav
ren undersiege_dot_3 000000a5.wav
ren undersiege_dot_4 000000a6.wav
ren undersiege_dot_5 000000a7.wav
ren undersiege_dot_6 000000a8.wav
ren undersiege_dot_7 000000a9.wav
ren undersiege_dot_9 000000aa.wav
ren undersiege_dot_10 000000ab.wav
ren undersiege_friends_1 000000b6.wav
ren undersiege_friends_2 000000b7.wav
ren undersiege_friends_3 000000b8.wav
ren undersiege_friends_4 000000b9.wav
ren undersiege_friends_5 000000ba.wav
ren undersiege_friends_6 000000bb.wav
ren undersiege_friends_7 000000bc.wav
ren undersiege_friends_8 000000bd
ren undersiege_friends_9 000000be.wav
ren undersiege_friends_10 000000bf.wav
ren undersiege_friends_11 000000c0.wav
ren undersiege_friends_12 000000c1.wav
ren undersiege_friends_13 000000c2.wav
ren undersiege_friends_14 000000c3.wav
ren undersiege_friends_15 000000c4.wav
ren undersiege_flashback_1 000000ac.wav
ren undersiege_flashback_2 000000ad.wav
ren undersiege_flashback_3 000000ae.wav
ren undersiege_flashback_4 000000af.wav
ren undersiege_flashback_5 000000b0.wav
ren undersiege_flashback_6 000000b1.wav
ren undersiege_flashback_7 000000b2.wav
ren undersiege_flashback_8 000000b3.wav
ren undersiege_flashback_9 000000b4.wav
ren undersiege_flashback_10 000000b5.wav
ren undersiege_turret_1 000000c5.wav
ren undersiege_turret_2 000000c6.wav
ren undersiege_turret_3 000000c7.wav
ren undersiege_turret_4 000000c8.wav
ren undersiege_turret_5 000000c9.wav
ren square_begin_1 0000008f.wav
ren square_begin_2 00000090.wav
ren square_begin_3 00000091.wav
ren square_begin_4 00000092.wav
ren square_end_1 00000093.wav
ren square_end_2 00000094.wav
ren square_end_3 00000095.wav
ren square_end_4 00000096.wav
ren mortuary_begin_1 00000075.wav
ren mortuary_begin_2 00000076.wav
ren mortuary_overseer_1 00000077.wav
ren mortuary_overseer_2 00000078.wav
ren mortuary_overseer_3 00000079.wav
ren mortuary_overseer_4 0000007a
ren mortuary_overseer_5 0000007b.wav
ren mortuary_overseer_6 0000007c
ren mortuary_overseer_7 0000007d.wav
ren mortuary_overseer_8 0000007e.wav
ren mortuary_overseer_9 0000007f.wav
ren mortuary_overseer_10 00000080.wav
ren mortuary_overseer_11 00000081.wav
ren mortuary_overseer_12 00000082.wav
ren mortuary_overseer_13 00000083.wav
ren mortuary_overseer_14 00000084.wav
ren mortuary_overseer_15 00000085.wav
ren mortuary_overseer_16 00000086.wav
ren mortuary_overseer_17 00000087.wav
ren mortuary_overseer_18 00000088.wav
ren mortuary_overseer_19 00000089.wav
ren mortuary_overseer_20 0000008a.wav
ren mortuary_overseer_21 0000008b.wav
ren mortuary_overseer_22 0000008c.wav
ren mortuary_overseer_23 0000008d.wav
ren mortuary_overseer_24 0000008e.wav
ren base_begin_1 00000000.wav
ren base_begin_2 00000001.wav
ren base_truth_1 00000009.wav
ren base_truth_2 0000000a.wav
ren base_truth_3 0000000b.wav
ren base_truth_4 0000000c.wav
ren base_truth_5 0000000d.wav
ren base_truth_6 0000000e.wav
ren base_truth_7 0000000f.wav
ren base_truth_8 00000010.wav
ren base_truth_9 00000011.wav
ren base_truth_10 00000012.wav
ren base_truth_11 00000013.wav
ren base_truth_12 00000014.wav
ren base_truth_13 00000015.wav
ren base_truth_14 00000016.wav
ren base_end_1 00000002.wav
ren base_end_2 00000003.wav
ren base_end_3 00000004.wav
ren base_end_4 00000005.wav
ren base_end_5 00000006.wav
ren base_end_6 00000007.wav
ren base_end_7 00000008.wav


Note that the last ones don't have a wav:
ren gum_hint_1
ren gum_hint_2
ren boss_hint_1
ren boss_hint_2
ren boss_hint_3
ren boss_hint_4
ren metro_hint_1
ren metro_hint_2
ren metro_hint_3
ren metro_hint_4
ren turrel_hint_1
ren square_hint_1
ren square_hint_2
ren mortuary_hint_1
ren mortuary_hint_2
ren depot_hint_1
ren depot_hint_2
ren final_hint_1
Last edited by HcH on Tue Mar 28, 2023 12:37 pm, edited 1 time in total.
HcH
Super Member
 
Posts: 54
Joined: Thu Jul 07, 2022 10:03 pm
Thanks: 100
Thanked: 43 times in 27 posts

The following user would like to thank HcH for this post
Terje_P

Re: Batch (?) Script to rename files

Postby Terje_P » Wed Mar 29, 2023 9:57 am

The last ones are gameplay hints which don't have audio tied to them.

505 games added those hints when they localized the game to make the game feel a bit more polished . The original 2008 Russian only version didn't have them.
Terje_P
Super Member
 
Posts: 1467
Joined: Sat Dec 29, 2012 4:38 pm
Thanks: 127
Thanked: 955 times in 739 posts

The following user would like to thank Terje_P for this post
HcH

Re: Batch (?) Script to rename files

Postby Terje_P » Wed Mar 29, 2023 11:53 am

Could you reverse the script?

So that ren gum_begin_1.vaw 0000001f.wav becomes ren 0000001f.wav gum_begin_1.wav

I have a feeling the other language versions of the game may have the same filenames, with a batch script I could try to do them all.
Terje_P
Super Member
 
Posts: 1467
Joined: Sat Dec 29, 2012 4:38 pm
Thanks: 127
Thanked: 955 times in 739 posts

Re: Batch (?) Script to rename files

Postby Terje_P » Wed Mar 29, 2023 1:36 pm

Will see if I can't get the xwb_split program in the last comment here to work. Then I will avoid the issue of unlabeled wave files to my understanding.

https://zenhax.com/viewtopic.php?t=6910

Importing the xwb in foobar with the appropriate plugin at least gives me something to work with, also the audio clips are sequenced in some degree, so I can make an educated guess of what the matching filenames would be.

Foobar seems to be a bit hit or miss. Some xwb files load fine, while other have messed up audio tracks with the wrong length. Although i would probably have saved some time instead of comparing one by one to the subtitles.

Will get the 360 release and see if what files can be extracted there.
Last edited by Terje_P on Wed Mar 29, 2023 8:22 pm, edited 3 times in total.
Terje_P
Super Member
 
Posts: 1467
Joined: Sat Dec 29, 2012 4:38 pm
Thanks: 127
Thanked: 955 times in 739 posts

Re: Batch (?) Script to rename files

Postby annoyment » Wed Mar 29, 2023 5:34 pm

Terje_P wrote:Could you reverse the script?

Quick inefficient bodge of HcH's batch text with Excel and Notepad++ :lol:
Code: Select all
ren 0000001f.wav gum_begin_1.wav
ren 00000020.wav gum_begin_2.wav
ren 00000021.wav gum_begin_3.wav
ren 00000022.wav gum_begin_4.wav
ren 00000023.wav gum_begin_5.wav
ren 00000024.wav gum_begin_6.wav
ren 00000025.wav gum_begin_7.wav
ren 00000026.wav gum_begin_8.wav
ren 00000027.wav gum_begin_9.wav
ren 00000028.wav gum_begin_10.wav
ren 00000029.wav gum_begin_11.wav
ren 0000002a.wav gum_begin_12.wav
ren 0000002b.wav gum_begin_13.wav
ren 0000002c.wav gum_begin_15.wav
ren 0000002d.wav gum_begin_16.wav
ren 0000002e.wav gum_begin_17.wav
ren 0000002f.wav gum_begin_19.wav
ren 00000030.wav gum_begin_20.wav
ren 0000003b.wav gum_transform_1.wav
ren 0000003c.wav gum_transform_2.wav
ren 0000003d.wav gum_transform_3.wav
ren 0000003e.wav gum_transform_4.wav
ren 0000003f.wav gum_transform_5.wav
ren 00000040.wav gum_transform_6.wav
ren 00000041.wav gum_transform_7.wav
ren 00000042.wav gum_transform_8.wav
ren 00000043.wav gum_transform_9.wav
ren 00000044.wav gum_transform_10.wav
ren 00000045.wav gum_transform_11.wav
ren 00000046.wav gum_transform_12.wav
ren 00000047.wav gum_transform_13.wav
ren 00000048.wav gum_transform_14.wav
ren 00000049.wav gum_transform_14_copy.wav
ren 0000004a.wav gum_transform_15.wav
ren 0000004b.wav gum_transform_16.wav
ren 0000004c.wav gum_transform_17.wav
ren 0000004d.wav gum_transform_18.wav
ren 0000004e.wav gum_transform_19.wav
ren 0000004f.wav gum_transform_20.wav
ren 00000050.wav gum_transform_21.wav
ren 00000051.wav gum_transform_22.wav
ren 00000052.wav gum_transform_23.wav
ren 00000053.wav gum_transform_24.wav
ren 00000054.wav gum_transform_25.wav
ren 00000055.wav gum_transform_26.wav
ren 00000056.wav gum_transform_27.wav
ren 00000057.wav gum_transform_28.wav
ren 00000058.wav gum_transform_29.wav
ren 00000059.wav gum_transform_30.wav
ren 0000005a.wav gum_transform_31.wav
ren 0000005b.wav gum_transform_32.wav
ren 00000031.wav gum_end_1.wav
ren 00000032.wav gum_end_2.wav
ren 00000033.wav gum_end_3.wav
ren 00000034.wav gum_end_4.wav
ren 00000035.wav gum_end_5.wav
ren 00000036.wav gum_end_6.wav
ren 00000037.wav gum_end_7.wav
ren 00000038.wav gum_end_8.wav
ren 00000039.wav gum_end_9.wav
ren 0000003a.wav gum_end_10.wav
ren 00000017.wav boss_begin_1.wav
ren 00000018.wav boss_begin_2.wav
ren 00000019.wav boss_begin_3.wav
ren 0000001a.wav boss_begin_4.wav
ren 0000001e.wav boss_trap_1.wav
ren 0000001b.wav boss_end_1.wav
ren 0000001c.wav boss_end_2.wav
ren 0000001d boss_end_3.wav
ren 0000005c.wav metro_begin_1.wav
ren 0000005d.wav metro_mutation_1.wav
ren 0000005e.wav metro_mutation_2.wav
ren 0000005f.wav metro_mutation_3.wav
ren 00000060.wav metro_mutation_4.wav
ren 00000061.wav metro_mutation_5.wav
ren 00000062.wav metro_mutation_6.wav
ren 00000063.wav metro_mutation_7.wav
ren 00000064.wav metro_mutation_8.wav
ren 00000065.wav metro_mutation_9.wav
ren 00000066.wav metro_mutation_10.wav
ren 00000067.wav metro_mutation_11.wav
ren 00000068.wav metro_mutation_12.wav
ren 00000069.wav metro_mutation_13.wav
ren 0000006a.wav metro_mutation_14.wav
ren 0000006b.wav metro_mutation_15.wav
ren 0000006c.wav metro_soldier_1.wav
ren 0000006d.wav metro_soldier_2.wav
ren 0000006e.wav metro_soldier_3.wav
ren 0000006f.wav metro_soldier_4.wav
ren 00000070.wav metro_soldier_5.wav
ren 00000071.wav metro_soldier_6.wav
ren 00000072.wav metro_soldier_7.wav
ren 00000073.wav metro_soldier_8.wav
ren 00000074.wav metro_soldier_9.wav
ren 00000097.wav streets_begin_1.wav
ren 00000098.wav streets_begin_2.wav
ren 00000099.wav streets_begin_3.wav
ren 0000009a.wav streets_begin_4.wav
ren 0000009e.wav streets_invasion_1.wav
ren 0000009f.wav streets_invasion_2.wav
ren 000000a0.wav streets_invasion_3.wav
ren 000000a1.wav streets_invasion_4.wav
ren 000000a2.wav streets_invasion_5.wav
ren 0000009b.wav streets_end_1.wav
ren 0000009c.wav streets_end_2.wav
ren 0000009d.wav streets_end_3.wav
ren 000000a3.wav undersiege_dot_1.wav
ren 000000a4.wav undersiege_dot_2.wav
ren 000000a5.wav undersiege_dot_3.wav
ren 000000a6.wav undersiege_dot_4.wav
ren 000000a7.wav undersiege_dot_5.wav
ren 000000a8.wav undersiege_dot_6.wav
ren 000000a9.wav undersiege_dot_7.wav
ren 000000aa.wav undersiege_dot_9.wav
ren 000000ab.wav undersiege_dot_10.wav
ren 000000b6.wav undersiege_friends_1.wav
ren 000000b7.wav undersiege_friends_2.wav
ren 000000b8.wav undersiege_friends_3.wav
ren 000000b9.wav undersiege_friends_4.wav
ren 000000ba.wav undersiege_friends_5.wav
ren 000000bb.wav undersiege_friends_6.wav
ren 000000bc.wav undersiege_friends_7.wav
ren 000000bd undersiege_friends_8.wav
ren 000000be.wav undersiege_friends_9.wav
ren 000000bf.wav undersiege_friends_10.wav
ren 000000c0.wav undersiege_friends_11.wav
ren 000000c1.wav undersiege_friends_12.wav
ren 000000c2.wav undersiege_friends_13.wav
ren 000000c3.wav undersiege_friends_14.wav
ren 000000c4.wav undersiege_friends_15.wav
ren 000000ac.wav undersiege_flashback_1.wav
ren 000000ad.wav undersiege_flashback_2.wav
ren 000000ae.wav undersiege_flashback_3.wav
ren 000000af.wav undersiege_flashback_4.wav
ren 000000b0.wav undersiege_flashback_5.wav
ren 000000b1.wav undersiege_flashback_6.wav
ren 000000b2.wav undersiege_flashback_7.wav
ren 000000b3.wav undersiege_flashback_8.wav
ren 000000b4.wav undersiege_flashback_9.wav
ren 000000b5.wav undersiege_flashback_10.wav
ren 000000c5.wav undersiege_turret_1.wav
ren 000000c6.wav undersiege_turret_2.wav
ren 000000c7.wav undersiege_turret_3.wav
ren 000000c8.wav undersiege_turret_4.wav
ren 000000c9.wav undersiege_turret_5.wav
ren 0000008f.wav square_begin_1.wav
ren 00000090.wav square_begin_2.wav
ren 00000091.wav square_begin_3.wav
ren 00000092.wav square_begin_4.wav
ren 00000093.wav square_end_1.wav
ren 00000094.wav square_end_2.wav
ren 00000095.wav square_end_3.wav
ren 00000096.wav square_end_4.wav
ren 00000075.wav mortuary_begin_1.wav
ren 00000076.wav mortuary_begin_2.wav
ren 00000077.wav mortuary_overseer_1.wav
ren 00000078.wav mortuary_overseer_2.wav
ren 00000079.wav mortuary_overseer_3.wav
ren 0000007a mortuary_overseer_4.wav
ren 0000007b.wav mortuary_overseer_5.wav
ren 0000007c mortuary_overseer_6.wav
ren 0000007d.wav mortuary_overseer_7.wav
ren 0000007e.wav mortuary_overseer_8.wav
ren 0000007f.wav mortuary_overseer_9.wav
ren 00000080.wav mortuary_overseer_10.wav
ren 00000081.wav mortuary_overseer_11.wav
ren 00000082.wav mortuary_overseer_12.wav
ren 00000083.wav mortuary_overseer_13.wav
ren 00000084.wav mortuary_overseer_14.wav
ren 00000085.wav mortuary_overseer_15.wav
ren 00000086.wav mortuary_overseer_16.wav
ren 00000087.wav mortuary_overseer_17.wav
ren 00000088.wav mortuary_overseer_18.wav
ren 00000089.wav mortuary_overseer_19.wav
ren 0000008a.wav mortuary_overseer_20.wav
ren 0000008b.wav mortuary_overseer_21.wav
ren 0000008c.wav mortuary_overseer_22.wav
ren 0000008d.wav mortuary_overseer_23.wav
ren 0000008e.wav mortuary_overseer_24.wav
ren 00000000.wav base_begin_1.wav
ren 00000001.wav base_begin_2.wav
ren 00000009.wav base_truth_1.wav
ren 0000000a.wav base_truth_2.wav
ren 0000000b.wav base_truth_3.wav
ren 0000000c.wav base_truth_4.wav
ren 0000000d.wav base_truth_5.wav
ren 0000000e.wav base_truth_6.wav
ren 0000000f.wav base_truth_7.wav
ren 00000010.wav base_truth_8.wav
ren 00000011.wav base_truth_9.wav
ren 00000012.wav base_truth_10.wav
ren 00000013.wav base_truth_11.wav
ren 00000014.wav base_truth_12.wav
ren 00000015.wav base_truth_13.wav
ren 00000016.wav base_truth_14.wav
ren 00000002.wav base_end_1.wav
ren 00000003.wav base_end_2.wav
ren 00000004.wav base_end_3.wav
ren 00000005.wav base_end_4.wav
ren 00000006.wav base_end_5.wav
ren 00000007.wav base_end_6.wav
ren 00000008.wav base_end_7.wav


ren   FILE IS MISSING Solution Merge streets_invasion_4.wav and gum_begin_17.wav for proper voice (TESTED)   gum_begin_18.wav

WARNUNG: some input files (000...etc) don't have their .wav extension; thankfully that's just a couple of lines, so please rectify those how/when you see fit :wink:
"Hellos, plz help with this, will help backward." -Wimpy
Image
User avatar
annoyment
Super Member
 
Posts: 1997
Joined: Tue Jul 14, 2015 9:30 pm
Location: Land of KEBAB REMOVERS
Thanks: 602
Thanked: 768 times in 659 posts

The following user would like to thank annoyment for this post
HcH, Terje_P

Re: Batch (?) Script to rename files

Postby Terje_P » Wed Mar 29, 2023 6:59 pm

Will have to do some QA later, but here is an early and possibly only edition of the translation. Went a bit backwards and forwards when testing so not quite sure about its state now. Some assembly required :lol:

https://mega.nz/folder/BOYnFSzQ#LUXRGqZ3h6dKbT0yOwEMpA

delete ui.pak replace with fonts folder and UI data\fonts data\ui
Extract sounds.pak with quickbms using the clutch script in order to use my sound files

The game will run with extracted pak files

Tested with Russian retail release (4gb image) and wkduffy version

Enemy chatter not done yet, as I need some russkies to help me with that.. There are also fewer English files than Russian ones, so would need to figure out how to solve this, maybe duplicate the english one to fill the void if the content dont matter or use russian ones in it place. Want to avoid silence here....
Last edited by Terje_P on Sat Apr 01, 2023 2:03 pm, edited 1 time in total.
Terje_P
Super Member
 
Posts: 1467
Joined: Sat Dec 29, 2012 4:38 pm
Thanks: 127
Thanked: 955 times in 739 posts

The following user would like to thank Terje_P for this post
HcH

Re: Batch (?) Script to rename files

Postby HcH » Thu Mar 30, 2023 12:36 am

Great job.

I might be able to test this out a bit, I have some older Win7 machines so I'm not sure if those are capable of running this.

Let me know if you need a test run!
HcH
Super Member
 
Posts: 54
Joined: Thu Jul 07, 2022 10:03 pm
Thanks: 100
Thanked: 43 times in 27 posts

Re: Batch (?) Script to rename files

Postby Terje_P » Thu Mar 30, 2023 4:56 am

The older Windows 7 laptops should be good, the game came out in 2008 and ran playable on my HD5500 5005u laptop. We all know how bad iGPUs are.
Terje_P
Super Member
 
Posts: 1467
Joined: Sat Dec 29, 2012 4:38 pm
Thanks: 127
Thanked: 955 times in 739 posts

The following user would like to thank Terje_P for this post
HcH

Re: Batch (?) Script to rename files

Postby Terje_P » Fri Mar 31, 2023 12:11 am

It seems like Foobar #tags and the order of console output for unxwb match up.


Code: Select all
 28534       ADP  47993 1 8  00000000.wav
  34870       ADP  48008 1 8  00000001.wav
  40634       ADP  48006 1 8  00000002.wav
  21758       ADP  48005 1 8  00000003.wav
  47806       ADP  48008 1 8  00000004.wav
  25938       ADP  48000 1 8  00000005.wav
  17226       ADP  48011 1 8  00000006.wav
  74624       ADP  48007 1 8  00000007.wav
  22660       ADP  47980 1 8  00000008.wav
  49236       ADP  47997 1 8  00000009.wav
  33198       ADP  48006 1 8  0000000a.wav
  25476       ADP  48010 1 8  0000000b.wav
  36586       ADP  47986 1 8  0000000c.wav
  26796       ADP  48014 1 8  0000000d.wav
  47454       ADP  48007 1 8  0000000e.wav
  26488       ADP  48011 1 8  0000000f.wav
  27192       ADP  48004 1 8  00000010.wav
  29172       ADP  47993 1 8  00000011.wav
  42724       ADP  47998 1 8  00000012.wav
  40590       ADP  48011 1 8  00000013.wav
  40590       ADP  48011 1 8  00000014.wav
  29348       ADP  48000 1 8  00000015.wav
  27610       ADP  48007 1 8  00000016.wav
  21736       ADP  47992 1 8  00000017.wav
  27456       ADP  47988 1 8  00000018.wav
  24046       ADP  48016 1 8  00000019.wav
  34826       ADP  48011 1 8  0000001a.wav
  36080       ADP  48005 1 8  0000001b.wav
  34386       ADP  47995 1 8  0000001c.wav
  61490       ADP  48004 1 8  0000001d.wav
  48488       ADP  47999 1 8  0000001e.wav
  48158       ADP  48009 1 8  0000001f.wav
  31944       ADP  48003 1 8  00000020.wav
  56958       ADP  48005 1 8  00000021.wav
  28688       ADP  47998 1 8  00000022.wav
  66748       ADP  47994 1 8  00000023.wav
  50138       ADP  47995 1 8  00000024.wav
  37048       ADP  48009 1 8  00000025.wav
  32868       ADP  47995 1 8  00000026.wav
  13002       ADP  47992 1 8  00000027.wav
  17380       ADP  48025 1 8  00000028.wav
  21010       ADP  47986 1 8  00000029.wav
  20944       ADP  47984 1 8  0000002a.wav
  16258       ADP  48008 1 8  0000002b.wav
  21450       ADP  48014 1 8  0000002c.wav
  20746       ADP  47981 1 8  0000002d.wav
  25212       ADP  47984 1 8  0000002e.wav
  23320       ADP  48010 1 8  0000002f.wav
  18920       ADP  48012 1 8  00000030.wav
  19184       ADP  48015 1 8  00000031.wav
  30954       ADP  48000 1 8  00000032.wav
  29392       ADP  48016 1 8  00000033.wav
  37466       ADP  48001 1 8  00000034.wav
  36982       ADP  48008 1 8  00000035.wav
  36982       ADP  48008 1 8  00000036.wav
  52932       ADP  47997 1 8  00000037.wav
  59906       ADP  48007 1 8  00000038.wav
  50050       ADP  48004 1 8  00000039.wav
  25542       ADP  47988 1 8  0000003a.wav
  28644       ADP  48015 1 8  0000003b.wav
  36938       ADP  47993 1 8  0000003c.wav
  30910       ADP  47988 1 8  0000003d.wav
  54538       ADP  47994 1 8  0000003e.wav
  48906       ADP  47993 1 8  0000003f.wav
  86878       ADP  47999 1 8  00000040.wav
  92510       ADP  48005 1 8  00000041.wav
  55792       ADP  48007 1 8  00000042.wav
  15070       ADP  47967 1 8  00000043.wav
  15818       ADP  48006 1 8  00000044.wav
  10736       ADP  48037 1 8  00000045.wav
  7612        ADP  48069 1 8  00000046.wav
  13486       ADP  47998 1 8  00000047.wav
  20900       ADP  47992 1 8  00000048.wav
  30162       ADP  48003 1 8  00000049.wav
  29876       ADP  47988 1 8  0000004a.wav
  40722       ADP  48002 1 8  0000004b.wav
  11682       ADP  47966 1 8  0000004c.wav
  11418       ADP  47960 1 8  0000004d.wav
  23738       ADP  47994 1 8  0000004e.wav
  42900       ADP  47988 1 8  0000004f.wav
  24266       ADP  47982 1 8  00000050.wav
  30536       ADP  48014 1 8  00000051.wav
  39204       ADP  47990 1 8  00000052.wav
  33572       ADP  48015 1 8  00000053.wav
  35486       ADP  47990 1 8  00000054.wav
  38368       ADP  47992 1 8  00000055.wav
  45672       ADP  47989 1 8  00000056.wav
  21406       ADP  47989 1 8  00000057.wav
  45936       ADP  47991 1 8  00000058.wav
  25080       ADP  48016 1 8  00000059.wav
  34144       ADP  47988 1 8  0000005a.wav
  42196       ADP  47998 1 8  0000005b.wav
  36322       ADP  47999 1 8  0000005c.wav
  49038       ADP  47997 1 8  0000005d.wav
  54626       ADP  48006 1 8  0000005e.wav
  62524       ADP  47998 1 8  0000005f.wav
  36454       ADP  48014 1 8  00000060.wav
  13068       ADP  48040 1 8  00000061.wav
  19492       ADP  47997 1 8  00000062.wav
  38126       ADP  47996 1 8  00000063.wav
  53218       ADP  48009 1 8  00000064.wav
  39864       ADP  48007 1 8  00000065.wav
  34232       ADP  48014 1 8  00000066.wav
  57068       ADP  47997 1 8  00000067.wav
  40766       ADP  48001 1 8  00000068.wav
  60346       ADP  48000 1 8  00000069.wav
  22066       ADP  47996 1 8  0000006a.wav
  32428       ADP  48000 1 8  0000006b.wav
  46992       ADP  48005 1 8  0000006c.wav
  18986       ADP  48012 1 8  0000006d.wav
  26488       ADP  47993 1 8  0000006e.wav
  26092       ADP  48016 1 8  0000006f.wav
Terje_P
Super Member
 
Posts: 1467
Joined: Sat Dec 29, 2012 4:38 pm
Thanks: 127
Thanked: 955 times in 739 posts

The following user would like to thank Terje_P for this post
HcH

Re: Batch (?) Script to rename files

Postby Terje_P » Fri Mar 31, 2023 9:19 am

Made a script for it, based on Russian filenames and guess work. The Russian folder have fewer files btw. I guess the publisher could also have mixed up voice 1 and 2 between the Russian and English release.

Code: Select all
CD C:\Users\terje\Desktop\soldier voices 2
ren    00000000.wav   combatalone1.wav
ren    00000001.wav   combatalone2.wav
ren    00000002.wav   combatalone3.wav
ren    00000003.wav   combatalone4.wav
ren    00000004.wav   combatalone5.wav
ren    00000005.wav   combatalone6.wav
ren    00000006.wav   combatalone7.wav
ren    00000007.wav   combatalone8.wav
ren    00000008.wav   combatalone9.wav
ren    00000009.wav   combatalone10.wav
ren    0000000a.wav   combatalone11.wav
ren    0000000b.wav   combatalone12.wav
ren    0000000c.wav   enemykilled1.wav
ren    0000000d.wav   enemykilled2.wav
ren    0000000e.wav   enemykilled3.wav
ren    0000000f.wav   enemykilled4.wav
ren    00000010.wav   incominggrenade1.wav
ren    00000011.wav   incominggrenade2.wav
ren    00000012.wav   incominggrenade3.wav
ren    00000013.wav   incominggrenade4.wav
ren    00000014.wav   incominggrenade5.wav
ren    00000015.wav   leftalone1.wav
ren    00000016.wav   leftalone2.wav
ren    00000017.wav   lostenemy1.wav
ren    00000018.wav   lostenemy2.wav
ren    00000019.wav   lostenemy3.wav
ren    0000001a.wav   lostenemy4.wav
ren    0000001b.wav   lostenemy5.wav
ren    0000001c.wav   lostenemy6.wav
ren    0000001d.wav   lostenemy7.wav
ren    0000001e.wav   lostenemy8.wav
ren    0000001f.wav   lostenemy9.wav
ren    00000020.wav   lostenemy10.wav
ren    00000021.wav   lostenemy11.wav
ren    00000022.wav   mandowngroup1.wav
ren    00000023.wav   mandowngroup2.wav
ren    00000024.wav   mandowngroup3.wav
ren    00000025.wav   mandowngroup4.wav
ren    00000026.wav   mandowngroup5.wav
ren    00000027.wav   newenemy1.wav
ren    00000028.wav   newenemy2.wav
ren    00000029.wav   newenemy3.wav
ren    0000002a.wav   newenemy4.wav
ren    0000002b.wav   newenemy5.wav
ren    0000002c.wav   newenemy6.wav
ren    0000002d.wav   newenemy7.wav
ren    0000002e.wav   newenemy8.wav
ren    0000002f.wav   newenemy9.wav
ren    00000030.wav   newenemy10.wav
ren    00000031.wav   newenemy11.wav
ren    00000032.wav   newenemygunner1.wav
ren    00000033.wav   newenemyhunter1.wav
ren    00000034.wav   newenemyhunter2.wav
ren    00000035.wav   newenemykamikadze1.wav
ren    00000036.wav   newenemykamikadze2.wav
ren    00000037.wav   newenemyplayer1.wav
ren    00000038.wav   newenemyplayer2.wav
ren    00000039.wav   newenemyplayer3.wav
ren    0000003a.wav   newenemyplayer4.wav
ren    0000003b.wav   newenemyplayer5.wav
ren    0000003c.wav   newenemyplayer6.wav
ren    0000003d.wav   newenemyplayer7.wav
ren    0000003e.wav   newenemysparg1.wav
ren    0000003f.wav   newenemysparg2.wav
ren    00000040.wav   newenemyterminator1.wav
ren    00000041.wav   newenemyterminator2.wav
ren    00000042.wav   pain1.wav
ren    00000043.wav   pain2.wav
ren    00000044.wav   pain3.wav
ren    00000045.wav   pain5.wav
ren    00000046.wav   pain6.wav
ren    00000047.wav   pain7.wav
ren    00000048.wav   pain8.wav
ren    00000049.wav   pain9.wav
ren    0000004a.wav   pain10.wav
ren    0000004b.wav   suspicioussoundalone1.wav
ren    0000004c.wav   suspicioussoundalone2.wav
ren    0000004d.wav   suspicioussoundalone3.wav
ren    0000004e.wav   suspicioussoundalone4.wav
ren    0000004f.wav   suspicioussoundalone5.wav
ren    00000050.wav   suspicioussoundalone6.wav
ren    00000051.wav   suspicioussoundalone7.wav
ren    00000052.wav   suspicioussoundalone8.wav
ren    00000053.wav   throwgrenade1.wav
ren    00000054.wav   throwgrenade2.wav
ren    00000055.wav   throwgrenade3.wav
ren    00000056.wav   combatgroup1.wav
ren    00000057.wav   combatgroup2.wav
ren    00000058.wav   combatgroup3.wav
ren    00000059.wav   combatgroup4.wav
ren    0000005a.wav   combatgroup5.wav
ren    0000005b.wav   combatgroup6.wav
ren    0000005c.wav   combatgroup7.wav
ren    0000005d.wav   death1.wav
ren    0000005e.wav   death2.wav
ren    0000005f.wav   death3.wav
ren    00000060.wav   death4.wav
ren    00000061.wav   death5.wav
ren    00000062.wav   death6.wav
ren    00000063.wav   death7.wav
ren    00000064.wav   death8.wav
ren    00000065.wav   death9.wav
ren    00000066.wav   death10.wav
ren    00000067.wav   death11.wav
ren    00000068.wav   death12.wav
ren    00000069.wav   death13.wav
ren    0000006a.wav   death14.wav
ren    0000006b.wav   death15.wav
ren    0000006c.wav   reload1.wav
ren    0000006d.wav   reload2.wav
ren    0000006e.wav   reload3.wav
ren    0000006f.wav   reload4.wav


Russian filenames

Code: Select all
pain1.ogg
pain2.ogg
pain3.ogg
pain5.ogg
pain6.ogg
pain7.ogg
pain8.ogg
pain9.ogg
pain10.ogg
suspicioussoundalone1.ogg
suspicioussoundalone2.ogg
suspicioussoundalone3.ogg
suspicioussoundalone4.ogg
suspicioussoundalone5.ogg
suspicioussoundalone6.ogg
suspicioussoundalone7.ogg
suspicioussoundalone8.ogg
throwgrenade1.ogg
throwgrenade2.ogg
throwgrenade3.ogg
combatalone1.ogg
combatalone2.ogg
combatalone3.ogg
combatalone4.ogg
combatalone5.ogg
combatalone6.ogg
combatalone7.ogg
combatalone8.ogg
combatalone9.ogg
combatalone10.ogg
combatalone11.ogg
combatalone12.ogg
combatalone13.ogg
combatalone14.ogg
combatalone15.ogg
combatalone16.ogg
combatalone17.ogg
enemykilled1.ogg
enemykilled2.ogg
enemykilled3.ogg
enemykilled4.ogg
incominggrenade1.ogg
incominggrenade2.ogg
incominggrenade3.ogg
incominggrenade4.ogg
incominggrenade5.ogg
leftalone1.ogg
leftalone2.ogg
lostenemy1.ogg
lostenemy2.ogg
lostenemy3.ogg
lostenemy4.ogg
lostenemy5.ogg
lostenemy6.ogg
lostenemy7.ogg
lostenemy8.ogg
lostenemy9.ogg
lostenemy10.ogg
lostenemy11.ogg
mandowngroup1.ogg
mandowngroup2.ogg
mandowngroup3.ogg
mandowngroup4.ogg
mandowngroup5.ogg
newenemy1.ogg
newenemy2.ogg
newenemy3.ogg
newenemy4.ogg
newenemy5.ogg
newenemy6.ogg
newenemy7.ogg
newenemy8.ogg
newenemy9.ogg
newenemy10.ogg
newenemy11.ogg
newenemy12.ogg
newenemygunner1.ogg
newenemyhunter1.ogg
newenemyhunter2.ogg
newenemykamikadze1.ogg
newenemykamikadze2.ogg
newenemyplayer1.ogg
newenemyplayer2.ogg
newenemyplayer3.ogg
newenemyplayer4.ogg
newenemyplayer5.ogg
newenemyplayer6.ogg
newenemyplayer7.ogg
newenemysparg1.ogg
newenemysparg2.ogg
newenemyterminator1.ogg
newenemyterminator2.ogg
newenemyterminator3.ogg


Foobar titles
Code: Select all
soldier2_voices_eng#1 (soldier_CombatAlone2)
soldier2_voices_eng#2 (soldier_CombatAlone2)
soldier2_voices_eng#3 (soldier_CombatAlone2)
soldier2_voices_eng#4
soldier2_voices_eng#5
soldier2_voices_eng#6
soldier2_voices_eng#7
soldier2_voices_eng#8
soldier2_voices_eng#9
soldier2_voices_eng#10
soldier2_voices_eng#11
soldier2_voices_eng#12
soldier2_voices_eng#13 (soldier_EnemyKilled2)
soldier2_voices_eng#14 (soldier_EnemyKilled2)
soldier2_voices_eng#15 (soldier_EnemyKilled2)
soldier2_voices_eng#16
soldier2_voices_eng#17 (soldier_IncomingGrenade2)
soldier2_voices_eng#18 (soldier_IncomingGrenade2)
soldier2_voices_eng#19 (soldier_IncomingGrenade2)
soldier2_voices_eng#20
soldier2_voices_eng#21
soldier2_voices_eng#22 (solder_LeftAlone2)
soldier2_voices_eng#23 (solder_LeftAlone2)
soldier2_voices_eng#24 (soldier_LostEnemy2)
soldier2_voices_eng#25 (soldier_LostEnemy2)
soldier2_voices_eng#26 (soldier_LostEnemy2)
soldier2_voices_eng#27
soldier2_voices_eng#28
soldier2_voices_eng#29
soldier2_voices_eng#30
soldier2_voices_eng#31
soldier2_voices_eng#32
soldier2_voices_eng#33
soldier2_voices_eng#34
soldier2_voices_eng#35 (solder_ManDownGroup2)
soldier2_voices_eng#36 (solder_ManDownGroup2)
soldier2_voices_eng#37 (solder_ManDownGroup2)
soldier2_voices_eng#38
soldier2_voices_eng#39
soldier2_voices_eng#40 (soldier_NewEnemy2)
soldier2_voices_eng#41 (soldier_NewEnemy2)
soldier2_voices_eng#42 (soldier_NewEnemy2)
soldier2_voices_eng#43
soldier2_voices_eng#44
soldier2_voices_eng#45
soldier2_voices_eng#46
soldier2_voices_eng#47
soldier2_voices_eng#48
soldier2_voices_eng#49
soldier2_voices_eng#50
soldier2_voices_eng#51 (soldier_NewEnemyGunner2)
soldier2_voices_eng#52 (soldier_NewEnemyHunter2)
soldier2_voices_eng#53 (soldier_NewEnemyHunter2)
soldier2_voices_eng#54 (soldier_NewEnemyKamikadze2)
soldier2_voices_eng#55 (soldier_NewEnemyKamikadze2)
soldier2_voices_eng#56 (soldier_NewEnemyPlayer2)
soldier2_voices_eng#57 (soldier_NewEnemyPlayer2)
soldier2_voices_eng#58 (soldier_NewEnemyPlayer2)
soldier2_voices_eng#59
soldier2_voices_eng#60
soldier2_voices_eng#61
soldier2_voices_eng#62
soldier2_voices_eng#63 (soldier_NewEnemySparg2)
soldier2_voices_eng#64 (soldier_NewEnemySparg2)
soldier2_voices_eng#65 (soldier_NewEnemyTerminator2)
soldier2_voices_eng#66 (soldier_NewEnemyTerminator2)
soldier2_voices_eng#67 (soldier_Pain2)
soldier2_voices_eng#68
soldier2_voices_eng#69
soldier2_voices_eng#70
soldier2_voices_eng#71
soldier2_voices_eng#72
soldier2_voices_eng#73
soldier2_voices_eng#74 (soldier_Pain2)
soldier2_voices_eng#75 (soldier_Pain2)
soldier2_voices_eng#76 (solder_SuspiciousSoundAlone2)
soldier2_voices_eng#77 (solder_SuspiciousSoundAlone2)
soldier2_voices_eng#78 (solder_SuspiciousSoundAlone2)
soldier2_voices_eng#79
soldier2_voices_eng#80
soldier2_voices_eng#81
soldier2_voices_eng#82
soldier2_voices_eng#83
soldier2_voices_eng#84 (soldier_ThrowGrenade2)
soldier2_voices_eng#85 (soldier_ThrowGrenade2)
soldier2_voices_eng#86 (soldier_ThrowGrenade2)
soldier2_voices_eng#87 (soldier_CombatGroup2)
soldier2_voices_eng#88 (soldier_CombatGroup2)
soldier2_voices_eng#89 (soldier_CombatGroup2)
soldier2_voices_eng#90
soldier2_voices_eng#91
soldier2_voices_eng#92
soldier2_voices_eng#93
soldier2_voices_eng#94 (soldier_Death2)
soldier2_voices_eng#95 (soldier_Death2)
soldier2_voices_eng#96 (soldier_Death2)
soldier2_voices_eng#97
soldier2_voices_eng#98
soldier2_voices_eng#99
soldier2_voices_eng#100
soldier2_voices_eng#101
soldier2_voices_eng#102
soldier2_voices_eng#103
soldier2_voices_eng#104
soldier2_voices_eng#105
soldier2_voices_eng#106
soldier2_voices_eng#107
soldier2_voices_eng#108
soldier2_voices_eng#109 (soldier_Reload2)
soldier2_voices_eng#110 (soldier_Reload2)
soldier2_voices_eng#111 (soldier_Reload2)
soldier2_voices_eng#112
Terje_P
Super Member
 
Posts: 1467
Joined: Sat Dec 29, 2012 4:38 pm
Thanks: 127
Thanked: 955 times in 739 posts

Re: Batch (?) Script to rename files

Postby Terje_P » Fri Mar 31, 2023 10:18 am

Paid for MS Ondrive transcribe functionality. Seems better for English than Russian currently. :shock:

The first file only https://www.speechtexter.com/ could do with a virtual audio cable, Onedrive (word) could do the rest of the Russian audio though.

Code: Select all
colossusaction1
держаться
derzhat'sya
GT: hold on
colossusaction2
Новые здоровая херня.
Novyye zdorovaya khernya.
GT: New healthy garbage.
colossusaction3
Мячи с ним делать?
Myachi s nim delat'?
GT: Do balls with it?
colossusaction4
Его патроны не берут?
Yego patrony ne berut?
"Is he invincible to bullets"?
colossusaction5
Вызывайте вертушки.
Vyzyvayte vertushki.
GT: Call the turntables.
colossusaction6
Нам его не одолеть.
Nam yego ne odolet'.
GT: We cannot defeat him.
colossusaction7
Стоять не отступать.
Stoyat' ne otstupat'.
GT: Stay, don't back down.
colossusaction8
Он идиот.
On idiot.
GT: He is idiot.
colossusaction9
Гранатами попробуй.
Granatami poprobuy.
GT: Try grenades.



Would need to find appopiate English files to match them with :x
Terje_P
Super Member
 
Posts: 1467
Joined: Sat Dec 29, 2012 4:38 pm
Thanks: 127
Thanked: 955 times in 739 posts

The following user would like to thank Terje_P for this post
HcH


Return to Games Support

Who is online

Users browsing this forum: No registered users and 44 guests