Jump to content

[0.24][WIP] Extra Contracts


Arsonide

Recommended Posts

I'm taking the extra time to sanitize a lot of functions that were causing the bugs that people found in the last version, and have those functions log verbose errors if they bug out. The "new stuff" is done, I'm polishing at this point.

Oh, and the name of the mod is changing to something cooler. I think I'll be calling it "Fine Print", as in, more detailed contracts. :P

Link to comment
Share on other sites

Now that I look at it, I think it's could be better if it were just Site 1, Site 2, Site 3 etc. We only want to use Greek alphabet for super important stuff :)

Also, about base and station contracts, how about some of them requiring the cupola module? It's time we give them glass domes a purpose...

Link to comment
Share on other sites

I didn't see a suggestion for upgrading existing stations and bases? The contract could specify adding an additional module with a set list of parts (which make some sort of sense - a science module, comms module, solar array etc.) to an existing specified craft. Renaming could cause issues though.

I'm not sure if the map designations (station, probe, base, rover etc.) could be used to filter out unmanned satellites?

Link to comment
Share on other sites

How long is the total distance between all the waypoints likely to be? Driving a rover for 10 minutes is fun, but if you have to spend an hour driving 40km that could get tiring.

Link to comment
Share on other sites

It depends on the difficulty. The trivial ones are within 10km, the hardest ones are within 30km. I've had users request missions to circumnavigate the planet on a rover, so everyone's tastes appear to differ on this subject. I'm going to stick with these numbers for now and see how they fly, but know that you get paid per waypoint, so the wider area missions are more profitable, and they will be more profitable by a great margin of science, not just funds.

Link to comment
Share on other sites

Also, applying the station/base approach to rovers, since rovers contracts require brand new rovers, why not also make rovers require specific parts? Maybe the rover needs to have a science bay, some scientific instruments, a minimal amount of kerbal, or even a frickin' mobile lab. Due to the weight, maybe we'll also find a reason to use the more heavy-duty rover wheels.

Link to comment
Share on other sites

If I integrate it do you mind if I modify "at a specific location" to be at a waypoint, instead of a biome?

I've been thinking about this and have re-written most of the code to allow for much more flexible usage of adding experiments to contracts.

I've created a one line method that handles all of the science contract parameter generation. You just run it, then check if the parameter it returned is null, if it is then something failed a check (the experiment part hasn't been researched, the science has already been collected, etc...), and if it isn't null then you can add it to the contract's list of parameters.

I've been adding several overloads to the parameter generator. You can generate a fully random experiment, or you can specify a planet, an experimental situation, a biome, or an experiment. This allows for the option of say, generating one random parameter, then generating a second with the same planet and biome as the first.

If you want to incorporate any properties of the parameters into the contract description, title, rewards amount, etc... then you can easily access them; you just have to save and load the relevant parts if they are needed.

So my thinking is that this could be used to sort-of replace or upgrade the stock "explore planet x" contracts, where they ask you to orbit, land, and collect science from both locations. Instead of that generic contract you could generate one or two experiments for a specific biome or location (on the surface for example) then generate way points for those locations. I'm not actually sure how to go about generating way points for a given biome on a planet, but's that's something that can be figured out.

The problems I described before about tracking where exactly your experiment was collected still apply, but I don't think that really matters.

It would theoretically be possible to ask for experiments from one biome with way points at one location with that biome. You could then collect science data from one area with that biome, then go to the way point in another area with that biome; the contract would still complete, but who cares. There is little functional difference between collecting the science where you are supposed to and going to the trouble of visiting two locations just to trick the system (except that the later is a whole lot more trouble), so I think it would work well enough. I suppose the only real reason for doing this might be to use different vessels to complete each segment of the contract, but that still seems like it would generally be more trouble than doing it as intended.

Link to comment
Share on other sites

Hey Arsonide, awesome mod, adds a great variety to the game.

I encountered a small bug yesterday, I accepted 3 asteroid redirect contracts (to bring them into orbit around Kerbin, Mun and Minmus each).

I had a C-class on collision course with Kerbin, so I thought I HAD to rescue those poor kerbals.

Anyway, I grabbed it with a claw, but as it was too close already and I didnt had the power to tow it away from collision -> in the end it crashed into Kerbin.

Then I switched vessels to my station around Mun -> asteroid contract to bring it in Mun's orbit completed.

Could reproduce it also with Kerbin's orbit.

My guess is that the mod does not detect if you switch vessels, but retains the "grabbed" status of the asteroid ;)

