Jump to content

[1.3] kOS Scriptable Autopilot System v1.1.3.0


erendrake

Recommended Posts

On 3/18/2017 at 3:48 AM, Sebra said:

Syntax highlight is one thing. Ability to test run from editor is more important.

Yeah, this is the more useful feature of IDEs I would love to see for kOS.  Syntax issues are pretty easy to catch because the code either doesn't run, fails mid-script with an error from the terminal, or can be tracked down in something like Notepad++.  Running a script with breakpoints and variable tracking in an editor though is much more beneficial to tracking down odd behaviors.  You'd have to teach a program the logic of a language, which I dunno how hard that is because I've never had to program an IDE. 

Link to comment
Share on other sites

Kerboscript is a late binding language.

That makes making an IDE for it significantly harder than for a compile-time binding language.  The only way to guarantee the editor actually knows which suffixes are available for an object and which aren't (to do things like show a list of possible suffixes to choose from) is for the editor to actually RUN the program up to that point, not just examine the contents of the source code files.  Take for example a suffix like ship:electriccharge.  Suffixes for resources like electricharge, liquidfuel, etc are appended to objects based on what is seen inside the game *at runtime*.  Unless the editor knows which vessel the script will be run on, and what the game rules are for it, it doesn't know what those suffixes are or even that they will exist.

 

 

Link to comment
Share on other sites

Hi I got a stupid noob question:

since "copy x from 0." is depreciated I'd like to use the "copypath("0:/x","")" -stuff but if I enter it, it doesn't work :/.

What am I doing wrong?

 

And a second question I'd love to have a little explenation on:

	else if SCHRITT = 2 {
		until SHIP:APOAPSIS >= 50000 {
		set V1 to max(5,90*(1-SHIP:APOAPSIS/50000)). 
		lock STEERING to HEADING (90,V1).
		wait 0.2.
		}
		lock STEERING to HEADING (90,0).
		set SCHRITT to 3.
	}

this is my gravity turn, I got it from a tutorial, tweaked it, tested it and it works.

BUT I don't get what the "max" and the "5" do after "set V1 to ...).

 

I started with a simple step by step to orbit script wich I now work on enhancing and making better with functions and loops and since I'm learning I really want to understand.

The fact that it works is nice but doesn't help me understand the stuff I'm doing.

thanks for the mod and thanks for any help in advance :)

Link to comment
Share on other sites

3 hours ago, maculator said:

Hi I got a stupid noob question:

since "copy x from 0." is depreciated I'd like to use the "copypath("0:/x","")" -stuff but if I enter it, it doesn't work :/.

What am I doing wrong?

 

And a second question I'd love to have a little explenation on:


	else if SCHRITT = 2 {
		until SHIP:APOAPSIS >= 50000 {
		set V1 to max(5,90*(1-SHIP:APOAPSIS/50000)). 
		lock STEERING to HEADING (90,V1).
		wait 0.2.
		}
		lock STEERING to HEADING (90,0).
		set SCHRITT to 3.
	}

this is my gravity turn, I got it from a tutorial, tweaked it, tested it and it works.

BUT I don't get what the "max" and the "5" do after "set V1 to ...).

 

I started with a simple step by step to orbit script wich I now work on enhancing and making better with functions and loops and since I'm learning I really want to understand.

The fact that it works is nice but doesn't help me understand the stuff I'm doing.

thanks for the mod and thanks for any help in advance :)

You can just use "switch to 0. run myscript.", way easier than what you tried.

The "max" is a kOS internal function. You enter some numbers, seperated with "," and the function will return you the highest value:

max(0,5) -> 5

max(30,5) -> 30

Same goes for min, just other way round:

min(0,5) -> 0

min(30,5) -> 5

So you can basically "limit the output" by doing that, you can also use these in such a way that you can only get output of a specific range:

min(max(0,variable),100).

This returns you a value from 0 to 100

 

Link to comment
Share on other sites

Quote

