Whyte_Out 10 Posted June 28, 2013 I have made a new vest, and I am not sure how to write the configs for it. I have read all the wikis but everytime I use their configs I always get excess info in my configs. I would like to only have what I need in their so I can use it for future templates. Anybody kind enough to help me out? Lastly, whats the difference betweeen "Model.cfg" and "Config.cpp" how do you know when you need to use one or the other, or both? Thanks in advance guys. Below, is what I have for a ghetto config, but I am fairly new to scripting so forgive me if its completely wrong. /* Declaration as Addon-Content.*/ class CfgPatches { /* "Hey ArmA2, this is an addon and it's named "TUT_Wall"*/ /* The name should be indentical to the folder's name*/ class Jpc_Vest { units[] = {}; weapons[] = {"Jpc_Vest"}; requiredVersion = 0.1; requiredAddons[] = {}; }; }; /* The category in the editor like "Objects" or "Cars".*/ class CfgVehicleClasses { class Jpc_Vest { displayName = "JPC Assualt Vest"; }; class VestItem; class Vest_Camo_Base: ItemCore { class ItemInfo; }; class Jpc_Vest: ItemCore { class ItemInfo; }; uniformModel = "Jpc_Vest\Data\Jpc_Vest.p3d"; }; }; }; Share this post Link to post Share on other sites
STALKERGB 6 Posted June 29, 2013 Firstly, I need to add the caveat that I'm far from the best person to respond to config stuff, I can do it but I'm sure there are people who make much tidier configs than I do. Anyways: Lastly, whats the difference betweeen "Model.cfg" and "Config.cpp" how do you know when you need to use one or the other, or both? Model.cfg Every model you make needs a model.cfg, without one the game would either crash when you load your model, or load a static model that doesn't animate properly (at least with regards to infantry modding). The sample A3 files on the character modding page of the wiki should contain a model.cfg, what you'll need to do is add the name of your P3D file to the bottom of it and then define what it will inherit from (for movement/animation), normally it'll look something like this: class MY_P3D_NAME: ArmaMan {}; Below is the whole sample model.cfg with the above put in place: class CfgSkeletons{ class Default { isDiscrete = 1; skeletonInherit = ""; skeletonBones[] = {}; }; class OFP2_ManSkeleton { isDiscrete = 0; skeletonInherit = ""; skeletonBones[] = { "Pelvis","", "Spine","Pelvis", "Spine1","Spine", "Spine2","Spine1", "Spine3","Spine2", "Camera","Pelvis", "weapon","Spine1", "launcher","Spine1", //Head skeleton in hierarchy "neck","Spine3", "neck1","neck", "head","neck1", //New facial features "Face_Hub","head", "Face_Jawbone","Face_Hub", "Face_Jowl","Face_Jawbone", "Face_chopRight","Face_Jawbone", "Face_chopLeft","Face_Jawbone", "Face_LipLowerMiddle","Face_Jawbone", "Face_LipLowerLeft","Face_Jawbone", "Face_LipLowerRight","Face_Jawbone", "Face_Chin","Face_Jawbone", "Face_Tongue","Face_Jawbone", "Face_CornerRight","Face_Hub", "Face_CheekSideRight","Face_CornerRight", "Face_CornerLeft","Face_Hub", "Face_CheekSideLeft","Face_CornerLeft", "Face_CheekFrontRight","Face_Hub", "Face_CheekFrontLeft","Face_Hub", "Face_CheekUpperRight","Face_Hub", "Face_CheekUpperLeft","Face_Hub", "Face_LipUpperMiddle","Face_Hub", "Face_LipUpperRight","Face_Hub", "Face_LipUpperLeft","Face_Hub", "Face_NostrilRight","Face_Hub", "Face_NostrilLeft","Face_Hub", "Face_Forehead","Face_Hub", "Face_BrowFrontRight","Face_Forehead", "Face_BrowFrontLeft","Face_Forehead", "Face_BrowMiddle","Face_Forehead", "Face_BrowSideRight","Face_Forehead", "Face_BrowSideLeft","Face_Forehead", "Face_Eyelids","Face_Hub", "Face_EyelidUpperRight","Face_Hub", "Face_EyelidUpperLeft","Face_Hub", "Face_EyelidLowerRight","Face_Hub", "Face_EyelidLowerLeft","Face_Hub", "EyeLeft","Face_Hub", "EyeRight","Face_Hub", //Left upper side "LeftShoulder","Spine3", "LeftArm","LeftShoulder", "LeftArmRoll","LeftArm", "LeftForeArm","LeftArmRoll", "LeftForeArmRoll","LeftForeArm", "LeftHand","LeftForeArmRoll", "LeftHandRing","LeftHand", "LeftHandRing1","LeftHandRing", "LeftHandRing2","LeftHandRing1", "LeftHandRing3","LeftHandRing2", "LeftHandPinky1","LeftHandRing", "LeftHandPinky2","LeftHandPinky1", "LeftHandPinky3","LeftHandPinky2", "LeftHandMiddle1","LeftHand", "LeftHandMiddle2","LeftHandMiddle1", "LeftHandMiddle3","LeftHandMiddle2", "LeftHandIndex1","LeftHand", "LeftHandIndex2","LeftHandIndex1", "LeftHandIndex3","LeftHandIndex2", "LeftHandThumb1","LeftHand", "LeftHandThumb2","LeftHandThumb1", "LeftHandThumb3","LeftHandThumb2", //Right upper side "RightShoulder","Spine3", "RightArm","RightShoulder", "RightArmRoll","RightArm", "RightForeArm","RightArmRoll", "RightForeArmRoll","RightForeArm", "RightHand","RightForeArmRoll", "RightHandRing","RightHand", "RightHandRing1","RightHandRing", "RightHandRing2","RightHandRing1", "RightHandRing3","RightHandRing2", "RightHandPinky1","RightHandRing", "RightHandPinky2","RightHandPinky1", "RightHandPinky3","RightHandPinky2", "RightHandMiddle1","RightHand", "RightHandMiddle2","RightHandMiddle1", "RightHandMiddle3","RightHandMiddle2", "RightHandIndex1","RightHand", "RightHandIndex2","RightHandIndex1", "RightHandIndex3","RightHandIndex2", "RightHandThumb1","RightHand", "RightHandThumb2","RightHandThumb1", "RightHandThumb3","RightHandThumb2", //Left lower side "LeftUpLeg","Pelvis", "LeftUpLegRoll","LeftUpLeg", "LeftLeg","LeftUpLegRoll", "LeftLegRoll","LeftLeg", "LeftFoot","LeftLegRoll", "LeftToeBase","LeftFoot", //Right lower side "RightUpLeg","Pelvis", "RightUpLegRoll","RightUpLeg", "RightLeg","RightUpLegRoll", "RightLegRoll","RightLeg", "RightFoot","RightLegRoll", "RightToeBase","RightFoot" }; // location of pivot points (local axes) for hierarchical animation pivotsModel="A3\anims_f\data\skeleton\SkeletonPivots.p3d"; }; }; class CfgModels { class Default { sectionsInherit=""; sections[] = {}; skeletonName = ""; }; class ArmaMan : Default { htMin = 60; // Minimum half-cooling time (in seconds) htMax = 1800; // Maximum half-cooling time (in seconds) afMax = 30; // Maximum temperature in case the model is alive (in celsius) mfMax = 0; // Maximum temperature when the model is moving (in celsius) mFact = 1; // Metabolism factor - number from interval <0, 1> (0 - metabolism has no influence, 1 - metabolism has full influence (no other temperature source will be considered)). tBody = 37; // Metabolism temperature of the model (in celsius) sections[] = { "osobnost","Head_Injury","Body_Injury","l_leg_injury","l_arm_injury","r_arm_injury","r_leg_injury","injury_body", "injury_legs", "injury_hands", "clan","clan_sign","Camo","CamoB","Camo1","Camo2","personality","hl", "injury_head" }; skeletonName = "OFP2_ManSkeleton"; }; class MY_P3D_NAME: ArmaMan {}; }; I imagine that you can remove some of the other entries above it but I'm probably not the best person to explain that. The model.cfg needs to be placed in the same location as the model it is referencing, if you have models in different folders then they will need separate model.cfgs in each of those folders AFAIK. Config.cpp The config file is the file that defines what exactly you model is and does. Normally, the easiest way to do most of the work is to inherit from another object that does the same thing. So for a vest/body armour, you could inherit from the plate carrier used by the US forces already in the game. Obviously there will be some things that you want different on your vest but this will take care of everything else. As an example, with my Osprey armour used for my Brit infantry I use: class cfgWeapons{ /*extern*/ class VestItem; /*extern*/ class HeadgearItem; /*extern*/ class UniformItem; /*extern*/ class V_PlateCarrier1_rgr; class STKR_Osprey_R: V_PlateCarrier1_rgr { scope = 2; displayName = "Assualt Osprey R"; picture = "\A3\characters_f\Data\UI\icon_V_plate_carrier_1_CA.paa"; model = "\STKR_BritMTP\equipment\Osprey_R"; class ItemInfo: VestItem { uniformModel = "\STKR_BritMTP\equipment\Osprey_R"; containerClass = "Supply100"; mass = 50; armor = "5*0.5"; passThrough = 0.7; }; }; As you can see, I inherit the information used by the US plate carrier, and then define a few of my own values below. One thing to note, when inheriting from other classes, you need to make sure that they have been mentioned above in your config which is what all the /*extern*/ classes are. The classname you define (so in my example STKR_Osprey_R) is what you would used to add the vest to a unit in an infantry config. Most of the other sections should be fairly self explanatory. One point of confusion might be model and uniformModel, although I haven't tested it myself, I assume model is for when the vest is on the ground and uniformModel is for when the vest is being worn by a unit. Hope that helps. Share this post Link to post Share on other sites
Whyte_Out 10 Posted June 29, 2013 Thanks stalker, this is all very helpful I will give it a go. Thanks for the fast response mate. Share this post Link to post Share on other sites
Whyte_Out 10 Posted July 1, 2013 (edited) Ok, I tried all this but I still get an error and my game wont start? All I did was copy and paste everything than changed the names of everything that was yours to mine. My game still wont launch...any Ideas? Error Report: File c:\users\wyteout\desktop\jpc_vest\config.cpp, line 21: /cfgWeapons/: Missing '}' Error reading binary file 'c:\users\wyteout\desktop\jpc_vest\config.cpp' W:\C\El\ParamFile\paramFile.cpp(753) : Class destroyed, but still locked Convert model c:\users\wyteout\desktop\jpc_vest\Jpc_Vest.p3d -> C:\Users\WyteOut\AppData\Local\Temp\ARMAaddons\jpc_vest\Jpc_Vest.p3d Cannot register unknown string STR_STATE_HEALSOLDIER Cannot register unknown string STR_STATE_FIRST_AID Cannot register unknown string STR_UI_RADARRANGE Cannot register unknown string STR_ACTION_LAUNCHCM Cannot register unknown string STR_ACTION_NEXTCM Cannot register unknown string STR_USRACT_ACTION_CONTEXT Cannot register unknown string STR_USRACT_OPTICS_MODE Cannot register unknown string STR_USRACT_ZEROING_UP Cannot register unknown string STR_USRACT_ZEROING_DOWN Cannot register unknown string STR_USRACT_NETWORK_DS_INTERFACE Cannot register unknown string STR_USRACT_BULD_TERRAIN_RAISE_10CM Cannot register unknown string STR_USRACT_BULD_TERRAIN_LOWER_10CM Cannot register unknown string STR_USRACT_BULD_TERRAIN_RAISE_50CM Cannot register unknown string STR_USRACT_BULD_TERRAIN_LOWER_50CM Cannot register unknown string STR_INPUT_DEVICE_FREETRACK_0 Cannot register unknown string STR_INPUT_DEVICE_FREETRACK_1 Cannot register unknown string STR_INPUT_DEVICE_FREETRACK_2 Cannot register unknown string STR_INPUT_DEVICE_FREETRACK_3 Cannot register unknown string STR_INPUT_DEVICE_FREETRACK_4 Cannot register unknown string STR_INPUT_DEVICE_FREETRACK_5 Cannot register unknown string STR_INPUT_DEVICE_FREETRACK_6 Cannot register unknown string STR_INPUT_DEVICE_FREETRACK_7 Cannot register unknown string STR_INPUT_DEVICE_FREETRACK_8 Cannot register unknown string STR_INPUT_DEVICE_FREETRACK_9 Cannot register unknown string STR_INPUT_DEVICE_FREETRACK_10 Cannot register unknown string STR_INPUT_DEVICE_FREETRACK_11 Cannot register unknown string STR_DISP_LEFT Cannot register unknown string STR_DIFF_CAMERA_SHAKE Cannot register unknown string STR_FREETRACK Cannot register unknown string STR_ADDON_ACTIONS_INSTALL_CORE Cannot register unknown string STR_ADDON_ACTIONS_INSTALL_MOD Cannot register unknown string STR_ADDON_ACTIONS_PLAY_MISSION Cannot register unknown string STR_ADDON_ACTIONS_TRY_ENTITY Cannot register unknown string STR_ADDON_ACTIONS_TRY_WEAPON Cannot register unknown string STR_MSG_ADDON_NOT_FOUND Cannot register unknown string STR_MSG_ADDON_CANNOT_OPEN Cannot register unknown string STR_MSG_ADDON_UNKNOWN_PRODUCT Cannot register unknown string STR_INCOMPATIBLE_LOAD_GAME_ATTEMPT Warning: CfgVehicles missing in PreloadConfig - may slow down vehicle creation Warning: CfgAmmo missing in PreloadConfig - may slow down vehicle creation Warning: CfgNonAIVehicles missing in PreloadConfig - may slow down vehicle creation File c:\users\wyteout\desktop\jpc_vest\Config.cpp, line 21: /cfgWeapons/: Missing '}' Error 3 while parsing Error in config c:\users\wyteout\desktop\jpc_vest\Config.cpp w:\C_branch\Poseidon\Arrowhead\El\ParamFile\paramFile.cpp(753) : Class destroyed, but still locked File c:\users\wyteout\desktop\jpc_vest\Config.cpp, line 21: /cfgWeapons/: Missing '}' Error 3 while parsing Error in config c:\users\wyteout\desktop\jpc_vest\Config.cpp w:\C_branch\Poseidon\Arrowhead\El\ParamFile\paramFile.cpp(753) : Class destroyed, but still locked Cannot load font core\data\fonts\lucidaconsoleb8 Fonts file \core\data\fonts\lucidaConsoleB8 not found Cannot load font core\data\fonts\lucidaconsoleb11 Fonts file \core\data\fonts\lucidaConsoleB11 not found <model = "c:\users\wyteout\desktop\jpc_vest\Jpc_Vest.p3d"> Cannot load material file a3\characters_f\common\data\tacticalvest.rvmat. Cannot load material file a3\characters_f\common\data\tacticalvest.rvmat Warning: Degenerated faces found in model c:\users\wyteout\desktop\jpc_vest\jpc_vest.p3d:10000 Warnings in c:\users\wyteout\desktop\jpc_vest\jpc_vest.p3d:11000 </model> Creating texture headers file... Texture headers file was not created - no textures found. Update* I got the game to launch with no errors but when I try to equip the vest it just doesnt show on the model. Doesn't give me any errors saying "Error vest does not exist" and kick back into the editor. So I know it registering the classname but it just wont show. Kind of at a stump and can't seem to figure it out. Hopefully I figure it out I dunno what else to check though. Edited July 1, 2013 by Whyte_Out Share this post Link to post Share on other sites
Whyte_Out 10 Posted July 1, 2013 ok, I can't even find it in the crates or even when I try to call it by the classname? Shouldn't it be defined in the config? I am using addVest "Jpc_Vest" and it wont even show up. No, errors just doesn't show. Config.cpp class cfgWeapons { class ItemCore; // External class reference class InventoryItem_Base_F; // External class reference class HeadgearItem; class Uniform_Base; class UniformItem; class V_PlateCarrier1_rgr; class VestItem; class Jpc_Vest: V_PlateCarrier1_rgr { scope = 2; displayName = "JPC Vest"; picture = "\A3\characters_f\Data\UI\icon_V_plate_carrier_1_C A.paa"; // or where ever you got a picture model = "\Jpc_Vest\Data\Jpc_Vest.p3d"; class ItemInfo: VestItem { uniformModel = "\Jpc_Vest\Data\Jpc_Vest.p3d"; containerClass = "Supply100"; // or what ever space it got mass = 50; armor = "5*0.5"; // if bodyarmor various calues can be used passThrough = 0.7; // how much the vest stops a bullet going through }; }; }; Model.cfg class CfgSkeletons { class Default { isDiscrete = 1; skeletonInherit = ""; skeletonBones[] = {}; }; class OFP2_ManSkeleton { isDiscrete = 0; skeletonInherit = ""; skeletonBones[] = { "Pelvis","", "Spine","Pelvis", "Spine1","Spine", "Spine2","Spine1", "Spine3","Spine2", "Camera","Pelvis", "weapon","Spine1", "launcher","Spine1", //Head skeleton in hierarchy "neck","Spine3", "neck1","neck", "head","neck1", //New facial features "Face_Hub","head", "Face_Jawbone","Face_Hub", "Face_Jowl","Face_Jawbone", "Face_chopRight","Face_Jawbone", "Face_chopLeft","Face_Jawbone", "Face_LipLowerMiddle","Face_Jawbone", "Face_LipLowerLeft","Face_Jawbone", "Face_LipLowerRight","Face_Jawbone", "Face_Chin","Face_Jawbone", "Face_Tongue","Face_Jawbone", "Face_CornerRight","Face_Hub", "Face_CheekSideRight","Face_CornerRight", "Face_CornerLeft","Face_Hub", "Face_CheekSideLeft","Face_CornerLeft", "Face_CheekFrontRight","Face_Hub", "Face_CheekFrontLeft","Face_Hub", "Face_CheekUpperRight","Face_Hub", "Face_CheekUpperLeft","Face_Hub", "Face_LipUpperMiddle","Face_Hub", "Face_LipUpperRight","Face_Hub", "Face_LipUpperLeft","Face_Hub", "Face_NostrilRight","Face_Hub", "Face_NostrilLeft","Face_Hub", "Face_Forehead","Face_Hub", "Face_BrowFrontRight","Face_Forehead", "Face_BrowFrontLeft","Face_Forehead", "Face_BrowMiddle","Face_Forehead", "Face_BrowSideRight","Face_Forehead", "Face_BrowSideLeft","Face_Forehead", "Face_Eyelids","Face_Hub", "Face_EyelidUpperRight","Face_Hub", "Face_EyelidUpperLeft","Face_Hub", "Face_EyelidLowerRight","Face_Hub", "Face_EyelidLowerLeft","Face_Hub", "EyeLeft","Face_Hub", "EyeRight","Face_Hub", //Left upper side "LeftShoulder","Spine3", "LeftArm","LeftShoulder", "LeftArmRoll","LeftArm", "LeftForeArm","LeftArmRoll", "LeftForeArmRoll","LeftForeArm", "LeftHand","LeftForeArmRoll", "LeftHandRing","LeftHand", "LeftHandRing1","LeftHandRing", "LeftHandRing2","LeftHandRing1", "LeftHandRing3","LeftHandRing2", "LeftHandPinky1","LeftHandRing", "LeftHandPinky2","LeftHandPinky1", "LeftHandPinky3","LeftHandPinky2", "LeftHandMiddle1","LeftHand", "LeftHandMiddle2","LeftHandMiddle1", "LeftHandMiddle3","LeftHandMiddle2", "LeftHandIndex1","LeftHand", "LeftHandIndex2","LeftHandIndex1", "LeftHandIndex3","LeftHandIndex2", "LeftHandThumb1","LeftHand", "LeftHandThumb2","LeftHandThumb1", "LeftHandThumb3","LeftHandThumb2", //Right upper side "RightShoulder","Spine3", "RightArm","RightShoulder", "RightArmRoll","RightArm", "RightForeArm","RightArmRoll", "RightForeArmRoll","RightForeArm", "RightHand","RightForeArmRoll", "RightHandRing","RightHand", "RightHandRing1","RightHandRing", "RightHandRing2","RightHandRing1", "RightHandRing3","RightHandRing2", "RightHandPinky1","RightHandRing", "RightHandPinky2","RightHandPinky1", "RightHandPinky3","RightHandPinky2", "RightHandMiddle1","RightHand", "RightHandMiddle2","RightHandMiddle1", "RightHandMiddle3","RightHandMiddle2", "RightHandIndex1","RightHand", "RightHandIndex2","RightHandIndex1", "RightHandIndex3","RightHandIndex2", "RightHandThumb1","RightHand", "RightHandThumb2","RightHandThumb1", "RightHandThumb3","RightHandThumb2", //Left lower side "LeftUpLeg","Pelvis", "LeftUpLegRoll","LeftUpLeg", "LeftLeg","LeftUpLegRoll", "LeftLegRoll","LeftLeg", "LeftFoot","LeftLegRoll", "LeftToeBase","LeftFoot", //Right lower side "RightUpLeg","Pelvis", "RightUpLegRoll","RightUpLeg", "RightLeg","RightUpLegRoll", "RightLegRoll","RightLeg", "RightFoot","RightLegRoll", "RightToeBase","RightFoot" }; // location of pivot points (local axes) for hierarchical animation pivotsModel="A3\anims_f\data\skeleton\SkeletonPivo ts.p3d"; }; }; class CfgModels { class Default { sectionsInherit=""; sections[] = {}; skeletonName = ""; }; class ArmaMan : Default { htMin = 60; // Minimum half-cooling time (in seconds) htMax = 1800; // Maximum half-cooling time (in seconds) afMax = 30; // Maximum temperature in case the model is alive (in celsius) mfMax = 0; // Maximum temperature when the model is moving (in celsius) mFact = 1; // Metabolism factor - number from interval <0, 1> (0 - metabolism has no influence, 1 - metabolism has full influence (no other temperature source will be considered)). tBody = 37; // Metabolism temperature of the model (in celsius) sections[] = { "osobnost","Head_Injury","Body_Injury","l_leg_inju ry","l_arm_injury","r_arm_injury","r_leg_injury"," injury_body", "injury_legs", "injury_hands", "clan","clan_sign","Camo","CamoB","Camo1","Camo2", "personality","hl", "injury_head" }; skeletonName = "OFP2_ManSkeleton"; }; class Jpc_Vest: ArmaMan {}; }; Share this post Link to post Share on other sites
surpher 1 Posted July 1, 2013 (edited) That's your whole config? If so it should look more like this. enum { destructengine = 2, destructdefault = 6, destructwreck = 7, destructtree = 3, destructtent = 4, stabilizedinaxisx = 1, stabilizedinaxesxyz = 4, stabilizedinaxisy = 2, stabilizedinaxesboth = 3, destructno = 0, stabilizedinaxesnone = 0, destructman = 5, destructbuilding = 1 }; class CfgPatches { class Jpc_Vest { units[] = {}; weapons[] = {"Jpc_Vest"}; requiredVersion = 0.1; requiredAddons[] = {"A3_Characters_F"}; }; }; class cfgWeapons { class ItemCore; // External class reference class InventoryItem_Base_F; // External class reference class HeadgearItem; class Uniform_Base; class UniformItem; class V_PlateCarrier1_rgr; class VestItem; class Jpc_Vest: V_PlateCarrier1_rgr { scope = 2; displayName = "JPC Vest"; picture = "\A3\characters_f\Data\UI\icon_V_plate_carrier_1_CA.paa"; // or where ever you got a picture model = "\Jpc_Vest\Data\Jpc_Vest.p3d"; class ItemInfo: VestItem { uniformModel = "\Jpc_Vest\Data\Jpc_Vest.p3d"; containerClass = "Supply100"; // or what ever space it got mass = 50; armor = "5*0.5"; // if bodyarmor various calues can be used passThrough = 0.7; // how much the vest stops a bullet going through }; }; }; Edited July 1, 2013 by surpher Share this post Link to post Share on other sites
Whyte_Out 10 Posted July 1, 2013 yeah, sorry l figured it out last night it was my config. Anyways new problem, my model is all distorted and stuff in game is that due to improper weighing? Share this post Link to post Share on other sites
STALKERGB 6 Posted July 1, 2013 Depends how distorted we are talking, maybe post a picture if possible. If it's still reasonably similar in shape to the vest in O2 then it way just be weighted incorrectly, if they whole thing has deformed it can be an issue with the model.cfg/selections. Share this post Link to post Share on other sites
Whyte_Out 10 Posted July 2, 2013 (edited) Picture: Here Picture without being weighed: Here I been messing with it for awhile. I managed to get it up at his chest but no matter what everything still stays distorted of some kind, and I can't figure out why? I have followed the weights of the A3 Vest model to make sure but in some way shape or form it looks like that. Question...When weighing a area if I lets say click "Left Arm" and weight the area way over by the right arm is that going to bring that side over near the "Left Arm" in game? or just move the right side whenever the "left Arm" area moves? I am just trying to fully grasp the weighing concept. Edited July 2, 2013 by Whyte_Out Share this post Link to post Share on other sites
STALKERGB 6 Posted July 2, 2013 (edited) Hmm, looking at those pictures, I'd guess that the selections you are defining in O2 (so Spine1/LeftArm and so on) aren't actually being applied to the model properly (or at all). One common error is using lower case selections when you have upper case ones in the model.cfg. So for example leftarm is different to LeftArm. In case you haven't already done it I'd say it's probably worth taking the model.cfg from the ARMA3 samples rather than using what I posted above just to rule out any issues with that. Question...When weighing a area if I lets say click "Left Arm" and weight the area way over by the right arm is that going to bring that side over near the "Left Arm" in game? or just move the right side whenever the "left Arm" area moves? I am just trying to fully grasp the weighing concept. It'll try and move the right side when the LeftArm section of the skeleton moves, the problem with that though is that because the right side of the model is further away from the original point of movement it's much more likely to deform. EDIT: It might also be worth trying to apply an animation while in O2 to see if everything works in there, you could use the sample animation supplied in the ARMA3 samples. I wrote about how to do that here if you are interested. Edited July 2, 2013 by STALKERGB Share this post Link to post Share on other sites
Whyte_Out 10 Posted July 2, 2013 (edited) Hmmm, I got the default vest to work with the animations but when I try animations on mine the vest doesnt do anything. This might be the problem lol w.e it is. So I took some stuff from my fest and through it onto this one and this is the outcome. Check it Everything looks fine, minus the fact I just randomly weighed it but for the most part it functions ok. so I don't understand why my vest completely goes crazy. Edited July 2, 2013 by Whyte_Out Share this post Link to post Share on other sites
STALKERGB 6 Posted July 3, 2013 Hmm, well if you want I'm happy to take a look at it, not too sure what the problem is then but I imagine it'll be something small that's just been overlooked, usually tends to be. Share this post Link to post Share on other sites