Skip to content

Commit

Permalink
The Uplink: Re-Categorized.
Browse files Browse the repository at this point in the history
Holy fuck that's a lot of categories. This was kinda necessary from just how many listings i added. You'd have to scroll down each one previously to try and find the one thing you wanted, and it kinda annoyed some people. (Increased ToT discounts by 2, and fixed a few things.)
  • Loading branch information
hyperjll committed Oct 14, 2024
1 parent e594160 commit 00bd274
Show file tree
Hide file tree
Showing 44 changed files with 2,034 additions and 2,050 deletions.
4 changes: 2 additions & 2 deletions code/modules/antagonists/traitor/datum_traitor.dm
Original file line number Diff line number Diff line change
Expand Up @@ -47,8 +47,8 @@
/// The uplink handler that this traitor belongs to.
var/datum/uplink_handler/uplink_handler

var/uplink_sales_min = 6 // boosted by 2 to make up for the extra categories
var/uplink_sales_max = 8 // boosted by 2 to make up for the extra categories
var/uplink_sales_min = 8 // boosted by 4 to make up for the extra categories
var/uplink_sales_max = 10 // boosted by 4 to make up for the extra categories

///the final objective the traitor has to accomplish, be it escaping, hijacking, or just martyrdom.
var/datum/objective/ending_objective
Expand Down
6 changes: 3 additions & 3 deletions code/modules/uplink/uplink_items.dm
Original file line number Diff line number Diff line change
Expand Up @@ -202,15 +202,15 @@

/datum/uplink_category/discounts
name = "Discounted Gear"
weight = -1
weight = -3

/datum/uplink_category/discount_team_gear
name = "Discounted Team Gear"
weight = -1
weight = -3

/datum/uplink_category/limited_discount_team_gear
name = "Limited Stock Team Gear"
weight = -2
weight = -4

//Discounts (dynamically filled above)
/datum/uplink_item/discounts
Expand Down
10 changes: 1 addition & 9 deletions code/modules/uplink/uplink_items/ammunition.dm
Original file line number Diff line number Diff line change
@@ -1,19 +1,11 @@
/datum/uplink_category/ammo
name = "Ammunition"
weight = 7
weight = 22

/datum/uplink_item/ammo
category = /datum/uplink_category/ammo
surplus = 40

/datum/uplink_item/ammo/toydarts
name = "Box of Riot Darts"
desc = "A box of 40 Donksoft riot darts, for reloading any compatible foam dart magazine. Don't forget to share!"
item = /obj/item/ammo_box/foambox/riot
cost = 2
surplus = 0
uplink_item_flags = SYNDIE_TRIPS_CONTRABAND
purchasable_from = ~UPLINK_SERIOUS_OPS

/datum/uplink_item/ammo/revolver
name = ".357 Speed Loader"
Expand Down
2 changes: 1 addition & 1 deletion code/modules/uplink/uplink_items/badass.dm
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/datum/uplink_category/badassery
name = "(Pointless) Badassery"
weight = 0
weight = -1

/datum/uplink_item/badass
category = /datum/uplink_category/badassery
Expand Down
2 changes: 1 addition & 1 deletion code/modules/uplink/uplink_items/bundle.dm
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
//All bundles and telecrystals
/datum/uplink_category/bundle
name = "Bundles"
weight = 10
weight = 29

/datum/uplink_item/bundles_tc
category = /datum/uplink_category/bundle
Expand Down
2 changes: 1 addition & 1 deletion code/modules/uplink/uplink_items/contractor.dm
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/datum/uplink_category/contractor
name = "Contractor"
weight = 10
weight = 30

/datum/uplink_item/bundles_tc/contract_kit
name = "Contract Kit"
Expand Down
68 changes: 2 additions & 66 deletions code/modules/uplink/uplink_items/dangerous.dm
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
//All bundles and telecrystals
/datum/uplink_category/dangerous
name = "Conspicuous Weapons"
weight = 9
name = "Ranged Weapons"
weight = 26

/datum/uplink_item/dangerous
category = /datum/uplink_category/dangerous
Expand Down Expand Up @@ -31,74 +31,10 @@
cost = 3
uplink_item_flags = SYNDIE_TRIPS_CONTRABAND

/datum/uplink_item/dangerous/sword
name = "Energy Sword"
desc = "The energy sword is an edged weapon with a blade of pure energy. The sword is small enough to be \
pocketed when inactive. Activating it produces a loud, distinctive noise."
progression_minimum = 20 MINUTES
item = /obj/item/melee/energy/sword/saber
cost = 8
purchasable_from = ~UPLINK_CLOWN_OPS

/datum/uplink_item/dangerous/powerfist
name = "Power Fist"
desc = "The power-fist is a metal gauntlet with a built-in piston-ram powered by an external gas supply.\
Upon hitting a target, the piston-ram will extend forward to make contact for some serious damage. \
Using a wrench on the piston valve will allow you to tweak the amount of gas used per punch to \
deal extra damage and hit targets further. Use a screwdriver to take out any attached tanks."
progression_minimum = 20 MINUTES
item = /obj/item/melee/powerfist
cost = 6
purchasable_from = ~UPLINK_ALL_SYNDIE_OPS

