Special Aircraft Service

Individual Mod Downloads for IL-2 1946 => Skins, Maps, Missions & Campaigns => Skin&Markings => Topic started by: WWSandMan on March 13, 2010, 11:32:57 AM

Title: Skins Folder Tool updated
Post by: WWSandMan on March 13, 2010, 11:32:57 AM
Greetings SAS members

I wanted to place this topic in the 'Visuals\Paint Schemes' area as it is more directly related to that area of IL-2 use. But the lounge is where I'm allowed to post, so here goes. Mods/Admins can move this thread if deemed necessary.

A long while back some clever chap -I wish I could credit the proper individual, but I do not know who it is- created a simple .bat file that re-created the entire 'Paint Schemes\Skins\<aircraft type>' folder structure. The intent at the time was to make it so folks could package up skin compilations for online wars.

With the advent of the modding community and the immense variety of new modded aircraft types and sub-types, it's become increasingly difficult to keep up with the necessary skins folders for all the new types. It's possible to create the folders one at a time as needed, but it's a pain in the butt.

It has also become somewhat of an issue for DCG users to add the new modded aircraft into DCG. One of the prominent DCG users out there -JG7_X-Man- created a package that includes most new mod aircraft into DCG's system. For more info, see the DCG relevant forum thread here: http://forums.oesau.jg1.org/viewtopic.php?p=113887#113887 (http://forums.oesau.jg1.org/viewtopic.php?p=113887#113887) . X-Man included a text file in his archive listing all of the new skins folders that needed to be created to support DCG's use of modded aircraft types. While it was thoughtful of him to do that (and ultimately very useful), I balked at sitting there for hours creating new folders. I'm lazy and thought there had to be a better way.

Then I thought of that skin folder tool ... A little cut-n-paste, a few tests later, and voila... a simple tool to create those modded skin folders en masse.

Credits to the (unknown to me) original creator of the 'Skin Folder Tool' batch file, and to X-Man for compiling the modded aircraft folder list.

NEW VERSION with SAS "Ultimate Bf-109 v2.1" skin folders included : http://www.wingwalkers.org/vault/sft/sft_up20n_ult109sv21.zip (http://www.wingwalkers.org/vault/sft/sft_up20n_ult109sv21.zip)  
An example of the use for this would be to copy existing skins from the default 'P-38J' folder to the new P-38f, g, h and droopsnoot folders, where the original skins fit the new models. :)

~~~

Contents of the .bat file are listed here if you don't want to download the .zip package. This will also enable readers to correct any mistakes or omissions I may have made in compiling the folder list.

Update: This code box shows latest version with SAS 'Ultimate Bf-109's v2.1' folders present:

