Agathorn

[1.2.2] TestFlight - v1.8.0 - 01 May 2017 - Bring Flight Testing to KSP!

Recommended Posts

Well i'm not sure what to say. I setup a testing instance of KSP with just CMES, TestFlight, and ModuleManager, and your configs. I have no problems with any of your configured engines, with the exception of the ignition issue I mentioned, but that is easily fixed in the configs. No exceptions at all.

ahhh, mostly my gripe was in that ignition thing. What was the error in the code ?

Share this post


Link to post
Share on other sites
ahhh, mostly my gripe was in that ignition thing. What was the error in the code ?

ahhh. Well the ignition isn't an error in the code, its an error in your config and TF just isn't falling back to a sane default like it probably should. Your configs aren't defining the ignition chance, and TF is simply assuming 0, in other words 0 chance of ignition which is, well bad :)

At the very least you should define the baseIgnitionChance which is a standard KSP FloatCurve that defines the ignition chance between 0 and 1 (0 being 0% and 1 being 100%) for a given amount of flight data. So the key is the flightData and the value is the ignitionChance.

Optionally you can also define a pressureMultiplier that makes it harder to ignite an engine when the dynamic pressure is higher, IE in flight restarts.

Share this post


Link to post
Share on other sites
ahhh. Well the ignition isn't an error in the code, its an error in your config and TF just isn't falling back to a sane default like it probably should. Your configs aren't defining the ignition chance, and TF is simply assuming 0, in other words 0 chance of ignition which is, well bad :)

At the very least you should define the baseIgnitionChance which is a standard KSP FloatCurve that defines the ignition chance between 0 and 1 (0 being 0% and 1 being 100%) for a given amount of flight data. So the key is the flightData and the value is the ignitionChance.

Optionally you can also define a pressureMultiplier that makes it harder to ignite an engine when the dynamic pressure is higher, IE in flight restarts.

cool!! Was "ignition chance" something not included in the older version? I believe when I added configs I took them straight off your front page, but did not see ignition chance. I guess you added that as a new feature and I was lost to that effect. HAHA! I will add that line of code to my config and see the fireworks!

Share this post


Link to post
Share on other sites

i tried squeezing the new ignition chance code and it still yeilds the same results.....


@PART[nosExplorerRadialEngine]
{
MODULE
{
name = TestFlightCore
}

// If attaching to a ModuleEngineConfigs engine


MODULE
{
name = FlightDataRecorder_Engine
flightDataMultiplier = 100
flightDataEngineerModifier = 0.25
}

MODULE
{
name = TestFlightReliability
RELIABILITY_BODY
{
scope = default
reliabilityCurve
{
key = 0 0.00700
key = 10000 0.00015
}
}

}
MODULE
{
restoreIgnitionCharge = False
duFail = 300
name = TestFlightFailure_IgnitionFail
oneShot = True
failureType = mechanical
failureTitle = Failed to ignite
baseIgnitionChance
{
key = 0 0.90
key = 10000 0.997
}

ignorePressureOnPad = True
severity = major
}
MODULE
{
name = TestFlightFailure_ShutdownEngine
failureTitle = Engine Shutdown
duFail = 1000.0
failureType = software
duRepair = 500.0
severity = failure
weight = 8
REPAIR
{
repairChance = 75
canBeRepairedOnSplashed = True
canBeRepairedByRemote = False
canBeRepairedInFlight = True
dataScale = 1
dataSize = 1
}
}

MODULE
{
name = TestFlightFailure_Explode
failureTitle = Engine Explode
duFail = 1000.0
failureType = mechanical
duRepair = 500.0
severity = major
weight = 2
REPAIR
{
repairChance = 0
canBeRepairedOnSplashed = False
canBeRepairedByRemote = False
canBeRepairedInFlight = False
dataScale = 1
dataSize = 1
}
}

MODULE
{
name = TestFlightFailure_IgnitionFail
failureTitle = Failed Ignition
duFail = 1000.0
failureType = mechanical
duRepair = 500.0
severity = failure
weight = 32
REPAIR
{
repairChance = 50
canBeRepairedOnSplashed = True
canBeRepairedByRemote = False
canBeRepairedInFlight = True
dataScale = 1
dataSize = 1
}
}
}

Share this post


Link to post
Share on other sites

Release 1.2 (v1.2.2.0)

https://github.com/jwvanderbeck/TestFlight/releases/tag/1.2.2.0

•
NEW: UI
: New TestFlight window available at Space Center that will contain new features in the future. For now can be used to modify global settings.

•
FIX
: Remember last MET upon reload