/datum/uplink_item/dangerous/rapid
name = "Gloves of the North Star"
desc = "These gloves let the user punch people very fast. Does not improve weapon attack speed or the meaty fists of a hulk."
progression_minimum = 20 MINUTES
item = /obj/item/clothing/gloves/rapid
cost = 8

/datum/uplink_item/dangerous/doublesword
name = "Double-Bladed Energy Sword"
desc = "The double-bladed energy sword does slightly more damage than a standard energy sword and will deflect \
energy projectiles it blocks, but requires two hands to wield. It also struggles to protect you from tackles."
progression_minimum = 30 MINUTES
item = /obj/item/dualsaber
cost = 13
purchasable_from = ~UPLINK_ALL_SYNDIE_OPS //nukies get their own version

/datum/uplink_item/dangerous/doublesword/get_discount_value(discount_type)
switch(discount_type)
if(TRAITOR_DISCOUNT_BIG)
return 0.5
if(TRAITOR_DISCOUNT_AVERAGE)
return 0.35
else
return 0.2

/datum/uplink_item/dangerous/guardian
name = "Holoparasites"
desc = "Though capable of near sorcerous feats via use of hardlight holograms and nanomachines, they require an \
organic host as a home base and source of fuel. Holoparasites come in various types and share damage with their host."
progression_minimum = 30 MINUTES
item = /obj/item/guardian_creator/tech
cost = 18
surplus = 0
purchasable_from = ~UPLINK_ALL_SYNDIE_OPS
restricted = TRUE
refundable = TRUE

/datum/uplink_item/dangerous/revolver
name = "Syndicate Revolver"
desc = "Waffle Co.'s modernized Syndicate revolver. Utilizes bluespace technology to have 12 chambers specifically designed to fire brutal rounds of .357 Magnum."
item = /obj/item/gun/ballistic/revolver/syndicate
cost = 13
surplus = 50
purchasable_from = ~UPLINK_ALL_SYNDIE_OPS //nukies get their own version

/datum/uplink_item/dangerous/cat
name = "Feral cat grenade"
desc = "This grenade is filled with 5 feral cats in stasis. Upon activation, the feral cats are awoken and unleashed unto unlucky bystanders. WARNING: The cats are not trained to discern friend from foe!"
cost = 5
item = /obj/item/grenade/spawnergrenade/cat
surplus = 30
118 changes: 1 addition & 117 deletions code/modules/uplink/uplink_items/device_tools.dm
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/datum/uplink_category/device_tools
name = "Misc. Gadgets"
weight = 3
weight = 15

/datum/uplink_item/device_tools
category = /datum/uplink_category/device_tools
Expand Down Expand Up @@ -40,31 +40,6 @@
item = /obj/item/clothing/glasses/thermal/syndi
cost = 4

/datum/uplink_item/device_tools/cutouts
name = "Adaptive Cardboard Cutouts"
desc = "These cardboard cutouts are coated with a thin material that prevents discoloration and makes the images on them appear more lifelike. \
This pack contains three as well as a crayon for changing their appearances."
item = /obj/item/storage/box/syndie_kit/cutouts
cost = 1
surplus = 20

/datum/uplink_item/device_tools/briefcase_launchpad
name = "Briefcase Launchpad"
desc = "A briefcase containing a launchpad, a device able to teleport items and people to and from targets up to eight tiles away from the briefcase. \
Also includes a remote control, disguised as an ordinary folder. Touch the briefcase with the remote to link it."
surplus = 0
item = /obj/item/storage/briefcase/launchpad
cost = 6

/datum/uplink_item/device_tools/syndicate_teleporter
name = "Experimental Syndicate Teleporter"
desc = "A handheld device that teleports the user 4-8 meters forward. \
Beware, teleporting into a wall will trigger a parallel emergency teleport; \
however if that fails, you may need to be stitched back together. \
Comes with 4 charges, recharges randomly. Warranty null and void if exposed to an electromagnetic pulse."
item = /obj/item/storage/box/syndie_kit/syndicate_teleporter
cost = 8

/datum/uplink_item/device_tools/camera_app
name = "SyndEye Program"
desc = "A data disk containing a unique PC app that allows you to watch cameras and track crewmembers."
Expand All @@ -86,59 +61,6 @@
item = /obj/item/card/emag/doorjack
cost = 3

/datum/uplink_item/device_tools/fakenucleardisk
name = "Decoy Nuclear Authentication Disk"
desc = "It's just a normal disk. Visually it's identical to the real deal, but it won't hold up under closer scrutiny by the Captain. \
Don't try to give this to us to complete your objective, we know better!"
item = /obj/item/disk/nuclear/fake
cost = 1
surplus = 1
uplink_item_flags = NONE

/datum/uplink_item/device_tools/frame
name = "F.R.A.M.E. disk"
desc = "When inserted into a tablet, this cartridge gives you five messenger viruses which \
when used cause the targeted tablet to become a new uplink with zero TCs, and immediately become unlocked. \
You will receive the unlock code upon activating the virus, and the new uplink may be charged with \
telecrystals normally."
item = /obj/item/computer_disk/virus/frame
cost = 4
restricted = TRUE
purchasable_from = ~UPLINK_ALL_SYNDIE_OPS