Code: [Select]
@echo off
ECHO This batch file will create the entire folder structure
ECHO of IL2 Sturmovik's SKIN folders.
ECHO .
ECHO Current as of version 4.09m
ECHO + mod package UltraPack 2.0n
ECHO + SAS mod package "Ultimate Bf-109's v.2.1"
ECHO .
ECHO .
ECHO This file is to assist campaign and mission designers or
ECHO Skin developers to distribute their skins already in the
ECHO Correct Folder.
ECHO .
ECHO .
REM
REM
REM
Pause
CLR
REM
REM
Mkdir Paintschemes\Skins
Chdir .\Paintschemes\Skins
REM
REM
mkdir A5M4
mkdir A6M2
mkdir A6M2-21
mkdir A6M2-N
mkdir A6M3
mkdir A6M3-22
mkdir A6M3-32
mkdir A6M3-32kai
mkdir A6M3a-22ko
mkdir A6M5
mkdir A6M5a
mkdir A6M5b
mkdir A6M5c
mkdir A6M7_Model62
mkdir A6M7_Model63
mkdir D3A1
mkdir Ar-196A-3
mkdir Ar-234B-2NJ
mkdir Ar-234B-2
mkdir AviaB534
mkdir Bf-109B-2
mkdir Bf-109E-1
mkdir Bf-109E-1B
mkdir Bf-109E-3
mkdir Bf-109E-3B
mkdir Bf-109E-4
mkdir Bf-109E-4_BoB
mkdir Bf-109E-4_Trop
mkdir Bf-109E-4_B
mkdir Bf-109E-4N
mkdir Bf-109E-7
mkdir Bf-109E-7N
mkdir Bf-109E-7N_Trop
mkdir Bf-109E-7Z
mkdir Bf-109F-0
mkdir Bf-109F-1
mkdir Bf-109F-2
mkdir BF-109F2orig
mkdir Bf-109F-2_Trop
mkdir Bf-109F-2_B
mkdir Bf-109F-2_B_Trop
mkdir Bf-109F-2U
mkdir Bf-109F-3
mkdir Bf-109F-4
mkdir Bf-109F-4MSTL
mkdir BF-109F-4_1.3ATA
mkdir Bf-109F-4_Trop
mkdir Bf-109F-4_B
mkdir Bf-109F-4_B_Trop
mkdir Bf-109F-4_R1
mkdir Bf-109F-4Z
mkdir Bf-109F-5
mkdir Bf-109F-6
mkdir Bf-109G-1
mkdir Bf-109G-10
mkdir Bf-109G-10C3
mkdir Bf-109G-10_Erla
mkdir Bf-109G-14
mkdir Bf-109G-14early
mkdir Bf-109G-14AS
mkdir Bf-109G-2
mkdir BF-109G-2_1.3ATA
mkdir Bf-109G-2_Trop
mkdir Bf-109G-3
mkdir Bf-109G-4
mkdir Bf-109G-4_Trop
mkdir Bf-109G-5
mkdir Bf-109G-5AS
mkdir Bf-109G-6
mkdir BF-109G-6_1.3ATA
mkdir Bf-109G-6_Erla
mkdir Bf-109G-6_Late
mkdir Bf-109G-6_Mid
mkdir Bf-109G-6_Trop
mkdir Bf-109G-6AS
mkdir Bf-109G-6ASN
mkdir Bf-109G-8
mkdir Bf-109K-14
mkdir Bf-109K-4
mkdir Bf-109K-4C3
mkdir Bf-109K-6
mkdir Bf-109Z
mkdir Bf-110C-1
mkdir Bf-110C-4
mkdir Bf-110C-4B
mkdir Bf-110C-7
mkdir Bf-110D-3
mkdir Bf-110E-1
mkdir Bf-110F-2
mkdir Bf-110G-2
mkdir Bf-110-G4
mkdir Breda65
mkdir Fi-156
mkdir CR-32
mkdir CR_42
mkdir CR_42BA
mkdir G_50
mkdir Fiat-G55_MOD
mkdir Fiat-G55_late_MOD
mkdir G-55
mkdir G-55-Late
mkdir Fiat-G56
mkdir Fw-189A-2
mkdir Fw190A2
mkdir Fw-190A-3
mkdir Fw-190A-4
mkdir FW-190A-4_1.42ATA
mkdir Fw-190A-5
mkdir FW-190A-5_1.42ATA
mkdir FW-190A-5_1.58ATA
mkdir Fw-190A-5165ATA
mkdir Fw-190A-5U14
mkdir Fw-190A-6
mkdir FW-190A-6orig
mkdir Fw-190A-7
mkdir Fw-190A-7STURM
mkdir Fw-190A-8
mkdir Fw-190A-8Mistel
mkdir FW-190A-8_1.65ATA
mkdir Fw-190A-9
mkdir FW-190A-9_1.65ATA
mkdir Fw-190D-11
mkdir Fw-190D-13
mkdir Fw-190D-9
mkdir Fw-190D-9_DZZMod
mkdir Fw-190D-9_Late
mkdir Fw-190D-9Late_DZZMod
mkdir FW_190D9orig
mkdir Fw-190D-9early
mkdir FW_190D-9L_orig
mkdir Fw-190F-8
mkdir Fw-190G-8
mkdir Fw-190F-1
mkdir Fw-190F-2
mkdir Fw-190F-3
mkdir Fw-190G-1
mkdir Fw-190G-2
mkdir Fw-190G-3
mkdir FW-200C-3U4
mkdir G4M1_11
mkdir G4M2E
mkdir H8K1
mkdir He-111Z
mkdir He-111H-16
mkdir He-111H-2
mkdir He-111H-21
mkdir He-111H-6
mkdir He-111P-2
mkdir He-162A-1
mkdir He-162A-2
mkdir He-162C
mkdir He-162B
mkdir He-L-IIIB2
mkdir Go-229A-1
mkdir Go-229A-2
mkdir Hs-123
mkdir Hs-129B-2
mkdir Hs-129B-3_Wa
mkdir IAR80
mkdir IAR81a
mkdir IAR81c
mkdir J2M3
mkdir J2M5
mkdir Ju-52_3mg4e
mkdir Ju-52_3mg5e
mkdir Ju-52_3mg6e
mkdir Ju-87B-2
mkdir Ju-87D-3
mkdir Ju-87D-5
mkdir Ju-87G-1
mkdir Ju-88Mistel
mkdir Ju-88A-4_Torp
mkdir Ju-88A-4
mkdir Ju-88C-6
mkdir Ki-100-I-Ko
mkdir Ki-21-I
mkdir Ki-21-II
mkdir Ki-27-Ko
mkdir Ki-27-Otsu
mkdir Ki-43-Ia
mkdir Ki-43-Ib
mkdir Ki-43-Ic
mkdir Ki-43-II
mkdir Ki-43-II-Kai
mkdir Ki-46-Otsu
mkdir Ki-46-Otsu-Hei
mkdir Ki-46-Recce
mkdir Ki-61-I-Hei
mkdir Ki-61-I-Ko
mkdir Ki-61-I-Otsu
mkdir Ki-84-Ia
mkdir Ki-84-Ib
mkdir Ki-84-Ic
mkdir S-328
mkdir MS-Morko
mkdir MC-200series1
mkdir MC-200series3
mkdir MC-200series7
mkdir MC-200series7FB
mkdir MC-202
mkdir MC-202_III
mkdir MC-202_VII
mkdir MC-202_XII
mkdir MC-205_I
mkdir MC-205_III
mkdir MC-205_IIIV
mkdir Me-163B-1a
mkdir Me-210Ca-1
mkdir Me-210Ca-1ZSTR
mkdir Me-262HG-II
mkdir Me-262A-1a
mkdir Me-262A-1aU4
mkdir Me-262A-2a
mkdir Me-321
mkdir Me-323
mkdir ME-410-A
mkdir ME-410-B
mkdir ME-410-D
mkdir MS406
mkdir MS410
mkdir MXY-7-11
mkdir N1K1-J
mkdir N1K1-Ja
mkdir N1K2-Ja
mkdir RE-2000
mkdir SM-79
mkdir Ta-152C
mkdir Ta-152C0
mkdir Ta-152C1
mkdir Ta-152C3
mkdir Ta-152H-0
mkdir Ta-152H-1
mkdir Ta-183
mkdir A-20DB7
mkdir A-20C
mkdir A-20G
mkdir B-17D
mkdir B-17E
mkdir B-17F
mkdir B-17G
mkdir B-17Gmod
mkdir B-24J-100-CF
mkdir B-24J
mkdir B-25C-25NA
mkdir B-25D-20NC
mkdir B-25D-5NC
mkdir B-25G-1NA
mkdir B-25H-1NA
mkdir B-25J-15NA
mkdir B-25J-1NA
mkdir B-25J-22NA
mkdir B-29-SP
mkdir B-29
mkdir B5N2
mkdir B6N2
mkdir BeaufighterMkI
mkdir BeaufighterMkX
mkdir BeaufighterMk21
mkdir BI-1
mkdir BI-6
mkdir BlenheimMkI
mkdir BlenheimMkIF
mkdir BlenheimMkIV
mkdir B-239
mkdir BuffaloMkI
mkdir C-47
mkdir C-47A
mkdir C-47B
mkdir CW-21
mkdir DXXI_DK
mkdir DXXI_DU
mkdir DXXI_SARJA3_EARLY
mkdir DXXI_SARJA3_LATE
mkdir DXXI_SARJA4
mkdir Do-335A-0
mkdir Do-335V-13
mkdir F2A-2
mkdir F4F-3
mkdir F4F-4
mkdir CorsairMkI
mkdir CorsairMkII
mkdir CorsairMkIV
mkdir F4U-1
mkdir F4U-1A
mkdir F4U-1C
mkdir F4U-1D
mkdir F-51D-30NA
mkdir F6F-3
mkdir F6F-5
mkdir P-80A
mkdir F-80A
mkdir F-80C
mkdir F84G1_ThunderJet
mkdir F84G2_ThunderJet
mkdir F-86A5
mkdir F-86F25E
mkdir F-86F25L
mkdir F9F2_Panther
mkdir XF9F6_Cougar
mkdir FaireyBattle
mkdir FaireyFulmar
mkdir SwordfishMkI
mkdir FM-2
mkdir J8A
mkdir GladiatorMkI
mkdir GladiatorMkII
mkdir G-11
mkdir HalifaxBMkIII
mkdir HurricaneMkI
mkdir HurricaneMkI_BoB
mkdir HurricaneMkIaT
mkdir HurricaneMkIb
mkdir HurricaneMkIbT
mkdir HurricaneMkIIbMod
mkdir HurricaneMkIIa
mkdir HurricaneMkIIb
mkdir HurricaneMkIIbT
mkdir HurricaneMkIIc
mkdir HurricaneMkIId
mkdir HurricaneMkIV
mkdir I-15_m22
mkdir I-15_m25
mkdir I-153_fin
mkdir I-153_2BS
mkdir I-153_2SHKAS_BS
mkdir I-153M62
mkdir I-153P
mkdir I-15bis
mkdir I-15bis_Skis
mkdir I-16type10
mkdir I-16type17
mkdir I-16type18
mkdir I-16type18-BS
mkdir I-16type24
mkdir I-16type27
mkdir I-16type28
mkdir I-16type5
mkdir I-16type5_Skis
mkdir I-16type5_SPB
mkdir I-16type6
mkdir I-16type6_Skis
mkdir I-185M-71
mkdir I-185M-82A
mkdir I-250
mkdir Il-10
mkdir Il-2_1940_Early
mkdir Il-2_1940_Late
mkdir Il-2_1941_Early
mkdir Il-2_1941_Late
mkdir Il-2_3
mkdir Il-2_M3
mkdir Il-2I
mkdir Il-2M_Early
mkdir Il-2M_Late
mkdir Il-2T
mkdir Il-4
mkdir Il-4_Late
mkdir DB-3b
mkdir DB-3F
mkdir DB-3M
mkdir DB-3T
mkdir La-7R
mkdir LaGG-3series8
mkdir LaGG-3series66
mkdir LaGG-3series4
mkdir LaGG-3series35
mkdir LaGG-3series29
mkdir LaGG-3series1
mkdir LaGG-3series11
mkdir LaGG-3IT
mkdir LaGG-3RD
mkdir La-5
mkdir La-5F_Late
mkdir La-5F
mkdir La-5F_Early
mkdir La-5FN
mkdir La-5FN_Early
mkdir La-7
mkdir La-73xB20
mkdir Li-2
mkdir MBR-2-AM-34
mkdir Mig-15(bis)late
mkdir MiG-15(bis)
mkdir MiG-17
mkdir MiG-3
mkdir MiG-3-2xShVAK
mkdir MiG-3-2xUB
mkdir MiG-3-AM-38
mkdir MiG-3udfm
mkdir MiG-3U
mkdir MiG-3ud
mkdir MiG-9protoF-2
mkdir MiG-9FS
mkdir Magister
mkdir MosquitoFBMkVICC
mkdir MosquitoBMkIV
mkdir MosquitoBMkXVI
mkdir MosquitoFBMkVI
mkdir R-10
mkdir P-26
mkdir P2V5_Neptune
mkdir H_75A2
mkdir P-36A-3
mkdir P-36A-4
mkdir MohawkIII_BoB
mkdir H75MO4
mkdir P-38DroopSnoot
mkdir P-38F-1-LO
mkdir P-38G-10-LO
mkdir P-38G-15-LO
mkdir P-38G-5-LO
mkdir P-38H-5-LO
mkdir P-38J
mkdir P-38J-10-LO
mkdir P-38J-15-LO
mkdir P-38J-25-LO
mkdir P-38L
mkdir P-38L_Late
mkdir P-38L-5-LO
mkdir P-39D1
mkdir P-39D2
mkdir P-39N1
mkdir P-39Q-1
mkdir P-39Q-10
mkdir Hawk81A-2
mkdir TomahawkMkIIa
mkdir TomahawkMkIIb
mkdir P-400
mkdir P-40B
mkdir P-40C
mkdir P-40E-M-105
mkdir P-40E
mkdir P-40M
mkdir P-47D-10
mkdir P-47D-22
mkdir P-47D
mkdir P-47D-27
mkdir MustangIII
mkdir P-51B-NA
mkdir P-51C-NT
mkdir P-51D-20NA
mkdir P-51D-20NT
mkdir P-51D-25NA
mkdir P-51D-30NA
mkdir P-51D-5NT
mkdir P-63C
mkdir PBN-1
mkdir PBY-5
mkdir Pe-2series110
mkdir Pe-2series1
mkdir Pe-2series359
mkdir Pe-2series84
mkdir Pe-3series1
mkdir Pe-3bis
mkdir Pe-8
mkdir U-2VS
mkdir P_11c
mkdir RWD_8
mkdir SB_2M-100A
mkdir SB_2M-103
mkdir SBD-3
mkdir SBD-5
mkdir SeaFuryMkI
mkdir SeaGladiatorMkII
mkdir SeaHurricaneMkIb
mkdir SeaHurricaneMkIIc
mkdir SeafireMkII
mkdir SeafireMkII4xH
mkdir SeafireFMkIII
mkdir SeafireMkIII
mkdir SeafireMkI
mkdir SeafireMkII45
mkdir SeafireMkII50
mkdir SpitfireMkI
mkdir SpitfireMkIb
mkdir SpitfireMkIIa
mkdir SpitfireMkIIb
mkdir SpitfireMkVa
mkdir SpitfireMkVb
mkdir SpitfireMkVb12lbs
mkdir SpitfireMkVbCLP16LBS
mkdir SpitfireMkVbLF18LBS
mkdir SpitfireMkVbLFCLP18
mkdir SpitfireMkVbCLP
mkdir SpitfireMkVbT
mkdir SpitfireMkVbLF
mkdir SpitfireMkVbLFCLP
mkdir SpitfireMkVc16LBS
mkdir SpitfireMkVc
mkdir SpitfireMkVc4xH
mkdir SpitfireMkVcFB
mkdir SpitfireMkVcFB4xH
mkdir SpitfireMkVcLF
mkdir SpitfireMkVcLF4xH
mkdir SpitfireMkVcLFCLP
mkdir SpitfireMkVIII
mkdir SpitfireMkVIII25lbs
mkdir SpitfireMkVIIICLP
mkdir SpitfireMkVIIIFB
mkdir SpitfireMkVIIICLPFB
mkdir SpitfireMkVIIIHF
mkdir SPITFIREIX
mkdir SpitfireMkIX25lbs
mkdir SpitfireMkIXc
mkdir SpitfireMkIXcCLP
mkdir SpitfireMkIXe
mkdir SpitfireMkIXeHF
mkdir SpitfireMkIXeCLP
mkdir SPITXIIearly
mkdir SpitfireMkXII
mkdir SpitfireMkXIVC
mkdir SpitfireMkLFXIVE
mkdir SpitfireMkXVIeCLP
mkdir SpitfireMkXVIe
mkdir SpitfireMkXVIe25
mkdir SpitfireMkXVIeCLP25
mkdir L-5_Sentinel
mkdir Su-2
mkdir TB-3_4M-17
mkdir TB-3_4M-17_T_DZZMod
mkdir TB-3_4M-34R
mkdir TB-3_4M-34R_SPB
mkdir TB-3_4M-34R_T_DZZMod
mkdir TBF-1
mkdir TBF-1C
mkdir AvengerMkIII
mkdir TBM1
mkdir TBM-3
mkdir TempestMkV
mkdir TempestMkV11Lbs
mkdir TempestMkV13Lbs
mkdir U-2TM
mkdir Tu-2S
mkdir TyphoonMkIB
mkdir TyphoonMkIBLate
mkdir Wellington-MKIII
mkdir Yak-1
mkdir Yak-1Late
mkdir Yak-15
mkdir Yak-1B
mkdir Yak-1B_Early
mkdir Yak-1PF
mkdir Yak-1PFLight
mkdir Yak-3
mkdir Yak-3VK-107
mkdir Yak-3bsf
mkdir Yak-3P
mkdir Yak-3R
mkdir Yak-7A
mkdir Yak-7B
mkdir Yak-7BPF
mkdir Yak-7B_late
mkdir Yak-7UTI
mkdir Yak-9
mkdir Yak-9B
mkdir Yak-9D-44
mkdir Yak-9D
mkdir Yak-9DD
mkdir Yak-9K
mkdir Yak-9M
mkdir Yak-9M_Early
mkdir Yak-9RLR_DZZMod
mkdir Yak-9T-44
mkdir Yak-9T-45
mkdir Yak-9T
mkdir Yak-9U
mkdir Yak-9U_NW
mkdir Yak-9U_Early
mkdir Yak-9UT

Updated 14March'10 1035 US CT
Title: Re: Skins Folder Tool updated
Post by: 52Zebra on March 24, 2010, 11:27:06 AM
Where do I find the skin folders that don't appear in the default skin folder?
Also The Halifax and the L-5 skin folders do not contain a void file only an empty text doc????
52Zebra

Title: Re: Skins Folder Tool updated
Post by: Solo on March 29, 2010, 10:18:26 AM
Void file are found only on original planes Skin folders.

Just a little MsDos command to extract the names of \Skins folders directly from air.ini
Copy the following line into a *.txt file and rename it *.bat

for /f "tokens=1" %%a in (air.ini) do md Paintschemes\Skins\%%a

Put your air.ini and the *.bat file in the same folder and launch the *.bat file
Magic !!  :-*, for each plane listed in air.in ==> his Skin folder
Delete the Paintschemes\Skins\[air] folder and copy the Paintschemes directory in your IL2 install
That's all.
Title: Re: Skins Folder Tool updated
Post by: Solo on March 29, 2010, 10:54:55 AM
My pleasure sir.
Title: Re: Skins Folder Tool updated
Post by: BravoFxTrt on March 29, 2010, 12:25:43 PM
Yeah Thank You Solo, I got mine from C6 forums.
Title: Re: Skins Folder Tool updated
Post by: Epervier on March 29, 2010, 02:26:12 PM
Delete the Paintschemes\Skins\[air] folder...
===> add in .bat file :
IF EXIST Paintschemes\Skins\[AIR] rd Paintschemes\Skins\[AIR]
Title: Re: Skins Folder Tool updated
Post by: Solo on March 29, 2010, 02:46:51 PM
Yeah Thank You Solo, I got mine from C6 forums.
Yes, on C6 forum i upload directly the *.bat file on my post, i haven't found the same solution here.

