Author Topic: I absolutely hate the save format.  (Read 2587 times)

yes i agree with op, it can't be too much trouble to add the blid for each brick
Well unless you send badspot a pm, I don't think he would listen.

He doesn't read every thread on the forums you know.

well, no. but if they have that sorta trust anyway what does it matter if all of the bricks belonged to one of them?
First of all, that's not the issue here. One or two bricks here or there will revert to the ownership of the person who loaded them for no explainable reason. I never gave these people trust of any kind yet their bricks are mine now.
Second, what if there's like a gamemode or something where bricks have some sort of significance to them. Like they cost money or are resources. Just cause two people build together doesn't mean they want to share everything.

when i save ownership on builds it works fine for me
unless youre talking about something else in which case nvm

Ive had problems like this.

I figure its a problem with how build ownership is saved. Basically, ownership is given to the base plate owner/supporting brick. All other ownerships seem to be discarded.

This has been a issue for ages.

Attempting to read the BLS, you will see these lines:
"+-OWNER (Insert BLID here)"
Each one of those bricks seem to be connected to the ground plane:
Here's an example:
Code: [Select]
+-OWNER 18701
8x8F" 113 230.5 0.1 0 1 55  0 0 1 1 1
+-OWNER 11977
8x8F" 125 226.5 0.1 0 1 55  0 0 1 1 1
+-OWNER 11977
8x8F" 121 226.5 0.1 0 1 54  0 0 1 1 1
+-OWNER 18701
8x8F" 125 234.5 0.1 0 1 55  0 0 1 1 1
+-OWNER 11977
8x8F" 121 234.5 0.1 0 1 54  0 0 1 1 1
+-OWNER 18701
8x8F" 121 238.5 0.1 0 1 55  0 0 1 1 1
+-OWNER 11977
8x8F" 113 238.5 0.1 0 1 55  0 0 1 1 1
+-OWNER 11977
8x8F" 113 234.5 0.1 0 1 54  0 0 1 1 1
+-OWNER 18701
2x8F" -41 80 0.1 1 1 42  0 0 1 1 1
+-OWNER 1940
8x8F" 121 230.5 0.1 0 1 55  0 0 1 1 1
+-OWNER 11977
6x16F" -41.5 75.5 0.1 0 1 42  0 0 1 1 1
+-OWNER 1940
8x8F" 125 230.5 0.1 0 1 54  0 0 1 1 1
+-OWNER 11977
8x8F" 117 238.5 0.1 0 1 54  0 0 1 1 1
+-OWNER 18701
8x8F" 117 234.5 0.1 0 1 55  0 0 1 1 1

Note the 0.1 in about midway to each line.
And then there are the normal bricks.

Code: [Select]
1x10F" 111.75 232.5 0.3 0 0 36  0 0 1 1 1
1x8" 111.25 232.5 0.5 0 0 36  0 0 1 1 1
2x4" 108 240 0.5 1 0 4  0 0 1 1 1
2x10" 100.5 240 0.5 1 0 4  0 0 1 1 1
1x2F" 111.5 229.25 0.3 1 0 36  0 0 1 1 1
4x12F" 108 246.5 0.3 0 0 14  0 0 1 1 1
6x12F" 106 242 0.3 1 0 14  0 0 1 1 1
1x1F" 111.25 230.25 0.3 0 0 36  0 0 1 1 1
1x2F" 111.5 229.75 0.3 1 0 36  0 0 1 1 1
2x2F" 96.5 250 0.3 0 0 14  0 0 1 1 1
4x4F" 97 248.5 0.3 0 0 14  0 0 1 1 1
2x4F" 97.5 251.5 0.3 0 0 14  0 0 1 1 1
2x2F" 97.5 250 0.3 0 0 14  0 0 1 1 1
2x10" 96.5 229 0.5 1 0 4  0 0 1 1 1
16x16 Base" 86 248.5 0.3 0 0 4  0 0 1 1 1
1x16F" 81.75 248.5 0.3 0 0 14  0 0 1 1 1
1x16F" 90.25 248.5 0.3 0 0 14  0 0 1 1 1
2x2F" 97.5 253 0.3 0 0 14  0 0 1 1 1
1x16F" 90.75 248.5 0.3 0 0 14  0 0 1 1 1
1x16F" 81.25 248.5 0.3 0 0 14  0 0 1 1 1
1x1x5" -57.75 82.25 1.7 0 0 43  0 0 1 1 1
1x2" -56.25 83 0.5 0 0 43  0 0 1 1 1
1x1" -56.75 82.75 0.5 0 0 43  0 0 1 1 1

None of these have 0.1 and I guess thus it can safely be assumed that specific part with OWNER is defining all bricks that are on the ground plane, and they determine the ownership.
Instead of the alternative listed in the OP about putting ID after each brick, I don't understand why can't we simply have them categorized on the already existing ownership definers like so.