/datum/uplink_item/device_tools/frame/spawn_item(spawn_path, mob/user, datum/uplink_handler/uplink_handler, atom/movable/source)
. = ..()
var/obj/item/computer_disk/virus/frame/target = .
if(!target)
return
target.current_progression = uplink_handler.progression_points

/datum/uplink_item/device_tools/failsafe
name = "Failsafe Uplink Code"
desc = "When entered the uplink will self-destruct immediately."
item = ABSTRACT_UPLINK_ITEM
cost = 1
surplus = 0
restricted = TRUE
purchasable_from = ~UPLINK_ALL_SYNDIE_OPS

/datum/uplink_item/device_tools/failsafe/spawn_item(spawn_path, mob/user, datum/uplink_handler/uplink_handler, atom/movable/source)
var/datum/component/uplink/uplink = source.GetComponent(/datum/component/uplink)
if(!uplink)
return
if(!uplink.unlock_note) //no note means it can't be locked (typically due to being an implant.)
to_chat(user, span_warning("This device doesn't support code entry!"))
return

uplink.failsafe_code = uplink.generate_code()
var/code = "[islist(uplink.failsafe_code) ? english_list(uplink.failsafe_code) : uplink.failsafe_code]"
var/datum/antagonist/traitor/traitor_datum = user.mind?.has_antag_datum(/datum/antagonist/traitor)
if(traitor_datum)
traitor_datum.antag_memory += "<b>Uplink Failsafe Code:</b> [code]" + "<br>"
traitor_datum.update_static_data_for_all_viewers()
to_chat(user, span_warning("The new failsafe code for this uplink is now: [code].[traitor_datum ? " You may check your antagonist info to recall this." : null]"))
return source //For log icon

/datum/uplink_item/device_tools/toolbox
name = "Full Syndicate Toolbox"
desc = "The Syndicate toolbox is a suspicious black and red. It comes loaded with a full tool set including a \
Expand All @@ -157,15 +79,6 @@
cost = 3
purchasable_from = ~UPLINK_ALL_SYNDIE_OPS

/datum/uplink_item/device_tools/suspiciousphone
name = "Protocol CRAB-17 Phone"
desc = "The Protocol CRAB-17 Phone, a phone borrowed from an unknown third party, it can be used to crash the space market, funneling the losses of the crew to your bank account.\
The crew can move their funds to a new banking site though, unless they HODL, in which case they deserve it."
item = /obj/item/suspiciousphone
restricted = TRUE
cost = 7
limited_stock = 1

/datum/uplink_item/device_tools/binary
name = "Binary Translator Key"
desc = "A key that, when inserted into a radio headset, allows you to listen to and talk with silicon-based lifeforms, \
Expand All @@ -190,26 +103,6 @@
item = /obj/item/stack/sticky_tape/pointy/super
cost = 1

/datum/uplink_item/device_tools/hacked_module
name = "Hacked AI Law Upload Module"
desc = "When used with an upload console, this module allows you to upload priority laws to an artificial intelligence. \
Be careful with wording, as artificial intelligences may look for loopholes to exploit."
progression_minimum = 30 MINUTES
item = /obj/item/ai_module/syndicate
cost = 4

/datum/uplink_item/device_tools/hypnotic_flash
name = "Hypnotic Flash"
desc = "A modified flash able to hypnotize targets. If the target is not in a mentally vulnerable state, it will only confuse and pacify them temporarily."
item = /obj/item/assembly/flash/hypnotic
cost = 7

/datum/uplink_item/device_tools/hypnotic_grenade
name = "Hypnotic Grenade"
desc = "A modified flashbang grenade able to hypnotize targets. The sound portion of the flashbang causes hallucinations, and will allow the flash to induce a hypnotic trance to viewers."
item = /obj/item/grenade/hypnotic
cost = 12

/datum/uplink_item/device_tools/singularity_beacon
name = "Power Beacon"
desc = "When screwed to wiring attached to an electric grid and activated, this large device pulls any \
Expand All @@ -222,15 +115,6 @@
surplus = 0 // not while there isnt one on any station
purchasable_from = ~UPLINK_ALL_SYNDIE_OPS

/datum/uplink_item/device_tools/powersink
name = "Power Sink"
desc = "When screwed to wiring attached to a power grid and activated, this large device lights up and places excessive \
load on the grid, causing a station-wide blackout. The sink is large and cannot be stored in most \
traditional bags and boxes. Caution: Will explode if the powernet contains sufficient amounts of energy."
progression_minimum = 20 MINUTES
item = /obj/item/powersink
cost = 11

/datum/uplink_item/device_tools/syndicate_contacts
name = "Polarized Contact Lenses"
desc = "High tech contact lenses that bind directly with the surface of your eyes to give them immunity to flashes and \
Expand Down
Loading

0 comments on commit 00bd274

Please sign in to comment.