Junk
From FiranMUX
Firan is a game that requires a lot of computer memory (RAM) and disk space to operate. Every cheese pie, silk stola, and scroll on the game takes up space on the server. We knew this when designing the game and did our best to predict the players' needs to create lots of stuff. Generally, it's not a problem.
That doesn't mean we don't want to practice "good game hygiene" -- that is, clean up stuff we don't really need. This page is about "junk" or "garbage," as we call it on the game, and the procedures around game hygiene.
Contents |
What is Garbage?
The easy answer is that Garbage is an object that we've destroyed, but it didn't entirely go away (and this is a normal thing).
This gets a little technical, so hang on.
Every object in the database gets a unique number that identifies it. We call these dbrefs (database references). If you type 'make cheese pie', the cheese pie object you create will get assigned the first available dbref.
When you @destroy an object on the game, the data for the object goes away, but there's still a "hole" in the database where its dbref used to be. Say you have a very small game with five objects, numbered #1, #2, #3, #4, #5. Then you @create a new object: it becomes #6. If you @destroy #3, then create a new object, the new thing will be #3. If you @destroy #3 and do not create a new object, you still have this sort of hole in the database for #3. Technically, the #3 object is there with no data and its type is GARBAGE. This is just how the server says "#3 is available for reuse if you want it." Garbage takes up a wee bit of space but not a lot.
For technical reasons, there is no good way to squish those holes out of the database. We just have to live with them.
It's still better to have lots of garbage (lots of database holes) than no garbage, because then new objects fill the holes rather than expanding the database. Further, it's better to have garbage than regular objects because garbage takes up very little space.
How Big are Objects?
The quick answer is "it depends." Character objects are large because of all the sheet stuff on them. Zafir's sheet, for instance, is 111,378 bytes. His Gleaming Iron Long Sword is 2,609 bytes. His Republic Issued Silk Tunic is 900 bytes.
In general, "generic" items -- items that you did not customize -- are pretty small. Zafir's tunic is such an item. Generic items share their common data with a "parent object" so we don't have to have all the generic tunic descriptions repeated for every single tunic object on the game.
When you write a custom description for something, all that text gets stored on the object. It's basically just 1 byte for each character you type but it adds up quickly. Any notes you put on the object add to its size.
What Should I Toss?
Consider the stuff your character owns. Do you need it all?
Don't throw away items that are historically important or very sentimental to you. Put notes on them so people know why they shouldn't discard them.
Don't throw away other people's stuff. You don't know if they need it for some reason.
Don't worry about public items like fire barrels and library scrolls. They're not the problem.
Do consider if you need ten or twenty complete outfits (clothes are one of the most common item types on the game). Do get rid of extra food you have laying around.
How Do I Toss Stuff?
There's a @junk command, but it should be your last resort. Each item you @junk goes to the Player Helpers for review. They spend hours sorting through your junk.
Try to get rid of things using IC means. Most items can be destroyed using IC commands.
You don't have to destroy everything, too. The recycle command can reclaim the raw materials of many types of objects, and you can use those materials to make new things later. This doesn't get us closer to our junk goal but it does often reduce the database size (recycled materials are generic items that can be grouped together), and that's good for the game. You can also sell nice customized objects; other players can buy them and use them instead of making new things.
You also can group items to reduce the database count. If you have five separate iron ingot objects and you group them into a single 5 iron ingots object, you just got 4 objects closer to the junk goal.
Here are the IC commands you can use to destroy objects:
- shred scrolls
- light fire with anything flammable
- spill or drink fluids
- eat food (you might have to slaughter, butcher, and cook it first)
- recycle clothing, armor, weapons, and other items
- smash fragile objects like amphorae
- shoo wild animals back into the woods
- squish insects (really)
If there is ever any question about how to get rid of something and you don't want to run via trial and error, you can "appraise <item>". Even if you do not have the skill, the item's tags will come up at the bottom of the screen and you can see what method of destruction it permits.
What Are These Reminders?
Every hour, unless we've met our junk goals, the game reminds you to @junk something. More often than not, we're below our goals. The reminder tells you how far away we are from the goal.
Once we get 15,000 objects away from our goal, we generally impose a special clean-up mode on the game. We double, even triple, the energy cost for making new items, and we usually reduce the energy cost for recycling things. We don't put things back to normal till we reach our goal (that is, we've reduced our object count by at least 15,000 objects). The best way to prevent the inconvenience of clean-up mode is to make sure we never reach 15,000! Clean up your stuff!
Categories: Policy | Code | Community | Game Admin
