Salvage Tokens and Requisitions#42724
Conversation
Salvage Tokens Acquirable from Recycling Acquirable from Ore Processing
Salvage Requisition Console Takes tokens, adds to Salvage Requisitions Account Can use to buy things, which are sent to the ATS
Or rather, the bits that effect the station Code can remain (for now)
Slight Texture change add 5000 tokens entity texture some typos and grammar stuff salvage starts with some money, as a treat.
|
RSI Diff Bot; head commit c67a87f merging into 1fee95f Resources/Textures/Objects/Misc/coins.rsi
|
Testing code before pushing it? Damn why would I do that? It's just a 2-line quick and simple update made at half 2 in the morning after all. There's no way you could mess that up. Like who'd ever do that. Nobody. Nope. Alternative PR Name: Ice that t
Made them worth less
You only need one stack of steel to make the shuttle Less memey description
|
I personally think a more diagetically-fitting name for Salvage Points would be Salvage Coupons. From a design perspective, my personal bet is that combining this approach with QOLs for the process of Salvage actually like, delivering the materials to the rest of the station would be the incentive alignment Salvage needs. From replays I've combed through, materials lying on the floor in the salvage room get memory-holed and never distributed, even if salvagers go out of their way to collect them. |
This comment was marked as abuse.
This comment was marked as abuse.
For licensing reasons, can you clarify if you used any downstream code for this or did you recreate everything from scratch? Did you look at other downstream code while doing so? |
I have looked at the Carpmosia version and played around with it as inspiration, which is a port of the Starlight, however there is nothing shared between mine and that beyond the name "SalvageTicket". This was written from scratch as my own implementation of the idea. The Starlight/Carpmosia Salvage Ticket is a currency added to an Uplink-like Store Structure that spawns items in directly. Tickets are gained through the ore processor only and use LatheRecipePrototypes to add on salvage tickets. My version's Salvage Tokens are materials added to a Request Console that spawns items at the ATS. Tickets are gained through the ore processor or recycler via a TicketPrinter system with values drawn from the spawned sheet/ingot entities. |
Container Fills Proper Parenting
|
All good then, I just wanted to make sure there are no licencing problems with this PR 👍 |
I ended up going with "Tokens" because something like "Coupon" or "Ticket" sounds very civilian, like i'm at an arcade or supermarket. Token fitted my vibe of an old fashioned, run-down machine spitting out stamped coins as proof of work. Someone else can make the bitcoin joke of "mining for tokens". For delivery of materials, i think that's partially a map issue. Salvaged and mined materials should always be directly available within the cargo bay, recyclers ideally should belt their produce there. |
|
If my comment is worth anything, when we did this on Carpmosia I believe we saw a notable increase in the flow of materials to the station from salvage. |
|
ladies and gentlemen we have reinvented ss13 |
technically starlight or whoever reinvented ss13 and this has been an elaborate game of github telephone |
|
I have felt the exact same about the salvage jobs system since shortly after its release; having to divert resources to fulfill mediocre bounties, all so we can buy overpriced equipment, in my eyes, was a dramatic miss-step. I will say thought that I expect any person higher up in the maints chain won't like the addition of a shuttle crate, as they're increasingly trying to wrangle in station activities to be close to the station. Sorry for rambling, but it's been a long time since I've read a PR that made me hopeful and happy about salvage changes. The crate aside, I'm looking forward to this. |
You're probably correct, if they ask me to remove it I would, just figure i might as well put everything I want into a single PR. This goes double for the VGRoid. I know how to get there without a ship or scanner, i just don't think I should have to. I like having a mobile base of operations when i'm mining on the murder asteroid. I see people talk about "interesting movement tech" but to me that's like saying if i chose to cartwheel to work instead of walk i'd be engaging in interesting movement tech rather getting than a big headache. The two failiures of it are as you discussed, loading things up and faffing off. I don't like doing either, but others do. Part of the purpose of this implementation is no matter what you bring with you, if you want to cash in and get your cool stuff you have to go back to the station anyway. Request consoles of any kind don't work on shuttles unless they're round start and specifically linked to the station's bank account. |
|
I'm admittedly very biased towards salvage because it's my favourite job alongside botany and i have like 200+ hours in it:
I'll state the obvious but I doubt anyone's going to come out of the woodwork with the "fix salvage and make it good" PR that instantly solves all problems. But I can at least try to chip away at the bit that sticks out the most. Maybe if we chip away enough it'll unearth some solutions to the bigger issues. If anything there would be far less complaints about salvage if people consistently got their materials, which is what likely drives the majority of talk about the role's flaws. |
How about Salvage Scrip? It's alliterative, it's got an appropriate level of "this is the not-cash currency the megacorp you work for is saddling you with", and it even rhymes with "scrap". Also, as someone who's done a decent amount of work on SL's salv, Hi! We've, uh, gone down a very different path to Wizden with how we approach things but I think the tickets are one of the best things we added. |
|
Admittedly, though, since we (I was personally against it, but ¯\(ツ)/¯) gave mining their own shuttle and took salv's shuttle ore processor away, they in particular have gone back to the old "provide no benefit to the station" issue. They're mindshielded, though, so I guess them turning into QM's personal goon squad/bodyguards on revs is always fun. |
|
This pull request has conflicts, please resolve those before we can evaluate the pull request. |
|
my only comment.... 2 seconds in the starlight discord and you would know who conflee is (Conf is our headspriter) |
|
I'm down with anything I make being upstreamed if ever desired. If Starlight doesn't include a link to a source and it's just a name, it means we made it or thats how it was credited in whatever PR we ported it from. |
For some reason my brain chose the path of assuming as the name associated with the sprite was not the same as the name of the PR creator the sprite must come from somewhere else rather than the infinitely more obvious answer of it just being a different person in Starlight so sorry for the accidental shade i'm just a bit dumb sometimes. |
|
This pull request has conflicts, please resolve those before we can evaluate the pull request. |
|
This pull request has conflicts, please resolve those before we can evaluate the pull request. |
|
gambling crate failing my tests, pain. |
|
Should be able to add it to the ignored orders for NoCargoOrderArbitrage since it's the same crate as the already ignored one. |
|
This pull request has conflicts, please resolve those before we can evaluate the pull request. |
|
You seem like you'd make a good graph consulter. I'm excited to see where this PR goes! |
|
Hello! Salvage will be undergoing a major rework to its gameplay in the very near future, part of which involves an overhaul to the progression of Salvage content. As such, I will be closing this PR for now. Once the rework has established its new mechanics and balance requirements, feel free to revisit this idea in the new format. |






