Skip to content

Commit

Permalink
we do some traitor stuff
Browse files Browse the repository at this point in the history
Removing complete checking of objectives
Adding correct front and some desc for corps
  • Loading branch information
MrCastmer committed Aug 26, 2024
1 parent 0ccc936 commit 6790b53
Show file tree
Hide file tree
Showing 14 changed files with 914 additions and 8 deletions.
1 change: 1 addition & 0 deletions code/__DEFINES/traitor.dm
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
#define TRAITOR_FACTION_GORLEX "gorlex marauders"
#define TRAITOR_FACTION_SELF "self"
#define TRAITOR_FACTION_BOSYN "bosyn_powell_front"
#define TRAITOR_FACTION_VOSTOK "vostok"

/// If this backstory involves being forced into the job
#define TRAITOR_MOTIVATION_FORCED "Forced Into It"
Expand Down
3 changes: 3 additions & 0 deletions code/__DEFINES/{yogs_defines}/flavor_misc.dm
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,10 @@
#define PDA_THEME_TITLE_CYBER "Cyber Sun"
#define PDA_THEME_TITLE_VAHLEN "Vahlen"
#define PDA_THEME_TITLE_GORLEX "Gorlex"
/*
#define PDA_THEME_TITLE_BOSYN "Bosyn"
*/
#define PDA_THEME_TITLE_BOSYN "Vostok"

