Skip to content

Commit

Permalink
Rework GEOCommNetwork Program (#2275)
Browse files Browse the repository at this point in the history
  • Loading branch information
Ballatik authored Apr 8, 2024
1 parent 11416c3 commit a94bacb
Show file tree
Hide file tree
Showing 17 changed files with 2,590 additions and 717 deletions.
143 changes: 143 additions & 0 deletions GameData/RP-1/Contracts/Commercial Applications 2/FirstGEOSat.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,143 @@
CONTRACT_TYPE
{
name = FirstGEOSat
title = Geostationary Test Satellite
group = CommApp2
agent = Federation Aeronautique Internationale

description = <b>Program: Advanced Commercial Applications<br>Type: <color=green>Required</color></b><br><br>Having a communication satellite that remains stationary relative to a ground station means that the antenna wouldn't need to track movements to stay connected. This would greatly simplify communication relay and mass transmission systems.<br>Historical example: Syncom 3 (39 kg, Thor-Delta) launched in August of 1964.<b>
synopsis = Launch a test satellite into a Geostationary Orbit
completedMessage = Congratulations! The satellite is in orbit over a constant area.
sortKey = 503
cancellable = true
declinable = false
autoAccept = false
minExpiry = 0
maxExpiry = 0
maxCompletions = 1
maxSimultaneous = 1
deadline = 0
targetBody = HomeWorld()
// ************ REWARDS ************
prestige = Trivial // 1.0x
advanceFunds = 0
rewardScience = 0
rewardFunds = 0
failureFunds = 0
rewardReputation = 60
failureReputation = 0 // was @rewardReputation
// ************ REQUIREMENTS ************
REQUIREMENT
{
name = CommApp or GEOComm active
type = Any
REQUIREMENT
{
name = ProgramActive
type = ProgramActive
program = GEOCommNetwork
}
REQUIREMENT
{
name = ProgramActive
type = ProgramActive
program = CommercialApplications2
}
}
REQUIREMENT
{
name = AcceptContract
type = AcceptContract
contractType = FirstGeosync
invertRequirement = true
}
REQUIREMENT
{
name = AcceptContract
type = AcceptContract
contractType = FirstTargetedMolniya
invertRequirement = true
}
REQUIREMENT
{
name = AcceptContract
type = AcceptContract
contractType = FirstTundraSat
invertRequirement = true
}
REQUIREMENT
{
name = AcceptContract
type = AcceptContract
contractType = FirstTargetedTundra
invertRequirement = true
}
PARAMETER
{
name = GeostationarySat
type = VesselParameterGroup
title = Geostationary satellite
define = Geostationary
dissassociateVesselsOnContractCompletion = true
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 = GenerateEC
title = Have positive energy balance
type = ResourceConsumption
resource = ElectricCharge
minRate = -1000000
maxRate = 0.00001
hideChildren = true
}
PARAMETER
{
name = Reach Specifit Orbit
type = Orbit
maxInclination = 2
maxEccentricity = 0.01
minPeriod = 23h 54m
maxPeriod = 23h 58m
disableOnStateChange = false
title = Achieve a Geostationary 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
}
}
}
}
138 changes: 138 additions & 0 deletions GameData/RP-1/Contracts/Commercial Applications 2/FirstGeosync.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,138 @@
CONTRACT_TYPE
{
name = FirstGeosync
title = Geosynchronous Test Satellite
group = CommApp2
agent = Federation Aeronautique Internationale

description = <b>Program: Advanced Commercial Applications<br>Type: <color=blue>Optional</color></b><br><br>With an orbital period of an earth day, a satellite will remain above a constant longitude, appearing to drift north and south through the day. This will allow for constant connection to a ground station.<br>Historical example: Syncom 2 (39kg, Thor-Delta) launched in July of 1963.<b>

synopsis = Launch a geosynchronous test satellite

completedMessage = Congratulations! The satellite is in orbit and connected to the groundstation.

sortKey = 409

cancellable = true
declinable = false
autoAccept = false
minExpiry = 0
maxExpiry = 0
maxCompletions = 1
maxSimultaneous = 1
deadline = 0

targetBody = HomeWorld()


// ************ REWARDS ************
prestige = Trivial // 1.0x
advanceFunds = 0
rewardScience = 0
rewardFunds = 0
failureFunds = 0
rewardReputation = 60
failureReputation = 0 // was @rewardReputation

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

REQUIREMENT
{
name = ProgramActive
type = ProgramActive
program = CommercialApplications2
}
REQUIREMENT
{
name = AcceptContract
type = AcceptContract
contractType = FirstGEOSat
invertRequirement = true
}
REQUIREMENT
{
name = CompleteContract
type = CompleteContract
contractType = FirstGEOSat
invertRequirement = true
}
REQUIREMENT
{
name = AcceptContract
type = AcceptContract
contractType = FirstTargetedMolniya
invertRequirement = true
}
REQUIREMENT
{
name = AcceptContract
type = AcceptContract
contractType = FirstTundraSat
invertRequirement = true
}
REQUIREMENT
{
name = AcceptContract
type = AcceptContract
contractType = FirstTargetedTundra
invertRequirement = true
}

PARAMETER
{
name = FirstGeosync
type = VesselParameterGroup
title = First Geosynchronous Satellite
define = FirstGeosync
dissassociateVesselsOnContractCompletion = true

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 = GenerateEC
title = Have positive energy balance
type = ResourceConsumption
resource = ElectricCharge
minRate = -1000000
maxRate = 0.00001
hideChildren = true
}
PARAMETER
{
name = Orbit
type = Orbit
maxEccentricity = 0.05
minPeriod = 23h 54m
maxPeriod = 23h 58m
disableOnStateChange = false
title = Achieve a Geosynchronous orbit with low eccentricity

PARAMETER
{
name = Duration
type = Duration

duration = 2m

preWaitText = Check for stable orbit
waitingText = Checking for stable orbit
completionText = Stable orbit: Confirmed
}
}
}
}
Loading

0 comments on commit a94bacb

Please sign in to comment.