•
FIX: FAILURES
: Set initial engine ignition state based on current engine ignition state rather than UNKNOWN

•
FIX
: Persist operatingTime on the part so that loading a game doesn't mess up the timer

•
FIX: FAILURES
: IgnitionFail fallback to 100% baseIgnitionChance if not defined in configs

•
UI
: Reduced logging in Editor scene

- - - Updated - - -

i tried squeezing the new ignition chance code and it still yeilds the same results.....


@PART[nosExplorerRadialEngine]
{
MODULE
{
name = TestFlightCore
}

// If attaching to a ModuleEngineConfigs engine


MODULE
{
name = FlightDataRecorder_Engine
flightDataMultiplier = 100
flightDataEngineerModifier = 0.25
}

MODULE
{
name = TestFlightReliability
RELIABILITY_BODY
{
scope = default
reliabilityCurve
{
key = 0 0.00700
key = 10000 0.00015
}
}

}
MODULE
{
restoreIgnitionCharge = False
duFail = 300
name = TestFlightFailure_IgnitionFail
oneShot = True
failureType = mechanical
failureTitle = Failed to ignite
baseIgnitionChance
{
key = 0 0.90
key = 10000 0.997
}

ignorePressureOnPad = True
severity = major
}
MODULE
{
name = TestFlightFailure_ShutdownEngine
failureTitle = Engine Shutdown
duFail = 1000.0
failureType = software
duRepair = 500.0
severity = failure
weight = 8
REPAIR
{
repairChance = 75
canBeRepairedOnSplashed = True
canBeRepairedByRemote = False
canBeRepairedInFlight = True
dataScale = 1
dataSize = 1
}
}

MODULE
{
name = TestFlightFailure_Explode
failureTitle = Engine Explode
duFail = 1000.0
failureType = mechanical
duRepair = 500.0
severity = major
weight = 2
REPAIR
{
repairChance = 0
canBeRepairedOnSplashed = False
canBeRepairedByRemote = False
canBeRepairedInFlight = False
dataScale = 1
dataSize = 1
}
}

MODULE
{
name = TestFlightFailure_IgnitionFail
failureTitle = Failed Ignition
duFail = 1000.0
failureType = mechanical
duRepair = 500.0
severity = failure
weight = 32
REPAIR
{
repairChance = 50
canBeRepairedOnSplashed = True
canBeRepairedByRemote = False
canBeRepairedInFlight = True
dataScale = 1
dataSize = 1
}
}
}

Sorry for the late reply. I've been distracted lately. That certainly looks correct. Let me test it out.

Share this post


Link to post
Share on other sites

Test Flight doesn`t work for me. I found the cfg files for stock engines and tanks in an older version. But the plugin tells mecurrently not targeting any vessel.

Share this post


Link to post
Share on other sites
Test Flight doesn`t work for me. I found the cfg files for stock engines and tanks in an older version. But the plugin tells mecurrently not targeting any vessel.

Right now only Realism Overhaul is supported. The old config files for stock will not work without modification due to changes in the plugin since those were last made.

That said, I am re-organizing things to allow different config packs to be distributed, so soon there will be some choices between RO or Stock, and possibly others.

Share this post


Link to post
Share on other sites

Cross-replying into the correct thread, as requested.

Test Flights are still real flights so you can complete contracts just like normal if you complete the requirements of the contract. I'm not sure what you are asking, but feel free to stop by IRC, the TF thread or GitHub (Wouldn't wan to jam up the RP-0 thread with TF stuff).

I think I'd misunderstood what a test flight was meant to entail - I got it mixed up with Kerbal Construction Time which has the concept of a flight simulation. In that case it's supposed to be a true simulation and contracts, etc. can't be met. But meeting contracts in Test Flight makes perfect sense. :)

Share this post


Link to post
Share on other sites
Cross-replying into the correct thread, as requested.

I think I'd misunderstood what a test flight was meant to entail - I got it mixed up with Kerbal Construction Time which has the concept of a flight simulation. In that case it's supposed to be a true simulation and contracts, etc. can't be met. But meeting contracts in Test Flight makes perfect sense. :)

Correct. Hopefully someday down the road both mods will work together, but that is up to magico13 at this point. The only thing I'm concerned with right now, in regards to contracts, is if a contract gets met inside a simulation, does it properly get reset after. I know stock ones do.

Anyway I am going to get CC support in here soon, but I need to finish up with quite a large refactor first before I can do that.

Share this post


Link to post
Share on other sites