max(5,90*(1-SHIP:APOAPSIS/50000)

By definition, MAX function will return bigger value from two that is given as parameter. In your case, one value is constant "5" and other is result from equation 90 * (1 - SHIP:APOAPSIS/50000)

Now, that equation will reduce pitching based on percentage how far your craft is away from 50000 m. At sea level you will get 90 * (1 - 0), meaning your craft will pitch at 90 degree as it will be larger than value of "5".

As craft climb up, pitching will decrease smoothly until you reach 50000. After that, if there is no MAX function, your craft would start to pitch down. So, when you reach 50 km, your craft will continue to accelerate at fixed 5 degree pitch, until told otherwise in some other part of script.

EDIT:

I can only suggest that you change fixed number constants with variables. So, instead of 50000 define something like this:

set Final_AP to 50000.
  
 // put some other nasty code here
  
until SHIP:APOAPSIS >= Final_AP {
  set V1 to max(5, 90 * (1 - SHIP:APOAPSIS / Final_AP)).
  // put some other piece of code here too
}

That way, if you need to tune your script, you only need to change values at begining of script, without need to change rest of code. Further down the road, you can run whole script with parameters , so instead of fixed value for Final_AP you can use passed parameter. Just few examples of possible usages from top of my head.

Edited by kcs123
Link to comment
Share on other sites

Thanks alot. Now I fully understand that part, and that was important for my learning process.

For the variables: I started with a messy "do this, then that, followed by this" -script and now I'm trying to rework it step by step with stuff I learned.

So in the future I might get rid of fixed numbers, but for now I'm fine with that.

And besides this script isn't an attempt for an universal "to orbit" -script, it's origin was to fire two tourists to orbit.

I love this mod an the learning curve it provides^^

 

@Kartoffelkuchen : I use copy x from 0. etc but in my understanding the programm tells me that this method won't be there for ever, so I wanted to test the method it suggest - without success.

 

 

 

Link to comment
Share on other sites

Thanks alot!

I also found this neat Kerbal Space Programming - Episode 2 - kOS in Action! - YouTube playlist.

In combination with the repo ksprogramming/episodes at master · gisikw/ksprogramming · GitHub

a noob like me can really learn some stuff.

I'm not the "I watch a yt series" -guy, but this guy has some sort of educational let's play with ~50 episodes where he really explains this mod in depth and he has all the scripts and .craft files in his repo for the public.

 

does anybody know how to find a specific comment of me in a thread? I'm sure I was a few steps further then I am right now and posted my script here somewhere, but all I find is the last post from ElWanderer where he mentioned me.

thanks for all the help and happy coding :D

Link to comment
Share on other sites

@maculator use it wet cation (be careful)

he started the sires in an older versions of KOS and KSP, and moved up.
i spent 3 days debugging one of his scripts, do to a change in the way KOS do things bitwin the time he wrote the script to the time i used it.
it was a nasty "no clue way it fails" bug.

 

and
press your name at the up right and chose profile

you'll get the last comments you made
and you can press "see my activity" to see all comments by you

Edited by danielboro
Link to comment
Share on other sites

Most of the stuff is beyond my understanding, but it's good to learn some stuff and sadly there aren't many other tutorials.

Speaking of not working ..... the following works like a charm until line 85~86 where it just ends the programm for no reason (between step 4 and 5, the last thing it does is printing "set step to 5.")

Spoiler

//start v1.0.0
//name: 	start.ks
//location: Kerbal Space Program/Ships/Script/start.ks
//by maculator

//preparations:

clearscreen.
print "executing start.ks".
wait 1.
clearscreen.

set CTHROTTLE to 1.
print "set CTHROTTLE to " + CTHROTTLE + ".".
wait 0.5.

set THROTTLE to CTHROTTLE.
print "set THROTTLE to CTHROTTLE.".
wait 0.5.

set TARGETAPOAPSIS to 75000.
print "set TARGETAPOAPSIS to 75000.".
wait 0.5.

set TARGETPERIAPSIS to 75000.
print "set TARGETPERIAPSIS to " + TARGETPERIAPSIS + "m.".
wait 0.5.

set PTAPOAPSIS to 60000.
print "set PTAPOAPSIS to " + PTAPOAPSIS + "m.".
wait 0.5.

print "set MADSTAGINGPREVENTION to 0.".
set MADSTAGINGPREVENTION to 0.
wait 0.5.

print "set STEP to 1.".
set STEP to 1.
wait 0.5.

//actuall program in until loop:

until STEP = 5 {

	if STEP = 1 {
		print "lock STEERING to HEADING (90,90).".
		lock STEERING to HEADING (90,90).
		wait 0.2.
		print "stage.".
		stage.
		wait 0.2.
		print "set STEP to 2.".
		set STEP to 2.
		wait 0.2.
	}

	else if STEP = 2 {
		set TALTITUDE to 500.
		if ALT:RADAR >= TALTITUDE {
			lock STEERING to HEADING (90,85).
			print "PASSED 500m".
			print "set STEP to 3.".
			set STEP to 3.
		}
	}

	else if STEP = 3 {
		set TALTITUDE to 10000.
		if ALT:RADAR >= TALTITUDE {
			print "PASSED " + TALTITUDE + "m".
			print "set STEP to 4.".
			set STEP to 4.
		}
	}

	else if STEP = 4 {
		until SHIP:APOAPSIS >= (PTAPOAPSIS) {
		set VANGLE to max(5,90*(1-SHIP:APOAPSIS/PTAPOAPSIS)). 
		lock STEERING to HEADING (90,VANGLE).
		wait 0.2.
		}
		print "SHIP:APOAPSIS REACHED " + PTAPOAPSIS.
		set VANGLE to 0.
		lock STEERING to HEADING (90,VANGLE).
		print "set STEP to 5.".
		set STEP to 5.
	}
	
	else if STEP = 5 {
		print "lock STEERING to HEADING (90,0).".
		lock STEERING to HEADING (90,0).
		if SHIP:APOAPSIS >= (TARGETAPOAPSIS*1.03) {
			set THROTTLE to 0.
			set STEP to 6.
		}
	}

	else if STEP = 6 {
		if ETA:APOAPSIS < 20 {
			set THROTTLE to 1.
			set STEP to 7.
		}
	}

	else IF STEP = 7 {
		if SHIP:PERIAPSIS >= TARGETPERIAPSIS {
			set THROTTLE to 0.
			set STEP to 10.
		}
		else if ETA:APOAPSIS > 25 {
			set THROTTLE to 0.
			set STEP to 6.
		}
	}

	when (STAGE:SOLIDFUEL <= 5) and (MADSTAGINGPREVENTION < 2)then
	{
		set VTHROTTLE to THROTTLE.
		set THROTTLE to 0.
		wait 0.4.
		print "stage.".
		stage.
		wait 0.2.
		set THORTTLE to VTHROTTLE.
		set MADSTAGINGPREVENTION to (MADSTAGINGPREVENTION + 1).
		wait 0.5.
		print "MADSTAGINGPREVENTION = " + MADSTAGINGPREVENTION.
	}
}

 

I pushed it in my repo too:

https://github.com/maculator/KOS-Stuff/blob/master/start.ks

the script is verry basic, simple, unadvanced but it works (even the staging) only the harsh exit after step 4 is beyond my understanding so any hint would be nice :D

 

Lol that was a stupid one.... nothing to see here unless you want to play "let's find the hillarious stupid misstake".

Edited by maculator
I'm not the brightest light on the tree...
Link to comment
Share on other sites

   FOR M IN SciP {print m:part:name+" : "+m:inoperable+"                     " at (0,26).
    if (not m:inoperable)and  ( not onlyrerunnable or (onlyrerunnable and m:rerunnable)) 
         {
             if not M:HASDATA {M:DEPLOY.}
               else if M:Data[0]:TRANSMITVALUE=0 {M:DUMP(). M:RESET().  wait 5. M:DEPLOY.
         } 

i have this for to run all sciance parts in the ship
but evry 2ed time it gets to GOO it fails on "GOO is inoperable"
what am i doing wrong?

Link to comment
Share on other sites

53 minutes ago, danielboro said:

   FOR M IN SciP {print m:part:name+" : "+m:inoperable+"                     " at (0,26).
    if (not m:inoperable)and  ( not onlyrerunnable or (onlyrerunnable and m:rerunnable)) 
         {
             if not M:HASDATA {M:DEPLOY.}
               else if M:Data[0]:TRANSMITVALUE=0 {M:DUMP(). M:RESET().  wait 5. M:DEPLOY.
         } 

i have this for to run all sciance parts in the ship
but evry 2ed time it gets to GOO it fails on "GOO is inoperable"
what am i doing wrong?

Is the data worthless? Try it without the m:dump that you've currently got before calling m: reset. From memory, dumping the data will leave goo & science juniors inoperative and you have no protection that checks that ahead of the m:deploy in that section. Resetting dumps the data anyway, I believe.

It'd be interesting to know for sure which commands it is trying (and the one it falls over on). Some debug print statements might help.

Edit: my reset function does this:

m:RESET().
WAIT UNTIL NOT (m:DEPLOYED OR m:HASDATA).

Edited by ElWanderer
Link to comment
Share on other sites

Hi, I think I found a KAS and KIS related bug.

When removing a part from a vessel via EVA kerbal(using driver or wrench), NRE spam occurs.

Spoiler

[ERR 18:44:45.712] Timing0 threw during FixedUpdate: System.NullReferenceException: Object reference not set to an instance of an object
  at kOS.Module.kOSVesselModule.cacheControllable () [0x00000] in <filename unknown>:0
  at (wrapper delegate-invoke) Callback:invoke_void__this__ ()
  at Timing0.FixedUpdate () [0x00000] in <filename unknown>:0

I found this error while playing my heavily modded career save, and replicated it in sandbox on fresh new install with kOS, KAS, KIS, ModuleManager.

Attaching something didn't cause any NRE. Removing anything(whether it was attached in VAB/SPH or during flight via KAS) always causing the error.

Is this mod not compatible with KAS? I wasn't able to find any related issue in github, but thought that it would be better to ask here first.

If this is a new one, I'm happy to provide any info. on this issue.

Thanks.

 

Link to comment
Share on other sites

I have the issue that the lock command doesn't work, i have taken the code from the simple autolaunch and even that does not work on the lock command, everything else does. here is the code 

// landing #1
print "this is a test".
lock throttle to 1.
lock steering to up + R(0,0,180).
stage.
print "Launch!".

it prints the text and stages but does not do anything else. I only started this a day ago and this is very disencouraging.

edit: I can lock throttle and steering by manually typing it into the terminal, and I have also uninstalled all other mods, but it will not read the code, it also does not show error messages. 

Edited by Not Sure
Link to comment
Share on other sites

5 hours ago, Not Sure said:

I have the issue that the lock command doesn't work, i have taken the code from the simple autolaunch and even that does not work on the lock command, everything else does. here is the code 


// landing #1
print "this is a test".
lock throttle to 1.
lock steering to up + R(0,0,180).
stage.
print "Launch!".

it prints the text and stages but does not do anything else. I only started this a day ago and this is very disencouraging.

edit: I can lock throttle and steering by manually typing it into the terminal, and I have also uninstalled all other mods, but it will not read the code, it also does not show error messages. 

If you lock the throttle or steering within a script, those will only last as long as the script is running. They'll unlock once your script ends, which is happening immediately in your case.

If you put something like WAIT UNTIL FALSE. at the end of your script, it'll keep running until manually cancelled (Ctrl-C, typically).

Link to comment
Share on other sites

Okay I feel really stupid because I dont get the following:

Works so far:

Spoiler

//start v9.9.9
//name: 	ttko.ks
//location: Kerbal Space Program/Ships/Script/ttko.ks
//by maculator

//preparations:
clearscreen.
set kuniverse:timewarp:mode to "PHYSICS".
set TARGETAPOAPSIS to 75000.
set TARGETPERIAPSIS to 75000.
set PTAPOAPSIS to 60000.
set TALTITUDE to 500.
list ENGINES in ELIST.
set STEP to 1.
print "set STEP to 1.".

//actuall program in until loop:
until STEP = 12 {

	//launch
	if STEP = 1 {
		lock THROTTLE to 1.
		lock STEERING to UP + R(0,0,180).
		stage.
		print "set STEP to 2.".
		set STEP to 2.
	}

	//initial angeling
	else if STEP = 2 {
		print TALTITUDE at (10,10).
		print ALT:RADAR at (10,11).
		if ALT:RADAR > TALTITUDE {
			lock STEERING to UP + R(0,-5,180).
			print "set STEP to 3.".
			set STEP to 3.
		}
	}

	//getting to 10km altitude
	else if STEP = 3 {
		set TALTITUDE to 10000.
		if ALT:RADAR >= TALTITUDE {
			print "set STEP to 4.".
			set STEP to 4.
		}
	}

}

 

And until I put my staging sequence in, it stops working. It prints "set STEP to 2." but wont trigger step 2.

Spoiler

//start v9.9.9
//name: 	ttko.ks
//location: Kerbal Space Program/Ships/Script/ttko.ks
//by maculator

//preparations:
clearscreen.
set kuniverse:timewarp:mode to "PHYSICS".
set TARGETAPOAPSIS to 75000.
set TARGETPERIAPSIS to 75000.
set PTAPOAPSIS to 60000.
set TALTITUDE to 500.
list ENGINES in ELIST.
set STEP to 1.
print "set STEP to 1.".

//actuall program in until loop:
until STEP = 12 {

	//launch
	if STEP = 1 {
		lock THROTTLE to 1.
		lock STEERING to UP + R(0,0,180).
		stage.
		print "set STEP to 2.".
		set STEP to 2.
	}

	//initial angeling
	else if STEP = 2 {
		print TALTITUDE at (10,10).
		print ALT:RADAR at (10,11).
		if ALT:RADAR > TALTITUDE {
			lock STEERING to UP + R(0,-5,180).
			print "set STEP to 3.".
			set STEP to 3.
		}
	}

	//getting to 10km altitude
	else if STEP = 3 {
		set TALTITUDE to 10000.
		if ALT:RADAR >= TALTITUDE {
			print "set STEP to 4.".
			set STEP to 4.
		}
	}
	//staging:
	until ELIST:LENGTH = 1 {
		list ENGINES in ELIST.
		if STAGE:LIQUIDFUEL < 1 and STAGE:SOLIDFUEL < 1 {
			stage.
		}		
	}
}

 

I guess I'm just missing the obvious, but for me the second one should work I just don't get why it doesn't.

Link to comment
Share on other sites

18 minutes ago, maculator said:

Okay I feel really stupid because I dont get the following:

Works so far:

  Hide contents


//start v9.9.9
//name: 	ttko.ks
//location: Kerbal Space Program/Ships/Script/ttko.ks
//by maculator

//preparations:
clearscreen.
set kuniverse:timewarp:mode to "PHYSICS".
set TARGETAPOAPSIS to 75000.
set TARGETPERIAPSIS to 75000.
set PTAPOAPSIS to 60000.
set TALTITUDE to 500.
list ENGINES in ELIST.
set STEP to 1.
print "set STEP to 1.".

//actuall program in until loop:
until STEP = 12 {

	//launch
	if STEP = 1 {
		lock THROTTLE to 1.
		lock STEERING to UP + R(0,0,180).
		stage.
		print "set STEP to 2.".
		set STEP to 2.
	}

	//initial angeling
	else if STEP = 2 {
		print TALTITUDE at (10,10).
		print ALT:RADAR at (10,11).
		if ALT:RADAR > TALTITUDE {
			lock STEERING to UP + R(0,-5,180).
			print "set STEP to 3.".
			set STEP to 3.
		}
	}

	//getting to 10km altitude
	else if STEP = 3 {
		set TALTITUDE to 10000.
		if ALT:RADAR >= TALTITUDE {
			print "set STEP to 4.".
			set STEP to 4.
		}
	}

}

 

And until I put my staging sequence in, it stops working. It prints "set STEP to 2." but wont trigger step 2.

  Hide contents


//start v9.9.9
//name: 	ttko.ks
//location: Kerbal Space Program/Ships/Script/ttko.ks
//by maculator

//preparations:
clearscreen.
set kuniverse:timewarp:mode to "PHYSICS".
set TARGETAPOAPSIS to 75000.
set TARGETPERIAPSIS to 75000.
set PTAPOAPSIS to 60000.
set TALTITUDE to 500.
list ENGINES in ELIST.
set STEP to 1.
print "set STEP to 1.".

//actuall program in until loop:
until STEP = 12 {

	//launch
	if STEP = 1 {
		lock THROTTLE to 1.
		lock STEERING to UP + R(0,0,180).
		stage.
		print "set STEP to 2.".
		set STEP to 2.
	}

	//initial angeling
	else if STEP = 2 {
		print TALTITUDE at (10,10).
		print ALT:RADAR at (10,11).
		if ALT:RADAR > TALTITUDE {
			lock STEERING to UP + R(0,-5,180).
			print "set STEP to 3.".
			set STEP to 3.
		}
	}

	//getting to 10km altitude
	else if STEP = 3 {
		set TALTITUDE to 10000.
		if ALT:RADAR >= TALTITUDE {
			print "set STEP to 4.".
			set STEP to 4.
		}
	}
	//staging:
	until ELIST:LENGTH = 1 {
		list ENGINES in ELIST.
		if STAGE:LIQUIDFUEL < 1 and STAGE:SOLIDFUEL < 1 {
			stage.
		}		
	}
}

 

I guess I'm just missing the obvious, but for me the second one should work I just don't get why it doesn't.

Apologies for quoting the whole thing, but on a mobile device, it's hard to edit properly.

I'm guessing you have more than one engine, in which case the until loop you've added will... loop, repeatedly. LIST ENGINES IN xxx will list *every* engine on the vessel, active and inactive. It should still stage when the stage empties, but it can't do anything else until there is only one engine left.

Link to comment
Share on other sites

I have a question

So, I'm working on a hover script that I will eventually use for a Moon landing (I play realism overhaul). I have the vertical speed part down, but not the lateral velocity part. How do I find out what heading the surface prograde vector is on, so I can point my ship in the opposite direction to kill velocity? 

Thanks 

Link to comment
Share on other sites

Does anyone have a working version of this example from the KOS docs :huh:

http://ksp-kos.github.io/KOS_DOC/general/parts_and_partmodules.html?highlight=doaction list

SET MOD TO P:GETMODULE("some name here").
LOG ("These are all the things that I can currently USE GETFIELD AND SETFIELD ON IN " + MOD:NAME + ":") TO NAMELIST.
LOG MOD:ALLFIELDS TO NAMELIST.
LOG ("These are all the things that I can currently USE DOEVENT ON IN " +  MOD:NAME + ":") TO NAMELIST.
LOG MOD:ALLEVENTS TO NAMELIST.
LOG ("These are all the things that I can currently USE DOACTION ON IN " +  MOD:NAME + ":") TO NAMELIST.
LOG MOD:ALLACTIONS TO NAMELIST.

 

Additional info:

Running RSS and it's mods..

AGX is bombing wrt to cooked control, so I'm trying to control events, actions..etc... by obtaining a list (as in the above example).. but eeet no worka at the mo.

:(

Edited by ColKlonk2
Link to comment
Share on other sites

On 3/30/2017 at 4:42 PM, dafidge9898 said:

I have a question

So, I'm working on a hover script that I will eventually use for a Moon landing (I play realism overhaul). I have the vertical speed part down, but not the lateral velocity part. How do I find out what heading the surface prograde vector is on, so I can point my ship in the opposite direction to kill velocity? 

Thanks 

Try lib_navball.  From here: https://github.com/KSP-KOS/KSLib/blob/master/library/lib_navball.ks

If it says that your compass_for is, for example, 45, then add 180 to get the opposite compass (225).  You could then lock steering to something like heading(255,85) (for example if you wanted to be just tilted 5 degrees away from your drifting velocity.)

 

 

9 hours ago, ColKlonk2 said:

Does anyone have a working version of this example from the KOS docs :huh:

http://ksp-kos.github.io/KOS_DOC/general/parts_and_partmodules.html?highlight=doaction list


SET MOD TO P:GETMODULE("some name here").
LOG ("These are all the things that I can currently USE GETFIELD AND SETFIELD ON IN " + MOD:NAME + ":") TO NAMELIST.
LOG MOD:ALLFIELDS TO NAMELIST.
LOG ("These are all the things that I can currently USE DOEVENT ON IN " +  MOD:NAME + ":") TO NAMELIST.
LOG MOD:ALLEVENTS TO NAMELIST.
LOG ("These are all the things that I can currently USE DOACTION ON IN " +  MOD:NAME + ":") TO NAMELIST.
LOG MOD:ALLACTIONS TO NAMELIST.

 

Additional info:

Running RSS and it's mods..

AGX is bombing wrt to cooked control, so I'm trying to control events, actions..etc... by obtaining a list (as in the above example).. but eeet no worka at the mo.

:(

"is bombing" is a bit hard to diagnose.  Can you post the actual error?

 

Link to comment
Share on other sites

6 hours ago, Steven Mading said:

"is bombing" is a bit hard to diagnose.  Can you post the actual error?

:D

There is no error, Cooked control just doesn't work with AGX staging, and one has to use the 'Stage' command to keep Cooked control working.

AFAIK it is a KSP error itself.. but this this is a side issue.

I'd like to get hold of the Part Actions listing in order to have a bit more control on the engine manipulation.

Could one extract this from the Saved part file itself.

Link to comment
Share on other sites

3 hours ago, Sebra said:

Is it possible to get coordinates of navigation points from contracts?

set foo to waypoint("Sector B4-X Alpha"). // For example.

print foo:geoposition.

 

 

3 hours ago, ColKlonk2 said:

:D

There is no error, Cooked control just doesn't work with AGX staging, and one has to use the 'Stage' command to keep Cooked control working.

AFAIK it is a KSP error itself.. but this this is a side issue.

I'd like to get hold of the Part Actions listing in order to have a bit more control on the engine manipulation.

Could one extract this from the Saved part file itself.

I'm still confused.  What does the steering have to do with the staging?  Are you saying it fails to know where to steer once you stage part of the ship away?

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...