Jump to content

Persistence across rounds - Feedback and follow-up


FabianK3

Recommended Posts

Posted (edited)

Hi!

The first step for across-round persistence has been implemented and has been merged: https://github.com/Aurorastation/Aurora.3/pull/21055

What exactly is "persistence"?
Persistence is the term used for anything that will be persistent between different game rounds.
We no longer only have stories to share between rounds but starting to see the results of your fellow crewmen in the next shift as well.

What does the first implementation contain exactly?
The newly added subsystem is the heart of the new persistence subsystem and handles things like loading and saving of persistent things.
With the core implementation, papers and noticeboards have been added as the first initial test of across-round persistence.

From now on, papers you add to notice boards will stay persistent until somebody removes them or they become older then thirty days.
When you remove a paper and re-pin it to the board, it will stay persistent, but the 30-day-timer doesn't get reset.
When you remove a paper, edit it, re-pin it — or pin-it to a different board, the 30-day-timer resets.

Why is there a lifespan for persistent things? Simply: To prevent trashing the ship with different things.
Future things don't have to use the 30-day limit. Depending on the type it can be shorter, or longer.

What is planned to be made persistent next?
This is the questions this thread was primarily made for.
Currently, persistent dirt is probably the next thing coming up and already in progress.
Details on that are still to be discussed, but I am mentioning it now to prevent people from doing work twice, as some people already started to think about it!
Get used to cleaning up your paperwork and stop littering...

For any coders, here is some documentation I wrote to make things more accessible: https://github.com/Aurorastation/Aurora.3/wiki/Persistence

Share your thoughts about the first implementation and what you think would go well in terms of new stuff to be made persistent.


Big thanks to @Arrow768 and @MattAtlas for helping me with the implementation of the persistence subsystem.


Edit history:
- Big thanks.

Edited by FabianK3
  • Like 1
Posted

Hello! I'm the one who requested this originally. I assume the notes will have ckeys attached to them, so we can actions griefing notes?

Minor persistance (could likely be implemented without much talk)

  • I'd like to see command locked boards as a possibility. Swipe a command ID to access them. This can be good for more important style notes in department lobbys.
  • Sticky notes persist.
  • Vending machines. Janitors can currently refill them but this isn't done very often. By having vending machines linked to persistance, this would make this done mroe often (and make the commissary more important).
  • Muck. The obvious one. Gibs, blood, oil and dirt having a chance to persist as generic dirt. Perhaps have a low percentage chance of each tile getting goop based on what's on it. Possibly have the percentage change depending on the round type (so bloodier antag rounds like merc or cult have less chance of it persisting as muck). Possibly have a canon/none canon switch somewhere which rarely allows oil and blood to persist. Maybe let trash persist too? Finally maint should be excempt.

Massive persistance (would require a lot of discussion)

  • Persistant credit accounts (including departments). These could slowly tick up daily, but would make bounty fulfilment and making credits generally more important. Additionally, tie vending sales to service. Maybe make vending refill cartridges order only.
Posted

My thoughts here are
On dirt:
Blood should normally turn into generic filth, unless it is a canon round (maybe set via a special thing admins do?) Then the blood stays as blood.
Certain areas are exempt from dirt persisting (maint, medical, crusher, xenobio)
Trash/garbage items also persist alongside the dirt.

Other ideas of persistent things I have are:
Sticky notes. Write on them like paper, can stick onto walls.
Graffiti you can carve into walls and floors with a sharp object. Can be cleared away with a welder.

Posted
1 minute ago, Fyni said:

I assume the notes will have ckeys attached to them, so we can actions griefing notes?

Correct! The persistence subsystem features a way to add a ckey to a persistent saved data entry.
There are some caveats to that at the moment:
- When papers are added to a notice board, the user adding the paper will be marked by ckey.
- Moderation is currently only possible by looking into the database. There is no admin tool for that just yet.
- Depending on the type of persistence (in this case paper) staff should keep in mind, that a user adding a paper might not be the actual author of the contents.
 

4 minutes ago, Fyni said:
  • Muck. The obvious one. Gibs, blood, oil and dirt having a chance to persist as generic dirt. Perhaps have a low percentage chance of each tile getting goop based on what's on it. Possibly have the percentage change depending on the round type (so bloodier antag rounds like merc or cult have less chance of it persisting as muck). Possibly have a canon/none canon switch somewhere which rarely allows oil and blood to persist.

@Arrow768 is already playing around with that. Gibs, blood and antag rounds are something that still need some work as those are special cases.

Posted
23 minutes ago, greenjoe said:

Certain areas are exempt from dirt persisting (maint, medical, crusher, xenobio)

The great things is: Objects can decide "themselves" when they get persistent.
For example, at some point and object (or who ever handles the object) needs to decide when it becomes persistent.
In the case of papers on boards, the board makes the paper persistent when it gets added.
When it comes to dirt or other scenarios, you can add custom logic to prevent making things persistent in the first place.

Posted

Please make medical exempt from most forms of persistence. Medical is highly reliant on their vendors being stocked at the beginning of each round to fulfill their duties. Likewise with dirt/filth/gore. While medical does have cleaning supplies they are limited. Alternatively, being back department cleaning supply closets. Could probably shove a mop and bucket in the basement storage area with the air can, radios, and spotlights.

Posted
2 minutes ago, Lordnesh said:

