Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: KSP-RO/RP-1
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 721a2ebd1dd9
Choose a base ref
...
head repository: KSP-RO/RP-1
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 26e6fcd7e8f6
Choose a head ref
  • 2 commits
  • 8 files changed
  • 1 contributor

Commits on Apr 12, 2018

  1. Add contracts for Navigational Satellites

    The first generation use a new payload type, NavSatPayload, which is of much
     lower density than the other payloads (this is to match the mass and volume
     of the early Transit series of satellites).
    The second generation (timing-based) use ComSatPayload, thus minimising the
     changes needed to the GPS and GLONASS contracts which are now moved into
     the navsats group.
    
    Why add these contracts?  To add a bit more variety when grinding satellite
     launches, mainly.
    ec429 committed Apr 12, 2018
    Copy the full SHA
    3bf4775 View commit details

Commits on Oct 6, 2018

  1. Merge pull request #874 from ec429/navsat

    Add contracts for Navigational Satellites
    ec429 authored Oct 6, 2018
    Copy the full SHA
    26e6fcd View commit details
100 changes: 100 additions & 0 deletions GameData/RP-0/Contracts/Early Satellites/First Nav Sat.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
CONTRACT_TYPE
{
name = FirstNavSat
title = First Navigational Satellite // Based on Transit 1 through 4
group = EarlySatellites
agent = Federation Aeronautique Internationale

description = Through measuring the Doppler shift of radio signals transmitted from a satellite in a known orbit, it is possible for a receiver on the ground to establish their location, which would have many applications both civilian and military. To test the principle and develop receiver equipment, it is necessary to have a test navigational satellite in orbit. Be sure to include solar panels and/or an RTG to generate power. Historically, the first experiments in satellite navigation were made with Transit 1B (119kg, Thor-Ablestar).

synopsis = Launch the first navigation satellite

completedMessage = Congratulations! The satellite is in orbit and we have already begun to receive Doppler curves.

sortKey = 410

cancellable = false
declinable = false
autoAccept = false
minExpiry = 0
maxExpiry = 0
maxCompletions = 1
maxSimultaneous = 1
deadline = 365 // 1 year

targetBody = HomeWorld()


// ************ REWARDS ************
prestige = Trivial // 1.0x
advanceFunds = 5000
rewardScience = 0
rewardReputation = 5
rewardFunds = 10000
failureReputation = 2
failureFunds = 5000

// ************ REQUIREMENTS ************

REQUIREMENT
{
name = CompleteContract
type = CompleteContract
contractType = FirstSolarSat
title = Complete @contractType Contract
}

PARAMETER
{
name = FirstNavSat
type = VesselParameterGroup
title = First Navigational Satellite
define = FirstNavSat

PARAMETER
{
name = NewVessel
type = NewVessel
title = Launch a New Vessel
hideChildren = true
}
PARAMETER
{
name = Crewmembers
type = HasCrew
minCrew = 0
maxCrew = 0
title = Uncrewed
hideChildren = true
}
PARAMETER
{
name = HasNavSatPayload
type = HasResource
resource = NavSatPayload
minQuantity = 100
title = Have a NavSatPayload of at least @minQuantity units on the craft
}
PARAMETER
{
name = Orbit
type = Orbit
minInclination = 45
minPeA = 300000
disableOnStateChange = true
title = Achieve Orbit with a minimum inclination of 45 degrees and a minimum Perigee of 300 km

PARAMETER
{
name = Duration
type = Duration

duration = 2m

preWaitText = Check for Stable Orbit
waitingText = Checking for Stable Orbit
completionText = Stable Orbit: Confirmed
}
}
}
}
8 changes: 8 additions & 0 deletions GameData/RP-0/Contracts/Groups.cfg
Original file line number Diff line number Diff line change
@@ -77,6 +77,14 @@ CONTRACT_GROUP
agent = Satellites
}
CONTRACT_GROUP
{
name = NavSats
displayName = Navigational Satellite Contracts
minVersion = 1.22.2
sortKey = 55
agent = Satellites
}
CONTRACT_GROUP
{
name = HumanMilestones
displayName = Human Milestones
110 changes: 110 additions & 0 deletions GameData/RP-0/Contracts/Nav Sats/Early Nav Sats.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,110 @@
CONTRACT_TYPE
{
name = EarlyNavSats
title = Early Navigation Satellite // Representative of Transit 4 and 5 series
group = NavSats


description = Our engineers are once again requesting a new navigational satellite test article. Please place one into the proper orbit around Earth. This contract can be completed up to 4 times.

synopsis = Launch a navigational satellite into the proper orbit

completedMessage = Success! We are getting more Doppler curves to refine our navigation algorithms.

sortKey = 550

cancellable = true
declinable = true
autoAccept = false
minExpiry = 0
maxExpiry = 0
maxCompletions = 4
maxSimultaneous = 1
deadline = 365 // 1 year

targetBody = HomeWorld()


prestige = Trivial // 1.0x
advanceFunds = 10000
rewardScience = 0
rewardReputation = 10
rewardFunds = 5000
failureReputation = 10
failureFunds = 20000

// ************ REQUIREMENTS ************

REQUIREMENT
{
name = CompleteContract
type = CompleteContract
contractType = FirstNavSat
title = Complete @contractType Contract
}
REQUIREMENT
{
name = CompleteContract
type = CompleteContract
contractType = OperationalNavSats
title = Has not Completed @contractType Contract
invertRequirement = true
}

// ************ PARAMETERS ************

PARAMETER
{
name = EarlyNavSat
type = VesselParameterGroup
title = Early Navigational Satellite

PARAMETER
{
name = NewVessel
type = NewVessel
title = Launch a New Vessel
hideChildren = true
}
PARAMETER
{
name = Crewmembers
type = HasCrew
minCrew = 0
maxCrew = 0
title = Uncrewed
hideChildren = true
}
PARAMETER
{
name = HasNavSatPayload
type = HasResource
resource = NavSatPayload
minQuantity = 60
title = Have a NavSatPayload of at least @minQuantity units on the craft
}
PARAMETER
{
name = Orbit
type = Orbit
minPeA = 800000
maxApA = 1000000
minInclination = 64.0
maxInclination = 70.0
disableOnStateChange = true
title = Achieve an orbit within the stated parameters

PARAMETER
{
name = Duration
type = Duration

duration = 2m

preWaitText = Check for Stable Orbit
waitingText = Checking for Stable Orbit
completionText = Stable Orbit: Confirmed
}
}
}
}
Original file line number Diff line number Diff line change
@@ -2,7 +2,7 @@ CONTRACT_TYPE
{
name = GLONASSnetwork
title = GLONASS Network
group = AdvSatellites
group = NavSats
agent = GLONASS

description = Using satellites positioned in specific orbits and locations, we can create a system that will provide geolocation and navigation all over Earth. Anywhere on Earth that has line of sight to 4 or more GLONASS satellites will be able to get their precise location.\n\nThis is not a contract to be undertaken lightly. It requires you to launch 24 satellites into 3 different and specific orbits, and to complete it all within six years. Each satellite is required to be able to communicate with all other satellites (only requires one omni-directional antenna) as well as the ground stations. The payout is definitely worth it, but the penalty for failure may bankrupt your space program.\n\n<b><color=white>NOTE: You can only select this contract or the GPS Network contract.</color></b>
@@ -11,7 +11,7 @@ CONTRACT_TYPE

completedMessage = Congratulations! With the GLONASS Network fully operational, we now have access to pinpoint location information around the world. What could we possibly use this technology for?

sortKey = 904
sortKey = 554

cancellable = true
declinable = true
@@ -43,6 +43,14 @@ CONTRACT_TYPE
title = Complete @contractType Contract
}
REQUIREMENT
{
name = CompleteContract
type = CompleteContract
contractType = SecondGenNavSats
title = Complete All @contractType Contracts
minCount = 3
}
REQUIREMENT
{
name = CompleteContract
type = CompleteContract
@@ -9699,4 +9707,4 @@ CONTRACT_TYPE
waitingText = Performing shake-out testing
completionText = Shake-out testing completed
}
}
}
Original file line number Diff line number Diff line change
@@ -2,7 +2,7 @@ CONTRACT_TYPE
{
name = GPSnetwork
title = GPS Network
group = AdvSatellites
group = NavSats
agent = GPS

description = Using satellites positioned in specific orbits and locations, we can create a system that will provide geolocation and navigation all over Earth. Anywhere on Earth that has line of sight to 4 or more GPS satellites will be able to get their precise location.\n\nThis is not a contract to be undertaken lightly. It requires you to launch 24 satellites into 6 different and specific orbits, and to complete it all within five years. Each satellite is required to be able to communicate with all other satellites (only requires one omni-directional antenna) as well as the ground stations. The payout is definitely worth it, but the penalty for failure may bankrupt your space program.\n\n<b><color=white>NOTE: You can only select this contract or the GLONASS Network contract.</color></b>
@@ -11,7 +11,7 @@ CONTRACT_TYPE

completedMessage = Congratulations! With the GPS Network fully operational, we now have access to pinpoint location information around the world. What could we possibly use this technology for?

sortKey = 903
sortKey = 553

cancellable = true
declinable = true
@@ -43,6 +43,14 @@ CONTRACT_TYPE
title = Complete @contractType Contract
}
REQUIREMENT
{
name = CompleteContract
type = CompleteContract
contractType = SecondGenNavSats
title = Complete All @contractType Contracts
minCount = 3
}
REQUIREMENT
{
name = CompleteContract
type = CompleteContract
@@ -9741,4 +9749,4 @@ CONTRACT_TYPE
waitingText = Performing shake-out testing
completionText = Shake-out testing completed
}
}
}
Loading