Imagine taking a walk through a town. You begin your walk in the market, stalls stocked high with assorted merchandise occupying the stalls. Behind them are various warehouses filled with goods used to restock the market. You take a right and pass by the local farmer. Large canisters of milk rest near the grazing cows ready to be processed into cheese. A towering silo casts a long shadow across the cows and as you pass by you can hear the sound of grain pouring into carts which will carry the grain to the mill located just down the road. As you veer left you hear the sound of hammering and before long a giant heap of black coal blocks out the sun, right before you are blinded by the rays of sun glancing off several tall stacks of iron and copper ingots next to the smithy's anvil.
This truly visual and immersive experience sounds like one out of a fairy tale. You would never expect to have this experience in a video game with purely player created content unless there were truly talented builders with the vision and patience to make it happen. And yet, every one of the scenarios in the above scene are ones that would naturally evolve and emerge out of daily necessity, but for one thing: The existence of magical storage .aka. The chest. The bane of emergent building.
The chest solves the problem of the farmer, the merchant, and the blacksmith effortlessly. There is no need to keep your milk containers close to your cows or even have any containers at all. No need to have silos located near a market, or to even store your grain in a silo. No need to store charcoal outside, and no need to keep large amounts of ingots in piles. The chest solves all of these problems, effortlessly, and cleanly. Put everything in a room full of wooden boxes and you're done.
So how could one promote emergent building? The solution is seemingly simple: assign the properties of density and volume to everything in game.
But of course nothing is ever that simple.
On the one hand, emergent building is a sight to behold. Requiring users to store everything in containers which hold items only proportionate their own volume is a tempting idea. But the cost to the player in tediousness may be too great. And what is the point of a system that nobody will experience?
So I propose a system which is a balance between the ease of use we know today, and the restrictions which result in the awesome emergent builds described above. Allow magical containers that hold more than their own volume to exist, but with limits.
The system is comprised of the following principles:
Every item has volume
volume is based on the number of in-world physical voxels in an item
Every item is made from a basic kind of material
Every material has a fixed amount of density
Magical containers are enchanted to store more than their own volume
Inventory is limited by both weight and volume
Maximum carry weight is determined by player strength
Max carry volume is determined by inventory container properties
full block: 32 x 32 x 32 = 32768
half block 32 x 32 x 16 = 16384
crock pot 10 x 10 x 10 (roughly) = 1000
1 candle 8 x 4 x 4 = 128
Note: These calculations are generally straightforward for blocks that can be placed in world. But are far from simple in some cases as seen in the example below
placed hay: 3x(2x2x2) + 4x4x4 = 88
hayblock / 6 = 5461
Airy: (feathers, straw) 0.005
Processed Stone (bricks, cobble): 2
Light Metal: 3
Medium Metal: 11
Its possible that some of these values or materials exist already in order to determine a particle or item's buoyancy.
Magical containers exist in order to make the game playable and reduce the pain of real world restrictions.
The ideal strength of a magical container can be examined in the following way:
A standard wooden chest can hold at most 4x4=16 stacks of 64 full block items (smaller items may have higher stacking limits). This means a standard chest can hold at most 1024 times its actual size. This gives the standard wooden chest a limit multiplier of 1024. The maximum number of voxels that can be stored is 33,554,432
Assuming we halve this amount to 512. This would mean that players could store just 512 blocks ( 8 stacks ) (or 16,777,216 voxels) in each chest. But given a lower volume item like candles which have a voxel volume of 128 which is 0.0039 the volume of a full block , a wooden chest would be able to store 256 times as many candles (512 x 256 = 131072 = 2048 stacks of 64). Now that's alot of candles!
So clearly, a balance must be struck in container strength in order to allow a reasonable amount of large items to be stored without increasing the storage limits of smaller items to insane boundaries.
One potential resolution to this issue may be to create magical containers for specific item types. For example, a dirt pile may be a large multiblock structure that has a magic storage multiplier of 512, but may only contain dirt.
I believe there are many ways that this idea can be tweaked and configured in such a way that will encourage emergent builds without sacrificing on play-ability to the point where nobody builds in the first place.
Please feel free to comment or provide feedback below.