Realm Cleanup

Started by soul, Jul 26, 2021, 03:12 PM

Previous topic - Next topic

soul

This idea is to keep a cleaner realm. It is based off an 'active NPC' theory. While everyone is scripting, NPCs 'find' stuff in rooms and sell them in shops, or to the mobs who want their items back!

The easiest way to implement this would be to set a 'decay timer' on every item in the game, including cash. Then each item that is placed in a room gets their decay timer decremented at every maintenance/cleanup. When that timer reaches 0, the item is stocked into a store that sells it, or put back onto a mob that it belongs to, and either resets their drop to 100% or to 50%. If none of those are available, the item is simply removed.

So for example, we could have sundry like 'copper amulet' have a decay timer of 2 days. On day 2, it would simply poof.
Golden sickle would have a decay timer of 10 days. So after 10 days it would go back to high druid with a 50% drop rate (or first time drop like a fresh realm).

If an item is in the GH it would be exempt from this. If the item is picked up at all, its timer is reset to the default.

There might be a few cases where some items simply would be exempt from this.

Would love input.

Vitoc

I've thought about a more natural cleanup process like this, one that fits better in scope with the game.  I was thinking bands of gypsy mobs or NPCs could roam the realm cleaning up all common non-lim stuff and cash.  Could incorporate caravan raids and stuff like that where players can try to kill them for all the cash they've accumulated.  Probably won't waste time on the items, they'll just poof as soon as these NPCs pick up the stuff.

I like the decay timers on items.  We've got something like that on the corpses we're about to introduce.  That should be easy enough to incorporate.  I don't think the cash is going to be doable, it's not tracked at a per-coin level like items are, but we could just have a date on the state_Room record for last time the cash was touched.

I like it, but it's kind of one of those nice-to-haves.  If you want to do a POC we can try it out on the test realm.


node

Thinking about it and adding to what you've said about a decay timer.   I think it's a slick idea!

Here are some other thoughts surrounding it:

* Instead of it doing stuff around "realm cleanup", just make the timer start as soon as it drops to the ground.
  * After 4 hrs, it "auto-hides" in the room.
  * After another "X" time, it then just vanishes.

* Make realm cleanup go away... would no longer need it.  Item cleanup is more real-time.

* within the state_items, would need to add a column for the current timer for each instance of an item to ensure proper tracking in between TGS restarts

soul

That seems like more work, not sure how gmud handles starting a timer to handle that. Would have to look into that.

Realm cleanup is still needed for ganghouse deed tax and stocking items?

I do like the idea of getting rid of cleanup and having everything timer driven and some stuff happening a little more often like shop restock, etc.