Skip to content

Commit

Permalink
Adjusts vending machine stocks to reflect ship populations and variou…
Browse files Browse the repository at this point in the history
…s other changes to vendors (#2617)

<!-- Write **BELOW** The Headers and **ABOVE** The comments else it may
not be viewable. -->
<!-- You can view Contributing.MD for a detailed description of the pull
request process. -->
## About The Pull Request
1. This PR lowers the amount of loot in gameplay item vendors such as
the YouTool, NanoMed, and Frontier Equipment Vendor to better fit the
amount of people on ships. The NanoMed was the worst offender, carrying
enough medical supplies to stock an entire ship for the round for free.
2. Removes the Magivend, because it doesn't have a purpose anymore.
Wizards aren't real and you will never encounter this vendor outside of
the centcomm wizard location.
3. Removes the mining point card and mining access card because they are
both mostly useless and are no longer in the mining vendor.
4. Removes the unused Pubbystation vendors.
5. Fixes the weapon selection on the NT marine vendor to have energy
weapons and removes the eswords from all 3 marine vendors.
6. Reflavors the Dutch hot coco to "Pearl Hot Chocolate" to fit in with
the lore. Also adds the Cafe Latte and Soy Latte to the coffee vendor.

<details><summary>Images of affected vendor stocks.</summary>


![coffeev](https://github.com/shiptest-ss13/Shiptest/assets/95449138/9a28188a-afed-4e56-a597-0818b4c998c4)

![toolv](https://github.com/shiptest-ss13/Shiptest/assets/95449138/c667fc5c-5700-4eb2-b249-0dfc4f6592c3)

![image](https://github.com/shiptest-ss13/Shiptest/assets/95449138/0bc142f6-da41-4af3-be73-1be3d801f552)

![image](https://github.com/shiptest-ss13/Shiptest/assets/95449138/fbe79cd5-caa7-4d5c-9ce0-af2ec8a5f7b7)

</details>
<!-- Describe The Pull Request. Please be sure every change is
documented or this can delay review and even discourage maintainers from
merging your PR! -->

## Why It's Good For The Game
## TODO: Reflavor equipment vendors as bulk specialized storage instead
of commercial vending stations
Vendors suck! I hate them! They're all free! They shouldn't have that
much stuff!
Vendors like the NanoMed just had too many things in them for a ship to
reasonably have.
On a different note, the changes to the mining vendor now should make it
more acceptable in terms of balance. Mining points are still a pain in
the ass and I might change it to just use cash so miners can use a
portion of the credits they find.
<!-- Please add a short description of why you think these changes would
benefit the game. If you can't justify it in words, it might not be
worth adding. -->

## Changelog

:cl:
del: Some vendors now have far less stock and a smaller variety of items
to compensate for being free and not on a station
del: Removed Magivend vendor
del: Removed Mining points cards and mining access cards
del: Removed Unused Pubbystation vendors
del: Removed eswords from marine vendors
add: NT marine vendor now gives energy guns for coupons and stocks
energy gun cells
add: Cafe and Soy Lattes are now available in the coffee vendor
fix: Dutch Hot Coco is now Pearl Hot Chocolate to be lore compliant
/:cl:

<!-- Both :cl:'s are required for the changelog to work! You can put
your name to the right of the first :cl: if you want to overwrite your
GitHub username as author ingame. -->
<!-- You can use multiple of the same prefix (they're only used for the
icon ingame) and delete the unneeded ones. Despite some of the tags,
changelogs should generally represent how a player might be affected by
the changes rather than a summary of the PR's contents. -->
  • Loading branch information
Zevotech authored Feb 10, 2024
1 parent a82418b commit e120049
Show file tree
Hide file tree
Showing 16 changed files with 80 additions and 203 deletions.
1 change: 0 additions & 1 deletion _maps/map_files/generic/CentCom.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -2209,7 +2209,6 @@
/turf/open/floor/wood,
/area/wizard_station)
"axw" = (
/obj/machinery/vending/magivend,
/turf/open/floor/engine/cult,
/area/wizard_station)
"axx" = (
Expand Down
1 change: 0 additions & 1 deletion _maps/shuttles/syndicate/syndicate_gorlex_hyena.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -1669,7 +1669,6 @@
/obj/item/gun/ballistic/automatic/pistol,
/obj/item/clothing/accessory/holster,
/obj/item/grenade/chem_grenade/metalfoam,
/obj/item/card/mining_access_card,
/obj/machinery/airalarm/directional/west,
/obj/item/tank/jetpack/suit,
/turf/open/floor/carpet/red,
Expand Down
1 change: 0 additions & 1 deletion code/game/objects/structures/icemoon/cave_entrance.dm
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ GLOBAL_LIST_INIT(ore_probability, list(
/obj/item/tank/jetpack/suit = 10,
/obj/item/survivalcapsule = 15,
/obj/item/reagent_containers/hypospray/medipen/survival = 15,
/obj/item/card/mining_point_card = 15,
/obj/item/gps/mining = 10,
/obj/item/extraction_pack = 10,
/obj/item/reagent_containers/food/drinks/beer = 15,
Expand Down
1 change: 0 additions & 1 deletion code/game/objects/structures/spawner.dm
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ GLOBAL_LIST_INIT(astroloot, list(
/obj/item/tank/jetpack/suit = 10,
/obj/item/survivalcapsule = 15,
/obj/item/reagent_containers/hypospray/medipen/survival = 15,
/obj/item/card/mining_point_card = 15,
/obj/item/gps/mining = 10,
/obj/item/extraction_pack = 10,
/obj/item/reagent_containers/food/drinks/beer = 15,
Expand Down
1 change: 1 addition & 0 deletions code/modules/clothing/glasses/_glasses.dm
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,7 @@
attack_verb = list("sliced")
hitsound = 'sound/weapons/bladeslice.ogg'
sharpness = IS_SHARP
custom_price = 500

/obj/item/clothing/glasses/science
name = "science goggles"
Expand Down
17 changes: 15 additions & 2 deletions code/modules/food_and_drinks/drinks/drinks.dm
Original file line number Diff line number Diff line change
Expand Up @@ -254,13 +254,26 @@
list_reagents = list(/datum/reagent/consumable/tea = 30)

/obj/item/reagent_containers/food/drinks/mug/coco
name = "Dutch hot coco"
desc = "Made in Space South America."
name = "Pearl Hot Chocolate"
desc = "A rich delicacy from the humid regions of Terra."
list_reagents = list(/datum/reagent/consumable/hot_coco = 15, /datum/reagent/consumable/sugar = 5)
foodtype = SUGAR
resistance_flags = FREEZE_PROOF
custom_price = 120

/obj/item/reagent_containers/food/drinks/cafelatte
name = "cafe latte"
desc = "A nice, strong and refreshing beverage while you're reading."
icon_state = "cafe_latte"
list_reagents = list(/datum/reagent/consumable/cafe_latte = 30)
custom_price = 200

/obj/item/reagent_containers/food/drinks/soylatte
name = "soy latte"
desc = "A nice and refreshing beverage while you're reading."
icon_state = "soy_latte"
list_reagents = list(/datum/reagent/consumable/soy_latte = 30)
custom_price = 200

/obj/item/reagent_containers/food/drinks/dry_ramen
name = "cup ramen"
Expand Down
1 change: 1 addition & 0 deletions code/modules/mining/equipment/mineral_scanner.dm
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
w_class = WEIGHT_CLASS_SMALL
flags_1 = CONDUCT_1
slot_flags = ITEM_SLOT_BELT
custom_price = 200
var/cooldown = 35
var/current_cooldown = 0
var/speaker = TRUE // Speaker that plays a sound when pulsed.
Expand Down
103 changes: 15 additions & 88 deletions code/modules/mining/machine_vending.dm
Original file line number Diff line number Diff line change
Expand Up @@ -19,58 +19,25 @@
all_items_free = FALSE
// Mining products are handled differently, because I am too lazy to convert this list stolen from the old vendor.
products = list( //if you add something to this, please, for the love of god, sort it by price/type. use tabs and not spaces.
/obj/item/stack/marker_beacon/thirty = 6,
/obj/item/reagent_containers/food/drinks/bottle/whiskey = 3,
/obj/item/storage/box/gum/bubblegum = 5,
/obj/item/clothing/mask/cigarette/cigar/havana = 3,
/obj/item/soap/nanotrasen = 1,
/obj/item/hivelordstabilizer = 6,
/obj/item/fulton_core = 1,
/obj/item/survivalcapsule = 3,
/obj/item/storage/belt/mining = 3,
/obj/item/card/mining_point_card = 5,
/obj/item/reagent_containers/hypospray/medipen/survival = 6,
/obj/item/storage/firstaid/brute = 3,
/obj/item/storage/box/minertracker = 5,
/obj/item/wormhole_jaunter = 3,
/obj/item/kinetic_crusher = 1,
/obj/item/gun/energy/kinetic_accelerator = 3,
/obj/item/mining_scanner = 5,
/obj/item/stack/marker_beacon/thirty = 3,
/obj/item/mining_scanner = 2,
/obj/item/t_scanner/adv_mining_scanner = 2,
/obj/item/resonator = 3,
/obj/item/extraction_pack = 3,
/obj/item/lazarus_injector = 1,
/obj/item/pickaxe/silver = 3,
/obj/item/storage/backpack/duffelbag/mining_conscript = 3,
/obj/item/tank/jetpack/suit = 3,
/obj/item/spacecash/bundle/c1000 = 5,
/obj/item/clothing/suit/space/hardsuit/mining/independent = 3,
/obj/item/resonator/upgraded = 1,
/obj/item/clothing/shoes/bhop = 3,
/obj/item/survivalcapsule/luxury = 3,
/mob/living/simple_animal/hostile/mining_drone = 3,
/obj/item/mine_bot_upgrade = 3,
/obj/item/mine_bot_upgrade/health = 3,
/obj/item/borg/upgrade/modkit/cooldown/minebot = 3,
/obj/item/slimepotion/slime/sentience/mining = 1,
/obj/item/borg/upgrade/modkit/minebot_passthrough = 3,
/obj/item/borg/upgrade/modkit/tracer = 3,
/obj/item/borg/upgrade/modkit/tracer/adjustable = 3,
/obj/item/borg/upgrade/modkit/chassis_mod = 3,
/obj/item/borg/upgrade/modkit/range = 3,
/obj/item/borg/upgrade/modkit/damage = 3,
/obj/item/borg/upgrade/modkit/cooldown = 3,
/obj/item/borg/upgrade/modkit/aoe/mobs = 2
)
premium = list(
/obj/item/reagent_containers/food/drinks/bottle/absinthe/premium = 3,
/obj/item/laser_pointer = 1,
/obj/item/pickaxe/diamond = 1,
/mob/living/simple_animal/hostile/facehugger/toy = 1,
/obj/item/hivelordstabilizer = 3,
/obj/item/clothing/glasses/meson/gar = 2,
/obj/item/survivalcapsule/luxuryelite = 1,
/obj/item/kinetic_crusher = 1,
/obj/item/gun/energy/kinetic_accelerator = 2,
/obj/item/pickaxe/silver = 1,
/obj/item/borg/upgrade/modkit/range = 2,
/obj/item/borg/upgrade/modkit/damage = 2,
/obj/item/borg/upgrade/modkit/cooldown = 2,
/obj/item/borg/upgrade/modkit/aoe/mobs = 1,
/obj/item/lazarus_injector = 1,
/obj/item/survivalcapsule = 2,
/obj/item/survivalcapsule/luxury = 1,
/obj/item/survivalcapsule/luxuryelite = 1
)


var/voucher_items = list(
"Survival Capsule and Explorer's Webbing" = /obj/item/storage/belt/mining/vendor,
"Resonator Kit" = /obj/item/resonator,
Expand Down Expand Up @@ -140,47 +107,8 @@
icon_state = "mining_voucher"
w_class = WEIGHT_CLASS_TINY

/**********************Mining Point Card**********************/

/obj/item/card/mining_point_card
name = "mining points card"
desc = "A small card preloaded with mining points. Swipe your ID card over it to transfer the points, then discard."
icon_state = "data_1"
custom_price = 500
var/points = 500

/obj/item/card/mining_point_card/attackby(obj/item/I, mob/user, params)
if(istype(I, /obj/item/card/id))
if(points)
var/obj/item/card/id/C = I
C.mining_points += points
to_chat(user, "<span class='info'>You transfer [points] points to [C].</span>")
points = 0
else
to_chat(user, "<span class='alert'>There's no points left on [src].</span>")
..()

/obj/item/card/mining_point_card/examine(mob/user)
. = ..()
. += "<span class='alert'>There's [points] point\s on the card.</span>"

///Conscript kit
/obj/item/card/mining_access_card
name = "mining access card"
desc = "A small card, that when used on any ID, will add mining access."
icon_state = "data_1"

/obj/item/card/mining_access_card/afterattack(atom/movable/AM, mob/user, proximity)
. = ..()
if(istype(AM, /obj/item/card/id) && proximity)
var/obj/item/card/id/I = AM
I.access |= ACCESS_MINING
I.access |= ACCESS_MINING_STATION
I.access |= ACCESS_MECH_MINING
I.access |= ACCESS_MINERAL_STOREROOM
I.access |= ACCESS_CARGO
to_chat(user, "<span class='notice'>You upgrade [I] with mining access.</span>")
qdel(src)

/obj/item/storage/backpack/duffelbag/mining_conscript
name = "EXOCOM rapid deployment kit"
Expand All @@ -193,7 +121,6 @@
new /obj/item/storage/bag/ore(src)
new /obj/item/clothing/suit/hooded/explorer(src)
new /obj/item/clothing/mask/gas/explorer(src)
new /obj/item/card/mining_access_card(src)
new /obj/item/gun/energy/kinetic_accelerator(src)
new /obj/item/kitchen/knife/combat/survival(src)
new /obj/item/flashlight/seclite(src)
Expand Down
22 changes: 0 additions & 22 deletions code/modules/vending/boozeomat.dm
Original file line number Diff line number Diff line change
Expand Up @@ -67,28 +67,6 @@
desc = "A technological marvel, supposedly able to mix just the mixture you'd like to drink the moment you ask for one. This model appears to have no access restrictions."
req_access = null

/obj/machinery/vending/boozeomat/pubby_maint //abandoned bar on Pubbystation
products = list(/obj/item/reagent_containers/food/drinks/bottle/whiskey = 1,
/obj/item/reagent_containers/food/drinks/bottle/absinthe = 1,
/obj/item/reagent_containers/food/drinks/bottle/limejuice = 1,
/obj/item/reagent_containers/food/drinks/bottle/cream = 1,
/obj/item/reagent_containers/food/drinks/soda_cans/tonic = 1,
/obj/item/reagent_containers/food/drinks/drinkingglass = 10,
/obj/item/reagent_containers/food/drinks/ice = 3,
/obj/item/reagent_containers/food/drinks/drinkingglass/shotglass = 6,
/obj/item/reagent_containers/food/drinks/flask = 1)
req_access = null
age_restrictions = FALSE

/obj/machinery/vending/boozeomat/pubby_captain //Captain's quarters on Pubbystation
products = list(/obj/item/reagent_containers/food/drinks/bottle/rum = 1,
/obj/item/reagent_containers/food/drinks/bottle/wine = 1,
/obj/item/reagent_containers/food/drinks/ale = 1,
/obj/item/reagent_containers/food/drinks/drinkingglass = 6,
/obj/item/reagent_containers/food/drinks/ice = 1,
/obj/item/reagent_containers/food/drinks/drinkingglass/shotglass = 4);
req_access = list(ACCESS_CAPTAIN)

/obj/machinery/vending/boozeomat/syndicate_access
req_access = list(ACCESS_SYNDICATE)
age_restrictions = FALSE
Expand Down
3 changes: 3 additions & 0 deletions code/modules/vending/coffee.dm
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,9 @@
/obj/item/reagent_containers/food/drinks/coffee = 6,
/obj/item/reagent_containers/food/drinks/mug/tea = 6,
/obj/item/reagent_containers/food/drinks/mug/coco = 3)
premium = list(
/obj/item/reagent_containers/food/drinks/cafelatte = 3,
/obj/item/reagent_containers/food/drinks/soylatte = 3)
contraband = list(/obj/item/reagent_containers/food/drinks/ice = 12)
refill_canister = /obj/item/vending_refill/coffee
default_price = 45
Expand Down
23 changes: 0 additions & 23 deletions code/modules/vending/magivend.dm

This file was deleted.

48 changes: 19 additions & 29 deletions code/modules/vending/medical.dm
Original file line number Diff line number Diff line change
Expand Up @@ -6,46 +6,36 @@
product_ads = "Go save some lives!;The best stuff for your medbay.;Only the finest tools.;Natural chemicals!;This stuff saves lives.;Don't you want some?;Ping!"
req_access = list(ACCESS_MEDICAL)
products = list(
/obj/item/stack/medical/gauze = 8,
/obj/item/reagent_containers/syringe = 12,
/obj/item/reagent_containers/dropper = 3,
/obj/item/healthanalyzer = 4,
/obj/item/stack/medical/gauze = 5,
/obj/item/stack/medical/splint = 5,
/obj/item/reagent_containers/syringe = 5,
/obj/item/reagent_containers/dropper = 2,
/obj/item/healthanalyzer = 2,
/obj/item/reagent_containers/pill/patch/styptic = 5,
/obj/item/reagent_containers/pill/patch/silver_sulf = 5,
/obj/item/reagent_containers/hypospray/medipen = 3,
/obj/item/reagent_containers/syringe/perfluorodecalin = 2,
/obj/item/reagent_containers/pill/insulin = 5,
/obj/item/reagent_containers/glass/bottle/charcoal = 4,
/obj/item/reagent_containers/syringe/antiviral = 1,
/obj/item/reagent_containers/glass/bottle/charcoal = 3,
/obj/item/reagent_containers/glass/bottle/epinephrine = 3,
/obj/item/reagent_containers/glass/bottle/morphine = 4,
/obj/item/reagent_containers/glass/bottle/morphine = 1,
/obj/item/reagent_containers/glass/bottle/potass_iodide = 1,
/obj/item/reagent_containers/glass/bottle/salglu_solution = 3,
/obj/item/reagent_containers/glass/bottle/toxin = 3,
/obj/item/reagent_containers/syringe/antiviral = 6,
/obj/item/reagent_containers/medigel/styptic = 2,
/obj/item/reagent_containers/medigel/silver_sulf = 2,
/obj/item/reagent_containers/medigel/styptic = 1,
/obj/item/reagent_containers/medigel/silver_sulf = 1,
/obj/item/reagent_containers/medigel/synthflesh = 1,
/obj/item/reagent_containers/medigel/sterilizine = 1,
/obj/item/reagent_containers/pill/morphine = 4,
/obj/item/storage/box/gum/happiness = 3,
/obj/item/sensor_device = 2,
/obj/item/pinpointer/crew = 2,
/obj/item/reagent_containers/glass/bottle/vial/small = 5,
/obj/item/stack/medical/splint = 10)
/obj/item/sensor_device = 1,
/obj/item/pinpointer/crew = 1)
contraband = list(
/obj/item/reagent_containers/pill/tox = 3,
/obj/item/reagent_containers/pill/morphine = 4,
/obj/item/reagent_containers/pill/charcoal = 6,
/obj/item/reagent_containers/pill/tox = 2,
/obj/item/reagent_containers/pill/morphine = 2,
/obj/item/reagent_containers/pill/charcoal = 4,
/obj/item/storage/box/hug/medical = 1)
premium = list(
/obj/item/reagent_containers/medigel/synthflesh = 2,
/obj/item/storage/pill_bottle/psicodine = 2,
/obj/item/reagent_containers/hypospray/medipen = 3,
/obj/item/clothing/glasses/hud/health = 2,
/obj/item/clothing/glasses/hud/health = 1,
/obj/item/clothing/glasses/hud/health/prescription = 1,
/obj/item/hypospray/mkii = 1,
/obj/item/storage/belt/medical = 3,
/obj/item/storage/firstaid/advanced = 2,
/obj/item/shears = 1,
/obj/item/plunger/reinforced = 2)
/obj/item/shears = 1)
armor = list("melee" = 100, "bullet" = 100, "laser" = 100, "energy" = 100, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 50)
resistance_flags = FIRE_PROOF
refill_canister = /obj/item/vending_refill/medical
Expand Down
24 changes: 8 additions & 16 deletions code/modules/vending/medical_wall.dm
Original file line number Diff line number Diff line change
Expand Up @@ -5,17 +5,17 @@
icon_deny = "wallmed-deny"
density = FALSE
products = list(
/obj/item/reagent_containers/syringe = 3,
/obj/item/reagent_containers/pill/patch/styptic = 5,
/obj/item/reagent_containers/pill/patch/silver_sulf = 5,
/obj/item/reagent_containers/pill/charcoal = 2,
/obj/item/reagent_containers/medigel/styptic = 2,
/obj/item/reagent_containers/medigel/silver_sulf = 2,
/obj/item/reagent_containers/syringe = 1,
/obj/item/reagent_containers/pill/patch/styptic = 3,
/obj/item/reagent_containers/pill/patch/silver_sulf = 3,
/obj/item/reagent_containers/pill/charcoal = 1,
/obj/item/reagent_containers/medigel/styptic = 1,
/obj/item/reagent_containers/medigel/silver_sulf = 1,
/obj/item/reagent_containers/medigel/sterilizine = 1
)
contraband = list(
/obj/item/reagent_containers/pill/tox = 2,
/obj/item/reagent_containers/pill/morphine = 2,
/obj/item/reagent_containers/pill/tox = 1,
/obj/item/reagent_containers/pill/morphine = 1,
/obj/item/storage/box/gum/happiness = 1
)
armor = list("melee" = 100, "bullet" = 100, "laser" = 100, "energy" = 100, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 50)
Expand All @@ -30,11 +30,3 @@
/obj/item/vending_refill/wallmed
machine_name = "NanoMed"
icon_state = "refill_medical"

/obj/machinery/vending/wallmed/pubby
products = list(
/obj/item/reagent_containers/syringe = 3,
/obj/item/reagent_containers/pill/patch/styptic = 1,
/obj/item/reagent_containers/pill/patch/silver_sulf = 1,
/obj/item/reagent_containers/medigel/sterilizine = 1
)
Loading

0 comments on commit e120049

Please sign in to comment.