===> add in .bat file :
IF EXIST Paintschemes\Skins\[AIR] rd Paintschemes\Skins\[AIR]
I plan working to avoid creating bad folders (like [AIR] and the one who begin by "#" or ";"). Your solution is effectively more simple, deleting bad folders  after creation. Thx for the idea.
Title: Re: Skins Folder Tool updated
Post by: WWSandMan on March 29, 2010, 10:02:01 PM
Never ceases to amaze me how well old DOS tricks work... :)
Title: Re: Skins Folder Tool updated
Post by: Solo on March 30, 2010, 12:58:58 PM
Just a little update for the script.

This delete [air] and ace pilots folders

for /f "tokens=1" %%a in (air.ini) do md Paintschemes\Skins\%%a
IF EXIST Paintschemes\Skins\[air] rd Paintschemes\Skins\[air]
IF EXIST Paintschemes\Skins\Durand_Yak-9T rd Paintschemes\Skins\Durand_Yak-9T
IF EXIST Paintschemes\Skins\Pokryshkins_MiG-3 rd Paintschemes\Skins\Pokryshkins_MiG-3
IF EXIST Paintschemes\Skins\Kojedubs_La-7 rd Paintschemes\Skins\Kojedubs_La-7
IF EXIST Paintschemes\Skins\Safonovs_I-16_24 rd Paintschemes\Skins\Safonovs_I-16_24 
IF EXIST Paintschemes\Skins\Pokryshkins_P-39N1 rd Paintschemes\Skins\Pokryshkins_P-39N1   
IF EXIST Paintschemes\Skins\Rechkalovs_P-39Q15 rd Paintschemes\Skins\Rechkalovs_P-39Q15 
IF EXIST Paintschemes\Skins\Graf_Bf-109G-6 rd Paintschemes\Skins\Graf_Bf-109G-6
IF EXIST Paintschemes\Skins\Hartmann_Bf-109G-6 rd Paintschemes\Skins\Hartmann_Bf-109G-6   
IF EXIST Paintschemes\Skins\Heppes_Bf-109G-6 rd Paintschemes\Skins\Heppes_Bf-109G-6 
IF EXIST Paintschemes\Skins\Kovacs_Bf-109G-6 rd Paintschemes\Skins\Kovacs_Bf-109G-6   
IF EXIST Paintschemes\Skins\Molnar_Bf-109G-6 rd Paintschemes\Skins\Molnar_Bf-109G-6
IF EXIST Paintschemes\Skins\Fabian_Bf-109G-10 rd Paintschemes\Skins\Fabian_Bf-109G-10   
IF EXIST Paintschemes\Skins\Hans_Rudels_Ju-87G-2 rd Paintschemes\Skins\Hans_Rudels_Ju-87G-2
IF EXIST Paintschemes\Skins\Nowotnys_Me-262A-1a rd Paintschemes\Skins\Nowotnys_Me-262A-1a
IF EXIST Paintschemes\Skins\Sarvanto_DXXI rd Paintschemes\Skins\Sarvanto_DXXI

Not found the way to remove folders who begin by "#" or ";". Search to be continued.
Title: Re: Skins Folder Tool updated
Post by: Flying H on March 31, 2010, 08:32:49 AM
Used the 2-line beast and man soooo many planes to fly (and find skins for!)
Title: Re: Skins Folder Tool updated
Post by: Solo on April 01, 2010, 03:59:23 PM
Last version of the little tool

Make the *.bat file
Put it at the root of il2 install
Lauch them and follow instructions

Great thank to C6-BlackStaff for great help and sorry for my bad English


The code:

@echo off
rem ****************************
rem * Menu de choix de version *
rem ****************************
echo.
echo.
echo  ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
echo  º     Missing skin folder creation    º
echo  ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
echo  ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
echo  ³ ********* Version choice *********  ³
echo  ³                                     ³
echo  ³  1. C6 Pack                         ³
echo  ³  2. Ultrapack original              ³
echo  ³  3. UltraPack with addon planes     ³
echo  ³  4. HSFX                            ³
echo  ³  5. AAA                             ³
echo  ³  6. Other version                   ³
echo  ³                                     ³
echo  ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
echo  ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
echo  º      Enter the choozen version      º
echo  º          (1,2,3,4,5 ou 6)           º
echo  ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
set /P entre=             Enter now  :
if %entre% == 1 goto C6
if %entre% == 2 goto UP
if %entre% == 3 goto UPmod
if %entre% == 4 goto HSFX
if %entre% == 5 goto UPmod
if %entre% == 6 goto Autre
echo.

rem ***************************
rem *   message d'erreur      *
rem ***************************

echo Wrong entry  !
pause
exit

rem ***************************
rem * initialisation des path *
rem ***************************

:C6
set air=MODS\___Avions_nouveaux_slots\com\maddox\il2\objects\
set skins=Paintschemes\Skins
goto suite

:UP
set air=MODS\STD\com\maddox\il2\objects\
set skins=Paintschemes\Skins
goto suite

:UPmod
set air=-MODS\STD\com\maddox\il2\objects\
set skins=Paintschemes\Skins
goto suite

:HSFX
set air=\Files\com\maddox\il2\objects\
set skins=Paintschemes\Skins
goto suite

:Autre
echo syntax exemple for the air.ini path
echo MODS\MyPlanes\com\maddox\il2\objects\
echo.
set /p air=Enter air.ini path:
echo.
echo syntax exemple for the Skin folder path
echo Painschemes\Skins
echo.
set /p skins=Enter the skin folder path:
echo.
goto suite

:suite
echo %entre%
echo %air%

rem ****************************
rem *   un peu de securite     *
rem ****************************
if not exist %air%air.ini goto end1
if not exist %skins% goto end2

rem ****************************
rem *   creation des dossiers  *
rem ****************************

for /f "tokens=1" %%a in (%air%air.ini) do md %skins%\%%a
cls

rem ****************************
rem * suppression des inutiles *
rem ****************************

echo * Deleting odd folders *
IF EXIST %skins%\[AIR] RD %skins%\[AIR]
IF EXIST %skins%\Durand_Yak-9T RD %skins%\Durand_Yak-9T
IF EXIST %skins%\Fabian_Bf-109G-10 RD %skins%\Fabian_Bf-109G-10
IF EXIST %skins%\Graf_Bf-109G-6 RD %skins%\Graf_Bf-109G-6
IF EXIST %skins%\Hans_Rudels_Ju-87G-2 RD %skins%\Hans_Rudels_Ju-87G-2
IF EXIST %skins%\Hartmann_Bf-109G-6 RD %skins%\Hartmann_Bf-109G-6
IF EXIST %skins%\Heppes_Bf-109G-6 RD %skins%\Heppes_Bf-109G-6
IF EXIST %skins%\Kojedubs_La-7 RD %skins%\Kojedubs_La-7
IF EXIST %skins%\Kovacs_Bf-109G-6 RD %skins%\Kovacs_Bf-109G-6
IF EXIST %skins%\Molnar_Bf-109G-6 RD %skins%\Molnar_Bf-109G-6
IF EXIST %skins%\Nowotnys_Me-262A-1a RD %skins%\Nowotnys_Me-262A-1a
IF EXIST %skins%\Pokryshkins_MiG-3 RD %skins%\Pokryshkins_MiG-3
IF EXIST %skins%\Pokryshkins_P-39N1 RD %skins%\Pokryshkins_P-39N1
IF EXIST %skins%\Rechkalovs_P-39Q15 RD %skins%\Rechkalovs_P-39Q15
IF EXIST %skins%\Safonovs_I-16_24 RD %skins%\Safonovs_I-16_24
IF EXIST %skins%\Sarvanto_DXXI RD %skins%\Sarvanto_DXXI
IF NOT EXIST %skins%\#* GOTO end
dir %skins%\#* /N /B >> list.txt
for /f "tokens=1" %%b in (list.txt) do RD %skins%\%%b
del list.txt
goto end
echo.
echo.