No big deal, but maybe you can look into it. And I'm looking forward to those new ground target missions, that looks awesome.

Link to comment
Share on other sites

A little idea, maybe for the future and to enhance immersion: what about contracts revolving around existing vessels? As example, your own Station XYZ needs Part (insert here) for experiments, and the contract is to deliver it to the station. Or Jeb needs Batteries for his Walkmen in Orbit around Jool, and Mission Command has the opinion this is really important. Or XX Kerman on Vessel YYY is sick, and needs to get home asap, without canceling the mission, so you have to send another exchange Kerbal.

Just my 2c.

Link to comment
Share on other sites

I could think of a few contract types to add as well.

Satellite repair/maintanence.

Rendevous with, and EVA within' X meters of a generic spawned satellite in orbit.

- Either EVA within' X distance for Y amount of minutes, or grab on to a ladder attached to the satellite. This is only to cater to stock. Reliance on mods like KAS could be troublesome otherwise.

- The satellite despawns once the contract is complete and the player leaves the loading distance. This is to prevent clutter from multiple finished contracts.

- The mission fails of the satellite is disturbed from its orbit (within' sane bounds of course), or even outright stolen. And there is a followup penalty that is DOUBLE if the player completes the contract, but then turns around and yoinks the sat in order to make money off the 'recovered' parts.

Satellite Recovery

- Similar to a 'rescue X kerman' mission. Except instead of an easy to move crew capsule, the player gets the arduous task of figuring out how to build a vehicle that can pluck a satellite of contract-specified parameters out of orbit and return it safely to the ground.

- The monetary stipend for this mission is lower, but is offset by the recovery value of the satellite itself.

- The size and mass of the satellite is bounded to a few tons max to keep things reasonable.

Seismic Test

- A two part mission where the player must first land a seismograph on the surface of a specific body. Then the player must crash a second vehicle of a specified minimum mass into the ground within a few kilometers distance, above say, 100 meters per second. (Or other reasonable speed.)

- The payout is heavy on the science, but low on money and rep.

Site Specific Landing

- Very simple. Land at these coordinates via any means. (May require some creative finagling with landing designs depending on the terrain.

- We said LAND, not drive. Point of transition from flying to landing must be within' the error radius of the landing site.

- Error radius size determined by a difficulty scalar.

- Additional parameter for landing and the lander having to actually survive for a few seconds, up to ten minutes. (To ensure the player designs a lander that doesn't immediately tip over and/or fall apart.)

- Slope checking if possible. (Kind of dumb to land on the side of a cliff.)

Tight Budget Mission

- Special variation of any other contract specifically to be difficult. The mission must be done without the launch vehicle exceeding a specific launch cost. The agency contracting you can't pay otherwise.

- Payout in money for this mission is break-even, but earns significant reputation points.

- The penalties for this mission are much lighter than normal. The agency contracting you know it's hard, and won't be surprised if you fail.

-- Even better if the mission can be built to handle mission success, but failure in the budget handling. (With a penalty related to how much cost overrun there was.)

Link to comment
Share on other sites

I really like this mod but am having difficulties with the base and station missions. I have not yet got one to complete. Each time I have got something slightly wrong on launch and had to revert to the VAB. Does a revert to the VAB after launch cause it not to show as a NEW base or station?

Also if I do not have all the parts but wish to add to a station to make it comply with all the criteria i.e. requires space for 11 Kerbals I have space for 8 and add a further module for 3 at a later date, will this cause it not to complete?

I am running out of cash with these not completing so any help would be appreciated!

Link to comment
Share on other sites

Hey Arsonide, awesome mod, adds a great variety to the game.

I encountered a small bug yesterday, I accepted 3 asteroid redirect contracts (to bring them into orbit around Kerbin, Mun and Minmus each).

I had a C-class on collision course with Kerbin, so I thought I HAD to rescue those poor kerbals.

Anyway, I grabbed it with a claw, but as it was too close already and I didnt had the power to tow it away from collision -> in the end it crashed into Kerbin.

Then I switched vessels to my station around Mun -> asteroid contract to bring it in Mun's orbit completed.

Could reproduce it also with Kerbin's orbit.

My guess is that the mod does not detect if you switch vessels, but retains the "grabbed" status of the asteroid ;)

No big deal, but maybe you can look into it. And I'm looking forward to those new ground target missions, that looks awesome.

Fixed this bug yesterday. It also affects the station mission. Objectives couldn't revert back to incomplete once they completed. Now they can. Tidying up the last five things on my list before release. When I release, I will shut down this thread and open a new one on the showcase forum. There was also an exploit where once you had an asteroid in orbit you could pretty much succeed any ARM contracts instantly. I patched that up as well, now any asteroids you recover have to be newly discovered (tracked after you accept the mission).

I really like this mod but am having difficulties with the base and station missions. I have not yet got one to complete. Each time I have got something slightly wrong on launch and had to revert to the VAB. Does a revert to the VAB after launch cause it not to show as a NEW base or station?

Also if I do not have all the parts but wish to add to a station to make it comply with all the criteria i.e. requires space for 11 Kerbals I have space for 8 and add a further module for 3 at a later date, will this cause it not to complete?

I am running out of cash with these not completing so any help would be appreciated!

The "new" stipulation just means that the launch time of the vessel must be after you accepted the contract. Reverting to the VAB will not affect this. If the station doesn't have all the parts and you add some to complete the criteria, it will still succeed, but again, only if the initial station was launched after the contract was accepted. You can make multiple trips and dock parts together. That's actually how I intended the mission to go.

I've been in development crunch for about three days to get this out, so here's my final stretch theme:

I've already got plans for what to add next. I want rover missions and plane missions to occasionally not spawn any more than one waypoint, and spawn the next one as you reach the first, creating a chain. I want base missions to specify a waypoint for you to drop down onto, and of course, there are ample ideas for new types of missions. Not to mention, I'm sure there will be a few bugs slip through the cracks that will need to get patched up. Edited by Arsonide
Link to comment
Share on other sites

Keep up the great work Arsonide! Looks like its going to be an awesome update!

Something to think about - RT2 doesnt play well with this along with other mods that introduce different modules / change modules. Any way there could be a .cfg file that we can add in mods / modules that are changed?

Link to comment
Share on other sites

When stations require an antenna, RT2 replaces the stock antenna modules with ModuleRTAntenna and ModuleRTDataTransmitter so it can decide if there should be a connection or not, so I believe WololoW's suggestion is to consider RT2 antenna definitions for completing contracts that require antennae.

Link to comment
Share on other sites

Exactly! And perhaps while doing what jakk said, you could add RT2 specific contracts for com sat arrays (When using RT2, you need com sat arrays for anywhere you want unmanned flights to go.) Though, that added bit is just a pipe-dream.

Link to comment
Share on other sites

The "new" stipulation just means that the launch time of the vessel must be after you accepted the contract. Reverting to the VAB will not affect this. If the station doesn't have all the parts and you add some to complete the criteria, it will still succeed, but again, only if the initial station was launched after the contract was accepted. You can make multiple trips and dock parts together. That's actually how I intended the mission to go.

Thanks for clearing that up for me :-)

But I am still unsure why my missions are failing to complete taking this in to consideration.

I definitely had all of the parts on my last mission and accepted it before even building the vessel? (Just in case this was the requirement). I am wondering if I am having the same problem as was mentioned about the remote tech 2 antenna?

On the last build though I had both the communitron 32 and 16, and the 16 I believe is still a stock part?

I will wait until your latest release and try again and if I still get the same problem I will make a copy of the Log and the persistence file.

Link to comment
Share on other sites

add RT2 specific contracts

No, I don't think this is a good idea. I think it would be a much better idea for the RT2 devs to hook into the contract API stuff that Extra Contracts (Fine Print?) exposes (or perhaps should expose if not already) so that THEY can make RT2-specific contracts. That way the contracts will be kept up to date with new releases of RT2 and can take advantage of all of the RT2 code. For example, if the contract was to put up a comsat constellation around Duna (3 sats, altitude range x, min separation y) that can communicate with kerbin, RT2's going to be handling the code for whether your antennae have the right range and finding a path through the connection graph to verify that all three are reachable from KSC. If Arsonide were to try to code all of that, his mod would become heavily dependant on the inner workings of RT2, which I do not believe to be desirable.

I am looking forward to a lot of mod-specific contracts in the coming weeks, but I think it's up to those mods' dev's to implement them.

Link to comment
Share on other sites

Alright I just learned how to support those things without creating a hard dependency, I'll work that into the release. Thanks.

Someone had another issue with a power generator in Interstellar, I'll look at that too.

Link to comment
Share on other sites

I am looking forward to a lot of mod-specific contracts in the coming weeks, but I think it's up to those mods' dev's to implement them.

I'd like SCANsat and RT2 related contracts though my experience with Station Science has shown me the downside of individual mod devs implementing them, namely I get about 10 station Science Contracts for every 2 stock contracts and maybe 1 Extra Contracts in there if I'm lucky.

Link to comment
Share on other sites

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