In KCT's simulation, however, it still makes perfect sense for contracts to complete; when the simulation ends the backup persistence file is loaded so everything's reset. If contracts didn't complete during simulations, that would kind of defeat the purpose, since one of the purposes of a simulated flight is to see whether you can complete the contract. :)

Share this post


Link to post
Share on other sites
In KCT's simulation, however, it still makes perfect sense for contracts to complete; when the simulation ends the backup persistence file is loaded so everything's reset. If contracts didn't complete during simulations, that would kind of defeat the purpose, since one of the purposes of a simulated flight is to see whether you can complete the contract. :)

Yes, my only concern is that they *do* reset after. Like I said I know the Stock ones do, I am just not positive that CC ones do as well. They *should* but that isn't a guarantee.

Share this post


Link to post
Share on other sites

Hey all,

Some important information about the coming soon v1.3 release. Depending on testing, v1.3 should be out by early next week. This is a major refactoring of the code that will open things up to move forward on some major new features I want to add.

v1.3

v1.3 will remove the concept of "scope" from TestFlight. This is the main reason for the refactor as scope was extremely fundamental in the design of TestFlight and had hooks in almost every piece of code, plus the entire data store was based around it. As of v1.3 it will be gone.

Also in v1.3 the part configurations will be removed, and TestFlight itself will just be the plugin. You will need a TestFlight config pack installed separately to make use of it. I will continue to release a RealismOverhaul TestFlight pack as a separate release. This separation of Plugin from Configs opens up the ability for other modders to provide config packs as well. I will be setting up a project for Stock configs and a very basic "catch all" config pack for Stock which will hopefully be improved upon by the community.

v1.3.1

Once that main refactor is out, my immediate focus moves onto two main new features which are currently planned for v1.3.1 about a week or two after v1.3. These two features are ContractConfigurator support in the form of a Contract Pack for TestFlight, as well as a new R&D feature that will allow you to hire scientists and engineers to work on improving part reliability.

In addition once the R&D feature is in place, you will no longer be allowed to do static tests of parts to increase reliability. You will use the R&D system instead, and it will have caps and diminishing returns to encourage you to get out there and fly!

To anyone making configs or plugins for TestFlight:

Be aware that v1.3 will bring some big changes. On the config side, not too much, but the TestFlightReliability module configs will need some basic changes, as there will no longer be any scopes. On the plugin side, there will be some major API changes, mainly the removal of anything dealing with scope. Any calls you might be making to GetScope and any internal references you have to scope can all simply be deleted. Any calls made to method that generally end in "blahForScope" should be changed to just "blah" and you no longr pass in any scope. Also be aware that all instances of double are being replaced with float due to the fact that KSP has major problems with automatically persisting double data types.

Why are you removing scopes?!

The decision to remove scope will be lauded by some of you and bemoaned by others. All I can say is that I strongly believe this is the best choice for the project, and will make moving forward on a lot of fun new features possible. While the gameplay elements of scope won't directly be replaced by anything, it will in spirit be replaced with contracts that encourage you to do flight testing of parts in various biomes on various planets. While this won't change the reliability of the parts, it will still encourage you to test them in those places and give you rewards for doing so.

Want to help test v1.3?

If you want to help test v1.3, you can find the experimental release here: https://github.com/jwvanderbeck/TestFlight/releases/tag/1.3.0.2

Please be sure to read the release notes for proper testing, and be absolutely aware that this is a pre-release development build.

Edited by Agathorn

Share this post


Link to post
Share on other sites

hey guys not sure if i should post here or in the RO thread.

i am encountering a problem with the failure rate of the LR-87-7. ive designed a launcher which is loosly based on a titan II (seems the best option for the early game) and i have been testing it extensivly. the problem is the LR-87 has a 100% failure/problem rate, this is persisting after over 20 launches. the 3 types of failure it is encountering are either: refusal to ignite on the pad (takes a minimum of 2 right click attempts after staging failed to light), loss of thrust at about 40km alt (typicly drops to about 1100k/N) or the most common: shut down of engine at any altitude from about 2km upwards.

im not restarting any of my flights and im always seeing them through to the bitter end so its getting rather irritating that they keep on failing. the only time i have been able to use it successfully is when it has failed to ignite first time on launch because none of the other failure modes seem to trigger when that happens.

i fly all my flights manually so its not MJ, and all the other components i have been using i have noticed an increase in reliability (my second stage S1.5400s for eg) so i dont think i am doing anything wrong as far as the testing goes.

is there any way i can fix this?

Share this post


Link to post
Share on other sites

