Your browser lacks required capabilities. Please upgrade it or switch to another to continue.
Loading…
! A fight breaks out!
''$adversary.name (health: //$adversary.health//, speed: //$adversary.speed//x) engages their weapons and prepares for combat.''
<<switch visitedTags("Battle")>>
<<case 1>>
This is your first time experiencing real combat. Your heart rate increases as you begin to focus solely on the threat to your ship's 12 o'clock. "Relax; it'll be just like in the simulator," you think to yourself as you try to forget that, here, failure has real consequences.
<<case 2>>
Still inexperienced in combat, you once again feel the familiar increase in heart rate. Thoughts of the consequences of failure are notably and relievingly absent from your mind, however, as you arm your ship's weapon systems and begin to engage the foe.
<<default>>
A veteran of combat by now, your thumb calmly moves from the side of the flight stick to flick the red cap protecting the switch labeled "{{{Engage weapon systems}}}". A faint hum — audible only in the total silence of space — can be heard in the cockpit as the ship's computer redirects power from the aft reactor.
<</switch>>\
<<silently>>
<<set $health to $maxHealth>>
<<set $weaponSelected to "weapon1">>
<<set $shieldPowerMax to 2>>
<<set $shieldPower to $shieldPowerMax>>
<<set $fightWon to false>>
<<set $nonUserDisable to false>>
<</silently>>\
<div class="horizonal">\
<section>\
!!Shields (available power: //@@#power;$shieldPower@@//):
<<button "Enabled (power draw: 2)">>
<<if $shieldPowerMax gte 2>>
<<set $shieldPower = $shieldPowerMax - 2>>
<<prepend "#status">>You set the shields to full power
<</prepend>>
<<replace "#power">>$shieldPower<</replace>>
<<removeclass "#shield-full-indicator" "hidden">>
<<addclass "#shield-half-indicator" "hidden">>
<<addclass "#shield-off-indicator" "hidden">>
<<else>>
<<prepend "#status">>Having sustained too much damage, your shields can no longer be set to full power
<</prepend>>
<</if>>
<</button>><span class="shield-status hidden" id="shield-full-indicator">←</span>
<<button "Half-power (power draw: 1)">>
<<if $shieldPowerMax gte 1>>
<<set $shieldPower = $shieldPowerMax - 1>>
<<prepend "#status">>You set the shields to half power
<</prepend>>
<<replace "#power">>$shieldPower<</replace>>
<<addclass "#shield-full-indicator" "hidden">>
<<removeclass "#shield-half-indicator" "hidden">>
<<addclass "#shield-off-indicator" "hidden">>
<<else>>
<<prepend "#status">>Having sustained too much damage, your shields can no longer be set to half power
<</prepend>>
<</if>>
<</button>><span class="shield-status hidden" id="shield-half-indicator">←</span>
@@#shieldsDisabled;
<<button "Disabled (power draw: 0)">>
<<set $shieldPower = $shieldPowerMax - 0>>
<<if $nonUserDisable>>
<<prepend "#status">>A direct hit temporarily disables and reduces the amount of power that you can dedicate to your shields
<</prepend>>
<<set $nonUserDisable to false>>
<<else>>
<<prepend "#status">>You disable the shields
<</prepend>>
<</if>>
<<replace "#power">>$shieldPower<</replace>>
<<addclass "#shield-full-indicator" "hidden">>
<<addclass "#shield-half-indicator" "hidden">>
<<removeclass "#shield-off-indicator" "hidden">>
<</button>><span class="shield-status" id="shield-off-indicator">←</span>
@@
</section>\
<section>\
!!Weapons:
<<radiobutton "$weaponSelected" "weapon1" checked>> $weapon1.name (Damage: //$weapon1.damage//)
<<radiobutton "$weaponSelected" "weapon2">> $weapon2.name (Damage: //$weapon2.damage//)
<<radiobutton "$weaponSelected" "weapon3">> $weapon3.name (Damage: //$weapon3.damage//)
@@#fire;
Charge: <progress id="charge" value="100" max="100"></progress>
<<button "Fire!">>
<<set $weapon to null>>
<<switch $weaponSelected>>
<<case "weapon1">>
<<set $weapon to $weapon1>>
<<case "weapon2">>
<<set $weapon to $weapon2>>
<<case "weapon3">>
<<set $weapon to $weapon3>>
<</switch>>
<<set $adversary.health -= $weapon.damage>>
<<if $adversary.health < 0>>
<<set $adversary.health = 0>>
<</if>>
<<if not $fightWon>>
<<replace "#enemyhealth">>$adversary.health<</replace>>
<</if>>
<<if $adversary.health lte 0 and not $fightWon>>
<<set $fightWon to true>>
<<script>>clearTimeout(window.attackTimeout);<</script>>
<<prepend "#status">>You emerge victorious from the battle!
<</prepend>>
<<removeclass "#continue" "hidden">>
<<elseif $fightWon>>
<<prepend "#status">>As you command, your $weapon.name fires at the shapeless remaining debris, depleting your reactor power even more. Had the captain seen this, he would have disciplined you for a negligent discharge of your weapons.
<</prepend>>
<<addclass "#fire" "hidden">>
<<else>>
<<prepend "#status">>You fire a salvo from your $weapon.name causing $weapon.damage damage to $adversary.name (health: //$adversary.health//)
<</prepend>>
<</if>>
<<script>>fire();<</script>>
<</button>>
@@
</section>\
</div>\
\
!!Battle status
Your health: //<span id="yourhealth">$health</span>// | $adversary.name health: //<span id="enemyhealth">$adversary.health</span>//\
<span id="continue" class="hidden">[[Defeating this Zaribian fleet will surely mean war between your two worlds. Train and prepare for eventual war.|19 - Train and prepare]]</span>\
<span id="failure" class="hidden">[[Try diplomacy|6 - Diplomacy]] or [[Seek vengeance|7 - Vengeance]]</span>\
@@#status;
$adversary.name (health: //$adversary.health//) begins to fight with you
@@
<<script>>
var charge = 100;
const rechargeTime = 1500;
var rechargeInterval;
window.fire = function() {
var progress = document.getElementById("charge");
var fireButton = document.querySelector("#fire > button");
charge = 0;
fireButton.disabled = true;
rechargeInterval = setInterval(function() {
charge++;
progress.value = charge;
if (charge >= 100) {
fireButton.disabled = false;
clearInterval(rechargeInterval);
}
}, rechargeTime / 100 * State.variables.weapon.recharge);
}
function getFightTime() {
return (Math.random() * 1000 * 1) + (1000 * 1.5);
}
window.fight = function() {
var statusPanel = document.getElementById("status");
// Potentially disable shields
var shieldsDisabled = false;
if (State.variables.shieldPowerMax > 0) {
if (Math.random() < 0.1) {
shieldsDisabled = true;
State.variables.nonUserDisable = true;
State.variables.shieldPowerMax--;
document.querySelector("#shieldsDisabled > button").click();
}
}
// Potentially disable active weapon
// Reduce the player's health
var healthReduce = Math.round((Math.random() * 50));
healthReduce -= (State.variables.shieldPowerMax - State.variables.shieldPower) * 20;
if (healthReduce < 0) healthReduce = 0;
State.variables.health -= healthReduce;
document.getElementById("yourhealth").textContent = State.variables.health < 0 ? 0 : State.variables.health;
if (State.variables.health <= 0) {
State.variables.health = 0;
State.variables.gameOver = true;
document.querySelector("#fire > button").disabled = true;
statusPanel.innerHTML = `${State.variables.adversary.name} fires and scores a direct hit. Your ship begins to disintegrate around you and you soon find yourself injured and drifting alone in the vast, dark, silent expanse of space. You can only hope that your distress beacon works and that a friendly ship will find you. The captain is now surely lost for good.<br /><br />${statusPanel.innerHTML}`;
document.getElementById("failure").classList.remove("hidden");
return;
}
var shieldMessage = `${(State.variables.shieldPowerMax - State.variables.shieldPower) * 20} deflected by shields`;
statusPanel.innerHTML = `${State.variables.adversary.name} fires and reduces your health by ${healthReduce} (${shieldMessage})<br />${statusPanel.innerHTML}`;
if (!State.variables.gameOver && !State.variables.fightWon) {
window.attackTimeout = setTimeout(fight, getFightTime());
}
}
window.attackTimeout = setTimeout(fight, getFightTime() + 1000);
<</script>>!Loading...
<<set $karma to 0>>
<<set $maxHealth to 1000>>
<<set $health to $maxHealth>>
<<set $gameOver to false>>
<<set $weapon1 to {
"name": "Plasma cannon",
"damage": 100,
"recharge": 1 // Multiplier (larger = slower)
}>>
<<set $weapon2 to {
"name": "Phased laser array",
"damage": 50,
"recharge": 0.3
}>>
<<set $weapon3 to {
"name": "Photon torpedo",
"damage": 650,
"recharge": 5
}>>
<<cacheaudio "generalquarters" "https://upload.wikimedia.org/wikipedia/commons/3/3f/General_quarters.ogg">>
<<waitforaudio>>
<<goto [[1 - Intro]]>><<set $adversary to {
"name": "Boss " + (visited() + 1),
"health": 1000,
"speed": 1 // Speed multiplier
}>>
[[Battle again|Raw Battle]]<h1 style="text-align: center;"><em>Per Ardua Ad Astra</em></h1>\
The sun slowly peeks above the horizon in the morning’s early hours on Cygnus, advancing almost imperceptibly ever higher in the sky. The sun’s slow progress across its arc draws your eye upward as you open the door to your modest house and wave a last goodbye to your wife and kids.
“Stay safe, Rick!” your wife says.
“Don’t worry, I will,” you try to reassure her. After all, Cygnus forces had largely avoided conflict since the Troubled Times nearly fifteen years ago. Or was it sixteen? Frustratingly, the correct date eludes you.
Once again your eye is drawn to the rising sun and the red, orange, and yellow hues that it paints across the clouds. Sunrises always looked so beautiful from down here, on solid ground, you think to yourself. The vastness of space sometimes seemed comparatively boring with its infinite and uniform blackness. Sometimes you wonder what life would have been like had you not decided to join the Cygnus Space Corps, living a more //normal// life on the planet’s surface.
Arriving at the Ramstein Air and Space station, you are greeted by your superior for this deployment, Captain Ron. Together, you and him will be the highest ranking officers aboard the //Kestrel//, a //Burke//-class destroyer tasked with defending Cygnus its allied planet’s region of space.
The //Kestrel// lifts off at approximately 11:30 AM with 303 total officers and enlisted crew aboard as the sun is just slowly approaching its zenith. From the bridge, you watch as the ship pulls further away from home and is gradually enveloped in the vastness of space.
As the ship’s autopilot kicks in, the captain offers to take the first watch. You didn’t get much sleep last night; a nap could do you well.
[[Decline and take the first watch.|2A - Go on watch]]
[[Accept and take a short nap.|2B - Don't go on watch]]<<set $karma += 1>>\
You might be a bit tired but you shake it off. With the captain heading off to sleep, you are now the highest ranking officer on the //Kestrel//’s bridge. You grab a pair of binoculars and settle into your four hour watch. Time ticks by on the bridge’s clock as you scan the vastness for obstacles and other ships.
All of a sudden, a fleet of ships exits warp space directly in front of the //Kestrel//. You strain to make out the markings and make the horrifying realization that these ships bear Zaribian markings – and have armed their weapons. <<linkappend "You urgently sound general quarters.">>
<<audio "generalquarters" volume 0 fadeto 0.8>>
<<display "2C - Abduction">>
<</linkappend>><<set $karma -= 1>>\
<<audio "generalquarters" volume 0 fadeto 0.8>>\
You awake from a nightmare to the sounding of general quarters. For a moment, you don’t recognize where you are. Then your training kicks in and you dash to the bridge to see what has happened.
A fleet of ships has exited warp space directly in front of the Kestrel. You strain to make out the markings and make the horrifying realization that these ships bear Zaribian markings – and have armed their weapons.
<<display "2C - Abduction">>Before you can charge the ship’s shields, the Zaribian fleet fires a salvo of photon torpedoes that severely damages the central reactor, rendering most of the //Kestrel//’s weapons useless. The captain and you look at each other and realize what has happened. For the first time in more than 15 years, Cygnus is at war. You sound the call to abandon ship and begin to make your way to an escape pod. Despite your pleas, the captain does not follow. As blasts of laser fire rain down on the ship’s remaining defenses, he says he must bear the responsibility and go down with his beloved ship.
The escape pod makes a loud //thunk// as it abruptly exits the starboard tube and leaves you alone and in total silence. You float away from battle joined by hundreds of other escape pods. In the distance, you can make out the remains of the Kestrel – your ship – among the enemy fleet.
A Zaribian ship cautiously nears the //Kestrel//, drawing in a figure from within the ship with its tractor beam. You realize in horror that this figure is the captain but are powerless to help. The captain now aboard, the Zaribian fleet vanishes as quickly as it had appeared, leaving you and 301 other crew alone in the vastness of space.
A passing Cygnus cargo ship is the first to respond to the distress call. When you return home, you are overcome with grief over what has transpired. How could you have prevented this tragedy? Will you ever see the captain again? Grief turns to anger as you plot your path forward.
<<set $adversary to {
"name": "Zaribian Fleet",
"health": 10000,
"speed": 1 // Speed multiplier
}>>\
[[Try to save the captain.|Battle 1]]
[[Prepare, train, wait for reinforcements.|5 - Captain killed]]You set out to receive the best training on the planet. Months of waking up at the crack of dawn, shooting practice, hand-to-hand combat, pilot training, and interrogation skills are sure to prove useful in the coming mission. But right as you are readying to set out and attack Zarib, you receive word that Captain Ron, after weeks of torture, has given up vital information and has been killed.
All of your training has been in vain. You could have gone after Ron earlier and potentially saved his life. He tried to hold out as along as he could, hoping that someone would save him. But you never came. His death is on your hands.
When you get home you find a package at your door. You open it up and it’s none other than Ron’s head, severed from his body, beaten and bruised, scratched all over--an ugly sight to say the least. How could you allow this to happen? Ron was your friend, your mentor, and now he’s dead because of you. And now the enemy knows where you live. Did Ron give you up? Are they going to come after you next? Is your family safe?
You quickly run through your options, looking for a way out of this mess of a situation.
[[Unsure of the enemy’s current intel and fearful of their large and aggressive military, you propose to find a diplomatic solution and seek peace.|6 - Diplomacy]]
[[Angry that the Zaribians killed the Captain and may come after you next, you decide to take vengeance and strike at them first.|7 - Vengeance]]You won the battle, but this was an act of war. You prepare to attack the enemy to wipe them out once and for all.
You commandeer a shuttle as part of your plan. The shuttle is small enough to get past the security blockade around Zarib without being detected. With enough luck, perhaps you could get the shuttle to land close enough to the Zaribian royal city to sneak in and assassinate their leader. The Zarib would likely descend into civil war as a result of the different factions fighting to claim power, rendering them unable to muster the strength and resources necessary for a war with Cygnus.
[[Fly to Zarib to attempt an assassination.|8 - Assassination]]<<set $karma += 1>>\
You decide to attempt a diplomatic resolution to the conflict. The enemy might be provocative, but even they must surely be willing to avoid a war that would cause them heavy losses regardless of the final outcome. It’s what the captain would have done.
You get onto the civilian shuttle hired to take you to the meeting location. As the shuttle exits the atmosphere, you grow increasingly nervous. The lives of many billions lie in your ability to successfully execute a diplomatic arrangement with the Zaribians. Cygnian civilization could go extinct if you fail.
“Why me?” The question burns itself into your mind like a branding iron. When you joined the academy fifteen years ago, all you wanted to be was a fighter pilot. You had no ambition, no dream of commanding thousands of men, let alone being in command of the destiny of your entire planet. Did Captain Ron see something within you, some flicker of leadership, when he selected you to be his First Officer on that fateful day? As the shuttle begins accelerating to hyperbolic transorbital trajectory, you can only hope that the captain chose his successor carefully.
Suddenly, a dark, but possibly brilliant, thought crosses your mind. The shuttle is small enough to get past the security blockade around Zarib without being detected. With enough luck, perhaps you could get the shuttle to land close enough to the Zaribian royal city to sneak in and assassinate their leader. The Zarib would likely descend into civil war as a result of the different factions fighting to claim power, rendering them unable to muster the strength and resources necessary for a war with Cygnus. But such a rash decision could also destroy any hope of diplomatic resolution, and would disobey your direct orders.
[[Follow your orders.|6C - Neutral meeting]]
[[Go behind enemy lines.|6B - Smuggler]]! A fight breaks out!
''$adversary.name (health: //$adversary.health//, speed: //$adversary.speed//x) engages their weapons and prepares for combat.''
<<switch visitedTags("Battle")>>
<<case 1>>
This is your first time experiencing real combat. Your heart rate increases as you begin to focus solely on the threat to your ship's 12 o'clock. "Relax; it'll be just like in the simulator," you think to yourself as you try to forget that, here, failure has real consequences.
<<case 2>>
Still inexperienced in combat, you once again feel the familiar increase in heart rate. Thoughts of the consequences of failure are notably and relievingly absent from your mind, however, as you arm your ship's weapon systems and begin to engage the foe.
<<default>>
A veteran of combat by now, your thumb calmly moves from the side of the flight stick to flick the red cap protecting the switch labeled "{{{Engage weapon systems}}}". A faint hum — audible only in the total silence of space — can be heard in the cockpit as the ship's computer redirects power from the aft reactor.
<</switch>>\
<<silently>>
<<set $weaponSelected to "weapon1">>
<<set $shieldPowerMax to 2>>
<<set $shieldPower to $shieldPowerMax>>
<<set $fightWon to false>>
<<set $nonUserDisable to false>>
<</silently>>\
<div class="horizonal">\
<section>\
!!Shields (available power: //@@#power;$shieldPower@@//):
<<button "Enabled (power draw: 2)">>
<<if $shieldPowerMax gte 2>>
<<set $shieldPower = $shieldPowerMax - 2>>
<<prepend "#status">>You set the shields to full power
<</prepend>>
<<replace "#power">>$shieldPower<</replace>>
<<removeclass "#shield-full-indicator" "hidden">>
<<addclass "#shield-half-indicator" "hidden">>
<<addclass "#shield-off-indicator" "hidden">>
<<else>>
<<prepend "#status">>Having sustained too much damage, your shields can no longer be set to full power
<</prepend>>
<</if>>
<</button>><span class="shield-status hidden" id="shield-full-indicator">←</span>
<<button "Half-power (power draw: 1)">>
<<if $shieldPowerMax gte 1>>
<<set $shieldPower = $shieldPowerMax - 1>>
<<prepend "#status">>You set the shields to half power
<</prepend>>
<<replace "#power">>$shieldPower<</replace>>
<<addclass "#shield-full-indicator" "hidden">>
<<removeclass "#shield-half-indicator" "hidden">>
<<addclass "#shield-off-indicator" "hidden">>
<<else>>
<<prepend "#status">>Having sustained too much damage, your shields can no longer be set to half power
<</prepend>>
<</if>>
<</button>><span class="shield-status hidden" id="shield-half-indicator">←</span>
@@#shieldsDisabled;
<<button "Disabled (power draw: 0)">>
<<set $shieldPower = $shieldPowerMax - 0>>
<<if $nonUserDisable>>
<<prepend "#status">>A direct hit temporarily disables and reduces the amount of power that you can dedicate to your shields
<</prepend>>
<<set $nonUserDisable to false>>
<<else>>
<<prepend "#status">>You disable the shields
<</prepend>>
<</if>>
<<replace "#power">>$shieldPower<</replace>>
<<addclass "#shield-full-indicator" "hidden">>
<<addclass "#shield-half-indicator" "hidden">>
<<removeclass "#shield-off-indicator" "hidden">>
<</button>><span class="shield-status" id="shield-off-indicator">←</span>
@@
</section>\
<section>\
!!Weapons:
<<radiobutton "$weaponSelected" "weapon1" checked>> $weapon1.name (Damage: //$weapon1.damage//)
<<radiobutton "$weaponSelected" "weapon2">> $weapon2.name (Damage: //$weapon2.damage//)
<<radiobutton "$weaponSelected" "weapon3">> $weapon3.name (Damage: //$weapon3.damage//)
@@#fire;
Charge: <progress id="charge" value="100" max="100"></progress>
<<button "Fire!">>
<<set $weapon to null>>
<<switch $weaponSelected>>
<<case "weapon1">>
<<set $weapon to $weapon1>>
<<case "weapon2">>
<<set $weapon to $weapon2>>
<<case "weapon3">>
<<set $weapon to $weapon3>>
<</switch>>
<<set $adversary.health -= $weapon.damage>>
<<if $adversary.health < 0>>
<<set $adversary.health = 0>>
<</if>>
<<if not $fightWon>>
<<replace "#enemyhealth">>$adversary.health<</replace>>
<</if>>
<<if $adversary.health lte 0 and not $fightWon>>
<<set $fightWon to true>>
<<script>>clearTimeout(window.attackTimeout);<</script>>
<<prepend "#status">>You emerge victorious from the battle!
<</prepend>>
<<removeclass "#continue" "hidden">>
<<elseif $fightWon>>
<<prepend "#status">>As you command, your $weapon.name fires at the shapeless remaining debris, depleting your reactor power even more. Had the captain seen this, he would have disciplined you for a negligent discharge of your weapons.
<</prepend>>
<<addclass "#fire" "hidden">>
<<else>>
<<prepend "#status">>You fire a salvo from your $weapon.name causing $weapon.damage damage to $adversary.name (health: //$adversary.health//)
<</prepend>>
<</if>>
<<script>>fire();<</script>>
<</button>>
@@
</section>\
</div>\
\
!!Battle status
Your health: //<span id="yourhealth">$health</span>// | $adversary.name health: //<span id="enemyhealth">$adversary.health</span>//
<span id="continue" class="hidden"></span>
<span id="failure" class="hidden"></span>
@@#status;
$adversary.name (health: //$adversary.health//) begins to fight with you
@@
<<script>>
var charge = 100;
const rechargeTime = 1500;
var rechargeInterval;
window.fire = function() {
var progress = document.getElementById("charge");
var fireButton = document.querySelector("#fire > button");
charge = 0;
fireButton.disabled = true;
rechargeInterval = setInterval(function() {
charge++;
progress.value = charge;
if (charge >= 100) {
fireButton.disabled = false;
clearInterval(rechargeInterval);
}
}, rechargeTime / 100 * State.variables.weapon.recharge);
}
function getFightTime() {
return (Math.random() * 1000 * 1) + (1000 * 1.5);
}
window.fight = function() {
var statusPanel = document.getElementById("status");
// Potentially disable shields
var shieldsDisabled = false;
if (State.variables.shieldPowerMax > 0) {
if (Math.random() < 0.15) {
shieldsDisabled = true;
State.variables.nonUserDisable = true;
State.variables.shieldPowerMax--;
document.querySelector("#shieldsDisabled > button").click();
}
}
// Potentially disable active weapon
// Reduce the player's health
var healthReduce = Math.round((Math.random() * 50));
healthReduce -= (State.variables.shieldPowerMax - State.variables.shieldPower) * 20;
if (healthReduce < 0) healthReduce = 0;
State.variables.health -= healthReduce;
document.getElementById("yourhealth").textContent = State.variables.health < 0 ? 0 : State.variables.health;
if (State.variables.health <= 0) {
State.variables.health = 0;
State.variables.gameOver = true;
document.querySelector("#fire > button").disabled = true;
statusPanel.innerHTML = `${State.variables.adversary.name} fires and scores a direct hit. Your ship begins to disintegrate around you and you soon find yourself injured and drifting alone in the vast, dark, silent expanse of space with no hope for rescue.<br /><br />${statusPanel.innerHTML}`;
return;
}
var shieldMessage = `${(State.variables.shieldPowerMax - State.variables.shieldPower) * 20} deflected by shields`;
statusPanel.innerHTML = `${State.variables.adversary.name} fires and reduces your health by ${healthReduce} (${shieldMessage})<br />${statusPanel.innerHTML}`;
if (!State.variables.gameOver && !State.variables.fightWon) {
window.attackTimeout = setTimeout(fight, getFightTime());
}
}
window.attackTimeout = setTimeout(fight, getFightTime() + 1000);
<</script>><<set $karma -= 1>>\
You still can’t believe it. Captain Ron is dead. He pulled you into the academy so many years ago, pushing your name to the top of the recruitment list. You would never have made it to where you are today without him. And now it’s your fault he’s dead. That’s the worst part of it all- it’s your fault. His own prodige. Even with the planet’s top training and access to the most sophisticated equipment and information, you still managed to screw up.
As the reality sets in, you realize that you can’t just sit down. The captain wouldn’t want that. He always fought until the end, never giving in to the enemy. The Zaribians may have killed Captain Ron, but they will not kill his impact and his legacy; he was too great of a leader. There’s only one option: vengeance. Ron was your mentor and friend and his death will not be in vain.
You have years of training for this very day, when Ron is no longer in command. How fitting that your first mission as the new leader of the Cygnus intergalactic space fleet is in his honor.
The way you see it you have two options:
[[Organize an assassination of the Zaribian leader. An eye for an eye. This will leave their military unorganized and vulnerable.|12 - Assassination]]\
<<if $karma gt -1>>
[[Travel to the neutral planet Orion and negotiate aid in fighting the Zaribians as it will surely be a long and brutal war.|14 - Neutral planet agrees]]
<<else>>
[[Travel to the neutral planet Orion and negotiate aid in fighting the Zaribians as it will surely be a long and brutal war.|13 - Neutral planet denies]]
<</if>>You remember one of Captain Ron’s kernels of wisdom: “Diplomacy is a wise man’s favorite weapon of war.” Peace only occurs when the reasonable engage in meaningful diplomacy. Although a war would be more detrimental to Cygnus and your people than to the Zaribians, they don’t stand to benefit anything from all out conflict. As the shuttle arrives at the meeting location, a discrete bar in the neutral zone, you pack up your notes and prepare yourself for the meeting.
Peering out of the window however, you sense something amiss.
<<set $adversary to {
"name": "Zaribian Fighter",
"health": 5000,
"speed": 1 // Speed multiplier
}>>
[[Continue with the negotiations.|10A - Truce]]
[[Try to go back.|Battle 2]]The shuttle lands in the forest just outside the Zaribian city. Protected by the shroud of darkness that nighttime brings, you carefully scale the perimeter walls and continue into the empty streets. Surprisingly, there seem to be no guards patrolling tonight. A silent chuckle crosses your relieved sigh as you think back to your own days on watch duty back on Cygnus. Back when the captain was alive.
After navigating through the labyrinth of alleys and twisted streets, you finally set your eyes upon the royal palace. Its enormous size dwarfs that of the Federal Chamber on Cygnus, and you cannot help but feel some respect for the Zarib and their architectural genius. But now it was time to return to the task at hand, as daylight was beginning to break.
You climb the wall of the palace, overgrown with moss and vines, onto a terrace. “Still no guards...” you whisper under your breath, wondering if this is all an elaborate trap. You think of the terrible torture methods the Zarib are known for, wondering which of them they reserve for assassins.
From the terrace, you continue to a hall within the palace’s interior, leading you to a single gold-laden door hinged about its center. This must be the room of the Zaribian emperor. With a deep breath, you silently enter the chamber to find a sleeping figure. You grab the pillow beside him and bring it over his face, suffocating him to death.
You run out of the room, back to the terrace and climb down the wall, exiting the city as quickly as you can. Eventually you find the clearing with the shuttle and its pilot, and as you board the vessel you cannot help but feel a sense of pride in your abilities.
<<set $adversary to {
"name": "Zaribian Patrol",
"health": 2000,
"speed": 1 // Speed multiplier
}>>
[[Make a hasty escape.|Battle 3]]The shuttle lands in the forest just outside the Zaribian city. Protected by the shroud of darkness that nighttime brings, you carefully scale the perimeter walls and continue into the empty streets. Surprisingly, there seem to be no guards patrolling tonight. A silent chuckle crosses your relieved sigh as you think back to your own days on watch duty back on Cygnus. Back when the captain was alive.
A thought crosses your mind. You’ve successfully infiltrated the capital city of Zarib. Would it be more effective to wreak havoc on the city’s inhabitants rather than assassinate a single person? You recall the countless lives lost due to Zaribian terrorist attacks on Cygnus during the Troubled Times, fifteen years ago. The very same attacks that inspired you to join the academy, that generated constant fear of Zarib within Cygnian society. And now you had the opportunity for payback.
You find a street urchin, and offer to trade clothing with him, a deal which he gladly accepts. You put on his tattered rags and hooded coat, perfectly concealing your weapon. As the daylight begins to illuminate the city, you find a market and wait for it to get crowded. Within an hour the market is bustling and so crowded that it becomes difficult to move. You tear off your hood, pull out your weapon from underneath your robes and shout “For Cygnus!” Blindly firing in every direction, you cut down crowds of Zaribians, and the guards are unable to push through the stampede of civilians running away.
You soon run out of ammunition and see the guards aiming their weapons, preparing to fire. Just before they do, you feel a brief moment of regret, realizing that your attack may only further the Zaribian desire for war with Cygnus.You shake off a feeling of unease and exit the ship.
You find your contact in the bar, order some drinks, and begin discussing the agreeable terms. You discover that only a few warmongers in the Zaribian government are advocating for conflict; most are opposed to it. The contact agrees to your request to arrange a meeting between the higher officials in your respective governments, who are opposed to the war, to secretly negotiate a binding truce.
Three days later, you return to the same bar with your superiors and a small protection escort. Although the negotiation proceedings take hours and involve legal jargon you cannot understand, it is all worth it when you finally see the signatures appear on the coveted treaty. Upon returning to their home, the Zaribians begin to oust the warmongers in their government. Peace is officially restored between Cygnus and Zarib, and you look forward to the sweet promise of a new friendship.! A fight breaks out!
''$adversary.name (health: //$adversary.health//, speed: //$adversary.speed//x) engages their weapons and prepares for combat.''
<<switch visitedTags("Battle")>>
<<case 1>>
This is your first time experiencing real combat. Your heart rate increases as you begin to focus solely on the threat to your ship's 12 o'clock. "Relax; it'll be just like in the simulator," you think to yourself as you try to forget that, here, failure has real consequences.
<<case 2>>
Still inexperienced in combat, you once again feel the familiar increase in heart rate. Thoughts of the consequences of failure are notably and relievingly absent from your mind, however, as you arm your ship's weapon systems and begin to engage the foe.
<<default>>
A veteran of combat by now, your thumb calmly moves from the side of the flight stick to flick the red cap protecting the switch labeled "{{{Engage weapon systems}}}". A faint hum — audible only in the total silence of space — can be heard in the cockpit as the ship's computer redirects power from the aft reactor.
<</switch>>\
<<silently>>
<<set $health to $maxHealth>>
<<set $weaponSelected to "weapon1">>
<<set $shieldPowerMax to 2>>
<<set $shieldPower to $shieldPowerMax>>
<<set $fightWon to false>>
<<set $nonUserDisable to false>>
<</silently>>\
<div class="horizonal">\
<section>\
!!Shields (available power: //@@#power;$shieldPower@@//):
<<button "Enabled (power draw: 2)">>
<<if $shieldPowerMax gte 2>>
<<set $shieldPower = $shieldPowerMax - 2>>
<<prepend "#status">>You set the shields to full power
<</prepend>>
<<replace "#power">>$shieldPower<</replace>>
<<removeclass "#shield-full-indicator" "hidden">>
<<addclass "#shield-half-indicator" "hidden">>
<<addclass "#shield-off-indicator" "hidden">>
<<else>>
<<prepend "#status">>Having sustained too much damage, your shields can no longer be set to full power
<</prepend>>
<</if>>
<</button>><span class="shield-status hidden" id="shield-full-indicator">←</span>
<<button "Half-power (power draw: 1)">>
<<if $shieldPowerMax gte 1>>
<<set $shieldPower = $shieldPowerMax - 1>>
<<prepend "#status">>You set the shields to half power
<</prepend>>
<<replace "#power">>$shieldPower<</replace>>
<<addclass "#shield-full-indicator" "hidden">>
<<removeclass "#shield-half-indicator" "hidden">>
<<addclass "#shield-off-indicator" "hidden">>
<<else>>
<<prepend "#status">>Having sustained too much damage, your shields can no longer be set to half power
<</prepend>>
<</if>>
<</button>><span class="shield-status hidden" id="shield-half-indicator">←</span>
@@#shieldsDisabled;
<<button "Disabled (power draw: 0)">>
<<set $shieldPower = $shieldPowerMax - 0>>
<<if $nonUserDisable>>
<<prepend "#status">>A direct hit temporarily disables and reduces the amount of power that you can dedicate to your shields
<</prepend>>
<<set $nonUserDisable to false>>
<<else>>
<<prepend "#status">>You disable the shields
<</prepend>>
<</if>>
<<replace "#power">>$shieldPower<</replace>>
<<addclass "#shield-full-indicator" "hidden">>
<<addclass "#shield-half-indicator" "hidden">>
<<removeclass "#shield-off-indicator" "hidden">>
<</button>><span class="shield-status" id="shield-off-indicator">←</span>
@@
</section>\
<section>\
!!Weapons:
<<radiobutton "$weaponSelected" "weapon1" checked>> $weapon1.name (Damage: //$weapon1.damage//)
<<radiobutton "$weaponSelected" "weapon2">> $weapon2.name (Damage: //$weapon2.damage//)
<<radiobutton "$weaponSelected" "weapon3">> $weapon3.name (Damage: //$weapon3.damage//)
@@#fire;
Charge: <progress id="charge" value="100" max="100"></progress>
<<button "Fire!">>
<<set $weapon to null>>
<<switch $weaponSelected>>
<<case "weapon1">>
<<set $weapon to $weapon1>>
<<case "weapon2">>
<<set $weapon to $weapon2>>
<<case "weapon3">>
<<set $weapon to $weapon3>>
<</switch>>
<<set $adversary.health -= $weapon.damage>>
<<if $adversary.health < 0>>
<<set $adversary.health = 0>>
<</if>>
<<if not $fightWon>>
<<replace "#enemyhealth">>$adversary.health<</replace>>
<</if>>
<<if $adversary.health lte 0 and not $fightWon>>
<<set $fightWon to true>>
<<script>>clearTimeout(window.attackTimeout);<</script>>
<<prepend "#status">>You emerge victorious from the battle!
<</prepend>>
<<removeclass "#continue" "hidden">>
<<elseif $fightWon>>
<<prepend "#status">>As you command, your $weapon.name fires at the shapeless remaining debris, depleting your reactor power even more. Had the captain seen this, he would have disciplined you for a negligent discharge of your weapons.
<</prepend>>
<<addclass "#fire" "hidden">>
<<else>>
<<prepend "#status">>You fire a salvo from your $weapon.name causing $weapon.damage damage to $adversary.name (health: //$adversary.health//)
<</prepend>>
<</if>>
<<script>>fire();<</script>>
<</button>>
@@
</section>\
</div>\
\
!!Battle status
Your health: //<span id="yourhealth">$health</span>// | $adversary.name health: //<span id="enemyhealth">$adversary.health</span>//\
<span id="continue" class="hidden">[[Retry negotiations|10B - Truce]]</span>\
<span id="failure" class="hidden">[[Continue|11 - Torture]]</span>\
@@#status;
$adversary.name (health: //$adversary.health//) begins to fight with you
@@
<<script>>
var charge = 100;
const rechargeTime = 1500;
var rechargeInterval;
window.fire = function() {
var progress = document.getElementById("charge");
var fireButton = document.querySelector("#fire > button");
charge = 0;
fireButton.disabled = true;
rechargeInterval = setInterval(function() {
charge++;
progress.value = charge;
if (charge >= 100) {
fireButton.disabled = false;
clearInterval(rechargeInterval);
}
}, rechargeTime / 100 * State.variables.weapon.recharge);
}
function getFightTime() {
return (Math.random() * 1000 * 1) + (1000 * 1.5);
}
window.fight = function() {
var statusPanel = document.getElementById("status");
// Potentially disable shields
var shieldsDisabled = false;
if (State.variables.shieldPowerMax > 0) {
if (Math.random() < 0.15) {
shieldsDisabled = true;
State.variables.nonUserDisable = true;
State.variables.shieldPowerMax--;
document.querySelector("#shieldsDisabled > button").click();
}
}
// Potentially disable active weapon
// Reduce the player's health
var healthReduce = Math.round((Math.random() * 50));
healthReduce -= (State.variables.shieldPowerMax - State.variables.shieldPower) * 20;
if (healthReduce < 0) healthReduce = 0;
State.variables.health -= healthReduce;
document.getElementById("yourhealth").textContent = State.variables.health < 0 ? 0 : State.variables.health;
if (State.variables.health <= 0) {
State.variables.health = 0;
State.variables.gameOver = true;
document.querySelector("#fire > button").disabled = true;
statusPanel.innerHTML = `${State.variables.adversary.name} fires and scores a direct hit. Your ship begins to disintegrate around you and you soon find yourself injured and drifting alone in the vast, dark, silent expanse of space.<br /><br />${statusPanel.innerHTML}`;
document.getElementById("failure").classList.remove("hidden");
return;
}
var shieldMessage = `${(State.variables.shieldPowerMax - State.variables.shieldPower) * 20} deflected by shields`;
statusPanel.innerHTML = `${State.variables.adversary.name} fires and reduces your health by ${healthReduce} (${shieldMessage})<br />${statusPanel.innerHTML}`;
if (!State.variables.gameOver && !State.variables.fightWon) {
window.attackTimeout = setTimeout(fight, getFightTime());
}
}
window.attackTimeout = setTimeout(fight, getFightTime() + 1000);
<</script>>! A fight breaks out!
''$adversary.name (health: //$adversary.health//, speed: //$adversary.speed//x) engages their weapons and prepares for combat.''
<<switch visitedTags("Battle")>>
<<case 1>>
This is your first time experiencing real combat. Your heart rate increases as you begin to focus solely on the threat to your ship's 12 o'clock. "Relax; it'll be just like in the simulator," you think to yourself as you try to forget that, here, failure has real consequences.
<<case 2>>
Still inexperienced in combat, you once again feel the familiar increase in heart rate. Thoughts of the consequences of failure are notably and relievingly absent from your mind, however, as you arm your ship's weapon systems and begin to engage the foe.
<<default>>
A veteran of combat by now, your thumb calmly moves from the side of the flight stick to flick the red cap protecting the switch labeled "{{{Engage weapon systems}}}". A faint hum — audible only in the total silence of space — can be heard in the cockpit as the ship's computer redirects power from the aft reactor.
<</switch>>\
<<silently>>
<<set $health to $maxHealth>>
<<set $weaponSelected to "weapon1">>
<<set $shieldPowerMax to 2>>
<<set $shieldPower to $shieldPowerMax>>
<<set $fightWon to false>>
<<set $nonUserDisable to false>>
<</silently>>\
<div class="horizonal">\
<section>\
!!Shields (available power: //@@#power;$shieldPower@@//):
<<button "Enabled (power draw: 2)">>
<<if $shieldPowerMax gte 2>>
<<set $shieldPower = $shieldPowerMax - 2>>
<<prepend "#status">>You set the shields to full power
<</prepend>>
<<replace "#power">>$shieldPower<</replace>>
<<removeclass "#shield-full-indicator" "hidden">>
<<addclass "#shield-half-indicator" "hidden">>
<<addclass "#shield-off-indicator" "hidden">>
<<else>>
<<prepend "#status">>Having sustained too much damage, your shields can no longer be set to full power
<</prepend>>
<</if>>
<</button>><span class="shield-status hidden" id="shield-full-indicator">←</span>
<<button "Half-power (power draw: 1)">>
<<if $shieldPowerMax gte 1>>
<<set $shieldPower = $shieldPowerMax - 1>>
<<prepend "#status">>You set the shields to half power
<</prepend>>
<<replace "#power">>$shieldPower<</replace>>
<<addclass "#shield-full-indicator" "hidden">>
<<removeclass "#shield-half-indicator" "hidden">>
<<addclass "#shield-off-indicator" "hidden">>
<<else>>
<<prepend "#status">>Having sustained too much damage, your shields can no longer be set to half power
<</prepend>>
<</if>>
<</button>><span class="shield-status hidden" id="shield-half-indicator">←</span>
@@#shieldsDisabled;
<<button "Disabled (power draw: 0)">>
<<set $shieldPower = $shieldPowerMax - 0>>
<<if $nonUserDisable>>
<<prepend "#status">>A direct hit temporarily disables and reduces the amount of power that you can dedicate to your shields
<</prepend>>
<<set $nonUserDisable to false>>
<<else>>
<<prepend "#status">>You disable the shields
<</prepend>>
<</if>>
<<replace "#power">>$shieldPower<</replace>>
<<addclass "#shield-full-indicator" "hidden">>
<<addclass "#shield-half-indicator" "hidden">>
<<removeclass "#shield-off-indicator" "hidden">>
<</button>><span class="shield-status" id="shield-off-indicator">←</span>
@@
</section>\
<section>\
!!Weapons:
<<radiobutton "$weaponSelected" "weapon1" checked>> $weapon1.name (Damage: //$weapon1.damage//)
<<radiobutton "$weaponSelected" "weapon2">> $weapon2.name (Damage: //$weapon2.damage//)
<<radiobutton "$weaponSelected" "weapon3">> $weapon3.name (Damage: //$weapon3.damage//)
@@#fire;
Charge: <progress id="charge" value="100" max="100"></progress>
<<button "Fire!">>
<<set $weapon to null>>
<<switch $weaponSelected>>
<<case "weapon1">>
<<set $weapon to $weapon1>>
<<case "weapon2">>
<<set $weapon to $weapon2>>
<<case "weapon3">>
<<set $weapon to $weapon3>>
<</switch>>
<<set $adversary.health -= $weapon.damage>>
<<if $adversary.health < 0>>
<<set $adversary.health = 0>>
<</if>>
<<if not $fightWon>>
<<replace "#enemyhealth">>$adversary.health<</replace>>
<</if>>
<<if $adversary.health lte 0 and not $fightWon>>
<<set $fightWon to true>>
<<script>>clearTimeout(window.attackTimeout);<</script>>
<<prepend "#status">>You emerge victorious from the battle!
<</prepend>>
<<removeclass "#continue" "hidden">>
<<elseif $fightWon>>
<<prepend "#status">>As you command, your $weapon.name fires at the shapeless remaining debris, depleting your reactor power even more. Had the captain seen this, he would have disciplined you for a negligent discharge of your weapons.
<</prepend>>
<<addclass "#fire" "hidden">>
<<else>>
<<prepend "#status">>You fire a salvo from your $weapon.name causing $weapon.damage damage to $adversary.name (health: //$adversary.health//)
<</prepend>>
<</if>>
<<script>>fire();<</script>>
<</button>>
@@
</section>\
</div>\
\
!!Battle status
Your health: //<span id="yourhealth">$health</span>// | $adversary.name health: //<span id="enemyhealth">$adversary.health</span>//\
<span id="continue" class="hidden">[[Engage warp drive and make your escape home|16 - Escape]]</span>\
<span id="failure" class="hidden">[[Continue|17 - Killed]]</span>\
@@#status;
$adversary.name (health: //$adversary.health//) begins to fight with you
@@
<<script>>
var charge = 100;
const rechargeTime = 1500;
var rechargeInterval;
window.fire = function() {
var progress = document.getElementById("charge");
var fireButton = document.querySelector("#fire > button");
charge = 0;
fireButton.disabled = true;
rechargeInterval = setInterval(function() {
charge++;
progress.value = charge;
if (charge >= 100) {
fireButton.disabled = false;
clearInterval(rechargeInterval);
}
}, rechargeTime / 100 * State.variables.weapon.recharge);
}
function getFightTime() {
return (Math.random() * 1000 * 1) + (1000 * 1.5);
}
window.fight = function() {
var statusPanel = document.getElementById("status");
// Potentially disable shields
var shieldsDisabled = false;
if (State.variables.shieldPowerMax > 0) {
if (Math.random() < 0.15) {
shieldsDisabled = true;
State.variables.nonUserDisable = true;
State.variables.shieldPowerMax--;
document.querySelector("#shieldsDisabled > button").click();
}
}
// Potentially disable active weapon
// Reduce the player's health
var healthReduce = Math.round((Math.random() * 50));
healthReduce -= (State.variables.shieldPowerMax - State.variables.shieldPower) * 20;
if (healthReduce < 0) healthReduce = 0;
State.variables.health -= healthReduce;
document.getElementById("yourhealth").textContent = State.variables.health < 0 ? 0 : State.variables.health;
if (State.variables.health <= 0) {
State.variables.health = 0;
State.variables.gameOver = true;
document.querySelector("#fire > button").disabled = true;
statusPanel.innerHTML = `${State.variables.adversary.name} fires and scores a direct hit. Losing reactor power quickly, your ship is doomed.<br /><br />${statusPanel.innerHTML}`;
document.getElementById("failure").classList.remove("hidden");
return;
}
var shieldMessage = `${(State.variables.shieldPowerMax - State.variables.shieldPower) * 20} deflected by shields`;
statusPanel.innerHTML = `${State.variables.adversary.name} fires and reduces your health by ${healthReduce} (${shieldMessage})<br />${statusPanel.innerHTML}`;
if (!State.variables.gameOver && !State.variables.fightWon) {
window.attackTimeout = setTimeout(fight, getFightTime());
}
}
window.attackTimeout = setTimeout(fight, getFightTime() + 1000);
<</script>>A few hours later, you land on Cygnus, where you find crowds of people dancing in the street at the news of the death of the Zarib monarch. As you had imagined, Zarib broke into civil war, securing the uneasy peace between your planets for at least another few years.
You head into the Federal Chamber for your mission debriefing, and are greeted with a standing ovation of Cygnian council members and bureaucrats as soon as you enter the building. A hero’s welcome for taking the life of another person? “Is this what life has come to?” you silently think to yourself. You begin to feel sick.
War between Zarib and Cygnus would have cost the lives of billions, but you don’t feel as though taking the life of an elderly, dying emperor would ensure peace. It simply postpones the fighting, and weakens Zarib to a point where a war following their internal conflict would likely destroy their civilization. You recall all the anti-Zaribian propaganda in the academy. Why is it that Zarib and Cygnus must be enemies? Would it not have been better for both parties to reach mutual terms of friendship, and usher in a new age of peace and prosperity in the system?You hire the number one hit man on the planet: none other than Geronimo Sly. Known by only a select few, Sly specializes in discrete assassinations. With over 50 names on his kill list, Sly has never been caught, and always gets the man. He is perfect for this job. You call him up and give him the job description- needless to say he’s requiring a pretty penny for such a risky job. He will have to travel two galaxies over, sneak into the most heavily guarded headquarters in the Universe, and assassinate a well-trained combatant. Months go by, but soon you get the message that the job was done. Success! You have killed the enemy leader! But wait…
Apparently the enemy was expecting some sort of retaliation and was well-prepared for Sly’s attack. Sly, being the expert that he is, was able to get in and kill the leader, but he was then captured by the thousands of guards on the premises. He has been held captive for weeks, being tortured until he finally gave up all that he knew. He gave up your name to end his suffering, and now the enemy is hunting you down. They’ve sent multiple surveyor ships to scout your movements and prepare for an ambush.
Your only option is to go into hiding. You grab your essentials and fly to a small, uninhabited planet on the edge of the habitable zone. There, you live the rest of your life, alone, full of regret, and hoping that the enemy never finds you. Your days are spent contemplating your poor life decisions, while your nights are filled with dreams of the family you once had. You wonder if they’re okay.You are confident in your negotiation skills. The academy spent a great deal of resources training you in the art of persuasion, as your role in the field depends on it. Experience is not the issue; the Orion government will want to stay neutral. They won’t carelessly send troops to their death for a war in which they have no stake. Despite the odds, this remains your only viable option to defeat the Zaribians and avenge Ron.
The three day trip is a lonely one; you don’t trust anyone else with negotiations and take the trip alone. You have plenty of time to contemplate what has happened in the past few days, your role in the tragedy, and what you have to do to make up for it. Thinking about it gives you a new level of motivation for this mission. Using this energy, you put together arguments that no empathetic being could refuse. The Zaribians have unlawfully murdered a foreign leader on our soil and have thus committed an act of war. We have done nothing but help Orion for decades, enacting many trade policies and supporting their economy. If they let this slide without punishment, Zarib will only become more reckless and come after them next. The only way to ensure safety for us all is to send a clear message that this kind of violence is not acceptable.
When you arrive on Orion, your arguments are ready and your stance is firm. The Orion officials are impressed by your confidence and infuriated by the Zaribians’ actions. “They need to be stopped before it’s too late,” their leader says. He agrees to send 40 starfleet space ships, 2,000 of their bravest soldiers, and $1 trillion to support the war effort. You thank him and leave to prepare for the fight ahead, ecstatic that you are no longer alone in this endeavor.
<<set $adversary to {
"name": "Zaribian Scout",
"health": 1000,
"speed": 1 // Speed multiplier
}>>
[[Go to war.|Battle 4]]The academy has trained you to be a master negotiator as this is a necessary skill in your line of work. You feel confident with your arguments and have faith that the citizens of Orion will be understanding and helpful in your planet’s time of need. You travel to Orion alone, not trusting anyone else with the negotiations. You progress through your arguments: the Zaribians have committed an act of war, your planet has been good to Orion for years, etc. After hours of negotiations, they are still holding strong in their neutral stance. They claim that they would lose too many lives and they wouldn’t benefit from helping you. They do not want to get involved in a century-old war. You are livid. After decades of trade and peaceful negotiations, Orion doesn’t have your back against a blatant aggressor. As it turns out, you’ve wasted your time trying to negotiate and you’re still stuck on your own. You respectfully leave the meeting and spend the night on Orion before the long trip back the next day.
When you wake up, you have a newfound energy and are ready to make progress on this mission. You have two options:
[[Leave the neutral planet and attempt to salvage a decent army to attack the Zaribians.|18A - Leave and accept defeat]]\
<<if randomFloat(0, 1) > 0.5>>
[[Give one more attempt at negotiating with Orion in hopes that after sleeping it over they may change their mind.|14B - Neutral planet agrees]]
<<else>>
[[Give one more attempt at negotiating with Orion in hopes that after sleeping it over they may change their mind.|18B - Leave and accept defeat]]
<</if>>You decide to accept your failed negotiations and travel back to Cygnus. The future looks bleak without military support. It will take all of your resources to even attempt an attack on Zarib. They have the most well-equipped and sophisticated intergalactic military on this side of the Universe, and you are lacking an experienced leader. You have a lot of time to think on your long journey home, and the daunting thought of defeat and failure keeps running through your mind. Is it worth it? You’ve already gotten Captain Ron killed; do you want more blood on your hands? And as a new leader too. Your first act as the new leader of Cygnus may very well be the biggest massacre of Cygnus lives in the history of the century-old feud with Zarib. Is this the legacy you want?
By the time you get back to Cygnus, the depressing thoughts have taken over. The weight of the entire planet rests on your shoulders, and you are feeling very unstable. You sit down and have a drink. How will your family feel? Can you stand the embarrassment of getting your captain killed and then failing in negotiations with Orion? You contemplate the huge responsibility you have and it overwhelms you. You have another drink. And another. Soon you are leaned back in your pilot’s chair waving a ray gun in your right hand, a glass of scotch in your left. You’ve failed everyone. Ron, your wife, your kids, your planet. Yourself. You turn the ray gun on yourself, eyeing the barrel of the gun, caressing the trigger.
No noise. A flash of light. Then nothing.Once again your appeals for Orion's help are turned down.
You decide to accept your failed negotiations and travel back to Cygnus. The future looks bleak without military support. It will take all of your resources to even attempt an attack on Zarib. They have the most well-equipped and sophisticated intergalactic military on this side of the Universe, and you are lacking an experienced leader. You have a lot of time to think on your long journey home, and the daunting thought of defeat and failure keeps running through your mind. Is it worth it? You’ve already gotten Captain Ron killed; do you want more blood on your hands? And as a new leader too. Your first act as the new leader of Cygnus may very well be the biggest massacre of Cygnus lives in the history of the century-old feud with Zarib. Is this the legacy you want?
By the time you get back to Cygnus, the depressing thoughts have taken over. The weight of the entire planet rests on your shoulders, and you are feeling very unstable. You sit down and have a drink. How will your family feel? Can you stand the embarrassment of getting your captain killed and then failing in negotiations with Orion? You contemplate the huge responsibility you have and it overwhelms you. You have another drink. And another. Soon you are leaned back in your pilot’s chair waving a ray gun in your right hand, a glass of scotch in your left. You’ve failed everyone. Ron, your wife, your kids, your planet. Yourself. You turn the ray gun on yourself, eyeing the barrel of the gun, caressing the trigger.
No noise. A flash of light. Then nothing.! A fight breaks out!
''$adversary.name (health: //$adversary.health//, speed: //$adversary.speed//x) engages their weapons and prepares for combat.''
<<switch visitedTags("Battle")>>
<<case 1>>
This is your first time experiencing real combat. Your heart rate increases as you begin to focus solely on the threat to your ship's 12 o'clock. "Relax; it'll be just like in the simulator," you think to yourself as you try to forget that, here, failure has real consequences.
<<case 2>>
Still inexperienced in combat, you once again feel the familiar increase in heart rate. Thoughts of the consequences of failure are notably and relievingly absent from your mind, however, as you arm your ship's weapon systems and begin to engage the foe.
<<default>>
A veteran of combat by now, your thumb calmly moves from the side of the flight stick to flick the red cap protecting the switch labeled "{{{Engage weapon systems}}}". A faint hum — audible only in the total silence of space — can be heard in the cockpit as the ship's computer redirects power from the aft reactor.
<</switch>>\
<<silently>>
<<set $health to $maxHealth>>
<<set $weaponSelected to "weapon1">>
<<set $shieldPowerMax to 2>>
<<set $shieldPower to $shieldPowerMax>>
<<set $fightWon to false>>
<<set $nonUserDisable to false>>
<</silently>>\
<div class="horizonal">\
<section>\
!!Shields (available power: //@@#power;$shieldPower@@//):
<<button "Enabled (power draw: 2)">>
<<if $shieldPowerMax gte 2>>
<<set $shieldPower = $shieldPowerMax - 2>>
<<prepend "#status">>You set the shields to full power
<</prepend>>
<<replace "#power">>$shieldPower<</replace>>
<<removeclass "#shield-full-indicator" "hidden">>
<<addclass "#shield-half-indicator" "hidden">>
<<addclass "#shield-off-indicator" "hidden">>
<<else>>
<<prepend "#status">>Having sustained too much damage, your shields can no longer be set to full power
<</prepend>>
<</if>>
<</button>><span class="shield-status hidden" id="shield-full-indicator">←</span>
<<button "Half-power (power draw: 1)">>
<<if $shieldPowerMax gte 1>>
<<set $shieldPower = $shieldPowerMax - 1>>
<<prepend "#status">>You set the shields to half power
<</prepend>>
<<replace "#power">>$shieldPower<</replace>>
<<addclass "#shield-full-indicator" "hidden">>
<<removeclass "#shield-half-indicator" "hidden">>
<<addclass "#shield-off-indicator" "hidden">>
<<else>>
<<prepend "#status">>Having sustained too much damage, your shields can no longer be set to half power
<</prepend>>
<</if>>
<</button>><span class="shield-status hidden" id="shield-half-indicator">←</span>
@@#shieldsDisabled;
<<button "Disabled (power draw: 0)">>
<<set $shieldPower = $shieldPowerMax - 0>>
<<if $nonUserDisable>>
<<prepend "#status">>A direct hit temporarily disables and reduces the amount of power that you can dedicate to your shields
<</prepend>>
<<set $nonUserDisable to false>>
<<else>>
<<prepend "#status">>You disable the shields
<</prepend>>
<</if>>
<<replace "#power">>$shieldPower<</replace>>
<<addclass "#shield-full-indicator" "hidden">>
<<addclass "#shield-half-indicator" "hidden">>
<<removeclass "#shield-off-indicator" "hidden">>
<</button>><span class="shield-status" id="shield-off-indicator">←</span>
@@
</section>\
<section>\
!!Weapons:
<<radiobutton "$weaponSelected" "weapon1" checked>> $weapon1.name (Damage: //$weapon1.damage//)
<<radiobutton "$weaponSelected" "weapon2">> $weapon2.name (Damage: //$weapon2.damage//)
<<radiobutton "$weaponSelected" "weapon3">> $weapon3.name (Damage: //$weapon3.damage//)
@@#fire;
Charge: <progress id="charge" value="100" max="100"></progress>
<<button "Fire!">>
<<set $weapon to null>>
<<switch $weaponSelected>>
<<case "weapon1">>
<<set $weapon to $weapon1>>
<<case "weapon2">>
<<set $weapon to $weapon2>>
<<case "weapon3">>
<<set $weapon to $weapon3>>
<</switch>>
<<set $adversary.health -= $weapon.damage>>
<<if $adversary.health < 0>>
<<set $adversary.health = 0>>
<</if>>
<<if not $fightWon>>
<<replace "#enemyhealth">>$adversary.health<</replace>>
<</if>>
<<if $adversary.health lte 0 and not $fightWon>>
<<set $fightWon to true>>
<<script>>clearTimeout(window.attackTimeout);<</script>>
<<prepend "#status">>You emerge victorious from the battle!
<</prepend>>
<<removeclass "#continue" "hidden">>
<<elseif $fightWon>>
<<prepend "#status">>As you command, your $weapon.name fires at the shapeless remaining debris, depleting your reactor power even more. Had the captain seen this, he would have disciplined you for a negligent discharge of your weapons.
<</prepend>>
<<addclass "#fire" "hidden">>
<<else>>
<<prepend "#status">>You fire a salvo from your $weapon.name causing $weapon.damage damage to $adversary.name (health: //$adversary.health//)
<</prepend>>
<</if>>
<<script>>fire();<</script>>
<</button>>
@@
</section>\
</div>\
\
!!Battle status
Your health: //<span id="yourhealth">$health</span>// | $adversary.name health: //<span id="enemyhealth">$adversary.health</span>//\
<span id="continue" class="hidden">[[Continue|15 - Zaribian defeat]]</span>\
@@#status;
$adversary.name (health: //$adversary.health//) begins to fight with you
@@
<<script>>
var charge = 100;
const rechargeTime = 1500;
var rechargeInterval;
window.fire = function() {
var progress = document.getElementById("charge");
var fireButton = document.querySelector("#fire > button");
charge = 0;
fireButton.disabled = true;
rechargeInterval = setInterval(function() {
charge++;
progress.value = charge;
if (charge >= 100) {
fireButton.disabled = false;
clearInterval(rechargeInterval);
}
}, rechargeTime / 100 * State.variables.weapon.recharge);
}
function getFightTime() {
return (Math.random() * 1000 * 1) + (1000 * 1.5);
}
window.fight = function() {
var statusPanel = document.getElementById("status");
// Potentially disable shields
var shieldsDisabled = false;
if (State.variables.shieldPowerMax > 0) {
if (Math.random() < 0.15) {
shieldsDisabled = true;
State.variables.nonUserDisable = true;
State.variables.shieldPowerMax--;
document.querySelector("#shieldsDisabled > button").click();
}
}
// Potentially disable active weapon
// Reduce the player's health
var healthReduce = Math.round((Math.random() * 50));
healthReduce -= (State.variables.shieldPowerMax - State.variables.shieldPower) * 20;
if (healthReduce < 0) healthReduce = 0;
State.variables.health -= healthReduce;
document.getElementById("yourhealth").textContent = State.variables.health < 0 ? 0 : State.variables.health;
if (State.variables.health <= 0) {
State.variables.health = 0;
State.variables.gameOver = true;
document.querySelector("#fire > button").disabled = true;
statusPanel.innerHTML = `${State.variables.adversary.name} fires and scores a direct hit. Your ship begins to disintegrate around you and you soon find yourself injured and drifting alone in the vast, dark, silent expanse of space with no hope for rescue.<br /><br />${statusPanel.innerHTML}`;
return;
}
var shieldMessage = `${(State.variables.shieldPowerMax - State.variables.shieldPower) * 20} deflected by shields`;
statusPanel.innerHTML = `${State.variables.adversary.name} fires and reduces your health by ${healthReduce} (${shieldMessage})<br />${statusPanel.innerHTML}`;
if (!State.variables.gameOver && !State.variables.fightWon) {
window.attackTimeout = setTimeout(fight, getFightTime());
}
}
window.attackTimeout = setTimeout(fight, getFightTime() + 1000);
<</script>>With the Zaribian scout quickly dispatched, the Zaribian's are none the wiser about the fleet of ships bearing down on them.
With the military support from Orion, you now have a much larger arsenal to use in devising a battle strategy against Zarib. You hold a meeting with your military advisors and decide that the best course of action is a sneak attack. The Zaribians are expecting a retaliation, so a brute force attack is not going to work. You need to outsmart them. You create a diversion; two space fleets are launched from Cygnus as if you are performing a preliminary attack. The rest of the fleets are launched from Orion, and they take a lengthy route to the opposite side of Zarib and attack from the back while they are distracted.
When executed, the plan works perfectly! The Zaribians are so sure that you have attacked them with a pitiful two fleets that they divert all of their attention to those ships. The other thousands of ships attack from the back. The ships immediately target all of the major military zones and the capitol, carpet bombing all of their weaponry and supplies. By the time Zarib realizes the diversion, they have dwindled in numbers so much they are forced to surrender. Their leader has been killed by this point and they have no leadership or organization. You take advantage of this by forcing them to sign a peace treaty and compensate for all of the loss of life during the battle.
You return home, a hero. Your family runs and embraces you, and there is a parade held in your honor. What seemed like the absolute worst case scenario has become a moment of glory; perhaps Captain Ron //had// chosen the right successor after all.Just as the shuttle is preparing to leave the ground, a barrage of bullets rip through the hull as if it was made of paper. You hit the deck and lie there until the shooting ends. When it does, you quickly grab your weapon and get ready for the coming fight. Two young Zaribian soldiers open the shuttle door, and are met with your laser’s deadly shots. You burst out of the shuttle, surprising the group of Zaribians outside, and begin firing on the group of ten or so soldiers, quickly running out of the clearing and back towards the city as you do so.
You scale back over the city’s walls, and run into a nearby shop. The owner and his family run out of the store, and you hear the guards yelling for civilians to clear the streets. “This is it” you think to yourself, silently chuckling at the realization that everything in your life, a life led in service to Cygnus, would end in a tiny room on Zarib. Guards burst into the room, and you trade fire with them. Although you realize that this is the end of your story, you take comfort in knowing that your actions have saved the lives of countless Cygnians.After a night's sleep and taking the time to reconsider your argument, you once again appeal to the Orion leadership.
“They need to be stopped before it’s too late,” their leader finally agrees. He promises to send 40 starfleet space ships, 2,000 of their bravest soldiers, and $1 trillion to support the war effort. You thank him and leave to prepare for the fight ahead, ecstatic that you are no longer alone in this endeavor.
<<set $adversary to {
"name": "Zaribian Scout",
"health": 1000,
"speed": 1 // Speed multiplier
}>>
[[Go to war.|Battle 4]]Suddenly, another Zaribian ship exits warpspace nearby and begins to draw you in with its tractor beam. Once you're onboard, a crewmember remarks that you'll make for a valuable ransom as he leads you to the ship's dimly lit brig from which there is no escape.
You feel something hit your head — hard — and everything goes black. You wake up in a cold, dark room where a guard informs you that you’re being held for ransom. How could you have let this happened? Showing up to the meeting without any sort of protection was foolish, and now you realize that they are your enemy for a reason. They had no intention of playing by the rules in this twisted game.
The enemy tortures you relentlessly. You begin to lose track of time, only knowing that you get a few hours of sleep on occasion. How long have you been in this prison? Does anyone even know where you are? Has the war already begun? You pray that your planet will give in to their demands, or that you’ll die and be relieved of the pain.Having clearly communicated that you mean business, you find your contact in the bar, order some drinks, and begin discussing the agreeable terms. You discover that your pursuer was sent by one of only a few warmongers in the Zaribian government who are advocating for conflict; most are opposed to it. The contact agrees to your request to arrange a meeting between the higher officials in your respective governments, who are opposed to the war, to secretly negotiate a binding truce.
Three days later, you return to the same bar with your superiors and a small protection escort. Although the negotiation proceedings take hours and involve legal jargon you cannot understand, it is all worth it when you finally see the signatures appear on the coveted treaty. Upon returning to their home, the Zaribians begin to oust the warmongers in their government. Peace is officially restored between Cygnus and Zarib, and you look forward to the sweet promise of a new friendship.As the shuttle nears the Zarib planet, you're having second thoughts. What if the ship gets detected or has already been detected by the Zaribians? Not wanting to meet a fate like that of the captain with torture and eventual death at the hands of the Zaribians, you wonder if your course of action should be to take out as many Zarib soldiers at once by yourself in what would surely be a suicide mission.
[[Press on with the assassination attempt.|8 - Assassination]]
[[A suicide mission is the only way.|9 - Rampage]]