-
Content Count
370 -
Joined
-
Last visited
-
Medals
-
Medals
Posts posted by six_ten
-
-
I'll ask again. Do you plan to implement horses?Are you now able to post some SS or, even better, a vid?
Been playing Napoleonic Wars lately so I'm really interested in your mod.
Thanks.
Plan to implement horses? Yes. If someone builds and animates them I'll be thrilled to be able to create the uniforms, tack, etc. and add Dragoons, Cavalry, officers on horseback, dispatch riders, and allow players to easily hitch up to wagons and artillery limbers and move them around the battlefield. But as important as they are they're not going to be in for a year or longer unless someone else creates them.
As it is I've posted a number of questions asking for help on the other priorities which are as yet unanswered. After a decade of ARMA every modder still has to reinvent the wheel when it comes to melee of any kind, so getting a tomahawk, spontoon, bayonet, and sword is taking a huge effort. At the moment I'm trying to write a script for getting the wind to work on my sailing ships, and starting to try to figure out how to get an anchor to work on them.
If you create a horse addon I'll be happy to modify and add it.
I'll post some screens or video later tonight or tomorrow for you.
- 1
-
Just a note to say I've been hard at work upgrading the mod. I hope to have something to release soon. The Bermuda Sloops are armed, I still have to replace sounds and squash bugs, but its already a lot of fun. Looking forward to pitting my ship against human opponents!
-
How do you restrict the max distance of the bullet? I haven't found an entry for that.
-
I'm trying to do the same thing. Can you post what you have so far? I'll post my results if I can get something working too.
-
I really want the code that makes the windsock turn with the wind.
-
Has nobody else encountered a similar problem with attached static weapons?
-
This is now working well. My cannons attach, the gunners appear, and the guns fire and animate correctly.
However, a problem remains:
When I am the driver of the boat the cannons and gunners appear to be outside the ship, that is, they seem to be drawn first, then the boat.
Driver view, guns drawn before ship, incorrect.
Walking on deck, first person, correct.
From the gunner's point of view, the sides of the ship are drawn first, then the guns, so they do not appear to stick through the gunports, but look like they're totally inside the ship.
First Person Gunner View, ship drawn before guns, incorrect.
How do I fix this so they look like they're in proper position on the deck?
-
Damn. Can you think of a way to implement this? I want players to be able to focus fire on the rudder (or masts, rigging, etc) in combat to disable their opponent's maneuverability.
-
The classic film noir, The Third Man, should be your starting point. http://www.youtube.com/watch?v=bvnjHevRceQ
Start at 1:46.
-
Are any stock vehicles, airplanes, boats, cars, tanks, etc able to be disabled by shooting steering? Is there any BIS setup that I can modify to create this functionality?
-
I've set up my sloop of war so that you can shoot the rudder and the rudder is replaced with a broken version, like in cars when wheel is destroyed it is replaced by broken version model. How do I fix the config so that when this happens the driver can no longer steer the ship?
-
What were the problems with submissions? If we don't know how do we avoid them?
-
BadLuckBurt I hope you'll post your results here. What I really want is to change the sun and moon altitude and azimuth to match the results from the USNO calculator for a place in Virginia in 1776, well outside teh range of the stock lighting settings.
-
Are all the 70 or so Lighting entries in map configs settings for the lighting at a particular time of day? How does that work? I want to create lighting appropriate to the location of my map.
-
The way you fix the issues and act honorably is to remove the stolen content immediately, right now, today. This "working toward" nonsense that you guys keep repeating is offensive.
-
I'm at the point with my Black Powder mod that I'm ready to add bayonets to my muskets. I haven't yet tried it but I think this is a possible approach and I'd like to get some feedback and ideas from those more experienced than me.
-- as a starting point, modify one of the weapon attachments, like a suppressor or laser sight, replacing it with a bayonet model. Now the bayonet can be added and removed from the musket.
-- add a memory point at the tip of the bayonet model and a second one further in, if the first point contacts a player then the blade scratches him and he takes light damage, if the first point then the second point hits him, he is penetrated and takes much more damage
-- taking a cue from the campfire, where just being within a meter or so causes damage, create an eventhandler for the attached bayonet to cause damage if the Tip memory point is within a few centimeters of a player
-- make it so that if bayonet is attached, left mouse button fires the normal bullet, right mouse button fires an animation to thrust the weapon forward.
-- if bayonet is detached I'd like it to be "holstered" on the player's side. I've made custom uniform models for all my characters, so it is possible to add attachment points, or even move the NVG slot for example to the hip.
Does this make sense as the best and simplest way to create a working attachable bayonet?
Edit:
At http://forums.bistudio.com/showthread.php?178148-razor-wire-to-cause-damage I found an example that seems close to what I was thinking about (though I want mine built-in not external scripts) but one of the posters warns that too many instances will cause problems. Since every musket will be capable of using a bayonet, whatever method I use has to be low-impact on performance.
if using the editor; give the wire the name "barbWire" and put this in it's Init:this execVM"barbwiredamage.sqf";
then create a file called barbwiredamage.sqf, save it in the root of your mission folder and put this inside it:
Private [ "_distance" ]; while (alive player) do { sleep 1; _distance = player distanceSqr barbWire; if (_distance < 0.1) then { sleep 0.5; player setDamage 0.05; }; } else { hint"W00ps, you died. I should stop executing this script."; };
Now you have one barbwire that will give you the thing you want. But if you are going to put a shitload (more than 30) razor wires in your mission, it would be better not to use this method. Something to do with script spam.
-
I've tried the method in this thread from 1267 days ago but the syntax seems to have changed, as it throws errors when I try it.
http://forums.bistudio.com/showthread.php?119436-Open-multi-doors-with-one-control
Any ideas?
-
I'd like to combine the door open action for a pair of doors. I've followed some older threads with information about this, but keep getting errors when I try what they did. Can someone help me rewrite this so I can open and close the doors together? I based my building on the Test_House in Samples_F.
class OpenDoor_1 { displayNameDefault = "<img image='\A3\Ui_f\data\IGUI\Cfg\Actions\open_door_ca.paa' size='2.5' />"; // This is displayed in the center of the screen just below crosshair. In this case it's an icon, not a text. displayName = "Open Door"; // Label of the action used in the action menu itself. position = Door_1and2_trigger; // Point in Memory lod in p3d around which the action is available. priority = 0.4; // Priority coefficient used for sorting action in the action menu. radius = 2.5; // Range around the above defined point in which you need to be to access the action. onlyForPlayer = false; // Defines if the action is available only to players or AI as well. condition = ((this animationPhase 'Door_1_rot') < 0.5) && ((this animationPhase 'Hitzone_2_hide') < 0.99999); // Condition for showing the action in action menu. In this case it checks if the door is closed and if the part of the house in which the door is located hasn't been destroyed yet). statement = ([this, 'Door_1_rot'] execVM "\ART\ART_Arch\Scripts\DoorNoHandle_open.sqf"); // Action taken when this action is selected in the action menu. In this case it runs a script that opens the door. }; class CloseDoor_1: OpenDoor_1 { displayName = "Close Door"; priority = 0.2; condition = ((this animationPhase 'Door_1_rot') >= 0.5) && ((this animationPhase 'Hitzone_2_hide') < 0.99999); // Checks if the door is currently open and not destroyed. statement = ([this, 'Door_1_rot'] execVM "\ART\ART_Arch\Scripts\DoorNoHandle_close.sqf"); }; class OpenDoor_2: OpenDoor_1 { position = Door_1and2_trigger; condition = ((this animationPhase 'Door_2_rot') < 0.5) && ((this animationPhase 'Hitzone_2_hide') < 0.99999); statement = ([this, 'Door_2_rot'] execVM "\ART\ART_Arch\Scripts\DoorNoHandle_open.sqf"); }; class CloseDoor_2: CloseDoor_1 { position = Door_1and2_trigger; condition = ((this animationPhase 'Door_2_rot') >= 0.5) && ((this animationPhase 'Hitzone_2_hide') < 0.99999); statement = ([this, 'Door_2_rot'] execVM "\ART\ART_Arch\Scripts\DoorNoHandle_close.sqf"); };
-
I rotated my carriage and barrel proxies to be parallel with the gunwales, but even changing the initial rotation in the config they do not turn to be perpendicular in game. Unless I rotate them in the p3d they stay pointing forward.
-
Hm i wonder why you didnt get it to work with just the config...I cannot (and after weeks of trying) get the optics for the gunners to look in the direction of the cannon.
Yesterday I rebuilt the gundeck using your method (which was the way I used to do it) but no matter what i can't get the damned gunners to look in the right direction, and the cannons will not fire correctly.
If I post my model and config could you take a look at it? I still can't get the scripts to work either, so now I don't even have that as a backup method.
-
Has anyone been able to get the helis in Samples_F to work? I ran the folder through pboProject and got a number of errors, first being line 260, in Useractions --> Doors
displayNameDefault = <img image='\A3\Ui_f\data\IGUI\Cfg\Actions\open_door_ca.paa' size='2.5' />; /// what is displayed under the cursor (icon in this case)
adding quotation marks stopped that error,
displayNameDefault = "<img image='\A3\Ui_f\data\IGUI\Cfg\Actions\open_door_ca.paa' size='2.5' />"; /// what is displayed under the cursor (icon in this case)
but more kept coming up, like an incorect proxy reference to cargo_01 in the p3d, and others. After finally getting it to pack without error, placing the helis in the editor, and running it, the rotors don't turn, the doors won't open, and I can't shoot from the cargo_turret position (which was the only reason I got the heli going).
All I really want is to see how to set up the cargo so I can have players firing from the deck of my sloop.
-
I have been reconstructing my files since they were destroyed by a trojan, and now for some reason my script version has stopped working.
As it is now, no flags, no guns and no rigging appear. Also the boarding script is broken.
What have I missed? Any idea why this is broken?
model.cfg
class Rotation { type = "rotation"; memory = 1; minValue = 0; maxValue = 1; angle0 = 0; angle1 = 1; }; class CfgSkeletons { class Default { isDiscrete = 1; skeletonInherit = ""; skeletonBones[] = {}; }; class Vehicle: Default {}; class Ship: Vehicle { skeletonInherit="Vehicle"; skeletonBones[]={}; }; class civilian_boatSkeleton: Ship { skeletonInherit = "ship"; skeletonBones[] = { "Compass", "", "drivingWheel", "", "Rudder", "", "damageHide", "", /////////////////////////////////////////////////////////////////// "Rudder_unhide","Rudder", "Rudder_hide","Rudder" /////////////////////////////////////////////////////////////////// }; }; }; class CfgModels { class Rotation; class Default { sectionsInherit=""; sections[] = {}; skeletonName = ""; }; class Vehicle: Default { sections[] = { "zasleh" }; }; /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // END SLOOP BASE BEGIN SLOOP BERMUDA /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// class Sloop_Bermuda: Vehicle { skeletonName = "civilian_boatSkeleton"; sections[] = { "camo", "Hull", "zbytek", "Compass", "drivingWheel", "Rudder" }; class Animations { // destruct START class damageHide { type="hide"; source="damage"; selection="damageHide"; hideValue=1.0; }; class damageHideVez:damageHide { selection="OtocVez"; }; class damageHideHlaven:damageHide { selection="OtocHlaven"; }; /////////////////////////////////////////////////////////////////////// class Rudder_destruct { type="hide"; selection="Rudder_hide"; source="HitRudder"; minValue = 0; // upravit na 0.99 maxValue = 1; // upravit na 1.0 hidevalue = 0.99999; }; class Rudder_destruct_unhide { type="hide"; selection="Rudder_unhide"; source="HitRudder"; minValue = 0; maxValue = 1; hidevalue = 0.00000; UnHidevalue = 1.00000; }; /////////////////////////////////////////////////////////////////////// class Compass { type="rotation"; source="direction"; selection="Compass"; axis="Compass_Axis"; memory=1; minValue=-3.141590; maxValue=3.141590; angle0=-3.141593; angle1=3.141593; }; class drivingWheel { type = "rotation"; source = "drivingWheel"; selection = "drivingWheel"; axis = "drivingWheel_Axis"; memory = 1; minValue = -1; maxValue = 1; angle0 = -2; angle1 = 2; }; class Rudder: drivingWheel { selection = "Rudder_hide"; axis = "Rudder_Axis"; angle0 = 1.308997; angle1 = -1.308997; }; }; }; };
config.cpp
//////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////// #define _ARMA_ //ndefs=5 enum { StabilizedInAxesNone = 0, StabilizedInAxisX = 1, StabilizedInAxisY = 2, StabilizedInAxesBoth = 3, StabilizedInAxesXYZ = 4 }; //Class ART_Water : config.bin{ class CfgPatches { class ART_Water { units[] = {"Sloop","Sloop_Rigging_Ratlines","Sloop_Merchant","Sloop_American","Sloop_Militia","Sloop_British","Sloop_Loyalist"}; weapons[] = {"Cannon_Half_pdr","Cannon_Four_pdr"}; requiredVersion = 0.1; requiredAddons[] = {"A3_Boat_F","ART_Base","ART_Weapons"}; magazines[] = {}; ammo[] = {}; }; }; class DefaultEventhandlers; class CfgVehicles { class Land_PierLadder_F; class Sloop_Rigging_Ratlines: Land_PierLadder_F { scope = 2; displayName = "Ratlines"; vehicleClass = "1776_Seamanship"; mapSize = 0.01; Icon = "\ART\ART_Fortification\Data\UI\map_Tent_BellOfArms_CA.paa"; model = "\ART\ART_Water\Sloop_Rigging_Ratlines.p3d"; armor = 150; ladders[] = {{ "P_Ratline_Start","P_Ratline_End" },{ "S_Ratline_Start","S_Ratline_End" }}; }; class Ship; class Ship_F: Ship { class ViewPilot; class AnimationSources; class Eventhandlers; class HitPoints { class HitRudder { armor = 0.00125; material = -1; name = "Rudder"; visual = ""; passThrough = 0.0; explosionShielding = 0; radius = 0.1; }; class HitHull { armor = 1; material = 50; name = "Hull"; visual = "zbytek"; passThrough = 1; explosionShielding = 1; }; class HitWaterline { armor = 1; material = 50; name = "Waterline"; visual = "zbytek"; passThrough = 1; explosionShielding = 1; }; class HitMainMast { armor = 1.2; material = 60; name = "MainMast"; visual = ""; passThrough = 1; radius = 0.1; }; class HitBowsprit { armor = 1; material = 50; name = "Bowsprit"; visual = "zbytek"; passThrough = 1; explosionShielding = 1; }; }; }; class Sloop_Bermuda: Ship_F { class NewTurret; class Turrets; class ViewOptics; class EventHandlers; side = 3; faction = "CIV_F"; vehicleClass = "1776_Seamanship"; displayName = "Bermuda Sloop"; model = "\ART\ART_Water\Sloop_Bermuda.p3d"; picture = "\A3\Weapons_F\Data\placeholder_co.paa"; Icon = "\ART\ART_Water\Data\UI\map_sloop_ca.paa"; mapSize = 19.8; cost = 20000; accuracy = 0.5; collisionEffect = "collisionEffect"; class HitPoints: HitPoints { class HitRudder: HitRudder { armor = 0.00125; material = 60; name = "Rudder"; visual = "zbytek"; passThrough = 1; radius = 0.5; }; class HitHull { armor = 1; material = 50; name = "Hull"; visual = "zbytek"; passThrough = 1; explosionShielding = 1; }; class HitWaterline { armor = 1; material = 50; name = "Waterline"; visual = "zbytek"; passThrough = 1; explosionShielding = 1; }; class HitMainMast { armor = 1.2; material = 60; name = "MainMast"; visual = "zbytek"; passThrough = 1; radius = 0.1; }; class HitBowsprit { armor = 1; material = 50; name = "Bowsprit"; visual = "zbytek"; passThrough = 1; explosionShielding = 1; }; }; class AnimationSources { class HitRudder { source = "Hit"; hitpoint = "HitRudder"; raw = 1; }; class Proxy { source = "user"; animPeriod = 1; initPhase = 0; }; }; leftEngineEffect = "LEngEffectsSmall"; rightEngineEffect = "REngEffectsSmall"; simulation = "shipx"; maxSpeed = 80; overSpeedBrakeCoef = 0.8; enginePower = 1235; engineShiftY = 1.1; waterLeakiness = 10.0; turnCoef = 1.5; thrustDelay = 0.25; waterLinearDampingCoefY = 2; waterLinearDampingCoefX = 2.0; waterAngularDampingCoef = 1.2; waterResistanceCoef = 0.015; rudderForceCoef = 2.0; rudderForceCoefAtMaxSpeed = 2.0; idleRpm = 200; redRpm = 1200; class complexGearbox { GearboxRatios[] = {"R1",-0.782,"N",0,"D1",2.0,"D2",1.85,"D3",1.75}; TransmissionRatios[] = {"High",1.0}; gearBoxMode = "auto"; moveOffGear = 1; driveString = "D"; neutralString = "N"; reverseString = "R"; }; brakeDistance = 3; driverAction = "driver_boat01"; driverLeftHandAnimName = "drivingWheel"; driverRightHandAnimName = "drivingWheel"; cargoAction[] = {"passenger_low01"}; cargoIsCoDriver[] = {0}; ejectDeadDriver = 0; transportSoldier = 24; class TransportItems { class _xx_FirstAidKit { name = "FirstAidKit"; count = 6; }; }; armor = 2000; damageResistance = 0.00882; attenuationEffectType = "OpenCarAttenuation"; insideSoundCoef = 1; soundEngineOnInt[] = {"a3\Sounds_F\vehicles\boat\Motor_Boat\engine_start","db-5",1.0}; soundEngineOnExt[] = {"a3\Sounds_F\vehicles\boat\Motor_Boat\engine_start","db-5",1.0,300}; soundEngineOffInt[] = {"a3\Sounds_F\vehicles\boat\Motor_Boat\engine_stop","db-5",1.0}; soundEngineOffExt[] = {"a3\Sounds_F\vehicles\boat\Motor_Boat\engine_stop","db-5",1.0,300}; buildCrash0[] = {"A3\sounds_f\Vehicles\soft\noises\crash_building_01","db0",1,200}; buildCrash1[] = {"A3\sounds_f\Vehicles\soft\noises\crash_building_02","db0",1,200}; buildCrash2[] = {"A3\sounds_f\Vehicles\soft\noises\crash_building_03","db0",1,200}; buildCrash3[] = {"A3\sounds_f\Vehicles\soft\noises\crash_building_04","db0",1,200}; soundBuildingCrash[] = {"buildCrash0",0.25,"buildCrash1",0.25,"buildCrash2",0.25,"buildCrash3",0.25}; WoodCrash0[] = {"A3\sounds_f\Vehicles\soft\noises\crash_mix_wood_01","db0",1,200}; WoodCrash1[] = {"A3\sounds_f\Vehicles\soft\noises\crash_mix_wood_02","db0",1,200}; WoodCrash2[] = {"A3\sounds_f\Vehicles\soft\noises\crash_mix_wood_03","db0",1,200}; WoodCrash3[] = {"A3\sounds_f\Vehicles\soft\noises\crash_mix_wood_04","db0",1,200}; WoodCrash4[] = {"A3\sounds_f\Vehicles\soft\noises\crash_mix_wood_05","db0",1,200}; WoodCrash5[] = {"A3\sounds_f\Vehicles\soft\noises\crash_mix_wood_06","db0",1,200}; soundWoodCrash[] = {"woodCrash0",0.166,"woodCrash1",0.166,"woodCrash2",0.166,"woodCrash3",0.166,"woodCrash4",0.166,"woodCrash5",0.166}; ArmorCrash0[] = {"A3\sounds_f\Vehicles\soft\noises\crash_vehicle_01","db0",1,200}; ArmorCrash1[] = {"A3\sounds_f\Vehicles\soft\noises\crash_vehicle_02","db0",1,200}; ArmorCrash2[] = {"A3\sounds_f\Vehicles\soft\noises\crash_vehicle_03","db0",1,200}; ArmorCrash3[] = {"A3\sounds_f\Vehicles\soft\noises\crash_vehicle_04","db0",1,200}; soundArmorCrash[] = {"ArmorCrash0",0.25,"ArmorCrash1",0.25,"ArmorCrash2",0.25,"ArmorCrash3",0.25}; class Sounds { class IdleOut { sound[] = {"A3\Sounds_F\vehicles\boat\Motor_Boat\engine_idle","db-7",1.0,300}; frequency = "0.95 + ((rpm/1000) factor[(100/1000),(250/1000)])*0.15"; volume = "engineOn*(((rpm/1000) factor[(100/1000),(150/1000)])* ((rpm/1000) factor[(270/1000),(200/1000)]))"; }; class Engine { sound[] = {"A3\Sounds_F\vehicles\boat\Motor_Boat\engine_1","db-4",1.0,350}; frequency = "0.85 + ((rpm/1000) factor[(200/1000),(370/1000)])*0.2"; volume = "engineOn*(((rpm/1000) factor[(190/1000),(250/1000)])* ((rpm/1000) factor[(380/1000),(280/1000)]))"; }; class EngineMidOut { sound[] = {"A3\Sounds_F\vehicles\boat\Motor_Boat\engine_3","db-2",1.0,380}; frequency = "0.85 + ((rpm/1000) factor[(280/1000),(480/1000)])*0.2"; volume = "engineOn*(((rpm/1000) factor[(250/1000),(350/1000)])* ((rpm/1000) factor[(480/1000),(390/1000)]))"; }; class EngineMaxOut2 { sound[] = {"A3\Sounds_F\vehicles\boat\Motor_Boat\engine_4","db-1",1.0,440}; frequency = "0.86 + ((rpm/1000) factor[(380/1000),(580/1000)])*0.2"; volume = "engineOn*(((rpm/1000) factor[(370/1000),(440/1000)])* ((rpm/1000) factor[(585/1000),(495/1000)]))"; }; class EngineMaxOut3 { sound[] = {"A3\Sounds_F\vehicles\boat\Motor_Boat\engine_5","db0",1.0,500}; frequency = "0.85 + ((rpm/1000) factor[(490/1000),(800/1000)])*0.2"; volume = "engineOn*(((rpm/1000) factor[(460/1000),(550/1000)])* ((rpm/1000) factor[(780/1000),(620/1000)]))"; }; class EngineMaxOut4 { sound[] = {"A3\Sounds_F\vehicles\boat\Motor_Boat\engine_6","db2",1.0,550}; frequency = "0.85 + ((rpm/1000) factor[(650/1000),(1000/1000)])*0.2"; volume = "engineOn*((rpm/1000) factor[(600/1000),(800/1000)])"; }; class WaternoiseOutW0 { sound[] = {"A3\Sounds_F\vehicles\boat\SFX\voda-o-bok-lodi-0-speed1","db-3",1.0,150}; frequency = "1"; volume = "(speed factor[4, 1])"; }; class WaternoiseOutW1 { sound[] = {"A3\Sounds_F\vehicles\boat\SFX\voda-o-bok-lodi-20-speed","db-2",1.0,250}; frequency = "1"; volume = "((speed factor[2, 6]) min (speed factor[6, 4]))"; }; class WaternoiseOutW2 { sound[] = {"A3\Sounds_F\vehicles\boat\SFX\voda-o-bok-lodi-50-speed","db0",1.0,350}; frequency = "1"; volume = "(speed factor[3, 9])"; }; }; class Reflectors{}; class Damage { tex[] = {}; mat[] = {"ART\ART_Water\Data\Sloop_Hull.rvmat","ART\ART_Water\Data\Sloop_Hull_damage.rvmat","ART\ART_Water\Data\Sloop_Hull_destruct.rvmat","ART\ART_Water\Data\Sloop_Rig.rvmat","ART\ART_Water\Data\Sloop_Rig_damage.rvmat","ART\ART_Water\Data\Sloop_Rig_destruct.rvmat"}; }; extCameraPosition[] = {0,10.0,-18.0}; rightFastWaterEffect = "RFastWaterEffects"; waterEffectSpeed = 5; engineEffectSpeed = 5; waterFastEffectSpeed = 15; class UserActions { class BoardTheVessel { displayName = "Board the Vessel"; position = "zamerny"; onlyforplayer = 1; radius = 10; condition = "not (player in this)"; statement = "[this, player] execVM ""\ART\ART_Water\Scripts\Boarding.sqf"""; }; }; hiddenSelections[] = {"Camo_Hull","Camo_Rig"}; hiddenSelectionsTextures[] = {"\ART\ART_Water\Data\Sloop_Hull_CO.paa","\ART\ART_Water\Data\Sloop_Rig_CO.paa"}; }; class Sloop_American: Sloop_Bermuda { scope = 2; displayName = "American Navy Sloop"; side = 1; faction = "UnitedStates"; crew = "Pvt2dVirginiaRegt_1777"; class AnimationSources: AnimationSources { class Proxy: Proxy { initPhase = 1; }; }; hiddenSelectionsTextures[] = {"\ART\ART_Water\Data\Sloop_Hull_CO.paa"}; class EventHandlers { init = "[_this select 0] execVM ""\ART\ART_Water\Scripts\Rigging_Init.sqf"";"; }; }; }; //};
Rigging_Init.sqf
//---------------------------------------- //script by Gnat //mp fix by armatech //---------------------------------------- // if you use it, credit me as appropraite //---------------------------------------- _ship = _this select 0; if (!local _ship) exitWith {}; //_xx = 10 preloadObject "RHIB"; //_xx = 10 preloadObject "RHIB2Turret"; //_xx = 10 preloadObject "Stinger_Pod"; //Get var form ship _check = _ship getVariable "boatsloaded"; //Check is var is empty/not set if(isnil ("_check"))then { //load ships and set var //Broadcasts ships loaded _ship setVariable ["boatsloaded", 99,true]; //run boat loading scripts _ladder = "Sloop_Rigging_Ratlines" createvehicle[0,0,0]; _ladder attachto [_ship,[0.0,-3.25,-2.35]]; _flag = "Flag_US_Navy" createvehicle[0,0,0]; _flag attachto [_ship,[0.0,-4.9,11.0]]; //////////////////////////////////////////////////////////////////////////////////// /// Begin Gundeck //////////////////////////////////////////////////////////////////////////////////// /// Port _P1Cannon = "Gun_Swivel_Halfpdr" createvehicle[0,0,0]; createVehicleCrew _P1Cannon; _P1Cannon attachto [_ship,[0,0,0],"P1Gun"]; _P1Cannon setDir -45; _P2Cannon = "Gun_Naval_4pdr" createvehicle[0,0,0]; createVehicleCrew _P3Cannon; _P2Cannon attachto [_ship,[0,0,0],"P2Gun"]; _P2Cannon setDir -70; _P3Cannon = "Gun_Naval_4pdr" createvehicle[0,0,0]; createVehicleCrew _P3Cannon; _P3Cannon attachto [_ship,[0,0,0],"P3Gun"]; _P3Cannon setDir -90; _P4Cannon = "Gun_Naval_4pdr" createvehicle[0,0,0]; createVehicleCrew _P4Cannon; _P4Cannon attachto [_ship,[0,0,0],"P4Gun"]; _P4Cannon setDir -90; _P5Cannon = "Gun_Naval_4pdr" createvehicle[0,0,0]; createVehicleCrew _P5Cannon; _P5Cannon attachto [_ship,[0,0,0],"P5Gun"]; _P5Cannon setDir -90; _P6Cannon = "Gun_Naval_4pdr" createvehicle[0,0,0]; createVehicleCrew _P6Cannon; _P6Cannon attachto [_ship,[0,0,0],"P6Gun"]; _P6Cannon setDir -90; /// Starboard _S1Cannon = "Gun_Swivel_Halfpdr" createvehicle[0,0,0]; createVehicleCrew _S1Cannon; _S1Cannon attachto [_ship,[0,0,0],"S1Gun"]; _S1Cannon setDir 45; _S2Cannon = "Gun_Naval_4pdr" createvehicle[0,0,0]; createVehicleCrew _S2Cannon; _S2Cannon attachto [_ship,[0,0,0],"S2Gun"]; _S2Cannon setDir 70; _S3Cannon = "Gun_Naval_4pdr" createvehicle[0,0,0]; createVehicleCrew _S3Cannon; _S3Cannon attachto [_ship,[0,0,0],"S3Gun"]; _S3Cannon setDir 90; _S4Cannon = "Gun_Naval_4pdr" createvehicle[0,0,0]; createVehicleCrew _S4Cannon; _S4Cannon attachto [_ship,[0,0,0],"S4Gun"]; _S4Cannon setDir 90; _S5Cannon = "Gun_Naval_4pdr" createvehicle[0,0,0]; createVehicleCrew _S5Cannon; _S5Cannon attachto [_ship,[0,0,0],"S5Gun"]; _S5Cannon setDir 90; _S6Cannon = "Gun_Naval_4pdr" createvehicle[0,0,0]; createVehicleCrew _S6Cannon; _S6Cannon attachto [_ship,[0,0,0],"S6Gun"]; _S6Cannon setDir 90; //////////////////////////////////////////////////////////////////////////////////// /// End Gundeck //////////////////////////////////////////////////////////////////////////////////// };
-
I'd start by getting the tools installed and P drive set up, and then going into the Samples_F directory under Arma 3 Tools. There's a sample car, boat, and heli in there. Try to get them to work in game. Once you do, save a copy of them, and start messing around and customizing them. Have fun.
-
Simple problem with a simple solution:
Go to http://www.buckrogers.demon.co.uk/3d/3d.htm
Scroll down to the bottom section and download "depent"
Take your obj format model and run it through depent.
Import the result.
Mathematics help and custom AnimationSource controller from windDir
in ARMA 3 - ADDONS - CONFIGS & SCRIPTING
Posted · Edited by Six_Ten
I have a script that pushes my sloop (sailing vessel) in the wind; the engine works but its power is reduced so most thrust must come from wind. If you sail into the wind, you can move forward slowly, a couple of km/hr. If you sail with the wind at your back or sides, you can move up to 20 km/hr or so. This works now. To make it more realistic I want to do the following:
1. Get the wind direction relative to the ship direction and set the angle of the yards, boom and gaff (the parts that hold the sails onto the mast). For this I think I need a custom AnimationSource controller, right? At the moment the angle of the boom, gaff and yards is set by the rudder just to see how it looks. I would like to have this independently controlled by the captain, but for the sake of new players and AI it seems best to automatically set the best angle. I don't know how to do the math to convert windDir and shipDir to the angle of difference between them. One the math is done, how do I send that to an animationsource so that it will rotate them?
2. Taking the result of the above, the angle of difference between wind and ship, multiply (?) that by the square yardage of sails remaining (enemies can shoot and destroy rigging and sails) and use that number to set the velocity of the ship. Currently you can shoot out the Boom and Gaff, which hold the MainSail. Is the correct expression "isDestroyed" when they are hidden and replaced with damaged versions? I want to assign a value for each sail, based on number of square yards, and when one is destroyed, deduct that amount from a multiplier that feeds into the ship velocity.
1794 Steel diagram
http://i.imgur.com/8MvjAzO.jpg