I’m wanting to find the most resourceful way of saving large, player made instances, without fear of reaching data store caps.
This is just the starting island, which has 1,232 blocks in it. If I store the block ID, its position/rotation, and any other info, then I fear I’d reach caps really quickly.
I am using an ID system for blocks, to decrease the characters. And I was only planning on saving rotation on blocks that can actually be rotated a certain way. But even with all this taken into account, i still fear it’d take up a lot of space.
I believe each block can have it’s position rounded because they all look like the same size to me. So for each clock save a table for it, in my opinion it should look like this:
local SaveTable = {
BLOCKNAME = CFrame.new(BLOCK CFRAME WITH POSITION AND ROTATION MATRIX ROUNDED)
}
And correspondingly to load data you can try:
for BlockName, CooridinateFrame in pairs(Data) do
local ClonedBlock = ReplicatedStorage[BlockName]:Clone()
ClonedBlock.CFrame = CooridinateFrame
ClonedBlock.Parent = workspace
end
Each block will have approximately 20+ characters, so 1000 blocks would have 20000+ Characters. A since you can now store 1 million characters, 10K blocks wouldn’t even be a problem. If each block is 20 characters on average, then you can store 50K blocks.