Please make medical exempt from most forms of persistence. Medical is highly reliant on their vendors being stocked at the beginning of each round to fulfill their duties. Likewise with dirt/filth/gore. While medical does have cleaning supplies they are limited. Alternatively, being back department cleaning supply closets. Could probably shove a mop and bucket in the basement storage area with the air can, radios, and spotlights.

By vendors I mean purely food, drink, cigarettes and overloaders. Things like the secvend, medvend, tool etc. should reset on each round. Should have made that clear.

Posted

When it comes to gameplay altering changes like vendor stocking or similar, I'm pretty sure things would require test merges.
I don't think those things can be balanced properly without a test-merge.
Unrelated to the persistence or where it happens.

Posted

To briefly play devil's advocate for not having a 30-day limit for papers on notice boards --- disposals and paper shredders exist. Presumably, players can do their due diligence in removing outdated/irrelevant papers on departmental noticeboards and janitors can do it for public ones.

Posted (edited)
5 minutes ago, rrrrrr said:

To briefly play devil's advocate for not having a 30-day limit for papers on notice boards --- disposals and paper shredders exist. Presumably, players can do their due diligence in removing outdated/irrelevant papers on departmental noticeboards and janitors can do it for public ones.

You're not wrong. I'm expecting papers to not hit that 30-day limit often, I assume they get cleared before (at least in the future).
The primary goal of the expiration system behind it is not to directly force removal of things because they are old, but rather to guarantee there is no unlimited stash of things that might be missed and cause troubles. It's more a technical cleanup then I'm expecting it to be a cleanup ingame.

While not necessary for papers it will become necessary for other persistent types in the future.

Edited by FabianK3
Posted

I like all these ideas, especially the more complicated money tracking. I find people never value their money and will tip crazy amounts or spend their entire savings on an item, this would actually give value to that. As for everything else like grim and leftover notes etc. I think it's another gameplay mechanic that could be fun, as well as RP. You could arrive on the shift and find your department a little dirty and cluttered and spend some time clearing it up, while at the same time bantering with your coworkers about how last shift did a bad job closing up. (This part is very real if you've ever worked opening/closing shifts my god)

Posted
3 hours ago, Jasorn said:

I like all these ideas, especially the more complicated money tracking. I find people never value their money and will tip crazy amounts or spend their entire savings on an item, this would actually give value to that. As for everything else like grim and leftover notes etc. I think it's another gameplay mechanic that could be fun, as well as RP. You could arrive on the shift and find your department a little dirty and cluttered and spend some time clearing it up, while at the same time bantering with your coworkers about how last shift did a bad job closing up. (This part is very real if you've ever worked opening/closing shifts my god)

Agree with all this!

Not to mention this kinda directly reinforces the importance of the janitor role (a role that's often overlooked)!

  • Like 1
Posted

Persistent money/economy would need a LOT to think about how it would work, there are many issues there that would need to be solved, one being antags.

Say an antag steals money from another crewmember, or a departmental account, that obviously isn't canon and shouldn't be Persistent. Security charges for antags are automatically deleted so something may be able to be done there, but a different issue is if the antag blackmails another crewmember (a non antag) to do it. This crewmember doesn't have any kind of automatic thing to delete antagonistic actions like an actual antag would,  and in terms of a security charge, would need to manually delete it. How would something like this work for Persistent money...

Posted

I think the issue with any antag interaction is that is mechanically nearly impossible to catch.
Many interactions of that kind are purely RP (Gun at your back in front of your local ATM) and have zero indication mechanically that this is an antag interaction — You could be robbed in an extended round as well, well, technically at least.

With mechanically checking if the interaction is antag related out the window, the only feasible approach to that issue I have at the moment is to simply pause the persistence system for some persistent types (money for example, papers on notice boards don't need to be paused) for any round that is not extended (or not canon odyssey).

Checking the round type could also be used for persistent dirt: Canon round? Save blood and dirt. Non-canon round? Convert blood into regular dirt.

I think generally, the implementation of new persistent things is easier then getting right how they are persistent and how to handle the many edge cases that come along for the different persistent types.

Posted (edited)
24 minutes ago, FabianK3 said:

I think the issue with any antag interaction is that is mechanically nearly impossible to catch.
Many interactions of that kind are purely RP (Gun at your back in front of your local ATM) and have zero indication mechanically that this is an antag interaction — You could be robbed in an extended round as well, well, technically at least.

That's what I'm saying about money yeah

A gun at your back antag situation would be non canon, but how would that work with persistent money...

While a robbery on extended would actually be canon, so there it would be okay for the money to be gone.

24 minutes ago, FabianK3 said:

the only feasible approach to that issue I have at the moment is to simply pause the persistence system for some persistent types

Pausing persistent money for antag rounds would not really work out either however... since there are still plenty of interactions in the round that are still perfectly canon, assuming the antag is not involved. Buying food from the kitchen would still be canon. Being fined for littering would still be canon.

Plus, an issue with pausing persistent money on antag rounds would mean it would hardly see use due to a majority of populated rounds on the server being antag one's.

Edited by greenjoe
Posted

Also one issue with persistent money, it would mean that generally regardless of character background characters that have been played for a while will be far richer then newer ones. Which considering we have Dominian nobles and golden deep merchants on the same ship as owned IPCs and Dregs does not make much sense.

Posted
1 hour ago, UltraNumeron said:

Also one issue with persistent money, it would mean that generally regardless of character background characters that have been played for a while will be far richer then newer ones. Which considering we have Dominian nobles and golden deep merchants on the same ship as owned IPCs and Dregs does not make much sense.

You could probably just have a cap as to how much money a character of x species, and y financial status can have

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...