Jump to content

[1.10.1+] Contract Configurator [v1.30.5] [2020-10-05]


nightingale

Recommended Posts

Not sure whether to post here or in the Contracts Window+ thread, but will the new version (3.3) of CW+ conflict with CC now that the former implemented local caching in its new update? There was some discussion here about it, but it's not clear to me how/if that was resolved or what the ill effect actually are.

Link to comment
Share on other sites

Not sure whether to post here or in the Contracts Window+ thread, but will the new version (3.3) of CW+ conflict with CC now that the former implemented local caching in its new update? There was some discussion here about it, but it's not clear to me how/if that was resolved or what the ill effect actually are.

I wouldn't say it conflicts, but there will be up to a 5 second delay in some parameters getting their title updated. DMagic has provided all the hooks I need to make it instant, I just need to do the updates on the Contract Configurator side. Those changes will be out in the next version, that will be released in the next couple days (depending mostly on how much free time I have). In the meantime, upgrading Contracts Window + will be at most a minor inconvenience for Contract Configurator contracts.

Link to comment
Share on other sites

where can i get coordinates for specific spot on kerbin?

like here

latitude = -1.52355959368376
longitude = 288.088922825961
altitude = 59.5576236947672

Try kerbalmaps.com. If you want an in-game solution, I just use HyperEdit - the lander tool has a "set to current location" button that you can use to output the current coordinates. Although inaccurate, you can use the altimeter for altitude (I've also just written code in the past to spit it out).

Link to comment
Share on other sites

Contract Configurator 0.6.2 is out, download it now!

Changes:

  • New exception handling for contract load/save prevents KSP from borking up the whole contract system.
  • Fixed issue where VisitWaypoint title didn't show up in mission control.
  • Fixed issue where doing a module manager reload can fail some active contracts (thanks Samapico).
  • Minor bug fixes.

The main thing was an enhancement to mitigate issues in future like the one with the 0.6.0 release that had the potential to blow away all the player's contracts, due to the way Squad's contract systems handles (or doesn't handle) exceptions. So here is the exception screen that you should hopefully never see. ;)

1FZrrlt.png

Link to comment
Share on other sites

Version 0.6.4 is out with some minor fixes. Download it now!

Contract Configurator 0.6.4

  • Replace buggy stock ReachSpace parameter with a custom one (thanks Yemo and SETI users).
  • Fix NullRef issue when using PartModule in PartValidation (thanks Yemo and SETI users).
  • Better reporting on RemoteTech version mismatch issues.
  • Fixed issues with dependency version check code.

Link to comment
Share on other sites

Wow, that is some fast patching.

Thank you very much for the great support!

Since other tech tree mods which start unmanned face problems with the altitude contracts as well, I just released replacements, based on the ones I use for the SETI-BalanceMod, for use with other TechTree mods.

The licensing is very open, if other mods want to redistribute them...

Initial Contracts

InitialContracts replaces the buggy/annoying stock starting contracts with 3 similar ones, which can be completed by manned and unmanned craft. Thus the mods contracts are especially useful for TechTrees which start unmanned and may be redistributed with them.

They are based on the SETI-Contracts but more balanced for stock.

InitialContracts Link

The mod Contract Configurator by nightingale is required to use the configs.

These Contract Configurator configs by nightingale and Yemo are based upon the general contracts of the SETI-BalanceMod.

License: You may do what you want (change, expand, mix, redistribute as part of a larger package etc.), as long as you provide the source (eg. SETI-BalanceMod with link) and credit for previous authors (eg. nightingale and Yemo) within the file(s) and at the reference locations (forum thread and download site).

Hence you can just redistribute this file along with eg a tech tree mod under any (even a very restrictive) license as long as you give credit in the form mentioned above.

Link to comment
Share on other sites

Wow, that is some fast patching.

Thank you very much for the great support!

Since other tech tree mods which start unmanned face problems with the altitude contracts as well, I just released replacements, based on the ones I use for the SETI-BalanceMod, for use with other TechTree mods.

The licensing is very open, if other mods want to redistribute them...

Initial Contracts

InitialContracts replaces the buggy/annoying stock starting contracts with 3 similar ones, which can be completed by manned and unmanned craft. Thus the mods contracts are especially useful for TechTrees which start unmanned and may be redistributed with them.

They are based on the SETI-Contracts but more balanced for stock.

InitialContracts Link

The mod Contract Configurator by nightingale is required to use the configs.

These Contract Configurator configs by nightingale and Yemo are based upon the general contracts of the SETI-BalanceMod.

License: You may do what you want (change, expand, mix, redistribute as part of a larger package etc.), as long as you provide the source (eg. SETI-BalanceMod with link) and credit for previous authors (eg. nightingale and Yemo) within the file(s) and at the reference locations (forum thread and download site).

Hence you can just redistribute this file along with eg a tech tree mod under any (even a very restrictive) license as long as you give credit in the form mentioned above.

Awesome stuff!! I've added it to the first post. These are a great starting point for anyone wanting to mod contracts, since usually that's one of the first points of frustration!

Link to comment
Share on other sites

Initial Contracts

InitialContracts replaces the buggy/annoying stock starting contracts with 3 similar ones, which can be completed by manned and unmanned craft. Thus the mods contracts are especially useful for TechTrees which start unmanned and may be redistributed with them.

Just dropped by to announce that the Initial Contracts are available on CKAN too.

Link to comment
Share on other sites

Nightingale

I have a pack request,

Can you creat a pack for resupply missions? I'm thinking start it with a build a station in LKO to hold x amount of kerbals. Then have a contract show up say every half Kerbin year to resupply it with TAC life support. Then maybe a mun station with an annual resupply. Then minmus and so on and so on through the solar system.

This would be so awesome

Link to comment
Share on other sites

Nightingale

I have a pack request,

Can you creat a pack for resupply missions? I'm thinking start it with a build a station in LKO to hold x amount of kerbals. Then have a contract show up say every half Kerbin year to resupply it with TAC life support. Then maybe a mun station with an annual resupply. Then minmus and so on and so on through the solar system.

This would be so awesome

That's not too bad an idea, I've added it to the contract pack development thread. I think the way I would like it to work would be to have it auto-detect the possible target bases/stations for resupply, which is not something that's easily done in Contract Configurator right now. I have some plans for 0.7.0 that could make this more feasible in the future though, so I may do this one at some point. :)

In the meantime, I believe that Mission Controller 2 has contracts somewhat like this.

Link to comment
Share on other sites

I was going over the wiki and especially the "target body" selection.

Is there a way to make a general asteroid contract?

Like land on an asteroid (no matter which one).

Nope, no direct support for asteroids at the moment - nobody's asked for it, and it hasn't yet fit into any plans for my own contract packs (which are currently the primary driver for new features). I've raised GitHub issue #128, which I'll work into the 0.7.0 release. If there's specific things you need/want you can comment on the issue in GitHub.

Note also that under Squad's implementation, asteroids aren't celestial bodies - but vessels. Under 0.6.0, you should be able to generate your own asteroid using the SpawnVessel behaviour, and then use the Rendezvous parameter to specify that you need to meet with it. That's the best that is possible at the moment, but thinking about it I already have a few ideas on how to extend all this in 0.7.0.

Link to comment
Share on other sites

Nope, no direct support for asteroids at the moment - nobody's asked for it, and it hasn't yet fit into any plans for my own contract packs (which are currently the primary driver for new features). I've raised GitHub issue #128, which I'll work into the 0.7.0 release. If there's specific things you need/want you can comment on the issue in GitHub.

Note also that under Squad's implementation, asteroids aren't celestial bodies - but vessels. Under 0.6.0, you should be able to generate your own asteroid using the SpawnVessel behaviour, and then use the Rendezvous parameter to specify that you need to meet with it. That's the best that is possible at the moment, but thinking about it I already have a few ideas on how to extend all this in 0.7.0.

Ah, the vessel definition was the missing link. Thinking about it, it makes sense, since you can dock with and redirect them.

I wonder under which vesselType they fall and if it is possible to define a vesselType = Asteroid for them.

Anyway, with the SpawnVessel behaviour there are quite a few options for more diverse asteroid contracts. Thank you!

Link to comment
Share on other sites

Ah, the vessel definition was the missing link. Thinking about it, it makes sense, since you can dock with and redirect them.

I wonder under which vesselType they fall and if it is possible to define a vesselType = Asteroid for them.

Anyway, with the SpawnVessel behaviour there are quite a few options for more diverse asteroid contracts. Thank you!

The vesselType is "VesselType.SpaceObject", but if you were thinking of using the VesselIsType it won't work, as that can only check player controlled ships. Although to be perfectly honest I'm not 100% sure on the mechanics of what happens to the ownership of an asteroid after you grab it with the claw. Anyway, I think I'll look at this in the next couple days and just release this under 0.6.6 for you. So don't spend too much time figuring out how to get SpawnVessel working for this, unless you really do want one where you specify the exact orbit/location of the asteroid. Which could be interesting if you want to do a killer asteroid contract.... :)

Link to comment
Share on other sites

The vesselType is "VesselType.SpaceObject", but if you were thinking of using the VesselIsType it won't work, as that can only check player controlled ships. Although to be perfectly honest I'm not 100% sure on the mechanics of what happens to the ownership of an asteroid after you grab it with the claw. Anyway, I think I'll look at this in the next couple days and just release this under 0.6.6 for you. So don't spend too much time figuring out how to get SpawnVessel working for this, unless you really do want one where you specify the exact orbit/location of the asteroid. Which could be interesting if you want to do a killer asteroid contract.... :)

