Jump to content
Sign in to follow this  
ONI.au

realistic javelin

Recommended Posts

ok here we go....personally i would like to see if  someone could do a  realistic version of the jav  because the current one continues to block your line of sight 1 while moving 2 while trying to take a sight picture standing ,kneeling and prone

now in real life a soldier doesnt run around with the CLU (firing device) attached to the javelin the javelin is loaded onto the CLU prior to firing and only takes a second or two to do so maybe somone can model up a javelin where the CLU is not on the javelin only the tube till it has to be used and then the sequence would go from the load then fire

this would reduce blocking of lines of sight and also would be a more realistic javelin imho

edit: also another nice adition would be to add in the alternate fire type (top ) as this would allow the javelin to do what its designed to do and thats attack the weakest armor of tanks and thats always on top

Share this post


Link to post
Share on other sites

Dam this is like my third time saying this this week.

Please post this in the addon request thread.

I also agree that we need a new jav addon, also would like to shoot thr RPG standing up. yay.gif

This will most likely get moved and/or locked. nener.gif

Share this post


Link to post
Share on other sites

the reason rpg's in general are not fired standing is you would simply get knocked on your ass

when i was in the military and we fired carl gustav's and 66 rocket launchers we were taught that the prefered stance was at the kneel simply due to the backblasts ability to throw you off balance and also throw off your shot if you didnt have a stable position and the safest stable position is at the kneel

edit however there are times when a standing shot would be more apropraite like firing from windows at targets below in a street and the like so it would be nice as an option

moved to request thread by me

Share this post


Link to post
Share on other sites

Well..Both CG (GRG), and the swedish version of LAW/AT

M/86 is possible to fire laying down..Standing is also

possible but i wouldnt recomend it. If short of time

before fire ok, but not otherwise. But laying down

would be nice..

For the swedish readers please refer to page 52 and 58

of Soldiers Manual (SoldF 2001)

Share this post


Link to post
Share on other sites

I started messing around with the Javelin on a whim today after getting sick of an aircraft flare script.

Obviously the biggest improvements to the Javelin would be to add in the top and direct attack modes properly. There's a ton of sensor cooldown, reload animation, visual, blah blah stuff too but it's more secondary. That and somehow making it require a more manual method of target acquisition. The ArmA version is way too easy.

The idea was just to 1. provide two modes using modes[]={} or muzzles[] = {} to give the top/direct option, and then shape the missle flight path as it came out of the tube based on the muzzle/mode used.

Just for easy peasy I forced the missile to its initial direction continuously for 2-3 seconds and then let it continue toward its target naturally for terminal approach. It worked and had the nice effect of increasing the "arch" in the trajectory.

Obviously a hardcoded time delay of straight up launch doesn't work for all ranges of targets so the phases of travel (climb, cruise, terminal) would have to be variable calculations based on the range to target. Climb phase would be to a calculated altitude (above initial firing point) based on range, followed by a level cruise phase, and then simply to let the missile do what it wants once it has the target approx 60 degrees down in its sights which should result in the proper terminal phase.

Easing the transition from climb to cruise could be done by simply letting the missile go from rigid control and then "catching" it again as it passes through the level flight situation. Keeping the missile in level flight is not going to be easy as a flat missile will still fall under gravity so either a guess-n-check nose up angle or a altitude-keeping routine would have to be devised.

Direct attack mode is still much higher than what BIS have done as it rises 60m or more at the middle of the trajectory.

EDIT: Frick it took me forever to find these images again.

1-27.gif

1-29.gif

I could use some help in that I can't really find a way to learn where the missile is headed or some other way of getting the range to target. This is going to make it impossible to know when to have the missile break climb/cruise in order to make its terminal run. Any ideas?

This is the script I came up with so far

<table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">//4IB_Javelin shot shaping script by Frederf

//Definitions passed to script

_unit = _this select 0;

_weapon = _this select 1;

_muzzle = _this select 2;

_mode = _this select 3;

_ammo = _this select 4;

//Exit script is the missile is not a Javelin

if ( not (_ammo == "M_Javelin_AT") ) then {exitWith;};

//Launch characteristics

_missile = nearestobject [_unit,_ammo];

_launchPos = getPosASL _unit;

_launchHeight = _launchPos select 2;

_launchDir = vectorDir _missile;

_targetPos = //HOW DO I GET THIS?!

_rangeToTarget = (getPos _unit) distance _targetPos;

_cruiseDir =; //_launchDir with a slightly nose up Z-component for level flight

_maxHeight = 160; //Max height for cruise

_phase = "climb"; //missile starts in the climb phase

//Direct attack profile