rem ******************************
rem * message de fin d'opération *
rem ******************************

echo * Finished - Thanks for using this tool ! *
goto end


rem ******************************
rem *   erreur de path air.ini   *
rem ******************************

:end1
cls
echo The air.ini file not in this folder %air% !
goto end

rem ******************************
rem *erreur de path dossier skins*
rem ******************************

:end2
cls
echo Wrong skin folder path !

rem ******************************
rem *     RAZ des variables      *
rem ******************************

:end
echo.
echo.
set air=
set skins=
pause
exit
Title: Re: Skins Folder Tool updated
Post by: WWSandMan on April 01, 2010, 06:28:56 PM
Very nice DOS batch-file work!! :D

I like how you have it set to create the folder names depending on the air.ini file, wherever it may reside depending on the main mod package the user may have installed.

/edited/

I'm silly and didn't notice you had taken into account most popular mod package options. Thanks!!
Title: Re: Skins Folder Tool updated
Post by: Epervier on April 02, 2010, 04:21:19 AM
Attention !

Change the line :
IF EXIST %skins%\Hartman_Bf-109G-6 RD %skins%\Hartman_Bf-109G-6

to :
IF EXIST %skins%\Hartmann_Bf-109G-6 RD %skins%\Hartmann_Bf-109G-6

Sorry !

Epervier/BlackStaff
Title: Re: Skins Folder Tool updated
Post by: Solo on April 02, 2010, 09:35:59 AM
Another bug i haven't seen Epervier. Script corrected.
If i found time, i do tests with colors and perhaps the choice command.
To be continued.
Title: Re: Skins Folder Tool updated
Post by: Solo on April 05, 2010, 03:03:16 PM
Some bugs fixed.
Some planes have "/" in her name. While the tool create the skin folders, an error occur and the folder is not build. This work now, the folder is build with "_" instead of "/".
Garbage lines (while line begining is "#" or ";") bug fixed.

I make some other minor adjustement like color, display arrangements, few new options on error warning........

Sorry for my poor english, my french ==> english translation is perhaps wrong. Tel me if you see some change to do or if you see some bugs, i will try to fix them (if i can  ::) ).

Solo.

Here is the new script:

Edited by Gerax: for long lists like this please use the # (code) option of the Standard Posting Options when editing the post (see the SMF-Help of this Site for further infos)  ;)

Code: [Select]
[i]@echo off

:choix
rem ****************************
rem * Menu de choix de version *
rem ****************************
cls
color 3F
set retour =
echo.
echo            ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
echo                      Welcome %username%
echo            ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
echo.
echo            ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
echo            º     IL2 Missing folders builder     º
echo            ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
echo            ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
echo            ³ ******* Choose your version ******* ³
echo            ³                                     ³
echo            ³  1. C6 Pack                         ³
echo            ³  2. Ultrapack original              ³
echo            ³  3. UltraPack with plane addons     ³
echo            ³  4. HSFX                            ³
echo            ³  5. AAA                             ³
echo            ³  6. Other version                   ³
echo            ³                                     ³
echo            ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
echo            ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
echo            º           Version choozen           º
echo            º          (1,2,3,4,5 ou 6)           º
echo            ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
set /P entre=                  Your choice  %username% ? :
echo.
echo.
if %entre% == 1 goto C6
if %entre% == 2 goto UP
if %entre% == 3 goto UPmod
if %entre% == 4 goto HSFX
if %entre% == 5 goto UPmod
if %entre% == 6 goto Autre

rem ***************************
rem *   message d'erreur      *
rem ***************************
cls
color CF
echo.
echo.
echo     ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
echo                  Incorrect choice [ %entre% ]
echo     ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
echo.
echo.
set /p retour=         Would you retry (Y/N) ? :
if %retour% == Y goto choix
if %retour% == y goto choix
cls
goto end



rem ***************************
rem * initialisation des path *
rem ***************************
:C6
set air=MODS\___Avions_nouveaux_slots\com\maddox\il2\objects\
set skins=Paintschemes\Skins
goto suite

:UP
set air=MODS\STD\com\maddox\il2\objects\
set skins=Paintschemes\Skins
goto suite

:UPmod
set air=-MODS\STD\com\maddox\il2\objects\
set skins=Paintschemes\Skins
goto suite

:HSFX
set air=\Files\com\maddox\il2\objects\
set skins=Paintschemes\Skins
goto suite

:Autre
cls
color 3F
echo.
echo   ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
echo                 air.ini file path exemple :
echo           MODS\MyPlanes\com\maddox\il2\objects\
echo   ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
echo.
set /p air=           Enter air.ini path :
echo.
echo   ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
echo                  Skin folder path exemple:
echo                      Painschemes\Skins
echo   ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
echo.
set /p skins=       Enter skins folder path:
echo.


:suite
rem ****************************
rem *   un peu de securite     *
rem ****************************
if not exist %air%air.ini goto end1
if not exist %skins% goto end2

rem ****************************
rem *   creation des dossiers  *
rem ****************************
cls
echo.
echo.
echo.
echo.
echo.
echo         ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
echo           *       Working, wait please        *
echo         ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
echo.
for /f "tokens=1" %%a in (%air%air.ini) do (echo %%a >> temp.txt)>Nul
for /f "eol=; tokens=1,2 delims=/" %%b in (temp.txt) do (if %%c neq "" echo %%b_%%c >> bis.txt)>Nul
for /f "eol=# tokens=1,2 delims=/" %%d in (temp.txt) do (if %%e equ "" echo %%d >> bis.txt)>Nul
for /f "tokens=1" %%d in (bis.txt) do ( if not exist %skins%\%%d md %skins%\%%d)>Nul

rem ****************************
rem * suppression des inutiles *
rem ****************************
cls
echo         ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
echo          *     Removing not needed folders      *
echo         ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
IF EXIST %skins%\[AIR] RD %skins%\[AIR]
IF EXIST %skins%\Durand_Yak-9T RD %skins%\Durand_Yak-9T
IF EXIST %skins%\Fabian_Bf-109G-10 RD %skins%\Fabian_Bf-109G-10
IF EXIST %skins%\Graf_Bf-109G-6 RD %skins%\Graf_Bf-109G-6
IF EXIST %skins%\Hans_Rudels_Ju-87G-2 RD %skins%\Hans_Rudels_Ju-87G-2
IF EXIST %skins%\Hartmann_Bf-109G-6 RD %skins%\Hartmann_Bf-109G-6
IF EXIST %skins%\Heppes_Bf-109G-6 RD %skins%\Heppes_Bf-109G-6
IF EXIST %skins%\Kojedubs_La-7 RD %skins%\Kojedubs_La-7
IF EXIST %skins%\Kovacs_Bf-109G-6 RD %skins%\Kovacs_Bf-109G-6
IF EXIST %skins%\Molnar_Bf-109G-6 RD %skins%\Molnar_Bf-109G-6
IF EXIST %skins%\Nowotnys_Me-262A-1a RD %skins%\Nowotnys_Me-262A-1a
IF EXIST %skins%\Pokryshkins_MiG-3 RD %skins%\Pokryshkins_MiG-3
IF EXIST %skins%\Pokryshkins_P-39N1 RD %skins%\Pokryshkins_P-39N1
IF EXIST %skins%\Rechkalovs_P-39Q15 RD %skins%\Rechkalovs_P-39Q15
IF EXIST %skins%\Safonovs_I-16_24 RD %skins%\Safonovs_I-16_24
IF EXIST %skins%\Sarvanto_DXXI RD %skins%\Sarvanto_DXXI
del temp.txt
del bis.txt
echo.
rem ******************************
rem * message de fin d'opération *
rem ******************************
echo.
echo               ******************************
echo               *    Operations finished     *
echo               *     Folders are build      *
echo               ******************************
goto end


:end1
rem ******************************
rem *   erreur de path air.ini   *
rem ******************************
cls
color CF
echo.
echo.
echo     ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
echo.
echo           Not air.ini file in folder %air% !
echo.
echo     ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
echo.
set /p retour=               Would you retry (Y/N) ? :
if %retour% == Y goto choix
if %retour% == y goto choix
cls
goto end


:end2
rem ******************************
rem *erreur de path dossier skins*
rem ******************************
cls
color CF
echo.
echo.
echo     ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
echo.
echo                         Wrong Skins folder path !
echo.
echo     ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
echo.
set /p retour=                Would you retry (Y/N) ? :
if %retour% == Y goto choix
if %retour% == y goto choix
cls

:end
rem ******************************
rem *     RAZ des variables      *
rem ******************************
echo.
echo.
color 5F
echo          ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
echo          ³     Thanks for using this tool       ³
echo          ³                                      ³
echo          ³           Epervier ^&^ Solo            ³
echo          ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
echo.
echo.
echo           ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
echo                      Hit a key to exit
echo           ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
set air=
set skins=
pause>nul
exit
[/i]

 
Title: Re: Skins Folder Tool updated
Post by: Solo on April 07, 2010, 02:24:06 PM
Thx Gerax, i will use the correct way to post my code.

This is the last version, with bug fix and new feature.

A little bug fixed, Up original and Up modded was switched ==> fixed

New feature added ==> now the tool make a backup of removed plane skin folder, if exists, in a new \SkinBackup folder and add missing skin folders.

Minor changes, i try (my english is allready to bad) to translate the comments (rem lines) in english for those who want to see more easily what the tool is supposed to do on each step.

If you see something wrong please tell me what, i will try to correct.

Code: [Select]
@echo off

:choix
rem ****************************
rem *    Version choice menu   *
rem ****************************
cls
color 3F
set retour =
echo.
echo            ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
echo                      Welcome %username%
echo            ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
echo.
echo            ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
echo            º     IL2 Missing folders builder     º
echo            ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
echo            ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
echo            ³ ******* Choose your version ******* ³
echo            ³                                     ³
echo            ³  1. C6 Pack                         ³
echo            ³  2. Ultrapack 2.0 original          ³
echo            ³  3. UltraPack 2.0 with addons       ³
echo            ³  4. Ultrapack 2.01                  ³
echo            ³  5. HSFX                            ³
echo            ³  6. AAA                             ³
echo            ³  7. Other version                   ³
echo            ³                                     ³
echo            ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
echo            ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
echo            º           Version choozen           º
echo            º         (1,2,3,4,5,6 or 7)          º
echo            ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
set /P entre=                  Your choice  %username% ? :
echo.
echo.
if %entre% == 1 goto C6
if %entre% == 2 goto UP
if %entre% == 3 goto UPmod
if %entre% == 4 goto HSFX
if %entre% == 5 goto HSFX
if %entre% == 6 goto UPmod
if %entre% == 7 goto Autre

rem ***************************
rem *    choice menu error    *
rem ***************************
cls
color CF
echo.
echo.
echo     ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
echo                  Incorrect choice [ %entre% ]
echo     ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
echo.
echo.
set /p retour=         Would you retry (Y/N) ? :
if %retour% == Y goto choix
if %retour% == y goto choix
cls
goto end



rem ***************************
rem *   Path initialisation   *
rem ***************************
:C6
set air=MODS\___Avions_nouveaux_slots\com\maddox\il2\objects\
set skins=Paintschemes\Skins
goto suite

:UP
set air=MODS\STD\com\maddox\il2\objects\
set skins=Paintschemes\Skins
goto suite

:UPmod
set air=-MODS\STD\com\maddox\il2\objects\
set skins=Paintschemes\Skins
goto suite

:HSFX
set air=Files\com\maddox\il2\objects\
set skins=Paintschemes\Skins
goto suite

:Autre
cls
color 3F
echo.
echo   ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
echo                 air.ini file path exemple :
echo           MODS\MyPlanes\com\maddox\il2\objects\
echo   ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
echo.
set /p air=           Enter air.ini path :
echo.
echo   ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
echo                  Skin folder path exemple:
echo                      Painschemes\Skins
echo   ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
echo.
set /p skins=       Enter skins folder path:
echo.


:suite
rem ****************************
rem *     Some security        *
rem ****************************
if not exist %air%air.ini goto end1
if not exist %skins% goto end2
cls
echo.
echo.
echo.
echo.
echo.
echo         ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
echo          *      Tool at work, please wait      *
echo         ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

rem ****************************
rem *   Actual folders list    *
rem ****************************
dir %skins% /B /N >> backup.txt

rem ****************************
rem * New air.ini folders list *
rem ****************************
for /f "eol=# tokens=1" %%a in (%air%air.ini) do (echo %%a >> temp.txt)>Nul
for /f "eol=; tokens=1,2 delims=/" %%b in (temp.txt) do (if %%c neq "" echo %%b_%%c >> air.txt)>Nul
for /f "tokens=1,2 delims=/" %%d in (temp.txt) do (if %%e equ "" echo %%d >> air.txt)>Nul

rem ****************************
rem *   Building new folders   *
rem ****************************
md New
for /f "tokens=1" %%f in (air.txt) do (md new\%%f)>Nul

rem ****************************
rem *  Backup not used folders *
rem ****************************
md SkinBackup
for /f "tokens=1" %%g in (backup.txt) do (if not exist new\%%g xcopy %skins%\%%g SkinBackup\%%g /E /I /Y)>Nul
dir /B /N skinbackup >> backSkin.txt
for /f "tokens=1" %%h in (backskin.txt) do RD %skins%\%%h /S /Q >Nul

rem ****************************
rem * Copying missing folders  *
rem ****************************
xcopy new\* %skins%\* /E /I /Y >Nul

rem ****************************
rem * Removing unneeded folder *
rem ****************************
cls
echo         ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
echo          *      Removing unneeded folders      *
echo         ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
IF EXIST %skins%\[AIR] RD %skins%\[AIR]
IF EXIST %skins%\Durand_Yak-9T RD %skins%\Durand_Yak-9T
IF EXIST %skins%\Fabian_Bf-109G-10 RD %skins%\Fabian_Bf-109G-10
IF EXIST %skins%\Graf_Bf-109G-6 RD %skins%\Graf_Bf-109G-6
IF EXIST %skins%\Hans_Rudels_Ju-87G-2 RD %skins%\Hans_Rudels_Ju-87G-2
IF EXIST %skins%\Hartmann_Bf-109G-6 RD %skins%\Hartmann_Bf-109G-6
IF EXIST %skins%\Heppes_Bf-109G-6 RD %skins%\Heppes_Bf-109G-6
IF EXIST %skins%\Kojedubs_La-7 RD %skins%\Kojedubs_La-7
IF EXIST %skins%\Kovacs_Bf-109G-6 RD %skins%\Kovacs_Bf-109G-6
IF EXIST %skins%\Molnar_Bf-109G-6 RD %skins%\Molnar_Bf-109G-6
IF EXIST %skins%\Nowotnys_Me-262A-1a RD %skins%\Nowotnys_Me-262A-1a
IF EXIST %skins%\Pokryshkins_MiG-3 RD %skins%\Pokryshkins_MiG-3
IF EXIST %skins%\Pokryshkins_P-39N1 RD %skins%\Pokryshkins_P-39N1
IF EXIST %skins%\Rechkalovs_P-39Q15 RD %skins%\Rechkalovs_P-39Q15
IF EXIST %skins%\Safonovs_I-16_24 RD %skins%\Safonovs_I-16_24
IF EXIST %skins%\Sarvanto_DXXI RD %skins%\Sarvanto_DXXI
rd new /S /Q >Nul
del temp.txt
del air.txt
del backup.txt
del backskin.txt
echo.
echo.
echo               ******************************
echo               *     Operations finised     *
echo               *   The folders are build    *
echo               ******************************
goto end
:end1
rem ******************************
rem *     air.ini path error     *
rem ******************************
cls
color CF
echo.
echo.
echo     ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
echo.
echo           Not air.ini file in folder %air% !
echo.
echo     ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
echo.
set /p retour=               Would you retry (Y/N) ? :
if %retour% == Y goto choix
if %retour% == y goto choix
cls
goto end