I have problem with the 1.3.0.2 experimental build. I had a savefile with 1.2 and almost everything worked, the only thing that didn't was the GUI. I had no idea what was the status of parts on my ship. So I switched to 1.3.0.2 and it should have migrated it - but it didn't. It doesn't work at all. When I launch a new vessel, the GUI just says that no vessel is being tracked. If I do the same in a new save, it works just fine.

Is there any way to manually fix it (by resetting TestFlight progress I guess)? I don't mind starting over with the reliability, I'm starting to use new engines anyways so that won't matter to me.

My persistent file (the part with TestFlight) looks like this:

SCENARIO	{
name = TestFlightManagerScenario
scene = 7, 6, 5
partData
{
partName = WAC-Corporal
partData = flightdata:2070.625,flighttime:0,
}
partData
{
partName = AJ10-37
partData = flightdata:8215095,
}
partData
{
partName = X-405
partData = flightdata:5472560,
}
partData
{
partName = LR-89-NA-3
partData = flightdata:1596672,
}
partData
{
partName = RL10A-1
partData = flightdata:3408719,
}
partData
{
partName = LR-87-3
partData = flightdata:494416.7,
}
partData
{
partName = LR-87-9
partData = flightdata:1639484,
}
}

Thanks

Edited by Mirean

Share this post


Link to post
Share on other sites
I have problem with the 1.3.0.2 experimental build. I had a savefile with 1.2 and almost everything worked, the only thing that didn't was the GUI. I had no idea what was the status of parts on my ship. So I switched to 1.3.0.2 and it should have migrated it - but it didn't. It doesn't work at all. When I launch a new vessel, the GUI just says that no vessel is being tracked. If I do the same in a new save, it works just fine.

Is there any way to manually fix it (by resetting TestFlight progress I guess)? I don't mind starting over with the reliability, I'm starting to use new engines anyways so that won't matter to me.

My persistent file (the part with TestFlight) looks like this:

SCENARIO	{
name = TestFlightManagerScenario
scene = 7, 6, 5
partData
{
partName = WAC-Corporal
partData = flightdata:2070.625,flighttime:0,
}
partData
{
partName = AJ10-37
partData = flightdata:8215095,
}
partData
{
partName = X-405
partData = flightdata:5472560,
}
partData
{
partName = LR-89-NA-3
partData = flightdata:1596672,
}
partData
{
partName = RL10A-1
partData = flightdata:3408719,
}
partData
{
partName = LR-87-3
partData = flightdata:494416.7,
}
partData
{
partName = LR-87-9
partData = flightdata:1639484,
}
}

Thanks

Thanks for the report! I've tracked down the problem and made a new release, 1.3.0.3 which should fix this issue. Can you give it a try?

https://github.com/jwvanderbeck/TestFlight/releases/tag/1.3.0.3

Share this post


Link to post
Share on other sites

TestFlight seems to work, however, when I upgraded to this 1.3.0.3, suddenly, my KCT began to bug out (build times are insane, first sounding rocket 3000 days, basic launcher that took 100 days to build now takes 35000 days), but I suppose that this might be just coincidence and I have messed something else up :)

Share this post


Link to post
Share on other sites
TestFlight seems to work, however, when I upgraded to this 1.3.0.3, suddenly, my KCT began to bug out (build times are insane, first sounding rocket 3000 days, basic launcher that took 100 days to build now takes 35000 days), but I suppose that this might be just coincidence and I have messed something else up :)

Yeah I don't see how I could cause that, but the coincidence is alarming.

Share this post


Link to post
Share on other sites

Hi,

Nathan Kell told me to come here with my problem:

I had the problem, that a LR-87 engine shut off several times at the almost exact same height at around 80 km, and that in a simulation (Kerbal Construction Time)

I think, Test Flight (1.220) did it, but I'm not sure. Copied from the realism overhau thread (starting at linky)

The problem occured several times while simulating the rocket with Kerbal Construction Time. Shortly before shutting down, the failure rate number displayed by testflight increased (to still a very low percentage value). Then the engine turned off. This was also the exact message in the F3-Log. After removing Test Flight temporarily I was able to launch the rocket several times without problem. So I guess, it has to be Test flight.

It was the first time, that I had an engine failure, also it was very strange that it happended several times at the exact same time/location and in a simulation. So it took some time for me to get it. The strange thing is, that Test flight didnt report a failure in its window. Just an A-button appearded, I guess, it stands for "Activate", which doesn't work a second time with this engine.

The burn time could indeed be an issue. According to kerbal engineer, the burn time is up to 5 minutes, depending on tank utilization, which is almost two times more than that, what the stage should have

Share this post


Link to post
Share on other sites

