save command

Started by Peabody, July 07, 2003, 02:16:02 PM

I wanted to bump this because the topic has come up among players again. I felt this was the thread that best answered questions.
The man asks you:
     "'Bout damn time, lol.  She didn't bang you up too bad, did she?"
The man says, ooc:
     "OG did i jsut do that?"

Quote from: Shalooonsh
I love the players of this game.
That's not a random thought either.

Here's the reason we don't do this.

The current structure of the MUD's zone database is such that each room is recorded in a huge file with all the other rooms in that zone.  In other words, its contents are serialized in a giant lump with every other item in that zone.

-rw-r--r-- 1 mud mud 6942916 Dec 11 11:27 /armag/lib/cmds/z3.cmd
-rw-r--r-- 1 mud mud 7943146 Dec 11 11:27 /armag/lib/cmds/z13.cmd
-rw-r--r-- 1 mud mud 2266014 Dec 11 11:27 /armag/lib/cmds/z33.cmd
-rw-r--r-- 1 mud mud  458841 Dec 11 11:27 /armag/lib/cmds/z73.cmd


For most of these zones, then, typing save would require writing a multi-megabyte file.  As it is, there is already a noticeable pause when these zones save in the game.  Allowing players to cause that pause would allow a downright denial-of-service attack.

For 2.arm, the situation will be drastically improved, but for now, it's a bit too much to tackle for Arm.

A few years ago, I wrote code to allow the saving of a single room, and even that code is extremely tricky because it tries to -avoid- capturing the state of other rooms, and it still must read/write the contents of all the other rooms in the zone before and after this one, to maintain our DB structure.

-- X

Quote from: Xygax on December 11, 2008, 11:55:49 AM
Stuff

Yup, that's why I wanted to bump it. Because this thread explained WHY it didn't work, rather than hashing it out yet again.
The man asks you:
     "'Bout damn time, lol.  She didn't bang you up too bad, did she?"
The man says, ooc:
     "OG did i jsut do that?"

Quote from: Shalooonsh
I love the players of this game.
That's not a random thought either.

I was previously an admin on a mud with save enabled on every room.  It required a large, regular amount of cleanup to prevent players from being packrats, or abusing various things, to the tune of manually removing 10-15k objects.  There was an option for an automated cleanup janitor, but it caused its own set of problems.
Its the end of the world as we know it, and I feel fiiiiiine.

Quote from: Halcyon on December 12, 2008, 02:54:47 AM
I was previously an admin on a mud with save enabled on every room.  It required a large, regular amount of cleanup to prevent players from being packrats, or abusing various things, to the tune of manually removing 10-15k objects.  There was an option for an automated cleanup janitor, but it caused its own set of problems.

My current PC has been called a packkank.
Quote from: fourTwenty on June 11, 2007, 08:08:00 PM
Quote from: Rievroleplay damn well(I assume Kazi and fourTwenty are completely different from each other)

Did you just call one of us a dick?

Quote from: Halcyon on December 12, 2008, 02:54:47 AM
I was previously an admin on a mud with save enabled on every room.  It required a large, regular amount of cleanup to prevent players from being packrats, or abusing various things, to the tune of manually removing 10-15k objects.  There was an option for an automated cleanup janitor, but it caused its own set of problems.

'Twould be interesting to have things coded such that objects were almost never destroyed (remove the junk command, etc.)...   
...or created.

- Armchair Critic
The sword is sharp, the spear is long,
The arrow swift, the Gate is strong.
The heart is bold that looks on gold;
The dwarves no more shall suffer wrong.