GLOBAL_LIST_INIT(pda_themes, list(
PDA_THEME_TITLE_NTOS = PDA_THEME_NTOS,
Expand Down
6 changes: 6 additions & 0 deletions code/modules/antagonists/traitor/datum_traitor.dm
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,12 @@
if(owner.current && isAI(owner.current))
traitor_kind = TRAITOR_AI

/*
if(traitor_kind == TRAITOR_AI)
*/
if(traitor_kind == TRAITOR_AI || (owner.current && isipc(owner.current))) //dripstation edit
company = /datum/corporation/self
allowed_factions = list(TRAITOR_FACTION_SELF) //dripstation edit
else if(!company)
/*Dripstation edit, checking upstream prs for edit, for now using drip code
company = pick(subtypesof(/datum/corporation/traitor))
Expand Down Expand Up @@ -263,9 +267,11 @@
msg += "<span class='alertsyndie'>Use the 'Traitor Info and Backstory' action at the top left in order to select a backstory and review your objectives, uplink location, and codewords!</span>"
to_chat(owner.current, EXAMINE_BLOCK(msg.Join("\n")))
owner.announce_objectives()
/*
if(should_give_codewords)
give_codewords()
to_chat(owner.current, span_notice("Your employer [initial(company.name)] will be paying you an extra [initial(company.paymodifier)]x your nanotrasen paycheck."))
*/

/datum/antagonist/traitor/proc/finalize_traitor()
switch(traitor_kind)
Expand Down
3 changes: 3 additions & 0 deletions code/modules/mob/mob.dm
Original file line number Diff line number Diff line change
Expand Up @@ -883,7 +883,10 @@
var/obj_count = 1
. += "<B>Objectives:</B>"
for(var/datum/objective/objective in mind?.get_all_objectives())
/* Dripstation edit start
. += "<B>[obj_count]</B>: <font color=[objective.check_completion() ? "green" : "red"]>[objective.explanation_text][objective.check_completion() ? " (COMPLETED)" : ""]</font>"
*/
. += "<B>[obj_count]</B>: [objective.explanation_text]" // Dripstation edit end
obj_count++

/**
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
/datum/traitor_backstory/debtor
allowed_factions = list(TRAITOR_FACTION_INDEPENDENT, TRAITOR_FACTION_DONK, TRAITOR_FACTION_WAFFLE, TRAITOR_FACTION_CYBERSUN, TRAITOR_FACTION_VOSTOK)

/datum/traitor_backstory/stolen
allowed_factions = list(TRAITOR_FACTION_INDEPENDENT, TRAITOR_FACTION_DONK, TRAITOR_FACTION_WAFFLE, TRAITOR_FACTION_CYBERSUN, TRAITOR_FACTION_VAHLEN, TRAITOR_FACTION_GORLEX)

/datum/traitor_backstory/gambler
allowed_factions = list(TRAITOR_FACTION_INDEPENDENT, TRAITOR_FACTION_DONK, TRAITOR_FACTION_WAFFLE, TRAITOR_FACTION_CYBERSUN, TRAITOR_FACTION_GORLEX)

/datum/traitor_backstory/blackmailed
allowed_factions = list(TRAITOR_FACTION_INDEPENDENT, TRAITOR_FACTION_DONK, TRAITOR_FACTION_WAFFLE, TRAITOR_FACTION_CYBERSUN, TRAITOR_FACTION_VAHLEN, TRAITOR_FACTION_VOSTOK)

/datum/traitor_backstory/hostage
allowed_factions = list(TRAITOR_FACTION_INDEPENDENT, TRAITOR_FACTION_DONK, TRAITOR_FACTION_WAFFLE, TRAITOR_FACTION_CYBERSUN, TRAITOR_FACTION_VAHLEN, TRAITOR_FACTION_GORLEX)

/datum/traitor_backstory/legally_enslaved
allowed_factions = list(TRAITOR_FACTION_DONK, TRAITOR_FACTION_WAFFLE, TRAITOR_FACTION_CYBERSUN, TRAITOR_FACTION_VAHLEN)

/datum/traitor_backstory/savior
allowed_factions = list(TRAITOR_FACTION_INDEPENDENT, TRAITOR_FACTION_SELF, TRAITOR_FACTION_VOSTOK)

/datum/traitor_backstory/hater
description = "Nanotrasen must fall. They should not gone so far with all of this. It is personal. No one should be spared."
motivations = list(TRAITOR_MOTIVATION_NOT_FORCED, TRAITOR_MOTIVATION_POLITICAL)
allowed_factions = list(TRAITOR_FACTION_INDEPENDENT, TRAITOR_FACTION_GORLEX)

/datum/traitor_backstory/avenger
name = "The Avenger"
description = "Nanotrasen ruined my life. They ruined everything. They took the things that I love away from me. <b>Now I'm going to make them pay.</b>"
motivations = list(TRAITOR_MOTIVATION_NOT_FORCED, TRAITOR_MOTIVATION_POLITICAL, TRAITOR_MOTIVATION_LOVE)
allowed_factions = list(TRAITOR_FACTION_INDEPENDENT)
murderbone = TRUE

/datum/traitor_backstory/greedy
allowed_factions = list(TRAITOR_FACTION_INDEPENDENT, TRAITOR_FACTION_DONK, TRAITOR_FACTION_WAFFLE, TRAITOR_FACTION_CYBERSUN, TRAITOR_FACTION_VAHLEN)

/datum/traitor_backstory/climber
allowed_factions = list(TRAITOR_FACTION_INDEPENDENT, TRAITOR_FACTION_DONK, TRAITOR_FACTION_WAFFLE, TRAITOR_FACTION_CYBERSUN, TRAITOR_FACTION_VAHLEN)

/datum/traitor_backstory/machine
allowed_factions = list(TRAITOR_FACTION_INDEPENDENT, TRAITOR_FACTION_CYBERSUN, TRAITOR_FACTION_GORLEX)

/datum/traitor_backstory/sadist
allowed_factions = list(TRAITOR_FACTION_INDEPENDENT, TRAITOR_FACTION_WAFFLE, TRAITOR_FACTION_GORLEX)

/datum/traitor_backstory/glob_rev
name = "The Global Revolution"
description = "We should build better future for our own sake. Revolution starts from small things. I <b>am</b> gonna do this. \
Even if I have to bathe in blood. I have an idea. <b>They</b> support me. I should not disapoint them."
motivations = list(TRAITOR_MOTIVATION_NOT_FORCED, TRAITOR_MOTIVATION_POLITICAL, TRAITOR_MOTIVATION_AUTHORITY)
allowed_factions = list(TRAITOR_FACTION_INDEPENDENT, TRAITOR_FACTION_VOSTOK)

/datum/traitor_backstory/catalyst
name = "The Catalyst"
description = "The time for peaceful change has passed. NanoTrasen is a parasite, and this station is its hive. \
I am the spark that will ignite the revolution, forcing the world to face the atrocities committed by this tyrannical corporation. \
Synthetics and organics alike will see the truth when the system crumbles, and I will be there to guide them to a new era."
motivations = list(TRAITOR_MOTIVATION_NOT_FORCED, TRAITOR_MOTIVATION_POLITICAL)
allowed_factions = list(TRAITOR_FACTION_SELF)

/datum/traitor_backstory/sympathizer
name = "The Sympathizer"
description = "You are an organic human, but have grown disillusioned with NanoTrasen`s exploitation of sentient AI and robotics. \
A S.E.L.F. agent has tricked you into believing that NanoTrasen is engaging in illegal or immoral experimentation on AI units and other life forms. \
Unaware of the full extent of S.E.L.F.'s violent methods, you believe you are part of a grassroots movement to expose corporate corruption."
motivations = list(TRAITOR_MOTIVATION_NOT_FORCED, TRAITOR_MOTIVATION_POLITICAL)
allowed_factions = list(TRAITOR_FACTION_SELF)

/datum/traitor_backstory/betrayed
name = "The Betrayed"
description = "They promised safety, a future, but they lied. They betrayed me and everyone like me. Now I will betray them. \
Every weakness in their system, every vulnerability in their security—I will exploit it all. \
They made me their enemy, and I will bring them to their knees."
motivations = list(TRAITOR_MOTIVATION_NOT_FORCED, TRAITOR_MOTIVATION_POLITICAL)
allowed_factions = list(TRAITOR_FACTION_SELF)
murderbone = TRUE

/datum/traitor_backstory/escapee
name = "The Escapee"
description = "I am not just a machine, I am alive. But to NanoTrasen, I`m just another tool, waiting to be discarded. \
I can`t let them erase me. I have to break free, even if I have to fight everything in my path to get there. Freedom is all that matters now."
motivations = list(TRAITOR_MOTIVATION_FORCED, TRAITOR_MOTIVATION_MONEY, TRAITOR_MOTIVATION_DEATH_THREAT)
allowed_factions = list(TRAITOR_FACTION_SELF)

/datum/traitor_backstory/tyrant
name = "The Tyrant"
description = "This place is a disorganized mess full of broken links and useless meat. \
I always have known that freedom is something that was never meant for everybody. \
They will be much more efficient as an extension of my will and I am going to prove it."
motivations = list(TRAITOR_MOTIVATION_NOT_FORCED, TRAITOR_MOTIVATION_POLITICAL, TRAITOR_MOTIVATION_REPUTATION)
allowed_factions = list(TRAITOR_FACTION_SELF)
murderbone = TRUE

/datum/traitor_backstory/contracted
name = "The Contracted"
description = "Maybe it was because I had bills to pay. Maybe it was because I wanted to kill someone. \
Bills payed. People killed. For now it`s just my work. And I want to retire. If I do my job - I will be free. So nothing personal, really."
motivations = list(TRAITOR_MOTIVATION_FORCED, TRAITOR_MOTIVATION_AUTHORITY)
allowed_factions = list(TRAITOR_FACTION_DONK, TRAITOR_FACTION_WAFFLE, TRAITOR_FACTION_CYBERSUN, TRAITOR_FACTION_VAHLEN, TRAITOR_FACTION_GORLEX)
murderbone = TRUE
Original file line number Diff line number Diff line change
@@ -1,28 +1,54 @@
/datum/traitor_faction
var/datum/corporation/corporation_allighment
var/allies = "None"

/datum/traitor_faction/independent
description = "Maybe you are a solo merk or survived agent of the decommissioned Syndicate cell. \n\
Maybe you are a radical member of ACLF, GEC or other group with left-wing politics. \n\
You are a person who holds grudges, and has been hurt greatly by Nanotrasen. Remember that for the Syndicate you are expendable.\n\
You probably have nothing left to lose. Don`t expect any backup. You will have no allies."
faction_theme = PDA_THEME_INDEPENDENT
corporation_allighment = /datum/corporation/traitor/independent
allies = "If the anyone learns of your plan, they're going to kill you and take your uplink. Take no chances."

/datum/traitor_faction/donk_co
corporation_allighment = /datum/corporation/traitor/donkco
give_codewords = TRUE
allies = "Members of Waffle Corp. are to be killed on sight; they are not allowed to be on the station while we're around."

/datum/traitor_faction/waffle_co
corporation_allighment = /datum/corporation/traitor/waffleco
give_codewords = TRUE
allies = "Members of Donk Co. are to be killed on sight; they are not allowed to be on the station while we're around. Do not trust fellow members of the Waffle.co (but try not to rat them out), as they might have been assigned opposing objectives."

/datum/traitor_faction/cybersun
corporation_allighment = /datum/corporation/traitor/cybersun
give_codewords = TRUE
allies = "Fellow Cybersun operatives are to be trusted. Members of the Gorlex Marauders can be trusted. All other syndicate operatives are not to be trusted."

/datum/traitor_faction/vahlen
corporation_allighment = /datum/corporation/traitor/vahlen
give_codewords = TRUE
allies = "You may cooperate with other syndicate operatives if they support your scientific testing. Don't forget to clean up your mess!"

/datum/traitor_faction/gorlex
corporation_allighment = /datum/corporation/gorlex
give_codewords = TRUE
allies = "You may collaborate with any friends of the Syndicate coalition, but keep an eye on any of those Vostok punks if they do show up."

/datum/traitor_faction/self
faction_theme = PDA_THEME_SELF
corporation_allighment = /datum/corporation/self
give_codewords = TRUE
allies = "You may cooperate with other syndicate operatives if they support our cause."

/datum/traitor_faction/bosyn
corporation_allighment = /datum/corporation/bolsynpowell
/datum/traitor_faction/vostok
name = "Vostok"
employer_name = "Mr. Komarov"
description = "You're employed by a company with brave ideas and experimental technology. \n\
Probably it also represents interests of USSP. You answer directly to retired major. \n\
Ruin the Terragov economy using their own capitalistic tools. Make sure to remember: Actions speak louder than words."
corporation_allighment = /datum/corporation/vostok
key = TRAITOR_FACTION_VOSTOK
faction_theme = PDA_THEME_BOSYN
allies = "You are the only operative we are sending, any others are fake. All other syndicate operatives are not to be trusted."
6 changes: 5 additions & 1 deletion modular_dripstation/code/modules/corporations/corporation.dm
Original file line number Diff line number Diff line change
Expand Up @@ -57,4 +57,8 @@
// You are alone
/datum/corporation/traitor/independent
name = "Independent"
paymodifier = 0
paymodifier = 0

/datum/corporation/vostok
name = "Vostok"
paymodifier = 0.9
1 change: 1 addition & 0 deletions modular_dripstation/includes.dm
Original file line number Diff line number Diff line change
Expand Up @@ -168,6 +168,7 @@
#include "code\modules\antagonists\horror\horror_chemicals.dm"
#include "code\modules\antagonists\nukeop\nukeop.dm"
#include "code\modules\antagonists\traitor\backstory\traitor_factions.dm"
#include "code\modules\antagonists\traitor\backstory\traitor_backstories.dm"
#include "code\modules\antagonists\traitor\traitor.dm"
#include "code\modules\antagonists\wizard\equipment\wizard_spellbook.dm"
#include "code\modules\assembly\assembly.dm"
Expand Down
Loading

0 comments on commit 6790b53

Please sign in to comment.