Jump to content

Sertica

Member
  • Content Count

    132
  • Joined

  • Last visited

  • Medals

Community Reputation

18 Good

About Sertica

  • Rank
    Sergeant

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. I know the waypoints are added successfully because a text widget prints the array. I also consoled setWaypoint again in flight. My last hack ideas are replacing crew after take-off or replacing the entire thing. Those known issues are one of the reasons for deleting the crew. I know them well from I&A servers. I assumed the fault is in the crew. @pierremgi
  2. Anyone know how to make ai follow waypoints after taking off? When I try setting waypoints it only flies straight off the map and ignores them entirely. Note that this is not starting from an aircraft placed on ground in editor, which is apparently different. The pilot is deleted when plane lands for service, to prevent it from immediately taking off again, then recreated after service. createVehicleCrew _vehicle; for "_idx" from (count WEST_UAV_PAT_WPTS)-1 to 0 step -1 do { (group (driver _vehicle)) addWaypoint WEST_UAV_PAT_WPTS select _idx; }; _vehicle engineOn true; (group (driver _vehicle)) setCurrentWaypoint [(group (driver _vehicle)),1];
  3. Sertica

    Hidden Profile Cache?

    My key binds and graphic settings are being read, but not server favourites and campaign states.
  4. I replaced the profile files in Documents on my new PC with the ones from old PC. However they are not being loaded. I'm in Windows 11.
  5. This seems to prevent the pilot from moving when I reveal targets: gunshipD disableAI "TARGET"; A "MOVE" way point is fine with that set.
  6. I had to truncate the nulls out of _motionRecord. The above code now works, except the rotation amount seems to be 2x. I'll check the math and edit that post later.
  7. The returned data format is broken for unitPlay, but I have not determined what the problem is. 🤔
  8. Code for the turn animation: #define FRAMES_PS 25 #define DEGREES_PS 60 genTurnAnim = { _targetPos = param[0,nil,[]]; _gunshipPos = getPos gunship; _gunshipDir = vectorDir gunship; _gunshipUp = vectorUp gunship; _gunshipVel = velocity gunship; // angle of turn _targetVector = _targetPos vectorDiff _gunshipPos; _vecDotProduct = [_gunshipDir select 0, _gunshipDir select 1, 0] vectorDotProduct [_targetVector select 0, _targetVector select 1]; _vecMag = vectorMagnitude _gunshipDir; _tgtVecMag = vectorMagnitude _targetVector; _vecMagProduct = _vecMag * _tgtVecMag; _turnAngleAbs = acos (_vecDotProduct / _vecMagProduct); // angular direction of turn _zCrossProduct = (_gunshipDir select 0) * (_targetVector select 1) - (_gunshipDir select 1) * (_targetVector select 0); _angDirSign = _zCrossProduct / (abs _zCrossProduct); // vec1 counter-clockwise of vec2 -> counter-clockwise direction // generate vectors _animTimeSec = (floor _turnAngleAbs) / DEGREES_PS; _frames = _animTimeSec * FRAMES_PS; _frameTimeDelta = _animTimeSec / _frames; _angPerFrame = _turnAngleAbs / _frames; _motionRecord = []; // 0:time s, 1:position, 2:dir, 3:up, 4:velocity _motionRecord resize _frames; _frameTime = 0; _angle = _angPerFrame * _angDirSign; for "_idx" from 0 to _frames-1 step 1 do { _frameArray = [nil,nil,nil,nil,nil]; // frame time _frameTime = _frameTime + _frameTimeDelta; _frameArray set[0,_frameTime]; // position _frameArray set[1,_gunshipPos]; // direction vector _frameDirX = (_gunshipDir select 0) * (cos _angle) - (_gunshipDir select 1) * (sin _angle); _frameDirY = (_gunshipDir select 0) * (sin _angle) + (_gunshipDir select 1) * (cos _angle); _frameArray set[2,[_frameDirX,_frameDirY,0]]; // up vector _frameUpX = (_gunshipUp select 0) * (cos _angle) - (_gunshipUp select 1) * (sin _angle); _frameUpY = (_gunshipUp select 0) * (sin _angle) + (_gunshipUp select 1) * (cos _angle); _frameArray set[3,[_frameUpX,_frameUpY,_gunshipUp select 2]]; // velocity vector _frameArray set[4,_gunshipVel]; _motionRecord set[_idx,_frameArray]; _angle = _angle + _angPerFrame * _angDirSign; }; _motionRecord }; Now I can put that animation in completion statement for a MOVE waypoint and test fire from static position.
  9. It's for a mod that makes ai drivers and gunners play like human player. All actions are run time generated, so I would have to generate the play data, which will look wonky because it is not going through physics calcs. 😬
  10. I need to have a helicopter gunship move to a waypoint, then turn to face a specific direction and engage with turret without vehicle motion. I'm stuck on how to block pilot engagement flight so the gunner can fire from a static position. I tried hold waypoint with setdir in statement, but it never happens, presumably because hold waypoints never complete.
  11. I3 does not exist in Canada anyway. i5-12600K is $360. i5-12400F $230. Due to severe fibromyalgia my only income is tax rebates. The main points of contention now are amount of RAM and Windows version. Basically, can I get away with 16GB without disk swapping? Evidently MIMALLOC or AMPERSAND is the way to go with allocators. But I need to know what Windows they require. I'd rather stick with W7 if possible. I already hate Windows enough as it is and the stories of bloat and forced stuff in newer versions scare me.
  12. Sertica

    New Arma PC Specs

    Buying i7 for Arma 3 makes no sense.
  13. What is minimum windows version for the top 2 allocators in the above benchmark?
  14. Sertica

    New Arma PC Specs

    I'm looking at parts for a new PC: ASUS PRIME B660M-A D4 Intel i3-12100F (or i5-12400F if that is not in stock by the time I order) CORSAIR Vengeance LPX 16GB I want to buy enough RAM that I can turn off page file without concern for error. I currently use Windows 7 with 8GB and there is disk swapping on high pop servers. E.g., how much RAM would be used on an invade and annex server with 40 players and RHS? I will still be using Windows 7 if it runs on this hardware.
  15. If found that turret minFov is the magnification. Sometimes minFov is sometimes under OpticsIn, sometimes ViewOptics. Some of them are a formula in string format instead of number. To reliably get a number in real time would be ridiculously complicated. It would require checking every possible place for minFov and a parser for the formulas. Some of the values are wrong. Slammer does not really have x25.8_ (0.7 * (60*0.5625/120)). I can't tell what the values in thermalMode array mean. I'll have to use my own values defined per vehicle and turret. Configs are too arcane for me. I used hitpart event handler and shooting the optics to get the eye position roughly. Not sure whether that will work for intersection checks. To get bots to shoot HE rounds indirectly I think I'll need a formless targetable object.
×