Advertisement
sumguytwitches

sg ride just takeoff

Jan 31st, 2023 (edited)
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function info {
  2. parameter message.
  3.  
  4. set logmessage to round(missionTime,1) + ": " + message.
  5. print logmessage.
  6. }
  7. set takeoffspeed to 100.
  8. set targetOrbitAltitude to 101e3.
  9.  
  10.  
  11. set steeringmanager:rollcontrolanglerange to 180.
  12.  
  13. set vectors to ship:partsdubbedpattern("vector").
  14. for v in vectors set v:thrustlimit to 0.
  15. set servos to ship:modulesnamed("ModuleRoboticRotationServo").
  16. lock p to choose 0 if airspeed < takeoffspeed else min(20,max(0,groundspeed/7.5)).
  17. set h to 90.
  18. lock steering to heading(h,p).
  19.  
  20. toggle ag2.
  21. lock throttle to targetOrbitAltitude-apoapsis.
  22. lock angletarget to 0.
  23. when altitude > 72 then {
  24. info("engage dynamic servo").
  25. lock angletarget to max(0, min(90,100 - ((-verticalspeed + (80-altitude)/1.5)*100))).
  26. gear off.
  27. }
  28. toggle ag1.
  29. info("initialize vtols").
  30. lock vlimit to (-verticalspeed + (80-altitude))*100.
  31. until vlimit < 0 {
  32. set vlimitcopy to vlimit.
  33. set anglecopy to angletarget.
  34. for v in vectors set v:thrustlimit to vlimitcopy.
  35. for s in servos if s:hasfield("target angle") s:setfield("target angle", anglecopy).
  36. print " v thrust: " + vlimitcopy at (0,0).
  37. print "servo angle: " + anglecopy at (0,1).
  38. wait 0.
  39. }
  40. info("store vtols").
  41.  
  42. toggle ag2.
  43. for s in servos if s:hasfield("target angle") s:setfield("target angle", 90).
  44. print " v thrust: " + vlimitcopy at (0,0).
  45. print "servo angle: " + anglecopy at (0,1).
  46. bays off.
  47. info("gain speed").
  48. lock p to 9.6.
  49.  
  50.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement