Why are people complaining about block ids running out?

    Joined
    Jun 20, 2013
    Messages
    2,827
    Reaction score
    1,181
    • Video Genius
    • Legacy Citizen 4
    • Top Forum Contributor
    Because a minecraft MODPACK has 40 000 unique items and blocks. I'm sure @schema could do a similar thing if it runs out some how.
     

    Keptick

    Building masochist
    Joined
    Sep 26, 2013
    Messages
    4,062
    Reaction score
    1,841
    • Councillor 2 Gold
    • Railman Gold
    • Thinking Positive Gold
    No need for that, there's still a couple hundreds of ids left. I honestly don't understand why people would even complain :|
     
    Joined
    Aug 30, 2013
    Messages
    199
    Reaction score
    14
    I think the complexity/awkwardness partially caused by having so many blocks is a much bigger problem. Starmade is risking getting to a point where a large portion of new players will give up before they learn the basic mechanics.

    I'm not saying the complexity is a bad thing, but it should be presented in a way that a new player will not be overwhelmed.

    Also, do we really need 3 hull types? Two was plenty for me. (I wouldn't complain if there was only one)
     
    Joined
    Oct 8, 2013
    Messages
    136
    Reaction score
    96
    I think the complexity/awkwardness partially caused by having so many blocks is a much bigger problem. Starmade is risking getting to a point where a large portion of new players will give up before they learn the basic mechanics.

    I'm not saying the complexity is a bad thing, but it should be presented in a way that a new player will not be overwhelmed.
    I don't see that as an issue. I've been playing this game for ... longer then I can remember and I don't even know how the core mechanics work anymore because of all the updates and me not having enough time to figure it all out. I pretty much only build shells now.

    The best reason I can come up with is that by adding more and more blocks, detail or functional or both, some newer player might have a harder time to find the blocks they want to use for building fleet ships with a simular colour scheme.
     
    Joined
    Jun 20, 2013
    Messages
    2,827
    Reaction score
    1,181
    • Video Genius
    • Legacy Citizen 4
    • Top Forum Contributor
    yes me to, that doesn't seem to be an issue, in my opinion complexity will give me the urge to play more to find out about all this stuff
     

    therimmer96

    The Cake Network Staff Senior button unpusher
    Joined
    Jun 21, 2013
    Messages
    3,603
    Reaction score
    1,053
    • Legacy Citizen 10
    • Top Forum Contributor
    The reason people are worried about running out of ID's is because it has been confirmed there is a limited number. 2048 to be precise. This is dictated in the netcode, and would require schema to rework how the data is sent, potentially making it more network intensive.
     
    Joined
    Mar 2, 2014
    Messages
    1,293
    Reaction score
    230
    • Thinking Positive
    • Community Content - Bronze 1
    • Legacy Citizen 3
    Because a minecraft MODPACK has 40 000 unique items and blocks.
    I don't think it's possible to have 40 000 different blocks in the same world, since the file format MC uses only allows 4096 different IDs.

    @schema could easily increase the number of possible block IDs to 2^19 = 524.288 by adding a fourth byte per block, but then each entity would need 33% more memory. This is purely a performance issue.
     
    Joined
    Jun 20, 2013
    Messages
    2,827
    Reaction score
    1,181
    • Video Genius
    • Legacy Citizen 4
    • Top Forum Contributor
    well there are at least 40 000 different items there, so i don't see why starmade couldn't have that to, even if not all are used.

    Anyway, 33%? I use only 2 gb of starmade and it's fine so increasing by 33% wouldn't come close to my maximal ram.
     
    Joined
    Jul 21, 2013
    Messages
    2,932
    Reaction score
    460
    • Hardware Store
    well there are at least 40 000 different items there, so i don't see why starmade couldn't have that to, even if not all are used.
    In minecraft not all items and blocks have to have different IDs(thanks to meta values). Applying this to starmade would heavily eat performance though I think.
     

    jayman38

    Precentor-Primus, pro-tempore
    Joined
    Jul 13, 2014
    Messages
    2,518
    Reaction score
    787
    • Purchased!
    • Thinking Positive
    • Legacy Citizen 4
    To answer the question, even though the game has been in development for years, it's still an alpha game. When it gets to Beta and to Release, we are expecting a veritable explosion of new block types. In the meantime, Schema will continue to have ideas for new blocks (example: who was expecting light sticks when they first came out?) in addition to the ones we suggest (plexdoor wedges, baby!). A little caution now will yield room for more options later.
     

    Lecic

    Convicted Lancake Abuser
    Joined
    Apr 14, 2013
    Messages
    5,115
    Reaction score
    1,229
    • Thinking Positive Gold
    • Purchased!
    • Legacy Citizen 11
    First off all, Minecraft only supports 4096 IDs. However, it allows for 16 (I think. It might be 32 now) meta data sub-items. For example, all the wool blocks are actually using a single ID, plus meta data to determine which wool block it actually is.

    There's a wonderful suggestion floating around for implementing a similar system into starmade, without increasing the amount of RAM and Bandwidth the game would use.

    well there are at least 40 000 different items there, so i don't see why starmade couldn't have that to, even if not all are used.

    Anyway, 33%? I use only 2 gb of starmade and it's fine so increasing by 33% wouldn't come close to my maximal ram.
    33% more RAM, not hard drive space. Probably more hard drive space as well.

    Not everyone has a great computer. a 33% jump in RAM usage would kill many people's ability to play the game.


    Can people stop with this whole "minecraft has so many ids why can't starmade" thing? They're two completely different games, running on different engines. They both run on Java, but that's about it.
     

    NeonSturm

    StormMaker
    Joined
    Dec 31, 2013
    Messages
    5,110
    Reaction score
    617
    • Wired for Logic
    • Thinking Positive
    • Legacy Citizen 5
    It will be a problem if everything gets a wedge or a new shape.
    Then we will have twice as much and >1024 blocks for the base game.

    Then add door colors...
    Every block colored in 16 colors and sold as 5 shapes consumes 80 inventory + IDs.

    We actually only need hull, hardened, glass, crystal, doors to suck 4/5 of all IDs and disable "buy with blocks" by making it annoying enough.



    I complain not about IDs, but used inventory space with more IDs.​
    512 are more than enough, 1024 for mods maybe if orientation and color are not taking up IDs or inventory blocks but another part of the 3 block bytes.

    I don't think we need HP per block (MAX_HP takes up 1/3 of RAM)​
    Rarely a single block gets damaged and still alive afterwards. For all other cases remember 64 recently damaged blocks should be enough.

    Thus I am supporting every suggestion about separating shape, texture and ID (=function)​
     
    Joined
    Jun 19, 2014
    Messages
    1,756
    Reaction score
    162
    • Purchased!
    • Top Forum Contributor
    • Legacy Citizen
    We currently have 2048 IDs, of which about 650 or so are taken. We're not going to be running out of IDs any time soon.
     
    Joined
    Mar 2, 2014
    Messages
    1,293
    Reaction score
    230
    • Thinking Positive
    • Community Content - Bronze 1
    • Legacy Citizen 3
    I don't think we need HP per block (MAX_HP takes up 1/3 of RAM)
    Rarely a single block gets damaged and still alive afterwards. For all other cases remember 64 recently damaged blocks should be enough.
    With the upcoming HP-system we (hopefully) won't have core-drilling anymore, so more blocks will be damaged.
     

    jayman38

    Precentor-Primus, pro-tempore
    Joined
    Jul 13, 2014
    Messages
    2,518
    Reaction score
    787
    • Purchased!
    • Thinking Positive
    • Legacy Citizen 4
    It will be a problem if everything gets a wedge or a new shape.
    Then we will have twice as much and >1024 blocks for the base game.

    ...

    I don't think we need HP per block (MAX_HP takes up 1/3 of RAM)​
    Rarely a single block gets damaged and still alive afterwards. For all other cases remember 64 recently damaged blocks should be enough.
    1. Some blocks, such as light sticks, do not lend themselves to wedges. Slightly off-topic: If utility blocks experience a wedgening, those new wedges will need different output. Probably less than half of the related cube's output. Back on-topic: Many shapes already have a wedge. If we get a wedge for everything that makes sense, we'll probably be just about at 1000.

    2. I do think we need HP per block, because of lower-damage fighters, pierce effects, and punch-through effects. I don't want an enemy ship with punch-through on an otherwise weak weapon slicing holes completely through my ship, with the assumption that all blocks have only 1 HP.

    On the other hand, maybe we can replace some of the block bits with a reference number that points elsewhere for some aspect (such as HP value) that multiple blocks share, to get detail out of those bits that belong to each block. I need to take another look at the current 3-byte breakout.
     
    • Like
    Reactions: Ithirahad

    Reilly Reese

    #1 Top Forum Poster & Raiben Jackpot Winner
    Joined
    Oct 13, 2013
    Messages
    5,140
    Reaction score
    1,365
    • Legacy Citizen 8
    • Thinking Positive
    • Purchased!
    We need a server config to make inventory bigger. Stop complaining about to many blocks and start about small inventory space :mad:
     
    • Like
    Reactions: Ithirahad
    Joined
    Jan 22, 2014
    Messages
    1,047
    Reaction score
    299
    First off all, Minecraft only supports 4096 IDs. However, it allows for 16 (I think. It might be 32 now) meta data sub-items. For example, all the wool blocks are actually using a single ID, plus meta data to determine which wool block it actually is.

    There's a wonderful suggestion floating around for implementing a similar system into starmade, without increasing the amount of RAM and Bandwidth the game would use.
    Actually, StarMade already does that. The difference being that block data in Minecraft do also affect an item's appearance and stacking in inventory. That system is currently used for ores which are stored as a rock's orientation. It could be expanded without crazy changes to the game's code for stuff like the decorative panels. Instead of having one ID for each of them, they could be just one item whose overlay texture could be cycled through.
    That would also be interesting for hulls, as a replacement for connected textures.
     

    NeonSturm

    StormMaker
    Joined
    Dec 31, 2013
    Messages
    5,110
    Reaction score
    617
    • Wired for Logic
    • Thinking Positive
    • Legacy Citizen 5
    2. I do think we need HP per block, because of lower-damage fighters, pierce effects, and punch-through effects. I don't want an enemy ship with punch-through on an otherwise weak weapon slicing holes completely through my ship, with the assumption that all blocks have only 1 HP.
    You are sabotaging my post :(

    Blocks have full block.hp[*block.armor] until a weapon does full damage.
    The target ship remembers the last 64 blocks damaged from weapons.
    If a block drops out of the weapons memory and was not killed, the weapon gets krit damage for a few times it's own reload time.
     
    Last edited:

    jayman38

    Precentor-Primus, pro-tempore
    Joined
    Jul 13, 2014
    Messages
    2,518
    Reaction score
    787
    • Purchased!
    • Thinking Positive
    • Legacy Citizen 4
    You are sabotaging my post :(

    Blocks have full block.hp[*block.armor] until a weapon does full damage.
    A weapon remembers recently damaged blocks.
    If a block drops out of the weapons memory and was not killed, the weapon gets krit damage for a few times it's own reload time.
    I think more explanation is needed. Having weapons remember recently damaged blocks sounds like a MUCH bigger memory sink than per-block HP. Are you saying that weapon systems remember damaged blocks right now? What happens when a second weapon system, maybe on a different ship, hits a damaged block?

    My bottom line is if the HP doesn't get stored with the block, where is it? Is it going to use up more memory there? If it is stored with a weapon, the weapon will have to store 1. The HP, 2. The structure ID of the structure with the damaged block, and 3. The location of the damaged block in the target structure. Such a thing would add a lot of memory overhead. Multiply that by multiple hit blocks (think damaged blocks on the outer fringe of a missile hit.)
     

    NeonSturm

    StormMaker
    Joined
    Dec 31, 2013
    Messages
    5,110
    Reaction score
    617
    • Wired for Logic
    • Thinking Positive
    • Legacy Citizen 5
    Rarely a single block gets damaged and still alive afterwards. For all other cases remember 64 recently damaged blocks should be enough.
    The target ship remembers the last 64 blocks damaged from weapons. Said that above, wasn't that clear if you only read my last post.
    That would only drain RAM for 64 blocks or 6.4 mass of a ship (but for the whole ship!!!)​

    This is only used if a weapon does less than 300% of a blocks HP for performance reasons.
    "overkill" (damage above hp) of max 100% of the block's hp is added to the weapon which did no damage because the block drops out of the entity's memory.
    Added as lucky/crit damage.


    With this we would have more per-block data storage.