if (_mode == "Javelin_Direct") then {

if (_rangeToTarget < 65) then {exitWith; }; //Below minimum direct attack range, you're on your own!

if (_rangeToTarget < 2300) then { _maxHeight = 60 * (_rangeToTarget / 2300) } else { _maxHeight = 60 }; //Scale maxHeight based on range to target

while { _phase == "climb"} do

{

_missile setVectorDir _launchDir; //Climbout hold 18 degrees

sleep 0.01;

if ( (getPosASL _missile select 2 - _launchHeight) > _maxHeight ) then {_phase = "terminal"; }; //Once at max height, continue direct

};

};

if (_mode == "Javelin_Top") then {

if (_rangeToTarget < 150) then {exitWith; }; //Below minimum top attack range, you're on your own!

if (_rangeToTarget < 1333) then { _maxHeight = 160 * (_rangeToTarget / 1333) } else { _maxHeight = 160; }; //Scale maxHeight based on range to target

while { _phase == "climb" } do {

_missile setVectorDir _launchDir; //Climbout hold 18 degrees

sleep 0.01;

if ( (getPosASL _missile select 2 - _launchHeight) > _maxHeight ) then {condition = "cruise";} //cruise reached

};

while { _phase == "cruise" } do {

_missile setVectorDir _cruiseDir;

sleep 0.01;

if ( _maxHeight < 160 or ( getpos _missile distance _targetPos < 770 ) ) then {_phase = "terminal";}; //Cruise ends and missile tracks direct

};

};

Share this post


Link to post
Share on other sites

This may or may not be implemented in ACE.  whistle.gif

Share this post


Link to post
Share on other sites

Feel free to use my code for ACE if you like. It's kind of crude and I'd like to start messing with the missile velocities instead of just the direction; would probably make a smoother result. I haven't actually run what I've written so there's probably a few errors here and there in it. Also there's the thing about wind drift and target movement that's not accounted for, although I don't know how the Javelin works either so maybe it's supposed to go inertial until terminal phase.

I guess I could let the guidance do the left/right steering and just futz with the pitch up the missile to get it to do its climb and level flights.

One thing I haven't managed to do is to put 2 modes or muzzles on the Javelin without the damn thing showing up twice in the addAction menu. I have a feeling that a more diligent effort in coding the config would fix that.

<table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">class CfgPatches

{

class 4IB_Javelin

{

units[] = { };

weapons[] = {"Javelin"};

requiredVersion = 0.108000;

requiredAddons[] = {"CAweapons", "CAweapons3", "Extended_EventHandlers"};

};

};

// Where new fired events are defined.

class Extended_Fired_EventHandlers

{

// Define the classes to add inits to.

class Man

{

4IB_Fired_SoldierWB="_this execVM ""\4IB_Javelin\shapeShot.sqf"";";

};

};

/*

class cfgWeapons

{

class Launcher;

class Javelin: Launcher {

scope = 1;

displayName = "Javelin";

modes[] = {"Javelin_Direct", "Javelin_Top"};

class Javelin;

class Javelin_Direct: Javelin {

displayName = "Javelin (Direct)";

multiplier = 1;

burst = 1;

}

class Javelin_Top: Javelin_Direct {

displayName = "Javelin (Top)";

};

model = "\ca\weapons\javelin_launcher";

picture = "\CA\weapons\data\equip\w_javelin_ca.paa";

UiPicture = "\CA\weapons\data\Ico\i_at_CA.paa";

modelOptics = "-";

magazines[] = {"Javelin"};

sound[] = {"\ca\Weapons\Data\Sound\Javelin_fire_v3_A", 10.000000, 1};

drySound[] = {"\ca\Weapons\Data\Sound\Javelin_dry_v1", 0.000100, 1};

reloadMagazineSound[] = {"\ca\Weapons\Data\Sound\flare_reload", 0.000316, 1};

soundFly[] = {"\ca\Weapons\Data\Sound\rocket_fly1", 10.000000, 1.500000};

value = 20;

canLock = 2;

recoil = "launcherBase";

aiRateOfFire = 5.000000;

aiRateOfFireDistance = 500;

class Library {

libTextDesc = "$STR_LIB_JAVELIN";

};

};

};

*/

Share this post


Link to post
Share on other sites

Hi Frederf,

I noticed this:

Quote[/b] ]_targetPos = //HOW DO I GET THIS?!

So far, I have only discovered some codes in a "support-script", which should be included within this mission feature "call air strike with GBUs or AT with heli".

The calulation is based on the viewdirection of the binocular / scope, although the consequence would be not to have a "lock-on" weapon, but I hope this helps a bit confused_o.gif

:edit: Finally located the script, created my ZoneKiller

Share this post


Link to post
Share on other sites

How hard is it not to see a sticky thread saying "Addon request thread"?

I start thinking that ignoring it is done on purpose, hoping that the request has better chances by ignoring (unwritten) rules and starting an extra thread instead.

Do we really need to have a written rule for each and every little thing?

icon_rolleyes.gif

Closing.

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  

×