Jump to content

Nadrek

Members
  • Posts

    82
  • Joined

  • Last visited

Reputation

8 Neutral

Profile Information

  • About me
    Rocketry Enthusiast

Recent Profile Visitors

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

  1. First off, this is a great challenge - in particular, I feel that payload fraction is the most critical metric for any lifter you're using to ascend from an off-Kerbin body. Here's my rather mild entry - it started out as a technology demonstrator for subassemblies, normal engines used in radial mode, multi-layered 8-way symmetry, extended asparagus staging, and minor amounts of Mechjeb ascent path staging. 126.8t payload 752.05t including launch clamps on the launchpad. 16.86% payload fraction. 16/17 propellant stages. On the launchpad: In orbit: Craft file: http://pastebin.com/f77asuZY Mechjeb hands-off after launch settings: Orbit altitude 75.05km Orbit inclination 0 degrees Prevent Overheats on Limit to Terminal Velocity on Limit accel to 22.5m/s on Corrective steering on Autostage on, delays .15 pre, .2 post Ascent path: Turn start 8km, Turn end 60km, Final flight path angle 0 degrees, turn shape 40% Before physics kicks in, engage Mechjeb ascent autopilot. As soon as physics kicks in, press R and space to enable RCS and launch. There's obviously a long way to improve by cutting the X200-64's down to smaller tanks and more stages, and dropping the second central Mainsail. There's almost certainly too many struts, the regular size decouplers weigh too much, and the engines and ascent profile can almost certainly be tuned further.
  2. My thanks to you, Kasuha - I now know more about 0.22 fuel flow than I did before - it sounds like my technique is being killed by a minor fuel code optimization. Your suggestion does solve the unbalancing problem, and I appreciate that - unfortunately, it does mean I can't use this technique to replace radial engines in asparagus configurations, so I do still need other engines for the final stage. One question - if I'm drawing fuel lines from the L and R tanks directly to the radial decoupled engines, for what reason do you suggest drawing them directly to the engines instead of the tank above them? Those little tanks are there solely as an attachment point for the engines that's far enough out from the C tank and won't have any issues I'd heard about with cubic octagonal struts, not because I wanted extra mass along for the ride.
  3. I'm now very confused - trying to get a decent payload fraction, I've set up a normal Asparagus (on I-beams) setup, outer tanks flowing to each other, then to the inner tank. Then I put boosters right on the inner tank, drawing fuel from the inner tank, and it's fine. Then I put a stage below it that feeds the outermost asparagus stage above it... and the inner booster ring is not only drawing fuel from the asparagus ring, but from only one side of it! KSP 0.22, Mechjeb 2.1, Kerbal Flight Engineer 6.1.4. Craft file: http://pastebin.com/zjrE0r5t
  4. Body.maxAtmosphereAltitude as in local Orbits = script.call("Planetarium.Orbits") if PlanetIndex == nil then -- Kerbol print("Nameindex nil") Body = Orbits[2].referenceBody elseif MoonIndex1 == nil then -- Planet print("Nameindex " .. PlanetIndex) Body = Orbits[2].referenceBody.orbitingBodies[PlanetIndex] elseif MoonIndex2 == nil then -- Moon of a Planet print("Nameindex " .. PlanetIndex .. "," .. MoonIndex1) Body = Orbits[2].referenceBody.orbitingBodies[PlanetIndex].orbitingBodies[MoonIndex1] else -- Moon of a Moon of a Planet print("Nameindex " .. PlanetIndex .. "," .. MoonIndex1 .. "," .. MoonIndex2) Body = Orbits[2].referenceBody.orbitingBodies[PlanetIndex].orbitingBodies[MoonIndex1].orbitingBodies[MoonIndex2] end
  5. My apologies - I didn't know the errors could happen at any time, as I'd only seen them on the wait() loops and I hadn't delved deeper. I was running my Isp test routine; a much newer version which I'll release once I've finished adding Delta-V vector burn code. In-progress beta: Som http://pastebin.com/dt7wsq2Z Skom http://pastebin.com/AnDhqQvP Skoo http://pastebin.com/FiDgeSZy require "SimpleKSPOrbitalOperations" cotestSkooIspFromTmbiTmbtwnNsMpcsMnottbsMnst(0.08, 0.15, 250, 0.01, 20000, 12) With clumsier ships, it'll typically die during the "figure out if we're done pointing yet" phase. If it gets past that, then it's likely to due during the very fine-grained throttle settings. Note that "make them able to resume" is not nearly as easy as it sounds, and it's even more difficult because of the limited amount of output before the Autom8 windows stops showing output altogether. Combined with being able to create files, but not write to them (in any of my tests, at least), this provides several challenges, even for work that's not timing sensitive. Regardless, thank you for Autom8 and for reducing the frequency of sync errors! Is there any kind of error trapping we can do in lua?
  6. r4m0n, would you like a new report on the Userecho/whatever new place? MechJeb 1.9.3 is still vulnerable to the out of sync errors on wait(), which makes any precision control very difficult, to say the least. 0.187329864501953 loop 166 Coroutine exception: InvalidOperationException - out of sync at System.Collections.Generic.Dictionary`2+Enumerator[SharpLua.LuaTypes.LuaValue,SharpLua.LuaTypes.LuaValue].VerifyState () [0x00000] in <filename unknown>:0 at System.Collections.Generic.Dictionary`2+Enumerator[SharpLua.LuaTypes.LuaValue,SharpLua.LuaTypes.LuaValue].MoveNext () [0x00000] in <filename unknown>:0 at System.Collections.Generic.Dictionary`2+KeyCollection+Enumerator[SharpLua.LuaTypes.LuaValue,SharpLua.LuaTypes.LuaValue].MoveNext () [0x00000] in <filename unknown>:0 at SharpLua.LuaTypes.LuaTable.GetKey (System.String key) [0x00000] in <filename unknown>:0 at SharpLua.LuaTypes.LuaTable.GetValue (System.String name) [0x00000] in <filename unknown>:0 at SharpLua.LuaTypes.LuaTable.GetValueFromMetaTable (System.String name) [0x00000] in <filename unknown>:0 at SharpLua.LuaTypes.LuaTable.GetValue (System.String name) [0x00000] in <filename unknown>:0 at SharpLua.LuaTypes.LuaTable.GetValueFromMetaTable (System.String name) [0x00000] in <filename unknown>:0 at SharpLua.LuaTypes.LuaTable.GetValue (System.String name) [0x00000] in <filename unknown>:0 at SharpLua.AST.VarName.Evaluate (SharpLua.LuaTypes.LuaTable enviroment) [0x00000] in <filename unknown>:0 at SharpLua.AST.Operation.InfixBinaryOperation (SharpLua.AST.Term LeftOperand, System.String Operator, SharpLua.AST.Term RightOperand, SharpLua.LuaTypes.LuaTable enviroment) [0x00000] in <filename unknown>:0 at SharpLua.AST.Operation.Evaluate (SharpLua.LuaTypes.LuaTable enviroment) [0x00000] in <filename unknown>:0 at SharpLua.AST.FunctionCall+<Evaluate>c__AnonStorey9.<>m__B (SharpLua.AST.Expr arg) [0x00000] in <filename unknown>:0 at System.Collections.Generic.List`1[SharpLua.AST.Expr].ConvertAll[LuaValue] (System.Converter`2 converter) [0x00000] in <filename unknown>:0 at SharpLua.AST.FunctionCall.Evaluate (SharpLua.LuaTypes.LuaValue baseValue, SharpLua.LuaTypes.LuaTable enviroment) [0x00000] in <filename unknown>:0 at SharpLua.AST.PrimaryExpr.Evaluate (SharpLua.LuaTypes.LuaTable enviroment) [0x00000] in <filename unknown>:0 at SharpLua.AST.Operation.InfixBinaryOperation (SharpLua.AST.Term LeftOperand, System.String Operator, SharpLua.AST.Term RightOperand, SharpLua.LuaTypes.LuaTable enviroment) [0x00000] in <filename unknown>:0 at SharpLua.AST.Operation.Evaluate (SharpLua.LuaTypes.LuaTable enviroment) [0x00000] in <filename unknown>:0 at SharpLua.AST.Assignment+<Execute>c__AnonStorey4.<>m__5 (SharpLua.AST.Expr expr) [0x00000] in <filename unknown>:0 at System.Collections.Generic.List`1[SharpLua.AST.Expr].ConvertAll[LuaValue] (System.Converter`2 converter) [0x00000] in <filename unknown>:0 at SharpLua.AST.Assignment.Execute (SharpLua.LuaTypes.LuaTable enviroment, System.Boolean& isBreak) [0x00000] in <filename unknown>:0 at SharpLua.AST.Chunk.Execute (System.Boolean& isBreak) [0x00000] in <filename unknown>:0 at SharpLua.AST.Chunk.Execute (SharpLua.LuaTypes.LuaTable enviroment, System.Boolean& isBreak) [0x00000] in <filename unknown>:0 at SharpLua.AST.WhileStmt.Execute (SharpLua.LuaTypes.LuaTable enviroment, System.Boolean& isBreak) [0x00000] in <filename unknown>:0 at SharpLua.AST.Chunk.Execute (System.Boolean& isBreak) [0x00000] in <filename unknown>:0 at SharpLua.AST.Chunk.Execute () [0x00000] in <filename unknown>:0 at SharpLua.AST.FunctionBody+<Evaluate>c__AnonStorey8.<>m__A (SharpLua.LuaTypes.LuaValue[] args) [0x00000] in <filename unknown>:0 at SharpLua.AST.FunctionCall.Evaluate (SharpLua.LuaTypes.LuaValue baseValue, SharpLua.LuaTypes.LuaTable enviroment) [0x00000] in <filename unknown>:0 at SharpLua.AST.PrimaryExpr.Evaluate (SharpLua.LuaTypes.LuaTable enviroment) [0x00000] in <filename unknown>:0 at SharpLua.AST.LocalVar+<Execute>c__AnonStorey7.<>m__9 (SharpLua.AST.Expr expr) [0x00000] in <filename unknown>:0 at System.Collections.Generic.List`1[SharpLua.AST.Expr].ConvertAll[LuaValue] (System.Converter`2 converter) [0x00000] in <filename unknown>:0 at SharpLua.AST.LocalVar.Execute (SharpLua.LuaTypes.LuaTable enviroment, System.Boolean& isBreak) [0x00000] in <filename unknown>:0 at SharpLua.AST.Chunk.Execute (System.Boolean& isBreak) [0x00000] in <filename unknown>:0 at SharpLua.AST.Chunk.Execute () [0x00000] in <filename unknown>:0 at SharpLua.AST.FunctionBody
  7. So far I've been editing my original post, and posting a new reply to point people there and let them know the changes. r4m0n, is there something else we should do to qualify for being listed on the front page/first post?
  8. Do you have the equation for that handy, based on the data in the CelestialBody class?
  9. I'd have to say that a Mechjeb profile is at least repeatable and if the rocket is stable, consistent.
  10. Approximate delta-V on what trajectory, with what approximate TWR's? On what flight path?
  11. Celestial Body information updated - now includes Kerbol, Kerbin G's at sea level, atmosphere limits, and a few other values. All information pulled directly out of the interface via Mechjeb Autom8, with thanks to the KSP team for the addon interface and the Mechjeb team for the Autom8 interface. http://kerbalspaceprogram.com/forum/showthread.php/19573-Get-Celestial-Body-Orbital-%28etc-%29-Elements-from-KSP-itself?p=277387&viewfull=1#post277387
  12. Second pass complete; added several body parameters, including atmosphere values and GeeASL (Kerbin G's at sea level), time warp altitude limits, and a few other values. Also included basic information on Kerbol! This variant still has all angles in degrees, since more of them are commonly used as degrees than as radians. http://pastebin.com/DfH5rSmU Code and explanations are at the end.
  13. maltesh put together a spreadsheet of celestial body orbits that might be useful for this: http://kerbalspaceprogram.com/forum/showthread.php/21251-17-Planet-information?p=272764&viewfull=1#post272764
  14. Thank you for taking up this amazing mod; I hope you choose to work out complex fuel line based rocket staging. My best designs have an onion shape, and lose fuel tanks (and every 3 sets of tanks, a set of engines) in pairs and quads for the main rocket. Massive booster stages for getting entire interplanetary missions up, well, those aren't as elegant.
  15. We're working on it. Doing it right (efficient launch windows and vectors) is a lot of math.
×
×
  • Create New...