PatrickAWlson Posted November 30, 2017 Posted November 30, 2017 (edited) An attempt at explaining skins in PWCG. You wouldn't think that this is a challenging topic, but it turns out to be very complex. Here's an attempt to explain. Factory default skin This is generally what the game will assign if you do not override. It is possible to have multiple variants on factory skins if there are more than one in the game or others are made by users. Factory defaults will have neither squadron nor personal markings. Factory skins are configured by the files in the PWCGCampaign\BoSData\input\skins directory. Squadron default skin These skins contain only the squadron markings. They do not have personal markings. If a squadron skin is available and configured PWCG will use it in preference to factory skins. Squadron default skins are are currently broken. Fix coming in 3.0.3. Squadron personal skin. These skins contain squadron and personal markings. If squadron personal skins are available PWCG will assign each one to a single pilot from that squadron in the mission. Unlike factory and squadron default skins, PWCG will not use a personal skin twice in a mission. Squadron personal skins will only be assigned to planes from that squadron. Squadron personal skins are configured by the files in the PWCGCampaign\BoSData\input\skins directory. Non squadron personal skin These skins contain personal markings but do not contain squadron markings. PWCG, based on a roll of the dice, may choose to assign these skins to a plane in the mission. These skins will not be used twice in the same mission. Non squadron personal skins are configured by the files in the PWCGCampaign\BoSData\input\skins directory. Loose skins Loose skins are unconfigured skins that PWCG finds in your skins directory. Because PWCG has no information on these skins, loose skins will never be programmatically assigned to a plane. The can be assigned by the user to his plane or squadron members. Loose skins are not configured. Assigned Squadron Member Skins Skins that are assigned by the user to his pilot or squadron members. These skins will be used for the assigned pilot. They will not be reused in a mission. Configured skins and loose skins can be assigned to squadron members. Assigned squadron member skins are configured in the campaign in the CampaignPersonnel.json file. Assignment PWCG works on a "last in wins" algorithm. Attempts are made to assign skins in descending order of specificity (least specific to most specific). The last that can be assigned is the one that gets displayed in missions. Other factors: Skins are configured to be available in a date range. If the campaign date is not within the date range of the skin then it will not be used. Skins are configured by nationality. The skin must be of the same nation as the plane otherwise it will not be used Edited November 30, 2017 by PatrickAWlson 2 3
MarcoPegase44 Posted November 30, 2017 Posted November 30, 2017 Hello Pat, For Skins files I was inspired by those of PWCG for ROF. It gives this and it works. But I do not understand some lines that I wrote in red. { "planeType": "yak1s69", "looseSkins": {}, "configuredSkins": { "Yak1s69_4k_winter": { "skinName": "Yak1s69_4k_winter", "planeType": "yak1s69", "startDate": "19421128", "endDate": "19430221", "squadId": -2, "country": "Russia", "category": "Configured", "definedInGame": false }, "Yak1s69_4k_Summer": { "skinName": "Yak1s69_4k_Summer", "planeType": "yak1s69", "startDate": "19410628", "endDate": "19421130", "squadId": -1, "country": "Russia", "category": "Configured", "definedInGame": false } }, "doNotUse": {}, "aceSkins": {}, "skinsInUse": [], "squadronSkins": []} Many Thanks
PatrickAWlson Posted November 30, 2017 Author Posted November 30, 2017 Loose skins, do not use skins, skins inuse, squadron skins: These are artifacts of converting the PWCG Java object to JSON. In hindsight I am probably writing the wrong Java object. I should refactor things to only write configured skins, since that is all that is in the file. Squadron id = -1: A personal skin not associated with a squadron Squadron id = -2: A factory skin
AstroCat Posted December 9, 2017 Posted December 9, 2017 Since I'm completely new to PWCG is there a manual or resource that explains how I'm supposed to edit the individual files? Thanks.
PatrickAWlson Posted December 10, 2017 Author Posted December 10, 2017 Since I'm completely new to PWCG is there a manual or resource that explains how I'm supposed to edit the individual files? Thanks. The short version is that you are not. The files are out here as plain text but they are not intended to be edited by the user. What I did with RoF that resulted in thousands of skins being added to the game is to work with the community to create skin packs. I do the incorporation into PWCG. Panthercules headed that effort up for RoF. I am not aware that anybody has made the attempt for BoS.
AstroCat Posted December 10, 2017 Posted December 10, 2017 (edited) Ahhh so there is no real "easy" way to have "automated" skins with IL2 and PWCG at the moment, like that come up as Squadron appropriate? The loose ones of course show up. I was just wondering if I needed start editing the files one my own. Edited December 10, 2017 by AstroCat
PatrickAWlson Posted December 10, 2017 Author Posted December 10, 2017 Skins are changing due to issues with the current setup. Let me finish that then I can revisit. The basic format of a skin entry is not changing. Here it is: "501099_002": { "skinName": "501099_002", "planeType": "dfwc5", "startDate": "19171001", "endDate": "19180401", "squadId": -1, "country": "Germany", "category": "Configured", "definedInGame": false }, Defined in game will always be false. Other than that I think the fields are self explanatory. That is the info that I need to get each skin into PWCG
AstroCat Posted December 10, 2017 Posted December 10, 2017 Thanks for the replies, appreciated. I'll wait for the next version before I really start messing around.
MarcoPegase44 Posted December 10, 2017 Posted December 10, 2017 Hello, It works, Here is an example with some skin files that I made for testing. It remains to work ...
Redglyph Posted March 4, 2018 Posted March 4, 2018 Is it still not recommended to try and configure skins with 3.3.2? Or if it is possible, would anyone care to share an example? I see there are files like PWCGCampaign\BoSData\Input\Skins\Configured\bf109f4.json, but I don't see the link with its empty content and what is described above in this thread: { "skinSetType": "SKIN_CONFIGURED", "skins": {} }
MarcoPegase44 Posted March 4, 2018 Posted March 4, 2018 Hello , For sample, my file skin for BF 109G2 bf109g2.zip 1
Trooper117 Posted March 4, 2018 Posted March 4, 2018 Well, I am using skins that I have downloaded... I have assigned all my squadron members with British Spitfire skins using the 'Loose' setting. Each time I fly all my sqn pilots have those skins... I only have to assign a skin again if I have a replacement pilot. It may not be perfect but it works...
Redglyph Posted March 4, 2018 Posted March 4, 2018 2 hours ago, MarcoPegase44 said: Hello , For sample, my file skin for BF 109G2 bf109g2.zip Thanks! That'll be much easier to go from there than probing in the dark
Redglyph Posted March 5, 2018 Posted March 5, 2018 I have mixed results. I could a custom skin to be selected for my pilot, but the "squadron" seetings (beside the loose setting) are obscure to me, not sure what they change. In the mission, I saw that the skin I configured for myself was given to him, and I had a default skin instead. Changing the squadron file seems to have no effect. Without explanation it's just (lenghty) guess work, I'll leave it at that for now.
Trooper117 Posted March 5, 2018 Posted March 5, 2018 Always choose your own skin before the mission when 'in game'... Your Squadron pilots skins can be chosen from PWCG from the skin configuration settings using the 'loose' setting only. Make sure you apply the changes before you leave the skin configuration settings. After that, your squadron will always have the skins you have chosen for them on every mission. 1
PatrickAWlson Posted March 6, 2018 Author Posted March 6, 2018 Anything in the skin file should be "configured". PWCG has multiple skin categories. Factory default: this is what you get when no skin is specified. Squadron: These are squadron default skins specified in the squadron files, not the skin files. They are factory skins with only a squadron marking. If a valid squadron skin exists PWCG will assign every plane in the squadron to that skin. Configured: These are skins in the skins files. Configured means that somebody has looked at them and told PWCG exactly what they are and how they should be applied (squadron, date). These are assumed to be individual skins. PWCG allows you to assign configured skins to your squadron mates. In missions PWCG will use configured skins for their specified squadron. If squadId = -1 then the skin is not associated with any specific squadron. In this case PWCG may use it for any squadron, but will generally only do so for higher ranking AI pilots. Loose: these are skin files that PWCG detects in your game's skin directory. PWCG will never assign a loose skin to AI. PWCG does allow you to assign loose skins to yourself and your squadron mates. Assignment sequence: Factory skin. Squadron skin if available. Configured skin if available. Assigned skin if assigned. Each succeeding assignment overwrites the previous one. Summary: You can assign configured or loose skins to yourself and your squadron mates. PWCG will assign only configured skins to AI planes. 1
Redglyph Posted March 6, 2018 Posted March 6, 2018 (edited) 6 hours ago, PatrickAWlson said: Anything in the skin file should be "configured". PWCG has multiple skin categories. Factory default: this is what you get when no skin is specified. Squadron: These are squadron default skins specified in the squadron files, not the skin files. They are factory skins with only a squadron marking. If a valid squadron skin exists PWCG will assign every plane in the squadron to that skin. Configured: These are skins in the skins files. Configured means that somebody has looked at them and told PWCG exactly what they are and how they should be applied (squadron, date). These are assumed to be individual skins. PWCG allows you to assign configured skins to your squadron mates. In missions PWCG will use configured skins for their specified squadron. If squadId = -1 then the skin is not associated with any specific squadron. In this case PWCG may use it for any squadron, but will generally only do so for higher ranking AI pilots. Loose: these are skin files that PWCG detects in your game's skin directory. PWCG will never assign a loose skin to AI. PWCG does allow you to assign loose skins to yourself and your squadron mates. Assignment sequence: Factory skin. Squadron skin if available. Configured skin if available. Assigned skin if assigned. Each succeeding assignment overwrites the previous one. Summary: You can assign configured or loose skins to yourself and your squadron mates. PWCG will assign only configured skins to AI planes. Thanks! I need to experiment a little bit with this. EDIT: I can't seem to get the skins defined in the squadron files (BoSData\Input\Squadron\I_JG53.json for ex) to show in the "Skin management" part. I see them in the "Skin analysis" though. I tried with both "category": "Squadron" or "category": "Configured". Only the ones in the plane file (BoSData\Input\Skins\Configured\bf109f4.json for ex) seem to matter. Does those need to be dictionary entries in configured entries (BoSData\Input\Skins\Configured\bf109f4.json for ex) and only lists in squadron (BoSData\Input\Squadron\I_JG53.json for ex)? And must the dictionary keys match the skinName / filename? So by dictionary vs list I mean "skins": { "zsf-bf109f4-10JG2-1bleu": { "skinName": "zsf-bf109f4-10JG2-1bleu", "planeType": "bf109f4", "startDate": "19410101", "endDate": "19450508", "squadId": 20111053, "country": "Germany", "category": "Configured", "definedInGame": false }, [...] versus "skins": [ { "skinName": "zsf-bf109f4-10JG2-1bleu", "planeType": "bf109f4", "startDate": "19410101", "endDate": "19450508", "squadId": 20111053, "country": "Germany", "category": "Configured", "definedInGame": false }, [...] Edited March 6, 2018 by Redglyph
Redglyph Posted March 7, 2018 Posted March 7, 2018 (edited) Can't seem to have a skin for the pilot either, once bf109f4.json is set for the squadron mates it's fine for them, I saw how to assign skins individually (but since skins cannot be re-used, you've got to have a lot of these). But the skin of the user's airplane seems to be ignored. Oh, or is that a limitation in IL-2, and it's not possible to set the pilot's skin in the mission script? At first I thought the plane setup wasn't available in some missions but apparently it may have, it's just that the setup page is hidden. I suppose that's what you said, Trooper117. Edited March 8, 2018 by Redglyph
Skipper- Posted August 5, 2018 Posted August 5, 2018 Is there any way to set your own skin through PWCG or will the game always override it?
runsilent Posted August 13, 2018 Posted August 13, 2018 If we configure more than one plane with squadlist : -1 will it cycle them randomly? Are there supposed to be skins somewhere with “Lag33_SKIN_01” or whatever or are those names placeholder in the skin config?
FTC_Riksen Posted November 1, 2019 Posted November 1, 2019 Pat, I have a pack of skins in which the aircrafts are marked with a sequence of numbers (1, 2, 3, etc.). I'm trying to define them in the corresponding squadron file so PWCG selects a random one from the list for each pilot but the system only picks the last one. What am I doing wrong? "skins": [ { "skinName": "4JG52 F2 01 Summer", "planeType": "bf109f2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, { "skinName": "4JG52 F2 02 Summer", "planeType": "bf109f2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, { "skinName": "4JG52 F2 03 Summer", "planeType": "bf109f2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false } ], So all missions being generated are only selecting the "4JG52 F2 03 Summer" skin. Am I doing something wrong or is it not possible to have the system pick one randomly in the Configured category?
Almenas Posted November 2, 2019 Posted November 2, 2019 I've asked the same question, but difficult to get an answer. No idea why?
PatrickAWlson Posted November 3, 2019 Author Posted November 3, 2019 8 hours ago, Almenas said: I've asked the same question, but difficult to get an answer. No idea why? I'm just not there yet. With BoBP and FC dropped at the same time that has been the priority. I wanted to do a review of how skins behave in game (I think something changed) and also verify PWCG is handling them as I expect. It's been awhile since I cracked open that bit of code and I want to make sure of things before I start answering questions.
Almenas Posted November 3, 2019 Posted November 3, 2019 (edited) No offense. Was in ROF a great feature. Thank you again for this great tool. By the way, it seems that the new RoF are using the same skin templates as the old one. Edited November 3, 2019 by Almenas
FTC_Riksen Posted November 4, 2019 Posted November 4, 2019 (edited) Ok. I ran some tests with the new version 7.0.1 and here are the files I modified: bf109f2.json (...\PWCGBoS\BoSData\Input\Skins\Configured): { "skinSetType": "SKIN_CONFIGURED", "skins": { "4JG52_Skin_Summer_Kommandeur": { "skinName": "4JG52 F2 (Stab1) Kommadeur Summer", "planeType": "bf109f2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, "4JG52_Skin_Summer_Adjudant": { "skinName": "4JG52 F2 (Stab2) Adjudant Summer", "planeType": "bf109f2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, "4JG52_Skin_Summer_Technical_Officer": { "skinName": "4JG52 F2 (Stab3) TO Summer", "planeType": "bf109f2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, "4JG52_Skin_Summer_Chief_of_Staff": { "skinName": "4JG52 F2 (Stab4) COS Summer", "planeType": "bf109f2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, "4JG52_Skin_Summer_01": { "skinName": "4JG52 F2 01 Summer", "planeType": "bf109f2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, "4JG52_Skin_Summer_02": { "skinName": "4JG52 F2 02 Summer", "planeType": "bf109f2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, "4JG52_Skin_Summer_03": { "skinName": "4JG52 F2 03 Summer", "planeType": "bf109f2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, "4JG52_Skin_Summer_04": { "skinName": "4JG52 F2 04 Summer", "planeType": "bf109f2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, "4JG52_Skin_Summer_05": { "skinName": "4JG52 F2 05 Summer", "planeType": "bf109f2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, "4JG52_Skin_Summer_06": { "skinName": "4JG52 F2 06 Summer", "planeType": "bf109f2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, "4JG52_Skin_Summer_07": { "skinName": "4JG52 F2 07 Summer", "planeType": "bf109f2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, "4JG52_Skin_Summer_08": { "skinName": "4JG52 F2 08 Summer", "planeType": "bf109f2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, "4JG52_Skin_Summer_09": { "skinName": "4JG52 F2 09 Summer", "planeType": "bf109f2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, "4JG52_Skin_Summer_10": { "skinName": "4JG52 F2 10 Summer", "planeType": "bf109f2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, "4JG52_Skin_Summer_11": { "skinName": "4JG52 F2 11 Summer", "planeType": "bf109f2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, "4JG52_Skin_Summer_12": { "skinName": "4JG52 F2 12 Summer", "planeType": "bf109f2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false } } } and the bf109f4.json (...\PWCGBoS\BoSData\Input\Skins\Configured): { "skinSetType": "SKIN_CONFIGURED", "skins": { "4JG52_BF-109F4_Skin_Summer_Kommandeur": { "skinName": "4JG52 Bf109F4 (Stab1) Kommandeur Summer", "planeType": "bf109f4", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, "4JG52_BF-109F4_Skin_Summer_Adjudant": { "skinName": "4JG52 Bf109F4 (Stab2) Adjudant Summer", "planeType": "bf109f4", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, "4JG52_BF-109F4_Skin_Summer_Technical_Officer": { "skinName": "4JG52 Bf109F4 (Stab3) Technical Officer Summer", "planeType": "bf109f4", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, "4JG52_BF-109F4_Skin_Summer_Chief_of_Staff": { "skinName": "4JG52 Bf109F4 (Stab4) COS Summer", "planeType": "bf109f4", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, "4JG52_BF-109F4_Skin_Summer_Adjudant": { "skinName": "4JG52 F2 (Stab2) Adjudant Summer", "planeType": "bf109f4", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, "4JG52_BF-109F4_Skin_Summer_01": { "skinName": "4JG52 Bf109F4 01 Summer", "planeType": "bf109f4", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, "4JG52_BF-109F4_Skin_Summer_02": { "skinName": "4JG52 Bf109F4 02 Summer", "planeType": "bf109f4", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, "4JG52_BF-109F4_Skin_Summer_03": { "skinName": "4JG52 Bf109F4 03 Summer", "planeType": "bf109f4", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, "4JG52_BF-109F4_Skin_Summer_04": { "skinName": "4JG52 Bf109F4 04 Summer", "planeType": "bf109f4", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, "4JG52_BF-109F4_Skin_Summer_05": { "skinName": "4JG52 Bf109F4 05 Summer", "planeType": "bf109f4", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, "4JG52_BF-109F4_Skin_Summer_06": { "skinName": "4JG52 Bf109F4 06 Summer", "planeType": "bf109f4", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, "4JG52_BF-109F4_Skin_Summer_07": { "skinName": "4JG52 Bf109F4 07 Summer", "planeType": "bf109f4", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, "4JG52_BF-109F4_Skin_Summer_08": { "skinName": "4JG52 Bf109F4 08 Summer", "planeType": "bf109f4", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, "4JG52_BF-109F4_Skin_Summer_09": { "skinName": "4JG52 Bf109F4 09 Summer", "planeType": "bf109f4", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, "4JG52_BF-109F4_Skin_Summer_10": { "skinName": "4JG52 Bf109F4 10 Summer", "planeType": "bf109f4", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, "4JG52_BF-109F4_Skin_Summer_11": { "skinName": "4JG52 Bf109F4 11 Summer", "planeType": "bf109f4", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false }, "4JG52_BF-109F4_Skin_Summer_12": { "skinName": "4JG52 Bf109F4 12 Summer", "planeType": "bf109f4", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Configured", "definedInGame": false } } } and then I also modified the II_JG52.json (...\IL-2 Sturmovik Battle of Stalingrad\PWCGBoS\BoSData\Input\Squadron) to contain the skins assigments: "skins": [ { "skinName": "4JG52 F2 01 Summer", "planeType": "bf109f2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Squadron", "definedInGame": false }, { "skinName": "4JG52 F2 02 Summer", "planeType": "bf109f2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Squadron", "definedInGame": false }, { "skinName": "4JG52 F2 03 Summer", "planeType": "bf109f2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Squadron", "definedInGame": false }, { "skinName": "4JG52 F2 04 Summer", "planeType": "bf109f2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Squadron", "definedInGame": false }, { "skinName": "4JG52 F2 05 Summer", "planeType": "bf109f2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Squadron", "definedInGame": false }, { "skinName": "4JG52 F2 06 Summer", "planeType": "bf109f2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Squadron", "definedInGame": false }, { "skinName": "4JG52 F2 07 Summer", "planeType": "bf109f2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Squadron", "definedInGame": false }, { "skinName": "4JG52 F2 08 Summer", "planeType": "bf109f2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Squadron", "definedInGame": false }, { "skinName": "4JG52 F2 09 Summer", "planeType": "bf109f2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Squadron", "definedInGame": false }, { "skinName": "4JG52 F2 10 Summer", "planeType": "bf109f2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Squadron", "definedInGame": false }, { "skinName": "4JG52 F2 11 Summer", "planeType": "bf109f2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Squadron", "definedInGame": false }, { "skinName": "4JG52 F2 12 Summer", "planeType": "bf109f2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Squadron", "definedInGame": false }, { "skinName": "4JG52 Bf109F4 01 Summer", "planeType": "bf109f4", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Squadron", "definedInGame": false }, { "skinName": "4JG52 Bf109F4 02 Summer", "planeType": "bf109f4", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Squadron", "definedInGame": false }, { "skinName": "4JG52 Bf109F4 03 Summer", "planeType": "bf109f4", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Squadron", "definedInGame": false }, { "skinName": "4JG52 Bf109F4 04 Summer", "planeType": "bf109f4", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Squadron", "definedInGame": false }, { "skinName": "4JG52 Bf109F4 05 Summer", "planeType": "bf109f4", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Squadron", "definedInGame": false }, { "skinName": "4JG52 Bf109F4 06 Summer", "planeType": "bf109f4", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Squadron", "definedInGame": false }, { "skinName": "4JG52 Bf109F4 07 Summer", "planeType": "bf109f4", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Squadron", "definedInGame": false }, { "skinName": "4JG52 Bf109F4 08 Summer", "planeType": "bf109f4", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Squadron", "definedInGame": false }, { "skinName": "4JG52 Bf109F4 09 Summer", "planeType": "bf109f4", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Squadron", "definedInGame": false }, { "skinName": "4JG52 Bf109F4 10 Summer", "planeType": "bf109f4", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Squadron", "definedInGame": false }, { "skinName": "4JG52 Bf109F4 11 Summer", "planeType": "bf109f4", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Squadron", "definedInGame": false }, { "skinName": "4JG52 Bf109F4 12 Summer", "planeType": "bf109f4", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Squadron", "definedInGame": false }, { "skinName": "II_JG52", "planeType": "bf109g2", "startDate": "19400801", "endDate": "19450601", "squadId": 20112052, "country": "Germany", "category": "Squadron", "definedInGame": false } ], However, when the mission is generated by PWCG, the system only picks up the last skins, that is, the No. 12 ones and ignores the rest. So I end up with all pilots in my unit flying with the No. 12 instead of having randomly assigned skins. Is this an issue with the "category" field I'm using in the II_JG52.json file? Should I change it to something else? Edited November 4, 2019 by SCG_Riksen
PatrickAWlson Posted November 4, 2019 Author Posted November 4, 2019 (edited) The same skin data structure is used in three places. Each of these carries somewhat different semantics. Aircraft skin files In the aircraft skin files these are skins available for use. PWCG will allow you to assign them to individual pilots. If they are not in use then PWCG might or might not randomly use them. Squadron skins: These are the default skins for a squadron. For every aircraft type on hand with the squadron only one skin will be the default squadron skin. If you define two squadron skins to be available at the same time then the last one will be applied to every pilot. Based on this the use of skin 12 for everybody makes sense ... sort of. Get to that later. Ace skins: Ace skins are skins used by aces. Pretty much self explanatory. So the problem is not the use if skin 12 for everybody based on squadron entries - that is exactly what PWCG should do. The problem is why did it not take the squadron skins from the aircraft files and use them. I'll look at that. OK, looked at this. The reason is that PWCG will not randomly assign skins to your squadron. It will do so for other squadrons. The reason is pretty straight forward: since you can assign skins to your squadron by yourself PWCG doesn't do random assignments. It will only assign the squadron skin if there is no personal skin assigned. BTW: skins are complicated. It doesn't seem like they should be but they are. By the time you get into right for this plane, right for this squadron, right for this time period, ok to repeat, not ok to repeat, being used, not being used ... it gets ugly Edited November 4, 2019 by PatrickAWlson 1
FTC_Riksen Posted November 5, 2019 Posted November 5, 2019 Oh, so if I wasn't playing in this squadron, my configuration would indeed work in order to randomly select the skins for the AIs? If yes, I'm glad I've found the right path and I can work on the other squadrons.
PatrickAWlson Posted November 5, 2019 Author Posted November 5, 2019 One last thing - skins are not working at the moment in PWCG. Something changed in the game. The skin assignments are happening in the mission file as expected but the game is not using them. When I try to do the exact same thing in the ME it works. The skin assignments in the mission file are identical between PWCG and the ME, so it's not that. Smells like there is some new requirement in the mission files to make custom skins appear but I'm not sure what it is or even if that is a correct assessment of the problem. 1
WWI_Flying_Ace Posted November 15, 2019 Posted November 15, 2019 Hey Pat. I’ve been off RoF for probably 2 years and a couple of days ago just bought FC. I’ve forgotten much! I was able to get PWCGFC installed and running but don’t know where to extract the skins? I’m assuming you’ll get the problem squared away in short order and I’ll be able to use them. Cheers, Brad
PatrickAWlson Posted November 15, 2019 Author Posted November 15, 2019 There are no configured skins yet for FC. RoF was months of effort, hundreds, possibly over a thousand skins, with lots of help to produce skin packs, so probably not happening soon. I am also experiencing an unresolved issue where skins do not show up after being assigned, so there are problems in that area.
Cathaoir Posted November 22, 2019 Posted November 22, 2019 (edited) Hi Pat, I have been able to get the squad skins to work for FC.....what I did was I took squad FA 18 in FC then found the squad in ROF, copied the squad skin config into the FC squad and then coped the ROF skins into the skins folder in Il2. I worked...they show up in the skin analysis as configured also. attached my squad file.....hope it helps. Tried it with BOS and got it to work too....seems like 4k skins do not configure FA 18.zip Edited November 22, 2019 by No.322_Cathaoir
FTC_Riksen Posted November 22, 2019 Posted November 22, 2019 24 minutes ago, No.322_Cathaoir said: Hi Pat, I have been able to get the squad skins to work for FC.....what I did was I took squad FA 18 in FC then found the squad in ROF, copied the squad skin config into the FC squad and then coped the ROF skins into the skins folder in Il2. I worked...they show up in the skin analysis as configured also. attached my squad file.....hope it helps. Tried it with BOS and got it to work too....seems like 4k skins do not configure FA 18.zip 635 B · 0 downloads The skins configuration is working and that is not the issue we are having. The problem is that the generator is not randomizing the skins if you have more than one defined for the same time frame. It only selects the latest.
Cathaoir Posted November 22, 2019 Posted November 22, 2019 (edited) Well yes it does not randomize...but still trying....but there are probably some who have not yet figured out yet how to get squad skins to show.....for that it needs some manual input but it does work...what I did was have the commander select a loose skin then un-select the loose option then I did it for two other pilots first selecting loose then the skin I wanted them to have, un-selected loose, then went to the commander and selected the squad skin. option. They showed up as selected. Again I am doing this in SP, not sure if this will work in a Coop. Also need to make sure that the none selection is not selected. But for randomizing automatic I am not sure it will without manually selecting...which defeats the idea of random selection....don't know so just a guess....did random skin selection work in ROF?....never tried it so do not know. Maybe some ROF vet's can shed some light on that. Screen shots of 3 different skins Edited November 22, 2019 by No.322_Cathaoir
TheSNAFU Posted March 31, 2020 Posted March 31, 2020 So I assign skins for my squadron using the loose feature in skin management. In game all is fine with my squadron but I see AI and parked US planes with Soviet markings. Is there a way to ensure that all US AI and parked planes have US markings? Thanks
TheSNAFU Posted April 2, 2020 Posted April 2, 2020 Any insight on Soviet markings on US planes is appreciated. Is there a way to change them? Stay safe all
Utopioneer Posted April 3, 2020 Posted April 3, 2020 On 4/2/2020 at 8:04 AM, TheSNAFU said: Any insight on Soviet markings on US planes is appreciated. Is there a way to change them? Stay safe all If you go to PWCGBoS\BoSData\Input\Squadron Squadron skin information is stored those .json files. Some squadrons have no skins assigned, probably because an appropriate skin is not available. If that's the case, the default skin is applied, which for some planes is a Soviet skin. If you have appropriate skins installed you may be able to edit these files to apply the correct U.S. markings. To do so, use the same format as a squadron where skins are already assigned, for example from the 126th Fighter Air Regiment: "skins": [ { "skinName": "P40E1_SKIN_01", "planeType": "p40e1", "startDate": "19410801", "endDate": "19420331", "squadId": 10111126, "country": "Russia", "category": "Squadron", "definedInGame": false } ],
TheSNAFU Posted April 3, 2020 Posted April 3, 2020 Utopioneer, thanks very much for responding, much appreciated. I will give it a look. I was beginning to think there was either no answer to my question or I had stepped in someone's pudding lol. See you are in NY, Stay safe! 1
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now