Jump to content

[Early WIP] Renegotiator: an RSS Payout Adjuster


Starman4308

Recommended Posts

Ever been annoyed at how hard it is to make contract payouts to make sense in Real Solar System? Well, now there's a mod to fix that... or at least a demo version thereof. Renegotiator can apply different multipliers for every body and every situation, such as landing on the Mun vs. getting science data from Laythe.

Remaining major issues

No sensible config file for any possible situation (what is provided was intended solely for debugging).

No automatic parametrization.

Does not fix suborbital and orbital contract altitudes for RSS.

Unlikely to work with mod contracts: I have a hook in my code for that, but haven't implemented specific support for any mods. This includes the Fine Print contracts which are going stock in 0.90.

Remaining features to implement

Nuke nonsensical contracts like "test Basic Jet Engine on Minmus"

For a bit of RSS scale:

O34rir1.jpg?1

Source on Github

Release version also at Github.

License: MIT (included at Github repo)

Significant assistance (or code adapted from) so far from:

NathanKell

Ferram4

nightingale

DMagic

Eggrobin

Acerola

TriggerAU

Edited by Starman4308
Link to comment
Share on other sites

Saving and loading the contract list through a scenario module is no problem and gets around having to worry about manually running anything on save/load.

The only problem I've run into is that it can take a while for all of the contracts to actually load and the GameEvents.Contract.onContractsLoaded event bafflingly fires before the contracts are actually loaded instead of after. My not-very reliable solution has been to simply wait a second or so after the event fires before I start trying to match up saved GUIDs to loaded contracts; it doesn't work very well...

Link to comment
Share on other sites

Well, here's version 0.0.1. Unfortunately, the config file is nonsensical and intended solely for debugging purposes, but in the next week or so, I'll see about preliminary config files for RSS and 6.4x.

Please, please put up a post if you think a contract's not getting properly adjusted. There is so much crazy special-case handling for different types of contracts and parameters that I might have slipped in a typo or something.

For any contract mod authors who want to make their mod compatible with Renegotiator, the easiest way is to add an rnSit value to your contracts' and parameters' ConfigNodes. This can have the following values, and will easily tell Renegotiator which multiplier to apply.

LANDED, LAND_AND_RETURN, OTHER_LANDED, ATMOSPHERE, ATMO_AND_RETURN, OTHER_ATMO, SUBORBIT, ORBIT, ORBIT_AND_RETURN, GEOSYNC, GEOSTAT, MOLNIYA, TUNDRA, FLYBY (note that Flyby is equivalent to being on an escape trajectory).

EDIT: That estimate of a week was a blatant lie. It's taking longer than I thought to get the stock dV values, because I'm assuming basic competency: for example, instead of circularizing around Eve and then transferring to Gilly, aerobraking directly to a Gilly-crossing orbit. This involves a scary amount of research into Keplerian orbital mechanics. My easily distracted nature doesn't help.

Edited by Starman4308
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...