With 1.3.0.3 I am experiencing problems with my AJ-10 engine. I have tested this engine for over 5000dU. but after reaching space (120-130KM for RO), the failure rate suddenly starts to go up inevitable leading to an engine malfunction. I noticed that the 'time tested' column drops as if testing time spent magically disappears

Share this post


Link to post
Share on other sites

I just started playing RO. Question/suggestion, Is their any way to vent/dump fuel when my engine fails. If I'm going to deal with these failure modes it would be nice to have some chance of recovering the rocket from an early shut down. Just for the record we do have such a system on our sounding rocket and have used it on several early aborts allowing us to dump the tanks once the main canopy is deployed so that we are not over weight on landing.

Lee

Share this post


Link to post
Share on other sites
Hi,

Nathan Kell told me to come here with my problem:

I had the problem, that a LR-87 engine shut off several times at the almost exact same height at around 80 km, and that in a simulation (Kerbal Construction Time)

I think, Test Flight (1.220) did it, but I'm not sure. Copied from the realism overhau thread (starting at linky)

It was the first time, that I had an engine failure, also it was very strange that it happended several times at the exact same time/location and in a simulation. So it took some time for me to get it. The strange thing is, that Test flight didnt report a failure in its window. Just an A-button appearded, I guess, it stands for "Activate", which doesn't work a second time with this engine.

The burn time could indeed be an issue. According to kerbal engineer, the burn time is up to 5 minutes, depending on tank utilization, which is almost two times more than that, what the stage should have

Burn time in TestFlight means something else. It means how long of a burn time is this engine rated for. Engines get very hot as you can imagine and massive amounts of technology and research goes into finding a way to keep them cooled so that they don't eat themselves up, but eventually they will. Early engines don't have as long of burn times as later engines. As you exceed this burn time, the chance for failure rises dramatically up to several hundred times normal and a failure is virtual certain.

So there are two things that could be happening here. The first is yes you are exceeding the burn time, after which a failure will almost always occur pretty quickly, so it might seem to be all around the same altitude assuming you are flying roughly the same profile each time. The other thing it could be is KSP being stupid about random numbers which I have seen happen before.

Can you tell me exactly which model LR87 it was and how long you had it running?

As an aside, the "A" button means "Acknowledge". It allows you to essentially acknowledge the error, saying "Yes thank you I know it failed, no need to keep showing it to me". It doesn't fix anything, just clears it from your list of part faailures in the compact window settings.

- - - Updated - - -

With 1.3.0.3 I am experiencing problems with my AJ-10 engine. I have tested this engine for over 5000dU. but after reaching space (120-130KM for RO), the failure rate suddenly starts to go up inevitable leading to an engine malfunction. I noticed that the 'time tested' column drops as if testing time spent magically disappears

Any chance you can reproduce this with TestFlight debugging turned on and get me the log?

- - - Updated - - -

Hey all,

The next release of TestFlight is going to be 1.3 which will be KSP 1.0 compatible. I'm just trying to find and squash the last few bugs in 1.3, as well as migrate to a new build and deployment system that will allow me to separate the core plugin from the configs, so that we can have different config packs for RO and Stock.

Shouldn't be much longer, and i'm shooting for this weekend. Probably Sunday as Saturday is my birthday so i'm sure i'll be right lazy then :)

Share this post


Link to post
Share on other sites

Hey all,

The next release of TestFlight is going to be 1.3 which will be KSP 1.0 compatible. I'm just trying to find and squash the last few bugs in 1.3, as well as migrate to a new build and deployment system that will allow me to separate the core plugin from the configs, so that we can have different config packs for RO and Stock.

Shouldn't be much longer, and i'm shooting for this weekend. Probably Sunday as Saturday is my birthday so i'm sure i'll be right lazy then :)

Thank you so much!

Share this post


Link to post
Share on other sites

I have posted a 1.3 Experimental release on GitHub:

https://github.com/jwvanderbeck/TestFlight/releases/tag/1.3.0.6

This isn't an official release, and in fact it is completely untested, but if anyone wants to give it a go let me know how it works out. That also includes the new build system so you will note three zip files, one for the core plugin which you must get, and then two configs, one for RO and one for Stock. Just grab whichever config you want. The stock is still a work in progress.

- - - Updated - - -

Ug ignore that release. My new build system still has some bugs.

- - - Updated - - -

Update:

Think I fixed the build. Here you go: https://github.com/jwvanderbeck/TestFlight/releases/tag/1.3.0.7

Share this post


Link to post
Share on other sites

During a KCT simulation there shouldn't be failures. Or at least add an option to disable that.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.