Thank you!

No need to rush it, I will probably take a break from contract implementation anyway, to catch up with some part mod support backlog I accumulated :wink:.

edit: The Killer asteroid contract was exactly what came to mind for an end-game asteroid mission :).

Edited by Yemo
Link to comment
Share on other sites

Ah, the vessel definition was the missing link. Thinking about it, it makes sense, since you can dock with and redirect them.

I wonder under which vesselType they fall and if it is possible to define a vesselType = Asteroid for them.

Anyway, with the SpawnVessel behaviour there are quite a few options for more diverse asteroid contracts. Thank you!

Asteroids are vesselType = SpaceObject if they have been tracked, and vesselType = Unknown if they haven't been (these are the question mark objects in the tracking station).

There is a DiscoveryInfo field for every vessel which has data about whether or not an asteroid has been tracked, or visited before (I can't remember which values correspond to which state, but they are stored in the persistent file).

It also has info about the asteroids size class, but this is only really reliable for asteroids that haven't been visited before (ie haven't been within loading range), since docking to an asteroid permanently changes this value. The only reliable way to get the size class after visiting an asteroid (it isn't available before the asteroid is loaded for the first time...) can be found here: https://github.com/DMagic1/Orbital-Science/blob/master/Source/DMAsteroidScience.cs#L76-L92. It basically takes the last character in the ModuleAsteroid.prefabBaseURL string, which corresponds to the size class and doesn't change.

Link to comment
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.

×
×
  • Create New...