Jump to content

Design document: New mechanic: Fines


Landerlow

Recommended Posts

This design document is part of three things we'd like to see in the server. The other design documents can be found here:

Design document: Job Trainee (https://www.paradisestation.org/forum/topic/24513-design-document-job-trainee/)

Design document: New role: Constable (https://www.paradisestation.org/forum/topic/24514-design-document-new-role-constable/)

This has been copy-pasted and originally been written by @Norwest (Copied over from the post in the admin section)

 

Discord project discussion: https://discord.com/channels/145533722026967040/1158447668536811700/1158447668536811700
 

Design Doc/Mechanic

New Mechanic: Fines

Inspiration: Speeding tickets, speed traps, and similar shenanigans
SOP, and its Internal Affairs enforcers, need more teeth. The hassle of brigging people for minor crimes means that they're generally not enforced. Let's solve both these issues, along with introducing new emergent-gameplay options, by adding a mechanic for people with appropriate access to levy fines.

Mechanic Outline:
-Fines can be levied through a Security Records computer (which means you have to actually have access to levy the fine, and can't just steal or print a board or HUD)
-Options include 'Criminal' and 'SOP' fines, classified as 'Minor,' 'Moderate,' and 'Major,' along with a fill-in-the-blank pop-up (basically, the same mechanics that we already use when changing someone's arrest status). The actual cost itself of the fine is applied automatically to the account linked onto the record (20, 50, or 100 credits), and is logged like all other entries in the Sec records console already are.
-Once the fine has been approved, the credit account linked with that same Security record will automatically have the credits subtracted, and a PDA message will be auto-generated informing the subject that the fine has been applied.
-If the credit account would be negative, the account amount is instead set to 0 and the subject is automatically set to arrest with a notice of the negative number of credits they're required to work off in the Labor Camp.

Example:
-Joe Chemist (account #12345) makes krokodil, and gets reported for doing it
-IA Agent Papermann investigates, confirms the report, then applies a fine to Joe via a Security console in the IA Office.
-This causes Joe's account to lose 50 credits, and a PDA message to be sent to Joe's PDA reading "Greetings! This auto-generated message is to inform you that your NanoBank account #12345 has been fined [50 credits] due to a [moderate SOP violation], specifically ['making krokodil']. This fine was applied by [Papermann, Internal Affairs Agent]." (the credits shifted by fines would be moved from the affected account to the Command one, as that'll keep the money from straight-up disappearing but also create plenty of opportunities for drama)
-Joe gets pissy, breaks into the IA Agent's Office, beats up Agent Papermann, and steals his ID card. Security's busy because 'HALP VAMP MAINTS,' and doesn't respond in time.
-Magistrate Angrymans witnesses the event, and fines Joe for the breaking and entering, assault, and robbery. Joe's account would be put to -37 credits by all these fines, so Joe's account #12345 is instead set to 0 credits and Joe is automatically marked for arrest with the tagline 'BANKRUPT - Place this person in the Labor Camp with 37 points on their prisoner ID card."
-Joe is eventually arrested. The Officer puts Joe's prisoner ID card for 37 points, then sets Joe to work. Joe serves his time, gets out, and is free to presumably cause more havoc.

Specifics:
1. DB queries:
-The Security records console would need to query the accounts DB based on the user's name (Joe Chemist, say), and to affect the credits of account linked to that name.
-The Security records console would need to send an automated PDA message (using the 'Send Admin Message' function, sender origin 'Automated Records System,' sender's job '[blank],' recipient '[character name],' message '[see above].'
-If an account is set to negative by these fines, there should (ideally) be a function that would revert the account balance to 0 and automatically set the account holder's name to arrest with the auto-generated message [see above].

2. Extra functionality:
-This system would depend primarily on the Security Records console. I like the idea of running it all through the Labor Camp points console, but that one doesn't actually have records listed already, and adding that kind of functionality to the console sounds like a lot of work, so the Sec records console seems a much better and safer approach.
-The auto-generated PDA messages can presumably go straight from the Sec records console, but the whole 'negative account resets to 0 and auto-generates an arrest warrant' bit will probably be more complicated. I'd love to see it implemented, because the whole concept of a 'debtor's prison' sounds like a great gameplay element, but I also understand if that's a DB query too far.

Edited by Landerlow
  • Like 5
Link to comment
Share on other sites

Update: the fines design has been rolled in with Constables in order to facilitate in-person interaction. Details here:

  

19 hours ago, Norwest said:

Additional elements to be altered:

Fines: During the critiquing, someone raised an excellent point that we should be encouraging face-to-face gameplay like the courier system does, rather than allowing for fines to be levied remotely. Aside from being simpler and easier to code, this gives a lot more for Constables and Internal Affairs to do, rather than just 'sit in your office and type up pseudo-emails.' Example gameplay:

-Jane Chef doesn't make food for 15 minutes, so the IA Agent levies a fine for an SOP breach.
-When Jane refuses to pay, the Constable is called and fights her; Jane tries to run away and gets dogpiled by a pair of Constables.
-The Constable cuffs Jane, swipes her ID to fine her account for the SOP breach, and then offers her the chance to pay the Constable directly for the crime. Jane cries bloody murder and gets hauled off to the Holding Cells instead.
-IA now has a case to investigate against the Constable, aaand the cycle continues!

With this in mind, I'd like to propose an 'excise payment machine,' based on the pre-existing EFTPOS systems. It's got the usual EFTPOS functionality, but has a slightly different-colored sprite and automatically has the account and PINs of the departmental accounts. You can charge directly into those accounts without having to know the numbers directly, which'll streamline collecting fines 'for the public good.' You can also charge money to your personal account, because we want to leave open the possibility of corruption for this whole system, but we want to streamline paying fines and generally make it easy to do. This avoids a lot of the prior confusion and difficulty of modifying a bunch of DBs, and should be easier to implement.

I'd like each Constable to start with one 'excise payment machine,' along with having a pair in the Brig Processing and one more each in the Warden and HoS Office (since Security is encouraged to get in on all this low-key corruption action too, lol). The Space Law and SOP pages will be updated with the appropriate numbers of the fine amounts themselves (20 credits for a small SOP violation or 1xx [Minor] crime, 50 credits for a moderate SOP violation or 2xx [Moderate] crime, 100 credits for a major SOP violation or 3xx [Major] crime), along with details like fine stacking and increases for repeat offenses (doubles on repeated SOP violations of the same variety, or the same crime). Space Law will also allow for anyone who's unable to pay to instead serve time working off their debt in the Labor Camp.

 

Revised design doc incorporating 'fines and the legbreakers who enforce them' is now in the other thread.

 

  • Like 1
Link to comment
Share on other sites

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Terms of Use