See: Salvage Postmortem
This PR attempts to better align the station's desire of "want materials" and the Salvager's desire of "want cool stuff".
Specifically, by tackling the "Bounties" section of the Salvage Postmortem discussion for the most part, by ripping it out entirely and implementing something else.
About the PR
Replaces the existing Salvage Jobs Board with the Salvage Requisitions Console. This functions similarly to a Request Console with purchases sent to the ATS. However instead of using Spesos it uses Salvage Tokens.
Salvage Tokens are earned through processing ores or recycling scrap. The amount earned per material is the same regardless of method, however rarer materials, as well as those most important for salvage, are worth more.
Steel, Glass, and Plastic are worth 10. These are common and in high quantities. Cargo also has other ways to get them.
Gold, Silver, and Plasma are worth 15. These are much less common, but still have alternative ways for cargo to get them.
Uranium and Bananium are worth 20. Only salvage can get these, making them highest priority (less so bananium).
Diamonds are worth 500. These are very rare, so bonus points.
The Salvage Requisition Account can receive subsidies from other accounts, say cargo has spare cash, salvage can benefit from it. Say a salvager quickly and efficiently delivers materials to science, science can return the favour with by tipping them some spesos. However, salvage tokens can't be converted back to spesos, so it's a one way deal (theoretically you could buy from salv fund then sell to cargo fund, but likely not efficient). This fund is however Independent, it isn't governable by the Funding Allocation computer and doesn't receive a cut from cargo sales.
As to why i'm not using "Salvage Tickets" from downstream, from what I can tell they originally come from Starlight, who aren't very good at properly sourcing where things came from (I do not know who "Conflee" is, but they apparently made the tickets), so rather than perform digital archeology I just made my own textures. They still remain "SalvageTickets" in the code for legacy and downstream convenience.
Rather than entirely scrap Salvage Jobs, i've also converted a few of the jobs I thought were salvagable into regular cargo bounties. Most of the original purchases under salvage jobs were also rebalanced massively, as most were hilariously overpriced (8k for a Crusher Glaive? A shotgun crate is 7.5k for 2!). The Dangerous items are also in secure cargo-access crates now. I've also added a few more exclusive orders.
The most controversial additions being:
I'm not particularly attached to any of these, but I do have a lot of experience salvaging so this isn't me just adding things for the hell of it.
The Requisitions Console also ties salvage to the station, as, with the exception of the cargo shuttle, shuttles they build will not have access to the station's bank balance (as far as i know?). So they can't bring it with them. Even if they do steal that, they'll need to go back to the ATS to get their stuff anyway.
Why / Balance
Salvage Jobs as a concept attempted to align the station's desire of "get materials" with the salvager's desire of "get cool stuff", but failed by forcing the salvager to sacrifice the materials they gathered, or spend time hunting monsters to get that cool stuff. Meaning it ended up doing the anthesis of what it set out to do.
Salvage Tokens directly reward a salvager for acquiring materials, and somewhat encourage them to seek out rarer materials for greater reward, without sacrificing those materials.
I've currently balanced costs based on several runs of space debris I did solo in the Dev Environment. On average I gained about 4-6k in tokens from a single space debris. I expect mining to be more than this if you've got a mineral scanner and so can go blast mining on the VGRoid.
Regardless. Feedback would be appreciated.
Technical details
Adds TicketPrinterComponent and System, responsible for spawning tickets, to lathes and recyclers.
Adds TicketValueComponent to each sheet/ingot/etc base entity. Which is gotten by TicketPrinterSystem.
Adds a new cargo account, and changes request consoles to use CashType to determine currency rather than CashComponent, making that component obsolete. By extension, consoles can now choose what currency they use in their component.
Removed most the surface level SalvageJobs information, left the system and components for now, it may have use.
Media
MyServer.-.Space.Station.14.2026-02-01.01-16-29.mp4
Requirements
Breaking changes
Currently i'm using Migrations to auto-replace Salvage Jobs Boards with Requisition Consoles. Downstreams that already do this might have issues.
Changelog
🆑 Mehnix