Jump to content

Contracts are great, but we need PROGRAMS!


Recommended Posts

So yea.. Just had a thought pop into my mind.

Contracts, they're ok.. not that great though. "Do this.., test this, fly this high, scan stuff"

What if they could integrate Programs into an extension of the contract system? Then have a series of contracts generated that are associated to that program?

So for example the Apollo program, you slowly build yourself up to the point of getting to the moon. In the beginning you're testing basic systems, testing the CM in orbit and what not like a real program.

So this gives you more of a long staggered mission over time with multiple contracts to achieve goals. Then say you have to complete certain contracts within the program before you can go after the main goal?

What do you guys think?

Link to comment
Share on other sites

Great idea! Actually, it might even be a good way to deal with the more annoying "test ___ in situation ___" contracts: rather than testing parts arbitrarily, test them as part of a larger goal (e.g. test the LV-909 engine as part of an experimental Mun lander, in a reasonable test situation... rather than at some crazy altitude/speed that you'd never use it in anyway).

So basically more complex contract. That'd be cool.

The system for this already exists I think. The survey contracts have multiple objectives.

At least some of it does, but I don't think the current contract parameters have any way to enforce that they should be completed in a particular order. Then again, perhaps that wouldn't be necessary

Link to comment
Share on other sites

Great idea! Actually, it might even be a good way to deal with the more annoying "test ___ in situation ___" contracts: rather than testing parts arbitrarily, test them as part of a larger goal (e.g. test the LV-909 engine as part of an experimental Mun lander, in a reasonable test situation... rather than at some crazy altitude/speed that you'd never use it in anyway).

At least some of it does, but I don't think the current contract parameters have any way to enforce that they should be completed in a particular order. Then again, perhaps that wouldn't be necessary

Yes! So now you have a purpose for testing those pesky new parts.

Link to comment
Share on other sites

To my understanding of the game, WE are supposed to create the program ourself out of the contract you are proposed.

Obviously you rarely get the contract you want, but that's the hazard of life.

However I don't see problem with some potential "multi-part contract".

I kind of dislike how the contract are randomly & procedurally generated anyway.

Edited by Kegereneku
correction
Link to comment
Share on other sites

I agree with this thread!

I'm not a big fan of the "Test __ in flight" contracts because they don't pay enough, the speeds and altitudes are arbitrary and hard to meet in a single attempt, and take up space from contracts I'd LIKE to do, such as "Do Science ___," "Explore ___," "Rescue ___ from ___," "Place ___ in orbit around ___."

I'd LOVE it if those pesky testing parts contracts were part of larger missions... and also didn't require activating the parts through staging. It is VERY difficult to test an LFB KR-1x2 in sub-orbital or orbital flight (even if it's empty), especially with the new building levels and with how early I seem to get that contract.

A contract that had you test a single part in multiple situations, in order, would be very interesting. For example:

"Test LFB KR-1x2 landed at Kerbin" This step would be on the launchpad, of course, and activated through staging. After completion, a new step would activate after having been greyed out from the beginning but still visible so you know it's coming.

"Test LFB KR-1x2 in flight" This step should probably happen at a specific speed and altitude calculated based on a relatively light craft using only this engine, and it would involve the right-click activated 'run test' option. After completion, the next mission should become available from Mission Control.

"Test LFB KR-1x2 in sub-orbital flight" This would be a new mission instead of part of the previous one because you'd want to do 'safe' (Kerbal-defined safe, not human-defined safe) atmospheric tests before adding more tanks and sending this sucker sub-orbital. There's little point in testing this particular engine in orbit, but other parts it would make sense to continue on this line of testing.

This kind of thing would involve less procedurally generated contracts and more custom-designing for each part, but would make a bit more sense from a gameplay perspective. The current randomness of the contracts goes a bit beyond the lovable goofballness of Kerbals right now (in my not-so-humble opinion).

Link to comment
Share on other sites

Having you test the same part (from the same launch) in multiple different situations would be pretty neat I think. I like the idea because the specific combination of situations you have to test makes the challenge very unique. For example, a contract that has Flight (specific speed, altitude), landed at Mun, orbiting Minmus, and in flight again at Kerbin is a very unique challenge, and combining them in different ways will give you an infinite set of unique challenges. The contract generator will have to be pretty smart and avoid generating "impossible" contracts however.

To expand on the original post, I think programs consisting of multiple, logically connected missions would be pretty fun too. What would make those missions really compelling, however, would be if the results from one mission carried over from one mission to the next. For example, to establish a Mun colony could have the following missions:

-Put a satellite in a polar orbit around the Mun (having ScanSat be integrated would be cool, but optional)

-Some time later, the satellite "finds" some potential landing sites that are nice and flat. A new mission is generated that asks you to land within 10km of 3 different places on the Mun.

-One particular site is found to be particularly promising. Land a manned rover there and drive around some specific waypoints near that landing site

-Finally, identify one of those points that is the most ideal, and ask you land a colony base there

Link to comment
Share on other sites

I'm not a big fan of the "Test __ in flight" contracts because they don't pay enough

Oh I dunno... I once got a contract in 0.25 for testing the huge kerbodyne engine in a suborbital trajectory...... for 400,000 funds. I couldn't get that one done fast enough lol. There was also an in flight variant of it I got earlier that paid about 150k that I figured was a little too much hassle to be worth it.

It is VERY difficult to test an LFB KR-1x2 in sub-orbital or orbital flight (even if it's empty)

psst... you can right click it and click "run test" if you activated it before the conditions were met... regardless of what it says in the contract

This kind of thing would involve less procedurally generated contracts and more custom-designing for each part, but would make a bit more sense from a gameplay perspective. The current randomness of the contracts goes a bit beyond the lovable goofballness of Kerbals right now (in my not-so-humble opinion).

Yeah I'd have to agree with this. Tbh, I'd be happy if the constraints on the in-flight ones were a lot more reasonable (RT-10 at 20-22km... really? sure it's possible to get it there cheaply, but still) and the "test ___ landed at kerbin" ones actually paid more than the part cost! (especially for decouplers that tend to go flying and smash on the ground.... the science was worth it though :))

Link to comment
Share on other sites

So basically more complex contract. That'd be cool.

The system for this already exists I think. The survey contracts have multiple objectives.

The difference is that a survey contract has an "end" goal at which lots of bonuses are handed out (or penalties if you don't finish in time). What the OP was referring to would be too long-term for that to really be an appropriate way to model it.

What would be nice would be an *ongoing* program that has no endpoint - you go into the admin center and pick a 'mission strategy' and it would have the effect of biasing the contracts offered in favor of a particular type of mission. If you like spaceplanes, set a spaceplane program and watch more airplane contracts arrive. If you really love the planet Duna, set a Duna strategy and watch more Duna contracts arrive. Set a "Mun" program and see more mun crash, mun probe, and mun landing contracts than usual appear.

It would be the equivalent of Kennedy's "We choose to go to the moon" speech - it sets the overarching push of the space agency for the next several years.

Link to comment
Share on other sites

What would be nice would be an *ongoing* program that has no endpoint - you go into the admin center and pick a 'mission strategy' and it would have the effect of biasing the contracts offered in favor of a particular type of mission. If you like spaceplanes, set a spaceplane program and watch more airplane contracts arrive. If you really love the planet Duna, set a Duna strategy and watch more Duna contracts arrive. Set a "Mun" program and see more mun crash, mun probe, and mun landing contracts than usual appear.

That's a pretty cool idea, but I think it might be difficult to come up with a decent UI for that - the current one is woefully inadequate for it, not to mention it'd be a nightmare for the QA team (more options = exponentially more bug potential). Who knows, maybe squad (or a modder) will prove me wrong :)

Link to comment
Share on other sites

psst... you can right click it and click "run test" if you activated it before the conditions were met... regardless of what it says in the contract

For all parts? .... I did not know this... I must go test things now. I have seen some contracts in which the parts I had not activated allowed me to do a 'run test' and had the option in the menu even when in the wrong situation (it wouldn't fulfill the contract until parameters were met though), but I never noticed the ability to run a test on an already activated part or a part where the contract says it must be activated through staging.

Link to comment
Share on other sites

For all parts? .... I did not know this... I must go test things now. I have seen some contracts in which the parts I had not activated allowed me to do a 'run test' and had the option in the menu even when in the wrong situation (it wouldn't fulfill the contract until parameters were met though), but I never noticed the ability to run a test on an already activated part or a part where the contract says it must be activated through staging.

Indeed for all parts.... at least all the ones I've tried (they need to be a part you can stage, obviously).

EDIT: there does seem to be a small exception with solid rocket boosters. As a work-around, you can add an empty stage while in-flight and stage the booster again when the contract conditions are met; it still counts (may be a bug).

Edited by armagheddonsgw
Link to comment
Share on other sites

I completely agree with the gist of the OP. As to how to go about doing this, I would offer 2 options for how to go about the 'getting there' part of the space program, reusable and cheap.

Reusable would be a strategy set that would boost the recovery funds return of vessels, promote smaller satellites, and promote alt. prop. technology.

Cheap would promote the use of cheap launch vehicles that could be built en masse, as well as larger science missions.

Then there would be 3 primary program models, Exploration, Conquest, and Science.

Exploration would focus most on planetary science, sending rovers and orbiters to various places among the solar system. (The FP survey and rover contracts)

Conquest would be about putting landing bases on different planets, and producing large colonies. (The FP base contracts)

Science would focus on getting all the local science possible, setting up space stations, and focusing on Kerbin science. (The FP Kerbin surveys, and the space station contracts)

Something like that?

Link to comment
Share on other sites

"We choose to go to the mun. We choose to go to the mun in this month and do SCIENCE. Not because it is easy, but because this game is about space" -Lord Emperor Kerman

I like Kennedy's speech a bit better, sorry :P Nice try though :D Maybe if you changed the last part it would flow better :)

Link to comment
Share on other sites

Somehow the idea sounds like an integration of "Buzz Aldrin's Space Program Manager" into kerbal space program ;)

I like the idea (i sometimes even play the SPM and then between fly the missions in KSP ^^), but i think it would rather be a very nice mod then something integrated into the main game.

Link to comment
Share on other sites

Great idea! Actually, it might even be a good way to deal with the more annoying "test ___ in situation ___" contracts: rather than testing parts arbitrarily, test them as part of a larger goal (e.g. test the LV-909 engine as part of an experimental Mun lander, in a reasonable test situation... rather than at some crazy altitude/speed that you'd never use it in anyway).

At least some of it does, but I don't think the current contract parameters have any way to enforce that they should be completed in a particular order. Then again, perhaps that wouldn't be necessary

yup I like this idea. random part testing always felt a little weird.

it would let the player choose a direction too. you could follow a monetary focused orbital construction program for or a destination focused Apollo style for exploration and prestige.

I think this would be a great way to introduce advanced concepts to the player as well. like deadly reentry or long duration life support, if they ever get added.

Link to comment
Share on other sites

The trith is that I almost always skip all the "test" contracts, now that we have more variety which are more interesting. I only take them if I see that for sure I'll be able to carry it out while doing another more entretaining contracts. So yes, I think that including somemechanics to make them more desirable would be cool.

Link to comment
Share on other sites

The difference is that a survey contract has an "end" goal at which lots of bonuses are handed out (or penalties if you don't finish in time). What the OP was referring to would be too long-term for that to really be an appropriate way to model it.

What would be nice would be an *ongoing* program that has no endpoint - you go into the admin center and pick a 'mission strategy' and it would have the effect of biasing the contracts offered in favor of a particular type of mission. If you like spaceplanes, set a spaceplane program and watch more airplane contracts arrive. If you really love the planet Duna, set a Duna strategy and watch more Duna contracts arrive. Set a "Mun" program and see more mun crash, mun probe, and mun landing contracts than usual appear.

It would be the equivalent of Kennedy's "We choose to go to the moon" speech - it sets the overarching push of the space agency for the next several years.

Essentially yes, you have a program with a long term goal. We would probably end up having to build a new mission system to get something like this to work. The contract system wouldn't be able to handle it. Unless you could have a parent contract, then sub or child contracts that branch out from there.

Link to comment
Share on other sites

With the current contract system as it is, some polish is already required, we know this and I'm sure Squad knows this.

I'm not very well educated when it comes to programming, but it seems to me that making contract trees wouldn't be too hard. I think it could even be procedural in the same way current contracts are. Just have a basic empty tree, select a part, then output the first contract with that part. Once that first contract is done, output another contract with the same part. Taking this a step further, the altitude record contracts could all be combined into one long tree that takes you higher and higher, then into orbit, then the Mun, etc. Tying them together turns them from a discrete list of contracts into a full mission.

Taking it another step and having the contracts auto-update with new objectives after a previous condition is met makes it even better. One could potentially make an orbit-capable ship and successfully complete ALL altitude records up to full orbit in one mission and NOT miss out on each discrete stage of records. As it is, I have to limit my altitude attempts so I DON'T break records I don't have contracts for and miss out on that little bit of extra funding early on.

Link to comment
Share on other sites

I'm not very well educated when it comes to programming, but it seems to me that making contract trees wouldn't be too hard. I think it could even be procedural in the same way current contracts are. Just have a basic empty tree, select a part, then output the first contract with that part. Once that first contract is done, output another contract with the same part.

The data structure you describe here is roughly a "list", not a tree; a tree has "branches" (hence the name), so for example if I have 5 nodes (call them 1,2,3,4,5), 1 is the "root" node (the "top" or "bottom" of the tree depending on whether it's drawn branching downwards or upwards), and you have 1->2 (2 is a branch off of 1), 1->3, 3->4 and 2->5, then that's a very simple tree. You could certainly use something like that for implementing space programs though, with the root node being the *end* goal of the program, although a dependency graph (to allow for inter-related parts) might be a better choice :)

You can also generate procedural trees/graphs/<insert your favourite thing here> directly :)

Otherwise a good suggestion :)

Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

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.

×
×
  • Create New...