curmudgeon
Member-
Content Count
7 -
Joined
-
Last visited
-
Medals
Community Reputation
1 NeutralAbout curmudgeon
-
Rank
Rookie
-
Animated Door 2 - Return of the Errors
curmudgeon replied to Richards.D's topic in ARMA 2 & OA : MODELLING - (O2)
You will need a Geometry LOD, the door has to be a named selection in the geometry LOD and you need to put a class in the named selections part of the geometry lod. config #define TEast 0 #define TWest 1 #define TGuerrila 2 #define TCivilian 3 #define TSideUnknown 4 #define TEnemy 5 #define TFriendly 6 #define TLogic 7 #define true 1 #define false 0 // type scope #define private 0 #define protected 1 #define public 2 class CfgPatches { class TUT_door_3x3m { units[] = { "pos_door" }; weapons[] ={}; requiredVersion = 1; rewuiredAddons[] = {CAData}; }; }; class CfgVehicleClasses { class TUT_door_3x3m { displayName = "dar testing"; }; }; class CfgVehicles { class Strategic; class Land_TUT_door_3x3m : Strategic { scope = public; model = "\RYE_walls\TUT_door_3x3m.p3d"; mapsize = 5; displayName = "TUT_door_3x3m"; vehicleClass = "TUT_door_3x3m"; destrType = "destructBuilding"; nameSound = "Building"; accuracy = 0.2; cost = 0; armor = 50; icon = "\Ca\buildings\Icons\i_wall_CA.paa"; class AnimationSources { class pos_door { source = "user"; animPeriod = 2; initPhase = 0; }; }; class UserActions { class OpenDoors { displayName = "Open pos_door"; position = "pos_switch"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""pos_door"" < 0.5"; statement = "this animate [""pos_door"", 1]"; }; class CloseDoors { displayName = "Close pos_door"; position = "pos_switch"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""pos_door"" >= 0.5"; statement = "this animate [""pos_door"", 0]"; }; }; }; }; model class CfgSkeletons { class Default { isDiscrete = 1; skeletonInherit = ""; skeletonBones[] = {}; }; class TUT_door_3x3m_Bones : Default { isDiscrete = 1; skeletonInherit = ""; skeletonBones[] = {"pos_door",""}; }; }; class rotation; class CfgModels { class Default; class TUT_door_3x3m : Default { sectionsInherit = ""; sections[] = {}; skeletonName = "TUT_door_3x3m_Bones"; class Animations { class pos_door : Rotation { type = "rotation"; source = "user"; animPeriod = 2; selection = "pos_door"; axis = "door_axis"; sourceAddress = "clamp"; memory = 1; minValue = 0.0; maxValue = 1; angle0 = "0"; angle1 = "rad 90"; }; }; }; }; Those worked for me in Oxygen after adding the geo lod and selecting the class in the GEO LOD, didn't try it in game but unless I typoed something it should work. You'll just have to change the path in the model line from "\RYE_walls" to whatever you have it in. -
Animated Doors - Assistance
curmudgeon replied to Richards.D's topic in ARMA 2 & OA : MODELLING - (O2)
I finally got mine to work. Here's my files if you want to take a look. config #define TEast 0 #define TWest 1 #define TGuerrila 2 #define TCivilian 3 #define TSideUnknown 4 #define TEnemy 5 #define TFriendly 6 #define TLogic 7 #define true 1 #define false 0 // type scope #define private 0 #define protected 1 #define public 2 class CfgPatches { class multilevel { units[] = { "Door","","Door2","","Door3","","Door4","","Door5","","Door6","" ,"Door7","","Door8","","Door9","","Door10","","Door11","","Door12","" ,"Door13","","Door14","","Door15" }; weapons[] = {}; requiredVersion = 1; requiredAddons[] = {"CAData"}; }; }; class CfgVehicleClasses { class multilevel { displayName = "multilevel"; }; }; class CfgVehicles { class Strategic; class Land_multilevel : Strategic { scope = public; model = "\RYE_bunker\multilevel.p3d"; mapsize = 10; displayName = "multilevel"; vehicleClass = "multilevel"; destrType = "destructBuilding"; nameSound = "Building"; ladders[] = {{"start1","end1"}}; accuracy = 0.2; cost = 0; armor = 1000; icon = "\Ca\buildings\Icons\i_wall_CA.paa"; class AnimationSources { class Door { source = "user"; animPeriod = 2; initPhase = 0; }; class Door2 : Door {}; class Door3 : Door {}; class Door4 : Door {}; class Door5 : Door {}; class Door6 : Door {}; class Door7 : Door {}; class Door8 : Door {}; class Door9 : Door {}; class Door10 : Door {}; class Door11 : Door {}; class Door12 : Door {}; class Door13 : Door {}; class Door14 : Door {}; class Door15 : Door {}; }; class UserActions { class OpenDoors { displayName = "Open Door"; position = "Door_Button"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""Door"" < 0.5"; statement = "this animate [""Door"", 1]"; }; class CloseDoors { displayName = "Close Door"; position = "Door_Button"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""Door"" >= 0.5"; statement = "this animate [""Door"", 0]"; }; class OpenDoors2 { displayName = "Open Door"; position = "Door2_Button"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""Door2"" < 0.5"; statement = "this animate [""Door2"", 1]"; }; class CloseDoors2 { displayName = "Close Door"; position = "Door2_Button"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""Door2"" >= 0.5"; statement = "this animate [""Door2"", 0]"; }; class OpenDoors3 { displayName = "Open Door"; position = "Door3_Button"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""Door3"" < 0.5"; statement = "this animate [""Door3"", 1]"; }; class CloseDoors3 { displayName = "Close Door"; position = "Door3_Button"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""Door3"" >= 0.5"; statement = "this animate [""Door3"", 0]"; }; class OpenDoors4 { displayName = "Open Door"; position = "Door4_Button"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""Door4"" < 0.5"; statement = "this animate [""Door4"", 1]"; }; class CloseDoors4 { displayName = "Close Door"; position = "Door4_Button"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""Door4"" >= 0.5"; statement = "this animate [""Door4"", 0]"; }; class OpenDoors5 { displayName = "Open Door"; position = "Door5_Button"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""Door5"" < 0.5"; statement = "this animate [""Door5"", 1]"; }; class CloseDoors5 { displayName = "Close Door"; position = "Door5_Button"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""Door5"" >= 0.5"; statement = "this animate [""Door5"", 0]"; }; class OpenDoors6 { displayName = "Open Door"; position = "Door6_Button"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""Door6"" < 0.5"; statement = "this animate [""Door6"", 1]"; }; class CloseDoors6 { displayName = "Close Door"; position = "Door6_Button"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""Door6"" >= 0.5"; statement = "this animate [""Door6"", 0]"; }; class OpenDoors7 { displayName = "Open Door"; position = "Door7_Button"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""Door7"" < 0.5"; statement = "this animate [""Door7"", 1]"; }; class CloseDoors7 { displayName = "Close Door"; position = "Door7_Button"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""Door7"" >= 0.5"; statement = "this animate [""Door7"", 0]"; }; class OpenDoors8 { displayName = "Open Door"; position = "Door8_Button"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""Door8"" < 0.5"; statement = "this animate [""Door8"", 1]"; }; class CloseDoors8 { displayName = "Close Door"; position = "Door8_Button"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""Door8"" >= 0.5"; statement = "this animate [""Door8"", 0]"; }; class OpenDoors9 { displayName = "Open Door"; position = "Door9_Button"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""Door9"" < 0.5"; statement = "this animate [""Door9"", 1]"; }; class CloseDoors9 { displayName = "Close Door"; position = "Door9_Button"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""Door9"" >= 0.5"; statement = "this animate [""Door9"", 0]"; }; class OpenDoors10 { displayName = "Open Door"; position = "Door10_Button"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""Door10"" < 0.5"; statement = "this animate [""Door10"", 1]"; }; class CloseDoors10 { displayName = "Close Door"; position = "Door10_Button"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""Door10"" >= 0.5"; statement = "this animate [""Door10"", 0]"; }; class OpenDoors11 { displayName = "Open Door"; position = "Door11_Button"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""Door11"" < 0.5"; statement = "this animate [""Door11"", 1]"; }; class CloseDoors11 { displayName = "Close Door"; position = "Door11_Button"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""Door11"" >= 0.5"; statement = "this animate [""Door11"", 0]"; }; class OpenDoors12 { displayName = "Open Door"; position = "Door12_Button"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""Door12"" < 0.5"; statement = "this animate [""Door12"", 1]"; }; class CloseDoors12 { displayName = "Close Door"; position = "Door12_Button"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""Door12"" >= 0.5"; statement = "this animate [""Door12"", 0]"; }; class OpenDoors13 { displayName = "Open Door"; position = "Door13_Button"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""Door13"" < 0.5"; statement = "this animate [""Door13"", 1]"; }; class CloseDoors13 { displayName = "Close Door"; position = "Door13_Button"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""Door13"" >= 0.5"; statement = "this animate [""Door13"", 0]"; }; class OpenDoors14 { displayName = "Open Door"; position = "Door14_Button"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""Door14"" < 0.5"; statement = "this animate [""Door14"", 1]"; }; class CloseDoors14 { displayName = "Close Door"; position = "Door14_Button"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""Door14"" >= 0.5"; statement = "this animate [""Door14"", 0]"; }; class OpenDoors15 { displayName = "Open Door"; position = "Door15_Button"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""Door15"" < 0.5"; statement = "this animate [""Door15"", 1]"; }; class CloseDoors15 { displayName = "Close Door"; position = "Door15_Button"; radius = 2; onlyforplayer = true; condition = "this animationPhase ""Door15"" >= 0.5"; statement = "this animate [""Door15"", 0]"; }; }; }; }; model class CfgSkeletons { class Default { isDiscrete = 1; skeletonInherit = ""; skeletonBones[] = {}; }; class multilevel_Bones : Default { isDiscrete = 1; skeletonInherit = ""; skeletonBones[] = { "Door","","Door2","","Door3","","Door4","","Door5","", "Door6","","Door7","","Door8","","Door9","","Door10","", "Door11","","Door12","","Door13","","Door14","","Door15","" }; }; }; class rotation; class CfgModels { class Default; class multilevel : Default { sectionsInherit = ""; sections[] = {}; skeletonName = "multilevel_Bones"; class Animations { class Door : Rotation { type = "rotation"; source = "Door"; animPeriod = 2; selection = "Door"; axis = "Door_Axis"; sourceAddress = "clamp"; memory = 1; minValue = 0.0; maxValue = 1; angle0 = "0"; angle1 = "rad 90"; }; class Door2 : Rotation { type = "rotation"; source = "Door2"; animPeriod = 2; selection = "Door2"; axis = "Door2_Axis"; sourceAddress = "clamp"; memory = 1; minValue = 0.0; maxValue = 1; angle0 = "0"; angle1 = "rad 90"; }; class Door3 : Rotation { type = "rotation"; source = "Door3"; animPeriod = 2; selection = "Door3"; axis = "Door3_Axis"; sourceAddress = "clamp"; memory = 1; minValue = 0.0; maxValue = 1; angle0 = "0"; angle1 = "rad 90"; }; class Door4 : Rotation { type = "rotationZ"; source = "Door4"; animPeriod = 2; selection = "Door4"; axis = "Door4_Axis"; sourceAddress = "clamp"; memory = 1; minValue = 0.0; maxValue = 1; angle0 = "0"; angle1 = "rad 90"; }; class Door5 : Rotation { type = "rotation"; source = "Door5"; animPeriod = 2; selection = "Door5"; axis = "Door5_Axis"; sourceAddress = "clamp"; memory = 1; minValue = 0.0; maxValue = 1; angle0 = "0"; angle1 = "rad 90"; }; class Door6 : Rotation { type = "rotation"; source = "Door6"; animPeriod = 2; selection = "Door6"; axis = "Door6_Axis"; sourceAddress = "clamp"; memory = 1; minValue = 0.0; maxValue = 1; angle0 = "0"; angle1 = "rad 90"; }; class Door7 : Rotation { type = "rotation"; source = "Door7"; animPeriod = 2; selection = "Door7"; axis = "Door7_Axis"; sourceAddress = "clamp"; memory = 1; minValue = 0.0; maxValue = 1; angle0 = "0"; angle1 = "rad 90"; }; class Door8 : Rotation { type = "rotation"; source = "Door8"; animPeriod = 2; selection = "Door8"; axis = "Door8_Axis"; sourceAddress = "clamp"; memory = 1; minValue = 0.0; maxValue = 1; angle0 = "0"; angle1 = "rad 90"; }; class Door9 : Rotation { type = "rotation"; source = "Door9"; animPeriod = 2; selection = "Door9"; axis = "Door9_Axis"; sourceAddress = "clamp"; memory = 1; minValue = 0.0; maxValue = 1; angle0 = "0"; angle1 = "rad 90"; }; class Door10 : Rotation { type = "rotation"; source = "Door10"; animPeriod = 2; selection = "Door10"; axis = "Door10_Axis"; sourceAddress = "clamp"; memory = 1; minValue = 0.0; maxValue = 1; angle0 = "0"; angle1 = "rad 90"; }; class Door11 : Rotation { type = "rotation"; source = "Door11"; animPeriod = 2; selection = "Door11"; axis = "Door11_Axis"; sourceAddress = "clamp"; memory = 1; minValue = 0.0; maxValue = 1; angle0 = "0"; angle1 = "rad 90"; }; class Door12 : Rotation { type = "rotation"; source = "Door12"; animPeriod = 2; selection = "Door12"; axis = "Door12_Axis"; sourceAddress = "clamp"; memory = 1; minValue = 0.0; maxValue = 1; angle0 = "0"; angle1 = "rad 90"; }; class Door13 : Rotation { type = "rotation"; source = "Door13"; animPeriod = 2; selection = "Door13"; axis = "Door13_Axis"; sourceAddress = "clamp"; memory = 1; minValue = 0.0; maxValue = 1; angle0 = "0"; angle1 = "rad 90"; }; class Door14 : Rotation { type = "rotation"; source = "Door14"; animPeriod = 2; selection = "Door14"; axis = "Door14_Axis"; sourceAddress = "clamp"; memory = 1; minValue = 0.0; maxValue = 1; angle0 = "0"; angle1 = "rad 90"; }; class Door15 : Rotation { type = "rotation"; source = "Door15"; animPeriod = 2; selection = "Door15"; axis = "Door15_Axis"; sourceAddress = "clamp"; memory = 1; minValue = 0.0; maxValue = 1; angle0 = "0"; angle1 = "rad 90"; }; }; }; }; I think the main problem I was having was that I hadn't done the named properties section in the Geometry LOD in Oxygen. Check that if you are still having problems. -
Animated Doors - Assistance
curmudgeon replied to Richards.D's topic in ARMA 2 & OA : MODELLING - (O2)
I went back in and finally realized that I forgot to name the doors in one of the LODs, once I fixed that they all worked fine. I\ll go back in and adjust the users, just added another eight doors so don't need anymore problems on that end. Thanks again. -
Animated Doors - Assistance
curmudgeon replied to Richards.D's topic in ARMA 2 & OA : MODELLING - (O2)
Okay, changed the code and got the hatch to work, still no luck with the other three doors though. If you didn't see anything wrong with the rest of the file I guess I screwed something up in the model so I'll start to check back through it from that end. Thanks again. -
Animated Doors - Assistance
curmudgeon replied to Richards.D's topic in ARMA 2 & OA : MODELLING - (O2)
Okay, I thought the whole path needed to be there. I'll give it a go later and see what happens. Thanks for the help. -
Animated Doors - Assistance
curmudgeon replied to Richards.D's topic in ARMA 2 & OA : MODELLING - (O2)
RYE_bunker is the work folder, undergroundbunker is the model itself. -
Animated Doors - Assistance
curmudgeon replied to Richards.D's topic in ARMA 2 & OA : MODELLING - (O2)
Hi, I'm new to modeling in general and have been working on a bunker for a buddy of mine. I'm also having trouble with the door animations in bulldozer (haven't even tried to move it in game yet). I've been checking out others post on the model.cfg file and I can't seem to see what I'm missing and was hoping one of you guys could. class CfgSkeletons { class Default; class undergroundbunkerBones: Default { isDiscrete = 1; skeletonInherit = ""; skeletonBones[] = { "Door","", "Door2","", "Door3","", "Hatch","" }; }; }; class CfgModels { class Default; class RYE_bunker_undergroundbunker: Default { sectionsInherit = ""; sections[] = {Door_Button}; skeletonName = "undergroundbunkerBones"; class Animations { class open_Door { type = "rotation"; source = "user"; animPeriod = 2; selection = "Door"; axis = "Door_Axis"; sourceAddress = "clamp"; memory = 1; minValue = 0.0; maxValue = 1; angle0 = "0"; angle1 = "rad 90"; }; class open_Door2 { type = "rotation"; source = "user"; animPeriod = 2; selection = "Door2"; axis = "Door2_Axis"; sourceAddress = "clamp"; memory = 1; minValue = 0.0; maxValue = 1; angle0 = "0"; angle1 = "rad 90"; }; class open_Door3 { type = "rotation"; source = "user"; animPeriod = 2; selection = "Door3"; axis = "Door3_Axis"; sourceAddress = "clamp"; memory = 1; minValue = 0.0; maxValue = 1; angle0 = "0"; angle1 = "rad 90"; }; class open_Hatch { type = "rotation"; source = "user"; animPeriod = 2; selection = "Hatch"; axis = "Hatch_Axis"; sourceAddress = "clamp"; memory = 1; minValue = 0.0; maxValue = 1; angle0 = "0"; angle1 = "rad 90"; }; }; }; }; Between following Mondkalb's tutorial and seeing what Gnat responded to on this thread I've been trying to piece it together, so far no go.