Jump to content

NonWonderDog

Member
  • Content Count

    208
  • Joined

  • Last visited

  • Medals

Everything posted by NonWonderDog

  1. NonWonderDog

    Tank Fire Control Systems

    That should be the addon: http://mihd.net/wcj6oa PS: Decompress it with PBO Decryptor v1.5. ofpec link Interesting... There are "HitHullFront" and "HitTurretFront" selections in the config, that correspond to points in the front of the turret and hull, respectively. Were these added by the author? They aren't present in ArmA's configs. It appears to me, from various quotes by Suma, that adding extra selections like this does absolutely nothing. Other than that, the right track selection has been moved to the engine compartment, and the left track has been moved to the center of the turret. HitEngine is already present in ArmA, so the right track modification isn't necessary, but I don't know what the left track is doing there. What, exactly, causes the AI to bail out? More questions: what do "material" and "passThrough" do in the "Hit*" selections? If "Hull" or "Turret" is destroyed, is the tank destroyed as well? If so, I could make one of them the front armor, with ridiculously high hitpoints, and another one of them the side and rear armor, with reasonable hitpoints. [edit] OK, so materials are supposed to be defined in the visible LODs of the model, as "user value." This isn't yet in the models decrypted by Synide. I still don't know what this is for, though, since the wheeled vehicles have material=-1 for almost everything and seem to work fine. I understand passThrough, though: with passThrough=1, destruction of that component is supposed to destroy the tank according to Armored_Sheep. It doesn't. It actually seems like it would take all of five minutes to make tanks nearly impervious to HE ammo. All you'd have to do is increase armor by 100x, decrease each HitXXX{armor} by 100x, and set armorStructural to 100. That would all but nullify global hitpoints, allowing destruction of a tank only by destruction of its hull, turret, or engine. You might be able to narrow that down to hull or turret, too, by setting passThrough=0 for the engine (and script fire damage to the occupants of the tank if canMove=false, too...). HE rounds would then lose the ability to kill a tank by dealing light damage to all its components at once until the global hitpoints are depleted. They'd have to destroy the hull or turret themselves, which would take quite a while with appropriately low indirect damage and low direct damage. Of course, this would mean the "hit" event handler would never fire, so I should really use a smaller sledgehammer. And shells need a high indirect damage to kill cars and helicopters with indirect hits. But, since my canister rounds barely cause any stutters (the projectiles cause no stutters, but the impact effects do...), I think I'm going to add random fragments to all the explosive shells and grenades. The scripting might be pretty heavy, but I'd need a lot fewer than 1200 fragments for each explosive. I can ignore fragments that would fire downwards for shells that detonate at ground level, too. This would make frag shells and artillery a lot more realistic, and I'd be able to keep the indirect damage effect for overpressure and heat effects. This would instantly solve the too-high indirect damage problem with MPAT. In my opinion only thermobarics should kill everything within 15 meters -- HE rounds with a 15 meter lethal radius should be much more random. I'd have to find a way to get rid of the damage reduction to prone soldiers, though...
  2. NonWonderDog

    Tank Fire Control Systems

    Artillery rounds are not finished. Or rather, they're not started. I'm not sure why I have them in this mod. Before I can get really start on them I really need to write a MATLAB code to simulate the ArmA ballistics so I don't have to load the game each time. (Actually, I might have a projectile code I wrote as a frosh that uses the same formulas... Yep, I do. It's now adapted to work with ArmA physics .) I can say, though, that the airFriction you came up with seems very low. I'm just sitting around with a G&T watching the Wahoos lose, so I'll do some research. Anyway, if you grab the initSpeed and the airFriction from the config your script should work with any numbers I come up with. Take a look at getNumber if you haven't already. I don't know what names I'll use for the artillery rounds, though, since I'm changing things constantly. I'll make an ArtyBallistics.pbo you can use for whatever purposes you want. Random research forthcoming: from Janes: Ballistic data for the 105 mm HE M1 when fired from M101/M101A1 howitzers is as follows: Charge 1 - MV 198.1 m/s - max range 3,510 m Charge 2 - MV 216.4 m/s - max range 4,110 m Charge 3 - MV 237.7 m/s - max range 4,860 m Charge 4 - MV 266.7 m/s - max range 5,950 m Charge 5 - MV 310.9 m/s - max range 7,650 m Charge 6 - MV 376.4 m/s - max range 9,380 m Charge 7 - MV 472.4 m/s - max range 11,270 m. Ballistic data for the 105 mm HE M1 when fired from M102 howitzers is as follows: Charge 1 - MV 205 m/s - max range 3,700 m Charge 2 - MV 223 m/s - max range 4,300 m Charge 3 - MV 247 m/s - max range 5,200 m Charge 4 - MV 278 m/s - max range 6,300 m Charge 5 - MV 325 m/s - max range 8,100 m Charge 6 - MV 393 m/s - max range 9,600 m Charge 7 - MV 494 m/s - max range 11,500 m. Range data for the L119/M119A1 Towed Howitzer when firing the 105 mm HE M1 is as follows: Charge 1 - range 1,800 to 3,400 m Charge 2 - range 2,100 to 4,100 m Charge 3 - range 2,600 to 4,800 m Charge 4 - range 4,100 to 6,300 m Charge 5 - range 4,200 to 7,900 m Charge 6 - range 5,000 to 9,500 m Charge 7 - range 6,200 to 11,500 m. China North Industries (NORINCO) Type: 105 mm HE Description: Projectile weight given as 18.12 kg with length 789 mm. Filled with 2.31 kg of Composition B or 2.18 kg of TNT. Muzzle velocity 494 m/s. May be fitted with standard NATO fuzes. No other information available although stated to be compatible with standard NATO howitzers Yugoimport SDPR Type: 105 mm HE M1 Description: Essentially the same as HE M1. For 105 mm M56 howitzer, from which it is fired using a seven-charge propellant system plus a Super Charge. Maximum muzzle velocity is 570 m/s and maximum range 13,000 m. May no longer be in production Range data for the 105 mm L119/M119A1 Towed Howitzer when firing the WP/Smoke M60 is as follows: Charge 1 - range 1,800 to 3,400 m Charge 2 - range 2,100 to 4,100 m Charge 3 - range 2,600 to 4,800 m Charge 4 - range 4,100 to 6,300 m Charge 5 - range 4,200 to 7,900 m Charge 6 - range 5,000 to 9,500 m Charge 7 - range 6,200 to 11,500 m. Yugoimport SDPR Type: 105 mm Smoke/WP M60 Description: Essentially the same as WP/Smoke M60. For 105 mm M56 and M18/61 howitzers (a modernised version of the Second World War German 105 mm leFH 18), it is fired using a seven-charge propellant system plus a Super Charge. Maximum possible muzzle velocity is 570 m/s and maximum range 13,000 m, although the normal muzzle velocity is given as 491 m/s and maximum range 11,620 m. Complete round weight given as 20.049 kg and projectile weight 15.8 kg. May no longer be in production Range data for the 105 mm L119/M119A1 Towed Howitzer when firing the 105 mm Illumination M314 is as follows: Charge 1 - range 1,800 to 3,400 m Charge 2 - range 2,100 to 4,100 m Charge 3 - range 2,600 to 4,800 m Charge 4 - range 4,100 to 6,300 m Charge 5 - range 4,200 to 7,900 m Charge 6 - range 5,000 to 9,500 m Charge 7 - range 6,200 to 11,500 m. Maximum illumination range is 8,700 m (minimum 400 m). Illumination: 400,000-450,000 cd Burning time: up to 60 s From random disreputable websites: For comparison the 105mm M119 gun fires the 14.97 kg M760 HE round at 633m/s to 14,500m. Projectile Current Max Range Current MV Limits M927 HERA 15 Km 496.6 M/S M916 DPICM 14 Km 488.4 M/S M915 DPICM 14 Km 637.3 M/S M913 HE RA 19 Km 673.3 M/S M760 HE 14 Km 658.3 M/S M548 HE RA 15 Km 563 M/S M444 ICM 11.5 Km 497 M/S M314A3 Illum 11.5 Km 492.4 M/S M84A1 smoke 11.5 Km 503 M/S M60 Smoke 11.5 Km 491.4 M/S M1 HE 11.5 Km 502.4 M/S M2/M101 Howitzer graphical firing tables: http://www.rekeninstrumenten.nl/pages%20and%20pictures/04401.jpg http://www.rekeninstrumenten.nl/pages%20and%20pictures/04421.jpg http://www.rekeninstrumenten.nl/pages%20and%20pictures/04441.jpg I'll try to fit the curves to the firing tables, and then add 4.5% to the muzzle velocity for the M119. If these are really M2 firing tables, though, that 11.5 km at 800 mils figure thrown about is just flat wrong. These show 12.1 km at 700 mils. For a shorter-barreled M2 howitzer. It's probably a doctrinal thing, i.e. there's not enough room to adjust fire on a target more than 11.5 km away.
  3. NonWonderDog

    Joystick curve.

    If you open "My Documents/ArmA Other Profiles/yourprofilename/yourprofilename.ArmAProfile" you'll find a "joystickSensitivity[]" line some ways down the page. I've set mine to the following (all one line): <table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">joystickSensitivity[]={1.000000,1.000000,1.000000,1.000000,1.000000,1.000000,1.000000,1.000000,1.000000, 1.000000,1.000000,1.000000,1.000000,1.000000,1.000000,1.000000}; This should be linear joystick sensitivity on all axes. If you want to configure the curve it gets very complicated, as this line has separate definitions for each axis in it. I don't really know how it works. I'd suggest against using DxTweak2. It's an old tool, and it can cause problems in XP (and probable havoc in Vista). At the very least, you won't be able to set deadzones with it. It was very useful five or six years ago, but when I tried to use it more recently it just crashed constantly. It might have corrupted my Saitek joystick drivers, too, as I had to reinstall everything the next time I tried to use my HOTAS.
  4. NonWonderDog

    DC3 Whats it like?

    The real DC3 has no tail wheel control, and differential braking is not to be used except when absolutely necessary (the brakes fade like you wouldn't believe, and you absolutely do not want them fading at different rates). Taxi in the real thing is accomplished almost entirely with differential engine thrust. Apparently, ArmA's modeled the lack of tail wheel control, but not much else...
  5. NonWonderDog

    Tank Fire Control Systems

    I didn't expect this, but ArmA has absolutely no problem whatsoever with canister rounds. I can generate 1100 high-velocity high-drag projectiles, all at once, and even have them bounce around wildly. With no stutters. (Obviously, this might depend on your hardware...) Now all I need is a good normal distribution algorithm. My current method makes a big circle of loosely organized pain. What I need is concentrated pain, with pain around the edges.... *Squee!* Of course, the tracers are just for testing. But you can clearly see that it's a Gaussian distribution. It's coming out of the coax right now, though... that will be hard to fix. I don't really know how big the dispersion pattern should be, and I think it's probably classified. I'm open to suggestions, preferably in the form of a one-sigma circle. It's possible, but it gets awful complicated whenever I try to think it through (in anything except a very hardcoded case that would make it too hard to expand my ammo list, that is). I'll figure it out eventually.
  6. NonWonderDog

    Tank Fire Control Systems

    Yeah, but it won't work. I'm not sure why, but <table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE"> if (((position _shell) select 3) < _proxrange) then { _detonate = true; _hintstring = "Fuse triggered by terrain"; }; is never triggering. Because I'm an idiot. "select 2" Proximity fuses will be triggered by terrain in the next version...
  7. NonWonderDog

    Tank Fire Control Systems

    I'd assume the VBS2 tank is called something other than "M1Abrams" in the code, then. I don't know if my script would be compatible in any case.
  8. NonWonderDog

    Tank Fire Control Systems

    They aren't the same shell. HEAT mode is for M830-MP-T, with a muzzle velocity of 1140 m/s. These aren't in the standard loadout. MPAT mode is for M830A1-MP-T, with a muzzle velocity of 1410 m/s. The Army has this thing about calling every APFSDS shell M829Ax and every HEAT shell M830Ax, even when they're radically different. M830A1 is a subcaliber, saboted projectile with a streamlined profile. M830 is full-caliber cylinder with fuse sticking out of it. This is one of the better sources of shell pictures on the internet, even though (oddly...) it's in Russian. What's the auto-reload problem, in your view? AI tanks are able to reload their guns without a problem, what I said earlier was false. For player tanks, the commander is always in charge of the reload cycle. If you spawn as gunner, your gun will automatically reload. If you spawn as commander, you must hold down the space bar and push the reload key after every shot. I want to automate the last bit, but the script commands to do so simply do not work. Action "LOADMAGAZINE" doesn't do anything no matter how I try to use it, and calling "reload" after every shell just results in the loader reloading 2800 rounds into the coaxial, which I've decided should take a couple minutes of fiddling with ammo cans. (How long should this really take? Five/ten minutes?) I don't have a clue about VBS2. There's a good chance that the -mod switch doesn't do anything, even if by some miracle this was compatible. Well, I think I'm about to go off and try to crash ArmA with canister rounds. I wonder how many pellets I can make it track...
  9. NonWonderDog

    Realistic Ballistics

    Those two won't be hard to make if I get time. Actually, I'll probably just make the A4 scope (which just needs the mil lines) and forget about the M4 scope, since both guns have the same ballistics in ArmA.
  10. NonWonderDog

    Tank Fire Control Systems

    I've pretty much isolated the AI problems, but I don't know how to fix all of them. The optics code isn't the problem, because it only runs on the player (or the gunner of a player commanded tank if you switched to the gunner's position and then switched back -- I've fixed that now). The first problem was due to T-72s loading HEF rounds by default. This was a bad idea, because the AI doesn't know when to switch ammo types. I don't actually know why they always aim over your head when firing HEF (they expect there to be more drag on the shell than there is?), but they don't do it when firing APFSDS. They can routinely hit me out to their (still rather short) maximum engagement range if both tanks are stationary. The second problem is, I believe, due to the slower turret traverse rates. I'm not sure exactly what's happening, but I think the AI is getting confused whenever its ability to track a target is limited by maximum traverse rate. I think this is what causes the gun to get locked at maximum elevation and rounds to detonate under the tank. I'm not sure what to do about this, because I really don't want T-72s to spin their turrets around in 5.2 seconds like before. I haven't had this happen in a player commanded tank, so I'm still holding out hope. The FCS modes toggle between ammo definitions; it tells the FCS which ammo lookup table to find the time-of-flight and drop data on. At ranges under 800m you might be able to get a hit with the wrong ammo type (because MPAT rounds are surprisingly close to APFSDS in trajectory), but at long ranges you won't even come close. To do it the right way, select APFSDS mode whenever you load M829A2, and select MPAT or MPAT (proximity) mode whenever you load M830A1. Proximity detonation isn't selected this way in real life, but I've cluttered up the action menu enough. The gunner has to manually select ammo definitions in a real M1A1, but the T-72 autoloader should actually take care of this when you reload. You just need to turn the dial to the ammo type you want and push the big "LOAD" button (I've never actually seen a picture of the autoloader controls in a T-72, but this is the general idea). I don't think there's anything I can do to make that happen. Most new tanks actually have the shell type magnetically encoded on the casing, so you don't have to fiddle around on the gunner's panel. I won't be able to script that in if someone makes a Challenger II or a Merkava, but that's how it's supposed to work.
  11. NonWonderDog

    Real M136 v1.0

    That might be very difficult. It's supposed to be possible, but <table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE"><unit> action ["LOADMAGAZINE", <target>, <magazine creator>, <magazine id>, <weapon name>, <muzzle name>];doesn't work. That's what's in the Biki, but it's wrong. Action LOADMAGAZINE expects a 7-unit array of <table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">["LOADMAGAZINE",<object>,<object>,<number>,<number>,<string>,<string>] No matter what I put in those slots, I can't get anything to work. I was able to do what you describe for the laser designator, though, so there might be some kind of loophole. I didn't really think very hard about it at the time, but right now I really have no idea how or why my GLTD II script works. All I did was add and remove the magazine, without even bothering to load or unload it.
  12. NonWonderDog

    Tank Fire Control Systems

    MPAT is the new US Army HEAT shell. In fact, it's official designation is M830A1 HEAT-MP-T. These are intended to replace M830 HEAT-MP-T shells (which aren't really multi-purpose, despite the "MP"). Really, though... MPAT is not a very sane round. It's a high-velocity, subcaliber, high explosive round that uses it's small explosive capacity for both a shaped charge and a radial fragmentation blast. You tell me what it's for. I think US tanks in Iraq right now are loaded with something like 6 MPAT, 5 HEAT, and 6 HE-OR. That's obviously a special case, though, and the standard loadout for a tank battle would be 12+12+3 APFSDS and 5+5+3 MPAT (that's "Ready"+"Semi-Ready"+"Stowed"). This is the default loadout in this mod, except that every round is ready. I might simulate the time it takes to move rounds up from the hull, but I don't think it's worth it. M830 HEAT-MP-T and M908 HE-OR-T are present in the data files, if you want them. M830 HEAT is much more effective than M830A1 against tanks (but neither is spectacular), but much less effective against infantry. M908 is weird, in that it's just an MPAT round with the proximity sensor replaced with a steel cap. It's made to rubble buildings. (HE-OR doesn't actually work yet, because I forgot to add it to the magazine list...) The magazine names are: 120mmSABOT_M1A2 120mmMPAT_M1A2 120mmHEAT_M1A2 120mmOR_M1A2 125mmHE_T72 125mmHEAT_T72 125mmSABOT_T72 125mmATGM_T72 Each is a single round. If you want to, you can customize your ammo loadout with lots of "removeMagazine" and "addMagazine" callouts.
  13. NonWonderDog

    Tank Fire Control Systems

    Stupid question, but what color is the smoke from red phosphorus grenades? Red? White? It's gotta be white, right? If I knew more about the helicopters, I'd try to add this to the helicopters. I don't have any clue what the displays look like, so I can't.
  14. NonWonderDog

    Real M136 v1.0

    The sightAdjustment mod itself is pretty hardcoded at the moment, and only works for primary weapons. The creator of the mod has abandoned it and offered it to public domain, so I might take it up and try to expand it one of these days (his syntax is hell to understand, which is why I haven't yet). You could duplicate the functionality, but it might be best just to wait until it's updated. You could add some range actions as a stopgap instead. This will require a loop if you only want the actions to show up when you're aiming the AT4 (which is what you want). I would add a player global AT4_RANGE and make a loop that checks every few seconds whether the player (a) carries an AT4 and (b) is in a launcher animation. If so, it would add a "Range: XXXm" action depending on the value of AT4_RANGE that, when selected, sets the player global to the next range in a list, deletes itself, and re-adds the "Range: XXXm" action with the next range in the name. When the player is no longer in a launcher animation, the range action would be deleted. You could do it without deleting and re-adding actions if you want to use the hint display for current range instead. Then you'd add a "fired" event handler that would check that you fired an AT4, grab the player range global, look up the range on a list of superelevations (I can generate this for you from my ballistics mod), and change the direction of the shell as soon as it's fired. That's how my tankFCS mod works, and sightAdjustment does the same thing with superelevation directly. It doesn't depend on sights at all. It doesn't even know about sights at all. If you were hoping to animate the sights, I'm afraid that's still not possible. I'm not sure why you wouldn't be able to make the default M136 AT4 magazines take up no inventory space, but if you're afraid of confusing people, sure. I'd forgotten about the animation thing, sorry.
  15. NonWonderDog

    GrenadierPack - Open Beta!

    I'm pretty sure that /*extern*/ does nothing. It's just a comment. /* and */ mean "open inline/multiline comment" and "close inline/multiline comment" in C.
  16. NonWonderDog

    Tank Fire Control Systems

    My guess is that BIS made the armour of helicopters and tanks too close in values then... No way to fix it unless you were to edit every unit in the game. If your proximity detonation was done by a script there wouldn't be a problem (you'd just use a different shell for detonation on altitudes), but I expect you've changed projectile model's lods to keep this "scriptless". The possible result is - against a tank "screened" like described - that these MPAT rounds will take less hits for a kill because they will be able to deal dammage to the rear/top hitpoints of the tank while hitting front. Well, you can also make a script to record position of projectile and the moment it dissapears check around the place and if there is any Air type object spawn a second explosion. That would however need to bew ran on server. Nope, the collision models of shells are completely ignored by the game. I have to use a script for proximity detonation. What I do is call nearObjects for everything with 10x the shell's proximity range (defined in the config). Then I call boundingBox on each found object, and I compare the shell position to the extremes of the bounding box. It's not perfect, and shells can explode a bit too far from helicopters sometimes, but it's pretty good. I think I'll halve the x and forward y boundaries for helicopters in the next version so it's not triggered by the rotor blades. When I detect an object in proximity range, I spawn an invisible bird right on top of the shell. The shell hits the bird, and it explodes. (This always works in SP. I have no idea about MP.) I don't delete the shell or anything, because then the player who fired it wouldn't get credit for the kill. I really want to keep it this way. I don't want to fake it with special high damage shells for proximity detonation, when the shell should be able to do all the damage it needs to on its own. It still takes a lot of 150 damage hits to kill a tank, so it might not be too bad. You should be able to mission kill a tank with enough HE anyway. I'll take a look at the AI. All of that shouldn't be happening. Allright, AI tanks have some problems with the new ammo. In particular, T-72s aim high whenever they fire HE. They don't switch to APFSDS to fire at tanks, either. Sometimes they fire shells at themselves . Still looking into it...but I think I've found a bug in ArmA. I think it's silently throwing a divide by zero error if the required turret traverse or elevation rates are faster than is possible. As a result, the gun elevation is being set to [NULL], the gun graphically moves to max elevation, and any round fired will land on the ground under the tank. This happens a lot, because the T-72 turret is painfully slow. I just found that it takes less than 600 rounds of 7.62x51 ball to kill a T-72, and I shudder to think how well 7.62x54R API does. I guess I'll have to fix the tank hitpoints. I might be able to script the commander's position to allow you to call out ammo types to be automatically loaded, since the commander is responsible for loading each round in the gun . There is a function that loads a specific ammo type, but it's very undocumented and I don't think anyone has successfully gotten it to work....and I can't get it to work either. Just use space+R to reload, space+F to change weapons, and the orders menu to change ammo types.
  17. NonWonderDog

    Real M136 v1.0

    Way ahead of you: http://www.flashpoint1985.com/cgi-bin....t=66195 It doesn't have proper backblast effect, but the ballistics should be pretty close to reality. If you use Chammy's sound mod you'll get decent "BANG----POP" sounds as well. ------------------------- I'll help with the scripts if you need me, although I would suggest just modifying the default M136 into the unused weapon instead of adding your own class. It will require that all clients in a multiplayer game use the mod either way, but this way would save you the bother of replacing all the stock M136 weapons and ammo with your own versions. You could start a loop on each player that checks for the presence of the M136 every five seconds or so and adds ammo as needed. You could also script it to watch for player animation changes, and "unload" the weapon whenever the animation changes from a launcher animation to a rifle or pistol animation (the current load animation is fine for prepping the tube, you just need to get rid of the reload sound). If the player is in a launcher animation, you could add a "change range" action or you could capture keypresses to change range as in the sightAdjustment mod. The used AT4 probably just needs "magazines[] = {};" in the config to work right. I don't think you need to add a dummy magazine to it.
  18. NonWonderDog

    Tank Fire Control Systems

    Yeah, but that's the rub. MPAT shells need to be able to destroy a helicopter with a proximity detonation. (It took a bit of work, but my proximity shells will actually detonate whenever they are less than five meters from the edge of a vehicle or building's bounding box, not the vehicle center. Just in case anyone was wondering. They currently trigger even if the target is directly in front of the shell, but I have a plan to fix that.) Because of this, I've boosted indirect damage up to ~80-150 for high explosive shells, and reduced the indirect damage radii to compensate. I did a lot of testing when I did this, and my values work pretty well with default armor settings. I've done exactly what you suggest for HEAT shells, but I probably went too far. I don't know how effective they should be against infantry, but they perform very poorly now. The invisible spaced armor is a great idea, and might let me boost HEF and OR damage high enough to rubble buildings. Thanks to Synide, we're very close to being able to edit the default BIS tanks. First order of business once it works right is to fix the gunnerview positions, but I'll try the invisible appliqué armor as well. This mod shouldn't so adversely impact AI accuracy. In fact, it shouldn't do anything to the AI at all. AI tanks will need a huge accuracy increase so they can compete with the player, and I need to check that AI T-72s are properly firing APFSDS rounds at tanks, but they should be no worse than they were before. Actually, if AI T-72s are firing high... It's possible that they expect the turret to move faster than it does. The default turrets all moved at the same speed, which was about the speed of an M3 Bradley turret. I've reduced the M1A1 and T-72 turret traverse and elevation rates--in the case of the T-72, I've reduced the elevation rate by 95%. These are the real speeds, so I really hope they don't cause problems I can't fix.
  19. NonWonderDog

    Tank Fire Control Systems

    The T-80 should have basically the T-72 optics, but there are approximately zero T-80 tanks in Russian service. Most T-64 models (except for the very very new upgraded ones) should use the same optics. All of these tanks should actually have coincidence rangefinders instead of laser rangefinders, but coincidence rangefinders are almost certainly impossible in ArmA. The T-80B has a completely different sight. I have enough references to make that sight, if there's a demand for it. The T-80U and T-90 (all models) use the same sight as the T-80B, but also have thermal optics. I have absolutely no idea what the thermal displays look like, but there's no way to simulate them anyway.
  20. NonWonderDog

    Tank Fire Control Systems

    That was the plan, but it appears it's not as self-contained as I thought. You were supposed to be able to use just "tankballistics.pbo" if you didn't want the fire control, but I forgot to keep the standard tank magazines in the weapon definitions. So while you can use it on its own, you won't be able to load the main gun. In the next version, you'll be able to use tankballistics.pbo on its own without any problems. If it's only the M1A1 that causes problems online, I might have the solution. If the T-72 is broken too, I'm stumped.
  21. NonWonderDog

    Working GTLD II Rangefinder

    The problem is the "put" and "throw" weapons. I have to find the number of the laser designator in order to use it, but it's impossible to find exactly because "weapons player" doesn't return "put" and "throw". So, what I do is assume that the laser designator is after the "put" and "throw" weapons in the list. This works in all cases except one--units that have a laser designator by default. The default SF Recon soldier has the laser designator before the "put" and "throw" weapons. So, what I've done is add an init event handler to each SF Recon soldier that reorders the weapons by taking the laser designator away and immediately giving it back. This usually works, but not always. If you drop it and pick it up manually it will always work.
  22. NonWonderDog

    Working GTLD II Rangefinder

    Well, I've got a very very fast CPU, so it only freezes for a couple seconds over here -- and only the displays "freeze", in that they go blank until the script loads the new textures. I don't really know how big the problem is on other PCs. The basic problem is that each number is its own texture file. It would be a lot better if they were combined into a single font texture, but there's no way to UV-map display controls. If I tried to add a custom font I'd run into a million other problems, so I'm going to stay away from that. The version of this script included with TankFCS runs through and loads (or attempts to load) each number before the display comes up, while the old version loaded the textures as needed and tended to flicker for the first five or six rangings. It takes about 3-5 seconds for it to "warm up" on my PC, but again, I have a Core2 Duo running at 3.2 Ghz. There may be a way to preload individual textures at loadtime, but I can't find one. (Maybe if I map them all to a dummy model and preload that?)
  23. NonWonderDog

    Tank Fire Control Systems

    Ah, I never use external view, so I didn't test that. It should be easy enough to fix, so I'll put it on the list. My screenshots and videos were taken in a 16:10 aspect ratio, which is why they show a wider FOV. In a 4:3 resolution the M1A1 reticle will be slightly off the screen at maximum lead, but it's not too much of a problem. As it is now the Abrams optics are scaled perfectly to 10x power. They should really have almost twice the field of view if you have a 4:3 monitor and ~1.5x the field of view on a 16:9 monitor, but then it would be too hard to see your target. I'm not going to scale it down. The T-72 optics are unfortunately 6x power instead of 8x power because 8x would limit the vertical FOV (and thus the maximum range) too much. I'm looking into fixing this with dynamically scaling optics, but it's going to be hard to do. The idea for the optics is that you'll be able to add the "NWD_T72_Rangefinder" or "NWD_M1A1_Rangefinder" weapon to any vehicle and it will magically have T-72 or M1A1 optics. This doesn't work yet, as a few places in the code assume you're in the BIS tank. This would require that your tank's optics model has no reticle, however, because I'm pretty sure there's no way to change optics models in script. This mod should have very little or no effect on the AI. There is one thing I didn't test, though. I set the default ammo in the T-72 to HEF, because the majority of carried ammo in the T-72 is HEF. This might be a problem, because I don't know if the AI is smart enough to switch to APFSDS or HEAT when firing at tanks. You as the player will probably be at a huge advantage over AI tank gunners now, so I probably will need to look into raising their accuracy. If you've got a bit of practice you can hit targets with the first shot even as your tank is barreling down a winding road at maximum speed -- the AI has no chance of doing that right now.
  24. Following up on my small-arms ballistics, I'm extending the same to tanks. It took a lot of research, but I have fairly accurate trajectories and damage for several different 120mm/125mm tank shells. In addition, APFSDS darts will no longer destroy tall buildings in a single shot ( they had explosive=1 defined in the config! ). Here's the tank shells I've got data on (all unclassified, of course): 120mm M829A2 APFSDS-T 120mm M830 HEAT-T 120mm M830A1 HEAT-MP-T 120mm M908 HE-OR-T 125mm 3VOF-36 HEF-FS 125mm 3VBK-25 HEAT-FS 125mm 3BM-42 APFSDS 125mm 9M119 "Svir" ATGM The Russian shells are from the late 80s, and are sometimes provided with export T-72M1 and T-72S tanks. The American M830 HEAT is hardly used anymore, but I have definitive trajectory data for it. M908 Obstacle Reduction is really just a steel-tipped MPAT, but I don't really know how it's supposed to blow up. I probably won't put those in default loadouts. That leaves MPAT, and I probably need to write a proximity-fuse script for those if I put in through-barrel ATGMs (for heli-defense parity). I really need more speed and thrust data on the Svir/Refleks missle, though. The fire control systems are bastards, but I'm almost done with the 1A40 sight system on the T-72A. I've got the "technical description and operating instructions" manual for a Russian T-72A, and I'm implementing the sights exactly as my rudimentary Russian can interpret it (and I'm currently trying to OCR and machine translate it so I can figure out the dynamic lead display). This will, I believe, be the most accurate rendition of T-72 optics ever in a video game. If you've played T-72 Balkans on Fire, this is what the optics were supposed to look like. Screenshots so far: As you can see, I'm getting a bit carried away with the scripting, going as far to put in ammo-specific dispersion and the like. I didn't get a screenshot, but the co-ax follows the curve of the aiming points, too. It's not calibrated very well for long range, but the "0,5" to "8" marks are nearly perfect for 50-800 meter fire (after you've canceled ranging as in the first screenshot). The sight is 6x instead of 8x so you can shoot HE-Frag shells out to 4km (and HEAT out to 3800m or so). Nothing I can do about that. You should actually be able to area-fire HEF out to 5000 with the marks on the right side of the graticule, but that would mean 4x zoom or something horrible like that. I'll try to put in a toggle for the TPN3-49 or 1K13 sights for night-vision and through-barrel ATGMs, too, so 6x isn't a bad compromise. ATGMs will fire just fine out of a tank gun, in case you were wondering, but ArmA's ATGMs don't work past 1500m. This makes them completely useless, of course, since they're designed for 3-4km range. I might try to script my own bar-scan beamrider instead of using ArmA's guided missles, but I don't expect miracles. This would rightly be for a T-72B/T-72S instead of ArmA's T-72A/T-72M/T-72M1/whatever, but I'm not losing sleep over it. Lead isn't computed yet, because I'm not sure how the lead is computed in the real thing. I'm sure it's in my Russian T-72A manual, but I can't understand it. What I do know, is that once the lead is computed it's displayed on the left ocular, and as the gunner you're supposed to put the corresponding lead mark on the target. For example, lasing a target moving left to right would show a number on the left side of the display, at which point you would align the corresponding left lead mark with the target and fire. I've got a few problems, though. First, I can get a 3D object with a range spinner to show up on my overlay (not shown in the screenshot), but there doesn't seem to be any way to make it spin. Is this correct? Is there to way to set the "up[]" vector in script? The 1A40 has a LCD range display in a second eyepiece, so it's not a total loss, but I'd like to get this working. Second, is there a way to change a player's turret direction in script? I can make the M1A1's GPS reticle float without a problem, but it won't work correctly unless I can move the gun as well as the reticle when you lase. If I rotate the whole tank, will the turret move along with it? What will happen if I rotate the tank while it's moving? I could probably just give a 1-2 second grace time before the floating starts, but I'd like to avoid that.
  25. NonWonderDog

    Tank Fire Control Systems

    GMJ_SightAdjustment conflicts with everything, which is why there's a compatibility patch. If you use that mod (and I do), you also need the SightAdjustment_AutoInit.pbo file from the extended init eventhandlers "examples" directory. Just put that file in the same directory as the rest of the GMJ_SightAdjustment pbo files, and it will work.
×