mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-31 09:08:30 +01:00
Arconomy Balance Pass 1: Pricecuts, bug fixes, and inflation adjustments (#52744)
* Economy Version 1.1: Balance patch, Life is pain * That may be uhh, just a bit too much of a drop. * Bikeshedding engaged * Atomized to exclusively balance changes. * Whoops, slipped through the cracks Co-authored-by: Rohesie <rohesie@gmail.com> Co-authored-by: Rohesie <rohesie@gmail.com>
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
#define STARTING_PAYCHECKS 7
|
||||
|
||||
//Experimental change: These are subject to tweaking based on the /tg/ economy overhaul.
|
||||
//Current design direction: Higher paying jobs are vastly outnumbered by lower paying jobs, so anything above medium hurts inflation, common jobs help inflation
|
||||
#define PAYCHECK_PRISONER 25
|
||||
#define PAYCHECK_ASSISTANT 50
|
||||
#define PAYCHECK_MINIMAL 55
|
||||
@@ -9,7 +10,7 @@
|
||||
#define PAYCHECK_HARD 100
|
||||
#define PAYCHECK_COMMAND 200
|
||||
|
||||
#define STATION_TARGET_INCREMENT 200
|
||||
#define STATION_TARGET_INCREMENT 150
|
||||
|
||||
#define MAX_GRANT_CIV 2500
|
||||
#define MAX_GRANT_ENG 3000
|
||||
@@ -47,6 +48,9 @@
|
||||
#define CIV_JOB_MED 11
|
||||
#define CIV_JOB_GROW 12
|
||||
|
||||
//By how much should the station's inflation value be multiplied by when dividing the civilian bounty's reward?
|
||||
#define BOUNTY_MULTIPLIER 10
|
||||
|
||||
//These defines are to be used to with the payment component, determines which lines will be used during a transaction. If in doubt, go with clinical.
|
||||
#define PAYMENT_CLINICAL "clinical"
|
||||
#define PAYMENT_FRIENDLY "friendly"
|
||||
|
||||
+13
-10
@@ -4,6 +4,7 @@
|
||||
desc = "A machine designed to send civilian bounty targets to centcom."
|
||||
layer = TABLE_LAYER
|
||||
resistance_flags = FIRE_PROOF
|
||||
circuit = /obj/item/circuitboard/machine/bountypad
|
||||
|
||||
///Computer for assigning new civilian bounties, and sending bounties for collection.
|
||||
/obj/machinery/computer/piratepad_control/civilian
|
||||
@@ -14,6 +15,7 @@
|
||||
icon_keyboard = "id_key"
|
||||
warmup_time = 3 SECONDS
|
||||
var/obj/item/card/id/inserted_scan_id
|
||||
circuit = /obj/item/circuitboard/computer/bountypad
|
||||
|
||||
/obj/machinery/computer/piratepad_control/civilian/Initialize()
|
||||
. = ..()
|
||||
@@ -145,6 +147,7 @@
|
||||
if("stop")
|
||||
stop_sending()
|
||||
if("bounty")
|
||||
//Here is where cargo bounties are added to the player's bank accounts, then adjusted and scaled into a civilian bounty.
|
||||
if(!inserted_scan_id || !inserted_scan_id.registered_account)
|
||||
return
|
||||
var/datum/bank_account/pot_acc = inserted_scan_id.registered_account
|
||||
@@ -153,14 +156,14 @@
|
||||
to_chat(usr, "<span class='warning'>You already have an incomplete civilian bounty, try again in [curr_time] minutes to replace it!</span>")
|
||||
return FALSE
|
||||
var/datum/bounty/crumbs = random_bounty(pot_acc.account_job.bounty_types) //It's a good scene from War Dogs (2016).
|
||||
if(SSeconomy.inflation_value() > 1)
|
||||
if(istype(crumbs, /datum/bounty/item))
|
||||
var/datum/bounty/item/items = crumbs
|
||||
items.required_count = max(round((items.required_count)/(SSeconomy.inflation_value()*2)), 1)
|
||||
if(istype(crumbs, /datum/bounty/reagent))
|
||||
var/datum/bounty/reagent/chems = crumbs
|
||||
chems.required_volume = max(round((chems.required_volume)/SSeconomy.inflation_value()*2), 1)
|
||||
crumbs.reward = round(crumbs.reward/(SSeconomy.inflation_value()*2))
|
||||
var/crumb_floor = (SSeconomy.inflation_value() * BOUNTY_MULTIPLIER)
|
||||
crumbs.reward = round(crumbs.reward/(crumb_floor))
|
||||
if(istype(crumbs, /datum/bounty/item))
|
||||
var/datum/bounty/item/items = crumbs
|
||||
items.required_count = max(round((items.required_count)/(SSeconomy.inflation_value()*2)), 1)
|
||||
if(istype(crumbs, /datum/bounty/reagent))
|
||||
var/datum/bounty/reagent/chems = crumbs
|
||||
chems.required_volume = max(round((chems.required_volume)/SSeconomy.inflation_value()*2), 1)
|
||||
pot_acc.bounty_timer = world.time
|
||||
pot_acc.civilian_bounty = crumbs
|
||||
if("eject")
|
||||
@@ -218,7 +221,7 @@
|
||||
|
||||
/obj/item/civ_bounty_beacon/attack_self()
|
||||
loc.visible_message("<span class='warning'>\The [src] begins to beep loudly!</span>")
|
||||
addtimer(CALLBACK(src, .proc/launch_payload), 4 SECONDS)
|
||||
addtimer(CALLBACK(src, .proc/launch_payload), 1 SECONDS)
|
||||
|
||||
/obj/item/civ_bounty_beacon/proc/launch_payload()
|
||||
playsound(src, "sparks", 80, TRUE)
|
||||
@@ -228,4 +231,4 @@
|
||||
if(1)
|
||||
new /obj/machinery/computer/piratepad_control/civilian(drop_location())
|
||||
qdel(src)
|
||||
uses = uses - 1
|
||||
uses--
|
||||
+1
-1
@@ -734,7 +734,7 @@
|
||||
#include "code\game\machinery\buttons.dm"
|
||||
#include "code\game\machinery\canister_frame.dm"
|
||||
#include "code\game\machinery\cell_charger.dm"
|
||||
#include "code\game\machinery\civilian_bountys.dm"
|
||||
#include "code\game\machinery\civilian_bounties.dm"
|
||||
#include "code\game\machinery\constructable_frame.dm"
|
||||
#include "code\game\machinery\dance_machine.dm"
|
||||
#include "code\game\machinery\defibrillator_mount.dm"
|
||||
|
||||
Reference in New Issue
Block a user