:end2
rem ******************************
rem *  Skin folders path error   *
rem ******************************
cls
color CF
echo.
echo.
echo     ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
echo.
echo                         Wrong Skins folder path !
echo.
echo     ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
echo.
set /p retour=                Would you retry (Y/N) ? :
if %retour% == Y goto choix
if %retour% == y goto choix
cls

:end
rem ******************************
rem *   Variables go to blank    *
rem ******************************
echo.
echo.
color 5F
echo          ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
echo          ³      Thanks for using this tool      ³
echo          ³                                      ³
echo          ³           Epervier ^&^ Solo            ³
echo          ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
echo.
echo.
echo           ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
echo                      Hit a key to exit
echo           ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
set air=
set skins=
pause>nul
exit


[EDIT]

New UltraPack v2.01 choice (n°7) added
2 minor bugs fixed

[\EDIT]
Title: Re: Skins Folder Tool updated
Post by: saab ja26 on August 23, 2012, 12:17:26 PM
Thanks for this! Downloading now.
Title: Re: Skins Folder Tool updated
Post by: BravoFxTrt on August 23, 2012, 12:31:44 PM
One good way to use this file is create a new Skins folder of all your aircraft, then compare your new Skins folder to your present skins folder then you can remove or delete the Skins folders of Aircraft you dont have from your present Skin Folder. Very time consuming but its much neater and finally  have only those skins for only the aircraft you physically have in your game. After which now you have a very clean skins folder! ;) Enjoy! :)
Title: Re: Skins Folder Tool updated
Post by: Spinnetti on September 03, 2012, 09:24:33 AM
One good way to use this file is create a new Skins folder of all your aircraft, then compare your new Skins folder to your present skins folder then you can remove or delete the Skins folders of Aircraft you dont have from your present Skin Folder. Very time consuming but its much neater and finally  have only those skins for only the aircraft you physically have in your game. After which now you have a very clean skins folder! ;) Enjoy! :)

Great minds think alike! - Just did this... What would be cool is a .bat that would compare two directories and say what is "in a and missing in B" and visa-versa..... That would take the tedium out of it....
Title: Re: Skins Folder Tool updated
Post by: 52Zebra on May 20, 2013, 10:36:30 PM
I have two questions, How do I add a Squadron name and how can I edit an object like a quonset hut
to make it green or camo and to put a sign on it like Radio shack or Officers Club ?
Title: Re: Skins Folder Tool updated
Post by: SAS~Malone on May 20, 2013, 11:43:54 PM
wow, both those questions are totally unrelated to this thread - i hope someone sees it, but you'd be better off asking that in the lounge, methinks.
Title: Re: Skins Folder Tool updated
Post by: 52Zebra on May 20, 2013, 11:52:06 PM
What section should I ask those questions in ?
Title: Re: Skins Folder Tool updated
Post by: SAS~Malone on May 21, 2013, 01:27:55 AM
as i said, the lounge is the best place to get the quickest relevant replies. ;)
Title: Re: Skins Folder Tool updated
Post by: BravoFxTrt on December 19, 2013, 10:48:09 AM
Here is an old Batch file I use to copy all my aircraft Entries of Skin Folder Names, in my Air.ini, Im posting here if you want to utilise this handy little tool.

Just paste it to your  C:\Desktop\IL-2  1946\#DBW\STD\com\maddox\il2\objects\Skin4 then double click it, and it will produce a Paintschemes/Skins folder of every aircraft you have in your Air.ini 

                                                                                         
Here is a new Link to the Batch.File for Skin's Folders, Same Instructions apply!

http://www.mediafire.com/download/876fpzmq72lxt6y/Skin4.zip


                                                                                                      Cheers, "Bravo" :)
Title: Re: Skins Folder Tool updated
Post by: <Gunny> on January 23, 2015, 12:11:07 AM
Dear Bravo that tool works like a charm.
Thank You . :)
Title: Re: Skins Folder Tool updated
Post by: Godzyla on January 26, 2015, 07:56:48 AM
I'm working on a batch script that reads air.ini file.
Plus other features like fixing QMB game crash.
I will post it later. I'm quite busy right now.

@Solo : my script is in french too.

I will also translate it in English for non french speakers
Title: Re: Skins Folder Tool updated
Post by: Godzyla on January 26, 2015, 10:33:07 AM
Here is the origina version (French)

Code: [Select]
@echo off
title Il-2 Game Fixer (French)


set qmbFolder=.\Quicks\
set qmbFile=.last.quick
set screenshotsFolder=.\Screenshots\
set netCacheFolder=.\PaintSchemes\netCache\
set cacheFolder=.\PaintSchemes\Cache\
set skinsFolder=.\PaintSchemes\Skins\
set iniFolder=.\MODS\STD\com\maddox\il2\objects\

:menu
cls
echo Mise en garde :
echo Les ‚l‚ments supprim‚s sont directement ‚ffac‚s de l'ordinateur.
echo Ils ne sont PAS envoy‚s … la corbeille!
echo.
echo Que voulez-vous faire?
echo 1 Corriger le QMB
echo 2 Supprimer les screenshots
echo 3 Nettoyer le dossier NetCache
echo 4 Vider le cache des skins
echo 5 Cr‚er les dossiers de skins des avions manquants
echo 9 Aide
echo 0 Quitter
set /p choice=Option :
echo -----
if %choice% EQU 1 goto QMB
if %choice% EQU 2 goto Screenshots
if %choice% EQU 3 goto NetCache
if %choice% EQU 4 goto cache
if %choice% EQU 5 goto skinsFolders
if %choice% EQU 9 goto aide
if %choice% EQU 0 goto end
echo choix invalide
pause
goto menu

:QMB
if exist %qmbFolder%+%qmbFile% ( del %qmbFolder%+%qmbFile% ) else echo Le fichier %qmbFile% n'existe pas.
echo Le fichier a ‚t‚ supprim‚ ou n'existe plus
echo.
pause
goto menu

:Screenshots
dir %screenshotsFolder%
rem suppression de touts les fichiers dans le dossier screenshots
if exist %screenshotsFolder%grab*.tga ( del %screenshotsFolder%grab*.tga ) else echo Le dossier ne contient pas de screenshots targa
echo Fin du traitement des screenshots targa
echo -----
if exist %screenshotsFolder%grab*.jpg ( del %screenshotsFolder%grab*.jpg ) else echo Le dossier ne contient pas de screenshots jpeg
echo Fin du traitement des screenshots jpeg
echo -----
echo Les screenshots ont ‚t‚ supprim‚s
echo.
pause
goto menu

:NetCache
dir %netCacheFolder%
rem nettoyage des skins dans le dossier NetCache
if exist %netCacheFolder%*.bmp ( del %netCacheFolder%*.bmp) else echo Le dossier NetCache a d‚j… ‚t‚ nettoy‚
echo Fin du traitement du dossier NetCache
echo.
pause
goto menu

:cache
rem dir %cacheFolder%
rem nettoyage des nosearts en cache
if exist %cacheFolder%Noseart*.tga ( del %cacheFolder%Noseart*.tga ) else echo Les nosearts ont deje ‚t‚ supprim‚s
echo Fin du traitement des nosearts
echo -----
rem nettoyage des textures pilote en cache
if exist %cacheFolder%Pilot*.tga ( del %cacheFolder%Pilot*.tga ) else echo Les textures des pilotes ont d‚j… ‚t‚ effaces
echo Fin du traitement des textures des pilotes dans le cache
rem echo -----
rem nettoyage des skins sous stock‚s au format tga
rem rmdir /S %cacheFolder%*
echo.
pause
goto menu