Code: [Select]
+-OWNER 18701
8x8F" -81 246.5 0.1 0 1 50  0 0 1 1 1
1x4x5" -10.75 204.5 11.9 0 0 39  0 0 1 1 1
1x2" -8.5 201.25 12.5 1 0 39  0 0 1 1 1
1x2" -10.25 203 12.5 0 0 39  0 0 1 1 1
1x2" -10.25 206 12.5 0 0 39  0 0 1 1 1
1x2" -8.5 207.75 12.5 1 0 39  0 0 1 1 1
+-OWNER 32634
8x8F" -25 266.5 0.1 0 1 49  0 0 1 1 1
1x1x3" -6.25 200.75 10.1 0 0 39  0 0 1 1 1
1x1x3" -7.75 200.75 10.1 0 0 39  0 0 1 1 1
1x2x5" -5.5 201.25 10.7 1 0 39  0 0 1 1 1
1x1x5" -4.75 201.75 10.7 0 0 39  0 0 1 1 1
1x1x5" -4.25 202.25 10.7 0 0 39  0 0 1 1 1
1x1x3" -3.25 203.75 10.1 0 0 39  0 0 1 1 1
1x2x5" -3.75 203 10.7 0 0 39  0 0 1 1 1
+-OWNER 7643
8x8F" -25 270.5 0.1 0 1 50  0 0 1 1 1
1x4" -3.25 204.5 8.9 0 0 39  0 0 1 1 1
1x1" -3.75 205.25 8.9 0 0 39  0 0 1 1 1
1x4 Arch" -3.25 204.5 11.3 2 0 39  0 0 1 1 1
1x1x3" -3.25 205.25 10.1 0 0 39  0 0 1 1 1
1x2x5" -3.75 206 10.7 0 0 39  0 0 1 1 1
« Last Edit: August 11, 2014, 02:35:52 AM by LeetZero »

Well unless you send badspot a pm, I don't think he would listen.

He doesn't read every thread on the forums you know.
Badspot doesn't read the PM's either.
I sent him a PM about .ifl texture format ages ago and I still got nothing from him, not even a reply.

Saving does need to be redone...  But for now I just use this:

http://www.mediafire.com/download/xr09af9soz6hb2w/Support_DG_DediLoader.zip

Auto-Saves and Auto-Loads with ownership.  Saving was made by Kalphiter.  I'm sure you're capable of modifying it for your own purposes.

you could even have an index of the blids at the beginning of the save
like
1  6531
2  24421
3  21342
4  12322
5  1
6  1233

and then save the ownership under a single or double digit number, because the chances of there being a more than 999 players with different bricks is a little high and then you could save some space

you could even have an index of the blids at the beginning of the save
like
1  6531
2  24421
3  21342
4  12322
5  1
6  1233

and then save the ownership under a single or double digit number, because the chances of there being a more than 999 players with different bricks is a little high and then you could save some space
You can even remove the index before them, as it can be recovered by their order in the save file.

I'd just use a format like this instead:

description
    This is a test save file.
colors
    0.5 0 0 1
    0 0.5 0 1
    0 0 0.5 1
    ...
bricks 888888
    ... bricks belonging to BLID 888888
bricks 16000
    ... bricks belonging to BLID 16000
...


It'd be really easy to both writ eand read. Writing would literally just be something like:

// write info first
%groupCount = MainBrickGroup.getCount();

for (%i = 0; %i < %count; %i++)
{
    %group = MainBrickGroup.getObject(%i);
    %brickCount = %group.getCount();

    %handle.writeLine("bricks" SPC %group.bl_id);

    for (%j = 0; %j < %brickCount; %j++)
    {
        %brick = %group.getObject(%j);
        // serialize the brick
    }
}


If I don't have anything to do at some point I'll probably implement that as a server (for loading)+client (for saving)-sided add-on.

If I don't have anything to do at some point I'll probably implement that as a server (for loading)+client (for saving)-sided add-on.
Don't forget server sided saving
« Last Edit: August 11, 2014, 04:07:33 PM by Zeblote »

client/server sided uploading.

I thought that was implied. It's what I meant, anyway.

Badspot doesn't read the PM's either.
I sent him a PM about .ifl texture format ages ago and I still got nothing from him, not even a reply.
Someone sent him a PM a few weeks ago and he ended up fixing avatars not updating on the forum.

well, no. but if they have that sorta trust anyway what does it matter if all of the bricks belonged to one of them?
Not trying to be rude, but are you joking?

Badspot doesn't read the PM's either.
I sent him a PM about .ifl texture format ages ago and I still got nothing from him, not even a reply.

He responds sometimes. It depends on the message.