:skinsFolders
for /f "tokens=*" %%a in (%iniFolder%air.ini) do (
rem echo %%a
for /F "tokens=1 delims= " %%b in ("%%a") do (
rem echo %%a
rem echo %%b
rem echo %skinsFolder%%%b
mkdir %skinsFolder%%%b
)
)
rem Un r‚sidu de la lecture du fichier, la ligne [AIR] n'est pas … prendre en compte
rmdir %skinsFolder%[AIR]
pause
goto menu

:aide
cls
echo 1. Corriger le QMB.
echo.
echo Cette action vient supprimer le fichier %qmbFile% qui est "alt‚r‚".
echo Le jeu n'‚tant pas con‡u pour ajouter et retirer des avions … la vol‚e,
echo le fichier de configuration du QMB peut contenir des traces
echo d'un avion qui a pu ˆtre retir‚ entretemps.
echo Ce type d'exception n'est pas pris en charge par le jeu, la suppression
echo du fichier est une alternative au bon fonctionnement du jeu.
echo.
echo Le QMB reg‚nŠre un nouveau fichier si celui-ci n'existe pas.
echo.
pause
echo -----
echo.
echo 2. Supprimer les screenshots
echo.
echo Cette action supprime les captures d'‚cran du dossier screenshots.
echo Seuls les screenshots dont le nom n'a pas ‚t‚ modifi‚ (commen‡ant par grab)
echo et portant l'extension jpg ou tga seront effac‚es.
echo.
pause
echo -----
echo.
echo 3. NetCache
echo.
echo Cette action vide le dossier NetCache dans le dossier PaintSchemes
echo pour faire de la place sur le disque dur. Tous les skins utilis‚s
echo par les autres joueurs lors de parties en ligne sont stock‚s … cet endroit.
echo Certains skins pouvant dater de plusieurs ann‚es,
echo il peut ˆtre judicieux de faire de la place de temps en temps.
echo.
pause
echo -----
echo.
echo 4. Cache
echo.
echo Cette action vient … supprimer les textures mises en cache.
echo Pour le moment, seules les textures des pilotes et nosearts sont supprim‚s.
echo Une am‚lioration visant … supprimer les dossiers des diff‚rents avions
echo en cache est en cours de d‚veloppement.
echo.
pause
echo -----
echo.
echo 5. Cr‚er les dossiers de skins des avions manquants
echo.
echo Ce programme liste les avions dans le fichier air.ini
echo et cr‚e les dossiers manquants dans le dossier
echo %skinsFolder%
echo.
pause
echo -----
echo.
echo 9. Aide
echo.
echo Cette section affiche le fonctionnement de chaque fonctionnalit‚ propos‚e
echo dans ce programme.
echo.
pause
echo -----
echo.
echo 0. Quitter
echo.
echo Cette option permet de fermer l'application.
echo.
pause
goto menu

:end
echo Fermeture du programme en cours.

And this is translation for non-French speaking persons.
Code: [Select]
@echo off
title Il-2 Game Fixer (English)


set qmbFolder=.\Quicks\
set qmbFile=.last.quick
set screenshotsFolder=.\Screenshots\
set netCacheFolder=.\PaintSchemes\netCache\
set cacheFolder=.\PaintSchemes\Cache\
set skinsFolder=.\PaintSchemes\Skins\
set iniFolder=.\MODS\STD\com\maddox\il2\objects\

:menu
cls
echo Advice :
echo Files are simply deleted!
echo They are NOT sent to trash bin!
echo.
echo How can I help you?
echo 1 Fix QMB Crash
echo 2 Delete screenshots
echo 3 Clean NetCache folder
echo 4 Clear Cache Folder
echo 5 Creating missing skin folders for planes
echo 9 Help
echo 0 Close
set /p choice=Option :
echo -----
if %choice% EQU 1 goto QMB
if %choice% EQU 2 goto Screenshots
if %choice% EQU 3 goto NetCache
if %choice% EQU 4 goto cache
if %choice% EQU 5 goto skinsFolders
if %choice% EQU 9 goto Help
if %choice% EQU 0 goto end
echo Invalid Choice
pause
goto menu

:QMB
if exist %qmbFolder%+%qmbFile% ( del %qmbFolder%+%qmbFile% ) else echo %qmbFile% doesn't exist.
echo %qmbFile% no longer exists.
echo.
pause
goto menu

:Screenshots
dir %screenshotsFolder%
rem Deleting targa and jpeg screenshots with grab prefix
if exist %screenshotsFolder%grab*.tga ( del %screenshotsFolder%grab*.tga ) else echo No targa screenshots in this folder
echo End of targa screenshots process
echo -----
if exist %screenshotsFolder%grab*.jpg ( del %screenshotsFolder%grab*.jpg ) else echo No jpeg screenshots in this folder
echo End of jpeg screenshots process
echo -----
echo Screenshots have been deleted
echo.
pause
goto menu

:NetCache
dir %netCacheFolder%
rem Deleting all bitmap files from netCache folder
if exist %netCacheFolder%*.bmp ( del %netCacheFolder%*.bmp) else echo NetCache have already been cleaned
echo End of NetCache folder process
echo.
pause
goto menu

:cache
rem dir %cacheFolder%
rem Deletes nosearts
if exist %cacheFolder%Noseart*.tga ( del %cacheFolder%Noseart*.tga ) else echo Nosearts have already been deleted
echo End of Nosearts process
echo -----
rem Deletes pilots tectures
if exist %cacheFolder%Pilot*.tga ( del %cacheFolder%Pilot*.tga ) else echo Pilot textures have already been deleted
echo End of pilot textures process
rem ----------
rem NOT FIXED
rem echo -----
rem deleting folders (all of them contains 3 tga files and 1 tgb file)
rem rmdir /S %cacheFolder%*
rem ----------
echo.
pause
goto menu

:skinsFolders
rem opening air.ini file
for /f "tokens=*" %%a in (%iniFolder%air.ini) do (
rem echo %%a
for /F "tokens=1 delims= " %%b in ("%%a") do (
rem creating folder (if the folder already exists, action is not performed)
rem echo %%a
rem echo %%b
rem echo %skinsFolder%%%b
mkdir %skinsFolder%%%b
)
)
rem Deleting [AIR] folder
rmdir %skinsFolder%[AIR]
pause
goto menu

:help
cls
echo 1. Fix QMB Crash
echo.
echo This feature deletes %qmbFile% file.
echo Game is not suitable to switch planelist QMB can have elements
echo of a missing plane. This kind of exception is not handled by the game.
echo.
echo No worries if the file is missing, QMB will create a new one.
echo.
pause
echo -----
echo.
echo 2. Delete Screenshots
echo.
echo This feature deletes screenshots. Only jpg and tga screenshots
echo that begins with "grab" filename will be deleted
echo.
pause
echo -----
echo.
echo 3. NetCache
echo.
echo This folder stores skins used by other people during network missions.
echo Some of them are no longer used by other players so it can be useful
echo to clean that folder sometimes. Some skin were stored few years ago.
echo.
pause
echo -----
echo.
echo 4. Cache
echo.
echo This part deletes textures stored in cache folder.
echo Only pilots et nosearts textures are deleted.
echo An update is in progress to delete planes folder in cache.
echo.
pause
echo -----
echo.
echo 5. Creating missing skins folders
echo.
echo This part of the application reads air.ini file
echo to create missing folders in
echo %skinsFolder% path
echo.
pause
echo -----
echo.
echo 9. Help
echo.
echo This feature explains how to use the other features.
echo.
pause
echo -----
echo.
echo 0. Close
echo.
echo This feature closes the program
echo.
pause
goto menu

:end
echo Closing in progress.